From 245e9771656e8c215856543ca551e29588c826c3 Mon Sep 17 00:00:00 2001 From: gorka Date: Mon, 29 Nov 2021 10:22:07 +0100 Subject: [PATCH 01/14] wip --- primitives/xcm/src/lib.rs | 14 ++++++++++++ runtime/moonbase/src/lib.rs | 30 ++++++++++++++++++------- tests/para-tests-no-ci/test-xcm-para.ts | 4 ++-- 3 files changed, 38 insertions(+), 10 deletions(-) diff --git a/primitives/xcm/src/lib.rs b/primitives/xcm/src/lib.rs index 6b05c37764d..7fbf2051d45 100644 --- a/primitives/xcm/src/lib.rs +++ b/primitives/xcm/src/lib.rs @@ -215,6 +215,20 @@ impl< } } +impl< + AssetId: From + Clone, + AssetType: From + Clone, + AssetIdInfoGetter: UnitsToWeightRatio, + R: TakeRevenue, + > Drop for FirstAssetTrader { + fn drop(&mut self) { + if let Some((id, amount, _)) = self.1.clone() { + R::take_revenue((id, amount).into()); + } + } + } + + pub trait Reserve { /// Returns assets reserve location. fn reserve(&self) -> Option; diff --git a/runtime/moonbase/src/lib.rs b/runtime/moonbase/src/lib.rs index 7e97c3a6976..8815ce86f66 100644 --- a/runtime/moonbase/src/lib.rs +++ b/runtime/moonbase/src/lib.rs @@ -33,7 +33,7 @@ use fp_rpc::TransactionStatus; use pallet_evm_precompile_assets_erc20::AccountIdAssetIdConversion; use account::AccountId20; - +use frame_support::traits::tokens::fungibles::Mutate; use sp_runtime::traits::Hash as THash; use frame_support::{ @@ -55,7 +55,7 @@ use xcm_builder::{ CurrencyAdapter as XcmCurrencyAdapter, EnsureXcmOrigin, FixedWeightBounds, FungiblesAdapter, IsConcrete, LocationInverter, ParentAsSuperuser, ParentIsDefault, RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia, SignedAccountKey20AsNative, - SovereignSignedViaLocation, TakeWeightCredit, UsingComponents, + SovereignSignedViaLocation, TakeRevenue, TakeWeightCredit, UsingComponents, }; use xcm_executor::traits::JustTry; @@ -97,11 +97,7 @@ use sp_std::{ #[cfg(feature = "std")] use sp_version::NativeVersion; use sp_version::RuntimeVersion; -use xcm::v1::{ - BodyId, - Junction::{PalletInstance, Parachain}, - Junctions, MultiLocation, NetworkId, -}; +use xcm::latest::prelude::*; use nimbus_primitives::{CanAuthor, NimbusId}; @@ -575,6 +571,24 @@ impl pallet_democracy::Config for Runtime { type MaxProposals = MaxProposals; } +pub struct ToTreasury(sp_std::marker::PhantomData); +impl TakeRevenue for ToTreasury +where + AssetXConverter: xcm_executor::traits::Convert, +{ + fn take_revenue(revenue: MultiAsset) { + if let MultiAsset { + id: Concrete(location), + fun: Fungible(amount), + } = revenue + { + if let Some(asset_id) = AssetXConverter::convert_ref(location).ok() { + Assets::mint_into(asset_id, &Treasury::account_id(), amount); + } + } + } +} + parameter_types! { pub const ProposalBond: Permill = Permill::from_percent(5); pub const ProposalBondMinimum: Balance = 1 * currency::UNIT * currency::SUPPLY_FACTOR; @@ -1075,7 +1089,7 @@ impl xcm_executor::Config for XcmExecutorConfig { Balances, DealWithFees, >, - xcm_primitives::FirstAssetTrader, + xcm_primitives::FirstAssetTrader>>, ); type ResponseHandler = PolkadotXcm; type SubscriptionService = PolkadotXcm; diff --git a/tests/para-tests-no-ci/test-xcm-para.ts b/tests/para-tests-no-ci/test-xcm-para.ts index 1199e64aacb..f716c271764 100644 --- a/tests/para-tests-no-ci/test-xcm-para.ts +++ b/tests/para-tests-no-ci/test-xcm-para.ts @@ -89,7 +89,7 @@ describeParachain( "XCM - receive_relay_asset_from_relay", { chain: "moonbase-local" }, (context) => { - it("should be able to receive an asset from relay", async function () { + it.only("should be able to receive an asset from relay", async function () { const keyring = new Keyring({ type: "sr25519" }); const aliceRelay = keyring.addFromUri("//Alice"); @@ -114,7 +114,7 @@ describeParachain( // check asset in storage const registeredAsset = await parachainOne.query.assets.asset(assetId); - expect((registeredAsset.toHuman() as { owner: string }).owner).to.eq(palletId.toLowerCase()); + expect((registeredAsset.toHuman() as { owner: string }).owner).to.eq(palletId); // RELAYCHAIN // Sets default xcm version to relay From b4986eb164967cb89c0b20bccf584e383320f022 Mon Sep 17 00:00:00 2001 From: gorka Date: Mon, 29 Nov 2021 15:45:02 +0100 Subject: [PATCH 02/14] Fist version working --- primitives/xcm/src/lib.rs | 12 ++-- runtime/moonbase/src/lib.rs | 38 +++++++----- runtime/moonbase/tests/xcm_mock/mod.rs | 1 + runtime/moonbase/tests/xcm_mock/parachain.rs | 61 +++++++++++++++++-- .../moonbase/tests/xcm_mock/relay_chain.rs | 2 +- runtime/moonbase/tests/xcm_tests.rs | 2 + 6 files changed, 91 insertions(+), 25 deletions(-) diff --git a/primitives/xcm/src/lib.rs b/primitives/xcm/src/lib.rs index 7fbf2051d45..ad43b852579 100644 --- a/primitives/xcm/src/lib.rs +++ b/primitives/xcm/src/lib.rs @@ -220,14 +220,14 @@ impl< AssetType: From + Clone, AssetIdInfoGetter: UnitsToWeightRatio, R: TakeRevenue, - > Drop for FirstAssetTrader { - fn drop(&mut self) { - if let Some((id, amount, _)) = self.1.clone() { - R::take_revenue((id, amount).into()); - } + > Drop for FirstAssetTrader +{ + fn drop(&mut self) { + if let Some((id, amount, _)) = self.1.clone() { + R::take_revenue((id, amount).into()); } } - +} pub trait Reserve { /// Returns assets reserve location. diff --git a/runtime/moonbase/src/lib.rs b/runtime/moonbase/src/lib.rs index 8815ce86f66..efae48bb766 100644 --- a/runtime/moonbase/src/lib.rs +++ b/runtime/moonbase/src/lib.rs @@ -104,6 +104,11 @@ use nimbus_primitives::{CanAuthor, NimbusId}; mod precompiles; use precompiles::{MoonbasePrecompiles, ASSET_PRECOMPILE_ADDRESS_PREFIX}; +use xcm_primitives::{ + AccountIdToCurrencyId, AccountIdToMultiLocation, AsAssetType, FirstAssetTrader, + MultiNativeAsset, SignedToAccountId20, UtilityAvailableCalls, UtilityEncodeCall, XcmTransact, +}; + #[cfg(any(feature = "std", test))] pub use sp_runtime::BuildStorage; @@ -583,7 +588,8 @@ where } = revenue { if let Some(asset_id) = AssetXConverter::convert_ref(location).ok() { - Assets::mint_into(asset_id, &Treasury::account_id(), amount); + // Mint fees in treasury + let _ = Assets::mint_into(asset_id, &Treasury::account_id(), amount); } } } @@ -985,7 +991,7 @@ pub type FungiblesTransactor = FungiblesAdapter< ConvertedConcreteAssetId< AssetId, Balance, - xcm_primitives::AsAssetType, + AsAssetType, JustTry, >, ), @@ -1072,7 +1078,7 @@ impl xcm_executor::Config for XcmExecutorConfig { type AssetTransactor = AssetTransactors; type OriginConverter = XcmOriginToTransactDispatchOrigin; // Filter to the reserve withdraw operations - type IsReserve = xcm_primitives::MultiNativeAsset; + type IsReserve = MultiNativeAsset; type IsTeleporter = (); // No teleport type LocationInverter = LocationInverter; type Barrier = XcmBarrier; @@ -1089,7 +1095,12 @@ impl xcm_executor::Config for XcmExecutorConfig { Balances, DealWithFees, >, - xcm_primitives::FirstAssetTrader>>, + FirstAssetTrader< + AssetId, + AssetType, + AssetManager, + ToTreasury>, + >, ); type ResponseHandler = PolkadotXcm; type SubscriptionService = PolkadotXcm; @@ -1104,8 +1115,7 @@ parameter_types! { } // Converts a Signed Local Origin into a MultiLocation -pub type LocalOriginToLocation = - xcm_primitives::SignedToAccountId20; +pub type LocalOriginToLocation = SignedToAccountId20; /// The means for routing XCM messages which are not for local execution into the right message /// queues. @@ -1292,7 +1302,7 @@ pub enum CurrencyId { OtherReserve(AssetId), } -impl xcm_primitives::AccountIdToCurrencyId for Runtime { +impl AccountIdToCurrencyId for Runtime { fn account_to_currency_id(account: AccountId) -> Option { match account { // the self-reserve currency is identified by the pallet-balances address @@ -1338,9 +1348,9 @@ impl orml_xtokens::Config for Runtime { type Event = Event; type Balance = Balance; type CurrencyId = CurrencyId; - type AccountIdToMultiLocation = xcm_primitives::AccountIdToMultiLocation; + type AccountIdToMultiLocation = AccountIdToMultiLocation; type CurrencyIdConvert = - CurrencyIdtoMultiLocation>; + CurrencyIdtoMultiLocation>; type XcmExecutor = XcmExecutor; type SelfLocation = SelfLocation; type Weigher = XcmWeigher; @@ -1366,8 +1376,8 @@ impl TryFrom for Transactors { } } -impl xcm_primitives::UtilityEncodeCall for Transactors { - fn encode_call(self, call: xcm_primitives::UtilityAvailableCalls) -> Vec { +impl UtilityEncodeCall for Transactors { + fn encode_call(self, call: UtilityAvailableCalls) -> Vec { match self { // Shall we use westend for moonbase? The tests are probably based on rococo // but moonbase-alpha is attached to westend-runtime I think @@ -1376,7 +1386,7 @@ impl xcm_primitives::UtilityEncodeCall for Transactors { } } -impl xcm_primitives::XcmTransact for Transactors { +impl XcmTransact for Transactors { fn destination(self) -> MultiLocation { match self { Transactors::Relay => MultiLocation::parent(), @@ -1391,9 +1401,9 @@ impl xcm_transactor::Config for Runtime { type DerivativeAddressRegistrationOrigin = EnsureRoot; type SovereignAccountDispatcherOrigin = EnsureRoot; type CurrencyId = CurrencyId; - type AccountIdToMultiLocation = xcm_primitives::AccountIdToMultiLocation; + type AccountIdToMultiLocation = AccountIdToMultiLocation; type CurrencyIdToMultiLocation = - CurrencyIdtoMultiLocation>; + CurrencyIdtoMultiLocation>; type XcmExecutor = XcmExecutor; type XcmSender = XcmRouter; type SelfLocation = SelfLocation; diff --git a/runtime/moonbase/tests/xcm_mock/mod.rs b/runtime/moonbase/tests/xcm_mock/mod.rs index ef05a6b629d..81cac622988 100644 --- a/runtime/moonbase/tests/xcm_mock/mod.rs +++ b/runtime/moonbase/tests/xcm_mock/mod.rs @@ -118,6 +118,7 @@ pub fn relay_ext() -> sp_io::TestExternalities { pub type RelayChainPalletXcm = pallet_xcm::Pallet; pub type ParachainPalletXcm = pallet_xcm::Pallet; pub type Assets = pallet_assets::Pallet; +pub type Treasury = pallet_treasury::Pallet; pub type AssetManager = pallet_asset_manager::Pallet; pub type XTokens = orml_xtokens::Pallet; pub type RelayBalances = pallet_balances::Pallet; diff --git a/runtime/moonbase/tests/xcm_mock/parachain.rs b/runtime/moonbase/tests/xcm_mock/parachain.rs index b7471937e81..43428f2e7f3 100644 --- a/runtime/moonbase/tests/xcm_mock/parachain.rs +++ b/runtime/moonbase/tests/xcm_mock/parachain.rs @@ -18,15 +18,18 @@ use frame_support::{ construct_runtime, parameter_types, - traits::{Everything, Get, Nothing, PalletInfo as PalletInfoTrait}, + traits::{tokens::fungibles::Mutate, Everything, Get, Nothing, PalletInfo as PalletInfoTrait}, weights::Weight, + PalletId, }; + use frame_system::EnsureRoot; use parity_scale_codec::{Decode, Encode}; use sp_core::H256; use sp_runtime::{ testing::Header, traits::{Hash, IdentityLookup}, + Permill, }; use sp_std::{convert::TryFrom, prelude::*}; use xcm::{latest::prelude::*, Version as XcmVersion, VersionedXcm}; @@ -44,7 +47,7 @@ use xcm_builder::{ CurrencyAdapter as XcmCurrencyAdapter, EnsureXcmOrigin, FixedRateOfFungible, FixedWeightBounds, FungiblesAdapter, IsConcrete, LocationInverter, ParentAsSuperuser, ParentIsDefault, RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia, - SignedAccountKey20AsNative, SovereignSignedViaLocation, TakeWeightCredit, + SignedAccountKey20AsNative, SovereignSignedViaLocation, TakeRevenue, TakeWeightCredit, }; use xcm_executor::{traits::JustTry, Config, XcmExecutor}; @@ -218,6 +221,26 @@ pub type Barrier = ( // Subscriptions for version tracking are OK. AllowSubscriptionsFrom, ); + +pub struct ToTreasury(sp_std::marker::PhantomData); +impl TakeRevenue for ToTreasury +where + AssetXConverter: xcm_executor::traits::Convert, +{ + fn take_revenue(revenue: MultiAsset) { + if let MultiAsset { + id: Concrete(location), + fun: Fungible(amount), + } = revenue + { + if let Some(asset_id) = AssetXConverter::convert_ref(location).ok() { + // Mint fees in treasury + let _ = Assets::mint_into(asset_id, &Treasury::account_id(), amount); + } + } + } +} + parameter_types! { // We cannot skip the native trader for some specific tests, so we will have to work with // a native trader that charges same number of units as weight @@ -249,7 +272,12 @@ impl Config for XcmConfig { type Weigher = FixedWeightBounds; type Trader = ( FixedRateOfFungible, - xcm_primitives::FirstAssetTrader, + xcm_primitives::FirstAssetTrader< + AssetId, + AssetType, + AssetManager, + ToTreasury>, + >, ); type ResponseHandler = PolkadotXcm; @@ -313,6 +341,31 @@ impl orml_xtokens::Config for Runtime { type LocationInverter = LocationInverter; } +parameter_types! { + pub const ProposalBond: Permill = Permill::from_percent(5); + pub const ProposalBondMinimum: Balance = 0; + pub const SpendPeriod: u64 = 0; + pub const TreasuryId: PalletId = PalletId(*b"pc/trsry"); + pub const MaxApprovals: u32 = 100; +} + +impl pallet_treasury::Config for Runtime { + type PalletId = TreasuryId; + type Currency = Balances; + type ApproveOrigin = EnsureRoot; + type RejectOrigin = EnsureRoot; + type Event = Event; + type OnSlash = Treasury; + type ProposalBond = ProposalBond; + type ProposalBondMinimum = ProposalBondMinimum; + type SpendPeriod = SpendPeriod; + type Burn = (); + type BurnDestination = (); + type MaxApprovals = MaxApprovals; + type WeightInfo = (); + type SpendFunds = (); +} + #[frame_support::pallet] pub mod mock_msg_queue { use super::*; @@ -691,7 +744,7 @@ construct_runtime!( XTokens: orml_xtokens::{Pallet, Call, Storage, Event}, AssetManager: pallet_asset_manager::{Pallet, Call, Storage, Event}, XcmTransactor: xcm_transactor::{Pallet, Call, Storage, Event}, - + Treasury: pallet_treasury::{Pallet, Storage, Config, Event, Call} } ); diff --git a/runtime/moonbase/tests/xcm_mock/relay_chain.rs b/runtime/moonbase/tests/xcm_mock/relay_chain.rs index 3b561cea204..62957c9ef3c 100644 --- a/runtime/moonbase/tests/xcm_mock/relay_chain.rs +++ b/runtime/moonbase/tests/xcm_mock/relay_chain.rs @@ -103,7 +103,7 @@ parameter_types! { pub const KusamaNetwork: NetworkId = NetworkId::Kusama; pub const AnyNetwork: NetworkId = NetworkId::Any; pub Ancestry: MultiLocation = Here.into(); - pub UnitWeightCost: Weight = 1_000; + pub UnitWeightCost: Weight = 1_000_000_000; } pub type SovereignAccountOf = ( diff --git a/runtime/moonbase/tests/xcm_tests.rs b/runtime/moonbase/tests/xcm_tests.rs index 9248320157d..47a63d4a3bb 100644 --- a/runtime/moonbase/tests/xcm_tests.rs +++ b/runtime/moonbase/tests/xcm_tests.rs @@ -575,6 +575,8 @@ fn receive_relay_asset_with_trader() { ParaA::execute_with(|| { // non-free execution, not full amount received assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 90); + // Fee should have been received by treasyrt + assert_eq!(Assets::balance(source_id, &Treasury::account_id()), 10); }); } From 83c96a54dd2a89c2245c35e193adfceb9250c7a7 Mon Sep 17 00:00:00 2001 From: gorka Date: Mon, 29 Nov 2021 16:15:16 +0100 Subject: [PATCH 03/14] Test trader and assets to treasury for para-to-para too --- runtime/moonbase/tests/xcm_tests.rs | 74 ++++++++++++++++++++++++++++- 1 file changed, 73 insertions(+), 1 deletion(-) diff --git a/runtime/moonbase/tests/xcm_tests.rs b/runtime/moonbase/tests/xcm_tests.rs index 47a63d4a3bb..a9532844bc4 100644 --- a/runtime/moonbase/tests/xcm_tests.rs +++ b/runtime/moonbase/tests/xcm_tests.rs @@ -575,7 +575,79 @@ fn receive_relay_asset_with_trader() { ParaA::execute_with(|| { // non-free execution, not full amount received assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 90); - // Fee should have been received by treasyrt + // Fee should have been received by treasury + assert_eq!(Assets::balance(source_id, &Treasury::account_id()), 10); + }); +} + +#[test] +fn send_para_a_asset_to_para_b_with_trader() { + MockNet::reset(); + + let para_a_balances = MultiLocation::new(1, X2(Parachain(1), PalletInstance(1u8))); + let source_location = parachain::AssetType::Xcm(para_a_balances); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"ParaAToken".to_vec(), + symbol: b"ParaA".to_vec(), + decimals: 18, + }; + + ParaB::execute_with(|| { + assert_ok!(AssetManager::register_asset( + parachain::Origin::root(), + source_location, + asset_metadata, + 1u128, + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::Origin::root(), + source_id, + 2500000000000u128 + )); + }); + + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(2), + AccountKey20 { + network: NetworkId::Any, + key: PARAALICE.into(), + }, + ), + }; + + // In destination chain, we only need 4 weight + // We put 10 weight, 6 of which should be refunded and 4 of which should go to treasury + ParaA::execute_with(|| { + assert_ok!(XTokens::transfer( + parachain::Origin::signed(PARAALICE.into()), + parachain::CurrencyId::SelfReserve, + 100, + Box::new(VersionedMultiLocation::V1(dest)), + 10 + )); + }); + ParaA::execute_with(|| { + // free execution, full amount received + assert_eq!( + ParaBalances::free_balance(&PARAALICE.into()), + INITIAL_BALANCE - 100 + ); + }); + + // We are sending 100 tokens from para A. + // Amount spent in fees is Units per second * weight / 1_000_000_000_000 (weight per second) + // weight is 4 since we are executing 4 instructions with a unitweightcost of 1. + // Units per second should be 2_500_000_000_000_000 + // Since we set 10 weight in destination chain, 25 will be charged upfront + // 15 of those will be refunded, while 10 will go to treasury as the true weight used + // will be 4 + ParaB::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 90); + // Fee should have been received by treasury assert_eq!(Assets::balance(source_id, &Treasury::account_id()), 10); }); } From cad659b2292e4bcc0ab28769c0d2a395e1c60328 Mon Sep 17 00:00:00 2001 From: gorka Date: Mon, 29 Nov 2021 16:45:51 +0100 Subject: [PATCH 04/14] Clean non-affecting changes --- runtime/moonbase/tests/xcm_mock/relay_chain.rs | 2 +- tests/para-tests-no-ci/test-xcm-para.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime/moonbase/tests/xcm_mock/relay_chain.rs b/runtime/moonbase/tests/xcm_mock/relay_chain.rs index 62957c9ef3c..3b561cea204 100644 --- a/runtime/moonbase/tests/xcm_mock/relay_chain.rs +++ b/runtime/moonbase/tests/xcm_mock/relay_chain.rs @@ -103,7 +103,7 @@ parameter_types! { pub const KusamaNetwork: NetworkId = NetworkId::Kusama; pub const AnyNetwork: NetworkId = NetworkId::Any; pub Ancestry: MultiLocation = Here.into(); - pub UnitWeightCost: Weight = 1_000_000_000; + pub UnitWeightCost: Weight = 1_000; } pub type SovereignAccountOf = ( diff --git a/tests/para-tests-no-ci/test-xcm-para.ts b/tests/para-tests-no-ci/test-xcm-para.ts index f716c271764..27dd076dd14 100644 --- a/tests/para-tests-no-ci/test-xcm-para.ts +++ b/tests/para-tests-no-ci/test-xcm-para.ts @@ -89,7 +89,7 @@ describeParachain( "XCM - receive_relay_asset_from_relay", { chain: "moonbase-local" }, (context) => { - it.only("should be able to receive an asset from relay", async function () { + it("should be able to receive an asset from relay", async function () { const keyring = new Keyring({ type: "sr25519" }); const aliceRelay = keyring.addFromUri("//Alice"); From 6ac546a7cfb6ffd3a6e4818aaf9db3e59a763b05 Mon Sep 17 00:00:00 2001 From: gorka Date: Mon, 29 Nov 2021 19:54:30 +0100 Subject: [PATCH 05/14] Make a struct in xcm_primitives with the required bounds --- primitives/xcm/src/lib.rs | 23 +++++++-- runtime/moonbase/src/lib.rs | 52 +++++++++----------- runtime/moonbase/tests/xcm_mock/parachain.rs | 46 ++++++++--------- 3 files changed, 65 insertions(+), 56 deletions(-) diff --git a/primitives/xcm/src/lib.rs b/primitives/xcm/src/lib.rs index ad43b852579..52e29bb2680 100644 --- a/primitives/xcm/src/lib.rs +++ b/primitives/xcm/src/lib.rs @@ -19,7 +19,7 @@ #![cfg_attr(not(feature = "std"), no_std)] use frame_support::{ - traits::{Get, OriginTrait}, + traits::{tokens::fungibles::Mutate, Get, OriginTrait}, weights::{constants::WEIGHT_PER_SECOND, Weight}, }; use xcm::latest::{ @@ -29,8 +29,7 @@ use xcm::latest::{ MultiAsset, MultiLocation, NetworkId, }; use xcm_builder::TakeRevenue; -use xcm_executor::traits::FilterAssetLocation; -use xcm_executor::traits::WeightTrader; +use xcm_executor::traits::{FilterAssetLocation, MatchesFungibles, WeightTrader}; use sp_std::borrow::Borrow; use sp_std::{convert::TryInto, marker::PhantomData}; @@ -310,3 +309,21 @@ pub trait AccountIdToCurrencyId { // Get assetId from account fn account_to_currency_id(account: Account) -> Option; } + +pub struct XcmFeesToAccount( + PhantomData<(Assets, Matcher, AccountId, ReceiverAccount)>, +); +impl< + Assets: Mutate, + Matcher: MatchesFungibles, + AccountId: Clone, // can't get away without it since Currency is generic over it. + ReceiverAccount: Get, + > TakeRevenue for XcmFeesToAccount +{ + fn take_revenue(revenue: MultiAsset) { + if let Ok((asset_id, amount)) = Matcher::matches_fungibles(&revenue) { + let ok = Assets::mint_into(asset_id, &ReceiverAccount::get(), amount).is_ok(); + debug_assert!(ok, "`mint_into` cannot generally fail; qed"); + } + } +} diff --git a/runtime/moonbase/src/lib.rs b/runtime/moonbase/src/lib.rs index efae48bb766..f2c1f4f3430 100644 --- a/runtime/moonbase/src/lib.rs +++ b/runtime/moonbase/src/lib.rs @@ -33,7 +33,6 @@ use fp_rpc::TransactionStatus; use pallet_evm_precompile_assets_erc20::AccountIdAssetIdConversion; use account::AccountId20; -use frame_support::traits::tokens::fungibles::Mutate; use sp_runtime::traits::Hash as THash; use frame_support::{ @@ -55,7 +54,7 @@ use xcm_builder::{ CurrencyAdapter as XcmCurrencyAdapter, EnsureXcmOrigin, FixedWeightBounds, FungiblesAdapter, IsConcrete, LocationInverter, ParentAsSuperuser, ParentIsDefault, RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia, SignedAccountKey20AsNative, - SovereignSignedViaLocation, TakeRevenue, TakeWeightCredit, UsingComponents, + SovereignSignedViaLocation, TakeWeightCredit, UsingComponents, }; use xcm_executor::traits::JustTry; @@ -106,7 +105,8 @@ use precompiles::{MoonbasePrecompiles, ASSET_PRECOMPILE_ADDRESS_PREFIX}; use xcm_primitives::{ AccountIdToCurrencyId, AccountIdToMultiLocation, AsAssetType, FirstAssetTrader, - MultiNativeAsset, SignedToAccountId20, UtilityAvailableCalls, UtilityEncodeCall, XcmTransact, + MultiNativeAsset, SignedToAccountId20, UtilityAvailableCalls, UtilityEncodeCall, + XcmFeesToAccount, XcmTransact, }; #[cfg(any(feature = "std", test))] @@ -576,25 +576,6 @@ impl pallet_democracy::Config for Runtime { type MaxProposals = MaxProposals; } -pub struct ToTreasury(sp_std::marker::PhantomData); -impl TakeRevenue for ToTreasury -where - AssetXConverter: xcm_executor::traits::Convert, -{ - fn take_revenue(revenue: MultiAsset) { - if let MultiAsset { - id: Concrete(location), - fun: Fungible(amount), - } = revenue - { - if let Some(asset_id) = AssetXConverter::convert_ref(location).ok() { - // Mint fees in treasury - let _ = Assets::mint_into(asset_id, &Treasury::account_id(), amount); - } - } - } -} - parameter_types! { pub const ProposalBond: Permill = Permill::from_percent(5); pub const ProposalBondMinimum: Balance = 1 * currency::UNIT * currency::SUPPLY_FACTOR; @@ -1070,6 +1051,26 @@ pub type XcmBarrier = ( AllowSubscriptionsFrom, ); +parameter_types! { + /// Xcm fees will go to the treasury account + pub TreasuryAccount:AccountId = Treasury::account_id(); +} + +/// This is the struct that will handle the revenue from xcm fees +pub type XcmFeesToTreasury = XcmFeesToAccount< + Assets, + ( + ConvertedConcreteAssetId< + AssetId, + Balance, + AsAssetType, + JustTry, + >, + ), + AccountId, + TreasuryAccount, +>; + pub struct XcmExecutorConfig; impl xcm_executor::Config for XcmExecutorConfig { type Call = Call; @@ -1095,12 +1096,7 @@ impl xcm_executor::Config for XcmExecutorConfig { Balances, DealWithFees, >, - FirstAssetTrader< - AssetId, - AssetType, - AssetManager, - ToTreasury>, - >, + FirstAssetTrader, ); type ResponseHandler = PolkadotXcm; type SubscriptionService = PolkadotXcm; diff --git a/runtime/moonbase/tests/xcm_mock/parachain.rs b/runtime/moonbase/tests/xcm_mock/parachain.rs index 43428f2e7f3..04fc781b8f0 100644 --- a/runtime/moonbase/tests/xcm_mock/parachain.rs +++ b/runtime/moonbase/tests/xcm_mock/parachain.rs @@ -18,7 +18,7 @@ use frame_support::{ construct_runtime, parameter_types, - traits::{tokens::fungibles::Mutate, Everything, Get, Nothing, PalletInfo as PalletInfoTrait}, + traits::{Everything, Get, Nothing, PalletInfo as PalletInfoTrait}, weights::Weight, PalletId, }; @@ -47,7 +47,7 @@ use xcm_builder::{ CurrencyAdapter as XcmCurrencyAdapter, EnsureXcmOrigin, FixedRateOfFungible, FixedWeightBounds, FungiblesAdapter, IsConcrete, LocationInverter, ParentAsSuperuser, ParentIsDefault, RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia, - SignedAccountKey20AsNative, SovereignSignedViaLocation, TakeRevenue, TakeWeightCredit, + SignedAccountKey20AsNative, SovereignSignedViaLocation, TakeWeightCredit, }; use xcm_executor::{traits::JustTry, Config, XcmExecutor}; @@ -222,25 +222,26 @@ pub type Barrier = ( AllowSubscriptionsFrom, ); -pub struct ToTreasury(sp_std::marker::PhantomData); -impl TakeRevenue for ToTreasury -where - AssetXConverter: xcm_executor::traits::Convert, -{ - fn take_revenue(revenue: MultiAsset) { - if let MultiAsset { - id: Concrete(location), - fun: Fungible(amount), - } = revenue - { - if let Some(asset_id) = AssetXConverter::convert_ref(location).ok() { - // Mint fees in treasury - let _ = Assets::mint_into(asset_id, &Treasury::account_id(), amount); - } - } - } +parameter_types! { + /// Xcm fees will go to the treasury account + pub TreasuryAccount:AccountId = Treasury::account_id(); } +/// This is the struct that will handle the revenue from xcm fees +pub type XcmFeesToTreasury = xcm_primitives::XcmFeesToAccount< + Assets, + ( + ConvertedConcreteAssetId< + AssetId, + Balance, + xcm_primitives::AsAssetType, + JustTry, + >, + ), + AccountId, + TreasuryAccount, +>; + parameter_types! { // We cannot skip the native trader for some specific tests, so we will have to work with // a native trader that charges same number of units as weight @@ -272,12 +273,7 @@ impl Config for XcmConfig { type Weigher = FixedWeightBounds; type Trader = ( FixedRateOfFungible, - xcm_primitives::FirstAssetTrader< - AssetId, - AssetType, - AssetManager, - ToTreasury>, - >, + xcm_primitives::FirstAssetTrader, ); type ResponseHandler = PolkadotXcm; From a9deecf3fa55d5e4a00a1bcf1a2e3ddfc6ff44f7 Mon Sep 17 00:00:00 2001 From: gorka Date: Mon, 29 Nov 2021 19:58:43 +0100 Subject: [PATCH 06/14] Remove comment --- primitives/xcm/src/lib.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/primitives/xcm/src/lib.rs b/primitives/xcm/src/lib.rs index 52e29bb2680..4c3c5615963 100644 --- a/primitives/xcm/src/lib.rs +++ b/primitives/xcm/src/lib.rs @@ -316,7 +316,7 @@ pub struct XcmFeesToAccount( impl< Assets: Mutate, Matcher: MatchesFungibles, - AccountId: Clone, // can't get away without it since Currency is generic over it. + AccountId: Clone, ReceiverAccount: Get, > TakeRevenue for XcmFeesToAccount { From a39c44738026d10dfe386575603d4521817d1fad Mon Sep 17 00:00:00 2001 From: gorka Date: Tue, 30 Nov 2021 10:50:37 +0100 Subject: [PATCH 07/14] Add a bit of docu --- primitives/xcm/src/lib.rs | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/primitives/xcm/src/lib.rs b/primitives/xcm/src/lib.rs index 4c3c5615963..3eac16ab0bc 100644 --- a/primitives/xcm/src/lib.rs +++ b/primitives/xcm/src/lib.rs @@ -214,6 +214,7 @@ impl< } } +/// Deal with spent fees, deposit them as dictated by R impl< AssetId: From + Clone, AssetType: From + Clone, @@ -310,6 +311,9 @@ pub trait AccountIdToCurrencyId { fn account_to_currency_id(account: Account) -> Option; } +/// XCM fee depositor to which we implement the TakeRevenut trait +/// It receives a fungibles::Mutate implemented argument, a matcher to convert MultiAsset into +/// AssetId and amount, and the fee receiver account pub struct XcmFeesToAccount( PhantomData<(Assets, Matcher, AccountId, ReceiverAccount)>, ); @@ -322,8 +326,10 @@ impl< { fn take_revenue(revenue: MultiAsset) { if let Ok((asset_id, amount)) = Matcher::matches_fungibles(&revenue) { - let ok = Assets::mint_into(asset_id, &ReceiverAccount::get(), amount).is_ok(); - debug_assert!(ok, "`mint_into` cannot generally fail; qed"); + if !amount.is_zero() { + let ok = Assets::mint_into(asset_id, &ReceiverAccount::get(), amount).is_ok(); + debug_assert!(ok, "`mint_into` cannot generally fail; qed"); + } } } } From c2b2d515434a03c55c9b1247faad2ea8957204d2 Mon Sep 17 00:00:00 2001 From: gorka Date: Tue, 30 Nov 2021 11:05:01 +0100 Subject: [PATCH 08/14] IsZero import trait --- primitives/xcm/src/lib.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/primitives/xcm/src/lib.rs b/primitives/xcm/src/lib.rs index 3eac16ab0bc..495a509d467 100644 --- a/primitives/xcm/src/lib.rs +++ b/primitives/xcm/src/lib.rs @@ -22,6 +22,9 @@ use frame_support::{ traits::{tokens::fungibles::Mutate, Get, OriginTrait}, weights::{constants::WEIGHT_PER_SECOND, Weight}, }; +use sp_runtime::traits::Zero; +use sp_std::borrow::Borrow; +use sp_std::{convert::TryInto, marker::PhantomData}; use xcm::latest::{ AssetId as xcmAssetId, Error as XcmError, Fungibility, Junction::{AccountKey20, Parachain}, @@ -31,9 +34,6 @@ use xcm::latest::{ use xcm_builder::TakeRevenue; use xcm_executor::traits::{FilterAssetLocation, MatchesFungibles, WeightTrader}; -use sp_std::borrow::Borrow; -use sp_std::{convert::TryInto, marker::PhantomData}; - use sp_std::vec::Vec; /// Converter struct implementing `AssetIdConversion` converting a numeric asset ID From d4bebaf0b22e2954a0d7910466e7f738e793b132 Mon Sep 17 00:00:00 2001 From: gorka Date: Thu, 2 Dec 2021 17:41:09 +0100 Subject: [PATCH 09/14] PR suggestions --- primitives/xcm/src/lib.rs | 2 +- runtime/moonbase/src/lib.rs | 8 ++++---- runtime/moonbase/tests/xcm_mock/parachain.rs | 8 ++++---- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/primitives/xcm/src/lib.rs b/primitives/xcm/src/lib.rs index 495a509d467..3a497843a12 100644 --- a/primitives/xcm/src/lib.rs +++ b/primitives/xcm/src/lib.rs @@ -311,7 +311,7 @@ pub trait AccountIdToCurrencyId { fn account_to_currency_id(account: Account) -> Option; } -/// XCM fee depositor to which we implement the TakeRevenut trait +/// XCM fee depositor to which we implement the TakeRevenue trait /// It receives a fungibles::Mutate implemented argument, a matcher to convert MultiAsset into /// AssetId and amount, and the fee receiver account pub struct XcmFeesToAccount( diff --git a/runtime/moonbase/src/lib.rs b/runtime/moonbase/src/lib.rs index f2c1f4f3430..4dd545546cd 100644 --- a/runtime/moonbase/src/lib.rs +++ b/runtime/moonbase/src/lib.rs @@ -1053,11 +1053,11 @@ pub type XcmBarrier = ( parameter_types! { /// Xcm fees will go to the treasury account - pub TreasuryAccount:AccountId = Treasury::account_id(); + pub XcmFeesAccount: AccountId = Treasury::account_id(); } /// This is the struct that will handle the revenue from xcm fees -pub type XcmFeesToTreasury = XcmFeesToAccount< +pub type XcmFeesToAccount_ = XcmFeesToAccount< Assets, ( ConvertedConcreteAssetId< @@ -1068,7 +1068,7 @@ pub type XcmFeesToTreasury = XcmFeesToAccount< >, ), AccountId, - TreasuryAccount, + XcmFeesAccount, >; pub struct XcmExecutorConfig; @@ -1096,7 +1096,7 @@ impl xcm_executor::Config for XcmExecutorConfig { Balances, DealWithFees, >, - FirstAssetTrader, + FirstAssetTrader, ); type ResponseHandler = PolkadotXcm; type SubscriptionService = PolkadotXcm; diff --git a/runtime/moonbase/tests/xcm_mock/parachain.rs b/runtime/moonbase/tests/xcm_mock/parachain.rs index 04fc781b8f0..776da51ca8c 100644 --- a/runtime/moonbase/tests/xcm_mock/parachain.rs +++ b/runtime/moonbase/tests/xcm_mock/parachain.rs @@ -224,11 +224,11 @@ pub type Barrier = ( parameter_types! { /// Xcm fees will go to the treasury account - pub TreasuryAccount:AccountId = Treasury::account_id(); + pub XcmFeesAccount: AccountId = Treasury::account_id(); } /// This is the struct that will handle the revenue from xcm fees -pub type XcmFeesToTreasury = xcm_primitives::XcmFeesToAccount< +pub type XcmFeesToAccount_ = xcm_primitives::XcmFeesToAccount< Assets, ( ConvertedConcreteAssetId< @@ -239,7 +239,7 @@ pub type XcmFeesToTreasury = xcm_primitives::XcmFeesToAccount< >, ), AccountId, - TreasuryAccount, + XcmFeesAccount, >; parameter_types! { @@ -273,7 +273,7 @@ impl Config for XcmConfig { type Weigher = FixedWeightBounds; type Trader = ( FixedRateOfFungible, - xcm_primitives::FirstAssetTrader, + xcm_primitives::FirstAssetTrader, ); type ResponseHandler = PolkadotXcm; From fddb0916b95f7ec666b3834db914da7407ab54b9 Mon Sep 17 00:00:00 2001 From: gorka Date: Thu, 2 Dec 2021 20:38:45 +0100 Subject: [PATCH 10/14] wip --- runtime/moonbase/tests/xcm_mock/mod.rs | 35 +- runtime/moonbase/tests/xcm_mock/parachain.rs | 45 ++ .../moonbase/tests/xcm_mock/statemine_like.rs | 465 ++++++++++++++++++ runtime/moonbase/tests/xcm_tests.rs | 47 +- 4 files changed, 590 insertions(+), 2 deletions(-) create mode 100644 runtime/moonbase/tests/xcm_mock/statemine_like.rs diff --git a/runtime/moonbase/tests/xcm_mock/mod.rs b/runtime/moonbase/tests/xcm_mock/mod.rs index 81cac622988..ab626eee6f8 100644 --- a/runtime/moonbase/tests/xcm_mock/mod.rs +++ b/runtime/moonbase/tests/xcm_mock/mod.rs @@ -16,7 +16,7 @@ pub mod parachain; pub mod relay_chain; - +pub mod statemine_like; use cumulus_primitives_core::ParaId; use polkadot_parachain::primitives::AccountIdConversion; use sp_runtime::AccountId32; @@ -55,6 +55,15 @@ decl_test_parachain! { } } +decl_test_parachain! { + pub struct Statemine { + Runtime = statemine_like::Runtime, + XcmpMessageHandler = statemine_like::MsgQueue, + DmpMessageHandler = statemine_like::MsgQueue, + new_ext = statemine_ext(4), + } +} + decl_test_relay_chain! { pub struct Relay { Runtime = relay_chain::Runtime, @@ -96,6 +105,26 @@ pub fn para_ext(para_id: u32) -> sp_io::TestExternalities { }); ext } +pub fn statemine_ext(para_id: u32) -> sp_io::TestExternalities { + use statemine_like::{MsgQueue, Runtime, System}; + + let mut t = frame_system::GenesisConfig::default() + .build_storage::() + .unwrap(); + + pallet_balances::GenesisConfig:: { + balances: vec![(RELAYALICE.into(), INITIAL_BALANCE)], + } + .assimilate_storage(&mut t) + .unwrap(); + + let mut ext = sp_io::TestExternalities::new(t); + ext.execute_with(|| { + System::set_block_number(1); + MsgQueue::set_para_id(para_id.into()); + }); + ext +} pub fn relay_ext() -> sp_io::TestExternalities { use relay_chain::{Runtime, System}; @@ -116,8 +145,12 @@ pub fn relay_ext() -> sp_io::TestExternalities { } pub type RelayChainPalletXcm = pallet_xcm::Pallet; +pub type StatemineChainPalletXcm = pallet_xcm::Pallet; + pub type ParachainPalletXcm = pallet_xcm::Pallet; pub type Assets = pallet_assets::Pallet; +pub type StatemineAssets = pallet_assets::Pallet; + pub type Treasury = pallet_treasury::Pallet; pub type AssetManager = pallet_asset_manager::Pallet; pub type XTokens = orml_xtokens::Pallet; diff --git a/runtime/moonbase/tests/xcm_mock/parachain.rs b/runtime/moonbase/tests/xcm_mock/parachain.rs index 776da51ca8c..ffdf53e0ddb 100644 --- a/runtime/moonbase/tests/xcm_mock/parachain.rs +++ b/runtime/moonbase/tests/xcm_mock/parachain.rs @@ -242,6 +242,51 @@ pub type XcmFeesToAccount_ = xcm_primitives::XcmFeesToAccount< XcmFeesAccount, >; +parameter_types! { + pub const Local: MultiLocation = Here.into(); +} +/// Converter struct implementing `AssetIdConversion` converting a numeric asset ID (must be `TryFrom/TryInto`) into +/// a `GeneralIndex` junction, prefixed by some `MultiLocation` value. The `MultiLocation` value will typically be a +/// `PalletInstance` junction. +/// +pub struct LocalAsPrefixedGeneralIndex( + sp_std::marker::PhantomData<(Prefix, AssetId, ConvertAssetId)>, +); +impl< + Prefix: Get, + AssetId: Clone, + ConvertAssetId: xcm_executor::traits::Convert, + > xcm_executor::traits::Convert + for LocalAsPrefixedGeneralIndex +{ + fn convert_ref(id: impl sp_std::borrow::Borrow) -> Result { + let prefix = Prefix::get(); + let id = id.borrow(); + if prefix.parent_count() != id.parent_count() + || prefix + .interior() + .iter() + .enumerate() + .any(|(index, junction)| id.interior().at(index) != Some(junction)) + { + return Err(()); + } + match id.interior().at(prefix.interior().len()) { + Some(Junction::GeneralIndex(id)) => ConvertAssetId::convert_ref(id), + _ => Err(()), + } + } + fn reverse_ref(what: impl sp_std::borrow::Borrow) -> Result { + let mut location = Prefix::get(); + let id = ConvertAssetId::reverse_ref(what)?; + location + .push_interior(Junction::GeneralIndex(id)) + .map_err(|_| ())?; + Ok(location) + } +} + +pub type StatemintLike = LocalAsPrefixedGeneralIndex; parameter_types! { // We cannot skip the native trader for some specific tests, so we will have to work with // a native trader that charges same number of units as weight diff --git a/runtime/moonbase/tests/xcm_mock/statemine_like.rs b/runtime/moonbase/tests/xcm_mock/statemine_like.rs new file mode 100644 index 00000000000..653c4594c2a --- /dev/null +++ b/runtime/moonbase/tests/xcm_mock/statemine_like.rs @@ -0,0 +1,465 @@ + // Copyright 2021 Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . + +//! Relay chain runtime mock. + +use frame_support::{ + construct_runtime, parameter_types, match_type, + traits::{Everything, Nothing}, + weights::Weight, +}; +use frame_system::EnsureRoot; + +use sp_core::H256; +use sp_runtime::{testing::Header, traits::{IdentityLookup, Hash}, AccountId32}; + +use polkadot_core_primitives::BlockNumber as RelayBlockNumber; + +use polkadot_parachain::primitives::Id as ParaId; +use polkadot_runtime_parachains::{configuration, origin, shared, ump}; +use xcm::latest::prelude::*; +use xcm_builder::{ + AccountId32Aliases, AllowKnownQueryResponses, AllowSubscriptionsFrom, + AllowTopLevelPaidExecutionFrom, ChildParachainAsNative, ChildParachainConvertsVia, + ChildSystemParachainAsSuperuser, CurrencyAdapter as XcmCurrencyAdapter, FixedRateOfFungible, + FixedWeightBounds, IsConcrete, LocationInverter, SignedAccountId32AsNative, + SignedToAccountId32, SovereignSignedViaLocation, TakeWeightCredit, FungiblesAdapter, + ParentIsDefault, SiblingParachainConvertsVia, CurrencyAdapter, ConvertedConcreteAssetId, AsPrefixedGeneralIndex, + RelayChainAsNative,SiblingParachainAsNative,ParentAsSuperuser, AllowUnpaidExecutionFrom, EnsureXcmOrigin +}; +use sp_std::convert::TryFrom; +use polkadot_parachain::primitives::Sibling; +use xcm::VersionedXcm; +use xcm_simulator::{ + DmpMessageHandlerT as DmpMessageHandler, XcmpMessageFormat, + XcmpMessageHandlerT as XcmpMessageHandler, +}; +use xcm_executor::{Config, XcmExecutor, traits::JustTry}; +pub type AccountId = AccountId32; +pub type Balance = u128; +pub type AssetId = u128; + +parameter_types! { + pub const BlockHashCount: u64 = 250; +} + +impl frame_system::Config for Runtime { + type Origin = Origin; + type Call = Call; + type Index = u64; + type BlockNumber = u64; + type Hash = H256; + type Hashing = ::sp_runtime::traits::BlakeTwo256; + type AccountId = AccountId; + type Lookup = IdentityLookup; + type Header = Header; + type Event = Event; + type BlockHashCount = BlockHashCount; + type BlockWeights = (); + type BlockLength = (); + type Version = (); + type PalletInfo = PalletInfo; + type AccountData = pallet_balances::AccountData; + type OnNewAccount = (); + type OnKilledAccount = (); + type DbWeight = (); + type BaseCallFilter = Everything; + type SystemWeightInfo = (); + type SS58Prefix = (); + type OnSetCode = (); +} + +parameter_types! { + pub ExistentialDeposit: Balance = 1; + pub const MaxLocks: u32 = 50; + pub const MaxReserves: u32 = 50; +} + +impl pallet_balances::Config for Runtime { + type MaxLocks = MaxLocks; + type Balance = Balance; + type Event = Event; + type DustRemoval = (); + type ExistentialDeposit = ExistentialDeposit; + type AccountStore = System; + type WeightInfo = (); + type MaxReserves = MaxReserves; + type ReserveIdentifier = [u8; 8]; +} + +parameter_types! { + pub const AssetDeposit: Balance = 0; // 1 UNIT deposit to create asset + pub const ApprovalDeposit: Balance = 0; + pub const AssetsStringLimit: u32 = 50; + /// Key = 32 bytes, Value = 36 bytes (32+1+1+1+1) + // https://github.com/paritytech/substrate/blob/069917b/frame/assets/src/lib.rs#L257L271 + pub const MetadataDepositBase: Balance = 0; + pub const MetadataDepositPerByte: Balance = 0; + pub const ExecutiveBody: BodyId = BodyId::Executive; +} + +impl pallet_assets::Config for Runtime { + type Event = Event; + type Balance = Balance; + type AssetId = AssetId; + type Currency = Balances; + type ForceOrigin = EnsureRoot; + type AssetDeposit = AssetDeposit; + type MetadataDepositBase = MetadataDepositBase; + type MetadataDepositPerByte = MetadataDepositPerByte; + type ApprovalDeposit = ApprovalDeposit; + type StringLimit = AssetsStringLimit; + type Freezer = (); + type Extra = (); + type WeightInfo = (); +} + +parameter_types! { + pub const KsmLocation: MultiLocation = MultiLocation::parent(); + pub const RelayNetwork: NetworkId = NetworkId::Kusama; + pub RelayChainOrigin: Origin = cumulus_pallet_xcm::Origin::Relay.into(); + pub Ancestry: MultiLocation = Parachain(MsgQueue::parachain_id().into()).into(); + pub const Local: MultiLocation = Here.into(); + pub CheckingAccount: AccountId = PolkadotXcm::check_account(); +} + +/// Type for specifying how a `MultiLocation` can be converted into an `AccountId`. This is used +/// when determining ownership of accounts for asset transacting and when attempting to use XCM +/// `Transact` in order to determine the dispatch Origin. +pub type LocationToAccountId = ( + // The parent (Relay-chain) origin converts to the default `AccountId`. + ParentIsDefault, + // Sibling parachain origins convert to AccountId via the `ParaId::into`. + SiblingParachainConvertsVia, + // Straight up local `AccountId32` origins just alias directly to `AccountId`. + AccountId32Aliases, +); + +/// Means for transacting the native currency on this chain. +pub type CurrencyTransactor = CurrencyAdapter< + // Use this currency: + Balances, + // Use this currency when it is a fungible asset matching the given location or name: + IsConcrete, + // Convert an XCM MultiLocation into a local account id: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We don't track any teleports of `Balances`. + (), +>; + +/// Means for transacting assets besides the native currency on this chain. +pub type FungiblesTransactor = FungiblesAdapter< + // Use this fungibles implementation: + Assets, + // Use this currency when it is a fungible asset matching the given location or name: + ConvertedConcreteAssetId< + AssetId, + Balance, + AsPrefixedGeneralIndex, + JustTry, + >, + // Convert an XCM MultiLocation into a local account id: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We only want to allow teleports of known assets. We use non-zero issuance as an indication + // that this asset is known. + Nothing, + // The account to use for tracking teleports. + CheckingAccount, +>; +/// Means for transacting assets on this chain. +pub type AssetTransactors = (CurrencyTransactor, FungiblesTransactor); + +/// This is the type we use to convert an (incoming) XCM origin into a local `Origin` instance, +/// ready for dispatching a transaction with Xcm's `Transact`. There is an `OriginKind` which can +/// biases the kind of local `Origin` it will become. +pub type XcmOriginToTransactDispatchOrigin = ( + // Sovereign account converter; this attempts to derive an `AccountId` from the origin location + // using `LocationToAccountId` and then turn that into the usual `Signed` origin. Useful for + // foreign chains who want to have a local sovereign account on this chain which they control. + SovereignSignedViaLocation, + // Native converter for Relay-chain (Parent) location; will convert to a `Relay` origin when + // recognised. + RelayChainAsNative, + // Native converter for sibling Parachains; will convert to a `SiblingPara` origin when + // recognised. + SiblingParachainAsNative, + // Superuser converter for the Relay-chain (Parent) location. This will allow it to issue a + // transaction from the Root origin. + ParentAsSuperuser, + // Native signed account converter; this just converts an `AccountId32` origin into a normal + // `Origin::Signed` origin of the same 32-byte value. + SignedAccountId32AsNative, + // Xcm origins can be represented natively under the Xcm pallet's Xcm origin. + pallet_xcm::XcmPassthrough, +); + +parameter_types! { + // One XCM operation is 1_000_000_000 weight - almost certainly a conservative estimate. + pub UnitWeightCost: Weight = 1_000_000_000; + pub const MaxInstructions: u32 = 100; +} + +match_type! { + pub type ParentOrParentsExecutivePlurality: impl Contains = { + MultiLocation { parents: 1, interior: Here } | + MultiLocation { parents: 1, interior: X1(Plurality { id: BodyId::Executive, .. }) } + }; +} +match_type! { + pub type ParentOrSiblings: impl Contains = { + MultiLocation { parents: 1, interior: Here } | + MultiLocation { parents: 1, interior: X1(_) } + }; +} + +pub type Barrier = ( + TakeWeightCredit, + AllowTopLevelPaidExecutionFrom, + // Parent and its exec plurality get free execution + AllowUnpaidExecutionFrom, + // Expected responses are OK. + AllowKnownQueryResponses, + // Subscriptions for version tracking are OK. + AllowSubscriptionsFrom, +); + +pub struct XcmConfig; +impl Config for XcmConfig { + type Call = Call; + type XcmSender = XcmRouter; + type AssetTransactor = AssetTransactors; + type OriginConverter = XcmOriginToTransactDispatchOrigin; + type IsReserve = xcm_primitives::MultiNativeAsset; + type IsTeleporter = (); + type LocationInverter = LocationInverter; + type Barrier = Barrier; + type Weigher = FixedWeightBounds; + type Trader = (); + type ResponseHandler = PolkadotXcm; + type AssetTrap = PolkadotXcm; + type AssetClaims = PolkadotXcm; + type SubscriptionService = PolkadotXcm; +} + +/// No local origins on this chain are allowed to dispatch XCM sends/executions. +pub type LocalOriginToLocation = SignedToAccountId32; + +pub type XcmRouter = super::ParachainXcmRouter; + + +impl pallet_xcm::Config for Runtime { + type Event = Event; + type SendXcmOrigin = EnsureXcmOrigin; + type XcmRouter = XcmRouter; + type ExecuteXcmOrigin = EnsureXcmOrigin; + type XcmExecuteFilter = Nothing; + type XcmExecutor = XcmExecutor; + type XcmTeleportFilter = Everything; + type XcmReserveTransferFilter = Everything; + type Weigher = FixedWeightBounds; + type LocationInverter = LocationInverter; + type Origin = Origin; + type Call = Call; + const VERSION_DISCOVERY_QUEUE_SIZE: u32 = 100; + type AdvertisedXcmVersion = pallet_xcm::CurrentXcmVersion; +} + +impl cumulus_pallet_xcm::Config for Runtime { + type Event = Event; + type XcmExecutor = XcmExecutor; +} + +#[frame_support::pallet] +pub mod mock_msg_queue { + use super::*; + use frame_support::pallet_prelude::*; + + #[pallet::config] + pub trait Config: frame_system::Config { + type Event: From> + IsType<::Event>; + type XcmExecutor: ExecuteXcm; + } + + #[pallet::call] + impl Pallet {} + + #[pallet::pallet] + #[pallet::generate_store(pub(super) trait Store)] + pub struct Pallet(_); + + #[pallet::storage] + #[pallet::getter(fn parachain_id)] + pub(super) type ParachainId = StorageValue<_, ParaId, ValueQuery>; + + impl Get for Pallet { + fn get() -> ParaId { + Self::parachain_id() + } + } + + pub type MessageId = [u8; 32]; + + #[pallet::event] + #[pallet::generate_deposit(pub(super) fn deposit_event)] + pub enum Event { + // XCMP + /// Some XCM was executed OK. + Success(Option), + /// Some XCM failed. + Fail(Option, XcmError), + /// Bad XCM version used. + BadVersion(Option), + /// Bad XCM format used. + BadFormat(Option), + + // DMP + /// Downward message is invalid XCM. + InvalidFormat(MessageId), + /// Downward message is unsupported version of XCM. + UnsupportedVersion(MessageId), + /// Downward message executed with the given outcome. + ExecutedDownward(MessageId, Outcome), + } + + impl Pallet { + pub fn set_para_id(para_id: ParaId) { + ParachainId::::put(para_id); + } + + fn handle_xcmp_message( + sender: ParaId, + _sent_at: RelayBlockNumber, + xcm: VersionedXcm, + max_weight: Weight, + ) -> Result { + let hash = Encode::using_encoded(&xcm, T::Hashing::hash); + let (result, event) = match Xcm::::try_from(xcm) { + Ok(xcm) => { + let location = MultiLocation::new(1, Junctions::X1(Parachain(sender.into()))); + match T::XcmExecutor::execute_xcm(location, xcm, max_weight) { + Outcome::Error(e) => (Err(e.clone()), Event::Fail(Some(hash), e)), + Outcome::Complete(w) => (Ok(w), Event::Success(Some(hash))), + // As far as the caller is concerned, this was dispatched without error, so + // we just report the weight used. + Outcome::Incomplete(w, e) => (Ok(w), Event::Fail(Some(hash), e)), + } + } + Err(()) => ( + Err(XcmError::UnhandledXcmVersion), + Event::BadVersion(Some(hash)), + ), + }; + Self::deposit_event(event); + result + } + } + + impl XcmpMessageHandler for Pallet { + fn handle_xcmp_messages<'a, I: Iterator>( + iter: I, + max_weight: Weight, + ) -> Weight { + for (sender, sent_at, data) in iter { + let mut data_ref = data; + let _ = XcmpMessageFormat::decode(&mut data_ref) + .expect("Simulator encodes with versioned xcm format; qed"); + + let mut remaining_fragments = &data_ref[..]; + while !remaining_fragments.is_empty() { + if let Ok(xcm) = VersionedXcm::::decode(&mut remaining_fragments) { + let _ = Self::handle_xcmp_message(sender, sent_at, xcm, max_weight); + } else { + debug_assert!(false, "Invalid incoming XCMP message data"); + } + } + } + max_weight + } + } + + impl DmpMessageHandler for Pallet { + fn handle_dmp_messages( + iter: impl Iterator)>, + limit: Weight, + ) -> Weight { + for (_i, (_sent_at, data)) in iter.enumerate() { + let id = sp_io::hashing::blake2_256(&data[..]); + let maybe_msg = + VersionedXcm::::decode(&mut &data[..]).map(Xcm::::try_from); + match maybe_msg { + Err(_) => { + Self::deposit_event(Event::InvalidFormat(id)); + } + Ok(Err(())) => { + Self::deposit_event(Event::UnsupportedVersion(id)); + } + Ok(Ok(x)) => { + let outcome = T::XcmExecutor::execute_xcm(Parent, x, limit); + + Self::deposit_event(Event::ExecutedDownward(id, outcome)); + } + } + } + limit + } + } +} +impl mock_msg_queue::Config for Runtime { + type Event = Event; + type XcmExecutor = XcmExecutor; +} + +type UncheckedExtrinsic = frame_system::mocking::MockUncheckedExtrinsic; +type Block = frame_system::mocking::MockBlock; +construct_runtime!( + pub enum Runtime where + Block = Block, + NodeBlock = Block, + UncheckedExtrinsic = UncheckedExtrinsic, + { + System: frame_system::{Pallet, Call, Storage, Config, Event}, + Balances: pallet_balances::{Pallet, Call, Storage, Config, Event}, + PolkadotXcm: pallet_xcm::{Pallet, Call, Storage, Event, Origin}, + CumulusXcm: cumulus_pallet_xcm::{Pallet, Event, Origin}, + MsgQueue: mock_msg_queue::{Pallet, Storage, Event}, + Assets: pallet_assets::{Pallet, Storage, Event}, + } +); + +pub(crate) fn statemint_events() -> Vec { + System::events() + .into_iter() + .map(|r| r.event) + .filter_map(|e| Some(e)) + .collect::>() +} + +use frame_support::traits::{OnFinalize, OnInitialize}; +pub(crate) fn statemint_roll_to(n: u64) { + while System::block_number() < n { + PolkadotXcm::on_finalize(System::block_number()); + Balances::on_finalize(System::block_number()); + System::on_finalize(System::block_number()); + System::set_block_number(System::block_number() + 1); + System::on_initialize(System::block_number()); + Balances::on_initialize(System::block_number()); + PolkadotXcm::on_initialize(System::block_number()); + } +} diff --git a/runtime/moonbase/tests/xcm_tests.rs b/runtime/moonbase/tests/xcm_tests.rs index a9532844bc4..5256c141e86 100644 --- a/runtime/moonbase/tests/xcm_tests.rs +++ b/runtime/moonbase/tests/xcm_tests.rs @@ -30,13 +30,19 @@ use xcm::latest::{ Junctions::*, MultiLocation, NetworkId, Response, Xcm, }; +use xcm_executor::traits::Convert; use xcm_simulator::TestExt; - // Send a relay asset (like DOT) to a parachain A #[test] fn receive_relay_asset_from_relay() { MockNet::reset(); + let a = parachain::StatemintLike::convert_ref(MultiLocation::new( + 1, + X1(xcm::latest::prelude::GeneralIndex(0)), + )); + println!("A is {:?}", a); + let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); let source_id: parachain::AssetId = source_location.clone().into(); let asset_metadata = parachain::AssetMetadata { @@ -1277,6 +1283,45 @@ fn test_automatic_versioning_on_runtime_upgrade_with_para_b() { }); } +#[test] +fn test_statemine_like() { + MockNet::reset(); + + Statemine::execute_with(|| { + assert_ok!(StatemineAssets::create( + statemine_like::Origin::signed(RELAYALICE), + 0, + RELAYALICE, + 1 + )); + + assert_ok!(StatemineAssets::mint( + statemine_like::Origin::signed(RELAYALICE), + 0, + RELAYALICE, + 100000000000000 + )); + + // Actually send relay asset to parachain + let dest: MultiLocation = AccountKey20 { + network: NetworkId::Any, + key: PARAALICE, + } + .into(); + + assert_ok!(StatemineChainPalletXcm::reserve_transfer_assets( + statemine_like::Origin::signed(RELAYALICE), + Box::new(Parachain(1).into().into()), + Box::new(VersionedMultiLocation::V1(dest).clone().into()), + Box::new((X1(xcm::latest::prelude::GeneralIndex(0)), 123).into()), + 0, + )); + println!("Events {:?}", statemine_like::statemint_events()) + }); + +} + + use parity_scale_codec::{Decode, Encode}; use sp_io::hashing::blake2_256; From 54ff68742b6e8849405c733391c915657cf76936 Mon Sep 17 00:00:00 2001 From: gorka Date: Thu, 9 Dec 2021 12:20:59 +0100 Subject: [PATCH 11/14] Update and prove that the new re-anchoring process works --- node/Cargo.toml | 4 +- node/cli/Cargo.toml | 16 +-- node/perf-test/Cargo.toml | 4 +- node/service/Cargo.toml | 32 +++--- pallets/asset-manager/Cargo.toml | 2 +- pallets/author-mapping/Cargo.toml | 2 +- pallets/parachain-staking/Cargo.toml | 2 +- pallets/xcm-transactor/Cargo.toml | 14 +-- pallets/xcm-transactor/src/lib.rs | 10 +- precompiles/crowdloan-rewards/Cargo.toml | 10 +- precompiles/relay-encoder/Cargo.toml | 4 +- precompiles/utils/Cargo.toml | 2 +- precompiles/xcm_transactor/Cargo.toml | 10 +- precompiles/xtokens/Cargo.toml | 12 +- primitives/xcm/Cargo.toml | 6 +- runtime/moonbase/Cargo.toml | 46 ++++---- runtime/moonbase/tests/xcm_mock/mod.rs | 4 + runtime/moonbase/tests/xcm_mock/parachain.rs | 11 +- .../moonbase/tests/xcm_mock/statemine_like.rs | 82 +++++++++++--- runtime/moonbase/tests/xcm_tests.rs | 105 +++++++++++++++--- runtime/moonbeam/Cargo.toml | 20 ++-- runtime/moonriver/Cargo.toml | 18 +-- runtime/relay-encoder/Cargo.toml | 10 +- 23 files changed, 277 insertions(+), 149 deletions(-) diff --git a/node/Cargo.toml b/node/Cargo.toml index 2140ebabcd8..466810f4d11 100644 --- a/node/Cargo.toml +++ b/node/Cargo.toml @@ -26,8 +26,8 @@ serde_json = "1.0" tempfile = "3.2.0" # Benchmarking -pallet-xcm = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12" } -xcm-builder = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12" } +pallet-xcm = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor" } +xcm-builder = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor" } [features] default = [ "moonbase-native", "moonbeam-native", "moonriver-native" ] diff --git a/node/cli/Cargo.toml b/node/cli/Cargo.toml index efd883969ac..dda567288f3 100644 --- a/node/cli/Cargo.toml +++ b/node/cli/Cargo.toml @@ -25,16 +25,16 @@ sp-runtime = { git = "https://github.com/purestake/substrate", branch = "moonbea try-runtime-cli = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12", optional = true } # Cumulus / Nimbus -cumulus-client-cli = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12" } -cumulus-client-service = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12" } -cumulus-primitives-core = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12" } -nimbus-primitives = { git = "https://github.com/purestake/nimbus", branch = "moonbeam-polkadot-v0.9.12" } +cumulus-client-cli = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor" } +cumulus-client-service = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor" } +cumulus-primitives-core = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor" } +nimbus-primitives = { git = "https://github.com/purestake/nimbus", branch = "gorka-try-new-reanchor" } # Polkadot -polkadot-cli = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12" } -polkadot-parachain = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12" } -polkadot-primitives = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12" } -polkadot-service = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12" } +polkadot-cli = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor" } +polkadot-parachain = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor" } +polkadot-primitives = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor" } +polkadot-service = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor" } [build-dependencies] substrate-build-script-utils = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12" } diff --git a/node/perf-test/Cargo.toml b/node/perf-test/Cargo.toml index 8d020d859ae..6e98fb51949 100644 --- a/node/perf-test/Cargo.toml +++ b/node/perf-test/Cargo.toml @@ -61,5 +61,5 @@ fp-rpc = { git = "https://github.com/purestake/frontier", branch = "moonbeam-pol pallet-ethereum = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.12" } # Cumulus / Nimbus -cumulus-primitives-parachain-inherent = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12" } -nimbus-primitives = { git = "https://github.com/purestake/nimbus", branch = "moonbeam-polkadot-v0.9.12" } +cumulus-primitives-parachain-inherent = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor" } +nimbus-primitives = { git = "https://github.com/purestake/nimbus", branch = "gorka-try-new-reanchor" } diff --git a/node/service/Cargo.toml b/node/service/Cargo.toml index a2db03a187f..2883c647246 100644 --- a/node/service/Cargo.toml +++ b/node/service/Cargo.toml @@ -93,24 +93,24 @@ fp-rpc = { git = "https://github.com/purestake/frontier", branch = "moonbeam-pol pallet-ethereum = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.12" } # Cumulus / Nimbus -cumulus-client-cli = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12" } -cumulus-client-collator = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12" } -cumulus-client-consensus-relay-chain = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12" } -cumulus-client-network = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12" } -cumulus-client-service = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12" } -cumulus-primitives-core = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12" } -cumulus-primitives-parachain-inherent = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12" } -cumulus-test-relay-sproof-builder = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12" } -nimbus-consensus = { git = "https://github.com/purestake/nimbus", branch = "moonbeam-polkadot-v0.9.12" } +cumulus-client-cli = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor" } +cumulus-client-collator = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor" } +cumulus-client-consensus-relay-chain = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor" } +cumulus-client-network = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor" } +cumulus-client-service = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor" } +cumulus-primitives-core = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor" } +cumulus-primitives-parachain-inherent = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor" } +cumulus-test-relay-sproof-builder = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor" } +nimbus-consensus = { git = "https://github.com/purestake/nimbus", branch = "gorka-try-new-reanchor" } # TODO we should be able to depend only on the primitives crate once we move the inherent data provider there. -nimbus-primitives = { git = "https://github.com/purestake/nimbus", branch = "moonbeam-polkadot-v0.9.12" } -pallet-author-inherent = { git = "https://github.com/purestake/nimbus", branch = "moonbeam-polkadot-v0.9.12" } +nimbus-primitives = { git = "https://github.com/purestake/nimbus", branch = "gorka-try-new-reanchor" } +pallet-author-inherent = { git = "https://github.com/purestake/nimbus", branch = "gorka-try-new-reanchor" } # Polkadot -polkadot-cli = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12" } -polkadot-parachain = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12" } -polkadot-primitives = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12" } -polkadot-service = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12" } +polkadot-cli = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor" } +polkadot-parachain = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor" } +polkadot-primitives = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor" } +polkadot-service = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor" } # Benchmarking frame-benchmarking = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12" } @@ -122,7 +122,7 @@ nix = "0.17" rand = "0.7.3" # Polkadot dev-dependencies -polkadot-runtime-common = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12" } +polkadot-runtime-common = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor" } # Substrate dev-dependencies pallet-sudo = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12" } diff --git a/pallets/asset-manager/Cargo.toml b/pallets/asset-manager/Cargo.toml index 7a6714a440a..e2b248b3cd8 100644 --- a/pallets/asset-manager/Cargo.toml +++ b/pallets/asset-manager/Cargo.toml @@ -20,7 +20,7 @@ sp-runtime = { git = "https://github.com/purestake/substrate", branch = "moonbea sp-std = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12", default-features = false } # Polkadot -xcm = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12", default-features = false } +xcm = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor", default-features = false } # Benchmarks frame-benchmarking = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12", optional = true, default-features = false } diff --git a/pallets/author-mapping/Cargo.toml b/pallets/author-mapping/Cargo.toml index 234e91cff17..9fd04af2d01 100644 --- a/pallets/author-mapping/Cargo.toml +++ b/pallets/author-mapping/Cargo.toml @@ -19,7 +19,7 @@ sp-runtime = { git = "https://github.com/purestake/substrate", branch = "moonbea sp-std = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12", default-features = false } # Nimbus -nimbus-primitives = { git = "https://github.com/purestake/nimbus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } +nimbus-primitives = { git = "https://github.com/purestake/nimbus", branch = "gorka-try-new-reanchor", default-features = false } [dev-dependencies] pallet-balances = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12" } diff --git a/pallets/parachain-staking/Cargo.toml b/pallets/parachain-staking/Cargo.toml index cff5216e28d..c274f350ffb 100644 --- a/pallets/parachain-staking/Cargo.toml +++ b/pallets/parachain-staking/Cargo.toml @@ -20,7 +20,7 @@ sp-std = { git = "https://github.com/purestake/substrate", branch = "moonbeam-po substrate-fixed = { git = "https://github.com/encointer/substrate-fixed", default-features = false } # Nimbus -nimbus-primitives = { git = "https://github.com/purestake/nimbus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } +nimbus-primitives = { git = "https://github.com/purestake/nimbus", branch = "gorka-try-new-reanchor", default-features = false } [dev-dependencies] similar-asserts = "1.1.0" diff --git a/pallets/xcm-transactor/Cargo.toml b/pallets/xcm-transactor/Cargo.toml index 5bf417f46b7..5066ce2ef53 100644 --- a/pallets/xcm-transactor/Cargo.toml +++ b/pallets/xcm-transactor/Cargo.toml @@ -20,19 +20,19 @@ sp-runtime = { git = "https://github.com/purestake/substrate", branch = "moonbea sp-std = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12", default-features = false } # Cumulus -cumulus-primitives-core = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } +cumulus-primitives-core = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } # Polkadot / XCM -orml-traits = { git = "https://github.com/purestake/open-runtime-module-library", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -polkadot-runtime-common = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -xcm = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -xcm-builder = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -xcm-executor = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12", default-features = false } +orml-traits = { git = "https://github.com/purestake/open-runtime-module-library", branch = "gorka-try-new-reanchor", default-features = false } +polkadot-runtime-common = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor", default-features = false } +xcm = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor", default-features = false } +xcm-builder = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor", default-features = false } +xcm-executor = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor", default-features = false } [dev-dependencies] pallet-balances = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12" } pallet-timestamp = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12" } -pallet-xcm = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12" } +pallet-xcm = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor" } parity-scale-codec = { version = "2.1.1" } sp-core = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12" } diff --git a/pallets/xcm-transactor/src/lib.rs b/pallets/xcm-transactor/src/lib.rs index 94f2bb380a1..2274d1d037b 100644 --- a/pallets/xcm-transactor/src/lib.rs +++ b/pallets/xcm-transactor/src/lib.rs @@ -505,10 +505,9 @@ pub mod pallet { at: &MultiLocation, weight: u64, ) -> Result, DispatchError> { - let inv_at = T::LocationInverter::invert_location(at) - .map_err(|()| Error::::DestinationNotInvertible)?; + let ancestry = T::LocationInverter::ancestry(); let fees = asset - .reanchored(&inv_at) + .reanchored(&at, &ancestry) .map_err(|_| Error::::CannotReanchor)?; Ok(BuyExecution { @@ -522,10 +521,9 @@ pub mod pallet { asset: MultiAsset, at: &MultiLocation, ) -> Result, DispatchError> { - let inv_at = T::LocationInverter::invert_location(at) - .map_err(|()| Error::::DestinationNotInvertible)?; + let ancestry = T::LocationInverter::ancestry(); let fees = asset - .reanchored(&inv_at) + .reanchored(&at, &ancestry) .map_err(|_| Error::::CannotReanchor)?; Ok(WithdrawAsset(fees.into())) diff --git a/precompiles/crowdloan-rewards/Cargo.toml b/precompiles/crowdloan-rewards/Cargo.toml index e8af2385fac..6e5230b2327 100644 --- a/precompiles/crowdloan-rewards/Cargo.toml +++ b/precompiles/crowdloan-rewards/Cargo.toml @@ -17,7 +17,7 @@ precompile-utils = { path = "../utils", default-features = false } fp-evm = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.12", default-features = false } frame-support = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12", default-features = false } frame-system = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -pallet-crowdloan-rewards = { git = "https://github.com/purestake/crowdloan-rewards", branch = "moonbeam-polkadot-v0.9.12", default-features = false } +pallet-crowdloan-rewards = { git = "https://github.com/purestake/crowdloan-rewards", branch = "gorka-try-new-reanchor", default-features = false } pallet-evm = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.12", default-features = false } sp-core = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12", default-features = false } sp-std = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12", default-features = false } @@ -37,10 +37,10 @@ sp-io = { git = "https://github.com/purestake/substrate", branch = "moonbeam-pol sp-runtime = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12" } # Cumulus -cumulus-pallet-parachain-system = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -cumulus-primitives-core = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -cumulus-primitives-parachain-inherent = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -cumulus-test-relay-sproof-builder = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } +cumulus-pallet-parachain-system = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } +cumulus-primitives-core = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } +cumulus-primitives-parachain-inherent = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } +cumulus-test-relay-sproof-builder = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } [features] default = [ "std" ] diff --git a/precompiles/relay-encoder/Cargo.toml b/precompiles/relay-encoder/Cargo.toml index 7eba851e36e..65f061333eb 100644 --- a/precompiles/relay-encoder/Cargo.toml +++ b/precompiles/relay-encoder/Cargo.toml @@ -28,7 +28,7 @@ fp-evm = { git = "https://github.com/purestake/frontier", branch = "moonbeam-pol pallet-evm = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.12", default-features = false } # Cumulus -cumulus-primitives-core = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } +cumulus-primitives-core = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } [dev-dependencies] derive_more = "0.99" @@ -43,7 +43,7 @@ scale-info = { version = "1.0", default-features = false, features = [ "derive" sp-io = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12", default-features = false } # Cumulus -cumulus-pallet-parachain-system = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12" } +cumulus-pallet-parachain-system = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor" } [features] default = [ "std" ] diff --git a/precompiles/utils/Cargo.toml b/precompiles/utils/Cargo.toml index 86dee78ae67..3ac559e470d 100644 --- a/precompiles/utils/Cargo.toml +++ b/precompiles/utils/Cargo.toml @@ -26,7 +26,7 @@ fp-evm = { git = "https://github.com/purestake/frontier", branch = "moonbeam-pol pallet-evm = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.12", default-features = false } # Polkadot / XCM -xcm = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12", default-features = false } +xcm = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor", default-features = false } [dev-dependencies] hex-literal = "0.3.1" diff --git a/precompiles/xcm_transactor/Cargo.toml b/precompiles/xcm_transactor/Cargo.toml index fbcfbc4ce38..e1ba1d81c85 100644 --- a/precompiles/xcm_transactor/Cargo.toml +++ b/precompiles/xcm_transactor/Cargo.toml @@ -27,7 +27,7 @@ evm = { version = "0.30.1", default-features = false, features = [ "with-codec" pallet-evm = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.12", default-features = false } # Polkadot -xcm = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12", default-features = false } +xcm = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor", default-features = false } [dev-dependencies] derive_more = "0.99" @@ -45,12 +45,12 @@ scale-info = { version = "1.0", default-features = false, features = [ "derive" sp-io = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12" } # Cumulus -cumulus-primitives-core = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12" } +cumulus-primitives-core = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor" } # Polkadot -pallet-xcm = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12" } -xcm-builder = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12" } -xcm-executor = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12" } +pallet-xcm = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor" } +xcm-builder = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor" } +xcm-executor = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor" } [features] default = [ "std" ] diff --git a/precompiles/xtokens/Cargo.toml b/precompiles/xtokens/Cargo.toml index 1435032c683..e1179685c61 100644 --- a/precompiles/xtokens/Cargo.toml +++ b/precompiles/xtokens/Cargo.toml @@ -26,8 +26,8 @@ frame-system = { git = "https://github.com/purestake/substrate", branch = "moonb pallet-evm = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.12", default-features = false } # Polkadot / XCM -orml-xtokens = { git = "https://github.com/purestake/open-runtime-module-library", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -xcm = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12", default-features = false } +orml-xtokens = { git = "https://github.com/purestake/open-runtime-module-library", branch = "gorka-try-new-reanchor", default-features = false } +xcm = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor", default-features = false } [dev-dependencies] derive_more = "0.99" @@ -42,12 +42,12 @@ scale-info = { version = "1.0", features = [ "derive" ] } sp-io = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12" } # Cumulus -cumulus-primitives-core = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12" } +cumulus-primitives-core = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor" } # Polkadot -pallet-xcm = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12" } -xcm-builder = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12" } -xcm-executor = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12" } +pallet-xcm = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor" } +xcm-builder = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor" } +xcm-executor = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor" } [features] default = [ "std" ] diff --git a/primitives/xcm/Cargo.toml b/primitives/xcm/Cargo.toml index 1aeb3710a2f..9e4328d1acf 100644 --- a/primitives/xcm/Cargo.toml +++ b/primitives/xcm/Cargo.toml @@ -22,9 +22,9 @@ sha3 = { version = "0.8", default-features = false } sp-runtime = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12", default-features = false } sp-std = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -xcm = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -xcm-builder = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -xcm-executor = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12", default-features = false } +xcm = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor", default-features = false } +xcm-builder = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor", default-features = false } +xcm-executor = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor", default-features = false } [features] default = [ "std" ] diff --git a/runtime/moonbase/Cargo.toml b/runtime/moonbase/Cargo.toml index c8afa2db5b7..8c190638e2e 100644 --- a/runtime/moonbase/Cargo.toml +++ b/runtime/moonbase/Cargo.toml @@ -25,7 +25,7 @@ xcm-primitives = { path = "../../primitives/xcm/", default-features = false } # Moonbeam pallets pallet-asset-manager = { path = "../../pallets/asset-manager", default-features = false } pallet-author-mapping = { path = "../../pallets/author-mapping", default-features = false } -pallet-crowdloan-rewards = { git = "https://github.com/purestake/crowdloan-rewards", branch = "moonbeam-polkadot-v0.9.12", default-features = false } +pallet-crowdloan-rewards = { git = "https://github.com/purestake/crowdloan-rewards", branch = "gorka-try-new-reanchor", default-features = false } pallet-ethereum-chain-id = { path = "../../pallets/ethereum-chain-id", default-features = false } pallet-maintenance-mode = { path = "../../pallets/maintenance-mode", default-features = false } pallet-migrations = { path = "../../pallets/migrations", default-features = false } @@ -97,26 +97,26 @@ pallet-evm-precompile-sha3fips = { git = "https://github.com/purestake/frontier" pallet-evm-precompile-simple = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.12", default-features = false } # Cumulus / Nimbus -cumulus-pallet-dmp-queue = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -cumulus-pallet-parachain-system = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -cumulus-pallet-xcm = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -cumulus-pallet-xcmp-queue = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -cumulus-primitives-core = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -cumulus-primitives-timestamp = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -cumulus-primitives-utility = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -nimbus-primitives = { git = "https://github.com/purestake/nimbus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -pallet-author-inherent = { git = "https://github.com/purestake/nimbus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -pallet-author-slot-filter = { git = "https://github.com/purestake/nimbus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -parachain-info = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } +cumulus-pallet-dmp-queue = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } +cumulus-pallet-parachain-system = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } +cumulus-pallet-xcm = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } +cumulus-pallet-xcmp-queue = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } +cumulus-primitives-core = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } +cumulus-primitives-timestamp = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } +cumulus-primitives-utility = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } +nimbus-primitives = { git = "https://github.com/purestake/nimbus", branch = "gorka-try-new-reanchor", default-features = false } +pallet-author-inherent = { git = "https://github.com/purestake/nimbus", branch = "gorka-try-new-reanchor", default-features = false } +pallet-author-slot-filter = { git = "https://github.com/purestake/nimbus", branch = "gorka-try-new-reanchor", default-features = false } +parachain-info = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } # Polkadot / XCM -orml-xtokens = { git = "https://github.com/purestake/open-runtime-module-library", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -pallet-xcm = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -polkadot-core-primitives = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -polkadot-parachain = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -xcm = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -xcm-builder = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -xcm-executor = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12", default-features = false } +orml-xtokens = { git = "https://github.com/purestake/open-runtime-module-library", branch = "gorka-try-new-reanchor", default-features = false } +pallet-xcm = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor", default-features = false } +polkadot-core-primitives = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor", default-features = false } +polkadot-parachain = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor", default-features = false } +xcm = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor", default-features = false } +xcm-builder = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor", default-features = false } +xcm-executor = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor", default-features = false } # Benchmarking frame-benchmarking = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12", optional = true, default-features = false } @@ -128,11 +128,11 @@ hex = "0.4" rlp = "0.5" sha3 = "0.9" -cumulus-primitives-parachain-inherent = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -cumulus-test-relay-sproof-builder = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } +cumulus-primitives-parachain-inherent = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } +cumulus-test-relay-sproof-builder = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } -polkadot-runtime-parachains = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12" } -xcm-simulator = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12" } +polkadot-runtime-parachains = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor" } +xcm-simulator = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor" } [build-dependencies] substrate-wasm-builder = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12" } diff --git a/runtime/moonbase/tests/xcm_mock/mod.rs b/runtime/moonbase/tests/xcm_mock/mod.rs index ab626eee6f8..3a7767b5251 100644 --- a/runtime/moonbase/tests/xcm_mock/mod.rs +++ b/runtime/moonbase/tests/xcm_mock/mod.rs @@ -79,6 +79,8 @@ decl_test_network! { (1, ParaA), (2, ParaB), (3, ParaC), + (4, Statemine), + ], } } @@ -156,4 +158,6 @@ pub type AssetManager = pallet_asset_manager::Pallet; pub type XTokens = orml_xtokens::Pallet; pub type RelayBalances = pallet_balances::Pallet; pub type ParaBalances = pallet_balances::Pallet; +pub type StatemintBalances = pallet_balances::Pallet; + pub type XcmTransactor = xcm_transactor::Pallet; diff --git a/runtime/moonbase/tests/xcm_mock/parachain.rs b/runtime/moonbase/tests/xcm_mock/parachain.rs index ffdf53e0ddb..4bf4b6bc92a 100644 --- a/runtime/moonbase/tests/xcm_mock/parachain.rs +++ b/runtime/moonbase/tests/xcm_mock/parachain.rs @@ -298,9 +298,8 @@ parameter_types! { pub RelayChainOrigin: Origin = cumulus_pallet_xcm::Origin::Relay.into(); pub Ancestry: MultiLocation = Parachain(MsgQueue::parachain_id().into()).into(); pub SelfReserve: MultiLocation = MultiLocation { - parents:1, - interior: Junctions::X2( - Parachain(MsgQueue::parachain_id().into()), + parents:0, + interior: Junctions::X1( PalletInstance(::PalletInfo::index::().unwrap() as u8) ) }; @@ -473,6 +472,9 @@ pub mod mock_msg_queue { let hash = Encode::using_encoded(&xcm, T::Hashing::hash); let (result, event) = match Xcm::::try_from(xcm) { Ok(xcm) => { + println!("Message is {:?}", xcm); + println!("Para Id is {:?}", ParachainId::::get()); + let location = MultiLocation::new(1, Junctions::X1(Parachain(sender.into()))); match T::XcmExecutor::execute_xcm(location, xcm, max_weight) { Outcome::Error(e) => (Err(e.clone()), Event::Fail(Some(hash), e)), @@ -487,6 +489,8 @@ pub mod mock_msg_queue { Event::BadVersion(Some(hash)), ), }; + println!("event is {:?}", event); + Self::deposit_event(event); result } @@ -524,6 +528,7 @@ pub mod mock_msg_queue { let id = sp_io::hashing::blake2_256(&data[..]); let maybe_msg = VersionedXcm::::decode(&mut &data[..]).map(Xcm::::try_from); + println!("Message is {:?}", maybe_msg); match maybe_msg { Err(_) => { Self::deposit_event(Event::InvalidFormat(id)); diff --git a/runtime/moonbase/tests/xcm_mock/statemine_like.rs b/runtime/moonbase/tests/xcm_mock/statemine_like.rs index 653c4594c2a..ee5177967db 100644 --- a/runtime/moonbase/tests/xcm_mock/statemine_like.rs +++ b/runtime/moonbase/tests/xcm_mock/statemine_like.rs @@ -1,4 +1,4 @@ - // Copyright 2021 Parity Technologies (UK) Ltd. +// Copyright 2021 Parity Technologies (UK) Ltd. // This file is part of Polkadot. // Polkadot is free software: you can redistribute it and/or modify @@ -17,37 +17,42 @@ //! Relay chain runtime mock. use frame_support::{ - construct_runtime, parameter_types, match_type, + construct_runtime, match_type, parameter_types, traits::{Everything, Nothing}, weights::Weight, }; use frame_system::EnsureRoot; use sp_core::H256; -use sp_runtime::{testing::Header, traits::{IdentityLookup, Hash}, AccountId32}; +use sp_runtime::{ + testing::Header, + traits::{Hash, IdentityLookup}, + AccountId32, +}; use polkadot_core_primitives::BlockNumber as RelayBlockNumber; use polkadot_parachain::primitives::Id as ParaId; +use polkadot_parachain::primitives::Sibling; use polkadot_runtime_parachains::{configuration, origin, shared, ump}; +use sp_std::convert::TryFrom; use xcm::latest::prelude::*; +use xcm::VersionedXcm; use xcm_builder::{ AccountId32Aliases, AllowKnownQueryResponses, AllowSubscriptionsFrom, - AllowTopLevelPaidExecutionFrom, ChildParachainAsNative, ChildParachainConvertsVia, - ChildSystemParachainAsSuperuser, CurrencyAdapter as XcmCurrencyAdapter, FixedRateOfFungible, - FixedWeightBounds, IsConcrete, LocationInverter, SignedAccountId32AsNative, - SignedToAccountId32, SovereignSignedViaLocation, TakeWeightCredit, FungiblesAdapter, - ParentIsDefault, SiblingParachainConvertsVia, CurrencyAdapter, ConvertedConcreteAssetId, AsPrefixedGeneralIndex, - RelayChainAsNative,SiblingParachainAsNative,ParentAsSuperuser, AllowUnpaidExecutionFrom, EnsureXcmOrigin + AllowTopLevelPaidExecutionFrom, AllowUnpaidExecutionFrom, AsPrefixedGeneralIndex, + ChildParachainAsNative, ChildParachainConvertsVia, ChildSystemParachainAsSuperuser, + ConvertedConcreteAssetId, CurrencyAdapter as XcmCurrencyAdapter, CurrencyAdapter, + EnsureXcmOrigin, FixedRateOfFungible, FixedWeightBounds, FungiblesAdapter, IsConcrete, + LocationInverter, ParentAsSuperuser, ParentIsDefault, RelayChainAsNative, + SiblingParachainAsNative, SiblingParachainConvertsVia, SignedAccountId32AsNative, + SignedToAccountId32, SovereignSignedViaLocation, TakeWeightCredit, }; -use sp_std::convert::TryFrom; -use polkadot_parachain::primitives::Sibling; -use xcm::VersionedXcm; +use xcm_executor::{traits::JustTry, Config, XcmExecutor}; use xcm_simulator::{ DmpMessageHandlerT as DmpMessageHandler, XcmpMessageFormat, XcmpMessageHandlerT as XcmpMessageHandler, }; -use xcm_executor::{Config, XcmExecutor, traits::JustTry}; pub type AccountId = AccountId32; pub type Balance = u128; pub type AssetId = u128; @@ -134,6 +139,7 @@ parameter_types! { pub Ancestry: MultiLocation = Parachain(MsgQueue::parachain_id().into()).into(); pub const Local: MultiLocation = Here.into(); pub CheckingAccount: AccountId = PolkadotXcm::check_account(); + pub KsmPerSecond: (xcm::latest::prelude::AssetId, u128) = (Concrete(KsmLocation::get()), 1); } /// Type for specifying how a `MultiLocation` can be converted into an `AccountId`. This is used @@ -212,7 +218,7 @@ pub type XcmOriginToTransactDispatchOrigin = ( parameter_types! { // One XCM operation is 1_000_000_000 weight - almost certainly a conservative estimate. - pub UnitWeightCost: Weight = 1_000_000_000; + pub UnitWeightCost: Weight = 100; pub const MaxInstructions: u32 = 100; } @@ -251,7 +257,7 @@ impl Config for XcmConfig { type LocationInverter = LocationInverter; type Barrier = Barrier; type Weigher = FixedWeightBounds; - type Trader = (); + type Trader = FixedRateOfFungible; type ResponseHandler = PolkadotXcm; type AssetTrap = PolkadotXcm; type AssetClaims = PolkadotXcm; @@ -263,12 +269,11 @@ pub type LocalOriginToLocation = SignedToAccountId32; - impl pallet_xcm::Config for Runtime { type Event = Event; type SendXcmOrigin = EnsureXcmOrigin; type XcmRouter = XcmRouter; - type ExecuteXcmOrigin = EnsureXcmOrigin; + type ExecuteXcmOrigin = EnsureXcmOrigin; type XcmExecuteFilter = Nothing; type XcmExecutor = XcmExecutor; type XcmTeleportFilter = Everything; @@ -352,8 +357,49 @@ pub mod mock_msg_queue { let hash = Encode::using_encoded(&xcm, T::Hashing::hash); let (result, event) = match Xcm::::try_from(xcm) { Ok(xcm) => { + let xcm_2 = Xcm([ + WithdrawAsset( + [MultiAsset { + id: Concrete(MultiLocation { + parents: 0, + interior: X1(GeneralIndex(0)), + }), + fun: Fungible(123), + }] + .to_vec() + .into(), + ), + ClearOrigin, + BuyExecution { + fees: MultiAsset { + id: Concrete(MultiLocation { + parents: 0, + interior: X1(GeneralIndex(0)), + }), + fun: Fungible(123), + }, + weight_limit: Limited(8000), + }, + DepositAsset { + assets: Wild(All), + max_assets: 1, + beneficiary: MultiLocation { + parents: 0, + interior: X1(xcm::latest::prelude::AccountId32 { + network: Any, + id: [ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + ], + }), + }, + }, + ] + .to_vec()); + + println!("Statemint: Rceived xcm is {:?}", xcm); let location = MultiLocation::new(1, Junctions::X1(Parachain(sender.into()))); - match T::XcmExecutor::execute_xcm(location, xcm, max_weight) { + match T::XcmExecutor::execute_xcm(location, xcm_2, max_weight) { Outcome::Error(e) => (Err(e.clone()), Event::Fail(Some(hash), e)), Outcome::Complete(w) => (Ok(w), Event::Success(Some(hash))), // As far as the caller is concerned, this was dispatched without error, so diff --git a/runtime/moonbase/tests/xcm_tests.rs b/runtime/moonbase/tests/xcm_tests.rs index 5256c141e86..63a3545f038 100644 --- a/runtime/moonbase/tests/xcm_tests.rs +++ b/runtime/moonbase/tests/xcm_tests.rs @@ -36,13 +36,6 @@ use xcm_simulator::TestExt; #[test] fn receive_relay_asset_from_relay() { MockNet::reset(); - - let a = parachain::StatemintLike::convert_ref(MultiLocation::new( - 1, - X1(xcm::latest::prelude::GeneralIndex(0)), - )); - println!("A is {:?}", a); - let source_location = parachain::AssetType::Xcm(MultiLocation::parent()); let source_id: parachain::AssetId = source_location.clone().into(); let asset_metadata = parachain::AssetMetadata { @@ -83,6 +76,8 @@ fn receive_relay_asset_from_relay() { // Verify that parachain received the asset ParaA::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 123); + // free execution, full amount received assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 123); }); @@ -1287,6 +1282,41 @@ fn test_automatic_versioning_on_runtime_upgrade_with_para_b() { fn test_statemine_like() { MockNet::reset(); + let dest_para = MultiLocation::new(1, X1(Parachain(1))); + + let sov = xcm_builder::SiblingParachainConvertsVia::< + polkadot_parachain::primitives::Sibling, + statemine_like::AccountId, + >::convert_ref(dest_para) + .unwrap(); + + let statemine_asset_a_balances = MultiLocation::new( + 1, + X2(Parachain(4), xcm::latest::prelude::GeneralIndex(0u128)), + ); + let source_location = parachain::AssetType::Xcm(statemine_asset_a_balances); + let source_id: parachain::AssetId = source_location.clone().into(); + + let asset_metadata = parachain::AssetMetadata { + name: b"StatemineToken".to_vec(), + symbol: b"StatemineToken".to_vec(), + decimals: 12, + }; + + ParaA::execute_with(|| { + assert_ok!(AssetManager::register_asset( + parachain::Origin::root(), + source_location.clone(), + asset_metadata.clone(), + 1u128, + )); + assert_ok!(AssetManager::set_asset_units_per_second( + parachain::Origin::root(), + source_id, + 0u128 + )); + }); + Statemine::execute_with(|| { assert_ok!(StatemineAssets::create( statemine_like::Origin::signed(RELAYALICE), @@ -1302,26 +1332,71 @@ fn test_statemine_like() { 100000000000000 )); + assert_ok!(StatemineAssets::mint( + statemine_like::Origin::signed(RELAYALICE), + 0, + RELAYALICE, + 100000000000000 + )); + + assert_ok!(StatemineAssets::mint( + statemine_like::Origin::signed(RELAYALICE), + 0, + RELAYALICE, + 100000000000000 + )); + + assert_ok!(StatemintBalances::transfer( + statemine_like::Origin::signed(RELAYALICE), + sov, + 100000000000000 + )); + // Actually send relay asset to parachain - let dest: MultiLocation = AccountKey20 { - network: NetworkId::Any, - key: PARAALICE, - } - .into(); + let dest: MultiLocation = AccountKey20 { + network: NetworkId::Any, + key: PARAALICE, + } + .into(); assert_ok!(StatemineChainPalletXcm::reserve_transfer_assets( statemine_like::Origin::signed(RELAYALICE), - Box::new(Parachain(1).into().into()), + Box::new(MultiLocation::new(1, X1(Parachain(1))).into()), Box::new(VersionedMultiLocation::V1(dest).clone().into()), Box::new((X1(xcm::latest::prelude::GeneralIndex(0)), 123).into()), 0, )); - println!("Events {:?}", statemine_like::statemint_events()) + }); + let dest = MultiLocation { + parents: 1, + interior: X2( + Parachain(4), + AccountId32 { + network: NetworkId::Any, + id: RELAYALICE.into(), + }, + ), + }; + + ParaA::execute_with(|| { + assert_eq!(Assets::balance(source_id, &PARAALICE.into()), 123); + + // free execution, full amount received + assert_ok!(XTokens::transfer( + parachain::Origin::signed(PARAALICE.into()), + parachain::CurrencyId::OtherReserve(source_id), + 123, + Box::new(VersionedMultiLocation::V1(dest)), + 8000 + )); }); + Statemine::execute_with(|| { + // Asset has been transferred back, so we should receive full amount + assert_eq!(StatemineAssets::balance(0, RELAYALICE), 300000000000000); + }); } - use parity_scale_codec::{Decode, Encode}; use sp_io::hashing::blake2_256; diff --git a/runtime/moonbeam/Cargo.toml b/runtime/moonbeam/Cargo.toml index 29375f5220a..4b1e00f8bf7 100644 --- a/runtime/moonbeam/Cargo.toml +++ b/runtime/moonbeam/Cargo.toml @@ -22,7 +22,7 @@ runtime-common = { path = "../common", default-features = false } # Moonbeam pallets pallet-author-mapping = { path = "../../pallets/author-mapping", default-features = false } -pallet-crowdloan-rewards = { git = "https://github.com/purestake/crowdloan-rewards", branch = "moonbeam-polkadot-v0.9.12", default-features = false } +pallet-crowdloan-rewards = { git = "https://github.com/purestake/crowdloan-rewards", branch = "gorka-try-new-reanchor", default-features = false } pallet-ethereum-chain-id = { path = "../../pallets/ethereum-chain-id", default-features = false } pallet-maintenance-mode = { path = "../../pallets/maintenance-mode", default-features = false } pallet-migrations = { path = "../../pallets/migrations", default-features = false } @@ -86,13 +86,13 @@ pallet-evm-precompile-sha3fips = { git = "https://github.com/purestake/frontier" pallet-evm-precompile-simple = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.12", default-features = false } # Cumulus / Nimbus -cumulus-pallet-parachain-system = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -cumulus-primitives-core = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -cumulus-primitives-timestamp = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -nimbus-primitives = { git = "https://github.com/purestake/nimbus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -pallet-author-inherent = { git = "https://github.com/purestake/nimbus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -pallet-author-slot-filter = { git = "https://github.com/purestake/nimbus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -parachain-info = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } +cumulus-pallet-parachain-system = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } +cumulus-primitives-core = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } +cumulus-primitives-timestamp = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } +nimbus-primitives = { git = "https://github.com/purestake/nimbus", branch = "gorka-try-new-reanchor", default-features = false } +pallet-author-inherent = { git = "https://github.com/purestake/nimbus", branch = "gorka-try-new-reanchor", default-features = false } +pallet-author-slot-filter = { git = "https://github.com/purestake/nimbus", branch = "gorka-try-new-reanchor", default-features = false } +parachain-info = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } # Benchmarking frame-benchmarking = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12", optional = true, default-features = false } @@ -103,8 +103,8 @@ hex = "0.4" rlp = "0.5" sha3 = "0.9" -cumulus-primitives-parachain-inherent = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -cumulus-test-relay-sproof-builder = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } +cumulus-primitives-parachain-inherent = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } +cumulus-test-relay-sproof-builder = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } [build-dependencies] substrate-wasm-builder = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12" } diff --git a/runtime/moonriver/Cargo.toml b/runtime/moonriver/Cargo.toml index b798d07e05e..40b9d77f6ea 100644 --- a/runtime/moonriver/Cargo.toml +++ b/runtime/moonriver/Cargo.toml @@ -22,7 +22,7 @@ runtime-common = { path = "../common", default-features = false } # Moonbeam pallets pallet-author-mapping = { path = "../../pallets/author-mapping", default-features = false } -pallet-crowdloan-rewards = { git = "https://github.com/purestake/crowdloan-rewards", branch = "moonbeam-polkadot-v0.9.12", default-features = false } +pallet-crowdloan-rewards = { git = "https://github.com/purestake/crowdloan-rewards", branch = "gorka-try-new-reanchor", default-features = false } pallet-ethereum-chain-id = { path = "../../pallets/ethereum-chain-id", default-features = false } pallet-maintenance-mode = { path = "../../pallets/maintenance-mode", default-features = false } pallet-migrations = { path = "../../pallets/migrations", default-features = false } @@ -85,12 +85,12 @@ pallet-evm-precompile-sha3fips = { git = "https://github.com/purestake/frontier" pallet-evm-precompile-simple = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.12", default-features = false } # Cumulus / Nimbus -cumulus-pallet-parachain-system = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -cumulus-primitives-core = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -cumulus-primitives-timestamp = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -nimbus-primitives = { git = "https://github.com/purestake/nimbus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -pallet-author-inherent = { git = "https://github.com/purestake/nimbus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -pallet-author-slot-filter = { git = "https://github.com/purestake/nimbus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } +cumulus-pallet-parachain-system = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } +cumulus-primitives-core = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } +cumulus-primitives-timestamp = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } +nimbus-primitives = { git = "https://github.com/purestake/nimbus", branch = "gorka-try-new-reanchor", default-features = false } +pallet-author-inherent = { git = "https://github.com/purestake/nimbus", branch = "gorka-try-new-reanchor", default-features = false } +pallet-author-slot-filter = { git = "https://github.com/purestake/nimbus", branch = "gorka-try-new-reanchor", default-features = false } parachain-info = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } # Polkadot / XCM @@ -105,8 +105,8 @@ hex = "0.4" rlp = "0.5" sha3 = "0.9" -cumulus-primitives-parachain-inherent = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -cumulus-test-relay-sproof-builder = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } +cumulus-primitives-parachain-inherent = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } +cumulus-test-relay-sproof-builder = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } [build-dependencies] substrate-wasm-builder = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12" } diff --git a/runtime/relay-encoder/Cargo.toml b/runtime/relay-encoder/Cargo.toml index 529dd5f5c76..38e9aebd217 100644 --- a/runtime/relay-encoder/Cargo.toml +++ b/runtime/relay-encoder/Cargo.toml @@ -21,17 +21,17 @@ sp-runtime = { git = "https://github.com/purestake/substrate", branch = "moonbea sp-std = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12", default-features = false } # Cumulus -cumulus-primitives-core = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } +cumulus-primitives-core = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } [dev-dependencies] frame-support = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12" } pallet-proxy = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12" } pallet-utility = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12" } -kusama-runtime = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12" } -polkadot-runtime = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12" } -rococo-runtime = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12" } -westend-runtime = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.12" } +kusama-runtime = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor" } +polkadot-runtime = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor" } +rococo-runtime = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor" } +westend-runtime = { git = "https://github.com/purestake/polkadot", branch = "gorka-try-new-reanchor" } [features] default = [ "std" ] From 2d36d08ef8cab811afaa58a593a398d103345e2b Mon Sep 17 00:00:00 2001 From: gorka Date: Thu, 9 Dec 2021 12:22:34 +0100 Subject: [PATCH 12/14] update lock --- Cargo.lock | 476 +++++++++++++++++++++++++++++++---------------------- 1 file changed, 283 insertions(+), 193 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 31d44180199..de327c1a5f4 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -758,7 +758,7 @@ dependencies = [ [[package]] name = "bp-header-chain" version = "0.1.0" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "finality-grandpa", "frame-support", @@ -774,7 +774,7 @@ dependencies = [ [[package]] name = "bp-message-dispatch" version = "0.1.0" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "bp-runtime", "frame-support", @@ -786,7 +786,7 @@ dependencies = [ [[package]] name = "bp-messages" version = "0.1.0" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "bitvec 0.20.4", "bp-runtime", @@ -802,7 +802,7 @@ dependencies = [ [[package]] name = "bp-polkadot-core" version = "0.1.0" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "bp-messages", "bp-runtime", @@ -820,7 +820,7 @@ dependencies = [ [[package]] name = "bp-rialto" version = "0.1.0" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "bp-messages", "bp-runtime", @@ -835,7 +835,7 @@ dependencies = [ [[package]] name = "bp-rococo" version = "0.1.0" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "bp-messages", "bp-polkadot-core", @@ -852,7 +852,7 @@ dependencies = [ [[package]] name = "bp-runtime" version = "0.1.0" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "frame-support", "hash-db", @@ -870,7 +870,7 @@ dependencies = [ [[package]] name = "bp-test-utils" version = "0.1.0" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "bp-header-chain", "ed25519-dalek", @@ -885,7 +885,7 @@ dependencies = [ [[package]] name = "bp-wococo" version = "0.1.0" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "bp-messages", "bp-polkadot-core", @@ -900,7 +900,7 @@ dependencies = [ [[package]] name = "bridge-runtime-common" version = "0.1.0" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "bp-message-dispatch", "bp-messages", @@ -1417,7 +1417,7 @@ name = "crowdloan-rewards-precompiles" version = "0.6.0" dependencies = [ "cumulus-pallet-parachain-system", - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "cumulus-primitives-parachain-inherent", "cumulus-test-relay-sproof-builder", "derive_more", @@ -1533,7 +1533,7 @@ dependencies = [ [[package]] name = "cumulus-client-cli" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.12#ea2b71e0f6030abdb5dfc67bb53af111d336b6f2" +source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" dependencies = [ "sc-cli", "sc-service", @@ -1543,18 +1543,18 @@ dependencies = [ [[package]] name = "cumulus-client-collator" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.12#ea2b71e0f6030abdb5dfc67bb53af111d336b6f2" +source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" dependencies = [ "cumulus-client-consensus-common", "cumulus-client-network", - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "futures 0.3.17", "parity-scale-codec", "parking_lot 0.10.2", "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-overseer", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "sc-client-api", "sp-api", "sp-consensus", @@ -1566,13 +1566,13 @@ dependencies = [ [[package]] name = "cumulus-client-consensus-common" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.12#ea2b71e0f6030abdb5dfc67bb53af111d336b6f2" +source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" dependencies = [ "async-trait", "dyn-clone", "futures 0.3.17", "parity-scale-codec", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "sc-client-api", "sc-consensus", "sp-api", @@ -1586,11 +1586,11 @@ dependencies = [ [[package]] name = "cumulus-client-consensus-relay-chain" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.12#ea2b71e0f6030abdb5dfc67bb53af111d336b6f2" +source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" dependencies = [ "async-trait", "cumulus-client-consensus-common", - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "futures 0.3.17", "parking_lot 0.10.2", "polkadot-client", @@ -1610,7 +1610,7 @@ dependencies = [ [[package]] name = "cumulus-client-network" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.12#ea2b71e0f6030abdb5dfc67bb53af111d336b6f2" +source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" dependencies = [ "derive_more", "futures 0.3.17", @@ -1619,8 +1619,8 @@ dependencies = [ "parking_lot 0.10.2", "polkadot-client", "polkadot-node-primitives", - "polkadot-parachain", - "polkadot-primitives", + "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "sc-client-api", "sp-api", "sp-blockchain", @@ -1633,16 +1633,16 @@ dependencies = [ [[package]] name = "cumulus-client-pov-recovery" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.12#ea2b71e0f6030abdb5dfc67bb53af111d336b6f2" +source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" dependencies = [ - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "futures 0.3.17", "futures-timer 3.0.2", "parity-scale-codec", "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-overseer", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "rand 0.8.4", "sc-client-api", "sc-consensus", @@ -1656,16 +1656,16 @@ dependencies = [ [[package]] name = "cumulus-client-service" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.12#ea2b71e0f6030abdb5dfc67bb53af111d336b6f2" +source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" dependencies = [ "cumulus-client-collator", "cumulus-client-consensus-common", "cumulus-client-pov-recovery", - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "parity-scale-codec", "parking_lot 0.10.2", "polkadot-overseer", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "polkadot-service", "sc-chain-spec", "sc-client-api", @@ -1685,9 +1685,9 @@ dependencies = [ [[package]] name = "cumulus-pallet-dmp-queue" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.12#ea2b71e0f6030abdb5dfc67bb53af111d336b6f2" +source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" dependencies = [ - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "frame-support", "frame-system", "log", @@ -1703,10 +1703,10 @@ dependencies = [ [[package]] name = "cumulus-pallet-parachain-system" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.12#ea2b71e0f6030abdb5dfc67bb53af111d336b6f2" +source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" dependencies = [ "cumulus-pallet-parachain-system-proc-macro", - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "cumulus-primitives-parachain-inherent", "environmental", "frame-support", @@ -1714,7 +1714,7 @@ dependencies = [ "log", "pallet-balances", "parity-scale-codec", - "polkadot-parachain", + "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "scale-info", "serde", "sp-core", @@ -1732,7 +1732,7 @@ dependencies = [ [[package]] name = "cumulus-pallet-parachain-system-proc-macro" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.12#ea2b71e0f6030abdb5dfc67bb53af111d336b6f2" +source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" dependencies = [ "proc-macro-crate 1.1.0", "proc-macro2", @@ -1743,9 +1743,9 @@ dependencies = [ [[package]] name = "cumulus-pallet-xcm" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.12#ea2b71e0f6030abdb5dfc67bb53af111d336b6f2" +source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" dependencies = [ - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "frame-support", "frame-system", "parity-scale-codec", @@ -1760,9 +1760,9 @@ dependencies = [ [[package]] name = "cumulus-pallet-xcmp-queue" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.12#ea2b71e0f6030abdb5dfc67bb53af111d336b6f2" +source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" dependencies = [ - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "frame-support", "frame-system", "log", @@ -1775,6 +1775,23 @@ dependencies = [ "xcm-executor", ] +[[package]] +name = "cumulus-primitives-core" +version = "0.1.0" +source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" +dependencies = [ + "frame-support", + "impl-trait-for-tuples 0.2.1", + "parity-scale-codec", + "polkadot-core-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "sp-api", + "sp-runtime", + "sp-std", + "sp-trie", +] + [[package]] name = "cumulus-primitives-core" version = "0.1.0" @@ -1783,9 +1800,9 @@ dependencies = [ "frame-support", "impl-trait-for-tuples 0.2.1", "parity-scale-codec", - "polkadot-core-primitives", - "polkadot-parachain", - "polkadot-primitives", + "polkadot-core-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12)", + "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12)", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12)", "sp-api", "sp-runtime", "sp-std", @@ -1795,10 +1812,10 @@ dependencies = [ [[package]] name = "cumulus-primitives-parachain-inherent" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.12#ea2b71e0f6030abdb5dfc67bb53af111d336b6f2" +source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" dependencies = [ "async-trait", - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "cumulus-test-relay-sproof-builder", "parity-scale-codec", "polkadot-client", @@ -1817,9 +1834,9 @@ dependencies = [ [[package]] name = "cumulus-primitives-timestamp" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.12#ea2b71e0f6030abdb5dfc67bb53af111d336b6f2" +source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" dependencies = [ - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "sp-inherents", "sp-std", "sp-timestamp", @@ -1828,14 +1845,14 @@ dependencies = [ [[package]] name = "cumulus-primitives-utility" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.12#ea2b71e0f6030abdb5dfc67bb53af111d336b6f2" +source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" dependencies = [ - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "frame-support", "parity-scale-codec", - "polkadot-core-primitives", - "polkadot-parachain", - "polkadot-primitives", + "polkadot-core-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "sp-runtime", "sp-std", "sp-trie", @@ -1845,11 +1862,11 @@ dependencies = [ [[package]] name = "cumulus-test-relay-sproof-builder" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.12#ea2b71e0f6030abdb5dfc67bb53af111d336b6f2" +source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" dependencies = [ - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "parity-scale-codec", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "sp-runtime", "sp-state-machine", "sp-std", @@ -3865,7 +3882,7 @@ dependencies = [ [[package]] name = "kusama-runtime" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "beefy-primitives", "bitvec 0.20.4", @@ -3912,7 +3929,7 @@ dependencies = [ "pallet-vesting", "pallet-xcm", "parity-scale-codec", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "polkadot-runtime-common", "polkadot-runtime-parachains", "rustc-hex", @@ -4856,7 +4873,7 @@ dependencies = [ [[package]] name = "metered-channel" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "derive_more", "futures 0.3.17", @@ -4981,7 +4998,7 @@ dependencies = [ "cumulus-pallet-parachain-system", "cumulus-pallet-xcm", "cumulus-pallet-xcmp-queue", - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "cumulus-primitives-parachain-inherent", "cumulus-primitives-timestamp", "cumulus-primitives-utility", @@ -5042,12 +5059,12 @@ dependencies = [ "pallet-treasury", "pallet-utility", "pallet-xcm", - "parachain-info", + "parachain-info 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "parachain-staking", "parachain-staking-precompiles", "parity-scale-codec", - "polkadot-core-primitives", - "polkadot-parachain", + "polkadot-core-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "polkadot-runtime-parachains", "precompile-utils", "relay-encoder-precompiles", @@ -5102,7 +5119,7 @@ version = "0.15.1" dependencies = [ "cumulus-client-cli", "cumulus-client-service", - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "frame-benchmarking-cli", "log", "moonbeam-cli-opt", @@ -5111,8 +5128,8 @@ dependencies = [ "parity-scale-codec", "perf-test", "polkadot-cli", - "polkadot-parachain", - "polkadot-primitives", + "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "polkadot-service", "sc-cli", "sc-service", @@ -5198,7 +5215,7 @@ dependencies = [ name = "moonbeam-relay-encoder" version = "0.1.0" dependencies = [ - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "frame-support", "frame-system", "kusama-runtime", @@ -5387,7 +5404,7 @@ dependencies = [ "account", "crowdloan-rewards-precompiles", "cumulus-pallet-parachain-system", - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "cumulus-primitives-parachain-inherent", "cumulus-primitives-timestamp", "cumulus-test-relay-sproof-builder", @@ -5438,7 +5455,7 @@ dependencies = [ "pallet-transaction-payment-rpc-runtime-api", "pallet-treasury", "pallet-utility", - "parachain-info", + "parachain-info 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "parachain-staking", "parachain-staking-precompiles", "parity-scale-codec", @@ -5476,7 +5493,7 @@ dependencies = [ "cumulus-client-consensus-relay-chain", "cumulus-client-network", "cumulus-client-service", - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "cumulus-primitives-parachain-inherent", "cumulus-test-relay-sproof-builder", "derive_more", @@ -5519,8 +5536,8 @@ dependencies = [ "parity-scale-codec", "parking_lot 0.9.0", "polkadot-cli", - "polkadot-parachain", - "polkadot-primitives", + "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "polkadot-runtime-common", "polkadot-service", "rand 0.7.3", @@ -5585,7 +5602,7 @@ dependencies = [ "account", "crowdloan-rewards-precompiles", "cumulus-pallet-parachain-system", - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "cumulus-primitives-parachain-inherent", "cumulus-primitives-timestamp", "cumulus-test-relay-sproof-builder", @@ -5636,7 +5653,7 @@ dependencies = [ "pallet-transaction-payment-rpc-runtime-api", "pallet-treasury", "pallet-utility", - "parachain-info", + "parachain-info 0.1.0 (git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.12)", "parachain-staking", "parachain-staking-precompiles", "parity-scale-codec", @@ -5812,11 +5829,11 @@ dependencies = [ [[package]] name = "nimbus-consensus" version = "0.1.0" -source = "git+https://github.com/purestake/nimbus?branch=moonbeam-polkadot-v0.9.12#94e54bda47592b86cd5f8f11320068b4a1dd244f" +source = "git+https://github.com/purestake/nimbus?branch=gorka-try-new-reanchor#02bd555eb545cab8dfb2fed6eb7da9e87e241f7e" dependencies = [ "async-trait", "cumulus-client-consensus-common", - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "cumulus-primitives-parachain-inherent", "futures 0.3.17", "log", @@ -5843,7 +5860,7 @@ dependencies = [ [[package]] name = "nimbus-primitives" version = "0.1.0" -source = "git+https://github.com/purestake/nimbus?branch=moonbeam-polkadot-v0.9.12#94e54bda47592b86cd5f8f11320068b4a1dd244f" +source = "git+https://github.com/purestake/nimbus?branch=gorka-try-new-reanchor#02bd555eb545cab8dfb2fed6eb7da9e87e241f7e" dependencies = [ "async-trait", "frame-support", @@ -6105,7 +6122,7 @@ dependencies = [ [[package]] name = "orml-traits" version = "0.4.1-dev" -source = "git+https://github.com/purestake/open-runtime-module-library?branch=moonbeam-polkadot-v0.9.12#679f1939e7a8a8ce770400a182e91dc43084d69a" +source = "git+https://github.com/purestake/open-runtime-module-library?branch=gorka-try-new-reanchor#6348da082068964c75018d9291c77c4a2c8ba58f" dependencies = [ "frame-support", "impl-trait-for-tuples 0.2.1", @@ -6123,7 +6140,7 @@ dependencies = [ [[package]] name = "orml-utilities" version = "0.4.1-dev" -source = "git+https://github.com/purestake/open-runtime-module-library?branch=moonbeam-polkadot-v0.9.12#679f1939e7a8a8ce770400a182e91dc43084d69a" +source = "git+https://github.com/purestake/open-runtime-module-library?branch=gorka-try-new-reanchor#6348da082068964c75018d9291c77c4a2c8ba58f" dependencies = [ "frame-support", "parity-scale-codec", @@ -6137,7 +6154,7 @@ dependencies = [ [[package]] name = "orml-xcm-support" version = "0.4.1-dev" -source = "git+https://github.com/purestake/open-runtime-module-library?branch=moonbeam-polkadot-v0.9.12#679f1939e7a8a8ce770400a182e91dc43084d69a" +source = "git+https://github.com/purestake/open-runtime-module-library?branch=gorka-try-new-reanchor#6348da082068964c75018d9291c77c4a2c8ba58f" dependencies = [ "frame-support", "orml-traits", @@ -6151,9 +6168,9 @@ dependencies = [ [[package]] name = "orml-xtokens" version = "0.4.1-dev" -source = "git+https://github.com/purestake/open-runtime-module-library?branch=moonbeam-polkadot-v0.9.12#679f1939e7a8a8ce770400a182e91dc43084d69a" +source = "git+https://github.com/purestake/open-runtime-module-library?branch=gorka-try-new-reanchor#6348da082068964c75018d9291c77c4a2c8ba58f" dependencies = [ - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "frame-support", "frame-system", "orml-traits", @@ -6213,7 +6230,7 @@ dependencies = [ [[package]] name = "pallet-author-inherent" version = "0.1.0" -source = "git+https://github.com/purestake/nimbus?branch=moonbeam-polkadot-v0.9.12#94e54bda47592b86cd5f8f11320068b4a1dd244f" +source = "git+https://github.com/purestake/nimbus?branch=gorka-try-new-reanchor#02bd555eb545cab8dfb2fed6eb7da9e87e241f7e" dependencies = [ "frame-support", "frame-system", @@ -6251,7 +6268,7 @@ dependencies = [ [[package]] name = "pallet-author-slot-filter" version = "0.1.0" -source = "git+https://github.com/purestake/nimbus?branch=moonbeam-polkadot-v0.9.12#94e54bda47592b86cd5f8f11320068b4a1dd244f" +source = "git+https://github.com/purestake/nimbus?branch=gorka-try-new-reanchor#02bd555eb545cab8dfb2fed6eb7da9e87e241f7e" dependencies = [ "frame-support", "frame-system", @@ -6411,7 +6428,7 @@ dependencies = [ [[package]] name = "pallet-bridge-dispatch" version = "0.1.0" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "bp-message-dispatch", "bp-runtime", @@ -6428,7 +6445,7 @@ dependencies = [ [[package]] name = "pallet-bridge-grandpa" version = "0.1.0" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "bp-header-chain", "bp-runtime", @@ -6450,7 +6467,7 @@ dependencies = [ [[package]] name = "pallet-bridge-messages" version = "0.1.0" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "bitvec 0.20.4", "bp-message-dispatch", @@ -6489,10 +6506,10 @@ dependencies = [ [[package]] name = "pallet-crowdloan-rewards" version = "0.6.0" -source = "git+https://github.com/purestake/crowdloan-rewards?branch=moonbeam-polkadot-v0.9.12#8e4625df25ebd7ce914fc5c0e82b256663d78572" +source = "git+https://github.com/purestake/crowdloan-rewards?branch=gorka-try-new-reanchor#6d6bc7ec437c18e1c21446680fc7e155a20b898b" dependencies = [ "cumulus-pallet-parachain-system", - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "cumulus-primitives-parachain-inherent", "ed25519-dalek", "frame-benchmarking", @@ -7301,7 +7318,7 @@ dependencies = [ [[package]] name = "pallet-xcm" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "frame-support", "frame-system", @@ -7316,12 +7333,25 @@ dependencies = [ "xcm-executor", ] +[[package]] +name = "parachain-info" +version = "0.1.0" +source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" +dependencies = [ + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "serde", +] + [[package]] name = "parachain-info" version = "0.1.0" source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.12#ea2b71e0f6030abdb5dfc67bb53af111d336b6f2" dependencies = [ - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.12)", "frame-support", "frame-system", "parity-scale-codec", @@ -7832,34 +7862,34 @@ checksum = "989d43012e2ca1c4a02507c67282691a0a3207f9dc67cec596b43fe925b3d325" [[package]] name = "polkadot-approval-distribution" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "futures 0.3.17", "polkadot-node-network-protocol", "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "tracing", ] [[package]] name = "polkadot-availability-bitfield-distribution" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "futures 0.3.17", "polkadot-node-network-protocol", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "tracing", ] [[package]] name = "polkadot-availability-distribution" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "derive_more", "futures 0.3.17", @@ -7870,7 +7900,7 @@ dependencies = [ "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "rand 0.8.4", "sp-core", "sp-keystore", @@ -7881,7 +7911,7 @@ dependencies = [ [[package]] name = "polkadot-availability-recovery" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "futures 0.3.17", "lru 0.7.0", @@ -7891,7 +7921,7 @@ dependencies = [ "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "rand 0.8.4", "sc-network", "thiserror", @@ -7901,7 +7931,7 @@ dependencies = [ [[package]] name = "polkadot-cli" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "frame-benchmarking-cli", "futures 0.3.17", @@ -7921,7 +7951,7 @@ dependencies = [ [[package]] name = "polkadot-client" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "beefy-primitives", "frame-benchmarking", @@ -7929,7 +7959,7 @@ dependencies = [ "kusama-runtime", "pallet-mmr-primitives", "pallet-transaction-payment-rpc-runtime-api", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "polkadot-runtime", "rococo-runtime", "sc-client-api", @@ -7954,7 +7984,7 @@ dependencies = [ [[package]] name = "polkadot-collator-protocol" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "always-assert", "derive_more", @@ -7964,7 +7994,7 @@ dependencies = [ "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "sp-core", "sp-keystore", "sp-runtime", @@ -7972,6 +8002,19 @@ dependencies = [ "tracing", ] +[[package]] +name = "polkadot-core-primitives" +version = "0.9.12" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" +dependencies = [ + "parity-scale-codec", + "parity-util-mem", + "scale-info", + "sp-core", + "sp-runtime", + "sp-std", +] + [[package]] name = "polkadot-core-primitives" version = "0.9.12" @@ -7988,7 +8031,7 @@ dependencies = [ [[package]] name = "polkadot-dispute-distribution" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "derive_more", "futures 0.3.17", @@ -7999,7 +8042,7 @@ dependencies = [ "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "sc-network", "sp-application-crypto", "sp-keystore", @@ -8010,11 +8053,11 @@ dependencies = [ [[package]] name = "polkadot-erasure-coding" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "parity-scale-codec", "polkadot-node-primitives", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "reed-solomon-novelpoly", "sp-core", "sp-trie", @@ -8024,14 +8067,14 @@ dependencies = [ [[package]] name = "polkadot-gossip-support" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "futures 0.3.17", "futures-timer 3.0.2", "polkadot-node-network-protocol", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "rand 0.8.4", "rand_chacha 0.3.1", "sc-network", @@ -8044,7 +8087,7 @@ dependencies = [ [[package]] name = "polkadot-network-bridge" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "async-trait", "futures 0.3.17", @@ -8054,7 +8097,7 @@ dependencies = [ "polkadot-node-subsystem", "polkadot-node-subsystem-util", "polkadot-overseer", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "sc-network", "sp-consensus", "tracing", @@ -8063,7 +8106,7 @@ dependencies = [ [[package]] name = "polkadot-node-collation-generation" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "futures 0.3.17", "parity-scale-codec", @@ -8071,7 +8114,7 @@ dependencies = [ "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "sp-core", "sp-maybe-compressed-blob", "thiserror", @@ -8081,7 +8124,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-approval-voting" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "bitvec 0.20.4", "derive_more", @@ -8096,7 +8139,7 @@ dependencies = [ "polkadot-node-subsystem", "polkadot-node-subsystem-util", "polkadot-overseer", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "sc-keystore", "schnorrkel", "sp-application-crypto", @@ -8109,7 +8152,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-av-store" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "bitvec 0.20.4", "futures 0.3.17", @@ -8121,7 +8164,7 @@ dependencies = [ "polkadot-node-subsystem", "polkadot-node-subsystem-util", "polkadot-overseer", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "thiserror", "tracing", ] @@ -8129,7 +8172,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-backing" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "bitvec 0.20.4", "futures 0.3.17", @@ -8137,7 +8180,7 @@ dependencies = [ "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "polkadot-statement-table", "sp-keystore", "thiserror", @@ -8147,12 +8190,12 @@ dependencies = [ [[package]] name = "polkadot-node-core-bitfield-signing" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "futures 0.3.17", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "sp-keystore", "thiserror", "tracing", @@ -8162,7 +8205,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-candidate-validation" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "async-trait", "futures 0.3.17", @@ -8171,8 +8214,8 @@ dependencies = [ "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-parachain", - "polkadot-primitives", + "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "sp-maybe-compressed-blob", "tracing", ] @@ -8180,12 +8223,12 @@ dependencies = [ [[package]] name = "polkadot-node-core-chain-api" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "futures 0.3.17", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "sc-client-api", "sc-consensus-babe", "sp-blockchain", @@ -8195,7 +8238,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-chain-selection" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "futures 0.3.17", "futures-timer 3.0.2", @@ -8204,7 +8247,7 @@ dependencies = [ "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "thiserror", "tracing", ] @@ -8212,7 +8255,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-dispute-coordinator" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "bitvec 0.20.4", "derive_more", @@ -8222,7 +8265,7 @@ dependencies = [ "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "sc-keystore", "thiserror", "tracing", @@ -8231,12 +8274,12 @@ dependencies = [ [[package]] name = "polkadot-node-core-dispute-participation" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "futures 0.3.17", "polkadot-node-primitives", "polkadot-node-subsystem", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "thiserror", "tracing", ] @@ -8244,13 +8287,13 @@ dependencies = [ [[package]] name = "polkadot-node-core-parachains-inherent" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "async-trait", "futures 0.3.17", "futures-timer 3.0.2", "polkadot-node-subsystem", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "sp-blockchain", "sp-inherents", "sp-runtime", @@ -8261,14 +8304,14 @@ dependencies = [ [[package]] name = "polkadot-node-core-provisioner" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "bitvec 0.20.4", "futures 0.3.17", "futures-timer 3.0.2", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "thiserror", "tracing", ] @@ -8276,7 +8319,7 @@ dependencies = [ [[package]] name = "polkadot-node-core-pvf" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "always-assert", "assert_matches", @@ -8287,9 +8330,9 @@ dependencies = [ "libc", "parity-scale-codec", "pin-project 1.0.8", - "polkadot-core-primitives", + "polkadot-core-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "polkadot-node-subsystem-util", - "polkadot-parachain", + "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "rand 0.8.4", "sc-executor", "sc-executor-common", @@ -8307,14 +8350,14 @@ dependencies = [ [[package]] name = "polkadot-node-core-runtime-api" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "futures 0.3.17", "memory-lru", "parity-util-mem", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "sp-api", "sp-authority-discovery", "sp-consensus-babe", @@ -8325,7 +8368,7 @@ dependencies = [ [[package]] name = "polkadot-node-jaeger" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "async-std", "lazy_static", @@ -8334,7 +8377,7 @@ dependencies = [ "parity-scale-codec", "parking_lot 0.11.1", "polkadot-node-primitives", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "sc-network", "sp-core", "thiserror", @@ -8343,7 +8386,7 @@ dependencies = [ [[package]] name = "polkadot-node-metrics" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "futures 0.3.17", "futures-timer 3.0.2", @@ -8354,7 +8397,7 @@ dependencies = [ [[package]] name = "polkadot-node-network-protocol" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "async-trait", "derive_more", @@ -8362,7 +8405,7 @@ dependencies = [ "parity-scale-codec", "polkadot-node-jaeger", "polkadot-node-primitives", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "sc-authority-discovery", "sc-network", "strum 0.22.0", @@ -8372,13 +8415,13 @@ dependencies = [ [[package]] name = "polkadot-node-primitives" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "bounded-vec", "futures 0.3.17", "parity-scale-codec", - "polkadot-parachain", - "polkadot-primitives", + "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "schnorrkel", "serde", "sp-application-crypto", @@ -8394,7 +8437,7 @@ dependencies = [ [[package]] name = "polkadot-node-subsystem" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "polkadot-node-jaeger", "polkadot-node-subsystem-types", @@ -8404,7 +8447,7 @@ dependencies = [ [[package]] name = "polkadot-node-subsystem-types" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "derive_more", "futures 0.3.17", @@ -8412,7 +8455,7 @@ dependencies = [ "polkadot-node-network-protocol", "polkadot-node-primitives", "polkadot-overseer-gen", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "polkadot-statement-table", "sc-network", "smallvec 1.7.0", @@ -8423,7 +8466,7 @@ dependencies = [ [[package]] name = "polkadot-node-subsystem-util" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "async-trait", "derive_more", @@ -8438,7 +8481,7 @@ dependencies = [ "polkadot-node-network-protocol", "polkadot-node-subsystem", "polkadot-overseer", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "rand 0.8.4", "sp-application-crypto", "sp-core", @@ -8450,7 +8493,7 @@ dependencies = [ [[package]] name = "polkadot-overseer" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "futures 0.3.17", "futures-timer 3.0.2", @@ -8462,7 +8505,7 @@ dependencies = [ "polkadot-node-primitives", "polkadot-node-subsystem-types", "polkadot-overseer-gen", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "sc-client-api", "sp-api", "tracing", @@ -8471,7 +8514,7 @@ dependencies = [ [[package]] name = "polkadot-overseer-gen" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "async-trait", "futures 0.3.17", @@ -8488,7 +8531,7 @@ dependencies = [ [[package]] name = "polkadot-overseer-gen-proc-macro" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "proc-macro-crate 1.1.0", "proc-macro2", @@ -8496,6 +8539,23 @@ dependencies = [ "syn", ] +[[package]] +name = "polkadot-parachain" +version = "0.9.12" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" +dependencies = [ + "derive_more", + "frame-support", + "parity-scale-codec", + "parity-util-mem", + "polkadot-core-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "scale-info", + "serde", + "sp-core", + "sp-runtime", + "sp-std", +] + [[package]] name = "polkadot-parachain" version = "0.9.12" @@ -8505,12 +8565,42 @@ dependencies = [ "frame-support", "parity-scale-codec", "parity-util-mem", - "polkadot-core-primitives", + "polkadot-core-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12)", + "scale-info", + "serde", + "sp-core", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "polkadot-primitives" +version = "0.9.12" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" +dependencies = [ + "bitvec 0.20.4", + "frame-system", + "hex-literal", + "parity-scale-codec", + "parity-util-mem", + "polkadot-core-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "scale-info", "serde", + "sp-api", + "sp-application-crypto", + "sp-arithmetic", + "sp-authority-discovery", + "sp-consensus-slots", "sp-core", + "sp-inherents", + "sp-io", + "sp-keystore", "sp-runtime", + "sp-staking", "sp-std", + "sp-trie", + "sp-version", ] [[package]] @@ -8523,8 +8613,8 @@ dependencies = [ "hex-literal", "parity-scale-codec", "parity-util-mem", - "polkadot-core-primitives", - "polkadot-parachain", + "polkadot-core-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12)", + "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12)", "scale-info", "serde", "sp-api", @@ -8546,14 +8636,14 @@ dependencies = [ [[package]] name = "polkadot-rpc" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "beefy-gadget", "beefy-gadget-rpc", "jsonrpc-core", "pallet-mmr-rpc", "pallet-transaction-payment-rpc", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "sc-chain-spec", "sc-client-api", "sc-consensus-babe", @@ -8577,7 +8667,7 @@ dependencies = [ [[package]] name = "polkadot-runtime" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "beefy-primitives", "bitvec 0.20.4", @@ -8619,7 +8709,7 @@ dependencies = [ "pallet-utility", "pallet-vesting", "parity-scale-codec", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "polkadot-runtime-common", "polkadot-runtime-parachains", "rustc-hex", @@ -8649,7 +8739,7 @@ dependencies = [ [[package]] name = "polkadot-runtime-common" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "beefy-primitives", "bitvec 0.20.4", @@ -8671,7 +8761,7 @@ dependencies = [ "pallet-treasury", "pallet-vesting", "parity-scale-codec", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "polkadot-runtime-parachains", "rustc-hex", "scale-info", @@ -8694,7 +8784,7 @@ dependencies = [ [[package]] name = "polkadot-runtime-parachains" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "bitflags", "bitvec 0.20.4", @@ -8710,7 +8800,7 @@ dependencies = [ "pallet-timestamp", "pallet-vesting", "parity-scale-codec", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "rand 0.8.4", "rand_chacha 0.3.1", "rustc-hex", @@ -8732,7 +8822,7 @@ dependencies = [ [[package]] name = "polkadot-service" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "async-trait", "beefy-gadget", @@ -8776,8 +8866,8 @@ dependencies = [ "polkadot-node-subsystem", "polkadot-node-subsystem-util", "polkadot-overseer", - "polkadot-parachain", - "polkadot-primitives", + "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "polkadot-rpc", "polkadot-runtime", "polkadot-runtime-parachains", @@ -8830,7 +8920,7 @@ dependencies = [ [[package]] name = "polkadot-statement-distribution" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "arrayvec 0.5.2", "derive_more", @@ -8841,7 +8931,7 @@ dependencies = [ "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "sp-keystore", "sp-staking", "thiserror", @@ -8851,10 +8941,10 @@ dependencies = [ [[package]] name = "polkadot-statement-table" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "parity-scale-codec", - "polkadot-primitives", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "sp-core", ] @@ -9577,7 +9667,7 @@ name = "relay-encoder-precompiles" version = "0.1.0" dependencies = [ "cumulus-pallet-parachain-system", - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "derive_more", "fp-evm", "frame-support", @@ -9704,7 +9794,7 @@ dependencies = [ [[package]] name = "rococo-runtime" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "beefy-primitives", "bp-messages", @@ -9745,8 +9835,8 @@ dependencies = [ "pallet-utility", "pallet-xcm", "parity-scale-codec", - "polkadot-parachain", - "polkadot-primitives", + "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "polkadot-runtime-common", "polkadot-runtime-parachains", "scale-info", @@ -11222,7 +11312,7 @@ dependencies = [ [[package]] name = "slot-range-helper" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "enumn", "parity-scale-codec", @@ -13408,7 +13498,7 @@ dependencies = [ [[package]] name = "westend-runtime" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "beefy-primitives", "bitvec 0.20.4", @@ -13453,8 +13543,8 @@ dependencies = [ "pallet-vesting", "pallet-xcm", "parity-scale-codec", - "polkadot-parachain", - "polkadot-primitives", + "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "polkadot-runtime-common", "polkadot-runtime-parachains", "rustc-hex", @@ -13581,7 +13671,7 @@ dependencies = [ [[package]] name = "xcm" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "derivative", "impl-trait-for-tuples 0.2.1", @@ -13594,14 +13684,14 @@ dependencies = [ [[package]] name = "xcm-builder" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "frame-support", "frame-system", "log", "pallet-transaction-payment", "parity-scale-codec", - "polkadot-parachain", + "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "scale-info", "sp-arithmetic", "sp-io", @@ -13614,7 +13704,7 @@ dependencies = [ [[package]] name = "xcm-executor" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "frame-support", "impl-trait-for-tuples 0.2.1", @@ -13650,7 +13740,7 @@ dependencies = [ [[package]] name = "xcm-procedural" version = "0.1.0" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "proc-macro2", "quote", @@ -13660,13 +13750,13 @@ dependencies = [ [[package]] name = "xcm-simulator" version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" +source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "frame-support", "parity-scale-codec", "paste", - "polkadot-core-primitives", - "polkadot-parachain", + "polkadot-core-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", "polkadot-runtime-parachains", "sp-io", "sp-std", @@ -13678,7 +13768,7 @@ dependencies = [ name = "xcm-transactor" version = "0.1.0" dependencies = [ - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "frame-support", "frame-system", "orml-traits", @@ -13703,7 +13793,7 @@ dependencies = [ name = "xcm-transactor-precompiles" version = "0.1.0" dependencies = [ - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "derive_more", "evm", "frame-support", @@ -13735,7 +13825,7 @@ dependencies = [ name = "xtokens-precompiles" version = "0.1.0" dependencies = [ - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "derive_more", "fp-evm", "frame-support", From b5be190eb9f07f1954d9f27eba607225343f2141 Mon Sep 17 00:00:00 2001 From: gorka Date: Thu, 9 Dec 2021 12:52:22 +0100 Subject: [PATCH 13/14] Adapt to changes --- Cargo.lock | 2 +- pallets/maintenance-mode/Cargo.toml | 2 +- runtime/moonbase/src/lib.rs | 5 ++--- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index b8ea9bb3ce4..516947f7f2c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -6887,7 +6887,7 @@ dependencies = [ name = "pallet-maintenance-mode" version = "0.1.0" dependencies = [ - "cumulus-primitives-core", + "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", "frame-support", "frame-system", "log", diff --git a/pallets/maintenance-mode/Cargo.toml b/pallets/maintenance-mode/Cargo.toml index 3b79992be85..2c793ff16d3 100644 --- a/pallets/maintenance-mode/Cargo.toml +++ b/pallets/maintenance-mode/Cargo.toml @@ -16,7 +16,7 @@ scale-info = { version = "1.0", default-features = false, features = [ "derive" sp-runtime = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12", default-features = false } sp-std = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12", default-features = false } -cumulus-primitives-core = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", optional = true, default-features = false } +cumulus-primitives-core = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", optional = true, default-features = false } [dev-dependencies] sp-core = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.12" } diff --git a/runtime/moonbase/src/lib.rs b/runtime/moonbase/src/lib.rs index 4448263043f..e19914e5843 100644 --- a/runtime/moonbase/src/lib.rs +++ b/runtime/moonbase/src/lib.rs @@ -944,9 +944,8 @@ parameter_types! { // This is used to match it against our Balances pallet when we receive such a MultiLocation // (Parent, Self Para Id, Self Balances pallet index) pub SelfReserve: MultiLocation = MultiLocation { - parents:1, - interior: Junctions::X2( - Parachain(ParachainInfo::parachain_id().into()), + parents:0, + interior: Junctions::X1( PalletInstance(::PalletInfo::index::().unwrap() as u8) ) }; From d9e6e62e0c3ac20d633713e8a7d259cc4d042e22 Mon Sep 17 00:00:00 2001 From: gorka Date: Thu, 9 Dec 2021 14:52:32 +0100 Subject: [PATCH 14/14] Update missing dependecy --- Cargo.lock | 296 ++++++++++++----------------------- runtime/moonriver/Cargo.toml | 2 +- 2 files changed, 104 insertions(+), 194 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 516947f7f2c..48b7197e0a7 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1417,7 +1417,7 @@ name = "crowdloan-rewards-precompiles" version = "0.6.0" dependencies = [ "cumulus-pallet-parachain-system", - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "cumulus-primitives-parachain-inherent", "cumulus-test-relay-sproof-builder", "derive_more", @@ -1547,14 +1547,14 @@ source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor dependencies = [ "cumulus-client-consensus-common", "cumulus-client-network", - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "futures 0.3.17", "parity-scale-codec", "parking_lot 0.10.2", "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-overseer", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "sc-client-api", "sp-api", "sp-consensus", @@ -1572,7 +1572,7 @@ dependencies = [ "dyn-clone", "futures 0.3.17", "parity-scale-codec", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "sc-client-api", "sc-consensus", "sp-api", @@ -1590,7 +1590,7 @@ source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor dependencies = [ "async-trait", "cumulus-client-consensus-common", - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "futures 0.3.17", "parking_lot 0.10.2", "polkadot-client", @@ -1619,8 +1619,8 @@ dependencies = [ "parking_lot 0.10.2", "polkadot-client", "polkadot-node-primitives", - "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-parachain", + "polkadot-primitives", "sc-client-api", "sp-api", "sp-blockchain", @@ -1635,14 +1635,14 @@ name = "cumulus-client-pov-recovery" version = "0.1.0" source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" dependencies = [ - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "futures 0.3.17", "futures-timer 3.0.2", "parity-scale-codec", "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-overseer", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "rand 0.8.4", "sc-client-api", "sc-consensus", @@ -1661,11 +1661,11 @@ dependencies = [ "cumulus-client-collator", "cumulus-client-consensus-common", "cumulus-client-pov-recovery", - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "parity-scale-codec", "parking_lot 0.10.2", "polkadot-overseer", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "polkadot-service", "sc-chain-spec", "sc-client-api", @@ -1687,7 +1687,7 @@ name = "cumulus-pallet-dmp-queue" version = "0.1.0" source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" dependencies = [ - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "frame-support", "frame-system", "log", @@ -1706,7 +1706,7 @@ version = "0.1.0" source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" dependencies = [ "cumulus-pallet-parachain-system-proc-macro", - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "cumulus-primitives-parachain-inherent", "environmental", "frame-support", @@ -1714,7 +1714,7 @@ dependencies = [ "log", "pallet-balances", "parity-scale-codec", - "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-parachain", "scale-info", "serde", "sp-core", @@ -1745,7 +1745,7 @@ name = "cumulus-pallet-xcm" version = "0.1.0" source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" dependencies = [ - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "frame-support", "frame-system", "parity-scale-codec", @@ -1762,7 +1762,7 @@ name = "cumulus-pallet-xcmp-queue" version = "0.1.0" source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" dependencies = [ - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "frame-support", "frame-system", "log", @@ -1783,26 +1783,9 @@ dependencies = [ "frame-support", "impl-trait-for-tuples 0.2.1", "parity-scale-codec", - "polkadot-core-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", - "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", - "sp-api", - "sp-runtime", - "sp-std", - "sp-trie", -] - -[[package]] -name = "cumulus-primitives-core" -version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.12#ea2b71e0f6030abdb5dfc67bb53af111d336b6f2" -dependencies = [ - "frame-support", - "impl-trait-for-tuples 0.2.1", - "parity-scale-codec", - "polkadot-core-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12)", - "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12)", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12)", + "polkadot-core-primitives", + "polkadot-parachain", + "polkadot-primitives", "sp-api", "sp-runtime", "sp-std", @@ -1815,7 +1798,7 @@ version = "0.1.0" source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" dependencies = [ "async-trait", - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "cumulus-test-relay-sproof-builder", "parity-scale-codec", "polkadot-client", @@ -1836,7 +1819,7 @@ name = "cumulus-primitives-timestamp" version = "0.1.0" source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" dependencies = [ - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "sp-inherents", "sp-std", "sp-timestamp", @@ -1847,12 +1830,12 @@ name = "cumulus-primitives-utility" version = "0.1.0" source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" dependencies = [ - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "frame-support", "parity-scale-codec", - "polkadot-core-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", - "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-core-primitives", + "polkadot-parachain", + "polkadot-primitives", "sp-runtime", "sp-std", "sp-trie", @@ -1864,9 +1847,9 @@ name = "cumulus-test-relay-sproof-builder" version = "0.1.0" source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" dependencies = [ - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "parity-scale-codec", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "sp-runtime", "sp-state-machine", "sp-std", @@ -3929,7 +3912,7 @@ dependencies = [ "pallet-vesting", "pallet-xcm", "parity-scale-codec", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "polkadot-runtime-common", "polkadot-runtime-parachains", "rustc-hex", @@ -4998,7 +4981,7 @@ dependencies = [ "cumulus-pallet-parachain-system", "cumulus-pallet-xcm", "cumulus-pallet-xcmp-queue", - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "cumulus-primitives-parachain-inherent", "cumulus-primitives-timestamp", "cumulus-primitives-utility", @@ -5059,12 +5042,12 @@ dependencies = [ "pallet-treasury", "pallet-utility", "pallet-xcm", - "parachain-info 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "parachain-info", "parachain-staking", "parachain-staking-precompiles", "parity-scale-codec", - "polkadot-core-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", - "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-core-primitives", + "polkadot-parachain", "polkadot-runtime-parachains", "precompile-utils", "relay-encoder-precompiles", @@ -5119,7 +5102,7 @@ version = "0.15.1" dependencies = [ "cumulus-client-cli", "cumulus-client-service", - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "frame-benchmarking-cli", "log", "moonbeam-cli-opt", @@ -5128,8 +5111,8 @@ dependencies = [ "parity-scale-codec", "perf-test", "polkadot-cli", - "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-parachain", + "polkadot-primitives", "polkadot-service", "sc-cli", "sc-service", @@ -5215,7 +5198,7 @@ dependencies = [ name = "moonbeam-relay-encoder" version = "0.1.0" dependencies = [ - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "frame-support", "frame-system", "kusama-runtime", @@ -5404,7 +5387,7 @@ dependencies = [ "account", "crowdloan-rewards-precompiles", "cumulus-pallet-parachain-system", - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "cumulus-primitives-parachain-inherent", "cumulus-primitives-timestamp", "cumulus-test-relay-sproof-builder", @@ -5455,7 +5438,7 @@ dependencies = [ "pallet-transaction-payment-rpc-runtime-api", "pallet-treasury", "pallet-utility", - "parachain-info 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "parachain-info", "parachain-staking", "parachain-staking-precompiles", "parity-scale-codec", @@ -5493,7 +5476,7 @@ dependencies = [ "cumulus-client-consensus-relay-chain", "cumulus-client-network", "cumulus-client-service", - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "cumulus-primitives-parachain-inherent", "cumulus-test-relay-sproof-builder", "derive_more", @@ -5537,8 +5520,8 @@ dependencies = [ "parity-scale-codec", "parking_lot 0.9.0", "polkadot-cli", - "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-parachain", + "polkadot-primitives", "polkadot-runtime-common", "polkadot-service", "rand 0.7.3", @@ -5603,7 +5586,7 @@ dependencies = [ "account", "crowdloan-rewards-precompiles", "cumulus-pallet-parachain-system", - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "cumulus-primitives-parachain-inherent", "cumulus-primitives-timestamp", "cumulus-test-relay-sproof-builder", @@ -5654,7 +5637,7 @@ dependencies = [ "pallet-transaction-payment-rpc-runtime-api", "pallet-treasury", "pallet-utility", - "parachain-info 0.1.0 (git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.12)", + "parachain-info", "parachain-staking", "parachain-staking-precompiles", "parity-scale-codec", @@ -5834,7 +5817,7 @@ source = "git+https://github.com/purestake/nimbus?branch=gorka-try-new-reanchor# dependencies = [ "async-trait", "cumulus-client-consensus-common", - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "cumulus-primitives-parachain-inherent", "futures 0.3.17", "log", @@ -6171,7 +6154,7 @@ name = "orml-xtokens" version = "0.4.1-dev" source = "git+https://github.com/purestake/open-runtime-module-library?branch=gorka-try-new-reanchor#6348da082068964c75018d9291c77c4a2c8ba58f" dependencies = [ - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "frame-support", "frame-system", "orml-traits", @@ -6510,7 +6493,7 @@ version = "0.6.0" source = "git+https://github.com/purestake/crowdloan-rewards?branch=gorka-try-new-reanchor#6d6bc7ec437c18e1c21446680fc7e155a20b898b" dependencies = [ "cumulus-pallet-parachain-system", - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "cumulus-primitives-parachain-inherent", "ed25519-dalek", "frame-benchmarking", @@ -6887,7 +6870,7 @@ dependencies = [ name = "pallet-maintenance-mode" version = "0.1.0" dependencies = [ - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "frame-support", "frame-system", "log", @@ -7341,20 +7324,7 @@ name = "parachain-info" version = "0.1.0" source = "git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor#51962c346818d6438a2b80075c473e24ab850663" dependencies = [ - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", - "frame-support", - "frame-system", - "parity-scale-codec", - "scale-info", - "serde", -] - -[[package]] -name = "parachain-info" -version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.12#ea2b71e0f6030abdb5dfc67bb53af111d336b6f2" -dependencies = [ - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.12)", + "cumulus-primitives-core", "frame-support", "frame-system", "parity-scale-codec", @@ -7872,7 +7842,7 @@ dependencies = [ "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "tracing", ] @@ -7885,7 +7855,7 @@ dependencies = [ "polkadot-node-network-protocol", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "tracing", ] @@ -7903,7 +7873,7 @@ dependencies = [ "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "rand 0.8.4", "sp-core", "sp-keystore", @@ -7924,7 +7894,7 @@ dependencies = [ "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "rand 0.8.4", "sc-network", "thiserror", @@ -7962,7 +7932,7 @@ dependencies = [ "kusama-runtime", "pallet-mmr-primitives", "pallet-transaction-payment-rpc-runtime-api", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "polkadot-runtime", "rococo-runtime", "sc-client-api", @@ -7997,7 +7967,7 @@ dependencies = [ "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "sp-core", "sp-keystore", "sp-runtime", @@ -8018,19 +7988,6 @@ dependencies = [ "sp-std", ] -[[package]] -name = "polkadot-core-primitives" -version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" -dependencies = [ - "parity-scale-codec", - "parity-util-mem", - "scale-info", - "sp-core", - "sp-runtime", - "sp-std", -] - [[package]] name = "polkadot-dispute-distribution" version = "0.9.12" @@ -8045,7 +8002,7 @@ dependencies = [ "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "sc-network", "sp-application-crypto", "sp-keystore", @@ -8060,7 +8017,7 @@ source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reancho dependencies = [ "parity-scale-codec", "polkadot-node-primitives", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "reed-solomon-novelpoly", "sp-core", "sp-trie", @@ -8077,7 +8034,7 @@ dependencies = [ "polkadot-node-network-protocol", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "rand 0.8.4", "rand_chacha 0.3.1", "sc-network", @@ -8100,7 +8057,7 @@ dependencies = [ "polkadot-node-subsystem", "polkadot-node-subsystem-util", "polkadot-overseer", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "sc-network", "sp-consensus", "tracing", @@ -8117,7 +8074,7 @@ dependencies = [ "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "sp-core", "sp-maybe-compressed-blob", "thiserror", @@ -8142,7 +8099,7 @@ dependencies = [ "polkadot-node-subsystem", "polkadot-node-subsystem-util", "polkadot-overseer", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "sc-keystore", "schnorrkel", "sp-application-crypto", @@ -8167,7 +8124,7 @@ dependencies = [ "polkadot-node-subsystem", "polkadot-node-subsystem-util", "polkadot-overseer", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "thiserror", "tracing", ] @@ -8183,7 +8140,7 @@ dependencies = [ "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "polkadot-statement-table", "sp-keystore", "thiserror", @@ -8198,7 +8155,7 @@ dependencies = [ "futures 0.3.17", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "sp-keystore", "thiserror", "tracing", @@ -8217,8 +8174,8 @@ dependencies = [ "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-parachain", + "polkadot-primitives", "sp-maybe-compressed-blob", "tracing", ] @@ -8231,7 +8188,7 @@ dependencies = [ "futures 0.3.17", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "sc-client-api", "sc-consensus-babe", "sp-blockchain", @@ -8250,7 +8207,7 @@ dependencies = [ "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "thiserror", "tracing", ] @@ -8268,7 +8225,7 @@ dependencies = [ "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "sc-keystore", "thiserror", "tracing", @@ -8282,7 +8239,7 @@ dependencies = [ "futures 0.3.17", "polkadot-node-primitives", "polkadot-node-subsystem", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "thiserror", "tracing", ] @@ -8296,7 +8253,7 @@ dependencies = [ "futures 0.3.17", "futures-timer 3.0.2", "polkadot-node-subsystem", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "sp-blockchain", "sp-inherents", "sp-runtime", @@ -8314,7 +8271,7 @@ dependencies = [ "futures-timer 3.0.2", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "thiserror", "tracing", ] @@ -8333,9 +8290,9 @@ dependencies = [ "libc", "parity-scale-codec", "pin-project 1.0.8", - "polkadot-core-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-core-primitives", "polkadot-node-subsystem-util", - "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-parachain", "rand 0.8.4", "sc-executor", "sc-executor-common", @@ -8360,7 +8317,7 @@ dependencies = [ "parity-util-mem", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "sp-api", "sp-authority-discovery", "sp-consensus-babe", @@ -8380,7 +8337,7 @@ dependencies = [ "parity-scale-codec", "parking_lot 0.11.1", "polkadot-node-primitives", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "sc-network", "sp-core", "thiserror", @@ -8408,7 +8365,7 @@ dependencies = [ "parity-scale-codec", "polkadot-node-jaeger", "polkadot-node-primitives", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "sc-authority-discovery", "sc-network", "strum 0.22.0", @@ -8423,8 +8380,8 @@ dependencies = [ "bounded-vec", "futures 0.3.17", "parity-scale-codec", - "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-parachain", + "polkadot-primitives", "schnorrkel", "serde", "sp-application-crypto", @@ -8458,7 +8415,7 @@ dependencies = [ "polkadot-node-network-protocol", "polkadot-node-primitives", "polkadot-overseer-gen", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "polkadot-statement-table", "sc-network", "smallvec 1.7.0", @@ -8484,7 +8441,7 @@ dependencies = [ "polkadot-node-network-protocol", "polkadot-node-subsystem", "polkadot-overseer", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "rand 0.8.4", "sp-application-crypto", "sp-core", @@ -8508,7 +8465,7 @@ dependencies = [ "polkadot-node-primitives", "polkadot-node-subsystem-types", "polkadot-overseer-gen", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "sc-client-api", "sp-api", "tracing", @@ -8551,24 +8508,7 @@ dependencies = [ "frame-support", "parity-scale-codec", "parity-util-mem", - "polkadot-core-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", - "scale-info", - "serde", - "sp-core", - "sp-runtime", - "sp-std", -] - -[[package]] -name = "polkadot-parachain" -version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" -dependencies = [ - "derive_more", - "frame-support", - "parity-scale-codec", - "parity-util-mem", - "polkadot-core-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12)", + "polkadot-core-primitives", "scale-info", "serde", "sp-core", @@ -8586,38 +8526,8 @@ dependencies = [ "hex-literal", "parity-scale-codec", "parity-util-mem", - "polkadot-core-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", - "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", - "scale-info", - "serde", - "sp-api", - "sp-application-crypto", - "sp-arithmetic", - "sp-authority-discovery", - "sp-consensus-slots", - "sp-core", - "sp-inherents", - "sp-io", - "sp-keystore", - "sp-runtime", - "sp-staking", - "sp-std", - "sp-trie", - "sp-version", -] - -[[package]] -name = "polkadot-primitives" -version = "0.9.12" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12#415ce0db8dd603903476a2361f23641a5dd0af47" -dependencies = [ - "bitvec 0.20.4", - "frame-system", - "hex-literal", - "parity-scale-codec", - "parity-util-mem", - "polkadot-core-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12)", - "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.12)", + "polkadot-core-primitives", + "polkadot-parachain", "scale-info", "serde", "sp-api", @@ -8646,7 +8556,7 @@ dependencies = [ "jsonrpc-core", "pallet-mmr-rpc", "pallet-transaction-payment-rpc", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "sc-chain-spec", "sc-client-api", "sc-consensus-babe", @@ -8712,7 +8622,7 @@ dependencies = [ "pallet-utility", "pallet-vesting", "parity-scale-codec", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "polkadot-runtime-common", "polkadot-runtime-parachains", "rustc-hex", @@ -8764,7 +8674,7 @@ dependencies = [ "pallet-treasury", "pallet-vesting", "parity-scale-codec", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "polkadot-runtime-parachains", "rustc-hex", "scale-info", @@ -8803,7 +8713,7 @@ dependencies = [ "pallet-timestamp", "pallet-vesting", "parity-scale-codec", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "rand 0.8.4", "rand_chacha 0.3.1", "rustc-hex", @@ -8869,8 +8779,8 @@ dependencies = [ "polkadot-node-subsystem", "polkadot-node-subsystem-util", "polkadot-overseer", - "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-parachain", + "polkadot-primitives", "polkadot-rpc", "polkadot-runtime", "polkadot-runtime-parachains", @@ -8934,7 +8844,7 @@ dependencies = [ "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-node-subsystem-util", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "sp-keystore", "sp-staking", "thiserror", @@ -8947,7 +8857,7 @@ version = "0.9.12" source = "git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor#9cb2b93939d47c0ece414395e889007256dc61a5" dependencies = [ "parity-scale-codec", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-primitives", "sp-core", ] @@ -9670,7 +9580,7 @@ name = "relay-encoder-precompiles" version = "0.1.0" dependencies = [ "cumulus-pallet-parachain-system", - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "derive_more", "fp-evm", "frame-support", @@ -9838,8 +9748,8 @@ dependencies = [ "pallet-utility", "pallet-xcm", "parity-scale-codec", - "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-parachain", + "polkadot-primitives", "polkadot-runtime-common", "polkadot-runtime-parachains", "scale-info", @@ -13546,8 +13456,8 @@ dependencies = [ "pallet-vesting", "pallet-xcm", "parity-scale-codec", - "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", - "polkadot-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-parachain", + "polkadot-primitives", "polkadot-runtime-common", "polkadot-runtime-parachains", "rustc-hex", @@ -13694,7 +13604,7 @@ dependencies = [ "log", "pallet-transaction-payment", "parity-scale-codec", - "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-parachain", "scale-info", "sp-arithmetic", "sp-io", @@ -13758,8 +13668,8 @@ dependencies = [ "frame-support", "parity-scale-codec", "paste", - "polkadot-core-primitives 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", - "polkadot-parachain 0.9.12 (git+https://github.com/purestake/polkadot?branch=gorka-try-new-reanchor)", + "polkadot-core-primitives", + "polkadot-parachain", "polkadot-runtime-parachains", "sp-io", "sp-std", @@ -13771,7 +13681,7 @@ dependencies = [ name = "xcm-transactor" version = "0.1.0" dependencies = [ - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "frame-support", "frame-system", "orml-traits", @@ -13796,7 +13706,7 @@ dependencies = [ name = "xcm-transactor-precompiles" version = "0.1.0" dependencies = [ - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "derive_more", "evm", "frame-support", @@ -13828,7 +13738,7 @@ dependencies = [ name = "xtokens-precompiles" version = "0.1.0" dependencies = [ - "cumulus-primitives-core 0.1.0 (git+https://github.com/purestake/cumulus?branch=gorka-try-new-reanchor)", + "cumulus-primitives-core", "derive_more", "fp-evm", "frame-support", diff --git a/runtime/moonriver/Cargo.toml b/runtime/moonriver/Cargo.toml index fa6ffc82221..1ca1f788163 100644 --- a/runtime/moonriver/Cargo.toml +++ b/runtime/moonriver/Cargo.toml @@ -91,7 +91,7 @@ cumulus-primitives-timestamp = { git = "https://github.com/purestake/cumulus", b nimbus-primitives = { git = "https://github.com/purestake/nimbus", branch = "gorka-try-new-reanchor", default-features = false } pallet-author-inherent = { git = "https://github.com/purestake/nimbus", branch = "gorka-try-new-reanchor", default-features = false } pallet-author-slot-filter = { git = "https://github.com/purestake/nimbus", branch = "gorka-try-new-reanchor", default-features = false } -parachain-info = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.12", default-features = false } +parachain-info = { git = "https://github.com/purestake/cumulus", branch = "gorka-try-new-reanchor", default-features = false } # Polkadot / XCM