Skip to content

Commit 61ff6d3

Browse files
authored
Merge pull request #3 from hashed-io/feature/polkadotv1-fix
Feature/polkadotv1 fix
2 parents a8c08cd + c6b753a commit 61ff6d3

File tree

12 files changed

+225
-264
lines changed

12 files changed

+225
-264
lines changed

Cargo.lock

Lines changed: 4 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

node/Cargo.toml

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,13 @@ edition = "2021"
1010
build = "build.rs"
1111

1212
[dependencies]
13-
codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false, features = ["derive"] }
14-
hex-literal = { version = "0.4.1", optional = true }
15-
log = { version = "0.4.19", default-features = false }
13+
clap = { version = "4.3.12", features = ["derive"] }
14+
log = "0.4.19"
15+
codec = { package = "parity-scale-codec", version = "3.0.0" }
16+
serde = { version = "1.0.171", features = ["derive"] }
17+
jsonrpsee = { version = "0.16.2", features = ["server"] }
18+
futures = "0.3.28"
19+
hex-literal = { version = "0.4.1" }
1620
scale-info = { version = "2.9.0", default-features = false, features = ["derive"] }
1721
smallvec = "1.11.0"
1822

@@ -50,10 +54,10 @@ sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkad
5054
sp-timestamp = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v1.0.0" }
5155
substrate-frame-rpc-system = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v1.0.0" }
5256
substrate-prometheus-endpoint = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v1.0.0" }
53-
try-runtime-cli = { git = "https://github.com/paritytech/substrate", optional = true , branch = "polkadot-v1.0.0" }
57+
try-runtime-cli = { git = "https://github.com/paritytech/substrate", optional = true, branch = "polkadot-v1.0.0" }
5458

5559
# Polkadot
56-
polkadot-cli = { git = "https://github.com/paritytech/polkadot", features = ["rococo-native"] , branch = "release-v1.0.0" }
60+
polkadot-cli = { git = "https://github.com/paritytech/polkadot", features = ["rococo-native"], branch = "release-v1.0.0" }
5761
polkadot-primitives = { git = "https://github.com/paritytech/polkadot", branch = "release-v1.0.0" }
5862
xcm = { git = "https://github.com/paritytech/polkadot", default-features = false, branch = "release-v1.0.0" }
5963

@@ -70,7 +74,6 @@ color-print = "0.3.4"
7074
[build-dependencies]
7175
substrate-build-script-utils = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v1.0.0" }
7276

