git.delta.rocks / unique-network / refs/commits / 63282b096011

difftreelog

refactor(collator-selection) shuffle pallets + add benchmarks to bench

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

7 files changed

modifiedMakefilediffbeforeafterboth
before · Makefile
1.PHONY: _help2_help:3	@echo "regenerate_solidity - generate stubs/interfaces for contracts defined in native (via evm-coder)"4	@echo "evm_stubs - recompile contract stubs and ABI"5	@echo "bench - run frame-benchmarking"6	@echo "  bench-evm-migration"7	@echo "  bench-unique"89FUNGIBLE_EVM_STUBS=./pallets/fungible/src/stubs10FUNGIBLE_EVM_ABI=./tests/src/eth/abi/fungible.json1112NONFUNGIBLE_EVM_STUBS=./pallets/nonfungible/src/stubs13NONFUNGIBLE_EVM_ABI=./tests/src/eth/abi/nonFungible.json1415REFUNGIBLE_EVM_STUBS=./pallets/refungible/src/stubs16REFUNGIBLE_EVM_ABI=./tests/src/eth/abi/reFungible.json17REFUNGIBLE_TOKEN_EVM_ABI=./tests/src/eth/abi/reFungibleToken.json1819CONTRACT_HELPERS_STUBS=./pallets/evm-contract-helpers/src/stubs/20CONTRACT_HELPERS_ABI=./tests/src/eth/abi/contractHelpers.json2122COLLECTION_HELPER_STUBS=./pallets/unique/src/eth/stubs/23COLLECTION_HELPER_ABI=./tests/src/eth/abi/collectionHelpers.json2425TESTS_API=./tests/src/eth/api/2627.PHONY: regenerate_solidity28regenerate_solidity: UniqueFungible.sol UniqueNFT.sol UniqueRefungible.sol UniqueRefungibleToken.sol ContractHelpers.sol CollectionHelpers.sol2930UniqueFungible.sol:31	PACKAGE=pallet-fungible NAME=erc::gen_iface OUTPUT=$(TESTS_API)/$@ ./.maintain/scripts/generate_sol.sh32	PACKAGE=pallet-fungible NAME=erc::gen_impl OUTPUT=$(FUNGIBLE_EVM_STUBS)/$@ ./.maintain/scripts/generate_sol.sh3334UniqueNFT.sol:35	PACKAGE=pallet-nonfungible NAME=erc::gen_iface OUTPUT=$(TESTS_API)/$@ ./.maintain/scripts/generate_sol.sh36	PACKAGE=pallet-nonfungible NAME=erc::gen_impl OUTPUT=$(NONFUNGIBLE_EVM_STUBS)/$@ ./.maintain/scripts/generate_sol.sh3738UniqueRefungible.sol:39	PACKAGE=pallet-refungible NAME=erc::gen_iface OUTPUT=$(TESTS_API)/$@ ./.maintain/scripts/generate_sol.sh40	PACKAGE=pallet-refungible NAME=erc::gen_impl OUTPUT=$(REFUNGIBLE_EVM_STUBS)/$@ ./.maintain/scripts/generate_sol.sh4142UniqueRefungibleToken.sol:43	PACKAGE=pallet-refungible NAME=erc_token::gen_iface OUTPUT=$(TESTS_API)/$@ ./.maintain/scripts/generate_sol.sh44	PACKAGE=pallet-refungible NAME=erc_token::gen_impl OUTPUT=$(REFUNGIBLE_EVM_STUBS)/$@ ./.maintain/scripts/generate_sol.sh4546ContractHelpers.sol:47	PACKAGE=pallet-evm-contract-helpers NAME=eth::contract_helpers_iface OUTPUT=$(TESTS_API)/$@ ./.maintain/scripts/generate_sol.sh48	PACKAGE=pallet-evm-contract-helpers NAME=eth::contract_helpers_impl OUTPUT=$(CONTRACT_HELPERS_STUBS)/$@ ./.maintain/scripts/generate_sol.sh4950CollectionHelpers.sol:51	PACKAGE=pallet-unique NAME=eth::collection_helper_iface OUTPUT=$(TESTS_API)/$@ ./.maintain/scripts/generate_sol.sh52	PACKAGE=pallet-unique NAME=eth::collection_helper_impl OUTPUT=$(COLLECTION_HELPER_STUBS)/$@ ./.maintain/scripts/generate_sol.sh5354UniqueFungible: UniqueFungible.sol55	INPUT=$(FUNGIBLE_EVM_STUBS)/$< OUTPUT=$(FUNGIBLE_EVM_STUBS)/UniqueFungible.raw ./.maintain/scripts/compile_stub.sh56	INPUT=$(FUNGIBLE_EVM_STUBS)/$< OUTPUT=$(FUNGIBLE_EVM_ABI) ./.maintain/scripts/generate_abi.sh5758UniqueNFT: UniqueNFT.sol59	INPUT=$(NONFUNGIBLE_EVM_STUBS)/$< OUTPUT=$(NONFUNGIBLE_EVM_STUBS)/UniqueNFT.raw ./.maintain/scripts/compile_stub.sh60	INPUT=$(NONFUNGIBLE_EVM_STUBS)/$< OUTPUT=$(NONFUNGIBLE_EVM_ABI) ./.maintain/scripts/generate_abi.sh6162UniqueRefungible: UniqueRefungible.sol63	INPUT=$(REFUNGIBLE_EVM_STUBS)/$< OUTPUT=$(REFUNGIBLE_EVM_STUBS)/UniqueRefungible.raw ./.maintain/scripts/compile_stub.sh64	INPUT=$(REFUNGIBLE_EVM_STUBS)/$< OUTPUT=$(REFUNGIBLE_EVM_ABI) ./.maintain/scripts/generate_abi.sh6566UniqueRefungibleToken: UniqueRefungibleToken.sol67	INPUT=$(REFUNGIBLE_EVM_STUBS)/$< OUTPUT=$(REFUNGIBLE_EVM_STUBS)/UniqueRefungibleToken.raw ./.maintain/scripts/compile_stub.sh68	INPUT=$(REFUNGIBLE_EVM_STUBS)/$< OUTPUT=$(REFUNGIBLE_TOKEN_EVM_ABI) ./.maintain/scripts/generate_abi.sh6970ContractHelpers: ContractHelpers.sol71	INPUT=$(CONTRACT_HELPERS_STUBS)/$< OUTPUT=$(CONTRACT_HELPERS_STUBS)/ContractHelpers.raw ./.maintain/scripts/compile_stub.sh72	INPUT=$(CONTRACT_HELPERS_STUBS)/$< OUTPUT=$(CONTRACT_HELPERS_ABI) ./.maintain/scripts/generate_abi.sh7374CollectionHelpers: CollectionHelpers.sol75	INPUT=$(COLLECTION_HELPER_STUBS)/$< OUTPUT=$(COLLECTION_HELPER_STUBS)/CollectionHelpers.raw ./.maintain/scripts/compile_stub.sh76	INPUT=$(COLLECTION_HELPER_STUBS)/$< OUTPUT=$(COLLECTION_HELPER_ABI) ./.maintain/scripts/generate_abi.sh7778evm_stubs: UniqueFungible UniqueNFT UniqueRefungible UniqueRefungibleToken ContractHelpers CollectionHelpers7980.PHONY: _bench81_bench:82	cargo run --release --features runtime-benchmarks,$(RUNTIME) -- \83	benchmark pallet --pallet pallet-$(if $(PALLET),$(PALLET),$(error Must set PALLET)) \84	--wasm-execution compiled --extrinsic '*' \85	--template .maintain/frame-weight-template.hbs --steps=50 --repeat=80 --heap-pages=4096 \86	--output=./pallets/$(if $(PALLET_DIR),$(PALLET_DIR),$(PALLET))/src/weights.rs8788.PHONY: bench-evm-migration89bench-evm-migration:90	make _bench PALLET=evm-migration9192.PHONY: bench-common93bench-common:94	make _bench PALLET=common9596.PHONY: bench-unique97bench-unique:98	make _bench PALLET=unique99100.PHONY: bench-fungible101bench-fungible:102	make _bench PALLET=fungible103104.PHONY: bench-refungible105bench-refungible:106	make _bench PALLET=refungible107108.PHONY: bench-nonfungible109bench-nonfungible:110	make _bench PALLET=nonfungible111112.PHONY: bench-structure113bench-structure:114	make _bench PALLET=structure115116.PHONY: bench-scheduler117bench-scheduler:118	make _bench PALLET=unique-scheduler-v2 PALLET_DIR=scheduler-v2119120.PHONY: bench-rmrk-core121bench-rmrk-core:122	make _bench PALLET=proxy-rmrk-core123124.PHONY: bench-rmrk-equip125bench-rmrk-equip:126	make _bench PALLET=proxy-rmrk-equip127128.PHONY: bench-foreign-assets129bench-foreign-assets:130	make _bench PALLET=foreign-assets131132.PHONY: bench-collator-selection133bench-collator-selection:134	make _bench PALLET=collator-selection135136.PHONY: bench-identity137bench-identity:138	make _bench PALLET=identity139140.PHONY: bench-app-promotion141bench-app-promotion:142	make _bench PALLET=app-promotion PALLET_DIR=app-promotion143	144.PHONY: bench145# Disabled: bench-scheduler, bench-rmrk-core, bench-rmrk-equip146bench: bench-evm-migration bench-unique bench-structure bench-fungible bench-refungible bench-nonfungible bench-foreign-assets
after · Makefile
1.PHONY: _help2_help:3	@echo "regenerate_solidity - generate stubs/interfaces for contracts defined in native (via evm-coder)"4	@echo "evm_stubs - recompile contract stubs and ABI"5	@echo "bench - run frame-benchmarking"6	@echo "  bench-evm-migration"7	@echo "  bench-unique"89FUNGIBLE_EVM_STUBS=./pallets/fungible/src/stubs10FUNGIBLE_EVM_ABI=./tests/src/eth/abi/fungible.json1112NONFUNGIBLE_EVM_STUBS=./pallets/nonfungible/src/stubs13NONFUNGIBLE_EVM_ABI=./tests/src/eth/abi/nonFungible.json1415REFUNGIBLE_EVM_STUBS=./pallets/refungible/src/stubs16REFUNGIBLE_EVM_ABI=./tests/src/eth/abi/reFungible.json17REFUNGIBLE_TOKEN_EVM_ABI=./tests/src/eth/abi/reFungibleToken.json1819CONTRACT_HELPERS_STUBS=./pallets/evm-contract-helpers/src/stubs/20CONTRACT_HELPERS_ABI=./tests/src/eth/abi/contractHelpers.json2122COLLECTION_HELPER_STUBS=./pallets/unique/src/eth/stubs/23COLLECTION_HELPER_ABI=./tests/src/eth/abi/collectionHelpers.json2425TESTS_API=./tests/src/eth/api/2627.PHONY: regenerate_solidity28regenerate_solidity: UniqueFungible.sol UniqueNFT.sol UniqueRefungible.sol UniqueRefungibleToken.sol ContractHelpers.sol CollectionHelpers.sol2930UniqueFungible.sol:31	PACKAGE=pallet-fungible NAME=erc::gen_iface OUTPUT=$(TESTS_API)/$@ ./.maintain/scripts/generate_sol.sh32	PACKAGE=pallet-fungible NAME=erc::gen_impl OUTPUT=$(FUNGIBLE_EVM_STUBS)/$@ ./.maintain/scripts/generate_sol.sh3334UniqueNFT.sol:35	PACKAGE=pallet-nonfungible NAME=erc::gen_iface OUTPUT=$(TESTS_API)/$@ ./.maintain/scripts/generate_sol.sh36	PACKAGE=pallet-nonfungible NAME=erc::gen_impl OUTPUT=$(NONFUNGIBLE_EVM_STUBS)/$@ ./.maintain/scripts/generate_sol.sh3738UniqueRefungible.sol:39	PACKAGE=pallet-refungible NAME=erc::gen_iface OUTPUT=$(TESTS_API)/$@ ./.maintain/scripts/generate_sol.sh40	PACKAGE=pallet-refungible NAME=erc::gen_impl OUTPUT=$(REFUNGIBLE_EVM_STUBS)/$@ ./.maintain/scripts/generate_sol.sh4142UniqueRefungibleToken.sol:43	PACKAGE=pallet-refungible NAME=erc_token::gen_iface OUTPUT=$(TESTS_API)/$@ ./.maintain/scripts/generate_sol.sh44	PACKAGE=pallet-refungible NAME=erc_token::gen_impl OUTPUT=$(REFUNGIBLE_EVM_STUBS)/$@ ./.maintain/scripts/generate_sol.sh4546ContractHelpers.sol:47	PACKAGE=pallet-evm-contract-helpers NAME=eth::contract_helpers_iface OUTPUT=$(TESTS_API)/$@ ./.maintain/scripts/generate_sol.sh48	PACKAGE=pallet-evm-contract-helpers NAME=eth::contract_helpers_impl OUTPUT=$(CONTRACT_HELPERS_STUBS)/$@ ./.maintain/scripts/generate_sol.sh4950CollectionHelpers.sol:51	PACKAGE=pallet-unique NAME=eth::collection_helper_iface OUTPUT=$(TESTS_API)/$@ ./.maintain/scripts/generate_sol.sh52	PACKAGE=pallet-unique NAME=eth::collection_helper_impl OUTPUT=$(COLLECTION_HELPER_STUBS)/$@ ./.maintain/scripts/generate_sol.sh5354UniqueFungible: UniqueFungible.sol55	INPUT=$(FUNGIBLE_EVM_STUBS)/$< OUTPUT=$(FUNGIBLE_EVM_STUBS)/UniqueFungible.raw ./.maintain/scripts/compile_stub.sh56	INPUT=$(FUNGIBLE_EVM_STUBS)/$< OUTPUT=$(FUNGIBLE_EVM_ABI) ./.maintain/scripts/generate_abi.sh5758UniqueNFT: UniqueNFT.sol59	INPUT=$(NONFUNGIBLE_EVM_STUBS)/$< OUTPUT=$(NONFUNGIBLE_EVM_STUBS)/UniqueNFT.raw ./.maintain/scripts/compile_stub.sh60	INPUT=$(NONFUNGIBLE_EVM_STUBS)/$< OUTPUT=$(NONFUNGIBLE_EVM_ABI) ./.maintain/scripts/generate_abi.sh6162UniqueRefungible: UniqueRefungible.sol63	INPUT=$(REFUNGIBLE_EVM_STUBS)/$< OUTPUT=$(REFUNGIBLE_EVM_STUBS)/UniqueRefungible.raw ./.maintain/scripts/compile_stub.sh64	INPUT=$(REFUNGIBLE_EVM_STUBS)/$< OUTPUT=$(REFUNGIBLE_EVM_ABI) ./.maintain/scripts/generate_abi.sh6566UniqueRefungibleToken: UniqueRefungibleToken.sol67	INPUT=$(REFUNGIBLE_EVM_STUBS)/$< OUTPUT=$(REFUNGIBLE_EVM_STUBS)/UniqueRefungibleToken.raw ./.maintain/scripts/compile_stub.sh68	INPUT=$(REFUNGIBLE_EVM_STUBS)/$< OUTPUT=$(REFUNGIBLE_TOKEN_EVM_ABI) ./.maintain/scripts/generate_abi.sh6970ContractHelpers: ContractHelpers.sol71	INPUT=$(CONTRACT_HELPERS_STUBS)/$< OUTPUT=$(CONTRACT_HELPERS_STUBS)/ContractHelpers.raw ./.maintain/scripts/compile_stub.sh72	INPUT=$(CONTRACT_HELPERS_STUBS)/$< OUTPUT=$(CONTRACT_HELPERS_ABI) ./.maintain/scripts/generate_abi.sh7374CollectionHelpers: CollectionHelpers.sol75	INPUT=$(COLLECTION_HELPER_STUBS)/$< OUTPUT=$(COLLECTION_HELPER_STUBS)/CollectionHelpers.raw ./.maintain/scripts/compile_stub.sh76	INPUT=$(COLLECTION_HELPER_STUBS)/$< OUTPUT=$(COLLECTION_HELPER_ABI) ./.maintain/scripts/generate_abi.sh7778evm_stubs: UniqueFungible UniqueNFT UniqueRefungible UniqueRefungibleToken ContractHelpers CollectionHelpers7980.PHONY: _bench81_bench:82	cargo run --release --features runtime-benchmarks,$(RUNTIME) -- \83	benchmark pallet --pallet pallet-$(if $(PALLET),$(PALLET),$(error Must set PALLET)) \84	--wasm-execution compiled --extrinsic '*' \85	--template .maintain/frame-weight-template.hbs --steps=50 --repeat=80 --heap-pages=4096 \86	--output=./pallets/$(if $(PALLET_DIR),$(PALLET_DIR),$(PALLET))/src/weights.rs8788.PHONY: bench-evm-migration89bench-evm-migration:90	make _bench PALLET=evm-migration9192.PHONY: bench-common93bench-common:94	make _bench PALLET=common9596.PHONY: bench-unique97bench-unique:98	make _bench PALLET=unique99100.PHONY: bench-fungible101bench-fungible:102	make _bench PALLET=fungible103104.PHONY: bench-refungible105bench-refungible:106	make _bench PALLET=refungible107108.PHONY: bench-nonfungible109bench-nonfungible:110	make _bench PALLET=nonfungible111112.PHONY: bench-structure113bench-structure:114	make _bench PALLET=structure115116.PHONY: bench-scheduler117bench-scheduler:118	make _bench PALLET=unique-scheduler-v2 PALLET_DIR=scheduler-v2119120.PHONY: bench-rmrk-core121bench-rmrk-core:122	make _bench PALLET=proxy-rmrk-core123124.PHONY: bench-rmrk-equip125bench-rmrk-equip:126	make _bench PALLET=proxy-rmrk-equip127128.PHONY: bench-foreign-assets129bench-foreign-assets:130	make _bench PALLET=foreign-assets131132.PHONY: bench-collator-selection133bench-collator-selection:134	make _bench PALLET=collator-selection135136.PHONY: bench-identity137bench-identity:138	make _bench PALLET=identity139140.PHONY: bench-app-promotion141bench-app-promotion:142	make _bench PALLET=app-promotion PALLET_DIR=app-promotion143	144.PHONY: bench145# Disabled: bench-scheduler, bench-rmrk-core, bench-rmrk-equip146bench: bench-evm-migration bench-unique bench-structure bench-fungible bench-refungible bench-nonfungible bench-foreign-assets bench-collator-selection bench-identity
modifiedruntime/common/construct_runtime/mod.rsdiffbeforeafterboth
--- a/runtime/common/construct_runtime/mod.rs
+++ b/runtime/common/construct_runtime/mod.rs
@@ -32,20 +32,17 @@
                 ParachainSystem: cumulus_pallet_parachain_system::{Pallet, Call, Config, Storage, Inherent, Event<T>, ValidateUnsigned} = 20,
                 ParachainInfo: parachain_info::{Pallet, Storage, Config} = 21,
 
