diff --git a/Cargo.lock b/Cargo.lock index b0fb0586be3873672536625fc8e31e2348afef40..ef0eb9f7e3dddd285bb7f0c5b211ee8723b59617 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -7716,7 +7716,6 @@ dependencies = [ "sp-externalities 0.25.0", "sp-io 30.0.0", "sp-runtime 31.0.1", - "sp-std 14.0.0", "sp-version 29.0.0", "sp-weights 27.0.0", "substrate-test-runtime-client", @@ -12371,7 +12370,6 @@ dependencies = [ "pallet-staking 28.0.0", "sp-core 28.0.0", "sp-runtime 31.0.1", - "sp-std 14.0.0", "sp-storage 19.0.0", "sp-tracing 16.0.0", ] @@ -12967,7 +12965,6 @@ dependencies = [ "sp-io 30.0.0", "sp-keystore 0.34.0", "sp-runtime 31.0.1", - "sp-std 14.0.0", "sp-tracing 16.0.0", "staging-xcm 7.0.0", "staging-xcm-builder 7.0.0", @@ -13352,7 +13349,6 @@ dependencies = [ "sp-npos-elections 26.0.0", "sp-runtime 31.0.1", "sp-staking 26.0.0", - "sp-std 14.0.0", "sp-tracing 16.0.0", ] @@ -14157,7 +14153,6 @@ dependencies = [ "sp-core 28.0.0", "sp-io 30.0.0", "sp-runtime 31.0.1", - "sp-std 14.0.0", ] [[package]] @@ -14432,7 +14427,6 @@ dependencies = [ "sp-io 30.0.0", "sp-runtime 31.0.1", "sp-staking 26.0.0", - "sp-std 14.0.0", "sp-tracing 16.0.0", ] @@ -14456,7 +14450,6 @@ dependencies = [ "sp-io 30.0.0", "sp-runtime 31.0.1", "sp-staking 26.0.0", - "sp-std 14.0.0", "sp-tracing 16.0.0", ] @@ -14870,7 +14863,6 @@ dependencies = [ "sp-io 30.0.0", "sp-keystore 0.34.0", "sp-runtime 31.0.1", - "sp-std 14.0.0", "sp-tracing 16.0.0", "staging-xcm 7.0.0", "staging-xcm-builder 7.0.0", @@ -15095,7 +15087,6 @@ dependencies = [ "sp-io 30.0.0", "sp-runtime 31.0.1", "sp-staking 26.0.0", - "sp-std 14.0.0", ] [[package]] @@ -15941,7 +15932,6 @@ dependencies = [ "sp-core 28.0.0", "sp-io 30.0.0", "sp-runtime 31.0.1", - "sp-std 14.0.0", ] [[package]] @@ -23681,7 +23671,6 @@ dependencies = [ "sp-crypto-hashing 0.1.0", "sp-io 30.0.0", "sp-runtime 31.0.1", - "sp-std 14.0.0", ] [[package]] diff --git a/prdoc/pr_7043.prdoc b/prdoc/pr_7043.prdoc new file mode 100644 index 0000000000000000000000000000000000000000..d7f6cd6907c8588af8d500037d31d76b5ce59877 --- /dev/null +++ b/prdoc/pr_7043.prdoc @@ -0,0 +1,51 @@ +title: Remove usage of `sp-std` from Substrate +doc: +- audience: Runtime Dev + description: |- + # Description + + This PR removes usage of deprecated `sp-std` from Substrate. (following PR of #5010) + + ## Integration + + This PR doesn't remove re-exported `sp_std` from any crates yet, so downstream projects using re-exported `sp_std` will not be affected. + + ## Review Notes + + The existing code using `sp-std` is refactored to use `alloc` and `core` directly. The key-value maps are instantiated from an array of tuples directly instead of using `sp_std::map!` macro. + + This PR replaces `sp_std::Writer`, a helper type for using `Vec<u8>` with `core::fmt::Write` trait, with `alloc::string::String`. + +crates: +- name: pallet-contracts + bump: patch +- name: pallet-revive + bump: patch +- name: sp-runtime + bump: patch +- name: frame-support-procedural + bump: patch +- name: frame-system + bump: patch +- name: pallet-contracts-proc-macro + bump: patch +- name: pallet-revive-proc-macro + bump: patch +- name: frame-support + bump: patch +- name: sc-sysinfo + bump: patch +- name: pallet-bags-list-remote-tests + bump: patch +- name: pallet-election-provider-e2e-test + bump: patch +- name: pallet-nft-fractionalization + bump: patch +- name: pallet-nomination-pools-test-delegate-stake + bump: patch +- name: pallet-nomination-pools-test-transfer-stake + bump: patch +- name: pallet-root-offences + bump: patch +- name: pallet-uniques + bump: patch diff --git a/substrate/client/sysinfo/Cargo.toml b/substrate/client/sysinfo/Cargo.toml index c7eed77eda7f0d23afeb4ebfe94597e5f61feeff..afc464c358811191f6deaa5afe1e6fdc90d269c8 100644 --- a/substrate/client/sysinfo/Cargo.toml +++ b/substrate/client/sysinfo/Cargo.toml @@ -30,7 +30,6 @@ serde_json = { workspace = true, default-features = true } sp-core = { workspace = true, default-features = true } sp-crypto-hashing = { workspace = true, default-features = true } sp-io = { workspace = true, default-features = true } -sp-std = { workspace = true, default-features = true } [dev-dependencies] sp-runtime = { workspace = true, default-features = true } diff --git a/substrate/frame/bags-list/remote-tests/Cargo.toml b/substrate/frame/bags-list/remote-tests/Cargo.toml index 99b203e73fb0475569ab35823cff685454b65d68..e3215803a02010e722873a39883197d466535886 100644 --- a/substrate/frame/bags-list/remote-tests/Cargo.toml +++ b/substrate/frame/bags-list/remote-tests/Cargo.toml @@ -26,7 +26,6 @@ pallet-staking = { workspace = true, default-features = true } # core sp-core = { workspace = true, default-features = true } sp-runtime = { workspace = true, default-features = true } -sp-std = { workspace = true, default-features = true } sp-storage = { workspace = true, default-features = true } sp-tracing = { workspace = true, default-features = true } diff --git a/substrate/frame/contracts/Cargo.toml b/substrate/frame/contracts/Cargo.toml index e39128639e3e06e289684ee90c7a14448ac50ce1..5784e6dd1553382e9ad2a27261243e7dd987fdf9 100644 --- a/substrate/frame/contracts/Cargo.toml +++ b/substrate/frame/contracts/Cargo.toml @@ -50,7 +50,6 @@ sp-api = { workspace = true } sp-core = { workspace = true } sp-io = { workspace = true } sp-runtime = { workspace = true } -sp-std = { workspace = true } xcm = { workspace = true } xcm-builder = { workspace = true } @@ -98,7 +97,6 @@ std = [ "sp-io/std", "sp-keystore/std", "sp-runtime/std", - "sp-std/std", "wasm-instrument?/std", "wasmi/std", "xcm-builder/std", diff --git a/substrate/frame/contracts/proc-macro/src/lib.rs b/substrate/frame/contracts/proc-macro/src/lib.rs index 4aba1d24dbd5889e925fb9bbab53cf600642ab77..5c3c34e6ef32d06a567fc2b7f1373080c66a79ca 100644 --- a/substrate/frame/contracts/proc-macro/src/lib.rs +++ b/substrate/frame/contracts/proc-macro/src/lib.rs @@ -650,10 +650,9 @@ fn expand_functions(def: &EnvDef, expand_mode: ExpandMode) -> TokenStream2 { let result = #body; if ::log::log_enabled!(target: "runtime::contracts::strace", ::log::Level::Trace) { use core::fmt::Write; - let mut w = sp_std::Writer::default(); - let _ = core::write!(&mut w, #trace_fmt_str, #( #trace_fmt_args, )* result); - let msg = core::str::from_utf8(&w.inner()).unwrap_or_default(); - ctx.ext().append_debug_buffer(msg); + let mut msg = alloc::string::String::default(); + let _ = core::write!(&mut msg, #trace_fmt_str, #( #trace_fmt_args, )* result); + ctx.ext().append_debug_buffer(&msg); } result } diff --git a/substrate/frame/contracts/src/transient_storage.rs b/substrate/frame/contracts/src/transient_storage.rs index c795a966385a92572958cf67202e4d7f5b36e85c..c9b1dac1ad75299ebb51bb3b8ca9cdbf7dc69442 100644 --- a/substrate/frame/contracts/src/transient_storage.rs +++ b/substrate/frame/contracts/src/transient_storage.rs @@ -22,11 +22,11 @@ use crate::{ storage::WriteOutcome, Config, Error, }; +use alloc::{collections::BTreeMap, vec::Vec}; use codec::Encode; -use core::marker::PhantomData; +use core::{marker::PhantomData, mem}; use frame_support::DefaultNoBound; use sp_runtime::{DispatchError, DispatchResult, Saturating}; -use sp_std::{collections::btree_map::BTreeMap, mem, vec::Vec}; /// Meter entry tracks transaction allocations. #[derive(Default, Debug)] diff --git a/substrate/frame/election-provider-multi-phase/test-staking-e2e/Cargo.toml b/substrate/frame/election-provider-multi-phase/test-staking-e2e/Cargo.toml index 5009d3d54d56dc9009a5b8ae52bb00c614372208..7a48ae868a5a2e63d6b0467753cf5ca5f8b56f2c 100644 --- a/substrate/frame/election-provider-multi-phase/test-staking-e2e/Cargo.toml +++ b/substrate/frame/election-provider-multi-phase/test-staking-e2e/Cargo.toml @@ -26,7 +26,6 @@ sp-io = { workspace = true, default-features = true } sp-npos-elections = { workspace = true } sp-runtime = { workspace = true, default-features = true } sp-staking = { workspace = true, default-features = true } -sp-std = { workspace = true, default-features = true } sp-tracing = { workspace = true, default-features = true } frame-election-provider-support = { workspace = true, default-features = true } diff --git a/substrate/frame/nft-fractionalization/Cargo.toml b/substrate/frame/nft-fractionalization/Cargo.toml index 7f6df86ed0e5779d56c48c1fa334ede9e2a12b6c..23537b2278933db7cbacaa9f490848738a5d0224 100644 --- a/substrate/frame/nft-fractionalization/Cargo.toml +++ b/substrate/frame/nft-fractionalization/Cargo.toml @@ -30,7 +30,6 @@ sp-runtime = { workspace = true } pallet-balances = { workspace = true, default-features = true } sp-core = { workspace = true, default-features = true } sp-io = { workspace = true, default-features = true } -sp-std = { workspace = true, default-features = true } [features] default = ["std"] diff --git a/substrate/frame/nomination-pools/test-delegate-stake/Cargo.toml b/substrate/frame/nomination-pools/test-delegate-stake/Cargo.toml index fe3743d7e5dac443a801ac88b8c2605c7235ac2e..62c2fb625fc4f3e1c4a7252efa7750ec263dd0e8 100644 --- a/substrate/frame/nomination-pools/test-delegate-stake/Cargo.toml +++ b/substrate/frame/nomination-pools/test-delegate-stake/Cargo.toml @@ -23,7 +23,6 @@ sp-core = { workspace = true, default-features = true } sp-io = { workspace = true, default-features = true } sp-runtime = { workspace = true, default-features = true } sp-staking = { workspace = true, default-features = true } -sp-std = { workspace = true, default-features = true } frame-election-provider-support = { workspace = true, default-features = true } frame-support = { features = ["experimental"], workspace = true, default-features = true } diff --git a/substrate/frame/nomination-pools/test-transfer-stake/Cargo.toml b/substrate/frame/nomination-pools/test-transfer-stake/Cargo.toml index 2cdc4c41a0836223c2231e2428947f560f8a1d45..0b21d5f4e8cf1e3a98e3220a17bfe7eeb0b44cc0 100644 --- a/substrate/frame/nomination-pools/test-transfer-stake/Cargo.toml +++ b/substrate/frame/nomination-pools/test-transfer-stake/Cargo.toml @@ -23,7 +23,6 @@ sp-core = { workspace = true, default-features = true } sp-io = { workspace = true, default-features = true } sp-runtime = { workspace = true, default-features = true } sp-staking = { workspace = true, default-features = true } -sp-std = { workspace = true, default-features = true } frame-election-provider-support = { workspace = true, default-features = true } frame-support = { workspace = true, default-features = true } diff --git a/substrate/frame/revive/Cargo.toml b/substrate/frame/revive/Cargo.toml index fa008f8e836a1c9eb7a4a09a9e96c92d4e829f26..1284f5ee8947b6ff8d0d6990ce45ba8710ab2711 100644 --- a/substrate/frame/revive/Cargo.toml +++ b/substrate/frame/revive/Cargo.toml @@ -46,7 +46,6 @@ sp-arithmetic = { workspace = true } sp-core = { workspace = true } sp-io = { workspace = true } sp-runtime = { workspace = true } -sp-std = { workspace = true } subxt-signer = { workspace = true, optional = true, features = [ "unstable-eth", ] } @@ -99,7 +98,6 @@ std = [ "sp-io/std", "sp-keystore/std", "sp-runtime/std", - "sp-std/std", "subxt-signer", "xcm-builder/std", "xcm/std", diff --git a/substrate/frame/revive/proc-macro/src/lib.rs b/substrate/frame/revive/proc-macro/src/lib.rs index b6ea1a06d94e878b7e67810ac8a57338aa7c91d8..b09bdef14632b937a351cea6b2968e889f2202a0 100644 --- a/substrate/frame/revive/proc-macro/src/lib.rs +++ b/substrate/frame/revive/proc-macro/src/lib.rs @@ -512,10 +512,9 @@ fn expand_functions(def: &EnvDef) -> TokenStream2 { let result = (|| #body)(); if ::log::log_enabled!(target: "runtime::revive::strace", ::log::Level::Trace) { use core::fmt::Write; - let mut w = sp_std::Writer::default(); - let _ = core::write!(&mut w, #trace_fmt_str, #( #trace_fmt_args, )* result); - let msg = core::str::from_utf8(&w.inner()).unwrap_or_default(); - self.ext().append_debug_buffer(msg); + let mut msg = alloc::string::String::default(); + let _ = core::write!(&mut msg, #trace_fmt_str, #( #trace_fmt_args, )* result); + self.ext().append_debug_buffer(&msg); } result } diff --git a/substrate/frame/revive/src/transient_storage.rs b/substrate/frame/revive/src/transient_storage.rs index 298e0296fe69e383567c951408fbf68155fc5810..d88adc4373590847a28a9ef18aaf4eba91fc38b3 100644 --- a/substrate/frame/revive/src/transient_storage.rs +++ b/substrate/frame/revive/src/transient_storage.rs @@ -22,11 +22,11 @@ use crate::{ storage::WriteOutcome, Config, Error, }; +use alloc::{collections::BTreeMap, vec::Vec}; use codec::Encode; -use core::marker::PhantomData; +use core::{marker::PhantomData, mem}; use frame_support::DefaultNoBound; use sp_runtime::{DispatchError, DispatchResult, Saturating}; -use sp_std::{collections::btree_map::BTreeMap, mem, vec::Vec}; /// Meter entry tracks transaction allocations. #[derive(Default, Debug)] diff --git a/substrate/frame/root-offences/Cargo.toml b/substrate/frame/root-offences/Cargo.toml index dedde9956b6f4c9027692809bb23a87ceefe4d5a..c539f1dc4dc10a821c4349cf539f95340a330e1e 100644 --- a/substrate/frame/root-offences/Cargo.toml +++ b/substrate/frame/root-offences/Cargo.toml @@ -34,7 +34,6 @@ pallet-timestamp = { workspace = true, default-features = true } sp-core = { workspace = true, default-features = true } sp-io = { workspace = true } -sp-std = { workspace = true, default-features = true } frame-election-provider-support = { workspace = true, default-features = true } diff --git a/substrate/frame/support/procedural/src/pallet/expand/config.rs b/substrate/frame/support/procedural/src/pallet/expand/config.rs index 0a583f1359bac9dcd7682e3c8c6a4de4eaca9ba9..d39f276723600fe7ff5ca36306800bee87c68766 100644 --- a/substrate/frame/support/procedural/src/pallet/expand/config.rs +++ b/substrate/frame/support/procedural/src/pallet/expand/config.rs @@ -126,7 +126,7 @@ pub fn expand_config_metadata(def: &Def) -> proc_macro2::TokenStream { ty: #frame_support::__private::scale_info::meta_type::< <T as Config #trait_use_gen>::#ident >(), - docs: #frame_support::__private::sp_std::vec![ #( #doc ),* ], + docs: #frame_support::__private::vec![ #( #doc ),* ], } }) }); @@ -136,9 +136,9 @@ pub fn expand_config_metadata(def: &Def) -> proc_macro2::TokenStream { #[doc(hidden)] pub fn pallet_associated_types_metadata() - -> #frame_support::__private::sp_std::vec::Vec<#frame_support::__private::metadata_ir::PalletAssociatedTypeMetadataIR> + -> #frame_support::__private::vec::Vec<#frame_support::__private::metadata_ir::PalletAssociatedTypeMetadataIR> { - #frame_support::__private::sp_std::vec![ #( #types ),* ] + #frame_support::__private::vec![ #( #types ),* ] } } ) diff --git a/substrate/frame/support/src/lib.rs b/substrate/frame/support/src/lib.rs index c64987b17d35c3994d8eb97fe6c841c09cbf7ea8..a6969260e6a26bedef86f55e7b27689978891aa7 100644 --- a/substrate/frame/support/src/lib.rs +++ b/substrate/frame/support/src/lib.rs @@ -44,6 +44,7 @@ pub mod __private { pub use alloc::{ boxed::Box, rc::Rc, + string::String, vec, vec::{IntoIter, Vec}, }; @@ -502,9 +503,9 @@ macro_rules! runtime_print { ($($arg:tt)+) => { { use core::fmt::Write; - let mut w = $crate::__private::sp_std::Writer::default(); - let _ = core::write!(&mut w, $($arg)+); - $crate::__private::sp_io::misc::print_utf8(&w.inner()) + let mut msg = $crate::__private::String::default(); + let _ = core::write!(&mut msg, $($arg)+); + $crate::__private::sp_io::misc::print_utf8(msg.as_bytes()) } } } diff --git a/substrate/frame/system/Cargo.toml b/substrate/frame/system/Cargo.toml index 1340b2c55c5323d23d0efb848f80e845c737987e..8883ebd4c41df9cfd9809253ef659ae584fe5e5e 100644 --- a/substrate/frame/system/Cargo.toml +++ b/substrate/frame/system/Cargo.toml @@ -26,7 +26,6 @@ serde = { features = ["alloc", "derive"], workspace = true } sp-core = { features = ["serde"], workspace = true } sp-io = { workspace = true } sp-runtime = { features = ["serde"], workspace = true } -sp-std = { workspace = true } sp-version = { features = ["serde"], workspace = true } sp-weights = { features = ["serde"], workspace = true } @@ -47,7 +46,6 @@ std = [ "sp-externalities/std", "sp-io/std", "sp-runtime/std", - "sp-std/std", "sp-version/std", "sp-weights/std", ] diff --git a/substrate/frame/system/src/lib.rs b/substrate/frame/system/src/lib.rs index 4fc69c8755f3c276a97c3bcb237ce7f2c2be1509..894e1898ed15523576eef010c211a3f0f79dece5 100644 --- a/substrate/frame/system/src/lib.rs +++ b/substrate/frame/system/src/lib.rs @@ -120,8 +120,6 @@ use sp_runtime::{ }, DispatchError, RuntimeDebug, }; -#[cfg(any(feature = "std", test))] -use sp_std::map; use sp_version::RuntimeVersion; use codec::{Decode, Encode, EncodeLike, FullCodec, MaxEncodedLen}; @@ -1920,12 +1918,14 @@ impl<T: Config> Pallet<T> { #[cfg(any(feature = "std", test))] pub fn externalities() -> TestExternalities { TestExternalities::new(sp_core::storage::Storage { - top: map![ - <BlockHash<T>>::hashed_key_for(BlockNumberFor::<T>::zero()) => [69u8; 32].encode(), - <Number<T>>::hashed_key().to_vec() => BlockNumberFor::<T>::one().encode(), - <ParentHash<T>>::hashed_key().to_vec() => [69u8; 32].encode() - ], - children_default: map![], + top: [ + (<BlockHash<T>>::hashed_key_for(BlockNumberFor::<T>::zero()), [69u8; 32].encode()), + (<Number<T>>::hashed_key().to_vec(), BlockNumberFor::<T>::one().encode()), + (<ParentHash<T>>::hashed_key().to_vec(), [69u8; 32].encode()), + ] + .into_iter() + .collect(), + children_default: Default::default(), }) } diff --git a/substrate/frame/uniques/Cargo.toml b/substrate/frame/uniques/Cargo.toml index 135292fb4ecd53e56ad3db4afada1bc41d440c61..a2473c51ee75cc687c4a8e8bed9f9aa7cf6fdfee 100644 --- a/substrate/frame/uniques/Cargo.toml +++ b/substrate/frame/uniques/Cargo.toml @@ -28,7 +28,6 @@ sp-runtime = { workspace = true } pallet-balances = { workspace = true, default-features = true } sp-core = { workspace = true, default-features = true } sp-io = { workspace = true, default-features = true } -sp-std = { workspace = true, default-features = true } [features] default = ["std"] diff --git a/substrate/primitives/runtime/src/generic/unchecked_extrinsic.rs b/substrate/primitives/runtime/src/generic/unchecked_extrinsic.rs index d8510a60a78938e70c5f6d954a58ea5de60d5154..6b8471f848466e7c1d7efa8e534c3a9af3b1887b 100644 --- a/substrate/primitives/runtime/src/generic/unchecked_extrinsic.rs +++ b/substrate/primitives/runtime/src/generic/unchecked_extrinsic.rs @@ -683,7 +683,7 @@ mod legacy { Extra: Encode, { fn encode(&self) -> Vec<u8> { - let mut tmp = Vec::with_capacity(sp_std::mem::size_of::<Self>()); + let mut tmp = Vec::with_capacity(core::mem::size_of::<Self>()); // 1 byte version id. match self.signature.as_ref() { diff --git a/substrate/primitives/runtime/src/proving_trie/base16.rs b/substrate/primitives/runtime/src/proving_trie/base16.rs index da05c551c6d9478fd393a9daefdc2398c662cbae..abdf6ed178bb8fbd7f4b89c24cf638ddf364515d 100644 --- a/substrate/primitives/runtime/src/proving_trie/base16.rs +++ b/substrate/primitives/runtime/src/proving_trie/base16.rs @@ -26,8 +26,8 @@ use super::{ProofToHashes, ProvingTrie, TrieError}; use crate::{Decode, DispatchError, Encode}; +use alloc::vec::Vec; use codec::MaxEncodedLen; -use sp_std::vec::Vec; use sp_trie::{ trie_types::{TrieDBBuilder, TrieDBMutBuilderV1}, LayoutV1, MemoryDB, Trie, TrieMut, @@ -197,7 +197,7 @@ mod tests { use super::*; use crate::traits::BlakeTwo256; use sp_core::H256; - use sp_std::collections::btree_map::BTreeMap; + use std::collections::BTreeMap; // A trie which simulates a trie of accounts (u32) and balances (u128). type BalanceTrie = BasicProvingTrie<BlakeTwo256, u32, u128>; diff --git a/substrate/primitives/runtime/src/proving_trie/base2.rs b/substrate/primitives/runtime/src/proving_trie/base2.rs index 2b14a59ab056c87dca2352a7824b9f740945e897..8a7cfaa5149df9e5a78fd60f285eecb7022141cf 100644 --- a/substrate/primitives/runtime/src/proving_trie/base2.rs +++ b/substrate/primitives/runtime/src/proving_trie/base2.rs @@ -22,9 +22,9 @@ use super::{ProofToHashes, ProvingTrie, TrieError}; use crate::{Decode, DispatchError, Encode}; +use alloc::{collections::BTreeMap, vec::Vec}; use binary_merkle_tree::{merkle_proof, merkle_root, MerkleProof}; use codec::MaxEncodedLen; -use sp_std::{collections::btree_map::BTreeMap, vec::Vec}; /// A helper structure for building a basic base-2 merkle trie and creating compact proofs for that /// trie. @@ -161,7 +161,7 @@ mod tests { use super::*; use crate::traits::BlakeTwo256; use sp_core::H256; - use sp_std::collections::btree_map::BTreeMap; + use std::collections::BTreeMap; // A trie which simulates a trie of accounts (u32) and balances (u128). type BalanceTrie = BasicProvingTrie<BlakeTwo256, u32, u128>; diff --git a/substrate/primitives/runtime/src/proving_trie/mod.rs b/substrate/primitives/runtime/src/proving_trie/mod.rs index 009aa6d4935fd9231c57a5425365bebdc72411c1..32b2284b4d79d9e7481e8231cda3dfa454c84ffc 100644 --- a/substrate/primitives/runtime/src/proving_trie/mod.rs +++ b/substrate/primitives/runtime/src/proving_trie/mod.rs @@ -23,7 +23,7 @@ pub mod base2; use crate::{Decode, DispatchError, Encode, MaxEncodedLen, TypeInfo}; #[cfg(feature = "serde")] use crate::{Deserialize, Serialize}; -use sp_std::vec::Vec; +use alloc::vec::Vec; use sp_trie::{trie_types::TrieError as SpTrieError, VerifyError}; /// A runtime friendly error type for tries. diff --git a/substrate/primitives/runtime/src/runtime_logger.rs b/substrate/primitives/runtime/src/runtime_logger.rs index 79984b13567250fe7c513c84f28e1276d1cc7ec8..ec5251d978f13a6f5dc39086bf875b1a96fcb85a 100644 --- a/substrate/primitives/runtime/src/runtime_logger.rs +++ b/substrate/primitives/runtime/src/runtime_logger.rs @@ -54,10 +54,10 @@ impl log::Log for RuntimeLogger { fn log(&self, record: &log::Record) { use core::fmt::Write; - let mut w = sp_std::Writer::default(); - let _ = ::core::write!(&mut w, "{}", record.args()); + let mut msg = alloc::string::String::default(); + let _ = ::core::write!(&mut msg, "{}", record.args()); - sp_io::logging::log(record.level().into(), record.target(), w.inner()); + sp_io::logging::log(record.level().into(), record.target(), msg.as_bytes()); } fn flush(&self) {} diff --git a/substrate/primitives/runtime/src/traits/mod.rs b/substrate/primitives/runtime/src/traits/mod.rs index d371152dc40a48b774588af588a4ec160249426a..5b6cacc7e008a03bc66eb57375c723742ffdd4e1 100644 --- a/substrate/primitives/runtime/src/traits/mod.rs +++ b/substrate/primitives/runtime/src/traits/mod.rs @@ -1710,7 +1710,7 @@ pub trait SignedExtension: /// This method provides a default implementation that returns a vec containing a single /// [`TransactionExtensionMetadata`]. fn metadata() -> Vec<TransactionExtensionMetadata> { - sp_std::vec![TransactionExtensionMetadata { + alloc::vec![TransactionExtensionMetadata { identifier: Self::IDENTIFIER, ty: scale_info::meta_type::<Self>(), implicit: scale_info::meta_type::<Self::AdditionalSigned>() diff --git a/substrate/primitives/runtime/src/traits/transaction_extension/mod.rs b/substrate/primitives/runtime/src/traits/transaction_extension/mod.rs index 4d95e5e6f3a4f03602a83a4dd3152c3430f311c4..15be1e4c8e0a23bdd8f2dec892a3ad3f07808222 100644 --- a/substrate/primitives/runtime/src/traits/transaction_extension/mod.rs +++ b/substrate/primitives/runtime/src/traits/transaction_extension/mod.rs @@ -24,11 +24,12 @@ use crate::{ }, DispatchResult, }; +use alloc::vec::Vec; use codec::{Codec, Decode, Encode}; -use impl_trait_for_tuples::impl_for_tuples; +use core::fmt::Debug; #[doc(hidden)] -pub use sp_std::marker::PhantomData; -use sp_std::{self, fmt::Debug, prelude::*}; +pub use core::marker::PhantomData; +use impl_trait_for_tuples::impl_for_tuples; use sp_weights::Weight; use tuplex::{PopFront, PushBack}; @@ -258,7 +259,7 @@ pub trait TransactionExtension<Call: Dispatchable>: /// This method provides a default implementation that returns a vec containing a single /// [`TransactionExtensionMetadata`]. fn metadata() -> Vec<TransactionExtensionMetadata> { - sp_std::vec![TransactionExtensionMetadata { + alloc::vec![TransactionExtensionMetadata { identifier: Self::IDENTIFIER, ty: scale_info::meta_type::<Self>(), implicit: scale_info::meta_type::<Self::Implicit>() @@ -668,7 +669,7 @@ impl<Call: Dispatchable> TransactionExtension<Call> for Tuple { impl<Call: Dispatchable> TransactionExtension<Call> for () { const IDENTIFIER: &'static str = "UnitTransactionExtension"; type Implicit = (); - fn implicit(&self) -> sp_std::result::Result<Self::Implicit, TransactionValidityError> { + fn implicit(&self) -> core::result::Result<Self::Implicit, TransactionValidityError> { Ok(()) } type Val = ();