From c69b749290cd022eea0de66f37e4abfd6c361b70 Mon Sep 17 00:00:00 2001 From: Squirrel <gilescope@gmail.com> Date: Wed, 26 Jan 2022 11:11:03 +0000 Subject: [PATCH] Add safe_xcm_version to Genesis Specs (#743) (#904) * Add safe_xcm_version to Genesis Specs (#743) * add safe_xcm_version to genesis specs * cargo +nightly fmt * Point to xcm latest version Co-authored-by: Alexander Popiak <alexander.popiak@parity.io> --- cumulus/Cargo.lock | 2 ++ cumulus/parachain-template/node/Cargo.toml | 1 + cumulus/parachain-template/node/src/chain_spec.rs | 6 ++++++ cumulus/parachain-template/runtime/src/lib.rs | 2 +- cumulus/polkadot-parachains/Cargo.toml | 1 + .../rococo-parachain/Cargo.toml | 1 + .../rococo-parachain/src/lib.rs | 2 +- cumulus/polkadot-parachains/src/chain_spec.rs | 15 +++++++++++++++ cumulus/polkadot-parachains/statemine/Cargo.toml | 1 + cumulus/polkadot-parachains/statemine/src/lib.rs | 2 +- cumulus/polkadot-parachains/statemint/Cargo.toml | 1 + cumulus/polkadot-parachains/statemint/src/lib.rs | 2 +- cumulus/polkadot-parachains/westmint/Cargo.toml | 1 + cumulus/polkadot-parachains/westmint/src/lib.rs | 2 +- 14 files changed, 34 insertions(+), 5 deletions(-) diff --git a/cumulus/Cargo.lock b/cumulus/Cargo.lock index eb4ca303306..26b70fd243b 100644 --- a/cumulus/Cargo.lock +++ b/cumulus/Cargo.lock @@ -6200,6 +6200,7 @@ dependencies = [ "substrate-frame-rpc-system", "substrate-prometheus-endpoint", "try-runtime-cli", + "xcm", ] [[package]] @@ -6853,6 +6854,7 @@ dependencies = [ "tempfile", "try-runtime-cli", "westmint-runtime", + "xcm", ] [[package]] diff --git a/cumulus/parachain-template/node/Cargo.toml b/cumulus/parachain-template/node/Cargo.toml index 12c10a7a629..10a6e4744a3 100644 --- a/cumulus/parachain-template/node/Cargo.toml +++ b/cumulus/parachain-template/node/Cargo.toml @@ -96,3 +96,4 @@ polkadot-cli = { git = "https://github.com/paritytech/polkadot", branch = "maste polkadot-parachain = { git = "https://github.com/paritytech/polkadot", branch = "master" } polkadot-primitives = { git = "https://github.com/paritytech/polkadot", branch = "master" } polkadot-service = { git = "https://github.com/paritytech/polkadot", branch = "master" } +xcm = { git = "https://github.com/paritytech/polkadot", default-features = false, branch = "master" } diff --git a/cumulus/parachain-template/node/src/chain_spec.rs b/cumulus/parachain-template/node/src/chain_spec.rs index 46b5841631e..afb760685c6 100644 --- a/cumulus/parachain-template/node/src/chain_spec.rs +++ b/cumulus/parachain-template/node/src/chain_spec.rs @@ -10,6 +10,9 @@ use sp_runtime::traits::{IdentifyAccount, Verify}; pub type ChainSpec = sc_service::GenericChainSpec<parachain_template_runtime::GenesisConfig, Extensions>; +/// The default XCM version to set in genesis config. +const SAFE_XCM_VERSION: u32 = xcm::prelude::XCM_VERSION; + /// Helper function to generate a crypto pair from seed pub fn get_public_from_seed<TPublic: Public>(seed: &str) -> <TPublic::Pair as Pair>::Public { TPublic::Pair::from_string(&format!("//{}", seed), None) @@ -211,5 +214,8 @@ fn testnet_genesis( aura: Default::default(), aura_ext: Default::default(), parachain_system: Default::default(), + polkadot_xcm: parachain_template_runtime::PolkadotXcmConfig { + safe_xcm_version: Some(SAFE_XCM_VERSION), + }, } } diff --git a/cumulus/parachain-template/runtime/src/lib.rs b/cumulus/parachain-template/runtime/src/lib.rs index 944933f42cd..1020d64a60b 100644 --- a/cumulus/parachain-template/runtime/src/lib.rs +++ b/cumulus/parachain-template/runtime/src/lib.rs @@ -620,7 +620,7 @@ construct_runtime!( // XCM helpers. XcmpQueue: cumulus_pallet_xcmp_queue::{Pallet, Call, Storage, Event<T>} = 30, - PolkadotXcm: pallet_xcm::{Pallet, Call, Event<T>, Origin} = 31, + PolkadotXcm: pallet_xcm::{Pallet, Call, Event<T>, Origin, Config} = 31, CumulusXcm: cumulus_pallet_xcm::{Pallet, Event<T>, Origin} = 32, DmpQueue: cumulus_pallet_dmp_queue::{Pallet, Call, Storage, Event<T>} = 33, diff --git a/cumulus/polkadot-parachains/Cargo.toml b/cumulus/polkadot-parachains/Cargo.toml index 6b6294952e8..d0d7c68c952 100644 --- a/cumulus/polkadot-parachains/Cargo.toml +++ b/cumulus/polkadot-parachains/Cargo.toml @@ -84,6 +84,7 @@ polkadot-primitives = { git = "https://github.com/paritytech/polkadot", branch = polkadot-service = { git = "https://github.com/paritytech/polkadot", branch = "master" } polkadot-cli = { git = "https://github.com/paritytech/polkadot", branch = "master" } polkadot-parachain = { git = "https://github.com/paritytech/polkadot", branch = "master" } +xcm = { git = "https://github.com/paritytech/polkadot", branch = "master" } [build-dependencies] substrate-build-script-utils = { git = "https://github.com/paritytech/substrate", branch = "master" } diff --git a/cumulus/polkadot-parachains/rococo-parachain/Cargo.toml b/cumulus/polkadot-parachains/rococo-parachain/Cargo.toml index e42f1612c80..7ac9a3c8e97 100644 --- a/cumulus/polkadot-parachains/rococo-parachain/Cargo.toml +++ b/cumulus/polkadot-parachains/rococo-parachain/Cargo.toml @@ -89,6 +89,7 @@ std = [ "pallet-sudo/std", "pallet-transaction-payment/std", "pallet-transaction-payment-rpc-runtime-api/std", + "pallet-xcm/std", "parachain-info/std", "parachains-common/std", "cumulus-pallet-aura-ext/std", diff --git a/cumulus/polkadot-parachains/rococo-parachain/src/lib.rs b/cumulus/polkadot-parachains/rococo-parachain/src/lib.rs index 218d5ff5d6a..a9e0ec48201 100644 --- a/cumulus/polkadot-parachains/rococo-parachain/src/lib.rs +++ b/cumulus/polkadot-parachains/rococo-parachain/src/lib.rs @@ -531,7 +531,7 @@ construct_runtime! { // XCM helpers. XcmpQueue: cumulus_pallet_xcmp_queue::{Pallet, Call, Storage, Event<T>} = 50, - PolkadotXcm: pallet_xcm::{Pallet, Call, Event<T>, Origin} = 51, + PolkadotXcm: pallet_xcm::{Pallet, Call, Event<T>, Origin, Config} = 51, CumulusXcm: cumulus_pallet_xcm::{Pallet, Call, Event<T>, Origin} = 52, DmpQueue: cumulus_pallet_dmp_queue::{Pallet, Call, Storage, Event<T>} = 53, diff --git a/cumulus/polkadot-parachains/src/chain_spec.rs b/cumulus/polkadot-parachains/src/chain_spec.rs index c0ea6163431..7bd8cdb8c54 100644 --- a/cumulus/polkadot-parachains/src/chain_spec.rs +++ b/cumulus/polkadot-parachains/src/chain_spec.rs @@ -34,6 +34,9 @@ pub type ShellChainSpec = sc_service::GenericChainSpec<shell_runtime::GenesisCon pub type SeedlingChainSpec = sc_service::GenericChainSpec<seedling_runtime::GenesisConfig, Extensions>; +/// The default XCM version to set in genesis config. +const SAFE_XCM_VERSION: u32 = xcm::prelude::XCM_VERSION; + /// Helper function to generate a crypto pair from seed pub fn get_from_seed<TPublic: Public>(seed: &str) -> <TPublic::Pair as Pair>::Public { TPublic::Pair::from_string(&format!("//{}", seed), None) @@ -189,6 +192,9 @@ fn testnet_genesis( aura: rococo_parachain_runtime::AuraConfig { authorities: initial_authorities }, aura_ext: Default::default(), parachain_system: Default::default(), + polkadot_xcm: rococo_parachain_runtime::PolkadotXcmConfig { + safe_xcm_version: Some(SAFE_XCM_VERSION), + }, } } @@ -454,6 +460,9 @@ fn statemint_genesis( aura: Default::default(), aura_ext: Default::default(), parachain_system: Default::default(), + polkadot_xcm: statemint_runtime::PolkadotXcmConfig { + safe_xcm_version: Some(SAFE_XCM_VERSION), + }, } } @@ -638,6 +647,9 @@ fn statemine_genesis( aura: Default::default(), aura_ext: Default::default(), parachain_system: Default::default(), + polkadot_xcm: statemine_runtime::PolkadotXcmConfig { + safe_xcm_version: Some(SAFE_XCM_VERSION), + }, } } @@ -817,5 +829,8 @@ fn westmint_genesis( aura: Default::default(), aura_ext: Default::default(), parachain_system: Default::default(), + polkadot_xcm: westmint_runtime::PolkadotXcmConfig { + safe_xcm_version: Some(SAFE_XCM_VERSION), + }, } } diff --git a/cumulus/polkadot-parachains/statemine/Cargo.toml b/cumulus/polkadot-parachains/statemine/Cargo.toml index 18f3b6c4e30..9bb1ce05e2b 100644 --- a/cumulus/polkadot-parachains/statemine/Cargo.toml +++ b/cumulus/polkadot-parachains/statemine/Cargo.toml @@ -141,6 +141,7 @@ std = [ "pallet-transaction-payment-rpc-runtime-api/std", "pallet-uniques/std", "pallet-utility/std", + "pallet-xcm/std", "parachain-info/std", "cumulus-pallet-aura-ext/std", "pallet-asset-tx-payment/std", diff --git a/cumulus/polkadot-parachains/statemine/src/lib.rs b/cumulus/polkadot-parachains/statemine/src/lib.rs index 21d509441cd..25dac6a5d50 100644 --- a/cumulus/polkadot-parachains/statemine/src/lib.rs +++ b/cumulus/polkadot-parachains/statemine/src/lib.rs @@ -737,7 +737,7 @@ construct_runtime!( // XCM helpers. XcmpQueue: cumulus_pallet_xcmp_queue::{Pallet, Call, Storage, Event<T>} = 30, - PolkadotXcm: pallet_xcm::{Pallet, Call, Storage, Event<T>, Origin} = 31, + PolkadotXcm: pallet_xcm::{Pallet, Call, Storage, Event<T>, Origin, Config} = 31, CumulusXcm: cumulus_pallet_xcm::{Pallet, Event<T>, Origin} = 32, DmpQueue: cumulus_pallet_dmp_queue::{Pallet, Call, Storage, Event<T>} = 33, diff --git a/cumulus/polkadot-parachains/statemint/Cargo.toml b/cumulus/polkadot-parachains/statemint/Cargo.toml index cddf2624ae3..4d7875bf99a 100644 --- a/cumulus/polkadot-parachains/statemint/Cargo.toml +++ b/cumulus/polkadot-parachains/statemint/Cargo.toml @@ -141,6 +141,7 @@ std = [ "pallet-transaction-payment-rpc-runtime-api/std", "pallet-uniques/std", "pallet-utility/std", + "pallet-xcm/std", "parachain-info/std", "cumulus-pallet-aura-ext/std", "pallet-asset-tx-payment/std", diff --git a/cumulus/polkadot-parachains/statemint/src/lib.rs b/cumulus/polkadot-parachains/statemint/src/lib.rs index a7a2305088b..0648e43df07 100644 --- a/cumulus/polkadot-parachains/statemint/src/lib.rs +++ b/cumulus/polkadot-parachains/statemint/src/lib.rs @@ -750,7 +750,7 @@ construct_runtime!( // XCM helpers. XcmpQueue: cumulus_pallet_xcmp_queue::{Pallet, Call, Storage, Event<T>} = 30, - PolkadotXcm: pallet_xcm::{Pallet, Call, Storage, Event<T>, Origin} = 31, + PolkadotXcm: pallet_xcm::{Pallet, Call, Storage, Event<T>, Origin, Config} = 31, CumulusXcm: cumulus_pallet_xcm::{Pallet, Event<T>, Origin} = 32, DmpQueue: cumulus_pallet_dmp_queue::{Pallet, Call, Storage, Event<T>} = 33, diff --git a/cumulus/polkadot-parachains/westmint/Cargo.toml b/cumulus/polkadot-parachains/westmint/Cargo.toml index 99a9fbda784..25cd4f59ce2 100644 --- a/cumulus/polkadot-parachains/westmint/Cargo.toml +++ b/cumulus/polkadot-parachains/westmint/Cargo.toml @@ -139,6 +139,7 @@ std = [ "pallet-transaction-payment-rpc-runtime-api/std", "pallet-uniques/std", "pallet-utility/std", + "pallet-xcm/std", "parachain-info/std", "cumulus-pallet-aura-ext/std", "pallet-asset-tx-payment/std", diff --git a/cumulus/polkadot-parachains/westmint/src/lib.rs b/cumulus/polkadot-parachains/westmint/src/lib.rs index c7145497bba..665897a8a09 100644 --- a/cumulus/polkadot-parachains/westmint/src/lib.rs +++ b/cumulus/polkadot-parachains/westmint/src/lib.rs @@ -722,7 +722,7 @@ construct_runtime!( // XCM helpers. XcmpQueue: cumulus_pallet_xcmp_queue::{Pallet, Call, Storage, Event<T>} = 30, - PolkadotXcm: pallet_xcm::{Pallet, Call, Storage, Event<T>, Origin} = 31, + PolkadotXcm: pallet_xcm::{Pallet, Call, Storage, Event<T>, Origin, Config} = 31, CumulusXcm: cumulus_pallet_xcm::{Pallet, Event<T>, Origin} = 32, DmpQueue: cumulus_pallet_dmp_queue::{Pallet, Call, Storage, Event<T>} = 33, -- GitLab