chore: regenerate umbrella crate, fix feature propagation
This commit is contained in:
@@ -32,19 +32,19 @@
|
||||
//!
|
||||
//! ## Pezpallet API
|
||||
//!
|
||||
//! This pezpallet exposes two APIs; one *inbound* side to update parameters, and one *outbound* side
|
||||
//! to access said parameters. Parameters themselves are defined in the runtime config and will be
|
||||
//! aggregated into an enum. Each parameter is addressed by a `key` and can have a default value.
|
||||
//! This is not done by the pezpallet but through the [`pezframe_support::dynamic_params::dynamic_params`]
|
||||
//! macro or alternatives.
|
||||
//! This pezpallet exposes two APIs; one *inbound* side to update parameters, and one *outbound*
|
||||
//! side to access said parameters. Parameters themselves are defined in the runtime config and will
|
||||
//! be aggregated into an enum. Each parameter is addressed by a `key` and can have a default value.
|
||||
//! This is not done by the pezpallet but through the
|
||||
//! [`pezframe_support::dynamic_params::dynamic_params`] macro or alternatives.
|
||||
//!
|
||||
//! Note that this is incurring one storage read per access. This should not be a problem in most
|
||||
//! cases but must be considered in weight-restrained code.
|
||||
//!
|
||||
//! ### Inbound
|
||||
//!
|
||||
//! The inbound side solely consists of the [`Pezpallet::set_parameter`] extrinsic to update the value
|
||||
//! of a parameter. Each parameter can have their own admin origin as given by the
|
||||
//! The inbound side solely consists of the [`Pezpallet::set_parameter`] extrinsic to update the
|
||||
//! value of a parameter. Each parameter can have their own admin origin as given by the
|
||||
//! [`Config::AdminOrigin`].
|
||||
//!
|
||||
//! ### Outbound
|
||||
@@ -60,13 +60,13 @@
|
||||
//!
|
||||
//! ## Overview
|
||||
//!
|
||||
//! This pezpallet is a good fit for updating parameters without a runtime upgrade. It is very handy to
|
||||
//! not require a runtime upgrade for a simple parameter change since runtime upgrades require a lot
|
||||
//! of diligence and always bear risks. It seems overkill to update the whole runtime for a simple
|
||||
//! parameter change. This pezpallet allows for fine-grained control over who can update what.
|
||||
//! The only down-side is that it trades off performance with convenience and should therefore only
|
||||
//! be used in places where that is proven to be uncritical. Values that are rarely accessed but
|
||||
//! change often would be a perfect fit.
|
||||
//! This pezpallet is a good fit for updating parameters without a runtime upgrade. It is very handy
|
||||
//! to not require a runtime upgrade for a simple parameter change since runtime upgrades require a
|
||||
//! lot of diligence and always bear risks. It seems overkill to update the whole runtime for a
|
||||
//! simple parameter change. This pezpallet allows for fine-grained control over who can update
|
||||
//! what. The only down-side is that it trades off performance with convenience and should therefore
|
||||
//! only be used in places where that is proven to be uncritical. Values that are rarely accessed
|
||||
//! but change often would be a perfect fit.
|
||||
//!
|
||||
//! ### Example Configuration
|
||||
//!
|
||||
@@ -76,9 +76,9 @@
|
||||
//! A permissioned origin can be define on a per-key basis like this:
|
||||
#![doc = docify::embed!("src/tests/mock.rs", custom_origin)]
|
||||
//!
|
||||
//! The pezpallet will also require a default value for benchmarking. Ideally this is the variant with
|
||||
//! the longest encoded length. Although in either case the PoV benchmarking will take the worst
|
||||
//! case over the whole enum.
|
||||
//! The pezpallet will also require a default value for benchmarking. Ideally this is the variant
|
||||
//! with the longest encoded length. Although in either case the PoV benchmarking will take the
|
||||
//! worst case over the whole enum.
|
||||
#![doc = docify::embed!("src/tests/mock.rs", benchmarking_default)]
|
||||
//!
|
||||
//! Now the aggregated parameter needs to be injected into the pezpallet config:
|
||||
@@ -94,14 +94,14 @@
|
||||
//!
|
||||
//! ## Low Level / Implementation Details
|
||||
//!
|
||||
//! The pezpallet stores the parameters in a storage map and implements the matching `Get<Value>` for
|
||||
//! each `Key` type. The `Get` then accesses the `Parameters` map to retrieve the value. An event is
|
||||
//! emitted every time that a value was updated. It is even emitted when the value is changed to the
|
||||
//! same.
|
||||
//! The pezpallet stores the parameters in a storage map and implements the matching `Get<Value>`
|
||||
//! for each `Key` type. The `Get` then accesses the `Parameters` map to retrieve the value. An
|
||||
//! event is emitted every time that a value was updated. It is even emitted when the value is
|
||||
//! changed to the same.
|
||||
//!
|
||||
//! The key and value types themselves are defined by macros and aggregated into a runtime wide
|
||||
//! enum. This enum is then injected into the pezpallet. This allows it to be used without any changes
|
||||
//! to the pezpallet that the parameter will be utilized by.
|
||||
//! enum. This enum is then injected into the pezpallet. This allows it to be used without any
|
||||
//! changes to the pezpallet that the parameter will be utilized by.
|
||||
//!
|
||||
//! ### Design Goals
|
||||
//!
|
||||
@@ -149,7 +149,8 @@ pub mod pezpallet {
|
||||
/// The overarching event type.
|
||||
#[pezpallet::no_default_bounds]
|
||||
#[allow(deprecated)]
|
||||
type RuntimeEvent: From<Event<Self>> + IsType<<Self as pezframe_system::Config>::RuntimeEvent>;
|
||||
type RuntimeEvent: From<Event<Self>>
|
||||
+ IsType<<Self as pezframe_system::Config>::RuntimeEvent>;
|
||||
|
||||
/// The overarching KV type of the parameters.
|
||||
///
|
||||
|
||||
@@ -32,7 +32,8 @@ use crate::*;
|
||||
#[derive_impl(pezframe_system::config_preludes::TestDefaultConfig)]
|
||||
impl pezframe_system::Config for Runtime {
|
||||
type Block = pezframe_system::mocking::MockBlock<Runtime>;
|
||||
type AccountData = pezpallet_balances::AccountData<<Self as pezpallet_balances::Config>::Balance>;
|
||||
type AccountData =
|
||||
pezpallet_balances::AccountData<<Self as pezpallet_balances::Config>::Balance>;
|
||||
}
|
||||
|
||||
#[derive_impl(pezpallet_balances::config_preludes::TestDefaultConfig)]
|
||||
|
||||
@@ -34,7 +34,8 @@ use RuntimeParametersRenamed::*;
|
||||
#[derive_impl(pezframe_system::config_preludes::TestDefaultConfig)]
|
||||
impl pezframe_system::Config for Runtime {
|
||||
type Block = pezframe_system::mocking::MockBlock<Runtime>;
|
||||
type AccountData = pezpallet_balances::AccountData<<Self as pezpallet_balances::Config>::Balance>;
|
||||
type AccountData =
|
||||
pezpallet_balances::AccountData<<Self as pezpallet_balances::Config>::Balance>;
|
||||
}
|
||||
|
||||
#[derive_impl(pezpallet_balances::config_preludes::TestDefaultConfig)]
|
||||
|
||||
Reference in New Issue
Block a user