-                #[runtimes(opal)]
-                Authorship: pallet_authorship::{Pallet, Call, Storage} = 22,
+                Aura: pallet_aura::{Pallet, Config<T>} = 22,
+                AuraExt: cumulus_pallet_aura_ext::{Pallet, Config} = 23,
 
                 #[runtimes(opal)]
-                CollatorSelection: pallet_collator_selection::{Pallet, Call, Storage, Event<T>, Config<T>} = 23,
+                Authorship: pallet_authorship::{Pallet, Call, Storage} = 24,
 
                 #[runtimes(opal)]
-                Session: pallet_session::{Pallet, Call, Storage, Event, Config<T>} = 24,
+                CollatorSelection: pallet_collator_selection::{Pallet, Call, Storage, Event<T>, Config<T>} = 25,
 
-                Aura: pallet_aura::{Pallet, Config<T>} = 25,
-                AuraExt: cumulus_pallet_aura_ext::{Pallet, Config} = 26,
-
                 #[runtimes(opal)]
-                Identity: pallet_identity::{Pallet, Call, Storage, Event<T>} = 27,
+                Session: pallet_session::{Pallet, Call, Storage, Event, Config<T>} = 26,
 
                 Balances: pallet_balances::{Pallet, Call, Storage, Config<T>, Event<T>} = 30,
                 RandomnessCollectiveFlip: pallet_randomness_collective_flip::{Pallet, Storage} = 31,
@@ -59,6 +56,9 @@
                 Tokens: orml_tokens = 39,
                 // Contracts: pallet_contracts::{Pallet, Call, Storage, Event<T>} = 38,
 
+                #[runtimes(opal)]
+                Identity: pallet_identity::{Pallet, Call, Storage, Event<T>} = 40,
+
                 // XCM helpers.
                 XcmpQueue: cumulus_pallet_xcmp_queue::{Pallet, Call, Storage, Event<T>} = 50,
                 PolkadotXcm: pallet_xcm::{Pallet, Call, Event<T>, Origin} = 51,
deletedruntime/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()),
-		}
-	}
-}
addedruntime/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()),
+		}
+	}
+}
modifiedruntime/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>,
modifiedtests/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: {},
       },
modifiedtests/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: {},
         },