diff --git a/polkadot/Cargo.lock b/polkadot/Cargo.lock index 6aa8dc9bae..8556b2b934 100644 --- a/polkadot/Cargo.lock +++ b/polkadot/Cargo.lock @@ -1864,7 +1864,7 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] name = "fork-tree" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "parity-scale-codec", ] @@ -1882,7 +1882,7 @@ dependencies = [ [[package]] name = "frame-benchmarking" version = "3.1.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-support", "frame-system", @@ -1901,7 +1901,7 @@ dependencies = [ [[package]] name = "frame-benchmarking-cli" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "Inflector", "chrono", @@ -1924,7 +1924,7 @@ dependencies = [ [[package]] name = "frame-election-provider-support" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-support", "frame-system", @@ -1937,7 +1937,7 @@ dependencies = [ [[package]] name = "frame-executive" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-support", "frame-system", @@ -1952,7 +1952,7 @@ dependencies = [ [[package]] name = "frame-metadata" version = "13.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "parity-scale-codec", "serde", @@ -1963,7 +1963,7 @@ dependencies = [ [[package]] name = "frame-support" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "bitflags", "frame-metadata", @@ -1989,7 +1989,7 @@ dependencies = [ [[package]] name = "frame-support-procedural" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "Inflector", "frame-support-procedural-tools", @@ -2001,7 +2001,7 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-support-procedural-tools-derive", "proc-macro-crate 1.0.0", @@ -2013,7 +2013,7 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools-derive" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "proc-macro2", "quote", @@ -2023,7 +2023,7 @@ dependencies = [ [[package]] name = "frame-support-test" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-metadata", "frame-support", @@ -2043,7 +2043,7 @@ dependencies = [ [[package]] name = "frame-system" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-support", "impl-trait-for-tuples", @@ -2060,7 +2060,7 @@ dependencies = [ [[package]] name = "frame-system-benchmarking" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-benchmarking", "frame-support", @@ -2074,7 +2074,7 @@ dependencies = [ [[package]] name = "frame-system-rpc-runtime-api" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "parity-scale-codec", "sp-api", @@ -2083,7 +2083,7 @@ dependencies = [ [[package]] name = "frame-try-runtime" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-support", "parity-scale-codec", @@ -3207,6 +3207,7 @@ dependencies = [ "pallet-democracy", "pallet-election-provider-multi-phase", "pallet-elections-phragmen", + "pallet-gilt", "pallet-grandpa", "pallet-identity", "pallet-im-online", @@ -3225,7 +3226,7 @@ dependencies = [ "pallet-session-benchmarking", "pallet-society", "pallet-staking", - "pallet-staking-reward-curve", + "pallet-staking-reward-fn", "pallet-timestamp", "pallet-tips", "pallet-transaction-payment", @@ -3245,6 +3246,7 @@ dependencies = [ "serde_json", "smallvec 1.6.1", "sp-api", + "sp-arithmetic", "sp-authority-discovery", "sp-block-builder", "sp-consensus-babe", @@ -4467,7 +4469,7 @@ checksum = "13370dae44474229701bb69b90b4f4dca6404cb0357a2d50d635f1171dc3aa7b" [[package]] name = "pallet-authority-discovery" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-support", "frame-system", @@ -4482,7 +4484,7 @@ dependencies = [ [[package]] name = "pallet-authorship" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-support", "frame-system", @@ -4496,7 +4498,7 @@ dependencies = [ [[package]] name = "pallet-babe" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-benchmarking", "frame-support", @@ -4519,7 +4521,7 @@ dependencies = [ [[package]] name = "pallet-balances" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-benchmarking", "frame-support", @@ -4548,7 +4550,7 @@ dependencies = [ [[package]] name = "pallet-bounties" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-benchmarking", "frame-support", @@ -4562,7 +4564,7 @@ dependencies = [ [[package]] name = "pallet-collective" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-benchmarking", "frame-support", @@ -4578,7 +4580,7 @@ dependencies = [ [[package]] name = "pallet-democracy" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-benchmarking", "frame-support", @@ -4593,7 +4595,7 @@ dependencies = [ [[package]] name = "pallet-election-provider-multi-phase" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -4613,7 +4615,7 @@ dependencies = [ [[package]] name = "pallet-elections-phragmen" version = "4.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-benchmarking", "frame-support", @@ -4627,10 +4629,24 @@ dependencies = [ "sp-std", ] +[[package]] +name = "pallet-gilt" +version = "3.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "sp-arithmetic", + "sp-runtime", + "sp-std", +] + [[package]] name = "pallet-grandpa" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-benchmarking", "frame-support", @@ -4651,7 +4667,7 @@ dependencies = [ [[package]] name = "pallet-identity" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "enumflags2", "frame-benchmarking", @@ -4666,7 +4682,7 @@ dependencies = [ [[package]] name = "pallet-im-online" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-benchmarking", "frame-support", @@ -4685,7 +4701,7 @@ dependencies = [ [[package]] name = "pallet-indices" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-benchmarking", "frame-support", @@ -4701,7 +4717,7 @@ dependencies = [ [[package]] name = "pallet-membership" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-benchmarking", "frame-support", @@ -4716,7 +4732,7 @@ dependencies = [ [[package]] name = "pallet-mmr" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "ckb-merkle-mountain-range", "frame-benchmarking", @@ -4733,7 +4749,7 @@ dependencies = [ [[package]] name = "pallet-mmr-primitives" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-support", "frame-system", @@ -4749,7 +4765,7 @@ dependencies = [ [[package]] name = "pallet-mmr-rpc" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "jsonrpc-core", "jsonrpc-core-client", @@ -4767,7 +4783,7 @@ dependencies = [ [[package]] name = "pallet-multisig" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-benchmarking", "frame-support", @@ -4782,7 +4798,7 @@ dependencies = [ [[package]] name = "pallet-nicks" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-support", "frame-system", @@ -4795,7 +4811,7 @@ dependencies = [ [[package]] name = "pallet-offences" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-support", "frame-system", @@ -4811,7 +4827,7 @@ dependencies = [ [[package]] name = "pallet-offences-benchmarking" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -4833,7 +4849,7 @@ dependencies = [ [[package]] name = "pallet-proxy" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-benchmarking", "frame-support", @@ -4848,7 +4864,7 @@ dependencies = [ [[package]] name = "pallet-randomness-collective-flip" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-support", "frame-system", @@ -4861,7 +4877,7 @@ dependencies = [ [[package]] name = "pallet-recovery" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "enumflags2", "frame-support", @@ -4875,7 +4891,7 @@ dependencies = [ [[package]] name = "pallet-scheduler" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-benchmarking", "frame-support", @@ -4890,7 +4906,7 @@ dependencies = [ [[package]] name = "pallet-session" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-support", "frame-system", @@ -4909,7 +4925,7 @@ dependencies = [ [[package]] name = "pallet-session-benchmarking" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-benchmarking", "frame-support", @@ -4925,7 +4941,7 @@ dependencies = [ [[package]] name = "pallet-society" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-support", "frame-system", @@ -4938,7 +4954,7 @@ dependencies = [ [[package]] name = "pallet-staking" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -4962,7 +4978,7 @@ dependencies = [ [[package]] name = "pallet-staking-reward-curve" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "proc-macro-crate 1.0.0", "proc-macro2", @@ -4970,10 +4986,19 @@ dependencies = [ "syn", ] +[[package]] +name = "pallet-staking-reward-fn" +version = "3.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" +dependencies = [ + "log", + "sp-arithmetic", +] + [[package]] name = "pallet-sudo" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-support", "frame-system", @@ -4986,7 +5011,7 @@ dependencies = [ [[package]] name = "pallet-timestamp" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-benchmarking", "frame-support", @@ -5004,7 +5029,7 @@ dependencies = [ [[package]] name = "pallet-tips" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-benchmarking", "frame-support", @@ -5019,7 +5044,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-support", "frame-system", @@ -5035,7 +5060,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "jsonrpc-core", "jsonrpc-core-client", @@ -5052,7 +5077,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc-runtime-api" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "pallet-transaction-payment", "parity-scale-codec", @@ -5063,7 +5088,7 @@ dependencies = [ [[package]] name = "pallet-treasury" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-benchmarking", "frame-support", @@ -5079,7 +5104,7 @@ dependencies = [ [[package]] name = "pallet-utility" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-benchmarking", "frame-support", @@ -5094,7 +5119,7 @@ dependencies = [ [[package]] name = "pallet-vesting" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "enumflags2", "frame-benchmarking", @@ -7314,7 +7339,7 @@ dependencies = [ [[package]] name = "remote-externalities" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "env_logger 0.8.2", "hex-literal", @@ -7599,7 +7624,7 @@ dependencies = [ [[package]] name = "sc-authority-discovery" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "async-trait", "derive_more", @@ -7628,7 +7653,7 @@ dependencies = [ [[package]] name = "sc-basic-authorship" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "futures 0.3.14", "futures-timer 3.0.2", @@ -7651,7 +7676,7 @@ dependencies = [ [[package]] name = "sc-block-builder" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "parity-scale-codec", "sc-client-api", @@ -7667,7 +7692,7 @@ dependencies = [ [[package]] name = "sc-chain-spec" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "impl-trait-for-tuples", "parity-scale-codec", @@ -7688,7 +7713,7 @@ dependencies = [ [[package]] name = "sc-chain-spec-derive" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "proc-macro-crate 1.0.0", "proc-macro2", @@ -7699,7 +7724,7 @@ dependencies = [ [[package]] name = "sc-cli" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "chrono", "fdlimit", @@ -7737,7 +7762,7 @@ dependencies = [ [[package]] name = "sc-client-api" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "derive_more", "fnv", @@ -7771,7 +7796,7 @@ dependencies = [ [[package]] name = "sc-client-db" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "blake2-rfc", "hash-db", @@ -7801,7 +7826,7 @@ dependencies = [ [[package]] name = "sc-consensus" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "parking_lot 0.11.1", "sc-client-api", @@ -7813,7 +7838,7 @@ dependencies = [ [[package]] name = "sc-consensus-babe" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "async-trait", "derive_more", @@ -7859,7 +7884,7 @@ dependencies = [ [[package]] name = "sc-consensus-babe-rpc" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "derive_more", "futures 0.3.14", @@ -7883,7 +7908,7 @@ dependencies = [ [[package]] name = "sc-consensus-epochs" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "fork-tree", "parity-scale-codec", @@ -7896,7 +7921,7 @@ dependencies = [ [[package]] name = "sc-consensus-slots" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "async-trait", "futures 0.3.14", @@ -7924,7 +7949,7 @@ dependencies = [ [[package]] name = "sc-consensus-uncles" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "sc-client-api", "sp-authorship", @@ -7935,7 +7960,7 @@ dependencies = [ [[package]] name = "sc-executor" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "derive_more", "lazy_static", @@ -7965,7 +7990,7 @@ dependencies = [ [[package]] name = "sc-executor-common" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "derive_more", "parity-scale-codec", @@ -7982,7 +8007,7 @@ dependencies = [ [[package]] name = "sc-executor-wasmi" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "log", "parity-scale-codec", @@ -7997,7 +8022,7 @@ dependencies = [ [[package]] name = "sc-executor-wasmtime" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "log", "parity-scale-codec", @@ -8015,7 +8040,7 @@ dependencies = [ [[package]] name = "sc-finality-grandpa" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "async-trait", "derive_more", @@ -8055,7 +8080,7 @@ dependencies = [ [[package]] name = "sc-finality-grandpa-rpc" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "derive_more", "finality-grandpa", @@ -8079,7 +8104,7 @@ dependencies = [ [[package]] name = "sc-finality-grandpa-warp-sync" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "derive_more", "futures 0.3.14", @@ -8100,7 +8125,7 @@ dependencies = [ [[package]] name = "sc-informant" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "ansi_term 0.12.1", "futures 0.3.14", @@ -8118,7 +8143,7 @@ dependencies = [ [[package]] name = "sc-keystore" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "async-trait", "derive_more", @@ -8138,7 +8163,7 @@ dependencies = [ [[package]] name = "sc-light" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "hash-db", "lazy_static", @@ -8157,7 +8182,7 @@ dependencies = [ [[package]] name = "sc-network" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "async-std", "async-trait", @@ -8210,7 +8235,7 @@ dependencies = [ [[package]] name = "sc-network-gossip" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "futures 0.3.14", "futures-timer 3.0.2", @@ -8227,7 +8252,7 @@ dependencies = [ [[package]] name = "sc-offchain" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "bytes 0.5.6", "fnv", @@ -8255,7 +8280,7 @@ dependencies = [ [[package]] name = "sc-peerset" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "futures 0.3.14", "libp2p", @@ -8268,7 +8293,7 @@ dependencies = [ [[package]] name = "sc-proposer-metrics" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "log", "substrate-prometheus-endpoint", @@ -8277,7 +8302,7 @@ dependencies = [ [[package]] name = "sc-rpc" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "futures 0.3.14", "hash-db", @@ -8312,7 +8337,7 @@ dependencies = [ [[package]] name = "sc-rpc-api" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "derive_more", "futures 0.3.14", @@ -8337,7 +8362,7 @@ dependencies = [ [[package]] name = "sc-rpc-server" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "futures 0.1.29", "jsonrpc-core", @@ -8355,7 +8380,7 @@ dependencies = [ [[package]] name = "sc-service" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "async-trait", "directories", @@ -8419,7 +8444,7 @@ dependencies = [ [[package]] name = "sc-state-db" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "log", "parity-scale-codec", @@ -8434,7 +8459,7 @@ dependencies = [ [[package]] name = "sc-sync-state-rpc" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "jsonrpc-core", "jsonrpc-core-client", @@ -8454,7 +8479,7 @@ dependencies = [ [[package]] name = "sc-telemetry" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "chrono", "futures 0.3.14", @@ -8474,7 +8499,7 @@ dependencies = [ [[package]] name = "sc-tracing" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "ansi_term 0.12.1", "atty", @@ -8511,7 +8536,7 @@ dependencies = [ [[package]] name = "sc-tracing-proc-macro" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "proc-macro-crate 1.0.0", "proc-macro2", @@ -8522,7 +8547,7 @@ dependencies = [ [[package]] name = "sc-transaction-graph" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "derive_more", "futures 0.3.14", @@ -8544,7 +8569,7 @@ dependencies = [ [[package]] name = "sc-transaction-pool" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "futures 0.3.14", "futures-diagnose", @@ -8975,7 +9000,7 @@ dependencies = [ [[package]] name = "sp-allocator" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "log", "sp-core", @@ -8987,7 +9012,7 @@ dependencies = [ [[package]] name = "sp-api" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "hash-db", "log", @@ -9004,7 +9029,7 @@ dependencies = [ [[package]] name = "sp-api-proc-macro" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "blake2-rfc", "proc-macro-crate 1.0.0", @@ -9016,7 +9041,7 @@ dependencies = [ [[package]] name = "sp-application-crypto" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "parity-scale-codec", "serde", @@ -9028,7 +9053,7 @@ dependencies = [ [[package]] name = "sp-arithmetic" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "integer-sqrt", "num-traits", @@ -9042,7 +9067,7 @@ dependencies = [ [[package]] name = "sp-authority-discovery" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "parity-scale-codec", "sp-api", @@ -9054,7 +9079,7 @@ dependencies = [ [[package]] name = "sp-authorship" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "async-trait", "parity-scale-codec", @@ -9066,7 +9091,7 @@ dependencies = [ [[package]] name = "sp-block-builder" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "parity-scale-codec", "sp-api", @@ -9078,7 +9103,7 @@ dependencies = [ [[package]] name = "sp-blockchain" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "futures 0.3.14", "log", @@ -9096,7 +9121,7 @@ dependencies = [ [[package]] name = "sp-chain-spec" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "serde", "serde_json", @@ -9105,7 +9130,7 @@ dependencies = [ [[package]] name = "sp-consensus" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "async-trait", "futures 0.3.14", @@ -9132,7 +9157,7 @@ dependencies = [ [[package]] name = "sp-consensus-babe" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "async-trait", "merlin", @@ -9154,7 +9179,7 @@ dependencies = [ [[package]] name = "sp-consensus-slots" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "parity-scale-codec", "sp-arithmetic", @@ -9164,7 +9189,7 @@ dependencies = [ [[package]] name = "sp-consensus-vrf" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "parity-scale-codec", "schnorrkel", @@ -9176,7 +9201,7 @@ dependencies = [ [[package]] name = "sp-core" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "base58", "blake2-rfc", @@ -9220,7 +9245,7 @@ dependencies = [ [[package]] name = "sp-database" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "kvdb", "parking_lot 0.11.1", @@ -9229,7 +9254,7 @@ dependencies = [ [[package]] name = "sp-debug-derive" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "proc-macro2", "quote", @@ -9239,7 +9264,7 @@ dependencies = [ [[package]] name = "sp-externalities" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "environmental", "parity-scale-codec", @@ -9250,7 +9275,7 @@ dependencies = [ [[package]] name = "sp-finality-grandpa" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "finality-grandpa", "log", @@ -9267,7 +9292,7 @@ dependencies = [ [[package]] name = "sp-inherents" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "async-trait", "impl-trait-for-tuples", @@ -9281,7 +9306,7 @@ dependencies = [ [[package]] name = "sp-io" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "futures 0.3.14", "hash-db", @@ -9305,7 +9330,7 @@ dependencies = [ [[package]] name = "sp-keyring" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "lazy_static", "sp-core", @@ -9316,7 +9341,7 @@ dependencies = [ [[package]] name = "sp-keystore" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "async-trait", "derive_more", @@ -9333,7 +9358,7 @@ dependencies = [ [[package]] name = "sp-maybe-compressed-blob" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "ruzstd", "zstd", @@ -9342,7 +9367,7 @@ dependencies = [ [[package]] name = "sp-npos-elections" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "parity-scale-codec", "serde", @@ -9355,7 +9380,7 @@ dependencies = [ [[package]] name = "sp-npos-elections-compact" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "proc-macro-crate 1.0.0", "proc-macro2", @@ -9366,7 +9391,7 @@ dependencies = [ [[package]] name = "sp-offchain" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "sp-api", "sp-core", @@ -9376,7 +9401,7 @@ dependencies = [ [[package]] name = "sp-panic-handler" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "backtrace", ] @@ -9384,7 +9409,7 @@ dependencies = [ [[package]] name = "sp-rpc" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "rustc-hash", "serde", @@ -9395,7 +9420,7 @@ dependencies = [ [[package]] name = "sp-runtime" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "either", "hash256-std-hasher", @@ -9416,7 +9441,7 @@ dependencies = [ [[package]] name = "sp-runtime-interface" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "impl-trait-for-tuples", "parity-scale-codec", @@ -9433,7 +9458,7 @@ dependencies = [ [[package]] name = "sp-runtime-interface-proc-macro" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "Inflector", "proc-macro-crate 1.0.0", @@ -9445,7 +9470,7 @@ dependencies = [ [[package]] name = "sp-serializer" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "serde", "serde_json", @@ -9454,7 +9479,7 @@ dependencies = [ [[package]] name = "sp-session" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "parity-scale-codec", "sp-api", @@ -9467,7 +9492,7 @@ dependencies = [ [[package]] name = "sp-staking" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "parity-scale-codec", "sp-runtime", @@ -9477,7 +9502,7 @@ dependencies = [ [[package]] name = "sp-state-machine" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "hash-db", "log", @@ -9500,12 +9525,12 @@ dependencies = [ [[package]] name = "sp-std" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" [[package]] name = "sp-storage" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "impl-serde", "parity-scale-codec", @@ -9518,7 +9543,7 @@ dependencies = [ [[package]] name = "sp-tasks" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "log", "sp-core", @@ -9531,7 +9556,7 @@ dependencies = [ [[package]] name = "sp-timestamp" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "async-trait", "futures-timer 3.0.2", @@ -9548,7 +9573,7 @@ dependencies = [ [[package]] name = "sp-tracing" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "erased-serde", "log", @@ -9566,7 +9591,7 @@ dependencies = [ [[package]] name = "sp-transaction-pool" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "derive_more", "futures 0.3.14", @@ -9582,7 +9607,7 @@ dependencies = [ [[package]] name = "sp-trie" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "hash-db", "memory-db", @@ -9596,7 +9621,7 @@ dependencies = [ [[package]] name = "sp-utils" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "futures 0.3.14", "futures-core", @@ -9608,7 +9633,7 @@ dependencies = [ [[package]] name = "sp-version" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "impl-serde", "parity-scale-codec", @@ -9620,7 +9645,7 @@ dependencies = [ [[package]] name = "sp-wasm-interface" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "impl-trait-for-tuples", "parity-scale-codec", @@ -9777,7 +9802,7 @@ dependencies = [ [[package]] name = "substrate-browser-utils" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "chrono", "console_error_panic_hook", @@ -9803,7 +9828,7 @@ dependencies = [ [[package]] name = "substrate-build-script-utils" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "platforms", ] @@ -9811,7 +9836,7 @@ dependencies = [ [[package]] name = "substrate-frame-rpc-system" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-system-rpc-runtime-api", "futures 0.3.14", @@ -9834,7 +9859,7 @@ dependencies = [ [[package]] name = "substrate-prometheus-endpoint" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "async-std", "derive_more", @@ -9848,7 +9873,7 @@ dependencies = [ [[package]] name = "substrate-test-client" version = "2.0.1" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "async-trait", "futures 0.1.29", @@ -9877,7 +9902,7 @@ dependencies = [ [[package]] name = "substrate-test-utils" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "futures 0.3.14", "substrate-test-utils-derive", @@ -9887,7 +9912,7 @@ dependencies = [ [[package]] name = "substrate-test-utils-derive" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "proc-macro-crate 1.0.0", "quote", @@ -10629,7 +10654,7 @@ checksum = "e604eb7b43c06650e854be16a2a03155743d3752dd1c943f6829e26b7a36e382" [[package]] name = "try-runtime-cli" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate#d47d16207b6aa6f4682e056953d114eebc2ffbf6" +source = "git+https://github.com/paritytech/substrate?branch=master#3f110196163b5ec03bac5ee188d60bedf3ebd91d" dependencies = [ "frame-try-runtime", "log", diff --git a/polkadot/node/service/src/chain_spec.rs b/polkadot/node/service/src/chain_spec.rs index 65afef9012..8e7172509e 100644 --- a/polkadot/node/service/src/chain_spec.rs +++ b/polkadot/node/service/src/chain_spec.rs @@ -644,6 +644,7 @@ fn kusama_staging_testnet_config_genesis(wasm_binary: &[u8]) -> kusama::GenesisC pallet_vesting: kusama::VestingConfig { vesting: vec![] }, pallet_treasury: Default::default(), parachains_configuration: Default::default(), + pallet_gilt: Default::default(), } } @@ -1282,6 +1283,7 @@ pub fn kusama_testnet_genesis( pallet_vesting: kusama::VestingConfig { vesting: vec![] }, pallet_treasury: Default::default(), parachains_configuration: Default::default(), + pallet_gilt: Default::default(), } } diff --git a/polkadot/runtime/kusama/Cargo.toml b/polkadot/runtime/kusama/Cargo.toml index c2a2f6949e..ff70990172 100644 --- a/polkadot/runtime/kusama/Cargo.toml +++ b/polkadot/runtime/kusama/Cargo.toml @@ -22,6 +22,7 @@ sp-api = { git = "https://github.com/paritytech/substrate", branch = "master", d inherents = { package = "sp-inherents", git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } offchain-primitives = { package = "sp-offchain", git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } sp-std = { package = "sp-std", git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } +sp-arithmetic = { package = "sp-arithmetic", git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } sp-io = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } sp-staking = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } @@ -45,6 +46,7 @@ pallet-elections-phragmen = { git = "https://github.com/paritytech/substrate", b pallet-election-provider-multi-phase = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } frame-executive = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } pallet-grandpa = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } +pallet-gilt = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } pallet-identity = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } pallet-im-online = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } pallet-indices = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } @@ -61,7 +63,7 @@ pallet-session = { git = "https://github.com/paritytech/substrate", branch = "ma pallet-society = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } frame-support = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } pallet-staking = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } -pallet-staking-reward-curve = { git = "https://github.com/paritytech/substrate", branch = "master" } +pallet-staking-reward-fn = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } frame-system = {git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } frame-system-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } pallet-timestamp = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } @@ -128,6 +130,7 @@ std = [ "pallet-elections-phragmen/std", "pallet-election-provider-multi-phase/std", "pallet-democracy/std", + "pallet-gilt/std", "pallet-grandpa/std", "pallet-identity/std", "pallet-im-online/std", @@ -142,6 +145,7 @@ std = [ "pallet-session/std", "pallet-society/std", "pallet-staking/std", + "pallet-staking-reward-fn/std", "pallet-timestamp/std", "pallet-tips/std", "pallet-treasury/std", @@ -183,6 +187,7 @@ runtime-benchmarks = [ "pallet-democracy/runtime-benchmarks", "pallet-elections-phragmen/runtime-benchmarks", "pallet-election-provider-multi-phase/runtime-benchmarks", + "pallet-gilt/runtime-benchmarks", "pallet-grandpa/runtime-benchmarks", "pallet-identity/runtime-benchmarks", "pallet-im-online/runtime-benchmarks", diff --git a/polkadot/runtime/kusama/src/lib.rs b/polkadot/runtime/kusama/src/lib.rs index c15b800796..d17e3f4f35 100644 --- a/polkadot/runtime/kusama/src/lib.rs +++ b/polkadot/runtime/kusama/src/lib.rs @@ -57,14 +57,14 @@ use xcm_builder::{ AccountId32Aliases, ChildParachainConvertsVia, SovereignSignedViaLocation, CurrencyAdapter as XcmCurrencyAdapter, ChildParachainAsNative, SignedAccountId32AsNative, ChildSystemParachainAsSuperuser, LocationInverter, IsConcrete, FixedWeightBounds, TakeWeightCredit, AllowTopLevelPaidExecutionFrom, AllowUnpaidExecutionFrom, - IsChildSystemParachain, UsingComponents, BackingToPlurality, SignedToAccountId32 + IsChildSystemParachain, UsingComponents, BackingToPlurality, SignedToAccountId32, }; use xcm_executor::XcmExecutor; +use sp_arithmetic::Perquintill; use sp_runtime::{ create_runtime_str, generic, impl_opaque_keys, ApplyExtrinsicResult, KeyTypeId, Percent, Permill, Perbill, transaction_validity::{TransactionValidity, TransactionSource, TransactionPriority}, - curve::PiecewiseLinear, traits::{ BlakeTwo256, Block as BlockT, OpaqueKeys, ConvertInto, AccountIdLookup, Extrinsic as ExtrinsicT, SaturatedConversion, Verify, @@ -106,6 +106,9 @@ use constants::{time::*, currency::*, fee::*, paras::*}; // Weights used in the runtime. mod weights; +#[cfg(test)] +mod tests; + // Make the WASM binary available. #[cfg(feature = "std")] include!(concat!(env!("OUT_DIR"), "/wasm_binary.rs")); @@ -219,8 +222,6 @@ impl pallet_babe::Config for Runtime { // session module is the trigger type EpochChangeTrigger = pallet_babe::ExternalTrigger; - type KeyOwnerProofSystem = Historical; - type KeyOwnerProof = >::IdentificationTuple; + type KeyOwnerProofSystem = Historical; + type HandleEquivocation = pallet_babe::EquivocationHandler; @@ -260,8 +263,8 @@ impl pallet_balances::Config for Runtime { type Event = Event; type ExistentialDeposit = ExistentialDeposit; type AccountStore = System; - type MaxLocks = MaxLocks; type WeightInfo = weights::pallet_balances::WeightInfo; + type MaxLocks = MaxLocks; } parameter_types! { @@ -361,8 +364,8 @@ sp_npos_elections::generate_solution_type!( impl pallet_election_provider_multi_phase::Config for Runtime { type Event = Event; type Currency = Balances; - type SignedPhase = SignedPhase; type UnsignedPhase = UnsignedPhase; + type SignedPhase = SignedPhase; type SolutionImprovementThreshold = SolutionImprovementThreshold; type MinerMaxIterations = MinerMaxIterations; type MinerMaxWeight = OffchainSolutionWeightLimit; // For now use the one from staking. @@ -370,27 +373,72 @@ impl pallet_election_provider_multi_phase::Config for Runtime { type OffchainRepeat = OffchainRepeat; type MinerTxPriority = NposSolutionPriority; type DataProvider = Staking; - type OnChainAccuracy = Perbill; type CompactSolution = NposCompactSolution24; + type OnChainAccuracy = Perbill; type Fallback = Fallback; type BenchmarkingConfig = (); type WeightInfo = weights::pallet_election_provider_multi_phase::WeightInfo; } -// TODO #6469: This shouldn't be static, but a lazily cached value, not built unless needed, and -// re-built in case input parameters have changed. The `ideal_stake` should be determined by the -// amount of parachain slots being bid on: this should be around `(75 - 25.min(slots / 4))%`. -pallet_staking_reward_curve::build! { - const REWARD_CURVE: PiecewiseLinear<'static> = curve!( - min_inflation: 0_025_000, - max_inflation: 0_100_000, - // 3:2:1 staked : parachains : float. - // while there's no parachains, then this is 75% staked : 25% float. - ideal_stake: 0_750_000, - falloff: 0_050_000, - max_piece_count: 40, - test_precision: 0_005_000, - ); +fn era_payout( + total_staked: Balance, + non_gilt_issuance: Balance, + max_annual_inflation: Perquintill, + period_fraction: Perquintill, + auctioned_slots: u64, +) -> (Balance, Balance) { + use sp_arithmetic::traits::Saturating; + use pallet_staking_reward_fn::compute_inflation; + + let min_annual_inflation = Perquintill::from_rational(25u64, 1000u64); + let delta_annual_inflation = max_annual_inflation.saturating_sub(min_annual_inflation); + + // 30% reserved for up to 60 slots. + let auction_proportion = Perquintill::from_rational(auctioned_slots.min(60), 200u64); + + // Therefore the ideal amount at stake (as a percentage of total issuance) is 75% less the amount that we expect + // to be taken up with auctions. + let ideal_stake = Perquintill::from_percent(75) + .saturating_sub(auction_proportion); + + let stake = Perquintill::from_rational(total_staked, non_gilt_issuance); + let falloff = Perquintill::from_percent(5); + let adjustment = compute_inflation(stake, ideal_stake, falloff); + let staking_inflation = min_annual_inflation.saturating_add(delta_annual_inflation * adjustment); + + let max_payout = period_fraction * max_annual_inflation * non_gilt_issuance; + let staking_payout = (period_fraction * staking_inflation) * non_gilt_issuance; + let rest = max_payout.saturating_sub(staking_payout); + + let other_issuance = non_gilt_issuance.saturating_sub(total_staked); + if total_staked > other_issuance { + let _cap_rest = Perquintill::from_rational(other_issuance, total_staked) * staking_payout; + // We don't do anything with this, but if we wanted to, we could introduce a cap on the treasury amount + // with: `rest = rest.min(cap_rest);` + } + (staking_payout, rest) +} + +pub struct EraPayout; +impl pallet_staking::EraPayout for EraPayout { + fn era_payout( + total_staked: Balance, + _total_issuance: Balance, + era_duration_millis: u64, + ) -> (Balance, Balance) { + // TODO: #2999 Update with Auctions logic when auctions pallet added. + const AUCTIONED_SLOTS: u64 = 0; + const MAX_ANNUAL_INFLATION: Perquintill = Perquintill::from_percent(10); + const MILLISECONDS_PER_YEAR: u64 = 1000 * 3600 * 24 * 36525 / 100; + + era_payout( + total_staked, + Gilt::issuance().non_gilt, + MAX_ANNUAL_INFLATION, + Perquintill::from_rational(era_duration_millis, MILLISECONDS_PER_YEAR), + AUCTIONED_SLOTS, + ) + } } parameter_types! { @@ -400,8 +448,7 @@ parameter_types! { pub const BondingDuration: pallet_staking::EraIndex = 28; // 27 eras in which slashes can be cancelled (slightly less than 7 days). pub const SlashDeferDuration: pallet_staking::EraIndex = 27; - pub const RewardCurve: &'static PiecewiseLinear<'static> = &REWARD_CURVE; -pub const MaxNominatorRewardedPerValidator: u32 = 256; + pub const MaxNominatorRewardedPerValidator: u32 = 256; } type SlashCancelOrigin = EnsureOneOf< @@ -415,6 +462,7 @@ impl pallet_staking::Config for Runtime { type Currency = Balances; type UnixTime = Timestamp; type CurrencyToVote = CurrencyToVote; + type ElectionProvider = ElectionProviderMultiPhase; type RewardRemainder = Treasury; type Event = Event; type Slash = Treasury; @@ -425,10 +473,9 @@ impl pallet_staking::Config for Runtime { // A majority of the council or root can cancel the slash. type SlashCancelOrigin = SlashCancelOrigin; type SessionInterface = Self; - type EraPayout = pallet_staking::ConvertCurve; - type MaxNominatorRewardedPerValidator = MaxNominatorRewardedPerValidator; + type EraPayout = EraPayout; type NextNewSession = Session; - type ElectionProvider = ElectionProviderMultiPhase; + type MaxNominatorRewardedPerValidator = MaxNominatorRewardedPerValidator; type WeightInfo = weights::pallet_staking::WeightInfo; } @@ -473,6 +520,7 @@ impl pallet_democracy::Config for Runtime { EnsureRoot, pallet_collective::EnsureProportionAtLeast<_2, _3, AccountId, CouncilCollective>, >; + type BlacklistOrigin = EnsureRoot; // To cancel a proposal before it has been passed, the technical committee must be unanimous or // Root must agree. type CancelProposalOrigin = EnsureOneOf< @@ -480,17 +528,16 @@ impl pallet_democracy::Config for Runtime { EnsureRoot, pallet_collective::EnsureProportionAtLeast<_1, _1, AccountId, TechnicalCollective>, >; - type BlacklistOrigin = EnsureRoot; // Any single technical committee member may veto a coming council proposal, however they can // only do it once and it lasts only for the cooloff period. type VetoOrigin = pallet_collective::EnsureMember; type CooloffPeriod = CooloffPeriod; type PreimageByteDeposit = PreimageByteDeposit; + type OperationalPreimageOrigin = pallet_collective::EnsureMember; type Slash = Treasury; type Scheduler = Scheduler; type PalletsOrigin = OriginCaller; type MaxVotes = MaxVotes; - type OperationalPreimageOrigin = pallet_collective::EnsureMember; type WeightInfo = weights::pallet_democracy::WeightInfo; type MaxProposals = MaxProposals; } @@ -616,32 +663,31 @@ impl pallet_treasury::Config for Runtime { type SpendPeriod = SpendPeriod; type Burn = Burn; type BurnDestination = Society; - type SpendFunds = Bounties; type MaxApprovals = MaxApprovals; type WeightInfo = weights::pallet_treasury::WeightInfo; + type SpendFunds = Bounties; } impl pallet_bounties::Config for Runtime { - type Event = Event; type BountyDepositBase = BountyDepositBase; type BountyDepositPayoutDelay = BountyDepositPayoutDelay; type BountyUpdatePeriod = BountyUpdatePeriod; type BountyCuratorDeposit = BountyCuratorDeposit; type BountyValueMinimum = BountyValueMinimum; type DataDepositPerByte = DataDepositPerByte; + type Event = Event; type MaximumReasonLength = MaximumReasonLength; type WeightInfo = weights::pallet_bounties::WeightInfo; - } impl pallet_tips::Config for Runtime { - type Event = Event; - type DataDepositPerByte = DataDepositPerByte; type MaximumReasonLength = MaximumReasonLength; + type DataDepositPerByte = DataDepositPerByte; type Tippers = PhragmenElection; type TipCountdown = TipCountdown; type TipFindersFee = TipFindersFee; type TipReportDepositBase = TipReportDepositBase; + type Event = Event; type WeightInfo = weights::pallet_tips::WeightInfo; } @@ -673,8 +719,6 @@ impl pallet_grandpa::Config for Runtime { type Event = Event; type Call = Call; - type KeyOwnerProofSystem = Historical; - type KeyOwnerProof = >::Proof; @@ -683,6 +727,8 @@ impl pallet_grandpa::Config for Runtime { GrandpaId, )>>::IdentificationTuple; + type KeyOwnerProofSystem = Historical; + type HandleEquivocation = pallet_grandpa::EquivocationHandler; @@ -742,8 +788,8 @@ impl frame_system::offchain::SigningTypes for Runtime { impl frame_system::offchain::SendTransactionTypes for Runtime where Call: From, { - type OverarchingCall = Call; type Extrinsic = UncheckedExtrinsic; + type OverarchingCall = Call; } parameter_types! { @@ -771,15 +817,15 @@ parameter_types! { impl pallet_identity::Config for Runtime { type Event = Event; type Currency = Balances; - type Slashed = Treasury; type BasicDeposit = BasicDeposit; type FieldDeposit = FieldDeposit; type SubAccountDeposit = SubAccountDeposit; type MaxSubAccounts = MaxSubAccounts; type MaxAdditionalFields = MaxAdditionalFields; type MaxRegistrars = MaxRegistrars; - type RegistrarOrigin = MoreThanHalfCouncil; + type Slashed = Treasury; type ForceOrigin = MoreThanHalfCouncil; + type RegistrarOrigin = MoreThanHalfCouncil; type WeightInfo = weights::pallet_identity::WeightInfo; } @@ -932,7 +978,8 @@ impl InstanceFilter for ProxyType { // Specifically omitting Vesting `vested_transfer`, and `force_vested_transfer` Call::Scheduler(..) | Call::Proxy(..) | - Call::Multisig(..) + Call::Multisig(..) | + Call::Gilt(..) ), ProxyType::Governance => matches!(c, Call::Democracy(..) | @@ -1221,6 +1268,35 @@ impl pallet_xcm::Config for Runtime { type Weigher = FixedWeightBounds; } +parameter_types! { + pub IgnoredIssuance: Balance = Treasury::pot(); + pub const QueueCount: u32 = 300; + pub const MaxQueueLen: u32 = 1000; + pub const FifoQueueLen: u32 = 250; + pub const GiltPeriod: BlockNumber = 30 * DAYS; + pub const MinFreeze: Balance = 10_000 * CENTS; + pub const IntakePeriod: BlockNumber = 5 * MINUTES; + pub const MaxIntakeBids: u32 = 100; +} + +impl pallet_gilt::Config for Runtime { + type Event = Event; + type Currency = Balances; + type CurrencyBalance = Balance; + type AdminOrigin = MoreThanHalfCouncil; + type Deficit = (); // Mint + type Surplus = (); // Burn + type IgnoredIssuance = IgnoredIssuance; + type QueueCount = QueueCount; + type MaxQueueLen = MaxQueueLen; + type FifoQueueLen = FifoQueueLen; + type Period = GiltPeriod; + type MinFreeze = MinFreeze; + type IntakePeriod = IntakePeriod; + type MaxIntakeBids = MaxIntakeBids; + type WeightInfo = weights::pallet_gilt::WeightInfo; +} + construct_runtime! { pub enum Runtime where Block = Block, @@ -1293,6 +1369,9 @@ construct_runtime! { // Election pallet. Only works with staking, but placed here to maintain indices. ElectionProviderMultiPhase: pallet_election_provider_multi_phase::{Pallet, Call, Storage, Event, ValidateUnsigned} = 37, + // Gilts pallet. + Gilt: pallet_gilt::{Pallet, Call, Storage, Event, Config} = 38, + // Parachains pallets. Start indices at 50 to leave room. ParachainsOrigin: parachains_origin::{Pallet, Origin} = 50, ParachainsConfiguration: parachains_configuration::{Pallet, Call, Storage, Config} = 51, @@ -1742,6 +1821,7 @@ sp_api::impl_runtime_apis! { add_benchmark!(params, batches, pallet_democracy, Democracy); add_benchmark!(params, batches, pallet_elections_phragmen, PhragmenElection); add_benchmark!(params, batches, pallet_election_provider_multi_phase, ElectionProviderMultiPhase); + add_benchmark!(params, batches, pallet_gilt, Gilt); add_benchmark!(params, batches, pallet_identity, Identity); add_benchmark!(params, batches, pallet_im_online, ImOnline); add_benchmark!(params, batches, pallet_indices, Indices); diff --git a/polkadot/runtime/kusama/src/tests.rs b/polkadot/runtime/kusama/src/tests.rs new file mode 100644 index 0000000000..153ad3c8da --- /dev/null +++ b/polkadot/runtime/kusama/src/tests.rs @@ -0,0 +1,56 @@ +// Copyright 2021 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 . + +//! Tests for the Kusama Runtime Configuration + +use crate::*; + +#[test] +fn compute_inflation_should_give_sensible_results() { + assert_eq!(pallet_staking_reward_fn::compute_inflation( + Perquintill::from_percent(75), + Perquintill::from_percent(75), + Perquintill::from_percent(5), + ), Perquintill::one()); + assert_eq!(pallet_staking_reward_fn::compute_inflation( + Perquintill::from_percent(50), + Perquintill::from_percent(75), + Perquintill::from_percent(5), + ), Perquintill::from_rational(2u64, 3u64)); + assert_eq!(pallet_staking_reward_fn::compute_inflation( + Perquintill::from_percent(80), + Perquintill::from_percent(75), + Perquintill::from_percent(5), + ), Perquintill::from_rational(1u64, 2u64)); +} + +#[test] +fn era_payout_should_give_sensible_results() { + assert_eq!(era_payout( + 75, + 100, + Perquintill::from_percent(10), + Perquintill::one(), + 0, + ), (10, 0)); + assert_eq!(era_payout( + 80, + 100, + Perquintill::from_percent(10), + Perquintill::one(), + 0, + ), (6, 4)); +} diff --git a/polkadot/runtime/kusama/src/weights/mod.rs b/polkadot/runtime/kusama/src/weights/mod.rs index 7d84a7aebc..9faf641e22 100644 --- a/polkadot/runtime/kusama/src/weights/mod.rs +++ b/polkadot/runtime/kusama/src/weights/mod.rs @@ -22,6 +22,7 @@ pub mod pallet_collective; pub mod pallet_democracy; pub mod pallet_elections_phragmen; pub mod pallet_election_provider_multi_phase; +pub mod pallet_gilt; pub mod pallet_identity; pub mod pallet_im_online; pub mod pallet_indices; diff --git a/polkadot/runtime/kusama/src/weights/pallet_gilt.rs b/polkadot/runtime/kusama/src/weights/pallet_gilt.rs new file mode 100644 index 0000000000..6ac5c58c8d --- /dev/null +++ b/polkadot/runtime/kusama/src/weights/pallet_gilt.rs @@ -0,0 +1,96 @@ +// 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 . +//! Autogenerated weights for pallet_gilt +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 3.0.0 +//! DATE: 2021-03-10, STEPS: `[50, ]`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("kusama-dev"), DB CACHE: 128 + +// Executed Command: +// target/release/polkadot +// benchmark +// --chain=kusama-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_gilt +// --extrinsic=* +// --execution=wasm +// --wasm-execution=compiled +// --heap-pages=4096 +// --header=./file_header.txt +// --output=./runtime/kusama/src/weights/ + + +#![allow(unused_parens)] +#![allow(unused_imports)] + +use frame_support::{traits::Get, weights::Weight}; +use sp_std::marker::PhantomData; + +/// Weight functions for pallet_gilt. +pub struct WeightInfo(PhantomData); +impl pallet_gilt::WeightInfo for WeightInfo { + fn place_bid(l: u32, ) -> Weight { + (66_637_000 as Weight) + // Standard Error: 0 + .saturating_add((308_000 as Weight).saturating_mul(l as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) + } + fn place_bid_max() -> Weight { + (307_267_000 as Weight) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) + } + fn retract_bid(l: u32, ) -> Weight { + (66_767_000 as Weight) + // Standard Error: 0 + .saturating_add((250_000 as Weight).saturating_mul(l as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) + } + fn set_target() -> Weight { + (5_467_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) + } + fn thaw() -> Weight { + (73_106_000 as Weight) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) + } + fn pursue_target_noop() -> Weight { + (3_203_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + } + fn pursue_target_per_item(b: u32, ) -> Weight { + (68_961_000 as Weight) + // Standard Error: 2_000 + .saturating_add((10_500_000 as Weight).saturating_mul(b as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(b as Weight))) + } + fn pursue_target_per_queue(q: u32, ) -> Weight { + (33_795_000 as Weight) + // Standard Error: 15_000 + .saturating_add((16_999_000 as Weight).saturating_mul(q as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(q as Weight))) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) + .saturating_add(T::DbWeight::get().writes((2 as Weight).saturating_mul(q as Weight))) + } +}