git.delta.rocks / unique-network / refs/commits / 540966542a36

difftreelog

feat(configuration) benchmarks

Fahrrader2022-12-28parent: #63282b0.patch.diff
in: master

15 files changed

modifiedCargo.lockdiffbeforeafterboth
5846version = "0.1.2"5846version = "0.1.2"
5847dependencies = [5847dependencies = [
5848 "fp-evm",5848 "fp-evm",
5849 "frame-benchmarking",
5849 "frame-support",5850 "frame-support",
5850 "frame-system",5851 "frame-system",
5851 "parity-scale-codec 3.2.1",5852 "parity-scale-codec 3.2.1",
modifiedMakefilediffbeforeafterboth
89bench-evm-migration:89bench-evm-migration:
90 make _bench PALLET=evm-migration90 make _bench PALLET=evm-migration
91
92.PHONY: bench-configuration
93bench-configuration:
94 make _bench PALLET=configuration
9195
92.PHONY: bench-common96.PHONY: bench-common
93bench-common:97bench-common:
143 147
144.PHONY: bench148.PHONY: bench
145# Disabled: bench-scheduler, bench-rmrk-core, bench-rmrk-equip149# Disabled: bench-scheduler, bench-rmrk-core, bench-rmrk-equip
146bench: bench-evm-migration bench-unique bench-structure bench-fungible bench-refungible bench-nonfungible bench-foreign-assets bench-collator-selection bench-identity150bench: bench-evm-migration bench-unique bench-structure bench-fungible bench-refungible bench-nonfungible bench-configuration bench-foreign-assets bench-collator-selection bench-identity
147151
modifiedpallets/collator-selection/src/benchmarking.rsdiffbeforeafterboth
52};52};
53use sp_std::prelude::*;53use sp_std::prelude::*;
54
55/*pub type BalanceOf<T> =
56<<T as Config>::Currency as Currency<<T as frame_system::Config>::AccountId>>::Balance;*/
5754
58const SEED: u32 = 0;55const SEED: u32 = 0;
5956
116 validators.into_iter().map(|(who, _)| who).collect()113 validators.into_iter().map(|(who, _)| who).collect()
117}114}
115
116fn register_invulnerables<T: Config + configuration::Config>(count: u32) {
117 let candidates = (0..count)
118 .map(|c| account("candidate", c, SEED))
119 .collect::<Vec<_>>();
120
121 for who in candidates {
122 <CollatorSelection<T>>::add_invulnerable(T::UpdateOrigin::successful_origin(), who).unwrap();
123 }
124}
118125
119fn register_candidates<T: Config + configuration::Config>(count: u32) {126fn register_candidates<T: Config + configuration::Config>(count: u32) {
120 let candidates = (0..count)127 let candidates = (0..count)
121 .map(|c| account("candidate", c, SEED))128 .map(|c| account("candidate", c, SEED))
122 .collect::<Vec<_>>();129 .collect::<Vec<_>>();
123 assert!(130 /*assert!(
124 <LicenseBond<T>>::get() > 0u32.into(),131 <LicenseBond<T>>::get() > 0u32.into(),
125 "Bond cannot be zero!"132 "Bond cannot be zero!"
126 );133 );*/
127134
128 for who in candidates {135 for who in candidates {
129 T::Currency::make_free_balance_be(&who, <LicenseBond<T>>::get() * 2u32.into());136 T::Currency::make_free_balance_be(&who, <LicenseBond<T>>::get() * 2u32.into());
132 }139 }
133}140}
141
142fn get_licenses<T: Config + configuration::Config>(count: u32) {
143 let candidates = (0..count)
144 .map(|c| account("candidate", c, SEED))
145 .collect::<Vec<_>>();
146 /*assert!(
147 <LicenseBond<T>>::get() > 0u32.into(),
148 "Bond cannot be zero!"
149 );*/
150
151 for who in candidates {
152 T::Currency::make_free_balance_be(&who, <LicenseBond<T>>::get() * 2u32.into());
153 <CollatorSelection<T>>::get_license(RawOrigin::Signed(who.clone()).into()).unwrap();
154 }
155}
134156
135benchmarks! {157benchmarks! {
136 where_clause { where T: pallet_authorship::Config + session::Config + configuration::Config }158 where_clause { where T: pallet_authorship::Config + session::Config + configuration::Config }
137159
138 add_invulnerable {160 add_invulnerable {
139 let b in 1 .. T::MaxCollators::get();161 let b in 1 .. T::MaxCollators::get() - 3;
162 register_validators::<T>(b);
163 register_invulnerables::<T>(b);
164
165 // log::info!("{} {}", <Invulnerables<T>>::get().len(), b);
166
140 let new_invulnerable = register_validators::<T>(b)[0].clone();167 let new_invulnerable: T::AccountId = whitelisted_caller();
168 let bond: BalanceOf<T> = T::Currency::minimum_balance() * 2u32.into();
169 T::Currency::make_free_balance_be(&new_invulnerable, bond.clone());
170
171 <session::Pallet<T>>::set_keys(
172 RawOrigin::Signed(new_invulnerable.clone()).into(),
173 keys::<T>(b + 1),
174 Vec::new()
175 ).unwrap();
176
141 let origin = T::UpdateOrigin::successful_origin();177 let root_origin = T::UpdateOrigin::successful_origin();
142 }: {178 }: {
143 assert_ok!(179 assert_ok!(
144 <CollatorSelection<T>>::add_invulnerable(origin, new_invulnerable.clone())180 <CollatorSelection<T>>::add_invulnerable(root_origin, new_invulnerable.clone())
145 );181 );
146 }182 }
147 verify {183 verify {
150186
151 remove_invulnerable {187 remove_invulnerable {
152 let b in 1 .. T::MaxCollators::get();188 let b in 1 .. T::MaxCollators::get();
153 let new_invulnerable = register_validators::<T>(b)[0].clone();189 register_validators::<T>(b);
190 register_invulnerables::<T>(b);
191
154 let origin = T::UpdateOrigin::successful_origin();192 let root_origin = T::UpdateOrigin::successful_origin();
155 assert_ok!(
156 <CollatorSelection<T>>::add_invulnerable(origin.clone(), new_invulnerable.clone())193 let leaving = <Invulnerables<T>>::get().last().unwrap().clone();
157 );194 whitelist!(leaving);
158 }: {195 }: {
159 assert_ok!(196 assert_ok!(
160 <CollatorSelection<T>>::remove_invulnerable(origin, new_invulnerable.clone())197 <CollatorSelection<T>>::remove_invulnerable(root_origin, leaving.clone())
161 );198 );
162 }199 }
163 verify {200 verify {
164 assert_last_event::<T>(Event::InvulnerableRemoved{invulnerable: new_invulnerable}.into());201 assert_last_event::<T>(Event::InvulnerableRemoved{invulnerable: leaving}.into());
165 }202 }
166
167 /*set_desired_collators {
168 let max: u32 = 999;
169 let origin = T::UpdateOrigin::successful_origin();
170 }: {
171 assert_ok!(
172 <CollatorSelection<T>>::set_desired_collators(origin, max.clone())
173 );
174 }
175 verify {
176 assert_last_event::<T>(Event::NewDesiredCollators{desired_collators: max}.into());
177 }
178
179 set_license_bond {
180 let bond_amount: BalanceOf<T> = T::Currency::minimum_balance() * 10u32.into();
181 let origin = T::UpdateOrigin::successful_origin();
182 }: {
183 assert_ok!(
184 <CollatorSelection<T>>::set_license_bond(origin, bond_amount.clone())
185 );
186 }
187 verify {
188 assert_last_event::<T>(Event::NewLicenseBond{bond_amount}.into());
189 }*/
190203
191 get_license {204 get_license {
192 let c in 1 .. T::MaxCollators::get();205 let c in 1 .. T::MaxCollators::get();
193206
194 <LicenseBond<T>>::put(T::Currency::minimum_balance());207 <LicenseBond<T>>::put(T::Currency::minimum_balance());
195 <DesiredCollators<T>>::put(c + 1);
196208
197 register_validators::<T>(c);209 register_validators::<T>(c);
198 register_candidates::<T>(c);210 get_licenses::<T>(c);
199211
200 let caller: T::AccountId = whitelisted_caller();212 let caller: T::AccountId = whitelisted_caller();
201 let bond: BalanceOf<T> = T::Currency::minimum_balance() * 2u32.into();213 let bond: BalanceOf<T> = T::Currency::minimum_balance() * 2u32.into();
215 // worst case is when we have all the max-candidate slots filled except one, and we fill that227 // worst case is when we have all the max-candidate slots filled except one, and we fill that
216 // one.228 // one.
217 onboard {229 onboard {
218 let c in 1 .. T::MaxCollators::get();230 let c in 1 .. 5;
219231
220 <LicenseBond<T>>::put(T::Currency::minimum_balance());232 <LicenseBond<T>>::put(T::Currency::minimum_balance());
221 <DesiredCollators<T>>::put(c + 1);233 <DesiredCollators<T>>::put(c + 2);
222234
223 register_validators::<T>(c);235 register_validators::<T>(c);
224 register_candidates::<T>(c);236 register_candidates::<T>(c);
247 offboard {259 offboard {
248 let c in 1 .. T::MaxCollators::get();260 let c in 1 .. T::MaxCollators::get();
249 <LicenseBond<T>>::put(T::Currency::minimum_balance());261 <LicenseBond<T>>::put(T::Currency::minimum_balance());
250 <DesiredCollators<T>>::put(c);262 <DesiredCollators<T>>::put(c + 2);
251263
252 register_validators::<T>(c);264 register_validators::<T>(c);
253 register_candidates::<T>(c);265 register_candidates::<T>(c);
modifiedpallets/collator-selection/src/lib.rsdiffbeforeafterboth
285 impl<T: Config> Pallet<T> {285 impl<T: Config> Pallet<T> {
286 /// Add a collator to the list of invulnerable (fixed) collators.286 /// Add a collator to the list of invulnerable (fixed) collators.
287 #[pallet::call_index(0)]287 #[pallet::call_index(0)]
288 #[pallet::weight(T::WeightInfo::add_invulnerable(T::MaxCollators::get()))]288 #[pallet::weight(<T as Config>::WeightInfo::add_invulnerable(T::MaxCollators::get()))]
289 pub fn add_invulnerable(289 pub fn add_invulnerable(
290 origin: OriginFor<T>,290 origin: OriginFor<T>,
291 new: T::AccountId,291 new: T::AccountId,
315315
316 /// Remove a collator from the list of invulnerable (fixed) collators.316 /// Remove a collator from the list of invulnerable (fixed) collators.
317 #[pallet::call_index(1)]317 #[pallet::call_index(1)]
318 #[pallet::weight(T::WeightInfo::remove_invulnerable(T::MaxCollators::get()))]318 #[pallet::weight(<T as Config>::WeightInfo::remove_invulnerable(T::MaxCollators::get()))]
319 pub fn remove_invulnerable(319 pub fn remove_invulnerable(
320 origin: OriginFor<T>,320 origin: OriginFor<T>,
321 who: T::AccountId,321 who: T::AccountId,
344 ///344 ///
345 /// This call is not available to `Invulnerable` collators.345 /// This call is not available to `Invulnerable` collators.
346 #[pallet::call_index(2)]346 #[pallet::call_index(2)]
347 #[pallet::weight(T::WeightInfo::get_license(T::MaxCollators::get()))]347 #[pallet::weight(<T as Config>::WeightInfo::get_license(T::MaxCollators::get()))]
348 pub fn get_license(origin: OriginFor<T>) -> DispatchResultWithPostInfo {348 pub fn get_license(origin: OriginFor<T>) -> DispatchResultWithPostInfo {
349 // register_as_candidate349 // register_as_candidate
350 let who = ensure_signed(origin)?;350 let who = ensure_signed(origin)?;
377 ///377 ///
378 /// This call is not available to `Invulnerable` collators.378 /// This call is not available to `Invulnerable` collators.
379 #[pallet::call_index(3)]379 #[pallet::call_index(3)]
380 #[pallet::weight(T::WeightInfo::onboard(T::MaxCollators::get()))]380 #[pallet::weight(<T as Config>::WeightInfo::onboard(T::MaxCollators::get()))]
381 pub fn onboard(origin: OriginFor<T>) -> DispatchResultWithPostInfo {381 pub fn onboard(origin: OriginFor<T>) -> DispatchResultWithPostInfo {
382 // register_as_candidate382 // register_as_candidate
383 let who = ensure_signed(origin)?;383 let who = ensure_signed(origin)?;
417 })?;417 })?;
418418
419 Self::deposit_event(Event::CandidateAdded { account_id: who });419 Self::deposit_event(Event::CandidateAdded { account_id: who });
420 Ok(Some(T::WeightInfo::onboard(current_count as u32)).into())420 Ok(Some(<T as Config>::WeightInfo::onboard(current_count as u32)).into())
421 }421 }
422422
423 /// Deregister `origin` as a collator candidate. Note that the collator can only leave on423 /// Deregister `origin` as a collator candidate. Note that the collator can only leave on
424 /// session change. The license to `onboard` later at any other time will remain.424 /// session change. The license to `onboard` later at any other time will remain.
425 #[pallet::call_index(4)]425 #[pallet::call_index(4)]
426 #[pallet::weight(T::WeightInfo::offboard(T::MaxCollators::get()))]426 #[pallet::weight(<T as Config>::WeightInfo::offboard(T::MaxCollators::get()))]
427 pub fn offboard(origin: OriginFor<T>) -> DispatchResultWithPostInfo {427 pub fn offboard(origin: OriginFor<T>) -> DispatchResultWithPostInfo {
428 // leave_intent428 // leave_intent
429 let who = ensure_signed(origin)?;429 let who = ensure_signed(origin)?;
430 let current_count = Self::try_remove_candidate(&who)?;430 let current_count = Self::try_remove_candidate(&who)?;
431431
432 Ok(Some(T::WeightInfo::offboard(current_count as u32)).into())432 Ok(Some(<T as Config>::WeightInfo::offboard(current_count as u32)).into())
433 }433 }
434434
435 /// Forfeit `origin`'s own license. The `LicenseBond` will be unreserved immediately.435 /// Forfeit `origin`'s own license. The `LicenseBond` will be unreserved immediately.
436 ///436 ///
437 /// This call is not available to `Invulnerable` collators.437 /// This call is not available to `Invulnerable` collators.
438 #[pallet::call_index(5)]438 #[pallet::call_index(5)]
439 #[pallet::weight(T::WeightInfo::release_license(T::MaxCollators::get()))]439 #[pallet::weight(<T as Config>::WeightInfo::release_license(T::MaxCollators::get()))]
440 pub fn release_license(origin: OriginFor<T>) -> DispatchResultWithPostInfo {440 pub fn release_license(origin: OriginFor<T>) -> DispatchResultWithPostInfo {
441 // leave_intent441 // leave_intent
442 let who = ensure_signed(origin)?;442 let who = ensure_signed(origin)?;
443443
444 let current_count = Self::try_remove_candidate_and_release_license(&who, false, true)?;444 let current_count = Self::try_remove_candidate_and_release_license(&who, false, true)?;
445445
446 Ok(Some(T::WeightInfo::release_license(current_count as u32)).into())446 Ok(Some(<T as Config>::WeightInfo::release_license(
447 current_count as u32,
448 ))
449 .into())
452 ///455 ///
453 /// This call is, of course, not applicable to `Invulnerable` collators.456 /// This call is, of course, not applicable to `Invulnerable` collators.
454 #[pallet::call_index(6)]457 #[pallet::call_index(6)]
455 #[pallet::weight(T::WeightInfo::force_release_license(T::MaxCollators::get()))]458 #[pallet::weight(<T as Config>::WeightInfo::force_release_license(T::MaxCollators::get()))]
456 pub fn force_release_license(459 pub fn force_release_license(
457 origin: OriginFor<T>,460 origin: OriginFor<T>,
458 who: T::AccountId,461 who: T::AccountId,
462465
463 let current_count = Self::try_remove_candidate_and_release_license(&who, false, true)?;466 let current_count = Self::try_remove_candidate_and_release_license(&who, false, true)?;
464467
465 Ok(Some(T::WeightInfo::force_release_license(current_count as u32)).into())468 Ok(Some(<T as Config>::WeightInfo::force_release_license(
469 current_count as u32,
470 ))
471 .into())
599 <LastAuthoredBlock<T>>::insert(author, frame_system::Pallet::<T>::block_number());605 <LastAuthoredBlock<T>>::insert(author, frame_system::Pallet::<T>::block_number());
600606
601 frame_system::Pallet::<T>::register_extra_weight_unchecked(607 frame_system::Pallet::<T>::register_extra_weight_unchecked(
602 T::WeightInfo::note_author(),608 <T as Config>::WeightInfo::note_author(),
603 DispatchClass::Mandatory,609 DispatchClass::Mandatory,
604 );610 );
605 }611 }
625 let result = Self::assemble_collators(active_candidates);631 let result = Self::assemble_collators(active_candidates);
626632
627 frame_system::Pallet::<T>::register_extra_weight_unchecked(633 frame_system::Pallet::<T>::register_extra_weight_unchecked(
628 T::WeightInfo::new_session(candidates_len_before as u32, removed as u32),634 <T as Config>::WeightInfo::new_session(
635 candidates_len_before as u32,
636 removed as u32,
637 ),
modifiedpallets/collator-selection/src/mock.rsdiffbeforeafterboth
225 type MaxXcmAllowedLocations = MaxXcmAllowedLocations;225 type MaxXcmAllowedLocations = MaxXcmAllowedLocations;
226 type AppPromotionDailyRate = AppPromotionDailyRate;226 type AppPromotionDailyRate = AppPromotionDailyRate;
227 type DayRelayBlocks = DayRelayBlocks;227 type DayRelayBlocks = DayRelayBlocks;
228 type WeightInfo = ();
228}229}
229230
230ord_parameter_types! {231ord_parameter_types! {
modifiedpallets/configuration/Cargo.tomldiffbeforeafterboth
12] }12] }
13frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }13frame-support = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
14frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }14frame-system = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
15frame-benchmarking = { default-features = false, optional = true, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
15sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }16sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
16sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }17sp-std = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
17sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }18sp-core = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.36" }
2223
23[features]24[features]
24default = ["std"]25default = ["std"]
26runtime-benchmarks = ["frame-benchmarking"]
25std = [27std = [
26 "parity-scale-codec/std",28 "parity-scale-codec/std",
27 "frame-support/std",29 "frame-support/std",
28 "frame-system/std",30 "frame-system/std",
31 "frame-benchmarking/std",
29 "sp-runtime/std",32 "sp-runtime/std",
30 "sp-std/std",33 "sp-std/std",
31 "sp-core/std",34 "sp-core/std",
addedpallets/configuration/src/benchmarking.rsdiffbeforeafterboth

no changes

modifiedpallets/configuration/src/lib.rsdiffbeforeafterboth
34pub use pallet::*;34pub use pallet::*;
35use sp_core::U256;35use sp_core::U256;
36
37#[cfg(feature = "runtime-benchmarks")]
38mod benchmarking;
39pub mod weights;
3640
37#[pallet]41#[pallet]
38mod pallet {42mod pallet {
45 use frame_system::{pallet_prelude::OriginFor, ensure_root, Config as SystemConfig};49 use frame_system::{pallet_prelude::OriginFor, ensure_root, Config as SystemConfig};
46 use xcm::v1::MultiLocation;50 use xcm::v1::MultiLocation;
4751
52 pub use crate::weights::WeightInfo;
48 pub type BalanceOf<T> =53 pub type BalanceOf<T> =
49 <<T as Config>::Currency as Currency<<T as SystemConfig>::AccountId>>::Balance;54 <<T as Config>::Currency as Currency<<T as SystemConfig>::AccountId>>::Balance;
5055
75 #[pallet::constant]80 #[pallet::constant]
76 type DefaultCollatorSelectionKickThreshold: Get<Self::BlockNumber>;81 type DefaultCollatorSelectionKickThreshold: Get<Self::BlockNumber>;
82
83 /// The weight information of this pallet.
84 type WeightInfo: WeightInfo;
77 }85 }
7886
79 #[pallet::event]87 #[pallet::event]
140 #[pallet::call]148 #[pallet::call]
141 impl<T: Config> Pallet<T> {149 impl<T: Config> Pallet<T> {
142 #[pallet::call_index(0)]150 #[pallet::call_index(0)]
143 #[pallet::weight(T::DbWeight::get().writes(1))]151 #[pallet::weight(T::WeightInfo::set_weight_to_fee_coefficient_override())]
144 pub fn set_weight_to_fee_coefficient_override(152 pub fn set_weight_to_fee_coefficient_override(
145 origin: OriginFor<T>,153 origin: OriginFor<T>,
146 coeff: Option<u64>,154 coeff: Option<u64>,
155 }163 }
156164
157 #[pallet::call_index(1)]165 #[pallet::call_index(1)]
158 #[pallet::weight(T::DbWeight::get().writes(1))]166 #[pallet::weight(T::WeightInfo::set_min_gas_price_override())]
159 pub fn set_min_gas_price_override(167 pub fn set_min_gas_price_override(
160 origin: OriginFor<T>,168 origin: OriginFor<T>,
161 coeff: Option<u64>,169 coeff: Option<u64>,
170 }178 }
171179
172 #[pallet::call_index(2)]180 #[pallet::call_index(2)]
173 #[pallet::weight(T::DbWeight::get().writes(1))]181 #[pallet::weight(T::WeightInfo::set_xcm_allowed_locations())]
174 pub fn set_xcm_allowed_locations(182 pub fn set_xcm_allowed_locations(
175 origin: OriginFor<T>,183 origin: OriginFor<T>,
176 locations: Option<BoundedVec<MultiLocation, T::MaxXcmAllowedLocations>>,184 locations: Option<BoundedVec<MultiLocation, T::MaxXcmAllowedLocations>>,
181 }189 }
182190
183 #[pallet::call_index(3)]191 #[pallet::call_index(3)]
184 #[pallet::weight(T::DbWeight::get().writes(1))]192 #[pallet::weight(T::WeightInfo::set_app_promotion_configuration_override())]
185 pub fn set_app_promotion_configuration_override(193 pub fn set_app_promotion_configuration_override(
186 origin: OriginFor<T>,194 origin: OriginFor<T>,
187 mut configuration: AppPromotionConfiguration<T::BlockNumber>,195 mut configuration: AppPromotionConfiguration<T::BlockNumber>,
202 }210 }
203211
204 #[pallet::call_index(4)]212 #[pallet::call_index(4)]
205 #[pallet::weight(T::DbWeight::get().writes(1))]213 #[pallet::weight(T::WeightInfo::set_collator_selection_desired_collators())]
206 pub fn set_collator_selection_desired_collators(214 pub fn set_collator_selection_desired_collators(
207 origin: OriginFor<T>,215 origin: OriginFor<T>,
208 max: Option<u32>,216 max: Option<u32>,
224 }232 }
225233
226 #[pallet::call_index(5)]234 #[pallet::call_index(5)]
227 #[pallet::weight(T::DbWeight::get().writes(1))]235 #[pallet::weight(T::WeightInfo::set_collator_selection_license_bond())]
228 pub fn set_collator_selection_license_bond(236 pub fn set_collator_selection_license_bond(
229 origin: OriginFor<T>,237 origin: OriginFor<T>,
230 amount: Option<BalanceOf<T>>,238 amount: Option<BalanceOf<T>>,
240 }248 }
241249
242 #[pallet::call_index(6)]250 #[pallet::call_index(6)]
243 #[pallet::weight(T::DbWeight::get().writes(1))]251 #[pallet::weight(T::WeightInfo::set_collator_selection_kick_threshold())]
244 pub fn set_collator_selection_kick_threshold(252 pub fn set_collator_selection_kick_threshold(
245 origin: OriginFor<T>,253 origin: OriginFor<T>,
246 threshold: Option<T::BlockNumber>,254 threshold: Option<T::BlockNumber>,
addedpallets/configuration/src/weights.rsdiffbeforeafterboth

no changes

modifiedruntime/common/config/pallets/mod.rsdiffbeforeafterboth
121 type MaxXcmAllowedLocations = ConstU32<16>;121 type MaxXcmAllowedLocations = ConstU32<16>;
122 type AppPromotionDailyRate = AppPromotionDailyRate;122 type AppPromotionDailyRate = AppPromotionDailyRate;
123 type DayRelayBlocks = DayRelayBlocks;123 type DayRelayBlocks = DayRelayBlocks;
124 type WeightInfo = pallet_configuration::weights::SubstrateWeight<Self>;
124}125}
125126
126impl pallet_maintenance::Config for Runtime {127impl pallet_maintenance::Config for Runtime {
modifiedruntime/common/construct_runtime/mod.rsdiffbeforeafterboth
32 ParachainSystem: cumulus_pallet_parachain_system::{Pallet, Call, Config, Storage, Inherent, Event<T>, ValidateUnsigned} = 20,32 ParachainSystem: cumulus_pallet_parachain_system::{Pallet, Call, Config, Storage, Inherent, Event<T>, ValidateUnsigned} = 20,
33 ParachainInfo: parachain_info::{Pallet, Storage, Config} = 21,33 ParachainInfo: parachain_info::{Pallet, Storage, Config} = 21,
34
35 Aura: pallet_aura::{Pallet, Config<T>} = 22,
36 AuraExt: cumulus_pallet_aura_ext::{Pallet, Config} = 23,
3734
38 #[runtimes(opal)]35 #[runtimes(opal)]
39 Authorship: pallet_authorship::{Pallet, Call, Storage} = 24,36 Authorship: pallet_authorship::{Pallet, Call, Storage} = 22,
4037
41 #[runtimes(opal)]38 #[runtimes(opal)]
42 CollatorSelection: pallet_collator_selection::{Pallet, Call, Storage, Event<T>, Config<T>} = 25,39 CollatorSelection: pallet_collator_selection::{Pallet, Call, Storage, Event<T>, Config<T>} = 23,
4340
44 #[runtimes(opal)]41 #[runtimes(opal)]
45 Session: pallet_session::{Pallet, Call, Storage, Event, Config<T>} = 26,42 Session: pallet_session::{Pallet, Call, Storage, Event, Config<T>} = 24,
43
44 Aura: pallet_aura::{Pallet, Config<T>} = 25,
45 AuraExt: cumulus_pallet_aura_ext::{Pallet, Config} = 26,
4646
47 Balances: pallet_balances::{Pallet, Call, Storage, Config<T>, Event<T>} = 30,47 Balances: pallet_balances::{Pallet, Call, Storage, Config<T>, Event<T>} = 30,
48 RandomnessCollectiveFlip: pallet_randomness_collective_flip::{Pallet, Storage} = 31,48 RandomnessCollectiveFlip: pallet_randomness_collective_flip::{Pallet, Storage} = 31,
modifiedruntime/common/runtime_apis.rsdiffbeforeafterboth
686 list_benchmark!(list, extra, pallet_unique, Unique);686 list_benchmark!(list, extra, pallet_unique, Unique);
687 list_benchmark!(list, extra, pallet_structure, Structure);687 list_benchmark!(list, extra, pallet_structure, Structure);
688 list_benchmark!(list, extra, pallet_inflation, Inflation);688 list_benchmark!(list, extra, pallet_inflation, Inflation);
689 list_benchmark!(list, extra, pallet_configuration, Configuration);
689690
690 #[cfg(feature = "app-promotion")]691 #[cfg(feature = "app-promotion")]
691 list_benchmark!(list, extra, pallet_app_promotion, AppPromotion);692 list_benchmark!(list, extra, pallet_app_promotion, AppPromotion);
755 add_benchmark!(params, batches, pallet_unique, Unique);756 add_benchmark!(params, batches, pallet_unique, Unique);
756 add_benchmark!(params, batches, pallet_structure, Structure);757 add_benchmark!(params, batches, pallet_structure, Structure);
757 add_benchmark!(params, batches, pallet_inflation, Inflation);758 add_benchmark!(params, batches, pallet_inflation, Inflation);
759 add_benchmark!(params, batches, pallet_configuration, Configuration);
758760
759 #[cfg(feature = "app-promotion")]761 #[cfg(feature = "app-promotion")]
760 add_benchmark!(params, batches, pallet_app_promotion, AppPromotion);762 add_benchmark!(params, batches, pallet_app_promotion, AppPromotion);
modifiedruntime/opal/Cargo.tomldiffbeforeafterboth
28 'pallet-evm-coder-substrate/runtime-benchmarks',28 'pallet-evm-coder-substrate/runtime-benchmarks',
29 'pallet-balances/runtime-benchmarks',29 'pallet-balances/runtime-benchmarks',
30 'pallet-timestamp/runtime-benchmarks',30 'pallet-timestamp/runtime-benchmarks',
31 'pallet-configuration/runtime-benchmarks',
31 'pallet-common/runtime-benchmarks',32 'pallet-common/runtime-benchmarks',
32 'pallet-structure/runtime-benchmarks',33 'pallet-structure/runtime-benchmarks',
33 'pallet-fungible/runtime-benchmarks',34 'pallet-fungible/runtime-benchmarks',
modifiedruntime/quartz/Cargo.tomldiffbeforeafterboth
28 'pallet-evm-coder-substrate/runtime-benchmarks',28 'pallet-evm-coder-substrate/runtime-benchmarks',
29 'pallet-balances/runtime-benchmarks',29 'pallet-balances/runtime-benchmarks',
30 'pallet-timestamp/runtime-benchmarks',30 'pallet-timestamp/runtime-benchmarks',
31 'pallet-configuration/runtime-benchmarks',
31 'pallet-common/runtime-benchmarks',32 'pallet-common/runtime-benchmarks',
32 'pallet-structure/runtime-benchmarks',33 'pallet-structure/runtime-benchmarks',
33 'pallet-fungible/runtime-benchmarks',34 'pallet-fungible/runtime-benchmarks',
modifiedruntime/unique/Cargo.tomldiffbeforeafterboth
28 'pallet-evm-coder-substrate/runtime-benchmarks',28 'pallet-evm-coder-substrate/runtime-benchmarks',
29 'pallet-balances/runtime-benchmarks',29 'pallet-balances/runtime-benchmarks',
30 'pallet-timestamp/runtime-benchmarks',30 'pallet-timestamp/runtime-benchmarks',
31 'pallet-configuration/runtime-benchmarks',
31 'pallet-common/runtime-benchmarks',32 'pallet-common/runtime-benchmarks',
32 'pallet-structure/runtime-benchmarks',33 'pallet-structure/runtime-benchmarks',
33 'pallet-fungible/runtime-benchmarks',34 'pallet-fungible/runtime-benchmarks',