From 00626c01835e7324a6c6204cbe9f08e043ca14dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alexander=20Thei=C3=9Fen?= Date: Tue, 18 Oct 2022 11:56:17 +0200 Subject: [PATCH] contracts: Reduce session length and enable unstable interfaces (#1748) * Reduce session for contracts to 10 minutes * Build pallet-contracts with unstable interface * Set `MinCandidates` to 0 to allow only invulnerables as collators --- parachains/runtimes/contracts/contracts-rococo/Cargo.toml | 8 +------- parachains/runtimes/contracts/contracts-rococo/src/lib.rs | 7 ++++--- 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/parachains/runtimes/contracts/contracts-rococo/Cargo.toml b/parachains/runtimes/contracts/contracts-rococo/Cargo.toml index 4bd3715fe4..2e6f65ceac 100644 --- a/parachains/runtimes/contracts/contracts-rococo/Cargo.toml +++ b/parachains/runtimes/contracts/contracts-rococo/Cargo.toml @@ -47,7 +47,7 @@ pallet-transaction-payment = { git = "https://github.com/paritytech/substrate", pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "master" } pallet-utility = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "master" } pallet-sudo = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "master" } -pallet-contracts = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "master" } +pallet-contracts = { git = "https://github.com/paritytech/substrate", default-features = false, features = ["unstable-interface"], branch = "master" } pallet-contracts-primitives = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "master" } # Polkadot @@ -131,12 +131,6 @@ std = [ "cumulus-primitives-utility/std", ] -# Make contract callable functions marked as __unstable__ available. Do not enable -# on live chains as those are subject to change. -contracts-unstable-interface = [ - "pallet-contracts/unstable-interface" -] - runtime-benchmarks = [ "hex-literal", "frame-benchmarking/runtime-benchmarks", diff --git a/parachains/runtimes/contracts/contracts-rococo/src/lib.rs b/parachains/runtimes/contracts/contracts-rococo/src/lib.rs index 92ddbaf7ad..579801078a 100644 --- a/parachains/runtimes/contracts/contracts-rococo/src/lib.rs +++ b/parachains/runtimes/contracts/contracts-rococo/src/lib.rs @@ -58,7 +58,8 @@ use frame_system::limits::{BlockLength, BlockWeights}; pub use parachains_common as common; use parachains_common::{ impls::DealWithFees, opaque, AccountId, BlockNumber, Hash, Header, Index, Signature, - AVERAGE_ON_INITIALIZE_RATIO, HOURS, MAXIMUM_BLOCK_WEIGHT, NORMAL_DISPATCH_RATIO, SLOT_DURATION, + AVERAGE_ON_INITIALIZE_RATIO, MAXIMUM_BLOCK_WEIGHT, MINUTES, NORMAL_DISPATCH_RATIO, + SLOT_DURATION, }; pub use parachains_common::{AuraId, Balance}; use xcm_config::CollatorSelectionUpdateOrigin; @@ -269,7 +270,7 @@ impl parachain_info::Config for Runtime {} impl cumulus_pallet_aura_ext::Config for Runtime {} parameter_types! { - pub const Period: u32 = 6 * HOURS; + pub const Period: u32 = 10 * MINUTES; pub const Offset: u32 = 0; } @@ -303,7 +304,7 @@ impl pallet_collator_selection::Config for Runtime { type UpdateOrigin = CollatorSelectionUpdateOrigin; type PotId = PotId; type MaxCandidates = ConstU32<1000>; - type MinCandidates = ConstU32<5>; + type MinCandidates = ConstU32<0>; type MaxInvulnerables = ConstU32<100>; // should be a multiple of session or things will get inconsistent type KickThreshold = Period;