From 41c84b0b41b5599ac20eedeffcfa148ac00053bd Mon Sep 17 00:00:00 2001
From: Qinxuan Chen <koushiro.cqx@gmail.com>
Date: Mon, 4 Apr 2022 03:44:29 +0800
Subject: [PATCH] Remove useless imports (#11136)

Because `TryInto`/`TryFrom` are in prelude by default from edition 2021

Signed-off-by: koushiro <koushiro.cqx@gmail.com>
---
 substrate/bin/node/cli/src/service.rs                 |  2 +-
 substrate/bin/node/cli/tests/common.rs                |  1 -
 .../node/cli/tests/running_the_node_and_interrupt.rs  |  5 +----
 substrate/bin/node/cli/tests/telemetry.rs             |  2 +-
 substrate/bin/node/cli/tests/temp_base_path_works.rs  |  1 -
 substrate/client/allocator/src/freeing_bump.rs        |  1 -
 substrate/client/api/src/client.rs                    |  2 +-
 substrate/client/authority-discovery/src/worker.rs    | 10 +++-------
 substrate/client/beefy/src/keystore.rs                |  2 --
 substrate/client/cli/src/commands/insert_key.rs       |  2 +-
 substrate/client/cli/src/commands/utils.rs            |  2 +-
 substrate/client/cli/src/commands/verify.rs           |  2 +-
 substrate/client/cli/src/error.rs                     |  6 +++---
 substrate/client/cli/src/params/mod.rs                |  2 +-
 substrate/client/consensus/aura/src/lib.rs            | 11 ++---------
 substrate/client/consensus/babe/src/lib.rs            |  3 +--
 substrate/client/consensus/manual-seal/src/error.rs   |  2 +-
 substrate/client/consensus/pow/src/lib.rs             |  4 ++--
 substrate/client/db/src/utils.rs                      |  2 +-
 .../executor/common/src/sandbox/wasmer_backend.rs     |  2 +-
 substrate/client/finality-grandpa/rpc/src/lib.rs      |  2 +-
 substrate/client/informant/src/display.rs             |  6 +-----
 substrate/client/network-gossip/src/bridge.rs         |  1 -
 substrate/client/network/src/config.rs                |  1 -
 substrate/client/network/src/protocol.rs              |  1 -
 .../protocol/notifications/upgrade/notifications.rs   |  2 +-
 substrate/client/network/src/request_responses.rs     |  1 -
 substrate/client/network/src/service.rs               |  1 -
 substrate/client/network/src/service/out_events.rs    |  1 -
 substrate/client/offchain/src/api.rs                  |  7 ++-----
 substrate/client/offchain/src/api/http.rs             |  1 -
 substrate/client/offchain/src/api/timestamp.rs        |  5 +----
 substrate/client/rpc/src/author/mod.rs                |  2 +-
 .../client/service/src/chain_ops/import_blocks.rs     |  1 -
 substrate/client/service/src/config.rs                |  2 +-
 substrate/client/service/src/metrics.rs               |  2 +-
 substrate/client/transaction-pool/src/lib.rs          |  1 -
 substrate/client/transaction-pool/tests/pool.rs       |  4 +---
 substrate/frame/assets/src/lib.rs                     |  2 +-
 substrate/frame/bags-list/fuzzer/src/main.rs          |  1 -
 .../frame/bags-list/remote-tests/src/sanity_check.rs  |  1 -
 substrate/frame/contracts/src/tests.rs                |  1 -
 substrate/frame/conviction-voting/src/vote.rs         |  2 +-
 substrate/frame/election-provider-support/src/mock.rs |  1 -
 .../frame/election-provider-support/src/tests.rs      |  3 +--
 .../frame/election-provider-support/src/traits.rs     |  8 ++------
 substrate/frame/im-online/src/lib.rs                  |  2 +-
 substrate/frame/preimage/src/lib.rs                   |  2 +-
 substrate/frame/proxy/src/lib.rs                      |  2 +-
 substrate/frame/randomness-collective-flip/src/lib.rs |  1 -
 substrate/frame/staking/reward-curve/src/lib.rs       |  1 -
 substrate/frame/staking/src/lib.rs                    |  2 +-
 substrate/frame/staking/src/pallet/mod.rs             |  2 +-
 .../procedural/src/construct_runtime/expand/event.rs  |  2 +-
 .../procedural/src/construct_runtime/expand/origin.rs |  4 ++--
 .../support/procedural/src/pallet/expand/error.rs     |  2 +-
 substrate/frame/support/src/error.rs                  |  2 +-
 substrate/frame/support/src/lib.rs                    |  2 --
 .../frame/support/src/storage/bounded_btree_map.rs    |  5 +----
 .../frame/support/src/storage/bounded_btree_set.rs    |  6 +-----
 .../frame/support/src/storage/weak_bounded_vec.rs     |  3 +--
 substrate/frame/uniques/src/benchmarking.rs           |  2 +-
 substrate/frame/vesting/src/lib.rs                    |  2 +-
 substrate/primitives/application-crypto/src/lib.rs    |  8 ++++----
 substrate/primitives/arithmetic/fuzzer/src/biguint.rs |  1 -
 .../primitives/arithmetic/fuzzer/src/normalize.rs     |  1 -
 substrate/primitives/arithmetic/src/biguint.rs        |  3 +--
 substrate/primitives/arithmetic/src/fixed_point.rs    |  1 -
 substrate/primitives/arithmetic/src/helpers_128bit.rs |  1 -
 substrate/primitives/arithmetic/src/lib.rs            |  2 +-
 substrate/primitives/arithmetic/src/per_things.rs     |  1 -
 substrate/primitives/arithmetic/src/traits.rs         |  8 ++------
 substrate/primitives/consensus/common/src/error.rs    |  4 ++--
 substrate/primitives/consensus/vrf/src/schnorrkel.rs  |  1 -
 substrate/primitives/core/src/crypto.rs               |  4 ++--
 substrate/primitives/core/src/ecdsa.rs                |  4 ++--
 substrate/primitives/core/src/ed25519.rs              |  6 ++----
 substrate/primitives/core/src/offchain/mod.rs         |  5 +----
 substrate/primitives/core/src/sr25519.rs              |  6 ++----
 substrate/primitives/rpc/src/number.rs                |  5 +----
 .../runtime-interface/proc-macro/src/pass_by/enum_.rs |  2 +-
 substrate/primitives/runtime-interface/src/pass_by.rs |  4 ++--
 .../primitives/runtime-interface/test-wasm/src/lib.rs |  2 +-
 substrate/primitives/runtime/src/curve.rs             |  4 ----
 substrate/primitives/runtime/src/generic/header.rs    |  2 +-
 substrate/primitives/runtime/src/lib.rs               |  2 +-
 substrate/primitives/runtime/src/traits.rs            |  8 +-------
 substrate/primitives/std/src/lib.rs                   |  1 -
 substrate/primitives/storage/src/lib.rs               |  2 +-
 substrate/primitives/wasm-interface/src/lib.rs        |  2 +-
 substrate/utils/prometheus/src/lib.rs                 |  1 -
 91 files changed, 81 insertions(+), 176 deletions(-)

diff --git a/substrate/bin/node/cli/src/service.rs b/substrate/bin/node/cli/src/service.rs
index 038c14029cf..03e7311fb3c 100644
--- a/substrate/bin/node/cli/src/service.rs
+++ b/substrate/bin/node/cli/src/service.rs
@@ -562,7 +562,7 @@ mod tests {
 		RuntimeAppPublic,
 	};
 	use sp_timestamp;
-	use std::{borrow::Cow, convert::TryInto, sync::Arc};
+	use std::{borrow::Cow, sync::Arc};
 
 	type AccountPublic = <Signature as Verify>::Signer;
 
diff --git a/substrate/bin/node/cli/tests/common.rs b/substrate/bin/node/cli/tests/common.rs
index 8391cff3559..c17cabfa1d3 100644
--- a/substrate/bin/node/cli/tests/common.rs
+++ b/substrate/bin/node/cli/tests/common.rs
@@ -26,7 +26,6 @@ use nix::{
 use node_primitives::Block;
 use remote_externalities::rpc_api;
 use std::{
-	convert::TryInto,
 	ops::{Deref, DerefMut},
 	path::Path,
 	process::{Child, Command, ExitStatus},
diff --git a/substrate/bin/node/cli/tests/running_the_node_and_interrupt.rs b/substrate/bin/node/cli/tests/running_the_node_and_interrupt.rs
index edce2bbc6e4..703123faf0e 100644
--- a/substrate/bin/node/cli/tests/running_the_node_and_interrupt.rs
+++ b/substrate/bin/node/cli/tests/running_the_node_and_interrupt.rs
@@ -25,10 +25,7 @@ use nix::{
 	},
 	unistd::Pid,
 };
-use std::{
-	convert::TryInto,
-	process::{Child, Command},
-};
+use std::process::{Child, Command};
 use tempfile::tempdir;
 
 pub mod common;
diff --git a/substrate/bin/node/cli/tests/telemetry.rs b/substrate/bin/node/cli/tests/telemetry.rs
index 212fec7a02c..64da4bd4b68 100644
--- a/substrate/bin/node/cli/tests/telemetry.rs
+++ b/substrate/bin/node/cli/tests/telemetry.rs
@@ -21,7 +21,7 @@ use nix::{
 	sys::signal::{kill, Signal::SIGINT},
 	unistd::Pid,
 };
-use std::{convert::TryInto, process};
+use std::process;
 
 pub mod common;
 pub mod websocket_server;
diff --git a/substrate/bin/node/cli/tests/temp_base_path_works.rs b/substrate/bin/node/cli/tests/temp_base_path_works.rs
index a5b9b7499fc..306c490c2f7 100644
--- a/substrate/bin/node/cli/tests/temp_base_path_works.rs
+++ b/substrate/bin/node/cli/tests/temp_base_path_works.rs
@@ -25,7 +25,6 @@ use nix::{
 };
 use regex::Regex;
 use std::{
-	convert::TryInto,
 	io::Read,
 	path::PathBuf,
 	process::{Command, Stdio},
diff --git a/substrate/client/allocator/src/freeing_bump.rs b/substrate/client/allocator/src/freeing_bump.rs
index d7152f5a209..7eeda45370b 100644
--- a/substrate/client/allocator/src/freeing_bump.rs
+++ b/substrate/client/allocator/src/freeing_bump.rs
@@ -71,7 +71,6 @@ use crate::Error;
 pub use sp_core::MAX_POSSIBLE_ALLOCATION;
 use sp_wasm_interface::{Pointer, WordSize};
 use std::{
-	convert::{TryFrom, TryInto},
 	mem,
 	ops::{Index, IndexMut, Range},
 };
diff --git a/substrate/client/api/src/client.rs b/substrate/client/api/src/client.rs
index 11195e1def2..9c55be32381 100644
--- a/substrate/client/api/src/client.rs
+++ b/substrate/client/api/src/client.rs
@@ -25,7 +25,7 @@ use sp_runtime::{
 	traits::{Block as BlockT, NumberFor},
 	Justifications,
 };
-use std::{collections::HashSet, convert::TryFrom, fmt, sync::Arc};
+use std::{collections::HashSet, fmt, sync::Arc};
 
 use crate::{blockchain::Info, notifications::StorageEventStream, FinalizeSummary, ImportSummary};
 
diff --git a/substrate/client/authority-discovery/src/worker.rs b/substrate/client/authority-discovery/src/worker.rs
index 019abaac3cf..726c032281c 100644
--- a/substrate/client/authority-discovery/src/worker.rs
+++ b/substrate/client/authority-discovery/src/worker.rs
@@ -24,7 +24,6 @@ use crate::{
 
 use std::{
 	collections::{HashMap, HashSet},
-	convert::TryInto,
 	marker::PhantomData,
 	sync::Arc,
 	time::Duration,
@@ -581,14 +580,11 @@ where
 			.authorities(&id)
 			.map_err(|e| Error::CallingRuntime(e.into()))?
 			.into_iter()
-			.map(std::convert::Into::into)
+			.map(Into::into)
 			.collect::<HashSet<_>>();
 
-		let intersection = local_pub_keys
-			.intersection(&authorities)
-			.cloned()
-			.map(std::convert::Into::into)
-			.collect();
+		let intersection =
+			local_pub_keys.intersection(&authorities).cloned().map(Into::into).collect();
 
 		Ok(intersection)
 	}
diff --git a/substrate/client/beefy/src/keystore.rs b/substrate/client/beefy/src/keystore.rs
index 32478a11434..b0259a42075 100644
--- a/substrate/client/beefy/src/keystore.rs
+++ b/substrate/client/beefy/src/keystore.rs
@@ -16,8 +16,6 @@
 // You should have received a copy of the GNU General Public License
 // along with this program. If not, see <https://www.gnu.org/licenses/>.
 
-use std::convert::{From, TryInto};
-
 use sp_application_crypto::RuntimeAppPublic;
 use sp_core::keccak_256;
 use sp_keystore::{SyncCryptoStore, SyncCryptoStorePtr};
diff --git a/substrate/client/cli/src/commands/insert_key.rs b/substrate/client/cli/src/commands/insert_key.rs
index 852b4e50376..68201d7b4bf 100644
--- a/substrate/client/cli/src/commands/insert_key.rs
+++ b/substrate/client/cli/src/commands/insert_key.rs
@@ -25,7 +25,7 @@ use sc_keystore::LocalKeystore;
 use sc_service::config::{BasePath, KeystoreConfig};
 use sp_core::crypto::{KeyTypeId, SecretString};
 use sp_keystore::{SyncCryptoStore, SyncCryptoStorePtr};
-use std::{convert::TryFrom, sync::Arc};
+use std::sync::Arc;
 
 /// The `insert` command
 #[derive(Debug, Clone, Parser)]
diff --git a/substrate/client/cli/src/commands/utils.rs b/substrate/client/cli/src/commands/utils.rs
index d20df01e5a9..fa776c25a2e 100644
--- a/substrate/client/cli/src/commands/utils.rs
+++ b/substrate/client/cli/src/commands/utils.rs
@@ -31,7 +31,7 @@ use sp_core::{
 	Pair,
 };
 use sp_runtime::{traits::IdentifyAccount, MultiSigner};
-use std::{convert::TryFrom, io::Read, path::PathBuf};
+use std::{io::Read, path::PathBuf};
 
 /// Public key type for Runtime
 pub type PublicFor<P> = <P as sp_core::Pair>::Public;
diff --git a/substrate/client/cli/src/commands/verify.rs b/substrate/client/cli/src/commands/verify.rs
index a8879f42caa..b004a948a7a 100644
--- a/substrate/client/cli/src/commands/verify.rs
+++ b/substrate/client/cli/src/commands/verify.rs
@@ -66,7 +66,7 @@ impl VerifyCmd {
 fn verify<Pair>(sig_data: Vec<u8>, message: Vec<u8>, uri: &str) -> error::Result<()>
 where
 	Pair: sp_core::Pair,
-	Pair::Signature: for<'a> std::convert::TryFrom<&'a [u8]>,
+	Pair::Signature: for<'a> TryFrom<&'a [u8]>,
 {
 	let signature =
 		Pair::Signature::try_from(&sig_data).map_err(|_| error::Error::SignatureFormatInvalid)?;
diff --git a/substrate/client/cli/src/error.rs b/substrate/client/cli/src/error.rs
index 69b2eeaaf61..f38a95e0115 100644
--- a/substrate/client/cli/src/error.rs
+++ b/substrate/client/cli/src/error.rs
@@ -80,19 +80,19 @@ pub enum Error {
 	GlobalLoggerError(#[from] sc_tracing::logging::Error),
 }
 
-impl std::convert::From<&str> for Error {
+impl From<&str> for Error {
 	fn from(s: &str) -> Error {
 		Error::Input(s.to_string())
 	}
 }
 
-impl std::convert::From<String> for Error {
+impl From<String> for Error {
 	fn from(s: String) -> Error {
 		Error::Input(s)
 	}
 }
 
-impl std::convert::From<crypto::PublicError> for Error {
+impl From<crypto::PublicError> for Error {
 	fn from(e: crypto::PublicError) -> Error {
 		Error::InvalidUri(e)
 	}
diff --git a/substrate/client/cli/src/params/mod.rs b/substrate/client/cli/src/params/mod.rs
index e0571aa4bbb..33e714ec138 100644
--- a/substrate/client/cli/src/params/mod.rs
+++ b/substrate/client/cli/src/params/mod.rs
@@ -32,7 +32,7 @@ use sp_runtime::{
 	generic::BlockId,
 	traits::{Block as BlockT, NumberFor},
 };
-use std::{convert::TryFrom, fmt::Debug, str::FromStr};
+use std::{fmt::Debug, str::FromStr};
 
 pub use crate::params::{
 	database_params::*, import_params::*, keystore_params::*, network_params::*,
diff --git a/substrate/client/consensus/aura/src/lib.rs b/substrate/client/consensus/aura/src/lib.rs
index 4d91eaaae92..f6ea2e08e1e 100644
--- a/substrate/client/consensus/aura/src/lib.rs
+++ b/substrate/client/consensus/aura/src/lib.rs
@@ -30,14 +30,7 @@
 //!
 //! NOTE: Aura itself is designed to be generic over the crypto used.
 #![forbid(missing_docs, unsafe_code)]
-use std::{
-	convert::{TryFrom, TryInto},
-	fmt::Debug,
-	hash::Hash,
-	marker::PhantomData,
-	pin::Pin,
-	sync::Arc,
-};
+use std::{fmt::Debug, hash::Hash, marker::PhantomData, pin::Pin, sync::Arc};
 
 use futures::prelude::*;
 use log::{debug, trace};
@@ -517,7 +510,7 @@ pub enum Error<B: BlockT> {
 	Inherent(sp_inherents::Error),
 }
 
-impl<B: BlockT> std::convert::From<Error<B>> for String {
+impl<B: BlockT> From<Error<B>> for String {
 	fn from(error: Error<B>) -> String {
 		error.to_string()
 	}
diff --git a/substrate/client/consensus/babe/src/lib.rs b/substrate/client/consensus/babe/src/lib.rs
index 4f3139a013d..818384a5c3d 100644
--- a/substrate/client/consensus/babe/src/lib.rs
+++ b/substrate/client/consensus/babe/src/lib.rs
@@ -69,7 +69,6 @@
 use std::{
 	borrow::Cow,
 	collections::{HashMap, HashSet},
-	convert::TryInto,
 	future::Future,
 	pin::Pin,
 	sync::Arc,
@@ -320,7 +319,7 @@ pub enum Error<B: BlockT> {
 	ForkTree(Box<fork_tree::Error<sp_blockchain::Error>>),
 }
 
-impl<B: BlockT> std::convert::From<Error<B>> for String {
+impl<B: BlockT> From<Error<B>> for String {
 	fn from(error: Error<B>) -> String {
 		error.to_string()
 	}
diff --git a/substrate/client/consensus/manual-seal/src/error.rs b/substrate/client/consensus/manual-seal/src/error.rs
index 2f946f3de3c..7c3211203bf 100644
--- a/substrate/client/consensus/manual-seal/src/error.rs
+++ b/substrate/client/consensus/manual-seal/src/error.rs
@@ -102,7 +102,7 @@ impl Error {
 	}
 }
 
-impl std::convert::From<Error> for jsonrpc_core::Error {
+impl From<Error> for jsonrpc_core::Error {
 	fn from(error: Error) -> Self {
 		jsonrpc_core::Error {
 			code: jsonrpc_core::ErrorCode::ServerError(error.to_code()),
diff --git a/substrate/client/consensus/pow/src/lib.rs b/substrate/client/consensus/pow/src/lib.rs
index 6d0bc3fc5a1..8885099ceb5 100644
--- a/substrate/client/consensus/pow/src/lib.rs
+++ b/substrate/client/consensus/pow/src/lib.rs
@@ -119,13 +119,13 @@ pub enum Error<B: BlockT> {
 	Other(String),
 }
 
-impl<B: BlockT> std::convert::From<Error<B>> for String {
+impl<B: BlockT> From<Error<B>> for String {
 	fn from(error: Error<B>) -> String {
 		error.to_string()
 	}
 }
 
-impl<B: BlockT> std::convert::From<Error<B>> for ConsensusError {
+impl<B: BlockT> From<Error<B>> for ConsensusError {
 	fn from(error: Error<B>) -> ConsensusError {
 		ConsensusError::ClientImport(error.to_string())
 	}
diff --git a/substrate/client/db/src/utils.rs b/substrate/client/db/src/utils.rs
index 29aa8424221..1798838ecc1 100644
--- a/substrate/client/db/src/utils.rs
+++ b/substrate/client/db/src/utils.rs
@@ -19,7 +19,7 @@
 //! Db-based backend utility structures and functions, used by both
 //! full and light storages.
 
-use std::{convert::TryInto, fmt, fs, io, path::Path, sync::Arc};
+use std::{fmt, fs, io, path::Path, sync::Arc};
 
 use log::{debug, info};
 
diff --git a/substrate/client/executor/common/src/sandbox/wasmer_backend.rs b/substrate/client/executor/common/src/sandbox/wasmer_backend.rs
index dfb26c4a8de..904afc94704 100644
--- a/substrate/client/executor/common/src/sandbox/wasmer_backend.rs
+++ b/substrate/client/executor/common/src/sandbox/wasmer_backend.rs
@@ -26,7 +26,7 @@ use crate::{
 use codec::{Decode, Encode};
 use sp_core::sandbox::HostError;
 use sp_wasm_interface::{FunctionContext, Pointer, ReturnValue, Value, WordSize};
-use std::{cell::RefCell, collections::HashMap, convert::TryInto, rc::Rc};
+use std::{cell::RefCell, collections::HashMap, rc::Rc};
 use wasmer::RuntimeError;
 
 use crate::sandbox::{
diff --git a/substrate/client/finality-grandpa/rpc/src/lib.rs b/substrate/client/finality-grandpa/rpc/src/lib.rs
index bde2e5612b2..9c51bc3d226 100644
--- a/substrate/client/finality-grandpa/rpc/src/lib.rs
+++ b/substrate/client/finality-grandpa/rpc/src/lib.rs
@@ -171,7 +171,7 @@ where
 mod tests {
 	use super::*;
 	use jsonrpc_core::{types::Params, Notification, Output};
-	use std::{collections::HashSet, convert::TryInto, sync::Arc};
+	use std::{collections::HashSet, sync::Arc};
 
 	use parity_scale_codec::{Decode, Encode};
 	use sc_block_builder::{BlockBuilder, RecordProof};
diff --git a/substrate/client/informant/src/display.rs b/substrate/client/informant/src/display.rs
index 8d76939fddd..77b28dec556 100644
--- a/substrate/client/informant/src/display.rs
+++ b/substrate/client/informant/src/display.rs
@@ -22,11 +22,7 @@ use log::info;
 use sc_client_api::ClientInfo;
 use sc_network::{NetworkStatus, SyncState, WarpSyncPhase, WarpSyncProgress};
 use sp_runtime::traits::{Block as BlockT, CheckedDiv, NumberFor, Saturating, Zero};
-use std::{
-	convert::{TryFrom, TryInto},
-	fmt,
-	time::Instant,
-};
+use std::{fmt, time::Instant};
 
 /// State of the informant display system.
 ///
diff --git a/substrate/client/network-gossip/src/bridge.rs b/substrate/client/network-gossip/src/bridge.rs
index f72cd156165..2e09e7cc614 100644
--- a/substrate/client/network-gossip/src/bridge.rs
+++ b/substrate/client/network-gossip/src/bridge.rs
@@ -303,7 +303,6 @@ mod tests {
 	use sp_runtime::{testing::H256, traits::Block as BlockT};
 	use std::{
 		borrow::Cow,
-		convert::TryInto,
 		sync::{Arc, Mutex},
 	};
 	use substrate_test_runtime_client::runtime::Block;
diff --git a/substrate/client/network/src/config.rs b/substrate/client/network/src/config.rs
index eedf3fc22b9..7c2dfef7fe8 100644
--- a/substrate/client/network/src/config.rs
+++ b/substrate/client/network/src/config.rs
@@ -50,7 +50,6 @@ use sp_runtime::traits::Block as BlockT;
 use std::{
 	borrow::Cow,
 	collections::HashMap,
-	convert::TryFrom,
 	error::Error,
 	fs,
 	future::Future,
diff --git a/substrate/client/network/src/protocol.rs b/substrate/client/network/src/protocol.rs
index c00d4302f82..80694210e77 100644
--- a/substrate/client/network/src/protocol.rs
+++ b/substrate/client/network/src/protocol.rs
@@ -60,7 +60,6 @@ use sp_runtime::{
 use std::{
 	borrow::Cow,
 	collections::{HashMap, HashSet, VecDeque},
-	convert::TryFrom as _,
 	io, iter,
 	num::NonZeroUsize,
 	pin::Pin,
diff --git a/substrate/client/network/src/protocol/notifications/upgrade/notifications.rs b/substrate/client/network/src/protocol/notifications/upgrade/notifications.rs
index 53270975a5b..3fbb59d399a 100644
--- a/substrate/client/network/src/protocol/notifications/upgrade/notifications.rs
+++ b/substrate/client/network/src/protocol/notifications/upgrade/notifications.rs
@@ -41,7 +41,7 @@ use libp2p::core::{upgrade, InboundUpgrade, OutboundUpgrade, UpgradeInfo};
 use log::{error, warn};
 use std::{
 	borrow::Cow,
-	convert::{Infallible, TryFrom as _},
+	convert::Infallible,
 	io, mem,
 	pin::Pin,
 	task::{Context, Poll},
diff --git a/substrate/client/network/src/request_responses.rs b/substrate/client/network/src/request_responses.rs
index 58007c7bc5c..4613a15af93 100644
--- a/substrate/client/network/src/request_responses.rs
+++ b/substrate/client/network/src/request_responses.rs
@@ -56,7 +56,6 @@ use libp2p::{
 use std::{
 	borrow::Cow,
 	collections::{hash_map::Entry, HashMap},
-	convert::TryFrom as _,
 	io, iter,
 	pin::Pin,
 	task::{Context, Poll},
diff --git a/substrate/client/network/src/service.rs b/substrate/client/network/src/service.rs
index a02aa982318..e89be325fa4 100644
--- a/substrate/client/network/src/service.rs
+++ b/substrate/client/network/src/service.rs
@@ -73,7 +73,6 @@ use std::{
 	borrow::Cow,
 	cmp,
 	collections::{HashMap, HashSet},
-	convert::TryFrom as _,
 	fs, iter,
 	marker::PhantomData,
 	num::NonZeroUsize,
diff --git a/substrate/client/network/src/service/out_events.rs b/substrate/client/network/src/service/out_events.rs
index 1fe13bc30fa..3bff5a16fd0 100644
--- a/substrate/client/network/src/service/out_events.rs
+++ b/substrate/client/network/src/service/out_events.rs
@@ -38,7 +38,6 @@ use parking_lot::Mutex;
 use prometheus_endpoint::{register, CounterVec, GaugeVec, Opts, PrometheusError, Registry, U64};
 use std::{
 	cell::RefCell,
-	convert::TryFrom as _,
 	fmt,
 	pin::Pin,
 	sync::Arc,
diff --git a/substrate/client/offchain/src/api.rs b/substrate/client/offchain/src/api.rs
index 30c7969279e..c80b511c84d 100644
--- a/substrate/client/offchain/src/api.rs
+++ b/substrate/client/offchain/src/api.rs
@@ -16,7 +16,7 @@
 // You should have received a copy of the GNU General Public License
 // along with this program. If not, see <https://www.gnu.org/licenses/>.
 
-use std::{collections::HashSet, convert::TryFrom, str::FromStr, sync::Arc, thread::sleep};
+use std::{collections::HashSet, str::FromStr, sync::Arc, thread::sleep};
 
 use crate::NetworkProvider;
 use codec::{Decode, Encode};
@@ -327,10 +327,7 @@ mod tests {
 	use sc_client_db::offchain::LocalStorage;
 	use sc_network::{NetworkStateInfo, PeerId};
 	use sp_core::offchain::{DbExternalities, Externalities};
-	use std::{
-		convert::{TryFrom, TryInto},
-		time::SystemTime,
-	};
+	use std::time::SystemTime;
 
 	pub(super) struct TestNetwork();
 
diff --git a/substrate/client/offchain/src/api/http.rs b/substrate/client/offchain/src/api/http.rs
index 2a7514116cb..012de78c5f6 100644
--- a/substrate/client/offchain/src/api/http.rs
+++ b/substrate/client/offchain/src/api/http.rs
@@ -37,7 +37,6 @@ use once_cell::sync::Lazy;
 use sc_utils::mpsc::{tracing_unbounded, TracingUnboundedReceiver, TracingUnboundedSender};
 use sp_core::offchain::{HttpError, HttpRequestId, HttpRequestStatus, Timestamp};
 use std::{
-	convert::TryFrom,
 	fmt,
 	io::Read as _,
 	pin::Pin,
diff --git a/substrate/client/offchain/src/api/timestamp.rs b/substrate/client/offchain/src/api/timestamp.rs
index 6622331f570..4b3f5efddf2 100644
--- a/substrate/client/offchain/src/api/timestamp.rs
+++ b/substrate/client/offchain/src/api/timestamp.rs
@@ -19,10 +19,7 @@
 //! Helper methods dedicated to timestamps.
 
 use sp_core::offchain::Timestamp;
-use std::{
-	convert::TryInto,
-	time::{Duration, SystemTime},
-};
+use std::time::{Duration, SystemTime};
 
 /// Returns the current time as a `Timestamp`.
 pub fn now() -> Timestamp {
diff --git a/substrate/client/rpc/src/author/mod.rs b/substrate/client/rpc/src/author/mod.rs
index 2b604d2897c..5064e613421 100644
--- a/substrate/client/rpc/src/author/mod.rs
+++ b/substrate/client/rpc/src/author/mod.rs
@@ -21,7 +21,7 @@
 #[cfg(test)]
 mod tests;
 
-use std::{convert::TryInto, sync::Arc};
+use std::sync::Arc;
 
 use sp_blockchain::HeaderBackend;
 
diff --git a/substrate/client/service/src/chain_ops/import_blocks.rs b/substrate/client/service/src/chain_ops/import_blocks.rs
index dc03cdcedae..c0612124dd0 100644
--- a/substrate/client/service/src/chain_ops/import_blocks.rs
+++ b/substrate/client/service/src/chain_ops/import_blocks.rs
@@ -35,7 +35,6 @@ use sp_runtime::{
 	},
 };
 use std::{
-	convert::{TryFrom, TryInto},
 	io::Read,
 	pin::Pin,
 	task::Poll,
diff --git a/substrate/client/service/src/config.rs b/substrate/client/service/src/config.rs
index fd32aebdebd..7c7bb480aa5 100644
--- a/substrate/client/service/src/config.rs
+++ b/substrate/client/service/src/config.rs
@@ -294,7 +294,7 @@ impl BasePath {
 	}
 }
 
-impl std::convert::From<PathBuf> for BasePath {
+impl From<PathBuf> for BasePath {
 	fn from(path: PathBuf) -> Self {
 		BasePath::new(path)
 	}
diff --git a/substrate/client/service/src/metrics.rs b/substrate/client/service/src/metrics.rs
index 02e3ab95f11..9fbf2c3ea3f 100644
--- a/substrate/client/service/src/metrics.rs
+++ b/substrate/client/service/src/metrics.rs
@@ -16,7 +16,7 @@
 // You should have received a copy of the GNU General Public License
 // along with this program. If not, see <https://www.gnu.org/licenses/>.
 
-use std::{convert::TryFrom, time::SystemTime};
+use std::time::SystemTime;
 
 use crate::config::Configuration;
 use futures_timer::Delay;
diff --git a/substrate/client/transaction-pool/src/lib.rs b/substrate/client/transaction-pool/src/lib.rs
index ec93d1f7c51..9fd2ef1deef 100644
--- a/substrate/client/transaction-pool/src/lib.rs
+++ b/substrate/client/transaction-pool/src/lib.rs
@@ -40,7 +40,6 @@ pub use graph::{base_pool::Limit as PoolLimit, ChainApi, Options, Pool, Transact
 use parking_lot::Mutex;
 use std::{
 	collections::{HashMap, HashSet},
-	convert::TryInto,
 	pin::Pin,
 	sync::Arc,
 };
diff --git a/substrate/client/transaction-pool/tests/pool.rs b/substrate/client/transaction-pool/tests/pool.rs
index 08ecdbc86cc..2243f140cb2 100644
--- a/substrate/client/transaction-pool/tests/pool.rs
+++ b/substrate/client/transaction-pool/tests/pool.rs
@@ -36,7 +36,7 @@ use sp_runtime::{
 	traits::Block as _,
 	transaction_validity::{InvalidTransaction, TransactionSource, ValidTransaction},
 };
-use std::{collections::BTreeSet, convert::TryInto, sync::Arc};
+use std::{collections::BTreeSet, sync::Arc};
 use substrate_test_runtime_client::{
 	runtime::{Block, Extrinsic, Hash, Header, Index, Transfer},
 	AccountKeyring::*,
@@ -864,8 +864,6 @@ fn ready_set_should_eventually_resolve_when_block_update_arrives() {
 
 #[test]
 fn should_not_accept_old_signatures() {
-	use std::convert::TryFrom;
-
 	let client = Arc::new(substrate_test_runtime_client::new());
 
 	let pool = Arc::new(
diff --git a/substrate/frame/assets/src/lib.rs b/substrate/frame/assets/src/lib.rs
index 71ba7b4d249..9b0f23a0a17 100644
--- a/substrate/frame/assets/src/lib.rs
+++ b/substrate/frame/assets/src/lib.rs
@@ -147,7 +147,7 @@ use sp_runtime::{
 	},
 	ArithmeticError, TokenError,
 };
-use sp_std::{borrow::Borrow, convert::TryInto, prelude::*};
+use sp_std::{borrow::Borrow, prelude::*};
 
 use frame_support::{
 	dispatch::{DispatchError, DispatchResult},
diff --git a/substrate/frame/bags-list/fuzzer/src/main.rs b/substrate/frame/bags-list/fuzzer/src/main.rs
index 3ff59b450be..6f538eb28e7 100644
--- a/substrate/frame/bags-list/fuzzer/src/main.rs
+++ b/substrate/frame/bags-list/fuzzer/src/main.rs
@@ -30,7 +30,6 @@
 use frame_election_provider_support::{SortedListProvider, VoteWeight};
 use honggfuzz::fuzz;
 use pallet_bags_list::mock::{AccountId, BagsList, ExtBuilder};
-use std::convert::From;
 
 const ID_RANGE: AccountId = 25_000;
 
diff --git a/substrate/frame/bags-list/remote-tests/src/sanity_check.rs b/substrate/frame/bags-list/remote-tests/src/sanity_check.rs
index f2b6881edea..1027efb8539 100644
--- a/substrate/frame/bags-list/remote-tests/src/sanity_check.rs
+++ b/substrate/frame/bags-list/remote-tests/src/sanity_check.rs
@@ -23,7 +23,6 @@ use frame_support::{
 };
 use remote_externalities::{Builder, Mode, OnlineConfig};
 use sp_runtime::{traits::Block as BlockT, DeserializeOwned};
-use sp_std::prelude::*;
 
 /// Execute the sanity check of the bags-list.
 pub async fn execute<Runtime: crate::RuntimeT, Block: BlockT + DeserializeOwned>(
diff --git a/substrate/frame/contracts/src/tests.rs b/substrate/frame/contracts/src/tests.rs
index 2b01cbe3c74..ce59f5bb858 100644
--- a/substrate/frame/contracts/src/tests.rs
+++ b/substrate/frame/contracts/src/tests.rs
@@ -96,7 +96,6 @@ pub mod test_utils {
 	}
 	macro_rules! assert_return_code {
 		( $x:expr , $y:expr $(,)? ) => {{
-			use sp_std::convert::TryInto;
 			assert_eq!(u32::from_le_bytes($x.data[..].try_into().unwrap()), $y as u32);
 		}};
 	}
diff --git a/substrate/frame/conviction-voting/src/vote.rs b/substrate/frame/conviction-voting/src/vote.rs
index d7ca931de35..e608a6dcfd0 100644
--- a/substrate/frame/conviction-voting/src/vote.rs
+++ b/substrate/frame/conviction-voting/src/vote.rs
@@ -25,7 +25,7 @@ use sp_runtime::{
 	traits::{Saturating, Zero},
 	RuntimeDebug,
 };
-use sp_std::{convert::TryFrom, prelude::*, result::Result};
+use sp_std::prelude::*;
 
 /// A number of lock periods, plus a vote, one way or the other.
 #[derive(Copy, Clone, Eq, PartialEq, Default, RuntimeDebug, MaxEncodedLen)]
diff --git a/substrate/frame/election-provider-support/src/mock.rs b/substrate/frame/election-provider-support/src/mock.rs
index d10b1724c95..7c834f06f3c 100644
--- a/substrate/frame/election-provider-support/src/mock.rs
+++ b/substrate/frame/election-provider-support/src/mock.rs
@@ -21,7 +21,6 @@
 
 use std::{
 	collections::{HashMap, HashSet},
-	convert::TryInto,
 	hash::Hash,
 };
 
diff --git a/substrate/frame/election-provider-support/src/tests.rs b/substrate/frame/election-provider-support/src/tests.rs
index f88f3653c68..1ccff79f3ef 100644
--- a/substrate/frame/election-provider-support/src/tests.rs
+++ b/substrate/frame/election-provider-support/src/tests.rs
@@ -22,7 +22,6 @@
 use crate::{mock::*, IndexAssignment, NposSolution};
 use frame_support::traits::ConstU32;
 use rand::SeedableRng;
-use std::convert::TryInto;
 
 mod solution_type {
 	use super::*;
@@ -30,7 +29,7 @@ mod solution_type {
 	// these need to come from the same dev-dependency `frame-election-provider-support`, not from
 	// the crate.
 	use crate::{generate_solution_type, Assignment, Error as NposError, NposSolution};
-	use sp_std::{convert::TryInto, fmt::Debug};
+	use sp_std::fmt::Debug;
 
 	#[allow(dead_code)]
 	mod __private {
diff --git a/substrate/frame/election-provider-support/src/traits.rs b/substrate/frame/election-provider-support/src/traits.rs
index e1fc0663e7d..ed812e2e0f2 100644
--- a/substrate/frame/election-provider-support/src/traits.rs
+++ b/substrate/frame/election-provider-support/src/traits.rs
@@ -22,16 +22,12 @@ use codec::Encode;
 use scale_info::TypeInfo;
 use sp_arithmetic::traits::{Bounded, UniqueSaturatedInto};
 use sp_npos_elections::{ElectionScore, Error, EvaluateSupport};
-use sp_std::{
-	convert::{TryFrom, TryInto},
-	fmt::Debug,
-	prelude::*,
-};
+use sp_std::{fmt::Debug, prelude::*};
 
 /// An opaque index-based, NPoS solution type.
 pub trait NposSolution
 where
-	Self: Sized + for<'a> sp_std::convert::TryFrom<&'a [IndexAssignmentOf<Self>], Error = Error>,
+	Self: Sized + for<'a> TryFrom<&'a [IndexAssignmentOf<Self>], Error = Error>,
 {
 	/// The maximum number of votes that are allowed.
 	const LIMIT: usize;
diff --git a/substrate/frame/im-online/src/lib.rs b/substrate/frame/im-online/src/lib.rs
index e2213ef4169..5ef515db0b2 100644
--- a/substrate/frame/im-online/src/lib.rs
+++ b/substrate/frame/im-online/src/lib.rs
@@ -104,7 +104,7 @@ use sp_staking::{
 	offence::{Kind, Offence, ReportOffence},
 	SessionIndex,
 };
-use sp_std::{convert::TryInto, prelude::*};
+use sp_std::prelude::*;
 pub use weights::WeightInfo;
 
 pub mod sr25519 {
diff --git a/substrate/frame/preimage/src/lib.rs b/substrate/frame/preimage/src/lib.rs
index c34057a1034..a5d8ee28b59 100644
--- a/substrate/frame/preimage/src/lib.rs
+++ b/substrate/frame/preimage/src/lib.rs
@@ -37,7 +37,7 @@ mod tests;
 pub mod weights;
 
 use sp_runtime::traits::{BadOrigin, Hash, Saturating};
-use sp_std::{convert::TryFrom, prelude::*};
+use sp_std::prelude::*;
 
 use codec::{Decode, Encode, MaxEncodedLen};
 use frame_support::{
diff --git a/substrate/frame/proxy/src/lib.rs b/substrate/frame/proxy/src/lib.rs
index 84f1a84badc..891315c92aa 100644
--- a/substrate/frame/proxy/src/lib.rs
+++ b/substrate/frame/proxy/src/lib.rs
@@ -48,7 +48,7 @@ use sp_runtime::{
 	traits::{Dispatchable, Hash, Saturating, TrailingZeroInput, Zero},
 	DispatchResult,
 };
-use sp_std::{convert::TryInto, prelude::*};
+use sp_std::prelude::*;
 pub use weights::WeightInfo;
 
 pub use pallet::*;
diff --git a/substrate/frame/randomness-collective-flip/src/lib.rs b/substrate/frame/randomness-collective-flip/src/lib.rs
index b72aa665550..f709578f694 100644
--- a/substrate/frame/randomness-collective-flip/src/lib.rs
+++ b/substrate/frame/randomness-collective-flip/src/lib.rs
@@ -71,7 +71,6 @@ use safe_mix::TripletMix;
 use codec::Encode;
 use frame_support::traits::Randomness;
 use sp_runtime::traits::{Hash, Saturating};
-use sp_std::prelude::*;
 
 const RANDOM_MATERIAL_LEN: u32 = 81;
 
diff --git a/substrate/frame/staking/reward-curve/src/lib.rs b/substrate/frame/staking/reward-curve/src/lib.rs
index 9b2f3100b48..e66f6fde375 100644
--- a/substrate/frame/staking/reward-curve/src/lib.rs
+++ b/substrate/frame/staking/reward-curve/src/lib.rs
@@ -24,7 +24,6 @@ use proc_macro::TokenStream;
 use proc_macro2::{Span, TokenStream as TokenStream2};
 use proc_macro_crate::{crate_name, FoundCrate};
 use quote::{quote, ToTokens};
-use std::convert::TryInto;
 use syn::parse::{Parse, ParseStream};
 
 /// Accepts a number of expressions to create a instance of PiecewiseLinear which represents the
diff --git a/substrate/frame/staking/src/lib.rs b/substrate/frame/staking/src/lib.rs
index 2a0716721dd..872ed2e1af4 100644
--- a/substrate/frame/staking/src/lib.rs
+++ b/substrate/frame/staking/src/lib.rs
@@ -316,7 +316,7 @@ use sp_staking::{
 	offence::{Offence, OffenceError, ReportOffence},
 	EraIndex, SessionIndex,
 };
-use sp_std::{collections::btree_map::BTreeMap, convert::From, prelude::*};
+use sp_std::{collections::btree_map::BTreeMap, prelude::*};
 pub use weights::WeightInfo;
 
 pub use pallet::{pallet::*, *};
diff --git a/substrate/frame/staking/src/pallet/mod.rs b/substrate/frame/staking/src/pallet/mod.rs
index 306bd34390d..fa8c453c2b0 100644
--- a/substrate/frame/staking/src/pallet/mod.rs
+++ b/substrate/frame/staking/src/pallet/mod.rs
@@ -33,7 +33,7 @@ use sp_runtime::{
 	DispatchError, Perbill, Percent,
 };
 use sp_staking::{EraIndex, SessionIndex};
-use sp_std::{cmp::max, convert::From, prelude::*};
+use sp_std::{cmp::max, prelude::*};
 
 mod impls;
 
diff --git a/substrate/frame/support/procedural/src/construct_runtime/expand/event.rs b/substrate/frame/support/procedural/src/construct_runtime/expand/event.rs
index ef071a9fc7e..b242f964156 100644
--- a/substrate/frame/support/procedural/src/construct_runtime/expand/event.rs
+++ b/substrate/frame/support/procedural/src/construct_runtime/expand/event.rs
@@ -127,7 +127,7 @@ fn expand_event_conversion(
 				Event::#variant_name(x)
 			}
 		}
-		impl #scrate::sp_std::convert::TryInto<#pallet_event> for Event {
+		impl TryInto<#pallet_event> for Event {
 			type Error = ();
 
 			fn try_into(self) -> #scrate::sp_std::result::Result<#pallet_event, Self::Error> {
diff --git a/substrate/frame/support/procedural/src/construct_runtime/expand/origin.rs b/substrate/frame/support/procedural/src/construct_runtime/expand/origin.rs
index 077bef3744a..342a002b52b 100644
--- a/substrate/frame/support/procedural/src/construct_runtime/expand/origin.rs
+++ b/substrate/frame/support/procedural/src/construct_runtime/expand/origin.rs
@@ -230,7 +230,7 @@ pub fn expand_outer_origin(
 			}
 		}
 
-		impl #scrate::sp_std::convert::TryFrom<OriginCaller> for #system_path::Origin<#runtime> {
+		impl TryFrom<OriginCaller> for #system_path::Origin<#runtime> {
 			type Error = OriginCaller;
 			fn try_from(x: OriginCaller)
 				-> #scrate::sp_std::result::Result<#system_path::Origin<#runtime>, OriginCaller>
@@ -359,7 +359,7 @@ fn expand_origin_pallet_conversions(
 			}
 		}
 
-		impl #scrate::sp_std::convert::TryFrom<OriginCaller> for #pallet_origin {
+		impl TryFrom<OriginCaller> for #pallet_origin {
 			type Error = OriginCaller;
 			fn try_from(
 				x: OriginCaller,
diff --git a/substrate/frame/support/procedural/src/pallet/expand/error.rs b/substrate/frame/support/procedural/src/pallet/expand/error.rs
index 86b06d737de..124e8b312ce 100644
--- a/substrate/frame/support/procedural/src/pallet/expand/error.rs
+++ b/substrate/frame/support/procedural/src/pallet/expand/error.rs
@@ -162,7 +162,7 @@ pub fn expand_error(def: &mut Def) -> proc_macro2::TokenStream {
 
 				#frame_support::sp_runtime::DispatchError::Module(#frame_support::sp_runtime::ModuleError {
 					index,
-					error: core::convert::TryInto::try_into(encoded).expect("encoded error is resized to be equal to the maximum encoded error size; qed"),
+					error: TryInto::try_into(encoded).expect("encoded error is resized to be equal to the maximum encoded error size; qed"),
 					message: Some(err.as_str()),
 				})
 			}
diff --git a/substrate/frame/support/src/error.rs b/substrate/frame/support/src/error.rs
index 764376a4e1d..0ffe4334e2e 100644
--- a/substrate/frame/support/src/error.rs
+++ b/substrate/frame/support/src/error.rs
@@ -152,7 +152,7 @@ macro_rules! decl_error {
 
 				$crate::sp_runtime::DispatchError::Module($crate::sp_runtime::ModuleError {
 					index,
-					error: core::convert::TryInto::try_into(error).expect("encoded error is resized to be equal to the maximum encoded error size; qed"),
+					error: TryInto::try_into(error).expect("encoded error is resized to be equal to the maximum encoded error size; qed"),
 					message: Some(err.as_str()),
 				})
 			}
diff --git a/substrate/frame/support/src/lib.rs b/substrate/frame/support/src/lib.rs
index 70a79c07189..714449eec78 100644
--- a/substrate/frame/support/src/lib.rs
+++ b/substrate/frame/support/src/lib.rs
@@ -127,13 +127,11 @@ impl TypeId for PalletId {
 macro_rules! bounded_vec {
 	($ ($values:expr),* $(,)?) => {
 		{
-			use $crate::sp_std::convert::TryInto as _;
 			$crate::sp_std::vec![$($values),*].try_into().unwrap()
 		}
 	};
 	( $value:expr ; $repetition:expr ) => {
 		{
-			use $crate::sp_std::convert::TryInto as _;
 			$crate::sp_std::vec![$value ; $repetition].try_into().unwrap()
 		}
 	}
diff --git a/substrate/frame/support/src/storage/bounded_btree_map.rs b/substrate/frame/support/src/storage/bounded_btree_map.rs
index 6190552476a..eca4b17821c 100644
--- a/substrate/frame/support/src/storage/bounded_btree_map.rs
+++ b/substrate/frame/support/src/storage/bounded_btree_map.rs
@@ -22,10 +22,7 @@ use crate::{
 	traits::{Get, TryCollect},
 };
 use codec::{Decode, Encode, MaxEncodedLen};
-use sp_std::{
-	borrow::Borrow, collections::btree_map::BTreeMap, convert::TryFrom, marker::PhantomData,
-	ops::Deref,
-};
+use sp_std::{borrow::Borrow, collections::btree_map::BTreeMap, marker::PhantomData, ops::Deref};
 
 /// A bounded map based on a B-Tree.
 ///
diff --git a/substrate/frame/support/src/storage/bounded_btree_set.rs b/substrate/frame/support/src/storage/bounded_btree_set.rs
index 543b997e94e..f38952bf545 100644
--- a/substrate/frame/support/src/storage/bounded_btree_set.rs
+++ b/substrate/frame/support/src/storage/bounded_btree_set.rs
@@ -22,10 +22,7 @@ use crate::{
 	traits::{Get, TryCollect},
 };
 use codec::{Decode, Encode, MaxEncodedLen};
-use sp_std::{
-	borrow::Borrow, collections::btree_set::BTreeSet, convert::TryFrom, marker::PhantomData,
-	ops::Deref,
-};
+use sp_std::{borrow::Borrow, collections::btree_set::BTreeSet, marker::PhantomData, ops::Deref};
 
 /// A bounded set based on a B-Tree.
 ///
@@ -324,7 +321,6 @@ pub mod test {
 	use crate::Twox128;
 	use frame_support::traits::ConstU32;
 	use sp_io::TestExternalities;
-	use sp_std::convert::TryInto;
 
 	crate::generate_storage_alias! { Prefix, Foo => Value<BoundedBTreeSet<u32, ConstU32<7>>> }
 	crate::generate_storage_alias! { Prefix, FooMap => Map<(Twox128, u32), BoundedBTreeSet<u32, ConstU32<7>>> }
diff --git a/substrate/frame/support/src/storage/weak_bounded_vec.rs b/substrate/frame/support/src/storage/weak_bounded_vec.rs
index aa6dc88eaa4..21cc487b490 100644
--- a/substrate/frame/support/src/storage/weak_bounded_vec.rs
+++ b/substrate/frame/support/src/storage/weak_bounded_vec.rs
@@ -27,7 +27,7 @@ use core::{
 	ops::{Deref, Index, IndexMut},
 	slice::SliceIndex,
 };
-use sp_std::{convert::TryFrom, marker::PhantomData, prelude::*};
+use sp_std::{marker::PhantomData, prelude::*};
 
 /// A weakly bounded vector.
 ///
@@ -320,7 +320,6 @@ pub mod test {
 	use crate::Twox128;
 	use frame_support::traits::ConstU32;
 	use sp_io::TestExternalities;
-	use sp_std::convert::TryInto;
 
 	crate::generate_storage_alias! { Prefix, Foo => Value<WeakBoundedVec<u32, ConstU32<7>>> }
 	crate::generate_storage_alias! { Prefix, FooMap => Map<(Twox128, u32), WeakBoundedVec<u32, ConstU32<7>>> }
diff --git a/substrate/frame/uniques/src/benchmarking.rs b/substrate/frame/uniques/src/benchmarking.rs
index d6223ec88f8..19d3dfac6e5 100644
--- a/substrate/frame/uniques/src/benchmarking.rs
+++ b/substrate/frame/uniques/src/benchmarking.rs
@@ -30,7 +30,7 @@ use frame_support::{
 };
 use frame_system::RawOrigin as SystemOrigin;
 use sp_runtime::traits::Bounded;
-use sp_std::{convert::TryInto, prelude::*};
+use sp_std::prelude::*;
 
 use crate::Pallet as Uniques;
 
diff --git a/substrate/frame/vesting/src/lib.rs b/substrate/frame/vesting/src/lib.rs
index 775902f223b..13841a0443c 100644
--- a/substrate/frame/vesting/src/lib.rs
+++ b/substrate/frame/vesting/src/lib.rs
@@ -74,7 +74,7 @@ use sp_runtime::{
 	},
 	RuntimeDebug,
 };
-use sp_std::{convert::TryInto, fmt::Debug, prelude::*};
+use sp_std::{fmt::Debug, prelude::*};
 pub use vesting_info::*;
 pub use weights::WeightInfo;
 
diff --git a/substrate/primitives/application-crypto/src/lib.rs b/substrate/primitives/application-crypto/src/lib.rs
index b12fe72b271..05f89c40ef9 100644
--- a/substrate/primitives/application-crypto/src/lib.rs
+++ b/substrate/primitives/application-crypto/src/lib.rs
@@ -42,7 +42,7 @@ pub use scale_info;
 #[cfg(feature = "std")]
 pub use serde;
 #[doc(hidden)]
-pub use sp_std::{convert::TryFrom, ops::Deref, vec::Vec};
+pub use sp_std::{ops::Deref, vec::Vec};
 
 pub mod ecdsa;
 pub mod ed25519;
@@ -363,7 +363,7 @@ macro_rules! app_crypto_public_common {
 			}
 		}
 
-		impl<'a> $crate::TryFrom<&'a [u8]> for Public {
+		impl<'a> TryFrom<&'a [u8]> for Public {
 			type Error = ();
 
 			fn try_from(data: &'a [u8]) -> Result<Self, Self::Error> {
@@ -518,7 +518,7 @@ macro_rules! app_crypto_signature_common {
 			type Generic = $sig;
 		}
 
-		impl<'a> $crate::TryFrom<&'a [u8]> for Signature {
+		impl<'a> TryFrom<&'a [u8]> for Signature {
 			type Error = ();
 
 			fn try_from(data: &'a [u8]) -> Result<Self, Self::Error> {
@@ -526,7 +526,7 @@ macro_rules! app_crypto_signature_common {
 			}
 		}
 
-		impl $crate::TryFrom<$crate::Vec<u8>> for Signature {
+		impl TryFrom<$crate::Vec<u8>> for Signature {
 			type Error = ();
 
 			fn try_from(data: $crate::Vec<u8>) -> Result<Self, Self::Error> {
diff --git a/substrate/primitives/arithmetic/fuzzer/src/biguint.rs b/substrate/primitives/arithmetic/fuzzer/src/biguint.rs
index e4c088a2e8a..f49743a4b8a 100644
--- a/substrate/primitives/arithmetic/fuzzer/src/biguint.rs
+++ b/substrate/primitives/arithmetic/fuzzer/src/biguint.rs
@@ -29,7 +29,6 @@
 
 use honggfuzz::fuzz;
 use sp_arithmetic::biguint::{BigUint, Single};
-use std::convert::TryFrom;
 
 fn main() {
 	loop {
diff --git a/substrate/primitives/arithmetic/fuzzer/src/normalize.rs b/substrate/primitives/arithmetic/fuzzer/src/normalize.rs
index e4f90dbc1c4..dd717115a5c 100644
--- a/substrate/primitives/arithmetic/fuzzer/src/normalize.rs
+++ b/substrate/primitives/arithmetic/fuzzer/src/normalize.rs
@@ -25,7 +25,6 @@
 
 use honggfuzz::fuzz;
 use sp_arithmetic::Normalizable;
-use std::convert::TryInto;
 
 type Ty = u64;
 
diff --git a/substrate/primitives/arithmetic/src/biguint.rs b/substrate/primitives/arithmetic/src/biguint.rs
index b26ac4294d1..33f0960ee37 100644
--- a/substrate/primitives/arithmetic/src/biguint.rs
+++ b/substrate/primitives/arithmetic/src/biguint.rs
@@ -19,7 +19,7 @@
 
 use codec::{Decode, Encode};
 use num_traits::{One, Zero};
-use sp_std::{cell::RefCell, cmp::Ordering, convert::TryFrom, ops, prelude::*, vec};
+use sp_std::{cell::RefCell, cmp::Ordering, ops, prelude::*, vec};
 
 // A sensible value for this would be half of the dword size of the host machine. Since the
 // runtime is compiled to 32bit webassembly, using 32 and 64 for single and double respectively
@@ -664,7 +664,6 @@ pub mod tests {
 
 	#[test]
 	fn can_try_build_numbers_from_types() {
-		use sp_std::convert::TryFrom;
 		assert_eq!(u64::try_from(with_limbs(1)).unwrap(), 1);
 		assert_eq!(u64::try_from(with_limbs(2)).unwrap(), u32::MAX as u64 + 2);
 		assert_eq!(u64::try_from(with_limbs(3)).unwrap_err(), "cannot fit a number into u64");
diff --git a/substrate/primitives/arithmetic/src/fixed_point.rs b/substrate/primitives/arithmetic/src/fixed_point.rs
index 1c61d6c3806..3ecfb60ee0f 100644
--- a/substrate/primitives/arithmetic/src/fixed_point.rs
+++ b/substrate/primitives/arithmetic/src/fixed_point.rs
@@ -27,7 +27,6 @@ use crate::{
 };
 use codec::{CompactAs, Decode, Encode};
 use sp_std::{
-	convert::{TryFrom, TryInto},
 	fmt::Debug,
 	ops::{self, Add, Div, Mul, Sub},
 	prelude::*,
diff --git a/substrate/primitives/arithmetic/src/helpers_128bit.rs b/substrate/primitives/arithmetic/src/helpers_128bit.rs
index af9729c9702..735b11287cb 100644
--- a/substrate/primitives/arithmetic/src/helpers_128bit.rs
+++ b/substrate/primitives/arithmetic/src/helpers_128bit.rs
@@ -24,7 +24,6 @@ use crate::biguint;
 use num_traits::Zero;
 use sp_std::{
 	cmp::{max, min},
-	convert::TryInto,
 	mem,
 };
 
diff --git a/substrate/primitives/arithmetic/src/lib.rs b/substrate/primitives/arithmetic/src/lib.rs
index 273608a3d17..729da123757 100644
--- a/substrate/primitives/arithmetic/src/lib.rs
+++ b/substrate/primitives/arithmetic/src/lib.rs
@@ -44,7 +44,7 @@ pub use fixed_point::{FixedI128, FixedI64, FixedPointNumber, FixedPointOperand,
 pub use per_things::{InnerOf, PerThing, PerU16, Perbill, Percent, Permill, Perquintill, UpperOf};
 pub use rational::{Rational128, RationalInfinite};
 
-use sp_std::{cmp::Ordering, convert::TryInto, fmt::Debug, prelude::*};
+use sp_std::{cmp::Ordering, fmt::Debug, prelude::*};
 use traits::{BaseArithmetic, One, SaturatedConversion, Unsigned, Zero};
 
 /// Trait for comparing two numbers with an threshold.
diff --git a/substrate/primitives/arithmetic/src/per_things.rs b/substrate/primitives/arithmetic/src/per_things.rs
index c3ccca56ca3..1b9e6d91a2c 100644
--- a/substrate/primitives/arithmetic/src/per_things.rs
+++ b/substrate/primitives/arithmetic/src/per_things.rs
@@ -25,7 +25,6 @@ use crate::traits::{
 use codec::{CompactAs, Encode};
 use num_traits::{Pow, SaturatingAdd, SaturatingSub};
 use sp_std::{
-	convert::{TryFrom, TryInto},
 	fmt, ops,
 	ops::{Add, Sub},
 	prelude::*,
diff --git a/substrate/primitives/arithmetic/src/traits.rs b/substrate/primitives/arithmetic/src/traits.rs
index 447f8cef51f..748aaed2a7c 100644
--- a/substrate/primitives/arithmetic/src/traits.rs
+++ b/substrate/primitives/arithmetic/src/traits.rs
@@ -23,12 +23,8 @@ pub use num_traits::{
 	checked_pow, Bounded, CheckedAdd, CheckedDiv, CheckedMul, CheckedNeg, CheckedRem, CheckedShl,
 	CheckedShr, CheckedSub, One, Signed, Unsigned, Zero,
 };
-use sp_std::{
-	self,
-	convert::{TryFrom, TryInto},
-	ops::{
-		Add, AddAssign, Div, DivAssign, Mul, MulAssign, Rem, RemAssign, Shl, Shr, Sub, SubAssign,
-	},
+use sp_std::ops::{
+	Add, AddAssign, Div, DivAssign, Mul, MulAssign, Rem, RemAssign, Shl, Shr, Sub, SubAssign,
 };
 
 /// A meta trait for arithmetic type operations, regardless of any limitation on size.
diff --git a/substrate/primitives/consensus/common/src/error.rs b/substrate/primitives/consensus/common/src/error.rs
index 280ff232289..0656b5761fb 100644
--- a/substrate/primitives/consensus/common/src/error.rs
+++ b/substrate/primitives/consensus/common/src/error.rs
@@ -86,13 +86,13 @@ pub enum Error {
 	CannotSign(Vec<u8>, String),
 }
 
-impl core::convert::From<Public> for Error {
+impl From<Public> for Error {
 	fn from(p: Public) -> Self {
 		Self::InvalidAuthority(p)
 	}
 }
 
-impl core::convert::From<String> for Error {
+impl From<String> for Error {
 	fn from(s: String) -> Self {
 		Self::StateUnavailable(s)
 	}
diff --git a/substrate/primitives/consensus/vrf/src/schnorrkel.rs b/substrate/primitives/consensus/vrf/src/schnorrkel.rs
index 1ef23427e0e..094a398893f 100644
--- a/substrate/primitives/consensus/vrf/src/schnorrkel.rs
+++ b/substrate/primitives/consensus/vrf/src/schnorrkel.rs
@@ -21,7 +21,6 @@ use codec::{Decode, Encode, EncodeLike};
 use schnorrkel::errors::MultiSignatureStage;
 use sp_core::U512;
 use sp_std::{
-	convert::TryFrom,
 	ops::{Deref, DerefMut},
 	prelude::*,
 };
diff --git a/substrate/primitives/core/src/crypto.rs b/substrate/primitives/core/src/crypto.rs
index 12f8397eee4..f994da15153 100644
--- a/substrate/primitives/core/src/crypto.rs
+++ b/substrate/primitives/core/src/crypto.rs
@@ -38,7 +38,7 @@ pub use secrecy::SecretString;
 use sp_runtime_interface::pass_by::PassByInner;
 #[doc(hidden)]
 pub use sp_std::ops::Deref;
-use sp_std::{convert::TryFrom, hash::Hash, str, vec::Vec};
+use sp_std::{hash::Hash, str, vec::Vec};
 /// Trait to zeroize a memory buffer.
 pub use zeroize::Zeroize;
 
@@ -535,7 +535,7 @@ impl From<[u8; 32]> for AccountId32 {
 	}
 }
 
-impl<'a> sp_std::convert::TryFrom<&'a [u8]> for AccountId32 {
+impl<'a> TryFrom<&'a [u8]> for AccountId32 {
 	type Error = ();
 	fn try_from(x: &'a [u8]) -> Result<AccountId32, ()> {
 		if x.len() == 32 {
diff --git a/substrate/primitives/core/src/ecdsa.rs b/substrate/primitives/core/src/ecdsa.rs
index 7a4e4399913..6343e3f4dfd 100644
--- a/substrate/primitives/core/src/ecdsa.rs
+++ b/substrate/primitives/core/src/ecdsa.rs
@@ -137,7 +137,7 @@ impl AsMut<[u8]> for Public {
 	}
 }
 
-impl sp_std::convert::TryFrom<&[u8]> for Public {
+impl TryFrom<&[u8]> for Public {
 	type Error = ();
 
 	fn try_from(data: &[u8]) -> Result<Self, Self::Error> {
@@ -209,7 +209,7 @@ impl<'de> Deserialize<'de> for Public {
 #[derive(Encode, Decode, MaxEncodedLen, PassByInner, TypeInfo, PartialEq, Eq)]
 pub struct Signature(pub [u8; 65]);
 
-impl sp_std::convert::TryFrom<&[u8]> for Signature {
+impl TryFrom<&[u8]> for Signature {
 	type Error = ();
 
 	fn try_from(data: &[u8]) -> Result<Self, Self::Error> {
diff --git a/substrate/primitives/core/src/ed25519.rs b/substrate/primitives/core/src/ed25519.rs
index 555c23c6b60..0bde9e2e530 100644
--- a/substrate/primitives/core/src/ed25519.rs
+++ b/substrate/primitives/core/src/ed25519.rs
@@ -39,8 +39,6 @@ use crate::crypto::{DeriveJunction, Pair as TraitPair, SecretStringError};
 #[cfg(feature = "std")]
 use bip39::{Language, Mnemonic, MnemonicType};
 #[cfg(feature = "full_crypto")]
-use core::convert::TryFrom;
-#[cfg(feature = "full_crypto")]
 use ed25519_dalek::{Signer as _, Verifier as _};
 #[cfg(feature = "std")]
 use serde::{de, Deserialize, Deserializer, Serialize, Serializer};
@@ -116,7 +114,7 @@ impl Deref for Public {
 	}
 }
 
-impl sp_std::convert::TryFrom<&[u8]> for Public {
+impl TryFrom<&[u8]> for Public {
 	type Error = ();
 
 	fn try_from(data: &[u8]) -> Result<Self, Self::Error> {
@@ -215,7 +213,7 @@ impl<'de> Deserialize<'de> for Public {
 #[derive(Encode, Decode, MaxEncodedLen, PassByInner, TypeInfo, PartialEq, Eq)]
 pub struct Signature(pub [u8; 64]);
 
-impl sp_std::convert::TryFrom<&[u8]> for Signature {
+impl TryFrom<&[u8]> for Signature {
 	type Error = ();
 
 	fn try_from(data: &[u8]) -> Result<Self, Self::Error> {
diff --git a/substrate/primitives/core/src/offchain/mod.rs b/substrate/primitives/core/src/offchain/mod.rs
index b9e310dc1fb..4ffadc3e403 100644
--- a/substrate/primitives/core/src/offchain/mod.rs
+++ b/substrate/primitives/core/src/offchain/mod.rs
@@ -21,10 +21,7 @@ use crate::{OpaquePeerId, RuntimeDebug};
 use codec::{Decode, Encode};
 use scale_info::TypeInfo;
 use sp_runtime_interface::pass_by::{PassByCodec, PassByEnum, PassByInner};
-use sp_std::{
-	convert::TryFrom,
-	prelude::{Box, Vec},
-};
+use sp_std::prelude::{Box, Vec};
 
 pub use crate::crypto::KeyTypeId;
 
diff --git a/substrate/primitives/core/src/sr25519.rs b/substrate/primitives/core/src/sr25519.rs
index 2f298fa2a26..ef033c2099b 100644
--- a/substrate/primitives/core/src/sr25519.rs
+++ b/substrate/primitives/core/src/sr25519.rs
@@ -35,8 +35,6 @@ use schnorrkel::{
 #[cfg(feature = "full_crypto")]
 use sp_std::vec::Vec;
 #[cfg(feature = "std")]
-use std::convert::TryFrom;
-#[cfg(feature = "std")]
 use substrate_bip39::mini_secret_from_entropy;
 
 use crate::{
@@ -142,7 +140,7 @@ impl std::str::FromStr for Public {
 	}
 }
 
-impl sp_std::convert::TryFrom<&[u8]> for Public {
+impl TryFrom<&[u8]> for Public {
 	type Error = ();
 
 	fn try_from(data: &[u8]) -> Result<Self, Self::Error> {
@@ -215,7 +213,7 @@ impl<'de> Deserialize<'de> for Public {
 #[derive(Encode, Decode, MaxEncodedLen, PassByInner, TypeInfo, PartialEq, Eq)]
 pub struct Signature(pub [u8; 64]);
 
-impl sp_std::convert::TryFrom<&[u8]> for Signature {
+impl TryFrom<&[u8]> for Signature {
 	type Error = ();
 
 	fn try_from(data: &[u8]) -> Result<Self, Self::Error> {
diff --git a/substrate/primitives/rpc/src/number.rs b/substrate/primitives/rpc/src/number.rs
index 5a433a9598e..81084a09d4a 100644
--- a/substrate/primitives/rpc/src/number.rs
+++ b/substrate/primitives/rpc/src/number.rs
@@ -20,10 +20,7 @@
 
 use serde::{Deserialize, Serialize};
 use sp_core::U256;
-use std::{
-	convert::{TryFrom, TryInto},
-	fmt::Debug,
-};
+use std::fmt::Debug;
 
 /// A number type that can be serialized both as a number or a string that encodes a number in a
 /// string.
diff --git a/substrate/primitives/runtime-interface/proc-macro/src/pass_by/enum_.rs b/substrate/primitives/runtime-interface/proc-macro/src/pass_by/enum_.rs
index 1fd22c6a253..7c3f066f6c8 100644
--- a/substrate/primitives/runtime-interface/proc-macro/src/pass_by/enum_.rs
+++ b/substrate/primitives/runtime-interface/proc-macro/src/pass_by/enum_.rs
@@ -51,7 +51,7 @@ pub fn derive_impl(input: DeriveInput) -> Result<TokenStream> {
 				type PassBy = #crate_::pass_by::Enum<#ident>;
 			}
 
-			impl #crate_::sp_std::convert::TryFrom<u8> for #ident {
+			impl TryFrom<u8> for #ident {
 				type Error = ();
 
 				fn try_from(inner: u8) -> #crate_::sp_std::result::Result<Self, ()> {
diff --git a/substrate/primitives/runtime-interface/src/pass_by.rs b/substrate/primitives/runtime-interface/src/pass_by.rs
index fb2d6b818d1..5d895ff5b3f 100644
--- a/substrate/primitives/runtime-interface/src/pass_by.rs
+++ b/substrate/primitives/runtime-interface/src/pass_by.rs
@@ -33,7 +33,7 @@ use crate::wasm::*;
 #[cfg(feature = "std")]
 use sp_wasm_interface::{FunctionContext, Pointer, Result};
 
-use sp_std::{convert::TryFrom, marker::PhantomData};
+use sp_std::marker::PhantomData;
 
 #[cfg(not(feature = "std"))]
 use sp_std::vec::Vec;
@@ -382,7 +382,7 @@ impl<T: PassByInner<Inner = I>, I: RIType> RIType for Inner<T, I> {
 ///     }
 /// }
 ///
-/// impl std::convert::TryFrom<u8> for Test {
+/// impl TryFrom<u8> for Test {
 ///     type Error = ();
 ///
 ///     fn try_from(val: u8) -> Result<Test, ()> {
diff --git a/substrate/primitives/runtime-interface/test-wasm/src/lib.rs b/substrate/primitives/runtime-interface/test-wasm/src/lib.rs
index 0c8a9c04ab1..f518a2e1749 100644
--- a/substrate/primitives/runtime-interface/test-wasm/src/lib.rs
+++ b/substrate/primitives/runtime-interface/test-wasm/src/lib.rs
@@ -22,7 +22,7 @@
 use sp_runtime_interface::runtime_interface;
 
 #[cfg(not(feature = "std"))]
-use sp_std::{convert::TryFrom, mem, prelude::*};
+use sp_std::{mem, prelude::*};
 
 use sp_core::{sr25519::Public, wasm_export_functions};
 
diff --git a/substrate/primitives/runtime/src/curve.rs b/substrate/primitives/runtime/src/curve.rs
index b5532c3d8ce..c6bfa660178 100644
--- a/substrate/primitives/runtime/src/curve.rs
+++ b/substrate/primitives/runtime/src/curve.rs
@@ -110,8 +110,6 @@ where
 
 #[test]
 fn test_multiply_by_rational_saturating() {
-	use std::convert::TryInto;
-
 	let div = 100u32;
 	for value in 0..=div {
 		for p in 0..=div {
@@ -132,8 +130,6 @@ fn test_multiply_by_rational_saturating() {
 
 #[test]
 fn test_calculate_for_fraction_times_denominator() {
-	use std::convert::TryInto;
-
 	let curve = PiecewiseLinear {
 		points: &[
 			(Perbill::from_parts(0_000_000_000), Perbill::from_parts(0_500_000_000)),
diff --git a/substrate/primitives/runtime/src/generic/header.rs b/substrate/primitives/runtime/src/generic/header.rs
index 3e1a673d257..a7b43608f2b 100644
--- a/substrate/primitives/runtime/src/generic/header.rs
+++ b/substrate/primitives/runtime/src/generic/header.rs
@@ -29,7 +29,7 @@ use crate::{
 #[cfg(feature = "std")]
 use serde::{Deserialize, Serialize};
 use sp_core::U256;
-use sp_std::{convert::TryFrom, fmt::Debug};
+use sp_std::fmt::Debug;
 
 /// Abstraction over a block header for a substrate chain.
 #[derive(Encode, Decode, PartialEq, Eq, Clone, sp_core::RuntimeDebug, TypeInfo)]
diff --git a/substrate/primitives/runtime/src/lib.rs b/substrate/primitives/runtime/src/lib.rs
index c09db5124cc..39e606eb9b5 100644
--- a/substrate/primitives/runtime/src/lib.rs
+++ b/substrate/primitives/runtime/src/lib.rs
@@ -50,7 +50,7 @@ use sp_core::{
 	hash::{H256, H512},
 	sr25519,
 };
-use sp_std::{convert::TryFrom, prelude::*};
+use sp_std::prelude::*;
 
 use codec::{Decode, Encode, MaxEncodedLen};
 use scale_info::TypeInfo;
diff --git a/substrate/primitives/runtime/src/traits.rs b/substrate/primitives/runtime/src/traits.rs
index ba4ca790a91..9c71b2023d3 100644
--- a/substrate/primitives/runtime/src/traits.rs
+++ b/substrate/primitives/runtime/src/traits.rs
@@ -37,13 +37,7 @@ pub use sp_arithmetic::traits::{
 	UniqueSaturatedFrom, UniqueSaturatedInto, Zero,
 };
 use sp_core::{self, storage::StateVersion, Hasher, RuntimeDebug, TypeId};
-use sp_std::{
-	self,
-	convert::{TryFrom, TryInto},
-	fmt::Debug,
-	marker::PhantomData,
-	prelude::*,
-};
+use sp_std::{self, fmt::Debug, marker::PhantomData, prelude::*};
 #[cfg(feature = "std")]
 use std::fmt::Display;
 #[cfg(feature = "std")]
diff --git a/substrate/primitives/std/src/lib.rs b/substrate/primitives/std/src/lib.rs
index 05dff0f3077..6653c3d7ead 100644
--- a/substrate/primitives/std/src/lib.rs
+++ b/substrate/primitives/std/src/lib.rs
@@ -103,7 +103,6 @@ pub mod prelude {
 		boxed::Box,
 		clone::Clone,
 		cmp::{Eq, PartialEq, Reverse},
-		convert::{TryFrom, TryInto},
 		iter::IntoIterator,
 		vec::Vec,
 	};
diff --git a/substrate/primitives/storage/src/lib.rs b/substrate/primitives/storage/src/lib.rs
index d377ea931df..fecd2b24dbb 100644
--- a/substrate/primitives/storage/src/lib.rs
+++ b/substrate/primitives/storage/src/lib.rs
@@ -423,7 +423,7 @@ impl From<StateVersion> for u8 {
 	}
 }
 
-impl sp_std::convert::TryFrom<u8> for StateVersion {
+impl TryFrom<u8> for StateVersion {
 	type Error = ();
 	fn try_from(val: u8) -> sp_std::result::Result<StateVersion, ()> {
 		match val {
diff --git a/substrate/primitives/wasm-interface/src/lib.rs b/substrate/primitives/wasm-interface/src/lib.rs
index d57666f1268..6dfc3116ddc 100644
--- a/substrate/primitives/wasm-interface/src/lib.rs
+++ b/substrate/primitives/wasm-interface/src/lib.rs
@@ -73,7 +73,7 @@ impl From<ValueType> for u8 {
 	}
 }
 
-impl sp_std::convert::TryFrom<u8> for ValueType {
+impl TryFrom<u8> for ValueType {
 	type Error = ();
 
 	fn try_from(val: u8) -> sp_std::result::Result<ValueType, ()> {
diff --git a/substrate/utils/prometheus/src/lib.rs b/substrate/utils/prometheus/src/lib.rs
index 1892741eff5..3ea9d45d48b 100644
--- a/substrate/utils/prometheus/src/lib.rs
+++ b/substrate/utils/prometheus/src/lib.rs
@@ -122,7 +122,6 @@ async fn init_prometheus_with_listener(
 mod tests {
 	use super::*;
 	use hyper::{Client, Uri};
-	use std::convert::TryFrom;
 
 	#[test]
 	fn prometheus_works() {
-- 
GitLab