From ad462d6fc3aac7b603eae08e6c5b5115c095fd18 Mon Sep 17 00:00:00 2001 From: Krayt78 Date: Mon, 16 Dec 2024 09:44:04 +0100 Subject: [PATCH 01/10] changed toml --- substrate/frame/safe-mode/Cargo.toml | 23 ++++------------------- 1 file changed, 4 insertions(+), 19 deletions(-) diff --git a/substrate/frame/safe-mode/Cargo.toml b/substrate/frame/safe-mode/Cargo.toml index e7f165ae67d8..a78905f90011 100644 --- a/substrate/frame/safe-mode/Cargo.toml +++ b/substrate/frame/safe-mode/Cargo.toml @@ -17,12 +17,8 @@ targets = ["x86_64-unknown-linux-gnu"] [dependencies] codec = { features = ["derive"], workspace = true } docify = { workspace = true } -frame-benchmarking = { optional = true, workspace = true } -frame-support = { workspace = true } -frame-system = { workspace = true } +frame = { workspace = true, features = ["experimental", "runtime"] } scale-info = { features = ["derive"], workspace = true } -sp-arithmetic = { workspace = true } -sp-runtime = { workspace = true } pallet-balances = { optional = true, workspace = true } pallet-utility = { optional = true, workspace = true } pallet-proxy = { optional = true, workspace = true } @@ -39,32 +35,21 @@ frame-support = { features = ["experimental"], workspace = true, default-feature default = ["std"] std = [ "codec/std", - "frame-benchmarking/std", - "frame-support/std", - "frame-system/std", + "frame/std", "pallet-balances?/std", "pallet-proxy?/std", "pallet-utility?/std", "scale-info/std", - "sp-arithmetic/std", - "sp-core/std", - "sp-io/std", - "sp-runtime/std", ] runtime-benchmarks = [ - "frame-benchmarking/runtime-benchmarks", - "frame-support/runtime-benchmarks", - "frame-system/runtime-benchmarks", + "frame/runtime-benchmarks", "pallet-balances/runtime-benchmarks", "pallet-proxy/runtime-benchmarks", "pallet-utility/runtime-benchmarks", - "sp-runtime/runtime-benchmarks", ] try-runtime = [ - "frame-support/try-runtime", - "frame-system/try-runtime", + "frame/try-runtime", "pallet-balances?/try-runtime", "pallet-proxy?/try-runtime", "pallet-utility?/try-runtime", - "sp-runtime/try-runtime", ] From b29ee8a3240b01b6d443cd203eefd27b06c4150e Mon Sep 17 00:00:00 2001 From: Krayt78 Date: Mon, 16 Dec 2024 11:24:38 +0100 Subject: [PATCH 02/10] just missing def assert --- Cargo.lock | 5 +---- substrate/frame/safe-mode/src/benchmarking.rs | 6 ++--- substrate/frame/safe-mode/src/lib.rs | 22 +++++++------------ substrate/frame/safe-mode/src/mock.rs | 22 ++++++++++--------- substrate/frame/safe-mode/src/tests.rs | 3 +-- substrate/frame/safe-mode/src/weights.rs | 2 +- 6 files changed, 25 insertions(+), 35 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 02d7da8f7657..3b5bad8037aa 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -14929,18 +14929,15 @@ name = "pallet-safe-mode" version = "9.0.0" dependencies = [ "docify", - "frame-benchmarking 28.0.0", "frame-support 28.0.0", - "frame-system 28.0.0", "pallet-balances 28.0.0", "pallet-proxy 28.0.0", "pallet-utility 28.0.0", "parity-scale-codec", + "polkadot-sdk-frame 0.1.0", "scale-info", - "sp-arithmetic 23.0.0", "sp-core 28.0.0", "sp-io 30.0.0", - "sp-runtime 31.0.1", ] [[package]] diff --git a/substrate/frame/safe-mode/src/benchmarking.rs b/substrate/frame/safe-mode/src/benchmarking.rs index 7561cf305f45..8836fe70e7c7 100644 --- a/substrate/frame/safe-mode/src/benchmarking.rs +++ b/substrate/frame/safe-mode/src/benchmarking.rs @@ -19,10 +19,8 @@ use super::{Pallet as SafeMode, *}; -use frame_benchmarking::v2::*; -use frame_support::traits::{fungible, UnfilteredDispatchable}; -use frame_system::{Pallet as System, RawOrigin}; -use sp_runtime::traits::{Bounded, One, Zero}; +use frame::{benchmarking::prelude::*, traits::UnfilteredDispatchable}; +use frame::deps::frame_system::{Pallet as System, RawOrigin}; #[benchmarks(where T::Currency: fungible::Mutate)] mod benchmarks { diff --git a/substrate/frame/safe-mode/src/lib.rs b/substrate/frame/safe-mode/src/lib.rs index cfa9097b5412..a29a7cac71a7 100644 --- a/substrate/frame/safe-mode/src/lib.rs +++ b/substrate/frame/safe-mode/src/lib.rs @@ -75,9 +75,8 @@ pub mod mock; mod tests; pub mod weights; -use frame_support::{ - defensive_assert, - pallet_prelude::*, +use frame::{ + prelude::*, traits::{ fungible::{ self, @@ -86,12 +85,7 @@ use frame_support::{ tokens::{Fortitude, Precision}, CallMetadata, Contains, Defensive, GetCallMetadata, PalletInfoAccess, SafeModeNotify, }, - weights::Weight, - DefaultNoBound, }; -use frame_system::pallet_prelude::*; -use sp_arithmetic::traits::Zero; -use sp_runtime::traits::Saturating; pub use pallet::*; pub use weights::*; @@ -99,7 +93,7 @@ pub use weights::*; type BalanceOf = <::Currency as fungible::Inspect<::AccountId>>::Balance; -#[frame_support::pallet] +#[frame::pallet] pub mod pallet { use super::*; @@ -609,7 +603,7 @@ where } } -impl frame_support::traits::SafeMode for Pallet { +impl frame::traits::SafeMode for Pallet { type BlockNumber = BlockNumberFor; fn is_entered() -> bool { @@ -623,20 +617,20 @@ impl frame_support::traits::SafeMode for Pallet { }) } - fn enter(duration: BlockNumberFor) -> Result<(), frame_support::traits::SafeModeError> { + fn enter(duration: BlockNumberFor) -> Result<(), frame::traits::SafeModeError> { Self::do_enter(None, duration).map_err(Into::into) } - fn extend(duration: BlockNumberFor) -> Result<(), frame_support::traits::SafeModeError> { + fn extend(duration: BlockNumberFor) -> Result<(), frame::traits::SafeModeError> { Self::do_extend(None, duration).map_err(Into::into) } - fn exit() -> Result<(), frame_support::traits::SafeModeError> { + fn exit() -> Result<(), frame::traits::SafeModeError> { Self::do_exit(ExitReason::Force).map_err(Into::into) } } -impl From> for frame_support::traits::SafeModeError { +impl From> for frame::traits::SafeModeError { fn from(err: Error) -> Self { match err { Error::::Entered => Self::AlreadyEntered, diff --git a/substrate/frame/safe-mode/src/mock.rs b/substrate/frame/safe-mode/src/mock.rs index ec1ad8249514..d05ddee34015 100644 --- a/substrate/frame/safe-mode/src/mock.rs +++ b/substrate/frame/safe-mode/src/mock.rs @@ -22,16 +22,18 @@ use super::*; use crate as pallet_safe_mode; -use frame_support::{ - derive_impl, parameter_types, - traits::{ConstU64, Everything, InsideBoth, InstanceFilter, IsInVec, SafeModeNotify}, -}; -use frame_system::EnsureSignedBy; -use sp_core::H256; -use sp_runtime::{ - traits::{BlakeTwo256, IdentityLookup}, - BuildStorage, -}; +use frame::{deps::sp_io, testing_prelude::*}; +use frame::traits::{BlakeTwo256, IdentityLookup, ConstU64, Everything, InsideBoth, InstanceFilter, IsInVec, SafeModeNotify}; +// use frame_support::{ +// derive_impl, parameter_types, +// traits::{ConstU64, Everything, InsideBoth, InstanceFilter, IsInVec, SafeModeNotify}, +// }; +// use frame_system::EnsureSignedBy; +// use sp_core::H256; +// use sp_runtime::{ +// traits::{BlakeTwo256, IdentityLookup}, +// BuildStorage, +// }; #[derive_impl(frame_system::config_preludes::TestDefaultConfig)] impl frame_system::Config for Test { diff --git a/substrate/frame/safe-mode/src/tests.rs b/substrate/frame/safe-mode/src/tests.rs index c0a2f45a3e7a..1118272cf81b 100644 --- a/substrate/frame/safe-mode/src/tests.rs +++ b/substrate/frame/safe-mode/src/tests.rs @@ -22,8 +22,7 @@ use super::*; use crate::mock::{RuntimeCall, *}; -use frame_support::{assert_err, assert_noop, assert_ok, hypothetically_ok, traits::Currency}; -use sp_runtime::traits::Dispatchable; +use frame::{deps::frame_support::hypothetically_ok, testing_prelude::*, traits::Currency}; #[test] fn fails_to_filter_calls_to_safe_mode_pallet() { diff --git a/substrate/frame/safe-mode/src/weights.rs b/substrate/frame/safe-mode/src/weights.rs index 631853b19462..04169ec16f39 100644 --- a/substrate/frame/safe-mode/src/weights.rs +++ b/substrate/frame/safe-mode/src/weights.rs @@ -46,7 +46,7 @@ #![allow(unused_imports)] #![allow(missing_docs)] -use frame_support::{traits::Get, weights::{Weight, constants::RocksDbWeight}}; +use frame::weights_prelude::*; use core::marker::PhantomData; /// Weight functions needed for `pallet_safe_mode`. From 00f453966afc7d7210f9d5417cac310d57d5a1ba Mon Sep 17 00:00:00 2001 From: Krayt78 Date: Sun, 5 Jan 2025 18:12:00 +0100 Subject: [PATCH 03/10] fmt + fix for defensive macro --- substrate/frame/safe-mode/src/benchmarking.rs | 7 +++++-- substrate/frame/safe-mode/src/lib.rs | 3 +++ substrate/frame/safe-mode/src/mock.rs | 10 ++++++++-- 3 files changed, 16 insertions(+), 4 deletions(-) diff --git a/substrate/frame/safe-mode/src/benchmarking.rs b/substrate/frame/safe-mode/src/benchmarking.rs index 8836fe70e7c7..f3e87d97d353 100644 --- a/substrate/frame/safe-mode/src/benchmarking.rs +++ b/substrate/frame/safe-mode/src/benchmarking.rs @@ -19,8 +19,11 @@ use super::{Pallet as SafeMode, *}; -use frame::{benchmarking::prelude::*, traits::UnfilteredDispatchable}; -use frame::deps::frame_system::{Pallet as System, RawOrigin}; +use frame::{ + benchmarking::prelude::*, + deps::frame_system::{Pallet as System, RawOrigin}, + traits::UnfilteredDispatchable, +}; #[benchmarks(where T::Currency: fungible::Mutate)] mod benchmarks { diff --git a/substrate/frame/safe-mode/src/lib.rs b/substrate/frame/safe-mode/src/lib.rs index a29a7cac71a7..4d0e62f45e98 100644 --- a/substrate/frame/safe-mode/src/lib.rs +++ b/substrate/frame/safe-mode/src/lib.rs @@ -76,6 +76,9 @@ mod tests; pub mod weights; use frame::{ + // This is here because of the defensive! macro, can be removed once the macro is changed to + // not require frame_support + deps::frame_support, prelude::*, traits::{ fungible::{ diff --git a/substrate/frame/safe-mode/src/mock.rs b/substrate/frame/safe-mode/src/mock.rs index d05ddee34015..6e6e39ff6744 100644 --- a/substrate/frame/safe-mode/src/mock.rs +++ b/substrate/frame/safe-mode/src/mock.rs @@ -22,8 +22,14 @@ use super::*; use crate as pallet_safe_mode; -use frame::{deps::sp_io, testing_prelude::*}; -use frame::traits::{BlakeTwo256, IdentityLookup, ConstU64, Everything, InsideBoth, InstanceFilter, IsInVec, SafeModeNotify}; +use frame::{ + deps::sp_io, + testing_prelude::*, + traits::{ + BlakeTwo256, ConstU64, Everything, IdentityLookup, InsideBoth, InstanceFilter, IsInVec, + SafeModeNotify, + }, +}; // use frame_support::{ // derive_impl, parameter_types, // traits::{ConstU64, Everything, InsideBoth, InstanceFilter, IsInVec, SafeModeNotify}, From 6485403aac8fce3fec71a203e664b5834e217f30 Mon Sep 17 00:00:00 2001 From: Krayt78 Date: Sun, 5 Jan 2025 18:18:21 +0100 Subject: [PATCH 04/10] removed useless dep --- substrate/frame/safe-mode/src/mock.rs | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/substrate/frame/safe-mode/src/mock.rs b/substrate/frame/safe-mode/src/mock.rs index 6e6e39ff6744..2d9535793279 100644 --- a/substrate/frame/safe-mode/src/mock.rs +++ b/substrate/frame/safe-mode/src/mock.rs @@ -23,7 +23,6 @@ use super::*; use crate as pallet_safe_mode; use frame::{ - deps::sp_io, testing_prelude::*, traits::{ BlakeTwo256, ConstU64, Everything, IdentityLookup, InsideBoth, InstanceFilter, IsInVec, @@ -234,7 +233,7 @@ frame_support::construct_runtime!( pub const BAL_ACC0: u64 = 1234; pub const BAL_ACC1: u64 = 5678; -pub fn new_test_ext() -> sp_io::TestExternalities { +pub fn new_test_ext() -> TestExternalities { let mut t = frame_system::GenesisConfig::::default().build_storage().unwrap(); pallet_balances::GenesisConfig:: { @@ -247,7 +246,7 @@ pub fn new_test_ext() -> sp_io::TestExternalities { .assimilate_storage(&mut t) .unwrap(); - let mut ext = sp_io::TestExternalities::new(t); + let mut ext = TestExternalities::new(t); ext.execute_with(|| { System::set_block_number(1); }); From 4c75ea241f6df6fa722258a1a186abb8e10c5795 Mon Sep 17 00:00:00 2001 From: Krayt78 Date: Sun, 5 Jan 2025 18:35:37 +0100 Subject: [PATCH 05/10] removed deps --- substrate/frame/safe-mode/src/benchmarking.rs | 36 +++++++++---------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/substrate/frame/safe-mode/src/benchmarking.rs b/substrate/frame/safe-mode/src/benchmarking.rs index f3e87d97d353..9488941cb339 100644 --- a/substrate/frame/safe-mode/src/benchmarking.rs +++ b/substrate/frame/safe-mode/src/benchmarking.rs @@ -18,12 +18,7 @@ #![cfg(feature = "runtime-benchmarks")] use super::{Pallet as SafeMode, *}; - -use frame::{ - benchmarking::prelude::*, - deps::frame_system::{Pallet as System, RawOrigin}, - traits::UnfilteredDispatchable, -}; +use frame::{benchmarking::prelude::*, traits::UnfilteredDispatchable}; #[benchmarks(where T::Currency: fungible::Mutate)] mod benchmarks { @@ -66,7 +61,7 @@ mod benchmarks { assert_eq!( EnteredUntil::::get().unwrap(), - System::::block_number() + T::EnterDuration::get() + frame_system::Pallet::::block_number() + T::EnterDuration::get() ); Ok(()) } @@ -82,7 +77,10 @@ mod benchmarks { #[extrinsic_call] _(force_origin as T::RuntimeOrigin); - assert_eq!(EnteredUntil::::get().unwrap(), System::::block_number() + duration); + assert_eq!( + EnteredUntil::::get().unwrap(), + frame_system::Pallet::::block_number() + duration + ); Ok(()) } @@ -94,7 +92,7 @@ mod benchmarks { let alice: T::AccountId = whitelisted_caller(); >::set_balance(&alice, init_bal::()); - System::::set_block_number(1u32.into()); + frame_system::Pallet::::set_block_number(1u32.into()); assert!(SafeMode::::do_enter(None, 1u32.into()).is_ok()); #[extrinsic_call] @@ -102,7 +100,7 @@ mod benchmarks { assert_eq!( EnteredUntil::::get().unwrap(), - System::::block_number() + 1u32.into() + T::ExtendDuration::get() + frame_system::Pallet::::block_number() + 1u32.into() + T::ExtendDuration::get() ); Ok(()) } @@ -113,7 +111,7 @@ mod benchmarks { let force_origin = T::ForceExtendOrigin::try_successful_origin() .map_err(|_| BenchmarkError::Weightless)?; - System::::set_block_number(1u32.into()); + frame_system::Pallet::::set_block_number(1u32.into()); assert!(SafeMode::::do_enter(None, 1u32.into()).is_ok()); let duration = T::ForceExtendOrigin::ensure_origin(force_origin.clone()).unwrap(); @@ -126,7 +124,7 @@ mod benchmarks { assert_eq!( EnteredUntil::::get().unwrap(), - System::::block_number() + 1u32.into() + duration + frame_system::Pallet::::block_number() + 1u32.into() + duration ); Ok(()) } @@ -162,9 +160,9 @@ mod benchmarks { EnteredUntil::::put(&block); assert!(SafeMode::::do_exit(ExitReason::Force).is_ok()); - System::::set_block_number(delay + One::one() + 2u32.into()); - System::::on_initialize(System::::block_number()); - SafeMode::::on_initialize(System::::block_number()); + frame_system::Pallet::::set_block_number(delay + One::one() + 2u32.into()); + frame_system::Pallet::::on_initialize(frame_system::Pallet::::block_number()); + SafeMode::::on_initialize(frame_system::Pallet::::block_number()); #[extrinsic_call] _(origin, alice.clone(), 1u32.into()); @@ -196,9 +194,11 @@ mod benchmarks { ); assert!(SafeMode::::do_exit(ExitReason::Force).is_ok()); - System::::set_block_number(System::::block_number() + One::one()); - System::::on_initialize(System::::block_number()); - SafeMode::::on_initialize(System::::block_number()); + frame_system::Pallet::::set_block_number( + frame_system::Pallet::::block_number() + One::one(), + ); + frame_system::Pallet::::on_initialize(frame_system::Pallet::::block_number()); + SafeMode::::on_initialize(frame_system::Pallet::::block_number()); #[extrinsic_call] _(force_origin as T::RuntimeOrigin, alice.clone(), block); From 87127e544daa65f19c7748cf678d0feccee02847 Mon Sep 17 00:00:00 2001 From: Krayt78 Date: Sun, 5 Jan 2025 18:43:25 +0100 Subject: [PATCH 06/10] removed deps from toml --- Cargo.lock | 3 --- substrate/frame/safe-mode/Cargo.toml | 3 --- 2 files changed, 6 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 3b5bad8037aa..494453dc1c3c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -14929,15 +14929,12 @@ name = "pallet-safe-mode" version = "9.0.0" dependencies = [ "docify", - "frame-support 28.0.0", "pallet-balances 28.0.0", "pallet-proxy 28.0.0", "pallet-utility 28.0.0", "parity-scale-codec", "polkadot-sdk-frame 0.1.0", "scale-info", - "sp-core 28.0.0", - "sp-io 30.0.0", ] [[package]] diff --git a/substrate/frame/safe-mode/Cargo.toml b/substrate/frame/safe-mode/Cargo.toml index a78905f90011..ab3ab8aae65f 100644 --- a/substrate/frame/safe-mode/Cargo.toml +++ b/substrate/frame/safe-mode/Cargo.toml @@ -24,12 +24,9 @@ pallet-utility = { optional = true, workspace = true } pallet-proxy = { optional = true, workspace = true } [dev-dependencies] -sp-core = { workspace = true, default-features = true } -sp-io = { workspace = true, default-features = true } pallet-balances = { workspace = true, default-features = true } pallet-utility = { workspace = true, default-features = true } pallet-proxy = { workspace = true, default-features = true } -frame-support = { features = ["experimental"], workspace = true, default-features = true } [features] default = ["std"] From 76bbeac5834fafdc30f4152f547d206a890a7300 Mon Sep 17 00:00:00 2001 From: Krayt78 Date: Mon, 6 Jan 2025 12:50:54 +0100 Subject: [PATCH 07/10] removed useless deps --- substrate/frame/safe-mode/src/lib.rs | 2 +- substrate/frame/safe-mode/src/mock.rs | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/substrate/frame/safe-mode/src/lib.rs b/substrate/frame/safe-mode/src/lib.rs index 4d0e62f45e98..7bf9e9bcab32 100644 --- a/substrate/frame/safe-mode/src/lib.rs +++ b/substrate/frame/safe-mode/src/lib.rs @@ -86,7 +86,7 @@ use frame::{ hold::{Inspect, Mutate}, }, tokens::{Fortitude, Precision}, - CallMetadata, Contains, Defensive, GetCallMetadata, PalletInfoAccess, SafeModeNotify, + CallMetadata, GetCallMetadata, SafeModeNotify, Defensive, }, }; diff --git a/substrate/frame/safe-mode/src/mock.rs b/substrate/frame/safe-mode/src/mock.rs index 2d9535793279..bb9137c29de8 100644 --- a/substrate/frame/safe-mode/src/mock.rs +++ b/substrate/frame/safe-mode/src/mock.rs @@ -25,8 +25,7 @@ use crate as pallet_safe_mode; use frame::{ testing_prelude::*, traits::{ - BlakeTwo256, ConstU64, Everything, IdentityLookup, InsideBoth, InstanceFilter, IsInVec, - SafeModeNotify, + Everything, IdentityLookup, InsideBoth, InstanceFilter, IsInVec, }, }; // use frame_support::{ From 3104420bc4cc1951743657ec2e221504359df42d Mon Sep 17 00:00:00 2001 From: Krayt78 Date: Mon, 6 Jan 2025 13:00:11 +0100 Subject: [PATCH 08/10] fmt --- substrate/frame/safe-mode/src/lib.rs | 2 +- substrate/frame/safe-mode/src/mock.rs | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/substrate/frame/safe-mode/src/lib.rs b/substrate/frame/safe-mode/src/lib.rs index 7bf9e9bcab32..bb5517050062 100644 --- a/substrate/frame/safe-mode/src/lib.rs +++ b/substrate/frame/safe-mode/src/lib.rs @@ -86,7 +86,7 @@ use frame::{ hold::{Inspect, Mutate}, }, tokens::{Fortitude, Precision}, - CallMetadata, GetCallMetadata, SafeModeNotify, Defensive, + CallMetadata, Defensive, GetCallMetadata, SafeModeNotify, }, }; diff --git a/substrate/frame/safe-mode/src/mock.rs b/substrate/frame/safe-mode/src/mock.rs index 4bf3cb682357..20e917f70046 100644 --- a/substrate/frame/safe-mode/src/mock.rs +++ b/substrate/frame/safe-mode/src/mock.rs @@ -24,9 +24,7 @@ use crate as pallet_safe_mode; use frame::{ testing_prelude::*, - traits::{ - Everything, IdentityLookup, InsideBoth, InstanceFilter, IsInVec, - }, + traits::{Everything, IdentityLookup, InsideBoth, InstanceFilter, IsInVec}, }; // use frame_support::{ // derive_impl, parameter_types, From 0f8caa4cc82169a7c744a57b9f3ffd412781cf05 Mon Sep 17 00:00:00 2001 From: Krayt78 Date: Tue, 7 Jan 2025 17:31:39 +0100 Subject: [PATCH 09/10] moved deps to umbrella --- substrate/frame/safe-mode/src/benchmarking.rs | 2 +- substrate/frame/safe-mode/src/lib.rs | 12 +----------- substrate/frame/safe-mode/src/mock.rs | 18 ++++-------------- substrate/frame/src/lib.rs | 11 ++++++++--- 4 files changed, 14 insertions(+), 29 deletions(-) diff --git a/substrate/frame/safe-mode/src/benchmarking.rs b/substrate/frame/safe-mode/src/benchmarking.rs index 9488941cb339..cc0b55e6f378 100644 --- a/substrate/frame/safe-mode/src/benchmarking.rs +++ b/substrate/frame/safe-mode/src/benchmarking.rs @@ -18,7 +18,7 @@ #![cfg(feature = "runtime-benchmarks")] use super::{Pallet as SafeMode, *}; -use frame::{benchmarking::prelude::*, traits::UnfilteredDispatchable}; +use frame::benchmarking::prelude::*; #[benchmarks(where T::Currency: fungible::Mutate)] mod benchmarks { diff --git a/substrate/frame/safe-mode/src/lib.rs b/substrate/frame/safe-mode/src/lib.rs index bb5517050062..74a616277626 100644 --- a/substrate/frame/safe-mode/src/lib.rs +++ b/substrate/frame/safe-mode/src/lib.rs @@ -76,18 +76,8 @@ mod tests; pub mod weights; use frame::{ - // This is here because of the defensive! macro, can be removed once the macro is changed to - // not require frame_support - deps::frame_support, prelude::*, - traits::{ - fungible::{ - self, - hold::{Inspect, Mutate}, - }, - tokens::{Fortitude, Precision}, - CallMetadata, Defensive, GetCallMetadata, SafeModeNotify, - }, + traits::{fungible, CallMetadata, GetCallMetadata, SafeModeNotify}, }; pub use pallet::*; diff --git a/substrate/frame/safe-mode/src/mock.rs b/substrate/frame/safe-mode/src/mock.rs index 20e917f70046..778b6d13866c 100644 --- a/substrate/frame/safe-mode/src/mock.rs +++ b/substrate/frame/safe-mode/src/mock.rs @@ -24,18 +24,8 @@ use crate as pallet_safe_mode; use frame::{ testing_prelude::*, - traits::{Everything, IdentityLookup, InsideBoth, InstanceFilter, IsInVec}, + traits::{InsideBoth, InstanceFilter, IsInVec}, }; -// use frame_support::{ -// derive_impl, parameter_types, -// traits::{ConstU64, Everything, InsideBoth, InstanceFilter, IsInVec, SafeModeNotify}, -// }; -// use frame_system::EnsureSignedBy; -// use sp_core::H256; -// use sp_runtime::{ -// traits::{BlakeTwo256, IdentityLookup}, -// BuildStorage, -// }; #[derive_impl(frame_system::config_preludes::TestDefaultConfig)] impl frame_system::Config for Test { @@ -60,7 +50,7 @@ impl frame_system::Config for Test { type SystemWeightInfo = (); type SS58Prefix = (); type OnSetCode = (); - type MaxConsumers = frame_support::traits::ConstU32<16>; + type MaxConsumers = ConstU32<16>; } /// Identifies a hold on an account's balance. @@ -192,7 +182,7 @@ impl SafeModeNotify for MockedNotify { } } -frame_support::ord_parameter_types! { +ord_parameter_types! { pub const ForceExitOrigin: u64 = 100; pub const ForceDepositOrigin: u64 = 200; } @@ -217,7 +207,7 @@ impl Config for Test { type Block = frame_system::mocking::MockBlock; -frame_support::construct_runtime!( +construct_runtime!( pub enum Test { System: frame_system, diff --git a/substrate/frame/src/lib.rs b/substrate/frame/src/lib.rs index 15601ebde1f2..427e81795584 100644 --- a/substrate/frame/src/lib.rs +++ b/substrate/frame/src/lib.rs @@ -204,7 +204,10 @@ pub mod prelude { #[doc(no_inline)] pub use frame_support::dispatch::{GetDispatchInfo, PostDispatchInfo}; pub use frame_support::traits::{ - Contains, EstimateNextSessionRotation, IsSubType, OnRuntimeUpgrade, OneSessionHandler, + fungible::hold::{Inspect, Mutate}, + tokens::{Fortitude, Precision}, + Contains, Defensive, EstimateNextSessionRotation, IsSubType, OnRuntimeUpgrade, + OneSessionHandler, UnfilteredDispatchable, }; /// Pallet prelude of `frame-system`. @@ -228,8 +231,8 @@ pub mod prelude { /// Runtime traits #[doc(no_inline)] pub use sp_runtime::traits::{ - BlockNumberProvider, Bounded, DispatchInfoOf, Dispatchable, SaturatedConversion, - Saturating, StaticLookup, TrailingZeroInput, + BlockNumberProvider, Bounded, DispatchInfoOf, Dispatchable, IdentityLookup, + SaturatedConversion, Saturating, StaticLookup, TrailingZeroInput, }; /// Other runtime types and traits @@ -322,6 +325,8 @@ pub mod testing_prelude { assert_storage_noop, storage_alias, }; + pub use frame_support::traits::Everything; + pub use frame_system::{self, mocking::*}; #[deprecated(note = "Use `frame::testing_prelude::TestExternalities` instead.")] From 77ccc2d97cef656a0404e2b76713f70fd9e6c3ba Mon Sep 17 00:00:00 2001 From: Krayt78 Date: Sun, 26 Jan 2025 08:22:29 +0100 Subject: [PATCH 10/10] rem experimental and refactored some more --- substrate/frame/safe-mode/Cargo.toml | 8 ++++---- substrate/frame/safe-mode/src/lib.rs | 5 ++++- substrate/frame/safe-mode/src/tests.rs | 2 +- substrate/frame/src/lib.rs | 18 +++++++++++------- 4 files changed, 20 insertions(+), 13 deletions(-) diff --git a/substrate/frame/safe-mode/Cargo.toml b/substrate/frame/safe-mode/Cargo.toml index ab3ab8aae65f..9e1332101911 100644 --- a/substrate/frame/safe-mode/Cargo.toml +++ b/substrate/frame/safe-mode/Cargo.toml @@ -17,16 +17,16 @@ targets = ["x86_64-unknown-linux-gnu"] [dependencies] codec = { features = ["derive"], workspace = true } docify = { workspace = true } -frame = { workspace = true, features = ["experimental", "runtime"] } -scale-info = { features = ["derive"], workspace = true } +frame = { workspace = true, features = ["runtime"] } pallet-balances = { optional = true, workspace = true } -pallet-utility = { optional = true, workspace = true } pallet-proxy = { optional = true, workspace = true } +pallet-utility = { optional = true, workspace = true } +scale-info = { features = ["derive"], workspace = true } [dev-dependencies] pallet-balances = { workspace = true, default-features = true } -pallet-utility = { workspace = true, default-features = true } pallet-proxy = { workspace = true, default-features = true } +pallet-utility = { workspace = true, default-features = true } [features] default = ["std"] diff --git a/substrate/frame/safe-mode/src/lib.rs b/substrate/frame/safe-mode/src/lib.rs index 74a616277626..b83f5a5ebab0 100644 --- a/substrate/frame/safe-mode/src/lib.rs +++ b/substrate/frame/safe-mode/src/lib.rs @@ -76,7 +76,10 @@ mod tests; pub mod weights; use frame::{ - prelude::*, + prelude::{ + fungible::hold::{Inspect, Mutate}, + *, + }, traits::{fungible, CallMetadata, GetCallMetadata, SafeModeNotify}, }; diff --git a/substrate/frame/safe-mode/src/tests.rs b/substrate/frame/safe-mode/src/tests.rs index 1118272cf81b..ec9d7f1a71da 100644 --- a/substrate/frame/safe-mode/src/tests.rs +++ b/substrate/frame/safe-mode/src/tests.rs @@ -22,7 +22,7 @@ use super::*; use crate::mock::{RuntimeCall, *}; -use frame::{deps::frame_support::hypothetically_ok, testing_prelude::*, traits::Currency}; +use frame::{testing_prelude::*, traits::Currency}; #[test] fn fails_to_filter_calls_to_safe_mode_pallet() { diff --git a/substrate/frame/src/lib.rs b/substrate/frame/src/lib.rs index ab845ab1134d..67d03318cd50 100644 --- a/substrate/frame/src/lib.rs +++ b/substrate/frame/src/lib.rs @@ -203,13 +203,15 @@ pub mod prelude { #[doc(no_inline)] pub use frame_support::dispatch::{GetDispatchInfo, PostDispatchInfo}; pub use frame_support::traits::{ - fungible::hold::{Inspect, Mutate}, tokens::{Fortitude, Precision}, - Contains, EitherOf, EstimateNextSessionRotation, Everything, IsSubType, MapSuccess, - NoOpPoll, OnRuntimeUpgrade, OneSessionHandler, RankedMembers, RankedMembersSwapHandler, - VariantCount, VariantCountOf, + Contains, Defensive, EitherOf, EstimateNextSessionRotation, Everything, IsSubType, + MapSuccess, NoOpPoll, OnRuntimeUpgrade, OneSessionHandler, RankedMembers, + RankedMembersSwapHandler, VariantCount, VariantCountOf, }; + // Reexport the entire `fungible` and `fungibles` modules to avoid conflicts. + pub use frame_support::traits::{fungible, fungibles}; + /// Pallet prelude of `frame-system`. #[doc(no_inline)] pub use frame_system::pallet_prelude::*; @@ -234,8 +236,9 @@ pub mod prelude { /// Runtime traits #[doc(no_inline)] pub use sp_runtime::traits::{ - BlockNumberProvider, Bounded, Convert, DispatchInfoOf, Dispatchable, ReduceBy, - ReplaceWithDefault, IdentityLookup, SaturatedConversion, Saturating, StaticLookup, TrailingZeroInput, + BlockNumberProvider, Bounded, Convert, DispatchInfoOf, Dispatchable, IdentityLookup, + ReduceBy, ReplaceWithDefault, SaturatedConversion, Saturating, StaticLookup, + TrailingZeroInput, }; /// Bounded storage related types. @@ -286,6 +289,7 @@ pub mod benchmarking { pub use super::shared::*; pub use crate::prelude::*; pub use frame_benchmarking::v2::*; + pub use frame_support::traits::UnfilteredDispatchable; } } @@ -328,7 +332,7 @@ pub mod testing_prelude { /// Other helper macros from `frame_support` that help with asserting in tests. pub use frame_support::{ assert_err, assert_err_ignore_postinfo, assert_error_encoded_size, assert_noop, assert_ok, - assert_storage_noop, ensure, hypothetically, storage_alias, + assert_storage_noop, ensure, hypothetically, hypothetically_ok, storage_alias, }; pub use frame_support::traits::Everything;