Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Vision: Support Migrating Encoded Calls #338

Open
apopiak opened this issue Jan 12, 2021 · 5 comments
Open

Vision: Support Migrating Encoded Calls #338

apopiak opened this issue Jan 12, 2021 · 5 comments
Labels
T1-FRAME This PR/Issue is related to core FRAME, the framework.

Comments

@apopiak
Copy link
Contributor

apopiak commented Jan 12, 2021

When changing the encoding of calls (e.g. changing pallet indices or extrinsic ordering) we need to migrate encoded calls (e.g. in Scheduler or Democracy) to the new format.
Currently we can only hope that they are not affected by runtime upgrades or clear them in case of incompatibility.

@apopiak
Copy link
Contributor Author

apopiak commented Jan 12, 2021

relates to #353

@bkchr
Copy link
Member

bkchr commented Jan 12, 2021

Hmm what support do you want to have for this? You need the old Call enum to decode the data and than you will need to convert this into the new Call enum.

@apopiak
Copy link
Contributor Author

apopiak commented Jan 12, 2021

Jep, we'd want some (at least moderately) easy way to get the deprecated Call enum.

@shawntabrizi
Copy link
Member

We entertained the idea of using a call hash instead of a call enum, but this would result in a larger payload size for all transactions.

A solution would just be to allow us to control the call index of the extrinsics in a pallet. We are already able to control the module index too, so together, things would remain deterministic and non-breaking.

@apopiak
Copy link
Contributor Author

apopiak commented Jan 12, 2021

You would still (on top of that) want to be able to determine removed indices as well as changed ones to migrate properly.

@kianenigma kianenigma changed the title Support Migrating Encoded Calls Vision: Support Migrating Encoded Calls Mar 10, 2023
@juangirini juangirini transferred this issue from paritytech/substrate Aug 24, 2023
@the-right-joyce the-right-joyce added T1-FRAME This PR/Issue is related to core FRAME, the framework. and removed T1-runtime labels Aug 25, 2023
claravanstaden pushed a commit to Snowfork/polkadot-sdk that referenced this issue Dec 8, 2023
* First cut of erc721 pallet

* NFT pallet (wip)

* Tests not working yet

* Nft pallet tests

* Coupling erc721 and nft pallets (wip)

* Take token info to primitives

* Token data, mocking ERC721, some tests

* More tests; Fixed compilation of serializables in runtime code

* Integrate pallets in runtime and related changes

* Added ERC721App with lock feature

* Update deprecated code

* Compilation fixes

* Update tests and fix encoding

* Added unlock feature

* added validation and documentation

* fix: compilation

* tests: add test cases to nft pallet

* tests: add transfer assertions

* refactor: more descriptive token and token id names

* feat: add access control to erc721 contract

* fix: solidity compilation, move migration of ERC721 into seperate file

* tests: fix deployment of ERC1820 registry

* fix: unlocking, fix tests

* tests: add unhappy path test cases for erc721 tokens

* fix: compilation

* fix: compilation

* tests: add ERC721 e2e test

* refactor: simplify TestToken721

* fix: remove not needed NFT ownership assertion

* fix: test/README.md

* chore: rename erc721 migration

* fix: erc721 app address

* fix: TokenId type

* refactor: remove unnecessary assertion in ERC721 unlock solidity contract

* chore: remove question in comment

* tests: add example to fetch Substrate tokenId from Ethereum tokenContract and tokenId to ERC721 e2e test

Co-authored-by: Bhushan Lodha <bhushanlodha@gmail.com>
Co-authored-by: Vincent Geddes <vincent.geddes@hey.com>
Co-authored-by: Philip Stanislaus <6912756+philipstanislaus@users.noreply.github.com>
helin6 pushed a commit to boolnetwork/polkadot-sdk that referenced this issue Feb 5, 2024
serban300 pushed a commit to serban300/polkadot-sdk that referenced this issue Mar 26, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
T1-FRAME This PR/Issue is related to core FRAME, the framework.
Projects
Status: Backlog
Development

No branches or pull requests

5 participants