From c80a7b5761d86f31959bb3a98ac213a44dd96bac Mon Sep 17 00:00:00 2001 From: Gavin Wood Date: Fri, 31 Jan 2020 11:47:02 +0000 Subject: [PATCH] Update Substrate (#812) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Update to latest Substrate master * upgrade decl_storage declaration * Companion PR to Substrate#4752 * Substrate update: Identity should bound additional fields (#4770) Substrate commit: 2c9ce7296b19934b1ffd50150be2fdb2ddf81a4e * WIP * WIP * Updated substrate and fixes * Fix compilation and switch to latest wasm-builder-runner * Fixed missing doc * Update collator/src/lib.rs Co-authored-by: Bastian Köcher Co-authored-by: thiolliere Co-authored-by: Pierre Krieger Co-authored-by: Cecile Tonglet --- Cargo.lock | 313 +++++++++++---------- cli/Cargo.toml | 2 +- cli/src/chain_spec.rs | 7 + cli/src/cli.rs | 55 ++++ cli/src/command.rs | 156 ++++++++++ cli/src/lib.rs | 212 +------------- collator/Cargo.toml | 1 + collator/src/lib.rs | 47 +++- primitives/Cargo.toml | 16 +- runtime/common/Cargo.toml | 32 +-- runtime/common/src/registrar.rs | 1 + runtime/kusama/Cargo.toml | 86 +++--- runtime/kusama/build.rs | 9 +- runtime/kusama/src/lib.rs | 7 +- runtime/polkadot/Cargo.toml | 80 +++--- runtime/polkadot/build.rs | 9 +- runtime/polkadot/src/lib.rs | 1 + service/src/lib.rs | 92 +++--- src/main.rs | 26 +- test-parachains/adder/Cargo.toml | 2 +- test-parachains/adder/build.rs | 12 +- test-parachains/adder/collator/src/main.rs | 5 +- test-parachains/halt/Cargo.toml | 2 +- test-parachains/halt/build.rs | 12 +- 24 files changed, 617 insertions(+), 568 deletions(-) create mode 100644 cli/src/cli.rs create mode 100644 cli/src/command.rs diff --git a/Cargo.lock b/Cargo.lock index 6f80f21b53774..ea2fc5a17358d 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -17,7 +17,7 @@ dependencies = [ "parity-scale-codec 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "polkadot-parachain 0.7.19", "sp-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-wasm-builder-runner 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", + "substrate-wasm-builder-runner 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)", "tiny-keccak 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -179,7 +179,7 @@ dependencies = [ "kv-log-macro 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "memchr 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.19 (registry+https://github.com/rust-lang/crates.io-index)", + "mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)", "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)", "once_cell 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -380,7 +380,7 @@ dependencies = [ [[package]] name = "browser-utils" version = "0.8.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "console_error_panic_hook 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -495,10 +495,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "chrono" -version = "0.4.9" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)", "num-integer 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)", "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1131,7 +1130,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "fork-tree" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "parity-scale-codec 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1139,7 +1138,7 @@ dependencies = [ [[package]] name = "frame-executive" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -1152,8 +1151,8 @@ dependencies = [ [[package]] name = "frame-metadata" -version = "10.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +version = "11.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "parity-scale-codec 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1164,10 +1163,10 @@ dependencies = [ [[package]] name = "frame-support" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "bitmask 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "frame-metadata 10.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "frame-metadata 11.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "frame-support-procedural 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "impl-trait-for-tuples 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1188,7 +1187,7 @@ dependencies = [ [[package]] name = "frame-support-procedural" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support-procedural-tools 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1199,7 +1198,7 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support-procedural-tools-derive 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "proc-macro-crate 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1211,7 +1210,7 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools-derive" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1221,7 +1220,7 @@ dependencies = [ [[package]] name = "frame-system" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "impl-trait-for-tuples 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1237,7 +1236,7 @@ dependencies = [ [[package]] name = "frame-system-rpc-runtime-api" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "parity-scale-codec 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "sp-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -1522,10 +1521,10 @@ dependencies = [ [[package]] name = "grafana-data-source" version = "0.8.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "async-std 1.4.0 (git+https://github.com/async-rs/async-std)", - "chrono 0.4.9 (registry+https://github.com/rust-lang/crates.io-index)", + "chrono 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "futures-timer 2.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "futures-util 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1577,7 +1576,7 @@ dependencies = [ name = "halt" version = "0.7.19" dependencies = [ - "substrate-wasm-builder-runner 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", + "substrate-wasm-builder-runner 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2076,7 +2075,7 @@ dependencies = [ "sp-transaction-pool 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "sp-trie 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "sp-version 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-wasm-builder-runner 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", + "substrate-wasm-builder-runner 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)", "tiny-keccak 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "trie-db 0.19.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2734,9 +2733,10 @@ dependencies = [ [[package]] name = "mio" -version = "0.6.19" +version = "0.6.21" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ + "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", "fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", "iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2756,7 +2756,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.19 (registry+https://github.com/rust-lang/crates.io-index)", + "mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2767,7 +2767,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.19 (registry+https://github.com/rust-lang/crates.io-index)", + "mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2969,7 +2969,7 @@ dependencies = [ [[package]] name = "pallet-authority-discovery" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -2987,7 +2987,7 @@ dependencies = [ [[package]] name = "pallet-authorship" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3004,7 +3004,7 @@ dependencies = [ [[package]] name = "pallet-babe" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3025,7 +3025,7 @@ dependencies = [ [[package]] name = "pallet-balances" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3038,7 +3038,7 @@ dependencies = [ [[package]] name = "pallet-collective" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3053,7 +3053,7 @@ dependencies = [ [[package]] name = "pallet-democracy" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3067,7 +3067,7 @@ dependencies = [ [[package]] name = "pallet-elections-phragmen" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3080,7 +3080,7 @@ dependencies = [ [[package]] name = "pallet-finality-tracker" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3096,7 +3096,7 @@ dependencies = [ [[package]] name = "pallet-grandpa" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3114,7 +3114,7 @@ dependencies = [ [[package]] name = "pallet-identity" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "enumflags2 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3129,7 +3129,7 @@ dependencies = [ [[package]] name = "pallet-im-online" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3148,7 +3148,7 @@ dependencies = [ [[package]] name = "pallet-indices" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3164,7 +3164,7 @@ dependencies = [ [[package]] name = "pallet-membership" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3178,7 +3178,7 @@ dependencies = [ [[package]] name = "pallet-nicks" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3192,7 +3192,7 @@ dependencies = [ [[package]] name = "pallet-offences" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3207,7 +3207,7 @@ dependencies = [ [[package]] name = "pallet-randomness-collective-flip" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3220,7 +3220,7 @@ dependencies = [ [[package]] name = "pallet-recovery" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "enumflags2 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3235,7 +3235,7 @@ dependencies = [ [[package]] name = "pallet-session" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3253,7 +3253,7 @@ dependencies = [ [[package]] name = "pallet-society" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3268,7 +3268,7 @@ dependencies = [ [[package]] name = "pallet-staking" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3287,7 +3287,7 @@ dependencies = [ [[package]] name = "pallet-staking-reward-curve" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "proc-macro-crate 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3298,7 +3298,7 @@ dependencies = [ [[package]] name = "pallet-sudo" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3312,7 +3312,7 @@ dependencies = [ [[package]] name = "pallet-timestamp" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3328,7 +3328,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3341,7 +3341,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "jsonrpc-core 14.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "jsonrpc-core-client 14.0.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3359,7 +3359,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc-runtime-api" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "parity-scale-codec 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3372,7 +3372,7 @@ dependencies = [ [[package]] name = "pallet-treasury" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3386,7 +3386,7 @@ dependencies = [ [[package]] name = "pallet-utility" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "frame-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3757,7 +3757,7 @@ dependencies = [ "sp-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "sp-core 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "sp-runtime 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "structopt 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", + "structopt 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", "wasm-bindgen 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)", "wasm-bindgen-futures 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3776,6 +3776,7 @@ dependencies = [ "polkadot-primitives 0.7.19", "polkadot-service 0.7.19", "polkadot-validation 0.7.19", + "sc-cli 0.8.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "sc-client 0.8.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "sc-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "sc-network 0.8.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3944,7 +3945,7 @@ dependencies = [ "sp-transaction-pool 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "sp-trie 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "sp-version 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "substrate-wasm-builder-runner 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", + "substrate-wasm-builder-runner 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)", "tiny-keccak 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "trie-db 0.19.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -4666,7 +4667,7 @@ dependencies = [ [[package]] name = "sc-authority-discovery" version = "0.8.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4692,7 +4693,7 @@ dependencies = [ [[package]] name = "sc-block-builder" version = "0.8.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "parity-scale-codec 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "sc-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -4708,7 +4709,7 @@ dependencies = [ [[package]] name = "sc-chain-spec" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "impl-trait-for-tuples 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "sc-chain-spec-derive 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -4723,7 +4724,7 @@ dependencies = [ [[package]] name = "sc-chain-spec-derive" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "proc-macro-crate 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4734,11 +4735,12 @@ dependencies = [ [[package]] name = "sc-cli" version = "0.8.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "ansi_term 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)", "app_dirs 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "atty 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "chrono 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "clap 2.33.0 (registry+https://github.com/rust-lang/crates.io-index)", "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "env_logger 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4761,7 +4763,7 @@ dependencies = [ "sp-panic-handler 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "sp-runtime 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "sp-state-machine 0.8.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "structopt 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", + "structopt 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", "tokio 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -4769,7 +4771,7 @@ dependencies = [ [[package]] name = "sc-client" version = "0.8.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4802,7 +4804,7 @@ dependencies = [ [[package]] name = "sc-client-api" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4833,7 +4835,7 @@ dependencies = [ [[package]] name = "sc-client-db" version = "0.8.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "hash-db 0.15.2 (registry+https://github.com/rust-lang/crates.io-index)", "kvdb 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4859,7 +4861,7 @@ dependencies = [ [[package]] name = "sc-consensus-babe" version = "0.8.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "fork-tree 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -4898,7 +4900,7 @@ dependencies = [ [[package]] name = "sc-consensus-slots" version = "0.8.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "futures-timer 2.0.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4919,7 +4921,7 @@ dependencies = [ [[package]] name = "sc-consensus-uncles" version = "0.8.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "sc-client-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -4933,7 +4935,7 @@ dependencies = [ [[package]] name = "sc-executor" version = "0.8.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4960,7 +4962,7 @@ dependencies = [ [[package]] name = "sc-executor-common" version = "0.8.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4976,7 +4978,7 @@ dependencies = [ [[package]] name = "sc-executor-wasmi" version = "0.8.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4992,7 +4994,7 @@ dependencies = [ [[package]] name = "sc-executor-wasmtime" version = "0.8.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "cranelift-codegen 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)", "cranelift-entity 0.50.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5016,7 +5018,7 @@ dependencies = [ [[package]] name = "sc-finality-grandpa" version = "0.8.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "finality-grandpa 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "fork-tree 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -5047,7 +5049,7 @@ dependencies = [ [[package]] name = "sc-keystore" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "hex 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5062,7 +5064,7 @@ dependencies = [ [[package]] name = "sc-network" version = "0.8.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5106,7 +5108,7 @@ dependencies = [ [[package]] name = "sc-network-gossip" version = "0.8.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5122,7 +5124,7 @@ dependencies = [ [[package]] name = "sc-offchain" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5149,7 +5151,7 @@ dependencies = [ [[package]] name = "sc-peerset" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "libp2p 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5160,7 +5162,7 @@ dependencies = [ [[package]] name = "sc-rpc" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "hash-db 0.15.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5190,7 +5192,7 @@ dependencies = [ [[package]] name = "sc-rpc-api" version = "0.8.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5212,7 +5214,7 @@ dependencies = [ [[package]] name = "sc-rpc-server" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "jsonrpc-core 14.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "jsonrpc-http-server 14.0.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5227,7 +5229,7 @@ dependencies = [ [[package]] name = "sc-service" version = "0.8.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "exit-future 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5275,7 +5277,7 @@ dependencies = [ [[package]] name = "sc-state-db" version = "0.8.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5286,7 +5288,7 @@ dependencies = [ [[package]] name = "sc-telemetry" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "bytes 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5307,7 +5309,7 @@ dependencies = [ [[package]] name = "sc-tracing" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "erased-serde 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", "grafana-data-source 0.8.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -5323,7 +5325,7 @@ dependencies = [ [[package]] name = "sc-transaction-graph" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5338,7 +5340,7 @@ dependencies = [ [[package]] name = "sc-transaction-pool" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5541,6 +5543,15 @@ name = "shlex" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "signal-hook-registry" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "arc-swap 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "slab" version = "0.4.2" @@ -5559,7 +5570,7 @@ name = "slog-json" version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "chrono 0.4.9 (registry+https://github.com/rust-lang/crates.io-index)", + "chrono 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "erased-serde 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5638,7 +5649,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "sp-allocator" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5650,7 +5661,7 @@ dependencies = [ [[package]] name = "sp-api" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "hash-db 0.15.2 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5665,7 +5676,7 @@ dependencies = [ [[package]] name = "sp-api-proc-macro" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro-crate 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5677,7 +5688,7 @@ dependencies = [ [[package]] name = "sp-application-crypto" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "parity-scale-codec 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5689,7 +5700,7 @@ dependencies = [ [[package]] name = "sp-arithmetic" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "integer-sqrt 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "num-traits 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5702,7 +5713,7 @@ dependencies = [ [[package]] name = "sp-authority-discovery" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "parity-scale-codec 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "sp-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -5714,7 +5725,7 @@ dependencies = [ [[package]] name = "sp-authorship" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "parity-scale-codec 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "sp-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -5725,7 +5736,7 @@ dependencies = [ [[package]] name = "sp-block-builder" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "parity-scale-codec 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "sp-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -5737,7 +5748,7 @@ dependencies = [ [[package]] name = "sp-blockchain" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5753,7 +5764,7 @@ dependencies = [ [[package]] name = "sp-consensus" version = "0.8.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5775,7 +5786,7 @@ dependencies = [ [[package]] name = "sp-consensus-aura" version = "0.8.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "parity-scale-codec 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "sp-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -5789,7 +5800,7 @@ dependencies = [ [[package]] name = "sp-consensus-babe" version = "0.8.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "parity-scale-codec 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "schnorrkel 0.8.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5805,7 +5816,7 @@ dependencies = [ [[package]] name = "sp-core" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "base58 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5844,7 +5855,7 @@ dependencies = [ [[package]] name = "sp-debug-derive" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "proc-macro2 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5854,7 +5865,7 @@ dependencies = [ [[package]] name = "sp-externalities" version = "0.8.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "environmental 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "sp-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -5864,7 +5875,7 @@ dependencies = [ [[package]] name = "sp-finality-grandpa" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "parity-scale-codec 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5877,7 +5888,7 @@ dependencies = [ [[package]] name = "sp-finality-tracker" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "parity-scale-codec 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "sp-inherents 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -5887,7 +5898,7 @@ dependencies = [ [[package]] name = "sp-inherents" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5899,7 +5910,7 @@ dependencies = [ [[package]] name = "sp-io" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "hash-db 0.15.2 (registry+https://github.com/rust-lang/crates.io-index)", "libsecp256k1 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5917,7 +5928,7 @@ dependencies = [ [[package]] name = "sp-keyring" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "sp-core 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -5928,7 +5939,7 @@ dependencies = [ [[package]] name = "sp-offchain" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "sp-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "sp-runtime 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -5937,7 +5948,7 @@ dependencies = [ [[package]] name = "sp-panic-handler" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "backtrace 0.3.40 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5946,7 +5957,7 @@ dependencies = [ [[package]] name = "sp-phragmen" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", "sp-runtime 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -5956,7 +5967,7 @@ dependencies = [ [[package]] name = "sp-rpc" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", "sp-core 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -5965,7 +5976,7 @@ dependencies = [ [[package]] name = "sp-runtime" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "impl-trait-for-tuples 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5984,7 +5995,7 @@ dependencies = [ [[package]] name = "sp-runtime-interface" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "parity-scale-codec 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "primitive-types 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5998,7 +6009,7 @@ dependencies = [ [[package]] name = "sp-runtime-interface-proc-macro" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "Inflector 0.11.4 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro-crate 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -6010,7 +6021,7 @@ dependencies = [ [[package]] name = "sp-serializer" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)", @@ -6019,7 +6030,7 @@ dependencies = [ [[package]] name = "sp-session" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "sp-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "sp-core 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -6030,7 +6041,7 @@ dependencies = [ [[package]] name = "sp-staking" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "parity-scale-codec 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "sp-runtime 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -6040,7 +6051,7 @@ dependencies = [ [[package]] name = "sp-state-machine" version = "0.8.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "hash-db 0.15.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -6059,12 +6070,12 @@ dependencies = [ [[package]] name = "sp-std" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" [[package]] name = "sp-storage" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "impl-serde 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.102 (registry+https://github.com/rust-lang/crates.io-index)", @@ -6075,7 +6086,7 @@ dependencies = [ [[package]] name = "sp-timestamp" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "impl-trait-for-tuples 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -6088,7 +6099,7 @@ dependencies = [ [[package]] name = "sp-transaction-pool" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "derive_more 0.99.2 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -6102,7 +6113,7 @@ dependencies = [ [[package]] name = "sp-trie" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "hash-db 0.15.2 (registry+https://github.com/rust-lang/crates.io-index)", "memory-db 0.18.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -6116,7 +6127,7 @@ dependencies = [ [[package]] name = "sp-version" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "impl-serde 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -6128,7 +6139,7 @@ dependencies = [ [[package]] name = "sp-wasm-interface" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "impl-trait-for-tuples 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -6182,16 +6193,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "structopt" -version = "0.3.7" +version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "clap 2.33.0 (registry+https://github.com/rust-lang/crates.io-index)", - "structopt-derive 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "structopt-derive 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "structopt-derive" -version = "0.4.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -6234,7 +6246,7 @@ dependencies = [ [[package]] name = "substrate-frame-rpc-system" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "frame-system-rpc-runtime-api 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -6255,7 +6267,7 @@ dependencies = [ [[package]] name = "substrate-test-client" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "hash-db 0.15.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -6275,7 +6287,7 @@ dependencies = [ [[package]] name = "substrate-test-runtime" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", "frame-executive 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -6313,7 +6325,7 @@ dependencies = [ [[package]] name = "substrate-test-runtime-client" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" dependencies = [ "futures 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -6330,13 +6342,13 @@ dependencies = [ [[package]] name = "substrate-wasm-builder-runner" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" +version = "1.0.5" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#8d11d1d2a1b6efe3f672e4b452c6f0370830b95b" [[package]] name = "substrate-wasm-builder-runner" version = "1.0.5" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#b02a97129286a8453ef78f58963b72c7ae47aef6" +source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "subtle" @@ -6536,7 +6548,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.19 (registry+https://github.com/rust-lang/crates.io-index)", + "mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-current-thread 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -6559,9 +6571,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)", "memchr 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)", + "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)", "pin-project-lite 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", + "signal-hook-registry 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -6631,7 +6649,7 @@ dependencies = [ "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.19 (registry+https://github.com/rust-lang/crates.io-index)", + "mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.11.1 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -6670,7 +6688,7 @@ dependencies = [ "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", "iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.19 (registry+https://github.com/rust-lang/crates.io-index)", + "mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -6710,7 +6728,7 @@ dependencies = [ "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.19 (registry+https://github.com/rust-lang/crates.io-index)", + "mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-reactor 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", @@ -6726,7 +6744,7 @@ dependencies = [ "iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.19 (registry+https://github.com/rust-lang/crates.io-index)", + "mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)", "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", @@ -6829,7 +6847,7 @@ name = "twox-hash" version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -6948,7 +6966,7 @@ version = "3.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "chrono 0.4.9 (registry+https://github.com/rust-lang/crates.io-index)", + "chrono 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "failure 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -7312,7 +7330,7 @@ dependencies = [ "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "httparse 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.19 (registry+https://github.com/rust-lang/crates.io-index)", + "mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)", "mio-extras 2.0.5 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)", "sha-1 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -7451,7 +7469,7 @@ dependencies = [ "checksum cc 1.0.47 (registry+https://github.com/rust-lang/crates.io-index)" = "aa87058dce70a3ff5621797f1506cb837edd02ac4c0ae642b4542dce802908b8" "checksum cexpr 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "fce5b5fb86b0c57c20c834c1b412fd09c77c8a59b9473f86272709e78874cd1d" "checksum cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822" -"checksum chrono 0.4.9 (registry+https://github.com/rust-lang/crates.io-index)" = "e8493056968583b0193c1bb04d6f7684586f3726992d6c573261941a895dbd68" +"checksum chrono 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "31850b4a4d6bae316f7a09e691c944c28299298837edc0a03f755618c23cbc01" "checksum clang-sys 0.28.1 (registry+https://github.com/rust-lang/crates.io-index)" = "81de550971c976f176130da4b2978d3b524eaa0fd9ac31f3ceb5ae1231fb4853" "checksum clap 2.33.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5067f5bb2d80ef5d68b4c87db81601f0b75bca627bc2ef76b141d7b846a3c6d9" "checksum clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "97276801e127ffb46b66ce23f35cc96bd454fa311294bced4bbace7baa8b1d17" @@ -7523,7 +7541,7 @@ dependencies = [ "checksum fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3" "checksum fork-tree 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" "checksum frame-executive 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum frame-metadata 10.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" +"checksum frame-metadata 11.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" "checksum frame-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" "checksum frame-support-procedural 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" "checksum frame-support-procedural-tools 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" @@ -7661,7 +7679,7 @@ dependencies = [ "checksum memrange 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "cc29ba65898edc4fdc252cb31cd3925f37c1a8ba25bb46eec883569984976530" "checksum merlin 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "de2d16d3b15fec5943d1144f861f61f279d165fdd60998ca262913b9bf1c8adb" "checksum miniz_oxide 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6f3f74f726ae935c3f514300cc6773a0c9492abc5e972d42ba0c0ebb88757625" -"checksum mio 0.6.19 (registry+https://github.com/rust-lang/crates.io-index)" = "83f51996a3ed004ef184e16818edc51fadffe8e7ca68be67f9dee67d84d0ff23" +"checksum mio 0.6.21 (registry+https://github.com/rust-lang/crates.io-index)" = "302dec22bcf6bae6dfb69c647187f4b4d0fb6f535521f7bc022430ce8e12008f" "checksum mio-extras 2.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "46e73a04c2fa6250b8d802134d56d554a9ec2922bf977777c805ea5def61ce40" "checksum mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)" = "966257a94e196b11bb43aca423754d87429960a768de9414f3691d6957abf125" "checksum miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919" @@ -7862,6 +7880,7 @@ dependencies = [ "checksum shared_memory_derive 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "767a14f1304be2f0b04e69860252f8ae9cfae0afaa9cc07b675147c43425dd3a" "checksum shell32-sys 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9ee04b46101f57121c9da2b151988283b6beb79b34f5bb29a58ee48cb695122c" "checksum shlex 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7fdf1b9db47230893d76faad238fd6097fd6d6a9245cd7a4d90dbd639536bbd2" +"checksum signal-hook-registry 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94f478ede9f64724c5d173d7bb56099ec3e2d9fc2774aac65d34b8b890405f41" "checksum slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8" "checksum slog 2.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1cc9c640a4adbfbcc11ffb95efe5aa7af7309e002adab54b185507dbf2377b99" "checksum slog-json 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ddc0d2aff1f8f325ef660d9a0eb6e6dcd20b30b3f581a5897f58bf42d061c37a" @@ -7917,8 +7936,8 @@ dependencies = [ "checksum string 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d24114bfcceb867ca7f71a0d3fe45d45619ec47a6fbfa98cb14e14250bfa5d6d" "checksum string-interner 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "fd710eadff449a1531351b0e43eb81ea404336fa2f56c777427ab0e32a4cf183" "checksum strsim 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a" -"checksum structopt 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "884ae79d6aad1e738f4a70dff314203fd498490a63ebc4d03ea83323c40b7b72" -"checksum structopt-derive 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0a97f829a34a0a9d5b353a881025a23b8c9fd09d46be6045df6b22920dbd7a93" +"checksum structopt 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "df136b42d76b1fbea72e2ab3057343977b04b4a2e00836c3c7c0673829572713" +"checksum structopt-derive 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "fd50a87d2f7b8958055f3e73a963d78feaccca3836767a9069844e34b5b03c0a" "checksum strum 0.16.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6138f8f88a16d90134763314e3fc76fa3ed6a7db4725d6acf9a3ef95a3188d22" "checksum strum_macros 0.16.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0054a7df764039a6cd8592b9de84be4bec368ff081d203a7d5371cbfa8e65c81" "checksum substrate-bip39 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3be511be555a3633e71739a79e4ddff6a6aaa6579fa6114182a51d72c3eb93c5" @@ -7926,8 +7945,8 @@ dependencies = [ "checksum substrate-test-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" "checksum substrate-test-runtime 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" "checksum substrate-test-runtime-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" -"checksum substrate-wasm-builder-runner 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "bd48273fe9d7f92c1f7d6c1c537bb01c8068f925b47ad2cd8367e11dc32f8550" "checksum substrate-wasm-builder-runner 1.0.5 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "" +"checksum substrate-wasm-builder-runner 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e30c70de7e7d5fd404fe26db1e7a4d6b553e2760b1ac490f249c04a960c483b8" "checksum subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee" "checksum subtle 2.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ab3af2eb31c42e8f0ccf43548232556c42737e01a96db6e1777b0be108e79799" "checksum syn 0.15.44 (registry+https://github.com/rust-lang/crates.io-index)" = "9ca4b3b69a77cbe1ffc9e198781b7acb0c7365a883670e8f1c1bc66fba79a5c5" diff --git a/cli/Cargo.toml b/cli/Cargo.toml index 9eb82d2799079..9369917d6ab44 100644 --- a/cli/Cargo.toml +++ b/cli/Cargo.toml @@ -11,7 +11,7 @@ crate-type = ["cdylib", "rlib"] [dependencies] log = "0.4.8" futures = { version = "0.3.1", features = ["compat"] } -structopt = "=0.3.7" +structopt = "0.3.8" sc-cli = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } sp-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } diff --git a/cli/src/chain_spec.rs b/cli/src/chain_spec.rs index cf56d420e2e51..f6fa86e11af0d 100644 --- a/cli/src/chain_spec.rs +++ b/cli/src/chain_spec.rs @@ -65,3 +65,10 @@ impl ChainSpec { } } +/// Load the `ChainSpec` for the given `id`. +pub fn load_spec(id: &str) -> Result, String> { + Ok(match ChainSpec::from(id) { + Some(spec) => Some(spec.load()?), + None => None, + }) +} diff --git a/cli/src/cli.rs b/cli/src/cli.rs new file mode 100644 index 0000000000000..a7ffe0fff4df3 --- /dev/null +++ b/cli/src/cli.rs @@ -0,0 +1,55 @@ +// Copyright 2017-2020 Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . + +//! Polkadot CLI library. + +use structopt::StructOpt; +pub use sc_cli::RunCmd; + +#[allow(missing_docs)] +#[derive(Debug, StructOpt, Clone)] +pub enum Subcommand { + #[allow(missing_docs)] + #[structopt(flatten)] + Base(sc_cli::Subcommand), + + #[allow(missing_docs)] + #[structopt(name = "validation-worker", setting = structopt::clap::AppSettings::Hidden)] + ValidationWorker(ValidationWorkerCommand), +} + +#[allow(missing_docs)] +#[derive(Debug, StructOpt, Clone)] +pub struct ValidationWorkerCommand { + #[allow(missing_docs)] + pub mem_id: String, +} + +#[allow(missing_docs)] +#[derive(Debug, StructOpt, Clone)] +pub struct Cli { + #[allow(missing_docs)] + #[structopt(subcommand)] + pub subcommand: Option, + + #[allow(missing_docs)] + #[structopt(flatten)] + pub run: RunCmd, + + #[allow(missing_docs)] + #[structopt(long = "enable-authority-discovery")] + pub authority_discovery_enabled: bool, +} diff --git a/cli/src/command.rs b/cli/src/command.rs new file mode 100644 index 0000000000000..ee4f4c2172da4 --- /dev/null +++ b/cli/src/command.rs @@ -0,0 +1,156 @@ +// Copyright 2017-2020 Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . + +use log::info; +use sp_core::Blake2Hasher; +use service::{IsKusama, Block, self, RuntimeApiCollection, TFullClient}; +use sp_api::ConstructRuntimeApi; +use sc_executor::NativeExecutionDispatch; +use crate::chain_spec::load_spec; +use crate::cli::{Cli, Subcommand}; +use sc_cli::{VersionInfo, display_role, error}; + +/// Parses polkadot specific CLI arguments and run the service. +pub fn run(version: VersionInfo) -> error::Result<()> { + let opt = sc_cli::from_args::(&version); + + let mut config = service::Configuration::default(); + config.impl_name = "parity-polkadot"; + + match opt.subcommand { + None => { + sc_cli::init(&mut config, load_spec, &opt.run.shared_params, &version)?; + + let is_kusama = config.chain_spec.as_ref().map_or(false, |s| s.is_kusama()); + + sc_cli::update_config_for_running_node( + &mut config, + opt.run, + )?; + + info!("{}", version.name); + info!(" version {}", config.full_version()); + info!(" by {}, 2017-2020", version.author); + info!("Chain specification: {}", config.expect_chain_spec().name()); + info!("Node name: {}", config.name); + info!("Roles: {}", display_role(&config)); + + if is_kusama { + info!("Native runtime: {}", service::KusamaExecutor::native_version().runtime_version); + info!("----------------------------"); + info!("This chain is not in any way"); + info!(" endorsed by the "); + info!(" KUSAMA FOUNDATION "); + info!("----------------------------"); + + run_service_until_exit::< + service::kusama_runtime::RuntimeApi, + service::KusamaExecutor, + service::kusama_runtime::UncheckedExtrinsic, + >(config, opt.authority_discovery_enabled) + } else { + info!("Native runtime: {}", service::PolkadotExecutor::native_version().runtime_version); + + run_service_until_exit::< + service::polkadot_runtime::RuntimeApi, + service::PolkadotExecutor, + service::polkadot_runtime::UncheckedExtrinsic, + >(config, opt.authority_discovery_enabled) + } + }, + Some(Subcommand::Base(cmd)) => { + sc_cli::init(&mut config, load_spec, cmd.get_shared_params(), &version)?; + + let is_kusama = config.chain_spec.as_ref().map_or(false, |s| s.is_kusama()); + + if is_kusama { + cmd.run(config, service::new_chain_ops::< + service::kusama_runtime::RuntimeApi, + service::KusamaExecutor, + service::kusama_runtime::UncheckedExtrinsic, + >) + } else { + cmd.run(config, service::new_chain_ops::< + service::polkadot_runtime::RuntimeApi, + service::PolkadotExecutor, + service::polkadot_runtime::UncheckedExtrinsic, + >) + } + }, + Some(Subcommand::ValidationWorker(args)) => { + sc_cli::init_logger(""); + + if cfg!(feature = "browser") { + Err(error::Error::Input("Cannot run validation worker in browser".into())) + } else { + #[cfg(not(feature = "browser"))] + service::run_validation_worker(&args.mem_id)?; + Ok(()) + } + }, + } +} + +fn run_service_until_exit( + config: service::Configuration, + authority_discovery_enabled: bool, +) -> error::Result<()> +where + R: ConstructRuntimeApi> + + Send + Sync + 'static, + >>::RuntimeApi: + RuntimeApiCollection, Block>>, + >>::RuntimeApi: + RuntimeApiCollection, Block>>, + E: service::Codec + Send + Sync + 'static, + D: service::NativeExecutionDispatch + 'static, + // Rust bug: https://github.com/rust-lang/rust/issues/24159 + <>>::RuntimeApi as sp_api::ApiExt>::StateBackend: + sp_api::StateBackend, + // Rust bug: https://github.com/rust-lang/rust/issues/43580 + R: ConstructRuntimeApi< + Block, + TLightClient + >, +{ + match config.roles { + service::Roles::LIGHT => + sc_cli::run_service_until_exit( + config, + |config| service::new_light::(config, None), + ), + _ => + sc_cli::run_service_until_exit( + config, + |config| service::new_full::(config, None, None, authority_discovery_enabled, 6000), + ), + } +} + +// We can't simply use `service::TLightClient` due to a +// Rust bug: https://github.com/rust-lang/rust/issues/43580 +type TLightClient = sc_client::Client< + sc_client::light::backend::Backend, Blake2Hasher>, + sc_client::light::call_executor::GenesisCallExecutor< + sc_client::light::backend::Backend, Blake2Hasher>, + sc_client::LocalCallExecutor< + sc_client::light::backend::Backend, Blake2Hasher>, + sc_executor::NativeExecutor + > + >, + Block, + Runtime +>; diff --git a/cli/src/lib.rs b/cli/src/lib.rs index aebe61d6c8b89..3bd38f8aa6256 100644 --- a/cli/src/lib.rs +++ b/cli/src/lib.rs @@ -22,219 +22,23 @@ mod chain_spec; #[cfg(feature = "browser")] mod browser; - -use chain_spec::ChainSpec; -use futures::{Future, future::{select, Either}, channel::oneshot}; #[cfg(feature = "cli")] -use tokio::runtime::Runtime; -use log::info; -use structopt::StructOpt; -use sp_api::ConstructRuntimeApi; +mod cli; +#[cfg(feature = "cli")] +mod command; pub use service::{ - AbstractService, CustomConfiguration, ProvideRuntimeApi, CoreApi, ParachainHost, IsKusama, + AbstractService, ProvideRuntimeApi, CoreApi, ParachainHost, IsKusama, Block, self, RuntimeApiCollection, TFullClient }; -pub use sc_cli::{VersionInfo, IntoExit, NoCustom, SharedParams}; -pub use sc_cli::{display_role, error}; - -/// Load the `ChainSpec` for the given `id`. -pub fn load_spec(id: &str) -> Result, String> { - Ok(match ChainSpec::from(id) { - Some(spec) => Some(spec.load()?), - None => None, - }) -} - -#[derive(Debug, StructOpt, Clone)] -enum PolkadotSubCommands { - #[structopt(name = "validation-worker", setting = structopt::clap::AppSettings::Hidden)] - ValidationWorker(ValidationWorkerCommand), -} - -impl sc_cli::GetSharedParams for PolkadotSubCommands { - fn shared_params(&self) -> Option<&sc_cli::SharedParams> { None } -} - -#[derive(Debug, StructOpt, Clone)] -struct ValidationWorkerCommand { - #[structopt()] - pub mem_id: String, -} - -#[derive(Debug, StructOpt, Clone)] -struct PolkadotSubParams { - #[structopt(long = "enable-authority-discovery")] - pub authority_discovery_enabled: bool, -} - -/// Parses polkadot specific CLI arguments and run the service. #[cfg(feature = "cli")] -pub fn run(exit: E, version: sc_cli::VersionInfo) -> error::Result<()> { - let cmd = sc_cli::parse_and_prepare::( - &version, - "parity-polkadot", - std::env::args(), - ); - - // Preload spec to select native runtime - let spec = match cmd.shared_params() { - Some(params) => Some(sc_cli::load_spec(params, &load_spec)?), - None => None, - }; - if spec.as_ref().map_or(false, |c| c.is_kusama()) { - execute_cmd_with_runtime::< - service::kusama_runtime::RuntimeApi, - service::KusamaExecutor, - service::kusama_runtime::UncheckedExtrinsic, - _ - >(exit, &version, cmd, spec) - } else { - execute_cmd_with_runtime::< - service::polkadot_runtime::RuntimeApi, - service::PolkadotExecutor, - service::polkadot_runtime::UncheckedExtrinsic, - _ - >(exit, &version, cmd, spec) - } -} +pub use cli::*; #[cfg(feature = "cli")] -use sp_core::Blake2Hasher; +pub use command::*; -#[cfg(feature = "cli")] -// We can't simply use `service::TLightClient` due to a -// Rust bug: https://github.com/rust-lang/rust/issues/43580 -type TLightClient = sc_client::Client< - sc_client::light::backend::Backend, Blake2Hasher>, - sc_client::light::call_executor::GenesisCallExecutor< - sc_client::light::backend::Backend, Blake2Hasher>, - sc_client::LocalCallExecutor< - sc_client::light::backend::Backend, Blake2Hasher>, - sc_executor::NativeExecutor - > - >, - Block, - Runtime ->; +pub use chain_spec::*; -/// Execute the given `cmd` with the given runtime. #[cfg(feature = "cli")] -fn execute_cmd_with_runtime( - exit: X, - version: &sc_cli::VersionInfo, - cmd: sc_cli::ParseAndPrepare, - spec: Option, -) -> error::Result<()> -where - R: ConstructRuntimeApi> - + Send + Sync + 'static, - >>::RuntimeApi: - RuntimeApiCollection, Block>>, - >>::RuntimeApi: - RuntimeApiCollection, Block>>, - E: service::Codec + Send + Sync + 'static, - D: service::NativeExecutionDispatch + 'static, - X: IntoExit, - // Rust bug: https://github.com/rust-lang/rust/issues/24159 - <>>::RuntimeApi as sp_api::ApiExt>::StateBackend: - sp_api::StateBackend, - // Rust bug: https://github.com/rust-lang/rust/issues/43580 - R: ConstructRuntimeApi< - Block, - TLightClient - >, -{ - let is_kusama = spec.as_ref().map_or(false, |s| s.is_kusama()); - // Use preloaded spec - let load_spec = |_: &str| Ok(spec); - match cmd { - sc_cli::ParseAndPrepare::Run(cmd) => cmd.run(load_spec, exit, - |exit, _cli_args, custom_args, mut config| { - info!("{}", version.name); - info!(" version {}", config.full_version()); - info!(" by {}, 2017-2020", version.author); - info!("Chain specification: {}", config.chain_spec.name()); - info!("Native runtime: {}", D::native_version().runtime_version); - if is_kusama { - info!("----------------------------"); - info!("This chain is not in any way"); - info!(" endorsed by the "); - info!(" KUSAMA FOUNDATION "); - info!("----------------------------"); - } - info!("Node name: {}", config.name); - info!("Roles: {}", display_role(&config)); - config.custom = service::CustomConfiguration::default(); - config.custom.authority_discovery_enabled = custom_args.authority_discovery_enabled; - let runtime = Runtime::new().map_err(|e| format!("{:?}", e))?; - config.tasks_executor = { - let runtime_handle = runtime.handle().clone(); - Some(Box::new(move |fut| { runtime_handle.spawn(fut); })) - }; - match config.roles { - service::Roles::LIGHT => - run_until_exit( - runtime, - service::new_light::(config).map_err(|e| format!("{:?}", e))?, - exit.into_exit(), - ), - _ => - run_until_exit( - runtime, - service::new_full::(config).map_err(|e| format!("{:?}", e))?, - exit.into_exit(), - ), - }.map_err(|e| format!("{:?}", e)) - }), - sc_cli::ParseAndPrepare::BuildSpec(cmd) => cmd.run::(load_spec), - sc_cli::ParseAndPrepare::ExportBlocks(cmd) => cmd.run_with_builder::<_, _, _, _, _, _, _>(|config| - Ok(service::new_chain_ops::(config)?), load_spec, exit), - sc_cli::ParseAndPrepare::ImportBlocks(cmd) => cmd.run_with_builder::<_, _, _, _, _, _, _>(|config| - Ok(service::new_chain_ops::(config)?), load_spec, exit), - sc_cli::ParseAndPrepare::CheckBlock(cmd) => cmd.run_with_builder::<_, _, _, _, _, _, _>(|config| - Ok(service::new_chain_ops::(config)?), load_spec, exit), - sc_cli::ParseAndPrepare::PurgeChain(cmd) => cmd.run(load_spec), - sc_cli::ParseAndPrepare::RevertChain(cmd) => cmd.run_with_builder::<_, _, _, _, _, _>(|config| - Ok(service::new_chain_ops::(config)?), load_spec), - sc_cli::ParseAndPrepare::CustomCommand(PolkadotSubCommands::ValidationWorker(args)) => { - if cfg!(feature = "browser") { - Err(error::Error::Input("Cannot run validation worker in browser".into())) - } else { - #[cfg(not(feature = "browser"))] - service::run_validation_worker(&args.mem_id)?; - Ok(()) - } - } - } -} - -/// Run the given `service` using the `runtime` until it exits or `e` fires. -#[cfg(feature = "cli")] -pub fn run_until_exit( - mut runtime: Runtime, - service: impl AbstractService, - e: impl Future + Send + Unpin + 'static, -) -> error::Result<()> { - let (exit_send, exit) = oneshot::channel(); - - let informant = sc_cli::informant::build(&service); - - let handle = runtime.spawn(select(exit, informant)); - - // we eagerly drop the service so that the internal exit future is fired, - // but we need to keep holding a reference to the global telemetry guard - let _telemetry = service.telemetry(); - - let service_res = runtime.block_on(select(service, e)); - - let _ = exit_send.send(()); - - runtime.block_on(handle); - - match service_res { - Either::Left((res, _)) => res.map_err(error::Error::Service), - Either::Right((_, _)) => Ok(()) - } -} +pub use sc_cli::{VersionInfo, error}; diff --git a/collator/Cargo.toml b/collator/Cargo.toml index 1da9d7145a04c..887df52f91d02 100644 --- a/collator/Cargo.toml +++ b/collator/Cargo.toml @@ -8,6 +8,7 @@ edition = "2018" [dependencies] futures = "0.3.1" sc-client = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } +sc-cli = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } sc-client-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } sc-network = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } sp-blockchain = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } diff --git a/collator/src/lib.rs b/collator/src/lib.rs index 4840520498586..765331b792164 100644 --- a/collator/src/lib.rs +++ b/collator/src/lib.rs @@ -307,7 +307,6 @@ fn run_collator_node( ::ProduceCandidate: Send, Extrinsic: service::Codec + Send + Sync + 'static, { - let runtime = tokio::runtime::Runtime::new().map_err(|e| format!("{:?}", e))?; let spawner = service.spawn_task_handle(); let client = service.client(); @@ -456,7 +455,8 @@ fn run_collator_node( service.spawn_essential_task("collation", work); - polkadot_cli::run_until_exit(runtime, service, exit) + // NOTE: this is not ideal as we should only provide the service + sc_cli::run_service_until_exit(Configuration::default(), |_config| Ok(service)) } fn compute_targets(para_id: ParaId, session_keys: &[ValidatorId], roster: DutyRoster) -> HashSet { @@ -469,11 +469,6 @@ fn compute_targets(para_id: ParaId, session_keys: &[ValidatorId], roster: DutyRo .collect() } -/// Set the `collating_for` parameter of the configuration. -fn prepare_config(config: &mut Configuration, para_id: ParaId, key: &Arc) { - config.custom.collating_for = Some((key.public(), para_id)); -} - /// Run a collator node with the given `RelayChainContext` and `ParachainContext` /// build by the given `BuildParachainContext` and arguments to the underlying polkadot node. /// @@ -484,24 +479,46 @@ pub fn run_collator( para_id: ParaId, exit: E, key: Arc, - mut config: Configuration, + config: Configuration, ) -> polkadot_cli::error::Result<()> where P: BuildParachainContext, P::ParachainContext: Send + 'static, ::ProduceCandidate: Send, E: futures::Future + Unpin + Send + Clone + Sync + 'static, { - prepare_config(&mut config, para_id, &key); - - match (config.chain_spec.is_kusama(), config.roles) { + match (config.expect_chain_spec().is_kusama(), config.roles) { (true, Roles::LIGHT) => - run_collator_node(service::kusama_new_light(config)?, exit, para_id, key, build_parachain_context), + run_collator_node( + service::kusama_new_light(config, Some((key.public(), para_id)))?, + exit, + para_id, + key, + build_parachain_context, + ), (true, _) => - run_collator_node(service::kusama_new_full(config)?, exit, para_id, key, build_parachain_context), + run_collator_node( + service::kusama_new_full(config, Some((key.public(), para_id)), None, false, 6000)?, + exit, + para_id, + key, + build_parachain_context, + ), (false, Roles::LIGHT) => - run_collator_node(service::polkadot_new_light(config)?, exit, para_id, key, build_parachain_context), + run_collator_node( + service::polkadot_new_light(config, Some((key.public(), para_id)))?, + exit, + para_id, + key, + build_parachain_context, + ), (false, _) => - run_collator_node(service::polkadot_new_full(config)?, exit, para_id, key, build_parachain_context), + run_collator_node( + service::polkadot_new_full(config, Some((key.public(), para_id)), None, false, 6000)?, + exit, + para_id, + key, + build_parachain_context, + ), } } diff --git a/primitives/Cargo.toml b/primitives/Cargo.toml index 77d22fce066c7..e96a8b6e9afb1 100644 --- a/primitives/Cargo.toml +++ b/primitives/Cargo.toml @@ -7,17 +7,17 @@ edition = "2018" [dependencies] serde = { version = "1.0.102", optional = true, features = ["derive"] } parity-scale-codec = { version = "1.1.0", default-features = false, features = ["bit-vec", "derive"] } -primitives = { package = "sp-core", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -inherents = { package = "sp-inherents", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -application-crypto = { package = "sp-application-crypto", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } +primitives = { package = "sp-core", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +inherents = { package = "sp-inherents", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +application-crypto = { package = "sp-application-crypto", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } sp-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } -sp-version = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -rstd = { package = "sp-std", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -runtime_primitives = { package = "sp-runtime", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } +sp-version = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +rstd = { package = "sp-std", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +runtime_primitives = { package = "sp-runtime", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } polkadot-parachain = { path = "../parachain", default-features = false } -trie = { package = "sp-trie", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } +trie = { package = "sp-trie", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } bitvec = { version = "0.15.2", default-features = false, features = ["alloc"] } -babe = { package = "pallet-babe", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } +babe = { package = "pallet-babe", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } [dev-dependencies] sp-serializer = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } diff --git a/runtime/common/Cargo.toml b/runtime/common/Cargo.toml index ac28e9b1eee86..8d974fa8a38c3 100644 --- a/runtime/common/Cargo.toml +++ b/runtime/common/Cargo.toml @@ -13,20 +13,20 @@ serde = { version = "1.0.102", default-features = false } serde_derive = { version = "1.0.102", optional = true } sp-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } -inherents = { package = "sp-inherents", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -rstd = { package = "sp-std", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -sp-io = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -sp-runtime = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -sp-staking = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -sp-core = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } +inherents = { package = "sp-inherents", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +rstd = { package = "sp-std", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +sp-io = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +sp-staking = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } -authorship = { package = "pallet-authorship", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -balances = { package = "pallet-balances", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -session = { package = "pallet-session", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -frame-support = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -staking = { package = "pallet-staking", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -system = { package = "frame-system", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -timestamp = { package = "pallet-timestamp", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } +authorship = { package = "pallet-authorship", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +balances = { package = "pallet-balances", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +session = { package = "pallet-session", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +frame-support = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +staking = { package = "pallet-staking", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +system = { package = "frame-system", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +timestamp = { package = "pallet-timestamp", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } primitives = { package = "polkadot-primitives", path = "../../primitives", default-features = false } polkadot-parachain = { path = "../../parachain", default-features = false } @@ -37,10 +37,10 @@ libsecp256k1 = "0.3.2" tiny-keccak = "1.5.0" keyring = { package = "sp-keyring", git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } sp-trie = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -babe = { package = "pallet-babe", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -randomness-collective-flip = { package = "pallet-randomness-collective-flip", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } +babe = { package = "pallet-babe", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +randomness-collective-flip = { package = "pallet-randomness-collective-flip", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } pallet-staking-reward-curve = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -treasury = { package = "pallet-treasury", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } +treasury = { package = "pallet-treasury", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } trie-db = "0.19.2" serde_json = "1.0.41" diff --git a/runtime/common/src/registrar.rs b/runtime/common/src/registrar.rs index 53dad039a37f1..ee490a8e81408 100644 --- a/runtime/common/src/registrar.rs +++ b/runtime/common/src/registrar.rs @@ -517,6 +517,7 @@ pub enum ValidityError { impl SignedExtension for LimitParathreadCommits where ::Call: IsSubType, T> { + const IDENTIFIER: &'static str = "LimitParathreadCommits"; type AccountId = T::AccountId; type Call = ::Call; type AdditionalSigned = (); diff --git a/runtime/kusama/Cargo.toml b/runtime/kusama/Cargo.toml index 2977ff345ae84..9acfa74c52bf1 100644 --- a/runtime/kusama/Cargo.toml +++ b/runtime/kusama/Cargo.toml @@ -13,51 +13,51 @@ rustc-hex = { version = "2.0.1", default-features = false } serde = { version = "1.0.102", default-features = false } serde_derive = { version = "1.0.102", optional = true } -authority-discovery-primitives = { package = "sp-authority-discovery", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -babe-primitives = { package = "sp-consensus-babe", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } +authority-discovery-primitives = { package = "sp-authority-discovery", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +babe-primitives = { package = "sp-consensus-babe", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } sp-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } -inherents = { package = "sp-inherents", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -offchain-primitives = { package = "sp-offchain", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -rstd = { package = "sp-std", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -sp-io = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -sp-runtime = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -sp-staking = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -sp-core = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -sp-session = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -version = { package = "sp-version", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -tx-pool-api = { package = "sp-transaction-pool", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -block-builder-api = { package = "sp-block-builder", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } +inherents = { package = "sp-inherents", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +offchain-primitives = { package = "sp-offchain", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +rstd = { package = "sp-std", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +sp-io = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +sp-staking = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +sp-session = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +version = { package = "sp-version", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +tx-pool-api = { package = "sp-transaction-pool", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +block-builder-api = { package = "sp-block-builder", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } -authority-discovery = { package = "pallet-authority-discovery", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -authorship = { package = "pallet-authorship", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -babe = { package = "pallet-babe", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -balances = { package = "pallet-balances", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -transaction-payment = { package = "pallet-transaction-payment", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -collective = { package = "pallet-collective", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -democracy = { package = "pallet-democracy", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -elections-phragmen = { package = "pallet-elections-phragmen", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -executive = { package = "frame-executive", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -finality-tracker = { package = "pallet-finality-tracker", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -grandpa = { package = "pallet-grandpa", git = "https://github.com/paritytech/substrate", default-features = false, features = ["migrate-authorities"], branch = "polkadot-master" } -identity = { package = "pallet-identity", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -im-online = { package = "pallet-im-online", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -indices = { package = "pallet-indices", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -membership = { package = "pallet-membership", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -nicks = { package = "pallet-nicks", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -offences = { package = "pallet-offences", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -randomness-collective-flip = { package = "pallet-randomness-collective-flip", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -recovery = { package = "pallet-recovery", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -session = { package = "pallet-session", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -society = { package = "pallet-society", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -frame-support = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -staking = { package = "pallet-staking", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } +authority-discovery = { package = "pallet-authority-discovery", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +authorship = { package = "pallet-authorship", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +babe = { package = "pallet-babe", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +balances = { package = "pallet-balances", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +transaction-payment = { package = "pallet-transaction-payment", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +collective = { package = "pallet-collective", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +democracy = { package = "pallet-democracy", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +elections-phragmen = { package = "pallet-elections-phragmen", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +executive = { package = "frame-executive", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +finality-tracker = { package = "pallet-finality-tracker", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +grandpa = { package = "pallet-grandpa", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false, features = ["migrate-authorities"] } +identity = { package = "pallet-identity", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +im-online = { package = "pallet-im-online", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +indices = { package = "pallet-indices", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +membership = { package = "pallet-membership", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +nicks = { package = "pallet-nicks", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +offences = { package = "pallet-offences", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +randomness-collective-flip = { package = "pallet-randomness-collective-flip", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +recovery = { package = "pallet-recovery", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +session = { package = "pallet-session", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +society = { package = "pallet-society", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +frame-support = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +staking = { package = "pallet-staking", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } pallet-staking-reward-curve = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -system = { package = "frame-system", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -system_rpc_runtime_api = { package = "frame-system-rpc-runtime-api", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -timestamp = { package = "pallet-timestamp", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -treasury = { package = "pallet-treasury", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -utility = { package = "pallet-utility", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } +system = { package = "frame-system", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +system_rpc_runtime_api = { package = "frame-system-rpc-runtime-api", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +timestamp = { package = "pallet-timestamp", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +treasury = { package = "pallet-treasury", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +utility = { package = "pallet-utility", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } runtime-common = { package = "polkadot-runtime-common", path = "../common", default-features = false } primitives = { package = "polkadot-primitives", path = "../../primitives", default-features = false } @@ -73,7 +73,7 @@ trie-db = "0.19.2" serde_json = "1.0.41" [build-dependencies] -wasm-builder-runner = { package = "substrate-wasm-builder-runner", version = "1.0.4" } +wasm-builder-runner = { package = "substrate-wasm-builder-runner", version = "1.0.5" } [features] default = ["std"] diff --git a/runtime/kusama/build.rs b/runtime/kusama/build.rs index 0636c240ee253..4852496f7b27c 100644 --- a/runtime/kusama/build.rs +++ b/runtime/kusama/build.rs @@ -14,8 +14,13 @@ // You should have received a copy of the GNU General Public License // along with Substrate. If not, see . -use wasm_builder_runner::{build_current_project, WasmBuilderSource}; +use wasm_builder_runner::WasmBuilder; fn main() { - build_current_project("wasm_binary.rs", WasmBuilderSource::Crates("1.0.9")); + WasmBuilder::new() + .with_current_project() + .with_wasm_builder_from_crates("1.0.9") + .import_memory() + .export_heap_base() + .build() } diff --git a/runtime/kusama/src/lib.rs b/runtime/kusama/src/lib.rs index 627d5492de528..7ee079031f2a0 100644 --- a/runtime/kusama/src/lib.rs +++ b/runtime/kusama/src/lib.rs @@ -95,6 +95,7 @@ pub fn native_version() -> NativeVersion { #[derive(Default, Encode, Decode, Clone, Eq, PartialEq, RuntimeDebug)] pub struct RestrictFunctionality; impl SignedExtension for RestrictFunctionality { + const IDENTIFIER: &'static str = "RestrictFunctionality"; type AccountId = AccountId; type Call = Call; type AdditionalSigned = (); @@ -513,7 +514,8 @@ parameter_types! { pub const BasicDeposit: Balance = 10 * DOLLARS; // 258 bytes on-chain pub const FieldDeposit: Balance = 250 * CENTS; // 66 bytes on-chain pub const SubAccountDeposit: Balance = 2 * DOLLARS; // 53 bytes on-chain - pub const MaximumSubAccounts: u32 = 100; + pub const MaxSubAccounts: u32 = 100; + pub const MaxAdditionalFields: u32 = 100; } impl identity::Trait for Runtime { @@ -523,7 +525,8 @@ impl identity::Trait for Runtime { type BasicDeposit = BasicDeposit; type FieldDeposit = FieldDeposit; type SubAccountDeposit = SubAccountDeposit; - type MaximumSubAccounts = MaximumSubAccounts; + type MaxSubAccounts = MaxSubAccounts; + type MaxAdditionalFields = MaxAdditionalFields; type RegistrarOrigin = collective::EnsureProportionMoreThan<_1, _2, AccountId, CouncilCollective>; type ForceOrigin = collective::EnsureProportionMoreThan<_1, _2, AccountId, CouncilCollective>; } diff --git a/runtime/polkadot/Cargo.toml b/runtime/polkadot/Cargo.toml index ae8140d3bf306..38a22e8dcda25 100644 --- a/runtime/polkadot/Cargo.toml +++ b/runtime/polkadot/Cargo.toml @@ -13,48 +13,48 @@ rustc-hex = { version = "2.0.1", default-features = false } serde = { version = "1.0.102", default-features = false } serde_derive = { version = "1.0.102", optional = true } -authority-discovery-primitives = { package = "sp-authority-discovery", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -babe-primitives = { package = "sp-consensus-babe", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } +authority-discovery-primitives = { package = "sp-authority-discovery", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +babe-primitives = { package = "sp-consensus-babe", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } sp-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } -inherents = { package = "sp-inherents", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -offchain-primitives = { package = "sp-offchain", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -rstd = { package = "sp-std", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -sp-runtime = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -sp-staking = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -sp-core = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -sp-session = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -version = { package = "sp-version", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -tx-pool-api = { package = "sp-transaction-pool", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -block-builder-api = { package = "sp-block-builder", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } +inherents = { package = "sp-inherents", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +offchain-primitives = { package = "sp-offchain", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +rstd = { package = "sp-std", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +sp-staking = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +sp-session = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +version = { package = "sp-version", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +tx-pool-api = { package = "sp-transaction-pool", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +block-builder-api = { package = "sp-block-builder", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } -authority-discovery = { package = "pallet-authority-discovery", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -authorship = { package = "pallet-authorship", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -babe = { package = "pallet-babe", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -balances = { package = "pallet-balances", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -transaction-payment = { package = "pallet-transaction-payment", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -collective = { package = "pallet-collective", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -democracy = { package = "pallet-democracy", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -elections-phragmen = { package = "pallet-elections-phragmen", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -executive = { package = "frame-executive", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -finality-tracker = { package = "pallet-finality-tracker", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -grandpa = { package = "pallet-grandpa", git = "https://github.com/paritytech/substrate", default-features = false, features = ["migrate-authorities"], branch = "polkadot-master" } -identity = { package = "pallet-identity", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -im-online = { package = "pallet-im-online", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -indices = { package = "pallet-indices", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -membership = { package = "pallet-membership", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -nicks = { package = "pallet-nicks", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -offences = { package = "pallet-offences", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -randomness-collective-flip = { package = "pallet-randomness-collective-flip", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -session = { package = "pallet-session", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -frame-support = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -staking = { package = "pallet-staking", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } +authority-discovery = { package = "pallet-authority-discovery", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +authorship = { package = "pallet-authorship", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +babe = { package = "pallet-babe", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +balances = { package = "pallet-balances", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +transaction-payment = { package = "pallet-transaction-payment", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +collective = { package = "pallet-collective", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +democracy = { package = "pallet-democracy", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +elections-phragmen = { package = "pallet-elections-phragmen", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +executive = { package = "frame-executive", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +finality-tracker = { package = "pallet-finality-tracker", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +grandpa = { package = "pallet-grandpa", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false, features = ["migrate-authorities"] } +identity = { package = "pallet-identity", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +im-online = { package = "pallet-im-online", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +indices = { package = "pallet-indices", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +membership = { package = "pallet-membership", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +nicks = { package = "pallet-nicks", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +offences = { package = "pallet-offences", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +randomness-collective-flip = { package = "pallet-randomness-collective-flip", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +session = { package = "pallet-session", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +frame-support = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +staking = { package = "pallet-staking", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } pallet-staking-reward-curve = { git = "https://github.com/paritytech/substrate", branch = "polkadot-master" } -system = { package = "frame-system", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -system_rpc_runtime_api = { package = "frame-system-rpc-runtime-api", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -timestamp = { package = "pallet-timestamp", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -treasury = { package = "pallet-treasury", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -sudo = { package = "pallet-sudo", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } +system = { package = "frame-system", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +system_rpc_runtime_api = { package = "frame-system-rpc-runtime-api", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +timestamp = { package = "pallet-timestamp", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +treasury = { package = "pallet-treasury", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } +sudo = { package = "pallet-sudo", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false } runtime-common = { package = "polkadot-runtime-common", path = "../common", default-features = false } primitives = { package = "polkadot-primitives", path = "../../primitives", default-features = false } @@ -70,7 +70,7 @@ trie-db = "0.19.2" serde_json = "1.0.41" [build-dependencies] -wasm-builder-runner = { package = "substrate-wasm-builder-runner", version = "1.0.4" } +wasm-builder-runner = { package = "substrate-wasm-builder-runner", version = "1.0.5" } [features] default = ["std"] diff --git a/runtime/polkadot/build.rs b/runtime/polkadot/build.rs index 3ecae57e4d5bb..6a72db6feb3a4 100644 --- a/runtime/polkadot/build.rs +++ b/runtime/polkadot/build.rs @@ -14,8 +14,13 @@ // You should have received a copy of the GNU General Public License // along with Substrate. If not, see . -use wasm_builder_runner::{build_current_project, WasmBuilderSource}; +use wasm_builder_runner::WasmBuilder; fn main() { - build_current_project("wasm_binary.rs", WasmBuilderSource::Crates("1.0.9")); + WasmBuilder::new() + .with_current_project() + .with_wasm_builder_from_crates("1.0.9") + .import_memory() + .export_heap_base() + .build() } diff --git a/runtime/polkadot/src/lib.rs b/runtime/polkadot/src/lib.rs index cd55bf3953af9..264aa6e440b55 100644 --- a/runtime/polkadot/src/lib.rs +++ b/runtime/polkadot/src/lib.rs @@ -99,6 +99,7 @@ pub fn native_version() -> NativeVersion { #[derive(Default, Encode, Decode, Clone, Eq, PartialEq, RuntimeDebug)] pub struct OnlyStakingAndClaims; impl SignedExtension for OnlyStakingAndClaims { + const IDENTIFIER: &'static str = "OnlyStakingAndClaims"; type AccountId = AccountId; type Call = Call; type AdditionalSigned = (); diff --git a/service/src/lib.rs b/service/src/lib.rs index 7674eec556395..c660fc07e45be 100644 --- a/service/src/lib.rs +++ b/service/src/lib.rs @@ -18,11 +18,6 @@ pub mod chain_spec; -use futures::{ - FutureExt, TryFutureExt, - task::{Spawn, SpawnError, FutureObj}, - compat::Future01CompatExt, -}; use sc_client::LongestChain; use std::sync::Arc; use std::time::Duration; @@ -57,42 +52,14 @@ pub use codec::Codec; pub use polkadot_runtime; pub use kusama_runtime; -/// Polkadot-specific configuration. -pub struct CustomConfiguration { - /// Set to `Some` with a collator `CollatorId` and desired parachain - /// if the network protocol should be started in collator mode. - pub collating_for: Option<(CollatorId, parachain::Id)>, - - /// Maximal `block_data` size. - pub max_block_data_size: Option, - - /// Whether to enable or disable the authority discovery module. - pub authority_discovery_enabled: bool, - - /// Milliseconds per block. - pub slot_duration: u64, -} - /// Configuration type that is being used. /// /// See [`ChainSpec`] for more information why Polkadot `GenesisConfig` is safe here. pub type Configuration = service::Configuration< - CustomConfiguration, polkadot_runtime::GenesisConfig, chain_spec::Extensions, >; -impl Default for CustomConfiguration { - fn default() -> Self { - Self { - collating_for: None, - max_block_data_size: None, - authority_discovery_enabled: false, - slot_duration: 6000, - } - } -} - native_executor_instance!( pub PolkadotExecutor, polkadot_runtime::api::dispatch, @@ -232,7 +199,13 @@ where } /// Create a new Polkadot service for a full node. -pub fn polkadot_new_full(config: Configuration) +pub fn polkadot_new_full( + config: Configuration, + collating_for: Option<(CollatorId, parachain::Id)>, + max_block_data_size: Option, + authority_discovery_enabled: bool, + slot_duration: u64, +) -> Result, >, ServiceError> { - new_full(config) + new_full(config, collating_for, max_block_data_size, authority_discovery_enabled, slot_duration) } /// Create a new Kusama service for a full node. -pub fn kusama_new_full(config: Configuration) +pub fn kusama_new_full( + config: Configuration, + collating_for: Option<(CollatorId, parachain::Id)>, + max_block_data_size: Option, + authority_discovery_enabled: bool, + slot_duration: u64, +) -> Result, >, ServiceError> { - new_full(config) + new_full(config, collating_for, max_block_data_size, authority_discovery_enabled, slot_duration) } /// Builds a new service for a full client. -pub fn new_full(config: Configuration) +pub fn new_full( + config: Configuration, + collating_for: Option<(CollatorId, parachain::Id)>, + max_block_data_size: Option, + authority_discovery_enabled: bool, + slot_duration: u64, +) -> Result(config: Configuration) use sc_network::Event; use futures::stream::StreamExt; - let is_collator = config.custom.collating_for.is_some(); + let is_collator = collating_for.is_some(); let is_authority = config.roles.is_authority() && !is_collator; let force_authoring = config.force_authoring; - let max_block_data_size = config.custom.max_block_data_size; + let max_block_data_size = max_block_data_size; let db_path = if let DatabaseConfig::Path { ref path, .. } = config.database { path.clone() } else { @@ -292,9 +277,9 @@ pub fn new_full(config: Configuration) }; let disable_grandpa = config.disable_grandpa; let name = config.name.clone(); - let authority_discovery_enabled = config.custom.authority_discovery_enabled; + let authority_discovery_enabled = authority_discovery_enabled; let sentry_nodes = config.network.sentry_nodes.clone(); - let slot_duration = config.custom.slot_duration; + let slot_duration = slot_duration; // sentry nodes announce themselves as authorities to the network // and should run the same protocols authorities do, but it should @@ -306,7 +291,7 @@ pub fn new_full(config: Configuration) let backend = builder.backend().clone(); let service = builder - .with_network_protocol(|config| Ok(PolkadotProtocol::new(config.custom.collating_for.clone())))? + .with_network_protocol(|_config| Ok(PolkadotProtocol::new(collating_for.clone())))? .with_finality_proof_provider(|client, backend| Ok(Arc::new(GrandpaFinalityProofProvider::new(backend, client)) as _) )? @@ -510,7 +495,10 @@ pub fn new_full(config: Configuration) } /// Create a new Polkadot service for a light client. -pub fn polkadot_new_light(config: Configuration) +pub fn polkadot_new_light( + config: Configuration, + collating_for: Option<(CollatorId, parachain::Id)>, +) -> Result, >, ServiceError> { - new_light(config) + new_light(config, collating_for) } /// Create a new Kusama service for a light client. -pub fn kusama_new_light(config: Configuration) +pub fn kusama_new_light( + config: Configuration, + collating_for: Option<(CollatorId, parachain::Id)>, +) -> Result, >, ServiceError> { - new_light(config) + new_light(config, collating_for) } // We can't use service::TLightClient due to @@ -556,7 +547,10 @@ type TLocalLightClient = Client< >; /// Builds a new service for a light client. -pub fn new_light(config: Configuration) +pub fn new_light( + config: Configuration, + collating_for: Option<(CollatorId, parachain::Id)>, +) -> Result, fn(Result<(), oneshot::Canceled>) -> ()>; - fn into_exit(self) -> Self::Exit { - // can't use signal directly here because CtrlC takes only `Fn`. - let (exit_send, exit) = oneshot::channel(); - - let exit_send_cell = RefCell::new(Some(exit_send)); - #[cfg(not(target_os = "unknown"))] - ctrlc::set_handler(move || { - if let Some(exit_send) = exit_send_cell.try_borrow_mut().expect("signal handler not reentrant; qed").take() { - exit_send.send(()).expect("Error sending exit notification"); - } - }).expect("Error setting Ctrl-C handler"); - - exit.map(drop) - } -} fn main() -> Result<(), cli::error::Error> { let version = VersionInfo { @@ -52,7 +29,8 @@ fn main() -> Result<(), cli::error::Error> { author: "Parity Team ", description: "Polkadot Relay-chain Client Node", support_url: "https://github.com/paritytech/polkadot/issues/new", + copyright_start_year: 2017, }; - cli::run(Exit, version) + cli::run(version) } diff --git a/test-parachains/adder/Cargo.toml b/test-parachains/adder/Cargo.toml index 6f228e7513bb7..8bf43581adb35 100644 --- a/test-parachains/adder/Cargo.toml +++ b/test-parachains/adder/Cargo.toml @@ -16,7 +16,7 @@ dlmalloc = { version = "0.1.3", features = [ "global" ] } runtime-io = { package = "sp-io", git = "https://github.com/paritytech/substrate", branch = "polkadot-master", default-features = false, features = [ "disable_allocator" ] } [build-dependencies] -wasm-builder-runner = { package = "substrate-wasm-builder-runner", version = "1.0.4" } +wasm-builder-runner = { package = "substrate-wasm-builder-runner", version = "1.0.5" } [features] default = [ "std" ] diff --git a/test-parachains/adder/build.rs b/test-parachains/adder/build.rs index a8db1da6f1347..5f76406fab5ca 100644 --- a/test-parachains/adder/build.rs +++ b/test-parachains/adder/build.rs @@ -14,12 +14,12 @@ // You should have received a copy of the GNU General Public License // along with Substrate. If not, see . -use wasm_builder_runner::{build_current_project_with_rustflags, WasmBuilderSource}; +use wasm_builder_runner::WasmBuilder; fn main() { - build_current_project_with_rustflags( - "wasm_binary.rs", - WasmBuilderSource::Crates("1.0.9"), - "-C link-arg=--export=__heap_base", - ); + WasmBuilder::new() + .with_current_project() + .with_wasm_builder_from_crates("1.0.9") + .export_heap_base() + .build() } diff --git a/test-parachains/adder/collator/src/main.rs b/test-parachains/adder/collator/src/main.rs index 0d9cf69379d20..31ee94835b6b8 100644 --- a/test-parachains/adder/collator/src/main.rs +++ b/test-parachains/adder/collator/src/main.rs @@ -150,12 +150,15 @@ fn main() { _network: None, }; + let mut config = Configuration::default(); + config.chain_spec = load_spec("dev").unwrap(); + let res = collator::run_collator( context, id, exit, key, - Configuration::default_with_spec_and_base_path(load_spec("dev").unwrap().unwrap(), None), + config, ); if let Err(e) = res { diff --git a/test-parachains/halt/Cargo.toml b/test-parachains/halt/Cargo.toml index 1daabe8a4f65a..3afd1dbc7c7ad 100644 --- a/test-parachains/halt/Cargo.toml +++ b/test-parachains/halt/Cargo.toml @@ -9,7 +9,7 @@ build = "build.rs" [dependencies] [build-dependencies] -wasm-builder-runner = { package = "substrate-wasm-builder-runner", version = "1.0.4" } +wasm-builder-runner = { package = "substrate-wasm-builder-runner", version = "1.0.5" } [features] default = [ "std" ] diff --git a/test-parachains/halt/build.rs b/test-parachains/halt/build.rs index a8db1da6f1347..5f76406fab5ca 100644 --- a/test-parachains/halt/build.rs +++ b/test-parachains/halt/build.rs @@ -14,12 +14,12 @@ // You should have received a copy of the GNU General Public License // along with Substrate. If not, see . -use wasm_builder_runner::{build_current_project_with_rustflags, WasmBuilderSource}; +use wasm_builder_runner::WasmBuilder; fn main() { - build_current_project_with_rustflags( - "wasm_binary.rs", - WasmBuilderSource::Crates("1.0.9"), - "-C link-arg=--export=__heap_base", - ); + WasmBuilder::new() + .with_current_project() + .with_wasm_builder_from_crates("1.0.9") + .export_heap_base() + .build() }