diff --git a/Cargo.lock b/Cargo.lock index 692aa5a0a9..6189208c25 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -90,12 +90,6 @@ dependencies = [ "opaque-debug 0.3.0", ] -[[package]] -name = "ahash" -version = "0.4.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "739f4a8db6605981345c5654f3a85b056ce52f37a39d34da03f25bf2151ea16e" - [[package]] name = "ahash" version = "0.7.4" @@ -142,9 +136,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.42" +version = "1.0.43" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "595d3cfa7a60d4555cb5067b99f07142a08ea778de5cf993f7b75c7d8fabc486" +checksum = "28ae2b3dec75a406790005a200b1bd89785afc02517a00ca99ecfe093ee9e6cf" [[package]] name = "approx" @@ -196,7 +190,7 @@ checksum = "9b34d609dfbaf33d6889b2b7106d3ca345eacad44200913df5ba02bfd31d2ba9" [[package]] name = "astar-collator" -version = "2.3.0" +version = "2.4.0" dependencies = [ "async-trait", "cumulus-client-cli", @@ -214,6 +208,7 @@ dependencies = [ "lazy_static", "log", "pallet-transaction-payment", + "pallet-transaction-payment-rpc", "parity-scale-codec", "polkadot-cli", "polkadot-parachain", @@ -234,10 +229,12 @@ dependencies = [ "sc-telemetry", "sc-tracing", "sc-transaction-pool", + "sc-transaction-pool-api", "serde", "shiden-runtime", "sp-api", "sp-block-builder", + "sp-blockchain", "sp-consensus", "sp-consensus-aura", "sp-core", @@ -251,6 +248,7 @@ dependencies = [ "sp-trie", "structopt", "substrate-build-script-utils", + "substrate-frame-rpc-system", "substrate-prometheus-endpoint", "vergen", ] @@ -345,9 +343,9 @@ dependencies = [ [[package]] name = "async-process" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8f38756dd9ac84671c428afbf7c9f7495feff9ec5b0710f17100098e5b354ac" +checksum = "b21b63ab5a0db0369deb913540af2892750e42d949faacc7a61495ac418a1692" dependencies = [ "async-io", "blocking", @@ -489,10 +487,23 @@ dependencies = [ "cfg-if 1.0.0", "libc", "miniz_oxide", - "object 0.26.0", + "object 0.26.1", "rustc-demangle", ] +[[package]] +name = "bae" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec107f431ee3d8a8e45e6dd117adab769556ef463959e77bf6a4888d5fd500cf" +dependencies = [ + "heck", + "proc-macro-error 0.4.12", + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "base-x" version = "0.2.8" @@ -529,9 +540,10 @@ dependencies = [ [[package]] name = "beefy-gadget" version = "0.1.0" -source = "git+https://github.com/paritytech/grandpa-bridge-gadget?branch=polkadot-v0.9.8#55ae3329847e0bbde51c9d45991d99f444777555" +source = "git+https://github.com/paritytech/grandpa-bridge-gadget?branch=polkadot-v0.9.9#f40c0ab7b327e874d5c8d699bfa5d762f1759ee0" dependencies = [ "beefy-primitives", + "fnv", "futures 0.3.16", "hex", "log", @@ -552,12 +564,13 @@ dependencies = [ "sp-utils", "substrate-prometheus-endpoint", "thiserror", + "wasm-timer", ] [[package]] name = "beefy-gadget-rpc" version = "0.1.0" -source = "git+https://github.com/paritytech/grandpa-bridge-gadget?branch=polkadot-v0.9.8#55ae3329847e0bbde51c9d45991d99f444777555" +source = "git+https://github.com/paritytech/grandpa-bridge-gadget?branch=polkadot-v0.9.9#f40c0ab7b327e874d5c8d699bfa5d762f1759ee0" dependencies = [ "beefy-gadget", "beefy-primitives", @@ -575,10 +588,15 @@ dependencies = [ "sp-runtime", ] +[[package]] +name = "beefy-merkle-tree" +version = "0.1.0" +source = "git+https://github.com/paritytech/grandpa-bridge-gadget?branch=polkadot-v0.9.9#f40c0ab7b327e874d5c8d699bfa5d762f1759ee0" + [[package]] name = "beefy-primitives" version = "0.1.0" -source = "git+https://github.com/paritytech/grandpa-bridge-gadget?branch=polkadot-v0.9.8#55ae3329847e0bbde51c9d45991d99f444777555" +source = "git+https://github.com/paritytech/grandpa-bridge-gadget?branch=polkadot-v0.9.9#f40c0ab7b327e874d5c8d699bfa5d762f1759ee0" dependencies = [ "parity-scale-codec", "sp-api", @@ -618,9 +636,9 @@ dependencies = [ [[package]] name = "bitflags" -version = "1.2.1" +version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitvec" @@ -852,9 +870,9 @@ dependencies = [ [[package]] name = "cargo-platform" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0226944a63d1bf35a3b5f948dd7c59e263db83695c9e8bffc4037de02e30f1d7" +checksum = "cbdb825da8a5df079a43676dbe042702f1707b1109f713a01420fbb4cc71fa27" dependencies = [ "serde", ] @@ -1340,7 +1358,7 @@ dependencies = [ [[package]] name = "cumulus-client-cli" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.8#ed6ba5dfb2c112c29505e856e8971da3420ce6d0" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.9#fd80849dde5c209c20a996cfcc5aaacd4666dcbe" dependencies = [ "sc-cli", "sc-service", @@ -1350,7 +1368,7 @@ dependencies = [ [[package]] name = "cumulus-client-collator" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.8#ed6ba5dfb2c112c29505e856e8971da3420ce6d0" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.9#fd80849dde5c209c20a996cfcc5aaacd4666dcbe" dependencies = [ "cumulus-client-consensus-common", "cumulus-client-network", @@ -1374,7 +1392,7 @@ dependencies = [ [[package]] name = "cumulus-client-consensus-aura" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.8#ed6ba5dfb2c112c29505e856e8971da3420ce6d0" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.9#fd80849dde5c209c20a996cfcc5aaacd4666dcbe" dependencies = [ "async-trait", "cumulus-client-consensus-common", @@ -1384,6 +1402,7 @@ dependencies = [ "parking_lot 0.10.2", "polkadot-client", "sc-client-api", + "sc-consensus", "sc-consensus-aura", "sc-consensus-slots", "sc-telemetry", @@ -1404,7 +1423,7 @@ dependencies = [ [[package]] name = "cumulus-client-consensus-common" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.8#ed6ba5dfb2c112c29505e856e8971da3420ce6d0" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.9#fd80849dde5c209c20a996cfcc5aaacd4666dcbe" dependencies = [ "async-trait", "dyn-clone", @@ -1413,6 +1432,7 @@ dependencies = [ "polkadot-primitives", "polkadot-runtime", "sc-client-api", + "sc-consensus", "sp-api", "sp-block-builder", "sp-blockchain", @@ -1428,7 +1448,7 @@ dependencies = [ [[package]] name = "cumulus-client-consensus-relay-chain" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.8#ed6ba5dfb2c112c29505e856e8971da3420ce6d0" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.9#fd80849dde5c209c20a996cfcc5aaacd4666dcbe" dependencies = [ "async-trait", "cumulus-client-consensus-common", @@ -1438,6 +1458,7 @@ dependencies = [ "parking_lot 0.10.2", "polkadot-client", "sc-client-api", + "sc-consensus", "sp-api", "sp-block-builder", "sp-blockchain", @@ -1452,7 +1473,7 @@ dependencies = [ [[package]] name = "cumulus-client-network" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.8#ed6ba5dfb2c112c29505e856e8971da3420ce6d0" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.9#fd80849dde5c209c20a996cfcc5aaacd4666dcbe" dependencies = [ "derive_more", "futures 0.3.16", @@ -1476,7 +1497,7 @@ dependencies = [ [[package]] name = "cumulus-client-pov-recovery" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.8#ed6ba5dfb2c112c29505e856e8971da3420ce6d0" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.9#fd80849dde5c209c20a996cfcc5aaacd4666dcbe" dependencies = [ "cumulus-primitives-core", "futures 0.3.16", @@ -1488,6 +1509,7 @@ dependencies = [ "polkadot-primitives", "rand 0.8.4", "sc-client-api", + "sc-consensus", "sp-api", "sp-consensus", "sp-core", @@ -1499,7 +1521,7 @@ dependencies = [ [[package]] name = "cumulus-client-service" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.8#ed6ba5dfb2c112c29505e856e8971da3420ce6d0" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.9#fd80849dde5c209c20a996cfcc5aaacd4666dcbe" dependencies = [ "cumulus-client-collator", "cumulus-client-consensus-common", @@ -1512,6 +1534,7 @@ dependencies = [ "polkadot-service", "sc-chain-spec", "sc-client-api", + "sc-consensus", "sc-consensus-babe", "sc-service", "sc-telemetry", @@ -1527,7 +1550,7 @@ dependencies = [ [[package]] name = "cumulus-pallet-aura-ext" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.8#ed6ba5dfb2c112c29505e856e8971da3420ce6d0" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.9#fd80849dde5c209c20a996cfcc5aaacd4666dcbe" dependencies = [ "frame-executive", "frame-support", @@ -1544,7 +1567,7 @@ dependencies = [ [[package]] name = "cumulus-pallet-parachain-system" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.8#ed6ba5dfb2c112c29505e856e8971da3420ce6d0" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.9#fd80849dde5c209c20a996cfcc5aaacd4666dcbe" dependencies = [ "cumulus-pallet-parachain-system-proc-macro", "cumulus-primitives-core", @@ -1572,7 +1595,7 @@ dependencies = [ [[package]] name = "cumulus-pallet-parachain-system-proc-macro" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.8#ed6ba5dfb2c112c29505e856e8971da3420ce6d0" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.9#fd80849dde5c209c20a996cfcc5aaacd4666dcbe" dependencies = [ "proc-macro-crate 1.0.0", "proc-macro2", @@ -1583,7 +1606,7 @@ dependencies = [ [[package]] name = "cumulus-pallet-xcm" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.8#ed6ba5dfb2c112c29505e856e8971da3420ce6d0" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.9#fd80849dde5c209c20a996cfcc5aaacd4666dcbe" dependencies = [ "cumulus-primitives-core", "frame-support", @@ -1599,7 +1622,7 @@ dependencies = [ [[package]] name = "cumulus-primitives-core" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.8#ed6ba5dfb2c112c29505e856e8971da3420ce6d0" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.9#fd80849dde5c209c20a996cfcc5aaacd4666dcbe" dependencies = [ "frame-support", "impl-trait-for-tuples", @@ -1617,7 +1640,7 @@ dependencies = [ [[package]] name = "cumulus-primitives-parachain-inherent" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.8#ed6ba5dfb2c112c29505e856e8971da3420ce6d0" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.9#fd80849dde5c209c20a996cfcc5aaacd4666dcbe" dependencies = [ "async-trait", "cumulus-primitives-core", @@ -1638,7 +1661,7 @@ dependencies = [ [[package]] name = "cumulus-primitives-timestamp" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.8#ed6ba5dfb2c112c29505e856e8971da3420ce6d0" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.9#fd80849dde5c209c20a996cfcc5aaacd4666dcbe" dependencies = [ "cumulus-primitives-core", "sp-inherents", @@ -1649,7 +1672,7 @@ dependencies = [ [[package]] name = "cumulus-primitives-utility" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.8#ed6ba5dfb2c112c29505e856e8971da3420ce6d0" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.9#fd80849dde5c209c20a996cfcc5aaacd4666dcbe" dependencies = [ "cumulus-primitives-core", "frame-support", @@ -1667,7 +1690,7 @@ dependencies = [ [[package]] name = "cumulus-test-relay-sproof-builder" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.8#ed6ba5dfb2c112c29505e856e8971da3420ce6d0" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.9#fd80849dde5c209c20a996cfcc5aaacd4666dcbe" dependencies = [ "cumulus-primitives-core", "parity-scale-codec", @@ -2004,9 +2027,9 @@ dependencies = [ [[package]] name = "ethereum-types" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f64b5df66a228d85e4b17e5d6c6aa43b0310898ffe8a85988c4c032357aaabfd" +checksum = "0dd6bde671199089e601e8d47e153368b893ef885f11f365a3261ec58153c211" dependencies = [ "ethbloom", "fixed-hash", @@ -2149,7 +2172,7 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] name = "fork-tree" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "parity-scale-codec", ] @@ -2166,8 +2189,8 @@ dependencies = [ [[package]] name = "frame-benchmarking" -version = "3.1.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-support", "frame-system", @@ -2185,13 +2208,16 @@ dependencies = [ [[package]] name = "frame-benchmarking-cli" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "Inflector", "chrono", "frame-benchmarking", + "frame-support", "handlebars", + "linked-hash-map", + "log", "parity-scale-codec", "sc-cli", "sc-client-db", @@ -2208,8 +2234,8 @@ dependencies = [ [[package]] name = "frame-election-provider-support" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-support", "frame-system", @@ -2221,8 +2247,8 @@ dependencies = [ [[package]] name = "frame-executive" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-support", "frame-system", @@ -2236,8 +2262,8 @@ dependencies = [ [[package]] name = "frame-metadata" -version = "13.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "14.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "parity-scale-codec", "serde", @@ -2247,15 +2273,14 @@ dependencies = [ [[package]] name = "frame-support" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "bitflags", "frame-metadata", "frame-support-procedural", "impl-trait-for-tuples", "log", - "max-encoded-len", "once_cell", "parity-scale-codec", "paste", @@ -2274,8 +2299,8 @@ dependencies = [ [[package]] name = "frame-support-procedural" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "Inflector", "frame-support-procedural-tools", @@ -2286,8 +2311,8 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-support-procedural-tools-derive", "proc-macro-crate 1.0.0", @@ -2299,7 +2324,7 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools-derive" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "proc-macro2", "quote", @@ -2308,8 +2333,8 @@ dependencies = [ [[package]] name = "frame-system" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-support", "impl-trait-for-tuples", @@ -2325,8 +2350,8 @@ dependencies = [ [[package]] name = "frame-system-rpc-runtime-api" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "parity-scale-codec", "sp-api", @@ -2334,8 +2359,8 @@ dependencies = [ [[package]] name = "frame-try-runtime" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-support", "parity-scale-codec", @@ -2723,22 +2748,13 @@ dependencies = [ "crunchy", ] -[[package]] -name = "hashbrown" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7afe4a420e3fe79967a00898cc1f4db7c8a49a9333a29f8a4bd76a253d5cd04" -dependencies = [ - "ahash 0.4.7", -] - [[package]] name = "hashbrown" version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e" dependencies = [ - "ahash 0.7.4", + "ahash", ] [[package]] @@ -2765,12 +2781,31 @@ version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" +[[package]] +name = "hex-literal" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "961de220ec9a91af2e1e5bd80d02109155695e516771762381ef8581317066e0" +dependencies = [ + "hex-literal-impl", + "proc-macro-hack", +] + [[package]] name = "hex-literal" version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "21e4590e13640f19f249fe3e4eca5113bc4289f2497710378190e7f4bd96f45b" +[[package]] +name = "hex-literal-impl" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "853f769599eb31de176303197b7ba4973299c38c7a7604a6bc88c3eef05b9b46" +dependencies = [ + "proc-macro-hack", +] + [[package]] name = "hex_fmt" version = "0.3.0" @@ -2865,9 +2900,9 @@ dependencies = [ [[package]] name = "http-body" -version = "0.4.2" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60daa14be0e0786db0f03a9e57cb404c9d756eed2b6c62b9ea98ec5743ec75a9" +checksum = "399c583b2979440c60be0821a6199eca73bc3c8dcd9d070d75ac726e2c6186e5" dependencies = [ "bytes 1.0.1", "http 0.2.4", @@ -2876,9 +2911,9 @@ dependencies = [ [[package]] name = "httparse" -version = "1.4.1" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3a87b616e37e93c22fb19bcd386f02f3af5ea98a25670ad0fce773de23c5e68" +checksum = "acd94fdbe1d4ff688b67b04eee2e17bd50995534a61539e45adfefb45e5e5503" [[package]] name = "httpdate" @@ -2972,12 +3007,12 @@ dependencies = [ "futures-core", "futures-util", "http 0.2.4", - "http-body 0.4.2", + "http-body 0.4.3", "httparse", "httpdate 1.0.1", "itoa", "pin-project-lite 0.2.7", - "tokio 1.9.0", + "tokio 1.10.0", "tower-service", "tracing", "want 0.3.0", @@ -3105,7 +3140,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bc633605454125dec4b66843673f01c7df2b89479b32e0ed634e43a91cff62a5" dependencies = [ "autocfg", - "hashbrown 0.11.2", + "hashbrown", "serde", ] @@ -3196,24 +3231,24 @@ dependencies = [ [[package]] name = "itoa" -version = "0.4.7" +version = "0.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd25036021b0de88a0aff6b850051563c6516d0bf53f8638938edbb9de732736" +checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4" [[package]] name = "jobserver" -version = "0.1.23" +version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5ca711fd837261e14ec9e674f092cbb931d3fa1482b017ae59328ddc6f3212b" +checksum = "af25a77299a7f711a01975c35a6a424eb6862092cc2d6c72c4ed6cbc56dfc1fa" dependencies = [ "libc", ] [[package]] name = "js-sys" -version = "0.3.52" +version = "0.3.53" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce791b7ca6638aae45be056e068fc756d871eb3b3b10b8efa62d1c9cec616752" +checksum = "e4bf49d50e2961077d9c99f4b7997d770a1114f087c3c2e0069b36c13fc2979d" dependencies = [ "wasm-bindgen", ] @@ -3342,11 +3377,12 @@ dependencies = [ [[package]] name = "jsonrpsee-proc-macros" -version = "0.2.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b4c85cfa6767333f3e5f3b2f2f765dad2727b0033ee270ae07c599bf43ed5ae" +checksum = "f37924e16300e249a52a22cabb5632f846dc9760b39355f5e8bc70cd23dc6300" dependencies = [ "Inflector", + "bae", "proc-macro-crate 1.0.0", "proc-macro2", "quote", @@ -3355,9 +3391,9 @@ dependencies = [ [[package]] name = "jsonrpsee-types" -version = "0.2.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0cf7bd4e93b3b56e59131de7f24afbea871faf914e97bcdd942c86927ab0172" +checksum = "d67724d368c59e08b557a516cf8fcc51100e7a708850f502e1044b151fe89788" dependencies = [ "async-trait", "beef", @@ -3367,15 +3403,15 @@ dependencies = [ "log", "serde", "serde_json", - "soketto 0.5.0", + "soketto 0.6.0", "thiserror", ] [[package]] name = "jsonrpsee-ws-client" -version = "0.2.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ec51150965544e1a4468f372bdab8545243a1b045d4ab272023aac74c60de32" +checksum = "8e2834b6e7f57ce9a4412ed4d6dc95125d2c8612e68f86b9d9a07369164e4198" dependencies = [ "async-trait", "fnv", @@ -3387,7 +3423,7 @@ dependencies = [ "rustls-native-certs 0.5.0", "serde", "serde_json", - "soketto 0.5.0", + "soketto 0.6.0", "thiserror", "tokio 0.2.25", "tokio-rustls 0.15.0", @@ -3422,9 +3458,9 @@ dependencies = [ [[package]] name = "kvdb" -version = "0.9.0" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8891bd853eff90e33024195d79d578dc984c82f9e0715fcd2b525a0c19d52811" +checksum = "45a3f58dc069ec0e205a27f5b45920722a46faed802a0541538241af6228f512" dependencies = [ "parity-util-mem", "smallvec 1.6.1", @@ -3432,9 +3468,9 @@ dependencies = [ [[package]] name = "kvdb-memorydb" -version = "0.9.0" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30a0da8e08caf08d384a620ec19bb6c9b85c84137248e202617fb91881f25912" +checksum = "c3b6b85fc643f5acd0bffb2cc8a6d150209379267af0d41db72170021841f9f5" dependencies = [ "kvdb", "parity-util-mem", @@ -3443,9 +3479,9 @@ dependencies = [ [[package]] name = "kvdb-rocksdb" -version = "0.11.1" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94b27cdb788bf1c8ade782289f9dbee626940be2961fd75c7cde993fa2f1ded1" +checksum = "0d169dbb316aa0fa185d02d847c047f1aa20e292cf1563d790c13536a2a732c8" dependencies = [ "fs-swap", "kvdb", @@ -3471,17 +3507,11 @@ version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" -[[package]] -name = "leb128" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3576a87f2ba00f6f106fdfcd16db1d698d648a26ad8e0573cad8537c3c362d2a" - [[package]] name = "libc" -version = "0.2.98" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "320cfe77175da3a483efed4bc0adc1968ca050b098ce4f2f1c13a56626128790" +checksum = "a1fa8cddc8fbbee11227ef194b5317ed014b8acbf15139bd716a18ad3fe99ec5" [[package]] name = "libloading" @@ -3562,7 +3592,7 @@ dependencies = [ "futures 0.3.16", "futures-timer 3.0.2", "lazy_static", - "libsecp256k1", + "libsecp256k1 0.3.5", "log", "multihash", "multistream-select", @@ -3971,6 +4001,52 @@ dependencies = [ "typenum", ] +[[package]] +name = "libsecp256k1" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9d220bc1feda2ac231cb78c3d26f27676b8cf82c96971f7aeef3d0cf2797c73" +dependencies = [ + "arrayref", + "base64 0.12.3", + "digest 0.9.0", + "libsecp256k1-core", + "libsecp256k1-gen-ecmult", + "libsecp256k1-gen-genmult", + "rand 0.7.3", + "serde", + "sha2 0.9.5", +] + +[[package]] +name = "libsecp256k1-core" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0f6ab710cec28cef759c5f18671a27dae2a5f952cdaaee1d8e2908cb2478a80" +dependencies = [ + "crunchy", + "digest 0.9.0", + "subtle 2.4.1", +] + +[[package]] +name = "libsecp256k1-gen-ecmult" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ccab96b584d38fac86a83f07e659f0deafd0253dc096dab5a36d53efe653c5c3" +dependencies = [ + "libsecp256k1-core", +] + +[[package]] +name = "libsecp256k1-gen-genmult" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67abfe149395e3aa1c48a2beb32b068e2334402df8181f818d3aee2b304c4f5d" +dependencies = [ + "libsecp256k1-core", +] + [[package]] name = "libz-sys" version = "1.1.3" @@ -4041,7 +4117,7 @@ version = "0.6.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7ea2d928b485416e8908cff2d97d621db22b27f7b3b6729e438bcf42c671ba91" dependencies = [ - "hashbrown 0.11.2", + "hashbrown", ] [[package]] @@ -4085,9 +4161,9 @@ dependencies = [ [[package]] name = "matches" -version = "0.1.8" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08" +checksum = "a3e378b66a060d48947b590737b30a1be76706c8dd7b8ba0f2fe3989c68a853f" [[package]] name = "matrixmultiply" @@ -4098,28 +4174,6 @@ dependencies = [ "rawpointer", ] -[[package]] -name = "max-encoded-len" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" -dependencies = [ - "impl-trait-for-tuples", - "max-encoded-len-derive", - "parity-scale-codec", - "primitive-types", -] - -[[package]] -name = "max-encoded-len-derive" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" -dependencies = [ - "proc-macro-crate 1.0.0", - "proc-macro2", - "quote", - "syn", -] - [[package]] name = "maybe-uninit" version = "2.0.0" @@ -4128,9 +4182,9 @@ checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00" [[package]] name = "memchr" -version = "2.4.0" +version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b16bd47d9e329435e309c58469fe0791c2d0d1ba96ec0954152a5ae2b04387dc" +checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a" [[package]] name = "memmap2" @@ -4161,12 +4215,12 @@ dependencies = [ [[package]] name = "memory-db" -version = "0.26.0" +version = "0.27.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "814bbecfc0451fc314eeea34f05bbcd5b98a7ad7af37faee088b86a1e633f1d4" +checksum = "de006e09d04fc301a5f7e817b75aa49801c4479a8af753764416b085337ddcc5" dependencies = [ "hash-db", - "hashbrown 0.9.1", + "hashbrown", "parity-util-mem", ] @@ -4199,8 +4253,8 @@ dependencies = [ [[package]] name = "metered-channel" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "derive_more", "futures 0.3.16", @@ -4364,7 +4418,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "424f6e86263cd5294cbd7f1e95746b95aca0e0d66bff31e5a40d6baa87b4aa99" dependencies = [ "proc-macro-crate 1.0.0", - "proc-macro-error", + "proc-macro-error 1.0.4", "proc-macro2", "quote", "syn", @@ -4549,9 +4603,9 @@ dependencies = [ [[package]] name = "object" -version = "0.26.0" +version = "0.26.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c55827317fb4c08822499848a14237d2874d6f139828893017237e7ab93eb386" +checksum = "ee2766204889d09937d00bfbb7fec56bb2a199e2ade963cab19185d8a6104c7c" dependencies = [ "memchr", ] @@ -4603,8 +4657,8 @@ dependencies = [ [[package]] name = "pallet-aura" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-support", "frame-system", @@ -4619,8 +4673,8 @@ dependencies = [ [[package]] name = "pallet-authority-discovery" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-support", "frame-system", @@ -4634,8 +4688,8 @@ dependencies = [ [[package]] name = "pallet-authorship" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-support", "frame-system", @@ -4648,8 +4702,8 @@ dependencies = [ [[package]] name = "pallet-babe" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-benchmarking", "frame-support", @@ -4671,14 +4725,13 @@ dependencies = [ [[package]] name = "pallet-balances" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-benchmarking", "frame-support", "frame-system", "log", - "max-encoded-len", "parity-scale-codec", "sp-runtime", "sp-std", @@ -4687,14 +4740,40 @@ dependencies = [ [[package]] name = "pallet-beefy" version = "0.1.0" -source = "git+https://github.com/paritytech/grandpa-bridge-gadget?branch=polkadot-v0.9.8#55ae3329847e0bbde51c9d45991d99f444777555" +source = "git+https://github.com/paritytech/grandpa-bridge-gadget?branch=polkadot-v0.9.9#f40c0ab7b327e874d5c8d699bfa5d762f1759ee0" +dependencies = [ + "beefy-primitives", + "frame-support", + "frame-system", + "pallet-session", + "parity-scale-codec", + "scale-info", + "serde", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-beefy-mmr" +version = "0.1.0" +source = "git+https://github.com/paritytech/grandpa-bridge-gadget?branch=polkadot-v0.9.9#f40c0ab7b327e874d5c8d699bfa5d762f1759ee0" dependencies = [ + "beefy-merkle-tree", "beefy-primitives", "frame-support", "frame-system", + "hex", + "libsecp256k1 0.6.0", + "log", + "pallet-beefy", + "pallet-mmr", + "pallet-mmr-primitives", "pallet-session", "parity-scale-codec", + "scale-info", "serde", + "sp-core", + "sp-io", "sp-runtime", "sp-std", ] @@ -4710,8 +4789,8 @@ dependencies = [ [[package]] name = "pallet-bounties" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-support", "frame-system", @@ -4724,7 +4803,7 @@ dependencies = [ [[package]] name = "pallet-collator-selection" version = "3.0.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.8#ed6ba5dfb2c112c29505e856e8971da3420ce6d0" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.9#fd80849dde5c209c20a996cfcc5aaacd4666dcbe" dependencies = [ "frame-benchmarking", "frame-support", @@ -4741,8 +4820,8 @@ dependencies = [ [[package]] name = "pallet-collective" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-support", "frame-system", @@ -4755,9 +4834,27 @@ dependencies = [ ] [[package]] -name = "pallet-democracy" +name = "pallet-custom-signatures" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +dependencies = [ + "frame-support", + "frame-system", + "hex-literal 0.2.1", + "libsecp256k1 0.3.5", + "pallet-balances", + "parity-scale-codec", + "serde", + "sp-core", + "sp-io", + "sp-keyring", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-democracy" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-benchmarking", "frame-support", @@ -4771,8 +4868,8 @@ dependencies = [ [[package]] name = "pallet-election-provider-multi-phase" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-election-provider-support", "frame-support", @@ -4790,8 +4887,8 @@ dependencies = [ [[package]] name = "pallet-elections-phragmen" -version = "4.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "5.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-support", "frame-system", @@ -4806,8 +4903,8 @@ dependencies = [ [[package]] name = "pallet-grandpa" -version = "3.1.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-benchmarking", "frame-support", @@ -4828,8 +4925,8 @@ dependencies = [ [[package]] name = "pallet-identity" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "enumflags2", "frame-benchmarking", @@ -4843,8 +4940,8 @@ dependencies = [ [[package]] name = "pallet-im-online" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-support", "frame-system", @@ -4861,8 +4958,8 @@ dependencies = [ [[package]] name = "pallet-indices" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-support", "frame-system", @@ -4876,8 +4973,8 @@ dependencies = [ [[package]] name = "pallet-membership" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-benchmarking", "frame-support", @@ -4891,8 +4988,8 @@ dependencies = [ [[package]] name = "pallet-mmr" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "ckb-merkle-mountain-range", "frame-benchmarking", @@ -4908,8 +5005,8 @@ dependencies = [ [[package]] name = "pallet-mmr-primitives" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-support", "frame-system", @@ -4925,7 +5022,7 @@ dependencies = [ [[package]] name = "pallet-mmr-rpc" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "jsonrpc-core", "jsonrpc-core-client", @@ -4942,8 +5039,8 @@ dependencies = [ [[package]] name = "pallet-multisig" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-support", "frame-system", @@ -4956,8 +5053,8 @@ dependencies = [ [[package]] name = "pallet-nicks" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-support", "frame-system", @@ -4969,8 +5066,8 @@ dependencies = [ [[package]] name = "pallet-offences" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-support", "frame-system", @@ -4985,12 +5082,11 @@ dependencies = [ [[package]] name = "pallet-proxy" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-support", "frame-system", - "max-encoded-len", "parity-scale-codec", "sp-core", "sp-io", @@ -5000,8 +5096,8 @@ dependencies = [ [[package]] name = "pallet-scheduler" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-benchmarking", "frame-support", @@ -5015,8 +5111,8 @@ dependencies = [ [[package]] name = "pallet-session" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-support", "frame-system", @@ -5035,8 +5131,8 @@ dependencies = [ [[package]] name = "pallet-staking" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-election-provider-support", "frame-support", @@ -5057,8 +5153,8 @@ dependencies = [ [[package]] name = "pallet-staking-reward-curve" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "proc-macro-crate 1.0.0", "proc-macro2", @@ -5068,8 +5164,8 @@ dependencies = [ [[package]] name = "pallet-sudo" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-support", "frame-system", @@ -5081,8 +5177,8 @@ dependencies = [ [[package]] name = "pallet-timestamp" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-benchmarking", "frame-support", @@ -5098,8 +5194,8 @@ dependencies = [ [[package]] name = "pallet-tips" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-support", "frame-system", @@ -5112,8 +5208,8 @@ dependencies = [ [[package]] name = "pallet-transaction-payment" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-support", "frame-system", @@ -5128,8 +5224,8 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "jsonrpc-core", "jsonrpc-core-client", @@ -5145,8 +5241,8 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc-runtime-api" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "pallet-transaction-payment", "parity-scale-codec", @@ -5156,8 +5252,8 @@ dependencies = [ [[package]] name = "pallet-treasury" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-support", "frame-system", @@ -5171,8 +5267,8 @@ dependencies = [ [[package]] name = "pallet-utility" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-support", "frame-system", @@ -5185,8 +5281,8 @@ dependencies = [ [[package]] name = "pallet-vesting" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "enumflags2", "frame-support", @@ -5199,7 +5295,7 @@ dependencies = [ [[package]] name = "parachain-info" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.8#ed6ba5dfb2c112c29505e856e8971da3420ce6d0" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.9#fd80849dde5c209c20a996cfcc5aaacd4666dcbe" dependencies = [ "cumulus-primitives-core", "frame-support", @@ -5296,13 +5392,13 @@ dependencies = [ [[package]] name = "parity-util-mem" -version = "0.9.0" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "664a8c6b8e62d8f9f2f937e391982eb433ab285b4cd9545b342441e04a906e42" +checksum = "7ad6f1acec69b95caf435bbd158d486e5a0a44fcf51531e84922c59ff09e8457" dependencies = [ "cfg-if 1.0.0", "ethereum-types", - "hashbrown 0.9.1", + "hashbrown", "impl-trait-for-tuples", "lru", "parity-util-mem-derive", @@ -5432,7 +5528,7 @@ dependencies = [ "cfg-if 1.0.0", "instant", "libc", - "redox_syscall 0.2.9", + "redox_syscall 0.2.10", "smallvec 1.6.1", "winapi 0.3.9", ] @@ -5611,8 +5707,8 @@ checksum = "989d43012e2ca1c4a02507c67282691a0a3207f9dc67cec596b43fe925b3d325" [[package]] name = "polkadot-approval-distribution" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "futures 0.3.16", "polkadot-node-network-protocol", @@ -5625,8 +5721,8 @@ dependencies = [ [[package]] name = "polkadot-availability-bitfield-distribution" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "futures 0.3.16", "polkadot-node-network-protocol", @@ -5638,8 +5734,8 @@ dependencies = [ [[package]] name = "polkadot-availability-distribution" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "futures 0.3.16", "lru", @@ -5661,8 +5757,8 @@ dependencies = [ [[package]] name = "polkadot-availability-recovery" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "futures 0.3.16", "lru", @@ -5680,8 +5776,8 @@ dependencies = [ [[package]] name = "polkadot-cli" -version = "0.9.8" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "frame-benchmarking-cli", "futures 0.3.16", @@ -5700,8 +5796,8 @@ dependencies = [ [[package]] name = "polkadot-client" -version = "0.9.8" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "beefy-primitives", "frame-benchmarking", @@ -5711,6 +5807,7 @@ dependencies = [ "polkadot-primitives", "polkadot-runtime", "sc-client-api", + "sc-consensus", "sc-executor", "sc-service", "sp-api", @@ -5729,8 +5826,8 @@ dependencies = [ [[package]] name = "polkadot-collator-protocol" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "always-assert", "futures 0.3.16", @@ -5749,8 +5846,8 @@ dependencies = [ [[package]] name = "polkadot-core-primitives" -version = "0.9.8" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "parity-scale-codec", "parity-util-mem", @@ -5759,10 +5856,34 @@ dependencies = [ "sp-std", ] +[[package]] +name = "polkadot-dispute-distribution" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" +dependencies = [ + "futures 0.3.16", + "lru", + "parity-scale-codec", + "polkadot-erasure-coding", + "polkadot-node-core-runtime-api", + "polkadot-node-network-protocol", + "polkadot-node-primitives", + "polkadot-node-subsystem", + "polkadot-node-subsystem-util", + "polkadot-primitives", + "rand 0.8.4", + "sc-network", + "sp-application-crypto", + "sp-core", + "sp-keystore", + "thiserror", + "tracing", +] + [[package]] name = "polkadot-erasure-coding" -version = "0.9.8" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "parity-scale-codec", "polkadot-node-primitives", @@ -5775,8 +5896,8 @@ dependencies = [ [[package]] name = "polkadot-gossip-support" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "futures 0.3.16", "polkadot-node-network-protocol", @@ -5793,8 +5914,8 @@ dependencies = [ [[package]] name = "polkadot-network-bridge" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "async-trait", "futures 0.3.16", @@ -5803,8 +5924,8 @@ dependencies = [ "polkadot-node-network-protocol", "polkadot-node-subsystem", "polkadot-node-subsystem-util", + "polkadot-overseer", "polkadot-primitives", - "sc-authority-discovery", "sc-network", "sp-consensus", "strum", @@ -5813,8 +5934,8 @@ dependencies = [ [[package]] name = "polkadot-node-collation-generation" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "futures 0.3.16", "parity-scale-codec", @@ -5831,8 +5952,8 @@ dependencies = [ [[package]] name = "polkadot-node-core-approval-voting" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "bitvec 0.20.4", "derive_more", @@ -5861,8 +5982,8 @@ dependencies = [ [[package]] name = "polkadot-node-core-av-store" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "bitvec 0.20.4", "futures 0.3.16", @@ -5881,8 +6002,8 @@ dependencies = [ [[package]] name = "polkadot-node-core-backing" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "bitvec 0.20.4", "futures 0.3.16", @@ -5899,8 +6020,8 @@ dependencies = [ [[package]] name = "polkadot-node-core-bitfield-signing" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "futures 0.3.16", "polkadot-node-subsystem", @@ -5914,8 +6035,8 @@ dependencies = [ [[package]] name = "polkadot-node-core-candidate-validation" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "async-trait", "futures 0.3.16", @@ -5932,8 +6053,8 @@ dependencies = [ [[package]] name = "polkadot-node-core-chain-api" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "futures 0.3.16", "polkadot-node-subsystem", @@ -5946,15 +6067,63 @@ dependencies = [ ] [[package]] -name = "polkadot-node-core-parachains-inherent" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +name = "polkadot-node-core-chain-selection" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" +dependencies = [ + "futures 0.3.16", + "futures-timer 3.0.2", + "kvdb", + "parity-scale-codec", + "polkadot-node-primitives", + "polkadot-node-subsystem", + "polkadot-node-subsystem-util", + "polkadot-primitives", + "thiserror", + "tracing", +] + +[[package]] +name = "polkadot-node-core-dispute-coordinator" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" +dependencies = [ + "bitvec 0.20.4", + "derive_more", + "futures 0.3.16", + "kvdb", + "parity-scale-codec", + "polkadot-node-primitives", + "polkadot-node-subsystem", + "polkadot-node-subsystem-util", + "polkadot-primitives", + "sc-keystore", + "thiserror", + "tracing", +] + +[[package]] +name = "polkadot-node-core-dispute-participation" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" +dependencies = [ + "futures 0.3.16", + "polkadot-node-primitives", + "polkadot-node-subsystem", + "polkadot-primitives", + "thiserror", + "tracing", +] + +[[package]] +name = "polkadot-node-core-parachains-inherent" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "async-trait", "futures 0.3.16", "futures-timer 3.0.2", "polkadot-node-subsystem", - "polkadot-overseer", "polkadot-primitives", "sp-blockchain", "sp-inherents", @@ -5965,8 +6134,8 @@ dependencies = [ [[package]] name = "polkadot-node-core-provisioner" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "bitvec 0.20.4", "futures 0.3.16", @@ -5980,8 +6149,8 @@ dependencies = [ [[package]] name = "polkadot-node-core-pvf" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "always-assert", "assert_matches", @@ -6003,14 +6172,15 @@ dependencies = [ "sp-externalities", "sp-io", "sp-maybe-compressed-blob", + "sp-tracing", "sp-wasm-interface", "tracing", ] [[package]] name = "polkadot-node-core-runtime-api" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "futures 0.3.16", "memory-lru", @@ -6027,8 +6197,8 @@ dependencies = [ [[package]] name = "polkadot-node-jaeger" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "async-std", "lazy_static", @@ -6043,16 +6213,34 @@ dependencies = [ "thiserror", ] +[[package]] +name = "polkadot-node-metrics" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" +dependencies = [ + "async-trait", + "futures 0.3.16", + "futures-timer 3.0.2", + "metered-channel", + "sc-network", + "sp-application-crypto", + "sp-core", + "sp-keystore", + "substrate-prometheus-endpoint", +] + [[package]] name = "polkadot-node-network-protocol" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ + "async-trait", "futures 0.3.16", "parity-scale-codec", "polkadot-node-jaeger", "polkadot-node-primitives", "polkadot-primitives", + "sc-authority-discovery", "sc-network", "strum", "thiserror", @@ -6060,8 +6248,8 @@ dependencies = [ [[package]] name = "polkadot-node-primitives" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "futures 0.3.16", "parity-scale-codec", @@ -6078,13 +6266,24 @@ dependencies = [ "sp-maybe-compressed-blob", "sp-runtime", "thiserror", + "tracing", "zstd", ] [[package]] name = "polkadot-node-subsystem" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" +dependencies = [ + "polkadot-node-jaeger", + "polkadot-node-subsystem-types", + "polkadot-overseer", +] + +[[package]] +name = "polkadot-node-subsystem-types" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "async-std", "async-trait", @@ -6100,8 +6299,8 @@ dependencies = [ "polkadot-node-jaeger", "polkadot-node-network-protocol", "polkadot-node-primitives", + "polkadot-overseer-gen", "polkadot-primitives", - "polkadot-procmacro-subsystem-dispatch-gen", "polkadot-statement-table", "sc-network", "smallvec 1.6.1", @@ -6113,8 +6312,8 @@ dependencies = [ [[package]] name = "polkadot-node-subsystem-util" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "async-trait", "futures 0.3.16", @@ -6125,9 +6324,11 @@ dependencies = [ "parity-scale-codec", "pin-project 1.0.8", "polkadot-node-jaeger", + "polkadot-node-metrics", "polkadot-node-network-protocol", "polkadot-node-primitives", "polkadot-node-subsystem", + "polkadot-overseer", "polkadot-primitives", "rand 0.8.4", "sc-network", @@ -6141,29 +6342,72 @@ dependencies = [ [[package]] name = "polkadot-overseer" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "async-trait", "futures 0.3.16", "futures-timer 3.0.2", "lru", + "parking_lot 0.11.1", + "polkadot-node-metrics", + "polkadot-node-network-protocol", "polkadot-node-primitives", - "polkadot-node-subsystem", - "polkadot-node-subsystem-util", + "polkadot-node-subsystem-types", + "polkadot-overseer-all-subsystems-gen", + "polkadot-overseer-gen", "polkadot-primitives", - "polkadot-procmacro-overseer-subsystems-gen", "sc-client-api", "sp-api", "tracing", ] +[[package]] +name = "polkadot-overseer-all-subsystems-gen" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" +dependencies = [ + "assert_matches", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "polkadot-overseer-gen" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" +dependencies = [ + "async-trait", + "futures 0.3.16", + "futures-timer 3.0.2", + "metered-channel", + "pin-project 1.0.8", + "polkadot-node-network-protocol", + "polkadot-node-primitives", + "polkadot-overseer-gen-proc-macro", + "thiserror", + "tracing", +] + +[[package]] +name = "polkadot-overseer-gen-proc-macro" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" +dependencies = [ + "proc-macro-crate 1.0.0", + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "polkadot-parachain" -version = "0.9.8" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "derive_more", + "frame-support", "parity-scale-codec", "parity-util-mem", "polkadot-core-primitives", @@ -6175,12 +6419,12 @@ dependencies = [ [[package]] name = "polkadot-primitives" -version = "0.9.8" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "bitvec 0.20.4", "frame-system", - "hex-literal", + "hex-literal 0.3.3", "parity-scale-codec", "parity-util-mem", "polkadot-core-primitives", @@ -6203,32 +6447,10 @@ dependencies = [ "thiserror", ] -[[package]] -name = "polkadot-procmacro-overseer-subsystems-gen" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" -dependencies = [ - "assert_matches", - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "polkadot-procmacro-subsystem-dispatch-gen" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" -dependencies = [ - "assert_matches", - "proc-macro2", - "quote", - "syn", -] - [[package]] name = "polkadot-rpc" -version = "0.9.8" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "beefy-gadget", "beefy-gadget-rpc", @@ -6247,6 +6469,7 @@ dependencies = [ "sc-keystore", "sc-rpc", "sc-sync-state-rpc", + "sc-transaction-pool-api", "sp-api", "sp-block-builder", "sp-blockchain", @@ -6254,14 +6477,13 @@ dependencies = [ "sp-consensus-babe", "sp-keystore", "sp-runtime", - "sp-transaction-pool", "substrate-frame-rpc-system", ] [[package]] name = "polkadot-runtime" -version = "0.9.8" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "beefy-primitives", "bitvec 0.20.4", @@ -6272,7 +6494,6 @@ dependencies = [ "frame-system-rpc-runtime-api", "frame-try-runtime", "log", - "max-encoded-len", "pallet-authority-discovery", "pallet-authorship", "pallet-babe", @@ -6331,21 +6552,19 @@ dependencies = [ [[package]] name = "polkadot-runtime-common" -version = "0.9.8" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ - "beefy-primitives", "bitvec 0.20.4", "frame-support", "frame-system", "impl-trait-for-tuples", - "libsecp256k1", + "libsecp256k1 0.6.0", "log", "pallet-authorship", "pallet-balances", - "pallet-beefy", + "pallet-beefy-mmr", "pallet-election-provider-multi-phase", - "pallet-mmr", "pallet-offences", "pallet-session", "pallet-staking", @@ -6374,9 +6593,10 @@ dependencies = [ [[package]] name = "polkadot-runtime-parachains" -version = "0.9.8" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ + "bitflags", "bitvec 0.20.4", "derive_more", "frame-support", @@ -6411,15 +6631,15 @@ dependencies = [ [[package]] name = "polkadot-service" -version = "0.9.8" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "async-trait", "beefy-gadget", "beefy-primitives", "frame-system-rpc-runtime-api", "futures 0.3.16", - "hex-literal", + "hex-literal 0.3.3", "kvdb", "kvdb-rocksdb", "pallet-babe", @@ -6433,6 +6653,7 @@ dependencies = [ "polkadot-availability-recovery", "polkadot-client", "polkadot-collator-protocol", + "polkadot-dispute-distribution", "polkadot-gossip-support", "polkadot-network-bridge", "polkadot-node-collation-generation", @@ -6442,6 +6663,9 @@ dependencies = [ "polkadot-node-core-bitfield-signing", "polkadot-node-core-candidate-validation", "polkadot-node-core-chain-api", + "polkadot-node-core-chain-selection", + "polkadot-node-core-dispute-coordinator", + "polkadot-node-core-dispute-participation", "polkadot-node-core-parachains-inherent", "polkadot-node-core-provisioner", "polkadot-node-core-runtime-api", @@ -6467,10 +6691,10 @@ dependencies = [ "sc-consensus-uncles", "sc-executor", "sc-finality-grandpa", - "sc-finality-grandpa-warp-sync", "sc-keystore", "sc-network", "sc-service", + "sc-sync-state-rpc", "sc-telemetry", "sc-transaction-pool", "serde", @@ -6500,8 +6724,8 @@ dependencies = [ [[package]] name = "polkadot-statement-distribution" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "arrayvec 0.5.2", "futures 0.3.16", @@ -6521,8 +6745,8 @@ dependencies = [ [[package]] name = "polkadot-statement-table" -version = "0.9.8" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "parity-scale-codec", "polkadot-primitives", @@ -6571,9 +6795,9 @@ checksum = "ac74c624d6b2d21f425f752262f42188365d7b8ff1aff74c82e45136510a4857" [[package]] name = "primitive-types" -version = "0.9.1" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06345ee39fbccfb06ab45f3a1a5798d9dafa04cb8921a76d227040003a234b0e" +checksum = "05e4722c697a58a99d5d06a08c30821d7c082a4632198de1eaa5a6c22ef42373" dependencies = [ "fixed-hash", "impl-codec", @@ -6601,19 +6825,45 @@ dependencies = [ "toml", ] +[[package]] +name = "proc-macro-error" +version = "0.4.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "18f33027081eba0a6d8aba6d1b1c3a3be58cbb12106341c2d5759fcd9b5277e7" +dependencies = [ + "proc-macro-error-attr 0.4.12", + "proc-macro2", + "quote", + "syn", + "version_check", +] + [[package]] name = "proc-macro-error" version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" dependencies = [ - "proc-macro-error-attr", + "proc-macro-error-attr 1.0.4", "proc-macro2", "quote", "syn", "version_check", ] +[[package]] +name = "proc-macro-error-attr" +version = "0.4.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a5b4b77fdb63c1eca72173d68d24501c54ab1269409f6b672c85deb18af69de" +dependencies = [ + "proc-macro2", + "quote", + "syn", + "syn-mid", + "version_check", +] + [[package]] name = "proc-macro-error-attr" version = "1.0.4" @@ -6713,9 +6963,9 @@ dependencies = [ [[package]] name = "psm" -version = "0.1.14" +version = "0.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14ce37fa8c0428a37307d163292add09b3aedc003472e6b3622486878404191d" +checksum = "0617ee61163b5d941d804065ce49040967610a4d4278fae73e096a057b01d358" dependencies = [ "cc", ] @@ -6962,9 +7212,9 @@ checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce" [[package]] name = "redox_syscall" -version = "0.2.9" +version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ab49abadf3f9e1c4bc499e8845e152ad87d2ad2d30371841171169e9d75feee" +checksum = "8383f39639269cde97d255a32bdb68c047337295414940c68bdd30c2e13203ff" dependencies = [ "bitflags", ] @@ -6976,7 +7226,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "528532f3d801c87aec9def2add9ca802fe569e44a544afe633765267840abe64" dependencies = [ "getrandom 0.2.3", - "redox_syscall 0.2.9", + "redox_syscall 0.2.10", ] [[package]] @@ -7064,8 +7314,8 @@ dependencies = [ [[package]] name = "remote-externalities" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "env_logger 0.8.4", "hex", @@ -7132,9 +7382,9 @@ dependencies = [ [[package]] name = "rocksdb" -version = "0.16.0" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c749134fda8bfc90d0de643d59bfc841dcb3ac8a1062e12b6754bd60235c48b3" +checksum = "7a62eca5cacf2c8261128631bed9f045598d40bfbe4b29f5163f0f802f8f44a7" dependencies = [ "libc", "librocksdb-sys", @@ -7292,20 +7542,19 @@ dependencies = [ [[package]] name = "sc-allocator" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "log", "sp-core", - "sp-std", "sp-wasm-interface", "thiserror", ] [[package]] name = "sc-authority-discovery" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "async-trait", "derive_more", @@ -7333,8 +7582,8 @@ dependencies = [ [[package]] name = "sc-basic-authorship" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "futures 0.3.16", "futures-timer 3.0.2", @@ -7344,20 +7593,20 @@ dependencies = [ "sc-client-api", "sc-proposer-metrics", "sc-telemetry", + "sc-transaction-pool-api", "sp-api", "sp-blockchain", "sp-consensus", "sp-core", "sp-inherents", "sp-runtime", - "sp-transaction-pool", "substrate-prometheus-endpoint", ] [[package]] name = "sc-block-builder" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "parity-scale-codec", "sc-client-api", @@ -7372,28 +7621,24 @@ dependencies = [ [[package]] name = "sc-chain-spec" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "impl-trait-for-tuples", "parity-scale-codec", "sc-chain-spec-derive", - "sc-consensus-babe", - "sc-consensus-epochs", - "sc-finality-grandpa", "sc-network", "sc-telemetry", "serde", "serde_json", - "sp-consensus-babe", "sp-core", "sp-runtime", ] [[package]] name = "sc-chain-spec-derive" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "proc-macro-crate 1.0.0", "proc-macro2", @@ -7403,8 +7648,8 @@ dependencies = [ [[package]] name = "sc-cli" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "chrono", "fdlimit", @@ -7441,8 +7686,8 @@ dependencies = [ [[package]] name = "sc-client-api" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "derive_more", "fnv", @@ -7454,6 +7699,7 @@ dependencies = [ "parity-scale-codec", "parking_lot 0.11.1", "sc-executor", + "sc-transaction-pool-api", "sp-api", "sp-blockchain", "sp-consensus", @@ -7466,7 +7712,6 @@ dependencies = [ "sp-state-machine", "sp-std", "sp-storage", - "sp-transaction-pool", "sp-trie", "sp-utils", "sp-version", @@ -7475,8 +7720,8 @@ dependencies = [ [[package]] name = "sc-client-db" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "blake2-rfc", "hash-db", @@ -7494,7 +7739,6 @@ dependencies = [ "sc-state-db", "sp-arithmetic", "sp-blockchain", - "sp-consensus", "sp-core", "sp-database", "sp-runtime", @@ -7505,21 +7749,33 @@ dependencies = [ [[package]] name = "sc-consensus" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "async-trait", + "futures 0.3.16", + "futures-timer 3.0.2", + "libp2p", + "log", "parking_lot 0.11.1", "sc-client-api", + "serde", + "sp-api", "sp-blockchain", "sp-consensus", + "sp-core", "sp-runtime", + "sp-state-machine", + "sp-utils", + "substrate-prometheus-endpoint", + "thiserror", + "wasm-timer", ] [[package]] name = "sc-consensus-aura" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "async-trait", "derive_more", @@ -7529,6 +7785,7 @@ dependencies = [ "parity-scale-codec", "sc-block-builder", "sc-client-api", + "sc-consensus", "sc-consensus-slots", "sc-telemetry", "sp-api", @@ -7549,8 +7806,8 @@ dependencies = [ [[package]] name = "sc-consensus-babe" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "async-trait", "derive_more", @@ -7568,6 +7825,7 @@ dependencies = [ "rand 0.7.3", "retain_mut", "sc-client-api", + "sc-consensus", "sc-consensus-epochs", "sc-consensus-slots", "sc-consensus-uncles", @@ -7595,8 +7853,8 @@ dependencies = [ [[package]] name = "sc-consensus-babe-rpc" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "derive_more", "futures 0.3.16", @@ -7619,8 +7877,8 @@ dependencies = [ [[package]] name = "sc-consensus-epochs" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "fork-tree", "parity-scale-codec", @@ -7632,8 +7890,8 @@ dependencies = [ [[package]] name = "sc-consensus-slots" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "async-trait", "futures 0.3.16", @@ -7642,6 +7900,7 @@ dependencies = [ "log", "parity-scale-codec", "sc-client-api", + "sc-consensus", "sc-telemetry", "sp-api", "sp-application-crypto", @@ -7660,8 +7919,8 @@ dependencies = [ [[package]] name = "sc-consensus-uncles" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "sc-client-api", "sp-authorship", @@ -7671,12 +7930,12 @@ dependencies = [ [[package]] name = "sc-executor" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "derive_more", "lazy_static", - "libsecp256k1", + "libsecp256k1 0.3.5", "log", "parity-scale-codec", "parity-wasm 0.42.2", @@ -7700,8 +7959,8 @@ dependencies = [ [[package]] name = "sc-executor-common" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "derive_more", "parity-scale-codec", @@ -7717,8 +7976,8 @@ dependencies = [ [[package]] name = "sc-executor-wasmi" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "log", "parity-scale-codec", @@ -7732,14 +7991,15 @@ dependencies = [ [[package]] name = "sc-executor-wasmtime" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "cfg-if 1.0.0", "libc", "log", "parity-scale-codec", "parity-wasm 0.42.2", + "pwasm-utils", "sc-allocator", "sc-executor-common", "scoped-tls", @@ -7751,8 +8011,8 @@ dependencies = [ [[package]] name = "sc-finality-grandpa" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "async-trait", "derive_more", @@ -7766,7 +8026,7 @@ dependencies = [ "parity-scale-codec", "parking_lot 0.11.1", "pin-project 1.0.8", - "rand 0.7.3", + "rand 0.8.4", "sc-block-builder", "sc-client-api", "sc-consensus", @@ -7792,8 +8052,8 @@ dependencies = [ [[package]] name = "sc-finality-grandpa-rpc" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "derive_more", "finality-grandpa", @@ -7814,31 +8074,10 @@ dependencies = [ "sp-runtime", ] -[[package]] -name = "sc-finality-grandpa-warp-sync" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" -dependencies = [ - "derive_more", - "futures 0.3.16", - "log", - "num-traits", - "parity-scale-codec", - "parking_lot 0.11.1", - "prost", - "sc-client-api", - "sc-finality-grandpa", - "sc-network", - "sc-service", - "sp-blockchain", - "sp-finality-grandpa", - "sp-runtime", -] - [[package]] name = "sc-informant" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "ansi_term 0.12.1", "futures 0.3.16", @@ -7847,16 +8086,16 @@ dependencies = [ "parity-util-mem", "sc-client-api", "sc-network", + "sc-transaction-pool-api", "sp-blockchain", "sp-runtime", - "sp-transaction-pool", "wasm-timer", ] [[package]] name = "sc-keystore" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "async-trait", "derive_more", @@ -7875,8 +8114,8 @@ dependencies = [ [[package]] name = "sc-light" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "hash-db", "lazy_static", @@ -7894,8 +8133,8 @@ dependencies = [ [[package]] name = "sc-network" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "async-std", "async-trait", @@ -7927,6 +8166,7 @@ dependencies = [ "rand 0.7.3", "sc-block-builder", "sc-client-api", + "sc-consensus", "sc-peerset", "serde", "serde_json", @@ -7935,6 +8175,7 @@ dependencies = [ "sp-blockchain", "sp-consensus", "sp-core", + "sp-finality-grandpa", "sp-runtime", "sp-utils", "substrate-prometheus-endpoint", @@ -7947,8 +8188,8 @@ dependencies = [ [[package]] name = "sc-network-gossip" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "futures 0.3.16", "futures-timer 3.0.2", @@ -7964,8 +8205,8 @@ dependencies = [ [[package]] name = "sc-offchain" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "bytes 0.5.6", "fnv", @@ -7992,8 +8233,8 @@ dependencies = [ [[package]] name = "sc-peerset" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "futures 0.3.16", "libp2p", @@ -8006,7 +8247,7 @@ dependencies = [ [[package]] name = "sc-proposer-metrics" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "log", "substrate-prometheus-endpoint", @@ -8014,8 +8255,8 @@ dependencies = [ [[package]] name = "sc-rpc" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "futures 0.3.16", "hash-db", @@ -8031,6 +8272,7 @@ dependencies = [ "sc-keystore", "sc-rpc-api", "sc-tracing", + "sc-transaction-pool-api", "serde_json", "sp-api", "sp-blockchain", @@ -8042,15 +8284,14 @@ dependencies = [ "sp-session", "sp-state-machine", "sp-tracing", - "sp-transaction-pool", "sp-utils", "sp-version", ] [[package]] name = "sc-rpc-api" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "derive_more", "futures 0.3.16", @@ -8062,20 +8303,20 @@ dependencies = [ "parity-scale-codec", "parking_lot 0.11.1", "sc-chain-spec", + "sc-transaction-pool-api", "serde", "serde_json", "sp-core", "sp-rpc", "sp-runtime", "sp-tracing", - "sp-transaction-pool", "sp-version", ] [[package]] name = "sc-rpc-server" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "futures 0.1.31", "jsonrpc-core", @@ -8092,8 +8333,8 @@ dependencies = [ [[package]] name = "sc-service" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "async-trait", "directories", @@ -8115,6 +8356,7 @@ dependencies = [ "sc-chain-spec", "sc-client-api", "sc-client-db", + "sc-consensus", "sc-executor", "sc-informant", "sc-keystore", @@ -8126,6 +8368,7 @@ dependencies = [ "sc-telemetry", "sc-tracing", "sc-transaction-pool", + "sc-transaction-pool-api", "serde", "serde_json", "sp-api", @@ -8158,8 +8401,8 @@ dependencies = [ [[package]] name = "sc-state-db" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "log", "parity-scale-codec", @@ -8173,18 +8416,20 @@ dependencies = [ [[package]] name = "sc-sync-state-rpc" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "jsonrpc-core", "jsonrpc-core-client", "jsonrpc-derive", + "parity-scale-codec", "sc-chain-spec", "sc-client-api", "sc-consensus-babe", "sc-consensus-epochs", "sc-finality-grandpa", "sc-rpc-api", + "serde", "serde_json", "sp-blockchain", "sp-runtime", @@ -8193,8 +8438,8 @@ dependencies = [ [[package]] name = "sc-telemetry" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "chrono", "futures 0.3.16", @@ -8213,8 +8458,8 @@ dependencies = [ [[package]] name = "sc-tracing" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "ansi_term 0.12.1", "atty", @@ -8250,8 +8495,8 @@ dependencies = [ [[package]] name = "sc-tracing-proc-macro" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "proc-macro-crate 1.0.0", "proc-macro2", @@ -8260,50 +8505,47 @@ dependencies = [ ] [[package]] -name = "sc-transaction-graph" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +name = "sc-transaction-pool" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "derive_more", "futures 0.3.16", + "intervalier", "linked-hash-map", "log", + "parity-scale-codec", "parity-util-mem", "parking_lot 0.11.1", "retain_mut", + "sc-client-api", + "sc-transaction-pool-api", "serde", + "sp-api", "sp-blockchain", "sp-core", "sp-runtime", + "sp-tracing", "sp-transaction-pool", "sp-utils", + "substrate-prometheus-endpoint", "thiserror", "wasm-timer", ] [[package]] -name = "sc-transaction-pool" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +name = "sc-transaction-pool-api" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ + "derive_more", "futures 0.3.16", - "intervalier", "log", "parity-scale-codec", - "parity-util-mem", - "parking_lot 0.11.1", - "sc-client-api", - "sc-transaction-graph", - "sp-api", + "serde", "sp-blockchain", - "sp-core", "sp-runtime", - "sp-tracing", - "sp-transaction-pool", - "sp-utils", - "substrate-prometheus-endpoint", "thiserror", - "wasm-timer", ] [[package]] @@ -8371,26 +8613,6 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" -[[package]] -name = "scroll" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fda28d4b4830b807a8b43f7b0e6b5df875311b3e7621d84577188c175b6ec1ec" -dependencies = [ - "scroll_derive", -] - -[[package]] -name = "scroll_derive" -version = "0.10.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aaaae8f38bb311444cfb7f1979af0bc9240d95795f75f9ceddf6a59b79ceffa0" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - [[package]] name = "sct" version = "0.6.1" @@ -8507,18 +8729,18 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.127" +version = "1.0.128" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f03b9878abf6d14e6779d3f24f07b2cfa90352cfec4acc5aab8f1ac7f146fae8" +checksum = "1056a0db1978e9dbf0f6e4fca677f6f9143dc1c19de346f22cac23e422196834" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.127" +version = "1.0.128" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a024926d3432516606328597e0f224a51355a493b49fdd67e9209187cbe55ecc" +checksum = "13af2fbb8b60a8950d6c72a56d2095c28870367cc8e10c55e9745bac4995a2c4" dependencies = [ "proc-macro2", "quote", @@ -8609,7 +8831,7 @@ dependencies = [ [[package]] name = "shiden-runtime" -version = "2.3.0" +version = "2.4.0" dependencies = [ "cumulus-pallet-aura-ext", "cumulus-pallet-parachain-system", @@ -8626,7 +8848,9 @@ dependencies = [ "pallet-balances", "pallet-block-reward", "pallet-collator-selection", + "pallet-custom-signatures", "pallet-identity", + "pallet-multisig", "pallet-session", "pallet-sudo", "pallet-timestamp", @@ -8637,6 +8861,7 @@ dependencies = [ "parachain-info", "parity-scale-codec", "polkadot-parachain", + "polkadot-runtime-common", "serde", "smallvec 1.6.1", "sp-api", @@ -8703,9 +8928,9 @@ dependencies = [ [[package]] name = "slab" -version = "0.4.3" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f173ac3d1a7e3b28003f40de0b5ce7fe2710f9b9dc3fc38664cebee46b3b6527" +checksum = "c307a32c1c5c437f38c7fd45d753050587732ba8628319fbdf12a7e289ccc590" [[package]] name = "slog" @@ -8718,8 +8943,8 @@ dependencies = [ [[package]] name = "slot-range-helper" -version = "0.9.8" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "enumn", "parity-scale-codec", @@ -8809,9 +9034,9 @@ dependencies = [ [[package]] name = "soketto" -version = "0.5.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4919971d141dbadaa0e82b5d369e2d7666c98e4625046140615ca363e50d4daa" +checksum = "a74e48087dbeed4833785c2f3352b59140095dc192dce966a3bfc155020a439f" dependencies = [ "base64 0.13.0", "bytes 1.0.1", @@ -8824,8 +9049,8 @@ dependencies = [ [[package]] name = "sp-api" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "hash-db", "log", @@ -8841,8 +9066,8 @@ dependencies = [ [[package]] name = "sp-api-proc-macro" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "blake2-rfc", "proc-macro-crate 1.0.0", @@ -8853,10 +9078,9 @@ dependencies = [ [[package]] name = "sp-application-crypto" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ - "max-encoded-len", "parity-scale-codec", "serde", "sp-core", @@ -8866,8 +9090,8 @@ dependencies = [ [[package]] name = "sp-arithmetic" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "integer-sqrt", "num-traits", @@ -8880,8 +9104,8 @@ dependencies = [ [[package]] name = "sp-authority-discovery" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "parity-scale-codec", "sp-api", @@ -8892,8 +9116,8 @@ dependencies = [ [[package]] name = "sp-authorship" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "async-trait", "parity-scale-codec", @@ -8904,8 +9128,8 @@ dependencies = [ [[package]] name = "sp-block-builder" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "parity-scale-codec", "sp-api", @@ -8916,8 +9140,8 @@ dependencies = [ [[package]] name = "sp-blockchain" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "futures 0.3.16", "log", @@ -8934,13 +9158,12 @@ dependencies = [ [[package]] name = "sp-consensus" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "async-trait", "futures 0.3.16", "futures-timer 3.0.2", - "libp2p", "log", "parity-scale-codec", "parking_lot 0.11.1", @@ -8961,8 +9184,8 @@ dependencies = [ [[package]] name = "sp-consensus-aura" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "async-trait", "parity-scale-codec", @@ -8978,8 +9201,8 @@ dependencies = [ [[package]] name = "sp-consensus-babe" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "async-trait", "merlin", @@ -9000,8 +9223,8 @@ dependencies = [ [[package]] name = "sp-consensus-slots" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "parity-scale-codec", "sp-arithmetic", @@ -9010,8 +9233,8 @@ dependencies = [ [[package]] name = "sp-consensus-vrf" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "parity-scale-codec", "schnorrkel", @@ -9022,8 +9245,8 @@ dependencies = [ [[package]] name = "sp-core" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "base58", "blake2-rfc", @@ -9036,9 +9259,8 @@ dependencies = [ "hex", "impl-serde", "lazy_static", - "libsecp256k1", + "libsecp256k1 0.3.5", "log", - "max-encoded-len", "merlin", "num-traits", "parity-scale-codec", @@ -9067,8 +9289,8 @@ dependencies = [ [[package]] name = "sp-database" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "kvdb", "parking_lot 0.11.1", @@ -9077,7 +9299,7 @@ dependencies = [ [[package]] name = "sp-debug-derive" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "proc-macro2", "quote", @@ -9086,8 +9308,8 @@ dependencies = [ [[package]] name = "sp-externalities" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "environmental", "parity-scale-codec", @@ -9097,8 +9319,8 @@ dependencies = [ [[package]] name = "sp-finality-grandpa" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "finality-grandpa", "log", @@ -9114,8 +9336,8 @@ dependencies = [ [[package]] name = "sp-inherents" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "async-trait", "impl-trait-for-tuples", @@ -9128,12 +9350,12 @@ dependencies = [ [[package]] name = "sp-io" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "futures 0.3.16", "hash-db", - "libsecp256k1", + "libsecp256k1 0.3.5", "log", "parity-scale-codec", "parking_lot 0.11.1", @@ -9153,8 +9375,8 @@ dependencies = [ [[package]] name = "sp-keyring" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "lazy_static", "sp-core", @@ -9164,8 +9386,8 @@ dependencies = [ [[package]] name = "sp-keystore" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "async-trait", "derive_more", @@ -9181,8 +9403,8 @@ dependencies = [ [[package]] name = "sp-maybe-compressed-blob" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "ruzstd", "zstd", @@ -9190,8 +9412,8 @@ dependencies = [ [[package]] name = "sp-npos-elections" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "parity-scale-codec", "serde", @@ -9203,8 +9425,8 @@ dependencies = [ [[package]] name = "sp-npos-elections-compact" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "proc-macro-crate 1.0.0", "proc-macro2", @@ -9214,8 +9436,8 @@ dependencies = [ [[package]] name = "sp-offchain" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "sp-api", "sp-core", @@ -9225,15 +9447,15 @@ dependencies = [ [[package]] name = "sp-panic-handler" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "backtrace", ] [[package]] name = "sp-rpc" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "rustc-hash", "serde", @@ -9243,14 +9465,13 @@ dependencies = [ [[package]] name = "sp-runtime" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "either", "hash256-std-hasher", "impl-trait-for-tuples", "log", - "max-encoded-len", "parity-scale-codec", "parity-util-mem", "paste", @@ -9265,8 +9486,8 @@ dependencies = [ [[package]] name = "sp-runtime-interface" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "impl-trait-for-tuples", "parity-scale-codec", @@ -9282,8 +9503,8 @@ dependencies = [ [[package]] name = "sp-runtime-interface-proc-macro" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "Inflector", "proc-macro-crate 1.0.0", @@ -9295,7 +9516,7 @@ dependencies = [ [[package]] name = "sp-serializer" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "serde", "serde_json", @@ -9303,8 +9524,8 @@ dependencies = [ [[package]] name = "sp-session" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "parity-scale-codec", "sp-api", @@ -9316,8 +9537,8 @@ dependencies = [ [[package]] name = "sp-staking" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "parity-scale-codec", "sp-runtime", @@ -9326,8 +9547,8 @@ dependencies = [ [[package]] name = "sp-state-machine" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "hash-db", "log", @@ -9349,13 +9570,13 @@ dependencies = [ [[package]] name = "sp-std" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" [[package]] name = "sp-storage" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "impl-serde", "parity-scale-codec", @@ -9367,8 +9588,8 @@ dependencies = [ [[package]] name = "sp-tasks" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "log", "sp-core", @@ -9380,8 +9601,8 @@ dependencies = [ [[package]] name = "sp-timestamp" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "async-trait", "futures-timer 3.0.2", @@ -9397,8 +9618,8 @@ dependencies = [ [[package]] name = "sp-tracing" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "erased-serde", "log", @@ -9415,24 +9636,17 @@ dependencies = [ [[package]] name = "sp-transaction-pool" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ - "derive_more", - "futures 0.3.16", - "log", - "parity-scale-codec", - "serde", "sp-api", - "sp-blockchain", "sp-runtime", - "thiserror", ] [[package]] name = "sp-transaction-storage-proof" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "async-trait", "log", @@ -9446,8 +9660,8 @@ dependencies = [ [[package]] name = "sp-trie" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "hash-db", "memory-db", @@ -9460,8 +9674,8 @@ dependencies = [ [[package]] name = "sp-utils" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "futures 0.3.16", "futures-core", @@ -9472,21 +9686,23 @@ dependencies = [ [[package]] name = "sp-version" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "impl-serde", "parity-scale-codec", + "parity-wasm 0.42.2", "serde", "sp-runtime", "sp-std", "sp-version-proc-macro", + "thiserror", ] [[package]] name = "sp-version-proc-macro" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "parity-scale-codec", "proc-macro-crate 1.0.0", @@ -9497,8 +9713,8 @@ dependencies = [ [[package]] name = "sp-wasm-interface" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "impl-trait-for-tuples", "parity-scale-codec", @@ -9605,7 +9821,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7813934aecf5f51a54775e00068c237de98489463968231a51746bbbc03f9c10" dependencies = [ "heck", - "proc-macro-error", + "proc-macro-error 1.0.4", "proc-macro2", "quote", "syn", @@ -9648,15 +9864,15 @@ dependencies = [ [[package]] name = "substrate-build-script-utils" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "platforms", ] [[package]] name = "substrate-frame-rpc-system" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-system-rpc-runtime-api", "futures 0.3.16", @@ -9667,19 +9883,19 @@ dependencies = [ "parity-scale-codec", "sc-client-api", "sc-rpc-api", + "sc-transaction-pool-api", "serde", "sp-api", "sp-block-builder", "sp-blockchain", "sp-core", "sp-runtime", - "sp-transaction-pool", ] [[package]] name = "substrate-prometheus-endpoint" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "async-std", "derive_more", @@ -9692,8 +9908,8 @@ dependencies = [ [[package]] name = "substrate-wasm-builder" -version = "4.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "5.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "ansi_term 0.12.1", "atty", @@ -9720,15 +9936,26 @@ checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601" [[package]] name = "syn" -version = "1.0.74" +version = "1.0.75" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1873d832550d4588c3dbc20f01361ab00bfe741048f71e3fecf145a7cc18b29c" +checksum = "b7f58f7e8eaa0009c5fec437aabf511bd9933e4b2d7407bd05273c01a8906ea7" dependencies = [ "proc-macro2", "quote", "unicode-xid", ] +[[package]] +name = "syn-mid" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baa8e7560a164edb1621a55d18a0c59abf49d360f47aa7b821061dd7eea7fac9" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "synstructure" version = "0.12.5" @@ -9755,9 +9982,9 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] name = "target-lexicon" -version = "0.12.1" +version = "0.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0652da4c4121005e9ed22b79f6c5f2d9e2752906b53a33e9490489ba421a6fb" +checksum = "d9bffcddbc2458fa3e6058414599e3c838a022abae82e5c67b4f7f80298d5bff" [[package]] name = "tempfile" @@ -9768,7 +9995,7 @@ dependencies = [ "cfg-if 1.0.0", "libc", "rand 0.8.4", - "redox_syscall 0.2.9", + "redox_syscall 0.2.10", "remove_dir_all", "winapi 0.3.9", ] @@ -9938,14 +10165,15 @@ dependencies = [ "pin-project-lite 0.1.12", "signal-hook-registry", "slab", + "tokio-macros", "winapi 0.3.9", ] [[package]] name = "tokio" -version = "1.9.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b7b349f11a7047e6d1276853e612d152f5e8a352c61917887cc2169e2366b4c" +checksum = "01cf844b23c6131f624accf65ce0e4e9956a8bb329400ea5bcc26ae3a5c20b0b" dependencies = [ "autocfg", "pin-project-lite 0.2.7", @@ -10015,6 +10243,17 @@ dependencies = [ "log", ] +[[package]] +name = "tokio-macros" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e44da00bfc73a25f814cd8d7e57a68a5c31b74b3152a0a1d1f590c97ed06265a" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "tokio-named-pipes" version = "0.1.0" @@ -10222,9 +10461,9 @@ dependencies = [ [[package]] name = "tracing-core" -version = "0.1.18" +version = "0.1.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9ff14f98b1a4b289c6248a023c1c2fa1491062964e9fed67ab29c4e4da4a052" +checksum = "2ca517f43f0fb96e0c3072ed5c275fe5eece87e8cb52f4a77b69226d3b1c9df8" dependencies = [ "lazy_static", ] @@ -10262,9 +10501,9 @@ dependencies = [ [[package]] name = "tracing-subscriber" -version = "0.2.19" +version = "0.2.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab69019741fca4d98be3c62d2b75254528b5432233fd8a4d2739fec20278de48" +checksum = "b9cbe87a2fa7e35900ce5de20220a582a9483a7063811defce79d7cbd59d4cfe" dependencies = [ "ansi_term 0.12.1", "chrono", @@ -10289,7 +10528,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9eac131e334e81b6b3be07399482042838adcd7957aa0010231d0813e39e02fa" dependencies = [ "hash-db", - "hashbrown 0.11.2", + "hashbrown", "log", "rustc-hex", "smallvec 1.6.1", @@ -10355,8 +10594,8 @@ checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642" [[package]] name = "try-runtime-cli" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.8#74101dc21cfffb4c2d014fcc28edc166d5ca1b16" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.9#91061a7d925b5bc597804293da283477512ba4ff" dependencies = [ "frame-try-runtime", "log", @@ -10372,7 +10611,6 @@ dependencies = [ "sp-blockchain", "sp-core", "sp-externalities", - "sp-io", "sp-keystore", "sp-runtime", "sp-state-machine", @@ -10381,12 +10619,12 @@ dependencies = [ [[package]] name = "twox-hash" -version = "1.6.0" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04f8ab788026715fa63b31960869617cba39117e520eb415b0139543e325ab59" +checksum = "1f559b464de2e2bdabcac6a210d12e9b5a5973c251e102c44c585c71d51bd78e" dependencies = [ - "cfg-if 0.1.10", - "rand 0.7.3", + "cfg-if 1.0.0", + "rand 0.8.4", "static_assertions", ] @@ -10425,12 +10663,9 @@ dependencies = [ [[package]] name = "unicode-bidi" -version = "0.3.5" +version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eeb8be209bb1c96b7c177c7420d26e04eccacb0eeae6b980e35fcb74678107e0" -dependencies = [ - "matches", -] +checksum = "246f4c42e67e7a4e3c6106ff716a5d067d4132a642840b242e357e468a2a0085" [[package]] name = "unicode-normalization" @@ -10625,9 +10860,9 @@ checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f" [[package]] name = "wasm-bindgen" -version = "0.2.75" +version = "0.2.76" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b608ecc8f4198fe8680e2ed18eccab5f0cd4caaf3d83516fa5fb2e927fda2586" +checksum = "8ce9b1b516211d33767048e5d47fa2a381ed8b76fc48d2ce4aa39877f9f183e0" dependencies = [ "cfg-if 1.0.0", "wasm-bindgen-macro", @@ -10635,9 +10870,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.75" +version = "0.2.76" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "580aa3a91a63d23aac5b6b267e2d13cb4f363e31dce6c352fca4752ae12e479f" +checksum = "cfe8dc78e2326ba5f845f4b5bf548401604fa20b1dd1d365fb73b6c1d6364041" dependencies = [ "bumpalo", "lazy_static", @@ -10650,9 +10885,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.25" +version = "0.4.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16646b21c3add8e13fdb8f20172f8a28c3dbf62f45406bcff0233188226cfe0c" +checksum = "95fded345a6559c2cfee778d562300c581f7d4ff3edb9b0d230d69800d213972" dependencies = [ "cfg-if 1.0.0", "js-sys", @@ -10662,9 +10897,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.75" +version = "0.2.76" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "171ebf0ed9e1458810dfcb31f2e766ad6b3a89dbda42d8901f2b268277e5f09c" +checksum = "44468aa53335841d9d6b6c023eaab07c0cd4bddbcfdee3e2bb1e8d2cb8069fef" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -10672,9 +10907,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.75" +version = "0.2.76" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c2657dd393f03aa2a659c25c6ae18a13a4048cebd220e147933ea837efc589f" +checksum = "0195807922713af1e67dc66132c7328206ed9766af3858164fb583eedc25fbad" dependencies = [ "proc-macro2", "quote", @@ -10685,9 +10920,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.75" +version = "0.2.76" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e0c4a743a309662d45f4ede961d7afa4ba4131a59a639f29b0069c3798bbcc2" +checksum = "acdb075a845574a1fa5f09fd77e43f7747599301ea3417a9fbffdeedfc1f4a29" [[package]] name = "wasm-gc-api" @@ -10770,11 +11005,9 @@ dependencies = [ "wasmparser", "wasmtime-cache", "wasmtime-environ", - "wasmtime-fiber", "wasmtime-jit", "wasmtime-profiling", "wasmtime-runtime", - "wat", "winapi 0.3.9", ] @@ -10849,17 +11082,6 @@ dependencies = [ "wasmparser", ] -[[package]] -name = "wasmtime-fiber" -version = "0.27.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a089d44cd7e2465d41a53b840a5b4fca1bf6d1ecfebc970eac9592b34ea5f0b3" -dependencies = [ - "cc", - "libc", - "winapi 0.3.9", -] - [[package]] name = "wasmtime-jit" version = "0.27.0" @@ -10915,11 +11137,8 @@ checksum = "e24364d522dcd67c897c8fffc42e5bdfc57207bbb6d7eeade0da9d4a7d70105b" dependencies = [ "anyhow", "cfg-if 1.0.0", - "gimli 0.24.0", "lazy_static", "libc", - "object 0.24.0", - "scroll", "serde", "target-lexicon", "wasmtime-environ", @@ -10947,33 +11166,14 @@ dependencies = [ "region", "thiserror", "wasmtime-environ", - "wasmtime-fiber", "winapi 0.3.9", ] -[[package]] -name = "wast" -version = "37.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9bc7b9a76845047ded00e031754ff410afee0d50fbdf62b55bdeecd245063d68" -dependencies = [ - "leb128", -] - -[[package]] -name = "wat" -version = "1.0.39" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ab2cc8d9a69d1ab28a41d9149bb06bb927aba8fc9d56625f8b597a564c83f50" -dependencies = [ - "wast", -] - [[package]] name = "web-sys" -version = "0.3.52" +version = "0.3.53" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01c70a82d842c9979078c772d4a1344685045f1a5628f677c2b2eab4dd7d2696" +checksum = "224b2f6b67919060055ef1a67807367c2066ed520c3862cc013d26cf893a783c" dependencies = [ "js-sys", "wasm-bindgen", @@ -11105,18 +11305,19 @@ dependencies = [ [[package]] name = "xcm" -version = "0.9.8" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "derivative", "impl-trait-for-tuples", + "log", "parity-scale-codec", ] [[package]] name = "xcm-builder" -version = "0.9.8" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "frame-support", "frame-system", @@ -11134,8 +11335,8 @@ dependencies = [ [[package]] name = "xcm-executor" -version = "0.9.8" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.8#3a10ee63c0b5703a1c802db3438ab7e01344a8ce" +version = "0.9.9-1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.9#3f036d4c3cf6dd3114730ebe6bcd8ad65a4a59bd" dependencies = [ "frame-support", "impl-trait-for-tuples", diff --git a/Cargo.toml b/Cargo.toml index 32ad965221..131d615437 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -3,6 +3,7 @@ members = [ "bin/collator", "runtime/shiden", "frame/block-reward", + "frame/custom-signatures", ] [profile.release] diff --git a/bin/collator/Cargo.toml b/bin/collator/Cargo.toml index db5e1567a6..affcc8ef05 100644 --- a/bin/collator/Cargo.toml +++ b/bin/collator/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "astar-collator" -version = "2.3.0" +version = "2.4.0" authors = ["Stake Technologies "] description = "Astar collator implementation in Rust." build = "build.rs" @@ -26,35 +26,37 @@ log = "0.4.8" hex = "0.4" # primitives -sp-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } -sp-block-builder = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } -sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } -sp-consensus-aura = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } -sp-trie= { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } -sp-session = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } -sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } -sp-keystore= { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } -sp-offchain = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } -sp-inherents = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } -sp-consensus = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } -sp-timestamp = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } -sp-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } +sp-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sp-block-builder = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sp-blockchain = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sp-consensus-aura = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sp-trie= { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sp-session = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sp-keystore= { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sp-offchain = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sp-inherents = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sp-consensus = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sp-timestamp = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sp-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } # client dependencies -sc-basic-authorship = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } -sc-client-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } -sc-client-db = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -sc-chain-spec = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } -sc-consensus = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } -sc-executor = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } -sc-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } -sc-network = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } -sc-offchain = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } -sc-rpc = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } -sc-service = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } -sc-telemetry = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } -sc-tracing = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } -sc-consensus-babe = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } +sc-basic-authorship = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sc-client-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sc-client-db = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +sc-chain-spec = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sc-consensus = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sc-executor = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sc-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sc-network = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sc-offchain = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sc-rpc = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sc-service = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sc-telemetry = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sc-tracing = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sc-transaction-pool-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sc-consensus-babe = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } # RPC related dependencies jsonrpc-core = "15.1.0" @@ -63,34 +65,36 @@ jsonrpc-core = "15.1.0" shiden-runtime = { path = "../../runtime/shiden" } # frame dependencies -frame-system = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } -pallet-transaction-payment = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } +frame-system = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +frame-rpc-system = { package = "substrate-frame-rpc-system", git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +pallet-transaction-payment = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +pallet-transaction-payment-rpc = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } # CLI-specific dependencies -sc-cli = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", optional = true } +sc-cli = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", optional = true } # cumulus dependencies -cumulus-client-cli = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.8" } -cumulus-client-network = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.8" } -cumulus-client-service = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.8" } -cumulus-client-consensus-aura = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.8" } -cumulus-client-consensus-common = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.8" } -cumulus-client-consensus-relay-chain = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.8" } -cumulus-primitives-core = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.8" } -cumulus-primitives-parachain-inherent = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.8" } -substrate-prometheus-endpoint = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } +cumulus-client-cli = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.9" } +cumulus-client-network = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.9" } +cumulus-client-service = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.9" } +cumulus-client-consensus-aura = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.9" } +cumulus-client-consensus-common = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.9" } +cumulus-client-consensus-relay-chain = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.9" } +cumulus-primitives-core = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.9" } +cumulus-primitives-parachain-inherent = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.9" } +substrate-prometheus-endpoint = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } # polkadot dependencies -polkadot-primitives = { git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.8" } -polkadot-parachain = { git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.8" } -polkadot-service = { git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.8" } -polkadot-cli = { git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.8", optional = true } +polkadot-primitives = { git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.9" } +polkadot-parachain = { git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.9" } +polkadot-service = { git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.9" } +polkadot-cli = { git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.9", optional = true } [build-dependencies] -sc-cli = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", optional = true } -sc-service = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", optional = true } -polkadot-cli = { git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.8", optional = true } -build-script-utils = { package = "substrate-build-script-utils", git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } +sc-cli = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", optional = true } +sc-service = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", optional = true } +polkadot-cli = { git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.9", optional = true } +build-script-utils = { package = "substrate-build-script-utils", git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } structopt = { version = "0.3.8", optional = true } vergen = { version = "3.0.4", optional = true } diff --git a/bin/collator/src/aura_upgrade.rs b/bin/collator/src/aura_upgrade.rs index 88fe72f7c3..5c031a19a9 100644 --- a/bin/collator/src/aura_upgrade.rs +++ b/bin/collator/src/aura_upgrade.rs @@ -3,19 +3,14 @@ use cumulus_client_consensus_common::{ParachainCandidate, ParachainConsensus}; use cumulus_primitives_core::relay_chain::v1::{Hash as PHash, PersistedValidationData}; use futures::lock::Mutex; +use sc_consensus::{import_queue::Verifier as VerifierT, BlockImportParams}; use sp_api::ApiExt; -use sp_consensus::{ - import_queue::{CacheKeyId, Verifier as VerifierT}, - BlockImportParams, BlockOrigin, -}; +use sp_consensus::CacheKeyId; use sp_consensus_aura::{sr25519::AuthorityId as AuraId, AuraApi}; use sp_runtime::{generic::BlockId, traits::Header as HeaderT}; use std::sync::Arc; -type BlockNumber = u32; -type Header = sp_runtime::generic::Header; -pub type Block = sp_runtime::generic::Block; -pub type Hash = sp_core::H256; +use crate::primitives::*; pub enum BuildOnAccess { Uninitialized(Option R + Send + Sync>>), @@ -100,10 +95,7 @@ where { async fn verify( &mut self, - origin: BlockOrigin, - header: Header, - justifications: Option, - body: Option::Extrinsic>>, + block_import: BlockImportParams, ) -> Result< ( BlockImportParams, @@ -111,7 +103,7 @@ where ), String, > { - let block_id = BlockId::hash(*header.parent_hash()); + let block_id = BlockId::hash(*block_import.header.parent_hash()); if self .client @@ -119,14 +111,9 @@ where .has_api::>(&block_id) .unwrap_or(false) { - self.aura_verifier - .get_mut() - .verify(origin, header, justifications, body) - .await + self.aura_verifier.get_mut().verify(block_import).await } else { - self.relay_chain_verifier - .verify(origin, header, justifications, body) - .await + self.relay_chain_verifier.verify(block_import).await } } } diff --git a/bin/collator/src/command.rs b/bin/collator/src/command.rs index bed784cc04..c5f79ec7a9 100644 --- a/bin/collator/src/command.rs +++ b/bin/collator/src/command.rs @@ -1,7 +1,8 @@ use crate::{ chain_spec, cli::{Cli, RelayChainCli, Subcommand}, - service::{self, shiden, Block}, + primitives::Block, + service::{self, shiden}, }; use codec::Encode; use cumulus_client_service::genesis::generate_genesis_block; diff --git a/bin/collator/src/lib.rs b/bin/collator/src/lib.rs index 7bbe7e2abb..6d6ba4e127 100644 --- a/bin/collator/src/lib.rs +++ b/bin/collator/src/lib.rs @@ -14,6 +14,8 @@ mod cli; mod command; mod aura_upgrade; +mod primitives; +mod rpc; pub use cli::*; pub use command::*; diff --git a/bin/collator/src/primitives.rs b/bin/collator/src/primitives.rs new file mode 100644 index 0000000000..f099e03036 --- /dev/null +++ b/bin/collator/src/primitives.rs @@ -0,0 +1,9 @@ +//! Opaque primitives for different parachain runtimes. + +pub type BlockNumber = u32; +pub type Header = sp_runtime::generic::Header; +pub type Block = sp_runtime::generic::Block; +pub type Hash = sp_core::H256; +pub type Balance = u128; +pub type Nonce = u32; +pub type AccountId = sp_runtime::AccountId32; diff --git a/bin/collator/src/rpc.rs b/bin/collator/src/rpc.rs new file mode 100644 index 0000000000..29175f97aa --- /dev/null +++ b/bin/collator/src/rpc.rs @@ -0,0 +1,61 @@ +//! Parachain-specific RPCs implementation. + +use sc_client_api::AuxStore; +pub use sc_rpc::{DenyUnsafe, SubscriptionTaskExecutor}; +use sc_transaction_pool_api::TransactionPool; +use sp_api::ProvideRuntimeApi; +use sp_block_builder::BlockBuilder; +use sp_blockchain::{Error as BlockChainError, HeaderBackend, HeaderMetadata}; +use std::sync::Arc; + +use crate::primitives::*; + +/// A type representing all RPC extensions. +pub type RpcExtension = jsonrpc_core::IoHandler; + +/// Full client dependencies +pub struct FullDeps { + /// The client instance to use. + pub client: Arc, + /// Transaction pool instance. + pub pool: Arc

, + /// Whether to deny unsafe calls + pub deny_unsafe: DenyUnsafe, +} + +/// Instantiate all RPC extensions. +pub fn create_full(deps: FullDeps) -> RpcExtension +where + C: ProvideRuntimeApi + + HeaderBackend + + AuxStore + + HeaderMetadata + + Send + + Sync + + 'static, + C::Api: frame_rpc_system::AccountNonceApi, + C::Api: pallet_transaction_payment_rpc::TransactionPaymentRuntimeApi, + C::Api: BlockBuilder, + P: TransactionPool + Sync + Send + 'static, +{ + use frame_rpc_system::{FullSystem, SystemApi}; + use pallet_transaction_payment_rpc::{TransactionPayment, TransactionPaymentApi}; + + let mut io = jsonrpc_core::IoHandler::default(); + let FullDeps { + client, + pool, + deny_unsafe, + } = deps; + + io.extend_with(SystemApi::to_delegate(FullSystem::new( + client.clone(), + pool, + deny_unsafe, + ))); + io.extend_with(TransactionPaymentApi::to_delegate(TransactionPayment::new( + client.clone(), + ))); + + io +} diff --git a/bin/collator/src/service.rs b/bin/collator/src/service.rs index a5a7f7efc4..3f193c713f 100644 --- a/bin/collator/src/service.rs +++ b/bin/collator/src/service.rs @@ -10,18 +10,20 @@ use cumulus_client_service::{ use cumulus_primitives_core::ParaId; use futures::lock::Mutex; use sc_client_api::ExecutorProvider; +use sc_consensus::import_queue::BasicQueue; use sc_network::NetworkService; use sc_service::{Configuration, PartialComponents, Role, TFullBackend, TFullClient, TaskManager}; use sc_telemetry::{Telemetry, TelemetryHandle, TelemetryWorker, TelemetryWorkerHandle}; use sp_api::ConstructRuntimeApi; -use sp_consensus::{import_queue::BasicQueue, SlotData}; +use sp_consensus::SlotData; use sp_consensus_aura::sr25519::AuthorityId as AuraId; use sp_keystore::SyncCryptoStorePtr; use sp_runtime::traits::BlakeTwo256; use std::sync::Arc; use substrate_prometheus_endpoint::Registry; -pub use crate::aura_upgrade::*; +use crate::aura_upgrade::*; +use crate::primitives::*; /// Shiden network runtime executor. pub mod shiden { @@ -46,7 +48,7 @@ pub fn new_partial( TFullClient, TFullBackend, (), - sp_consensus::DefaultImportQueue>, + sc_consensus::DefaultImportQueue>, sc_transaction_pool::FullPool>, (Option, Option), >, @@ -73,7 +75,7 @@ where Option, &TaskManager, ) -> Result< - sp_consensus::DefaultImportQueue>, + sc_consensus::DefaultImportQueue>, sc_service::Error, >, { @@ -135,11 +137,10 @@ where /// /// This is the actual implementation that is abstract over the executor and the runtime api. #[sc_tracing::logging::prefix_logs_with("Parachain")] -async fn start_node_impl( +async fn start_node_impl( parachain_config: Configuration, polkadot_config: Configuration, id: ParaId, - rpc_ext_builder: RB, build_import_queue: BIQ, build_consensus: BIC, ) -> sc_service::error::Result<(TaskManager, Arc>)> @@ -156,21 +157,18 @@ where StateBackend = sc_client_api::StateBackendFor, Block>, > + sp_offchain::OffchainWorkerApi + sp_block_builder::BlockBuilder + + frame_rpc_system::AccountNonceApi + + pallet_transaction_payment_rpc::TransactionPaymentRuntimeApi + cumulus_primitives_core::CollectCollationInfo, sc_client_api::StateBackendFor, Block>: sp_api::StateBackend, Executor: sc_executor::NativeExecutionDispatch + 'static, - RB: Fn( - Arc>, - ) -> jsonrpc_core::IoHandler - + Send - + 'static, BIQ: FnOnce( Arc>, &Configuration, Option, &TaskManager, ) -> Result< - sp_consensus::DefaultImportQueue>, + sc_consensus::DefaultImportQueue>, sc_service::Error, >, BIC: FnOnce( @@ -225,10 +223,23 @@ where import_queue: import_queue.clone(), on_demand: None, block_announce_validator_builder: Some(Box::new(|_| block_announce_validator)), + warp_sync: None, })?; - let rpc_client = client.clone(); - let rpc_extensions_builder = Box::new(move |_, _| rpc_ext_builder(rpc_client.clone())); + let rpc_extensions_builder = { + let client = client.clone(); + let transaction_pool = transaction_pool.clone(); + + Box::new(move |deny_unsafe, _| { + let deps = crate::rpc::FullDeps { + client: client.clone(), + pool: transaction_pool.clone(), + deny_unsafe, + }; + + Ok(crate::rpc::create_full(deps)) + }) + }; sc_service::spawn_tasks(sc_service::SpawnTasksParams { on_demand: None, @@ -302,7 +313,7 @@ pub fn build_import_queue( telemetry_handle: Option, task_manager: &TaskManager, ) -> Result< - sp_consensus::DefaultImportQueue>, + sc_consensus::DefaultImportQueue>, sc_service::Error, > where @@ -385,11 +396,10 @@ pub async fn start_shiden_node( TaskManager, Arc>, )> { - start_node_impl::( + start_node_impl::( parachain_config, polkadot_config, id, - |_| Default::default(), build_import_queue, |client, prometheus_registry, diff --git a/frame/block-reward/Cargo.toml b/frame/block-reward/Cargo.toml index 5e957b8258..9fb9f6ccf8 100644 --- a/frame/block-reward/Cargo.toml +++ b/frame/block-reward/Cargo.toml @@ -13,8 +13,8 @@ targets = ["x86_64-unknown-linux-gnu"] [dependencies] codec = { package = "parity-scale-codec", version = "2.0.0", default-features = false, features = ["derive"] } -frame-support = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -frame-system = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } +frame-support = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +frame-system = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } [features] default = ["std"] diff --git a/frame/custom-signatures/Cargo.toml b/frame/custom-signatures/Cargo.toml new file mode 100644 index 0000000000..0776646587 --- /dev/null +++ b/frame/custom-signatures/Cargo.toml @@ -0,0 +1,39 @@ +[package] +name = "pallet-custom-signatures" +version = "3.0.0" +authors = ["Stake Technologies "] +edition = "2018" +license = "Apache-2.0" +homepage = "https://docs.plasmnet.io/" +repository = "https://github.com/staketechnologies/Plasm/" +description = "FRAME pallet for user defined extrinsic signatures" + +[dependencies] +codec = { package = "parity-scale-codec", version = "2.0", features = ["derive"], default-features = false } +serde = { version = "1.0.106", features = ["derive"], optional = true } +sp-io = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +sp-std = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +frame-support = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +frame-system = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } + +[dev-dependencies] +pallet-balances = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +libsecp256k1 = "0.3.2" +hex-literal = "0.2.1" +sp-keyring = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } +sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } + +[features] +default = ["std"] +std = [ + "serde", + "codec/std", + "sp-io/std", + "sp-std/std", + "sp-core/std", + "sp-runtime/std", + "frame-support/std", + "frame-system/std", +] diff --git a/frame/custom-signatures/src/ethereum.rs b/frame/custom-signatures/src/ethereum.rs new file mode 100644 index 0000000000..6065ca3551 --- /dev/null +++ b/frame/custom-signatures/src/ethereum.rs @@ -0,0 +1,87 @@ +//! Ethereum prefixed signatures compatibility instances. + +use codec::{Decode, Encode}; +use sp_core::ecdsa; +use sp_io::{crypto::secp256k1_ecdsa_recover_compressed, hashing::keccak_256}; +use sp_runtime::traits::{IdentifyAccount, Lazy, Verify}; +use sp_runtime::MultiSignature; +use sp_std::prelude::*; + +/// Ethereum-compatible signature type. +#[derive(Encode, Decode, PartialEq, Eq, Clone)] +pub struct EthereumSignature(pub [u8; 65]); + +impl sp_std::fmt::Debug for EthereumSignature { + fn fmt(&self, f: &mut sp_std::fmt::Formatter<'_>) -> sp_std::fmt::Result { + write!(f, "EthereumSignature({:?})", &self.0[..]) + } +} + +impl From for EthereumSignature { + fn from(signature: ecdsa::Signature) -> Self { + Self(signature.into()) + } +} + +impl sp_std::convert::TryFrom> for EthereumSignature { + type Error = (); + + fn try_from(data: Vec) -> Result { + if data.len() == 65 { + let mut inner = [0u8; 65]; + inner.copy_from_slice(&data[..]); + Ok(EthereumSignature(inner)) + } else { + Err(()) + } + } +} + +/// Constructs the message that Ethereum RPC's `personal_sign` and `eth_sign` would sign. +pub fn signable_message(what: &[u8]) -> Vec { + let mut l = what.len(); + let mut rev = Vec::new(); + while l > 0 { + rev.push(b'0' + (l % 10) as u8); + l /= 10; + } + let mut v = b"\x19Ethereum Signed Message:\n".to_vec(); + v.extend(rev.into_iter().rev()); + v.extend_from_slice(what); + v +} + +/// Attempts to recover the Ethereum public key from a message signature signed by using +/// the Ethereum RPC's `personal_sign` and `eth_sign`. +impl Verify for EthereumSignature { + type Signer = ::Signer; + + fn verify>( + &self, + mut msg: L, + account: &::AccountId, + ) -> bool { + let msg = keccak_256(&signable_message(&msg.get())); + match secp256k1_ecdsa_recover_compressed(&self.0, &msg).ok() { + Some(public) => { + let signer = Self::Signer::from(ecdsa::Public::from_raw(public)); + *account == signer.into_account() + } + None => false, + } + } +} + +#[test] +fn verify_should_works() { + use hex_literal::hex; + use sp_core::{ecdsa, Pair}; + + let msg = "test eth signed message"; + let pair = ecdsa::Pair::from_seed(&hex![ + "7e9c7ad85df5cdc88659f53e06fb2eb9bab3ebc59083a3190eaf2c730332529c" + ]); + let account = ::Signer::from(pair.public()).into_account(); + let signature = EthereumSignature(hex!["dd0992d40e5cdf99db76bed162808508ac65acd7ae2fdc8573594f03ed9c939773e813181788fc02c3c68f3fdc592759b35f6354484343e18cb5317d34dab6c61b"]); + assert_eq!(signature.verify(msg.as_ref(), &account), true); +} diff --git a/frame/custom-signatures/src/lib.rs b/frame/custom-signatures/src/lib.rs new file mode 100644 index 0000000000..0d8c023a4a --- /dev/null +++ b/frame/custom-signatures/src/lib.rs @@ -0,0 +1,122 @@ +#![cfg_attr(not(feature = "std"), no_std)] + +pub use pallet::*; + +/// Ethereum-compatible signatures (eth_sign API call). +pub mod ethereum; + +#[cfg(test)] +mod tests; + +#[frame_support::pallet] +pub mod pallet { + use frame_support::{ + pallet_prelude::*, + traits::{Get, UnfilteredDispatchable}, + weights::GetDispatchInfo, + }; + use frame_system::{ensure_none, pallet_prelude::*}; + use sp_runtime::traits::{IdentifyAccount, Verify}; + use sp_std::{convert::TryFrom, prelude::*}; + + #[pallet::pallet] + pub struct Pallet(_); + + #[pallet::config] + pub trait Config: frame_system::Config { + /// The overarching event type. + type Event: From> + IsType<::Event>; + + /// A signable call. + type Call: Parameter + UnfilteredDispatchable + GetDispatchInfo; + + /// User defined signature type. + type Signature: Parameter + Verify + TryFrom>; + + /// User defined signer type. + type Signer: IdentifyAccount; + + /// A configuration for base priority of unsigned transactions. + /// + /// This is exposed so that it can be tuned for particular runtime, when + /// multiple pallets send unsigned transactions. + type UnsignedPriority: Get; + } + + #[pallet::error] + pub enum Error { + /// Signature decode fails. + DecodeFailure, + /// Signature and account mismatched. + InvalidSignature, + } + + #[pallet::event] + #[pallet::generate_deposit(pub(super) fn deposit_event)] + #[pallet::metadata(T::AccountId = "AccountId")] + pub enum Event { + /// A call just executed. \[result\] + Executed(T::AccountId, DispatchResult), + } + + #[pallet::call] + impl Pallet { + /// # + /// - O(1). + /// - Limited storage reads. + /// - One DB write (event). + /// - Weight of derivative `call` execution + 10,000. + /// # + #[pallet::weight({ + let dispatch_info = call.get_dispatch_info(); + (dispatch_info.weight + 10_000, dispatch_info.class) + })] + pub fn call( + origin: OriginFor, + call: Box<::Call>, + account: T::AccountId, + signature: Vec, + ) -> DispatchResultWithPostInfo { + ensure_none(origin)?; + + let signature = ::Signature::try_from(signature) + .map_err(|_| Error::::DecodeFailure)?; + if signature.verify(&call.encode()[..], &account) { + let new_origin = frame_system::RawOrigin::Signed(account.clone()).into(); + let res = call.dispatch_bypass_filter(new_origin).map(|_| ()); + Self::deposit_event(Event::Executed(account, res.map_err(|e| e.error))); + Ok(Pays::No.into()) + } else { + Err(Error::::InvalidSignature)? + } + } + } + + pub(crate) const SIGNATURE_DECODE_FAILURE: u8 = 1; + + #[pallet::validate_unsigned] + impl frame_support::unsigned::ValidateUnsigned for Pallet { + type Call = Call; + + fn validate_unsigned(_source: TransactionSource, call: &Self::Call) -> TransactionValidity { + if let Call::call(call, signer, signature) = call { + if let Ok(signature) = ::Signature::try_from(signature.clone()) { + if signature.verify(&call.encode()[..], &signer) { + return ValidTransaction::with_tag_prefix("CustomSignatures") + .priority(T::UnsignedPriority::get()) + .and_provides((call, signer)) + .longevity(64_u64) + .propagate(true) + .build(); + } else { + InvalidTransaction::BadProof.into() + } + } else { + InvalidTransaction::Custom(SIGNATURE_DECODE_FAILURE).into() + } + } else { + InvalidTransaction::Call.into() + } + } + } +} diff --git a/frame/custom-signatures/src/tests.rs b/frame/custom-signatures/src/tests.rs new file mode 100644 index 0000000000..fea79998c0 --- /dev/null +++ b/frame/custom-signatures/src/tests.rs @@ -0,0 +1,184 @@ +use crate as custom_signatures; +use codec::Encode; +use custom_signatures::*; +use frame_support::{assert_err, assert_ok, parameter_types}; +use hex_literal::hex; +use sp_core::{crypto::Ss58Codec, ecdsa, Pair}; +use sp_io::hashing::keccak_256; +use sp_keyring::AccountKeyring as Keyring; +use sp_runtime::{ + testing::{Header, H256}, + traits::{BlakeTwo256, IdentifyAccount, IdentityLookup, Verify}, + transaction_validity::TransactionPriority, + MultiSignature, MultiSigner, +}; + +pub const ECDSA_SEED: [u8; 32] = + hex_literal::hex!["7e9c7ad85df5cdc88659f53e06fb2eb9bab3ebc59083a3190eaf2c730332529c"]; + +type Balance = u128; +type BlockNumber = u64; +type Signature = MultiSignature; +type AccountId = <::Signer as IdentifyAccount>::AccountId; +type Block = frame_system::mocking::MockBlock; +type UncheckedExtrinsic = frame_system::mocking::MockUncheckedExtrinsic; + +frame_support::construct_runtime!( + pub enum Runtime where + Block = Block, + NodeBlock = Block, + UncheckedExtrinsic = UncheckedExtrinsic, + { + Balances: pallet_balances::{Pallet, Call, Storage, Config, Event}, + System: frame_system::{Pallet, Call, Config, Storage, Event}, + CustomSignatures: custom_signatures::{Pallet, Call, Event}, + } +); + +parameter_types! { + pub const BlockHashCount: u64 = 250; +} + +impl frame_system::Config for Runtime { + type Origin = Origin; + type BaseCallFilter = (); + type Index = u64; + type BlockNumber = BlockNumber; + type Call = Call; + type Hash = H256; + type Hashing = BlakeTwo256; + type AccountId = AccountId; + type Lookup = IdentityLookup; + type Header = Header; + type Event = Event; + type BlockHashCount = BlockHashCount; + type Version = (); + type PalletInfo = PalletInfo; + type AccountData = pallet_balances::AccountData; + type OnNewAccount = (); + type OnKilledAccount = (); + type DbWeight = (); + type SystemWeightInfo = (); + type BlockWeights = (); + type BlockLength = (); + type SS58Prefix = (); + type OnSetCode = (); +} + +parameter_types! { + pub const ExistentialDeposit: Balance = 1; +} + +impl pallet_balances::Config for Runtime { + type Balance = Balance; + type Event = Event; + type DustRemoval = (); + type ExistentialDeposit = ExistentialDeposit; + type AccountStore = frame_system::Pallet; + type WeightInfo = (); + type MaxLocks = (); + type MaxReserves = (); + type ReserveIdentifier = (); +} + +parameter_types! { + pub const Priority: TransactionPriority = TransactionPriority::max_value(); +} + +impl Config for Runtime { + type Event = Event; + type Call = Call; + type Signature = ethereum::EthereumSignature; + type Signer = ::Signer; + type UnsignedPriority = Priority; +} + +fn new_test_ext() -> sp_io::TestExternalities { + let mut storage = frame_system::GenesisConfig::default() + .build_storage::() + .unwrap(); + + let pair = ecdsa::Pair::from_seed(&ECDSA_SEED); + let account = MultiSigner::from(pair.public()).into_account(); + let _ = pallet_balances::GenesisConfig:: { + balances: vec![(account, 1_000_000_000_000_000_000)], + } + .assimilate_storage(&mut storage); + storage.into() +} + +/// Simple `eth_sign` implementation, should be equal to exported by RPC +fn eth_sign(seed: &[u8; 32], data: &[u8]) -> Vec { + let call_msg = ethereum::signable_message(data); + let ecdsa_msg = secp256k1::Message::parse(&keccak_256(&call_msg)); + let secret = secp256k1::SecretKey::parse(&seed).expect("valid seed"); + let mut ecdsa: ecdsa::Signature = secp256k1::sign(&ecdsa_msg, &secret).into(); + // Fix recovery ID: Ethereum uses 27/28 notation + ecdsa.as_mut()[64] += 27; + Vec::from(ecdsa.as_ref() as &[u8]) +} + +#[test] +fn eth_sign_works() { + let seed = hex!["7e9c7ad85df5cdc88659f53e06fb2eb9bab3ebc59083a3190eaf2c730332529c"]; + let text = b"Hello Plasm"; + let signature = hex!["79eec99d7f5b321c1b75d2fc044b555f9afdbc4f9b43a011085f575b216f85c452a04373d487671852dca4be4fe5fd90836560afe709d1dab45ab18bc936c2111c"]; + assert_eq!(eth_sign(&seed, &text[..]), signature); +} + +#[test] +fn invalid_signature() { + let bob: ::AccountId = Keyring::Bob.into(); + let alice: ::AccountId = Keyring::Alice.into(); + let call = pallet_balances::Call::::transfer(alice.clone(), 1_000).into(); + let signature = Vec::from(&hex!["dd0992d40e5cdf99db76bed162808508ac65acd7ae2fdc8573594f03ed9c939773e813181788fc02c3c68f3fdc592759b35f6354484343e18cb5317d34dab6c61b"][..]); + assert_err!( + CustomSignatures::call(Origin::none(), Box::new(call), bob, signature), + Error::::InvalidSignature, + ); +} + +#[test] +fn balance_transfer() { + new_test_ext().execute_with(|| { + let pair = ecdsa::Pair::from_seed(&ECDSA_SEED); + let account = MultiSigner::from(pair.public()).into_account(); + + let alice: ::AccountId = Keyring::Alice.into(); + assert_eq!(System::account(alice.clone()).data.free, 0); + + let call: Call = pallet_balances::Call::::transfer(alice.clone(), 1_000).into(); + let signature = eth_sign(&ECDSA_SEED, call.encode().as_ref()).into(); + + assert_ok!(CustomSignatures::call( + Origin::none(), + Box::new(call), + account, + signature + )); + assert_eq!(System::account(alice).data.free, 1_000); + }) +} + +#[test] +fn call_fixtures() { + let seed = hex!["7e9c7ad85df5cdc88659f53e06fb2eb9bab3ebc59083a3190eaf2c730332529c"]; + let pair = ecdsa::Pair::from_seed(&seed); + assert_eq!( + MultiSigner::from(pair.public()) + .into_account() + .to_ss58check(), + "5Geeci7qCoYHyg9z2AwfpiT4CDryvxYyD7SAUdfNBz9CyDSb", + ); + + let dest = + AccountId::from_ss58check("5GVwcV6EzxxYbXBm7H6dtxc9TCgL4oepMXtgqWYEc3VXJoaf").unwrap(); + let call: Call = pallet_balances::Call::::transfer(dest, 1000).into(); + assert_eq!( + call.encode(), + hex!["0000c4305fb88b6ccb43d6552dc11d18e7b0ee3185247adcc6e885eb284adf6c563da10f"], + ); + + let signature = hex!["96cd8087ef720b0ec10d96996a8bbb45005ba3320d1dde38450a56f77dfd149720cc2e6dcc8f09963aad4cdf5ec15e103ce56d0f4c7a753840217ef1787467a01c"]; + assert_eq!(eth_sign(&seed, call.encode().as_ref()), signature) +} diff --git a/runtime/shiden/Cargo.toml b/runtime/shiden/Cargo.toml index 05160a6d58..63ea8f1692 100644 --- a/runtime/shiden/Cargo.toml +++ b/runtime/shiden/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "shiden-runtime" -version = "2.3.0" +version = "2.4.0" authors = ["Stake Technologies "] edition = "2018" build = "build.rs" @@ -12,57 +12,60 @@ codec = { package = "parity-scale-codec", version = "2.0", default-features = fa smallvec = "1.6.1" # primitives -sp-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -sp-consensus-aura = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -sp-io = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -sp-runtime-interface = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -sp-offchain = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -sp-session = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -sp-inherents = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -sp-block-builder = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -sp-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -sp-std = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -sp-version = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } +sp-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +sp-consensus-aura = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +sp-io = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +sp-runtime-interface = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +sp-offchain = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +sp-session = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +sp-inherents = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +sp-block-builder = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +sp-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +sp-std = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +sp-version = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } # frame dependencies -frame-executive = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -pallet-authorship = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -pallet-aura = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -pallet-balances = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -pallet-identity = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -pallet-session = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false, features = ["historical"] } -pallet-utility = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -pallet-timestamp = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -pallet-vesting = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -pallet-sudo = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -frame-support = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -frame-system = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -frame-system-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -pallet-transaction-payment = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } -pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8", default-features = false } +frame-executive = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +pallet-authorship = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +pallet-aura = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +pallet-balances = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +pallet-identity = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +pallet-multisig = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +pallet-session = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false, features = ["historical"] } +pallet-utility = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +pallet-timestamp = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +pallet-vesting = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +pallet-sudo = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +frame-support = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +frame-system = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +frame-system-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +pallet-transaction-payment = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } +pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9", default-features = false } # cumulus dependencies -cumulus-primitives-core = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.8", default-features = false } -cumulus-primitives-utility = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.8", default-features = false } -cumulus-primitives-timestamp = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.8", default-features = false } -cumulus-pallet-parachain-system = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.8", default-features = false } -cumulus-pallet-xcm = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.8", default-features = false } -cumulus-pallet-aura-ext = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.8", default-features = false } -parachain-info = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.8", default-features = false } -pallet-collator-selection = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.8", default-features = false } +cumulus-primitives-core = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.9", default-features = false } +cumulus-primitives-utility = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.9", default-features = false } +cumulus-primitives-timestamp = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.9", default-features = false } +cumulus-pallet-parachain-system = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.9", default-features = false } +cumulus-pallet-xcm = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.9", default-features = false } +cumulus-pallet-aura-ext = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.9", default-features = false } +parachain-info = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.9", default-features = false } +pallet-collator-selection = { git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.9", default-features = false } # polkadot dependencies -polkadot-parachain = { git = "https://github.com/paritytech/polkadot", default-features = false , branch = "release-v0.9.8" } -xcm-executor = { git = "https://github.com/paritytech/polkadot", default-features = false , branch = "release-v0.9.8" } -xcm-builder = { git = "https://github.com/paritytech/polkadot", default-features = false , branch = "release-v0.9.8" } -xcm = { git = "https://github.com/paritytech/polkadot", default-features = false , branch = "release-v0.9.8" } +polkadot-parachain = { git = "https://github.com/paritytech/polkadot", default-features = false , branch = "release-v0.9.9" } +polkadot-runtime-common = { git = "https://github.com/paritytech/polkadot", default-features = false , branch = "release-v0.9.9" } +xcm-executor = { git = "https://github.com/paritytech/polkadot", default-features = false , branch = "release-v0.9.9" } +xcm-builder = { git = "https://github.com/paritytech/polkadot", default-features = false , branch = "release-v0.9.9" } +xcm = { git = "https://github.com/paritytech/polkadot", default-features = false , branch = "release-v0.9.9" } pallet-block-reward = { path = "../../frame/block-reward", default-features = false } +pallet-custom-signatures = { path = "../../frame/custom-signatures", default-features = false } [build-dependencies] -substrate-wasm-builder = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.8" } +substrate-wasm-builder = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.9" } [features] default = ["std"] @@ -88,7 +91,9 @@ std = [ "pallet-aura/std", "pallet-balances/std", "pallet-block-reward/std", + "pallet-custom-signatures/std", "pallet-identity/std", + "pallet-multisig/std", "pallet-session/std", "pallet-utility/std", "pallet-timestamp/std", @@ -103,6 +108,7 @@ std = [ "xcm-executor/std", "parachain-info/std", "polkadot-parachain/std", + "polkadot-runtime-common/std", "cumulus-primitives-core/std", "cumulus-primitives-utility/std", "cumulus-primitives-timestamp/std", diff --git a/runtime/shiden/src/lib.rs b/runtime/shiden/src/lib.rs index db1d5de1d6..9870f4dff6 100644 --- a/runtime/shiden/src/lib.rs +++ b/runtime/shiden/src/lib.rs @@ -6,7 +6,7 @@ use frame_support::{ construct_runtime, match_type, parameter_types, - traits::{Currency, Filter, Imbalance, OnUnbalanced}, + traits::{Contains, Currency, Imbalance, OnUnbalanced}, weights::{ constants::{BlockExecutionWeight, ExtrinsicBaseWeight, WEIGHT_PER_SECOND}, DispatchClass, Weight, WeightToFeeCoefficient, WeightToFeeCoefficients, @@ -18,15 +18,17 @@ use frame_system::limits::{BlockLength, BlockWeights}; use pallet_transaction_payment::{ FeeDetails, Multiplier, RuntimeDispatchInfo, TargetedFeeAdjustment, }; +use polkadot_runtime_common::{BlockHashCount, RocksDbWeight}; use sp_api::impl_runtime_apis; use sp_core::OpaqueMetadata; use sp_inherents::{CheckInherentsResult, InherentData}; use sp_runtime::{ create_runtime_str, generic, impl_opaque_keys, traits::{ - AccountIdConversion, AccountIdLookup, BlakeTwo256, Block as BlockT, ConvertInto, OpaqueKeys, + AccountIdConversion, AccountIdLookup, BlakeTwo256, Block as BlockT, ConvertInto, + OpaqueKeys, Verify, }, - transaction_validity::{TransactionSource, TransactionValidity}, + transaction_validity::{TransactionPriority, TransactionSource, TransactionValidity}, ApplyExtrinsicResult, FixedPointNumber, Perbill, Perquintill, }; use sp_std::prelude::*; @@ -51,6 +53,12 @@ pub use sp_runtime::BuildStorage; /// Constant values used within the runtime. pub const MILLISDN: Balance = 1_000_000_000_000_000; pub const SDN: Balance = 1_000 * MILLISDN; + +/// Charge fee for stored bytes and items. +pub const fn deposit(items: u32, bytes: u32) -> Balance { + (items as Balance + bytes as Balance) * MILLISDN / 1_000_000 +} + /// Change this to adjust the block time. pub const MILLISECS_PER_BLOCK: u64 = 12000; // Time is measured by number of blocks. @@ -78,7 +86,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { spec_name: create_runtime_str!("shiden"), impl_name: create_runtime_str!("shiden"), authoring_version: 1, - spec_version: 6, + spec_version: 7, impl_version: 0, apis: RUNTIME_API_VERSIONS, transaction_version: 1, @@ -109,7 +117,6 @@ const NORMAL_DISPATCH_RATIO: Perbill = Perbill::from_percent(75); const MAXIMUM_BLOCK_WEIGHT: Weight = WEIGHT_PER_SECOND / 2; parameter_types! { - pub const BlockHashCount: BlockNumber = 2400; pub const Version: RuntimeVersion = VERSION; pub RuntimeBlockLength: BlockLength = BlockLength::max_with_normal_ratio(5 * 1024 * 1024, NORMAL_DISPATCH_RATIO); @@ -135,8 +142,8 @@ parameter_types! { } pub struct BaseFilter; -impl Filter for BaseFilter { - fn filter(call: &Call) -> bool { +impl Contains for BaseFilter { + fn contains(call: &Call) -> bool { match call { // These modules are not allowed to be called by transactions: Call::Balances(_) => false, @@ -178,7 +185,7 @@ impl frame_system::Config for Runtime { type AccountData = pallet_balances::AccountData; type OnNewAccount = (); type OnKilledAccount = (); - type DbWeight = (); + type DbWeight = RocksDbWeight; type BaseCallFilter = BaseFilter; type SystemWeightInfo = (); type BlockWeights = RuntimeBlockWeights; @@ -223,6 +230,36 @@ impl pallet_identity::Config for Runtime { type WeightInfo = (); } +parameter_types! { + // One storage item; key size is 32; value is size 4+4+16+32 bytes = 56 bytes. + pub const DepositBase: Balance = deposit(1, 88); + // Additional storage item size of 32 bytes. + pub const DepositFactor: Balance = deposit(0, 32); + pub const MaxSignatories: u16 = 100; +} + +impl pallet_multisig::Config for Runtime { + type Event = Event; + type Call = Call; + type Currency = Balances; + type DepositBase = DepositBase; + type DepositFactor = DepositFactor; + type MaxSignatories = MaxSignatories; + type WeightInfo = (); +} + +parameter_types! { + pub const EcdsaUnsignedPriority: TransactionPriority = TransactionPriority::max_value() / 2; +} + +impl pallet_custom_signatures::Config for Runtime { + type Event = Event; + type Call = Call; + type Signature = pallet_custom_signatures::ethereum::EthereumSignature; + type Signer = ::Signer; + type UnsignedPriority = EcdsaUnsignedPriority; +} + impl pallet_utility::Config for Runtime { type Event = Event; type Call = Call; @@ -249,6 +286,7 @@ impl parachain_info::Config for Runtime {} impl pallet_aura::Config for Runtime { type AuthorityId = AuraId; + type DisabledValidators = (); } impl cumulus_pallet_aura_ext::Config for Runtime {} @@ -467,6 +505,8 @@ construct_runtime!( Utility: pallet_utility::{Pallet, Call, Event} = 11, Identity: pallet_identity::{Pallet, Call, Storage, Event} = 12, Timestamp: pallet_timestamp::{Pallet, Call, Storage, Inherent} = 13, + Multisig: pallet_multisig::{Pallet, Call, Storage, Event} = 14, + EthCall: pallet_custom_signatures::{Pallet, Call, Event, ValidateUnsigned} = 15, ParachainSystem: cumulus_pallet_parachain_system::{Pallet, Call, Storage, Inherent, Event} = 20, ParachainInfo: parachain_info::{Pallet, Storage, Config} = 21,