Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,7 @@ Changelog for the runtimes governed by the Polkadot Fellowship.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).

## [Unreleased]

## [2.0.4] 18.12.2025

### Changed

Expand All @@ -14,6 +13,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
- asset-hub-polkadot: increase the base deposit for a signed NPoS solution from 4 to 100 DOT, significantly mitigating the risk of transaction spamming ([#1022](https://github.com/polkadot-fellows/runtimes/pull/1022))
- Adjust OpenGov parameters based on WFC 1701 ([polkadot-fellows/runtimes/pull/873](https://github.com/polkadot-fellows/runtimes/pull/873))
- asset-hub-kusama: update to latest version of pallet-revive with EVM backend ([polkadot-fellows/runtimes/pull/1029](https://github.com/polkadot-fellows/runtimes/pull/1029))
- Enable Elastic Scaling on Assethub Kusama ([polkadot-fellows/runtimes/pull/1037](https://github.com/polkadot-fellows/runtimes/pull/1037))
- Enable buffered validator selection on Assethub Kusama ([polkadot-fellows/runtimes/pull/1037](https://github.com/polkadot-fellows/runtimes/pull/1037))

### Added

Expand Down
26 changes: 14 additions & 12 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ pallet-ah-migrator = { path = "pallets/ah-migrator", default-features = false }
pallet-rc-migrator = { path = "pallets/rc-migrator", default-features = false }
pallet-ah-ops = { path = "pallets/ah-ops", default-features = false }
pallet-election-provider-multi-block = { version = "0.5.0", default-features = false }
pallet-staking-async = { version = "0.7.0", default-features = false }
pallet-staking-async = { version = "0.7.1", default-features = false }
hex = { version = "0.4.3", default-features = false }
rand = { version = "0.9.2" }
impl-trait-for-tuples = { version = "0.2.3", default-features = false }
Expand Down Expand Up @@ -188,7 +188,7 @@ pallet-xcm-bridge-hub = { version = "0.20.0", default-features = false }
pallet-xcm-bridge-hub-router = { version = "0.22.0", default-features = false }
parachain-info = { version = "0.24.0", default-features = false, package = "staging-parachain-info" }
parachains-common = { version = "26.0.0", default-features = false }
parachains-runtimes-test-utils = { version = "27.0.0" }
parachains-runtimes-test-utils = { version = "27.0.1" }
paste = { version = "1.0.14" }
penpal-emulated-chain = { path = "integration-tests/emulated/chains/parachains/testing/penpal" }
penpal-runtime = { version = "0.34.0" }
Expand Down Expand Up @@ -266,7 +266,7 @@ system-parachains-common = { path = "system-parachains/common", default-features
tokio = { version = "1.45.0" }
xcm = { version = "20.0.0", default-features = false, package = "staging-xcm" }
xcm-builder = { version = "24.0.0", default-features = false, package = "staging-xcm-builder" }
xcm-emulator = { version = "0.24.0" }
xcm-emulator = { version = "0.24.1" }
xcm-executor = { version = "23.0.0", default-features = false, package = "staging-xcm-executor" }
xcm-runtime-apis = { version = "0.11.0", default-features = false }
anyhow = { version = "1.0.82" }
Expand Down
2 changes: 1 addition & 1 deletion relay/kusama/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -188,7 +188,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion {
spec_name: alloc::borrow::Cow::Borrowed("kusama"),
impl_name: alloc::borrow::Cow::Borrowed("parity-kusama"),
authoring_version: 2,
spec_version: 2_000_003,
spec_version: 2_000_004,
impl_version: 0,
apis: RUNTIME_API_VERSIONS,
transaction_version: 26,
Expand Down
2 changes: 1 addition & 1 deletion relay/polkadot/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -177,7 +177,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion {
spec_name: alloc::borrow::Cow::Borrowed("polkadot"),
impl_name: alloc::borrow::Cow::Borrowed("parity-polkadot"),
authoring_version: 0,
spec_version: 2_000_003,
spec_version: 2_000_004,
impl_version: 0,
apis: RUNTIME_API_VERSIONS,
transaction_version: 26,
Expand Down
10 changes: 6 additions & 4 deletions system-parachains/asset-hubs/asset-hub-kusama/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,9 @@ use system_parachains_constants::{
},
kusama::{
consensus::{
async_backing::UNINCLUDED_SEGMENT_CAPACITY, BLOCK_PROCESSING_VELOCITY,
elastic_scaling::{
BLOCK_PROCESSING_VELOCITY, RELAY_PARENT_OFFSET, UNINCLUDED_SEGMENT_CAPACITY,
},
RELAY_CHAIN_SLOT_DURATION_MILLIS,
},
currency::*,
Expand Down Expand Up @@ -145,7 +147,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion {
spec_name: Cow::Borrowed("statemine"),
impl_name: Cow::Borrowed("statemine"),
authoring_version: 1,
spec_version: 2_000_003,
spec_version: 2_000_004,
impl_version: 0,
apis: RUNTIME_API_VERSIONS,
transaction_version: 15,
Expand Down Expand Up @@ -850,7 +852,7 @@ impl cumulus_pallet_parachain_system::Config for Runtime {
type ConsensusHook = ConsensusHook;
type WeightInfo = weights::cumulus_pallet_parachain_system::WeightInfo<Runtime>;
type SelectCore = cumulus_pallet_parachain_system::DefaultCoreSelector<Runtime>;
type RelayParentOffset = ConstU32<0>;
type RelayParentOffset = ConstU32<RELAY_PARENT_OFFSET>;
}

type ConsensusHook = cumulus_pallet_aura_ext::FixedVelocityConsensusHook<
Expand Down Expand Up @@ -2313,7 +2315,7 @@ pallet_revive::impl_runtime_apis_plus_revive_traits!(

impl cumulus_primitives_core::RelayParentOffsetApi<Block> for Runtime {
fn relay_parent_offset() -> u32 {
0
RELAY_PARENT_OFFSET
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -412,8 +412,8 @@ impl pallet_staking_async::Config for Runtime {
type EventListeners = (NominationPools, DelegatedStaking);
// Note used; don't care.
type MaxInvulnerables = frame_support::traits::ConstU32<20>;
type PlanningEraOffset =
pallet_staking_async::PlanningEraOffsetOf<Self, RelaySessionDuration, ConstU32<10>>;
// This will start election for the next era as soon as an era starts.
type PlanningEraOffset = ConstU32<6>;
type RcClientInterface = StakingRcClient;
type MaxEraDuration = MaxEraDuration;
type WeightInfo = weights::pallet_staking_async::WeightInfo<Runtime>;
Expand All @@ -425,6 +425,8 @@ impl pallet_staking_async_rc_client::Config for Runtime {
type AHStakingInterface = Staking;
type SendToRelayChain = StakingXcmToRelayChain;
type MaxValidatorSetRetries = ConstU32<64>;
// Export elected validator set at end of session 4.
type ValidatorSetExportSession = ConstU32<4>;
}

#[derive(Encode, Decode)]
Expand Down
2 changes: 1 addition & 1 deletion system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -191,7 +191,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion {
impl_name: Cow::Borrowed("statemint"),
spec_name: Cow::Borrowed("statemint"),
authoring_version: 1,
spec_version: 2_000_003,
spec_version: 2_000_004,
impl_version: 0,
apis: RUNTIME_API_VERSIONS,
transaction_version: 15,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -389,6 +389,8 @@ impl pallet_staking_async_rc_client::Config for Runtime {
type AHStakingInterface = Staking;
type SendToRelayChain = StakingXcmToRelayChain;
type MaxValidatorSetRetries = ConstU32<64>;
// export validators as soon as election results are ready.
type ValidatorSetExportSession = ConstU32<0>;
}

#[derive(Encode, Decode)]
Expand Down
2 changes: 1 addition & 1 deletion system-parachains/bridge-hubs/bridge-hub-kusama/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -179,7 +179,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion {
spec_name: Cow::Borrowed("bridge-hub-kusama"),
impl_name: Cow::Borrowed("bridge-hub-kusama"),
authoring_version: 1,
spec_version: 2_000_003,
spec_version: 2_000_004,
impl_version: 0,
apis: RUNTIME_API_VERSIONS,
transaction_version: 5,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -186,7 +186,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion {
spec_name: Cow::Borrowed("bridge-hub-polkadot"),
impl_name: Cow::Borrowed("bridge-hub-polkadot"),
authoring_version: 1,
spec_version: 2_000_003,
spec_version: 2_000_004,
impl_version: 0,
apis: RUNTIME_API_VERSIONS,
transaction_version: 4,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion {
spec_name: Cow::Borrowed("collectives"),
impl_name: Cow::Borrowed("collectives"),
authoring_version: 1,
spec_version: 2_000_003,
spec_version: 2_000_004,
impl_version: 0,
apis: RUNTIME_API_VERSIONS,
transaction_version: 7,
Expand Down
17 changes: 17 additions & 0 deletions system-parachains/constants/src/kusama.rs
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,23 @@ pub mod consensus {
/// the relay chain.
pub const UNINCLUDED_SEGMENT_CAPACITY: u32 = 3;
}

/// Parameters enabling elastic scaling functionality.
pub mod elastic_scaling {
/// Build with an offset of 1 behind the relay chain.
pub const RELAY_PARENT_OFFSET: u32 = 1;

/// The upper limit of how many parachain blocks are processed by the relay chain per
/// parent. Limits the number of blocks authored per slot. This determines the minimum
/// block time of the parachain:
/// `RELAY_CHAIN_SLOT_DURATION_MILLIS/BLOCK_PROCESSING_VELOCITY`
pub const BLOCK_PROCESSING_VELOCITY: u32 = 3;

/// Maximum number of blocks simultaneously accepted by the Runtime, not yet included
/// into the relay chain.
pub const UNINCLUDED_SEGMENT_CAPACITY: u32 =
(3 + RELAY_PARENT_OFFSET) * BLOCK_PROCESSING_VELOCITY;
}
}

/// Constants relating to KSM.
Expand Down
2 changes: 1 addition & 1 deletion system-parachains/coretime/coretime-kusama/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -153,7 +153,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion {
spec_name: Cow::Borrowed("coretime-kusama"),
impl_name: Cow::Borrowed("coretime-kusama"),
authoring_version: 1,
spec_version: 2_000_003,
spec_version: 2_000_004,
impl_version: 0,
apis: RUNTIME_API_VERSIONS,
transaction_version: 1,
Expand Down
2 changes: 1 addition & 1 deletion system-parachains/coretime/coretime-polkadot/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion {
spec_name: Cow::Borrowed("coretime-polkadot"),
impl_name: Cow::Borrowed("coretime-polkadot"),
authoring_version: 1,
spec_version: 2_000_003,
spec_version: 2_000_004,
impl_version: 0,
apis: RUNTIME_API_VERSIONS,
transaction_version: 0,
Expand Down
2 changes: 1 addition & 1 deletion system-parachains/encointer/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -146,7 +146,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion {
spec_name: Cow::Borrowed("encointer-parachain"),
impl_name: Cow::Borrowed("encointer-parachain"),
authoring_version: 1,
spec_version: 2_000_003,
spec_version: 2_000_004,
impl_version: 1,
apis: RUNTIME_API_VERSIONS,
transaction_version: 4,
Expand Down
2 changes: 1 addition & 1 deletion system-parachains/gluttons/glutton-kusama/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion {
spec_name: Cow::Borrowed("glutton"),
impl_name: Cow::Borrowed("glutton"),
authoring_version: 1,
spec_version: 2_000_003,
spec_version: 2_000_004,
impl_version: 0,
apis: RUNTIME_API_VERSIONS,
transaction_version: 1,
Expand Down
2 changes: 1 addition & 1 deletion system-parachains/people/people-kusama/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -174,7 +174,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion {
spec_name: Cow::Borrowed("people-kusama"),
impl_name: Cow::Borrowed("people-kusama"),
authoring_version: 1,
spec_version: 2_000_003,
spec_version: 2_000_004,
impl_version: 0,
apis: RUNTIME_API_VERSIONS,
transaction_version: 1,
Expand Down
2 changes: 1 addition & 1 deletion system-parachains/people/people-polkadot/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion {
spec_name: Cow::Borrowed("people-polkadot"),
impl_name: Cow::Borrowed("people-polkadot"),
authoring_version: 1,
spec_version: 2_000_003,
spec_version: 2_000_004,
impl_version: 0,
apis: RUNTIME_API_VERSIONS,
transaction_version: 0,
Expand Down
Loading