Dastan
authored
migrations: prevent accidentally using unversioned migrations instead of `VersionedMigration` (#3835) closes #1324 #### Problem Currently, it is possible to accidentally use inner unversioned migration instead of `VersionedMigration` since both implement `OnRuntimeUpgrade`. #### Solution With this change, we make it clear that value of `Inner` is not intended to be used directly. It is achieved by bounding `Inner` to new trait `UncheckedOnRuntimeUpgrade`, which has the same interface (except `unchecked_` prefix) as `OnRuntimeUpgrade`. #### `try-runtime` functions Since developers can implement `try-runtime` for `Inner` value in `VersionedMigration` and have custom logic for it, I added the same `try-runtime` functions to `UncheckedOnRuntimeUpgrade`. I looked for a ways to not duplicate functions, but couldn't find anything that doesn't significantly change the codebase. So I would appreciate If you have any suggestions to improve this cc @liamaharon @xlc polkadot address: 16FqwPZ8GRC5U5D4Fu7W33nA...
Name | Last commit | Last update |
---|---|---|
.. | ||
client | ||
docker/scripts | ||
docs | ||
pallets | ||
parachains | ||
polkadot-parachain | ||
primitives | ||
scripts | ||
templates | ||
test | ||
xcm/xcm-emulator | ||
zombienet | ||
.dockerignore | ||
.editorconfig | ||
LICENSE | ||
README.md | ||
file_header.txt |