diff --git a/Cargo.lock b/Cargo.lock index 42a2818d..05a891dd 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2032,6 +2032,29 @@ dependencies = [ "thiserror", ] +[[package]] +name = "cumulus-client-consensus-relay-chain" +version = "0.7.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" +dependencies = [ + "async-trait", + "cumulus-client-consensus-common", + "cumulus-primitives-core", + "cumulus-relay-chain-interface", + "futures", + "parking_lot 0.12.3", + "sc-consensus", + "sp-api", + "sp-block-builder", + "sp-blockchain", + "sp-consensus", + "sp-core", + "sp-inherents", + "sp-runtime", + "substrate-prometheus-endpoint", + "tracing", +] + [[package]] name = "cumulus-client-network" version = "0.7.0" @@ -5220,9 +5243,12 @@ dependencies = [ "cumulus-client-consensus-aura", "cumulus-client-consensus-common", "cumulus-client-consensus-proposer", + "cumulus-client-consensus-relay-chain", "cumulus-client-service", "cumulus-primitives-core", + "cumulus-primitives-parachain-inherent", "cumulus-relay-chain-interface", + "cumulus-test-relay-sproof-builder", "fc-api", "fc-cli", "fc-consensus", diff --git a/Cargo.toml b/Cargo.toml index 46d071d8..4c22cf91 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -183,6 +183,8 @@ cumulus-pallet-session-benchmarking = { git = "https://github.com/paritytech/pol cumulus-primitives-core = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.11.0", default-features = false } cumulus-primitives-timestamp = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.11.0", default-features = false } cumulus-primitives-utility = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.11.0", default-features = false } +cumulus-primitives-parachain-inherent = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.11.0", default-features = false } +cumulus-test-relay-sproof-builder = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.11.0", default-features = false } parachain-info = { package = "staging-parachain-info", git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.11.0", default-features = false } parachains-common = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.11.0", default-features = false } @@ -191,6 +193,7 @@ cumulus-client-cli = { git = "https://github.com/paritytech/polkadot-sdk", branc cumulus-client-collator = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.11.0" } cumulus-client-consensus-aura = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.11.0" } cumulus-client-consensus-common = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.11.0" } +cumulus-client-consensus-relay-chain = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.11.0" } cumulus-client-network = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.11.0" } cumulus-client-consensus-proposer = {git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.11.0"} cumulus-client-service = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.11.0" } diff --git a/node/Cargo.toml b/node/Cargo.toml index ed144e1a..980e98b2 100644 --- a/node/Cargo.toml +++ b/node/Cargo.toml @@ -63,8 +63,11 @@ cumulus-client-collator = { workspace = true } cumulus-client-consensus-aura = { workspace = true } cumulus-client-consensus-common = { workspace = true } cumulus-client-consensus-proposer = { workspace = true } +cumulus-client-consensus-relay-chain = { workspace = true } cumulus-client-service = { workspace = true } cumulus-primitives-core = { workspace = true } +cumulus-primitives-parachain-inherent = { workspace = true } +cumulus-test-relay-sproof-builder = { workspace = true } cumulus-relay-chain-interface = { workspace = true } # Frontier diff --git a/node/src/service.rs b/node/src/service.rs index 1614b399..baf775b2 100644 --- a/node/src/service.rs +++ b/node/src/service.rs @@ -50,9 +50,11 @@ use sc_network_sync::SyncingService; use sc_service::{Configuration, PartialComponents, TFullBackend, TFullClient, TaskManager}; use sc_telemetry::{Telemetry, TelemetryHandle, TelemetryWorker, TelemetryWorkerHandle}; use sc_transaction_pool_api::OffchainTransactionPoolFactory; +use sp_consensus_aura::{Slot, SlotDuration}; use sp_core::U256; use sp_keystore::KeystorePtr; use substrate_prometheus_endpoint::Registry; + // Frontier use crate::eth::{ db_config_dir, new_frontier_partial, spawn_frontier_tasks, BackendType, EthConfiguration, @@ -310,8 +312,6 @@ async fn start_node_impl( fc_mapping_sync::EthereumBlockNotification, > = Default::default(); let pubsub_notification_sinks = Arc::new(pubsub_notification_sinks); - let slot_duration = sc_consensus_aura::slot_duration(&*client)?; - let target_gas_price = eth_config.target_gas_price; // for ethereum-compatibility rpc. parachain_config.rpc_id_provider = Some(Box::new(fc_rpc::EthereumSubIdProvider)); @@ -344,15 +344,33 @@ async fn start_node_impl( execute_gas_limit_multiplier: eth_config.execute_gas_limit_multiplier, forced_parent_hashes: None, pending_create_inherent_data_providers: move |_, ()| async move { - let current = sp_timestamp::InherentDataProvider::from_system_time(); - let next_slot = current.timestamp().as_millis() + slot_duration.as_millis(); - let timestamp = sp_timestamp::InherentDataProvider::new(next_slot.into()); - let slot = sp_consensus_aura::inherents::InherentDataProvider::from_timestamp_and_slot_duration( - *timestamp, - slot_duration, + // Patch from https://github.com/darwinia-network/darwinia/pull/1608 + let timestamp = sp_timestamp::InherentDataProvider::from_system_time(); + let relay_chain_slot = Slot::from_timestamp( + timestamp.timestamp(), + SlotDuration::from_millis(6000_u64), // RELAY_CHAIN_SLOT_DURATION_MILLIS ); - let dynamic_fee = fp_dynamic_fee::InherentDataProvider(U256::from(target_gas_price)); - Ok((slot, timestamp, dynamic_fee)) + + let state_proof_builder = cumulus_test_relay_sproof_builder::RelayStateSproofBuilder { + para_id, + current_slot: relay_chain_slot, + included_para_head: Some(polkadot_primitives::HeadData(vec![])), + ..Default::default() + }; + let (relay_parent_storage_root, relay_chain_state) = + state_proof_builder.into_state_root_and_proof(); + let parachain_inherent_data = + cumulus_primitives_parachain_inherent::ParachainInherentData { + validation_data: cumulus_primitives_core::PersistedValidationData { + relay_parent_number: u32::MAX, + relay_parent_storage_root, + ..Default::default() + }, + relay_chain_state, + downward_messages: Default::default(), + horizontal_messages: Default::default(), + }; + Ok((timestamp, parachain_inherent_data)) }, }; diff --git a/primitives/src/lib.rs b/primitives/src/lib.rs index 0e0b28a5..8562769f 100644 --- a/primitives/src/lib.rs +++ b/primitives/src/lib.rs @@ -19,12 +19,18 @@ #![warn(missing_docs)] #![cfg_attr(not(feature = "std"), no_std)] -use frame_support::weights::IdentityFee; +use frame_support::weights::{constants::WEIGHT_REF_TIME_PER_SECOND, IdentityFee, Weight}; use frame_system::limits; -pub use parachains_common::{MAXIMUM_BLOCK_WEIGHT, NORMAL_DISPATCH_RATIO}; +pub use parachains_common::NORMAL_DISPATCH_RATIO; use sp_core::Hasher as HasherT; use sp_runtime::traits::{BlakeTwo256, IdentifyAccount, Verify}; +/// We allow for 2 seconds of compute with a 6 second average block. +pub const MAXIMUM_BLOCK_WEIGHT: Weight = Weight::from_parts( + WEIGHT_REF_TIME_PER_SECOND.saturating_mul(2), + cumulus_primitives_core::relay_chain::MAX_POV_SIZE as u64, +); + /// Authority ID used in parachain. pub type AuraId = sp_consensus_aura::sr25519::AuthorityId; @@ -78,12 +84,12 @@ mod tests { let weights = RuntimeBlockWeights::get(); assert_eq!(weights.base_block, Weight::from_parts(453383000, 0)); - assert_eq!(weights.max_block, Weight::from_parts(500000000000, 5242880)); + assert_eq!(weights.max_block, Weight::from_parts(2000000000000, 5242880)); let normal = weights.per_class.get(DispatchClass::Normal); assert_eq!(normal.base_extrinsic, Weight::from_parts(107074000, 0)); - assert_eq!(normal.max_extrinsic, Some(Weight::from_parts(324892926000, 3407872))); - assert_eq!(normal.max_total, Some(Weight::from_parts(375000000000, 3932160))); + assert_eq!(normal.max_extrinsic, Some(Weight::from_parts(1299892926000, 3407872))); + assert_eq!(normal.max_total, Some(Weight::from_parts(1500000000000, 3932160))); assert_eq!(normal.reserved, Some(Weight::from_parts(0, 0))); let mandatory = weights.per_class.get(DispatchClass::Mandatory); @@ -94,8 +100,8 @@ mod tests { let operational = weights.per_class.get(DispatchClass::Operational); assert_eq!(operational.base_extrinsic, Weight::from_parts(107074000, 0)); - assert_eq!(operational.max_extrinsic, Some(Weight::from_parts(449892926000, 4718592))); - assert_eq!(operational.max_total, Some(Weight::from_parts(500000000000, 5242880))); - assert_eq!(operational.reserved, Some(Weight::from_parts(125000000000, 1310720))); + assert_eq!(operational.max_extrinsic, Some(Weight::from_parts(1799892926000, 4718592))); + assert_eq!(operational.max_total, Some(Weight::from_parts(2000000000000, 5242880))); + assert_eq!(operational.reserved, Some(Weight::from_parts(500000000000, 1310720))); } } diff --git a/runtime/laos/src/configs/aura.rs b/runtime/laos/src/configs/aura.rs index 878f12af..f1119ffd 100644 --- a/runtime/laos/src/configs/aura.rs +++ b/runtime/laos/src/configs/aura.rs @@ -20,7 +20,7 @@ use sp_core::ConstU64; parameter_types! { pub const MaxAuthorities : u32 = 100_000; - pub const AllowMultipleBlocksPerSlot: bool = false; + pub const AllowMultipleBlocksPerSlot: bool = true; } impl pallet_aura::Config for Runtime { diff --git a/runtime/laos/src/configs/collective.rs b/runtime/laos/src/configs/collective.rs index f7da8573..7519def1 100644 --- a/runtime/laos/src/configs/collective.rs +++ b/runtime/laos/src/configs/collective.rs @@ -1,8 +1,10 @@ -use crate::{weights, AccountId, BlockNumber, Runtime, RuntimeCall, RuntimeEvent, RuntimeOrigin}; +use crate::{ + weights, AccountId, BlockNumber, Runtime, RuntimeCall, RuntimeEvent, RuntimeOrigin, DAYS, + MINUTES, +}; use frame_support::{pallet_prelude::Weight, parameter_types}; use frame_system::EnsureRoot; use laos_primitives::RuntimeBlockWeights; -use parachains_common::{DAYS, MINUTES}; use polkadot_runtime_common::prod_or_fast; use sp_runtime::Perbill; diff --git a/runtime/laos/src/configs/cumulus_parachain_system.rs b/runtime/laos/src/configs/cumulus_parachain_system.rs index 33b13fb2..90a70e54 100644 --- a/runtime/laos/src/configs/cumulus_parachain_system.rs +++ b/runtime/laos/src/configs/cumulus_parachain_system.rs @@ -38,7 +38,8 @@ impl cumulus_pallet_parachain_system::Config for Runtime { type ReservedDmpWeight = ReservedDmpWeight; type XcmpMessageHandler = XcmpQueue; type ReservedXcmpWeight = ReservedXcmpWeight; - type CheckAssociatedRelayNumber = cumulus_pallet_parachain_system::RelayNumberStrictlyIncreases; + type CheckAssociatedRelayNumber = + cumulus_pallet_parachain_system::RelayNumberMonotonicallyIncreases; type ConsensusHook = ConsensusHook; type DmpQueue = frame_support::traits::EnqueueWithOrigin; type WeightInfo = weights::cumulus_pallet_parachain_system::WeightInfo; diff --git a/runtime/laos/src/configs/democracy.rs b/runtime/laos/src/configs/democracy.rs index ab611a75..924e9532 100644 --- a/runtime/laos/src/configs/democracy.rs +++ b/runtime/laos/src/configs/democracy.rs @@ -4,11 +4,10 @@ use super::collective::{ }; use crate::{ currency::UNIT, weights, AccountId, Balance, Balances, BlockNumber, OriginCaller, Preimage, - Runtime, RuntimeEvent, Scheduler, TechnicalCommitteeMembership, Treasury, + Runtime, RuntimeEvent, Scheduler, TechnicalCommitteeMembership, Treasury, DAYS, HOURS, MINUTES, }; use frame_support::{parameter_types, traits::EitherOfDiverse}; use frame_system::{EnsureRoot, EnsureSigned, EnsureSignedBy}; -use parachains_common::{DAYS, HOURS, MINUTES}; use polkadot_runtime_common::prod_or_fast; parameter_types! { @@ -148,7 +147,7 @@ mod tests { ); // the same preimage can be re-proposed as the cooloff period is over - frame_system::Pallet::::set_block_number(50402); + frame_system::Pallet::::set_block_number(50402 * 2); assert_ok!(pallet_democracy::Pallet::::external_propose( OriginCaller::Council(pallet_collective::RawOrigin::Members(1, 1)).into(), preimage diff --git a/runtime/laos/src/configs/election_phragmen.rs b/runtime/laos/src/configs/election_phragmen.rs index bdc18390..7ab9f80d 100644 --- a/runtime/laos/src/configs/election_phragmen.rs +++ b/runtime/laos/src/configs/election_phragmen.rs @@ -1,9 +1,8 @@ use crate::{ currency::UNIT, weights, Balance, Balances, BlockNumber, Council, Runtime, RuntimeEvent, - Treasury, + Treasury, DAYS, MINUTES, }; use frame_support::{parameter_types, traits::LockIdentifier}; -use parachains_common::{DAYS, MINUTES}; use polkadot_runtime_common::{prod_or_fast, CurrencyToVote}; parameter_types! { diff --git a/runtime/laos/src/configs/evm.rs b/runtime/laos/src/configs/evm.rs index c6919f83..96a9ffc4 100644 --- a/runtime/laos/src/configs/evm.rs +++ b/runtime/laos/src/configs/evm.rs @@ -131,7 +131,7 @@ mod tests { #[test] fn check_block_gas_limit() { - assert_eq!(BlockGasLimit::get(), 15000000.into()); + assert_eq!(BlockGasLimit::get(), 60000000.into()); } #[test] diff --git a/runtime/laos/src/configs/identity.rs b/runtime/laos/src/configs/identity.rs index 91dc91bd..129e9908 100644 --- a/runtime/laos/src/configs/identity.rs +++ b/runtime/laos/src/configs/identity.rs @@ -1,10 +1,9 @@ use crate::{ currency::calculate_deposit, AccountId, Balance, Balances, Runtime, RuntimeEvent, Signature, - Treasury, + Treasury, DAYS, }; use frame_support::parameter_types; use frame_system::EnsureRoot; -use parachains_common::DAYS; parameter_types! { pub const MaxSubAccounts: u32 = 100; diff --git a/runtime/laos/src/configs/parachain_staking.rs b/runtime/laos/src/configs/parachain_staking.rs index 6f4fa8b4..35e61f0c 100644 --- a/runtime/laos/src/configs/parachain_staking.rs +++ b/runtime/laos/src/configs/parachain_staking.rs @@ -343,6 +343,6 @@ mod tests { #[test] fn test_slot_per_year() { - assert_eq!(SlotsPerYear::get(), 31_557_600 / 12); + assert_eq!(SlotsPerYear::get(), 31_557_600 / 6); } } diff --git a/runtime/laos/src/configs/scheduler.rs b/runtime/laos/src/configs/scheduler.rs index 0a9afb0b..c2fce06a 100644 --- a/runtime/laos/src/configs/scheduler.rs +++ b/runtime/laos/src/configs/scheduler.rs @@ -3,8 +3,7 @@ use crate::{ }; use frame_support::{parameter_types, traits::EqualPrivilegeOnly, weights::Weight}; use frame_system::EnsureRoot; -use laos_primitives::RuntimeBlockWeights; -pub use parachains_common::NORMAL_DISPATCH_RATIO; +use laos_primitives::{RuntimeBlockWeights, NORMAL_DISPATCH_RATIO}; parameter_types! { pub const MaxScheduledPerBlock: u32 = 50; diff --git a/runtime/laos/src/configs/timestamp.rs b/runtime/laos/src/configs/timestamp.rs index a1d52a99..8b448299 100644 --- a/runtime/laos/src/configs/timestamp.rs +++ b/runtime/laos/src/configs/timestamp.rs @@ -14,11 +14,11 @@ // You should have received a copy of the GNU General Public License // along with LAOS. If not, see . -use crate::{weights, Aura, Runtime, MILLISECS_PER_BLOCK}; +use crate::{weights, Aura, Runtime}; use frame_support::parameter_types; parameter_types! { - pub const MinimumPeriod: u64 = MILLISECS_PER_BLOCK / 2; + pub const MinimumPeriod: u64 = 0; } impl pallet_timestamp::Config for Runtime { diff --git a/runtime/laos/src/configs/treasury.rs b/runtime/laos/src/configs/treasury.rs index a3165dcd..e9e49c2a 100644 --- a/runtime/laos/src/configs/treasury.rs +++ b/runtime/laos/src/configs/treasury.rs @@ -1,7 +1,7 @@ use super::collective::CouncilMajority; use crate::{ currency::UNIT, weights, AccountId, Balance, Balances, BlockNumber, Permill, Runtime, - RuntimeEvent, Treasury, + RuntimeEvent, Treasury, DAYS, MINUTES, }; use frame_support::{ parameter_types, @@ -12,7 +12,6 @@ use frame_support::{ PalletId, }; use frame_system::EnsureRoot; -use parachains_common::{DAYS, MINUTES}; use polkadot_runtime_common::prod_or_fast; use sp_runtime::traits::IdentityLookup; diff --git a/runtime/laos/src/lib.rs b/runtime/laos/src/lib.rs index 236f4d40..883857ee 100644 --- a/runtime/laos/src/lib.rs +++ b/runtime/laos/src/lib.rs @@ -91,7 +91,10 @@ impl_opaque_keys! { } /// This determines the average expected block time that we are targeting. -pub const MILLISECS_PER_BLOCK: u64 = 12000; +pub const MILLISECS_PER_BLOCK: u64 = 6000; +pub const MINUTES: BlockNumber = 60_000 / (MILLISECS_PER_BLOCK as BlockNumber); +pub const HOURS: BlockNumber = MINUTES * 60; +pub const DAYS: BlockNumber = HOURS * 24; /// Version of the runtime #[sp_version::runtime_version] diff --git a/runtime/laos/src/tests/metadata15.golden b/runtime/laos/src/tests/metadata15.golden index 6c95b881..9bde2404 100644 --- a/runtime/laos/src/tests/metadata15.golden +++ b/runtime/laos/src/tests/metadata15.golden @@ -37660,12 +37660,13 @@ 24, 108, 0, - 7, + 11, 0, - 136, - 82, - 106, - 116, + 32, + 74, + 169, + 209, + 1, 2, 0, 64, @@ -37676,23 +37677,25 @@ 25, 0, 1, - 7, + 11, 48, - 160, - 32, - 165, - 75, + 246, + 167, + 167, + 46, + 1, 2, 0, 208, 0, 1, - 7, + 11, 0, - 230, - 189, - 79, - 87, + 152, + 247, + 62, + 93, + 1, 2, 0, 240, @@ -37706,23 +37709,25 @@ 25, 0, 1, - 7, + 11, 48, - 66, - 181, - 191, - 104, + 126, + 250, + 17, + 163, + 1, 2, 0, 32, 1, 1, - 7, + 11, 0, - 136, - 82, - 106, - 116, + 32, + 74, + 169, + 209, + 1, 2, 0, 64, @@ -37730,10 +37735,10 @@ 1, 7, 0, - 162, - 148, - 26, - 29, + 136, + 82, + 106, + 116, 2, 0, 80, @@ -37828,7 +37833,7 @@ 0, 0, 0, - 244, + 245, 8, 0, 0, @@ -38558,8 +38563,8 @@ "name": "MinimumPeriod", "ty": 12, "value": [ - 112, - 23, + 0, + 0, 0, 0, 0, @@ -39301,9 +39306,9 @@ "name": "PendingUsernameExpiration", "ty": 4, "value": [ - 224, - 196, - 0, + 192, + 137, + 1, 0 ], "docs": [ @@ -40065,8 +40070,8 @@ "name": "SlotDuration", "ty": 12, "value": [ - 224, - 46, + 112, + 23, 0, 0, 0, @@ -41435,10 +41440,10 @@ 1, 7, 0, - 162, - 148, - 26, - 29, + 136, + 82, + 106, + 116, 2, 0, 80, @@ -41587,10 +41592,10 @@ "value": [ 7, 0, - 68, - 41, - 53, - 58, + 16, + 165, + 212, + 232, 2, 0, 160, @@ -41785,9 +41790,9 @@ "name": "SpendPeriod", "ty": 4, "value": [ - 224, - 196, - 0, + 192, + 137, + 1, 0 ], "docs": [ @@ -42116,9 +42121,9 @@ "name": "TermDuration", "ty": 4, "value": [ - 128, - 19, - 3, + 0, + 39, + 6, 0 ], "docs": [ @@ -42374,10 +42379,10 @@ "value": [ 7, 0, - 68, - 41, - 53, - 58, + 16, + 165, + 212, + 232, 2, 0, 160, @@ -42483,12 +42488,13 @@ "name": "MaximumWeight", "ty": 10, "value": [ - 7, + 11, 0, - 230, - 189, - 79, - 87, + 152, + 247, + 62, + 93, + 1, 2, 0, 240, @@ -42813,8 +42819,8 @@ "ty": 4, "value": [ 0, - 225, - 0, + 194, + 1, 0 ], "docs": [ @@ -42829,9 +42835,9 @@ "name": "LaunchPeriod", "ty": 4, "value": [ - 224, - 196, - 0, + 192, + 137, + 1, 0 ], "docs": [ @@ -42842,9 +42848,9 @@ "name": "VotingPeriod", "ty": 4, "value": [ - 224, - 196, - 0, + 192, + 137, + 1, 0 ], "docs": [ @@ -42856,8 +42862,8 @@ "ty": 4, "value": [ 0, - 225, - 0, + 194, + 1, 0 ], "docs": [ @@ -42908,8 +42914,8 @@ "name": "FastTrackVotingPeriod", "ty": 4, "value": [ - 132, - 3, + 8, + 7, 0, 0 ], @@ -42921,9 +42927,9 @@ "name": "CooloffPeriod", "ty": 4, "value": [ - 224, - 196, - 0, + 192, + 137, + 1, 0 ], "docs": [ diff --git a/runtime/laos/src/tests/mod.rs b/runtime/laos/src/tests/mod.rs index ad9ae35a..bc8eecab 100644 --- a/runtime/laos/src/tests/mod.rs +++ b/runtime/laos/src/tests/mod.rs @@ -105,13 +105,13 @@ fn test_block_and_gas_limit_constants() { assert_ok!(system_block_weights.clone().validate()); // 0.5s of block time - assert_eq!(system_block_weights.max_block.ref_time(), 500_000_000_000); + assert_eq!(system_block_weights.max_block.ref_time(), 2_000_000_000_000); // EVM constants let block_gas_limit = ::BlockGasLimit::get(); // 15M gas - assert_eq!(block_gas_limit, U256::from(15_000_000)); + assert_eq!(block_gas_limit, U256::from(60_000_000)); } #[test] diff --git a/zombienet/download_polkadot.sh b/zombienet/download_polkadot.sh index 631bb90d..899f4dc7 100755 --- a/zombienet/download_polkadot.sh +++ b/zombienet/download_polkadot.sh @@ -2,7 +2,7 @@ # Default version and download directory VERSION=${1:-"v1.11.0"} -DOWNLOAD_DIR=${2:-"./tmp"} # Default is the current directory +DOWNLOAD_DIR=${2:-"./tmp"} # Default is tmp BASE_URL="https://github.com/paritytech/polkadot-sdk/releases/download/polkadot-$VERSION"