73-
7477
[features]
7578
default = []
7679
runtime-benchmarks = [

node/src/chain_spec/hashed.rs

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
use sc_service::ChainType;
2-
// use sp_core::sr25519;
3-
use sp_core::crypto::UncheckedInto;
42

3+
use sp_core::crypto::UncheckedInto;
54
use hex_literal::hex;
65

76
use super::{
@@ -16,7 +15,7 @@ use hashed_parachain_runtime::{
1615

1716
/// Specialized `ChainSpec` for Hashed Network
1817
pub type HashedChainSpec =
19-
sc_service::GenericChainSpec<hashed_parachain_runtime::GenesisConfig, Extensions>;
18+
sc_service::GenericChainSpec<hashed_parachain_runtime::RuntimeGenesisConfig, Extensions>;
2019

2120
/// Gen HASH chain specification
2221
pub fn get_chain_spec() -> HashedChainSpec {
@@ -83,12 +82,13 @@ fn hashed_genesis(
8382
endowed_accounts: Vec<AccountId>,
8483
root_key: AccountId,
8584
id: ParaId,
86-
) -> hashed_parachain_runtime::GenesisConfig {
87-
hashed_parachain_runtime::GenesisConfig {
85+
) -> hashed_parachain_runtime::RuntimeGenesisConfig {
86+
hashed_parachain_runtime::RuntimeGenesisConfig {
8887
system: hashed_parachain_runtime::SystemConfig {
8988
code: hashed_parachain_runtime::WASM_BINARY
9089
.expect("WASM binary was not build, please build it!")
9190
.to_vec(),
91+
..Default::default()
9292
},
9393
balances: hashed_parachain_runtime::BalancesConfig {
9494
balances: endowed_accounts
@@ -101,7 +101,7 @@ fn hashed_genesis(
101101
sudo: SudoConfig { key: Some(root_key) },
102102
council: Default::default(),
103103
treasury: Default::default(),
104-
parachain_info: hashed_parachain_runtime::ParachainInfoConfig { parachain_id: id },
104+
parachain_info: hashed_parachain_runtime::ParachainInfoConfig { parachain_id: id, ..Default::default() },
105105
collator_selection: hashed_parachain_runtime::CollatorSelectionConfig {
106106
invulnerables: invulnerables.iter().cloned().map(|(acc, _)| acc).collect(),
107107
candidacy_bond: EXISTENTIAL_DEPOSIT * 16,
@@ -126,6 +126,7 @@ fn hashed_genesis(
126126
parachain_system: Default::default(),
127127
polkadot_xcm: hashed_parachain_runtime::PolkadotXcmConfig {
128128
safe_xcm_version: Some(SAFE_XCM_VERSION),
129+
..Default::default()
129130
},
130131
bitcoin_vaults: BitcoinVaultsConfig {
131132
bdk_services_url: BDK_SERVICES_MAINNET_URL.as_bytes().to_vec(),

node/src/chain_spec/luhn.rs

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
use sc_service::ChainType;
2-
// use sp_core::sr25519;
32
use sp_core::crypto::UncheckedInto;
43

54
use hex_literal::hex;
@@ -14,7 +13,7 @@ use hashed_parachain_runtime::{AccountId, AuraId, SudoConfig, EXISTENTIAL_DEPOSI
1413

1514
/// Specialized `ChainSpec` for Hashed Network
1615
pub type HashedChainSpec =
17-
sc_service::GenericChainSpec<hashed_parachain_runtime::GenesisConfig, Extensions>;
16+
sc_service::GenericChainSpec<hashed_parachain_runtime::RuntimeGenesisConfig, Extensions>;
1817

1918
/// Gen HASH chain specification
2019
pub fn get_chain_spec() -> HashedChainSpec {
@@ -77,12 +76,13 @@ fn hashed_genesis(
7776
endowed_accounts: Vec<AccountId>,
7877
root_key: AccountId,
7978
id: ParaId,
80-
) -> hashed_parachain_runtime::GenesisConfig {
81-
hashed_parachain_runtime::GenesisConfig {
79+
) -> hashed_parachain_runtime::RuntimeGenesisConfig {
80+
hashed_parachain_runtime::RuntimeGenesisConfig {
8281
system: hashed_parachain_runtime::SystemConfig {
8382
code: hashed_parachain_runtime::WASM_BINARY
8483
.expect("WASM binary was not build, please build it!")
8584
.to_vec(),
85+
..Default::default()
8686
},
8787
balances: hashed_parachain_runtime::BalancesConfig {
8888
balances: endowed_accounts
@@ -95,7 +95,10 @@ fn hashed_genesis(
9595
sudo: SudoConfig { key: Some(root_key) },
9696
council: Default::default(),
9797
treasury: Default::default(),
98-
parachain_info: hashed_parachain_runtime::ParachainInfoConfig { parachain_id: id },
98+
parachain_info: hashed_parachain_runtime::ParachainInfoConfig {
99+
parachain_id: id,
100+
..Default::default()
101+
},
99102
collator_selection: hashed_parachain_runtime::CollatorSelectionConfig {
100103
invulnerables: invulnerables.iter().cloned().map(|(acc, _)| acc).collect(),
101104
candidacy_bond: EXISTENTIAL_DEPOSIT * 16,
@@ -120,6 +123,7 @@ fn hashed_genesis(
120123
parachain_system: Default::default(),
121124
polkadot_xcm: hashed_parachain_runtime::PolkadotXcmConfig {
122125
safe_xcm_version: Some(SAFE_XCM_VERSION),
126+
..Default::default()
123127
},
124128
}
125129
}

node/src/chain_spec/md5.rs

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
1-
use hex_literal::hex;
21
use sc_service::ChainType;
2+
use hex_literal::hex;
33
use sp_core::crypto::UncheckedInto;
44

55
use super::{session_keys, Extensions, SAFE_XCM_VERSION};
66

77
use cumulus_primitives_core::ParaId;
8-
use hashed_parachain_runtime::{AccountId, AuraId, CouncilConfig, SudoConfig, EXISTENTIAL_DEPOSIT};
8+
use hashed_parachain_runtime::{AccountId, AuraId, SudoConfig, EXISTENTIAL_DEPOSIT};
99

1010
/// Specialized `ChainSpec` for MD5 Network.
1111
pub type Md5ChainSpec =
12-
sc_service::GenericChainSpec<hashed_parachain_runtime::GenesisConfig, Extensions>;
12+
sc_service::GenericChainSpec<hashed_parachain_runtime::RuntimeGenesisConfig, Extensions>;
1313

1414
/// Gen MD5 chain specification
1515
pub fn get_chain_spec() -> Md5ChainSpec {
@@ -72,12 +72,13 @@ fn md5_genesis(
7272
endowed_accounts: Vec<AccountId>,
7373
root_key: AccountId,
7474
id: ParaId,
75-
) -> hashed_parachain_runtime::GenesisConfig {
76-
hashed_parachain_runtime::GenesisConfig {
75+
) -> hashed_parachain_runtime::RuntimeGenesisConfig {
76+
hashed_parachain_runtime::RuntimeGenesisConfig {
7777
system: hashed_parachain_runtime::SystemConfig {
7878
code: hashed_parachain_runtime::WASM_BINARY
7979
.expect("WASM binary was not build, please build it!")
8080
.to_vec(),
81+
..Default::default()
8182
},
8283
balances: hashed_parachain_runtime::BalancesConfig {
8384
balances: endowed_accounts
@@ -90,7 +91,10 @@ fn md5_genesis(
9091
sudo: SudoConfig { key: Some(root_key) },
9192
council: Default::default(),
9293
treasury: Default::default(),
93-
parachain_info: hashed_parachain_runtime::ParachainInfoConfig { parachain_id: id },
94+
parachain_info: hashed_parachain_runtime::ParachainInfoConfig {
95+
parachain_id: id,
96+
..Default::default()
97+
},
9498
collator_selection: hashed_parachain_runtime::CollatorSelectionConfig {
9599
invulnerables: invulnerables.iter().cloned().map(|(acc, _)| acc).collect(),
96100
candidacy_bond: EXISTENTIAL_DEPOSIT * 16,
@@ -115,6 +119,7 @@ fn md5_genesis(
115119
parachain_system: Default::default(),
116120
polkadot_xcm: hashed_parachain_runtime::PolkadotXcmConfig {
117121
safe_xcm_version: Some(SAFE_XCM_VERSION),
122+
..Default::default()
118123
},
119124
}
120125
}

node/src/chain_spec/mod.rs

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ pub mod md5;
1515

1616
/// Specialized `ChainSpec` for the normal parachain runtime.
1717
pub type ChainSpec =
18-
sc_service::GenericChainSpec<hashed_parachain_runtime::GenesisConfig, Extensions>;
18+
sc_service::GenericChainSpec<hashed_parachain_runtime::RuntimeGenesisConfig, Extensions>;
1919

2020
/// The default XCM version to set in genesis config.
2121
const SAFE_XCM_VERSION: u32 = xcm::prelude::XCM_VERSION;
@@ -201,12 +201,13 @@ fn testnet_genesis(
201201
endowed_accounts: Vec<AccountId>,
202202
root_key: AccountId,
203203
id: ParaId,
204-
) -> hashed_parachain_runtime::GenesisConfig {
205-
hashed_parachain_runtime::GenesisConfig {
204+
) -> hashed_parachain_runtime::RuntimeGenesisConfig {
205+
hashed_parachain_runtime::RuntimeGenesisConfig {
206206
system: hashed_parachain_runtime::SystemConfig {
207207
code: hashed_parachain_runtime::WASM_BINARY
208208
.expect("WASM binary was not build, please build it!")
209209
.to_vec(),
210+
..Default::default()
210211
},
211212
balances: hashed_parachain_runtime::BalancesConfig {
212213
balances: endowed_accounts.iter().cloned().map(|k| (k, 1 << 60)).collect(),
@@ -215,7 +216,10 @@ fn testnet_genesis(
215216
sudo: SudoConfig { key: Some(root_key) },
216217
council: Default::default(),
217218
treasury: Default::default(),
218-
parachain_info: hashed_parachain_runtime::ParachainInfoConfig { parachain_id: id },
219+
parachain_info: hashed_parachain_runtime::ParachainInfoConfig {
220+
parachain_id: id,
221+
..Default::default()
222+
},
219223
collator_selection: hashed_parachain_runtime::CollatorSelectionConfig {
220224
invulnerables: invulnerables.iter().cloned().map(|(acc, _)| acc).collect(),
221225
candidacy_bond: EXISTENTIAL_DEPOSIT * 16,
@@ -240,6 +244,7 @@ fn testnet_genesis(
240244
parachain_system: Default::default(),
241245
polkadot_xcm: hashed_parachain_runtime::PolkadotXcmConfig {
242246
safe_xcm_version: Some(SAFE_XCM_VERSION),
247+
..Default::default()
243248
},
244249
bitcoin_vaults: BitcoinVaultsConfig {
245250
bdk_services_url: BDK_SERVICES_MAINNET_URL.as_bytes().to_vec(),

node/src/cli.rs

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,12 +44,25 @@ pub enum Subcommand {
4444
TryRuntime,
4545
}
4646

47+
const AFTER_HELP_EXAMPLE: &str = color_print::cstr!(
48+
r#"<bold><underline>Examples:</></>
49+
<bold>hashed-parachain build-spec --disable-default-bootnode > plain-parachain-chainspec.json</>
50+
Export a chainspec for a local testnet in json format.
51+
<bold>hashed-parachain --chain plain-parachain-chainspec.json --tmp -- --chain rococo-local</>
52+
Launch a full node with chain specification loaded from plain-parachain-chainspec.json.
53+
<bold>hashed-parachain</>
54+
Launch a full node with default parachain <italic>local-testnet</> and relay chain <italic>rococo-local</>.
55+
<bold>hashed-parachain --collator</>
56+
Launch a collator with default parachain <italic>local-testnet</> and relay chain <italic>rococo-local</>.
57+
"#
58+
);
4759
#[derive(Debug, clap::Parser)]
4860
#[command(
4961
propagate_version = true,
5062
args_conflicts_with_subcommands = true,
5163
subcommand_negates_reqs = true
5264
)]
65+
#[clap(after_help = AFTER_HELP_EXAMPLE)]
5366
pub struct Cli {
5467
#[command(subcommand)]
5568
pub subcommand: Option<Subcommand>,
@@ -92,7 +105,11 @@ impl RelayChainCli {
92105
) -> Self {
93106
let extension = crate::chain_spec::Extensions::try_get(&*para_config.chain_spec);
94107
let chain_id = extension.map(|e| e.relay_chain.clone());
95-
let base_path = para_config.base_path.as_ref().map(|x| x.path().join("polkadot"));
96-
Self { base_path, chain_id, base: clap::Parser::parse_from(relay_chain_args) }
108+
let base_path = para_config.base_path.path().join("polkadot");
109+
Self {
110+
base_path: Some(base_path),
111+
chain_id,
112+
base: clap::Parser::parse_from(relay_chain_args),
113+
}
97114
}
98115
}

0 commit comments

Comments
 (0)