From c7cf638c048b785fd02c16d8b40ce54c41ac454f Mon Sep 17 00:00:00 2001 From: Edwin Date: Mon, 23 May 2022 00:00:46 +0800 Subject: [PATCH] Fix clippy (#597) * Run `cargo clippy --fix` * Run `cargo clippy --fix` * Add clippy flags * Cargo fmt --- .cargo/config.toml | 33 ++++++ node/cli/src/command.rs | 17 +-- node/primitives/src/currency.rs | 6 +- node/primitives/src/salp.rs | 5 +- node/rpc/src/lib.rs | 4 +- node/service/src/chain_spec/bifrost_kusama.rs | 6 +- .../src/chain_spec/bifrost_polkadot.rs | 6 +- node/service/src/collator_kusama.rs | 2 +- node/service/src/collator_polkadot.rs | 2 +- pallets/flexible-fee/src/fee_dealer.rs | 6 +- pallets/flexible-fee/src/lib.rs | 20 ++-- pallets/flexible-fee/src/misc_fees.rs | 2 +- pallets/lightening-redeem/src/lib.rs | 20 ++-- pallets/lightening-redeem/src/mock.rs | 1 - pallets/liquidity-mining/src/lib.rs | 41 +++---- pallets/liquidity-mining/src/tests.rs | 54 ++++----- pallets/slp/src/agents/kusama_agent/agent.rs | 26 ++--- pallets/slp/src/lib.rs | 4 +- pallets/slp/src/mock.rs | 7 +- pallets/slp/src/tests.rs | 27 ++--- pallets/token-issuer/src/mock.rs | 1 - pallets/vesting/src/lib.rs | 4 +- pallets/vsbond-auction/src/lib.rs | 6 +- pallets/vstoken-conversion/src/mock.rs | 1 - pallets/vtoken-minting/src/lib.rs | 103 ++++++++---------- pallets/vtoken-minting/src/mock.rs | 1 - pallets/xcm-interface/src/lib.rs | 2 +- runtime/bifrost-kusama/src/lib.rs | 8 +- 28 files changed, 208 insertions(+), 207 deletions(-) create mode 100644 .cargo/config.toml diff --git a/.cargo/config.toml b/.cargo/config.toml new file mode 100644 index 000000000..9e86a28f8 --- /dev/null +++ b/.cargo/config.toml @@ -0,0 +1,33 @@ +# +# An auto defined `clippy` feature was introduced, +# but it was found to clash with user defined features, +# so was renamed to `cargo-clippy`. +# +# If you want standard clippy run: +# RUSTFLAGS= cargo clippy +[target.'cfg(feature = "cargo-clippy")'] +rustflags = [ + "-Aclippy::all", + "-Dclippy::correctness", + "-Aclippy::if-same-then-else", + "-Aclippy::clone-double-ref", + "-Dclippy::complexity", + "-Aclippy::clone_on_copy", # Too common + "-Aclippy::needless_lifetimes", # Backward compat? + "-Aclippy::zero-prefixed-literal", # 00_1000_000 + "-Aclippy::type_complexity", # raison d'etre + "-Aclippy::nonminimal-bool", # maybe + "-Aclippy::borrowed-box", # Reasonable to fix this one + "-Aclippy::too-many-arguments", # (Turning this on would lead to) + "-Aclippy::unnecessary_cast", # Types may change + "-Aclippy::identity-op", # One case where we do 0 + + "-Aclippy::useless_conversion", # Types may change + "-Aclippy::unit_arg", # styalistic. + "-Aclippy::option-map-unit-fn", # styalistic + "-Aclippy::bind_instead_of_map", # styalistic + "-Aclippy::erasing_op", # E.g. 0 * DOLLARS + "-Aclippy::eq_op", # In tests we test equality. + "-Aclippy::while_immutable_condition", # false positives + "-Aclippy::needless_option_as_deref", # false positives + "-Aclippy::derivable_impls", # false positives +] diff --git a/node/cli/src/command.rs b/node/cli/src/command.rs index 39e95ba18..a8093c2bf 100644 --- a/node/cli/src/command.rs +++ b/node/cli/src/command.rs @@ -45,7 +45,7 @@ fn get_exec_name() -> Option { } fn load_spec(id: &str) -> std::result::Result, String> { - let id = if id == "" { + let id = if id.is_empty() { let n = get_exec_name().unwrap_or_default(); ["bifrost"] @@ -175,7 +175,7 @@ impl SubstrateCli for Cli { feature = "with-bifrost-runtime" ))] { - return &bifrost_polkadot_runtime::VERSION; + &bifrost_polkadot_runtime::VERSION } #[cfg(not(any( feature = "with-bifrost-polkadot-runtime", @@ -218,8 +218,7 @@ impl SubstrateCli for RelayChainCli { } fn load_spec(&self, id: &str) -> std::result::Result, String> { - polkadot_cli::Cli::from_iter([RelayChainCli::executable_name().to_string()].iter()) - .load_spec(id) + polkadot_cli::Cli::from_iter([RelayChainCli::executable_name()].iter()).load_spec(id) } fn native_runtime_version(chain_spec: &Box) -> &'static RuntimeVersion { @@ -319,13 +318,11 @@ pub fn run() -> Result<()> { let para_id = node_service::chain_spec::RelayExtensions::try_get(&*config.chain_spec) .map(|e| e.para_id) - .ok_or_else(|| "Could not find parachain ID in chain-spec.")?; + .ok_or("Could not find parachain ID in chain-spec.")?; let polkadot_cli = RelayChainCli::new( &config, - [RelayChainCli::executable_name().to_string()] - .iter() - .chain(cli.relaychain_args.iter()), + [RelayChainCli::executable_name()].iter().chain(cli.relaychain_args.iter()), ); let id = ParaId::from(para_id); @@ -476,9 +473,7 @@ pub fn run() -> Result<()> { runner.sync_run(|config| { let polkadot_cli = RelayChainCli::new( &config, - [RelayChainCli::executable_name().to_string()] - .iter() - .chain(cli.relaychain_args.iter()), + [RelayChainCli::executable_name()].iter().chain(cli.relaychain_args.iter()), ); let polkadot_config = SubstrateCli::create_configuration( diff --git a/node/primitives/src/currency.rs b/node/primitives/src/currency.rs index 0a920bd80..90d8ea530 100644 --- a/node/primitives/src/currency.rs +++ b/node/primitives/src/currency.rs @@ -348,21 +348,21 @@ impl CurrencyId { pub fn to_token(&self) -> Result { match self { - Self::VToken(symbol) => Ok(Self::Token(symbol.clone())), + Self::VToken(symbol) => Ok(Self::Token(*symbol)), _ => Err(()), } } pub fn to_vtoken(&self) -> Result { match self { - Self::Token(symbol) => Ok(Self::VToken(symbol.clone())), + Self::Token(symbol) => Ok(Self::VToken(*symbol)), _ => Err(()), } } pub fn to_vstoken(&self) -> Result { match self { - Self::Token(symbol) => Ok(Self::VSToken(symbol.clone())), + Self::Token(symbol) => Ok(Self::VSToken(*symbol)), _ => Err(()), } } diff --git a/node/primitives/src/salp.rs b/node/primitives/src/salp.rs index 01a14569e..5c78a1564 100644 --- a/node/primitives/src/salp.rs +++ b/node/primitives/src/salp.rs @@ -59,15 +59,14 @@ where } pub fn to_rpc(&self) -> RpcContributionStatus { - let rpc_status = match self { + match self { Self::Idle => RpcContributionStatus::Idle, Self::Contributing(_) => RpcContributionStatus::Contributing, Self::Refunded => RpcContributionStatus::Refunded, Self::Unlocked => RpcContributionStatus::Unlocked, Self::Redeemed => RpcContributionStatus::Redeemed, Self::MigrateToIdle => RpcContributionStatus::MigratedIdle, - }; - rpc_status + } } } diff --git a/node/rpc/src/lib.rs b/node/rpc/src/lib.rs index c3c348ef5..bd57e269f 100644 --- a/node/rpc/src/lib.rs +++ b/node/rpc/src/lib.rs @@ -95,7 +95,7 @@ where client.clone(), ))); - io.extend_with(ZenlinkProtocolApi::to_delegate(ZenlinkProtocol::new(client.clone()))); + io.extend_with(ZenlinkProtocolApi::to_delegate(ZenlinkProtocol::new(client))); io } @@ -119,7 +119,7 @@ where let FullDeps { client, pool, deny_unsafe } = deps; io.extend_with(SystemApi::to_delegate(FullSystem::new(client.clone(), pool, deny_unsafe))); - io.extend_with(TransactionPaymentApi::to_delegate(TransactionPayment::new(client.clone()))); + io.extend_with(TransactionPaymentApi::to_delegate(TransactionPayment::new(client))); io } diff --git a/node/service/src/chain_spec/bifrost_kusama.rs b/node/service/src/chain_spec/bifrost_kusama.rs index 376f28a69..0ee9ab9b5 100644 --- a/node/service/src/chain_spec/bifrost_kusama.rs +++ b/node/service/src/chain_spec/bifrost_kusama.rs @@ -158,7 +158,7 @@ pub fn bifrost_genesis( .map(|(acc, aura, _)| { ( acc.clone(), // account id - acc.clone(), // validator id + acc, // validator id bifrost_kusama_runtime::SessionKeys { aura }, // session keys ) }) @@ -193,7 +193,7 @@ fn development_config_genesis(id: ParaId) -> GenesisConfig { let vestings = endowed_accounts .iter() .cloned() - .map(|x| (x.clone(), 0u32, 100u32, ENDOWMENT() / 4)) + .map(|x| (x, 0u32, 100u32, ENDOWMENT() / 4)) .collect(); let tokens = endowed_accounts .iter() @@ -276,7 +276,7 @@ fn local_config_genesis(id: ParaId) -> GenesisConfig { let vestings = endowed_accounts .iter() .cloned() - .map(|x| (x.clone(), 0u32, 100u32, ENDOWMENT() / 4)) + .map(|x| (x, 0u32, 100u32, ENDOWMENT() / 4)) .collect(); let tokens = endowed_accounts .iter() diff --git a/node/service/src/chain_spec/bifrost_polkadot.rs b/node/service/src/chain_spec/bifrost_polkadot.rs index 1ff93471c..6cdb3e6f6 100644 --- a/node/service/src/chain_spec/bifrost_polkadot.rs +++ b/node/service/src/chain_spec/bifrost_polkadot.rs @@ -95,7 +95,7 @@ pub fn bifrost_polkadot_genesis( .map(|(acc, aura)| { ( acc.clone(), // account id - acc.clone(), // validator id + acc, // validator id bifrost_polkadot_runtime::SessionKeys { aura }, // session keys ) }) @@ -119,7 +119,7 @@ fn development_config_genesis(id: ParaId) -> GenesisConfig { let vestings = endowed_accounts .iter() .cloned() - .map(|x| (x.clone(), 0u32, 100u32, ENDOWMENT() / 4)) + .map(|x| (x, 0u32, 100u32, ENDOWMENT() / 4)) .collect(); bifrost_polkadot_genesis( @@ -171,7 +171,7 @@ fn local_config_genesis(id: ParaId) -> GenesisConfig { let vestings = endowed_accounts .iter() .cloned() - .map(|x| (x.clone(), 0u32, 100u32, ENDOWMENT() / 4)) + .map(|x| (x, 0u32, 100u32, ENDOWMENT() / 4)) .collect(); bifrost_polkadot_genesis( diff --git a/node/service/src/collator_kusama.rs b/node/service/src/collator_kusama.rs index ead0fb600..5da6d4fe5 100644 --- a/node/service/src/collator_kusama.rs +++ b/node/service/src/collator_kusama.rs @@ -130,7 +130,7 @@ where let (client, backend, keystore_container, task_manager) = sc_service::new_full_parts::( - &config, + config, telemetry.as_ref().map(|(_, telemetry)| telemetry.handle()), executor, )?; diff --git a/node/service/src/collator_polkadot.rs b/node/service/src/collator_polkadot.rs index 150d00dc4..eaf0f8621 100644 --- a/node/service/src/collator_polkadot.rs +++ b/node/service/src/collator_polkadot.rs @@ -130,7 +130,7 @@ where let (client, backend, keystore_container, task_manager) = sc_service::new_full_parts::( - &config, + config, telemetry.as_ref().map(|(_, telemetry)| telemetry.handle()), executor, )?; diff --git a/pallets/flexible-fee/src/fee_dealer.rs b/pallets/flexible-fee/src/fee_dealer.rs index fd7aaec30..8521f9dda 100644 --- a/pallets/flexible-fee/src/fee_dealer.rs +++ b/pallets/flexible-fee/src/fee_dealer.rs @@ -55,7 +55,7 @@ impl FeeDealer, CurrencyIdOf> let native_is_enough = <::Currency as Currency< ::AccountId, >>::free_balance(who) - .checked_sub(&(fee + native_existential_deposit.into())) + .checked_sub(&(fee + native_existential_deposit)) .map_or(false, |new_free_balance| { <::Currency as Currency< ::AccountId, @@ -104,8 +104,8 @@ impl FeeDealer, CurrencyIdOf> T::FeeDealer::ensure_can_charge_fee(who, fee, withdraw_reason)?; match fee_sign { - true => Ok((T::AlternativeFeeCurrencyId::get(), fee_amount.into())), - false => Ok((T::NativeCurrencyId::get(), fee_amount.into())), + true => Ok((T::AlternativeFeeCurrencyId::get(), fee_amount)), + false => Ok((T::NativeCurrencyId::get(), fee_amount)), } } } diff --git a/pallets/flexible-fee/src/lib.rs b/pallets/flexible-fee/src/lib.rs index dbfb6fcd3..42611d7b6 100644 --- a/pallets/flexible-fee/src/lib.rs +++ b/pallets/flexible-fee/src/lib.rs @@ -176,7 +176,7 @@ pub mod pallet { UserFeeChargeOrderList::::remove(&who); } - Ok(().into()) + Ok(()) } } } @@ -230,7 +230,7 @@ where let rs; // if the user has enough BNC for fee - if fee_sign == false { + if !fee_sign { rs = match T::Currency::withdraw( who, fee, @@ -297,7 +297,7 @@ where // refund to the the account that paid the fees. If this fails, the // account might have dropped below the existential balance. In // that case we don't refund anything. - let refund_imbalance = T::Currency::deposit_into_existing(&who, refund_amount) + let refund_imbalance = T::Currency::deposit_into_existing(who, refund_amount) .unwrap_or_else(|_| PositiveImbalanceOf::::zero()); // merge the imbalance caused by paying the fees and refunding parts of it again. let adjusted_paid = paid @@ -340,7 +340,7 @@ impl FeeDealer, CurrencyIdOf> for let native_is_enough = <::Currency as Currency< ::AccountId, >>::free_balance(who) - .checked_sub(&(fee + existential_deposit.into())) + .checked_sub(&(fee + existential_deposit)) .map_or(false, |new_free_balance| { <::Currency as Currency< ::AccountId, @@ -380,11 +380,11 @@ impl FeeDealer, CurrencyIdOf> for T::DexOperator::get_amount_in_by_path(amount_out, &path).map_or(vec![0], |v| v); if T::DexOperator::inner_swap_assets_for_exact_assets( - &who, + who, amount_out, amount_in_max, &path, - &who, + who, ) .is_ok() { @@ -425,8 +425,8 @@ impl FeeDealer, CurrencyIdOf> for ::AccountId, >>::free_balance(who); - if native_balance >= fee.into() { - fee_token_amount_out = fee.into(); + if native_balance >= fee { + fee_token_amount_out = fee; break; } } else { @@ -434,7 +434,7 @@ impl FeeDealer, CurrencyIdOf> for let asset_balance = T::MultiCurrency::total_balance(currency_id, who); let token_asset_id: AssetId = AssetId::try_from(currency_id) .map_err(|_| DispatchError::Other("Conversion Error"))?; - let path = vec![native_asset_id.clone(), token_asset_id]; + let path = vec![native_asset_id, token_asset_id]; let amount_vec = T::DexOperator::get_amount_in_by_path(amount_out, &path)?; let amount_in = amount_vec[0]; @@ -447,6 +447,6 @@ impl FeeDealer, CurrencyIdOf> for } } } - Ok((fee_token_id_out, fee_token_amount_out.into())) + Ok((fee_token_id_out, fee_token_amount_out)) } } diff --git a/pallets/flexible-fee/src/misc_fees.rs b/pallets/flexible-fee/src/misc_fees.rs index b95c250eb..6d3c8328e 100644 --- a/pallets/flexible-fee/src/misc_fees.rs +++ b/pallets/flexible-fee/src/misc_fees.rs @@ -80,7 +80,7 @@ impl FeeDeductor start) { - if (n - start) % BLOCKS_PER_DAY.into() == Zero::zero() { - let ksm = CurrencyId::Token(TokenSymbol::KSM); - let pool_account: AccountIdOf = T::PalletId::get().into_account(); - let releae_per_day = Self::get_token_release_per_round(); - let total_amount = Self::get_pool_amount().saturating_add(releae_per_day); - - if T::MultiCurrency::ensure_can_withdraw(ksm, &pool_account, total_amount) - .is_ok() - { - PoolAmount::::mutate(|amt| *amt = total_amount); - } + if (n <= end) & (n > start) && (n - start) % BLOCKS_PER_DAY.into() == Zero::zero() { + let ksm = CurrencyId::Token(TokenSymbol::KSM); + let pool_account: AccountIdOf = T::PalletId::get().into_account(); + let releae_per_day = Self::get_token_release_per_round(); + let total_amount = Self::get_pool_amount().saturating_add(releae_per_day); + + if T::MultiCurrency::ensure_can_withdraw(ksm, &pool_account, total_amount).is_ok() { + PoolAmount::::mutate(|amt| *amt = total_amount); } } T::WeightInfo::on_initialize() diff --git a/pallets/lightening-redeem/src/mock.rs b/pallets/lightening-redeem/src/mock.rs index 5067c36a6..6510f5edf 100644 --- a/pallets/lightening-redeem/src/mock.rs +++ b/pallets/lightening-redeem/src/mock.rs @@ -193,7 +193,6 @@ impl ExtBuilder { orml_tokens::GenesisConfig:: { balances: self .endowed_accounts - .clone() .into_iter() .filter(|(_, currency_id, _)| *currency_id != BNC) .collect::>(), diff --git a/pallets/liquidity-mining/src/lib.rs b/pallets/liquidity-mining/src/lib.rs index 3767f13e7..cdf267f67 100644 --- a/pallets/liquidity-mining/src/lib.rs +++ b/pallets/liquidity-mining/src/lib.rs @@ -142,17 +142,18 @@ where /// /// __NOTE__: Only called in the `Hook` pub(crate) fn try_startup, I: 'static>(mut self, n: BlockNumberOf) -> Self { - if self.state == PoolState::Charged { - if n >= self.after_block_to_start && self.deposit >= self.min_deposit_to_start { - self.block_startup = Some(n); - self.state = PoolState::Ongoing; - - Pallet::::deposit_event(Event::PoolStarted( - self.pool_id, - self.r#type, - self.trading_pair, - )); - } + if self.state == PoolState::Charged && + n >= self.after_block_to_start && + self.deposit >= self.min_deposit_to_start + { + self.block_startup = Some(n); + self.state = PoolState::Ongoing; + + Pallet::::deposit_event(Event::PoolStarted( + self.pool_id, + self.r#type, + self.trading_pair, + )); } self @@ -235,7 +236,7 @@ where user, )); - Ok(().into()) + Ok(()) } /// Try to return back the remain of reward from keeper to investor @@ -259,7 +260,7 @@ where } } - Ok(().into()) + Ok(()) } } @@ -1417,7 +1418,7 @@ pub mod pallet { TotalDepositData::::insert(*pid, user.clone(), dd_new); } - left = left - double_keys.len(); + left -= double_keys.len(); dd_nums = double_keys.len(); if left > 0 { @@ -1452,7 +1453,7 @@ pub mod pallet { TotalPoolInfos::::insert(*pid, pi_new); } - left = left - keys.len(); + left -= keys.len(); pi_nums = keys.len(); } @@ -1716,13 +1717,13 @@ pub mod pallet { TotalPoolInfos::::insert(pid, pool); } - if deposit_data.deposit == Zero::zero() && deposit_data.pending_unlocks.len() == 0 { - TotalDepositData::::remove(pid, user.clone()); + if deposit_data.deposit == Zero::zero() && deposit_data.pending_unlocks.is_empty() { + TotalDepositData::::remove(pid, user); } else { - TotalDepositData::::insert(pid, user.clone(), deposit_data); + TotalDepositData::::insert(pid, user, deposit_data); } - Ok(().into()) + Ok(()) } pub(crate) fn next_pool_id() -> PoolId { @@ -1753,7 +1754,7 @@ pub mod pallet { pid: PoolId, ) -> Result)>, ()> { let pool = Self::pool(pid).ok_or(())?.try_retire::().try_update::(); - let deposit_data = Self::user_deposit_data(pid, who.clone()).ok_or(())?; + let deposit_data = Self::user_deposit_data(pid, who).ok_or(())?; let mut to_rewards = Vec::<(CurrencyId, BalanceOf)>::new(); diff --git a/pallets/liquidity-mining/src/tests.rs b/pallets/liquidity-mining/src/tests.rs index 5637b7b75..c121a4f1c 100644 --- a/pallets/liquidity-mining/src/tests.rs +++ b/pallets/liquidity-mining/src/tests.rs @@ -379,7 +379,7 @@ fn charge_should_work() { assert_eq!(Tokens::accounts(pool.keeper.clone(), REWARD_1).reserved, 0); assert_eq!(Tokens::accounts(pool.keeper.clone(), REWARD_2).free, kept); assert_eq!(Tokens::accounts(pool.keeper.clone(), REWARD_2).frozen, 0); - assert_eq!(Tokens::accounts(pool.keeper.clone(), REWARD_2).reserved, 0); + assert_eq!(Tokens::accounts(pool.keeper, REWARD_2).reserved, 0); }); } @@ -597,7 +597,7 @@ fn deposit_to_mining_pool_charged_should_work() { assert_eq!(Tokens::accounts(pool.keeper.clone(), MINING_DEPOSIT).free, 2 * deposit); assert_eq!(Tokens::accounts(pool.keeper.clone(), MINING_DEPOSIT).frozen, 0); - assert_eq!(Tokens::accounts(pool.keeper.clone(), MINING_DEPOSIT).reserved, 0); + assert_eq!(Tokens::accounts(pool.keeper, MINING_DEPOSIT).reserved, 0); let deposit_data = LM::user_deposit_data(0, USER_1).unwrap(); assert_eq!(deposit_data.deposit, 2 * deposit); @@ -643,7 +643,7 @@ fn deposit_to_farming_pool_charged_should_work() { assert_eq!(Tokens::accounts(pool.keeper.clone(), FARMING_DEPOSIT_1).reserved, 0); assert_eq!(Tokens::accounts(pool.keeper.clone(), FARMING_DEPOSIT_2).free, 2 * deposit); assert_eq!(Tokens::accounts(pool.keeper.clone(), FARMING_DEPOSIT_2).frozen, 0); - assert_eq!(Tokens::accounts(pool.keeper.clone(), FARMING_DEPOSIT_2).reserved, 0); + assert_eq!(Tokens::accounts(pool.keeper, FARMING_DEPOSIT_2).reserved, 0); let deposit_data = LM::user_deposit_data(0, USER_1).unwrap(); assert_eq!(deposit_data.deposit, 2 * deposit); @@ -716,7 +716,7 @@ fn deposit_to_pool_ongoing_should_work() { assert_eq!(Tokens::accounts(pool.keeper.clone(), MINING_DEPOSIT).free, 2 * DEPOSIT_AMOUNT); assert_eq!(Tokens::accounts(pool.keeper.clone(), MINING_DEPOSIT).frozen, 0); - assert_eq!(Tokens::accounts(pool.keeper.clone(), MINING_DEPOSIT).reserved, 0); + assert_eq!(Tokens::accounts(pool.keeper, MINING_DEPOSIT).reserved, 0); let deposit_data = LM::user_deposit_data(0, USER_2).unwrap(); assert_eq!(deposit_data.deposit, DEPOSIT_AMOUNT); @@ -1125,7 +1125,7 @@ fn redeem_from_pool_ongoing_should_work() { assert_eq!(Tokens::accounts(keeper.clone(), MINING_DEPOSIT).free, MinimumDeposit::get()); assert_eq!(Tokens::accounts(keeper.clone(), MINING_DEPOSIT).frozen, 0); - assert_eq!(Tokens::accounts(keeper.clone(), MINING_DEPOSIT).reserved, 0); + assert_eq!(Tokens::accounts(keeper, MINING_DEPOSIT).reserved, 0); }); } @@ -1201,7 +1201,7 @@ fn redeem_from_pool_retired_should_work() { assert!(LM::pool(0).is_none()); assert_eq!(Tokens::accounts(keeper.clone(), MINING_DEPOSIT).free, 0); assert_eq!(Tokens::accounts(keeper.clone(), MINING_DEPOSIT).frozen, 0); - assert_eq!(Tokens::accounts(keeper.clone(), MINING_DEPOSIT).reserved, 0); + assert_eq!(Tokens::accounts(keeper, MINING_DEPOSIT).reserved, 0); assert_eq!(Tokens::accounts(INVESTOR, REWARD_1).free, REWARD_AMOUNT - 2 * rewarded); assert_eq!(Tokens::accounts(INVESTOR, REWARD_1).frozen, 0); @@ -1310,7 +1310,7 @@ fn double_redeem_from_pool_in_diff_state_should_work() { assert!(LM::pool(0).is_none()); assert_eq!(Tokens::accounts(keeper.clone(), MINING_DEPOSIT).free, 0); assert_eq!(Tokens::accounts(keeper.clone(), MINING_DEPOSIT).frozen, 0); - assert_eq!(Tokens::accounts(keeper.clone(), MINING_DEPOSIT).reserved, 0); + assert_eq!(Tokens::accounts(keeper, MINING_DEPOSIT).reserved, 0); assert_eq!( Tokens::accounts(INVESTOR, REWARD_1).free, @@ -1535,7 +1535,7 @@ fn volunteer_to_redeem_should_work() { assert_eq!(Tokens::accounts(keeper.clone(), MINING_DEPOSIT).free, 0); assert_eq!(Tokens::accounts(keeper.clone(), MINING_DEPOSIT).frozen, 0); - assert_eq!(Tokens::accounts(keeper.clone(), MINING_DEPOSIT).reserved, 0); + assert_eq!(Tokens::accounts(keeper, MINING_DEPOSIT).reserved, 0); assert!(LM::pool(0).is_none()); assert!(LM::user_deposit_data(0, USER_1).is_none()); @@ -1653,7 +1653,7 @@ fn claim_from_pool_ongoing_should_work() { assert_eq!(Tokens::accounts(pool.keeper.clone(), REWARD_1).reserved, 0); assert_eq!(Tokens::accounts(pool.keeper.clone(), REWARD_2).free, kept - rewarded); assert_eq!(Tokens::accounts(pool.keeper.clone(), REWARD_2).frozen, 0); - assert_eq!(Tokens::accounts(pool.keeper.clone(), REWARD_2).reserved, 0); + assert_eq!(Tokens::accounts(pool.keeper, REWARD_2).reserved, 0); let pool = LM::pool(0).unwrap(); assert_eq!(pool.rewards.get(&REWARD_1).unwrap().claimed, rewarded); @@ -1934,7 +1934,7 @@ fn force_retire_pool_charged_without_deposit_should_work() { assert_eq!(Tokens::accounts(keeper.clone(), REWARD_1).reserved, 0); assert_eq!(Tokens::accounts(keeper.clone(), REWARD_2).free, 0); assert_eq!(Tokens::accounts(keeper.clone(), REWARD_2).frozen, 0); - assert_eq!(Tokens::accounts(keeper.clone(), REWARD_2).reserved, 0); + assert_eq!(Tokens::accounts(keeper, REWARD_2).reserved, 0); assert_eq!(Tokens::accounts(INVESTOR, REWARD_1).free, REWARD_AMOUNT); assert_eq!(Tokens::accounts(INVESTOR, REWARD_1).frozen, 0); @@ -2366,7 +2366,7 @@ fn deposit_to_single_token_pool_should_work() { assert_eq!(Tokens::accounts(pool.keeper.clone(), SINGLE_TOKEN_DEPOSIT).free, 2 * deposit); assert_eq!(Tokens::accounts(pool.keeper.clone(), SINGLE_TOKEN_DEPOSIT).frozen, 0); - assert_eq!(Tokens::accounts(pool.keeper.clone(), SINGLE_TOKEN_DEPOSIT).reserved, 0); + assert_eq!(Tokens::accounts(pool.keeper, SINGLE_TOKEN_DEPOSIT).reserved, 0); let deposit_data = LM::user_deposit_data(0, USER_1).unwrap(); assert_eq!(deposit_data.deposit, 2 * deposit); @@ -2487,7 +2487,7 @@ fn redeem_from_single_token_pool_ongoing_should_work() { MinimumDeposit::get() ); assert_eq!(Tokens::accounts(keeper.clone(), SINGLE_TOKEN_DEPOSIT).frozen, 0); - assert_eq!(Tokens::accounts(keeper.clone(), SINGLE_TOKEN_DEPOSIT).reserved, 0); + assert_eq!(Tokens::accounts(keeper, SINGLE_TOKEN_DEPOSIT).reserved, 0); }); } @@ -2563,7 +2563,7 @@ fn redeem_from_single_token_pool_retired_should_work() { assert!(LM::pool(0).is_none()); assert_eq!(Tokens::accounts(keeper.clone(), SINGLE_TOKEN_DEPOSIT).free, 0); assert_eq!(Tokens::accounts(keeper.clone(), SINGLE_TOKEN_DEPOSIT).frozen, 0); - assert_eq!(Tokens::accounts(keeper.clone(), SINGLE_TOKEN_DEPOSIT).reserved, 0); + assert_eq!(Tokens::accounts(keeper, SINGLE_TOKEN_DEPOSIT).reserved, 0); assert_eq!(Tokens::accounts(INVESTOR, REWARD_1).free, REWARD_AMOUNT - 2 * rewarded); assert_eq!(Tokens::accounts(INVESTOR, REWARD_1).frozen, 0); @@ -2619,7 +2619,7 @@ fn claim_from_single_token_pool_ongoing_should_work() { assert_eq!(Tokens::accounts(pool.keeper.clone(), REWARD_1).reserved, 0); assert_eq!(Tokens::accounts(pool.keeper.clone(), REWARD_2).free, kept - rewarded); assert_eq!(Tokens::accounts(pool.keeper.clone(), REWARD_2).frozen, 0); - assert_eq!(Tokens::accounts(pool.keeper.clone(), REWARD_2).reserved, 0); + assert_eq!(Tokens::accounts(pool.keeper, REWARD_2).reserved, 0); let pool = LM::pool(0).unwrap(); assert_eq!(pool.rewards.get(&REWARD_1).unwrap().claimed, rewarded); @@ -2711,7 +2711,7 @@ fn discard_reward_lower_than_ed_should_work() { assert_eq!(Tokens::accounts(USER_1, REWARD_2).free, reward_2); assert_eq!(Tokens::accounts(keeper.clone(), REWARD_1).free, 0); - assert_eq!(Tokens::accounts(keeper.clone(), REWARD_2).free, 0); + assert_eq!(Tokens::accounts(keeper, REWARD_2).free, 0); assert_eq!(Tokens::accounts(INVESTOR, REWARD_1).free, REWARD_AMOUNT - reward_1); assert_eq!(Tokens::accounts(INVESTOR, REWARD_2).free, REWARD_AMOUNT - reward_2); @@ -2769,7 +2769,7 @@ fn discard_deposit_lower_than_ed_should_work() { assert_eq!(Tokens::accounts(USER_1, MINING_DEPOSIT).reserved, 0); assert_eq!(Tokens::accounts(keeper.clone(), MINING_DEPOSIT).free, MinimumDeposit::get()); assert_eq!(Tokens::accounts(keeper.clone(), MINING_DEPOSIT).frozen, 0); - assert_eq!(Tokens::accounts(keeper.clone(), MINING_DEPOSIT).reserved, 0); + assert_eq!(Tokens::accounts(keeper, MINING_DEPOSIT).reserved, 0); assert!(LM::user_deposit_data(0, USER_1).is_none()); }); @@ -2866,7 +2866,7 @@ fn unlock_from_mining_pool_should_work() { assert_ok!(LM::unlock(Some(USER_1).into(), 0)); assert_ok!(LM::unlock(Some(USER_2).into(), 0)); - assert_eq!(Tokens::accounts(keeper.clone(), MINING_DEPOSIT).free, 0); + assert_eq!(Tokens::accounts(keeper, MINING_DEPOSIT).free, 0); assert_eq!(Tokens::accounts(USER_1, MINING_DEPOSIT).free, DEPOSIT_AMOUNT); assert_eq!(Tokens::accounts(USER_2, MINING_DEPOSIT).free, DEPOSIT_AMOUNT); assert!(LM::user_deposit_data(0, USER_1).is_none()); @@ -2966,7 +2966,7 @@ fn unlock_from_single_token_pool_should_work() { assert_ok!(LM::unlock(Some(USER_1).into(), 0)); assert_ok!(LM::unlock(Some(USER_2).into(), 0)); - assert_eq!(Tokens::accounts(keeper.clone(), SINGLE_TOKEN_DEPOSIT).free, 0); + assert_eq!(Tokens::accounts(keeper, SINGLE_TOKEN_DEPOSIT).free, 0); assert_eq!(Tokens::accounts(USER_1, SINGLE_TOKEN_DEPOSIT).free, DEPOSIT_AMOUNT); assert_eq!(Tokens::accounts(USER_2, SINGLE_TOKEN_DEPOSIT).free, DEPOSIT_AMOUNT); assert!(LM::user_deposit_data(0, USER_1).is_none()); @@ -3078,7 +3078,7 @@ fn unlock_from_farming_pool_should_work() { assert_ok!(LM::unlock(Some(USER_2).into(), 0)); assert_eq!(Tokens::accounts(keeper.clone(), FARMING_DEPOSIT_1).free, 0); - assert_eq!(Tokens::accounts(keeper.clone(), FARMING_DEPOSIT_2).free, 0); + assert_eq!(Tokens::accounts(keeper, FARMING_DEPOSIT_2).free, 0); assert_eq!(Tokens::accounts(USER_1, FARMING_DEPOSIT_1).free, DEPOSIT_AMOUNT); assert_eq!(Tokens::accounts(USER_1, FARMING_DEPOSIT_2).free, DEPOSIT_AMOUNT); assert_eq!(Tokens::accounts(USER_2, FARMING_DEPOSIT_1).free, DEPOSIT_AMOUNT); @@ -3168,7 +3168,7 @@ fn unlock_soon_after_edit_pool() { assert_ok!(LM::redeem(Some(USER_1).into(), 0, redeem_amount)); assert_ok!(LM::redeem(Some(USER_2).into(), 0, redeem_amount)); - assert_eq!(Tokens::accounts(keeper.clone(), MINING_DEPOSIT).free, 0); + assert_eq!(Tokens::accounts(keeper, MINING_DEPOSIT).free, 0); assert_eq!(Tokens::accounts(USER_1, MINING_DEPOSIT).free, DEPOSIT_AMOUNT); assert_eq!(Tokens::accounts(USER_2, MINING_DEPOSIT).free, DEPOSIT_AMOUNT); assert_eq!(Tokens::accounts(USER_1, REWARD_1).free, reward_amount); @@ -3228,7 +3228,7 @@ fn unlock_exceed_limit_should_fail() { Error::::ExceedMaximumUnlock ); - assert_eq!(Tokens::accounts(keeper.clone(), MINING_DEPOSIT).free, 2 * DEPOSIT_AMOUNT); + assert_eq!(Tokens::accounts(keeper, MINING_DEPOSIT).free, 2 * DEPOSIT_AMOUNT); assert_eq!(Tokens::accounts(USER_1, MINING_DEPOSIT).free, 0); assert_eq!(Tokens::accounts(USER_2, MINING_DEPOSIT).free, 0); assert_eq!(Tokens::accounts(USER_1, REWARD_1).free, reward_amount); @@ -3313,7 +3313,7 @@ fn cancel_unlock_from_mining_pool_should_work() { let deposit_left = DEPOSIT_AMOUNT; - assert_eq!(Tokens::accounts(keeper.clone(), MINING_DEPOSIT).free, 2 * DEPOSIT_AMOUNT); + assert_eq!(Tokens::accounts(keeper, MINING_DEPOSIT).free, 2 * DEPOSIT_AMOUNT); assert_eq!(Tokens::accounts(USER_1, MINING_DEPOSIT).free, 0); assert_eq!(Tokens::accounts(USER_2, MINING_DEPOSIT).free, 0); assert_eq!(Tokens::accounts(USER_1, REWARD_1).free, reward_amount); @@ -3404,7 +3404,7 @@ fn cancel_unlock_from_farming_pool_should_work() { let deposit_left = DEPOSIT_AMOUNT; assert_eq!(Tokens::accounts(keeper.clone(), FARMING_DEPOSIT_1).free, 2 * DEPOSIT_AMOUNT); - assert_eq!(Tokens::accounts(keeper.clone(), FARMING_DEPOSIT_2).free, 2 * DEPOSIT_AMOUNT); + assert_eq!(Tokens::accounts(keeper, FARMING_DEPOSIT_2).free, 2 * DEPOSIT_AMOUNT); assert_eq!(Tokens::accounts(USER_1, FARMING_DEPOSIT_1).free, 0); assert_eq!(Tokens::accounts(USER_1, FARMING_DEPOSIT_2).free, 0); assert_eq!(Tokens::accounts(USER_2, FARMING_DEPOSIT_1).free, 0); @@ -3491,7 +3491,7 @@ fn cancel_unlock_from_single_token_pool_should_work() { let deposit_left = DEPOSIT_AMOUNT; - assert_eq!(Tokens::accounts(keeper.clone(), SINGLE_TOKEN_DEPOSIT).free, 2 * DEPOSIT_AMOUNT); + assert_eq!(Tokens::accounts(keeper, SINGLE_TOKEN_DEPOSIT).free, 2 * DEPOSIT_AMOUNT); assert_eq!(Tokens::accounts(USER_1, SINGLE_TOKEN_DEPOSIT).free, 0); assert_eq!(Tokens::accounts(USER_2, SINGLE_TOKEN_DEPOSIT).free, 0); assert_eq!(Tokens::accounts(USER_1, REWARD_1).free, reward_amount); @@ -3600,7 +3600,7 @@ fn cancel_unlock_from_pool_retired_should_fail() { assert_ok!(LM::unlock(Some(USER_1).into(), 0)); assert_ok!(LM::unlock(Some(USER_2).into(), 0)); - assert_eq!(Tokens::accounts(keeper.clone(), MINING_DEPOSIT).free, 0); + assert_eq!(Tokens::accounts(keeper, MINING_DEPOSIT).free, 0); assert_eq!(Tokens::accounts(USER_1, MINING_DEPOSIT).free, DEPOSIT_AMOUNT); assert_eq!(Tokens::accounts(USER_2, MINING_DEPOSIT).free, DEPOSIT_AMOUNT); assert!(LM::pool(0).is_none()); @@ -3630,7 +3630,7 @@ fn simple_integration_test() { assert_ok!(LM::charge(Some(INVESTOR).into(), 0)); let pool = LM::pool(0).unwrap(); - let keeper = pool.keeper.clone(); + let keeper = pool.keeper; let kept = PER_BLOCK * DAYS as Balance; assert_eq!(Tokens::accounts(INVESTOR, REWARD_1).free, REWARD_AMOUNT - kept); @@ -3732,7 +3732,7 @@ fn simple_integration_test() { assert_eq!(Tokens::accounts(keeper.clone(), MINING_DEPOSIT).free, 0); assert_eq!(Tokens::accounts(keeper.clone(), MINING_DEPOSIT).frozen, 0); - assert_eq!(Tokens::accounts(keeper.clone(), MINING_DEPOSIT).reserved, 0); + assert_eq!(Tokens::accounts(keeper, MINING_DEPOSIT).reserved, 0); let remain = REWARD_AMOUNT - (reward_step_1 + 2 * reward_step_2 + 2 * reward_step_3); assert_eq!(Tokens::accounts(INVESTOR, REWARD_1).free, remain); diff --git a/pallets/slp/src/agents/kusama_agent/agent.rs b/pallets/slp/src/agents/kusama_agent/agent.rs index 8aadba1fb..fcc9fa6cd 100644 --- a/pallets/slp/src/agents/kusama_agent/agent.rs +++ b/pallets/slp/src/agents/kusama_agent/agent.rs @@ -95,7 +95,7 @@ impl let delegator_multilocation = T::AccountConverter::convert(new_delegator_id); // Add the new delegator into storage - Self::add_delegator(&self, new_delegator_id, &delegator_multilocation) + Self::add_delegator(self, new_delegator_id, &delegator_multilocation) .map_err(|_| Error::::FailToAddDelegator)?; Ok(delegator_multilocation) @@ -335,7 +335,7 @@ impl // Convert vec of multilocations into accounts. let mut accounts = vec![]; - for (multilocation_account, _hash) in sorted_dedup_list.clone().iter() { + for (multilocation_account, _hash) in sorted_dedup_list.iter() { let account = Pallet::::multilocation_to_account(multilocation_account)?; let unlookup_account = T::Lookup::unlookup(account); accounts.push(unlookup_account); @@ -384,7 +384,7 @@ impl let mut new_set: Vec<(MultiLocation, Hash)> = vec![]; for (acc, acc_hash) in original_set.iter() { if !targets.contains(acc) { - new_set.push((acc.clone(), acc_hash.clone())) + new_set.push((acc.clone(), *acc_hash)) } } @@ -422,7 +422,7 @@ impl who: &MultiLocation, targets: &Vec, ) -> Result> { - let query_id = Self::delegate(&self, who, targets)?; + let query_id = Self::delegate(self, who, targets)?; Ok(query_id) } @@ -434,7 +434,7 @@ impl when: &Option, ) -> Result<(), Error> { // Get the validator account - let validator_account = Pallet::::multilocation_to_account(&validator)?; + let validator_account = Pallet::::multilocation_to_account(validator)?; // Get the payout era let payout_era = if let Some(TimeUnit::Era(payout_era)) = *when { @@ -551,12 +551,12 @@ impl DelegatorsMultilocation2Index::::get(KSM, from).ok_or(Error::::DelegatorNotExist)?; // Make sure the receiving account is the Exit_account from vtoken-minting module. - let to_account_id = Pallet::::multilocation_to_account(&to)?; + let to_account_id = Pallet::::multilocation_to_account(to)?; let (_, exit_account) = T::VtokenMinting::get_entrance_and_exit_accounts(); ensure!(to_account_id == exit_account, Error::::InvalidAccount); // Prepare parameter dest and beneficiary. - let to_32: [u8; 32] = Pallet::::multilocation_to_account_32(&to)?; + let to_32: [u8; 32] = Pallet::::multilocation_to_account_32(to)?; let dest = Box::new(VersionedMultiLocation::from(X1(Parachain(T::ParachainId::get().into())))); @@ -608,7 +608,7 @@ impl ); // Make sure from account is the entrance account of vtoken-minting module. - let from_account_id = Pallet::::multilocation_to_account(&from)?; + let from_account_id = Pallet::::multilocation_to_account(from)?; let (entrance_account, _) = T::VtokenMinting::get_entrance_and_exit_accounts(); ensure!(from_account_id == entrance_account, Error::::InvalidAccount); @@ -766,7 +766,7 @@ impl .and_then(|n| TryInto::::try_into(n).ok()) .unwrap_or_else(Zero::zero); - let beneficiary = Pallet::::multilocation_to_account(&to)?; + let beneficiary = Pallet::::multilocation_to_account(to)?; // Issue corresponding vksm to beneficiary account. T::MultiCurrency::deposit( CurrencyId::VToken(TokenSymbol::KSM), @@ -1128,7 +1128,7 @@ impl KusamaAgent { loop { if let Some(record) = old_sub_ledger.unlocking.pop() { if remaining_amount >= record.value { - remaining_amount = remaining_amount - record.value; + remaining_amount -= record.value; } else { let remain_unlock_chunk = UnlockChunk { value: record.value - remaining_amount, @@ -1324,7 +1324,7 @@ impl KusamaAgent { // Prepare parameter dest and beneficiary. let dest = MultiLocation::parent(); - let to_32: [u8; 32] = Pallet::::multilocation_to_account_32(&to)?; + let to_32: [u8; 32] = Pallet::::multilocation_to_account_32(to)?; let beneficiary = Pallet::::account_32_to_local_location(to_32)?; // Prepare parameter assets. @@ -1342,10 +1342,10 @@ impl KusamaAgent { // prepare for xcm message let msg = Xcm(vec![ - WithdrawAsset(assets.clone()), + WithdrawAsset(assets), InitiateReserveWithdraw { assets: All.into(), - reserve: dest.clone(), + reserve: dest, xcm: Xcm(vec![ BuyExecution { fees: fee_asset, weight_limit: WeightLimit::Limited(weight) }, DepositAsset { assets: All.into(), max_assets: 1, beneficiary }, diff --git a/pallets/slp/src/lib.rs b/pallets/slp/src/lib.rs index 18dbdb00e..12597724e 100644 --- a/pallets/slp/src/lib.rs +++ b/pallets/slp/src/lib.rs @@ -1238,7 +1238,7 @@ pub mod pallet { // If param weight_and_fee is a none, it will delete the storage. Otherwise, revise the // storage to the new value if exists, or insert a new record if not exists before. XcmDestWeightAndFee::::mutate_exists(currency_id, &operation, |wt_n_f| { - *wt_n_f = weight_and_fee.clone(); + *wt_n_f = weight_and_fee; }); // Deposit event. @@ -1524,7 +1524,7 @@ pub mod pallet { T::ControlOrigin::ensure_origin(origin)?; CurrencyTuneExchangeRateLimit::::mutate_exists(currency_id, |exchange_rate_limit| { - *exchange_rate_limit = maybe_tune_exchange_rate_limit.clone(); + *exchange_rate_limit = maybe_tune_exchange_rate_limit; }); Pallet::::deposit_event(Event::CurrencyTuneExchangeRateLimitSet { diff --git a/pallets/slp/src/mock.rs b/pallets/slp/src/mock.rs index f9c5d6d36..63a84cf5c 100644 --- a/pallets/slp/src/mock.rs +++ b/pallets/slp/src/mock.rs @@ -225,13 +225,13 @@ parameter_types! { } impl QueryResponseManager for () { - fn get_query_response_record(query_id: QueryId) -> bool { + fn get_query_response_record(_query_id: QueryId) -> bool { Default::default() } - fn create_query_record(responder: &MultiLocation, timeout: u64) -> u64 { + fn create_query_record(_responder: &MultiLocation, _timeout: u64) -> u64 { Default::default() } - fn remove_query_record(query_id: QueryId) -> bool { + fn remove_query_record(_query_id: QueryId) -> bool { Default::default() } } @@ -303,7 +303,6 @@ impl ExtBuilder { orml_tokens::GenesisConfig:: { balances: self .endowed_accounts - .clone() .into_iter() .filter(|(_, currency_id, _)| *currency_id != BNC) .collect::>(), diff --git a/pallets/slp/src/tests.rs b/pallets/slp/src/tests.rs index a594d39a0..64ecbfb11 100644 --- a/pallets/slp/src/tests.rs +++ b/pallets/slp/src/tests.rs @@ -100,11 +100,7 @@ fn supplement_fee_reserve_works() { // set fee source let alice_32 = Pallet::::account_id_to_account_32(ALICE).unwrap(); let alice_location = Pallet::::account_32_to_local_location(alice_32).unwrap(); - assert_ok!(Slp::set_fee_source( - Origin::signed(ALICE), - BNC, - Some((alice_location.clone(), 10)) - )); + assert_ok!(Slp::set_fee_source(Origin::signed(ALICE), BNC, Some((alice_location, 10)))); // supplement fee let bob_32 = Pallet::::account_id_to_account_32(BOB).unwrap(); @@ -112,7 +108,7 @@ fn supplement_fee_reserve_works() { assert_eq!(Balances::free_balance(&ALICE), 100); assert_eq!(Balances::free_balance(&BOB), 0); - assert_ok!(Slp::supplement_fee_reserve(Origin::signed(ALICE), BNC, bob_location.clone())); + assert_ok!(Slp::supplement_fee_reserve(Origin::signed(ALICE), BNC, bob_location)); assert_eq!(Balances::free_balance(&ALICE), 90); assert_eq!(Balances::free_balance(&BOB), 10); @@ -126,8 +122,7 @@ fn remove_delegator_works() { let subaccount_0: AccountId = hex_literal::hex!["5a53736d8e96f1c007cf0d630acf5209b20611617af23ce924c8e25328eb5d28"] .into(); - let subaccount_0_32: [u8; 32] = - Slp::account_id_to_account_32(subaccount_0.clone()).unwrap(); + let subaccount_0_32: [u8; 32] = Slp::account_id_to_account_32(subaccount_0).unwrap(); let subaccount_0_location: MultiLocation = Slp::account_32_to_parent_location(subaccount_0_32).unwrap(); @@ -270,7 +265,7 @@ fn refund_currency_due_unbond_works() { bifrost_vtoken_minting::UserUnlockLedger::::insert( CHARLIE, KSM, - (28, bounded_vec_charlie.clone()), + (28, bounded_vec_charlie), ); let bounded_vec_dave = BoundedVec::try_from(vec![2]).unwrap(); @@ -314,7 +309,7 @@ fn refund_currency_due_unbond_works() { ); assert_eq!( bifrost_vtoken_minting::UserUnlockLedger::::get(BOB, KSM,), - Some((10, bounded_vec_bob.clone())) + Some((10, bounded_vec_bob)) ); // Unlocking records for era 100 @@ -339,7 +334,7 @@ fn refund_currency_due_unbond_works() { assert_eq!(bifrost_vtoken_minting::UserUnlockLedger::::get(CHARLIE, KSM,), None); assert_eq!( bifrost_vtoken_minting::UserUnlockLedger::::get(DAVE, KSM,), - Some((8, bounded_vec_dave.clone())) + Some((8, bounded_vec_dave)) ); // Unlocking records for era 110 @@ -350,7 +345,7 @@ fn refund_currency_due_unbond_works() { assert_eq!( bifrost_vtoken_minting::UserUnlockLedger::::get(EDDIE, KSM,), - Some((13, bounded_vec_eddie.clone())) + Some((13, bounded_vec_eddie)) ); // Set some more balance to exit account. @@ -394,7 +389,7 @@ fn charge_host_fee_and_tune_vtoken_exchange_rate_works() { let subaccount_0: AccountId = hex_literal::hex!["5a53736d8e96f1c007cf0d630acf5209b20611617af23ce924c8e25328eb5d28"] .into(); - let subaccount_0_32: [u8; 32] = Slp::account_id_to_account_32(subaccount_0.clone()).unwrap(); + let subaccount_0_32: [u8; 32] = Slp::account_id_to_account_32(subaccount_0).unwrap(); let subaccount_0_location: MultiLocation = Slp::account_32_to_parent_location(subaccount_0_32).unwrap(); @@ -403,8 +398,7 @@ fn charge_host_fee_and_tune_vtoken_exchange_rate_works() { hex_literal::hex!["6d6f646c62662f74727372790000000000000000000000000000000000000000"] .into(); let treasury_32: [u8; 32] = - hex_literal::hex!["6d6f646c62662f74727372790000000000000000000000000000000000000000"] - .into(); + hex_literal::hex!["6d6f646c62662f74727372790000000000000000000000000000000000000000"]; bifrost_vtoken_minting::OngoingTimeUnit::::insert(KSM, TimeUnit::Era(1)); @@ -485,8 +479,7 @@ fn charge_host_fee_and_tune_vtoken_exchange_rate_works() { fn set_hosting_fees_works() { ExtBuilder::default().build().execute_with(|| { let treasury_32: [u8; 32] = - hex_literal::hex!["6d6f646c62662f74727372790000000000000000000000000000000000000000"] - .into(); + hex_literal::hex!["6d6f646c62662f74727372790000000000000000000000000000000000000000"]; // Set the hosting fee to be 20%, and the beneficiary to be bifrost treasury account. let pct = Permill::from_percent(20); diff --git a/pallets/token-issuer/src/mock.rs b/pallets/token-issuer/src/mock.rs index 6b25114ba..528186458 100644 --- a/pallets/token-issuer/src/mock.rs +++ b/pallets/token-issuer/src/mock.rs @@ -229,7 +229,6 @@ impl ExtBuilder { orml_tokens::GenesisConfig:: { balances: self .endowed_accounts - .clone() .into_iter() .filter(|(_, currency_id, _)| *currency_id != BNC) .collect::>(), diff --git a/pallets/vesting/src/lib.rs b/pallets/vesting/src/lib.rs index 533049225..9fbb69f6c 100644 --- a/pallets/vesting/src/lib.rs +++ b/pallets/vesting/src/lib.rs @@ -396,7 +396,7 @@ pub mod pallet { (&target, &source, T::Currency::free_balance(&target) - schedule.locked) }; - T::Currency::transfer(&from, &to, value, ExistenceRequirement::AllowDeath)?; + T::Currency::transfer(from, to, value, ExistenceRequirement::AllowDeath)?; Vesting::::insert(target.clone(), schedule); let res = Self::update_lock(target.clone()); @@ -468,7 +468,7 @@ pub mod pallet { ensure_root(origin)?; let target = T::Lookup::lookup(target)?; - Cliff::::insert(target.clone(), cliff_block); + Cliff::::insert(target, cliff_block); Ok(()) } diff --git a/pallets/vsbond-auction/src/lib.rs b/pallets/vsbond-auction/src/lib.rs index 0dcc40672..a7d13958b 100644 --- a/pallets/vsbond-auction/src/lib.rs +++ b/pallets/vsbond-auction/src/lib.rs @@ -511,7 +511,7 @@ pub mod pallet { let module_account: AccountIdOf = T::PalletId::get().into_account(); let mut account_to_send = new_order_info.owner.clone(); - let ed = T::MultiCurrency::minimum_balance(token_to_pay.clone()); + let ed = T::MultiCurrency::minimum_balance(token_to_pay); // deal with account exisitence error we might encounter if amount_to_pay < ed { @@ -540,7 +540,7 @@ pub mod pallet { )?; let mut account_to_send = order_taker.clone(); - let ed = T::MultiCurrency::minimum_balance(token_to_get.clone()); + let ed = T::MultiCurrency::minimum_balance(token_to_get); // deal with account exisitence error we might encounter if amount_to_get < ed { @@ -666,7 +666,7 @@ pub mod pallet { }; let mut account_to_return = order_info.owner.clone(); - let ed = T::MultiCurrency::minimum_balance(token_to_return.clone()); + let ed = T::MultiCurrency::minimum_balance(token_to_return); // deal with account exisitence error we might encounter if amount_to_return < ed { diff --git a/pallets/vstoken-conversion/src/mock.rs b/pallets/vstoken-conversion/src/mock.rs index cfc31c0c8..aa16f07b9 100644 --- a/pallets/vstoken-conversion/src/mock.rs +++ b/pallets/vstoken-conversion/src/mock.rs @@ -222,7 +222,6 @@ impl ExtBuilder { orml_tokens::GenesisConfig:: { balances: self .endowed_accounts - .clone() .into_iter() .filter(|(_, currency_id, _)| *currency_id != BNC) .collect::>(), diff --git a/pallets/vtoken-minting/src/lib.rs b/pallets/vtoken-minting/src/lib.rs index 8a14e211d..1af0ea61e 100644 --- a/pallets/vtoken-minting/src/lib.rs +++ b/pallets/vtoken-minting/src/lib.rs @@ -303,8 +303,7 @@ pub mod pallet { let vtoken_id = token_id.to_vtoken().map_err(|_| Error::::NotSupportTokenType)?; let (token_amount_excluding_fee, vtoken_amount, fee) = - Self::mint_without_tranfer(&exchanger, vtoken_id, token_id, token_amount) - .map_err(|e| e)?; + Self::mint_without_tranfer(&exchanger, vtoken_id, token_id, token_amount)?; // Transfer the user's token to EntranceAccount. T::MultiCurrency::transfer( token_id, @@ -346,9 +345,9 @@ pub mod pallet { let token_pool_amount = Self::token_pool(token_id); let vtoken_total_issuance = T::MultiCurrency::total_issuance(vtoken_id); let token_amount = vtoken_amount - .checked_mul(&token_pool_amount.into()) + .checked_mul(&token_pool_amount) .ok_or(Error::::CalculationOverflow)? - .checked_div(&vtoken_total_issuance.into()) + .checked_div(&vtoken_total_issuance) .ok_or(Error::::CalculationOverflow)?; match OngoingTimeUnit::::get(token_id) { @@ -356,9 +355,8 @@ pub mod pallet { let result_time_unit = Self::add_time_unit( Self::unlock_duration(token_id) .ok_or(Error::::UnlockDurationNotFound)?, - time_unit.clone(), - ) - .map_err(|e| e)?; + time_unit, + )?; T::MultiCurrency::withdraw(vtoken_id, &exchanger, vtoken_amount)?; TokenPool::::mutate(&token_id, |pool| -> Result<(), Error> { @@ -380,7 +378,7 @@ pub mod pallet { (&exchanger, token_amount, &result_time_unit), ); - if let Some(_) = UserUnlockLedger::::get(&exchanger, &token_id) { + if UserUnlockLedger::::get(&exchanger, &token_id).is_some() { UserUnlockLedger::::mutate( &exchanger, &token_id, @@ -394,7 +392,7 @@ pub mod pallet { .checked_add(&token_amount) .ok_or(Error::::CalculationOverflow)?; }; - return Ok(()); + Ok(()) }, )?; } else { @@ -505,18 +503,16 @@ pub mod pallet { .ok_or(Error::::CalculationOverflow)?; ledger_list_origin.retain(|x| x != index); } else { - return Err( - Error::::TimeUnitUnlockLedgerNotFound.into() - ); + return Err(Error::::TimeUnitUnlockLedgerNotFound); } - return Ok(()); + Ok(()) }, ); tmp_amount = tmp_amount.saturating_sub(unlock_amount); // } else { // return Err(Error::::TokenUnlockLedgerNotFound.into()); } - return false; + false } else { TokenUnlockLedger::::mutate_exists( &token_id, @@ -531,9 +527,9 @@ pub mod pallet { .checked_sub(&tmp_amount) .ok_or(Error::::CalculationOverflow)?; } else { - return Err(Error::::TokenUnlockLedgerNotFound.into()); + return Err(Error::::TokenUnlockLedgerNotFound); } - return Ok(()); + Ok(()) }, ); TimeUnitUnlockLedger::::mutate_exists( @@ -549,15 +545,15 @@ pub mod pallet { .checked_sub(&tmp_amount) .ok_or(Error::::CalculationOverflow)?; } else { - return Err(Error::::TimeUnitUnlockLedgerNotFound.into()); + return Err(Error::::TimeUnitUnlockLedgerNotFound); } - return Ok(()); + Ok(()) }, ); - return true; + true } } else { - return true; + true } }); let ledger_list_tmp: Vec = ledger_list.into_iter().rev().collect(); @@ -585,9 +581,9 @@ pub mod pallet { .checked_sub(&token_amount) .ok_or(Error::::CalculationOverflow)?; } else { - return Err(Error::::UserUnlockLedgerNotFound.into()); + return Err(Error::::UserUnlockLedgerNotFound); } - return Ok(()); + Ok(()) }, )?; } else { @@ -595,8 +591,7 @@ pub mod pallet { } let (_, vtoken_amount, fee) = - Self::mint_without_tranfer(&exchanger, vtoken_id, token_id, token_amount) - .map_err(|e| e)?; + Self::mint_without_tranfer(&exchanger, vtoken_id, token_id, token_amount)?; TokenToRebond::::mutate(&token_id, |value| -> Result<(), Error> { if let Some(value_info) = value { @@ -604,7 +599,7 @@ pub mod pallet { .checked_add(&token_amount) .ok_or(Error::::CalculationOverflow)?; } else { - return Err(Error::::InvalidRebondToken.into()); + return Err(Error::::InvalidRebondToken); } Ok(()) })?; @@ -648,9 +643,9 @@ pub mod pallet { .ok_or(Error::::CalculationOverflow)?; ledger_list_origin.retain(|&x| x != unlock_id); } else { - return Err(Error::::TimeUnitUnlockLedgerNotFound.into()); + return Err(Error::::TimeUnitUnlockLedgerNotFound); } - return Ok(()); + Ok(()) }, )?; @@ -668,9 +663,9 @@ pub mod pallet { .ok_or(Error::::CalculationOverflow)?; ledger_list_origin.retain(|&x| x != unlock_id); } else { - return Err(Error::::UserUnlockLedgerNotFound.into()); + return Err(Error::::UserUnlockLedgerNotFound); } - return Ok(()); + Ok(()) }, )?; CurrencyUnlockingTotal::::mutate(|pool| -> Result<(), Error> { @@ -687,8 +682,7 @@ pub mod pallet { }; let (token_amount, vtoken_amount, fee) = - Self::mint_without_tranfer(&exchanger, vtoken_id, token_id, unlock_amount) - .map_err(|e| e)?; + Self::mint_without_tranfer(&exchanger, vtoken_id, token_id, unlock_amount)?; TokenToRebond::::mutate(&token_id, |value| -> Result<(), Error> { if let Some(value_info) = value { @@ -696,7 +690,7 @@ pub mod pallet { .checked_add(&token_amount) .ok_or(Error::::CalculationOverflow)?; } else { - return Err(Error::::InvalidRebondToken.into()); + return Err(Error::::InvalidRebondToken); } Ok(()) })?; @@ -863,16 +857,16 @@ pub mod pallet { let mut vtoken_amount = token_amount_excluding_fee; if token_pool_amount != BalanceOf::::zero() { vtoken_amount = token_amount_excluding_fee - .checked_mul(&vtoken_total_issuance.into()) + .checked_mul(&vtoken_total_issuance) .ok_or(Error::::CalculationOverflow)? - .checked_div(&token_pool_amount.into()) + .checked_div(&token_pool_amount) .ok_or(Error::::CalculationOverflow)?; } // Charging fees - T::MultiCurrency::transfer(token_id, &exchanger, &T::FeeAccount::get(), mint_fee)?; + T::MultiCurrency::transfer(token_id, exchanger, &T::FeeAccount::get(), mint_fee)?; // Issue the corresponding vtoken to the user's account. - T::MultiCurrency::deposit(vtoken_id, &exchanger, vtoken_amount)?; + T::MultiCurrency::deposit(vtoken_id, exchanger, vtoken_amount)?; TokenPool::::mutate(&token_id, |pool| -> Result<(), Error> { *pool = pool .checked_add(&token_amount_excluding_fee) @@ -908,9 +902,9 @@ pub mod pallet { .ok_or(Error::::CalculationOverflow)?; ledger_list_origin.retain(|x| x != index); } else { - return Err(Error::::TimeUnitUnlockLedgerNotFound.into()); + return Err(Error::::TimeUnitUnlockLedgerNotFound); } - return Ok(()); + Ok(()) }, )?; @@ -928,9 +922,9 @@ pub mod pallet { .checked_sub(&unlock_amount) .ok_or(Error::::CalculationOverflow)?; } else { - return Err(Error::::UserUnlockLedgerNotFound.into()); + return Err(Error::::UserUnlockLedgerNotFound); } - return Ok(()); + Ok(()) }, )?; } else { @@ -948,9 +942,9 @@ pub mod pallet { .checked_sub(&unlock_amount) .ok_or(Error::::CalculationOverflow)?; } else { - return Err(Error::::TokenUnlockLedgerNotFound.into()); + return Err(Error::::TokenUnlockLedgerNotFound); } - return Ok(()); + Ok(()) }, )?; @@ -967,9 +961,9 @@ pub mod pallet { .checked_sub(&unlock_amount) .ok_or(Error::::CalculationOverflow)?; } else { - return Err(Error::::TimeUnitUnlockLedgerNotFound.into()); + return Err(Error::::TimeUnitUnlockLedgerNotFound); } - return Ok(()); + Ok(()) }, )?; @@ -987,9 +981,9 @@ pub mod pallet { .checked_sub(&unlock_amount) .ok_or(Error::::CalculationOverflow)?; } else { - return Err(Error::::UserUnlockLedgerNotFound.into()); + return Err(Error::::UserUnlockLedgerNotFound); } - return Ok(()); + Ok(()) }, )?; } @@ -1043,8 +1037,7 @@ pub mod pallet { unlock_amount, entrance_account_balance, time_unit, - ) - .map_err(|e| e); + ); } } }, @@ -1066,7 +1059,7 @@ pub mod pallet { BoundedVec, CurrencyIdOf, )> = TimeUnitUnlockLedger::::iter_prefix_values(time_unit).collect(); - if time_unit_ledger_list.len() == 0 { + if time_unit_ledger_list.is_empty() { MinTimeUnit::::mutate(ksm, |time_unit| -> Result<(), Error> { match time_unit { TimeUnit::Era(era) => { @@ -1173,9 +1166,9 @@ impl VtokenMintingOperator, AccountIdOf, ledger_list_origin.retain(|&x| x != index); } } else { - return Err(Error::::TimeUnitUnlockLedgerNotFound.into()); + return Err(Error::::TimeUnitUnlockLedgerNotFound); } - return Ok(()); + Ok(()) }, )?; @@ -1195,9 +1188,9 @@ impl VtokenMintingOperator, AccountIdOf, ledger_list_origin.retain(|&x| x != index); } } else { - return Err(Error::::UserUnlockLedgerNotFound.into()); + return Err(Error::::UserUnlockLedgerNotFound); } - return Ok(()); + Ok(()) }, )?; @@ -1217,9 +1210,9 @@ impl VtokenMintingOperator, AccountIdOf, .checked_sub(&deduct_amount) .ok_or(Error::::CalculationOverflow)?; } else { - return Err(Error::::TokenUnlockLedgerNotFound.into()); + return Err(Error::::TokenUnlockLedgerNotFound); } - return Ok(()); + Ok(()) }, )?; } diff --git a/pallets/vtoken-minting/src/mock.rs b/pallets/vtoken-minting/src/mock.rs index ec3f6a193..3782c8203 100644 --- a/pallets/vtoken-minting/src/mock.rs +++ b/pallets/vtoken-minting/src/mock.rs @@ -226,7 +226,6 @@ impl ExtBuilder { orml_tokens::GenesisConfig:: { balances: self .endowed_accounts - .clone() .into_iter() .filter(|(_, currency_id, _)| *currency_id != BNC) .collect::>(), diff --git a/pallets/xcm-interface/src/lib.rs b/pallets/xcm-interface/src/lib.rs index 71d751999..eca6e0fe0 100644 --- a/pallets/xcm-interface/src/lib.rs +++ b/pallets/xcm-interface/src/lib.rs @@ -301,7 +301,7 @@ pub mod pallet { } pub(crate) fn transact_id(data: &[u8]) -> MessageId { - return sp_io::hashing::blake2_256(&data[..]); + return sp_io::hashing::blake2_256(data); } pub(crate) fn build_ump_transact( diff --git a/runtime/bifrost-kusama/src/lib.rs b/runtime/bifrost-kusama/src/lib.rs index 1d1f1719f..1e06d27f0 100644 --- a/runtime/bifrost-kusama/src/lib.rs +++ b/runtime/bifrost-kusama/src/lib.rs @@ -1404,12 +1404,8 @@ parameter_types! { } parameter_type_with_key! { - pub ParachainMinFee: |location: MultiLocation| -> u128 { - #[allow(clippy::match_ref_pats)] // false positive - match (location.parents, location.first_interior()) { - // (1, Some(Parachain(parachains::Statemine::ID))) => XcmInterface::get_parachain_fee(location.clone()), - _ => u128::MAX, - } + pub ParachainMinFee: |_location: MultiLocation| -> u128 { + u128::MAX }; }