mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-05-30 14:01:02 +00:00
pallets: implement Default for GenesisConfig in no_std (#7271)
* pallets: implement Default for GenesisConfig in no_std This change is follow-up of: https://github.com/paritytech/substrate/pull/14108 It is a step towards: https://github.com/paritytech/substrate/issues/13334 * Cargo.lock updated * update lockfile for {"substrate"} --------- Co-authored-by: parity-processbot <>
This commit is contained in:
committed by
GitHub
parent
9535bc9437
commit
3d008cd074
Generated
+185
-185
File diff suppressed because it is too large
Load Diff
@@ -20,6 +20,7 @@ use frame_support::{
|
|||||||
ensure,
|
ensure,
|
||||||
traits::{Currency, Get, IsSubType, VestingSchedule},
|
traits::{Currency, Get, IsSubType, VestingSchedule},
|
||||||
weights::Weight,
|
weights::Weight,
|
||||||
|
DefaultNoBound,
|
||||||
};
|
};
|
||||||
pub use pallet::*;
|
pub use pallet::*;
|
||||||
use parity_scale_codec::{Decode, Encode};
|
use parity_scale_codec::{Decode, Encode};
|
||||||
@@ -28,10 +29,8 @@ use scale_info::TypeInfo;
|
|||||||
#[cfg(feature = "std")]
|
#[cfg(feature = "std")]
|
||||||
use serde::{self, Deserialize, Deserializer, Serialize, Serializer};
|
use serde::{self, Deserialize, Deserializer, Serialize, Serializer};
|
||||||
use sp_io::{crypto::secp256k1_ecdsa_recover, hashing::keccak_256};
|
use sp_io::{crypto::secp256k1_ecdsa_recover, hashing::keccak_256};
|
||||||
#[cfg(feature = "std")]
|
|
||||||
use sp_runtime::traits::Zero;
|
|
||||||
use sp_runtime::{
|
use sp_runtime::{
|
||||||
traits::{CheckedSub, DispatchInfoOf, SignedExtension},
|
traits::{CheckedSub, DispatchInfoOf, SignedExtension, Zero},
|
||||||
transaction_validity::{
|
transaction_validity::{
|
||||||
InvalidTransaction, TransactionValidity, TransactionValidityError, ValidTransaction,
|
InvalidTransaction, TransactionValidity, TransactionValidityError, ValidTransaction,
|
||||||
},
|
},
|
||||||
@@ -229,19 +228,13 @@ pub mod pallet {
|
|||||||
pub(super) type Preclaims<T: Config> = StorageMap<_, Identity, T::AccountId, EthereumAddress>;
|
pub(super) type Preclaims<T: Config> = StorageMap<_, Identity, T::AccountId, EthereumAddress>;
|
||||||
|
|
||||||
#[pallet::genesis_config]
|
#[pallet::genesis_config]
|
||||||
|
#[derive(DefaultNoBound)]
|
||||||
pub struct GenesisConfig<T: Config> {
|
pub struct GenesisConfig<T: Config> {
|
||||||
pub claims:
|
pub claims:
|
||||||
Vec<(EthereumAddress, BalanceOf<T>, Option<T::AccountId>, Option<StatementKind>)>,
|
Vec<(EthereumAddress, BalanceOf<T>, Option<T::AccountId>, Option<StatementKind>)>,
|
||||||
pub vesting: Vec<(EthereumAddress, (BalanceOf<T>, BalanceOf<T>, T::BlockNumber))>,
|
pub vesting: Vec<(EthereumAddress, (BalanceOf<T>, BalanceOf<T>, T::BlockNumber))>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(feature = "std")]
|
|
||||||
impl<T: Config> Default for GenesisConfig<T> {
|
|
||||||
fn default() -> Self {
|
|
||||||
GenesisConfig { claims: Default::default(), vesting: Default::default() }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#[pallet::genesis_build]
|
#[pallet::genesis_build]
|
||||||
impl<T: Config> GenesisBuild<T> for GenesisConfig<T> {
|
impl<T: Config> GenesisBuild<T> for GenesisConfig<T> {
|
||||||
fn build(&self) {
|
fn build(&self) {
|
||||||
|
|||||||
@@ -195,7 +195,6 @@ pub mod pallet {
|
|||||||
pub next_free_para_id: ParaId,
|
pub next_free_para_id: ParaId,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(feature = "std")]
|
|
||||||
impl Default for GenesisConfig {
|
impl Default for GenesisConfig {
|
||||||
fn default() -> Self {
|
fn default() -> Self {
|
||||||
GenesisConfig { next_free_para_id: LOWEST_PUBLIC_ID }
|
GenesisConfig { next_free_para_id: LOWEST_PUBLIC_ID }
|
||||||
|
|||||||
@@ -19,7 +19,7 @@
|
|||||||
//! Configuration can change only at session boundaries and is buffered until then.
|
//! Configuration can change only at session boundaries and is buffered until then.
|
||||||
|
|
||||||
use crate::{inclusion::MAX_UPWARD_MESSAGE_SIZE_BOUND, shared};
|
use crate::{inclusion::MAX_UPWARD_MESSAGE_SIZE_BOUND, shared};
|
||||||
use frame_support::pallet_prelude::*;
|
use frame_support::{pallet_prelude::*, DefaultNoBound};
|
||||||
use frame_system::pallet_prelude::*;
|
use frame_system::pallet_prelude::*;
|
||||||
use parity_scale_codec::{Decode, Encode};
|
use parity_scale_codec::{Decode, Encode};
|
||||||
use polkadot_parachain::primitives::{MAX_HORIZONTAL_MESSAGE_NUM, MAX_UPWARD_MESSAGE_NUM};
|
use polkadot_parachain::primitives::{MAX_HORIZONTAL_MESSAGE_NUM, MAX_UPWARD_MESSAGE_NUM};
|
||||||
@@ -525,17 +525,11 @@ pub mod pallet {
|
|||||||
pub(crate) type BypassConsistencyCheck<T: Config> = StorageValue<_, bool, ValueQuery>;
|
pub(crate) type BypassConsistencyCheck<T: Config> = StorageValue<_, bool, ValueQuery>;
|
||||||
|
|
||||||
#[pallet::genesis_config]
|
#[pallet::genesis_config]
|
||||||
|
#[derive(DefaultNoBound)]
|
||||||
pub struct GenesisConfig<T: Config> {
|
pub struct GenesisConfig<T: Config> {
|
||||||
pub config: HostConfiguration<T::BlockNumber>,
|
pub config: HostConfiguration<T::BlockNumber>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(feature = "std")]
|
|
||||||
impl<T: Config> Default for GenesisConfig<T> {
|
|
||||||
fn default() -> Self {
|
|
||||||
GenesisConfig { config: Default::default() }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#[pallet::genesis_build]
|
#[pallet::genesis_build]
|
||||||
impl<T: Config> GenesisBuild<T> for GenesisConfig<T> {
|
impl<T: Config> GenesisBuild<T> for GenesisConfig<T> {
|
||||||
fn build(&self) {
|
fn build(&self) {
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ use crate::{
|
|||||||
configuration::{self, HostConfiguration},
|
configuration::{self, HostConfiguration},
|
||||||
dmp, ensure_parachain, initializer, paras,
|
dmp, ensure_parachain, initializer, paras,
|
||||||
};
|
};
|
||||||
use frame_support::{pallet_prelude::*, traits::ReservableCurrency};
|
use frame_support::{pallet_prelude::*, traits::ReservableCurrency, DefaultNoBound};
|
||||||
use frame_system::pallet_prelude::*;
|
use frame_system::pallet_prelude::*;
|
||||||
use parity_scale_codec::{Decode, Encode};
|
use parity_scale_codec::{Decode, Encode};
|
||||||
use polkadot_parachain::primitives::HorizontalMessages;
|
use polkadot_parachain::primitives::HorizontalMessages;
|
||||||
@@ -435,17 +435,11 @@ pub mod pallet {
|
|||||||
/// configuration pallet.
|
/// configuration pallet.
|
||||||
/// 2. `sender` and `recipient` must be valid paras.
|
/// 2. `sender` and `recipient` must be valid paras.
|
||||||
#[pallet::genesis_config]
|
#[pallet::genesis_config]
|
||||||
|
#[derive(DefaultNoBound)]
|
||||||
pub struct GenesisConfig {
|
pub struct GenesisConfig {
|
||||||
preopen_hrmp_channels: Vec<(ParaId, ParaId, u32, u32)>,
|
preopen_hrmp_channels: Vec<(ParaId, ParaId, u32, u32)>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(feature = "std")]
|
|
||||||
impl Default for GenesisConfig {
|
|
||||||
fn default() -> Self {
|
|
||||||
GenesisConfig { preopen_hrmp_channels: Default::default() }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#[pallet::genesis_build]
|
#[pallet::genesis_build]
|
||||||
impl<T: Config> GenesisBuild<T> for GenesisConfig {
|
impl<T: Config> GenesisBuild<T> for GenesisConfig {
|
||||||
fn build(&self) {
|
fn build(&self) {
|
||||||
@@ -621,7 +615,6 @@ pub mod pallet {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(feature = "std")]
|
|
||||||
fn initialize_storage<T: Config>(preopen_hrmp_channels: &[(ParaId, ParaId, u32, u32)]) {
|
fn initialize_storage<T: Config>(preopen_hrmp_channels: &[(ParaId, ParaId, u32, u32)]) {
|
||||||
let host_config = configuration::Pallet::<T>::config();
|
let host_config = configuration::Pallet::<T>::config();
|
||||||
for &(sender, recipient, max_capacity, max_message_size) in preopen_hrmp_channels {
|
for &(sender, recipient, max_capacity, max_message_size) in preopen_hrmp_channels {
|
||||||
@@ -634,7 +627,6 @@ fn initialize_storage<T: Config>(preopen_hrmp_channels: &[(ParaId, ParaId, u32,
|
|||||||
<Pallet<T>>::process_hrmp_open_channel_requests(&host_config);
|
<Pallet<T>>::process_hrmp_open_channel_requests(&host_config);
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(feature = "std")]
|
|
||||||
fn preopen_hrmp_channel<T: Config>(
|
fn preopen_hrmp_channel<T: Config>(
|
||||||
sender: ParaId,
|
sender: ParaId,
|
||||||
recipient: ParaId,
|
recipient: ParaId,
|
||||||
|
|||||||
@@ -114,7 +114,7 @@ use crate::{
|
|||||||
shared,
|
shared,
|
||||||
};
|
};
|
||||||
use bitvec::{order::Lsb0 as BitOrderLsb0, vec::BitVec};
|
use bitvec::{order::Lsb0 as BitOrderLsb0, vec::BitVec};
|
||||||
use frame_support::{pallet_prelude::*, traits::EstimateNextSessionRotation};
|
use frame_support::{pallet_prelude::*, traits::EstimateNextSessionRotation, DefaultNoBound};
|
||||||
use frame_system::pallet_prelude::*;
|
use frame_system::pallet_prelude::*;
|
||||||
use parity_scale_codec::{Decode, Encode};
|
use parity_scale_codec::{Decode, Encode};
|
||||||
use primitives::{
|
use primitives::{
|
||||||
@@ -771,17 +771,11 @@ pub mod pallet {
|
|||||||
StorageMap<_, Identity, ValidationCodeHash, ValidationCode>;
|
StorageMap<_, Identity, ValidationCodeHash, ValidationCode>;
|
||||||
|
|
||||||
#[pallet::genesis_config]
|
#[pallet::genesis_config]
|
||||||
|
#[derive(DefaultNoBound)]
|
||||||
pub struct GenesisConfig {
|
pub struct GenesisConfig {
|
||||||
pub paras: Vec<(ParaId, ParaGenesisArgs)>,
|
pub paras: Vec<(ParaId, ParaGenesisArgs)>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(feature = "std")]
|
|
||||||
impl Default for GenesisConfig {
|
|
||||||
fn default() -> Self {
|
|
||||||
GenesisConfig { paras: Default::default() }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#[pallet::genesis_build]
|
#[pallet::genesis_build]
|
||||||
impl<T: Config> GenesisBuild<T> for GenesisConfig {
|
impl<T: Config> GenesisBuild<T> for GenesisConfig {
|
||||||
fn build(&self) {
|
fn build(&self) {
|
||||||
|
|||||||
@@ -638,7 +638,6 @@ pub mod pallet {
|
|||||||
pub safe_xcm_version: Option<XcmVersion>,
|
pub safe_xcm_version: Option<XcmVersion>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(feature = "std")]
|
|
||||||
impl Default for GenesisConfig {
|
impl Default for GenesisConfig {
|
||||||
fn default() -> Self {
|
fn default() -> Self {
|
||||||
Self { safe_xcm_version: Some(XCM_VERSION) }
|
Self { safe_xcm_version: Some(XCM_VERSION) }
|
||||||
|
|||||||
Reference in New Issue
Block a user