Skip to content

Commit 8e44315

Browse files
talhadaarvklachkovxlczjb0807
authored
Polkadot stable2503 (#1023)
* stable2412 * remove workaround * fixes after update * fix * workaround * updated to stable2503 & implemented DecodeWithMemTracking * zepter fix * fix spell mistake Co-authored-by: zjb0807 <[email protected]> --------- Co-authored-by: Valery Klachkov <[email protected]> Co-authored-by: Bryan Chen <[email protected]> Co-authored-by: zjb0807 <[email protected]>
1 parent 784ec66 commit 8e44315

File tree

21 files changed

+99
-60
lines changed

21 files changed

+99
-60
lines changed

Cargo.dev.toml

+29-29
Original file line numberDiff line numberDiff line change
@@ -37,35 +37,35 @@ scale-info = { version = "2.10.0", default-features = false, features = ["derive
3737
serde = { version = "1.0.214" }
3838
parity-scale-codec = { version = "3.6.12", default-features = false, features = ["max-encoded-len"] }
3939

40-
cumulus-pallet-xcm = { version = "0.18.0", default-features = false }
41-
cumulus-primitives-core = { version = "0.17.0", default-features = false }
42-
frame-benchmarking = { version = "39.0.0", default-features = false }
43-
frame-support = { version = "39.0.0", default-features = false }
44-
frame-system = { version = "39.1.0", default-features = false }
45-
pallet-balances = { version = "40.0.0", default-features = false }
46-
pallet-elections-phragmen = { version = "40.0.0", default-features = false }
47-
pallet-message-queue = { version = "42.0.0", default-features = false }
48-
pallet-preimage = { version = "39.0.0", default-features = false }
49-
pallet-root-testing = { version = "15.0.0", default-features = false }
50-
pallet-scheduler = { version = "40.0.0", default-features = false }
51-
pallet-timestamp = { version = "38.0.0", default-features = false }
52-
pallet-treasury = { version = "38.0.0", default-features = false }
53-
pallet-xcm = { version = "18.0.0", default-features = false }
54-
polkadot-parachain-primitives = { version = "15.0.0", default-features = false }
55-
polkadot-runtime-common = { version = "18.0.0", default-features = false }
56-
polkadot-runtime-parachains = { version = "18.0.1", default-features = false }
57-
sp-api = { version = "35.0.0", default-features = false }
58-
sp-application-crypto = { version = "39.0.0", default-features = false }
59-
sp-arithmetic = { version = "26.0.0", default-features = false }
60-
sp-core = { version = "35.0.0", default-features = false }
61-
sp-io = { version = "39.0.0", default-features = false }
62-
sp-runtime = { version = "40.1.0", default-features = false }
63-
sp-runtime-interface = { version = "29.0.0", default-features = false }
64-
sp-staking = { version = "37.0.0", default-features = false }
40+
cumulus-pallet-xcm = { version = "0.19.1", default-features = false }
41+
cumulus-primitives-core = { version = "0.18.1", default-features = false }
42+
frame-benchmarking = { version = "40.0.0", default-features = false }
43+
frame-support = { version = "40.1.0", default-features = false }
44+
frame-system = { version = "40.1.0", default-features = false }
45+
pallet-balances = { version = "41.1.0", default-features = false }
46+
pallet-elections-phragmen = { version = "41.1.0", default-features = false }
47+
pallet-message-queue = { version = "43.1.0", default-features = false }
48+
pallet-preimage = { version = "40.0.0", default-features = false }
49+
pallet-root-testing = { version = "16.0.0", default-features = false }
50+
pallet-scheduler = { version = "41.0.0", default-features = false }
51+
pallet-timestamp = { version = "39.0.0", default-features = false }
52+
pallet-treasury = { version = "39.0.0", default-features = false }
53+
pallet-xcm = { version = "19.1.0", default-features = false }
54+
polkadot-parachain-primitives = { version = "16.1.0", default-features = false }
55+
polkadot-runtime-common = { version = "19.1.0", default-features = false }
56+
polkadot-runtime-parachains = { version = "19.1.0", default-features = false }
57+
sp-api = { version = "36.0.1", default-features = false }
58+
sp-application-crypto = { version = "40.1.0", default-features = false }
59+
sp-arithmetic = { version = "26.1.0", default-features = false }
60+
sp-core = { version = "36.1.0", default-features = false }
61+
sp-io = { version = "40.0.0", default-features = false }
62+
sp-runtime = { version = "41.1.0", default-features = false }
63+
sp-runtime-interface = { version = "29.0.1", default-features = false }
64+
sp-staking = { version = "38.0.0", default-features = false }
6565
sp-std = { version = "14.0.0", default-features = false }
6666
sp-storage = { version = "22.0.0", default-features = false }
67-
xcm = { version = "15.0.1", package = "staging-xcm", default-features = false }
68-
xcm-builder = { version = "18.0.0", package = "staging-xcm-builder", default-features = false }
69-
xcm-executor = { version = "18.0.0", package = "staging-xcm-executor", default-features = false }
67+
xcm = { version = "16.1.0", package = "staging-xcm", default-features = false }
68+
xcm-builder = { version = "20.0.0", package = "staging-xcm-builder", default-features = false }
69+
xcm-executor = { version = "19.1.0", package = "staging-xcm-executor", default-features = false }
7070

71-
xcm-simulator = { version = "18.0.0" }
71+
xcm-simulator = { version = "20.0.0" }

asset-registry/Cargo.toml

+1
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,7 @@ runtime-benchmarks = [
8383
"sp-runtime/runtime-benchmarks",
8484
"xcm-builder/runtime-benchmarks",
8585
"xcm-executor/runtime-benchmarks",
86+
"xcm/runtime-benchmarks",
8687
]
8788
try-runtime = [
8889
"frame-support/try-runtime",

asset-registry/src/mock/mod.rs

+2
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ pub const CHARLIE: AccountId32 = AccountId32::new([2u8; 32]);
3333
Ord,
3434
parity_scale_codec::MaxEncodedLen,
3535
TypeInfo,
36+
DecodeWithMemTracking,
3637
)]
3738
#[cfg_attr(feature = "std", derive(Serialize, Deserialize))]
3839
pub enum CurrencyId {
@@ -294,6 +295,7 @@ pub fn relay_ext() -> sp_io::TestExternalities {
294295

295296
pallet_balances::GenesisConfig::<Runtime> {
296297
balances: vec![(ALICE, 1_000)],
298+
..Default::default()
297299
}
298300
.assimilate_storage(&mut t)
299301
.unwrap();

asset-registry/src/mock/para.rs

+4-2
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ use orml_traits::{
1616
};
1717
use orml_xcm_support::{IsNativeConcrete, MultiCurrencyAdapter, MultiNativeAsset};
1818
use pallet_xcm::XcmPassthrough;
19-
use parity_scale_codec::{Decode, Encode, MaxEncodedLen};
19+
use parity_scale_codec::{Decode, DecodeWithMemTracking, Encode, MaxEncodedLen};
2020
use polkadot_parachain_primitives::primitives::Sibling;
2121
use sp_core::Get;
2222
use sp_runtime::{
@@ -82,7 +82,7 @@ impl orml_tokens::Config for Runtime {
8282
type DustRemovalWhitelist = Nothing;
8383
}
8484

85-
#[derive(scale_info::TypeInfo, Encode, Decode, Clone, Eq, PartialEq, Debug, MaxEncodedLen)]
85+
#[derive(scale_info::TypeInfo, Encode, Decode, Clone, Eq, PartialEq, Debug, MaxEncodedLen, DecodeWithMemTracking)]
8686
pub struct CustomMetadata {
8787
pub fee_per_second: u128,
8888
}
@@ -239,6 +239,7 @@ impl Config for XcmConfig {
239239
type HrmpChannelAcceptedHandler = ();
240240
type HrmpChannelClosingHandler = ();
241241
type XcmRecorder = ();
242+
type XcmEventEmitter = ();
242243
}
243244

244245
impl cumulus_pallet_xcm::Config for Runtime {
@@ -277,6 +278,7 @@ impl pallet_xcm::Config for Runtime {
277278
type AdminOrigin = EnsureRoot<AccountId>;
278279
type MaxRemoteLockConsumers = ConstU32<0>;
279280
type RemoteLockConsumerIdentifier = ();
281+
type AuthorizedAliasConsideration = ();
280282
}
281283

282284
pub struct AccountIdToLocation;

asset-registry/src/mock/relay.rs

+2
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,7 @@ impl Config for XcmConfig {
115115
type HrmpChannelAcceptedHandler = ();
116116
type HrmpChannelClosingHandler = ();
117117
type XcmRecorder = ();
118+
type XcmEventEmitter = ();
118119
}
119120

120121
pub type LocalOriginToLocation = SignedToAccountId32<RuntimeOrigin, AccountId, KusamaNetwork>;
@@ -148,6 +149,7 @@ impl pallet_xcm::Config for Runtime {
148149
type AdminOrigin = EnsureRoot<AccountId>;
149150
type MaxRemoteLockConsumers = ConstU32<0>;
150151
type RemoteLockConsumerIdentifier = ();
152+
type AuthorizedAliasConsideration = ();
151153
}
152154

153155
impl origin::Config for Runtime {}

authority/src/lib.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ mod weights;
5555
pub use weights::WeightInfo;
5656

5757
/// A delayed origin. Can only be dispatched via `dispatch_as` with a delay.
58-
#[derive(PartialEq, Eq, Clone, RuntimeDebug, Encode, Decode, TypeInfo)]
58+
#[derive(PartialEq, Eq, Clone, RuntimeDebug, Encode, Decode, TypeInfo, DecodeWithMemTracking)]
5959
pub struct DelayedOrigin<BlockNumber, PalletsOrigin> {
6060
/// Number of blocks that this call have been delayed.
6161
pub(crate) delay: BlockNumber,

authority/src/mock.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -51,13 +51,14 @@ impl pallet_scheduler::Config for Runtime {
5151
type WeightInfo = ();
5252
type OriginPrivilegeCmp = EqualPrivilegeOnly;
5353
type Preimages = Preimage;
54+
type BlockNumberProvider = System;
5455
}
5556

5657
impl pallet_root_testing::Config for Runtime {
5758
type RuntimeEvent = RuntimeEvent;
5859
}
5960

60-
#[derive(Clone, Encode, Decode, Eq, PartialEq, Ord, PartialOrd, Debug, TypeInfo)]
61+
#[derive(Clone, Encode, Decode, Eq, PartialEq, Ord, PartialOrd, Debug, TypeInfo, DecodeWithMemTracking)]
6162
pub enum MockAsOriginId {
6263
Root,
6364
Account1,

currencies/src/mock.rs

+1
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,7 @@ impl ExtBuilder {
155155
.filter(|(_, currency_id, _)| *currency_id == NATIVE_CURRENCY_ID)
156156
.map(|(account_id, _, initial_balance)| (account_id, initial_balance))
157157
.collect::<Vec<_>>(),
158+
..Default::default()
158159
}
159160
.assimilate_storage(&mut t)
160161
.unwrap();

gradually-update/src/lib.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ mod tests;
4343
/// Gradually update a value stored at `key` to `target_value`,
4444
/// change `per_block` * `T::UpdateFrequency` per `T::UpdateFrequency`
4545
/// blocks.
46-
#[derive(Encode, Decode, Clone, Eq, PartialEq, MaxEncodedLen, RuntimeDebug, TypeInfo)]
46+
#[derive(Encode, Decode, Clone, Eq, PartialEq, MaxEncodedLen, RuntimeDebug, TypeInfo, DecodeWithMemTracking)]
4747
pub struct GraduallyUpdate<Key, Value> {
4848
pub key: Key,
4949
pub target_value: Value,

rate-limit/src/lib.rs

+15-3
Original file line numberDiff line numberDiff line change
@@ -36,14 +36,14 @@ pub mod module {
3636
use super::*;
3737

3838
/// Period type.
39-
#[derive(PartialEq, Eq, Clone, Encode, Decode, RuntimeDebug, TypeInfo)]
39+
#[derive(PartialEq, Eq, Clone, Encode, Decode, RuntimeDebug, TypeInfo, DecodeWithMemTracking)]
4040
pub enum Period {
4141
Blocks(u64),
4242
Seconds(u64),
4343
}
4444

4545
/// Limit rules type.
46-
#[derive(PartialEq, Eq, Clone, Encode, Decode, RuntimeDebug, TypeInfo)]
46+
#[derive(PartialEq, Eq, Clone, Encode, Decode, RuntimeDebug, TypeInfo, DecodeWithMemTracking)]
4747
pub enum RateLimitRule {
4848
/// Each period to reset remainder quota to `quota` amount.
4949
/// `can_consume` check return true when the remainder quota gte the
@@ -68,7 +68,19 @@ pub mod module {
6868
pub const MAX_FILTER_KEY_LENGTH: u32 = 256;
6969

7070
/// Match rules to filter key is in bypass whitelist.
71-
#[derive(PartialOrd, Ord, PartialEq, Eq, Clone, Encode, Decode, RuntimeDebug, TypeInfo, MaxEncodedLen)]
71+
#[derive(
72+
PartialOrd,
73+
Ord,
74+
PartialEq,
75+
Eq,
76+
Clone,
77+
Encode,
78+
Decode,
79+
RuntimeDebug,
80+
TypeInfo,
81+
MaxEncodedLen,
82+
DecodeWithMemTracking,
83+
)]
7284
pub enum KeyFilter {
7385
/// If the encoded key is equal to the vec, the key is in whitelist.
7486
Match(BoundedVec<u8, ConstU32<MAX_FILTER_KEY_LENGTH>>),

tokens/src/lib.rs

+3-13
Original file line numberDiff line numberDiff line change
@@ -58,11 +58,8 @@ use frame_system::{ensure_signed, pallet_prelude::*};
5858
use parity_scale_codec::MaxEncodedLen;
5959
use scale_info::TypeInfo;
6060
use sp_runtime::{
61-
traits::{
62-
AtLeast32BitUnsigned, Bounded, CheckedAdd, CheckedSub, MaybeSerializeDeserialize, Member, Saturating,
63-
StaticLookup, Zero,
64-
},
65-
ArithmeticError, DispatchError, DispatchResult, FixedPointOperand, RuntimeDebug, TokenError,
61+
traits::{Bounded, CheckedAdd, CheckedSub, MaybeSerializeDeserialize, Member, Saturating, StaticLookup, Zero},
62+
ArithmeticError, DispatchError, DispatchResult, RuntimeDebug, TokenError,
6663
};
6764
use sp_std::{cmp, convert::Infallible, marker, prelude::*, vec::Vec};
6865

@@ -184,14 +181,7 @@ pub mod module {
184181
type RuntimeEvent: From<Event<Self>> + IsType<<Self as frame_system::Config>::RuntimeEvent>;
185182

186183
/// The balance type
187-
type Balance: Parameter
188-
+ Member
189-
+ AtLeast32BitUnsigned
190-
+ Default
191-
+ Copy
192-
+ MaybeSerializeDeserialize
193-
+ MaxEncodedLen
194-
+ FixedPointOperand;
184+
type Balance: frame_support::traits::tokens::Balance;
195185

196186
/// The amount type, should be signed version of `Balance`
197187
type Amount: Signed

traits/src/asset_registry.rs

+11-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,17 @@ pub trait AssetProcessor<AssetId, Metadata> {
2020
}
2121

2222
/// Data describing the asset properties.
23-
#[derive(TypeInfo, Encode, Decode, CloneNoBound, EqNoBound, PartialEqNoBound, RuntimeDebugNoBound, MaxEncodedLen)]
23+
#[derive(
24+
TypeInfo,
25+
Encode,
26+
Decode,
27+
CloneNoBound,
28+
EqNoBound,
29+
PartialEqNoBound,
30+
RuntimeDebugNoBound,
31+
MaxEncodedLen,
32+
DecodeWithMemTracking,
33+
)]
2434
#[codec(mel_bound(skip_type_params(StringLimit)))]
2535
#[scale_info(skip_type_params(StringLimit))]
2636
pub struct AssetMetadata<Balance, CustomMetadata, StringLimit: Get<u32>>

traits/src/parameters.rs

+14-7
Original file line numberDiff line numberDiff line change
@@ -144,7 +144,8 @@ macro_rules! define_parameters {
144144
$crate::parameters::parity_scale_codec::Decode,
145145
$crate::parameters::parity_scale_codec::MaxEncodedLen,
146146
$crate::parameters::sp_runtime::RuntimeDebug,
147-
$crate::parameters::scale_info::TypeInfo
147+
$crate::parameters::scale_info::TypeInfo,
148+
$crate::parameters::parity_scale_codec::DecodeWithMemTracking
148149
)]
149150
$vis enum $name {
150151
$(
@@ -161,7 +162,8 @@ macro_rules! define_parameters {
161162
$crate::parameters::parity_scale_codec::Decode,
162163
$crate::parameters::parity_scale_codec::MaxEncodedLen,
163164
$crate::parameters::sp_runtime::RuntimeDebug,
164-
$crate::parameters::scale_info::TypeInfo
165+
$crate::parameters::scale_info::TypeInfo,
166+
$crate::parameters::parity_scale_codec::DecodeWithMemTracking
165167
)]
166168
$vis enum [<$name Key>] {
167169
$(
@@ -178,7 +180,8 @@ macro_rules! define_parameters {
178180
$crate::parameters::parity_scale_codec::Decode,
179181
$crate::parameters::parity_scale_codec::MaxEncodedLen,
180182
$crate::parameters::sp_runtime::RuntimeDebug,
181-
$crate::parameters::scale_info::TypeInfo
183+
$crate::parameters::scale_info::TypeInfo,
184+
$crate::parameters::parity_scale_codec::DecodeWithMemTracking
182185
)]
183186
$vis enum [<$name Value>] {
184187
$(
@@ -209,7 +212,8 @@ macro_rules! define_parameters {
209212
$crate::parameters::parity_scale_codec::Decode,
210213
$crate::parameters::parity_scale_codec::MaxEncodedLen,
211214
$crate::parameters::sp_runtime::RuntimeDebug,
212-
$crate::parameters::scale_info::TypeInfo
215+
$crate::parameters::scale_info::TypeInfo,
216+
$crate::parameters::parity_scale_codec::DecodeWithMemTracking
213217
)]
214218
$vis struct $key_name $( (pub $key_para) )?;
215219

@@ -334,7 +338,8 @@ macro_rules! define_aggregrated_parameters {
334338
$crate::parameters::parity_scale_codec::Decode,
335339
$crate::parameters::parity_scale_codec::MaxEncodedLen,
336340
$crate::parameters::sp_runtime::RuntimeDebug,
337-
$crate::parameters::scale_info::TypeInfo
341+
$crate::parameters::scale_info::TypeInfo,
342+
$crate::parameters::parity_scale_codec::DecodeWithMemTracking
338343
)]
339344
$vis enum $name {
340345
$(
@@ -351,7 +356,8 @@ macro_rules! define_aggregrated_parameters {
351356
$crate::parameters::parity_scale_codec::Decode,
352357
$crate::parameters::parity_scale_codec::MaxEncodedLen,
353358
$crate::parameters::sp_runtime::RuntimeDebug,
354-
$crate::parameters::scale_info::TypeInfo
359+
$crate::parameters::scale_info::TypeInfo,
360+
$crate::parameters::parity_scale_codec::DecodeWithMemTracking
355361
)]
356362
$vis enum [<$name Key>] {
357363
$(
@@ -368,7 +374,8 @@ macro_rules! define_aggregrated_parameters {
368374
$crate::parameters::parity_scale_codec::Decode,
369375
$crate::parameters::parity_scale_codec::MaxEncodedLen,
370376
$crate::parameters::sp_runtime::RuntimeDebug,
371-
$crate::parameters::scale_info::TypeInfo
377+
$crate::parameters::scale_info::TypeInfo,
378+
$crate::parameters::parity_scale_codec::DecodeWithMemTracking
372379
)]
373380
$vis enum [<$name Value>] {
374381
$(

vesting/src/lib.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ pub const VESTING_LOCK_ID: LockIdentifier = *b"ormlvest";
5858
///
5959
/// Benefits would be granted gradually, `per_period` amount every `period`
6060
/// of blocks after `start`.
61-
#[derive(Clone, Encode, Decode, PartialEq, Eq, RuntimeDebug, MaxEncodedLen, TypeInfo)]
61+
#[derive(Clone, Encode, Decode, PartialEq, Eq, RuntimeDebug, MaxEncodedLen, TypeInfo, DecodeWithMemTracking)]
6262
pub struct VestingSchedule<BlockNumber, Balance>
6363
where
6464
Balance: MaxEncodedLen + HasCompact,

vesting/src/mock.rs

+1
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@ impl ExtBuilder {
111111

112112
pallet_balances::GenesisConfig::<Runtime> {
113113
balances: vec![(ALICE, ALICE_BALANCE), (CHARLIE, CHARLIE_BALANCE)],
114+
..Default::default()
114115
}
115116
.assimilate_storage(&mut t)
116117
.unwrap();

xtokens/Cargo.toml

+1
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,7 @@ runtime-benchmarks = [
7676
"pallet-xcm/runtime-benchmarks",
7777
"sp-runtime/runtime-benchmarks",
7878
"xcm-executor/runtime-benchmarks",
79+
"xcm/runtime-benchmarks",
7980
]
8081
try-runtime = [
8182
"frame-support/try-runtime",

xtokens/src/mock/mod.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ pub const CHARLIE: AccountId32 = AccountId32::new([2u8; 32]);
3636
parity_scale_codec::MaxEncodedLen,
3737
TypeInfo,
3838
)]
39-
#[cfg_attr(feature = "std", derive(Serialize, Deserialize))]
39+
#[cfg_attr(feature = "std", derive(Serialize, Deserialize, DecodeWithMemTracking))]
4040
pub enum CurrencyId {
4141
/// Relay chain token.
4242
R,
@@ -303,6 +303,7 @@ pub fn relay_ext() -> sp_io::TestExternalities {
303303

304304
pallet_balances::GenesisConfig::<Runtime> {
305305
balances: vec![(ALICE, 1_000)],
306+
..Default::default()
306307
}
307308
.assimilate_storage(&mut t)
308309
.unwrap();

xtokens/src/mock/para.rs

+2
Original file line numberDiff line numberDiff line change
@@ -171,6 +171,7 @@ impl Config for XcmConfig {
171171
type HrmpChannelAcceptedHandler = ();
172172
type HrmpChannelClosingHandler = ();
173173
type XcmRecorder = ();
174+
type XcmEventEmitter = ();
174175
}
175176

176177
impl cumulus_pallet_xcm::Config for Runtime {
@@ -204,6 +205,7 @@ impl pallet_xcm::Config for Runtime {
204205
type AdminOrigin = EnsureRoot<AccountId>;
205206
type MaxRemoteLockConsumers = ConstU32<0>;
206207
type RemoteLockConsumerIdentifier = ();
208+
type AuthorizedAliasConsideration = ();
207209
}
208210

209211
pub struct AccountIdToLocation;

0 commit comments

Comments
 (0)