diff --git a/polkadot/Cargo.lock b/polkadot/Cargo.lock index e4b3a9e3acf0057e8340d934d36630bd45a3b7f0..6283bf7b271a6039a12c0118b18a223de2f7cc20 100644 --- a/polkadot/Cargo.lock +++ b/polkadot/Cargo.lock @@ -849,7 +849,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#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2818,7 +2818,7 @@ dependencies = [ "srml-balances 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "srml-collective 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "srml-democracy 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", - "srml-elections 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "srml-elections-phragmen 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "srml-executive 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "srml-finality-tracker 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "srml-grandpa 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3704,7 +3704,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "sr-api-macros" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" 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)", @@ -3716,7 +3716,7 @@ dependencies = [ [[package]] name = "sr-arithmetic" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "integer-sqrt 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3729,7 +3729,7 @@ dependencies = [ [[package]] name = "sr-io" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "hash-db 0.15.2 (registry+https://github.com/rust-lang/crates.io-index)", "libsecp256k1 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3747,7 +3747,7 @@ dependencies = [ [[package]] name = "sr-primitives" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "impl-trait-for-tuples 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3765,7 +3765,7 @@ dependencies = [ [[package]] name = "sr-staking-primitives" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -3775,7 +3775,7 @@ dependencies = [ [[package]] name = "sr-std" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -3783,7 +3783,7 @@ dependencies = [ [[package]] name = "sr-version" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "impl-serde 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3795,7 +3795,7 @@ dependencies = [ [[package]] name = "srml-authority-discovery" version = "0.1.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3812,7 +3812,7 @@ dependencies = [ [[package]] name = "srml-authorship" version = "0.1.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "impl-trait-for-tuples 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3828,7 +3828,7 @@ dependencies = [ [[package]] name = "srml-babe" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "hex-literal 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3848,7 +3848,7 @@ dependencies = [ [[package]] name = "srml-balances" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3863,7 +3863,7 @@ dependencies = [ [[package]] name = "srml-collective" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3879,7 +3879,7 @@ dependencies = [ [[package]] name = "srml-democracy" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3892,25 +3892,25 @@ dependencies = [ ] [[package]] -name = "srml-elections" +name = "srml-elections-phragmen" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", - "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "srml-support 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "srml-system 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", + "substrate-phragmen 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", ] [[package]] name = "srml-executive" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3924,7 +3924,7 @@ dependencies = [ [[package]] name = "srml-finality-tracker" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "impl-trait-for-tuples 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3939,7 +3939,7 @@ dependencies = [ [[package]] name = "srml-grandpa" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3957,7 +3957,7 @@ dependencies = [ [[package]] name = "srml-im-online" version = "0.1.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3975,7 +3975,7 @@ dependencies = [ [[package]] name = "srml-indices" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3992,7 +3992,7 @@ dependencies = [ [[package]] name = "srml-membership" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4006,7 +4006,7 @@ dependencies = [ [[package]] name = "srml-metadata" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4017,7 +4017,7 @@ dependencies = [ [[package]] name = "srml-offences" version = "1.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4032,7 +4032,7 @@ dependencies = [ [[package]] name = "srml-randomness-collective-flip" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4045,7 +4045,7 @@ dependencies = [ [[package]] name = "srml-session" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "impl-trait-for-tuples 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4064,7 +4064,7 @@ dependencies = [ [[package]] name = "srml-staking" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4084,7 +4084,7 @@ dependencies = [ [[package]] name = "srml-staking-reward-curve" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "proc-macro-crate 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4095,7 +4095,7 @@ dependencies = [ [[package]] name = "srml-sudo" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4109,7 +4109,7 @@ dependencies = [ [[package]] name = "srml-support" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "bitmask 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "impl-trait-for-tuples 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4130,7 +4130,7 @@ dependencies = [ [[package]] name = "srml-support-procedural" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4142,7 +4142,7 @@ dependencies = [ [[package]] name = "srml-support-procedural-tools" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "proc-macro-crate 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4154,7 +4154,7 @@ dependencies = [ [[package]] name = "srml-support-procedural-tools-derive" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4164,7 +4164,7 @@ dependencies = [ [[package]] name = "srml-system" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "impl-trait-for-tuples 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4181,7 +4181,7 @@ dependencies = [ [[package]] name = "srml-system-rpc" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "jsonrpc-core 13.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "jsonrpc-core-client 13.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4199,7 +4199,7 @@ dependencies = [ [[package]] name = "srml-system-rpc-runtime-api" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -4208,7 +4208,7 @@ dependencies = [ [[package]] name = "srml-timestamp" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "impl-trait-for-tuples 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4223,7 +4223,7 @@ dependencies = [ [[package]] name = "srml-transaction-payment" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -4235,7 +4235,7 @@ dependencies = [ [[package]] name = "srml-treasury" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4322,7 +4322,7 @@ dependencies = [ [[package]] name = "substrate-application-crypto" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4334,7 +4334,7 @@ dependencies = [ [[package]] name = "substrate-authority-discovery" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "derive_more 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4356,7 +4356,7 @@ dependencies = [ [[package]] name = "substrate-authority-discovery-primitives" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -4378,7 +4378,7 @@ dependencies = [ [[package]] name = "substrate-chain-spec" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "impl-trait-for-tuples 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4393,7 +4393,7 @@ dependencies = [ [[package]] name = "substrate-chain-spec-derive" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "proc-macro-crate 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4404,7 +4404,7 @@ dependencies = [ [[package]] name = "substrate-cli" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" 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)", @@ -4440,7 +4440,7 @@ dependencies = [ [[package]] name = "substrate-client" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "derive_more 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4470,7 +4470,7 @@ dependencies = [ [[package]] name = "substrate-client-db" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "hash-db 0.15.2 (registry+https://github.com/rust-lang/crates.io-index)", "kvdb 0.1.0 (git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7987b8475878fc4d2e1f81d)", @@ -4494,7 +4494,7 @@ dependencies = [ [[package]] name = "substrate-consensus-babe" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "derive_more 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)", "fork-tree 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -4532,7 +4532,7 @@ dependencies = [ [[package]] name = "substrate-consensus-babe-primitives" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "schnorrkel 0.8.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4546,7 +4546,7 @@ dependencies = [ [[package]] name = "substrate-consensus-common" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "derive_more 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)", "futures-preview 0.3.0-alpha.19 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4565,7 +4565,7 @@ dependencies = [ [[package]] name = "substrate-consensus-slots" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "futures-preview 0.3.0-alpha.19 (registry+https://github.com/rust-lang/crates.io-index)", "futures-timer 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4583,7 +4583,7 @@ dependencies = [ [[package]] name = "substrate-consensus-uncles" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -4597,7 +4597,7 @@ dependencies = [ [[package]] name = "substrate-debug-derive" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "proc-macro2 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)", "quote 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4607,7 +4607,7 @@ dependencies = [ [[package]] name = "substrate-executor" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "derive_more 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4631,7 +4631,7 @@ dependencies = [ [[package]] name = "substrate-externalities" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "environmental 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "primitive-types 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4642,7 +4642,7 @@ dependencies = [ [[package]] name = "substrate-finality-grandpa" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "finality-grandpa 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "fork-tree 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -4671,7 +4671,7 @@ dependencies = [ [[package]] name = "substrate-finality-grandpa-primitives" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4684,7 +4684,7 @@ dependencies = [ [[package]] name = "substrate-header-metadata" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "lru-cache 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4694,7 +4694,7 @@ dependencies = [ [[package]] name = "substrate-inherents" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4705,7 +4705,7 @@ dependencies = [ [[package]] name = "substrate-keyring" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -4717,7 +4717,7 @@ dependencies = [ [[package]] name = "substrate-keystore" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "derive_more 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)", "hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4732,7 +4732,7 @@ dependencies = [ [[package]] name = "substrate-network" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4774,7 +4774,7 @@ dependencies = [ [[package]] name = "substrate-offchain" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" 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)", @@ -4801,7 +4801,7 @@ dependencies = [ [[package]] name = "substrate-offchain-primitives" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "substrate-client 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -4810,7 +4810,7 @@ dependencies = [ [[package]] name = "substrate-panic-handler" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" 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)", @@ -4819,7 +4819,7 @@ dependencies = [ [[package]] name = "substrate-peerset" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "futures-preview 0.3.0-alpha.19 (registry+https://github.com/rust-lang/crates.io-index)", "libp2p 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4832,7 +4832,7 @@ dependencies = [ [[package]] name = "substrate-phragmen" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -4841,7 +4841,7 @@ dependencies = [ [[package]] name = "substrate-primitives" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" 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)", @@ -4852,6 +4852,7 @@ dependencies = [ "hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "impl-serde 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libsecp256k1 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "num-traits 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4869,6 +4870,7 @@ dependencies = [ "substrate-externalities 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "substrate-primitives-storage 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "tiny-bip39 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tiny-keccak 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "twox-hash 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "wasmi 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "zeroize 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4877,7 +4879,7 @@ dependencies = [ [[package]] name = "substrate-primitives-storage" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "impl-serde 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4888,7 +4890,7 @@ dependencies = [ [[package]] name = "substrate-rpc" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "futures-preview 0.3.0-alpha.19 (registry+https://github.com/rust-lang/crates.io-index)", "hash-db 0.15.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4914,7 +4916,7 @@ dependencies = [ [[package]] name = "substrate-rpc-api" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "derive_more 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)", "futures-preview 0.3.0-alpha.19 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4936,7 +4938,7 @@ dependencies = [ [[package]] name = "substrate-rpc-primitives" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)", "substrate-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -4945,7 +4947,7 @@ dependencies = [ [[package]] name = "substrate-rpc-servers" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "jsonrpc-core 13.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "jsonrpc-http-server 13.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4960,7 +4962,7 @@ dependencies = [ [[package]] name = "substrate-serializer" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "serde 1.0.101 (registry+https://github.com/rust-lang/crates.io-index)", "serde_json 1.0.41 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4969,7 +4971,7 @@ dependencies = [ [[package]] name = "substrate-service" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "derive_more 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)", "exit-future 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5011,7 +5013,7 @@ dependencies = [ [[package]] name = "substrate-session" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "sr-primitives 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", "sr-std 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)", @@ -5022,7 +5024,7 @@ dependencies = [ [[package]] name = "substrate-state-db" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "parity-scale-codec 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5033,7 +5035,7 @@ dependencies = [ [[package]] name = "substrate-state-machine" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" 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)", @@ -5052,7 +5054,7 @@ dependencies = [ [[package]] name = "substrate-telemetry" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" 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)", @@ -5074,7 +5076,7 @@ dependencies = [ [[package]] name = "substrate-transaction-graph" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "derive_more 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)", "futures-preview 0.3.0-alpha.19 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5088,7 +5090,7 @@ dependencies = [ [[package]] name = "substrate-transaction-pool" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "derive_more 0.15.0 (registry+https://github.com/rust-lang/crates.io-index)", "futures-preview 0.3.0-alpha.19 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5104,7 +5106,7 @@ dependencies = [ [[package]] name = "substrate-trie" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "hash-db 0.15.2 (registry+https://github.com/rust-lang/crates.io-index)", "memory-db 0.15.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5123,7 +5125,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "substrate-wasm-interface" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#acf86cd4b0ad4c45dbba57c2ae323531d5b71264" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-master#37bda95b08873f21adb5db32b0c84c6b471b8860" dependencies = [ "wasmi 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -6355,7 +6357,7 @@ dependencies = [ "checksum srml-balances 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "<none>" "checksum srml-collective 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "<none>" "checksum srml-democracy 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "<none>" -"checksum srml-elections 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "<none>" +"checksum srml-elections-phragmen 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "<none>" "checksum srml-executive 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "<none>" "checksum srml-finality-tracker 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "<none>" "checksum srml-grandpa 2.0.0 (git+https://github.com/paritytech/substrate?branch=polkadot-master)" = "<none>" diff --git a/polkadot/primitives/src/lib.rs b/polkadot/primitives/src/lib.rs index 782b5dbbcbd1ee7ab31d7a7dd6b0b6f044145274..8cd38d8be97186297e07bb5352a0657ec3c1569c 100644 --- a/polkadot/primitives/src/lib.rs +++ b/polkadot/primitives/src/lib.rs @@ -20,9 +20,8 @@ #![cfg_attr(not(feature = "std"), no_std)] -use runtime_primitives::{generic, AnySignature}; - -pub use runtime_primitives::traits::{BlakeTwo256, Hash as HashT, Verify}; +use runtime_primitives::{generic, MultiSignature}; +pub use runtime_primitives::traits::{BlakeTwo256, Hash as HashT, Verify, IdentifyAccount}; pub mod parachain; @@ -35,12 +34,17 @@ pub type BlockNumber = u32; /// An instant or duration in time. pub type Moment = u64; -/// Alias to 512-bit hash when used in the context of a signature on the relay chain. -/// Equipped with logic for possibly "unsigned" messages. -pub type Signature = AnySignature; +/// Alias to type for a signature for a transaction on the relay chain. This allows one of several +/// kinds of underlying crypto to be used, so isn't a fixed size when encoded. +pub type Signature = MultiSignature; + +/// Alias to the public key used for this chain, actually a `MultiSigner`. Like the signature, this +/// also isn't a fixed size when encoded, as different cryptos have different size public keys. +pub type AccountPublic = <Signature as Verify>::Signer; -/// Alias to an sr25519 or ed25519 key. -pub type AccountId = <Signature as Verify>::Signer; +/// Alias to the opaque account ID type for this chain, actually a `AccountId32`. This is always +/// 32 bytes. +pub type AccountId = <AccountPublic as IdentifyAccount>::AccountId; /// The type for looking up accounts. We don't expect more than 4 billion of them. pub type AccountIndex = u32; diff --git a/polkadot/runtime/Cargo.toml b/polkadot/runtime/Cargo.toml index c9a0ce679b97e4525a00a193a1d6494db6a7d996..d1cc3023643c5f9dd1051ec0e5d19e5a700982d1 100644 --- a/polkadot/runtime/Cargo.toml +++ b/polkadot/runtime/Cargo.toml @@ -35,7 +35,7 @@ balances = { package = "srml-balances", git = "https://github.com/paritytech/sub transaction-payment = { package = "srml-transaction-payment", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } collective = { package = "srml-collective", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } democracy = { package = "srml-democracy", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } -elections = { package = "srml-elections", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } +elections-phragmen = { package = "srml-elections-phragmen", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } executive = { package = "srml-executive", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } finality-tracker = { package = "srml-finality-tracker", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } grandpa = { package = "srml-grandpa", git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-master" } @@ -92,7 +92,7 @@ std = [ "balances/std", "transaction-payment/std", "collective/std", - "elections/std", + "elections-phragmen/std", "democracy/std", "executive/std", "finality-tracker/std", diff --git a/polkadot/runtime/src/impls.rs b/polkadot/runtime/src/impls.rs index 632ae49f78bda69537ba505e19e1fd470b088734..e322befe533d757ba3d1c579a36b829f45f7bdd4 100644 --- a/polkadot/runtime/src/impls.rs +++ b/polkadot/runtime/src/impls.rs @@ -19,10 +19,9 @@ use primitives::Balance; use sr_primitives::weights::Weight; use sr_primitives::traits::{Convert, Saturating}; -use sr_primitives::Fixed64; -use srml_support::traits::{OnUnbalanced, Currency}; -use crate::{Balances, Authorship, MaximumBlockWeight, NegativeImbalance}; -use crate::constants::fee::TARGET_BLOCK_FULLNESS; +use sr_primitives::{Fixed64, Perbill}; +use srml_support::traits::{OnUnbalanced, Currency, Get}; +use crate::{Balances, System, Authorship, MaximumBlockWeight, NegativeImbalance}; /// Logic for the author to get a portion of fees. pub struct ToAuthor; @@ -67,27 +66,21 @@ impl Convert<Weight, Balance> for WeightToFee { } } -/// A struct that updates the weight multiplier based on the saturation level of the previous block. -/// This should typically be called once per-block. +/// Update the given multiplier based on the following formula /// -/// This assumes that weight is a numeric value in the u32 range. -/// -/// Given `TARGET_BLOCK_FULLNESS = 1/2`, a block saturation greater than 1/2 will cause the system -/// fees to slightly grow and the opposite for block saturations less than 1/2. -/// -/// Formula: -/// diff = (target_weight - current_block_weight) +/// diff = (target_weight - previous_block_weight) /// v = 0.00004 /// next_weight = weight * (1 + (v . diff) + (v . diff)^2 / 2) /// +/// Where `target_weight` must be given as the `Get` implementation of the `T` generic type. /// https://research.web3.foundation/en/latest/polkadot/Token%20Economics/#relay-chain-transaction-fees -pub struct FeeMultiplierUpdateHandler; +pub struct TargetedFeeAdjustment<T>(rstd::marker::PhantomData<T>); -impl Convert<(Weight, Fixed64), Fixed64> for FeeMultiplierUpdateHandler { - fn convert(previous_state: (Weight, Fixed64)) -> Fixed64 { - let (block_weight, multiplier) = previous_state; +impl<T: Get<Perbill>> Convert<Fixed64, Fixed64> for TargetedFeeAdjustment<T> { + fn convert(multiplier: Fixed64) -> Fixed64 { + let block_weight = System::all_extrinsics_weight(); let max_weight = MaximumBlockWeight::get(); - let target_weight = (TARGET_BLOCK_FULLNESS * max_weight) as u128; + let target_weight = (T::get() * max_weight) as u128; let block_weight = block_weight as u128; // determines if the first_term is positive @@ -99,8 +92,8 @@ impl Convert<(Weight, Fixed64), Fixed64> for FeeMultiplierUpdateHandler { // 0.00004 = 4/100_000 = 40_000/10^9 let v = Fixed64::from_rational(4, 100_000); - // 0.00004^2 = 16/10^10 ~= 2/10^9. Taking the future /2 into account, then it is just 1 parts - // from a billionth. + // 0.00004^2 = 16/10^10 ~= 2/10^9. Taking the future /2 into account, then it is just 1 + // parts from a billionth. let v_squared_2 = Fixed64::from_rational(1, 1_000_000_000); let first_term = v.saturating_mul(diff); diff --git a/polkadot/runtime/src/lib.rs b/polkadot/runtime/src/lib.rs index b3b9e18d6ae227c9668c43bbf68c28fcad73919e..f80cd778a1477914c31d23356102964ea417f975 100644 --- a/polkadot/runtime/src/lib.rs +++ b/polkadot/runtime/src/lib.rs @@ -48,8 +48,7 @@ use sr_primitives::{ }; use version::RuntimeVersion; use grandpa::{AuthorityId as GrandpaId, fg_primitives}; -use babe_primitives::{AuthorityId as BabeId, AuthoritySignature as BabeSignature}; -use elections::VoteIndex; +use babe_primitives::{AuthorityId as BabeId}; #[cfg(any(feature = "std", test))] use version::NativeVersion; use substrate_primitives::OpaqueMetadata; @@ -57,7 +56,6 @@ use sr_staking_primitives::SessionIndex; use srml_support::{ parameter_types, construct_runtime, traits::{SplitTwoWays, Currency, Randomness} }; -use authority_discovery_primitives::{AuthorityId as EncodedAuthorityId, Signature as EncodedSignature}; use im_online::sr25519::AuthorityId as ImOnlineId; use system::offchain::TransactionSubmitter; @@ -72,7 +70,7 @@ pub use parachains::{Call as ParachainsCall, NEW_HEADS_IDENTIFIER}; /// Implementations of some helper traits passed into runtime modules as associated types. pub mod impls; -use impls::{CurrencyToVoteHandler, FeeMultiplierUpdateHandler, ToAuthor, WeightToFee}; +use impls::{CurrencyToVoteHandler, TargetedFeeAdjustment, ToAuthor, WeightToFee}; /// Constant values used within the runtime. pub mod constants; @@ -131,7 +129,9 @@ impl SignedExtension for OnlyStakingAndClaims { -> TransactionValidity { match call { - Call::Staking(_) | Call::Claims(_) | Call::Sudo(_) | Call::Session(_) => + Call::Staking(_) | Call::Claims(_) | Call::Sudo(_) | Call::Session(_) + | Call::ElectionsPhragmen(_) + => Ok(Default::default()), _ => Err(InvalidTransaction::Custom(ValidityError::NoPermission.into()).into()), } @@ -215,6 +215,8 @@ impl balances::Trait for Runtime { parameter_types! { pub const TransactionBaseFee: Balance = 1 * CENTS; pub const TransactionByteFee: Balance = 10 * MILLICENTS; + // for a sane configuration, this should always be less than `AvailableBlockRatio`. + pub const TargetBlockFullness: Perbill = Perbill::from_percent(25); } impl transaction_payment::Trait for Runtime { @@ -223,7 +225,7 @@ impl transaction_payment::Trait for Runtime { type TransactionBaseFee = TransactionBaseFee; type TransactionByteFee = TransactionByteFee; type WeightToFee = WeightToFee; - type FeeMultiplierUpdate = FeeMultiplierUpdateHandler; + type FeeMultiplierUpdate = TargetedFeeAdjustment<TargetBlockFullness>; } parameter_types! { @@ -252,7 +254,10 @@ parameter_types! { pub const Offset: BlockNumber = 0; } -type SessionHandlers = (Grandpa, Babe, ImOnline, AuthorityDiscovery, Parachains); +// !!!!!!!!!!!!! +// WARNING!!!!!! SEE NOTE BELOW BEFORE TOUCHING THIS CODE +// !!!!!!!!!!!!! +type SessionHandlers = (Grandpa, Babe, ImOnline, Parachains); impl_opaque_keys! { pub struct SessionKeys { #[id(key_types::GRANDPA)] @@ -265,7 +270,6 @@ impl_opaque_keys! { pub parachain_validator: parachain::ValidatorId, } } - // NOTE: `SessionHandler` and `SessionKeys` are co-dependent: One key will be used for each handler. // The number and order of items in `SessionHandler` *MUST* be the same number and order of keys in // `SessionKeys`. @@ -370,35 +374,20 @@ impl collective::Trait<CouncilCollective> for Runtime { } parameter_types! { - pub const CandidacyBond: Balance = 10 * DOLLARS; - pub const VotingBond: Balance = 1 * DOLLARS; - pub const VotingFee: Balance = 2 * DOLLARS; - pub const MinimumVotingLock: Balance = 1 * DOLLARS; - pub const PresentSlashPerVoter: Balance = 1 * CENTS; - pub const CarryCount: u32 = 6; - // one additional vote should go by before an inactive voter can be reaped. - pub const InactiveGracePeriod: VoteIndex = 1; - pub const ElectionsVotingPeriod: BlockNumber = 2 * DAYS; - pub const DecayRatio: u32 = 0; -} - -impl elections::Trait for Runtime { + pub const CandidacyBond: Balance = 100 * DOLLARS; + pub const VotingBond: Balance = 5 * DOLLARS; +} + +impl elections_phragmen::Trait for Runtime { type Event = Event; type Currency = Balances; - type BadPresentation = (); - type BadReaper = (); - type BadVoterIndex = (); - type LoserCandidate = (); type ChangeMembers = Council; + type CurrencyToVote = CurrencyToVoteHandler; type CandidacyBond = CandidacyBond; type VotingBond = VotingBond; - type VotingFee = VotingFee; - type MinimumVotingLock = MinimumVotingLock; - type PresentSlashPerVoter = PresentSlashPerVoter; - type CarryCount = CarryCount; - type InactiveGracePeriod = InactiveGracePeriod; - type VotingPeriod = ElectionsVotingPeriod; - type DecayRatio = DecayRatio; + type LoserCandidate = Treasury; + type BadReport = Treasury; + type KickedMember = Treasury; } type TechnicalCollective = collective::Instance2; @@ -454,10 +443,6 @@ impl im_online::Trait for Runtime { type ReportUnresponsiveness = (); } -impl authority_discovery::Trait for Runtime { - type AuthorityId = BabeId; -} - impl grandpa::Trait for Runtime { type Event = Event; } @@ -566,13 +551,12 @@ construct_runtime!( FinalityTracker: finality_tracker::{Module, Call, Inherent}, Grandpa: grandpa::{Module, Call, Storage, Config, Event}, ImOnline: im_online::{Module, Call, Storage, Event<T>, ValidateUnsigned, Config<T>}, - AuthorityDiscovery: authority_discovery::{Module, Call, Config<T>}, // Governance stuff; uncallable initially. Democracy: democracy::{Module, Call, Storage, Config, Event<T>}, Council: collective::<Instance1>::{Module, Call, Storage, Origin<T>, Event<T>, Config<T>}, TechnicalCommittee: collective::<Instance2>::{Module, Call, Storage, Origin<T>, Event<T>, Config<T>}, - Elections: elections::{Module, Call, Storage, Event<T>, Config<T>}, + ElectionsPhragmen: elections_phragmen::{Module, Call, Storage, Event<T>, Config<T>}, TechnicalMembership: membership::<Instance1>::{Module, Call, Storage, Event<T>, Config<T>}, Treasury: treasury::{Module, Call, Storage, Event<T>}, @@ -723,36 +707,6 @@ impl_runtime_apis! { } } - impl authority_discovery_primitives::AuthorityDiscoveryApi<Block> for Runtime { - fn authorities() -> Vec<EncodedAuthorityId> { - AuthorityDiscovery::authorities().into_iter() - .map(|id| id.encode()) - .map(EncodedAuthorityId) - .collect() - } - - fn sign(payload: &Vec<u8>) -> Option<(EncodedSignature, EncodedAuthorityId)> { - AuthorityDiscovery::sign(payload).map(|(sig, id)| { - (EncodedSignature(sig.encode()), EncodedAuthorityId(id.encode())) - }) - } - - fn verify(payload: &Vec<u8>, signature: &EncodedSignature, authority_id: &EncodedAuthorityId) -> bool { - let signature = match BabeSignature::decode(&mut &signature.0[..]) { - Ok(s) => s, - _ => return false, - }; - - let authority_id = match BabeId::decode(&mut &authority_id.0[..]) { - Ok(id) => id, - _ => return false, - }; - - AuthorityDiscovery::verify(payload, signature, authority_id) - - } - } - impl substrate_session::SessionKeys<Block> for Runtime { fn generate_session_keys(seed: Option<Vec<u8>>) -> Vec<u8> { let seed = seed.as_ref().map(|s| rstd::str::from_utf8(&s).expect("Seed is an utf8 string")); diff --git a/polkadot/service/src/chain_spec.rs b/polkadot/service/src/chain_spec.rs index 2dde54059caf25a10187a397a5cab308a37ad1c4..68d4bd0056a413d915586b94d6e07c382ff67fbb 100644 --- a/polkadot/service/src/chain_spec.rs +++ b/polkadot/service/src/chain_spec.rs @@ -16,16 +16,16 @@ //! Polkadot chain configurations. -use primitives::{Pair, Public, crypto::UncheckedInto}; -use polkadot_primitives::{AccountId, parachain::ValidatorId}; +use primitives::{Pair, Public, crypto::UncheckedInto, sr25519}; +use polkadot_primitives::{AccountId, AccountPublic, parachain::ValidatorId}; use polkadot_runtime::{ - GenesisConfig, CouncilConfig, ElectionsConfig, DemocracyConfig, SystemConfig, + GenesisConfig, CouncilConfig, ElectionsPhragmenConfig, DemocracyConfig, SystemConfig, SessionConfig, StakingConfig, BalancesConfig, SessionKeys, TechnicalCommitteeConfig, SudoConfig, IndicesConfig, StakerStatus, WASM_BINARY, ClaimsConfig, ParachainsConfig, RegistrarConfig }; use polkadot_runtime::constants::{currency::DOTS, time::*}; -use sr_primitives::Perbill; +use sr_primitives::{traits::IdentifyAccount, Perbill}; use telemetry::TelemetryEndpoints; use hex_literal::hex; use babe_primitives::AuthorityId as BabeId; @@ -55,7 +55,7 @@ fn session_keys( fn staging_testnet_config_genesis() -> GenesisConfig { // subkey inspect "$SECRET" let endowed_accounts = vec![ - hex!["12b782529c22032ed4694e0f6e7d486be7daa6d12088f6bc74d593b3900b8438"].unchecked_into(), // 5CVFESwfkk7NmhQ6FwHCM9roBvr9BGa4vJHFYU8DnGQxrXvz + hex!["12b782529c22032ed4694e0f6e7d486be7daa6d12088f6bc74d593b3900b8438"].into(), // 5CVFESwfkk7NmhQ6FwHCM9roBvr9BGa4vJHFYU8DnGQxrXvz ]; // for i in 1 2 3 4; do for j in stash controller; do subkey inspect "$SECRET//$i//$j"; done; done @@ -64,29 +64,29 @@ fn staging_testnet_config_genesis() -> GenesisConfig { // for i in 1 2 3 4; do for j in im_online; do subkey --sr25519 inspect "$SECRET//$i//$j"; done; done // for i in 1 2 3 4; do for j in parachains; do subkey --sr25519 inspect "$SECRET//$i//$j"; done; done let initial_authorities: Vec<(AccountId, AccountId, BabeId, GrandpaId, ImOnlineId, ValidatorId)> = vec![( - hex!["32a5718e87d16071756d4b1370c411bbbb947eb62f0e6e0b937d5cbfc0ea633b"].unchecked_into(), // 5DD7Q4VEfPTLEdn11CnThoHT5f9xKCrnofWJL5SsvpTghaAT - hex!["bee39fe862c85c91aaf343e130d30b643c6ea0b4406a980206f1df8331f7093b"].unchecked_into(), // 5GNzaEqhrZAtUQhbMe2gn9jBuNWfamWFZHULryFwBUXyd1cG + hex!["32a5718e87d16071756d4b1370c411bbbb947eb62f0e6e0b937d5cbfc0ea633b"].into(), // 5DD7Q4VEfPTLEdn11CnThoHT5f9xKCrnofWJL5SsvpTghaAT + hex!["bee39fe862c85c91aaf343e130d30b643c6ea0b4406a980206f1df8331f7093b"].into(), // 5GNzaEqhrZAtUQhbMe2gn9jBuNWfamWFZHULryFwBUXyd1cG hex!["a639b507ee1585e0b6498ff141d6153960794523226866d1b44eba3f25f36356"].unchecked_into(), // 5FpewyS2VY8Cj3tKgSckq8ECkjd1HKHvBRnWhiHqRQsWfFC1 hex!["76620f7c98bce8619979c2b58cf2b0aff71824126d2b039358729dad993223db"].unchecked_into(), // 5EjvdwATjyFFikdZibVvx1q5uBHhphS2Mnsq5c7yfaYK25vm hex!["a639b507ee1585e0b6498ff141d6153960794523226866d1b44eba3f25f36356"].unchecked_into(), // 5FpewyS2VY8Cj3tKgSckq8ECkjd1HKHvBRnWhiHqRQsWfFC1 hex!["a639b507ee1585e0b6498ff141d6153960794523226866d1b44eba3f25f36356"].unchecked_into(), // 5FpewyS2VY8Cj3tKgSckq8ECkjd1HKHvBRnWhiHqRQsWfFC1 ),( - hex!["b496c98a405ceab59b9e970e59ef61acd7765a19b704e02ab06c1cdfe171e40f"].unchecked_into(), // 5G9VGb8ESBeS8Ca4or43RfhShzk9y7T5iTmxHk5RJsjZwsRx - hex!["86d3a7571dd60139d297e55d8238d0c977b2e208c5af088f7f0136b565b0c103"].unchecked_into(), // 5F7V9Y5FcxKXe1aroqvPeRiUmmeQwTFcL3u9rrPXcMuMiCNx + hex!["b496c98a405ceab59b9e970e59ef61acd7765a19b704e02ab06c1cdfe171e40f"].into(), // 5G9VGb8ESBeS8Ca4or43RfhShzk9y7T5iTmxHk5RJsjZwsRx + hex!["86d3a7571dd60139d297e55d8238d0c977b2e208c5af088f7f0136b565b0c103"].into(), // 5F7V9Y5FcxKXe1aroqvPeRiUmmeQwTFcL3u9rrPXcMuMiCNx hex!["765e46067adac4d1fe6c783aa2070dfa64a19f84376659e12705d1734b3eae01"].unchecked_into(), // 5GvuM53k1Z4nAB5zXJFgkRSHv4Bqo4BsvgbQWNWkiWZTMwWY hex!["e2234d661bee4a04c38392c75d1566200aa9e6ae44dd98ee8765e4cc9af63cb7"].unchecked_into(), // 5HBDAaybNqjmY7ww8ZcZZY1L5LHxvpnyfqJwoB7HhR6raTmG hex!["765e46067adac4d1fe6c783aa2070dfa64a19f84376659e12705d1734b3eae01"].unchecked_into(), // 5GvuM53k1Z4nAB5zXJFgkRSHv4Bqo4BsvgbQWNWkiWZTMwWY hex!["765e46067adac4d1fe6c783aa2070dfa64a19f84376659e12705d1734b3eae01"].unchecked_into(), // 5GvuM53k1Z4nAB5zXJFgkRSHv4Bqo4BsvgbQWNWkiWZTMwWY ),( - hex!["ae12f70078a22882bf5135d134468f77301927aa67c376e8c55b7ff127ace115"].unchecked_into(), // 5FzwpgGvk2kk9agow6KsywLYcPzjYc8suKej2bne5G5b9YU3 - hex!["7addb914ec8486bbc60643d2647685dcc06373401fa80e09813b630c5831d54b"].unchecked_into(), // 5EqoZhVC2BcsM4WjvZNidu2muKAbu5THQTBKe3EjvxXkdP7A + hex!["ae12f70078a22882bf5135d134468f77301927aa67c376e8c55b7ff127ace115"].into(), // 5FzwpgGvk2kk9agow6KsywLYcPzjYc8suKej2bne5G5b9YU3 + hex!["7addb914ec8486bbc60643d2647685dcc06373401fa80e09813b630c5831d54b"].into(), // 5EqoZhVC2BcsM4WjvZNidu2muKAbu5THQTBKe3EjvxXkdP7A hex!["664eae1ca4713dd6abf8c15e6c041820cda3c60df97dc476c2cbf7cb82cb2d2e"].unchecked_into(), // 5CXNq1mSKJT4Sc2CbyBBdANeSkbUvdWvE4czJjKXfBHi9sX5 hex!["5b57ed1443c8967f461db1f6eb2ada24794d163a668f1cf9d9ce3235dfad8799"].unchecked_into(), // 5E8ULLQrDAtWhfnVfZmX41Yux86zNAwVJYguWJZVWrJvdhBe hex!["664eae1ca4713dd6abf8c15e6c041820cda3c60df97dc476c2cbf7cb82cb2d2e"].unchecked_into(), // 5CXNq1mSKJT4Sc2CbyBBdANeSkbUvdWvE4czJjKXfBHi9sX5 hex!["664eae1ca4713dd6abf8c15e6c041820cda3c60df97dc476c2cbf7cb82cb2d2e"].unchecked_into(), // 5CXNq1mSKJT4Sc2CbyBBdANeSkbUvdWvE4czJjKXfBHi9sX5 ),( - hex!["0867dbb49721126df589db100dda728dc3b475cbf414dad8f72a1d5e84897252"].unchecked_into(), // 5CFj6Kg9rmVn1vrqpyjau2ztyBzKeVdRKwNPiA3tqhB5HPqq - hex!["26ab2b4b2eba2263b1e55ceb48f687bb0018130a88df0712fbdaf6a347d50e2a"].unchecked_into(), // 5CwQXP6nvWzigFqNhh2jvCaW9zWVzkdveCJY3tz2MhXMjTon + hex!["0867dbb49721126df589db100dda728dc3b475cbf414dad8f72a1d5e84897252"].into(), // 5CFj6Kg9rmVn1vrqpyjau2ztyBzKeVdRKwNPiA3tqhB5HPqq + hex!["26ab2b4b2eba2263b1e55ceb48f687bb0018130a88df0712fbdaf6a347d50e2a"].into(), // 5CwQXP6nvWzigFqNhh2jvCaW9zWVzkdveCJY3tz2MhXMjTon hex!["2adb17a5cafbddc7c3e00ec45b6951a8b12ce2264235b4def342513a767e5d3d"].unchecked_into(), // 5FCd9Y7RLNyxz5wnCAErfsLbXGG34L2BaZRHzhiJcMUMd5zd hex!["e60d23f49e93c1c1f2d7c115957df5bbd7faf5ebf138d1e9d02e8b39a1f63df0"].unchecked_into(), // 5HGLmrZsiTFTPp3QoS1W8w9NxByt8PVq79reqvdxNcQkByqK hex!["2adb17a5cafbddc7c3e00ec45b6951a8b12ce2264235b4def342513a767e5d3d"].unchecked_into(), // 5FCd9Y7RLNyxz5wnCAErfsLbXGG34L2BaZRHzhiJcMUMd5zd @@ -138,17 +138,16 @@ fn staging_testnet_config_genesis() -> GenesisConfig { members: vec![], phantom: Default::default(), }), - elections: Some(ElectionsConfig { + elections_phragmen: Some(ElectionsPhragmenConfig { members: vec![], - presentation_duration: 1 * DAYS, term_duration: 49 * DAYS, - desired_seats: 7, + desired_members: 7, + desired_runners_up: 3, }), membership_Instance1: Some(Default::default()), babe: Some(Default::default()), grandpa: Some(Default::default()), im_online: Some(Default::default()), - authority_discovery: Some(Default::default()), parachains: Some(ParachainsConfig { authorities: vec![], }), @@ -188,6 +187,13 @@ pub fn get_from_seed<TPublic: Public>(seed: &str) -> <TPublic::Pair as Pair>::Pu } +/// Helper function to generate an account ID from seed +pub fn get_account_id_from_seed<TPublic: Public>(seed: &str) -> AccountId where + AccountPublic: From<<TPublic::Pair as Pair>::Public> +{ + AccountPublic::from(get_from_seed::<TPublic>(seed)).into_account() +} + /// Helper function to generate stash, controller and session key from seed pub fn get_authority_keys_from_seed(seed: &str) -> ( AccountId, @@ -198,8 +204,8 @@ pub fn get_authority_keys_from_seed(seed: &str) -> ( ValidatorId ) { ( - get_from_seed::<AccountId>(&format!("{}//stash", seed)), - get_from_seed::<AccountId>(seed), + get_account_id_from_seed::<sr25519::Public>(&format!("{}//stash", seed)), + get_account_id_from_seed::<sr25519::Public>(seed), get_from_seed::<BabeId>(seed), get_from_seed::<GrandpaId>(seed), get_from_seed::<ImOnlineId>(seed), @@ -215,25 +221,25 @@ pub fn testnet_genesis( ) -> GenesisConfig { let endowed_accounts: Vec<AccountId> = endowed_accounts.unwrap_or_else(|| { vec![ - get_from_seed::<AccountId>("Alice"), - get_from_seed::<AccountId>("Bob"), - get_from_seed::<AccountId>("Charlie"), - get_from_seed::<AccountId>("Dave"), - get_from_seed::<AccountId>("Eve"), - get_from_seed::<AccountId>("Ferdie"), - get_from_seed::<AccountId>("Alice//stash"), - get_from_seed::<AccountId>("Bob//stash"), - get_from_seed::<AccountId>("Charlie//stash"), - get_from_seed::<AccountId>("Dave//stash"), - get_from_seed::<AccountId>("Eve//stash"), - get_from_seed::<AccountId>("Ferdie//stash"), + get_account_id_from_seed::<sr25519::Public>("Alice"), + get_account_id_from_seed::<sr25519::Public>("Bob"), + get_account_id_from_seed::<sr25519::Public>("Charlie"), + get_account_id_from_seed::<sr25519::Public>("Dave"), + get_account_id_from_seed::<sr25519::Public>("Eve"), + get_account_id_from_seed::<sr25519::Public>("Ferdie"), + get_account_id_from_seed::<sr25519::Public>("Alice//stash"), + get_account_id_from_seed::<sr25519::Public>("Bob//stash"), + get_account_id_from_seed::<sr25519::Public>("Charlie//stash"), + get_account_id_from_seed::<sr25519::Public>("Dave//stash"), + get_account_id_from_seed::<sr25519::Public>("Eve//stash"), + get_account_id_from_seed::<sr25519::Public>("Ferdie//stash"), ] }); const ENDOWMENT: u128 = 1_000_000 * DOTS; const STASH: u128 = 100 * DOTS; - let desired_seats = (endowed_accounts.len() / 2 - initial_authorities.len()) as u32; + let desired_members = (endowed_accounts.len() / 2 - initial_authorities.len()) as u32; GenesisConfig { system: Some(SystemConfig { @@ -274,21 +280,21 @@ pub fn testnet_genesis( members: vec![], phantom: Default::default(), }), - elections: Some(ElectionsConfig { + elections_phragmen: Some(ElectionsPhragmenConfig { members: endowed_accounts.iter() .filter(|&endowed| initial_authorities.iter() .find(|&(_, controller, _, _, _, _)| controller == endowed) .is_none() - ).map(|a| (a.clone(), 1000000)).collect(), - presentation_duration: 10 * MINUTES, + ).cloned() + .collect(), term_duration: 1 * DAYS, - desired_seats, + desired_runners_up: desired_members / 2, + desired_members, }), membership_Instance1: Some(Default::default()), babe: Some(Default::default()), grandpa: Some(Default::default()), im_online: Some(Default::default()), - authority_discovery: Some(Default::default()), parachains: Some(ParachainsConfig { authorities: vec![], }), @@ -311,7 +317,7 @@ fn development_config_genesis() -> GenesisConfig { vec![ get_authority_keys_from_seed("Alice"), ], - get_from_seed::<AccountId>("Alice"), + get_account_id_from_seed::<sr25519::Public>("Alice"), None, ) } @@ -336,7 +342,7 @@ fn local_testnet_genesis() -> GenesisConfig { get_authority_keys_from_seed("Alice"), get_authority_keys_from_seed("Bob"), ], - get_from_seed::<AccountId>("Alice"), + get_account_id_from_seed::<sr25519::Public>("Alice"), None, ) } diff --git a/polkadot/service/src/lib.rs b/polkadot/service/src/lib.rs index 2c705faa015565549056452956e829fb1ea0ce88..580d269b4ded8559b4434e24da6aeb459fb30431 100644 --- a/polkadot/service/src/lib.rs +++ b/polkadot/service/src/lib.rs @@ -159,7 +159,7 @@ pub fn new_full(config: Configuration<CustomConfiguration, GenesisConfig>) // event per authority within the current authority set. This estimates the // authority set size to be somewhere below 10 000 thereby setting the channel // buffer size to 10 000. - let (dht_event_tx, dht_event_rx) = mpsc::channel::<DhtEvent>(10000); + let (dht_event_tx, _dht_event_rx) = mpsc::channel::<DhtEvent>(10000); let service = builder .with_network_protocol(|config| Ok(PolkadotProtocol::new(config.custom.collating_for.clone())))? @@ -265,13 +265,6 @@ pub fn new_full(config: Configuration<CustomConfiguration, GenesisConfig>) let babe = start_babe(babe_config)?; let select = babe.select(service.on_exit()).then(|_| Ok(())); service.spawn_essential_task(Box::new(select)); - - let authority_discovery = authority_discovery::AuthorityDiscovery::new( - service.client(), - service.network(), - dht_event_rx, - ); - service.spawn_task(authority_discovery); } let config = grandpa::Config {