From e79a1449abad3a7fc339e8d4c0c12fa005b8465f Mon Sep 17 00:00:00 2001 From: Eugene The Dream Date: Tue, 12 Mar 2024 10:17:18 -0700 Subject: [PATCH 01/13] Compiles --- chain/indexer/src/streamer/utils.rs | 1 + core/parameters/src/cost.rs | 8 ++- core/primitives-core/Cargo.toml | 2 + core/primitives-core/src/version.rs | 5 ++ runtime/runtime/src/config.rs | 18 +++-- runtime/runtime/src/lib.rs | 102 ++++++++++++++++++++-------- runtime/runtime/src/verifier.rs | 2 +- 7 files changed, 100 insertions(+), 38 deletions(-) diff --git a/chain/indexer/src/streamer/utils.rs b/chain/indexer/src/streamer/utils.rs index 0ec742cb900..a50c2cbdefb 100644 --- a/chain/indexer/src/streamer/utils.rs +++ b/chain/indexer/src/streamer/utils.rs @@ -43,6 +43,7 @@ pub(crate) async fn convert_transactions_sir_into_local_receipts( }, prev_block_gas_price, true, + block.header.latest_protocol_version, ); views::ReceiptView { predecessor_id: tx.transaction.signer_id.clone(), diff --git a/core/parameters/src/cost.rs b/core/parameters/src/cost.rs index 4bed1bdf833..3591681f188 100644 --- a/core/parameters/src/cost.rs +++ b/core/parameters/src/cost.rs @@ -1,7 +1,7 @@ use crate::parameter::Parameter; use enum_map::{enum_map, EnumMap}; use near_account_id::AccountType; -use near_primitives_core::types::{Balance, Compute, Gas}; +use near_primitives_core::types::{Balance, BlockHeight, Compute, Gas}; use num_rational::Rational32; /// Costs associated with an object that can only be sent over the network (and executed @@ -488,6 +488,12 @@ impl RuntimeFeesConfig { self.fee(ActionCosts::new_action_receipt).min_send_and_exec_fee() + self.fee(ActionCosts::function_call_base).min_send_and_exec_fee() } + + /// The cost is currently set to a fixed 5 TGas. But in the future, it will grow based on the + /// time passed from the enabled block height. + pub fn gas_fee_for_gas_refund(&self, _block_height: BlockHeight) -> Gas { + 5_000_000_000_000 + } } impl StorageUsageConfig { diff --git a/core/primitives-core/Cargo.toml b/core/primitives-core/Cargo.toml index 689d7af4abb..0a5ef741325 100644 --- a/core/primitives-core/Cargo.toml +++ b/core/primitives-core/Cargo.toml @@ -37,6 +37,7 @@ protocol_feature_fix_staking_threshold = [] protocol_feature_fix_contract_loading_cost = [] protocol_feature_reject_blocks_with_outdated_protocol_version = [] protocol_feature_nonrefundable_transfer_nep491 = [] +protocol_feature_gas_price_refund_adjustment = [] yield_resume = [] nightly = [ @@ -45,6 +46,7 @@ nightly = [ "protocol_feature_fix_staking_threshold", "protocol_feature_nonrefundable_transfer_nep491", "protocol_feature_reject_blocks_with_outdated_protocol_version", + "protocol_feature_gas_price_refund_adjustment", "yield_resume", ] diff --git a/core/primitives-core/src/version.rs b/core/primitives-core/src/version.rs index ba2ae301950..be92df0db12 100644 --- a/core/primitives-core/src/version.rs +++ b/core/primitives-core/src/version.rs @@ -142,6 +142,9 @@ pub enum ProtocolFeature { SingleShardTracking, // Stateless validation: state witness size limits. StateWitnessSizeLimit, + // Disable gas price refunds and require some amount of gas for refunds. + #[cfg(feature = "protocol_feature_gas_price_refund_adjustment")] + GasPriceRefundAdjustment, } impl ProtocolFeature { @@ -206,6 +209,8 @@ impl ProtocolFeature { ProtocolFeature::EthImplicitAccounts => 138, #[cfg(feature = "protocol_feature_nonrefundable_transfer_nep491")] ProtocolFeature::NonRefundableBalance => 140, + #[cfg(feature = "protocol_feature_gas_price_refund_adjustment")] + ProtocolFeature::GasPriceRefundAdjustment => 141, } } } diff --git a/runtime/runtime/src/config.rs b/runtime/runtime/src/config.rs index aa4e976e1bd..e8d63918cc5 100644 --- a/runtime/runtime/src/config.rs +++ b/runtime/runtime/src/config.rs @@ -10,6 +10,8 @@ use near_parameters::{transfer_exec_fee, transfer_send_fee, ActionCosts, Runtime pub use near_primitives::num_rational::Rational32; use near_primitives::transaction::{Action, DeployContractAction, Transaction}; use near_primitives::types::{AccountId, Balance, Compute, Gas}; +use near_primitives_core::checked_feature; +use near_primitives_core::types::ProtocolVersion; /// Describes the cost of converting this transaction into a receipt. #[derive(Debug)] @@ -248,6 +250,7 @@ pub fn tx_cost( transaction: &Transaction, gas_price: Balance, sender_is_receiver: bool, + protocol_version: ProtocolVersion, ) -> Result { let fees = &config.fees; let mut gas_burnt: Gas = fees.fee(ActionCosts::new_action_receipt).send_fee(sender_is_receiver); @@ -264,14 +267,17 @@ pub fn tx_cost( total_prepaid_gas(&transaction.actions)?, total_prepaid_send_fees(config, &transaction.actions)?, )?; - // If signer is equals to receiver the receipt will be processed at the same block as this - // transaction. Otherwise it will processed in the next block and the gas might be inflated. - let initial_receipt_hop = if transaction.signer_id == transaction.receiver_id { 0 } else { 1 }; - let minimum_new_receipt_gas = fees.min_receipt_with_function_call_gas(); // In case the config is free, we don't care about the maximum depth. - let receipt_gas_price = if gas_price == 0 { - 0 + let receipt_gas_price = if gas_price == 0 + || checked_feature!("nightly_protocol", GasPriceRefundAdjustment, protocol_version) + { + gas_price } else { + // If signer is equals to receiver the receipt will be processed at the same block as this + // transaction. Otherwise it will processed in the next block and the gas might be inflated. + let initial_receipt_hop = + if transaction.signer_id == transaction.receiver_id { 0 } else { 1 }; + let minimum_new_receipt_gas = fees.min_receipt_with_function_call_gas(); let maximum_depth = if minimum_new_receipt_gas > 0 { prepaid_gas / minimum_new_receipt_gas } else { 0 }; let inflation_exponent = u8::try_from(initial_receipt_hop + maximum_depth) diff --git a/runtime/runtime/src/lib.rs b/runtime/runtime/src/lib.rs index 348cfdbcc92..49a11a293fb 100644 --- a/runtime/runtime/src/lib.rs +++ b/runtime/runtime/src/lib.rs @@ -135,6 +135,17 @@ pub struct VerificationResult { pub burnt_amount: Balance, } +/// The result from refund receipts generation. +#[derive(Debug)] +pub struct RefundResult { + /// The amount spent for the generation of the gas refund receipt. + pub gas_refund_burnt_amount: Balance, + /// The amount burnt that wasn't refunded, because it was lower required for the refund. + pub other_burnt_amount: Balance, + /// The deficit of amount due to the difference in the gas prices. + pub gas_deficit_amount: Balance, +} + #[derive(Debug, Default)] pub struct ApplyStats { pub tx_burnt_amount: Balance, @@ -635,7 +646,7 @@ impl Runtime { Err(StorageStakingError::StorageError(err)) => { return Err(RuntimeError::StorageError( StorageError::StorageInconsistentState(err), - )) + )); } } } @@ -665,13 +676,15 @@ impl Runtime { 0 } else { // Calculating and generating refunds - self.generate_refund_receipts( - apply_state.gas_price, - receipt, - action_receipt, - &mut result, - &apply_state.config, - )? + let refund_result = + self.generate_refund_receipts(receipt, action_receipt, &mut result, &apply_state)?; + // For now just mark this as other burnt amount. + stats.other_burnt_amount = + safe_add_balance(stats.other_burnt_amount, refund_result.gas_refund_burnt_amount)?; + stats.other_burnt_amount = + safe_add_balance(stats.other_burnt_amount, refund_result.other_burnt_amount)?; + + refund_result.gas_deficit_amount }; stats.gas_deficit_amount = safe_add_balance(stats.gas_deficit_amount, gas_deficit_amount)?; @@ -827,12 +840,20 @@ impl Runtime { fn generate_refund_receipts( &self, - current_gas_price: Balance, receipt: &Receipt, action_receipt: &ActionReceipt, result: &mut ActionResult, - config: &RuntimeConfig, - ) -> Result { + apply_state: &ApplyState, + ) -> Result { + let config = &apply_state.config; + let protocol_version = apply_state.current_protocol_version; + let current_gas_price = apply_state.gas_price; + let mut refund_result = RefundResult { + gas_refund_burnt_amount: 0, + other_burnt_amount: 0, + gas_deficit_amount: 0, + }; + let total_deposit = total_deposit(&action_receipt.actions)?; let prepaid_gas = safe_add_gas( total_prepaid_gas(&action_receipt.actions)?, @@ -850,32 +871,38 @@ impl Runtime { }; // Refund for the unused portion of the gas at the price at which this gas was purchased. let mut gas_balance_refund = safe_gas_to_balance(action_receipt.gas_price, gas_refund)?; - let mut gas_deficit_amount = 0; if current_gas_price > action_receipt.gas_price { // In a rare scenario, when the current gas price is higher than the purchased gas // price, the difference is subtracted from the refund. If the refund doesn't have // enough balance to cover the difference, then the remaining balance is considered // the deficit and it's reported in the stats for the balance checker. - gas_deficit_amount = safe_gas_to_balance( + refund_result.gas_deficit_amount = safe_gas_to_balance( current_gas_price - action_receipt.gas_price, result.gas_burnt, )?; - if gas_balance_refund >= gas_deficit_amount { - gas_balance_refund -= gas_deficit_amount; - gas_deficit_amount = 0; + if gas_balance_refund >= refund_result.gas_deficit_amount { + gas_balance_refund -= refund_result.gas_deficit_amount; + refund_result.gas_deficit_amount = 0; } else { - gas_deficit_amount -= gas_balance_refund; + refund_result.gas_deficit_amount -= gas_balance_refund; gas_balance_refund = 0; } } else { - // Refund for the difference of the purchased gas price and the current gas price. - gas_balance_refund = safe_add_balance( - gas_balance_refund, - safe_gas_to_balance( - action_receipt.gas_price - current_gas_price, - result.gas_burnt, - )?, + let gas_price_difference_amount = safe_gas_to_balance( + action_receipt.gas_price - current_gas_price, + result.gas_burnt, )?; + if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, protocol_version) { + // There is no refunds for the difference of the purchased gas price and the current gas price. + refund_result.other_burnt_amount = safe_add_balance( + refund_result.other_burnt_amount, + gas_price_difference_amount, + )?; + } else { + // Refund for the difference of the purchased gas price and the current gas price. + gas_balance_refund = + safe_add_balance(gas_balance_refund, gas_price_difference_amount)?; + } } if deposit_refund > 0 { @@ -883,16 +910,31 @@ impl Runtime { .new_receipts .push(Receipt::new_balance_refund(&receipt.predecessor_id, deposit_refund)); } - if gas_balance_refund > 0 { + let gas_balance_refund_cost = + if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, protocol_version) { + safe_gas_to_balance( + current_gas_price, + config.fees.gas_fee_for_gas_refund(apply_state.block_height), + )? + } else { + 0 + }; + + if gas_balance_refund > gas_balance_refund_cost { // Gas refunds refund the allowance of the access key, so if the key exists on the // account it will increase the allowance by the refund amount. + refund_result.gas_refund_burnt_amount = + safe_add_balance(refund_result.gas_refund_burnt_amount, gas_balance_refund_cost)?; result.new_receipts.push(Receipt::new_gas_refund( &action_receipt.signer_id, - gas_balance_refund, + gas_balance_refund - gas_balance_refund_cost, action_receipt.signer_public_key.clone(), )); + } else { + refund_result.other_burnt_amount = + safe_add_balance(refund_result.other_burnt_amount, gas_balance_refund)?; } - Ok(gas_deficit_amount) + Ok(refund_result) } fn process_receipt( @@ -2243,19 +2285,19 @@ mod tests { PROTOCOL_VERSION, &local_transactions[0], &apply_state.prev_block_hash, - &apply_state.block_hash + &apply_state.block_hash, ), // receipt for tx 0 create_receipt_id_from_transaction( PROTOCOL_VERSION, &local_transactions[1], &apply_state.prev_block_hash, - &apply_state.block_hash + &apply_state.block_hash, ), // receipt for tx 1 create_receipt_id_from_transaction( PROTOCOL_VERSION, &local_transactions[2], &apply_state.prev_block_hash, - &apply_state.block_hash + &apply_state.block_hash, ), // receipt for tx 2 ], "STEP #1 failed", diff --git a/runtime/runtime/src/verifier.rs b/runtime/runtime/src/verifier.rs index 9ccdad3e83f..14525ba001d 100644 --- a/runtime/runtime/src/verifier.rs +++ b/runtime/runtime/src/verifier.rs @@ -121,7 +121,7 @@ pub fn validate_transaction( let sender_is_receiver = &transaction.receiver_id == signer_id; - tx_cost(&config, transaction, gas_price, sender_is_receiver) + tx_cost(&config, transaction, gas_price, sender_is_receiver, current_protocol_version) .map_err(|_| InvalidTxError::CostOverflow.into()) } From a08478abf25831a87f86c3624903530be2f8d4c7 Mon Sep 17 00:00:00 2001 From: Eugene The Dream Date: Tue, 12 Mar 2024 16:52:56 -0700 Subject: [PATCH 02/13] Account for gas refund receipt in the burnt TX fees. Fix tests --- core/parameters/src/cost.rs | 19 +++-- core/primitives-core/src/version.rs | 2 +- .../src/tests/standard_cases/mod.rs | 56 +++++++++---- runtime/runtime/src/lib.rs | 81 +++++++++---------- test-utils/testlib/src/fees_utils.rs | 36 ++++++--- 5 files changed, 117 insertions(+), 77 deletions(-) diff --git a/core/parameters/src/cost.rs b/core/parameters/src/cost.rs index 3591681f188..3889a8eaad9 100644 --- a/core/parameters/src/cost.rs +++ b/core/parameters/src/cost.rs @@ -1,7 +1,7 @@ use crate::parameter::Parameter; use enum_map::{enum_map, EnumMap}; use near_account_id::AccountType; -use near_primitives_core::types::{Balance, BlockHeight, Compute, Gas}; +use near_primitives_core::types::{Balance, Compute, Gas}; use num_rational::Rational32; /// Costs associated with an object that can only be sent over the network (and executed @@ -489,10 +489,19 @@ impl RuntimeFeesConfig { + self.fee(ActionCosts::function_call_base).min_send_and_exec_fee() } - /// The cost is currently set to a fixed 5 TGas. But in the future, it will grow based on the - /// time passed from the enabled block height. - pub fn gas_fee_for_gas_refund(&self, _block_height: BlockHeight) -> Gas { - 5_000_000_000_000 + /// The cost is currently set to a fixed 5 TGas. + /// Note, in the future this cost will be dynamic and grow based on the distance from the + /// enabled block height to discourage function call refunds. + pub fn gas_fee_for_gas_refund(&self) -> Gas { + if self.fee(ActionCosts::new_action_receipt).min_send_and_exec_fee() + + self.fee(ActionCosts::transfer).min_send_and_exec_fee() + > 0 + { + 5_000_000_000_000 + } else { + // To account for free config + 0 + } } } diff --git a/core/primitives-core/src/version.rs b/core/primitives-core/src/version.rs index be92df0db12..47f8b18f4da 100644 --- a/core/primitives-core/src/version.rs +++ b/core/primitives-core/src/version.rs @@ -226,7 +226,7 @@ pub const PROTOCOL_VERSION: ProtocolVersion = if cfg!(feature = "statelessnet_pr 83 } else if cfg!(feature = "nightly_protocol") { // On nightly, pick big enough version to support all features. - 140 + 141 } else { // Enable all stable features. STABLE_PROTOCOL_VERSION diff --git a/integration-tests/src/tests/standard_cases/mod.rs b/integration-tests/src/tests/standard_cases/mod.rs index ba327b43f5b..799d9033d11 100644 --- a/integration-tests/src/tests/standard_cases/mod.rs +++ b/integration-tests/src/tests/standard_cases/mod.rs @@ -30,6 +30,8 @@ use near_parameters::RuntimeConfig; use near_primitives::receipt::{ActionReceipt, Receipt, ReceiptEnum}; use near_primitives::test_utils; use near_primitives::transaction::{Action, DeployContractAction, FunctionCallAction}; +use near_primitives_core::checked_feature; +use near_primitives_core::version::PROTOCOL_VERSION; use testlib::fees_utils::FeeHelper; use testlib::runtime_utils::{ alice_account, bob_account, eve_dot_alice_account, x_dot_y_dot_alice_account, @@ -265,7 +267,11 @@ pub fn test_upload_contract(node: impl Node) { ) .unwrap(); assert_eq!(transaction_result.status, FinalExecutionStatus::SuccessValue(Vec::new())); - assert_eq!(transaction_result.receipts_outcome.len(), 2); + if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { + assert_eq!(transaction_result.receipts_outcome.len(), 1); + } else { + assert_eq!(transaction_result.receipts_outcome.len(), 2); + } node_user.view_contract_code(&eve_dot_alice_account()).expect_err( "RpcError { code: -32000, message: \"Server error\", data: Some(String(\"contract code of account eve.alice.near does not exist while viewing\")) }"); @@ -311,7 +317,7 @@ pub fn test_send_money(node: impl Node) { let transaction_result = node_user.send_money(account_id.clone(), bob_account(), money_used).unwrap(); assert_eq!(transaction_result.status, FinalExecutionStatus::SuccessValue(Vec::new())); - assert_eq!(transaction_result.receipts_outcome.len(), 2); + assert_eq!(transaction_result.receipts_outcome.len(), 1); let new_root = node_user.get_state_root(); assert_ne!(root, new_root); assert_eq!(node_user.get_access_key_nonce_for_signer(account_id).unwrap(), 1); @@ -352,7 +358,7 @@ pub fn transfer_tokens_to_implicit_account(node: impl Node, public_key: PublicKe let transaction_result = node_user.send_money(account_id.clone(), receiver_id.clone(), tokens_used).unwrap(); assert_eq!(transaction_result.status, FinalExecutionStatus::SuccessValue(Vec::new())); - assert_eq!(transaction_result.receipts_outcome.len(), 2); + assert_eq!(transaction_result.receipts_outcome.len(), 1); let new_root = node_user.get_state_root(); assert_ne!(root, new_root); assert_eq!(node_user.get_access_key_nonce_for_signer(account_id).unwrap(), 1); @@ -385,7 +391,7 @@ pub fn transfer_tokens_to_implicit_account(node: impl Node, public_key: PublicKe node_user.send_money(account_id.clone(), receiver_id.clone(), tokens_used).unwrap(); assert_eq!(transaction_result.status, FinalExecutionStatus::SuccessValue(Vec::new())); - assert_eq!(transaction_result.receipts_outcome.len(), 2); + assert_eq!(transaction_result.receipts_outcome.len(), 1); let new_root = node_user.get_state_root(); assert_ne!(root, new_root); assert_eq!(node_user.get_access_key_nonce_for_signer(account_id).unwrap(), 2); @@ -419,8 +425,25 @@ pub fn trying_to_create_implicit_account(node: impl Node, public_key: PublicKey) .create_account(account_id.clone(), receiver_id.clone(), public_key, tokens_used) .unwrap(); - let create_account_fee = fee_helper.cfg().fee(ActionCosts::create_account).send_fee(false); - let add_access_key_fee = fee_helper.cfg().fee(ActionCosts::add_full_access_key).send_fee(false); + let create_account_send_fee = fee_helper.cfg().fee(ActionCosts::create_account).send_fee(false); + let add_access_key_send_fee = + fee_helper.cfg().fee(ActionCosts::add_full_access_key).send_fee(false); + + let create_account_exec_fee = fee_helper.cfg().fee(ActionCosts::create_account).exec_fee(); + let add_access_key_exec_fee = fee_helper.cfg().fee(ActionCosts::add_full_access_key).exec_fee(); + + let create_account_fee = + if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { + create_account_send_fee + create_account_exec_fee + } else { + create_account_send_fee + }; + let add_access_key_fee = + if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { + add_access_key_send_fee + add_access_key_exec_fee + } else { + add_access_key_send_fee + }; let cost = match receiver_id.get_account_type() { AccountType::NearImplicitAccount => { @@ -448,7 +471,7 @@ pub fn trying_to_create_implicit_account(node: impl Node, public_key: PublicKey) .into() ) ); - assert_eq!(transaction_result.receipts_outcome.len(), 3); + assert_eq!(transaction_result.receipts_outcome.len(), 2); let new_root = node_user.get_state_root(); assert_ne!(root, new_root); assert_eq!(node_user.get_access_key_nonce_for_signer(account_id).unwrap(), 1); @@ -482,6 +505,7 @@ pub fn test_smart_contract_reward(node: impl Node) { let fee_helper = fee_helper(&node); let bob = node_user.view_account(&bob_account()).unwrap(); let gas_burnt_for_function_call = transaction_result.receipts_outcome[0].outcome.gas_burnt + - fee_helper.gas_refund_fee() - fee_helper.function_call_exec_gas(b"run_test".len() as u64); let reward = fee_helper.gas_burnt_to_reward(gas_burnt_for_function_call); assert_eq!(bob.amount, TESTING_INIT_BALANCE - TESTING_INIT_STAKE + reward); @@ -529,7 +553,7 @@ pub fn test_refund_on_send_money_to_non_existent_account(node: impl Node) { .into() ) ); - assert_eq!(transaction_result.receipts_outcome.len(), 3); + assert_eq!(transaction_result.receipts_outcome.len(), 2); let new_root = node_user.get_state_root(); assert_ne!(root, new_root); let result1 = node_user.view_account(account_id).unwrap(); @@ -560,7 +584,7 @@ pub fn test_create_account(node: impl Node) { let create_account_cost = fee_helper.create_account_transfer_full_key_cost(); assert_eq!(transaction_result.status, FinalExecutionStatus::SuccessValue(Vec::new())); - assert_eq!(transaction_result.receipts_outcome.len(), 2); + assert_eq!(transaction_result.receipts_outcome.len(), 1); let new_root = node_user.get_state_root(); assert_ne!(root, new_root); assert_eq!(node_user.get_access_key_nonce_for_signer(account_id).unwrap(), 1); @@ -593,7 +617,7 @@ pub fn test_create_account_again(node: impl Node) { .unwrap(); assert_eq!(transaction_result.status, FinalExecutionStatus::SuccessValue(Vec::new())); - assert_eq!(transaction_result.receipts_outcome.len(), 2); + assert_eq!(transaction_result.receipts_outcome.len(), 1); let fee_helper = fee_helper(&node); let create_account_cost = fee_helper.create_account_transfer_full_key_cost(); @@ -625,7 +649,7 @@ pub fn test_create_account_again(node: impl Node) { .into() ) ); - assert_eq!(transaction_result.receipts_outcome.len(), 3); + assert_eq!(transaction_result.receipts_outcome.len(), 2); let new_root = node_user.get_state_root(); assert_ne!(root, new_root); assert_eq!(node_user.get_access_key_nonce_for_signer(account_id).unwrap(), 2); @@ -672,7 +696,7 @@ pub fn test_create_account_failure_already_exists(node: impl Node) { .into() ) ); - assert_eq!(transaction_result.receipts_outcome.len(), 3); + assert_eq!(transaction_result.receipts_outcome.len(), 2); let new_root = node_user.get_state_root(); assert_ne!(root, new_root); assert_eq!(node_user.get_access_key_nonce_for_signer(account_id).unwrap(), 1); @@ -1175,7 +1199,7 @@ pub fn test_unstake_while_not_staked(node: impl Node) { ) .unwrap(); assert_eq!(transaction_result.status, FinalExecutionStatus::SuccessValue(Vec::new())); - assert_eq!(transaction_result.receipts_outcome.len(), 2); + assert_eq!(transaction_result.receipts_outcome.len(), 1); let transaction_result = node_user.stake(eve_dot_alice_account(), node.block_signer().public_key(), 0).unwrap(); assert_eq!( @@ -1273,7 +1297,7 @@ pub fn test_delete_account_fail(node: impl Node) { .into() ) ); - assert_eq!(transaction_result.receipts_outcome.len(), 2); + assert_eq!(transaction_result.receipts_outcome.len(), 1); assert!(node.user().view_account(&bob_account()).is_ok()); assert_eq!( node.user().view_account(&node.account_id().unwrap()).unwrap().amount, @@ -1295,7 +1319,7 @@ pub fn test_delete_account_no_account(node: impl Node) { .into() ) ); - assert_eq!(transaction_result.receipts_outcome.len(), 2); + assert_eq!(transaction_result.receipts_outcome.len(), 1); } pub fn test_delete_account_while_staking(node: impl Node) { @@ -1345,7 +1369,7 @@ pub fn test_smart_contract_free(node: impl Node) { transaction_result.status, FinalExecutionStatus::SuccessValue(10i32.to_le_bytes().to_vec()) ); - assert_eq!(transaction_result.receipts_outcome.len(), 1); + assert_eq!(transaction_result.receipts_outcome.len(), 2); let total_gas_burnt = transaction_result.transaction_outcome.outcome.gas_burnt + transaction_result.receipts_outcome.iter().map(|t| t.outcome.gas_burnt).sum::(); diff --git a/runtime/runtime/src/lib.rs b/runtime/runtime/src/lib.rs index 49a11a293fb..3155129aa53 100644 --- a/runtime/runtime/src/lib.rs +++ b/runtime/runtime/src/lib.rs @@ -138,10 +138,8 @@ pub struct VerificationResult { /// The result from refund receipts generation. #[derive(Debug)] pub struct RefundResult { - /// The amount spent for the generation of the gas refund receipt. - pub gas_refund_burnt_amount: Balance, - /// The amount burnt that wasn't refunded, because it was lower required for the refund. - pub other_burnt_amount: Balance, + /// The amount of tokens burnt based on gas price difference. + pub gas_difference_token_burnt_amount: Balance, /// The deficit of amount due to the difference in the gas prices. pub gas_deficit_amount: Balance, } @@ -652,7 +650,7 @@ impl Runtime { } } - let gas_deficit_amount = if receipt.predecessor_id.is_system() { + let refund_result = if receipt.predecessor_id.is_system() { // We will set gas_burnt for refund receipts to be 0 when we calculate tx_burnt_amount // Here we don't set result.gas_burnt to be zero if CountRefundReceiptsInGasLimit is // enabled because we want it to be counted in gas limit calculation later @@ -673,20 +671,13 @@ impl Runtime { total_deposit(&action_receipt.actions)?, )? } - 0 + RefundResult { gas_difference_token_burnt_amount: 0, gas_deficit_amount: 0 } } else { // Calculating and generating refunds - let refund_result = - self.generate_refund_receipts(receipt, action_receipt, &mut result, &apply_state)?; - // For now just mark this as other burnt amount. - stats.other_burnt_amount = - safe_add_balance(stats.other_burnt_amount, refund_result.gas_refund_burnt_amount)?; - stats.other_burnt_amount = - safe_add_balance(stats.other_burnt_amount, refund_result.other_burnt_amount)?; - - refund_result.gas_deficit_amount + self.generate_refund_receipts(receipt, action_receipt, &mut result, &apply_state)? }; - stats.gas_deficit_amount = safe_add_balance(stats.gas_deficit_amount, gas_deficit_amount)?; + stats.gas_deficit_amount = + safe_add_balance(stats.gas_deficit_amount, refund_result.gas_deficit_amount)?; // Moving validator proposals validator_proposals.append(&mut result.validator_proposals); @@ -706,8 +697,10 @@ impl Runtime { // If the receipt is a refund, then we consider it free without burnt gas. let gas_burnt: Gas = if receipt.predecessor_id.is_system() { 0 } else { result.gas_burnt }; // `gas_deficit_amount` is strictly less than `gas_price * gas_burnt`. - let mut tx_burnt_amount = - safe_gas_to_balance(apply_state.gas_price, gas_burnt)? - gas_deficit_amount; + let mut tx_burnt_amount = safe_add_balance( + safe_gas_to_balance(apply_state.gas_price, gas_burnt)?, + refund_result.gas_difference_token_burnt_amount, + )? - refund_result.gas_deficit_amount; // The amount of tokens burnt for the execution of this receipt. It's used in the execution // outcome. let tokens_burnt = tx_burnt_amount; @@ -719,7 +712,7 @@ impl Runtime { // The balance that the current account should receive as a reward for function call // execution. let receiver_reward = safe_gas_to_balance(apply_state.gas_price, receiver_gas_reward)? - .saturating_sub(gas_deficit_amount); + .saturating_sub(refund_result.gas_deficit_amount); if receiver_reward > 0 { let mut account = get_account(state_update, account_id)?; if let Some(ref mut account) = account { @@ -848,11 +841,8 @@ impl Runtime { let config = &apply_state.config; let protocol_version = apply_state.current_protocol_version; let current_gas_price = apply_state.gas_price; - let mut refund_result = RefundResult { - gas_refund_burnt_amount: 0, - other_burnt_amount: 0, - gas_deficit_amount: 0, - }; + let mut refund_result = + RefundResult { gas_difference_token_burnt_amount: 0, gas_deficit_amount: 0 }; let total_deposit = total_deposit(&action_receipt.actions)?; let prepaid_gas = safe_add_gas( @@ -864,11 +854,24 @@ impl Runtime { config.fees.fee(ActionCosts::new_action_receipt).exec_fee(), )?; let deposit_refund = if result.result.is_err() { total_deposit } else { 0 }; - let gas_refund = if result.result.is_err() { - safe_add_gas(prepaid_gas, prepaid_exec_gas)? - result.gas_burnt + let total_prepaid_gas = safe_add_gas(prepaid_gas, prepaid_exec_gas)?; + let mut gas_refund = if result.result.is_err() { + total_prepaid_gas - result.gas_burnt } else { - safe_add_gas(prepaid_gas, prepaid_exec_gas)? - result.gas_used + total_prepaid_gas - result.gas_used }; + let gas_fee_for_gas_refund = + if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, protocol_version) { + config.fees.gas_fee_for_gas_refund() + } else { + 0 + }; + // Charging for the gas for the gas refund receipt, even if it's not enough to cover it. + let gas_burnt_for_gas_refund = std::cmp::min(gas_refund, gas_fee_for_gas_refund); + result.gas_burnt += gas_burnt_for_gas_refund; + result.gas_used += gas_burnt_for_gas_refund; + gas_refund -= gas_burnt_for_gas_refund; + // Refund for the unused portion of the gas at the price at which this gas was purchased. let mut gas_balance_refund = safe_gas_to_balance(action_receipt.gas_price, gas_refund)?; if current_gas_price > action_receipt.gas_price { @@ -881,9 +884,11 @@ impl Runtime { result.gas_burnt, )?; if gas_balance_refund >= refund_result.gas_deficit_amount { + // We first charge the refund balance. gas_balance_refund -= refund_result.gas_deficit_amount; refund_result.gas_deficit_amount = 0; } else { + // Not enough to cover the whole deficit. refund_result.gas_deficit_amount -= gas_balance_refund; gas_balance_refund = 0; } @@ -894,8 +899,8 @@ impl Runtime { )?; if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, protocol_version) { // There is no refunds for the difference of the purchased gas price and the current gas price. - refund_result.other_burnt_amount = safe_add_balance( - refund_result.other_burnt_amount, + refund_result.gas_difference_token_burnt_amount = safe_add_balance( + refund_result.gas_difference_token_burnt_amount, gas_price_difference_amount, )?; } else { @@ -910,29 +915,15 @@ impl Runtime { .new_receipts .push(Receipt::new_balance_refund(&receipt.predecessor_id, deposit_refund)); } - let gas_balance_refund_cost = - if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, protocol_version) { - safe_gas_to_balance( - current_gas_price, - config.fees.gas_fee_for_gas_refund(apply_state.block_height), - )? - } else { - 0 - }; - if gas_balance_refund > gas_balance_refund_cost { + if gas_balance_refund > 0 { // Gas refunds refund the allowance of the access key, so if the key exists on the // account it will increase the allowance by the refund amount. - refund_result.gas_refund_burnt_amount = - safe_add_balance(refund_result.gas_refund_burnt_amount, gas_balance_refund_cost)?; result.new_receipts.push(Receipt::new_gas_refund( &action_receipt.signer_id, - gas_balance_refund - gas_balance_refund_cost, + gas_balance_refund, action_receipt.signer_public_key.clone(), )); - } else { - refund_result.other_burnt_amount = - safe_add_balance(refund_result.other_burnt_amount, gas_balance_refund)?; } Ok(refund_result) } diff --git a/test-utils/testlib/src/fees_utils.rs b/test-utils/testlib/src/fees_utils.rs index ab5e9bd626b..4e3144a8e8f 100644 --- a/test-utils/testlib/src/fees_utils.rs +++ b/test-utils/testlib/src/fees_utils.rs @@ -1,8 +1,10 @@ //! Helper functions to compute the costs of certain actions assuming they succeed and the only //! actions in the transaction batch. use near_parameters::{ActionCosts, RuntimeConfig, RuntimeFeesConfig}; +use near_primitives::checked_feature; use near_primitives::transaction::Action; use near_primitives::types::{AccountId, Balance, Gas}; +use near_primitives::version::PROTOCOL_VERSION; pub struct FeeHelper { pub rt_cfg: RuntimeConfig, @@ -19,9 +21,14 @@ impl FeeHelper { } pub fn gas_to_balance_inflated(&self, gas: Gas) -> Balance { - gas as Balance - * (self.gas_price * (*self.cfg().pessimistic_gas_price_inflation_ratio.numer() as u128) - / (*self.cfg().pessimistic_gas_price_inflation_ratio.denom() as u128)) + if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { + self.gas_to_balance(gas) + } else { + gas as Balance + * (self.gas_price + * (*self.cfg().pessimistic_gas_price_inflation_ratio.numer() as u128) + / (*self.cfg().pessimistic_gas_price_inflation_ratio.denom() as u128)) + } } pub fn gas_to_balance(&self, gas: Gas) -> Balance { @@ -85,13 +92,18 @@ impl FeeHelper { } pub fn create_account_transfer_full_key_cost_fail_on_create_account(&self) -> Balance { - let exec_gas = self.cfg().fee(ActionCosts::new_action_receipt).exec_fee() - + self.cfg().fee(ActionCosts::create_account).exec_fee(); - let send_gas = self.cfg().fee(ActionCosts::new_action_receipt).send_fee(false) - + self.cfg().fee(ActionCosts::create_account).send_fee(false) - + self.cfg().fee(ActionCosts::transfer).send_fee(false) - + self.cfg().fee(ActionCosts::add_full_access_key).send_fee(false); - self.gas_to_balance(exec_gas + send_gas) + if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { + // The full cost due to the fact that the gas refund receipt would be too expensive. + self.create_account_transfer_full_key_cost() + } else { + let exec_gas = self.cfg().fee(ActionCosts::new_action_receipt).exec_fee() + + self.cfg().fee(ActionCosts::create_account).exec_fee(); + let send_gas = self.cfg().fee(ActionCosts::new_action_receipt).send_fee(false) + + self.cfg().fee(ActionCosts::create_account).send_fee(false) + + self.cfg().fee(ActionCosts::transfer).send_fee(false) + + self.cfg().fee(ActionCosts::add_full_access_key).send_fee(false); + self.gas_to_balance(exec_gas + send_gas) + } } pub fn deploy_contract_cost(&self, num_bytes: u64) -> Balance { @@ -192,4 +204,8 @@ impl FeeHelper { + node_runtime::config::total_send_fees(&self.rt_cfg, sir, actions, receiver).unwrap(); self.gas_to_balance(total_gas) } + + pub fn gas_refund_fee(&self) -> Gas { + self.cfg().gas_fee_for_gas_refund() + } } From 36e98a8f52de0c44b3e5de59e418cb3bd4d45554 Mon Sep 17 00:00:00 2001 From: Eugene The Dream Date: Tue, 12 Mar 2024 18:20:30 -0700 Subject: [PATCH 03/13] Fix tests for feature enabled/disabled --- .../src/tests/standard_cases/mod.rs | 41 +++++++++++-------- integration-tests/src/user/runtime_user.rs | 8 +++- runtime/runtime/src/lib.rs | 2 - test-utils/testlib/src/fees_utils.rs | 6 ++- 4 files changed, 35 insertions(+), 22 deletions(-) diff --git a/integration-tests/src/tests/standard_cases/mod.rs b/integration-tests/src/tests/standard_cases/mod.rs index 799d9033d11..4b1e97d1e10 100644 --- a/integration-tests/src/tests/standard_cases/mod.rs +++ b/integration-tests/src/tests/standard_cases/mod.rs @@ -44,6 +44,15 @@ pub(crate) fn fee_helper(node: &impl Node) -> FeeHelper { FeeHelper::new(RuntimeConfig::test(), node.genesis().config.min_gas_price) } +fn num_refund_outcome() -> usize { + if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { + 0 + } else { + 1 + } + +} + /// Adds given access key to the given account_id using signer2. fn add_access_key( node: &impl Node, @@ -267,11 +276,7 @@ pub fn test_upload_contract(node: impl Node) { ) .unwrap(); assert_eq!(transaction_result.status, FinalExecutionStatus::SuccessValue(Vec::new())); - if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { - assert_eq!(transaction_result.receipts_outcome.len(), 1); - } else { - assert_eq!(transaction_result.receipts_outcome.len(), 2); - } + assert_eq!(transaction_result.receipts_outcome.len(), 1 + num_refund_outcome()); node_user.view_contract_code(&eve_dot_alice_account()).expect_err( "RpcError { code: -32000, message: \"Server error\", data: Some(String(\"contract code of account eve.alice.near does not exist while viewing\")) }"); @@ -317,7 +322,7 @@ pub fn test_send_money(node: impl Node) { let transaction_result = node_user.send_money(account_id.clone(), bob_account(), money_used).unwrap(); assert_eq!(transaction_result.status, FinalExecutionStatus::SuccessValue(Vec::new())); - assert_eq!(transaction_result.receipts_outcome.len(), 1); + assert_eq!(transaction_result.receipts_outcome.len(), 1 + num_refund_outcome()); let new_root = node_user.get_state_root(); assert_ne!(root, new_root); assert_eq!(node_user.get_access_key_nonce_for_signer(account_id).unwrap(), 1); @@ -358,7 +363,7 @@ pub fn transfer_tokens_to_implicit_account(node: impl Node, public_key: PublicKe let transaction_result = node_user.send_money(account_id.clone(), receiver_id.clone(), tokens_used).unwrap(); assert_eq!(transaction_result.status, FinalExecutionStatus::SuccessValue(Vec::new())); - assert_eq!(transaction_result.receipts_outcome.len(), 1); + assert_eq!(transaction_result.receipts_outcome.len(), 1 + num_refund_outcome()); let new_root = node_user.get_state_root(); assert_ne!(root, new_root); assert_eq!(node_user.get_access_key_nonce_for_signer(account_id).unwrap(), 1); @@ -391,7 +396,7 @@ pub fn transfer_tokens_to_implicit_account(node: impl Node, public_key: PublicKe node_user.send_money(account_id.clone(), receiver_id.clone(), tokens_used).unwrap(); assert_eq!(transaction_result.status, FinalExecutionStatus::SuccessValue(Vec::new())); - assert_eq!(transaction_result.receipts_outcome.len(), 1); + assert_eq!(transaction_result.receipts_outcome.len(), 1 + num_refund_outcome()); let new_root = node_user.get_state_root(); assert_ne!(root, new_root); assert_eq!(node_user.get_access_key_nonce_for_signer(account_id).unwrap(), 2); @@ -471,7 +476,7 @@ pub fn trying_to_create_implicit_account(node: impl Node, public_key: PublicKey) .into() ) ); - assert_eq!(transaction_result.receipts_outcome.len(), 2); + assert_eq!(transaction_result.receipts_outcome.len(), 2 + num_refund_outcome()); let new_root = node_user.get_state_root(); assert_ne!(root, new_root); assert_eq!(node_user.get_access_key_nonce_for_signer(account_id).unwrap(), 1); @@ -553,7 +558,7 @@ pub fn test_refund_on_send_money_to_non_existent_account(node: impl Node) { .into() ) ); - assert_eq!(transaction_result.receipts_outcome.len(), 2); + assert_eq!(transaction_result.receipts_outcome.len(), 2 + num_refund_outcome()); let new_root = node_user.get_state_root(); assert_ne!(root, new_root); let result1 = node_user.view_account(account_id).unwrap(); @@ -584,7 +589,7 @@ pub fn test_create_account(node: impl Node) { let create_account_cost = fee_helper.create_account_transfer_full_key_cost(); assert_eq!(transaction_result.status, FinalExecutionStatus::SuccessValue(Vec::new())); - assert_eq!(transaction_result.receipts_outcome.len(), 1); + assert_eq!(transaction_result.receipts_outcome.len(), 1 + num_refund_outcome()); let new_root = node_user.get_state_root(); assert_ne!(root, new_root); assert_eq!(node_user.get_access_key_nonce_for_signer(account_id).unwrap(), 1); @@ -617,7 +622,7 @@ pub fn test_create_account_again(node: impl Node) { .unwrap(); assert_eq!(transaction_result.status, FinalExecutionStatus::SuccessValue(Vec::new())); - assert_eq!(transaction_result.receipts_outcome.len(), 1); + assert_eq!(transaction_result.receipts_outcome.len(), 1 + num_refund_outcome()); let fee_helper = fee_helper(&node); let create_account_cost = fee_helper.create_account_transfer_full_key_cost(); @@ -649,7 +654,7 @@ pub fn test_create_account_again(node: impl Node) { .into() ) ); - assert_eq!(transaction_result.receipts_outcome.len(), 2); + assert_eq!(transaction_result.receipts_outcome.len(), 2 + num_refund_outcome()); let new_root = node_user.get_state_root(); assert_ne!(root, new_root); assert_eq!(node_user.get_access_key_nonce_for_signer(account_id).unwrap(), 2); @@ -696,7 +701,7 @@ pub fn test_create_account_failure_already_exists(node: impl Node) { .into() ) ); - assert_eq!(transaction_result.receipts_outcome.len(), 2); + assert_eq!(transaction_result.receipts_outcome.len(), 2 + num_refund_outcome()); let new_root = node_user.get_state_root(); assert_ne!(root, new_root); assert_eq!(node_user.get_access_key_nonce_for_signer(account_id).unwrap(), 1); @@ -1199,7 +1204,7 @@ pub fn test_unstake_while_not_staked(node: impl Node) { ) .unwrap(); assert_eq!(transaction_result.status, FinalExecutionStatus::SuccessValue(Vec::new())); - assert_eq!(transaction_result.receipts_outcome.len(), 1); + assert_eq!(transaction_result.receipts_outcome.len(), 1 + num_refund_outcome()); let transaction_result = node_user.stake(eve_dot_alice_account(), node.block_signer().public_key(), 0).unwrap(); assert_eq!( @@ -1297,7 +1302,7 @@ pub fn test_delete_account_fail(node: impl Node) { .into() ) ); - assert_eq!(transaction_result.receipts_outcome.len(), 1); + assert_eq!(transaction_result.receipts_outcome.len(), 1 + num_refund_outcome()); assert!(node.user().view_account(&bob_account()).is_ok()); assert_eq!( node.user().view_account(&node.account_id().unwrap()).unwrap().amount, @@ -1319,7 +1324,7 @@ pub fn test_delete_account_no_account(node: impl Node) { .into() ) ); - assert_eq!(transaction_result.receipts_outcome.len(), 1); + assert_eq!(transaction_result.receipts_outcome.len(), 1 + num_refund_outcome()); } pub fn test_delete_account_while_staking(node: impl Node) { @@ -1369,7 +1374,7 @@ pub fn test_smart_contract_free(node: impl Node) { transaction_result.status, FinalExecutionStatus::SuccessValue(10i32.to_le_bytes().to_vec()) ); - assert_eq!(transaction_result.receipts_outcome.len(), 2); + assert_eq!(transaction_result.receipts_outcome.len(), 1); let total_gas_burnt = transaction_result.transaction_outcome.outcome.gas_burnt + transaction_result.receipts_outcome.iter().map(|t| t.outcome.gas_burnt).sum::(); diff --git a/integration-tests/src/user/runtime_user.rs b/integration-tests/src/user/runtime_user.rs index d88ee2f7d39..96a9b39cae3 100644 --- a/integration-tests/src/user/runtime_user.rs +++ b/integration-tests/src/user/runtime_user.rs @@ -157,7 +157,13 @@ impl RuntimeUser { block_hash: Default::default(), block_timestamp: 0, epoch_height: 0, - gas_price: MIN_GAS_PRICE, + // Note, previously `pessimistic_gas_price_inflation_ratio` made all gas prices to be 0, + // if the ratio was 0. Now it's disabled when `GasPriceRefundAdjustment` feature is on. + gas_price: if *self.runtime_config.fees.pessimistic_gas_price_inflation_ratio.numer() > 0 { + MIN_GAS_PRICE + } else { + 0 + }, gas_limit: None, random_seed: Default::default(), epoch_id: Default::default(), diff --git a/runtime/runtime/src/lib.rs b/runtime/runtime/src/lib.rs index 3155129aa53..91154b496cd 100644 --- a/runtime/runtime/src/lib.rs +++ b/runtime/runtime/src/lib.rs @@ -884,11 +884,9 @@ impl Runtime { result.gas_burnt, )?; if gas_balance_refund >= refund_result.gas_deficit_amount { - // We first charge the refund balance. gas_balance_refund -= refund_result.gas_deficit_amount; refund_result.gas_deficit_amount = 0; } else { - // Not enough to cover the whole deficit. refund_result.gas_deficit_amount -= gas_balance_refund; gas_balance_refund = 0; } diff --git a/test-utils/testlib/src/fees_utils.rs b/test-utils/testlib/src/fees_utils.rs index 4e3144a8e8f..75308f6458f 100644 --- a/test-utils/testlib/src/fees_utils.rs +++ b/test-utils/testlib/src/fees_utils.rs @@ -206,6 +206,10 @@ impl FeeHelper { } pub fn gas_refund_fee(&self) -> Gas { - self.cfg().gas_fee_for_gas_refund() + if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { + self.cfg().gas_fee_for_gas_refund() + } else { + 0 + } } } From 4b56f15458d1286cd3ff564ae321a716996e788e Mon Sep 17 00:00:00 2001 From: Eugene The Dream Date: Tue, 12 Mar 2024 19:15:37 -0700 Subject: [PATCH 04/13] Reformat --- integration-tests/src/tests/standard_cases/mod.rs | 1 - integration-tests/src/user/runtime_user.rs | 4 +++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/integration-tests/src/tests/standard_cases/mod.rs b/integration-tests/src/tests/standard_cases/mod.rs index 4b1e97d1e10..dce2c8542cd 100644 --- a/integration-tests/src/tests/standard_cases/mod.rs +++ b/integration-tests/src/tests/standard_cases/mod.rs @@ -50,7 +50,6 @@ fn num_refund_outcome() -> usize { } else { 1 } - } /// Adds given access key to the given account_id using signer2. diff --git a/integration-tests/src/user/runtime_user.rs b/integration-tests/src/user/runtime_user.rs index 96a9b39cae3..1254d8ebd37 100644 --- a/integration-tests/src/user/runtime_user.rs +++ b/integration-tests/src/user/runtime_user.rs @@ -159,7 +159,9 @@ impl RuntimeUser { epoch_height: 0, // Note, previously `pessimistic_gas_price_inflation_ratio` made all gas prices to be 0, // if the ratio was 0. Now it's disabled when `GasPriceRefundAdjustment` feature is on. - gas_price: if *self.runtime_config.fees.pessimistic_gas_price_inflation_ratio.numer() > 0 { + gas_price: if *self.runtime_config.fees.pessimistic_gas_price_inflation_ratio.numer() + > 0 + { MIN_GAS_PRICE } else { 0 From 30fca6b42b4762c4696e3598ab1e5a7e15a05843 Mon Sep 17 00:00:00 2001 From: Eugene The Dream Date: Wed, 13 Mar 2024 13:07:12 -0700 Subject: [PATCH 05/13] Charge for gas refund from burnt_gas --- core/parameters/src/cost.rs | 27 ++++++++ .../src/tests/standard_cases/mod.rs | 23 +++++-- runtime/runtime/src/lib.rs | 61 +++++++++++++------ 3 files changed, 88 insertions(+), 23 deletions(-) diff --git a/core/parameters/src/cost.rs b/core/parameters/src/cost.rs index 3889a8eaad9..0d718137ba2 100644 --- a/core/parameters/src/cost.rs +++ b/core/parameters/src/cost.rs @@ -579,3 +579,30 @@ pub fn transfer_send_fee( } } } + +pub fn transfer_send_and_exec_fee( + cfg: &RuntimeFeesConfig, + sender_is_receiver: bool, + implicit_account_creation_allowed: bool, + eth_implicit_accounts_enabled: bool, + receiver_account_type: AccountType, +) -> Gas { + // TODO: Add `Copy` to `AccountType`. + let copy_of_receiver_account_type = match &receiver_account_type { + AccountType::NamedAccount => AccountType::NamedAccount, + AccountType::NearImplicitAccount => AccountType::NearImplicitAccount, + AccountType::EthImplicitAccount => AccountType::EthImplicitAccount, + }; + transfer_send_fee( + cfg, + sender_is_receiver, + implicit_account_creation_allowed, + eth_implicit_accounts_enabled, + receiver_account_type, + ) + transfer_exec_fee( + cfg, + implicit_account_creation_allowed, + eth_implicit_accounts_enabled, + copy_of_receiver_account_type, + ) +} diff --git a/integration-tests/src/tests/standard_cases/mod.rs b/integration-tests/src/tests/standard_cases/mod.rs index dce2c8542cd..ba5af4aaa8d 100644 --- a/integration-tests/src/tests/standard_cases/mod.rs +++ b/integration-tests/src/tests/standard_cases/mod.rs @@ -508,9 +508,12 @@ pub fn test_smart_contract_reward(node: impl Node) { let fee_helper = fee_helper(&node); let bob = node_user.view_account(&bob_account()).unwrap(); - let gas_burnt_for_function_call = transaction_result.receipts_outcome[0].outcome.gas_burnt - - fee_helper.gas_refund_fee() + let mut gas_burnt_for_function_call = transaction_result.receipts_outcome[0].outcome.gas_burnt - fee_helper.function_call_exec_gas(b"run_test".len() as u64); + if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { + // There is a cost that is not function call for gas refund receipt. + gas_burnt_for_function_call -= fee_helper.transfer_fee(); + } let reward = fee_helper.gas_burnt_to_reward(gas_burnt_for_function_call); assert_eq!(bob.amount, TESTING_INIT_BALANCE - TESTING_INIT_STAKE + reward); } @@ -1039,9 +1042,17 @@ pub fn test_access_key_smart_contract(node: impl Node) { transaction_result.status, FinalExecutionStatus::SuccessValue(10i32.to_le_bytes().to_vec()) ); - let gas_refund = fee_helper.gas_to_balance( - prepaid_gas + exec_gas - transaction_result.receipts_outcome[0].outcome.gas_burnt, - ); + + let mut gas_refund = + prepaid_gas + exec_gas - transaction_result.receipts_outcome[0].outcome.gas_burnt; + + if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { + // There is fixed cost for a gas refund receipt, but only the transfer cost is included in + // the burnt gas + gas_refund = gas_refund + fee_helper.transfer_fee() - fee_helper.gas_refund_fee(); + } + + let gas_refund_amount = fee_helper.gas_to_balance(gas_refund); assert_eq!(transaction_result.receipts_outcome.len(), 2); let new_root = node_user.get_state_root(); @@ -1053,7 +1064,7 @@ pub fn test_access_key_smart_contract(node: impl Node) { AccessKey { nonce: view_access_key.nonce, permission: AccessKeyPermission::FunctionCall(FunctionCallPermission { - allowance: Some(FUNCTION_CALL_AMOUNT - function_call_cost + gas_refund), + allowance: Some(FUNCTION_CALL_AMOUNT - function_call_cost + gas_refund_amount), receiver_id: bob_account().into(), method_names: vec![], }), diff --git a/runtime/runtime/src/lib.rs b/runtime/runtime/src/lib.rs index 91154b496cd..48816a11f86 100644 --- a/runtime/runtime/src/lib.rs +++ b/runtime/runtime/src/lib.rs @@ -11,6 +11,7 @@ pub use crate::verifier::{ }; use config::total_prepaid_send_fees; pub use near_crypto; +use near_parameters::cost::transfer_send_and_exec_fee; use near_parameters::{ActionCosts, RuntimeConfig}; pub use near_primitives; use near_primitives::account::Account; @@ -138,8 +139,8 @@ pub struct VerificationResult { /// The result from refund receipts generation. #[derive(Debug)] pub struct RefundResult { - /// The amount of tokens burnt based on gas price difference. - pub gas_difference_token_burnt_amount: Balance, + /// The amount of tokens burnt based on gas price difference and for the gas refund receipt. + pub extra_tx_burnt_amount: Balance, /// The deficit of amount due to the difference in the gas prices. pub gas_deficit_amount: Balance, } @@ -671,7 +672,7 @@ impl Runtime { total_deposit(&action_receipt.actions)?, )? } - RefundResult { gas_difference_token_burnt_amount: 0, gas_deficit_amount: 0 } + RefundResult { extra_tx_burnt_amount: 0, gas_deficit_amount: 0 } } else { // Calculating and generating refunds self.generate_refund_receipts(receipt, action_receipt, &mut result, &apply_state)? @@ -696,10 +697,10 @@ impl Runtime { // If the receipt is a refund, then we consider it free without burnt gas. let gas_burnt: Gas = if receipt.predecessor_id.is_system() { 0 } else { result.gas_burnt }; - // `gas_deficit_amount` is strictly less than `gas_price * gas_burnt`. + // `gas_deficit_amount` is less than `gas_price * gas_burnt + extra_tx_burnt_amount`. let mut tx_burnt_amount = safe_add_balance( safe_gas_to_balance(apply_state.gas_price, gas_burnt)?, - refund_result.gas_difference_token_burnt_amount, + refund_result.extra_tx_burnt_amount, )? - refund_result.gas_deficit_amount; // The amount of tokens burnt for the execution of this receipt. It's used in the execution // outcome. @@ -841,8 +842,7 @@ impl Runtime { let config = &apply_state.config; let protocol_version = apply_state.current_protocol_version; let current_gas_price = apply_state.gas_price; - let mut refund_result = - RefundResult { gas_difference_token_burnt_amount: 0, gas_deficit_amount: 0 }; + let mut refund_result = RefundResult { extra_tx_burnt_amount: 0, gas_deficit_amount: 0 }; let total_deposit = total_deposit(&action_receipt.actions)?; let prepaid_gas = safe_add_gas( @@ -866,11 +866,12 @@ impl Runtime { } else { 0 }; - // Charging for the gas for the gas refund receipt, even if it's not enough to cover it. - let gas_burnt_for_gas_refund = std::cmp::min(gas_refund, gas_fee_for_gas_refund); - result.gas_burnt += gas_burnt_for_gas_refund; - result.gas_used += gas_burnt_for_gas_refund; - gas_refund -= gas_burnt_for_gas_refund; + // The gas cost for the gas refund receipt, even if it's not enough to cover it. + let gas_for_gas_refund = std::cmp::min(gas_refund, gas_fee_for_gas_refund); + gas_refund -= gas_for_gas_refund; + refund_result.extra_tx_burnt_amount = + safe_gas_to_balance(current_gas_price, gas_for_gas_refund)?; + let gas_burnt_with_gas_refund = result.gas_burnt + gas_for_gas_refund; // Refund for the unused portion of the gas at the price at which this gas was purchased. let mut gas_balance_refund = safe_gas_to_balance(action_receipt.gas_price, gas_refund)?; @@ -881,7 +882,7 @@ impl Runtime { // the deficit and it's reported in the stats for the balance checker. refund_result.gas_deficit_amount = safe_gas_to_balance( current_gas_price - action_receipt.gas_price, - result.gas_burnt, + gas_burnt_with_gas_refund, )?; if gas_balance_refund >= refund_result.gas_deficit_amount { gas_balance_refund -= refund_result.gas_deficit_amount; @@ -893,12 +894,11 @@ impl Runtime { } else { let gas_price_difference_amount = safe_gas_to_balance( action_receipt.gas_price - current_gas_price, - result.gas_burnt, + gas_burnt_with_gas_refund, )?; if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, protocol_version) { - // There is no refunds for the difference of the purchased gas price and the current gas price. - refund_result.gas_difference_token_burnt_amount = safe_add_balance( - refund_result.gas_difference_token_burnt_amount, + refund_result.extra_tx_burnt_amount = safe_add_balance( + refund_result.extra_tx_burnt_amount, gas_price_difference_amount, )?; } else { @@ -915,6 +915,33 @@ impl Runtime { } if gas_balance_refund > 0 { + if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, protocol_version) { + // We burn gas for the gas refund receipt as regular transfer, but including + // execution cost into the current receipt. + let gas_fee = transfer_send_and_exec_fee( + &config.fees, + false, + config.wasm_config.implicit_account_creation, + config.wasm_config.eth_implicit_accounts, + action_receipt.signer_id.get_account_type(), + ) + config.fees.fee(ActionCosts::new_action_receipt).send_fee(false) + + config.fees.fee(ActionCosts::new_action_receipt).exec_fee(); + // This would only trigger if the gas price refund is less than a regular transfer. + debug_assert!( + gas_fee <= gas_for_gas_refund, + "transfer fee {} > gas_for_gas_refund {}", + gas_fee, + gas_for_gas_refund + ); + result.gas_burnt += gas_fee; + result.gas_used += gas_fee; + result.compute_usage += gas_fee; + let cost = safe_gas_to_balance(current_gas_price, gas_fee)?; + // The cost should be smaller than the extra_tx_burnt_amount, becuase the gas_fee + // is smaller than the gas_for_gas_refund. + refund_result.extra_tx_burnt_amount -= cost; + } + // Gas refunds refund the allowance of the access key, so if the key exists on the // account it will increase the allowance by the refund amount. result.new_receipts.push(Receipt::new_gas_refund( From ee02814b5c10a9c14f5bbae41a9946827b42288a Mon Sep 17 00:00:00 2001 From: Eugene The Dream Date: Thu, 28 Mar 2024 17:58:40 -0700 Subject: [PATCH 06/13] Address NEP536 changes. Need to fix tests --- core/parameters/src/cost.rs | 28 ++++++--- core/primitives-core/Cargo.toml | 4 +- core/primitives-core/src/version.rs | 4 +- .../src/tests/standard_cases/mod.rs | 10 +-- runtime/runtime/src/lib.rs | 62 +++++++++++-------- test-utils/testlib/src/fees_utils.rs | 8 --- 6 files changed, 63 insertions(+), 53 deletions(-) diff --git a/core/parameters/src/cost.rs b/core/parameters/src/cost.rs index 0d718137ba2..612f4dab7f4 100644 --- a/core/parameters/src/cost.rs +++ b/core/parameters/src/cost.rs @@ -489,15 +489,25 @@ impl RuntimeFeesConfig { + self.fee(ActionCosts::function_call_base).min_send_and_exec_fee() } - /// The cost is currently set to a fixed 5 TGas. - /// Note, in the future this cost will be dynamic and grow based on the distance from the - /// enabled block height to discourage function call refunds. - pub fn gas_fee_for_gas_refund(&self) -> Gas { - if self.fee(ActionCosts::new_action_receipt).min_send_and_exec_fee() - + self.fee(ActionCosts::transfer).min_send_and_exec_fee() - > 0 - { - 5_000_000_000_000 + pub fn gas_refund_send_fee(&self) -> Gas { + self.fee(ActionCosts::new_action_receipt).send_fee(false) + + self.fee(ActionCosts::transfer).send_fee(false) + + self.fee(ActionCosts::add_function_call_key_base).send_fee(false) + } + + pub fn gas_refund_exec_fee(&self) -> Gas { + self.fee(ActionCosts::new_action_receipt).exec_fee() + + self.fee(ActionCosts::transfer).exec_fee() + + self.fee(ActionCosts::add_function_call_key_base).exec_fee() + } + + /// Penalty for the large gas refunds. Use 5% based on https://github.com/near/NEPs/pull/536 + pub fn gas_penalty_for_gas_refund(&self, gas_refund: Gas) -> Gas { + if self.gas_refund_send_fee() > 0 { + std::cmp::max( + (u128::from(gas_refund) * 5 / 100) as Gas, + self.gas_refund_send_fee() + self.gas_refund_exec_fee(), + ) } else { // To account for free config 0 diff --git a/core/primitives-core/Cargo.toml b/core/primitives-core/Cargo.toml index 0a5ef741325..27a406e63ca 100644 --- a/core/primitives-core/Cargo.toml +++ b/core/primitives-core/Cargo.toml @@ -37,7 +37,7 @@ protocol_feature_fix_staking_threshold = [] protocol_feature_fix_contract_loading_cost = [] protocol_feature_reject_blocks_with_outdated_protocol_version = [] protocol_feature_nonrefundable_transfer_nep491 = [] -protocol_feature_gas_price_refund_adjustment = [] +protocol_feature_gas_price_refund_adjustment_nep536 = [] yield_resume = [] nightly = [ @@ -46,7 +46,7 @@ nightly = [ "protocol_feature_fix_staking_threshold", "protocol_feature_nonrefundable_transfer_nep491", "protocol_feature_reject_blocks_with_outdated_protocol_version", - "protocol_feature_gas_price_refund_adjustment", + "protocol_feature_gas_price_refund_adjustment_nep536", "yield_resume", ] diff --git a/core/primitives-core/src/version.rs b/core/primitives-core/src/version.rs index 1302ed7b023..2d04550d7f9 100644 --- a/core/primitives-core/src/version.rs +++ b/core/primitives-core/src/version.rs @@ -146,7 +146,7 @@ pub enum ProtocolFeature { // epoch. StatelessnetShuffleShardAssignmentsForChunkProducers, // Disable gas price refunds and require some amount of gas for refunds. - #[cfg(feature = "protocol_feature_gas_price_refund_adjustment")] + #[cfg(feature = "protocol_feature_gas_price_refund_adjustment_nep536")] GasPriceRefundAdjustment, } @@ -218,7 +218,7 @@ impl ProtocolFeature { ProtocolFeature::NonrefundableStorage => 140, #[cfg(feature = "statelessnet_protocol")] ProtocolFeature::SimpleNightshadeV3 => 141, - #[cfg(feature = "protocol_feature_gas_price_refund_adjustment")] + #[cfg(feature = "protocol_feature_gas_price_refund_adjustment_nep536")] ProtocolFeature::GasPriceRefundAdjustment => 142, } } diff --git a/integration-tests/src/tests/standard_cases/mod.rs b/integration-tests/src/tests/standard_cases/mod.rs index adbaed505d2..052ef4c786d 100644 --- a/integration-tests/src/tests/standard_cases/mod.rs +++ b/integration-tests/src/tests/standard_cases/mod.rs @@ -1046,11 +1046,11 @@ pub fn test_access_key_smart_contract(node: impl Node) { let mut gas_refund = prepaid_gas + exec_gas - transaction_result.receipts_outcome[0].outcome.gas_burnt; - if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { - // There is fixed cost for a gas refund receipt, but only the transfer cost is included in - // the burnt gas - gas_refund = gas_refund + fee_helper.transfer_fee() - fee_helper.gas_refund_fee(); - } + // if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { + // // There is fixed cost for a gas refund receipt, but only the transfer cost is included in + // // the burnt gas + // gas_refund = gas_refund + fee_helper.transfer_fee() - fee_helper.gas_refund_fee(); + // } let gas_refund_amount = fee_helper.gas_to_balance(gas_refund); diff --git a/runtime/runtime/src/lib.rs b/runtime/runtime/src/lib.rs index 17654635a96..1edabf38ff8 100644 --- a/runtime/runtime/src/lib.rs +++ b/runtime/runtime/src/lib.rs @@ -11,7 +11,6 @@ pub use crate::verifier::{ }; use config::total_prepaid_send_fees; pub use near_crypto; -use near_parameters::cost::transfer_send_and_exec_fee; use near_parameters::{ActionCosts, RuntimeConfig}; pub use near_primitives; use near_primitives::account::Account; @@ -668,6 +667,29 @@ impl Runtime { result.gas_burnt = 0; result.compute_usage = 0; result.gas_used = 0; + } else { + // Since refund receipts can't create implicit account, the execution cost of such + // receipts not include the implicit account creation cost. + if checked_feature!( + "nightly_protocol", + GasPriceRefundAdjustment, + apply_state.current_protocol_version + ) { + let mut gas_refund_cost = + apply_state.config.fees.fee(ActionCosts::new_action_receipt).exec_fee() + + apply_state.config.fees.fee(ActionCosts::transfer).exec_fee(); + // Gas refund receipt touches the function call key to refund the allowance. + if action_receipt.signer_id == receipt.receiver_id { + gas_refund_cost += apply_state + .config + .fees + .fee(ActionCosts::add_function_call_key_base) + .exec_fee(); + } + result.gas_burnt = gas_refund_cost; + result.compute_usage = gas_refund_cost; + result.gas_used = gas_refund_cost; + } } // If the refund fails tokens are burned. @@ -871,14 +893,14 @@ impl Runtime { } else { total_prepaid_gas - result.gas_used }; - let gas_fee_for_gas_refund = + let gas_penalty_for_gas_refund = if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, protocol_version) { - config.fees.gas_fee_for_gas_refund() + config.fees.gas_penalty_for_gas_refund(gas_refund) } else { 0 }; // The gas cost for the gas refund receipt, even if it's not enough to cover it. - let gas_for_gas_refund = std::cmp::min(gas_refund, gas_fee_for_gas_refund); + let gas_for_gas_refund = std::cmp::min(gas_refund, gas_penalty_for_gas_refund); gas_refund -= gas_for_gas_refund; refund_result.extra_tx_burnt_amount = safe_gas_to_balance(current_gas_price, gas_for_gas_refund)?; @@ -927,29 +949,15 @@ impl Runtime { if gas_balance_refund > 0 { if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, protocol_version) { - // We burn gas for the gas refund receipt as regular transfer, but including - // execution cost into the current receipt. - let gas_fee = transfer_send_and_exec_fee( - &config.fees, - false, - config.wasm_config.implicit_account_creation, - config.wasm_config.eth_implicit_accounts, - action_receipt.signer_id.get_account_type(), - ) + config.fees.fee(ActionCosts::new_action_receipt).send_fee(false) - + config.fees.fee(ActionCosts::new_action_receipt).exec_fee(); - // This would only trigger if the gas price refund is less than a regular transfer. - debug_assert!( - gas_fee <= gas_for_gas_refund, - "transfer fee {} > gas_for_gas_refund {}", - gas_fee, - gas_for_gas_refund - ); - result.gas_burnt += gas_fee; - result.gas_used += gas_fee; - result.compute_usage += gas_fee; - let cost = safe_gas_to_balance(current_gas_price, gas_fee)?; - // The cost should be smaller than the extra_tx_burnt_amount, becuase the gas_fee - // is smaller than the gas_for_gas_refund. + // Charging for gas refund receipt. Send fee is burnt now, exec will be burnt at the + // refund time. + let burn_gas_fee = config.fees.gas_refund_send_fee(); + result.gas_burnt += burn_gas_fee; + result.gas_used += burn_gas_fee + config.fees.gas_refund_exec_fee(); + result.compute_usage += burn_gas_fee; + let cost = safe_gas_to_balance(current_gas_price, burn_gas_fee)?; + // The cost should be smaller than the extra_tx_burnt_amount, because the + // burn_gas_fee is smaller than the gas_for_gas_refund. refund_result.extra_tx_burnt_amount -= cost; } diff --git a/test-utils/testlib/src/fees_utils.rs b/test-utils/testlib/src/fees_utils.rs index 86adde9a91e..b5bcd6c1eba 100644 --- a/test-utils/testlib/src/fees_utils.rs +++ b/test-utils/testlib/src/fees_utils.rs @@ -210,12 +210,4 @@ impl FeeHelper { + node_runtime::config::total_send_fees(&self.rt_cfg, sir, actions, receiver).unwrap(); self.gas_to_balance(total_gas) } - - pub fn gas_refund_fee(&self) -> Gas { - if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { - self.cfg().gas_fee_for_gas_refund() - } else { - 0 - } - } } From e0ec72b84ea0d3a781899c09f5e8f0c8111ae634 Mon Sep 17 00:00:00 2001 From: Eugene The Dream Date: Tue, 30 Apr 2024 13:46:28 -0700 Subject: [PATCH 07/13] Some test --- .../src/tests/standard_cases/mod.rs | 35 +++++++++---------- 1 file changed, 17 insertions(+), 18 deletions(-) diff --git a/integration-tests/src/tests/standard_cases/mod.rs b/integration-tests/src/tests/standard_cases/mod.rs index 95c5da390fa..6ea221aba47 100644 --- a/integration-tests/src/tests/standard_cases/mod.rs +++ b/integration-tests/src/tests/standard_cases/mod.rs @@ -44,11 +44,11 @@ pub(crate) fn fee_helper(node: &impl Node) -> FeeHelper { FeeHelper::new(RuntimeConfig::test(), node.genesis().config.min_gas_price) } -fn num_refund_outcome() -> usize { +fn assert_receipts_outcome_len(transaction_result: &FinalExecutionOutcomeView, expected_len_without_refund: usize) { if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { - 0 + assert_eq!(transaction_result.receipts_outcome.len(), expected_len_without_refund, "receipts_outcome: {:?}", transaction_result.receipts_outcome); } else { - 1 + assert!([expected_len_without_refund, expected_len_without_refund + 1].contains(&transaction_result.receipts_outcome.len())); } } @@ -369,7 +369,7 @@ pub fn transfer_tokens_to_implicit_account(node: impl Node, public_key: PublicKe let transaction_result = node_user.send_money(account_id.clone(), receiver_id.clone(), tokens_used).unwrap(); assert_eq!(transaction_result.status, FinalExecutionStatus::SuccessValue(Vec::new())); - assert_eq!(transaction_result.receipts_outcome.len(), 1 + num_refund_outcome()); + assert_receipts_outcome_len(&transaction_result, 1); let new_root = node_user.get_state_root(); assert_ne!(root, new_root); assert_eq!(node_user.get_access_key_nonce_for_signer(account_id).unwrap(), 1); @@ -402,7 +402,7 @@ pub fn transfer_tokens_to_implicit_account(node: impl Node, public_key: PublicKe node_user.send_money(account_id.clone(), receiver_id.clone(), tokens_used).unwrap(); assert_eq!(transaction_result.status, FinalExecutionStatus::SuccessValue(Vec::new())); - assert_eq!(transaction_result.receipts_outcome.len(), 1 + num_refund_outcome()); + assert_receipts_outcome_len(&transaction_result, 1); let new_root = node_user.get_state_root(); assert_ne!(root, new_root); assert_eq!(node_user.get_access_key_nonce_for_signer(account_id).unwrap(), 2); @@ -482,7 +482,8 @@ pub fn trying_to_create_implicit_account(node: impl Node, public_key: PublicKey) .into() ) ); - assert_eq!(transaction_result.receipts_outcome.len(), 2 + num_refund_outcome()); + + // assert_receipts_outcome_len(&transaction_result, 2); let new_root = node_user.get_state_root(); assert_ne!(root, new_root); assert_eq!(node_user.get_access_key_nonce_for_signer(account_id).unwrap(), 1); @@ -567,7 +568,7 @@ pub fn test_refund_on_send_money_to_non_existent_account(node: impl Node) { .into() ) ); - assert_eq!(transaction_result.receipts_outcome.len(), 2 + num_refund_outcome()); + assert_receipts_outcome_len(&transaction_result, 2); let new_root = node_user.get_state_root(); assert_ne!(root, new_root); let result1 = node_user.view_account(account_id).unwrap(); @@ -598,8 +599,7 @@ pub fn test_create_account(node: impl Node) { let create_account_cost = fee_helper.create_account_transfer_full_key_cost(); assert_eq!(transaction_result.status, FinalExecutionStatus::SuccessValue(Vec::new())); - // Refund receipt may not be ready yet - assert!([1, 2].contains(&transaction_result.receipts_outcome.len())); + assert_receipts_outcome_len(&transaction_result, 1); let new_root = node_user.get_state_root(); assert_ne!(root, new_root); assert_eq!(node_user.get_access_key_nonce_for_signer(account_id).unwrap(), 1); @@ -632,8 +632,7 @@ pub fn test_create_account_again(node: impl Node) { .unwrap(); assert_eq!(transaction_result.status, FinalExecutionStatus::SuccessValue(Vec::new())); - // Refund receipt may not be ready yet - assert!([1, 2].contains(&transaction_result.receipts_outcome.len())); + assert_receipts_outcome_len(&transaction_result, 1); let fee_helper = fee_helper(&node); let create_account_cost = fee_helper.create_account_transfer_full_key_cost(); @@ -665,7 +664,7 @@ pub fn test_create_account_again(node: impl Node) { .into() ) ); - assert_eq!(transaction_result.receipts_outcome.len(), 2 + num_refund_outcome()); + assert_receipts_outcome_len(&transaction_result, 2); let new_root = node_user.get_state_root(); assert_ne!(root, new_root); assert_eq!(node_user.get_access_key_nonce_for_signer(account_id).unwrap(), 2); @@ -712,7 +711,7 @@ pub fn test_create_account_failure_already_exists(node: impl Node) { .into() ) ); - assert_eq!(transaction_result.receipts_outcome.len(), 2 + num_refund_outcome()); + assert_receipts_outcome_len(&transaction_result, 2); let new_root = node_user.get_state_root(); assert_ne!(root, new_root); assert_eq!(node_user.get_access_key_nonce_for_signer(account_id).unwrap(), 1); @@ -1063,8 +1062,8 @@ pub fn test_access_key_smart_contract(node: impl Node) { let gas_refund_amount = fee_helper.gas_to_balance(gas_refund); - // Refund receipt may not be ready yet - assert!([1, 2].contains(&transaction_result.receipts_outcome.len())); + // Need to wait for the refund to be received before checking the balance. + assert_eq!(transaction_result.receipts_outcome.len(), 2); let new_root = node_user.get_state_root(); assert_ne!(root, new_root); @@ -1224,7 +1223,7 @@ pub fn test_unstake_while_not_staked(node: impl Node) { ) .unwrap(); assert_eq!(transaction_result.status, FinalExecutionStatus::SuccessValue(Vec::new())); - assert_eq!(transaction_result.receipts_outcome.len(), 1 + num_refund_outcome()); + assert_receipts_outcome_len(&transaction_result, 1); let transaction_result = node_user.stake(eve_dot_alice_account(), node.block_signer().public_key(), 0).unwrap(); assert_eq!( @@ -1322,7 +1321,7 @@ pub fn test_delete_account_fail(node: impl Node) { .into() ) ); - assert_eq!(transaction_result.receipts_outcome.len(), 1 + num_refund_outcome()); + assert_receipts_outcome_len(&transaction_result, 1); assert!(node.user().view_account(&bob_account()).is_ok()); assert_eq!( node.user().view_account(&node.account_id().unwrap()).unwrap().amount, @@ -1344,7 +1343,7 @@ pub fn test_delete_account_no_account(node: impl Node) { .into() ) ); - assert_eq!(transaction_result.receipts_outcome.len(), 1 + num_refund_outcome()); + assert_receipts_outcome_len(&transaction_result, 1); } pub fn test_delete_account_while_staking(node: impl Node) { From fe13eea08ebe3618c83703684cde517d05b7f200 Mon Sep 17 00:00:00 2001 From: Eugene The Dream Date: Tue, 30 Apr 2024 14:51:34 -0700 Subject: [PATCH 08/13] Revert Cargo.lock to master. Remove unnecessary utils change --- Cargo.lock | 2490 +++++++++++++-------------- chain/indexer/src/streamer/utils.rs | 2 +- 2 files changed, 1243 insertions(+), 1249 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 2d5a86a73e3..41c002191e2 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4,14 +4,13 @@ version = 3 [[package]] name = "actix" -version = "0.13.3" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb72882332b6d6282f428b77ba0358cb2687e61a6f6df6a6d3871e8a177c2d4f" +checksum = "f728064aca1c318585bf4bb04ffcfac9e75e508ab4e8b1bd9ba5dfe04e2cbed5" dependencies = [ - "actix-macros", "actix-rt", "actix_derive", - "bitflags 2.5.0", + "bitflags 1.3.2", "bytes", "crossbeam-channel", "futures-core", @@ -20,7 +19,7 @@ dependencies = [ "futures-util", "log", "once_cell", - "parking_lot 0.12.2", + "parking_lot 0.12.1", "pin-project-lite", "smallvec", "tokio", @@ -29,26 +28,26 @@ dependencies = [ [[package]] name = "actix-codec" -version = "0.5.2" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f7b0a21988c1bf877cf4759ef5ddaac04c1c9fe808c9142ecb78ba97d97a28a" +checksum = "57a7559404a7f3573127aab53c08ce37a6c6a315c374a31070f3c91cd1b4a7fe" dependencies = [ - "bitflags 2.5.0", + "bitflags 1.3.2", "bytes", "futures-core", "futures-sink", + "log", "memchr", "pin-project-lite", "tokio", "tokio-util", - "tracing", ] [[package]] name = "actix-cors" -version = "0.6.5" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0346d8c1f762b41b458ed3145eea914966bb9ad20b9be0d6d463b20d45586370" +checksum = "414360eed71ba2d5435b185ba43ecbe281dfab5df3898286d6b7be8074372c92" dependencies = [ "actix-utils", "actix-web", @@ -69,9 +68,9 @@ dependencies = [ "actix-rt", "actix-service", "actix-utils", - "ahash 0.8.11", - "base64 0.21.7", - "bitflags 2.5.0", + "ahash 0.8.8", + "base64 0.21.0", + "bitflags 2.4.1", "brotli", "bytes", "bytestring", @@ -80,7 +79,7 @@ dependencies = [ "flate2", "futures-core", "h2", - "http 0.2.12", + "http", "httparse", "httpdate", "itoa", @@ -100,32 +99,33 @@ dependencies = [ [[package]] name = "actix-macros" -version = "0.2.4" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e01ed3140b2f8d422c68afa1ed2e85d996ea619c988ac834d255db32138655cb" +checksum = "465a6172cf69b960917811022d8f29bc0b7fa1398bc4f78b3c466673db1213b6" dependencies = [ "quote", - "syn 2.0.60", + "syn 1.0.103", ] [[package]] name = "actix-router" -version = "0.5.2" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d22475596539443685426b6bdadb926ad0ecaefdfc5fb05e5e3441f15463c511" +checksum = "eb60846b52c118f2f04a56cc90880a274271c489b2498623d58176f8ca21fa80" dependencies = [ "bytestring", - "http 0.2.12", + "firestorm", + "http", + "log", "regex", "serde", - "tracing", ] [[package]] name = "actix-rt" -version = "2.9.0" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28f32d40287d3f402ae0028a9d54bef51af15c8769492826a69d28f81893151d" +checksum = "7ea16c295198e958ef31930a6ef37d0fb64e9ca3b6116e6b93a8bdae96ee1000" dependencies = [ "actix-macros", "futures-core", @@ -134,9 +134,9 @@ dependencies = [ [[package]] name = "actix-server" -version = "2.3.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3eb13e7eef0423ea6eab0e59f6c72e7cb46d33691ad56a726b3cd07ddec2c2d4" +checksum = "0da34f8e659ea1b077bb4637948b815cd3768ad5a188fdcd74ff4d84240cd824" dependencies = [ "actix-rt", "actix-service", @@ -144,7 +144,8 @@ dependencies = [ "futures-core", "futures-util", "mio", - "socket2 0.5.7", + "num_cpus", + "socket2", "tokio", "tracing", ] @@ -162,30 +163,28 @@ dependencies = [ [[package]] name = "actix-tls" -version = "3.3.0" +version = "3.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4cce60a2f2b477bc72e5cde0af1812a6e82d8fd85b5570a5dcf2a5bf2c5be5f" +checksum = "9fde0cf292f7cdc7f070803cb9a0d45c018441321a78b1042ffbbb81ec333297" dependencies = [ + "actix-codec", "actix-rt", "actix-service", "actix-utils", "futures-core", - "http 0.2.12", - "http 1.1.0", - "impl-more", + "http", + "log", "openssl", "pin-project-lite", - "tokio", "tokio-openssl", "tokio-util", - "tracing", ] [[package]] name = "actix-utils" -version = "3.0.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88a1dcdff1466e3c2488e1cb5c36a71822750ad43839937f85d2f4d9f8b705d8" +checksum = "e491cbaac2e7fc788dfff99ff48ef317e23b3cf63dbaf7aaab6418f40f92aa94" dependencies = [ "local-waker", "pin-project-lite", @@ -193,9 +192,9 @@ dependencies = [ [[package]] name = "actix-web" -version = "4.5.1" +version = "4.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43a6556ddebb638c2358714d853257ed226ece6023ef9364f23f0c70737ea984" +checksum = "a27e8fe9ba4ae613c21f677c2cfaf0696c3744030c6f485b34634e502d6bb379" dependencies = [ "actix-codec", "actix-http", @@ -206,7 +205,7 @@ dependencies = [ "actix-service", "actix-utils", "actix-web-codegen", - "ahash 0.8.11", + "ahash 0.7.8", "bytes", "bytestring", "cfg-if 1.0.0", @@ -226,32 +225,41 @@ dependencies = [ "serde_json", "serde_urlencoded", "smallvec", - "socket2 0.5.7", + "socket2", "time", "url", ] [[package]] name = "actix-web-codegen" -version = "4.2.2" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb1f50ebbb30eca122b188319a4398b3f7bb4a8cdf50ecfb73bfc6a3c3ce54f5" +checksum = "7525bedf54704abb1d469e88d7e7e9226df73778798a69cea5022d53b2ae91bc" dependencies = [ "actix-router", "proc-macro2", "quote", - "syn 2.0.60", + "syn 1.0.103", ] [[package]] name = "actix_derive" -version = "0.6.1" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c7db3d5a9718568e4cf4a537cfd7070e6e6ff7481510d0237fb529ac850f6d3" +checksum = "6d44b8fee1ced9671ba043476deddef739dd0959bf77030b26b738cc591737a7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 1.0.103", +] + +[[package]] +name = "addr2line" +version = "0.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a76fd60b23679b7d19bd066031410fb7e458ccc5e958eb5c325888ce4baedc97" +dependencies = [ + "gimli 0.27.2", ] [[package]] @@ -260,7 +268,7 @@ version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" dependencies = [ - "gimli", + "gimli 0.28.0", ] [[package]] @@ -275,19 +283,19 @@ version = "0.7.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" dependencies = [ - "getrandom 0.2.14", + "getrandom 0.2.9", "once_cell", "version_check", ] [[package]] name = "ahash" -version = "0.8.11" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" +checksum = "42cd52102d3df161c77a887b608d7a4897d7cc112886a9537b738a887a03aaff" dependencies = [ "cfg-if 1.0.0", - "getrandom 0.2.14", + "getrandom 0.2.9", "once_cell", "version_check", "zerocopy", @@ -295,33 +303,33 @@ dependencies = [ [[package]] name = "aho-corasick" -version = "1.1.3" +version = "0.7.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f" dependencies = [ "memchr", ] [[package]] name = "alloc-no-stdlib" -version = "2.0.4" +version = "2.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3" +checksum = "35ef4730490ad1c4eae5c4325b2a95f521d023e5c885853ff7aca0a6a1631db3" [[package]] name = "alloc-stdlib" -version = "0.2.2" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece" +checksum = "697ed7edc0f1711de49ce108c541623a0af97c6c60b2f6e2b65229847ac843c2" dependencies = [ "alloc-no-stdlib", ] [[package]] name = "allocator-api2" -version = "0.2.18" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f" +checksum = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5" [[package]] name = "android-tzdata" @@ -346,78 +354,79 @@ checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299" [[package]] name = "anstream" -version = "0.6.13" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb" +checksum = "6342bd4f5a1205d7f41e94a41a901f5647c938cdfa96036338e8533c9d6c2450" dependencies = [ "anstyle", "anstyle-parse", "anstyle-query", "anstyle-wincon", "colorchoice", + "is-terminal", "utf8parse", ] [[package]] name = "anstyle" -version = "1.0.6" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc" +checksum = "41ed9a86bf92ae6580e0a31281f65a1b1d867c0cc68d5346e2ae128dddfa6a7d" [[package]] name = "anstyle-parse" -version = "0.2.3" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c" +checksum = "e765fd216e48e067936442276d1d57399e37bce53c264d6fefbe298080cb57ee" dependencies = [ "utf8parse", ] [[package]] name = "anstyle-query" -version = "1.0.2" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648" +checksum = "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b" dependencies = [ - "windows-sys 0.52.0", + "windows-sys 0.48.0", ] [[package]] name = "anstyle-wincon" -version = "3.0.2" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7" +checksum = "180abfa45703aebe0093f79badacc01b8fd4ea2e35118747e5811127f926e188" dependencies = [ "anstyle", - "windows-sys 0.52.0", + "windows-sys 0.48.0", ] [[package]] name = "anyhow" -version = "1.0.82" +version = "1.0.62" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f538837af36e6f6a9be0faa67f9a314f8119e4e4b5867c6ab40ed60360142519" +checksum = "1485d4d2cc45e7b201ee3767015c96faa5904387c9d87c6efdd0fb511f12d305" [[package]] name = "arbitrary" -version = "1.3.2" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d5a26814d8dcb93b0e5a0ff3c6d80a8843bafb21b39e8e18a6f05471870e110" +checksum = "e2d098ff73c1ca148721f37baad5ea6a465a13f9573aba8641fbbbae8164a54e" dependencies = [ "derive_arbitrary", ] [[package]] name = "arc-swap" -version = "1.7.1" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69f7f8c3906b62b754cd5326047894316021dcfe5a194c8ea52bdd94934a3457" +checksum = "c5d78ce20460b82d3fa150275ed9d55e21064fc7951177baacf86a145c4a4b1f" [[package]] name = "arrayref" -version = "0.3.7" +version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b4930d2cb77ce62f89ee5d5289b4ac049559b1c45539271f5ed4fdc7db34545" +checksum = "a4c527152e37cf757a3f78aae5a06fbeefdb07ccc535c980a3208ee3060dd544" [[package]] name = "arrayvec" @@ -456,18 +465,18 @@ checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.32", ] [[package]] name = "async-trait" -version = "0.1.80" +version = "0.1.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca" +checksum = "b9ccdd8f2a161be9bd5c023df56f1b2a0bd1d83872ae53b71a84a12c9bf6e842" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.32", ] [[package]] @@ -476,7 +485,7 @@ version = "0.19.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "262c3f7f5d61249d8c00e5546e2685cd15ebeeb1bc0f3cc5449350a1cb07319e" dependencies = [ - "http 0.2.12", + "http", "log", "native-tls", "openssl", @@ -511,7 +520,7 @@ dependencies = [ "libsecp256k1", "num", "ripemd", - "sha2 0.10.8", + "sha2 0.10.6", "sha3", "zeropool-bn", ] @@ -523,8 +532,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5b6e2be9f43b5f076fab979eea0b1d9c51fd3eebf19a9d3ef045f84407dd6aa8" dependencies = [ "aurora-engine-types", - "base64 0.21.7", - "sha2 0.10.8", + "base64 0.21.0", + "sha2 0.10.6", "sha3", ] @@ -547,8 +556,8 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d0137a412059ef8c93654805c6639229cd2e21ecd9bdabe2be2a912f7bb819b5" dependencies = [ - "base64 0.21.7", - "borsh 1.5.0", + "base64 0.21.0", + "borsh 1.0.0", "bs58 0.5.1", "hex", "primitive-types 0.12.2", @@ -565,20 +574,20 @@ checksum = "3c87f3f15e7794432337fc718554eaa4dc8f04c9677a950ffe366f20a162ae42" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.32", ] [[package]] name = "autocfg" -version = "1.2.0" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80" +checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" [[package]] name = "awc" -version = "3.4.0" +version = "3.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68c09cc97310b926f01621faee652f3d1b0962545a3cec6c9ac07def9ea36c2c" +checksum = "87ef547a81796eb2dfe9b345aba34c2e08391a0502493711395b36dd64052b69" dependencies = [ "actix-codec", "actix-http", @@ -586,7 +595,8 @@ dependencies = [ "actix-service", "actix-tls", "actix-utils", - "base64 0.21.7", + "ahash 0.7.8", + "base64 0.21.0", "bytes", "cfg-if 1.0.0", "cookie", @@ -594,7 +604,7 @@ dependencies = [ "futures-core", "futures-util", "h2", - "http 0.2.12", + "http", "itoa", "log", "mime", @@ -626,9 +636,9 @@ dependencies = [ [[package]] name = "aws-region" -version = "0.25.4" +version = "0.25.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42fed2b9fca70f2908268d057a607f2a906f47edbf856ea8587de9038d264e22" +checksum = "f92a8af5850d0ea0916ca3e015ab86951ded0bf4b70fd27896e81ae1dfb0af37" dependencies = [ "thiserror", ] @@ -644,7 +654,7 @@ dependencies = [ "bitflags 1.3.2", "bytes", "futures-util", - "http 0.2.12", + "http", "http-body", "hyper", "itoa", @@ -670,7 +680,7 @@ dependencies = [ "async-trait", "bytes", "futures-util", - "http 0.2.12", + "http", "http-body", "mime", "rustversion", @@ -680,16 +690,16 @@ dependencies = [ [[package]] name = "backtrace" -version = "0.3.71" +version = "0.3.67" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26b05800d2e817c8b3b4b54abd461726265fa9789ae34330622f2db9ee696f9d" +checksum = "233d376d6d185f2a3093e58f283f60f880315b6c60075b01f36b3b85154564ca" dependencies = [ - "addr2line", + "addr2line 0.19.0", "cc", "cfg-if 1.0.0", "libc", - "miniz_oxide", - "object", + "miniz_oxide 0.6.2", + "object 0.30.4", "rustc-demangle", ] @@ -701,21 +711,24 @@ checksum = "3441f0f7b02788e948e47f457ca01f1d7e6d92c693bc132c22b087d3141c03ff" [[package]] name = "base64" -version = "0.13.1" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" +checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd" [[package]] name = "base64" -version = "0.21.7" +version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" +checksum = "a4a4ddaa51a5bc52a6948f74c06d20aaaddb71924eab79b8c97a8c556e942d6a" [[package]] -name = "base64" -version = "0.22.0" +name = "basic-toml" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9475866fec1451be56a3c2400fd081ff546538961565ccb5b7142cbd22bc7a51" +checksum = "5c0de75129aa8d0cceaf750b89013f0e08804d6ec61416da787b35ad0d7cddf1" +dependencies = [ + "serde", +] [[package]] name = "bencher" @@ -750,7 +763,7 @@ dependencies = [ "regex", "rustc-hash", "shlex", - "syn 2.0.60", + "syn 2.0.32", ] [[package]] @@ -761,9 +774,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.5.0" +version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1" +checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07" [[package]] name = "bitmaps" @@ -818,16 +831,16 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" dependencies = [ - "generic-array 0.14.7", + "generic-array 0.14.5", ] [[package]] name = "block-buffer" -version = "0.10.4" +version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" +checksum = "0bf7fe51849ea569fd452f37822f606a5cabb684dc918707a0193fd4664ff324" dependencies = [ - "generic-array 0.14.7", + "generic-array 0.14.5", ] [[package]] @@ -837,7 +850,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b872f3528eeeb4370ee73b51194dc1cd93680c2d0eb6c7a223889038d2c1a167" dependencies = [ "quote", - "syn 1.0.109", + "syn 1.0.103", ] [[package]] @@ -896,7 +909,7 @@ dependencies = [ "proc-macro-crate 1.3.1", "proc-macro2", "quote", - "syn 1.0.109", + "syn 1.0.103", ] [[package]] @@ -936,11 +949,11 @@ dependencies = [ [[package]] name = "borsh" -version = "1.5.0" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbe5b10e214954177fb1dc9fbd20a1a2608fe99e6c832033bdc7cea287a20d77" +checksum = "4e6cb63579996213e822f6d828b0a47e1d23b1e8708f52d18a6b1af5670dd207" dependencies = [ - "borsh-derive 1.5.0", + "borsh-derive 1.0.0", "cfg_aliases", ] @@ -954,20 +967,20 @@ dependencies = [ "borsh-schema-derive-internal", "proc-macro-crate 0.1.5", "proc-macro2", - "syn 1.0.109", + "syn 1.0.103", ] [[package]] name = "borsh-derive" -version = "1.5.0" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7a8646f94ab393e43e8b35a2558b1624bed28b97ee09c5d15456e3c9463f46d" +checksum = "35b4db62e0515621636e47f425d78a40bdea94c2d23713428fb12194cf5459a4" dependencies = [ "once_cell", - "proc-macro-crate 3.1.0", + "proc-macro-crate 1.3.1", "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.32", "syn_derive", ] @@ -979,7 +992,7 @@ checksum = "5449c28a7b352f2d1e592a8a28bf139bc71afb0764a14f3c02500935d8c44065" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 1.0.103", ] [[package]] @@ -990,14 +1003,14 @@ checksum = "cdbd5696d8bfa21d53d9fe39a714a18538bad11492a42d066dbbc395fb1951c0" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 1.0.103", ] [[package]] name = "brotli" -version = "3.5.0" +version = "3.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d640d25bc63c50fb1f0b545ffd80207d2e10a4c965530809b40ba3386825c391" +checksum = "a1a0b1dbcc8ae29329621f8d4f0d835787c1c38bb1401979b49d13b0b305ff68" dependencies = [ "alloc-no-stdlib", "alloc-stdlib", @@ -1006,9 +1019,9 @@ dependencies = [ [[package]] name = "brotli-decompressor" -version = "2.5.1" +version = "2.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e2e4afe60d7dd600fdd3de8d0f08c2b7ec039712e3b6137ff98b7004e82de4f" +checksum = "59ad2d4653bf5ca36ae797b1f4bb4dbddb60ce49ca4aed8a2ce4829f60425b80" dependencies = [ "alloc-no-stdlib", "alloc-stdlib", @@ -1026,15 +1039,15 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bf88ba1141d185c399bee5288d850d63b8369520c1eafc32a0430b5b6c287bf4" dependencies = [ - "sha2 0.10.8", + "sha2 0.10.6", "tinyvec", ] [[package]] name = "bumpalo" -version = "3.16.0" +version = "3.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" +checksum = "0d261e256854913907f67ed06efbc3338dfe6179796deefc1ff763fc1aee5535" [[package]] name = "byte-slice-cast" @@ -1044,52 +1057,51 @@ checksum = "c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c" [[package]] name = "bytecheck" -version = "0.6.12" +version = "0.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23cdc57ce23ac53c931e88a43d06d070a6fd142f2617be5855eb75efc9beb1c2" +checksum = "3a31f923c2db9513e4298b72df143e6e655a759b3d6a0966df18f81223fff54f" dependencies = [ "bytecheck_derive", "ptr_meta", - "simdutf8", ] [[package]] name = "bytecheck_derive" -version = "0.6.12" +version = "0.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3db406d29fbcd95542e92559bed4d8ad92636d1ca8b3b72ede10b4bcc010e659" +checksum = "edb17c862a905d912174daa27ae002326fff56dc8b8ada50a0a5f0976cb174f0" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 1.0.103", ] [[package]] name = "byteorder" -version = "1.5.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" +checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" [[package]] name = "bytes" -version = "1.6.0" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9" +checksum = "89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be" [[package]] name = "bytesize" -version = "1.3.0" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3e368af43e418a04d52505cf3dbc23dda4e3407ae2fa99fd0e4f308ce546acc" +checksum = "6c58ec36aac5066d5ca17df51b3e70279f5670a72102f5752cb7e7c856adfc70" dependencies = [ "serde", ] [[package]] name = "bytestring" -version = "1.3.1" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74d80203ea6b29df88012294f62733de21cfeab47f17b41af3a38bc30a03ee72" +checksum = "90706ba19e97b90786e19dc0d5e2abd80008d99d4c0c5d1ad0b5e72cec7c494d" dependencies = [ "bytes", ] @@ -1107,18 +1119,18 @@ dependencies = [ [[package]] name = "camino" -version = "1.1.6" +version = "1.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c59e92b5a388f549b863a7bea62612c09f24c8393560709a54558a9abdfb3b9c" +checksum = "07fd178c5af4d59e83498ef15cf3f154e1a6f9d091270cb86283c65ef44e9ef0" dependencies = [ "serde", ] [[package]] name = "cargo-platform" -version = "0.1.8" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24b1f0365a6c6bb4020cd05806fd0d33c44d38046b8bd7f0e40814b9763cabfc" +checksum = "cbdb825da8a5df079a43676dbe042702f1707b1109f713a01420fbb4cc71fa27" dependencies = [ "serde", ] @@ -1131,7 +1143,7 @@ checksum = "4acbb09d9ee8e23699b9634375c72795d095bf268439da88562cf9b501f181fa" dependencies = [ "camino", "cargo-platform", - "semver 1.0.22", + "semver 1.0.9", "serde", "serde_json", ] @@ -1144,13 +1156,12 @@ checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5" [[package]] name = "cc" -version = "1.0.96" +version = "1.0.83" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "065a29261d53ba54260972629f9ca6bffa69bac13cd1fed61420f7fa68b9f8bd" +checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" dependencies = [ "jobserver", "libc", - "once_cell", ] [[package]] @@ -1200,16 +1211,16 @@ dependencies = [ "near-store", "nearcore", "openssl-probe", - "parking_lot 0.12.2", + "parking_lot 0.12.1", "rand", "tokio", ] [[package]] name = "chrono" -version = "0.4.38" +version = "0.4.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" +checksum = "7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38" dependencies = [ "android-tzdata", "iana-time-zone", @@ -1217,14 +1228,14 @@ dependencies = [ "num-traits", "serde", "wasm-bindgen", - "windows-targets 0.52.5", + "windows-targets 0.48.0", ] [[package]] name = "ciborium" -version = "0.2.2" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e" +checksum = "effd91f6c78e5a4ace8a5d3c0b6bfaec9e2baaef55f3efc00e45fb2e477ee926" dependencies = [ "ciborium-io", "ciborium-ll", @@ -1233,15 +1244,15 @@ dependencies = [ [[package]] name = "ciborium-io" -version = "0.2.2" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757" +checksum = "cdf919175532b369853f5d5e20b26b43112613fd6fe7aee757e35f7a44642656" [[package]] name = "ciborium-ll" -version = "0.2.2" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9" +checksum = "defaa24ecc093c77630e6c15e17c51f5e187bf35ee514f4e2d67baaa96dae22b" dependencies = [ "ciborium-io", "half", @@ -1249,9 +1260,9 @@ dependencies = [ [[package]] name = "clang-sys" -version = "1.7.0" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67523a3b4be3ce1989d607a828d036249522dd9c1c8de7f4dd2dae43a37369d1" +checksum = "4cc00842eed744b858222c4c9faf7243aafc6d33f92f96935263ef4d8a41ce21" dependencies = [ "glob", "libc", @@ -1260,43 +1271,45 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.4" +version = "4.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90bc066a67923782aa8515dbaea16946c5bcc5addbd668bb80af688e53e548a0" +checksum = "956ac1f6381d8d82ab4684768f89c0ea3afe66925ceadb4eeb3fc452ffc55d62" dependencies = [ "clap_builder", "clap_derive", + "once_cell", ] [[package]] name = "clap_builder" -version = "4.5.2" +version = "4.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae129e2e766ae0ec03484e609954119f123cc1fe650337e155d03b022f24f7b4" +checksum = "84080e799e54cff944f4b4a4b0e71630b0e0443b25b985175c7dddc1a859b749" dependencies = [ "anstream", "anstyle", + "bitflags 1.3.2", "clap_lex", - "strsim 0.11.1", + "strsim", ] [[package]] name = "clap_derive" -version = "4.5.4" +version = "4.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "528131438037fd55894f62d6e9f068b8f45ac57ffa77517819645d10aed04f64" +checksum = "3f9644cd56d6b87dbe899ef8b053e331c0637664e9e21a33dfcdc36093f5c5c4" dependencies = [ - "heck 0.5.0", + "heck", "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.32", ] [[package]] name = "clap_lex" -version = "0.7.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce" +checksum = "8a2dd5a6fe8c6e3502f568a6353e5273bbb15193ad9a89e457b9970798efbea1" [[package]] name = "cloud-storage" @@ -1305,7 +1318,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7602ac4363f68ac757d6b87dd5d850549a14d37489902ae639c06ecec06ad275" dependencies = [ "async-trait", - "base64 0.13.1", + "base64 0.13.0", "bytes", "chrono", "dotenv", @@ -1330,12 +1343,22 @@ dependencies = [ "bitflags 1.3.2", ] +[[package]] +name = "codespan-reporting" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e" +dependencies = [ + "termcolor", + "unicode-width", +] + [[package]] name = "cold-store-tool" version = "0.0.0" dependencies = [ "anyhow", - "borsh 1.5.0", + "borsh 1.0.0", "clap", "near-chain-configs", "near-epoch-manager", @@ -1355,9 +1378,9 @@ checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7" [[package]] name = "combine" -version = "4.6.7" +version = "4.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" +checksum = "2a604e93b79d1808327a6fca85a6f2d69de66461e7620f5a4cbf5fb4d1d7c948" dependencies = [ "bytes", "memchr", @@ -1377,15 +1400,15 @@ dependencies = [ [[package]] name = "console" -version = "0.15.8" +version = "0.15.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e1f83fc076bd6dd27517eacdf25fef6c4dfe5f1d7448bafaaf3a26f13b5e4eb" +checksum = "c3d79fbe8970a77e3e34151cc13d3b3e248aa0faaecb9f6091fa07ebefe5ad60" dependencies = [ "encode_unicode", "lazy_static", "libc", "unicode-width", - "windows-sys 0.52.0", + "windows-sys 0.42.0", ] [[package]] @@ -1402,9 +1425,9 @@ checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" [[package]] name = "cookie" -version = "0.16.2" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e859cd57d0710d9e06c381b550c06e76992472a8c6d527aecd2fc673dcc231fb" +checksum = "94d4706de1b0fa5b132270cddffa8585166037822e260a944fe161acd137ca05" dependencies = [ "percent-encoding", "time", @@ -1413,9 +1436,9 @@ dependencies = [ [[package]] name = "core-foundation" -version = "0.9.4" +version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" +checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" dependencies = [ "core-foundation-sys", "libc", @@ -1423,9 +1446,9 @@ dependencies = [ [[package]] name = "core-foundation-sys" -version = "0.8.6" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" +checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc" [[package]] name = "cov-mark" @@ -1454,9 +1477,9 @@ dependencies = [ [[package]] name = "cpufeatures" -version = "0.2.12" +version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504" +checksum = "ce420fe07aecd3e67c5f910618fe65e94158f6dcc0adf44e00d69ce2bdfe0fd0" dependencies = [ "libc", ] @@ -1483,12 +1506,12 @@ dependencies = [ "cranelift-control", "cranelift-entity", "cranelift-isle", - "gimli", - "hashbrown 0.14.5", + "gimli 0.28.0", + "hashbrown 0.14.2", "log", "regalloc2", "smallvec", - "target-lexicon 0.12.14", + "target-lexicon 0.12.3", ] [[package]] @@ -1534,7 +1557,7 @@ dependencies = [ "cranelift-codegen", "log", "smallvec", - "target-lexicon 0.12.14", + "target-lexicon 0.12.3", ] [[package]] @@ -1551,7 +1574,7 @@ checksum = "f32e81605f352cf37af5463f11cd7deec7b6572741931a8d372f7fdd4a744f5d" dependencies = [ "cranelift-codegen", "libc", - "target-lexicon 0.12.14", + "target-lexicon 0.12.3", ] [[package]] @@ -1563,7 +1586,7 @@ dependencies = [ "cranelift-codegen", "cranelift-entity", "cranelift-frontend", - "itertools 0.10.5", + "itertools", "log", "smallvec", "wasmparser 0.115.0", @@ -1572,24 +1595,24 @@ dependencies = [ [[package]] name = "crc" -version = "3.2.1" +version = "3.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69e6e4d7b33a94f0991c26729976b10ebde1d34c3ee82408fb536164fa10d636" +checksum = "86ec7a15cbe22e59248fc7eadb1907dab5ba09372595da4d73dd805ed4417dfe" dependencies = [ "crc-catalog", ] [[package]] name = "crc-catalog" -version = "2.4.0" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" +checksum = "9cace84e55f07e7301bae1c519df89cdad8cc3cd868413d3fdbdeca9ff3db484" [[package]] name = "crc32fast" -version = "1.4.0" +version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa" +checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d" dependencies = [ "cfg-if 1.0.0", ] @@ -1606,7 +1629,7 @@ dependencies = [ "clap", "criterion-plot", "is-terminal", - "itertools 0.10.5", + "itertools", "num-traits", "once_cell", "oorandom", @@ -1625,15 +1648,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1" dependencies = [ "cast", - "itertools 0.10.5", + "itertools", ] [[package]] name = "crossbeam" -version = "0.8.4" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1137cd7e7fc0fb5d3c5a8678be38ec56e819125d8d7907411fe24ccb943faca8" +checksum = "2801af0d36612ae591caa9568261fddce32ce6e08a7275ea334a06a4ad021a2c" dependencies = [ + "cfg-if 1.0.0", "crossbeam-channel", "crossbeam-deque", "crossbeam-epoch", @@ -1643,46 +1667,57 @@ dependencies = [ [[package]] name = "crossbeam-channel" -version = "0.5.12" +version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab3db02a9c5b5121e1e42fbdb1aeb65f5e02624cc58c43f2884c6ccac0b82f95" +checksum = "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200" dependencies = [ + "cfg-if 1.0.0", "crossbeam-utils", ] [[package]] name = "crossbeam-deque" -version = "0.8.5" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d" +checksum = "6455c0ca19f0d2fbf751b908d5c55c1f5cbc65e03c4225427254b46890bdde1e" dependencies = [ + "cfg-if 1.0.0", "crossbeam-epoch", "crossbeam-utils", ] [[package]] name = "crossbeam-epoch" -version = "0.9.18" +version = "0.9.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" +checksum = "46bd5f3f85273295a9d14aedfb86f6aadbff6d8f5295c4a9edb08e819dcf5695" dependencies = [ + "autocfg", + "cfg-if 1.0.0", "crossbeam-utils", + "memoffset 0.8.0", + "scopeguard", ] [[package]] name = "crossbeam-queue" -version = "0.3.11" +version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df0346b5d5e76ac2fe4e327c5fd1118d6be7c51dfb18f9b7922923f287471e35" +checksum = "d1cfb3ea8a53f37c40dea2c7bedcbd88bdfae54f5e2175d6ecaff1c988353add" dependencies = [ + "cfg-if 1.0.0", "crossbeam-utils", ] [[package]] name = "crossbeam-utils" -version = "0.8.19" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345" +checksum = "0bf124c720b7686e3c2663cf54062ab0f68a88af2fb6a030e87e30bf721fcb38" +dependencies = [ + "cfg-if 1.0.0", + "lazy_static", +] [[package]] name = "crossterm" @@ -1694,7 +1729,7 @@ dependencies = [ "crossterm_winapi", "libc", "mio", - "parking_lot 0.12.2", + "parking_lot 0.12.1", "signal-hook", "signal-hook-mio", "winapi", @@ -1702,9 +1737,9 @@ dependencies = [ [[package]] name = "crossterm_winapi" -version = "0.9.1" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "acdd7c62a3665c7f6830a51635d9ac9b23ed385797f70a83bb8bafe9c572ab2b" +checksum = "2ae1b35a484aa10e07fe0638d02301c5ad24de82d310ccbd2f3693da5f09bf1c" dependencies = [ "winapi", ] @@ -1717,11 +1752,11 @@ checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" [[package]] name = "crypto-common" -version = "0.1.6" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" +checksum = "57952ca27b5e3606ff4dd79b0020231aaf9d6aa76dc05fd30137538c50bd3ce8" dependencies = [ - "generic-array 0.14.7", + "generic-array 0.14.5", "typenum", ] @@ -1731,15 +1766,15 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b584a330336237c1eecd3e94266efb216c56ed91225d634cb2991c5f3fd1aeab" dependencies = [ - "generic-array 0.14.7", + "generic-array 0.14.5", "subtle", ] [[package]] name = "csv" -version = "1.3.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac574ff4d437a7b5ad237ef331c17ccca63c46479e5b5453eb8e10bb99a759fe" +checksum = "0b015497079b9a9d69c02ad25de6c0a6edef051ea6360a327d0bd05802ef64ad" dependencies = [ "csv-core", "itoa", @@ -1749,9 +1784,9 @@ dependencies = [ [[package]] name = "csv-core" -version = "0.1.11" +version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5efa2b3d7902f4b634a20cae3c9c4e6209dc4779feb6863329607560143efa70" +checksum = "2b2466559f260f48ad25fe6317b3c8dac77b5bdb5763ac7d9d6103530663bc90" dependencies = [ "memchr", ] @@ -1765,7 +1800,7 @@ dependencies = [ "cfg-if 1.0.0", "cpufeatures", "curve25519-dalek-derive", - "digest 0.10.7", + "digest 0.10.6", "fiat-crypto", "platforms", "rand_core 0.6.4", @@ -1782,14 +1817,58 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.32", +] + +[[package]] +name = "cxx" +version = "1.0.94" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f61f1b6389c3fe1c316bf8a4dccc90a38208354b330925bce1f74a6c4756eb93" +dependencies = [ + "cc", + "cxxbridge-flags", + "cxxbridge-macro", + "link-cplusplus", +] + +[[package]] +name = "cxx-build" +version = "1.0.94" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12cee708e8962df2aeb38f594aae5d827c022b6460ac71a7a3e2c3c2aae5a07b" +dependencies = [ + "cc", + "codespan-reporting", + "once_cell", + "proc-macro2", + "quote", + "scratch", + "syn 2.0.32", +] + +[[package]] +name = "cxxbridge-flags" +version = "1.0.94" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7944172ae7e4068c533afbb984114a56c46e9ccddda550499caa222902c7f7bb" + +[[package]] +name = "cxxbridge-macro" +version = "1.0.94" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2345488264226bf682893e25de0769f3360aac9957980ec49361b083ddaa5bc5" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.32", ] [[package]] name = "darling" -version = "0.20.8" +version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54e36fcd13ed84ffdfda6f5be89b31287cbb80c439841fe69e04841435464391" +checksum = "0558d22a7b463ed0241e993f76f09f30b126687447751a8638587b864e4b3944" dependencies = [ "darling_core", "darling_macro", @@ -1797,27 +1876,27 @@ dependencies = [ [[package]] name = "darling_core" -version = "0.20.8" +version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c2cf1c23a687a1feeb728783b993c4e1ad83d99f351801977dd809b48d0a70f" +checksum = "ab8bfa2e259f8ee1ce5e97824a3c55ec4404a0d772ca7fa96bf19f0752a046eb" dependencies = [ "fnv", "ident_case", "proc-macro2", "quote", - "strsim 0.10.0", - "syn 2.0.60", + "strsim", + "syn 2.0.32", ] [[package]] name = "darling_macro" -version = "0.20.8" +version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a668eda54683121533a393014d8692171709ff57a7d61f187b6e782719f8933f" +checksum = "29a358ff9f12ec09c3e61fef9b5a9902623a695a46a917b07f269bff1445611a" dependencies = [ "darling_core", "quote", - "syn 2.0.60", + "syn 2.0.32", ] [[package]] @@ -1829,16 +1908,6 @@ dependencies = [ "uuid", ] -[[package]] -name = "deranged" -version = "0.3.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" -dependencies = [ - "powerfmt", - "serde", -] - [[package]] name = "derive-enum-from-into" version = "0.1.1" @@ -1847,18 +1916,18 @@ checksum = "adc2a1b7c0031fb651e9bc1fa4255da82747c187b9ac1dc36b3783d71fadd9d5" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 1.0.103", ] [[package]] name = "derive_arbitrary" -version = "1.3.2" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67e77553c4162a157adbf834ebae5b415acbecbeafc7a74b0e886657506a7611" +checksum = "53e0efad4403bfc52dc201159c4b842a246a14b98c64b55dfd0f2d89729dfeb8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.32", ] [[package]] @@ -1871,7 +1940,7 @@ dependencies = [ "proc-macro2", "quote", "rustc_version 0.4.0", - "syn 1.0.109", + "syn 1.0.103", ] [[package]] @@ -1895,16 +1964,16 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" dependencies = [ - "generic-array 0.14.7", + "generic-array 0.14.5", ] [[package]] name = "digest" -version = "0.10.7" +version = "0.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" +checksum = "8168378f4e5023e7218c89c891c0fd8ecdb5e5e4f18cb78f38cf245dd021e76f" dependencies = [ - "block-buffer 0.10.4", + "block-buffer 0.10.2", "crypto-common", "subtle", ] @@ -1931,9 +2000,9 @@ dependencies = [ [[package]] name = "dissimilar" -version = "1.0.8" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "440d59c0c6d96354061909b4769b2ca03868dbaee203e7b779d9021ebbde3058" +checksum = "8c97b9233581d84b8e1e689cdd3a47b6f69770084fc246e86a7f78b0d9c1d4a5" [[package]] name = "dlv-list" @@ -1959,7 +2028,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 1.0.109", + "syn 1.0.103", ] [[package]] @@ -1974,7 +2043,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 1.0.109", + "syn 1.0.103", ] [[package]] @@ -2017,22 +2086,22 @@ dependencies = [ [[package]] name = "ed25519-dalek" -version = "2.1.1" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a3daa8e81a3963a60642bcc1f90a670680bd4a77535faa384e9d1c79d620871" +checksum = "1f628eaec48bfd21b865dc2950cfa014450c01d2fa2b69a86c2fd5844ec523c0" dependencies = [ "curve25519-dalek", "ed25519", "rand_core 0.6.4", - "sha2 0.10.8", + "sha2 0.10.6", "subtle", ] [[package]] name = "either" -version = "1.11.0" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a47c1c47d2f5964e29c61246e81db715514cd532db6b5116a25ea3c03d6780a2" +checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457" [[package]] name = "elastic-array" @@ -2051,38 +2120,38 @@ checksum = "a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f" [[package]] name = "encoding_rs" -version = "0.8.34" +version = "0.8.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59" +checksum = "9852635589dc9f9ea1b6fe9f05b50ef208c85c834a562f0c6abb1c475736ec2b" dependencies = [ "cfg-if 1.0.0", ] [[package]] name = "enum-map" -version = "2.7.3" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6866f3bfdf8207509a033af1a75a7b08abda06bbaaeae6669323fd5a097df2e9" +checksum = "0348b2a57c82f98b9dbd8098b1abb2416f221823d3e50cbe24eaebdd16896826" dependencies = [ "enum-map-derive", ] [[package]] name = "enum-map-derive" -version = "0.17.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f282cfdfe92516eb26c2af8589c274c7c17681f5ecc03c18255fe741c6aa64eb" +checksum = "a63b7a0ddec6f38dcec5e36257750b7a8fcaf4227e12ceb306e341d63634da05" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 1.0.103", ] [[package]] name = "enumset" -version = "1.1.3" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "226c0da7462c13fb57e5cc9e0dc8f0635e7d27f276a3a7fd30054647f669007d" +checksum = "e875f1719c16de097dee81ed675e2d9bb63096823ed3f0ca827b7dea3028bbbb" dependencies = [ "enumset_derive", ] @@ -2096,7 +2165,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.32", ] [[package]] @@ -2118,12 +2187,13 @@ dependencies = [ [[package]] name = "errno" -version = "0.3.8" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" +checksum = "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a" dependencies = [ + "errno-dragonfly", "libc", - "windows-sys 0.52.0", + "windows-sys 0.48.0", ] [[package]] @@ -2267,9 +2337,9 @@ dependencies = [ [[package]] name = "expect-test" -version = "1.5.0" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e0be0a561335815e06dab7c62e50353134c796e7a6155402a64bcff66b6a5e0" +checksum = "dced95c9dcd4e3241f95841aad395f9c8d7933a3b0b524bdeb2440885c72a271" dependencies = [ "dissimilar", "once_cell", @@ -2295,15 +2365,15 @@ checksum = "7360491ce676a36bf9bb3c56c1aa791658183a54d2744120f27285738d90465a" [[package]] name = "fastrand" -version = "2.1.0" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a" +checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" [[package]] name = "fiat-crypto" -version = "0.2.8" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38793c55593b33412e3ae40c2c9781ffaa6f438f6f8c10f24e71846fbd7ae01e" +checksum = "27573eac26f4dd11e2b1916c3fe1baa56407c83c71a773a8ba17ec0bca03b6b7" [[package]] name = "finite-wasm" @@ -2321,6 +2391,12 @@ dependencies = [ "wasmprinter", ] +[[package]] +name = "firestorm" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d3d6188b8804df28032815ea256b6955c9625c24da7525f387a7af02fbb8f01" + [[package]] name = "fixed-hash" version = "0.7.0" @@ -2344,18 +2420,20 @@ dependencies = [ [[package]] name = "flagset" -version = "0.4.5" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdeb3aa5e95cf9aabc17f060cfa0ced7b83f042390760ca53bf09df9968acaa1" +checksum = "cda653ca797810c02f7ca4b804b40b8b95ae046eb989d356bce17919a8c25499" [[package]] name = "flate2" -version = "1.0.30" +version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f54427cfd1c7829e2a139fcefea601bf088ebca651d2bf53ebc600eac295dae" +checksum = "b39522e96686d38f4bc984b9198e3a0613264abaebaff2c5c918bfa6b6da09af" dependencies = [ + "cfg-if 1.0.0", "crc32fast", - "miniz_oxide", + "libc", + "miniz_oxide 0.5.1", ] [[package]] @@ -2381,9 +2459,9 @@ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" [[package]] name = "form_urlencoded" -version = "1.2.1" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" +checksum = "a9c384f161156f5260c24a097c56119f9be8c798586aecc13afbcbe7b7e26bf8" dependencies = [ "percent-encoding", ] @@ -2398,6 +2476,12 @@ dependencies = [ "winapi", ] +[[package]] +name = "fs_extra" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2022715d62ab30faffd124d40b76f4134a550a87792276512b18d63272333394" + [[package]] name = "funty" version = "2.0.0" @@ -2406,9 +2490,9 @@ checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" [[package]] name = "futures" -version = "0.3.30" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0" +checksum = "f73fe65f54d1e12b726f517d3e2135ca3125a437b6d998caf1962961f7172d9e" dependencies = [ "futures-channel", "futures-core", @@ -2421,9 +2505,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.30" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" +checksum = "c3083ce4b914124575708913bca19bfe887522d6e2e6d0952943f5eac4a74010" dependencies = [ "futures-core", "futures-sink", @@ -2431,15 +2515,15 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.30" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" +checksum = "0c09fd04b7e4073ac7156a9539b57a484a8ea920f79c7c675d05d289ab6110d3" [[package]] name = "futures-executor" -version = "0.3.30" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d" +checksum = "9420b90cfa29e327d0429f19be13e7ddb68fa1cccb09d65e5706b8c7a749b8a6" dependencies = [ "futures-core", "futures-task", @@ -2448,38 +2532,38 @@ dependencies = [ [[package]] name = "futures-io" -version = "0.3.30" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" +checksum = "fc4045962a5a5e935ee2fdedaa4e08284547402885ab326734432bed5d12966b" [[package]] name = "futures-macro" -version = "0.3.30" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" +checksum = "33c1e13800337f4d4d7a316bf45a567dbcb6ffe087f16424852d97e97a91f512" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 1.0.103", ] [[package]] name = "futures-sink" -version = "0.3.30" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" +checksum = "21163e139fa306126e6eedaf49ecdb4588f939600f0b1e770f4205ee4b7fa868" [[package]] name = "futures-task" -version = "0.3.30" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" +checksum = "57c66a976bf5909d801bbef33416c41372779507e7a6b3a5e25e4749c58f776a" [[package]] name = "futures-util" -version = "0.3.30" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" +checksum = "d8b7abd5d659d9b90c8cba917f6ec750a74e2dc23902ef9cd4cc8c8b22e6036a" dependencies = [ "futures-channel", "futures-core", @@ -2508,7 +2592,7 @@ version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "27d12c0aed7f1e24276a241aadc4cb8ea9f83000f34bc062b7cc2d51e3b0fabd" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.4.1", "debugid", "fxhash", "serde", @@ -2526,9 +2610,9 @@ dependencies = [ [[package]] name = "generic-array" -version = "0.14.7" +version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" +checksum = "fd48d33ec7f05fbfa152300fdad764757cbded343c1aa1cff2fbaf4134851803" dependencies = [ "typenum", "version_check", @@ -2555,7 +2639,7 @@ dependencies = [ name = "genesis-populate" version = "0.0.0" dependencies = [ - "borsh 1.5.0", + "borsh 1.0.0", "clap", "indicatif", "near-async", @@ -2584,9 +2668,9 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.14" +version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c" +checksum = "c85e1d9ab2eadba7e5040d4e09cbd6d072b76a557ad64e797c2cb9d4da21d7e4" dependencies = [ "cfg-if 1.0.0", "libc", @@ -2595,12 +2679,18 @@ dependencies = [ [[package]] name = "gimli" -version = "0.28.1" +version = "0.27.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad0a93d233ebf96623465aad4046a8d3aa4da22d4f4beba5388838c8a434bbb4" + +[[package]] +name = "gimli" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" +checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0" dependencies = [ "fallible-iterator 0.3.0", - "indexmap 2.2.6", + "indexmap 2.0.0", "stable_deref_trait", ] @@ -2621,8 +2711,8 @@ dependencies = [ "futures-core", "futures-sink", "futures-util", - "http 0.2.12", - "indexmap 2.2.6", + "http", + "indexmap 2.0.0", "slab", "tokio", "tokio-util", @@ -2631,13 +2721,9 @@ dependencies = [ [[package]] name = "half" -version = "2.4.1" +version = "1.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6dd08c532ae367adf81c312a4580bc67f1d0fe8bc9c460520283f4c0ff277888" -dependencies = [ - "cfg-if 1.0.0", - "crunchy", -] +checksum = "eabb4a44450da02c90444cf74558da904edde8fb4e9035a9a6a4e15445af0bd7" [[package]] name = "hash-db" @@ -2678,26 +2764,26 @@ version = "0.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" dependencies = [ - "ahash 0.8.11", + "ahash 0.8.8", ] [[package]] name = "hashbrown" -version = "0.14.5" +version = "0.14.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" +checksum = "f93e7192158dbcda357bdec5fb5788eebf8bbac027f3f33e719d29135ae84156" dependencies = [ - "ahash 0.8.11", + "ahash 0.8.8", "allocator-api2", ] [[package]] name = "hashlink" -version = "0.8.4" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8094feaf31ff591f651a2664fb9cfd92bba7a60ce3197265e9482ebe753c8f7" +checksum = "0761a1b9491c4f2e3d66aa0f62d0fba0af9a0e2852e4d48ea506632a4b56e6aa" dependencies = [ - "hashbrown 0.14.5", + "hashbrown 0.13.2", ] [[package]] @@ -2711,21 +2797,24 @@ dependencies = [ [[package]] name = "heck" -version = "0.4.1" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" +checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9" [[package]] -name = "heck" -version = "0.5.0" +name = "hermit-abi" +version = "0.1.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" +checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33" +dependencies = [ + "libc", +] [[package]] name = "hermit-abi" -version = "0.3.9" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" +checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7" [[package]] name = "hex" @@ -2757,9 +2846,9 @@ dependencies = [ [[package]] name = "hkdf" -version = "0.12.4" +version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b5f8eb2ad728638ea2c7d47a21db23b7b58a72ed6a38256b8a1849f15fbbdf7" +checksum = "791a029f6b9fc27657f6f188ec6e5e43f6911f6f878e0dc5501396e09809d437" dependencies = [ "hmac 0.12.1", ] @@ -2780,7 +2869,7 @@ version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" dependencies = [ - "digest 0.10.7", + "digest 0.10.6", ] [[package]] @@ -2790,19 +2879,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "17ea0a1394df5b6574da6e0c1ade9e78868c9fb0a4e5ef4428e32da4676b85b1" dependencies = [ "digest 0.9.0", - "generic-array 0.14.7", + "generic-array 0.14.5", "hmac 0.8.1", ] -[[package]] -name = "home" -version = "0.5.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5" -dependencies = [ - "windows-sys 0.52.0", -] - [[package]] name = "http" version = "0.2.12" @@ -2814,17 +2894,6 @@ dependencies = [ "itoa", ] -[[package]] -name = "http" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258" -dependencies = [ - "bytes", - "fnv", - "itoa", -] - [[package]] name = "http-body" version = "0.4.6" @@ -2832,7 +2901,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2" dependencies = [ "bytes", - "http 0.2.12", + "http", "pin-project-lite", ] @@ -2844,9 +2913,9 @@ checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" [[package]] name = "httpdate" -version = "1.0.3" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" +checksum = "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421" [[package]] name = "hyper" @@ -2859,13 +2928,13 @@ dependencies = [ "futures-core", "futures-util", "h2", - "http 0.2.12", + "http", "http-body", "httparse", "httpdate", "itoa", "pin-project-lite", - "socket2 0.5.7", + "socket2", "tokio", "tower-service", "tracing", @@ -2899,25 +2968,26 @@ dependencies = [ [[package]] name = "iana-time-zone" -version = "0.1.60" +version = "0.1.56" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141" +checksum = "0722cd7114b7de04316e7ea5456a0bbb20e4adb46fd27a3697adb812cff0f37c" dependencies = [ "android_system_properties", "core-foundation-sys", "iana-time-zone-haiku", "js-sys", "wasm-bindgen", - "windows-core", + "windows", ] [[package]] name = "iana-time-zone-haiku" -version = "0.1.2" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" +checksum = "0703ae284fc167426161c2e3f1da3ea71d94b21bedbcc9494e92b28e334e3dca" dependencies = [ - "cc", + "cxx", + "cxx-build", ] [[package]] @@ -2928,9 +2998,9 @@ checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" [[package]] name = "idna" -version = "0.5.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" +checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6" dependencies = [ "unicode-bidi", "unicode-normalization", @@ -2959,12 +3029,6 @@ dependencies = [ "parity-scale-codec", ] -[[package]] -name = "impl-more" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "206ca75c9c03ba3d4ace2460e57b189f39f43de612c2f85836e65c929701bb2d" - [[package]] name = "impl-rlp" version = "0.3.0" @@ -2991,7 +3055,7 @@ checksum = "11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 1.0.103", ] [[package]] @@ -3011,9 +3075,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "1.9.3" +version = "1.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" +checksum = "1885e79c1fc4b10f0e172c475f458b7f7b93061064d98c3293e98c5ba0c8b399" dependencies = [ "autocfg", "hashbrown 0.12.3", @@ -3022,12 +3086,12 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.2.6" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26" +checksum = "d5477fe2230a79769d8dc68e0eabf5437907c0457a5614a9e8dddb67f65eb65d" dependencies = [ "equivalent", - "hashbrown 0.14.5", + "hashbrown 0.14.2", "serde", ] @@ -3046,9 +3110,9 @@ dependencies = [ [[package]] name = "insta" -version = "1.38.0" +version = "1.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3eab73f58e59ca6526037208f0e98851159ec1633cf17b6cd2e1f2c3fd5d53cc" +checksum = "1718b3f2b85bb5054baf8ce406e36401f27c3169205f4175504c4b1d98252d3f" dependencies = [ "console", "lazy_static", @@ -3078,7 +3142,7 @@ dependencies = [ "assert_matches", "aurora-engine-transactions", "aurora-engine-types", - "borsh 1.5.0", + "borsh 1.0.0", "bytesize", "chrono", "clap", @@ -3088,7 +3152,7 @@ dependencies = [ "futures", "hex", "insta", - "itertools 0.10.5", + "itertools", "near-actix-test-utils", "near-async", "near-chain", @@ -3118,7 +3182,7 @@ dependencies = [ "nearcore", "node-runtime", "once_cell", - "parking_lot 0.12.2", + "parking_lot 0.12.1", "primitive-types 0.10.1", "rand", "reed-solomon-erasure", @@ -3136,36 +3200,39 @@ dependencies = [ ] [[package]] -name = "ipnet" -version = "2.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3" - -[[package]] -name = "is-terminal" -version = "0.4.12" +name = "io-lifetimes" +version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f23ff5ef2b80d608d61efee834934d862cd92461afc0560dedf493e4c033738b" +checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2" dependencies = [ - "hermit-abi", + "hermit-abi 0.3.3", "libc", - "windows-sys 0.52.0", + "windows-sys 0.48.0", ] [[package]] -name = "itertools" -version = "0.10.5" +name = "ipnet" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" +checksum = "879d54834c8c76457ef4293a689b2a8c59b076067ad77b15efafbb05f92a592b" + +[[package]] +name = "is-terminal" +version = "0.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adcf93614601c8129ddf72e2d5633df827ba6551541c6d8c59520a371475be1f" dependencies = [ - "either", + "hermit-abi 0.3.3", + "io-lifetimes", + "rustix 0.37.27", + "windows-sys 0.48.0", ] [[package]] name = "itertools" -version = "0.12.1" +version = "0.10.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" +checksum = "a9a9d19fa1e79b6215ff29b9d6880b706147f16e9b1dbb1e4e5947b5b02bc5e3" dependencies = [ "either", ] @@ -3178,9 +3245,9 @@ checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" [[package]] name = "jobserver" -version = "0.1.31" +version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2b099aaa34a9751c5bf0878add70444e1ed2dd73f347be99003d4577277de6e" +checksum = "af25a77299a7f711a01975c35a6a424eb6862092cc2d6c72c4ed6cbc56dfc1fa" dependencies = [ "libc", ] @@ -3196,9 +3263,9 @@ dependencies = [ [[package]] name = "json_comments" -version = "0.2.2" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9dbbfed4e59ba9750e15ba154fdfd9329cee16ff3df539c2666b70f58cc32105" +checksum = "41ee439ee368ba4a77ac70d04f14015415af8600d6c894dc1f11bd79758c57d5" [[package]] name = "jsonwebtoken" @@ -3216,12 +3283,9 @@ dependencies = [ [[package]] name = "keccak" -version = "0.1.5" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654" -dependencies = [ - "cpufeatures", -] +checksum = "67c21572b4949434e4fc1e1978b99c5f77064153c59d998bf13ecd96fb5ecba7" [[package]] name = "keypair-generator" @@ -3261,15 +3325,15 @@ checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67" [[package]] name = "libc" -version = "0.2.154" +version = "0.2.150" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae743338b92ff9146ce83992f766a31066a91a8c84a45e0e9f21e7cf6de6d346" +checksum = "89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c" [[package]] name = "libfuzzer-sys" -version = "0.4.7" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a96cfd5557eb82f2b83fed4955246c988d331975a002961b07c81584d107e7f7" +checksum = "336244aaeab6a12df46480dc585802aa743a72d66b11937844c61bbca84c991d" dependencies = [ "arbitrary", "cc", @@ -3278,12 +3342,12 @@ dependencies = [ [[package]] name = "libloading" -version = "0.8.3" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c2a198fb6b0eada2a8df47933734e6d35d350665a33a3593d7164fa52c75c19" +checksum = "efbc0f03f9a775e9f6aed295c6a1ba2253c5757a9e03d55c6caa46a681abcddd" dependencies = [ "cfg-if 1.0.0", - "windows-targets 0.52.5", + "winapi", ] [[package]] @@ -3292,16 +3356,6 @@ version = "0.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" -[[package]] -name = "libredox" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" -dependencies = [ - "bitflags 2.5.0", - "libc", -] - [[package]] name = "librocksdb-sys" version = "0.11.0+8.1.1" @@ -3326,7 +3380,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "95b09eff1b35ed3b33b877ced3a691fc7a481919c7e29c53c906226fcf55e2a1" dependencies = [ "arrayref", - "base64 0.13.1", + "base64 0.13.0", "digest 0.9.0", "hmac-drbg", "libsecp256k1-core", @@ -3380,15 +3434,24 @@ dependencies = [ [[package]] name = "libz-sys" -version = "1.1.16" +version = "1.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e143b5e666b2695d28f6bca6497720813f699c9602dd7f5cac91008b8ada7f9" +checksum = "92e7e15d7610cce1d9752e137625f14e61a28cd45929b6e12e47b50fe154ee2e" dependencies = [ "cc", "pkg-config", "vcpkg", ] +[[package]] +name = "link-cplusplus" +version = "1.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ecd207c9c713c34f95a097a5b029ac2ce6010530c7b49d7fea24d977dede04f5" +dependencies = [ + "cc", +] + [[package]] name = "linked-hash-map" version = "0.5.6" @@ -3397,26 +3460,39 @@ checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" [[package]] name = "linux-raw-sys" -version = "0.4.13" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c" +checksum = "f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4" + +[[package]] +name = "linux-raw-sys" +version = "0.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519" + +[[package]] +name = "linux-raw-sys" +version = "0.4.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "969488b55f8ac402214f3f5fd243ebb7206cf82de60d3172994707a4bcc2b829" [[package]] name = "local-channel" -version = "0.1.5" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6cbc85e69b8df4b8bb8b89ec634e7189099cea8927a276b7384ce5488e53ec8" +checksum = "7f303ec0e94c6c54447f84f3b0ef7af769858a9c4ef56ef2a986d3dcd4c3fc9c" dependencies = [ "futures-core", "futures-sink", + "futures-util", "local-waker", ] [[package]] name = "local-waker" -version = "0.1.4" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d873d7c67ce09b42110d801813efbc9364414e356be9935700d368351657487" +checksum = "e34f76eb3611940e0e7d53a9aaa4e6a3151f69541a282fd0dad5571420c53ff1" [[package]] name = "lock_api" @@ -3429,9 +3505,9 @@ dependencies = [ [[package]] name = "lock_api" -version = "0.4.12" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" +checksum = "327fa5b6a6940e4699ec49a9beae1ea4845c6bab9314e4f84ac68742139d8c53" dependencies = [ "autocfg", "scopeguard", @@ -3439,9 +3515,12 @@ dependencies = [ [[package]] name = "log" -version = "0.4.21" +version = "0.4.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c" +checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e" +dependencies = [ + "cfg-if 1.0.0", +] [[package]] name = "lru" @@ -3458,7 +3537,7 @@ version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3262e75e648fce39813cb56ac41f3c3e3f65217ebf3844d818d1f9398cfb0dc" dependencies = [ - "hashbrown 0.14.5", + "hashbrown 0.14.2", ] [[package]] @@ -3473,9 +3552,9 @@ dependencies = [ [[package]] name = "lzma-sys" -version = "0.1.20" +version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fda04ab3764e6cde78b9974eec4f779acaba7c4e84b36eca3cf77c581b85d27" +checksum = "bdb4b7c3eddad11d3af9e86c487607d2d2442d185d848575365c4856ba96d619" dependencies = [ "cc", "libc", @@ -3491,22 +3570,13 @@ dependencies = [ "libc", ] -[[package]] -name = "mach2" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19b955cdeb2a02b9117f121ce63aa52d08ade45de53e48fe6a38b39c10f6f709" -dependencies = [ - "libc", -] - [[package]] name = "matchers" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" dependencies = [ - "regex-automata 0.1.10", + "regex-automata", ] [[package]] @@ -3517,23 +3587,22 @@ checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94" [[package]] name = "maybe-async" -version = "0.2.10" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cf92c10c7e361d6b99666ec1c6f9805b0bea2c3bd8c78dc6fe98ac5bd78db11" +checksum = "6007f9dad048e0a224f27ca599d669fca8cfa0dac804725aab542b2eb032bce6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 1.0.103", ] [[package]] name = "md-5" -version = "0.10.6" +version = "0.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf" +checksum = "66b48670c893079d3c2ed79114e3644b7004df1c361a4e0ad52e2e6940d07c3d" dependencies = [ - "cfg-if 1.0.0", - "digest 0.10.7", + "digest 0.10.6", ] [[package]] @@ -3544,17 +3613,17 @@ checksum = "490cc448043f947bae3cbee9c203358d62dbee0db12107a74be5c30ccfd09771" [[package]] name = "memchr" -version = "2.7.2" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d" +checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" [[package]] name = "memfd" -version = "0.6.4" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2cffa4ad52c6f791f4f8b15f0c05f9824b2ced1160e88cc393d64fff9a8ac64" +checksum = "b20a59d985586e4a5aef64564ac77299f8586d8be6cf9106a5a40207e8908efb" dependencies = [ - "rustix", + "rustix 0.36.9", ] [[package]] @@ -3569,9 +3638,9 @@ dependencies = [ [[package]] name = "memmap2" -version = "0.5.10" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83faa42c0a078c393f6b29d5db232d8be22776a891f8f56e5284faee4a20b327" +checksum = "057a3db23999c867821a7a59feb06a578fcb03685e983dff90daf9e7d24ac08f" dependencies = [ "libc", ] @@ -3596,18 +3665,18 @@ dependencies = [ [[package]] name = "memoffset" -version = "0.9.1" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a" +checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c" dependencies = [ "autocfg", ] [[package]] name = "mime" -version = "0.3.17" +version = "0.3.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" +checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d" [[package]] name = "mime_guess" @@ -3621,9 +3690,9 @@ dependencies = [ [[package]] name = "minidom" -version = "0.15.2" +version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f45614075738ce1b77a1768912a60c0227525971b03e09122a05b8a34a2a6278" +checksum = "9dddfe21863f8d600ed2bd1096cb9b5cd6ff984be6185cf9d563fb4a107bffc5" dependencies = [ "rxml", ] @@ -3636,9 +3705,18 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" -version = "0.7.2" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7" +checksum = "d2b29bd4bc3f33391105ebee3589c19197c4271e3e5a9ec9bfe8127eeff8f082" +dependencies = [ + "adler", +] + +[[package]] +name = "miniz_oxide" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa" dependencies = [ "adler", ] @@ -3699,9 +3777,9 @@ checksum = "7843ec2de400bcbc6a6328c958dc38e5359da6e93e72e37bc5246bf1ae776389" [[package]] name = "native-tls" -version = "0.2.11" +version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e" +checksum = "fd7e2f3618557f980e0b17e8856252eee3c97fa12c54dff0ca290fb6266ca4a9" dependencies = [ "lazy_static", "libc", @@ -3717,11 +3795,11 @@ dependencies = [ [[package]] name = "near-account-id" -version = "1.0.0" +version = "1.0.0-alpha.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35cbb989542587b47205e608324ddd391f0cee1c22b4b64ae49f458334b95907" +checksum = "d10d45a9c49c3e975c362cf4d1dc1d7b72a716b30394bea56ee2a8fb225f50b7" dependencies = [ - "borsh 1.5.0", + "borsh 1.0.0", "serde", ] @@ -3739,7 +3817,7 @@ name = "near-amend-genesis" version = "0.0.0" dependencies = [ "anyhow", - "borsh 1.5.0", + "borsh 1.0.0", "clap", "near-async", "near-chain-configs", @@ -3779,7 +3857,7 @@ dependencies = [ "pretty_assertions", "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.32", ] [[package]] @@ -3797,14 +3875,14 @@ version = "0.0.0" dependencies = [ "actix", "assert_matches", - "borsh 1.5.0", + "borsh 1.0.0", "bytesize", "chrono", "crossbeam-channel", "easy-ext", "enum-map", "insta", - "itertools 0.10.5", + "itertools", "itoa", "lru 0.7.8", "near-async", @@ -3857,7 +3935,7 @@ dependencies = [ "once_cell", "serde", "serde_json", - "sha2 0.10.8", + "sha2 0.10.6", "smart-default", "time", "tracing", @@ -3881,12 +3959,12 @@ version = "0.0.0" dependencies = [ "actix", "assert_matches", - "borsh 1.5.0", + "borsh 1.0.0", "chrono", "derive-enum-from-into", "derive_more", "futures", - "itertools 0.10.5", + "itertools", "lru 0.7.8", "near-async", "near-chain", @@ -3926,13 +4004,13 @@ dependencies = [ "anyhow", "assert_matches", "async-trait", - "borsh 1.5.0", + "borsh 1.0.0", "bytesize", "chrono", "cloud-storage", "derive_more", "futures", - "itertools 0.10.5", + "itertools", "lru 0.7.8", "near-actix-test-utils", "near-async", @@ -4012,7 +4090,7 @@ version = "0.0.0" dependencies = [ "blake2", "bolero", - "borsh 1.5.0", + "borsh 1.0.0", "bs58 0.4.0", "curve25519-dalek", "derive_more", @@ -4027,7 +4105,7 @@ dependencies = [ "secp256k1", "serde", "serde_json", - "sha2 0.10.8", + "sha2 0.10.6", "subtle", "tempfile", "thiserror", @@ -4038,7 +4116,7 @@ name = "near-database-tool" version = "0.0.0" dependencies = [ "anyhow", - "borsh 1.5.0", + "borsh 1.0.0", "clap", "indicatif", "near-chain", @@ -4076,9 +4154,9 @@ dependencies = [ name = "near-epoch-manager" version = "0.0.0" dependencies = [ - "borsh 1.5.0", + "borsh 1.0.0", "chrono", - "itertools 0.10.5", + "itertools", "near-cache", "near-chain-configs", "near-chain-primitives", @@ -4116,7 +4194,7 @@ name = "near-flat-storage" version = "0.0.0" dependencies = [ "anyhow", - "borsh 1.5.0", + "borsh 1.0.0", "clap", "near-chain", "near-chain-configs", @@ -4292,7 +4370,7 @@ version = "0.0.0" dependencies = [ "actix", "awc", - "borsh 1.5.0", + "borsh 1.0.0", "futures", "near-actix-test-utils", "near-async", @@ -4327,7 +4405,7 @@ dependencies = [ "actix", "anyhow", "async-trait", - "borsh 1.5.0", + "borsh 1.0.0", "bs58 0.4.0", "clap", "ed25519-dalek", @@ -4356,7 +4434,7 @@ dependencies = [ "secp256k1", "serde", "serde_json", - "sha2 0.10.8", + "sha2 0.10.6", "strum", "thiserror", "tokio", @@ -4373,7 +4451,7 @@ dependencies = [ "assert_matches", "async-trait", "bolero", - "borsh 1.5.0", + "borsh 1.0.0", "bytes", "bytesize", "chrono", @@ -4383,7 +4461,7 @@ dependencies = [ "futures", "futures-util", "im", - "itertools 0.10.5", + "itertools", "lru 0.7.8", "near-async", "near-crypto", @@ -4395,7 +4473,7 @@ dependencies = [ "near-store", "once_cell", "opentelemetry", - "parking_lot 0.12.2", + "parking_lot 0.12.1", "pin-project", "pretty_assertions", "protobuf 3.0.2", @@ -4406,7 +4484,7 @@ dependencies = [ "reed-solomon-erasure", "rlimit", "serde", - "sha2 0.10.8", + "sha2 0.10.6", "smart-default", "strum", "stun", @@ -4426,7 +4504,7 @@ name = "near-o11y" version = "0.0.0" dependencies = [ "actix", - "base64 0.21.7", + "base64 0.21.0", "bencher", "clap", "itoa", @@ -4441,7 +4519,7 @@ dependencies = [ "prometheus", "serde", "serde_json", - "smartstring", + "smartstring 1.0.1", "strum", "thiserror", "tokio", @@ -4456,7 +4534,7 @@ name = "near-parameters" version = "0.0.0" dependencies = [ "assert_matches", - "borsh 1.5.0", + "borsh 1.0.0", "clap", "enum-map", "insta", @@ -4491,7 +4569,7 @@ name = "near-performance-metrics-macros" version = "0.0.0" dependencies = [ "quote", - "syn 2.0.60", + "syn 2.0.32", ] [[package]] @@ -4517,7 +4595,7 @@ dependencies = [ name = "near-pool" version = "0.0.0" dependencies = [ - "borsh 1.5.0", + "borsh 1.0.0", "near-crypto", "near-o11y", "near-primitives", @@ -4531,10 +4609,10 @@ version = "0.0.0" dependencies = [ "arbitrary", "assert_matches", - "base64 0.21.7", + "base64 0.21.0", "bencher", "bolero", - "borsh 1.5.0", + "borsh 1.0.0", "bytes", "bytesize", "cfg-if 1.0.0", @@ -4545,7 +4623,7 @@ dependencies = [ "expect-test", "hex", "insta", - "itertools 0.10.5", + "itertools", "near-async", "near-crypto", "near-fmt", @@ -4577,8 +4655,8 @@ name = "near-primitives-core" version = "0.0.0" dependencies = [ "arbitrary", - "base64 0.21.7", - "borsh 1.5.0", + "base64 0.21.0", + "borsh 1.0.0", "bs58 0.4.0", "derive_more", "enum-map", @@ -4589,7 +4667,7 @@ dependencies = [ "serde", "serde_json", "serde_repr", - "sha2 0.10.8", + "sha2 0.10.6", "thiserror", ] @@ -4633,7 +4711,7 @@ dependencies = [ "quote", "serde", "serde_json", - "syn 2.0.60", + "syn 2.0.32", ] [[package]] @@ -4644,7 +4722,7 @@ dependencies = [ "near-rpc-error-core", "serde", "serde_json", - "syn 2.0.60", + "syn 2.0.32", ] [[package]] @@ -4661,7 +4739,7 @@ dependencies = [ "near-ping", "near-primitives", "once_cell", - "sha2 0.10.8", + "sha2 0.10.6", "tokio", "tracing", ] @@ -4673,7 +4751,7 @@ dependencies = [ "actix", "actix-web", "anyhow", - "borsh 1.5.0", + "borsh 1.0.0", "clap", "cloud-storage", "near-client", @@ -4702,7 +4780,7 @@ dependencies = [ "anyhow", "assert_matches", "bencher", - "borsh 1.5.0", + "borsh 1.0.0", "bytesize", "crossbeam", "derive_more", @@ -4710,7 +4788,7 @@ dependencies = [ "enum-map", "hex", "insta", - "itertools 0.10.5", + "itertools", "itoa", "lru 0.7.8", "near-async", @@ -4792,11 +4870,11 @@ version = "0.0.0" dependencies = [ "enumset", "finite-wasm", - "hashbrown 0.14.5", + "hashbrown 0.14.2", "near-vm-types", "near-vm-vm", "rkyv", - "target-lexicon 0.12.14", + "target-lexicon 0.12.3", "thiserror", "tracing", "wasmparser 0.99.0", @@ -4810,7 +4888,7 @@ dependencies = [ "dynasmrt 2.0.0", "enumset", "finite-wasm", - "hashbrown 0.14.5", + "hashbrown 0.14.2", "lazy_static", "memoffset 0.8.0", "more-asserts", @@ -4820,7 +4898,7 @@ dependencies = [ "rayon", "smallvec", "strum", - "target-lexicon 0.12.14", + "target-lexicon 0.12.3", "tracing", ] @@ -4831,7 +4909,7 @@ dependencies = [ "pretty_assertions", "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.32", "trybuild", ] @@ -4851,8 +4929,8 @@ dependencies = [ "region", "rkyv", "rustc-demangle", - "rustix", - "target-lexicon 0.12.14", + "rustix 0.38.24", + "target-lexicon 0.12.3", "thiserror", "tracing", ] @@ -4864,9 +4942,9 @@ dependencies = [ "anyhow", "arbitrary", "assert_matches", - "base64 0.21.7", + "base64 0.21.0", "bolero", - "borsh 1.5.0", + "borsh 1.0.0", "bytesize", "cov-mark", "ed25519-dalek", @@ -4896,11 +4974,11 @@ dependencies = [ "pwasm-utils", "rand", "ripemd", - "rustix", + "rustix 0.38.24", "serde", "serde_json", "serde_repr", - "sha2 0.10.8", + "sha2 0.10.6", "sha3", "strum", "tempfile", @@ -4944,7 +5022,7 @@ dependencies = [ "anyhow", "cfg-if 1.0.0", "finite-wasm", - "indexmap 1.9.3", + "indexmap 1.9.2", "more-asserts", "near-vm-compiler", "near-vm-compiler-singlepass", @@ -4956,7 +5034,7 @@ dependencies = [ "near-vm-wast", "prefix-sum-vec", "serial_test", - "target-lexicon 0.12.14", + "target-lexicon 0.12.3", "tempfile", "test-log", "thiserror", @@ -4978,7 +5056,7 @@ name = "near-vm-types" version = "0.0.0" dependencies = [ "bolero", - "indexmap 1.9.3", + "indexmap 1.9.2", "num-traits", "rkyv", "thiserror", @@ -4992,7 +5070,7 @@ dependencies = [ "cc", "cfg-if 1.0.0", "finite-wasm", - "indexmap 1.9.3", + "indexmap 1.9.2", "libc", "memoffset 0.8.0", "more-asserts", @@ -5011,7 +5089,7 @@ dependencies = [ "anyhow", "near-vm-test-api", "thiserror", - "wast 40.0.0", + "wast", ] [[package]] @@ -5033,7 +5111,7 @@ dependencies = [ "anyhow", "awc", "bencher", - "borsh 1.5.0", + "borsh 1.0.0", "bytesize", "chrono", "cloud-storage", @@ -5168,7 +5246,7 @@ name = "node-runtime" version = "0.0.0" dependencies = [ "assert_matches", - "borsh 1.5.0", + "borsh 1.0.0", "enum-map", "hex", "indicatif", @@ -5190,7 +5268,7 @@ dependencies = [ "rayon", "serde", "serde_json", - "sha2 0.10.8", + "sha2 0.10.6", "tempfile", "testlib", "thiserror", @@ -5199,9 +5277,9 @@ dependencies = [ [[package]] name = "nom" -version = "7.1.3" +version = "7.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" +checksum = "a8903e5a29a317527874d0402f867152a3d21c908bb0b933e416c65e301d4c36" dependencies = [ "memchr", "minimal-lexical", @@ -5228,11 +5306,11 @@ dependencies = [ [[package]] name = "num" -version = "0.4.2" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3135b08af27d103b0a51f2ae0f8632117b7b185ccf931445affa8df530576a41" +checksum = "b05180d69e3da0e530ba2a1dae5110317e49e3b7f3d41be227dc5f92e49ee7af" dependencies = [ - "num-bigint 0.4.4", + "num-bigint 0.4.3", "num-complex", "num-integer", "num-iter", @@ -5264,9 +5342,9 @@ dependencies = [ [[package]] name = "num-bigint" -version = "0.4.4" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0" +checksum = "f93ab6289c7b344a8a9f60f88d80aa20032336fe78da341afc91c8a2341fc75f" dependencies = [ "autocfg", "num-integer", @@ -5282,18 +5360,13 @@ dependencies = [ "num-traits", ] -[[package]] -name = "num-conv" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" - [[package]] name = "num-integer" -version = "0.1.46" +version = "0.1.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" +checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" dependencies = [ + "autocfg", "num-traits", ] @@ -5328,27 +5401,27 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0" dependencies = [ "autocfg", - "num-bigint 0.4.4", + "num-bigint 0.4.3", "num-integer", "num-traits", ] [[package]] name = "num-traits" -version = "0.2.18" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a" +checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd" dependencies = [ "autocfg", ] [[package]] name = "num_cpus" -version = "1.16.0" +version = "1.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" +checksum = "19e64526ebdee182341572e50e9ad03965aa510cd94427a4549448f285e957a1" dependencies = [ - "hermit-abi", + "hermit-abi 0.1.19", "libc", ] @@ -5360,21 +5433,30 @@ checksum = "17b02fc0ff9a9e4b35b3342880f48e896ebf69f2967921fe8646bf5b7125956a" [[package]] name = "object" -version = "0.32.2" +version = "0.30.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "03b4680b86d9cfafba8fc491dc9b6df26b68cf40e9e6cd73909194759a63c385" +dependencies = [ + "memchr", +] + +[[package]] +name = "object" +version = "0.32.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441" +checksum = "9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0" dependencies = [ "crc32fast", - "hashbrown 0.14.5", - "indexmap 2.2.6", + "hashbrown 0.14.2", + "indexmap 2.0.0", "memchr", ] [[package]] name = "once_cell" -version = "1.19.0" +version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" +checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" [[package]] name = "oorandom" @@ -5384,17 +5466,17 @@ checksum = "0ab1bc2a289d34bd04a330323ac98a1b4bc82c9d9fcb1e66b63caa84da26b575" [[package]] name = "opaque-debug" -version = "0.3.1" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" +checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" [[package]] name = "openssl" -version = "0.10.64" +version = "0.10.60" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95a0481286a310808298130d22dd1fef0fa571e05a8f44ec801801e84b216b1f" +checksum = "79a4c6c3a2b158f7f8f2a2fc5a969fa3a068df6fc9dbb4a43845436e3af7c800" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.4.1", "cfg-if 1.0.0", "foreign-types", "libc", @@ -5411,7 +5493,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.32", ] [[package]] @@ -5422,18 +5504,18 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" [[package]] name = "openssl-src" -version = "300.2.3+3.2.1" +version = "300.1.6+3.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cff92b6f71555b61bb9315f7c64da3ca43d87531622120fea0195fc761b4843" +checksum = "439fac53e092cd7442a3660c85dde4643ab3b5bd39040912388dcdabf6b88085" dependencies = [ "cc", ] [[package]] name = "openssl-sys" -version = "0.9.102" +version = "0.9.96" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c597637d56fbc83893a35eb0dd04b2b8e7a50c91e64e9493e398b5df4fb45fa2" +checksum = "3812c071ba60da8b5677cc12bcb1d42989a65553772897a7e0355545a819838f" dependencies = [ "cc", "libc", @@ -5465,7 +5547,7 @@ checksum = "1a016b8d9495c639af2145ac22387dcb88e44118e45320d9238fbf4e7889abcb" dependencies = [ "async-trait", "futures-core", - "http 0.2.12", + "http", "opentelemetry", "opentelemetry-proto", "opentelemetry-semantic-conventions", @@ -5553,17 +5635,17 @@ dependencies = [ [[package]] name = "paperclip" -version = "0.8.2" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2509afd8f138efe07cd367832289f5cc61d1eb1ec7f1eb75172abca6f7b9b66d" +checksum = "461c6d9997c512648e9cfd41575a3e0d3f46a1ec3c8214a32dd91b729487b1dc" dependencies = [ "anyhow", - "itertools 0.10.5", + "itertools", "once_cell", "paperclip-actix", "paperclip-core", "paperclip-macros", - "semver 1.0.22", + "semver 1.0.9", "serde", "serde_derive", "serde_json", @@ -5574,9 +5656,9 @@ dependencies = [ [[package]] name = "paperclip-actix" -version = "0.6.2" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4adf797da91baee514bc03b020fdd6673d2f8c1af8a859e50d6d803a4b3dddd2" +checksum = "f8e2adab1a71766521af58973719fb66bd7b92e6ce8a3acf1e83c7acc0e78e17" dependencies = [ "actix-service", "actix-web", @@ -5590,9 +5672,9 @@ dependencies = [ [[package]] name = "paperclip-core" -version = "0.6.2" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8db363c823fa71c00da73ff8cee3d6902e1ad66b770cc224a74dc7cf54de3aad" +checksum = "d53eecc65b19fa7884e3e6939e54ba5104ec179894728bca6f6cee67adfa145e" dependencies = [ "actix-web", "mime", @@ -5608,12 +5690,12 @@ dependencies = [ [[package]] name = "paperclip-macros" -version = "0.6.3" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce6e25ce2c5362c8d48dc89e0f9ca076d507f7c1eabd04f0d593cdf5addff90c" +checksum = "a0e23a129dc95a45661cbbfac1b8f865094131da7937738a343d00f47d87fada" dependencies = [ - "heck 0.4.1", - "http 0.2.12", + "heck", + "http", "lazy_static", "mime", "proc-macro-error", @@ -5621,14 +5703,14 @@ dependencies = [ "quote", "strum", "strum_macros", - "syn 1.0.109", + "syn 1.0.103", ] [[package]] name = "parity-scale-codec" -version = "3.6.9" +version = "3.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "881331e34fa842a2fb61cc2db9643a8fedc615e47cfcc52597d1af0db9a7e8fe" +checksum = "0dec8a8073036902368c2cdc0387e85ff9a37054d7e7c98e592145e0c92cd4fb" dependencies = [ "arrayvec 0.7.4", "bitvec", @@ -5644,10 +5726,10 @@ version = "3.6.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "be30eaf4b0a9fba5336683b38de57bb86d179a35862ba6bfcf57625d006bde5b" dependencies = [ - "proc-macro-crate 2.0.0", + "proc-macro-crate 2.0.2", "proc-macro2", "quote", - "syn 1.0.109", + "syn 1.0.103", ] [[package]] @@ -5669,7 +5751,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3a704eb390aafdc107b0e392f56a82b668e3a71366993b5340f5833fd62505e" dependencies = [ "lock_api 0.3.4", - "parking_lot_core 0.7.3", + "parking_lot_core 0.7.2", ] [[package]] @@ -5679,25 +5761,25 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" dependencies = [ "instant", - "lock_api 0.4.12", + "lock_api 0.4.7", "parking_lot_core 0.8.6", ] [[package]] name = "parking_lot" -version = "0.12.2" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e4af0ca4f6caed20e900d564c242b8e5d4903fdacf31d3daf527b66fe6f42fb" +checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" dependencies = [ - "lock_api 0.4.12", - "parking_lot_core 0.9.10", + "lock_api 0.4.7", + "parking_lot_core 0.9.3", ] [[package]] name = "parking_lot_core" -version = "0.7.3" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b93f386bb233083c799e6e642a9d73db98c24a5deeb95ffc85bf281255dffc98" +checksum = "d58c7c768d4ba344e3e8d72518ac13e259d7c7ade24167003b8488e10b6740a3" dependencies = [ "cfg-if 0.1.10", "cloudabi", @@ -5716,29 +5798,29 @@ dependencies = [ "cfg-if 1.0.0", "instant", "libc", - "redox_syscall 0.2.16", + "redox_syscall 0.2.13", "smallvec", "winapi", ] [[package]] name = "parking_lot_core" -version = "0.9.10" +version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" +checksum = "09a279cbf25cb0757810394fbc1e359949b59e348145c643a939a525692e6929" dependencies = [ "cfg-if 1.0.0", "libc", - "redox_syscall 0.5.1", + "redox_syscall 0.2.13", "smallvec", - "windows-targets 0.52.5", + "windows-sys 0.36.1", ] [[package]] name = "paste" -version = "1.0.14" +version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c" +checksum = "0c520e05135d6e763148b6426a837e239041653ba7becd2e538c076c738025fc" [[package]] name = "peeking_take_while" @@ -5752,33 +5834,32 @@ version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fd56cbd21fea48d0c440b41cd69c589faacade08c992d9a54e471b79d0fd13eb" dependencies = [ - "base64 0.13.1", + "base64 0.13.0", "once_cell", "regex", ] [[package]] name = "percent-encoding" -version = "2.3.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" +checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e" [[package]] name = "pest" -version = "2.7.9" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "311fb059dee1a7b802f036316d790138c613a4e8b180c822e3925a662e9f0c95" +checksum = "dbc7bc69c062e492337d74d59b120c274fd3d261b6bf6d3207d499b4b379c41a" dependencies = [ - "memchr", "thiserror", "ucd-trie", ] [[package]] name = "pest_derive" -version = "2.7.9" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f73541b156d32197eecda1a4014d7f868fd2bcb3c550d5386087cfba442bf69c" +checksum = "60b75706b9642ebcb34dab3bc7750f811609a0eb1dd8b88c2d15bf628c1c65b2" dependencies = [ "pest", "pest_generator", @@ -5786,26 +5867,26 @@ dependencies = [ [[package]] name = "pest_generator" -version = "2.7.9" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c35eeed0a3fab112f75165fdc026b3913f4183133f19b49be773ac9ea966e8bd" +checksum = "f4f9272122f5979a6511a749af9db9bfc810393f63119970d7085fed1c4ea0db" dependencies = [ "pest", "pest_meta", "proc-macro2", "quote", - "syn 2.0.60", + "syn 1.0.103", ] [[package]] name = "pest_meta" -version = "2.7.9" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2adbf29bb9776f28caece835398781ab24435585fe0d4dc1374a61db5accedca" +checksum = "4c8717927f9b79515e565a64fe46c38b8cd0427e64c40680b14a7365ab09ac8d" dependencies = [ "once_cell", "pest", - "sha2 0.10.8", + "sha1", ] [[package]] @@ -5825,14 +5906,14 @@ checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.32", ] [[package]] name = "pin-project-lite" -version = "0.2.14" +version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02" +checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116" [[package]] name = "pin-utils" @@ -5842,27 +5923,21 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "pkg-config" -version = "0.3.30" +version = "0.3.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec" +checksum = "1df8c4ec4b0627e53bdf214615ad287367e482558cf84b109250b37464dc03ae" [[package]] name = "platforms" -version = "3.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db23d408679286588f4d4644f965003d056e3dd5abcaaa938116871d7ce2fee7" - -[[package]] -name = "powerfmt" -version = "0.2.0" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" +checksum = "14e6ab3f592e6fb464fc9712d8d6e6912de6473954635fd76a589d832cffcbb0" [[package]] name = "ppv-lite86" -version = "0.2.17" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" +checksum = "eb9f9e6e233e5c4a35559a617bf40a4ec447db2e84c20b55a6f83167b7e57872" [[package]] name = "prefix-sum-vec" @@ -5888,12 +5963,12 @@ dependencies = [ [[package]] name = "prettyplease" -version = "0.2.19" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ac2cf0f2e4f42b49f5ffd07dae8d746508ef7526c13940e5f524012ae6c6550" +checksum = "1ceca8aaf45b5c46ec7ed39fff75f57290368c1846d33d24a122ca81416ab058" dependencies = [ "proc-macro2", - "syn 2.0.60", + "syn 2.0.32", ] [[package]] @@ -5926,7 +6001,7 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1d6ea3c4595b96363c13943497db34af4460fb474a95c43f4446ad341b8c9785" dependencies = [ - "toml 0.5.11", + "toml", ] [[package]] @@ -5941,20 +6016,12 @@ dependencies = [ [[package]] name = "proc-macro-crate" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e8366a6159044a37876a2b9817124296703c586a5c92e2c53751fa06d8d43e8" -dependencies = [ - "toml_edit 0.20.7", -] - -[[package]] -name = "proc-macro-crate" -version = "3.1.0" +version = "2.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284" +checksum = "b00f26d3400549137f92511a46ac1cd8ce37cb5598a96d382381458b992a5d24" dependencies = [ - "toml_edit 0.21.1", + "toml_datetime", + "toml_edit 0.20.2", ] [[package]] @@ -5966,7 +6033,7 @@ dependencies = [ "proc-macro-error-attr", "proc-macro2", "quote", - "syn 1.0.109", + "syn 1.0.103", "version_check", ] @@ -5983,15 +6050,15 @@ dependencies = [ [[package]] name = "proc-macro-hack" -version = "0.5.20+deprecated" +version = "0.5.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068" +checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5" [[package]] name = "proc-macro2" -version = "1.0.81" +version = "1.0.70" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d1597b0c024618f09a9c3b8655b7e430397a36d23fdafec26d6965e9eec3eba" +checksum = "39278fbbf5fb4f646ce651690877f89d1c5811a3d4acb27700c1cb3cdb78fd3b" dependencies = [ "unicode-ident", ] @@ -6006,8 +6073,8 @@ dependencies = [ "fnv", "lazy_static", "memchr", - "parking_lot 0.12.2", - "protobuf 2.28.0", + "parking_lot 0.12.1", + "protobuf 2.27.1", "thiserror", ] @@ -6028,17 +6095,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "19de2de2a00075bf566bee3bd4db014b11587e84184d3f7a791bc17f1a8e9e48" dependencies = [ "anyhow", - "itertools 0.12.1", + "itertools", "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.32", ] [[package]] name = "protobuf" -version = "2.28.0" +version = "2.27.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "106dd99e98437432fed6519dedecfade6a06a73bb7b2a1e019fdd2bee5778d94" +checksum = "cf7e6d18738ecd0902d30d1ad232c9125985a3422929b16c65517b38adc14f96" [[package]] name = "protobuf" @@ -6072,7 +6139,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3272369e02691aef4ff079ef97bb278afa9d15c21a41fd727654ab712e4bb297" dependencies = [ "anyhow", - "indexmap 1.9.3", + "indexmap 1.9.2", "log", "protobuf 3.0.2", "protobuf-support", @@ -6091,9 +6158,9 @@ dependencies = [ [[package]] name = "psm" -version = "0.1.21" +version = "0.1.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5787f7cda34e3033a72192c018bc5883100330f362ef279a8cbccfce8bb4e874" +checksum = "871372391786ccec00d3c5d3d6608905b3d4db263639cfe075d3b60a736d115a" dependencies = [ "cc", ] @@ -6115,7 +6182,7 @@ checksum = "16b845dbfca988fa33db069c0e230574d15a3088f147a87b64c7589eb662c9ac" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 1.0.103", ] [[package]] @@ -6131,9 +6198,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.36" +version = "1.0.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7" +checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae" dependencies = [ "proc-macro2", ] @@ -6180,14 +6247,14 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom 0.2.14", + "getrandom 0.2.9", ] [[package]] name = "rand_hc" -version = "0.3.2" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b363d4f6370f88d62bf586c80405657bde0f0e1b8945d47d2ad59b906cb4f54" +checksum = "d51e9f596de227fda2ea6c84607f5558e196eeaf43c986b724ba4fb8fdf497e7" dependencies = [ "rand_core 0.6.4", ] @@ -6212,36 +6279,39 @@ dependencies = [ [[package]] name = "rayon" -version = "1.10.0" +version = "1.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" +checksum = "bd99e5772ead8baa5215278c9b15bf92087709e9c1b2d1f97cdb5a183c933a7d" dependencies = [ + "autocfg", + "crossbeam-deque", "either", "rayon-core", ] [[package]] name = "rayon-core" -version = "1.12.1" +version = "1.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" +checksum = "258bcdb5ac6dad48491bb2992db6b7cf74878b0384908af124823d118c99683f" dependencies = [ + "crossbeam-channel", "crossbeam-deque", "crossbeam-utils", + "num_cpus", ] [[package]] name = "redis" -version = "0.23.3" +version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f49cdc0bb3f412bf8e7d1bd90fe1d9eb10bc5c399ba90973c14662a27b3f8ba" +checksum = "3ea8c51b5dc1d8e5fd3350ec8167f464ec0995e79f2e90a075b63371500d557f" dependencies = [ "combine", "itoa", "percent-encoding", "ryu", "sha1_smol", - "socket2 0.4.10", "url", ] @@ -6253,30 +6323,30 @@ checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce" [[package]] name = "redox_syscall" -version = "0.2.16" +version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" +checksum = "62f25bc4c7e55e0b0b7a1d43fb893f4fa1361d0abe38b9ce4f323c2adfe6ef42" dependencies = [ "bitflags 1.3.2", ] [[package]] name = "redox_syscall" -version = "0.5.1" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "469052894dcb553421e483e4209ee581a45100d31b4018de03e5a7ad86374a7e" +checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" dependencies = [ - "bitflags 2.5.0", + "bitflags 1.3.2", ] [[package]] name = "redox_users" -version = "0.4.5" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd283d9651eeda4b2a83a43c1c91b266c40fd76ecd39a50a8c630ae69dc72891" +checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b" dependencies = [ - "getrandom 0.2.14", - "libredox", + "getrandom 0.2.9", + "redox_syscall 0.2.13", "thiserror", ] @@ -6308,14 +6378,13 @@ dependencies = [ [[package]] name = "regex" -version = "1.10.4" +version = "1.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c" +checksum = "48aaa5748ba571fb95cd2c85c09f629215d3a6ece942baa100950af03a34f733" dependencies = [ "aho-corasick", "memchr", - "regex-automata 0.4.6", - "regex-syntax 0.8.3", + "regex-syntax", ] [[package]] @@ -6324,66 +6393,49 @@ version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" dependencies = [ - "regex-syntax 0.6.29", -] - -[[package]] -name = "regex-automata" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea" -dependencies = [ - "aho-corasick", - "memchr", - "regex-syntax 0.8.3", + "regex-syntax", ] [[package]] name = "regex-syntax" -version = "0.6.29" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" - -[[package]] -name = "regex-syntax" -version = "0.8.3" +version = "0.6.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56" +checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848" [[package]] name = "region" -version = "3.0.2" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6b6ebd13bc009aef9cd476c1310d49ac354d36e240cf1bd753290f3dc7199a7" +checksum = "76e189c2369884dce920945e2ddf79b3dff49e071a167dd1817fa9c4c00d512e" dependencies = [ "bitflags 1.3.2", "libc", - "mach2", - "windows-sys 0.52.0", + "mach", + "winapi", ] [[package]] name = "rend" -version = "0.4.2" +version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71fe3824f5629716b1589be05dacd749f6aa084c87e00e016714a8cdfccc997c" +checksum = "79af64b4b6362ffba04eef3a4e10829718a4896dac19daa741851c86781edf95" dependencies = [ "bytecheck", ] [[package]] name = "reqwest" -version = "0.11.27" +version = "0.11.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd67538700a17451e7cba03ac727fb961abb7607553461627b97de0b89cf4a62" +checksum = "13293b639a097af28fc8a90f22add145a9c954e49d77da06263d58cf44d5fb91" dependencies = [ - "base64 0.21.7", + "base64 0.21.0", "bytes", "encoding_rs", "futures-core", "futures-util", "h2", - "http 0.2.12", + "http", "http-body", "hyper", "hyper-tls", @@ -6395,12 +6447,9 @@ dependencies = [ "once_cell", "percent-encoding", "pin-project-lite", - "rustls-pemfile", "serde", "serde_json", "serde_urlencoded", - "sync_wrapper", - "system-configuration", "tokio", "tokio-native-tls", "tokio-util", @@ -6445,40 +6494,36 @@ dependencies = [ [[package]] name = "ripemd" -version = "0.1.3" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd124222d17ad93a644ed9d011a40f4fb64aa54275c08cc216524a9ea82fb09f" +checksum = "1facec54cb5e0dc08553501fa740091086d0259ad0067e0d4103448e4cb22ed3" dependencies = [ - "digest 0.10.7", + "digest 0.10.6", ] [[package]] name = "rkyv" -version = "0.7.44" +version = "0.7.38" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cba464629b3394fc4dbc6f940ff8f5b4ff5c7aef40f29166fd4ad12acbc99c0" +checksum = "517a3034eb2b1499714e9d1e49b2367ad567e07639b69776d35e259d9c27cca6" dependencies = [ - "bitvec", "bytecheck", - "bytes", "hashbrown 0.12.3", "ptr_meta", "rend", "rkyv_derive", "seahash", - "tinyvec", - "uuid", ] [[package]] name = "rkyv_derive" -version = "0.7.44" +version = "0.7.38" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7dddfff8de25e6f62b9d64e6e432bf1c6736c57d20323e15ee10435fbda7c65" +checksum = "505c209ee04111a006431abf39696e640838364d67a107c559ababaf6fd8c9dd" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 1.0.103", ] [[package]] @@ -6509,7 +6554,7 @@ checksum = "e33d7b2abe0c340d8797fe2907d3f20d3b5ea5908683618bfe80df7f621f672a" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 1.0.103", ] [[package]] @@ -6527,7 +6572,7 @@ name = "runtime-params-estimator" version = "0.0.0" dependencies = [ "anyhow", - "borsh 1.5.0", + "borsh 1.0.0", "bs58 0.4.0", "bytesize", "cfg-if 1.0.0", @@ -6554,7 +6599,7 @@ dependencies = [ "rand", "rand_xorshift", "rocksdb", - "rustix", + "rustix 0.38.24", "serde_json", "tempfile", "tracing", @@ -6605,7 +6650,7 @@ version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "549b9d036d571d42e6e85d1c1425e2ac83491075078ca9a15be021c56b1641f2" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.4.1", "chrono", "fallible-iterator 0.2.0", "fallible-streaming-iterator", @@ -6633,12 +6678,12 @@ dependencies = [ "async-trait", "aws-creds", "aws-region", - "base64 0.13.1", + "base64 0.13.0", "block_on_proc", "cfg-if 1.0.0", "hex", "hmac 0.12.1", - "http 0.2.12", + "http", "log", "maybe-async", "md5", @@ -6648,7 +6693,7 @@ dependencies = [ "serde", "serde-xml-rs", "serde_derive", - "sha2 0.10.8", + "sha2 0.10.6", "thiserror", "time", "tokio", @@ -6658,9 +6703,9 @@ dependencies = [ [[package]] name = "rustc-demangle" -version = "0.1.23" +version = "0.1.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" +checksum = "7ef03e0a2b150c7a90d01faf6254c9c48a41e95fb2a8c2ac1c6f0d2b9aefc342" [[package]] name = "rustc-hash" @@ -6689,29 +6734,48 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" dependencies = [ - "semver 1.0.22", + "semver 1.0.9", ] [[package]] name = "rustix" -version = "0.38.34" +version = "0.36.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f" +checksum = "fd5c6ff11fecd55b40746d1995a02f2eb375bf8c00d192d521ee09f42bef37bc" dependencies = [ - "bitflags 2.5.0", - "errno 0.3.8", + "bitflags 1.3.2", + "errno 0.2.8", + "io-lifetimes", "libc", - "linux-raw-sys", - "windows-sys 0.52.0", + "linux-raw-sys 0.1.4", + "windows-sys 0.45.0", ] [[package]] -name = "rustls-pemfile" -version = "1.0.4" +name = "rustix" +version = "0.37.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c" +checksum = "fea8ca367a3a01fe35e6943c400addf443c0f57670e6ec51196f71a4b8762dd2" dependencies = [ - "base64 0.21.7", + "bitflags 1.3.2", + "errno 0.3.1", + "io-lifetimes", + "libc", + "linux-raw-sys 0.3.8", + "windows-sys 0.48.0", +] + +[[package]] +name = "rustix" +version = "0.38.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ad981d6c340a49cdc40a1028d9c6084ec7e9fa33fcb839cab656a267071e234" +dependencies = [ + "bitflags 2.4.1", + "errno 0.3.1", + "libc", + "linux-raw-sys 0.4.11", + "windows-sys 0.48.0", ] [[package]] @@ -6722,26 +6786,28 @@ checksum = "80af6f9131f277a45a3fba6ce8e2258037bb0477a67e610d3c1fe046ab31de47" [[package]] name = "rxml" -version = "0.9.1" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a98f186c7a2f3abbffb802984b7f1dfd65dac8be1aafdaabbca4137f53f0dff7" +checksum = "1a071866b8c681dc2cfffa77184adc32b57b0caad4e620b6292609703bceb804" dependencies = [ "bytes", + "pin-project-lite", "rxml_validation", - "smartstring", + "smartstring 0.2.10", + "tokio", ] [[package]] name = "rxml_validation" -version = "0.9.1" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22a197350ece202f19a166d1ad6d9d6de145e1d2a8ef47db299abe164dbd7530" +checksum = "53bc79743f9a66c2fb1f951cd83735f275d46bfe466259fbc5897bb60a0d00ee" [[package]] name = "ryu" -version = "1.0.17" +version = "1.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1" +checksum = "f3f6f92acf49d1b98f7a81226834412ada05458b7364277387724a237f062695" [[package]] name = "same-file" @@ -6754,9 +6820,9 @@ dependencies = [ [[package]] name = "scale-info" -version = "2.11.2" +version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c453e59a955f81fb62ee5d596b450383d699f152d350e9d23a0db2adb78e4c0" +checksum = "2ef2175c2907e7c8bc0a9c3f86aeb5ec1f3b275300ad58a44d0c3ae379a5e52e" dependencies = [ "cfg-if 1.0.0", "derive_more", @@ -6766,30 +6832,37 @@ dependencies = [ [[package]] name = "scale-info-derive" -version = "2.11.2" +version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18cf6c6447f813ef19eb450e985bcce6705f9ce7660db221b59093d15c79c4b7" +checksum = "634d9b8eb8fd61c5cdd3390d9b2132300a7e7618955b98b8416f118c1b4e144f" dependencies = [ "proc-macro-crate 1.3.1", "proc-macro2", "quote", - "syn 1.0.109", + "syn 1.0.103", ] [[package]] name = "schannel" -version = "0.1.23" +version = "0.1.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534" +checksum = "8f05ba609c234e60bee0d547fe94a4c7e9da733d1c962cf6e59efa4cd9c8bc75" dependencies = [ - "windows-sys 0.52.0", + "lazy_static", + "winapi", ] [[package]] name = "scopeguard" -version = "1.2.0" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" +checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" + +[[package]] +name = "scratch" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1792db035ce95be60c3f8853017b3999209281c24e2ba5bc8e59bf97a0c590c1" [[package]] name = "seahash" @@ -6818,9 +6891,9 @@ dependencies = [ [[package]] name = "security-framework" -version = "2.10.0" +version = "2.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "770452e37cad93e0a50d5abc3990d2bc351c36d0328f86cefec2f2fb206eaef6" +checksum = "2dc14f172faf8a0194a3aded622712b0de276821addc574fa54fc0a1167e10dc" dependencies = [ "bitflags 1.3.2", "core-foundation", @@ -6831,9 +6904,9 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "2.10.0" +version = "2.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41f3cc463c0ef97e11c3461a9d3787412d30e8e7eb907c79180c4a57bf7c04ef" +checksum = "0160a13a177a45bfb43ce71c01580998474f556ad854dcbca936dd2841a5c556" dependencies = [ "core-foundation-sys", "libc", @@ -6850,9 +6923,9 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.22" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca" +checksum = "8cb243bdfdb5936c8dc3c45762a19d12ab4550cdc753bc247637d4ec35a040fd" dependencies = [ "serde", ] @@ -6865,9 +6938,9 @@ checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" [[package]] name = "serde" -version = "1.0.199" +version = "1.0.192" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c9f6e76df036c77cd94996771fb40db98187f096dd0b9af39c6c6e452ba966a" +checksum = "bca2a08484b285dcb282d0f67b26cadc0df8b19f8c12502c13d966bf9482f001" dependencies = [ "serde_derive", ] @@ -6896,40 +6969,40 @@ dependencies = [ [[package]] name = "serde_bytes" -version = "0.11.14" +version = "0.11.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b8497c313fd43ab992087548117643f6fcd935cbf36f176ffda0aacf9591734" +checksum = "212e73464ebcde48d723aa02eb270ba62eff38a9b732df31f33f1b4e145f3a54" dependencies = [ "serde", ] [[package]] name = "serde_derive" -version = "1.0.199" +version = "1.0.192" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11bd257a6541e141e42ca6d24ae26f7714887b47e89aa739099104c7e4d3b7fc" +checksum = "d6c7207fbec9faa48073f3e3074cbe553af6ea512d7c21ba46e434e70ea9fbc1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.32", ] [[package]] name = "serde_ignored" -version = "0.1.10" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8e319a36d1b52126a0d608f24e93b2d81297091818cd70625fcf50a15d84ddf" +checksum = "1940036ca2411651a40012009d062087dfe62817b2191a03750fb569e11fa633" dependencies = [ "serde", ] [[package]] name = "serde_json" -version = "1.0.116" +version = "1.0.81" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e17db7126d17feb94eb3fad46bf1a96b034e8aacbc2e775fe81505f8b0b2813" +checksum = "9b7ce2b32a1aed03c558dc61a5cd328f15aff2dbc17daad8fb8af04d2100e15c" dependencies = [ - "indexmap 2.2.6", + "indexmap 1.9.2", "itoa", "ryu", "serde", @@ -6937,22 +7010,13 @@ dependencies = [ [[package]] name = "serde_repr" -version = "0.1.19" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" +checksum = "a2ad84e47328a31223de7fed7a4f5087f2d6ddfe586cf3ca25b7a165bc0a5aed" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", -] - -[[package]] -name = "serde_spanned" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1" -dependencies = [ - "serde", + "syn 1.0.103", ] [[package]] @@ -6969,17 +7033,15 @@ dependencies = [ [[package]] name = "serde_with" -version = "3.8.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ad483d2ab0149d5a5ebcd9972a3852711e0153d863bf5a5d0391d28883c4a20" +checksum = "9f02d8aa6e3c385bf084924f660ce2a3a6bd333ba55b35e8590b321f35d88513" dependencies = [ - "base64 0.22.0", + "base64 0.21.0", "chrono", "hex", - "indexmap 1.9.3", - "indexmap 2.2.6", + "indexmap 1.9.2", "serde", - "serde_derive", "serde_json", "serde_with_macros", "time", @@ -6987,23 +7049,23 @@ dependencies = [ [[package]] name = "serde_with_macros" -version = "3.8.1" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65569b702f41443e8bc8bbb1c5779bd0450bbe723b56198980e80ec45780bce2" +checksum = "edc7d5d3932fb12ce722ee5e64dd38c504efba37567f0c402f6ca728c3b8b070" dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.32", ] [[package]] name = "serde_yaml" -version = "0.9.34+deprecated" +version = "0.9.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" +checksum = "92b5b431e8907b50339b51223b97d102db8d987ced36f6e4d03621db9316c834" dependencies = [ - "indexmap 2.2.6", + "indexmap 1.9.2", "itoa", "ryu", "serde", @@ -7017,7 +7079,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e0bccbcf40c8938196944a3da0e133e031a33f4d6b72db3bda3cc556e361905d" dependencies = [ "lazy_static", - "parking_lot 0.11.2", + "parking_lot 0.10.2", "serial_test_derive", ] @@ -7029,18 +7091,18 @@ checksum = "b2acd6defeddb41eb60bb468f8825d0cfd0c2a76bc03bfd235b6a1dc4f6a1ad5" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 1.0.103", ] [[package]] name = "sha1" -version = "0.10.6" +version = "0.10.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" +checksum = "f04293dc80c3993519f2d7f6f511707ee7094fe0c6d3406feb330cdb3540eba3" dependencies = [ "cfg-if 1.0.0", "cpufeatures", - "digest 0.10.7", + "digest 0.10.6", ] [[package]] @@ -7064,30 +7126,30 @@ dependencies = [ [[package]] name = "sha2" -version = "0.10.8" +version = "0.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" +checksum = "82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0" dependencies = [ "cfg-if 1.0.0", "cpufeatures", - "digest 0.10.7", + "digest 0.10.6", ] [[package]] name = "sha3" -version = "0.10.8" +version = "0.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60" +checksum = "bdf0c33fae925bdc080598b84bc15c55e7b9a4a43b3c704da051f977469691c9" dependencies = [ - "digest 0.10.7", + "digest 0.10.6", "keccak", ] [[package]] name = "sharded-slab" -version = "0.1.7" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" +checksum = "900fba806f70c630b0a382d0d825e17a0f19fcd059a2ade1ff237bcddf446b31" dependencies = [ "lazy_static", ] @@ -7100,9 +7162,9 @@ checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" [[package]] name = "signal-hook" -version = "0.3.17" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8621587d4798caf8eb44879d42e56b9a93ea5dcd315a6487c357130095b62801" +checksum = "a253b5e89e2698464fc26b545c9edceb338e18a89effeeecfea192c3025be29d" dependencies = [ "libc", "signal-hook-registry", @@ -7121,9 +7183,9 @@ dependencies = [ [[package]] name = "signal-hook-registry" -version = "1.4.2" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1" +checksum = "e51e73328dc4ac0c7ccbda3a494dfa03df1de2f46018127f60c693f2648455b0" dependencies = [ "libc", ] @@ -7134,17 +7196,11 @@ version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" -[[package]] -name = "simdutf8" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f27f6278552951f1f2b8cf9da965d10969b2efdea95a6ec47987ab46edfe263a" - [[package]] name = "similar" -version = "2.5.0" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa42c91313f1d05da9b26f267f931cf178d4aba455b4c4622dd7355eb80c6640" +checksum = "2e24979f63a11545f5f2c60141afe249d4f19f84581ea2138065e400941d83d3" [[package]] name = "simple_asn1" @@ -7169,24 +7225,21 @@ dependencies = [ [[package]] name = "slab" -version = "0.4.9" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" -dependencies = [ - "autocfg", -] +checksum = "eb703cfe953bccee95685111adeedb76fabe4e97549a58d16f03ea7b9367bb32" [[package]] name = "slice-group-by" -version = "0.3.1" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "826167069c09b99d56f31e9ae5c99049e932a98c9dc2dac47645b08dbbf76ba7" +checksum = "03b634d87b960ab1a38c4fe143b508576f075e7c978bfad18217645ebfdfa2ec" [[package]] name = "smallvec" -version = "1.13.2" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" +checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0" [[package]] name = "smart-default" @@ -7196,45 +7249,44 @@ checksum = "133659a15339456eeeb07572eb02a91c91e9815e9cbc89566944d2c8d3efdbf6" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 1.0.103", ] [[package]] name = "smartstring" -version = "1.0.1" +version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fb72c633efbaa2dd666986505016c32c3044395ceaf881518399d2f4127ee29" +checksum = "e714dff2b33f2321fdcd475b71cec79781a692d846f37f415fb395a1d2bcd48e" dependencies = [ - "autocfg", "static_assertions", - "version_check", ] [[package]] -name = "socket2" -version = "0.4.10" +name = "smartstring" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d" +checksum = "3fb72c633efbaa2dd666986505016c32c3044395ceaf881518399d2f4127ee29" dependencies = [ - "libc", - "winapi", + "autocfg", + "static_assertions", + "version_check", ] [[package]] name = "socket2" -version = "0.5.7" +version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c" +checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662" dependencies = [ "libc", - "windows-sys 0.52.0", + "winapi", ] [[package]] name = "speedy_sync" version = "0.0.0" dependencies = [ - "borsh 1.5.0", + "borsh 1.0.0", "clap", "near-async", "near-chain", @@ -7278,13 +7330,13 @@ version = "0.0.0" dependencies = [ "actix", "anyhow", - "borsh 1.5.0", + "borsh 1.0.0", "bytesize", "chrono", "clap", "cloud-storage", "insta", - "itertools 0.10.5", + "itertools", "near-async", "near-chain", "near-chain-configs", @@ -7361,32 +7413,26 @@ version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" -[[package]] -name = "strsim" -version = "0.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" - [[package]] name = "strum" -version = "0.24.1" +version = "0.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f" +checksum = "e96acfc1b70604b8b2f1ffa4c57e59176c7dbb05d556c71ecd2f5498a1dee7f8" dependencies = [ "strum_macros", ] [[package]] name = "strum_macros" -version = "0.24.3" +version = "0.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59" +checksum = "6878079b17446e4d3eba6192bb0a2950d5b14f0ed8424b852310e5a94345d0ef" dependencies = [ - "heck 0.4.1", + "heck", "proc-macro2", "quote", "rustversion", - "syn 1.0.109", + "syn 1.0.103", ] [[package]] @@ -7395,7 +7441,7 @@ version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a7e94b1ec00bad60e6410e058b52f1c66de3dc5fe4d62d09b3e52bb7d3b73e25" dependencies = [ - "base64 0.13.1", + "base64 0.13.0", "crc", "lazy_static", "md-5", @@ -7410,15 +7456,15 @@ dependencies = [ [[package]] name = "subtle" -version = "2.5.0" +version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" +checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601" [[package]] name = "syn" -version = "1.0.109" +version = "1.0.103" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" +checksum = "a864042229133ada95abf3b54fdc62ef5ccabe9515b64717bcb9a1919e59445d" dependencies = [ "proc-macro2", "quote", @@ -7427,9 +7473,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.60" +version = "2.0.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "909518bc7b1c9b779f1bbf07f2929d35af9f0f37e47c6e9ef7f9dddc1e1821f3" +checksum = "239814284fd6f1a4ffe4ca893952cdd93c224b6a1571c9a9eadd670295c0c9e2" dependencies = [ "proc-macro2", "quote", @@ -7438,14 +7484,14 @@ dependencies = [ [[package]] name = "syn_derive" -version = "0.1.8" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1329189c02ff984e9736652b1631330da25eaa6bc639089ed4915d25446cbe7b" +checksum = "8128874d02f9a114ade6d9ad252078cb32d3cb240e26477ac73d7e9c495c605e" dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.32", ] [[package]] @@ -7456,9 +7502,9 @@ checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" [[package]] name = "sysinfo" -version = "0.24.7" +version = "0.24.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54cb4ebf3d49308b99e6e9dc95e989e2fdbdc210e4f67c39db0bb89ba927001c" +checksum = "7d80929a3b477bce3a64360ca82bfb361eacce1dcb7b1fb31e8e5e181e37c212" dependencies = [ "cfg-if 1.0.0", "core-foundation-sys", @@ -7469,27 +7515,6 @@ dependencies = [ "winapi", ] -[[package]] -name = "system-configuration" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" -dependencies = [ - "bitflags 1.3.2", - "core-foundation", - "system-configuration-sys", -] - -[[package]] -name = "system-configuration-sys" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9" -dependencies = [ - "core-foundation-sys", - "libc", -] - [[package]] name = "tap" version = "1.0.1" @@ -7504,50 +7529,41 @@ checksum = "ab0e7238dcc7b40a7be719a25365910f6807bd864f4cce6b2e6b873658e2b19d" [[package]] name = "target-lexicon" -version = "0.12.14" +version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1fc403891a21bcfb7c37834ba66a547a8f402146eba7265b5a6d88059c9ff2f" +checksum = "d7fa7e55043acb85fca6b3c01485a2eeb6b69c5d21002e273c79e465f43b7ac1" [[package]] name = "tempfile" -version = "3.10.1" +version = "3.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1" +checksum = "7ef1adac450ad7f4b3c28589471ade84f25f731a7a0fe30d71dfa9f60fd808e5" dependencies = [ "cfg-if 1.0.0", "fastrand", - "rustix", - "windows-sys 0.52.0", + "redox_syscall 0.4.1", + "rustix 0.38.24", + "windows-sys 0.48.0", ] [[package]] name = "termcolor" -version = "1.4.1" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755" +checksum = "bab24d30b911b2376f3a13cc2cd443142f0c81dda04c118693e35b3835757755" dependencies = [ "winapi-util", ] [[package]] name = "test-log" -version = "0.2.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3dffced63c2b5c7be278154d76b479f9f9920ed34e7574201407f0b14e2bbb93" -dependencies = [ - "test-log-macros", - "tracing-subscriber", -] - -[[package]] -name = "test-log-macros" -version = "0.2.16" +version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5999e24eaa32083191ba4e425deb75cdf25efefabe5aaccb7446dd0d4122a3f5" +checksum = "38f0c854faeb68a048f0f2dc410c5ddae3bf83854ef0e4977d58306a5edef50e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 1.0.103", ] [[package]] @@ -7570,56 +7586,56 @@ version = "0.0.0" dependencies = [ "anyhow", "cargo_metadata", - "semver 1.0.22", + "semver 1.0.9", "serde", - "toml 0.5.11", + "toml", ] [[package]] name = "thiserror" -version = "1.0.59" +version = "1.0.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0126ad08bff79f29fc3ae6a55cc72352056dfff61e3ff8bb7129476d44b23aa" +checksum = "f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.59" +version = "1.0.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1cd413b5d558b4c5bf3680e324a6fa5014e7b7c067a51e69dbdf47eb7148b66" +checksum = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.32", ] [[package]] name = "thread_local" -version = "1.1.8" +version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c" +checksum = "5516c27b78311c50bf42c071425c560ac799b11c30b31f87e3081965fe5e0180" dependencies = [ - "cfg-if 1.0.0", "once_cell", ] [[package]] name = "tikv-jemalloc-sys" -version = "0.5.4+5.3.0-patched" +version = "0.5.2+5.3.0-patched" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9402443cb8fd499b6f327e40565234ff34dbda27460c5b47db0db77443dd85d1" +checksum = "ec45c14da997d0925c7835883e4d5c181f196fa142f8c19d7643d1e9af2592c3" dependencies = [ "cc", + "fs_extra", "libc", ] [[package]] name = "tikv-jemallocator" -version = "0.5.4" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "965fe0c26be5c56c94e38ba547249074803efd52adfb66de62107d95aab3eaca" +checksum = "20612db8a13a6c06d57ec83953694185a367e16945f66565e8028d2c0bd76979" dependencies = [ "libc", "tikv-jemalloc-sys", @@ -7627,14 +7643,11 @@ dependencies = [ [[package]] name = "time" -version = "0.3.36" +version = "0.3.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885" +checksum = "8f3403384eaacbca9923fa06940178ac13e4edb725486d70e8e15881d0c836cc" dependencies = [ - "deranged", "itoa", - "num-conv", - "powerfmt", "serde", "time-core", "time-macros", @@ -7642,17 +7655,16 @@ dependencies = [ [[package]] name = "time-core" -version = "0.1.2" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" +checksum = "7300fbefb4dadc1af235a9cef3737cea692a9d97e1b9cbcd4ebdae6f8868e6fb" [[package]] name = "time-macros" -version = "0.2.18" +version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf" +checksum = "372950940a5f07bf38dbe211d7283c9e6d7327df53794992d293e534c733d09b" dependencies = [ - "num-conv", "time-core", ] @@ -7686,25 +7698,26 @@ dependencies = [ [[package]] name = "tinyvec_macros" -version = "0.1.1" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" +checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" [[package]] name = "tokio" -version = "1.37.0" +version = "1.29.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1adbebffeca75fcfd058afa480fb6c0b81e165a0323f9c9d39c9697e37c46787" +checksum = "532826ff75199d5833b9d2c5fe410f29235e25704ee5f0ef599fb51c21f4a4da" dependencies = [ + "autocfg", "backtrace", "bytes", "libc", "mio", "num_cpus", - "parking_lot 0.12.2", + "parking_lot 0.12.1", "pin-project-lite", "signal-hook-registry", - "socket2 0.5.7", + "socket2", "tokio-macros", "windows-sys 0.48.0", ] @@ -7721,20 +7734,20 @@ dependencies = [ [[package]] name = "tokio-macros" -version = "2.2.0" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b" +checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.32", ] [[package]] name = "tokio-native-tls" -version = "0.3.1" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2" +checksum = "f7d995660bd2b7f8c1568414c1126076c13fbb725c40112dc0120b78eb9b717b" dependencies = [ "native-tls", "tokio", @@ -7742,9 +7755,9 @@ dependencies = [ [[package]] name = "tokio-openssl" -version = "0.6.4" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ffab79df67727f6acf57f1ff743091873c24c579b1e2ce4d8f53e47ded4d63d" +checksum = "c08f9ffb7809f1b20c1b398d92acf4cc719874b3b2b2d9ea2f09b4a80350878a" dependencies = [ "futures-util", "openssl", @@ -7754,9 +7767,9 @@ dependencies = [ [[package]] name = "tokio-stream" -version = "0.1.15" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "267ac89e0bec6e691e5813911606935d77c476ff49024f98abcea3e7b15e37af" +checksum = "df54d54117d6fdc4e4fea40fe1e4e566b3505700e148a6827e59b34b0d2600d9" dependencies = [ "futures-core", "pin-project-lite", @@ -7765,9 +7778,9 @@ dependencies = [ [[package]] name = "tokio-util" -version = "0.7.10" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15" +checksum = "f988a1a1adc2fb21f9c12aa96441da33a1728193ae0b95d2be22dbd17fcb4e5c" dependencies = [ "bytes", "futures-core", @@ -7779,33 +7792,18 @@ dependencies = [ [[package]] name = "toml" -version = "0.5.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234" -dependencies = [ - "serde", -] - -[[package]] -name = "toml" -version = "0.8.12" +version = "0.5.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9dd1545e8208b4a5af1aa9bbd0b4cf7e9ea08fabc5d0a5c67fcaafa17433aa3" +checksum = "8d82e1a7758622a465f8cee077614c73484dac5b836c02ff6a40d5d1010324d7" dependencies = [ "serde", - "serde_spanned", - "toml_datetime", - "toml_edit 0.22.12", ] [[package]] name = "toml_datetime" -version = "0.6.5" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1" -dependencies = [ - "serde", -] +checksum = "7cda73e2f1397b1262d6dfdcef8aafae14d1de7748d66822d3bfeeb6d03e5e4b" [[package]] name = "toml_edit" @@ -7813,44 +7811,20 @@ version = "0.19.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" dependencies = [ - "indexmap 2.2.6", + "indexmap 2.0.0", "toml_datetime", - "winnow 0.5.40", + "winnow", ] [[package]] name = "toml_edit" -version = "0.20.7" +version = "0.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70f427fce4d84c72b5b732388bf4a9f4531b53f74e2887e3ecb2481f68f66d81" +checksum = "396e4d48bbb2b7554c944bde63101b5ae446cff6ec4a24227428f15eb72ef338" dependencies = [ - "indexmap 2.2.6", + "indexmap 2.0.0", "toml_datetime", - "winnow 0.5.40", -] - -[[package]] -name = "toml_edit" -version = "0.21.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1" -dependencies = [ - "indexmap 2.2.6", - "toml_datetime", - "winnow 0.5.40", -] - -[[package]] -name = "toml_edit" -version = "0.22.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3328d4f68a705b2a4498da1d580585d39a6510f98318a2cec3018a7ec61ddef" -dependencies = [ - "indexmap 2.2.6", - "serde", - "serde_spanned", - "toml_datetime", - "winnow 0.6.7", + "winnow", ] [[package]] @@ -7862,10 +7836,10 @@ dependencies = [ "async-stream", "async-trait", "axum", - "base64 0.21.7", + "base64 0.21.0", "bytes", "h2", - "http 0.2.12", + "http", "http-body", "hyper", "hyper-timeout", @@ -7888,7 +7862,7 @@ checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" dependencies = [ "futures-core", "futures-util", - "indexmap 1.9.3", + "indexmap 1.9.2", "pin-project", "pin-project-lite", "rand", @@ -7908,9 +7882,9 @@ checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0" [[package]] name = "tower-service" -version = "0.3.2" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" +checksum = "360dfd1d6d30e05fda32ace2c8c70e9c0a9da713275777f5a4dbb8a1893930c6" [[package]] name = "tqdm" @@ -7953,7 +7927,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.32", ] [[package]] @@ -8035,23 +8009,23 @@ dependencies = [ [[package]] name = "try-lock" -version = "0.2.5" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" +checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642" [[package]] name = "trybuild" -version = "1.0.91" +version = "1.0.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ad7eb6319ebadebca3dacf1f85a93bc54b73dd81b9036795f73de7ddfe27d5a" +checksum = "501dbdbb99861e4ab6b60eb6a7493956a9defb644fd034bc4a5ef27c693c8a3a" dependencies = [ + "basic-toml", "glob", "once_cell", "serde", "serde_derive", "serde_json", "termcolor", - "toml 0.8.12", ] [[package]] @@ -8061,7 +8035,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4712ee30d123ec7ae26d1e1b218395a16c87cdbaf4b3925d170d684af62ea5e8" dependencies = [ "async-trait", - "base64 0.13.1", + "base64 0.13.0", "futures", "log", "md-5", @@ -8075,9 +8049,9 @@ dependencies = [ [[package]] name = "typenum" -version = "1.17.0" +version = "1.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" +checksum = "dcf81ac59edc17cc8697ff311e8f5ef2d99fcbd9817b34cec66f90b6c3dfd987" [[package]] name = "ucd-trie" @@ -8099,45 +8073,45 @@ dependencies = [ [[package]] name = "unicase" -version = "2.7.0" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7d2d4dafb69621809a81864c9c1b864479e1235c0dd4e199924b9742439ed89" +checksum = "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6" dependencies = [ "version_check", ] [[package]] name = "unicode-bidi" -version = "0.3.15" +version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75" +checksum = "099b7128301d285f79ddd55b9a83d5e6b9e97c92e0ea0daebee7263e932de992" [[package]] name = "unicode-ident" -version = "1.0.12" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" +checksum = "6ceab39d59e4c9499d4e5a8ee0e2735b891bb7308ac83dfb4e80cad195c9f6f3" [[package]] name = "unicode-normalization" -version = "0.1.23" +version = "0.1.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5" +checksum = "d54590932941a9e9266f0832deed84ebe1bf2e4c9e4a3554d393d18f5e854bf9" dependencies = [ "tinyvec", ] [[package]] name = "unicode-width" -version = "0.1.12" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68f5e5f3158ecfd4b8ff6fe086db7c8467a2dfdac97fe420f2b7c4aa97af66d6" +checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973" [[package]] name = "unsafe-libyaml" -version = "0.2.11" +version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861" +checksum = "ab4c90930b95a82d00dc9e9ac071b4991924390d46cbd0dfe566148667605e4b" [[package]] name = "untrusted" @@ -8147,9 +8121,9 @@ checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" [[package]] name = "url" -version = "2.5.0" +version = "2.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633" +checksum = "0d68c799ae75762b8c3fe375feb6600ef5602c883c5d21eb51c09f22b83c4643" dependencies = [ "form_urlencoded", "idna", @@ -8170,9 +8144,9 @@ checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" [[package]] name = "uuid" -version = "1.8.0" +version = "1.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0" +checksum = "345444e32442451b267fc254ae85a209c64be56d2890e601a0c37ff0c3c5ecd2" [[package]] name = "valuable" @@ -8200,20 +8174,22 @@ checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" [[package]] name = "walkdir" -version = "2.5.0" +version = "2.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" +checksum = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56" dependencies = [ "same-file", + "winapi", "winapi-util", ] [[package]] name = "want" -version = "0.3.1" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" +checksum = "1ce8a968cb1cd110d136ff8b819a556d6fb6d919363c61534f6860c7eb172ba0" dependencies = [ + "log", "try-lock", ] @@ -8250,15 +8226,15 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.32", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.42" +version = "0.4.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0" +checksum = "6f741de44b75e14c35df886aff5f1eb73aa114fa5d4d00dcd37b5e01259bf3b2" dependencies = [ "cfg-if 1.0.0", "js-sys", @@ -8284,7 +8260,7 @@ checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.32", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -8297,9 +8273,9 @@ checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96" [[package]] name = "wasm-encoder" -version = "0.12.0" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b47b995b096a689358ca9de6c727b94351b95b390dbbf6b7021c22797d36caa" +checksum = "a35138d119147af92d7e44ae0f052f6496ee5f38e7c0cad3e0338befdb8f3753" dependencies = [ "leb128", ] @@ -8322,34 +8298,25 @@ dependencies = [ "leb128", ] -[[package]] -name = "wasm-encoder" -version = "0.206.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d759312e1137f199096d80a70be685899cd7d3d09c572836bb2e9b69b4dc3b1e" -dependencies = [ - "leb128", -] - [[package]] name = "wasm-smith" -version = "0.10.1" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb87569c81c298836d88405a28a68e8dfcd43b75220a4b4522831a63921b7dbc" +checksum = "50b4138c138f975e29dbd3ceea3a8d3ea2bb43f71abd4b236640d0cb14cb8ef7" dependencies = [ "arbitrary", "flagset", - "indexmap 1.9.3", + "indexmap 1.9.2", "leb128", - "wasm-encoder 0.12.0", - "wasmparser 0.85.0", + "wasm-encoder 0.11.0", + "wasmparser 0.84.0", ] [[package]] name = "wasm-streams" -version = "0.4.0" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b65dc4c90b63b118468cf747d8bf3566c1913ef60be765b5730ead9e0a3ba129" +checksum = "6bbae3363c08332cadccd13b67db371814cd214c2524020932f0804b8cf7c078" dependencies = [ "futures-util", "js-sys", @@ -8367,7 +8334,7 @@ dependencies = [ "enumset", "rkyv", "smallvec", - "target-lexicon 0.12.14", + "target-lexicon 0.12.3", "thiserror", "wasmer-types-near", "wasmer-vm-near", @@ -8405,7 +8372,7 @@ dependencies = [ "memmap2", "more-asserts", "rustc-demangle", - "target-lexicon 0.12.14", + "target-lexicon 0.12.3", "thiserror", "wasmer-compiler-near", "wasmer-types-near", @@ -8444,7 +8411,7 @@ dependencies = [ "digest 0.8.1", "errno 0.2.8", "hex", - "indexmap 1.9.3", + "indexmap 1.9.2", "lazy_static", "libc", "nix 0.15.0", @@ -8501,7 +8468,7 @@ version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1ba154adffb0fbd33f5dabd3788a1744d846b43e6e090d44269c7ee8fa5743e4" dependencies = [ - "indexmap 1.9.3", + "indexmap 1.9.2", "rkyv", "thiserror", ] @@ -8515,7 +8482,7 @@ dependencies = [ "backtrace", "cc", "cfg-if 1.0.0", - "indexmap 1.9.3", + "indexmap 1.9.2", "libc", "memoffset 0.6.5", "more-asserts", @@ -8540,11 +8507,11 @@ checksum = "52144d4c78e5cf8b055ceab8e5fa22814ce4315d6002ad32cfd914f37c12fd65" [[package]] name = "wasmparser" -version = "0.85.0" +version = "0.84.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "570460c58b21e9150d2df0eaaedbb7816c34bcec009ae0dcc976e40ba81463e7" +checksum = "77dc97c22bb5ce49a47b745bed8812d30206eff5ef3af31424f2c1820c0974b2" dependencies = [ - "indexmap 1.9.3", + "indexmap 1.9.2", ] [[package]] @@ -8553,7 +8520,7 @@ version = "0.99.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ef3b717afc67f848f412d4f02c127dd3e35a0eecd58c684580414df4fde01d3" dependencies = [ - "indexmap 1.9.3", + "indexmap 1.9.2", "url", ] @@ -8563,7 +8530,7 @@ version = "0.105.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "83be9e0b3f9570dc1979a33ae7b89d032c73211564232b99976553e5c155ec32" dependencies = [ - "indexmap 1.9.3", + "indexmap 1.9.2", "url", ] @@ -8573,8 +8540,8 @@ version = "0.115.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e06c0641a4add879ba71ccb3a1e4278fd546f76f1eafb21d8f7b07733b547cd5" dependencies = [ - "indexmap 2.2.6", - "semver 1.0.22", + "indexmap 2.0.0", + "semver 1.0.9", ] [[package]] @@ -8598,17 +8565,17 @@ dependencies = [ "bumpalo", "cfg-if 1.0.0", "fxprof-processed-profile", - "indexmap 2.2.6", + "indexmap 2.0.0", "libc", "log", - "object", + "object 0.32.1", "once_cell", "paste", "psm", "serde", "serde_derive", "serde_json", - "target-lexicon 0.12.14", + "target-lexicon 0.12.3", "wasm-encoder 0.35.0", "wasmparser 0.115.0", "wasmtime-cranelift", @@ -8641,10 +8608,10 @@ dependencies = [ "cranelift-frontend", "cranelift-native", "cranelift-wasm", - "gimli", + "gimli 0.28.0", "log", - "object", - "target-lexicon 0.12.14", + "object 0.32.1", + "target-lexicon 0.12.3", "thiserror", "wasmparser 0.115.0", "wasmtime-cranelift-shared", @@ -8662,9 +8629,9 @@ dependencies = [ "cranelift-codegen", "cranelift-control", "cranelift-native", - "gimli", - "object", - "target-lexicon 0.12.14", + "gimli 0.28.0", + "object 0.32.1", + "target-lexicon 0.12.3", "wasmtime-environ", ] @@ -8676,13 +8643,13 @@ checksum = "fb6a445ce2b2810127caee6c1b79b8da4ae57712b05556a674592c18b7500a14" dependencies = [ "anyhow", "cranelift-entity", - "gimli", - "indexmap 2.2.6", + "gimli 0.28.0", + "indexmap 2.0.0", "log", - "object", + "object 0.32.1", "serde", "serde_derive", - "target-lexicon 0.12.14", + "target-lexicon 0.12.3", "thiserror", "wasmparser 0.115.0", "wasmtime-types", @@ -8694,19 +8661,19 @@ version = "14.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1f0f6586c61125fbfc13c3108c3dd565d21f314dd5bac823b9a5b7ab576d21f1" dependencies = [ - "addr2line", + "addr2line 0.21.0", "anyhow", "bincode", "cfg-if 1.0.0", "cpp_demangle", - "gimli", + "gimli 0.28.0", "log", - "object", + "object 0.32.1", "rustc-demangle", - "rustix", + "rustix 0.38.24", "serde", "serde_derive", - "target-lexicon 0.12.14", + "target-lexicon 0.12.3", "wasmtime-environ", "wasmtime-jit-icache-coherence", "wasmtime-runtime", @@ -8743,15 +8710,15 @@ dependencies = [ "anyhow", "cc", "cfg-if 1.0.0", - "indexmap 2.2.6", + "indexmap 2.0.0", "libc", "log", "mach", "memfd", - "memoffset 0.9.1", + "memoffset 0.9.0", "paste", "rand", - "rustix", + "rustix 0.38.24", "sptr", "wasm-encoder 0.35.0", "wasmtime-asm-macros", @@ -8783,7 +8750,7 @@ checksum = "09b5575a75e711ca6c36bb9ad647c93541cdc8e34218031acba5da3f35919dd3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.32", ] [[package]] @@ -8803,33 +8770,20 @@ dependencies = [ "unicode-width", ] -[[package]] -name = "wast" -version = "206.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68586953ee4960b1f5d84ebf26df3b628b17e6173bc088e0acfbce431469795a" -dependencies = [ - "bumpalo", - "leb128", - "memchr", - "unicode-width", - "wasm-encoder 0.206.0", -] - [[package]] name = "wat" -version = "1.206.0" +version = "1.0.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da4c6f2606276c6e991aebf441b2fc92c517807393f039992a3e0ad873efe4ad" +checksum = "0401b6395ce0db91629a75b29597ccb66ea29950af9fc859f1bb3a736609c76e" dependencies = [ - "wast 206.0.0", + "wast", ] [[package]] name = "web-sys" -version = "0.3.69" +version = "0.3.57" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef" +checksum = "7b17e741662c70c8bd24ac5c5b18de314a2c26c32bf8346ee1e6f53de919c283" dependencies = [ "js-sys", "wasm-bindgen", @@ -8868,21 +8822,20 @@ dependencies = [ [[package]] name = "which" -version = "4.4.2" +version = "4.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7" +checksum = "5c4fb54e6113b6a8772ee41c3404fb0301ac79604489467e0a9ce1f3e97c24ae" dependencies = [ "either", - "home", - "once_cell", - "rustix", + "lazy_static", + "libc", ] [[package]] name = "wildmatch" -version = "2.3.3" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "939e59c1bc731542357fdaad98b209ef78c8743d652bb61439d16b16a79eb025" +checksum = "ee583bdc5ff1cf9db20e9db5bb3ff4c3089a8f6b8b31aff265c9aba85812db86" [[package]] name = "winapi" @@ -8902,11 +8855,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" [[package]] name = "winapi-util" -version = "0.1.8" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d4cc384e1e73b93bafa6fb4f1df8c41695c8a91cf9c4c64358067d15a7b6c6b" +checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" dependencies = [ - "windows-sys 0.52.0", + "winapi", ] [[package]] @@ -8916,179 +8869,220 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] -name = "windows-core" -version = "0.52.0" +name = "windows" +version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" +checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f" dependencies = [ - "windows-targets 0.52.5", + "windows-targets 0.48.0", ] [[package]] name = "windows-sys" -version = "0.48.0" +version = "0.36.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" +checksum = "ea04155a16a59f9eab786fe12a4a450e75cdb175f9e0d80da1e17db09f55b8d2" +dependencies = [ + "windows_aarch64_msvc 0.36.1", + "windows_i686_gnu 0.36.1", + "windows_i686_msvc 0.36.1", + "windows_x86_64_gnu 0.36.1", + "windows_x86_64_msvc 0.36.1", +] + +[[package]] +name = "windows-sys" +version = "0.42.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" dependencies = [ - "windows-targets 0.48.5", + "windows_aarch64_gnullvm 0.42.2", + "windows_aarch64_msvc 0.42.2", + "windows_i686_gnu 0.42.2", + "windows_i686_msvc 0.42.2", + "windows_x86_64_gnu 0.42.2", + "windows_x86_64_gnullvm 0.42.2", + "windows_x86_64_msvc 0.42.2", ] [[package]] name = "windows-sys" -version = "0.52.0" +version = "0.45.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" +checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" dependencies = [ - "windows-targets 0.52.5", + "windows-targets 0.42.1", +] + +[[package]] +name = "windows-sys" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" +dependencies = [ + "windows-targets 0.48.0", ] [[package]] name = "windows-targets" -version = "0.48.5" +version = "0.42.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" +checksum = "8e2522491fbfcd58cc84d47aeb2958948c4b8982e9a2d8a2a35bbaed431390e7" dependencies = [ - "windows_aarch64_gnullvm 0.48.5", - "windows_aarch64_msvc 0.48.5", - "windows_i686_gnu 0.48.5", - "windows_i686_msvc 0.48.5", - "windows_x86_64_gnu 0.48.5", - "windows_x86_64_gnullvm 0.48.5", - "windows_x86_64_msvc 0.48.5", + "windows_aarch64_gnullvm 0.42.2", + "windows_aarch64_msvc 0.42.2", + "windows_i686_gnu 0.42.2", + "windows_i686_msvc 0.42.2", + "windows_x86_64_gnu 0.42.2", + "windows_x86_64_gnullvm 0.42.2", + "windows_x86_64_msvc 0.42.2", ] [[package]] name = "windows-targets" -version = "0.52.5" +version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb" +checksum = "7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5" dependencies = [ - "windows_aarch64_gnullvm 0.52.5", - "windows_aarch64_msvc 0.52.5", - "windows_i686_gnu 0.52.5", - "windows_i686_gnullvm", - "windows_i686_msvc 0.52.5", - "windows_x86_64_gnu 0.52.5", - "windows_x86_64_gnullvm 0.52.5", - "windows_x86_64_msvc 0.52.5", + "windows_aarch64_gnullvm 0.48.0", + "windows_aarch64_msvc 0.48.0", + "windows_i686_gnu 0.48.0", + "windows_i686_msvc 0.48.0", + "windows_x86_64_gnu 0.48.0", + "windows_x86_64_gnullvm 0.48.0", + "windows_x86_64_msvc 0.48.0", ] [[package]] name = "windows_aarch64_gnullvm" -version = "0.48.5" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" +checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" [[package]] name = "windows_aarch64_gnullvm" -version = "0.52.5" +version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263" +checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc" [[package]] name = "windows_aarch64_msvc" -version = "0.48.5" +version = "0.36.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" +checksum = "9bb8c3fd39ade2d67e9874ac4f3db21f0d710bee00fe7cab16949ec184eeaa47" [[package]] name = "windows_aarch64_msvc" -version = "0.52.5" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6" +checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3" [[package]] name = "windows_i686_gnu" -version = "0.48.5" +version = "0.36.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" +checksum = "180e6ccf01daf4c426b846dfc66db1fc518f074baa793aa7d9b9aaeffad6a3b6" [[package]] name = "windows_i686_gnu" -version = "0.52.5" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670" +checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" [[package]] -name = "windows_i686_gnullvm" -version = "0.52.5" +name = "windows_i686_gnu" +version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9" +checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241" [[package]] name = "windows_i686_msvc" -version = "0.48.5" +version = "0.36.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" +checksum = "e2e7917148b2812d1eeafaeb22a97e4813dfa60a3f8f78ebe204bcc88f12f024" [[package]] name = "windows_i686_msvc" -version = "0.52.5" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf" +checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" + +[[package]] +name = "windows_i686_msvc" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00" [[package]] name = "windows_x86_64_gnu" -version = "0.48.5" +version = "0.36.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" +checksum = "4dcd171b8776c41b97521e5da127a2d86ad280114807d0b2ab1e462bc764d9e1" [[package]] name = "windows_x86_64_gnu" -version = "0.52.5" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9" +checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1" [[package]] name = "windows_x86_64_gnullvm" -version = "0.48.5" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" +checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" [[package]] name = "windows_x86_64_gnullvm" -version = "0.52.5" +version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596" +checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953" [[package]] name = "windows_x86_64_msvc" -version = "0.48.5" +version = "0.36.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" +checksum = "c811ca4a8c853ef420abd8592ba53ddbbac90410fab6903b3e79972a631f7680" [[package]] name = "windows_x86_64_msvc" -version = "0.52.5" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0" +checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" [[package]] -name = "winnow" -version = "0.5.40" +name = "windows_x86_64_msvc" +version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876" -dependencies = [ - "memchr", -] +checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a" [[package]] name = "winnow" -version = "0.6.7" +version = "0.5.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14b9415ee827af173ebb3f15f9083df5a122eb93572ec28741fb153356ea2578" +checksum = "7c2e3184b9c4e92ad5167ca73039d0c42476302ab603e2fec4487511f38ccefc" dependencies = [ "memchr", ] [[package]] name = "winreg" -version = "0.50.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" +checksum = "80d0f4e272c85def139476380b12f9ac60926689dd2e01d4923222f40580869d" dependencies = [ - "cfg-if 1.0.0", - "windows-sys 0.48.0", + "winapi", ] [[package]] @@ -9102,30 +9096,30 @@ dependencies = [ [[package]] name = "xml-rs" -version = "0.8.20" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "791978798f0597cfc70478424c2b4fdc2b7a8024aaff78497ef00f24ef674193" +checksum = "d2d7d3948613f75c98fd9328cfdcc45acc4d360655289d0a7d4ec931392200a3" [[package]] name = "xshell" -version = "0.2.6" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6db0ab86eae739efd1b054a8d3d16041914030ac4e01cd1dca0cf252fd8b6437" +checksum = "4884417669886d3abff14feec797179526ade713f212e54ec08b19bc6bdc86aa" dependencies = [ "xshell-macros", ] [[package]] name = "xshell-macros" -version = "0.2.6" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d422e8e38ec76e2f06ee439ccc765e9c6a9638b9e7c9f2e8255e4d41e8bd852" +checksum = "37d92065701c3611323f96eac5475b995421fc7eb2bcba1336cdd80b9b2fb68f" [[package]] name = "xz2" -version = "0.1.7" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "388c44dc09d76f1536602ead6d325eb532f5c122f17782bd57fb47baeeb767e2" +checksum = "c179869f34fc7c01830d3ce7ea2086bc3a07e0d35289b667d0a8bf910258926c" dependencies = [ "lzma-sys", ] @@ -9138,29 +9132,29 @@ checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec" [[package]] name = "zerocopy" -version = "0.7.32" +version = "0.7.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be" +checksum = "1c4061bedbb353041c12f413700357bec76df2c7e2ca8e4df8bac24c6bf68e3d" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.7.32" +version = "0.7.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6" +checksum = "b3c129550b3e6de3fd0ba67ba5c81818f9805e58b8d7fee80a3a59d2c9fc601a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.60", + "syn 2.0.32", ] [[package]] name = "zeroize" -version = "1.7.0" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d" +checksum = "2a0956f1ba7c7909bfb66c2e9e4124ab6f6482560f6628b5aaeba39207c9aad9" [[package]] name = "zeropool-bn" diff --git a/chain/indexer/src/streamer/utils.rs b/chain/indexer/src/streamer/utils.rs index 16871ba9a46..15d559b8ac8 100644 --- a/chain/indexer/src/streamer/utils.rs +++ b/chain/indexer/src/streamer/utils.rs @@ -45,7 +45,7 @@ pub(crate) async fn convert_transactions_sir_into_local_receipts( }, prev_block_gas_price, true, - block.header.latest_protocol_version, + protocol_version, ); views::ReceiptView { predecessor_id: tx.transaction.signer_id.clone(), From c240785fea5d05320cfab99d5f6724d23b5426fb Mon Sep 17 00:00:00 2001 From: Eugene The Dream Date: Tue, 30 Apr 2024 16:27:44 -0700 Subject: [PATCH 09/13] Standard tests work --- .../src/tests/standard_cases/mod.rs | 50 +++++++------------ runtime/runtime/src/lib.rs | 2 + test-utils/testlib/src/fees_utils.rs | 26 +++++----- 3 files changed, 34 insertions(+), 44 deletions(-) diff --git a/integration-tests/src/tests/standard_cases/mod.rs b/integration-tests/src/tests/standard_cases/mod.rs index 6ea221aba47..098e4444508 100644 --- a/integration-tests/src/tests/standard_cases/mod.rs +++ b/integration-tests/src/tests/standard_cases/mod.rs @@ -437,35 +437,21 @@ pub fn trying_to_create_implicit_account(node: impl Node, public_key: PublicKey) .unwrap(); let create_account_send_fee = fee_helper.cfg().fee(ActionCosts::create_account).send_fee(false); - let add_access_key_send_fee = - fee_helper.cfg().fee(ActionCosts::add_full_access_key).send_fee(false); + let add_access_key_send_fee = fee_helper.cfg().fee(ActionCosts::add_full_access_key).send_fee(false); let create_account_exec_fee = fee_helper.cfg().fee(ActionCosts::create_account).exec_fee(); let add_access_key_exec_fee = fee_helper.cfg().fee(ActionCosts::add_full_access_key).exec_fee(); - let create_account_fee = - if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { - create_account_send_fee + create_account_exec_fee - } else { - create_account_send_fee - }; - let add_access_key_fee = - if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { - add_access_key_send_fee + add_access_key_exec_fee - } else { - add_access_key_send_fee - }; - let cost = match receiver_id.get_account_type() { AccountType::NearImplicitAccount => { - fee_helper.create_account_transfer_full_key_cost_fail_on_create_account() - + fee_helper.gas_to_balance(create_account_fee + add_access_key_fee) + fee_helper.create_account_transfer_full_key_cost_fail_on_create_account(create_account_exec_fee + add_access_key_exec_fee) + + fee_helper.gas_to_balance(create_account_send_fee + add_access_key_send_fee) } AccountType::EthImplicitAccount => { // This test uses `node_user.create_account` method that is normally used for NamedAccounts and should fail here. - fee_helper.create_account_transfer_full_key_cost_fail_on_create_account() + fee_helper.create_account_transfer_full_key_cost_fail_on_create_account(create_account_exec_fee) // We add this fee analogously to the NEAR-implicit match arm above (without `add_access_key_fee`). - + fee_helper.gas_to_balance(create_account_fee) + + fee_helper.gas_to_balance(create_account_send_fee) } AccountType::NamedAccount => std::panic!("must be implicit"), }; @@ -483,7 +469,7 @@ pub fn trying_to_create_implicit_account(node: impl Node, public_key: PublicKey) ) ); - // assert_receipts_outcome_len(&transaction_result, 2); + assert_eq!(transaction_result.receipts_outcome.len(), 3); let new_root = node_user.get_state_root(); assert_ne!(root, new_root); assert_eq!(node_user.get_access_key_nonce_for_signer(account_id).unwrap(), 1); @@ -518,10 +504,12 @@ pub fn test_smart_contract_reward(node: impl Node) { let bob = node_user.view_account(&bob_account()).unwrap(); let mut gas_burnt_for_function_call = transaction_result.receipts_outcome[0].outcome.gas_burnt - fee_helper.function_call_exec_gas(b"run_test".len() as u64); + if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { - // There is a cost that is not function call for gas refund receipt. - gas_burnt_for_function_call -= fee_helper.transfer_fee(); + // There is a cost for a gas refund fee. + gas_burnt_for_function_call -= fee_helper.cfg().gas_refund_send_fee(); } + let reward = fee_helper.gas_burnt_to_reward(gas_burnt_for_function_call); assert_eq!(bob.amount, TESTING_INIT_BALANCE - TESTING_INIT_STAKE + reward); } @@ -671,7 +659,7 @@ pub fn test_create_account_again(node: impl Node) { // Additional cost for trying to create an account with repeated name. Will fail after // the first action. - let additional_cost = fee_helper.create_account_transfer_full_key_cost_fail_on_create_account(); + let additional_cost = fee_helper.create_account_transfer_full_key_cost_fail_on_create_account(0); let result1 = node_user.view_account(account_id).unwrap(); assert_eq!( @@ -700,7 +688,7 @@ pub fn test_create_account_failure_already_exists(node: impl Node) { .unwrap(); let fee_helper = fee_helper(&node); let create_account_cost = - fee_helper.create_account_transfer_full_key_cost_fail_on_create_account(); + fee_helper.create_account_transfer_full_key_cost_fail_on_create_account(0); assert_eq!( transaction_result.status, FinalExecutionStatus::Failure( @@ -1050,15 +1038,13 @@ pub fn test_access_key_smart_contract(node: impl Node) { transaction_result.status, FinalExecutionStatus::SuccessValue(10i32.to_le_bytes().to_vec()) ); + let burnt_gas = transaction_result.receipts_outcome[0].outcome.gas_burnt; + let mut gas_refund = prepaid_gas + exec_gas - burnt_gas; - let mut gas_refund = - prepaid_gas + exec_gas - transaction_result.receipts_outcome[0].outcome.gas_burnt; - - // if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { - // // There is fixed cost for a gas refund receipt, but only the transfer cost is included in - // // the burnt gas - // gas_refund = gas_refund + fee_helper.transfer_fee() - fee_helper.gas_refund_fee(); - // } + if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { + gas_refund += fee_helper.cfg().gas_refund_send_fee(); + gas_refund -= fee_helper.cfg().gas_penalty_for_gas_refund(gas_refund); + } let gas_refund_amount = fee_helper.gas_to_balance(gas_refund); diff --git a/runtime/runtime/src/lib.rs b/runtime/runtime/src/lib.rs index fe8b57a8197..77638266932 100644 --- a/runtime/runtime/src/lib.rs +++ b/runtime/runtime/src/lib.rs @@ -953,12 +953,14 @@ impl Runtime { } if deposit_refund > 0 { + println!("deposit refund: {}", deposit_refund); result .new_receipts .push(Receipt::new_balance_refund(&receipt.predecessor_id, deposit_refund)); } if gas_balance_refund > 0 { + println!("gas refund: {}", gas_balance_refund); if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, protocol_version) { // Charging for gas refund receipt. Send fee is burnt now, exec will be burnt at the // refund time. diff --git a/test-utils/testlib/src/fees_utils.rs b/test-utils/testlib/src/fees_utils.rs index b5bcd6c1eba..bc8328c2ed7 100644 --- a/test-utils/testlib/src/fees_utils.rs +++ b/test-utils/testlib/src/fees_utils.rs @@ -97,19 +97,21 @@ impl FeeHelper { self.gas_to_balance(send_gas) + self.gas_to_balance_inflated(exec_gas) } - pub fn create_account_transfer_full_key_cost_fail_on_create_account(&self) -> Balance { - if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { - // The full cost due to the fact that the gas refund receipt would be too expensive. - self.create_account_transfer_full_key_cost() + pub fn create_account_transfer_full_key_cost_fail_on_create_account(&self, extra_exec_cost: Gas) -> Balance { + let exec_gas = self.cfg().fee(ActionCosts::new_action_receipt).exec_fee() + + self.cfg().fee(ActionCosts::create_account).exec_fee(); + let send_gas = self.cfg().fee(ActionCosts::new_action_receipt).send_fee(false) + + self.cfg().fee(ActionCosts::create_account).send_fee(false) + + self.cfg().fee(ActionCosts::transfer).send_fee(false) + + self.cfg().fee(ActionCosts::add_full_access_key).send_fee(false); + let gas_refund_fee = if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { + let refund_gas = self.cfg().fee(ActionCosts::transfer).exec_fee() + + self.cfg().fee(ActionCosts::add_full_access_key).exec_fee() + extra_exec_cost; + std::cmp::min(refund_gas, self.cfg().gas_penalty_for_gas_refund(refund_gas)) } else { - let exec_gas = self.cfg().fee(ActionCosts::new_action_receipt).exec_fee() - + self.cfg().fee(ActionCosts::create_account).exec_fee(); - let send_gas = self.cfg().fee(ActionCosts::new_action_receipt).send_fee(false) - + self.cfg().fee(ActionCosts::create_account).send_fee(false) - + self.cfg().fee(ActionCosts::transfer).send_fee(false) - + self.cfg().fee(ActionCosts::add_full_access_key).send_fee(false); - self.gas_to_balance(exec_gas + send_gas) - } + 0 + }; + self.gas_to_balance(exec_gas + send_gas + gas_refund_fee) } pub fn deploy_contract_cost(&self, num_bytes: u64) -> Balance { From 5c505145933efc24eea518e0fb1db004113c0a94 Mon Sep 17 00:00:00 2001 From: Eugene The Dream Date: Tue, 30 Apr 2024 16:40:10 -0700 Subject: [PATCH 10/13] Cargo FMT --- .../src/tests/standard_cases/mod.rs | 26 ++++++++++++++----- test-utils/testlib/src/fees_utils.rs | 21 +++++++++------ 2 files changed, 32 insertions(+), 15 deletions(-) diff --git a/integration-tests/src/tests/standard_cases/mod.rs b/integration-tests/src/tests/standard_cases/mod.rs index 098e4444508..35a0d964738 100644 --- a/integration-tests/src/tests/standard_cases/mod.rs +++ b/integration-tests/src/tests/standard_cases/mod.rs @@ -44,11 +44,20 @@ pub(crate) fn fee_helper(node: &impl Node) -> FeeHelper { FeeHelper::new(RuntimeConfig::test(), node.genesis().config.min_gas_price) } -fn assert_receipts_outcome_len(transaction_result: &FinalExecutionOutcomeView, expected_len_without_refund: usize) { +fn assert_receipts_outcome_len( + transaction_result: &FinalExecutionOutcomeView, + expected_len_without_refund: usize, +) { if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { - assert_eq!(transaction_result.receipts_outcome.len(), expected_len_without_refund, "receipts_outcome: {:?}", transaction_result.receipts_outcome); + assert_eq!( + transaction_result.receipts_outcome.len(), + expected_len_without_refund, + "receipts_outcome: {:?}", + transaction_result.receipts_outcome + ); } else { - assert!([expected_len_without_refund, expected_len_without_refund + 1].contains(&transaction_result.receipts_outcome.len())); + assert!([expected_len_without_refund, expected_len_without_refund + 1] + .contains(&transaction_result.receipts_outcome.len())); } } @@ -437,15 +446,17 @@ pub fn trying_to_create_implicit_account(node: impl Node, public_key: PublicKey) .unwrap(); let create_account_send_fee = fee_helper.cfg().fee(ActionCosts::create_account).send_fee(false); - let add_access_key_send_fee = fee_helper.cfg().fee(ActionCosts::add_full_access_key).send_fee(false); + let add_access_key_send_fee = + fee_helper.cfg().fee(ActionCosts::add_full_access_key).send_fee(false); let create_account_exec_fee = fee_helper.cfg().fee(ActionCosts::create_account).exec_fee(); let add_access_key_exec_fee = fee_helper.cfg().fee(ActionCosts::add_full_access_key).exec_fee(); let cost = match receiver_id.get_account_type() { AccountType::NearImplicitAccount => { - fee_helper.create_account_transfer_full_key_cost_fail_on_create_account(create_account_exec_fee + add_access_key_exec_fee) - + fee_helper.gas_to_balance(create_account_send_fee + add_access_key_send_fee) + fee_helper.create_account_transfer_full_key_cost_fail_on_create_account( + create_account_exec_fee + add_access_key_exec_fee, + ) + fee_helper.gas_to_balance(create_account_send_fee + add_access_key_send_fee) } AccountType::EthImplicitAccount => { // This test uses `node_user.create_account` method that is normally used for NamedAccounts and should fail here. @@ -659,7 +670,8 @@ pub fn test_create_account_again(node: impl Node) { // Additional cost for trying to create an account with repeated name. Will fail after // the first action. - let additional_cost = fee_helper.create_account_transfer_full_key_cost_fail_on_create_account(0); + let additional_cost = + fee_helper.create_account_transfer_full_key_cost_fail_on_create_account(0); let result1 = node_user.view_account(account_id).unwrap(); assert_eq!( diff --git a/test-utils/testlib/src/fees_utils.rs b/test-utils/testlib/src/fees_utils.rs index bc8328c2ed7..6e82070ef09 100644 --- a/test-utils/testlib/src/fees_utils.rs +++ b/test-utils/testlib/src/fees_utils.rs @@ -97,20 +97,25 @@ impl FeeHelper { self.gas_to_balance(send_gas) + self.gas_to_balance_inflated(exec_gas) } - pub fn create_account_transfer_full_key_cost_fail_on_create_account(&self, extra_exec_cost: Gas) -> Balance { + pub fn create_account_transfer_full_key_cost_fail_on_create_account( + &self, + extra_exec_cost: Gas, + ) -> Balance { let exec_gas = self.cfg().fee(ActionCosts::new_action_receipt).exec_fee() + self.cfg().fee(ActionCosts::create_account).exec_fee(); let send_gas = self.cfg().fee(ActionCosts::new_action_receipt).send_fee(false) + self.cfg().fee(ActionCosts::create_account).send_fee(false) + self.cfg().fee(ActionCosts::transfer).send_fee(false) + self.cfg().fee(ActionCosts::add_full_access_key).send_fee(false); - let gas_refund_fee = if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { - let refund_gas = self.cfg().fee(ActionCosts::transfer).exec_fee() - + self.cfg().fee(ActionCosts::add_full_access_key).exec_fee() + extra_exec_cost; - std::cmp::min(refund_gas, self.cfg().gas_penalty_for_gas_refund(refund_gas)) - } else { - 0 - }; + let gas_refund_fee = + if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { + let refund_gas = self.cfg().fee(ActionCosts::transfer).exec_fee() + + self.cfg().fee(ActionCosts::add_full_access_key).exec_fee() + + extra_exec_cost; + std::cmp::min(refund_gas, self.cfg().gas_penalty_for_gas_refund(refund_gas)) + } else { + 0 + }; self.gas_to_balance(exec_gas + send_gas + gas_refund_fee) } From e985deec81cfc06d69729c206b805d78b068c4e4 Mon Sep 17 00:00:00 2001 From: Eugene The Dream Date: Fri, 10 May 2024 10:55:47 +0200 Subject: [PATCH 11/13] Fixed some tests --- core/primitives-core/Cargo.toml | 2 +- runtime/runtime/src/lib.rs | 26 +++++++++++++----- runtime/runtime/tests/test_async_calls.rs | 32 +++++++++++++++++++---- 3 files changed, 47 insertions(+), 13 deletions(-) diff --git a/core/primitives-core/Cargo.toml b/core/primitives-core/Cargo.toml index 27a406e63ca..4311c71081a 100644 --- a/core/primitives-core/Cargo.toml +++ b/core/primitives-core/Cargo.toml @@ -44,9 +44,9 @@ nightly = [ "nightly_protocol", "protocol_feature_fix_contract_loading_cost", "protocol_feature_fix_staking_threshold", + "protocol_feature_gas_price_refund_adjustment_nep536", "protocol_feature_nonrefundable_transfer_nep491", "protocol_feature_reject_blocks_with_outdated_protocol_version", - "protocol_feature_gas_price_refund_adjustment_nep536", "yield_resume", ] diff --git a/runtime/runtime/src/lib.rs b/runtime/runtime/src/lib.rs index 77638266932..d30a76047db 100644 --- a/runtime/runtime/src/lib.rs +++ b/runtime/runtime/src/lib.rs @@ -953,14 +953,12 @@ impl Runtime { } if deposit_refund > 0 { - println!("deposit refund: {}", deposit_refund); result .new_receipts .push(Receipt::new_balance_refund(&receipt.predecessor_id, deposit_refund)); } if gas_balance_refund > 0 { - println!("gas refund: {}", gas_balance_refund); if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, protocol_version) { // Charging for gas refund receipt. Send fee is burnt now, exec will be burnt at the // refund time. @@ -2671,6 +2669,12 @@ mod tests { total_prepaid_exec_fees(&apply_state.config, &actions, &alice_account()).unwrap(), ) .unwrap(); + let gas_penalty_for_gas_refund = + if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { + apply_state.config.fees.gas_penalty_for_gas_refund(gas) + } else { + 0 + }; let receipts = vec![Receipt { predecessor_id: bob_account(), receiver_id: alice_account(), @@ -2685,7 +2689,7 @@ mod tests { }), }]; let total_receipt_cost = Balance::from(gas + expected_gas_burnt) * gas_price; - let expected_gas_burnt_amount = Balance::from(expected_gas_burnt) * GAS_PRICE; + let expected_gas_burnt_amount = Balance::from(expected_gas_burnt + gas_penalty_for_gas_refund) * GAS_PRICE; let expected_refund = total_receipt_cost - expected_gas_burnt_amount; let result = runtime @@ -2704,9 +2708,11 @@ mod tests { // The refund is less than the received amount. match &result.outgoing_receipts[0].receipt { ReceiptEnum::Action(ActionReceipt { actions, .. }) => { - assert!( - matches!(actions[0], Action::Transfer(TransferAction { deposit }) if deposit == expected_refund) - ); + if let Action::Transfer(TransferAction { deposit }) = &actions[0] { + assert_eq!(*deposit, expected_refund); + } else { + panic!("Expected Transfer action"); + } } _ => unreachable!(), }; @@ -2734,6 +2740,12 @@ mod tests { total_prepaid_exec_fees(&apply_state.config, &actions, &alice_account()).unwrap(), ) .unwrap(); + let gas_penalty_for_gas_refund = + if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { + std::cmp::min(gas, apply_state.config.fees.gas_penalty_for_gas_refund(gas)) + } else { + 0 + }; let receipts = vec![Receipt { predecessor_id: bob_account(), receiver_id: alice_account(), @@ -2748,7 +2760,7 @@ mod tests { }), }]; let total_receipt_cost = Balance::from(gas + expected_gas_burnt) * gas_price; - let expected_gas_burnt_amount = Balance::from(expected_gas_burnt) * GAS_PRICE; + let expected_gas_burnt_amount = Balance::from(expected_gas_burnt + gas_penalty_for_gas_refund) * GAS_PRICE; let expected_deficit = expected_gas_burnt_amount - total_receipt_cost; let result = runtime diff --git a/runtime/runtime/tests/test_async_calls.rs b/runtime/runtime/tests/test_async_calls.rs index e8fe09ed609..f642c59a9db 100644 --- a/runtime/runtime/tests/test_async_calls.rs +++ b/runtime/runtime/tests/test_async_calls.rs @@ -6,6 +6,8 @@ use near_primitives::hash::CryptoHash; use near_primitives::receipt::{ActionReceipt, ReceiptEnum}; use near_primitives::serialize::to_base64; use near_primitives::types::AccountId; +use near_primitives_core::checked_feature; +use near_primitives_core::version::PROTOCOL_VERSION; pub mod runtime_group_tools; @@ -648,7 +650,27 @@ fn test_create_account_with_transfer_and_full_key() { assert_eq!(function_call_action.deposit, 0); } => [r1, ref0] ); - assert_receipts!(group, "near_1" => r1 @ "near_2", + if checked_feature!( + "nightly_protocol", + GasPriceRefundAdjustment, + PROTOCOL_VERSION + ) { + assert_receipts!(group, "near_1" => r1 @ "near_2", + ReceiptEnum::Action(ActionReceipt{actions, ..}), {}, + actions, + a0, Action::CreateAccount(CreateAccountAction{}), {}, + a1, Action::Transfer(TransferAction{deposit}), { + assert_eq!(*deposit, 10000000000000000000000000); + }, + a2, Action::AddKey(add_key_action), { + assert_eq!(add_key_action.public_key, signer_new_account.public_key); + assert_eq!(add_key_action.access_key.nonce, 0); + assert_eq!(add_key_action.access_key.permission, AccessKeyPermission::FullAccess); + } + => [] ); + assert_refund!(group, ref0 @ "near_0"); + } else { + assert_receipts!(group, "near_1" => r1 @ "near_2", ReceiptEnum::Action(ActionReceipt{actions, ..}), {}, actions, a0, Action::CreateAccount(CreateAccountAction{}), {}, @@ -661,10 +683,10 @@ fn test_create_account_with_transfer_and_full_key() { assert_eq!(add_key_action.access_key.permission, AccessKeyPermission::FullAccess); } => [ref1] ); - - assert_refund!(group, ref0 @ "near_0"); - // For gas price difference - assert_refund!(group, ref1 @ "near_0"); + assert_refund!(group, ref0 @ "near_0"); + // For gas price difference + assert_refund!(group, ref1 @ "near_0"); + } } #[test] From 05eed218d8b52a78e154365d39252cd07c4ce59f Mon Sep 17 00:00:00 2001 From: Eugene The Dream Date: Fri, 10 May 2024 11:15:39 +0200 Subject: [PATCH 12/13] Cargo FMT --- runtime/runtime/src/lib.rs | 6 ++++-- runtime/runtime/tests/test_async_calls.rs | 6 +----- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/runtime/runtime/src/lib.rs b/runtime/runtime/src/lib.rs index 3dfe28e140d..54691a5c7eb 100644 --- a/runtime/runtime/src/lib.rs +++ b/runtime/runtime/src/lib.rs @@ -2735,7 +2735,8 @@ mod tests { }), }]; let total_receipt_cost = Balance::from(gas + expected_gas_burnt) * gas_price; - let expected_gas_burnt_amount = Balance::from(expected_gas_burnt + gas_penalty_for_gas_refund) * GAS_PRICE; + let expected_gas_burnt_amount = + Balance::from(expected_gas_burnt + gas_penalty_for_gas_refund) * GAS_PRICE; let expected_refund = total_receipt_cost - expected_gas_burnt_amount; let result = runtime @@ -2806,7 +2807,8 @@ mod tests { }), }]; let total_receipt_cost = Balance::from(gas + expected_gas_burnt) * gas_price; - let expected_gas_burnt_amount = Balance::from(expected_gas_burnt + gas_penalty_for_gas_refund) * GAS_PRICE; + let expected_gas_burnt_amount = + Balance::from(expected_gas_burnt + gas_penalty_for_gas_refund) * GAS_PRICE; let expected_deficit = expected_gas_burnt_amount - total_receipt_cost; let result = runtime diff --git a/runtime/runtime/tests/test_async_calls.rs b/runtime/runtime/tests/test_async_calls.rs index f642c59a9db..4a2cfa479fa 100644 --- a/runtime/runtime/tests/test_async_calls.rs +++ b/runtime/runtime/tests/test_async_calls.rs @@ -650,11 +650,7 @@ fn test_create_account_with_transfer_and_full_key() { assert_eq!(function_call_action.deposit, 0); } => [r1, ref0] ); - if checked_feature!( - "nightly_protocol", - GasPriceRefundAdjustment, - PROTOCOL_VERSION - ) { + if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { assert_receipts!(group, "near_1" => r1 @ "near_2", ReceiptEnum::Action(ActionReceipt{actions, ..}), {}, actions, From df48009e2073791e5b39256a1f8d8db22764d879 Mon Sep 17 00:00:00 2001 From: Eugene The Dream Date: Fri, 10 May 2024 12:08:56 +0200 Subject: [PATCH 13/13] Fix async calls tests. Update nightly snapshot for simple chain test --- chain/chain/src/tests/simple_chain.rs | 4 +- runtime/runtime/tests/test_async_calls.rs | 70 +++++++++++++++++------ 2 files changed, 55 insertions(+), 19 deletions(-) diff --git a/chain/chain/src/tests/simple_chain.rs b/chain/chain/src/tests/simple_chain.rs index 3243f9c98a4..76f57957f3c 100644 --- a/chain/chain/src/tests/simple_chain.rs +++ b/chain/chain/src/tests/simple_chain.rs @@ -32,7 +32,7 @@ fn build_chain() { // cargo insta test --accept -p near-chain --features nightly -- tests::simple_chain::build_chain let hash = chain.head().unwrap().last_block_hash; if cfg!(feature = "nightly") { - insta::assert_snapshot!(hash, @"C3zeKRZubVungxfrSdq379TSCYnuz2YzjEkcJTdm3pU4"); + insta::assert_snapshot!(hash, @"H9qfaTFJ7jFMEmJX9eYQ3kJQ6vwATAhidfbjwa9PvCPK"); } else { insta::assert_snapshot!(hash, @"2WHohfYksQnwKwSEoTKpkseu2RWthbGf9kmGetgHgfQQ"); } @@ -50,7 +50,7 @@ fn build_chain() { let hash = chain.head().unwrap().last_block_hash; if cfg!(feature = "nightly") { - insta::assert_snapshot!(hash, @"EjLaoHRiAdRp2NcDqwbMcAYYxGfcv5R7GuYUNfRpaJvB"); + insta::assert_snapshot!(hash, @"HPRdNbp8dJL2JA5bRSmLg6GJpGXx6xmw472vVAWLpXhi"); } else { insta::assert_snapshot!(hash, @"HJuuENeSwwikoR9BZA7cSonxAPZgY5mKQWL2pSXwjAwZ"); } diff --git a/runtime/runtime/tests/test_async_calls.rs b/runtime/runtime/tests/test_async_calls.rs index 4a2cfa479fa..3c528dd5412 100644 --- a/runtime/runtime/tests/test_async_calls.rs +++ b/runtime/runtime/tests/test_async_calls.rs @@ -583,17 +583,29 @@ fn test_simple_transfer() { assert_eq!(function_call_action.deposit, 0); } => [r1, ref0] ); - assert_receipts!(group, "near_1" => r1 @ "near_2", - ReceiptEnum::Action(ActionReceipt{actions, ..}), {}, - actions, - a0, Action::Transfer(TransferAction{deposit}), { - assert_eq!(*deposit, 1000000000); - } - => [ref1] ); + if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { + assert_receipts!(group, "near_1" => r1 @ "near_2", + ReceiptEnum::Action(ActionReceipt{actions, ..}), {}, + actions, + a0, Action::Transfer(TransferAction{deposit}), { + assert_eq!(*deposit, 1000000000); + } + => [] ); - assert_refund!(group, ref0 @ "near_0"); - // For gas price difference - assert_refund!(group, ref1 @ "near_0"); + assert_refund!(group, ref0 @ "near_0"); + } else { + assert_receipts!(group, "near_1" => r1 @ "near_2", + ReceiptEnum::Action(ActionReceipt{actions, ..}), {}, + actions, + a0, Action::Transfer(TransferAction{deposit}), { + assert_eq!(*deposit, 1000000000); + } + => [ref1] ); + + assert_refund!(group, ref0 @ "near_0"); + // For gas price difference + assert_refund!(group, ref1 @ "near_0"); + } } #[test] @@ -1018,15 +1030,26 @@ fn test_transfer_64len_hex() { assert_eq!(function_call_action.deposit, 0); } => [r1, ref0] ); - assert_receipts!(group, "near_1" => r1 @ account_id.as_str(), + if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { + assert_receipts!(group, "near_1" => r1 @ account_id.as_str(), + ReceiptEnum::Action(ActionReceipt{actions, ..}), {}, + actions, + a0, Action::Transfer(TransferAction{deposit}), { + assert_eq!(*deposit, TESTING_INIT_BALANCE / 2); + } + => [] ); + assert_refund!(group, ref0 @ "near_0"); + } else { + assert_receipts!(group, "near_1" => r1 @ account_id.as_str(), ReceiptEnum::Action(ActionReceipt{actions, ..}), {}, actions, a0, Action::Transfer(TransferAction{deposit}), { assert_eq!(*deposit, TESTING_INIT_BALANCE / 2); } => [ref1] ); - assert_refund!(group, ref0 @ "near_0"); - assert_refund!(group, ref1 @ "near_0"); + assert_refund!(group, ref0 @ "near_0"); + assert_refund!(group, ref1 @ "near_0"); + } } #[test] @@ -1084,7 +1107,19 @@ fn test_create_transfer_64len_hex_fail() { assert_eq!(function_call_action.deposit, 0); } => [r1, ref0] ); - assert_receipts!(group, "near_1" => r1 @ account_id.as_str(), + if checked_feature!("nightly_protocol", GasPriceRefundAdjustment, PROTOCOL_VERSION) { + assert_receipts!(group, "near_1" => r1 @ account_id.as_str(), + ReceiptEnum::Action(ActionReceipt{actions, ..}), {}, + actions, + a0, Action::CreateAccount(CreateAccountAction{}), {}, + a1, Action::Transfer(TransferAction{deposit}), { + assert_eq!(*deposit, TESTING_INIT_BALANCE / 2); + } + => [ref1] ); + assert_refund!(group, ref0 @ "near_0"); + assert_refund!(group, ref1 @ "near_1"); + } else { + assert_receipts!(group, "near_1" => r1 @ account_id.as_str(), ReceiptEnum::Action(ActionReceipt{actions, ..}), {}, actions, a0, Action::CreateAccount(CreateAccountAction{}), {}, @@ -1092,7 +1127,8 @@ fn test_create_transfer_64len_hex_fail() { assert_eq!(*deposit, TESTING_INIT_BALANCE / 2); } => [ref1, ref2] ); - assert_refund!(group, ref0 @ "near_0"); - assert_refund!(group, ref1 @ "near_1"); - assert_refund!(group, ref2 @ "near_0"); + assert_refund!(group, ref0 @ "near_0"); + assert_refund!(group, ref1 @ "near_1"); + assert_refund!(group, ref2 @ "near_0"); + } }