difftreelog
fix remove from_ref_time usages
in: master
9 files changed
pallets/common/src/dispatch.rsdiffbeforeafterboth1//! Module with interfaces for dispatching collections.23use frame_support::{4 dispatch::{5 DispatchResultWithPostInfo, PostDispatchInfo, Weight, DispatchErrorWithPostInfo,6 DispatchResult,7 },8 dispatch::Pays,9 traits::Get,10};11use sp_runtime::DispatchError;12use up_data_structs::{CollectionId, CreateCollectionData, CollectionFlags};1314use crate::{pallet::Config, CommonCollectionOperations, CollectionHandle};1516// TODO: move to benchmarking17/// Price of [`dispatch_tx`] call with noop `call` argument18pub fn dispatch_weight<T: Config>() -> Weight {19 // Read collection20 <T as frame_system::Config>::DbWeight::get().reads(1)21 // Dynamic dispatch?22 + Weight::from_ref_time(6_000_000)23 // submit_logs is measured as part of collection pallets24}2526/// Helper function to implement substrate calls for common collection methods.27///28/// * `collection` - The collection on which to call the method.29/// * `call` - The function in which to call the corresponding method from [`CommonCollectionOperations`].30pub fn dispatch_tx<31 T: Config,32 C: FnOnce(&dyn CommonCollectionOperations<T>) -> DispatchResultWithPostInfo,33>(34 collection: CollectionId,35 call: C,36) -> DispatchResultWithPostInfo {37 let handle =38 CollectionHandle::try_get(collection).map_err(|error| DispatchErrorWithPostInfo {39 post_info: PostDispatchInfo {40 actual_weight: Some(dispatch_weight::<T>()),41 pays_fee: Pays::Yes,42 },43 error,44 })?;45 handle46 .check_is_internal()47 .map_err(|error| DispatchErrorWithPostInfo {48 post_info: PostDispatchInfo {49 actual_weight: Some(dispatch_weight::<T>()),50 pays_fee: Pays::Yes,51 },52 error,53 })?;54 let dispatched = T::CollectionDispatch::dispatch(handle);55 let mut result = call(dispatched.as_dyn());56 match &mut result {57 Ok(PostDispatchInfo {58 actual_weight: Some(weight),59 ..60 })61 | Err(DispatchErrorWithPostInfo {62 post_info: PostDispatchInfo {63 actual_weight: Some(weight),64 ..65 },66 ..67 }) => *weight += dispatch_weight::<T>(),68 _ => {}69 }70 result71}7273/// Interface for working with different collections through the dispatcher.74pub trait CollectionDispatch<T: Config> {75 /// Create a collection. The collection will be created according to the value of [`data.mode`](CreateCollectionData::mode).76 ///77 /// * `sender` - The user who will become the owner of the collection.78 /// * `data` - Description of the created collection.79 fn create(80 sender: T::CrossAccountId,81 payer: T::CrossAccountId,82 data: CreateCollectionData<T::AccountId>,83 flags: CollectionFlags,84 ) -> Result<CollectionId, DispatchError>;8586 /// Delete the collection.87 ///88 /// * `sender` - The owner of the collection.89 /// * `handle` - Collection handle.90 fn destroy(sender: T::CrossAccountId, handle: CollectionHandle<T>) -> DispatchResult;9192 /// Get a specialized collection from the handle.93 ///94 /// * `handle` - Collection handle.95 fn dispatch(handle: CollectionHandle<T>) -> Self;9697 /// Get the collection handle for the corresponding implementation.98 fn into_inner(self) -> CollectionHandle<T>;99100 /// Get the implementation of [`CommonCollectionOperations`].101 fn as_dyn(&self) -> &dyn CommonCollectionOperations<T>;102}1//! Module with interfaces for dispatching collections.23use frame_support::{4 dispatch::{5 DispatchResultWithPostInfo, PostDispatchInfo, Weight, DispatchErrorWithPostInfo,6 DispatchResult,7 },8 dispatch::Pays,9 traits::Get,10};11use sp_runtime::DispatchError;12use up_data_structs::{CollectionId, CreateCollectionData, CollectionFlags};1314use crate::{pallet::Config, CommonCollectionOperations, CollectionHandle};1516// TODO: move to benchmarking17/// Price of [`dispatch_tx`] call with noop `call` argument18pub fn dispatch_weight<T: Config>() -> Weight {19 // Read collection20 <T as frame_system::Config>::DbWeight::get().reads(1)21 // Dynamic dispatch?22 + Weight::from_parts(6_000_000, 0)23 // submit_logs is measured as part of collection pallets24}2526/// Helper function to implement substrate calls for common collection methods.27///28/// * `collection` - The collection on which to call the method.29/// * `call` - The function in which to call the corresponding method from [`CommonCollectionOperations`].30pub fn dispatch_tx<31 T: Config,32 C: FnOnce(&dyn CommonCollectionOperations<T>) -> DispatchResultWithPostInfo,33>(34 collection: CollectionId,35 call: C,36) -> DispatchResultWithPostInfo {37 let handle =38 CollectionHandle::try_get(collection).map_err(|error| DispatchErrorWithPostInfo {39 post_info: PostDispatchInfo {40 actual_weight: Some(dispatch_weight::<T>()),41 pays_fee: Pays::Yes,42 },43 error,44 })?;45 handle46 .check_is_internal()47 .map_err(|error| DispatchErrorWithPostInfo {48 post_info: PostDispatchInfo {49 actual_weight: Some(dispatch_weight::<T>()),50 pays_fee: Pays::Yes,51 },52 error,53 })?;54 let dispatched = T::CollectionDispatch::dispatch(handle);55 let mut result = call(dispatched.as_dyn());56 match &mut result {57 Ok(PostDispatchInfo {58 actual_weight: Some(weight),59 ..60 })61 | Err(DispatchErrorWithPostInfo {62 post_info: PostDispatchInfo {63 actual_weight: Some(weight),64 ..65 },66 ..67 }) => *weight += dispatch_weight::<T>(),68 _ => {}69 }70 result71}7273/// Interface for working with different collections through the dispatcher.74pub trait CollectionDispatch<T: Config> {75 /// Create a collection. The collection will be created according to the value of [`data.mode`](CreateCollectionData::mode).76 ///77 /// * `sender` - The user who will become the owner of the collection.78 /// * `data` - Description of the created collection.79 fn create(80 sender: T::CrossAccountId,81 payer: T::CrossAccountId,82 data: CreateCollectionData<T::AccountId>,83 flags: CollectionFlags,84 ) -> Result<CollectionId, DispatchError>;8586 /// Delete the collection.87 ///88 /// * `sender` - The owner of the collection.89 /// * `handle` - Collection handle.90 fn destroy(sender: T::CrossAccountId, handle: CollectionHandle<T>) -> DispatchResult;9192 /// Get a specialized collection from the handle.93 ///94 /// * `handle` - Collection handle.95 fn dispatch(handle: CollectionHandle<T>) -> Self;9697 /// Get the collection handle for the corresponding implementation.98 fn into_inner(self) -> CollectionHandle<T>;99100 /// Get the implementation of [`CommonCollectionOperations`].101 fn as_dyn(&self) -> &dyn CommonCollectionOperations<T>;102}pallets/common/src/lib.rsdiffbeforeafterboth--- a/pallets/common/src/lib.rs
+++ b/pallets/common/src/lib.rs
@@ -92,6 +92,7 @@
pub mod dispatch;
pub mod erc;
pub mod eth;
+#[allow(missing_docs)]
pub mod weights;
/// Weight info.
@@ -157,10 +158,12 @@
reads: u64,
) -> pallet_evm_coder_substrate::execution::Result<()> {
self.recorder
- .consume_gas(T::GasWeightMapping::weight_to_gas(Weight::from_ref_time(
+ .consume_gas(T::GasWeightMapping::weight_to_gas(Weight::from_parts(
<T as frame_system::Config>::DbWeight::get()
.read
.saturating_mul(reads),
+ // TODO: measure proof
+ 0,
)))
}
@@ -170,10 +173,12 @@
writes: u64,
) -> pallet_evm_coder_substrate::execution::Result<()> {
self.recorder
- .consume_gas(T::GasWeightMapping::weight_to_gas(Weight::from_ref_time(
+ .consume_gas(T::GasWeightMapping::weight_to_gas(Weight::from_parts(
<T as frame_system::Config>::DbWeight::get()
.write
.saturating_mul(writes),
+ // TODO: measure proof
+ 0,
)))
}
@@ -187,8 +192,10 @@
let reads = weight.read.saturating_mul(reads);
let writes = weight.read.saturating_mul(writes);
self.recorder
- .consume_gas(T::GasWeightMapping::weight_to_gas(Weight::from_ref_time(
+ .consume_gas(T::GasWeightMapping::weight_to_gas(Weight::from_parts(
reads.saturating_add(writes),
+ // TODO: measure proof
+ 0,
)))
}
pallets/evm-coder-substrate/src/execution.rsdiffbeforeafterboth--- a/pallets/evm-coder-substrate/src/execution.rs
+++ b/pallets/evm-coder-substrate/src/execution.rs
@@ -61,7 +61,7 @@
fn dispatch_info(&self) -> DispatchInfo {
DispatchInfo {
// ERC165 impl should be cheap
- weight: Weight::from_ref_time(200),
+ weight: Weight::from_parts(200, 0),
}
}
}
@@ -77,10 +77,11 @@
Self { weight }
}
}
+// TODO: use 2-dimensional weight after frontier upgrade
impl From<u64> for DispatchInfo {
fn from(weight: u64) -> Self {
Self {
- weight: Weight::from_ref_time(weight),
+ weight: Weight::from_parts(weight, 0),
}
}
}
pallets/evm-migration/src/lib.rsdiffbeforeafterboth--- a/pallets/evm-migration/src/lib.rs
+++ b/pallets/evm-migration/src/lib.rs
@@ -21,6 +21,7 @@
pub use pallet::*;
#[cfg(feature = "runtime-benchmarks")]
pub mod benchmarking;
+#[allow(missing_docs)]
pub mod weights;
#[frame_support::pallet]
pallets/unique/src/benchmarking.rsdiffbeforeafterboth--- a/pallets/unique/src/benchmarking.rs
+++ b/pallets/unique/src/benchmarking.rs
@@ -26,6 +26,11 @@
Config as CommonConfig,
benchmarking::{create_data, create_u16_data},
};
+use up_data_structs::{
+ CollectionId, CollectionMode, MAX_COLLECTION_NAME_LENGTH, MAX_TOKEN_PREFIX_LENGTH,
+ MAX_COLLECTION_DESCRIPTION_LENGTH, CollectionLimits,
+};
+use pallet_common::erc::CrossAccountId;
const SEED: u32 = 1;
@@ -34,9 +39,9 @@
mode: CollectionMode,
) -> Result<CollectionId, DispatchError> {
<T as CommonConfig>::Currency::deposit_creating(&owner, T::CollectionCreationPrice::get());
- let col_name = create_u16_data::<MAX_COLLECTION_NAME_LENGTH>();
- let col_desc = create_u16_data::<MAX_COLLECTION_DESCRIPTION_LENGTH>();
- let token_prefix = create_data::<MAX_TOKEN_PREFIX_LENGTH>();
+ let col_name = create_u16_data::<{ MAX_COLLECTION_NAME_LENGTH }>();
+ let col_desc = create_u16_data::<{ MAX_COLLECTION_DESCRIPTION_LENGTH }>();
+ let token_prefix = create_data::<{ MAX_TOKEN_PREFIX_LENGTH }>();
<Pallet<T>>::create_collection(
RawOrigin::Signed(owner).into(),
col_name,
@@ -54,9 +59,9 @@
benchmarks! {
create_collection {
- let col_name = create_u16_data::<MAX_COLLECTION_NAME_LENGTH>();
- let col_desc = create_u16_data::<MAX_COLLECTION_DESCRIPTION_LENGTH>();
- let token_prefix = create_data::<MAX_TOKEN_PREFIX_LENGTH>();
+ let col_name = create_u16_data::<{MAX_COLLECTION_NAME_LENGTH}>();
+ let col_desc = create_u16_data::<{MAX_COLLECTION_DESCRIPTION_LENGTH}>();
+ let token_prefix = create_data::<{MAX_TOKEN_PREFIX_LENGTH}>();
let mode: CollectionMode = CollectionMode::NFT;
let caller: T::AccountId = account("caller", 0, SEED);
<T as CommonConfig>::Currency::deposit_creating(&caller, T::CollectionCreationPrice::get());
pallets/unique/src/lib.rsdiffbeforeafterboth--- a/pallets/unique/src/lib.rs
+++ b/pallets/unique/src/lib.rs
@@ -89,14 +89,11 @@
use frame_support::{
dispatch::DispatchResult,
ensure, fail,
- weights::{Weight},
- pallet_prelude::{*},
BoundedVec,
storage::Key,
};
- use frame_system::pallet_prelude::*;
use scale_info::TypeInfo;
- use frame_system::{self as system, ensure_signed, ensure_root};
+ use frame_system::{ensure_signed, ensure_root};
use sp_std::{vec, vec::Vec};
use up_data_structs::{
MAX_COLLECTION_NAME_LENGTH, MAX_COLLECTION_DESCRIPTION_LENGTH, MAX_TOKEN_PREFIX_LENGTH,
primitives/common/src/constants.rsdiffbeforeafterboth--- a/primitives/common/src/constants.rs
+++ b/primitives/common/src/constants.rs
@@ -64,9 +64,10 @@
/// by Operational extrinsics.
pub const NORMAL_DISPATCH_RATIO: Perbill = Perbill::from_percent(75);
/// We allow for 2 seconds of compute with a 6 second average block time.
-pub const MAXIMUM_BLOCK_WEIGHT: Weight =
- Weight::from_ref_time(WEIGHT_REF_TIME_PER_SECOND.saturating_div(2))
- .set_proof_size(MAX_POV_SIZE as u64);
+pub const MAXIMUM_BLOCK_WEIGHT: Weight = Weight::from_parts(
+ WEIGHT_REF_TIME_PER_SECOND.saturating_div(2),
+ MAX_POV_SIZE as u64,
+);
parameter_types! {
pub const TransactionByteFee: Balance = 501 * MICROUNIQUE / 2;
runtime/common/config/ethereum.rsdiffbeforeafterboth--- a/runtime/common/config/ethereum.rs
+++ b/runtime/common/config/ethereum.rs
@@ -28,7 +28,7 @@
pub const GasPerSecond: u64 = WritesPerSecond::get() * 20000;
pub const WeightTimePerGas: u64 = WEIGHT_REF_TIME_PER_SECOND / GasPerSecond::get();
- pub const WeightPerGas: Weight = Weight::from_ref_time(WeightTimePerGas::get());
+ pub const WeightPerGas: Weight = Weight::from_parts(WeightTimePerGas::get(), 0);
}
/// Limiting EVM execution to 50% of block for substrate users and management tasks
runtime/common/mod.rsdiffbeforeafterboth--- a/runtime/common/mod.rs
+++ b/runtime/common/mod.rs
@@ -27,6 +27,7 @@
pub mod scheduler;
pub mod sponsoring;
+#[allow(missing_docs)]
pub mod weights;
#[cfg(test)]
@@ -152,7 +153,7 @@
}
#[cfg(feature = "runtime-benchmarks")]
fn set_block_number(block: Self::BlockNumber) {
- cumulus_pallet_parachain_system::RelaychainBlockNumberProvider::<T>::set_block_number(block)
+ cumulus_pallet_parachain_system::RelaychainDataProvider::<T>::set_block_number(block)
}
}