From ea21a495f87bea5ec85d5d838d09526117e4c2ca Mon Sep 17 00:00:00 2001
From: Squirrel <gilescope@gmail.com>
Date: Tue, 23 May 2023 16:06:48 +0100
Subject: [PATCH] Easy PR: Fix warnings from latest nightly (#14195)

* unneeded mut

* remove needless borrows
---
 substrate/bin/node/bench/src/tempdb.rs             |  2 +-
 substrate/client/db/src/parity_db.rs               |  6 +++---
 substrate/client/db/src/pinned_blocks_cache.rs     |  4 ++--
 .../network/src/protocol/notifications/handler.rs  |  2 +-
 substrate/client/network/sync/src/state.rs         |  2 +-
 substrate/client/statement-store/src/lib.rs        |  4 ++--
 substrate/frame/bounties/src/lib.rs                | 10 +++++-----
 substrate/frame/child-bounties/src/lib.rs          |  8 ++++----
 .../frame/nomination-pools/benchmarking/src/lib.rs |  2 +-
 substrate/frame/staking/src/pallet/mod.rs          |  4 +---
 .../support/src/storage/generator/double_map.rs    | 14 +++++++-------
 .../frame/support/src/storage/generator/map.rs     |  4 ++--
 substrate/primitives/npos-elections/src/lib.rs     |  2 +-
 13 files changed, 31 insertions(+), 33 deletions(-)

diff --git a/substrate/bin/node/bench/src/tempdb.rs b/substrate/bin/node/bench/src/tempdb.rs
index 2aafd013a58..f3fd693d21f 100644
--- a/substrate/bin/node/bench/src/tempdb.rs
+++ b/substrate/bin/node/bench/src/tempdb.rs
@@ -90,7 +90,7 @@ impl TempDatabase {
 			},
 			DatabaseType::ParityDb => Arc::new(ParityDbWrapper({
 				let mut options = parity_db::Options::with_columns(self.0.path(), 1);
-				let mut column_options = &mut options.columns[0];
+				let column_options = &mut options.columns[0];
 				column_options.ref_counted = true;
 				column_options.preimage = true;
 				column_options.uniform = true;
diff --git a/substrate/client/db/src/parity_db.rs b/substrate/client/db/src/parity_db.rs
index 01562081a8f..b7068f2430e 100644
--- a/substrate/client/db/src/parity_db.rs
+++ b/substrate/client/db/src/parity_db.rs
@@ -54,16 +54,16 @@ pub fn open<H: Clone + AsRef<[u8]>>(
 			];
 
 			for i in compressed {
-				let mut column = &mut config.columns[i as usize];
+				let column = &mut config.columns[i as usize];
 				column.compression = parity_db::CompressionType::Lz4;
 			}
 
-			let mut state_col = &mut config.columns[columns::STATE as usize];
+			let state_col = &mut config.columns[columns::STATE as usize];
 			state_col.ref_counted = true;
 			state_col.preimage = true;
 			state_col.uniform = true;
 
-			let mut tx_col = &mut config.columns[columns::TRANSACTION as usize];
+			let tx_col = &mut config.columns[columns::TRANSACTION as usize];
 			tx_col.ref_counted = true;
 			tx_col.preimage = true;
 			tx_col.uniform = true;
diff --git a/substrate/client/db/src/pinned_blocks_cache.rs b/substrate/client/db/src/pinned_blocks_cache.rs
index 7b346b4631e..46c9287fb19 100644
--- a/substrate/client/db/src/pinned_blocks_cache.rs
+++ b/substrate/client/db/src/pinned_blocks_cache.rs
@@ -168,7 +168,7 @@ impl<Block: BlockT> PinnedBlocksCache<Block> {
 	/// Attach body to an existing cache item
 	pub fn insert_body(&mut self, hash: Block::Hash, extrinsics: Option<Vec<Block::Extrinsic>>) {
 		match self.cache.peek_mut(&hash) {
-			Some(mut entry) => {
+			Some(entry) => {
 				entry.body = Some(extrinsics);
 				log::trace!(
 					target: LOG_TARGET,
@@ -192,7 +192,7 @@ impl<Block: BlockT> PinnedBlocksCache<Block> {
 		justifications: Option<Justifications>,
 	) {
 		match self.cache.peek_mut(&hash) {
-			Some(mut entry) => {
+			Some(entry) => {
 				entry.justifications = Some(justifications);
 				log::trace!(
 					target: LOG_TARGET,
diff --git a/substrate/client/network/src/protocol/notifications/handler.rs b/substrate/client/network/src/protocol/notifications/handler.rs
index 665b646ecdc..0ac2e250a2e 100644
--- a/substrate/client/network/src/protocol/notifications/handler.rs
+++ b/substrate/client/network/src/protocol/notifications/handler.rs
@@ -467,7 +467,7 @@ impl ConnectionHandler for NotifsHandler {
 		match event {
 			ConnectionEvent::FullyNegotiatedInbound(inbound) => {
 				let (mut in_substream_open, protocol_index) = inbound.protocol;
-				let mut protocol_info = &mut self.protocols[protocol_index];
+				let protocol_info = &mut self.protocols[protocol_index];
 
 				match protocol_info.state {
 					State::Closed { pending_opening } => {
diff --git a/substrate/client/network/sync/src/state.rs b/substrate/client/network/sync/src/state.rs
index 0fcf1715817..305f0ee6838 100644
--- a/substrate/client/network/sync/src/state.rs
+++ b/substrate/client/network/sync/src/state.rs
@@ -150,7 +150,7 @@ where
 				} else {
 					values.key_values
 				};
-				let mut entry = self.state.entry(values.state_root).or_default();
+				let entry = self.state.entry(values.state_root).or_default();
 				if entry.0.len() > 0 && entry.1.len() > 1 {
 					// Already imported child_trie with same root.
 					// Warning this will not work with parallel download.
diff --git a/substrate/client/statement-store/src/lib.rs b/substrate/client/statement-store/src/lib.rs
index 2e2bb3bd3b4..4acb89a05f7 100644
--- a/substrate/client/statement-store/src/lib.rs
+++ b/substrate/client/statement-store/src/lib.rs
@@ -236,7 +236,7 @@ impl Index {
 		let priority = Priority(statement.priority().unwrap_or(0));
 		self.entries.insert(hash, (account, priority, statement.data_len()));
 		self.total_size += statement.data_len();
-		let mut account_info = self.accounts.entry(account).or_default();
+		let account_info = self.accounts.entry(account).or_default();
 		account_info.data_size += statement.data_len();
 		if let Some(channel) = statement.channel() {
 			account_info.channels.insert(channel, ChannelEntry { hash, priority });
@@ -530,7 +530,7 @@ impl Store {
 
 		let mut config = parity_db::Options::with_columns(&path, col::COUNT);
 
-		let mut statement_col = &mut config.columns[col::STATEMENTS as usize];
+		let statement_col = &mut config.columns[col::STATEMENTS as usize];
 		statement_col.ref_counted = false;
 		statement_col.preimage = true;
 		statement_col.uniform = true;
diff --git a/substrate/frame/bounties/src/lib.rs b/substrate/frame/bounties/src/lib.rs
index 14f7b45cb9a..07ac23a9d80 100644
--- a/substrate/frame/bounties/src/lib.rs
+++ b/substrate/frame/bounties/src/lib.rs
@@ -361,7 +361,7 @@ pub mod pallet {
 		) -> DispatchResult {
 			let max_amount = T::SpendOrigin::ensure_origin(origin)?;
 			Bounties::<T, I>::try_mutate_exists(bounty_id, |maybe_bounty| -> DispatchResult {
-				let mut bounty = maybe_bounty.as_mut().ok_or(Error::<T, I>::InvalidIndex)?;
+				let bounty = maybe_bounty.as_mut().ok_or(Error::<T, I>::InvalidIndex)?;
 				ensure!(
 					bounty.value <= max_amount,
 					pallet_treasury::Error::<T, I>::InsufficientPermission
@@ -396,7 +396,7 @@ pub mod pallet {
 
 			let curator = T::Lookup::lookup(curator)?;
 			Bounties::<T, I>::try_mutate_exists(bounty_id, |maybe_bounty| -> DispatchResult {
-				let mut bounty = maybe_bounty.as_mut().ok_or(Error::<T, I>::InvalidIndex)?;
+				let bounty = maybe_bounty.as_mut().ok_or(Error::<T, I>::InvalidIndex)?;
 				ensure!(
 					bounty.value <= max_amount,
 					pallet_treasury::Error::<T, I>::InsufficientPermission
@@ -444,7 +444,7 @@ pub mod pallet {
 				.or_else(|_| T::RejectOrigin::ensure_origin(origin).map(|_| None))?;
 
 			Bounties::<T, I>::try_mutate_exists(bounty_id, |maybe_bounty| -> DispatchResult {
-				let mut bounty = maybe_bounty.as_mut().ok_or(Error::<T, I>::InvalidIndex)?;
+				let bounty = maybe_bounty.as_mut().ok_or(Error::<T, I>::InvalidIndex)?;
 
 				let slash_curator = |curator: &T::AccountId,
 				                     curator_deposit: &mut BalanceOf<T, I>| {
@@ -527,7 +527,7 @@ pub mod pallet {
 			let signer = ensure_signed(origin)?;
 
 			Bounties::<T, I>::try_mutate_exists(bounty_id, |maybe_bounty| -> DispatchResult {
-				let mut bounty = maybe_bounty.as_mut().ok_or(Error::<T, I>::InvalidIndex)?;
+				let bounty = maybe_bounty.as_mut().ok_or(Error::<T, I>::InvalidIndex)?;
 
 				match bounty.status {
 					BountyStatus::CuratorProposed { ref curator } => {
@@ -571,7 +571,7 @@ pub mod pallet {
 			let beneficiary = T::Lookup::lookup(beneficiary)?;
 
 			Bounties::<T, I>::try_mutate_exists(bounty_id, |maybe_bounty| -> DispatchResult {
-				let mut bounty = maybe_bounty.as_mut().ok_or(Error::<T, I>::InvalidIndex)?;
+				let bounty = maybe_bounty.as_mut().ok_or(Error::<T, I>::InvalidIndex)?;
 
 				// Ensure no active child bounties before processing the call.
 				ensure!(
diff --git a/substrate/frame/child-bounties/src/lib.rs b/substrate/frame/child-bounties/src/lib.rs
index 094b41822c4..14c1907af2c 100644
--- a/substrate/frame/child-bounties/src/lib.rs
+++ b/substrate/frame/child-bounties/src/lib.rs
@@ -331,7 +331,7 @@ pub mod pallet {
 				parent_bounty_id,
 				child_bounty_id,
 				|maybe_child_bounty| -> DispatchResult {
-					let mut child_bounty =
+					let child_bounty =
 						maybe_child_bounty.as_mut().ok_or(BountiesError::<T>::InvalidIndex)?;
 
 					// Ensure child-bounty is in expected state.
@@ -396,7 +396,7 @@ pub mod pallet {
 				parent_bounty_id,
 				child_bounty_id,
 				|maybe_child_bounty| -> DispatchResult {
-					let mut child_bounty =
+					let child_bounty =
 						maybe_child_bounty.as_mut().ok_or(BountiesError::<T>::InvalidIndex)?;
 
 					// Ensure child-bounty is in expected state.
@@ -473,7 +473,7 @@ pub mod pallet {
 				parent_bounty_id,
 				child_bounty_id,
 				|maybe_child_bounty| -> DispatchResult {
-					let mut child_bounty =
+					let child_bounty =
 						maybe_child_bounty.as_mut().ok_or(BountiesError::<T>::InvalidIndex)?;
 
 					let slash_curator = |curator: &T::AccountId,
@@ -591,7 +591,7 @@ pub mod pallet {
 				parent_bounty_id,
 				child_bounty_id,
 				|maybe_child_bounty| -> DispatchResult {
-					let mut child_bounty =
+					let child_bounty =
 						maybe_child_bounty.as_mut().ok_or(BountiesError::<T>::InvalidIndex)?;
 
 					// Ensure child-bounty is in active state.
diff --git a/substrate/frame/nomination-pools/benchmarking/src/lib.rs b/substrate/frame/nomination-pools/benchmarking/src/lib.rs
index 137b9e9af63..30bef6221c9 100644
--- a/substrate/frame/nomination-pools/benchmarking/src/lib.rs
+++ b/substrate/frame/nomination-pools/benchmarking/src/lib.rs
@@ -609,7 +609,7 @@ frame_benchmarking::benchmarks! {
 		let (depositor, pool_account) = create_pool_account::<T>(0, min_create_bond, None);
 		BondedPools::<T>::mutate(&1, |maybe_pool| {
 			// Force the pool into an invalid state
-			maybe_pool.as_mut().map(|mut pool| pool.points = min_create_bond * 10u32.into());
+			maybe_pool.as_mut().map(|pool| pool.points = min_create_bond * 10u32.into());
 		});
 
 		let caller = account("caller", 0, USER_SEED);
diff --git a/substrate/frame/staking/src/pallet/mod.rs b/substrate/frame/staking/src/pallet/mod.rs
index 35aa2626e3b..d8a7de2193b 100644
--- a/substrate/frame/staking/src/pallet/mod.rs
+++ b/substrate/frame/staking/src/pallet/mod.rs
@@ -1006,9 +1006,7 @@ pub mod pallet {
 
 				// Note: in case there is no current era it is fine to bond one era more.
 				let era = Self::current_era().unwrap_or(0) + T::BondingDuration::get();
-				if let Some(mut chunk) =
-					ledger.unlocking.last_mut().filter(|chunk| chunk.era == era)
-				{
+				if let Some(chunk) = ledger.unlocking.last_mut().filter(|chunk| chunk.era == era) {
 					// To keep the chunk count down, we only keep one chunk per era. Since
 					// `unlocking` is a FiFo queue, if a chunk exists for `era` we know that it will
 					// be the last one.
diff --git a/substrate/frame/support/src/storage/generator/double_map.rs b/substrate/frame/support/src/storage/generator/double_map.rs
index 5da68873b10..00a3f1bc7c1 100644
--- a/substrate/frame/support/src/storage/generator/double_map.rs
+++ b/substrate/frame/support/src/storage/generator/double_map.rs
@@ -21,7 +21,7 @@ use crate::{
 	Never,
 };
 use codec::{Decode, Encode, EncodeLike, FullCodec, FullEncode};
-use sp_std::{borrow::Borrow, prelude::*};
+use sp_std::prelude::*;
 
 /// Generator for `StorageDoubleMap` used by `decl_storage`.
 ///
@@ -78,7 +78,7 @@ pub trait StorageDoubleMap<K1: FullEncode, K2: FullEncode, V: FullCodec> {
 		KArg1: EncodeLike<K1>,
 	{
 		let storage_prefix = storage_prefix(Self::module_prefix(), Self::storage_prefix());
-		let key_hashed = k1.borrow().using_encoded(Self::Hasher1::hash);
+		let key_hashed = k1.using_encoded(Self::Hasher1::hash);
 
 		let mut final_key = Vec::with_capacity(storage_prefix.len() + key_hashed.as_ref().len());
 
@@ -95,8 +95,8 @@ pub trait StorageDoubleMap<K1: FullEncode, K2: FullEncode, V: FullCodec> {
 		KArg2: EncodeLike<K2>,
 	{
 		let storage_prefix = storage_prefix(Self::module_prefix(), Self::storage_prefix());
-		let key1_hashed = k1.borrow().using_encoded(Self::Hasher1::hash);
-		let key2_hashed = k2.borrow().using_encoded(Self::Hasher2::hash);
+		let key1_hashed = k1.using_encoded(Self::Hasher1::hash);
+		let key2_hashed = k2.using_encoded(Self::Hasher2::hash);
 
 		let mut final_key = Vec::with_capacity(
 			storage_prefix.len() + key1_hashed.as_ref().len() + key2_hashed.as_ref().len(),
@@ -198,7 +198,7 @@ where
 		KArg2: EncodeLike<K2>,
 		VArg: EncodeLike<V>,
 	{
-		unhashed::put(&Self::storage_double_map_final_key(k1, k2), &val.borrow())
+		unhashed::put(&Self::storage_double_map_final_key(k1, k2), &val)
 	}
 
 	fn remove<KArg1, KArg2>(k1: KArg1, k2: KArg2)
@@ -336,8 +336,8 @@ where
 		let old_key = {
 			let storage_prefix = storage_prefix(Self::module_prefix(), Self::storage_prefix());
 
-			let key1_hashed = key1.borrow().using_encoded(OldHasher1::hash);
-			let key2_hashed = key2.borrow().using_encoded(OldHasher2::hash);
+			let key1_hashed = key1.using_encoded(OldHasher1::hash);
+			let key2_hashed = key2.using_encoded(OldHasher2::hash);
 
 			let mut final_key = Vec::with_capacity(
 				storage_prefix.len() + key1_hashed.as_ref().len() + key2_hashed.as_ref().len(),
diff --git a/substrate/frame/support/src/storage/generator/map.rs b/substrate/frame/support/src/storage/generator/map.rs
index 3b36b9bddb7..3cd7bea2fe7 100644
--- a/substrate/frame/support/src/storage/generator/map.rs
+++ b/substrate/frame/support/src/storage/generator/map.rs
@@ -68,7 +68,7 @@ pub trait StorageMap<K: FullEncode, V: FullCodec> {
 		KeyArg: EncodeLike<K>,
 	{
 		let storage_prefix = storage_prefix(Self::module_prefix(), Self::storage_prefix());
-		let key_hashed = key.borrow().using_encoded(Self::Hasher::hash);
+		let key_hashed = key.using_encoded(Self::Hasher::hash);
 
 		let mut final_key = Vec::with_capacity(storage_prefix.len() + key_hashed.as_ref().len());
 
@@ -327,7 +327,7 @@ impl<K: FullEncode, V: FullCodec, G: StorageMap<K, V>> storage::StorageMap<K, V>
 	fn migrate_key<OldHasher: StorageHasher, KeyArg: EncodeLike<K>>(key: KeyArg) -> Option<V> {
 		let old_key = {
 			let storage_prefix = storage_prefix(Self::module_prefix(), Self::storage_prefix());
-			let key_hashed = key.borrow().using_encoded(OldHasher::hash);
+			let key_hashed = key.using_encoded(OldHasher::hash);
 
 			let mut final_key =
 				Vec::with_capacity(storage_prefix.len() + key_hashed.as_ref().len());
diff --git a/substrate/primitives/npos-elections/src/lib.rs b/substrate/primitives/npos-elections/src/lib.rs
index 253a231602f..9239a2d90d3 100644
--- a/substrate/primitives/npos-elections/src/lib.rs
+++ b/substrate/primitives/npos-elections/src/lib.rs
@@ -470,7 +470,7 @@ pub fn to_support_map<AccountId: IdentifierT>(
 	// build support struct.
 	for StakedAssignment { who, distribution } in assignments.iter() {
 		for (c, weight_extended) in distribution.iter() {
-			let mut support = supports.entry(c.clone()).or_default();
+			let support = supports.entry(c.clone()).or_default();
 			support.total = support.total.saturating_add(*weight_extended);
 			support.voters.push((who.clone(), *weight_extended));
 		}
-- 
GitLab