mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-07-18 21:05:40 +00:00
Improve handling of unset StorageVersion (#13417)
* Improve handling of unset `StorageVersion` When a user is forgetting to set the storage version in a pallet and calls `current_storage_version` to compare it against the `on_chain_storage_version` it will now fail to compile the code. Before the pallet macro just returned `StorageVersion::default()` for `current_storage_version` leading to potential issues with migrations. Besides that it also checks in `post_upgrade` that the pallet storage version was upgraded and thus, no migration was missed. * Use correct `Cargo.lock` * Fixes * Fix test * Update frame/support/test/tests/pallet.rs * Ensure we don't set a storage version when the pallet is missing the attribute * Fix merge conflict * Update frame/support/procedural/src/pallet/expand/hooks.rs Co-authored-by: Roman Useinov <roman.useinov@gmail.com> * Update frame/support/procedural/src/pallet/expand/hooks.rs Co-authored-by: Roman Useinov <roman.useinov@gmail.com> * Fix compilation * Do not run everything with `try-runtime` * Fix test * Apply suggestions from code review Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io> * Fix `no-metadata-docs` --------- Co-authored-by: Roman Useinov <roman.useinov@gmail.com> Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io> Co-authored-by: parity-processbot <>
This commit is contained in:
@@ -26,9 +26,10 @@ sp-core = { version = "7.0.0", default-features = false, path = "../../../primit
|
||||
sp-std = { version = "5.0.0", default-features = false, path = "../../../primitives/std" }
|
||||
sp-version = { version = "5.0.0", default-features = false, path = "../../../primitives/version" }
|
||||
trybuild = { version = "1.0.74", features = [ "diff" ] }
|
||||
pretty_assertions = "1.2.1"
|
||||
pretty_assertions = "1.3.0"
|
||||
rustversion = "1.0.6"
|
||||
frame-system = { version = "4.0.0-dev", default-features = false, path = "../../system" }
|
||||
frame-executive = { version = "4.0.0-dev", default-features = false, path = "../../executive" }
|
||||
# The "std" feature for this pallet is never activated on purpose, in order to test construct_runtime error message
|
||||
test-pallet = { package = "frame-support-test-pallet", default-features = false, path = "pallet" }
|
||||
|
||||
@@ -39,6 +40,7 @@ std = [
|
||||
"codec/std",
|
||||
"scale-info/std",
|
||||
"frame-benchmarking/std",
|
||||
"frame-executive/std",
|
||||
"frame-support/std",
|
||||
"frame-system/std",
|
||||
"sp-core/std",
|
||||
@@ -50,7 +52,11 @@ std = [
|
||||
"sp-version/std",
|
||||
"sp-api/std",
|
||||
]
|
||||
try-runtime = ["frame-support/try-runtime"]
|
||||
try-runtime = [
|
||||
"frame-support/try-runtime",
|
||||
"frame-system/try-runtime",
|
||||
"frame-executive/try-runtime",
|
||||
]
|
||||
# WARNING:
|
||||
# Only CI runs with this feature enabled. This feature is for testing stuff related to the FRAME macros
|
||||
# in conjunction with rust features.
|
||||
|
||||
Reference in New Issue
Block a user