difftreelog
refactor(collator-selection) shuffle pallets + add benchmarks to bench
in: master
7 files changed
Makefilediffbeforeafterboth--- a/Makefile
+++ b/Makefile
@@ -143,4 +143,4 @@
.PHONY: bench
# Disabled: bench-scheduler, bench-rmrk-core, bench-rmrk-equip
-bench: bench-evm-migration bench-unique bench-structure bench-fungible bench-refungible bench-nonfungible bench-foreign-assets
+bench: bench-evm-migration bench-unique bench-structure bench-fungible bench-refungible bench-nonfungible bench-foreign-assets bench-collator-selection bench-identity
runtime/common/construct_runtime/mod.rsdiffbeforeafterboth1// Copyright 2019-2022 Unique Network (Gibraltar) Ltd.2// This file is part of Unique Network.34// Unique Network is free software: you can redistribute it and/or modify5// it under the terms of the GNU General Public License as published by6// the Free Software Foundation, either version 3 of the License, or7// (at your option) any later version.89// Unique Network is distributed in the hope that it will be useful,10// but WITHOUT ANY WARRANTY; without even the implied warranty of11// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the12// GNU General Public License for more details.1314// You should have received a copy of the GNU General Public License15// along with Unique Network. If not, see <http://www.gnu.org/licenses/>.1617mod util;1819#[macro_export]20macro_rules! construct_runtime {21 ($select_runtime:ident) => {22 $crate::construct_runtime_impl! {23 select_runtime($select_runtime);2425 pub enum Runtime where26 Block = Block,27 NodeBlock = opaque::Block,28 UncheckedExtrinsic = UncheckedExtrinsic29 {30 System: frame_system = 0,3132 ParachainSystem: cumulus_pallet_parachain_system::{Pallet, Call, Config, Storage, Inherent, Event<T>, ValidateUnsigned} = 20,33 ParachainInfo: parachain_info::{Pallet, Storage, Config} = 21,3435 #[runtimes(opal)]36 Authorship: pallet_authorship::{Pallet, Call, Storage} = 22,3738 #[runtimes(opal)]39 CollatorSelection: pallet_collator_selection::{Pallet, Call, Storage, Event<T>, Config<T>} = 23,4041 #[runtimes(opal)]42 Session: pallet_session::{Pallet, Call, Storage, Event, Config<T>} = 24,4344 Aura: pallet_aura::{Pallet, Config<T>} = 25,45 AuraExt: cumulus_pallet_aura_ext::{Pallet, Config} = 26,4647 #[runtimes(opal)]48 Identity: pallet_identity::{Pallet, Call, Storage, Event<T>} = 27,4950 Balances: pallet_balances::{Pallet, Call, Storage, Config<T>, Event<T>} = 30,51 RandomnessCollectiveFlip: pallet_randomness_collective_flip::{Pallet, Storage} = 31,52 Timestamp: pallet_timestamp::{Pallet, Call, Storage, Inherent} = 32,53 TransactionPayment: pallet_transaction_payment::{Pallet, Storage, Event<T>} = 33,54 Treasury: pallet_treasury::{Pallet, Call, Storage, Config, Event<T>} = 34,55 Sudo: pallet_sudo::{Pallet, Call, Storage, Config<T>, Event<T>} = 35,56 Vesting: orml_vesting::{Pallet, Storage, Call, Event<T>, Config<T>} = 37,5758 XTokens: orml_xtokens = 38,59 Tokens: orml_tokens = 39,60 // Contracts: pallet_contracts::{Pallet, Call, Storage, Event<T>} = 38,6162 // XCM helpers.63 XcmpQueue: cumulus_pallet_xcmp_queue::{Pallet, Call, Storage, Event<T>} = 50,64 PolkadotXcm: pallet_xcm::{Pallet, Call, Event<T>, Origin} = 51,65 CumulusXcm: cumulus_pallet_xcm::{Pallet, Call, Event<T>, Origin} = 52,66 DmpQueue: cumulus_pallet_dmp_queue::{Pallet, Call, Storage, Event<T>} = 53,6768 // Unique Pallets69 Inflation: pallet_inflation::{Pallet, Call, Storage} = 60,70 Unique: pallet_unique::{Pallet, Call, Storage} = 61,7172 // #[runtimes(opal)]73 // Scheduler: pallet_unique_scheduler_v2::{Pallet, Call, Storage, Event<T>} = 62,7475 Configuration: pallet_configuration::{Pallet, Call, Storage, Event<T>} = 63,7677 Charging: pallet_charge_transaction::{Pallet, Call, Storage } = 64,78 // ContractHelpers: pallet_contract_helpers::{Pallet, Call, Storage} = 65,79 Common: pallet_common::{Pallet, Storage, Event<T>} = 66,80 Fungible: pallet_fungible::{Pallet, Storage} = 67,8182 #[runtimes(opal, quartz)]83 Refungible: pallet_refungible::{Pallet, Storage} = 68,8485 Nonfungible: pallet_nonfungible::{Pallet, Storage} = 69,86 Structure: pallet_structure::{Pallet, Call, Storage, Event<T>} = 70,8788 #[runtimes(opal)]89 RmrkCore: pallet_proxy_rmrk_core::{Pallet, Call, Storage, Event<T>} = 71,9091 #[runtimes(opal)]92 RmrkEquip: pallet_proxy_rmrk_equip::{Pallet, Call, Storage, Event<T>} = 72,9394 #[runtimes(opal, quartz)]95 AppPromotion: pallet_app_promotion::{Pallet, Call, Storage, Event<T>} = 73,9697 #[runtimes(opal, quartz, unique)]98 ForeignAssets: pallet_foreign_assets::{Pallet, Call, Storage, Event<T>} = 80,99100 // Frontier101 EVM: pallet_evm::{Pallet, Config, Call, Storage, Event<T>} = 100,102 Ethereum: pallet_ethereum::{Pallet, Config, Call, Storage, Event, Origin} = 101,103104 EvmCoderSubstrate: pallet_evm_coder_substrate::{Pallet, Storage} = 150,105 EvmContractHelpers: pallet_evm_contract_helpers::{Pallet, Storage, Event<T>} = 151,106 EvmTransactionPayment: pallet_evm_transaction_payment::{Pallet} = 152,107 EvmMigration: pallet_evm_migration::{Pallet, Call, Storage, Event<T>} = 153,108109 Maintenance: pallet_maintenance::{Pallet, Call, Storage, Event<T>} = 154,110111 #[runtimes(opal)]112 TestUtils: pallet_test_utils = 255,113 }114 }115 }116}1// Copyright 2019-2022 Unique Network (Gibraltar) Ltd.2// This file is part of Unique Network.34// Unique Network is free software: you can redistribute it and/or modify5// it under the terms of the GNU General Public License as published by6// the Free Software Foundation, either version 3 of the License, or7// (at your option) any later version.89// Unique Network is distributed in the hope that it will be useful,10// but WITHOUT ANY WARRANTY; without even the implied warranty of11// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the12// GNU General Public License for more details.1314// You should have received a copy of the GNU General Public License15// along with Unique Network. If not, see <http://www.gnu.org/licenses/>.1617mod util;1819#[macro_export]20macro_rules! construct_runtime {21 ($select_runtime:ident) => {22 $crate::construct_runtime_impl! {23 select_runtime($select_runtime);2425 pub enum Runtime where26 Block = Block,27 NodeBlock = opaque::Block,28 UncheckedExtrinsic = UncheckedExtrinsic29 {30 System: frame_system = 0,3132 ParachainSystem: cumulus_pallet_parachain_system::{Pallet, Call, Config, Storage, Inherent, Event<T>, ValidateUnsigned} = 20,33 ParachainInfo: parachain_info::{Pallet, Storage, Config} = 21,3435 Aura: pallet_aura::{Pallet, Config<T>} = 22,36 AuraExt: cumulus_pallet_aura_ext::{Pallet, Config} = 23,3738 #[runtimes(opal)]39 Authorship: pallet_authorship::{Pallet, Call, Storage} = 24,4041 #[runtimes(opal)]42 CollatorSelection: pallet_collator_selection::{Pallet, Call, Storage, Event<T>, Config<T>} = 25,4344 #[runtimes(opal)]45 Session: pallet_session::{Pallet, Call, Storage, Event, Config<T>} = 26,4647 Balances: pallet_balances::{Pallet, Call, Storage, Config<T>, Event<T>} = 30,48 RandomnessCollectiveFlip: pallet_randomness_collective_flip::{Pallet, Storage} = 31,49 Timestamp: pallet_timestamp::{Pallet, Call, Storage, Inherent} = 32,50 TransactionPayment: pallet_transaction_payment::{Pallet, Storage, Event<T>} = 33,51 Treasury: pallet_treasury::{Pallet, Call, Storage, Config, Event<T>} = 34,52 Sudo: pallet_sudo::{Pallet, Call, Storage, Config<T>, Event<T>} = 35,53 Vesting: orml_vesting::{Pallet, Storage, Call, Event<T>, Config<T>} = 37,5455 XTokens: orml_xtokens = 38,56 Tokens: orml_tokens = 39,57 // Contracts: pallet_contracts::{Pallet, Call, Storage, Event<T>} = 38,5859 #[runtimes(opal)]60 Identity: pallet_identity::{Pallet, Call, Storage, Event<T>} = 40,6162 // XCM helpers.63 XcmpQueue: cumulus_pallet_xcmp_queue::{Pallet, Call, Storage, Event<T>} = 50,64 PolkadotXcm: pallet_xcm::{Pallet, Call, Event<T>, Origin} = 51,65 CumulusXcm: cumulus_pallet_xcm::{Pallet, Call, Event<T>, Origin} = 52,66 DmpQueue: cumulus_pallet_dmp_queue::{Pallet, Call, Storage, Event<T>} = 53,6768 // Unique Pallets69 Inflation: pallet_inflation::{Pallet, Call, Storage} = 60,70 Unique: pallet_unique::{Pallet, Call, Storage} = 61,7172 // #[runtimes(opal)]73 // Scheduler: pallet_unique_scheduler_v2::{Pallet, Call, Storage, Event<T>} = 62,7475 Configuration: pallet_configuration::{Pallet, Call, Storage, Event<T>} = 63,7677 Charging: pallet_charge_transaction::{Pallet, Call, Storage } = 64,78 // ContractHelpers: pallet_contract_helpers::{Pallet, Call, Storage} = 65,79 Common: pallet_common::{Pallet, Storage, Event<T>} = 66,80 Fungible: pallet_fungible::{Pallet, Storage} = 67,8182 #[runtimes(opal, quartz)]83 Refungible: pallet_refungible::{Pallet, Storage} = 68,8485 Nonfungible: pallet_nonfungible::{Pallet, Storage} = 69,86 Structure: pallet_structure::{Pallet, Call, Storage, Event<T>} = 70,8788 #[runtimes(opal)]89 RmrkCore: pallet_proxy_rmrk_core::{Pallet, Call, Storage, Event<T>} = 71,9091 #[runtimes(opal)]92 RmrkEquip: pallet_proxy_rmrk_equip::{Pallet, Call, Storage, Event<T>} = 72,9394 #[runtimes(opal, quartz)]95 AppPromotion: pallet_app_promotion::{Pallet, Call, Storage, Event<T>} = 73,9697 #[runtimes(opal, quartz, unique)]98 ForeignAssets: pallet_foreign_assets::{Pallet, Call, Storage, Event<T>} = 80,99100 // Frontier101 EVM: pallet_evm::{Pallet, Config, Call, Storage, Event<T>} = 100,102 Ethereum: pallet_ethereum::{Pallet, Config, Call, Storage, Event, Origin} = 101,103104 EvmCoderSubstrate: pallet_evm_coder_substrate::{Pallet, Storage} = 150,105 EvmContractHelpers: pallet_evm_contract_helpers::{Pallet, Storage, Event<T>} = 151,106 EvmTransactionPayment: pallet_evm_transaction_payment::{Pallet} = 152,107 EvmMigration: pallet_evm_migration::{Pallet, Call, Storage, Event<T>} = 153,108109 Maintenance: pallet_maintenance::{Pallet, Call, Storage, Event<T>} = 154,110111 #[runtimes(opal)]112 TestUtils: pallet_test_utils = 255,113 }114 }115 }116}runtime/common/data_management.rsdiffbeforeafterboth--- a/runtime/common/data_management.rs
+++ /dev/null
@@ -1,67 +0,0 @@
-// Copyright 2019-2022 Unique Network (Gibraltar) Ltd.
-// This file is part of Unique Network.
-
-// Unique Network 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.
-
-// Unique Network 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 Unique Network. If not, see <http://www.gnu.org/licenses/>.
-
-use scale_info::TypeInfo;
-use codec::{Encode, Decode};
-use up_common::types::AccountId;
-use crate::RuntimeCall;
-
-use sp_runtime::{
- traits::{DispatchInfoOf, SignedExtension},
- transaction_validity::{
- TransactionValidity, ValidTransaction, InvalidTransaction, TransactionValidityError,
- },
-};
-
-#[derive(Debug, Encode, Decode, PartialEq, Eq, Clone, TypeInfo)]
-pub struct FilterIdentity;
-
-impl SignedExtension for FilterIdentity {
- type AccountId = AccountId;
- type Call = RuntimeCall;
- type AdditionalSigned = ();
- type Pre = ();
-
- const IDENTIFIER: &'static str = "FilterIdentity";
-
- fn additional_signed(&self) -> Result<Self::AdditionalSigned, TransactionValidityError> {
- Ok(())
- }
-
- fn pre_dispatch(
- self,
- who: &Self::AccountId,
- call: &Self::Call,
- info: &DispatchInfoOf<Self::Call>,
- len: usize,
- ) -> Result<Self::Pre, TransactionValidityError> {
- self.validate(who, call, info, len).map(|_| ())
- }
-
- fn validate(
- &self,
- _who: &Self::AccountId,
- call: &Self::Call,
- _info: &DispatchInfoOf<Self::Call>,
- _len: usize,
- ) -> TransactionValidity {
- match call {
- #[cfg(feature = "collator-selection")]
- RuntimeCall::Identity(_) => Err(TransactionValidityError::Invalid(InvalidTransaction::Call)),
- _ => Ok(ValidTransaction::default()),
- }
- }
-}
runtime/common/identity.rsdiffbeforeafterboth--- /dev/null
+++ b/runtime/common/identity.rs
@@ -0,0 +1,67 @@
+// Copyright 2019-2022 Unique Network (Gibraltar) Ltd.
+// This file is part of Unique Network.
+
+// Unique Network 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.
+
+// Unique Network 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 Unique Network. If not, see <http://www.gnu.org/licenses/>.
+
+use scale_info::TypeInfo;
+use codec::{Encode, Decode};
+use up_common::types::AccountId;
+use crate::RuntimeCall;
+
+use sp_runtime::{
+ traits::{DispatchInfoOf, SignedExtension},
+ transaction_validity::{
+ TransactionValidity, ValidTransaction, InvalidTransaction, TransactionValidityError,
+ },
+};
+
+#[derive(Debug, Encode, Decode, PartialEq, Eq, Clone, TypeInfo)]
+pub struct DisableIdentityCalls;
+
+impl SignedExtension for DisableIdentityCalls {
+ type AccountId = AccountId;
+ type Call = RuntimeCall;
+ type AdditionalSigned = ();
+ type Pre = ();
+
+ const IDENTIFIER: &'static str = "DisableIdentityCalls";
+
+ fn additional_signed(&self) -> Result<Self::AdditionalSigned, TransactionValidityError> {
+ Ok(())
+ }
+
+ fn pre_dispatch(
+ self,
+ who: &Self::AccountId,
+ call: &Self::Call,
+ info: &DispatchInfoOf<Self::Call>,
+ len: usize,
+ ) -> Result<Self::Pre, TransactionValidityError> {
+ self.validate(who, call, info, len).map(|_| ())
+ }
+
+ fn validate(
+ &self,
+ _who: &Self::AccountId,
+ call: &Self::Call,
+ _info: &DispatchInfoOf<Self::Call>,
+ _len: usize,
+ ) -> TransactionValidity {
+ match call {
+ #[cfg(feature = "collator-selection")]
+ RuntimeCall::Identity(_) => Err(TransactionValidityError::Invalid(InvalidTransaction::Call)),
+ _ => Ok(ValidTransaction::default()),
+ }
+ }
+}
runtime/common/mod.rsdiffbeforeafterboth--- a/runtime/common/mod.rs
+++ b/runtime/common/mod.rs
@@ -16,9 +16,9 @@
pub mod config;
pub mod construct_runtime;
-pub mod data_management;
pub mod dispatch;
pub mod ethereum;
+pub mod identity;
pub mod instance;
pub mod maintenance;
pub mod runtime_apis;
@@ -97,7 +97,7 @@
frame_system::CheckNonce<Runtime>,
frame_system::CheckWeight<Runtime>,
maintenance::CheckMaintenance,
- data_management::FilterIdentity,
+ identity::DisableIdentityCalls,
ChargeTransactionPayment,
//pallet_contract_helpers::ContractHelpersExtension<Runtime>,
pallet_ethereum::FakeTransactionFinalizer<Runtime>,
tests/src/.outdated/substrate/substrate-api.tsdiffbeforeafterboth--- a/tests/src/.outdated/substrate/substrate-api.ts
+++ b/tests/src/.outdated/substrate/substrate-api.ts
@@ -41,7 +41,7 @@
extrinsic: {},
payload: {},
},
- FilterIdentity: {
+ DisableIdentityCalls: {
extrinsic: {},
payload: {},
},
tests/src/util/playgrounds/unique.dev.tsdiffbeforeafterboth--- a/tests/src/util/playgrounds/unique.dev.ts
+++ b/tests/src/util/playgrounds/unique.dev.ts
@@ -93,7 +93,7 @@
extrinsic: {},
payload: {},
},
- FilterIdentity: {
+ DisableIdentityCalls: {
extrinsic: {},
payload: {},
},