diff --git a/.config/lingua.dic b/.config/lingua.dic index 55be1bd3a4..e7cb259563 100644 --- a/.config/lingua.dic +++ b/.config/lingua.dic @@ -146,6 +146,7 @@ jsonrpsee keccak keccak256/M keyring +keystore/MS kusama/S lane malus diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 8fc8767da3..788eb7ce8b 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -116,6 +116,8 @@ check: stage: check <<: *docker-env <<: *test-refs + variables: + RUSTC_WRAPPER: "" script: &check-script - time cargo check --verbose --workspace # Check Rialto benchmarks runtime @@ -139,6 +141,7 @@ test: <<: *test-refs variables: RUSTFLAGS: "-D warnings" + RUSTC_WRAPPER: "" script: &test-script - time cargo test --verbose --workspace diff --git a/Cargo.lock b/Cargo.lock index 4b967b437c..b4aa0fb41b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -14,20 +14,20 @@ dependencies = [ [[package]] name = "addr2line" -version = "0.14.1" +version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a55f82cfe485775d02112886f4169bde0c5894d75e79ead7eafe7e40a25e45f7" +checksum = "e7a2e47a1fbe209ee101dd6d61285226744c6c8d3c21c8dc878ba6cb9f467f3a" dependencies = [ - "gimli 0.23.0", + "gimli 0.24.0", ] [[package]] name = "addr2line" -version = "0.15.2" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7a2e47a1fbe209ee101dd6d61285226744c6c8d3c21c8dc878ba6cb9f467f3a" +checksum = "3e61f2b7f93d2c7d2b08263acaa4a363b3e276806c68af6134c44f523bf1aacd" dependencies = [ - "gimli 0.24.0", + "gimli 0.25.0", ] [[package]] @@ -38,80 +38,55 @@ checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" [[package]] name = "aead" -version = "0.3.2" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fc95d1bdb8e6666b2b217308eeeb09f2d6728d104be3e31916cc74d15420331" +checksum = "0b613b8e1e3cf911a086f53f03bf286f52fd7a7258e4fa606f0ef220d39d8877" dependencies = [ "generic-array 0.14.4", ] [[package]] name = "aes" -version = "0.5.0" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd2bc6d3f370b5666245ff421e231cba4353df936e26986d2918e61a8fd6aef6" +checksum = "9e8b47f52ea9bae42228d07ec09eb676433d7c4ed1ebdf0f1d1c29ed446f1ab8" dependencies = [ - "aes-soft", - "aesni", - "block-cipher", + "cfg-if 1.0.0", + "cipher", + "cpufeatures 0.2.1", + "opaque-debug 0.3.0", ] [[package]] name = "aes-gcm" -version = "0.7.0" +version = "0.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0301c9e9c443494d970a07885e8cf3e587bae8356a1d5abd0999068413f7205f" +checksum = "df5f85a83a7d8b0442b6aa7b504b8212c1733da07b98aae43d4bc21b2cb3cdf6" dependencies = [ "aead", "aes", - "block-cipher", + "cipher", + "ctr", "ghash", - "subtle 2.4.0", + "subtle 2.4.1", ] -[[package]] -name = "aes-soft" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63dd91889c49327ad7ef3b500fd1109dbd3c509a03db0d4a9ce413b79f575cb6" -dependencies = [ - "block-cipher", - "byteorder", - "opaque-debug 0.3.0", -] - -[[package]] -name = "aesni" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a6fe808308bb07d393e2ea47780043ec47683fcf19cf5efc8ca51c50cc8c68a" -dependencies = [ - "block-cipher", - "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" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "43bb833f0bf979d8475d38fbf09ed3b8a55e1885fe93ad3f93239fc6a4f17b98" dependencies = [ - "getrandom 0.2.2", + "getrandom 0.2.3", "once_cell", "version_check", ] [[package]] name = "aho-corasick" -version = "0.7.15" +version = "0.7.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7404febffaa47dac81aa44dba71523c9d069b1bdc50a77db41195149e17f68e5" +checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f" dependencies = [ "memchr", ] @@ -142,9 +117,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.38" +version = "1.0.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afddf7f520a80dbf76e6f50a35bca42a2331ef227a28b3b6dc5c2e2338d114b1" +checksum = "61604a8f862e1d5c3229fdd78f8b02c68dcf73a4c4b05fd636d12240aaa242c1" [[package]] name = "approx" @@ -157,9 +132,9 @@ dependencies = [ [[package]] name = "arbitrary" -version = "1.0.0" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "698b65a961a9d730fb45b6b0327e20207810c9f61ee421b082b27ba003f49e2b" +checksum = "577b08a4acd7b99869f863c50011b01eb73424ccc798ecd996f2e24817adfca7" [[package]] name = "array_tool" @@ -190,9 +165,9 @@ checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" [[package]] name = "arrayvec" -version = "0.7.0" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a2f58b0bb10c380af2b26e57212856b8c9a59e0925b4c20f4a174a49734eaf7" +checksum = "be4dc07131ffa69b8072d35f5007352af944213cde02545e2103680baed38fcd" [[package]] name = "asn1_der" @@ -229,16 +204,16 @@ dependencies = [ [[package]] name = "async-executor" -version = "1.4.0" +version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb877970c7b440ead138f6321a3b5395d6061183af779340b65e20c0fede9146" +checksum = "871f9bb5e0a22eeb7e8cf16641feb87c9dc67032ccf8ff49e772eb9941d3a965" dependencies = [ "async-task", "concurrent-queue", "fastrand", "futures-lite", "once_cell", - "vec-arena", + "slab", ] [[package]] @@ -259,29 +234,28 @@ dependencies = [ [[package]] name = "async-io" -version = "1.3.1" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9315f8f07556761c3e48fec2e6b276004acf426e6dc068b2c2251854d65ee0fd" +checksum = "a811e6a479f2439f0c04038796b5cfb3d2ad56c230e0f2d3f7b04d68cfee607b" dependencies = [ "concurrent-queue", - "fastrand", "futures-lite", "libc", "log", - "nb-connect", "once_cell", "parking", "polling", - "vec-arena", + "slab", + "socket2 0.4.1", "waker-fn", "winapi 0.3.9", ] [[package]] name = "async-lock" -version = "2.3.0" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1996609732bde4a9988bc42125f55f2af5f3c36370e27c778d5191a4a1b63bfb" +checksum = "e6a8ea61bf9947a1007c5cada31e647dbc77b103c679858150003ba697ea798b" dependencies = [ "event-listener", ] @@ -297,15 +271,16 @@ dependencies = [ [[package]] name = "async-process" -version = "1.0.2" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef37b86e2fa961bae5a4d212708ea0154f904ce31d1a4a7f47e1bbc33a0c040b" +checksum = "b21b63ab5a0db0369deb913540af2892750e42d949faacc7a61495ac418a1692" dependencies = [ "async-io", "blocking", "cfg-if 1.0.0", "event-listener", "futures-lite", + "libc", "once_cell", "signal-hook", "winapi 0.3.9", @@ -313,9 +288,9 @@ dependencies = [ [[package]] name = "async-std" -version = "1.9.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9f06685bad74e0570f5213741bea82158279a4103d988e57bfada11ad230341" +checksum = "f8056f1455169ab86dd47b47391e4ab0cbd25410a70e9fe675544f49bafaf952" dependencies = [ "async-attributes", "async-channel", @@ -323,7 +298,7 @@ dependencies = [ "async-io", "async-lock", "async-process", - "crossbeam-utils 0.8.3", + "crossbeam-utils", "futures-channel", "futures-core", "futures-io", @@ -334,7 +309,7 @@ dependencies = [ "memchr", "num_cpus", "once_cell", - "pin-project-lite 0.2.4", + "pin-project-lite 0.2.7", "pin-utils", "slab", "wasm-bindgen-futures", @@ -342,9 +317,9 @@ dependencies = [ [[package]] name = "async-std-resolver" -version = "0.20.1" +version = "0.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f665c56111e244fe38e7708ee10948a4356ad6a548997c21f5a63a0f4e0edc4d" +checksum = "ed4e2c3da14d8ad45acb1e3191db7a918e9505b6f155b218e70a7c9a1a48c638" dependencies = [ "async-std", "async-trait", @@ -362,9 +337,9 @@ checksum = "e91831deabf0d6d7ec49552e489aed63b7456a7a3c46cff62adad428110b0af0" [[package]] name = "async-trait" -version = "0.1.50" +version = "0.1.51" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b98e84bbb4cbcdd97da190ba0c58a1bb0de2c1fdf67d159e192ed766aeca722" +checksum = "44318e776df68115a881de9a8fd1b9e53368d7a4a5ce4cc48517da3393233a5e" dependencies = [ "proc-macro2", "quote", @@ -377,11 +352,11 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fb4401f0a3622dad2e0763fa79e0eb328bc70fb7dccfdd645341f00d671247d6" dependencies = [ - "bytes 1.0.1", + "bytes 1.1.0", "futures-sink", "futures-util", "memchr", - "pin-project-lite 0.2.4", + "pin-project-lite 0.2.7", ] [[package]] @@ -390,11 +365,11 @@ version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0de5164e5edbf51c45fb8c2d9664ae1c095cce1b265ecf7569093c0d66ef690" dependencies = [ - "bytes 1.0.1", + "bytes 1.1.0", "futures-sink", "futures-util", "memchr", - "pin-project-lite 0.2.4", + "pin-project-lite 0.2.7", ] [[package]] @@ -441,18 +416,32 @@ dependencies = [ [[package]] name = "backtrace" -version = "0.3.56" +version = "0.3.61" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d117600f438b1707d4e4ae15d3595657288f8235a0eb593e80ecc98ab34e1bc" +checksum = "e7a905d892734eea339e896738c14b9afce22b5318f64b951e70bf3844419b01" dependencies = [ - "addr2line 0.14.1", + "addr2line 0.16.0", + "cc", "cfg-if 1.0.0", "libc", "miniz_oxide", - "object 0.23.0", + "object 0.26.2", "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" @@ -479,17 +468,73 @@ checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd" [[package]] name = "beef" -version = "0.5.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6736e2428df2ca2848d846c43e88745121a6654696e349ce0054a420815a7409" +checksum = "bed554bd50246729a1ec158d08aa3235d1b69d94ad120ebe187e28894787e736" +dependencies = [ + "serde", +] + +[[package]] +name = "beefy-gadget" +version = "0.1.0" +source = "git+https://github.com/paritytech/grandpa-bridge-gadget?branch=master#c152c45ac331eb8ab40d956ab1d008d181810ef4" +dependencies = [ + "beefy-primitives", + "fnv", + "futures 0.3.17", + "hex", + "log", + "parity-scale-codec", + "parking_lot 0.11.2", + "sc-client-api", + "sc-keystore", + "sc-network", + "sc-network-gossip", + "sc-utils", + "sp-api", + "sp-application-crypto", + "sp-arithmetic", + "sp-blockchain", + "sp-consensus", + "sp-core", + "sp-keystore", + "sp-runtime", + "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=master#c152c45ac331eb8ab40d956ab1d008d181810ef4" dependencies = [ + "beefy-gadget", + "beefy-primitives", + "futures 0.3.17", + "jsonrpc-core 18.0.0", + "jsonrpc-core-client", + "jsonrpc-derive", + "jsonrpc-pubsub", + "log", + "parity-scale-codec", + "sc-rpc", "serde", + "serde_json", + "sp-core", + "sp-runtime", ] +[[package]] +name = "beefy-merkle-tree" +version = "0.1.0" +source = "git+https://github.com/paritytech/grandpa-bridge-gadget?branch=master#c152c45ac331eb8ab40d956ab1d008d181810ef4" + [[package]] name = "beefy-primitives" version = "0.1.0" -source = "git+https://github.com/paritytech/grandpa-bridge-gadget?branch=master#2e450ac733d55b2f5e42a304afa287be6abcc53b" +source = "git+https://github.com/paritytech/grandpa-bridge-gadget?branch=master#c152c45ac331eb8ab40d956ab1d008d181810ef4" dependencies = [ "parity-scale-codec", "sp-api", @@ -501,19 +546,18 @@ dependencies = [ [[package]] name = "bincode" -version = "1.3.2" +version = "1.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d175dfa69e619905c4c3cdb7c3c203fa3bdd5d51184e3afdb2742c0280493772" +checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" dependencies = [ - "byteorder", "serde", ] [[package]] name = "bindgen" -version = "0.57.0" +version = "0.59.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd4865004a46a0aafb2a0a5eb19d3c9fc46ee5f063a6cfc605c69ac9ecf5263d" +checksum = "453c49e5950bb0eb63bb3df640e31618846c89d5b7faa54040d76e98e0134375" dependencies = [ "bitflags", "cexpr", @@ -530,27 +574,39 @@ 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" -version = "0.20.1" +version = "0.19.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8942c8d352ae1838c9dda0b0ca2ab657696ef2232a20147cf1b30ae1a9cb4321" +dependencies = [ + "funty", + "radium 0.5.3", + "tap", + "wyz", +] + +[[package]] +name = "bitvec" +version = "0.20.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5011ffc90248764d7005b0e10c7294f5aa1bd87d9dd7248f4ad475b347c294d" +checksum = "7774144344a4faa177370406a7ff5f1da24303817368584c6206c8303eb07848" dependencies = [ "funty", - "radium", + "radium 0.6.2", "tap", "wyz", ] [[package]] name = "blake2" -version = "0.9.1" +version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10a5720225ef5daecf08657f23791354e1685a8c91a4c60c7f3d3b2892f978f4" +checksum = "0a4e37d16930f5459780f5621038b6382b9bb37c19016f39fb6b5808d831f174" dependencies = [ "crypto-mac 0.8.0", "digest 0.9.0", @@ -591,9 +647,9 @@ dependencies = [ [[package]] name = "blake3" -version = "0.3.7" +version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9ff35b701f3914bdb8fad3368d822c766ef2858b2583198e41639b936f09d3f" +checksum = "b64485778c4f16a6a5a9d335e80d449ac6c70cdd6a06d2af18a6f6f775a125b3" dependencies = [ "arrayref", "arrayvec 0.5.2", @@ -613,7 +669,7 @@ dependencies = [ "block-padding 0.1.5", "byte-tools", "byteorder", - "generic-array 0.12.3", + "generic-array 0.12.4", ] [[package]] @@ -626,15 +682,6 @@ dependencies = [ "generic-array 0.14.4", ] -[[package]] -name = "block-cipher" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f337a3e6da609650eb74e02bc9fac7b735049f7623ab12f2e4c719316fcc7e80" -dependencies = [ - "generic-array 0.14.4", -] - [[package]] name = "block-padding" version = "0.1.5" @@ -664,6 +711,15 @@ dependencies = [ "once_cell", ] +[[package]] +name = "bounded-vec" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "afdd1dffefe5fc66262a524b91087c43b16e478b2e3dc49eb11b0e2fd6b6ec90" +dependencies = [ + "thiserror", +] + [[package]] name = "bp-currency-exchange" version = "0.1.0" @@ -684,7 +740,7 @@ dependencies = [ "hex-literal 0.2.1", "impl-rlp", "impl-serde", - "libsecp256k1", + "libsecp256k1 0.3.5", "parity-bytes", "parity-scale-codec", "plain_hasher", @@ -723,7 +779,7 @@ dependencies = [ "bp-polkadot-core", "bp-runtime", "frame-support", - "smallvec 1.6.1", + "smallvec", "sp-api", "sp-std", "sp-version", @@ -743,7 +799,7 @@ dependencies = [ name = "bp-messages" version = "0.1.0" dependencies = [ - "bitvec", + "bitvec 0.20.4", "bp-runtime", "frame-support", "frame-system", @@ -783,7 +839,7 @@ dependencies = [ "bp-polkadot-core", "bp-runtime", "frame-support", - "smallvec 1.6.1", + "smallvec", "sp-api", "sp-std", "sp-version", @@ -829,7 +885,7 @@ dependencies = [ "bp-runtime", "frame-support", "parity-scale-codec", - "smallvec 1.6.1", + "smallvec", "sp-api", "sp-runtime", "sp-std", @@ -885,7 +941,7 @@ dependencies = [ "bp-runtime", "frame-support", "parity-scale-codec", - "smallvec 1.6.1", + "smallvec", "sp-api", "sp-runtime", "sp-std", @@ -936,9 +992,9 @@ checksum = "771fe0050b883fcc3ea2359b1a96bcfbc090b7116eae7c3c512c7a083fdf23d3" [[package]] name = "bstr" -version = "0.2.15" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a40b47ad93e1a5404e6c18dec46b628214fee441c70f4ab5d6942142cc268a3d" +checksum = "90682c8d613ad3373e66de8c6411e0ae2ab2571e879d2efbf73558cc66f21279" dependencies = [ "memchr", ] @@ -954,9 +1010,9 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.6.1" +version = "3.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63396b8a4b9de3f4fdfb320ab6080762242f66a8ef174c49d8e19b674db4cdbe" +checksum = "9c59e7af012c713f529e7a3ee57ce9b31ddd858d4b512923602f74608b009631" [[package]] name = "byte-slice-cast" @@ -972,9 +1028,9 @@ checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" [[package]] name = "byteorder" -version = "1.3.4" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08c48aae112d48ed9f069b33538ea9e3e90aa263cfa3d1c24309612b1f7472de" +checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" [[package]] name = "bytes" @@ -983,7 +1039,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c" dependencies = [ "byteorder", - "either", "iovec", ] @@ -995,9 +1050,9 @@ checksum = "0e4cec68f03f32e44924783795810fa50a7035d8c8ebe78580ad7e6c703fba38" [[package]] name = "bytes" -version = "1.0.1" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b700ce4376041dcd0a327fd0097c41095743c4c8af8887265942faf1100bd040" +checksum = "c4872d67bab6358e59559027aa3b9157c53d9358c51423c17554809a8858e0f8" [[package]] name = "cache-padded" @@ -1007,18 +1062,18 @@ checksum = "631ae5198c9be5e753e5cc215e1bd73c2b466a3565173db433f52bb9d3e66dba" [[package]] name = "camino" -version = "1.0.4" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4648c6d00a709aa069a236adcaae4f605a6241c72bf5bee79331a4b625921a9" +checksum = "52d74260d9bf6944e2208aa46841b4b8f0d7ffc0849a06837b2f510337f86b2b" dependencies = [ "serde", ] [[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", ] @@ -1039,18 +1094,18 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.67" +version = "1.0.70" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3c69b077ad434294d3ce9f1f6143a2a4b89a8a2d54ef813d85003a4fd1137fd" +checksum = "d26a6ce4b6a484fa3edb70f7efa6fc430fd2b87285fe8b84304fd0936faa0dc0" dependencies = [ "jobserver", ] [[package]] name = "cexpr" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4aedb84272dbe89af497cf81375129abda4fc0a9e7c5d317498c15cc30c0d27" +checksum = "db507a7679252d2276ed0dd8113c6875ec56d3089f9225b2b42c30cc1f8e5c89" dependencies = [ "nom", ] @@ -1075,24 +1130,26 @@ checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e" [[package]] name = "chacha20" -version = "0.5.0" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "244fbce0d47e97e8ef2f63b81d5e05882cb518c68531eb33194990d7b7e85845" +checksum = "fee7ad89dc1128635074c268ee661f90c3f7e83d9fd12910608c36b47d6c3412" dependencies = [ - "stream-cipher", + "cfg-if 1.0.0", + "cipher", + "cpufeatures 0.1.5", "zeroize", ] [[package]] name = "chacha20poly1305" -version = "0.6.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9bf18d374d66df0c05cdddd528a7db98f78c28e2519b120855c4f84c5027b1f5" +checksum = "1580317203210c517b6d44794abfbe600698276db18127e37ad3e69bf5e848e5" dependencies = [ "aead", "chacha20", + "cipher", "poly1305", - "stream-cipher", "zeroize", ] @@ -1116,33 +1173,33 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ff0e3bc0b6446b3f9663c1a6aba6ef06c5aeaa1bc92bd18077be337198ab9768" dependencies = [ "multibase", - "multihash", + "multihash 0.13.2", "unsigned-varint 0.5.1", ] [[package]] name = "cipher" -version = "0.2.5" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12f8e7987cbd042a63249497f41aed09f8e65add917ea6566effbc56578d6801" +checksum = "7ee52072ec15386f770805afd189a01c8841be8696bed250fa2f13c4c0d6dfb7" dependencies = [ "generic-array 0.14.4", ] [[package]] name = "ckb-merkle-mountain-range" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e486fe53bb9f2ca0f58cb60e8679a5354fd6687a839942ef0a75967250289ca6" +checksum = "4f061f97d64fd1822664bdfb722f7ae5469a97b77567390f7442be5b5dc82a5b" dependencies = [ "cfg-if 0.1.10", ] [[package]] name = "clang-sys" -version = "1.2.0" +version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "853eda514c284c2287f4bf20ae614f8781f40a81d32ecda6e91449304dfe077c" +checksum = "10612c0ec0e0a1ff0e97980647cb058a6e7aedb913d01d009c406b8b7d0b26ee" dependencies = [ "glob", "libc", @@ -1201,32 +1258,16 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" -[[package]] -name = "core-foundation" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57d24c7a13c43e870e37c1556b74555437870a04514f7685f5b354e090567171" -dependencies = [ - "core-foundation-sys 0.7.0", - "libc", -] - [[package]] name = "core-foundation" version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0a89e2ae426ea83155dccf10c0fa6b1463ef6d5fcb44cee0b224a408fa640a62" dependencies = [ - "core-foundation-sys 0.8.2", + "core-foundation-sys", "libc", ] -[[package]] -name = "core-foundation-sys" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3a71ab494c0b5b860bdc8407ae08978052417070c2ced38573a9157ad75b8ac" - [[package]] name = "core-foundation-sys" version = "0.8.2" @@ -1235,25 +1276,30 @@ checksum = "ea221b5284a47e40033bf9b66f35f984ec0ea2931eb03505246cd27a963f981b" [[package]] name = "cpp_demangle" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44919ecaf6f99e8e737bc239408931c9a01e9a6c74814fee8242dd2506b65390" +checksum = "8ea47428dc9d2237f3c6bc134472edfd63ebba0af932e783506dcfd66f10d18a" dependencies = [ "cfg-if 1.0.0", - "glob", ] [[package]] -name = "cpuid-bool" -version = "0.1.2" +name = "cpufeatures" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8aebca1129a03dc6dc2b127edd729435bbc4a37e1d5f4d7513165089ceb02634" +checksum = "66c99696f6c9dd7f35d486b9d04d7e6e202aa3e8c40d553f2fdf5e7e0c6a71ef" +dependencies = [ + "libc", +] [[package]] -name = "cpuid-bool" -version = "0.2.0" +name = "cpufeatures" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dcb25d077389e53838a8158c8e99174c5a9d902dee4904320db714f3c653ffba" +checksum = "95059428f66df56b63431fdb4e1947ed2190586af5c5a8a8b71122bdf5a7f469" +dependencies = [ + "libc", +] [[package]] name = "cranelift-bforest" @@ -1278,7 +1324,7 @@ dependencies = [ "log", "regalloc", "serde", - "smallvec 1.6.1", + "smallvec", "target-lexicon", ] @@ -1318,7 +1364,7 @@ checksum = "c31b783b351f966fce33e3c03498cb116d16d97a8f9978164a60920bd0d3a99c" dependencies = [ "cranelift-codegen", "log", - "smallvec 1.6.1", + "smallvec", "target-lexicon", ] @@ -1341,10 +1387,10 @@ dependencies = [ "cranelift-codegen", "cranelift-entity", "cranelift-frontend", - "itertools 0.10.0", + "itertools", "log", "serde", - "smallvec 1.6.1", + "smallvec", "thiserror", "wasmparser", ] @@ -1360,93 +1406,44 @@ dependencies = [ [[package]] name = "crossbeam-channel" -version = "0.5.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dca26ee1f8d361640700bde38b2c37d8c22b3ce2d360e1fc1c74ea4b0aa7d775" +checksum = "06ed27e177f16d65f0f0c22a213e17c696ace5dd64b14258b52f9417ccb52db4" dependencies = [ "cfg-if 1.0.0", - "crossbeam-utils 0.8.3", + "crossbeam-utils", ] [[package]] name = "crossbeam-deque" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f02af974daeee82218205558e51ec8768b48cf524bd01d550abe5573a608285" -dependencies = [ - "crossbeam-epoch 0.8.2", - "crossbeam-utils 0.7.2", - "maybe-uninit", -] - -[[package]] -name = "crossbeam-deque" -version = "0.8.0" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94af6efb46fef72616855b036a624cf27ba656ffc9be1b9a3c931cfc7749a9a9" +checksum = "6455c0ca19f0d2fbf751b908d5c55c1f5cbc65e03c4225427254b46890bdde1e" dependencies = [ "cfg-if 1.0.0", - "crossbeam-epoch 0.9.3", - "crossbeam-utils 0.8.3", -] - -[[package]] -name = "crossbeam-epoch" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "058ed274caafc1f60c4997b5fc07bf7dc7cca454af7c6e81edffe5f33f70dace" -dependencies = [ - "autocfg", - "cfg-if 0.1.10", - "crossbeam-utils 0.7.2", - "lazy_static", - "maybe-uninit", - "memoffset 0.5.6", - "scopeguard", + "crossbeam-epoch", + "crossbeam-utils", ] [[package]] name = "crossbeam-epoch" -version = "0.9.3" +version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2584f639eb95fea8c798496315b297cf81b9b58b6d30ab066a75455333cf4b12" +checksum = "4ec02e091aa634e2c3ada4a392989e7c3116673ef0ac5b72232439094d73b7fd" dependencies = [ "cfg-if 1.0.0", - "crossbeam-utils 0.8.3", + "crossbeam-utils", "lazy_static", - "memoffset 0.6.1", + "memoffset", "scopeguard", ] -[[package]] -name = "crossbeam-queue" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "774ba60a54c213d409d5353bda12d49cd68d14e45036a285234c8d6f91f92570" -dependencies = [ - "cfg-if 0.1.10", - "crossbeam-utils 0.7.2", - "maybe-uninit", -] - -[[package]] -name = "crossbeam-utils" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8" -dependencies = [ - "autocfg", - "cfg-if 0.1.10", - "lazy_static", -] - [[package]] name = "crossbeam-utils" -version = "0.8.3" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7e9d99fa91428effe99c5c6d4634cdeba32b8cf784fc428a2a687f61a952c49" +checksum = "d82cfc11ce7f2c3faef78d8a684447b40d503d9681acebed6cb728d45940c4db" dependencies = [ - "autocfg", "cfg-if 1.0.0", "lazy_static", ] @@ -1463,7 +1460,7 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4434400df11d95d556bac068ddfedd482915eb18fe8bea89bc80b6e4b1c179e5" dependencies = [ - "generic-array 0.12.3", + "generic-array 0.12.4", "subtle 1.0.0", ] @@ -1474,28 +1471,47 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b584a330336237c1eecd3e94266efb216c56ed91225d634cb2991c5f3fd1aeab" dependencies = [ "generic-array 0.14.4", - "subtle 2.4.0", + "subtle 2.4.1", +] + +[[package]] +name = "crypto-mac" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1d1a86f49236c215f271d40892d5fc950490551400b02ef360692c29815c714" +dependencies = [ + "generic-array 0.14.4", + "subtle 2.4.1", ] [[package]] name = "ct-logs" -version = "0.7.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c8e13110a84b6315df212c045be706af261fd364791cad863285439ebba672e" +checksum = "c1a816186fa68d9e426e3cb4ae4dff1fcd8e4a2c34b781bf7a822574a0d0aac8" dependencies = [ "sct", ] [[package]] name = "ctor" -version = "0.1.19" +version = "0.1.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8f45d9ad417bcef4817d614a501ab55cdd96a6fdb24f49aab89a54acfd66b19" +checksum = "ccc0a48a9b826acdf4028595adc9db92caea352f7af011a3034acd172a52a0aa" dependencies = [ "quote", "syn", ] +[[package]] +name = "ctr" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "049bb91fb4aaf0e3c7efa6cd5ef877dbbbd15b39dad06d9948de4ec8a75761ea" +dependencies = [ + "cipher", +] + [[package]] name = "cuckoofilter" version = "0.5.0" @@ -1508,168 +1524,511 @@ dependencies = [ ] [[package]] -name = "curl" -version = "0.4.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a872858e9cb9e3b96c80dd78774ad9e32e44d3b05dc31e142b858d14aebc82c" +name = "cumulus-client-cli" +version = "0.1.0" +source = "git+https://github.com/paritytech/cumulus?branch=master#5af2990cfd3711f86c7cb8606b22364208a5c32d" dependencies = [ - "curl-sys", - "libc", - "openssl-probe", - "openssl-sys", - "schannel", - "socket2 0.3.19", - "winapi 0.3.9", + "sc-cli", + "sc-service", + "structopt", ] [[package]] -name = "curl-sys" -version = "0.4.41+curl-7.75.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ec466abd277c7cab2905948f3e94d10bc4963f1f5d47921c1cc4ffd2028fe65" +name = "cumulus-client-collator" +version = "0.1.0" +source = "git+https://github.com/paritytech/cumulus?branch=master#5af2990cfd3711f86c7cb8606b22364208a5c32d" dependencies = [ - "cc", - "libc", - "libnghttp2-sys", - "libz-sys", - "openssl-sys", - "pkg-config", - "vcpkg", - "winapi 0.3.9", + "cumulus-client-consensus-common", + "cumulus-client-network", + "cumulus-primitives-core", + "futures 0.3.17", + "parity-scale-codec", + "parking_lot 0.10.2", + "polkadot-node-primitives", + "polkadot-node-subsystem", + "polkadot-overseer", + "polkadot-primitives", + "sc-client-api", + "sp-api", + "sp-consensus", + "sp-core", + "sp-runtime", + "tracing", ] [[package]] -name = "curve25519-dalek" -version = "2.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "434e1720189a637d44fe464f4df1e6eb900b4835255b14354497c78af37d9bb8" +name = "cumulus-client-consensus-aura" +version = "0.1.0" +source = "git+https://github.com/paritytech/cumulus?branch=master#5af2990cfd3711f86c7cb8606b22364208a5c32d" dependencies = [ - "byteorder", - "digest 0.8.1", - "rand_core 0.5.1", - "subtle 2.4.0", - "zeroize", + "async-trait", + "cumulus-client-consensus-common", + "cumulus-primitives-core", + "futures 0.3.17", + "parity-scale-codec", + "polkadot-client", + "sc-client-api", + "sc-consensus", + "sc-consensus-aura", + "sc-consensus-slots", + "sc-telemetry", + "sp-api", + "sp-application-crypto", + "sp-block-builder", + "sp-blockchain", + "sp-consensus", + "sp-consensus-aura", + "sp-core", + "sp-inherents", + "sp-keystore", + "sp-runtime", + "substrate-prometheus-endpoint", + "tracing", ] [[package]] -name = "curve25519-dalek" -version = "3.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f627126b946c25a4638eec0ea634fc52506dea98db118aae985118ce7c3d723f" +name = "cumulus-client-consensus-common" +version = "0.1.0" +source = "git+https://github.com/paritytech/cumulus?branch=master#5af2990cfd3711f86c7cb8606b22364208a5c32d" dependencies = [ - "byteorder", - "digest 0.9.0", - "rand_core 0.5.1", - "subtle 2.4.0", - "zeroize", + "async-trait", + "dyn-clone", + "futures 0.3.17", + "parity-scale-codec", + "polkadot-primitives", + "sc-client-api", + "sc-consensus", + "sp-api", + "sp-blockchain", + "sp-consensus", + "sp-runtime", + "sp-trie", + "tracing", ] [[package]] -name = "data-encoding" -version = "2.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ee2393c4a91429dffb4bedf19f4d6abf27d8a732c8ce4980305d782e5426d57" +name = "cumulus-client-network" +version = "0.1.0" +source = "git+https://github.com/paritytech/cumulus?branch=master#5af2990cfd3711f86c7cb8606b22364208a5c32d" +dependencies = [ + "derive_more", + "futures 0.3.17", + "futures-timer 3.0.2", + "parity-scale-codec", + "parking_lot 0.10.2", + "polkadot-client", + "polkadot-node-primitives", + "polkadot-parachain", + "polkadot-primitives", + "sc-client-api", + "sp-api", + "sp-blockchain", + "sp-consensus", + "sp-core", + "sp-runtime", + "tracing", +] [[package]] -name = "data-encoding-macro" -version = "0.1.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a94feec3d2ba66c0b6621bca8bc6f68415b1e5c69af3586fdd0af9fd9f29b17" +name = "cumulus-client-pov-recovery" +version = "0.1.0" +source = "git+https://github.com/paritytech/cumulus?branch=master#5af2990cfd3711f86c7cb8606b22364208a5c32d" dependencies = [ - "data-encoding", - "data-encoding-macro-internal", + "cumulus-primitives-core", + "futures 0.3.17", + "futures-timer 3.0.2", + "parity-scale-codec", + "polkadot-node-primitives", + "polkadot-node-subsystem", + "polkadot-overseer", + "polkadot-primitives", + "rand 0.8.4", + "sc-client-api", + "sc-consensus", + "sp-api", + "sp-consensus", + "sp-maybe-compressed-blob", + "sp-runtime", + "tracing", ] [[package]] -name = "data-encoding-macro-internal" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0f83e699727abca3c56e187945f303389590305ab2f0185ea445aa66e8d5f2a" +name = "cumulus-client-service" +version = "0.1.0" +source = "git+https://github.com/paritytech/cumulus?branch=master#5af2990cfd3711f86c7cb8606b22364208a5c32d" dependencies = [ - "data-encoding", - "syn", + "cumulus-client-collator", + "cumulus-client-consensus-common", + "cumulus-client-pov-recovery", + "cumulus-primitives-core", + "parity-scale-codec", + "parking_lot 0.10.2", + "polkadot-overseer", + "polkadot-primitives", + "polkadot-service", + "sc-chain-spec", + "sc-client-api", + "sc-consensus", + "sc-consensus-babe", + "sc-service", + "sc-telemetry", + "sc-tracing", + "sp-api", + "sp-blockchain", + "sp-consensus", + "sp-core", + "sp-runtime", + "tracing", ] [[package]] -name = "derivative" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" +name = "cumulus-pallet-aura-ext" +version = "0.1.0" +source = "git+https://github.com/paritytech/cumulus?branch=master#5af2990cfd3711f86c7cb8606b22364208a5c32d" dependencies = [ - "proc-macro2", - "quote", - "syn", + "frame-executive", + "frame-support", + "frame-system", + "pallet-aura", + "parity-scale-codec", + "serde", + "sp-application-crypto", + "sp-consensus-aura", + "sp-runtime", + "sp-std", ] [[package]] -name = "derive_more" -version = "0.99.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40eebddd2156ce1bb37b20bbe5151340a31828b1f2d22ba4141f3531710e38df" +name = "cumulus-pallet-dmp-queue" +version = "0.1.0" +source = "git+https://github.com/paritytech/cumulus?branch=master#5af2990cfd3711f86c7cb8606b22364208a5c32d" dependencies = [ - "convert_case", - "proc-macro2", - "quote", - "rustc_version 0.3.3", - "syn", + "cumulus-primitives-core", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "sp-io", + "sp-runtime", + "sp-std", + "xcm", + "xcm-executor", ] [[package]] -name = "digest" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3d0c8c8752312f9713efd397ff63acb9f85585afbf179282e720e7704954dd5" +name = "cumulus-pallet-parachain-system" +version = "0.1.0" +source = "git+https://github.com/paritytech/cumulus?branch=master#5af2990cfd3711f86c7cb8606b22364208a5c32d" dependencies = [ - "generic-array 0.12.3", + "cumulus-pallet-parachain-system-proc-macro", + "cumulus-primitives-core", + "cumulus-primitives-parachain-inherent", + "environmental", + "frame-support", + "frame-system", + "log", + "pallet-balances", + "parity-scale-codec", + "polkadot-parachain", + "serde", + "sp-core", + "sp-externalities", + "sp-inherents", + "sp-io", + "sp-runtime", + "sp-state-machine", + "sp-std", + "sp-trie", + "sp-version", + "xcm", ] [[package]] -name = "digest" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" +name = "cumulus-pallet-parachain-system-proc-macro" +version = "0.1.0" +source = "git+https://github.com/paritytech/cumulus?branch=master#5af2990cfd3711f86c7cb8606b22364208a5c32d" dependencies = [ - "generic-array 0.14.4", + "proc-macro-crate 1.1.0", + "proc-macro2", + "quote", + "syn", ] [[package]] -name = "directories" -version = "3.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8fed639d60b58d0f53498ab13d26f621fd77569cc6edb031f4cc36a2ad9da0f" +name = "cumulus-pallet-xcm" +version = "0.1.0" +source = "git+https://github.com/paritytech/cumulus?branch=master#5af2990cfd3711f86c7cb8606b22364208a5c32d" dependencies = [ - "dirs-sys", + "cumulus-primitives-core", + "frame-support", + "frame-system", + "parity-scale-codec", + "serde", + "sp-io", + "sp-runtime", + "sp-std", + "xcm", ] [[package]] -name = "directories-next" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "339ee130d97a610ea5a5872d2bbb130fdf68884ff09d3028b81bec8a1ac23bbc" +name = "cumulus-pallet-xcmp-queue" +version = "0.1.0" +source = "git+https://github.com/paritytech/cumulus?branch=master#5af2990cfd3711f86c7cb8606b22364208a5c32d" dependencies = [ - "cfg-if 1.0.0", - "dirs-sys-next", + "cumulus-primitives-core", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "rand_chacha 0.3.1", + "sp-runtime", + "sp-std", + "xcm", + "xcm-executor", ] [[package]] -name = "dirs-sys" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e93d7f5705de3e49895a2b5e0b8855a1c27f080192ae9c32a6432d50741a57a" +name = "cumulus-primitives-core" +version = "0.1.0" +source = "git+https://github.com/paritytech/cumulus?branch=master#5af2990cfd3711f86c7cb8606b22364208a5c32d" dependencies = [ - "libc", - "redox_users 0.3.5", - "winapi 0.3.9", + "frame-support", + "impl-trait-for-tuples", + "parity-scale-codec", + "polkadot-core-primitives", + "polkadot-parachain", + "polkadot-primitives", + "sp-api", + "sp-runtime", + "sp-std", + "sp-trie", ] [[package]] -name = "dirs-sys-next" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" +name = "cumulus-primitives-parachain-inherent" +version = "0.1.0" +source = "git+https://github.com/paritytech/cumulus?branch=master#5af2990cfd3711f86c7cb8606b22364208a5c32d" +dependencies = [ + "async-trait", + "cumulus-primitives-core", + "cumulus-test-relay-sproof-builder", + "parity-scale-codec", + "polkadot-client", + "sc-client-api", + "sp-api", + "sp-core", + "sp-inherents", + "sp-runtime", + "sp-state-machine", + "sp-std", + "sp-trie", + "tracing", +] + +[[package]] +name = "cumulus-primitives-timestamp" +version = "0.1.0" +source = "git+https://github.com/paritytech/cumulus?branch=master#5af2990cfd3711f86c7cb8606b22364208a5c32d" +dependencies = [ + "cumulus-primitives-core", + "sp-inherents", + "sp-std", + "sp-timestamp", +] + +[[package]] +name = "cumulus-primitives-utility" +version = "0.1.0" +source = "git+https://github.com/paritytech/cumulus?branch=master#5af2990cfd3711f86c7cb8606b22364208a5c32d" +dependencies = [ + "cumulus-primitives-core", + "frame-support", + "parity-scale-codec", + "polkadot-core-primitives", + "polkadot-parachain", + "polkadot-primitives", + "sp-runtime", + "sp-std", + "sp-trie", + "xcm", +] + +[[package]] +name = "cumulus-test-relay-sproof-builder" +version = "0.1.0" +source = "git+https://github.com/paritytech/cumulus?branch=master#5af2990cfd3711f86c7cb8606b22364208a5c32d" +dependencies = [ + "cumulus-primitives-core", + "parity-scale-codec", + "polkadot-primitives", + "sp-runtime", + "sp-state-machine", + "sp-std", +] + +[[package]] +name = "curl" +version = "0.4.38" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "003cb79c1c6d1c93344c7e1201bb51c2148f24ec2bd9c253709d6b2efb796515" +dependencies = [ + "curl-sys", + "libc", + "openssl-probe", + "openssl-sys", + "schannel", + "socket2 0.4.1", + "winapi 0.3.9", +] + +[[package]] +name = "curl-sys" +version = "0.4.45+curl-7.78.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de9e5a72b1c744eb5dd20b2be4d7eb84625070bb5c4ab9b347b70464ab1e62eb" +dependencies = [ + "cc", + "libc", + "libnghttp2-sys", + "libz-sys", + "openssl-sys", + "pkg-config", + "vcpkg", + "winapi 0.3.9", +] + +[[package]] +name = "curve25519-dalek" +version = "2.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a9b85542f99a2dfa2a1b8e192662741c9859a846b296bef1c92ef9b58b5a216" +dependencies = [ + "byteorder", + "digest 0.8.1", + "rand_core 0.5.1", + "subtle 2.4.1", + "zeroize", +] + +[[package]] +name = "curve25519-dalek" +version = "3.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b9fdf9972b2bd6af2d913799d9ebc165ea4d2e65878e329d9c6b372c4491b61" +dependencies = [ + "byteorder", + "digest 0.9.0", + "rand_core 0.5.1", + "subtle 2.4.1", + "zeroize", +] + +[[package]] +name = "data-encoding" +version = "2.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ee2393c4a91429dffb4bedf19f4d6abf27d8a732c8ce4980305d782e5426d57" + +[[package]] +name = "data-encoding-macro" +version = "0.1.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86927b7cd2fe88fa698b87404b287ab98d1a0063a34071d92e575b72d3029aca" +dependencies = [ + "data-encoding", + "data-encoding-macro-internal", +] + +[[package]] +name = "data-encoding-macro-internal" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a5bbed42daaa95e780b60a50546aa345b8413a1e46f9a40a12907d3598f038db" +dependencies = [ + "data-encoding", + "syn", +] + +[[package]] +name = "derivative" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "derive_more" +version = "0.99.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "40eebddd2156ce1bb37b20bbe5151340a31828b1f2d22ba4141f3531710e38df" +dependencies = [ + "convert_case", + "proc-macro2", + "quote", + "rustc_version 0.3.3", + "syn", +] + +[[package]] +name = "digest" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3d0c8c8752312f9713efd397ff63acb9f85585afbf179282e720e7704954dd5" +dependencies = [ + "generic-array 0.12.4", +] + +[[package]] +name = "digest" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" +dependencies = [ + "generic-array 0.14.4", +] + +[[package]] +name = "directories" +version = "3.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e69600ff1703123957937708eb27f7a564e48885c537782722ed0ba3189ce1d7" +dependencies = [ + "dirs-sys", +] + +[[package]] +name = "directories-next" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "339ee130d97a610ea5a5872d2bbb130fdf68884ff09d3028b81bec8a1ac23bbc" +dependencies = [ + "cfg-if 1.0.0", + "dirs-sys-next", +] + +[[package]] +name = "dirs-sys" +version = "0.3.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "03d86534ed367a67548dc68113a0f5db55432fdfbb6e6f9d77704397d95d5780" +dependencies = [ + "libc", + "redox_users", + "winapi 0.3.9", +] + +[[package]] +name = "dirs-sys-next" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d" dependencies = [ "libc", - "redox_users 0.4.0", + "redox_users", "winapi 0.3.9", ] @@ -1730,9 +2089,9 @@ checksum = "ee2626afccd7561a06cf1367e2950c4718ea04565e20fb5029b6c7d8ad09abcf" [[package]] name = "ed25519" -version = "1.0.3" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37c66a534cbb46ab4ea03477eae19d5c22c01da8258030280b7bd9d8433fb6ef" +checksum = "4620d40f6d2601794401d6dd95a5cf69b6c157852539470eeda433a99b3c0efc" dependencies = [ "signature", ] @@ -1743,11 +2102,11 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c762bae6dcaf24c4c84667b8579785430908723d5c889f469d76a41d59cc7a9d" dependencies = [ - "curve25519-dalek 3.0.2", + "curve25519-dalek 3.2.0", "ed25519", "rand 0.7.3", "serde", - "sha2 0.9.3", + "sha2 0.9.8", "zeroize", ] @@ -1824,9 +2183,22 @@ dependencies = [ [[package]] name = "env_logger" -version = "0.8.3" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a19187fea3ac7e84da7dacf48de0c45d63c6a76f9490dae389aead16c243fce3" +dependencies = [ + "atty", + "humantime 2.1.0", + "log", + "regex", + "termcolor", +] + +[[package]] +name = "env_logger" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17392a012ea30ef05a610aa97dfb49496e71c9f676b27879922ea5bdf60d9d3f" +checksum = "0b2cf0344971ee6c64c31be0d530793fba457d322dfec2810c453d0ef228f9c3" dependencies = [ "atty", "humantime 2.1.0", @@ -1843,9 +2215,9 @@ checksum = "68b91989ae21441195d7d9b9993a2f9295c7e1a8c96255d8b729accddc124797" [[package]] name = "erased-serde" -version = "0.3.13" +version = "0.3.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0465971a8cc1fa2455c8465aaa377131e1f1cf4983280f474a13e68793aa770c" +checksum = "3de9ad4541d99dc22b59134e7ff8dc3d6c988c89ecd7324bf10a8362b07a2afa" dependencies = [ "serde", ] @@ -1960,11 +2332,11 @@ dependencies = [ "ethabi-contract", "ethabi-derive", "exchange-relay", - "futures 0.3.15", + "futures 0.3.17", "headers-relay", "hex", - "hex-literal 0.3.1", - "libsecp256k1", + "hex-literal 0.3.3", + "libsecp256k1 0.3.5", "log", "num-traits", "parity-scale-codec", @@ -2007,10 +2379,10 @@ dependencies = [ "async-std", "async-trait", "backoff", - "futures 0.3.15", + "futures 0.3.17", "log", "num-traits", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "relay-utils", ] @@ -2020,29 +2392,7 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e43f2f1833d64e33f15592464d6fdd70f349dda7b1a53088eb83cd94014008c5" dependencies = [ - "futures 0.3.15", -] - -[[package]] -name = "failure" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d32e9bd16cc02eae7db7ef620b392808b89f6a5e16bb3497d159c6b92a0f4f86" -dependencies = [ - "backtrace", - "failure_derive", -] - -[[package]] -name = "failure_derive" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa4da3c766cd7a0db8242e326e9e4e081edd567072893ed320008189715366a4" -dependencies = [ - "proc-macro2", - "quote", - "syn", - "synstructure", + "futures 0.3.17", ] [[package]] @@ -2059,9 +2409,9 @@ checksum = "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7" [[package]] name = "fastrand" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca5faf057445ce5c9d4329e382b2ce7ca38550ef3b73a5348362d5f24e0c7fe3" +checksum = "b394ed3d285a429378d3b384b9eb1285267e7df4b166df24b7a6939a04dc392e" dependencies = [ "instant", ] @@ -2087,17 +2437,18 @@ dependencies = [ [[package]] name = "finality-grandpa" -version = "0.14.1" +version = "0.14.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74a1bfdcc776e63e49f741c7ce6116fa1b887e8ac2e3ccb14dd4aa113e54feb9" +checksum = "e8ac3ff5224ef91f3c97e03eb1de2db82743427e91aaa5ac635f454f0b164f5a" dependencies = [ "either", - "futures 0.3.15", + "futures 0.3.17", "futures-timer 3.0.2", "log", "num-traits", "parity-scale-codec", - "parking_lot 0.11.1", + "parking_lot 0.11.2", + "scale-info", ] [[package]] @@ -2109,11 +2460,11 @@ dependencies = [ "async-trait", "backoff", "bp-header-chain", - "futures 0.3.15", + "futures 0.3.17", "headers-relay", "log", "num-traits", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "relay-utils", ] @@ -2124,7 +2475,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cfcf0ed7fe52a17a03854ec54a9f76d6d84508d1c0e66bc1793301c73fc8493c" dependencies = [ "byteorder", - "rand 0.8.3", + "rand 0.8.4", "rustc-hex", "static_assertions", ] @@ -2137,9 +2488,9 @@ checksum = "37ab347416e802de484e4d03c7316c48f1ecb56574dfd4a46a80f173ce1de04d" [[package]] name = "flate2" -version = "1.0.20" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd3aec53de10fe96d7d8c565eb17f2c687bb5518a2ec453b5b1252964526abe0" +checksum = "1e6988e897c1c9c485f43b47a529cef42fde0547f9d8d41a7062518f1d8fc53f" dependencies = [ "cfg-if 1.0.0", "crc32fast", @@ -2148,18 +2499,6 @@ dependencies = [ "miniz_oxide", ] -[[package]] -name = "flume" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "531a685ab99b8f60a271b44d5dd1a76e55124a8c9fa0407b7a8e9cd172d5b588" -dependencies = [ - "futures-core", - "futures-sink", - "pin-project 1.0.7", - "spinning_top", -] - [[package]] name = "fnv" version = "1.0.7" @@ -2184,7 +2523,7 @@ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" [[package]] name = "fork-tree" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "parity-scale-codec", ] @@ -2201,15 +2540,15 @@ dependencies = [ [[package]] name = "frame-benchmarking" -version = "3.1.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "frame-support", "frame-system", "linregress", "log", "parity-scale-codec", - "paste", + "paste 1.0.5", "sp-api", "sp-io", "sp-runtime", @@ -2220,13 +2559,16 @@ dependencies = [ [[package]] name = "frame-benchmarking-cli" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "Inflector", "chrono", "frame-benchmarking", + "frame-support", "handlebars", + "linked-hash-map", + "log", "parity-scale-codec", "sc-cli", "sc-client-db", @@ -2243,8 +2585,8 @@ dependencies = [ [[package]] name = "frame-election-provider-support" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "frame-support", "frame-system", @@ -2256,8 +2598,8 @@ dependencies = [ [[package]] name = "frame-executive" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "frame-support", "frame-system", @@ -2271,8 +2613,8 @@ dependencies = [ [[package]] name = "frame-metadata" -version = "13.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "14.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "parity-scale-codec", "serde", @@ -2282,8 +2624,8 @@ dependencies = [ [[package]] name = "frame-support" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "bitflags", "frame-metadata", @@ -2292,9 +2634,9 @@ dependencies = [ "log", "once_cell", "parity-scale-codec", - "paste", + "paste 1.0.5", "serde", - "smallvec 1.6.1", + "smallvec", "sp-arithmetic", "sp-core", "sp-inherents", @@ -2308,8 +2650,8 @@ dependencies = [ [[package]] name = "frame-support-procedural" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "Inflector", "frame-support-procedural-tools", @@ -2320,11 +2662,11 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "frame-support-procedural-tools-derive", - "proc-macro-crate 1.0.0", + "proc-macro-crate 1.1.0", "proc-macro2", "quote", "syn", @@ -2333,7 +2675,7 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools-derive" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "proc-macro2", "quote", @@ -2342,11 +2684,10 @@ dependencies = [ [[package]] name = "frame-system" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "frame-support", - "impl-trait-for-tuples", "log", "parity-scale-codec", "serde", @@ -2358,12 +2699,37 @@ dependencies = [ ] [[package]] -name = "frame-system-rpc-runtime-api" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +name = "frame-system-benchmarking" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", "parity-scale-codec", - "sp-api", + "sp-core", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "frame-system-rpc-runtime-api" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" +dependencies = [ + "parity-scale-codec", + "sp-api", +] + +[[package]] +name = "frame-try-runtime" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" +dependencies = [ + "frame-support", + "sp-api", + "sp-runtime", + "sp-std", ] [[package]] @@ -2394,6 +2760,12 @@ dependencies = [ "winapi 0.3.9", ] +[[package]] +name = "fs_extra" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2022715d62ab30faffd124d40b76f4134a550a87792276512b18d63272333394" + [[package]] name = "fuchsia-cprng" version = "0.1.1" @@ -2430,9 +2802,9 @@ checksum = "3a471a38ef8ed83cd6e40aa59c1ffe17db6855c18e3604d9c4ed8c08ebc28678" [[package]] name = "futures" -version = "0.3.15" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e7e43a803dae2fa37c1f6a8fe121e1f7bf9548b4dfc0522a42f34145dadfc27" +checksum = "a12aa0eb539080d55c3f2d45a67c3b58b6b0773c1a3ca2dfec66d58c97fd66ca" dependencies = [ "futures-channel", "futures-core", @@ -2445,9 +2817,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.15" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e682a68b29a882df0545c143dc3646daefe80ba479bcdede94d5a703de2871e2" +checksum = "5da6ba8c3bb3c165d3c7319fc1cc8304facf1fb8db99c5de877183c08a273888" dependencies = [ "futures-core", "futures-sink", @@ -2455,25 +2827,15 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0402f765d8a89a26043b889b26ce3c4679d268fa6bb22cd7c6aad98340e179d1" - -[[package]] -name = "futures-cpupool" -version = "0.1.8" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab90cde24b3319636588d0c35fe03b1333857621051837ed769faefb4c2162e4" -dependencies = [ - "futures 0.1.31", - "num_cpus", -] +checksum = "88d1c26957f23603395cd326b0ffe64124b818f4449552f960d815cfba83a53d" [[package]] name = "futures-executor" -version = "0.3.15" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "badaa6a909fac9e7236d0620a2f57f7664640c56575b71a7552fbd68deafab79" +checksum = "45025be030969d763025784f7f355043dc6bc74093e4ecc5000ca4dc50d8745c" dependencies = [ "futures-core", "futures-task", @@ -2483,30 +2845,30 @@ dependencies = [ [[package]] name = "futures-io" -version = "0.3.15" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "acc499defb3b348f8d8f3f66415835a9131856ff7714bf10dadfc4ec4bdb29a1" +checksum = "522de2a0fe3e380f1bc577ba0474108faf3f6b18321dbf60b3b9c39a75073377" [[package]] name = "futures-lite" -version = "1.11.3" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4481d0cd0de1d204a4fa55e7d45f07b1d958abcb06714b3446438e2eff695fb" +checksum = "7694489acd39452c77daa48516b894c153f192c3578d5a839b62c58099fcbf48" dependencies = [ "fastrand", "futures-core", "futures-io", "memchr", "parking", - "pin-project-lite 0.2.4", + "pin-project-lite 0.2.7", "waker-fn", ] [[package]] name = "futures-macro" -version = "0.3.15" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4c40298486cdf52cc00cd6d6987892ba502c7656a16a4192a9992b1ccedd121" +checksum = "18e4a4b95cea4b4ccbcf1c5675ca7c4ee4e9e75eb79944d07defde18068f79bb" dependencies = [ "autocfg", "proc-macro-hack", @@ -2522,21 +2884,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3a1387e07917c711fb4ee4f48ea0adb04a3c9739e53ef85bf43ae1edc2937a8b" dependencies = [ "futures-io", - "rustls 0.19.1", + "rustls", "webpki", ] [[package]] name = "futures-sink" -version = "0.3.15" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a57bead0ceff0d6dde8f465ecd96c9338121bb7717d3e7b108059531870c4282" +checksum = "36ea153c13024fe480590b3e3d4cad89a0cfacecc24577b68f86c6ced9c2bc11" [[package]] name = "futures-task" -version = "0.3.15" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a16bef9fc1a4dddb5bee51c989e3fbba26569cbb0e31f5b303c184e3dd33dae" +checksum = "1d3d00f4eddb73e498a54394f228cd55853bdf059259e8e7bc6e69d408892e99" [[package]] name = "futures-timer" @@ -2552,9 +2914,9 @@ checksum = "e64b03909df88034c26dc1547e8970b91f98bdb65165d6a4e9110d94263dbb2c" [[package]] name = "futures-util" -version = "0.3.15" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "feb5c238d27e2bf94ffdfd27b2c29e3df4a68c4193bb6427384259e2bf191967" +checksum = "36568465210a3a6ee45e1f165136d68671471a501e632e9a98d96872222b5481" dependencies = [ "autocfg", "futures 0.1.31", @@ -2565,7 +2927,7 @@ dependencies = [ "futures-sink", "futures-task", "memchr", - "pin-project-lite 0.2.4", + "pin-project-lite 0.2.7", "pin-utils", "proc-macro-hack", "proc-macro-nested", @@ -2580,9 +2942,9 @@ checksum = "8f5f3913fa0bfe7ee1fd8248b6b9f42a5af4b9d65ec2dd2c3c26132b950ecfc2" [[package]] name = "generic-array" -version = "0.12.3" +version = "0.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c68f0274ae0e023facc3c97b2e00f076be70e254bc851d972503b328db79b2ec" +checksum = "ffdf9f34f1447443d37393cc6c2b8313aebddcd96906caf34e54c68d8e57d7bd" dependencies = [ "typenum", ] @@ -2610,9 +2972,9 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.2" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9495705279e7140bf035dde1f6e750c162df8b625267cd52cc44e0b156732c8" +checksum = "7fcd999463524c52659517fe2cea98493cfe485d10565e7b0fb07dbba7ad2753" dependencies = [ "cfg-if 1.0.0", "libc", @@ -2621,20 +2983,14 @@ dependencies = [ [[package]] name = "ghash" -version = "0.3.1" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97304e4cd182c3846f7575ced3890c53012ce534ad9114046b0a9e00bb30a375" +checksum = "1583cc1656d7839fd3732b80cf4f38850336cdb9b8ded1cd399ca62958de3c99" dependencies = [ "opaque-debug 0.3.0", "polyval", ] -[[package]] -name = "gimli" -version = "0.23.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6503fe142514ca4799d4c26297c4248239fe8838d827db6bd6065c6ed29a6ce" - [[package]] name = "gimli" version = "0.24.0" @@ -2646,6 +3002,12 @@ dependencies = [ "stable_deref_trait", ] +[[package]] +name = "gimli" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0a01e0497841a3b2db4f8afa483cce65f7e96a3498bd6c541734792aeac8fe7" + [[package]] name = "glob" version = "0.3.0" @@ -2654,9 +3016,9 @@ checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574" [[package]] name = "globset" -version = "0.4.6" +version = "0.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c152169ef1e421390738366d2f796655fec62621dabbd0fd476f905934061e4a" +checksum = "10463d9ff00a2a068db14231982f5132edebad0d7660cd956a1c30292dbcbfbd" dependencies = [ "aho-corasick", "bstr", @@ -2680,71 +3042,33 @@ dependencies = [ [[package]] name = "h2" -version = "0.1.26" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5b34c246847f938a410a03c5458c7fee2274436675e76d8b903c08efc29c462" -dependencies = [ - "byteorder", - "bytes 0.4.12", - "fnv", - "futures 0.1.31", - "http 0.1.21", - "indexmap", - "log", - "slab", - "string", - "tokio-io", -] - -[[package]] -name = "h2" -version = "0.2.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e4728fd124914ad25e99e3d15a9361a879f6620f63cb56bbb08f95abb97a535" -dependencies = [ - "bytes 0.5.6", - "fnv", - "futures-core", - "futures-sink", - "futures-util", - "http 0.2.3", - "indexmap", - "slab", - "tokio 0.2.25", - "tokio-util 0.3.1", - "tracing", - "tracing-futures", -] - -[[package]] -name = "h2" -version = "0.3.3" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "825343c4eef0b63f541f8903f395dc5beb362a979b5799a84062527ef1e37726" +checksum = "d7f3675cfef6a30c8031cf9e6493ebdc3bb3272a3fea3923c4210d1830e6a472" dependencies = [ - "bytes 1.0.1", + "bytes 1.1.0", "fnv", "futures-core", "futures-sink", "futures-util", - "http 0.2.3", + "http", "indexmap", "slab", - "tokio 1.8.1", - "tokio-util 0.6.7", + "tokio", + "tokio-util", "tracing", ] [[package]] name = "handlebars" -version = "3.5.3" +version = "3.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdb0867bbc5a3da37a753e78021d5fcf8a4db00e18dd2dd90fd36e24190e162d" +checksum = "4498fc115fa7d34de968184e473529abb40eeb6be8bc5f7faba3d08c316cb3e3" dependencies = [ "log", "pest", "pest_derive", - "quick-error 2.0.0", + "quick-error 2.0.1", "serde", "serde_json", ] @@ -2764,22 +3088,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]] @@ -2790,11 +3105,11 @@ checksum = "f0b7591fb62902706ae8e7aaff416b1b0fa2c0fd0878b46dc13baa3712d8a855" dependencies = [ "base64 0.13.0", "bitflags", - "bytes 1.0.1", + "bytes 1.1.0", "headers-core", - "http 0.2.3", + "http", "mime", - "sha-1 0.9.4", + "sha-1 0.9.8", "time 0.1.44", ] @@ -2804,7 +3119,7 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e7f66481bfee273957b1f20485a4ff3362987f85b2c236580d81b4eb7a326429" dependencies = [ - "http 0.2.3", + "http", ] [[package]] @@ -2815,28 +3130,28 @@ dependencies = [ "async-std", "async-trait", "backoff", - "futures 0.3.15", + "futures 0.3.17", "linked-hash-map", "log", "num-traits", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "relay-utils", ] [[package]] name = "heck" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87cbf45460356b7deeb5e3415b5563308c0a9b057c85e12b06ad551f98d0a6ac" +checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c" dependencies = [ "unicode-segmentation", ] [[package]] name = "hermit-abi" -version = "0.1.18" +version = "0.1.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "322f4de77956e22ed0e5032c359a0f1273f1f7f0d79bfa3b8ffbc730d7fbcc5c" +checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33" dependencies = [ "libc", ] @@ -2859,9 +3174,9 @@ dependencies = [ [[package]] name = "hex-literal" -version = "0.3.1" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5af1f635ef1bc545d78392b136bfe1c9809e029023c84a3638a864a10b8819c8" +checksum = "21e4590e13640f19f249fe3e4eca5113bc4289f2497710378190e7f4bd96f45b" [[package]] name = "hex-literal-impl" @@ -2898,6 +3213,16 @@ dependencies = [ "digest 0.9.0", ] +[[package]] +name = "hmac" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2a2a2320eb7ec0ebe8da8f744d7812d9fc4cb4d09344ac01898dbcb6a20ae69b" +dependencies = [ + "crypto-mac 0.11.1", + "digest 0.9.0", +] + [[package]] name = "hmac-drbg" version = "0.2.0" @@ -2905,10 +3230,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c6e570451493f10f6581b48cdd530413b63ea9e780f544bfd3bdcaa0d89d1a7b" dependencies = [ "digest 0.8.1", - "generic-array 0.12.3", + "generic-array 0.12.4", "hmac 0.7.1", ] +[[package]] +name = "hmac-drbg" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "17ea0a1394df5b6574da6e0c1ade9e78868c9fb0a4e5ef4428e32da4676b85b1" +dependencies = [ + "digest 0.9.0", + "generic-array 0.14.4", + "hmac 0.8.1", +] + [[package]] name = "honggfuzz" version = "0.5.54" @@ -2933,70 +3269,37 @@ dependencies = [ [[package]] name = "http" -version = "0.1.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6ccf5ede3a895d8856620237b2f02972c1bbc78d2965ad7fe8838d4a0ed41f0" -dependencies = [ - "bytes 0.4.12", - "fnv", - "itoa", -] - -[[package]] -name = "http" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7245cd7449cc792608c3c8a9eaf69bd4eabbabf802713748fd739c98b82f0747" +checksum = "527e8c9ac747e28542699a951517aa9a6945af506cd1f2e1b53a576c17b6cc11" dependencies = [ - "bytes 1.0.1", + "bytes 1.1.0", "fnv", "itoa", ] [[package]] name = "http-body" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6741c859c1b2463a423a1dbce98d418e6c3c3fc720fb0d45528657320920292d" -dependencies = [ - "bytes 0.4.12", - "futures 0.1.31", - "http 0.1.21", - "tokio-buf", -] - -[[package]] -name = "http-body" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13d5ff830006f7646652e057693569bfe0d51760c0085a071769d142a205111b" -dependencies = [ - "bytes 0.5.6", - "http 0.2.3", -] - -[[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.3", - "pin-project-lite 0.2.4", + "bytes 1.1.0", + "http", + "pin-project-lite 0.2.7", ] [[package]] name = "httparse" -version = "1.3.5" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "615caabe2c3160b313d52ccc905335f4ed5f10881dd63dc5699d47e90be85691" +checksum = "acd94fdbe1d4ff688b67b04eee2e17bd50995534a61539e45adfefb45e5e5503" [[package]] name = "httpdate" -version = "0.3.2" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "494b4d60369511e7dea41cf646832512a94e542f68bb9c49e54518e0f468eb47" +checksum = "6456b8a6c8f33fee7d958fcd1b60d55b11940a79e63ae87013e6d22e26034440" [[package]] name = "humantime" @@ -3015,97 +3318,42 @@ checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" [[package]] name = "hyper" -version = "0.12.36" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c843caf6296fc1f93444735205af9ed4e109a539005abb2564ae1d6fad34c52" -dependencies = [ - "bytes 0.4.12", - "futures 0.1.31", - "futures-cpupool", - "h2 0.1.26", - "http 0.1.21", - "http-body 0.1.0", - "httparse", - "iovec", - "itoa", - "log", - "net2", - "rustc_version 0.2.3", - "time 0.1.44", - "tokio 0.1.22", - "tokio-buf", - "tokio-executor", - "tokio-io", - "tokio-reactor", - "tokio-tcp", - "tokio-threadpool", - "tokio-timer", - "want 0.2.0", -] - -[[package]] -name = "hyper" -version = "0.13.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a6f157065790a3ed2f88679250419b5cdd96e714a0d65f7797fd337186e96bb" -dependencies = [ - "bytes 0.5.6", - "futures-channel", - "futures-core", - "futures-util", - "h2 0.2.7", - "http 0.2.3", - "http-body 0.3.1", - "httparse", - "httpdate", - "itoa", - "pin-project 1.0.7", - "socket2 0.3.19", - "tokio 0.2.25", - "tower-service", - "tracing", - "want 0.3.0", -] - -[[package]] -name = "hyper" -version = "0.14.5" +version = "0.14.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8bf09f61b52cfcf4c00de50df88ae423d6c02354e385a86341133b5338630ad1" +checksum = "13f67199e765030fa08fe0bd581af683f0d5bc04ea09c2b1102012c5fb90e7fd" dependencies = [ - "bytes 1.0.1", + "bytes 1.1.0", "futures-channel", "futures-core", "futures-util", - "h2 0.3.3", - "http 0.2.3", - "http-body 0.4.2", + "h2", + "http", + "http-body", "httparse", "httpdate", "itoa", - "pin-project 1.0.7", - "socket2 0.4.0", - "tokio 1.8.1", + "pin-project-lite 0.2.7", + "socket2 0.4.1", + "tokio", "tower-service", "tracing", - "want 0.3.0", + "want", ] [[package]] name = "hyper-rustls" -version = "0.21.0" +version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37743cc83e8ee85eacfce90f2f4102030d9ff0a95244098d781e9bee4a90abb6" +checksum = "5f9f7a97316d44c0af9b0301e65010573a853a9fc97046d7331d7f6bc0fd5a64" dependencies = [ - "bytes 0.5.6", "ct-logs", "futures-util", - "hyper 0.13.10", + "hyper", "log", - "rustls 0.18.1", - "rustls-native-certs 0.4.0", - "tokio 0.2.25", - "tokio-rustls 0.14.1", + "rustls", + "rustls-native-certs", + "tokio", + "tokio-rustls", "webpki", ] @@ -3115,10 +3363,10 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" dependencies = [ - "bytes 1.0.1", - "hyper 0.14.5", + "bytes 1.1.0", + "hyper", "native-tls", - "tokio 1.8.1", + "tokio", "tokio-native-tls", ] @@ -3135,9 +3383,9 @@ dependencies = [ [[package]] name = "idna" -version = "0.2.2" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89829a5d69c23d348314a7ac337fe39173b61149a9864deabd260983aed48c21" +checksum = "418a0a6fab821475f634efe3ccc45c013f742efe03d853e8d3355d5cb850ecf8" dependencies = [ "matches", "unicode-bidi", @@ -3146,9 +3394,9 @@ dependencies = [ [[package]] name = "if-addrs" -version = "0.6.5" +version = "0.6.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28538916eb3f3976311f5dfbe67b5362d0add1293d0a9cad17debf86f8e3aa48" +checksum = "c9a83ec4af652890ac713ffd8dc859e650420a5ef47f7b9be29b6664ab50fbc8" dependencies = [ "if-addrs-sys", "libc", @@ -3167,12 +3415,12 @@ dependencies = [ [[package]] name = "if-watch" -version = "0.2.0" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a6d52908d4ea4ab2bc22474ba149bf1011c8e2c3ebc1ff593ae28ac44f494b6" +checksum = "ae8ab7f67bad3240049cb24fb9cb0b4c2c6af4c245840917fbbdededeee91179" dependencies = [ "async-io", - "futures 0.3.15", + "futures 0.3.17", "futures-lite", "if-addrs", "ipnet", @@ -3221,20 +3469,20 @@ dependencies = [ [[package]] name = "indexmap" -version = "1.6.1" +version = "1.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fb1fa934250de4de8aef298d81c729a7d33d8c239daa3a7575e6b92bfc7313b" +checksum = "bc633605454125dec4b66843673f01c7df2b89479b32e0ed634e43a91cff62a5" dependencies = [ "autocfg", - "hashbrown 0.9.1", + "hashbrown", "serde", ] [[package]] name = "instant" -version = "0.1.9" +version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61124eeebbd69b8190558df225adf7e4caafce0d743919e5d6b19652314ec5ec" +checksum = "bee0328b1209d157ef001c94dd85b4f8f64139adb0eac2659f4b08382b2f474d" dependencies = [ "cfg-if 1.0.0", ] @@ -3260,7 +3508,7 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "64fa110ec7b8f493f416eed552740d10e7030ad5f63b2308f82c9608ec2df275" dependencies = [ - "futures 0.3.15", + "futures 0.3.17", "futures-timer 2.0.2", ] @@ -3275,9 +3523,9 @@ dependencies = [ [[package]] name = "ip_network" -version = "0.3.4" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ee15951c035f79eddbef745611ec962f63f4558f1dadf98ab723cc603487c6f" +checksum = "09b746553d2f4a1ca26fab939943ddfb217a091f34f53571620a8e3d30691303" [[package]] name = "ipconfig" @@ -3293,23 +3541,24 @@ dependencies = [ [[package]] name = "ipnet" -version = "2.3.0" +version = "2.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47be2f14c678be2fdcab04ab1171db51b2762ce6f0a8ee87c8dd4a04ed216135" +checksum = "68f2d64f2edebec4ce84ad108148e67e1064789bee435edc5b60ad398714a3a9" [[package]] name = "isahc" -version = "1.2.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33b24d2aed6bbe6faeab0e164ec2e9e6193fcfcfe489b6eb59fb0d0d34947d73" +checksum = "431445cb4ba85a80cb1438a9ae8042dadb78ae4046ecee89ad027b614aa0ddb7" dependencies = [ - "crossbeam-utils 0.8.3", + "async-channel", + "crossbeam-utils", "curl", "curl-sys", "encoding_rs", - "flume", + "event-listener", "futures-lite", - "http 0.2.3", + "http", "log", "mime", "once_cell", @@ -3318,48 +3567,61 @@ dependencies = [ "sluice", "tracing", "tracing-futures", - "url 2.2.1", + "url 2.2.2", "waker-fn", ] [[package]] name = "itertools" -version = "0.9.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "284f18f85651fe11e8a991b2adb42cb078325c996ed026d994719efcfca1d54b" +checksum = "69ddb889f9d0d08a67338271fa9b62996bc788c7796a5c18cf057420aaed5eaf" dependencies = [ "either", ] [[package]] -name = "itertools" -version = "0.10.0" +name = "itoa" +version = "0.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4" + +[[package]] +name = "jemalloc-ctl" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37d572918e350e82412fe766d24b15e6682fb2ed2bbe018280caa810397cb319" +checksum = "c502a5ff9dd2924f1ed32ba96e3b65735d837b4bfd978d3161b1702e66aca4b7" dependencies = [ - "either", + "jemalloc-sys", + "libc", + "paste 0.1.18", ] [[package]] -name = "itoa" -version = "0.4.7" +name = "jemalloc-sys" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd25036021b0de88a0aff6b850051563c6516d0bf53f8638938edbb9de732736" +checksum = "0d3b9f3f5c9b31aa0f5ed3260385ac205db665baa41d49bb8338008ae94ede45" +dependencies = [ + "cc", + "fs_extra", + "libc", +] [[package]] name = "jobserver" -version = "0.1.21" +version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c71313ebb9439f74b00d9d2dcec36440beaf57a6aa0623068441dd7cd81a7f2" +checksum = "af25a77299a7f711a01975c35a6a424eb6862092cc2d6c72c4ed6cbc56dfc1fa" dependencies = [ "libc", ] [[package]] name = "js-sys" -version = "0.3.50" +version = "0.3.54" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d99f9e3e84b8f67f846ef5b4cbbc3b1c29f6c759fcbce6f01aa0e73d932a24c" +checksum = "1866b355d9c878e5e607473cbe3f63282c0b7aad2db1dbebf55076c686918254" dependencies = [ "wasm-bindgen", ] @@ -3379,13 +3641,13 @@ dependencies = [ [[package]] name = "jsonrpc-client-transports" -version = "15.1.0" +version = "18.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "489b9c612e60c766f751ab40fcb43cbb55a1e10bb44a9b4307ed510ca598cbd7" +checksum = "d2b99d4207e2a04fb4581746903c2bb7eb376f88de9c699d0f3e10feeac0cd3a" dependencies = [ - "failure", - "futures 0.1.31", - "jsonrpc-core 15.1.0", + "derive_more", + "futures 0.3.17", + "jsonrpc-core 18.0.0", "jsonrpc-pubsub", "log", "serde", @@ -3395,11 +3657,13 @@ dependencies = [ [[package]] name = "jsonrpc-core" -version = "15.1.0" +version = "17.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0745a6379e3edc893c84ec203589790774e4247420033e71a76d3ab4687991fa" +checksum = "d4467ab6dfa369b69e52bd0692e480c4d117410538526a57a304a0f2250fd95e" dependencies = [ - "futures 0.1.31", + "futures 0.3.17", + "futures-executor", + "futures-util", "log", "serde", "serde_derive", @@ -3408,11 +3672,13 @@ dependencies = [ [[package]] name = "jsonrpc-core" -version = "17.0.0" +version = "18.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07569945133257ff557eb37b015497104cea61a2c9edaf126c1cbd6e8332397f" +checksum = "14f7f76aef2d054868398427f6c54943cf3d1caa9a7ec7d0c38d69df97a965eb" dependencies = [ - "futures 0.3.15", + "futures 0.3.17", + "futures-executor", + "futures-util", "log", "serde", "serde_derive", @@ -3421,18 +3687,19 @@ dependencies = [ [[package]] name = "jsonrpc-core-client" -version = "15.1.0" +version = "18.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f764902d7b891344a0acb65625f32f6f7c6db006952143bd650209fbe7d94db" +checksum = "b51da17abecbdab3e3d4f26b01c5ec075e88d3abe3ab3b05dc9aa69392764ec0" dependencies = [ + "futures 0.3.17", "jsonrpc-client-transports", ] [[package]] name = "jsonrpc-derive" -version = "15.1.0" +version = "18.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99a847f9ec7bb52149b2786a17c9cb260d6effc6b8eeb8c16b343a487a7563a3" +checksum = "5b939a78fa820cdfcb7ee7484466746a7377760970f6f9c6fe19f9edcc8a38d2" dependencies = [ "proc-macro-crate 0.1.5", "proc-macro2", @@ -3442,73 +3709,80 @@ dependencies = [ [[package]] name = "jsonrpc-http-server" -version = "15.1.0" +version = "18.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fb5c4513b7b542f42da107942b7b759f27120b5cc894729f88254b28dff44b7" +checksum = "e1dea6e07251d9ce6a552abfb5d7ad6bc290a4596c8dcc3d795fae2bbdc1f3ff" dependencies = [ - "hyper 0.12.36", - "jsonrpc-core 15.1.0", + "futures 0.3.17", + "hyper", + "jsonrpc-core 18.0.0", "jsonrpc-server-utils", "log", "net2", - "parking_lot 0.10.2", + "parking_lot 0.11.2", "unicase", ] [[package]] name = "jsonrpc-ipc-server" -version = "15.1.0" +version = "18.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf50e53e4eea8f421a7316c5f63e395f7bc7c4e786a6dc54d76fab6ff7aa7ce7" +checksum = "382bb0206323ca7cda3dcd7e245cea86d37d02457a02a975e3378fb149a48845" dependencies = [ - "jsonrpc-core 15.1.0", + "futures 0.3.17", + "jsonrpc-core 18.0.0", "jsonrpc-server-utils", "log", "parity-tokio-ipc", - "parking_lot 0.10.2", - "tokio-service", + "parking_lot 0.11.2", + "tower-service", ] [[package]] name = "jsonrpc-pubsub" -version = "15.1.0" +version = "18.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "639558e0604013be9787ae52f798506ae42bf4220fe587bdc5625871cc8b9c77" +checksum = "240f87695e6c6f62fb37f05c02c04953cf68d6408b8c1c89de85c7a0125b1011" dependencies = [ - "jsonrpc-core 15.1.0", + "futures 0.3.17", + "jsonrpc-core 18.0.0", + "lazy_static", "log", - "parking_lot 0.10.2", + "parking_lot 0.11.2", "rand 0.7.3", "serde", ] [[package]] name = "jsonrpc-server-utils" -version = "15.1.0" +version = "18.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72f1f3990650c033bd8f6bd46deac76d990f9bbfb5f8dc8c4767bf0a00392176" +checksum = "fa4fdea130485b572c39a460d50888beb00afb3e35de23ccd7fad8ff19f0e0d4" dependencies = [ - "bytes 0.4.12", + "bytes 1.1.0", + "futures 0.3.17", "globset", - "jsonrpc-core 15.1.0", + "jsonrpc-core 18.0.0", "lazy_static", "log", - "tokio 0.1.22", - "tokio-codec", + "tokio", + "tokio-stream", + "tokio-util", "unicase", ] [[package]] name = "jsonrpc-ws-server" -version = "15.1.0" +version = "18.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6596fe75209b73a2a75ebe1dce4e60e03b88a2b25e8807b667597f6315150d22" +checksum = "f892c7d766369475ab7b0669f417906302d7c0fb521285c0a0c92e52e7c8e946" dependencies = [ - "jsonrpc-core 15.1.0", + "futures 0.3.17", + "jsonrpc-core 18.0.0", "jsonrpc-server-utils", "log", "parity-ws", - "parking_lot 0.10.2", + "parking_lot 0.11.2", "slab", ] @@ -3519,7 +3793,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3b4c85cfa6767333f3e5f3b2f2f765dad2727b0033ee270ae07c599bf43ed5ae" dependencies = [ "Inflector", - "proc-macro-crate 1.0.0", + "proc-macro-crate 1.1.0", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "jsonrpsee-proc-macros" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f37924e16300e249a52a22cabb5632f846dc9760b39355f5e8bc70cd23dc6300" +dependencies = [ + "Inflector", + "bae", + "proc-macro-crate 1.1.0", "proc-macro2", "quote", "syn", @@ -3535,7 +3823,7 @@ dependencies = [ "beef", "futures-channel", "futures-util", - "hyper 0.14.5", + "hyper", "log", "serde", "serde_json", @@ -3543,6 +3831,24 @@ dependencies = [ "thiserror", ] +[[package]] +name = "jsonrpsee-types" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d67724d368c59e08b557a516cf8fcc51100e7a708850f502e1044b151fe89788" +dependencies = [ + "async-trait", + "beef", + "futures-channel", + "futures-util", + "hyper", + "log", + "serde", + "serde_json", + "soketto 0.6.0", + "thiserror", +] + [[package]] name = "jsonrpsee-ws-client" version = "0.2.0" @@ -3551,30 +3857,54 @@ checksum = "6ec51150965544e1a4468f372bdab8545243a1b045d4ab272023aac74c60de32" dependencies = [ "async-trait", "fnv", - "futures 0.3.15", - "jsonrpsee-types", + "futures 0.3.17", + "jsonrpsee-types 0.2.0", "log", - "pin-project 1.0.7", - "rustls 0.19.1", - "rustls-native-certs 0.5.0", + "pin-project 1.0.8", + "rustls", + "rustls-native-certs", "serde", "serde_json", "soketto 0.5.0", "thiserror", - "tokio 1.8.1", - "tokio-rustls 0.22.0", - "tokio-util 0.6.7", - "url 2.2.1", + "tokio", + "tokio-rustls", + "tokio-util", + "url 2.2.2", ] [[package]] -name = "keccak" -version = "0.1.0" +name = "jsonrpsee-ws-client" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67c21572b4949434e4fc1e1978b99c5f77064153c59d998bf13ecd96fb5ecba7" - -[[package]] -name = "kernel32-sys" +checksum = "8e2834b6e7f57ce9a4412ed4d6dc95125d2c8612e68f86b9d9a07369164e4198" +dependencies = [ + "async-trait", + "fnv", + "futures 0.3.17", + "jsonrpsee-types 0.3.0", + "log", + "pin-project 1.0.8", + "rustls", + "rustls-native-certs", + "serde", + "serde_json", + "soketto 0.6.0", + "thiserror", + "tokio", + "tokio-rustls", + "tokio-util", + "url 2.2.2", +] + +[[package]] +name = "keccak" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67c21572b4949434e4fc1e1978b99c5f77064153c59d998bf13ecd96fb5ecba7" + +[[package]] +name = "kernel32-sys" version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" @@ -3599,7 +3929,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "45a3f58dc069ec0e205a27f5b45920722a46faed802a0541538241af6228f512" dependencies = [ "parity-util-mem", - "smallvec 1.6.1", + "smallvec", ] [[package]] @@ -3610,14 +3940,32 @@ checksum = "c3b6b85fc643f5acd0bffb2cc8a6d150209379267af0d41db72170021841f9f5" dependencies = [ "kvdb", "parity-util-mem", - "parking_lot 0.11.1", + "parking_lot 0.11.2", ] [[package]] name = "kvdb-rocksdb" -version = "0.12.0" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d169dbb316aa0fa185d02d847c047f1aa20e292cf1563d790c13536a2a732c8" +dependencies = [ + "fs-swap", + "kvdb", + "log", + "num_cpus", + "owning_ref", + "parity-util-mem", + "parking_lot 0.11.2", + "regex", + "rocksdb", + "smallvec", +] + +[[package]] +name = "kvdb-rocksdb" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "431ca65516efab86e65d96281f750ebb54277dec656fcf6c027f3d1c0cb69e4c" +checksum = "9b1b6ea8f2536f504b645ad78419c8246550e19d2c3419a167080ce08edee35a" dependencies = [ "fs-swap", "kvdb", @@ -3625,10 +3973,10 @@ dependencies = [ "num_cpus", "owning_ref", "parity-util-mem", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "regex", "rocksdb", - "smallvec 1.6.1", + "smallvec", ] [[package]] @@ -3645,9 +3993,9 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" [[package]] name = "libc" -version = "0.2.97" +version = "0.2.102" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12b8adadd720df158f4d70dfe7ccc6adb0472d7c55ca83445f6a5ab3e36f8fb6" +checksum = "a2a5ac8f984bfcf3a823267e5fde638acc3325f6496633a5da6bb6eb2171e103" [[package]] name = "libloading" @@ -3687,13 +4035,13 @@ dependencies = [ [[package]] name = "libp2p" -version = "0.37.1" +version = "0.39.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08053fbef67cd777049ef7a95ebaca2ece370b4ed7712c3fa404d69a88cb741b" +checksum = "9004c06878ef8f3b4b4067e69a140d87ed20bf777287f82223e49713b36ee433" dependencies = [ "atomic", - "bytes 1.0.1", - "futures 0.3.15", + "bytes 1.1.0", + "futures 0.3.17", "lazy_static", "libp2p-core", "libp2p-deflate", @@ -3717,41 +4065,41 @@ dependencies = [ "libp2p-wasm-ext", "libp2p-websocket", "libp2p-yamux", - "parity-multiaddr", - "parking_lot 0.11.1", - "pin-project 1.0.7", - "smallvec 1.6.1", + "multiaddr", + "parking_lot 0.11.2", + "pin-project 1.0.8", + "smallvec", "wasm-timer", ] [[package]] name = "libp2p-core" -version = "0.28.3" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "554d3e7e9e65f939d66b75fd6a4c67f258fe250da61b91f46c545fc4a89b51d9" +checksum = "af9b4abdeaa420593a297c8592f63fad4234f4b88dc9343b8fd8e736c35faa59" dependencies = [ "asn1_der", "bs58", "ed25519-dalek", "either", "fnv", - "futures 0.3.15", + "futures 0.3.17", "futures-timer 3.0.2", "lazy_static", - "libsecp256k1", + "libsecp256k1 0.5.0", "log", - "multihash", + "multiaddr", + "multihash 0.14.0", "multistream-select", - "parity-multiaddr", - "parking_lot 0.11.1", - "pin-project 1.0.7", + "parking_lot 0.11.2", + "pin-project 1.0.8", "prost", "prost-build", "rand 0.7.3", "ring", "rw-stream-sink", - "sha2 0.9.3", - "smallvec 1.6.1", + "sha2 0.9.8", + "smallvec", "thiserror", "unsigned-varint 0.7.0", "void", @@ -3760,59 +4108,59 @@ dependencies = [ [[package]] name = "libp2p-deflate" -version = "0.28.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2181a641cd15f9b6ba71b1335800f309012a0a97a29ffaabbbf40e9d3d58f08" +checksum = "66097fccc0b7f8579f90a03ea76ba6196332ea049fd07fd969490a06819dcdc8" dependencies = [ "flate2", - "futures 0.3.15", + "futures 0.3.17", "libp2p-core", ] [[package]] name = "libp2p-dns" -version = "0.28.1" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62e63dab8b5ff35e0c101a3e51e843ba782c07bbb1682f5fd827622e0d02b98b" +checksum = "58ff08b3196b85a17f202d80589e93b1660a574af67275706657fdc762e42c32" dependencies = [ "async-std-resolver", - "futures 0.3.15", + "futures 0.3.17", "libp2p-core", "log", - "smallvec 1.6.1", + "smallvec", "trust-dns-resolver", ] [[package]] name = "libp2p-floodsub" -version = "0.29.0" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48a9b570f6766301d9c4aa00fce3554cad1598e2f466debbc4dde909028417cf" +checksum = "404eca8720967179dac7a5b4275eb91f904a53859c69ca8d018560ad6beb214f" dependencies = [ "cuckoofilter", "fnv", - "futures 0.3.15", + "futures 0.3.17", "libp2p-core", "libp2p-swarm", "log", "prost", "prost-build", "rand 0.7.3", - "smallvec 1.6.1", + "smallvec", ] [[package]] name = "libp2p-gossipsub" -version = "0.30.1" +version = "0.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7b0c8506a6ec3344b9e706d7c7a6dba826f8ede735cfe13dde12a8c263c4af9" +checksum = "b1cc48709bcbc3a3321f08a73560b4bbb4166a7d56f6fdb615bc775f4f91058e" dependencies = [ "asynchronous-codec 0.6.0", "base64 0.13.0", "byteorder", - "bytes 1.0.1", + "bytes 1.1.0", "fnv", - "futures 0.3.15", + "futures 0.3.17", "hex_fmt", "libp2p-core", "libp2p-swarm", @@ -3821,48 +4169,48 @@ dependencies = [ "prost-build", "rand 0.7.3", "regex", - "sha2 0.9.3", - "smallvec 1.6.1", + "sha2 0.9.8", + "smallvec", "unsigned-varint 0.7.0", "wasm-timer", ] [[package]] name = "libp2p-identify" -version = "0.29.0" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f668f00efd9883e8b7bcc582eaf0164615792608f886f6577da18bcbeea0a46" +checksum = "a7b61f6cf07664fb97016c318c4d4512b3dd4cc07238607f3f0163245f99008e" dependencies = [ - "futures 0.3.15", + "futures 0.3.17", "libp2p-core", "libp2p-swarm", "log", "prost", "prost-build", - "smallvec 1.6.1", + "smallvec", "wasm-timer", ] [[package]] name = "libp2p-kad" -version = "0.30.0" +version = "0.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b07312ebe5ee4fd2404447a0609814574df55c65d4e20838b957bbd34907d820" +checksum = "50ed78489c87924235665a0ab345b298ee34dff0f7ad62c0ba6608b2144fb75e" dependencies = [ "arrayvec 0.5.2", "asynchronous-codec 0.6.0", - "bytes 1.0.1", + "bytes 1.1.0", "either", "fnv", - "futures 0.3.15", + "futures 0.3.17", "libp2p-core", "libp2p-swarm", "log", "prost", "prost-build", "rand 0.7.3", - "sha2 0.9.3", - "smallvec 1.6.1", + "sha2 0.9.8", + "smallvec", "uint", "unsigned-varint 0.7.0", "void", @@ -3871,59 +4219,59 @@ dependencies = [ [[package]] name = "libp2p-mdns" -version = "0.30.1" +version = "0.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41e282f974c4bea56db8acca50387f05189406e346318cb30190b0bde662961e" +checksum = "a29e6cbc2a24b8471b6567e580a0e8e7b70a6d0f0ea2be0844d1e842d7d4fa33" dependencies = [ "async-io", "data-encoding", "dns-parser", - "futures 0.3.15", + "futures 0.3.17", "if-watch", "lazy_static", "libp2p-core", "libp2p-swarm", "log", - "rand 0.8.3", - "smallvec 1.6.1", - "socket2 0.4.0", + "rand 0.8.4", + "smallvec", + "socket2 0.4.1", "void", ] [[package]] name = "libp2p-mplex" -version = "0.28.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85e9b544335d1ed30af71daa96edbefadef6f19c7a55f078b9fc92c87163105d" +checksum = "313d9ea526c68df4425f580024e67a9d3ffd49f2c33de5154b1f5019816f7a99" dependencies = [ "asynchronous-codec 0.6.0", - "bytes 1.0.1", - "futures 0.3.15", + "bytes 1.1.0", + "futures 0.3.17", "libp2p-core", "log", "nohash-hasher", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "rand 0.7.3", - "smallvec 1.6.1", + "smallvec", "unsigned-varint 0.7.0", ] [[package]] name = "libp2p-noise" -version = "0.30.0" +version = "0.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36db0f0db3b0433f5b9463f1c0cd9eadc0a3734a9170439ce501ff99733a88bd" +checksum = "3f1db7212f342b6ba7c981cc40e31f76e9e56cb48e65fa4c142ecaca5839523e" dependencies = [ - "bytes 1.0.1", - "curve25519-dalek 3.0.2", - "futures 0.3.15", + "bytes 1.1.0", + "curve25519-dalek 3.2.0", + "futures 0.3.17", "lazy_static", "libp2p-core", "log", "prost", "prost-build", - "rand 0.7.3", - "sha2 0.9.3", + "rand 0.8.4", + "sha2 0.9.8", "snow", "static_assertions", "x25519-dalek", @@ -3932,11 +4280,11 @@ dependencies = [ [[package]] name = "libp2p-ping" -version = "0.29.0" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf4bfaffac63bf3c7ec11ed9d8879d455966ddea7e78ee14737f0b6dce0d1cd1" +checksum = "2482cfd9eb0b7a0baaf3e7b329dc4f2785181a161b1a47b7192f8d758f54a439" dependencies = [ - "futures 0.3.15", + "futures 0.3.17", "libp2p-core", "libp2p-swarm", "log", @@ -3947,13 +4295,13 @@ dependencies = [ [[package]] name = "libp2p-plaintext" -version = "0.28.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c8c37b4d2a075b4be8442760a5f8c037180f0c8dd5b5734b9978ab868b3aa11" +checksum = "13b4783e5423870b9a5c199f65a7a3bc66d86ab56b2b9beebf3c338d889cf8e4" dependencies = [ "asynchronous-codec 0.6.0", - "bytes 1.0.1", - "futures 0.3.15", + "bytes 1.1.0", + "futures 0.3.17", "libp2p-core", "log", "prost", @@ -3964,13 +4312,13 @@ dependencies = [ [[package]] name = "libp2p-pnet" -version = "0.20.0" +version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ce3374f3b28162db9d3442c9347c4f14cb01e8290052615c7d341d40eae0599" +checksum = "07cb4dd4b917e5b40ddefe49b96b07adcd8d342e0317011d175b7b2bb1dcc974" dependencies = [ - "futures 0.3.15", + "futures 0.3.17", "log", - "pin-project 1.0.7", + "pin-project 1.0.8", "rand 0.7.3", "salsa20", "sha3", @@ -3978,22 +4326,22 @@ dependencies = [ [[package]] name = "libp2p-relay" -version = "0.2.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b8786aca3f18671d8776289706a5521f6c9124a820f69e358de214b9939440d" +checksum = "0133f6cfd81cdc16e716de2982e012c62e6b9d4f12e41967b3ee361051c622aa" dependencies = [ "asynchronous-codec 0.6.0", - "bytes 1.0.1", - "futures 0.3.15", + "bytes 1.1.0", + "futures 0.3.17", "futures-timer 3.0.2", "libp2p-core", "libp2p-swarm", "log", - "pin-project 1.0.7", + "pin-project 1.0.8", "prost", "prost-build", "rand 0.7.3", - "smallvec 1.6.1", + "smallvec", "unsigned-varint 0.7.0", "void", "wasm-timer", @@ -4001,45 +4349,45 @@ dependencies = [ [[package]] name = "libp2p-request-response" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cdbe172f08e6d0f95fa8634e273d4c4268c4063de2e33e7435194b0130c62e3" +checksum = "06cdae44b6821466123af93cbcdec7c9e6ba9534a8af9cdc296446d39416d241" dependencies = [ "async-trait", - "bytes 1.0.1", - "futures 0.3.15", + "bytes 1.1.0", + "futures 0.3.17", "libp2p-core", "libp2p-swarm", "log", "lru", "minicbor", "rand 0.7.3", - "smallvec 1.6.1", + "smallvec", "unsigned-varint 0.7.0", "wasm-timer", ] [[package]] name = "libp2p-swarm" -version = "0.29.0" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e04d8e1eef675029ec728ba14e8d0da7975d84b6679b699b4ae91a1de9c3a92" +checksum = "7083861341e1555467863b4cd802bea1e8c4787c0f7b5110097d0f1f3248f9a9" dependencies = [ "either", - "futures 0.3.15", + "futures 0.3.17", "libp2p-core", "log", "rand 0.7.3", - "smallvec 1.6.1", + "smallvec", "void", "wasm-timer", ] [[package]] name = "libp2p-swarm-derive" -version = "0.23.0" +version = "0.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "365b0a699fea5168676840567582a012ea297b1ca02eee467e58301b9c9c5eed" +checksum = "ab8cb308d4fc854869f5abb54fdab0833d2cf670d407c745849dc47e6e08d79c" dependencies = [ "quote", "syn", @@ -4047,40 +4395,40 @@ dependencies = [ [[package]] name = "libp2p-tcp" -version = "0.28.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b1a27d21c477951799e99d5c105d78868258502ce092988040a808d5a19bbd9" +checksum = "79edd26b6b4bb5feee210dcda562dca186940dfecb0024b979c3f50824b3bf28" dependencies = [ "async-io", - "futures 0.3.15", + "futures 0.3.17", "futures-timer 3.0.2", "if-watch", "ipnet", "libc", "libp2p-core", "log", - "socket2 0.4.0", + "socket2 0.4.1", ] [[package]] name = "libp2p-uds" -version = "0.28.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffd6564bb3b7ff203661ccbb69003c2b551e34cef974f2d6c6a28306a12170b5" +checksum = "280e793440dd4e9f273d714f4497325c72cddb0fe85a49f9a03c88f41dd20182" dependencies = [ "async-std", - "futures 0.3.15", + "futures 0.3.17", "libp2p-core", "log", ] [[package]] name = "libp2p-wasm-ext" -version = "0.28.1" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cef45d61e43c313531b5e903e4e8415212ff6338e0c54c47da5b9b412b5760de" +checksum = "f553b7140fad3d7a76f50497b0ea591e26737d9607428a75509fc191e4d1b1f6" dependencies = [ - "futures 0.3.15", + "futures 0.3.17", "js-sys", "libp2p-core", "parity-send-wrapper", @@ -4090,40 +4438,40 @@ dependencies = [ [[package]] name = "libp2p-websocket" -version = "0.29.0" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cace60995ef6f637e4752cccbb2590f6bc358e8741a0d066307636c69a4b3a74" +checksum = "ddf99dcbf5063e9d59087f61b1e85c686ceab2f5abedb472d32288065c0e5e27" dependencies = [ "either", - "futures 0.3.15", + "futures 0.3.17", "futures-rustls", "libp2p-core", "log", "quicksink", "rw-stream-sink", "soketto 0.4.2", - "url 2.2.1", + "url 2.2.2", "webpki-roots", ] [[package]] name = "libp2p-yamux" -version = "0.32.0" +version = "0.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f35da42cfc6d5cb0dcf3ad6881bc68d146cdf38f98655e09e33fbba4d13eabc4" +checksum = "214cc0dd9c37cbed27f0bb1eba0c41bbafdb93a8be5e9d6ae1e6b4b42cd044bf" dependencies = [ - "futures 0.3.15", + "futures 0.3.17", "libp2p-core", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "thiserror", "yamux", ] [[package]] name = "librocksdb-sys" -version = "6.17.3" +version = "6.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5da125e1c0f22c7cae785982115523a0738728498547f415c9054cb17c7e89f9" +checksum = "c309a9d2470844aceb9a4a098cf5286154d20596868b75a6b36357d2bb9ca25d" dependencies = [ "bindgen", "cc", @@ -4140,18 +4488,85 @@ dependencies = [ "arrayref", "crunchy", "digest 0.8.1", - "hmac-drbg", + "hmac-drbg 0.2.0", "rand 0.7.3", "sha2 0.8.2", - "subtle 2.4.0", + "subtle 2.4.1", "typenum", ] +[[package]] +name = "libsecp256k1" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd1137239ab33b41aa9637a88a28249e5e70c40a42ccc92db7f12cc356c1fcd7" +dependencies = [ + "arrayref", + "base64 0.12.3", + "digest 0.9.0", + "hmac-drbg 0.3.0", + "libsecp256k1-core", + "libsecp256k1-gen-ecmult", + "libsecp256k1-gen-genmult", + "rand 0.7.3", + "serde", + "sha2 0.9.8", + "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", + "hmac-drbg 0.3.0", + "libsecp256k1-core", + "libsecp256k1-gen-ecmult", + "libsecp256k1-gen-genmult", + "rand 0.7.3", + "serde", + "sha2 0.9.8", + "typenum", +] + +[[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.2" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "602113192b08db8f38796c4e85c39e960c145965140e918018bcde1952429655" +checksum = "de5435b8549c16d423ed0c03dbaafe57cf6c3344744f1242520d59c9d8ecec66" dependencies = [ "cc", "libc", @@ -4176,9 +4591,9 @@ dependencies = [ [[package]] name = "linregress" -version = "0.4.3" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e6e407dadb4ca4b31bc69c27aff00e7ca4534fdcee855159b039a7cebb5f395" +checksum = "d6c601a85f5ecd1aba625247bca0031585fb1c446461b142878a16f8245ddeb8" dependencies = [ "nalgebra", "statrs", @@ -4195,9 +4610,9 @@ dependencies = [ [[package]] name = "lock_api" -version = "0.4.2" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd96ffd135b2fd7b973ac026d28085defbe8983df057ced3eb4f2130b0831312" +checksum = "712a4d093c9976e24e7dbca41db895dabcbac38eb5f4045393d17a95bdfb1109" dependencies = [ "scopeguard", ] @@ -4214,11 +4629,11 @@ dependencies = [ [[package]] name = "lru" -version = "0.6.5" +version = "0.6.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f374d42cdfc1d7dbf3d3dec28afab2eb97ffbf43a3234d795b5986dbf4b90ba" +checksum = "7ea2d928b485416e8908cff2d97d621db22b27f7b3b6729e438bcf42c671ba91" dependencies = [ - "hashbrown 0.9.1", + "hashbrown", ] [[package]] @@ -4230,6 +4645,26 @@ dependencies = [ "linked-hash-map", ] +[[package]] +name = "lz4" +version = "1.23.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aac20ed6991e01bf6a2e68cc73df2b389707403662a8ba89f68511fb340f724c" +dependencies = [ + "libc", + "lz4-sys", +] + +[[package]] +name = "lz4-sys" +version = "1.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dca79aa95d8b3226213ad454d328369853be3a1382d89532a854f4d69640acae" +dependencies = [ + "cc", + "libc", +] + [[package]] name = "mach" version = "0.3.2" @@ -4262,9 +4697,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" @@ -4275,17 +4710,11 @@ dependencies = [ "rawpointer", ] -[[package]] -name = "maybe-uninit" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00" - [[package]] name = "memchr" -version = "2.3.4" +version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ee1c47aaa256ecabcaea351eae4a9b01ef39ed810004e298d2511ed284b1525" +checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a" [[package]] name = "memmap" @@ -4299,27 +4728,18 @@ dependencies = [ [[package]] name = "memmap2" -version = "0.2.1" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04e3e85b970d650e2ae6d70592474087051c11c54da7f7b4949725c5735fbcc6" +checksum = "723e3ebdcdc5c023db1df315364573789f8857c11b631a2fdfad7c00f5c046b4" dependencies = [ "libc", ] [[package]] name = "memoffset" -version = "0.5.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "043175f069eda7b85febe4a74abbaeff828d9f8b448515d3151a14a3542811aa" -dependencies = [ - "autocfg", -] - -[[package]] -name = "memoffset" -version = "0.6.1" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "157b4208e3059a8f9e78d559edc658e13df41410cb3ae03979c83130067fdd87" +checksum = "59accc507f1338036a0477ef61afdae33cde60840f4dfe481319ce3ad116ddf9" dependencies = [ "autocfg", ] @@ -4331,7 +4751,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "de006e09d04fc301a5f7e817b75aa49801c4479a8af753764416b085337ddcc5" dependencies = [ "hash-db", - "hashbrown 0.11.2", + "hashbrown", "parity-util-mem", ] @@ -4371,21 +4791,21 @@ dependencies = [ "async-trait", "bp-messages", "bp-runtime", - "futures 0.3.15", + "futures 0.3.17", "hex", "log", "num-traits", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "relay-utils", ] [[package]] name = "metered-channel" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ "derive_more", - "futures 0.3.15", + "futures 0.3.17", "futures-timer 3.0.2", ] @@ -4395,7 +4815,7 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c023c3f16109e7f33aa451f773fd61070e265b4977d0b6e344a51049296dd7df" dependencies = [ - "futures 0.3.15", + "futures 0.3.17", "rand 0.7.3", "thrift", ] @@ -4408,7 +4828,7 @@ dependencies = [ "bp-runtime", "frame-benchmarking", "frame-benchmarking-cli", - "jsonrpc-core 15.1.0", + "jsonrpc-core 18.0.0", "millau-runtime", "node-inspect", "pallet-bridge-messages", @@ -4493,18 +4913,18 @@ checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d" [[package]] name = "minicbor" -version = "0.8.0" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea79ce4ab9f445ec6b71833a2290ac0a29c9dde0fa7cae4c481eecae021d9bd9" +checksum = "51aa5bb0ca22415daca596a227b507f880ad1b2318a87fa9325312a5d285ca0d" dependencies = [ "minicbor-derive", ] [[package]] name = "minicbor-derive" -version = "0.6.2" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19ce18b5423c573a13e80cb3046ea0af6379ef725dc3af4886bdb8f4e5093068" +checksum = "54999f917cd092b13904737e26631aa2b2b88d625db68e4bab461dcd8006c788" dependencies = [ "proc-macro2", "quote", @@ -4548,7 +4968,7 @@ checksum = "8c2bdb6314ec10835cd3293dd268473a835c02b7b352e788be788b3c6ca6bb16" dependencies = [ "libc", "log", - "miow 0.3.6", + "miow 0.3.7", "ntapi", "winapi 0.3.9", ] @@ -4565,29 +4985,6 @@ dependencies = [ "slab", ] -[[package]] -name = "mio-named-pipes" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0840c1c50fd55e521b247f949c241c9997709f23bd7f023b9762cd561e935656" -dependencies = [ - "log", - "mio 0.6.23", - "miow 0.3.6", - "winapi 0.3.9", -] - -[[package]] -name = "mio-uds" -version = "0.6.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afcb699eb26d4332647cc848492bbc15eafb26f08d0304550d5aa1f612e066f0" -dependencies = [ - "iovec", - "libc", - "mio 0.6.23", -] - [[package]] name = "miow" version = "0.2.2" @@ -4602,11 +4999,10 @@ dependencies = [ [[package]] name = "miow" -version = "0.3.6" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a33c1b55807fbed163481b5ba66db4b2fa6cde694a5027be10fb724206c5897" +checksum = "b9f1c5b025cda876f66ef43a113f91ebc9f4ccef34843000e0adf6ebbab84e21" dependencies = [ - "socket2 0.3.19", "winapi 0.3.9", ] @@ -4616,6 +5012,24 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0debeb9fcf88823ea64d64e4a815ab1643f33127d995978e099942ce38f25238" +[[package]] +name = "multiaddr" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48ee4ea82141951ac6379f964f71b20876d43712bea8faf6dd1a375e08a46499" +dependencies = [ + "arrayref", + "bs58", + "byteorder", + "data-encoding", + "multihash 0.14.0", + "percent-encoding 2.1.0", + "serde", + "static_assertions", + "unsigned-varint 0.7.0", + "url 2.2.2", +] + [[package]] name = "multibase" version = "0.8.0" @@ -4639,19 +5053,32 @@ dependencies = [ "digest 0.9.0", "generic-array 0.14.4", "multihash-derive", - "sha2 0.9.3", + "sha2 0.9.8", "sha3", "unsigned-varint 0.5.1", ] +[[package]] +name = "multihash" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "752a61cd890ff691b4411423d23816d5866dd5621e4d1c5687a53b94b5a979d8" +dependencies = [ + "digest 0.9.0", + "generic-array 0.14.4", + "multihash-derive", + "sha2 0.9.8", + "unsigned-varint 0.7.0", +] + [[package]] name = "multihash-derive" -version = "0.7.1" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85ee3c48cb9d9b275ad967a0e96715badc13c6029adb92f34fa17b9ff28fd81f" +checksum = "424f6e86263cd5294cbd7f1e95746b95aca0e0d66bff31e5a40d6baa87b4aa99" dependencies = [ - "proc-macro-crate 0.1.5", - "proc-macro-error", + "proc-macro-crate 1.1.0", + "proc-macro-error 1.0.4", "proc-macro2", "quote", "syn", @@ -4660,21 +5087,21 @@ dependencies = [ [[package]] name = "multimap" -version = "0.8.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1255076139a83bb467426e7f8d0134968a8118844faa755985e077cf31850333" +checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a" [[package]] name = "multistream-select" -version = "0.10.1" +version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5df70763c86c98487451f307e1b68b4100da9076f4c12146905fc2054277f4e8" +checksum = "7d91ec0a2440aaff5f78ec35631a7027d50386c6163aa975f7caa0d5da4b6ff8" dependencies = [ - "bytes 1.0.1", - "futures 0.3.15", + "bytes 1.1.0", + "futures 0.3.17", "log", - "pin-project 1.0.7", - "smallvec 1.6.1", + "pin-project 1.0.8", + "smallvec", "unsigned-varint 0.7.0", ] @@ -4690,7 +5117,7 @@ dependencies = [ "num-complex", "num-rational 0.4.0", "num-traits", - "rand 0.8.3", + "rand 0.8.4", "rand_distr", "simba", "typenum", @@ -4709,18 +5136,18 @@ dependencies = [ [[package]] name = "names" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef320dab323286b50fb5cdda23f61c796a72a89998ab565ca32525c5c556f2da" +checksum = "10a8690bf09abf659851e58cd666c3d37ac6af07c2bd7a9e332cfba471715775" dependencies = [ - "rand 0.3.23", + "rand 0.8.4", ] [[package]] name = "native-tls" -version = "0.2.7" +version = "0.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8d96b2e1c8da3957d58100b09f102c6d9cfdfced01b7ec5a8974044bb09dbd4" +checksum = "48ba9f7719b5a0f42f338907614285fb5fd70e53858141f69898a1fb7203b24d" dependencies = [ "lazy_static", "libc", @@ -4729,21 +5156,11 @@ dependencies = [ "openssl-probe", "openssl-sys", "schannel", - "security-framework 2.3.1", - "security-framework-sys 2.3.0", + "security-framework", + "security-framework-sys", "tempfile", ] -[[package]] -name = "nb-connect" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "670361df1bc2399ee1ff50406a0d422587dd3bb0da596e1978fe8e05dabddf4f" -dependencies = [ - "libc", - "socket2 0.3.19", -] - [[package]] name = "net2" version = "0.2.37" @@ -4757,14 +5174,14 @@ dependencies = [ [[package]] name = "node-inspect" -version = "0.8.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.9.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "derive_more", - "log", "parity-scale-codec", "sc-cli", "sc-client-api", + "sc-executor", "sc-service", "sp-blockchain", "sp-core", @@ -4786,10 +5203,12 @@ checksum = "2bf50223579dc7cdcfb3bfcacf7069ff68243f8c363f62ffa99cf000a6b9c451" [[package]] name = "nom" -version = "5.1.2" +version = "6.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffb4262d26ed83a1c0a33a38fe2bb15797329c85770da05e6b828ddb782627af" +checksum = "e7413f999671bd4745a7b624bd370a569fb6bc574b23c83a3c5ed2e453f3d5e2" dependencies = [ + "bitvec 0.19.5", + "funty", "memchr", "version_check", ] @@ -4886,12 +5305,6 @@ dependencies = [ "libc", ] -[[package]] -name = "object" -version = "0.23.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9a7ab5d64814df0fe4a4b5ead45ed6c5f181ee3ff04ba344313a6c80446c5d4" - [[package]] name = "object" version = "0.24.0" @@ -4902,13 +5315,22 @@ dependencies = [ "indexmap", ] +[[package]] +name = "object" +version = "0.26.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39f37e50073ccad23b6d09bcb5b263f4e76d3bb6038e4a3c08e52162ffa8abc2" +dependencies = [ + "memchr", +] + [[package]] name = "once_cell" -version = "1.7.0" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10acf907b94fc1b1a152d08ef97e7759650268cf986bf127f387e602b02c7e5a" +checksum = "692fcb63b64b1758029e0a96ee63e049ce8c5948587f2f7208df04625e5f6b56" dependencies = [ - "parking_lot 0.11.1", + "parking_lot 0.11.2", ] [[package]] @@ -4925,9 +5347,9 @@ checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" [[package]] name = "openssl" -version = "0.10.35" +version = "0.10.36" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "549430950c79ae24e6d02e0b7404534ecf311d94cc9f861e9e4020187d13d885" +checksum = "8d9facdb76fec0b73c406f125d44d86fdad818d66fef0531eec9233ca425ff4a" dependencies = [ "bitflags", "cfg-if 1.0.0", @@ -4939,15 +5361,15 @@ dependencies = [ [[package]] name = "openssl-probe" -version = "0.1.2" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de" +checksum = "28988d872ab76095a6e6ac88d99b54fd267702734fd7ffe610ca27f533ddb95a" [[package]] name = "openssl-sys" -version = "0.9.65" +version = "0.9.66" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a7907e3bfa08bb85105209cdfcb6c63d109f8f6c1ed6ca318fff5c1853fbc1d" +checksum = "1996d2d305e561b70d1ee0c53f1542833f4e1ac6ce9a6708b6ff2738ca67dc82" dependencies = [ "autocfg", "cc", @@ -4976,12 +5398,11 @@ dependencies = [ [[package]] name = "pallet-aura" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "frame-support", "frame-system", - "pallet-session", "pallet-timestamp", "parity-scale-codec", "sp-application-crypto", @@ -4992,8 +5413,8 @@ dependencies = [ [[package]] name = "pallet-authority-discovery" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "frame-support", "frame-system", @@ -5007,8 +5428,8 @@ dependencies = [ [[package]] name = "pallet-authorship" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "frame-support", "frame-system", @@ -5021,8 +5442,8 @@ dependencies = [ [[package]] name = "pallet-babe" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "frame-benchmarking", "frame-support", @@ -5044,8 +5465,8 @@ dependencies = [ [[package]] name = "pallet-balances" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "frame-benchmarking", "frame-support", @@ -5059,29 +5480,37 @@ dependencies = [ [[package]] name = "pallet-beefy" version = "0.1.0" -source = "git+https://github.com/paritytech/grandpa-bridge-gadget?branch=master#2e450ac733d55b2f5e42a304afa287be6abcc53b" +source = "git+https://github.com/paritytech/grandpa-bridge-gadget?branch=master#c152c45ac331eb8ab40d956ab1d008d181810ef4" dependencies = [ "beefy-primitives", "frame-support", "frame-system", "pallet-session", "parity-scale-codec", + "scale-info", "serde", "sp-runtime", "sp-std", ] [[package]] -name = "pallet-bridge-currency-exchange" +name = "pallet-beefy-mmr" version = "0.1.0" +source = "git+https://github.com/paritytech/grandpa-bridge-gadget?branch=master#c152c45ac331eb8ab40d956ab1d008d181810ef4" dependencies = [ - "bp-currency-exchange", - "bp-header-chain", - "frame-benchmarking", + "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", @@ -5090,14 +5519,45 @@ dependencies = [ ] [[package]] -name = "pallet-bridge-dispatch" -version = "0.1.0" +name = "pallet-bounties" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ - "bp-message-dispatch", - "bp-runtime", "frame-support", "frame-system", - "log", + "pallet-treasury", + "parity-scale-codec", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-bridge-currency-exchange" +version = "0.1.0" +dependencies = [ + "bp-currency-exchange", + "bp-header-chain", + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "serde", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-bridge-dispatch" +version = "0.1.0" +dependencies = [ + "bp-message-dispatch", + "bp-runtime", + "frame-support", + "frame-system", + "log", "parity-scale-codec", "sp-core", "sp-io", @@ -5113,8 +5573,8 @@ dependencies = [ "frame-benchmarking", "frame-support", "frame-system", - "hex-literal 0.3.1", - "libsecp256k1", + "hex-literal 0.3.3", + "libsecp256k1 0.3.5", "log", "parity-scale-codec", "serde", @@ -5149,7 +5609,7 @@ dependencies = [ name = "pallet-bridge-messages" version = "0.1.0" dependencies = [ - "bitvec", + "bitvec 0.20.4", "bp-message-dispatch", "bp-messages", "bp-runtime", @@ -5157,7 +5617,7 @@ dependencies = [ "frame-support", "frame-system", "hex", - "hex-literal 0.3.1", + "hex-literal 0.3.3", "log", "num-traits", "pallet-balances", @@ -5190,10 +5650,41 @@ dependencies = [ "sp-std", ] +[[package]] +name = "pallet-collective" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-democracy" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "serde", + "sp-io", + "sp-runtime", + "sp-std", +] + [[package]] name = "pallet-election-provider-multi-phase" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "frame-election-provider-support", "frame-support", @@ -5209,10 +5700,26 @@ dependencies = [ "static_assertions", ] +[[package]] +name = "pallet-elections-phragmen" +version = "5.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" +dependencies = [ + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "sp-core", + "sp-io", + "sp-npos-elections", + "sp-runtime", + "sp-std", +] + [[package]] name = "pallet-grandpa" -version = "3.1.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "frame-benchmarking", "frame-support", @@ -5231,10 +5738,74 @@ dependencies = [ "sp-std", ] +[[package]] +name = "pallet-identity" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" +dependencies = [ + "enumflags2", + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-im-online" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" +dependencies = [ + "frame-support", + "frame-system", + "log", + "pallet-authorship", + "parity-scale-codec", + "sp-application-crypto", + "sp-core", + "sp-io", + "sp-runtime", + "sp-staking", + "sp-std", +] + +[[package]] +name = "pallet-indices" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" +dependencies = [ + "frame-support", + "frame-system", + "parity-scale-codec", + "sp-core", + "sp-io", + "sp-keyring", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-membership" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + [[package]] name = "pallet-mmr" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "ckb-merkle-mountain-range", "frame-benchmarking", @@ -5250,8 +5821,8 @@ dependencies = [ [[package]] name = "pallet-mmr-primitives" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "frame-support", "frame-system", @@ -5265,24 +5836,81 @@ dependencies = [ ] [[package]] -name = "pallet-offences" +name = "pallet-mmr-rpc" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" +dependencies = [ + "jsonrpc-core 18.0.0", + "jsonrpc-core-client", + "jsonrpc-derive", + "pallet-mmr-primitives", + "parity-scale-codec", + "serde", + "sp-api", + "sp-blockchain", + "sp-core", + "sp-runtime", +] + +[[package]] +name = "pallet-multisig" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" +dependencies = [ + "frame-support", + "frame-system", + "parity-scale-codec", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-nicks" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" +dependencies = [ + "frame-support", + "frame-system", + "parity-scale-codec", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-offences" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "frame-support", "frame-system", "log", "pallet-balances", "parity-scale-codec", + "serde", "sp-runtime", "sp-staking", "sp-std", ] +[[package]] +name = "pallet-proxy" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" +dependencies = [ + "frame-support", + "frame-system", + "parity-scale-codec", + "sp-io", + "sp-runtime", + "sp-std", +] + [[package]] name = "pallet-randomness-collective-flip" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "frame-support", "frame-system", @@ -5292,10 +5920,25 @@ dependencies = [ "sp-std", ] +[[package]] +name = "pallet-scheduler" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "sp-io", + "sp-runtime", + "sp-std", +] + [[package]] name = "pallet-session" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "frame-support", "frame-system", @@ -5328,8 +5971,8 @@ dependencies = [ [[package]] name = "pallet-staking" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "frame-election-provider-support", "frame-support", @@ -5338,20 +5981,29 @@ dependencies = [ "pallet-authorship", "pallet-session", "parity-scale-codec", - "paste", "serde", "sp-application-crypto", "sp-io", "sp-runtime", "sp-staking", "sp-std", - "static_assertions", +] + +[[package]] +name = "pallet-staking-reward-curve" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" +dependencies = [ + "proc-macro-crate 1.1.0", + "proc-macro2", + "quote", + "syn", ] [[package]] name = "pallet-sudo" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "frame-support", "frame-system", @@ -5363,31 +6015,48 @@ dependencies = [ [[package]] name = "pallet-timestamp" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "frame-benchmarking", "frame-support", "frame-system", - "impl-trait-for-tuples", "log", "parity-scale-codec", "sp-inherents", + "sp-io", "sp-runtime", "sp-std", "sp-timestamp", ] +[[package]] +name = "pallet-tips" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" +dependencies = [ + "frame-support", + "frame-system", + "log", + "pallet-treasury", + "parity-scale-codec", + "serde", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + [[package]] name = "pallet-transaction-payment" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "frame-support", "frame-system", "parity-scale-codec", "serde", - "smallvec 1.6.1", + "smallvec", "sp-core", "sp-io", "sp-runtime", @@ -5396,10 +6065,10 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ - "jsonrpc-core 15.1.0", + "jsonrpc-core 18.0.0", "jsonrpc-core-client", "jsonrpc-derive", "pallet-transaction-payment-rpc-runtime-api", @@ -5413,8 +6082,8 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc-runtime-api" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "pallet-transaction-payment", "parity-scale-codec", @@ -5424,8 +6093,8 @@ dependencies = [ [[package]] name = "pallet-treasury" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "frame-support", "frame-system", @@ -5437,17 +6106,60 @@ dependencies = [ "sp-std", ] +[[package]] +name = "pallet-utility" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" +dependencies = [ + "frame-support", + "frame-system", + "parity-scale-codec", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + [[package]] name = "pallet-vesting" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" +dependencies = [ + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-xcm" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ - "enumflags2", "frame-support", "frame-system", + "log", "parity-scale-codec", + "serde", + "sp-core", "sp-runtime", "sp-std", + "xcm", + "xcm-executor", +] + +[[package]] +name = "parachain-info" +version = "0.1.0" +source = "git+https://github.com/paritytech/cumulus?branch=master#5af2990cfd3711f86c7cb8606b22364208a5c32d" +dependencies = [ + "cumulus-primitives-core", + "frame-support", + "frame-system", + "parity-scale-codec", + "serde", ] [[package]] @@ -5458,9 +6170,9 @@ checksum = "16b56e3a2420138bdb970f84dfb9c774aea80fa0e7371549eedec0d80c209c67" [[package]] name = "parity-db" -version = "0.2.4" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e337f62db341435f0da05b8f6b97e984ef4ea5800510cd07c2d624688c40b47" +checksum = "241f9c5d25063080f2c02846221f13e1d0e5e18fa00c32c234aad585b744ee55" dependencies = [ "blake2-rfc", "crc32fast", @@ -5468,37 +6180,21 @@ dependencies = [ "hex", "libc", "log", + "lz4", "memmap2", - "parking_lot 0.11.1", - "rand 0.8.3", -] - -[[package]] -name = "parity-multiaddr" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58341485071825827b7f03cf7efd1cb21e6a709bea778fb50227fd45d2f361b4" -dependencies = [ - "arrayref", - "bs58", - "byteorder", - "data-encoding", - "multihash", - "percent-encoding 2.1.0", - "serde", - "static_assertions", - "unsigned-varint 0.7.0", - "url 2.2.1", + "parking_lot 0.11.2", + "rand 0.8.4", + "snap", ] [[package]] name = "parity-scale-codec" -version = "2.2.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8975095a2a03bbbdc70a74ab11a4f76a6d0b84680d87c68d722531b0ac28e8a9" +checksum = "e11263a97373b43da4b426edbb52ef99a7b51e2d9752ef56a7f8b356f48495a5" dependencies = [ - "arrayvec 0.7.0", - "bitvec", + "arrayvec 0.7.1", + "bitvec 0.20.4", "byte-slice-cast", "impl-trait-for-tuples", "parity-scale-codec-derive", @@ -5507,11 +6203,11 @@ dependencies = [ [[package]] name = "parity-scale-codec-derive" -version = "2.2.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40dbbfef7f0a1143c5b06e0d76a6278e25dac0bc1af4be51a0fbb73f07e7ad09" +checksum = "b157dc92b3db2bae522afb31b3843e91ae097eb01d66c72dda66a2e86bc3ca14" dependencies = [ - "proc-macro-crate 1.0.0", + "proc-macro-crate 1.1.0", "proc-macro2", "quote", "syn", @@ -5525,20 +6221,15 @@ checksum = "aa9777aa91b8ad9dd5aaa04a9b6bcb02c7f1deb952fca5a66034d5e63afc5c6f" [[package]] name = "parity-tokio-ipc" -version = "0.4.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e57fea504fea33f9fbb5f49f378359030e7e026a6ab849bb9e8f0787376f1bf" +checksum = "9981e32fb75e004cc148f5fb70342f393830e0a4aa62e3cc93b50976218d42b6" dependencies = [ - "bytes 0.4.12", - "futures 0.1.31", + "futures 0.3.17", "libc", "log", - "mio-named-pipes", - "miow 0.3.6", "rand 0.7.3", - "tokio 0.1.22", - "tokio-named-pipes", - "tokio-uds", + "tokio", "winapi 0.3.9", ] @@ -5550,13 +6241,13 @@ checksum = "7ad6f1acec69b95caf435bbd158d486e5a0a44fcf51531e84922c59ff09e8457" dependencies = [ "cfg-if 1.0.0", "ethereum-types", - "hashbrown 0.11.2", + "hashbrown", "impl-trait-for-tuples", "lru", "parity-util-mem-derive", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "primitive-types", - "smallvec 1.6.1", + "smallvec", "winapi 0.3.9", ] @@ -5588,9 +6279,9 @@ checksum = "be5e13c266502aadf83426d87d81a0f5d1ef45b8027f5a471c360abfe4bfae92" [[package]] name = "parity-ws" -version = "0.10.0" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e02a625dd75084c2a7024f07c575b61b782f729d18702dabb3cdbf31911dc61" +checksum = "d0ab8a461779bd022964cae2b4989fa9c99deb270bec162da2125ec03c09fcaa" dependencies = [ "byteorder", "bytes 0.4.12", @@ -5601,7 +6292,7 @@ dependencies = [ "rand 0.7.3", "sha-1 0.8.2", "slab", - "url 2.2.1", + "url 2.2.2", ] [[package]] @@ -5610,17 +6301,6 @@ version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "427c3892f9e783d91cc128285287e70a59e206ca452770ece88a76f7a3eddd72" -[[package]] -name = "parking_lot" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f842b1982eb6c2fe34036a4fbfb06dd185a3f5c8edfaacdf7d1ea10b07de6252" -dependencies = [ - "lock_api 0.3.4", - "parking_lot_core 0.6.2", - "rustc_version 0.2.3", -] - [[package]] name = "parking_lot" version = "0.10.2" @@ -5633,72 +6313,66 @@ dependencies = [ [[package]] name = "parking_lot" -version = "0.11.1" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d7744ac029df22dca6284efe4e898991d28e3085c706c972bcd7da4a27a15eb" +checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" dependencies = [ "instant", - "lock_api 0.4.2", - "parking_lot_core 0.8.3", + "lock_api 0.4.5", + "parking_lot_core 0.8.5", ] [[package]] name = "parking_lot_core" -version = "0.6.2" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b876b1b9e7ac6e1a74a6da34d25c42e17e8862aa409cbbbdcfc8d86c6f3bc62b" +checksum = "d58c7c768d4ba344e3e8d72518ac13e259d7c7ade24167003b8488e10b6740a3" dependencies = [ "cfg-if 0.1.10", "cloudabi", "libc", "redox_syscall 0.1.57", - "rustc_version 0.2.3", - "smallvec 0.6.14", + "smallvec", "winapi 0.3.9", ] [[package]] name = "parking_lot_core" -version = "0.7.2" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d58c7c768d4ba344e3e8d72518ac13e259d7c7ade24167003b8488e10b6740a3" +checksum = "d76e8e1493bcac0d2766c42737f34458f1c8c50c0d23bcb24ea953affb273216" dependencies = [ - "cfg-if 0.1.10", - "cloudabi", + "cfg-if 1.0.0", + "instant", "libc", - "redox_syscall 0.1.57", - "smallvec 1.6.1", + "redox_syscall 0.2.10", + "smallvec", "winapi 0.3.9", ] [[package]] -name = "parking_lot_core" -version = "0.8.3" +name = "paste" +version = "0.1.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa7a782938e745763fe6907fc6ba86946d72f49fe7e21de074e08128a99fb018" +checksum = "45ca20c77d80be666aef2b45486da86238fabe33e38306bd3118fe4af33fa880" dependencies = [ - "cfg-if 1.0.0", - "instant", - "libc", - "redox_syscall 0.2.5", - "smallvec 1.6.1", - "winapi 0.3.9", + "paste-impl", + "proc-macro-hack", ] [[package]] name = "paste" -version = "1.0.4" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5d65c4d95931acda4498f675e332fcbdc9a06705cd07086c510e9b6009cd1c1" +checksum = "acbf547ad0c65e31259204bd90935776d1c693cec2f4ff7abb7a1bbbd40dfe58" [[package]] -name = "pbkdf2" -version = "0.3.0" +name = "paste-impl" +version = "0.1.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "006c038a43a45995a9670da19e67600114740e8511d4333bf97a56e66a7542d9" +checksum = "d95a7db200b97ef370c8e6de0088252f7e0dfff7d047a28528e47456c0fc98b6" dependencies = [ - "byteorder", - "crypto-mac 0.7.0", + "proc-macro-hack", ] [[package]] @@ -5711,10 +6385,13 @@ dependencies = [ ] [[package]] -name = "pdqselect" -version = "0.1.0" +name = "pbkdf2" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ec91767ecc0a0bbe558ce8c9da33c068066c57ecc8bb8477ef8c1ad3ef77c27" +checksum = "d95f5254224e617595d2cc3cc73ff0a5eaf2637519e25f03388154e9378b6ffa" +dependencies = [ + "crypto-mac 0.11.1", +] [[package]] name = "peeking_take_while" @@ -5789,27 +6466,27 @@ dependencies = [ [[package]] name = "pin-project" -version = "0.4.27" +version = "0.4.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ffbc8e94b38ea3d2d8ba92aea2983b503cd75d0888d75b86bb37970b5698e15" +checksum = "918192b5c59119d51e0cd221f4d49dde9112824ba717369e903c97d076083d0f" dependencies = [ - "pin-project-internal 0.4.27", + "pin-project-internal 0.4.28", ] [[package]] name = "pin-project" -version = "1.0.7" +version = "1.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7509cc106041c40a4518d2af7a61530e1eed0e6285296a3d8c5472806ccc4a4" +checksum = "576bc800220cc65dac09e99e97b08b358cfab6e17078de8dc5fee223bd2d0c08" dependencies = [ - "pin-project-internal 1.0.7", + "pin-project-internal 1.0.8", ] [[package]] name = "pin-project-internal" -version = "0.4.27" +version = "0.4.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65ad2ae56b6abe3a1ee25f15ee605bacadb9a764edaba9c2bf4103800d4a1895" +checksum = "3be26700300be6d9d23264c73211d8190e755b6b5ca7a1b28230025511b52a5e" dependencies = [ "proc-macro2", "quote", @@ -5818,9 +6495,9 @@ dependencies = [ [[package]] name = "pin-project-internal" -version = "1.0.7" +version = "1.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48c950132583b500556b1efd71d45b319029f2b71518d979fcc208e16b42426f" +checksum = "6e8fe8163d14ce7f0cdac2e040116f22eac817edabff0be91e8aff7e9accf389" dependencies = [ "proc-macro2", "quote", @@ -5829,15 +6506,15 @@ dependencies = [ [[package]] name = "pin-project-lite" -version = "0.1.11" +version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c917123afa01924fc84bb20c4c03f004d9c38e5127e3c039bbf7f4b9c76a2f6b" +checksum = "257b64915a082f7811703966789728173279bdebb956b143dbcd23f6f970a777" [[package]] name = "pin-project-lite" -version = "0.2.4" +version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "439697af366c49a6d0a010c56a0d97685bc140ce0d377b13a2ea2aa42d64a827" +checksum = "8d31d11c69a6b52a174b42bdc0c30e5e11670f90788b2c471c31c1d17d449443" [[package]] name = "pin-utils" @@ -5868,10 +6545,10 @@ checksum = "989d43012e2ca1c4a02507c67282691a0a3207f9dc67cec596b43fe925b3d325" [[package]] name = "polkadot-approval-distribution" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ - "futures 0.3.15", + "futures 0.3.17", "polkadot-node-network-protocol", "polkadot-node-primitives", "polkadot-node-subsystem", @@ -5882,10 +6559,10 @@ dependencies = [ [[package]] name = "polkadot-availability-bitfield-distribution" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ - "futures 0.3.15", + "futures 0.3.17", "polkadot-node-network-protocol", "polkadot-node-subsystem", "polkadot-node-subsystem-util", @@ -5895,21 +6572,20 @@ dependencies = [ [[package]] name = "polkadot-availability-distribution" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ - "futures 0.3.15", + "derive_more", + "futures 0.3.17", "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.3", - "sp-application-crypto", + "rand 0.8.4", "sp-core", "sp-keystore", "thiserror", @@ -5918,10 +6594,10 @@ dependencies = [ [[package]] name = "polkadot-availability-recovery" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ - "futures 0.3.15", + "futures 0.3.17", "lru", "parity-scale-codec", "polkadot-erasure-coding", @@ -5930,18 +6606,70 @@ dependencies = [ "polkadot-node-subsystem", "polkadot-node-subsystem-util", "polkadot-primitives", - "rand 0.8.3", + "rand 0.8.4", + "sc-network", "thiserror", "tracing", ] +[[package]] +name = "polkadot-cli" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" +dependencies = [ + "frame-benchmarking-cli", + "futures 0.3.17", + "log", + "polkadot-node-core-pvf", + "polkadot-service", + "sc-cli", + "sc-service", + "sp-core", + "sp-trie", + "structopt", + "substrate-build-script-utils", + "thiserror", + "try-runtime-cli", +] + +[[package]] +name = "polkadot-client" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" +dependencies = [ + "beefy-primitives", + "frame-benchmarking", + "frame-system-rpc-runtime-api", + "pallet-mmr-primitives", + "pallet-transaction-payment-rpc-runtime-api", + "polkadot-primitives", + "polkadot-runtime", + "sc-client-api", + "sc-consensus", + "sc-executor", + "sc-service", + "sp-api", + "sp-authority-discovery", + "sp-block-builder", + "sp-blockchain", + "sp-consensus", + "sp-consensus-babe", + "sp-finality-grandpa", + "sp-offchain", + "sp-runtime", + "sp-session", + "sp-storage", + "sp-transaction-pool", +] + [[package]] name = "polkadot-collator-protocol" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ "always-assert", - "futures 0.3.15", + "derive_more", + "futures 0.3.17", "futures-timer 3.0.2", "polkadot-node-network-protocol", "polkadot-node-primitives", @@ -5957,8 +6685,8 @@ dependencies = [ [[package]] name = "polkadot-core-primitives" -version = "0.9.8" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ "parity-scale-codec", "parity-util-mem", @@ -5967,10 +6695,32 @@ dependencies = [ "sp-std", ] +[[package]] +name = "polkadot-dispute-distribution" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" +dependencies = [ + "derive_more", + "futures 0.3.17", + "lru", + "parity-scale-codec", + "polkadot-erasure-coding", + "polkadot-node-network-protocol", + "polkadot-node-primitives", + "polkadot-node-subsystem", + "polkadot-node-subsystem-util", + "polkadot-primitives", + "sc-network", + "sp-application-crypto", + "sp-keystore", + "thiserror", + "tracing", +] + [[package]] name = "polkadot-erasure-coding" -version = "0.9.8" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ "parity-scale-codec", "polkadot-node-primitives", @@ -5983,15 +6733,15 @@ dependencies = [ [[package]] name = "polkadot-gossip-support" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ - "futures 0.3.15", + "futures 0.3.17", "polkadot-node-network-protocol", "polkadot-node-subsystem", "polkadot-node-subsystem-util", "polkadot-primitives", - "rand 0.8.3", + "rand 0.8.4", "rand_chacha 0.3.1", "sp-application-crypto", "sp-core", @@ -6001,30 +6751,29 @@ dependencies = [ [[package]] name = "polkadot-network-bridge" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ "async-trait", - "futures 0.3.15", + "futures 0.3.17", "parity-scale-codec", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "polkadot-node-network-protocol", "polkadot-node-subsystem", "polkadot-node-subsystem-util", + "polkadot-overseer", "polkadot-primitives", - "sc-authority-discovery", "sc-network", "sp-consensus", - "strum 0.20.0", "tracing", ] [[package]] name = "polkadot-node-collation-generation" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ - "futures 0.3.15", + "futures 0.3.17", "parity-scale-codec", "polkadot-erasure-coding", "polkadot-node-primitives", @@ -6039,12 +6788,12 @@ dependencies = [ [[package]] name = "polkadot-node-core-approval-voting" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ - "bitvec", + "bitvec 0.20.4", "derive_more", - "futures 0.3.15", + "futures 0.3.17", "futures-timer 3.0.2", "kvdb", "lru", @@ -6056,11 +6805,9 @@ dependencies = [ "polkadot-node-subsystem-util", "polkadot-overseer", "polkadot-primitives", - "sc-client-api", "sc-keystore", "schnorrkel", "sp-application-crypto", - "sp-blockchain", "sp-consensus", "sp-consensus-slots", "sp-runtime", @@ -6069,11 +6816,11 @@ dependencies = [ [[package]] name = "polkadot-node-core-av-store" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ - "bitvec", - "futures 0.3.15", + "bitvec 0.20.4", + "futures 0.3.17", "futures-timer 3.0.2", "kvdb", "parity-scale-codec", @@ -6089,11 +6836,11 @@ dependencies = [ [[package]] name = "polkadot-node-core-backing" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ - "bitvec", - "futures 0.3.15", + "bitvec 0.20.4", + "futures 0.3.17", "polkadot-erasure-coding", "polkadot-node-primitives", "polkadot-node-subsystem", @@ -6107,10 +6854,10 @@ dependencies = [ [[package]] name = "polkadot-node-core-bitfield-signing" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ - "futures 0.3.15", + "futures 0.3.17", "polkadot-node-subsystem", "polkadot-node-subsystem-util", "polkadot-primitives", @@ -6122,11 +6869,11 @@ dependencies = [ [[package]] name = "polkadot-node-core-candidate-validation" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ "async-trait", - "futures 0.3.15", + "futures 0.3.17", "parity-scale-codec", "polkadot-node-core-pvf", "polkadot-node-primitives", @@ -6140,10 +6887,10 @@ dependencies = [ [[package]] name = "polkadot-node-core-chain-api" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ - "futures 0.3.15", + "futures 0.3.17", "polkadot-node-subsystem", "polkadot-node-subsystem-util", "polkadot-primitives", @@ -6153,16 +6900,64 @@ dependencies = [ "tracing", ] +[[package]] +name = "polkadot-node-core-chain-selection" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" +dependencies = [ + "futures 0.3.17", + "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" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" +dependencies = [ + "bitvec 0.20.4", + "derive_more", + "futures 0.3.17", + "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" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" +dependencies = [ + "futures 0.3.17", + "polkadot-node-primitives", + "polkadot-node-subsystem", + "polkadot-primitives", + "thiserror", + "tracing", +] + [[package]] name = "polkadot-node-core-parachains-inherent" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ "async-trait", - "futures 0.3.15", + "futures 0.3.17", "futures-timer 3.0.2", "polkadot-node-subsystem", - "polkadot-overseer", "polkadot-primitives", "sp-blockchain", "sp-inherents", @@ -6173,11 +6968,11 @@ dependencies = [ [[package]] name = "polkadot-node-core-provisioner" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ - "bitvec", - "futures 0.3.15", + "bitvec 0.20.4", + "futures 0.3.17", "futures-timer 3.0.2", "polkadot-node-subsystem", "polkadot-node-subsystem-util", @@ -6188,21 +6983,22 @@ dependencies = [ [[package]] name = "polkadot-node-core-pvf" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ "always-assert", "assert_matches", "async-process", "async-std", - "futures 0.3.15", + "futures 0.3.17", "futures-timer 3.0.2", "libc", "parity-scale-codec", - "pin-project 1.0.7", + "pin-project 1.0.8", "polkadot-core-primitives", + "polkadot-node-subsystem-util", "polkadot-parachain", - "rand 0.8.3", + "rand 0.8.4", "sc-executor", "sc-executor-common", "sc-executor-wasmtime", @@ -6218,10 +7014,10 @@ dependencies = [ [[package]] name = "polkadot-node-core-runtime-api" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ - "futures 0.3.15", + "futures 0.3.17", "memory-lru", "parity-util-mem", "polkadot-node-subsystem", @@ -6236,15 +7032,15 @@ dependencies = [ [[package]] name = "polkadot-node-jaeger" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ "async-std", "lazy_static", "log", "mick-jaeger", "parity-scale-codec", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "polkadot-node-primitives", "polkadot-primitives", "sc-network", @@ -6252,31 +7048,46 @@ dependencies = [ "thiserror", ] +[[package]] +name = "polkadot-node-metrics" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" +dependencies = [ + "futures 0.3.17", + "futures-timer 3.0.2", + "jemalloc-ctl", + "metered-channel", + "substrate-prometheus-endpoint", +] + [[package]] name = "polkadot-node-network-protocol" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ - "futures 0.3.15", + "async-trait", + "derive_more", + "futures 0.3.17", "parity-scale-codec", "polkadot-node-jaeger", "polkadot-node-primitives", "polkadot-primitives", + "sc-authority-discovery", "sc-network", - "strum 0.20.0", + "strum 0.21.0", "thiserror", ] [[package]] name = "polkadot-node-primitives" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ - "futures 0.3.15", + "bounded-vec", + "futures 0.3.17", "parity-scale-codec", "polkadot-parachain", "polkadot-primitives", - "polkadot-statement-table", "schnorrkel", "serde", "sp-application-crypto", @@ -6285,111 +7096,149 @@ dependencies = [ "sp-core", "sp-keystore", "sp-maybe-compressed-blob", - "sp-runtime", "thiserror", "zstd", ] [[package]] name = "polkadot-node-subsystem" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" +dependencies = [ + "polkadot-node-jaeger", + "polkadot-node-subsystem-types", + "polkadot-overseer", +] + +[[package]] +name = "polkadot-node-subsystem-types" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ - "async-std", - "async-trait", "derive_more", - "futures 0.3.15", - "futures-timer 3.0.2", - "lazy_static", - "log", - "mick-jaeger", - "parity-scale-codec", - "parking_lot 0.11.1", - "pin-project 1.0.7", + "futures 0.3.17", "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", - "sp-core", + "smallvec", "substrate-prometheus-endpoint", "thiserror", - "tracing", ] [[package]] name = "polkadot-node-subsystem-util" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ "async-trait", - "futures 0.3.15", - "futures-timer 3.0.2", - "itertools 0.10.0", + "derive_more", + "futures 0.3.17", + "itertools", "lru", "metered-channel", "parity-scale-codec", - "pin-project 1.0.7", + "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.3", - "sc-network", + "rand 0.8.4", "sp-application-crypto", "sp-core", "sp-keystore", - "substrate-prometheus-endpoint", "thiserror", "tracing", ] [[package]] name = "polkadot-overseer" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ - "async-trait", - "futures 0.3.15", + "futures 0.3.17", "futures-timer 3.0.2", "lru", + "parking_lot 0.11.2", + "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-parachain" -version = "0.9.8" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +name = "polkadot-overseer-all-subsystems-gen" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ - "derive_more", - "parity-scale-codec", - "parity-util-mem", - "polkadot-core-primitives", - "serde", - "sp-core", - "sp-runtime", - "sp-std", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "polkadot-overseer-gen" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" +dependencies = [ + "async-trait", + "futures 0.3.17", + "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" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" +dependencies = [ + "proc-macro-crate 1.1.0", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "polkadot-parachain" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" +dependencies = [ + "derive_more", + "frame-support", + "parity-scale-codec", + "parity-util-mem", + "polkadot-core-primitives", + "serde", + "sp-core", + "sp-runtime", + "sp-std", ] [[package]] name = "polkadot-primitives" -version = "0.9.8" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ - "bitvec", + "bitvec 0.20.4", "frame-system", - "hex-literal 0.3.1", + "hex-literal 0.3.3", "parity-scale-codec", "parity-util-mem", "polkadot-core-primitives", @@ -6409,172 +7258,458 @@ dependencies = [ "sp-std", "sp-trie", "sp-version", +] + +[[package]] +name = "polkadot-rpc" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" +dependencies = [ + "beefy-gadget", + "beefy-gadget-rpc", + "jsonrpc-core 18.0.0", + "pallet-mmr-rpc", + "pallet-transaction-payment-rpc", + "polkadot-primitives", + "sc-chain-spec", + "sc-client-api", + "sc-consensus-babe", + "sc-consensus-babe-rpc", + "sc-consensus-epochs", + "sc-finality-grandpa", + "sc-finality-grandpa-rpc", + "sc-rpc", + "sc-sync-state-rpc", + "sc-transaction-pool-api", + "sp-api", + "sp-block-builder", + "sp-blockchain", + "sp-consensus", + "sp-consensus-babe", + "sp-keystore", + "sp-runtime", + "substrate-frame-rpc-system", +] + +[[package]] +name = "polkadot-runtime" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" +dependencies = [ + "beefy-primitives", + "bitvec 0.20.4", + "frame-election-provider-support", + "frame-executive", + "frame-support", + "frame-system", + "frame-system-rpc-runtime-api", + "frame-try-runtime", + "log", + "pallet-authority-discovery", + "pallet-authorship", + "pallet-babe", + "pallet-balances", + "pallet-bounties", + "pallet-collective", + "pallet-democracy", + "pallet-election-provider-multi-phase", + "pallet-elections-phragmen", + "pallet-grandpa", + "pallet-identity", + "pallet-im-online", + "pallet-indices", + "pallet-membership", + "pallet-mmr-primitives", + "pallet-multisig", + "pallet-nicks", + "pallet-offences", + "pallet-proxy", + "pallet-scheduler", + "pallet-session", + "pallet-staking", + "pallet-staking-reward-curve", + "pallet-timestamp", + "pallet-tips", + "pallet-transaction-payment", + "pallet-transaction-payment-rpc-runtime-api", + "pallet-treasury", + "pallet-utility", + "pallet-vesting", + "parity-scale-codec", + "polkadot-primitives", + "polkadot-runtime-common", + "rustc-hex", + "serde", + "serde_derive", + "smallvec", + "sp-api", + "sp-authority-discovery", + "sp-block-builder", + "sp-consensus-babe", + "sp-core", + "sp-inherents", + "sp-io", + "sp-npos-elections", + "sp-offchain", + "sp-runtime", + "sp-session", + "sp-staking", + "sp-std", + "sp-transaction-pool", + "sp-version", + "static_assertions", + "substrate-wasm-builder", +] + +[[package]] +name = "polkadot-runtime-common" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" +dependencies = [ + "bitvec 0.20.4", + "frame-election-provider-support", + "frame-support", + "frame-system", + "impl-trait-for-tuples", + "libsecp256k1 0.6.0", + "log", + "pallet-authorship", + "pallet-balances", + "pallet-beefy-mmr", + "pallet-election-provider-multi-phase", + "pallet-session", + "pallet-staking", + "pallet-timestamp", + "pallet-transaction-payment", + "pallet-treasury", + "pallet-vesting", + "parity-scale-codec", + "polkadot-primitives", + "polkadot-runtime-parachains", + "rustc-hex", + "serde", + "serde_derive", + "slot-range-helper", + "sp-api", + "sp-core", + "sp-inherents", + "sp-io", + "sp-npos-elections", + "sp-runtime", + "sp-session", + "sp-staking", + "sp-std", + "static_assertions", + "xcm", +] + +[[package]] +name = "polkadot-runtime-parachains" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" +dependencies = [ + "bitflags", + "bitvec 0.20.4", + "derive_more", + "frame-support", + "frame-system", + "log", + "pallet-authority-discovery", + "pallet-authorship", + "pallet-balances", + "pallet-session", + "pallet-staking", + "pallet-timestamp", + "pallet-vesting", + "parity-scale-codec", + "polkadot-primitives", + "rand 0.8.4", + "rand_chacha 0.3.1", + "rustc-hex", + "serde", + "sp-api", + "sp-core", + "sp-inherents", + "sp-io", + "sp-keystore", + "sp-runtime", + "sp-session", + "sp-staking", + "sp-std", + "xcm", + "xcm-executor", +] + +[[package]] +name = "polkadot-service" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" +dependencies = [ + "async-trait", + "beefy-gadget", + "beefy-primitives", + "frame-system-rpc-runtime-api", + "futures 0.3.17", + "hex-literal 0.3.3", + "kvdb", + "kvdb-rocksdb 0.14.0", + "pallet-babe", + "pallet-im-online", + "pallet-mmr-primitives", + "pallet-staking", + "pallet-transaction-payment-rpc-runtime-api", + "polkadot-approval-distribution", + "polkadot-availability-bitfield-distribution", + "polkadot-availability-distribution", + "polkadot-availability-recovery", + "polkadot-client", + "polkadot-collator-protocol", + "polkadot-dispute-distribution", + "polkadot-gossip-support", + "polkadot-network-bridge", + "polkadot-node-collation-generation", + "polkadot-node-core-approval-voting", + "polkadot-node-core-av-store", + "polkadot-node-core-backing", + "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", + "polkadot-node-network-protocol", + "polkadot-node-primitives", + "polkadot-node-subsystem", + "polkadot-node-subsystem-util", + "polkadot-overseer", + "polkadot-parachain", + "polkadot-primitives", + "polkadot-rpc", + "polkadot-runtime", + "polkadot-runtime-parachains", + "polkadot-statement-distribution", + "sc-authority-discovery", + "sc-basic-authorship", + "sc-block-builder", + "sc-chain-spec", + "sc-client-api", + "sc-client-db", + "sc-consensus", + "sc-consensus-babe", + "sc-consensus-slots", + "sc-consensus-uncles", + "sc-executor", + "sc-finality-grandpa", + "sc-keystore", + "sc-network", + "sc-service", + "sc-sync-state-rpc", + "sc-telemetry", + "sc-transaction-pool", + "serde", + "sp-api", + "sp-authority-discovery", + "sp-block-builder", + "sp-blockchain", + "sp-consensus", + "sp-consensus-babe", + "sp-core", + "sp-finality-grandpa", + "sp-inherents", + "sp-io", + "sp-keystore", + "sp-offchain", + "sp-runtime", + "sp-session", + "sp-state-machine", + "sp-storage", + "sp-timestamp", + "sp-transaction-pool", + "sp-trie", + "substrate-prometheus-endpoint", "thiserror", + "tracing", ] [[package]] -name = "polkadot-procmacro-overseer-subsystems-gen" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +name = "polkadot-statement-distribution" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ - "assert_matches", - "proc-macro2", - "quote", - "syn", + "arrayvec 0.5.2", + "derive_more", + "futures 0.3.17", + "indexmap", + "parity-scale-codec", + "polkadot-node-network-protocol", + "polkadot-node-primitives", + "polkadot-node-subsystem", + "polkadot-node-subsystem-util", + "polkadot-primitives", + "sp-keystore", + "sp-staking", + "thiserror", + "tracing", ] [[package]] -name = "polkadot-procmacro-subsystem-dispatch-gen" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +name = "polkadot-statement-table" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ - "assert_matches", - "proc-macro2", - "quote", - "syn", + "parity-scale-codec", + "polkadot-primitives", + "sp-core", ] [[package]] -name = "polkadot-runtime-common" -version = "0.9.8" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +name = "polkadot-test-runtime" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ "beefy-primitives", - "bitvec", + "bitvec 0.20.4", + "frame-election-provider-support", + "frame-executive", "frame-support", "frame-system", - "impl-trait-for-tuples", - "libsecp256k1", + "frame-system-rpc-runtime-api", "log", + "pallet-authority-discovery", "pallet-authorship", + "pallet-babe", "pallet-balances", - "pallet-beefy", - "pallet-election-provider-multi-phase", - "pallet-mmr", + "pallet-grandpa", + "pallet-indices", + "pallet-mmr-primitives", + "pallet-nicks", "pallet-offences", "pallet-session", "pallet-staking", + "pallet-staking-reward-curve", + "pallet-sudo", "pallet-timestamp", "pallet-transaction-payment", - "pallet-treasury", + "pallet-transaction-payment-rpc-runtime-api", "pallet-vesting", + "pallet-xcm", "parity-scale-codec", + "polkadot-parachain", "polkadot-primitives", + "polkadot-runtime-common", "polkadot-runtime-parachains", "rustc-hex", "serde", "serde_derive", - "slot-range-helper", + "smallvec", "sp-api", + "sp-authority-discovery", + "sp-block-builder", + "sp-consensus-babe", "sp-core", "sp-inherents", "sp-io", + "sp-offchain", "sp-runtime", "sp-session", "sp-staking", "sp-std", - "static_assertions", + "sp-transaction-pool", + "sp-version", + "substrate-wasm-builder", "xcm", + "xcm-builder", + "xcm-executor", ] [[package]] -name = "polkadot-runtime-parachains" -version = "0.9.8" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +name = "polkadot-test-service" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ - "bitvec", - "derive_more", - "frame-support", + "frame-benchmarking", "frame-system", - "log", - "pallet-authority-discovery", - "pallet-authorship", + "futures 0.1.31", + "futures 0.3.17", + "hex", "pallet-balances", - "pallet-offences", - "pallet-session", "pallet-staking", - "pallet-timestamp", - "pallet-vesting", - "parity-scale-codec", - "polkadot-primitives", - "rand 0.8.3", - "rand_chacha 0.3.1", - "rustc-hex", - "serde", - "sp-api", - "sp-core", - "sp-inherents", - "sp-io", - "sp-keystore", - "sp-runtime", - "sp-session", - "sp-staking", - "sp-std", - "xcm", - "xcm-executor", -] - -[[package]] -name = "polkadot-statement-distribution" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" -dependencies = [ - "arrayvec 0.5.2", - "futures 0.3.15", - "indexmap", - "parity-scale-codec", - "polkadot-node-network-protocol", + "pallet-transaction-payment", "polkadot-node-primitives", "polkadot-node-subsystem", - "polkadot-node-subsystem-util", + "polkadot-overseer", + "polkadot-parachain", "polkadot-primitives", + "polkadot-rpc", + "polkadot-runtime-common", + "polkadot-runtime-parachains", + "polkadot-service", + "polkadot-test-runtime", + "rand 0.8.4", + "sc-authority-discovery", + "sc-chain-spec", + "sc-cli", + "sc-client-api", + "sc-consensus", + "sc-consensus-babe", + "sc-executor", + "sc-finality-grandpa", "sc-network", - "sp-keystore", - "sp-staking", - "thiserror", - "tracing", -] - -[[package]] -name = "polkadot-statement-table" -version = "0.9.8" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" -dependencies = [ - "parity-scale-codec", - "polkadot-primitives", + "sc-service", + "sc-tracing", + "sc-transaction-pool", + "sp-arithmetic", + "sp-authority-discovery", + "sp-blockchain", + "sp-consensus", + "sp-consensus-babe", "sp-core", + "sp-finality-grandpa", + "sp-inherents", + "sp-keyring", + "sp-runtime", + "sp-state-machine", + "substrate-test-client", + "tempfile", + "tokio", + "tracing", ] [[package]] name = "polling" -version = "2.0.2" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2a7bc6b2a29e632e45451c941832803a18cce6781db04de8a04696cdca8bde4" +checksum = "92341d779fa34ea8437ef4d82d440d5e1ce3f3ff7f824aa64424cd481f9a1f25" dependencies = [ - "cfg-if 0.1.10", + "cfg-if 1.0.0", "libc", "log", - "wepoll-sys", + "wepoll-ffi", "winapi 0.3.9", ] [[package]] name = "poly1305" -version = "0.6.2" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b7456bc1ad2d4cf82b3a016be4c2ac48daf11bf990c1603ebd447fe6f30fca8" +checksum = "048aeb476be11a4b6ca432ca569e375810de9294ae78f4774e78ea98a9246ede" dependencies = [ - "cpuid-bool 0.2.0", + "cpufeatures 0.2.1", + "opaque-debug 0.3.0", "universal-hash", ] [[package]] name = "polyval" -version = "0.4.5" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eebcc4aa140b9abd2bc40d9c3f7ccec842679cd79045ac3a7ac698c1a064b7cd" +checksum = "8419d2b623c7c0896ff2d5d96e2cb4ede590fed28fcc34934f4c33c036e620a1" dependencies = [ - "cpuid-bool 0.2.0", + "cfg-if 1.0.0", + "cpufeatures 0.2.1", "opaque-debug 0.3.0", "universal-hash", ] @@ -6587,9 +7722,9 @@ checksum = "ac74c624d6b2d21f425f752262f42188365d7b8ff1aff74c82e45136510a4857" [[package]] name = "primitive-types" -version = "0.10.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e90f6931e6b3051e208a449c342246cb7c786ef300789b95619f46f1dd75d9b0" +checksum = "05e4722c697a58a99d5d06a08c30821d7c082a4632198de1eaa5a6c22ef42373" dependencies = [ "fixed-hash", "impl-codec", @@ -6609,24 +7744,50 @@ dependencies = [ [[package]] name = "proc-macro-crate" -version = "1.0.0" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41fdbd1df62156fbc5945f4762632564d7d038153091c3fcf1067f6aef7cff92" +checksum = "1ebace6889caf889b4d3f76becee12e90353f2b8c7d875534a71e5742f8f6f83" dependencies = [ "thiserror", "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", ] @@ -6655,9 +7816,9 @@ checksum = "bc881b2c22681370c6a780e47af9840ef841837bc98118431d4e1868bd0c1086" [[package]] name = "proc-macro2" -version = "1.0.26" +version = "1.0.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a152013215dca273577e18d2bf00fa862b89b24169fb78c4c95aeb07992c9cec" +checksum = "b9f5105d4fdaab20335ca9565e106a5d9b82b6219b5ba735731124ac6711d23d" dependencies = [ "unicode-xid", ] @@ -6671,30 +7832,30 @@ dependencies = [ "cfg-if 1.0.0", "fnv", "lazy_static", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "regex", "thiserror", ] [[package]] name = "prost" -version = "0.7.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e6984d2f1a23009bd270b8bb56d0926810a3d483f59c987d77969e9d8e840b2" +checksum = "de5e2533f59d08fcf364fd374ebda0692a70bd6d7e66ef97f306f45c6c5d8020" dependencies = [ - "bytes 1.0.1", + "bytes 1.1.0", "prost-derive", ] [[package]] name = "prost-build" -version = "0.7.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32d3ebd75ac2679c2af3a92246639f9fcc8a442ee420719cc4fe195b98dd5fa3" +checksum = "355f634b43cdd80724ee7848f95770e7e70eefa6dcf14fea676216573b8fd603" dependencies = [ - "bytes 1.0.1", + "bytes 1.1.0", "heck", - "itertools 0.9.0", + "itertools", "log", "multimap", "petgraph", @@ -6706,12 +7867,12 @@ dependencies = [ [[package]] name = "prost-derive" -version = "0.7.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "169a15f3008ecb5160cba7d37bcd690a7601b6d30cfb87a117d45e59d52af5d4" +checksum = "600d2f334aa05acb02a755e217ef1ab6dea4d51b58b7846588b747edec04efba" dependencies = [ "anyhow", - "itertools 0.9.0", + "itertools", "proc-macro2", "quote", "syn", @@ -6719,28 +7880,28 @@ dependencies = [ [[package]] name = "prost-types" -version = "0.7.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b518d7cdd93dab1d1122cf07fa9a60771836c668dde9d9e2a139f957f0d9f1bb" +checksum = "603bbd6394701d13f3f25aada59c7de9d35a6a5887cfc156181234a44002771b" dependencies = [ - "bytes 1.0.1", + "bytes 1.1.0", "prost", ] [[package]] name = "psm" -version = "0.1.12" +version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3abf49e5417290756acfd26501536358560c4a5cc4a0934d390939acb3e7083a" +checksum = "cd136ff4382c4753fc061cb9e4712ab2af263376b95bbd5bd8cd50c020b78e69" dependencies = [ "cc", ] [[package]] name = "pwasm-utils" -version = "0.18.0" +version = "0.18.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0e517f47d9964362883182404b68d0b6949382c0baa40aa5ffca94f5f1e3481" +checksum = "880b3384fb00b8f6ecccd5d358b93bd2201900ae3daad213791d1864f6441f5c" dependencies = [ "byteorder", "log", @@ -6755,9 +7916,9 @@ checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" [[package]] name = "quick-error" -version = "2.0.0" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ac73b1112776fc109b2e61909bc46c7e1bf0d7f690ffb1676553acce16d5cda" +checksum = "a993555f31e5a609f617c12db6250dedcac1b0a85076912c436e6fc9b2c8e6a3" [[package]] name = "quicksink" @@ -6767,7 +7928,7 @@ checksum = "77de3c815e5a160b1539c6592796801df2043ae35e123b46d73380cfa57af858" dependencies = [ "futures-core", "futures-sink", - "pin-project-lite 0.1.11", + "pin-project-lite 0.1.12", ] [[package]] @@ -6781,19 +7942,15 @@ dependencies = [ [[package]] name = "radium" -version = "0.6.2" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "643f8f41a8ebc4c5dc4515c82bb8abd397b527fc20fd681b7c011c2aee5d44fb" +checksum = "941ba9d78d8e2f7ce474c015eea4d9c6d25b6a3327f9832ee29a4de27f91bbb8" [[package]] -name = "rand" -version = "0.3.23" +name = "radium" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64ac302d8f83c0c1974bf758f6b041c6c8ada916fbb44a609158ca8b064cc76c" -dependencies = [ - "libc", - "rand 0.4.6", -] +checksum = "643f8f41a8ebc4c5dc4515c82bb8abd397b527fc20fd681b7c011c2aee5d44fb" [[package]] name = "rand" @@ -6824,14 +7981,14 @@ dependencies = [ [[package]] name = "rand" -version = "0.8.3" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ef9e7e66b4468674bfcb0c81af8b7fa0bb154fa9f28eb840da5c447baeb8d7e" +checksum = "2e7573632e6454cf6b99d7aac4ccca54be06da05aca2ef7423d22d27d4d4bcd8" dependencies = [ "libc", "rand_chacha 0.3.1", - "rand_core 0.6.2", - "rand_hc 0.3.0", + "rand_core 0.6.3", + "rand_hc 0.3.1", ] [[package]] @@ -6851,7 +8008,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" dependencies = [ "ppv-lite86", - "rand_core 0.6.2", + "rand_core 0.6.3", ] [[package]] @@ -6880,11 +8037,11 @@ dependencies = [ [[package]] name = "rand_core" -version = "0.6.2" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34cf66eb183df1c5876e2dcf6b13d57340741e8dc255b48e40a26de954d06ae7" +checksum = "d34f1408f55294453790c48b2f1ebbb1c5b4b7563eb1f418bcfcfdbb06ebb4e7" dependencies = [ - "getrandom 0.2.2", + "getrandom 0.2.3", ] [[package]] @@ -6894,7 +8051,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "051b398806e42b9cd04ad9ec8f81e355d0a382c543ac6672c62f5a5b452ef142" dependencies = [ "num-traits", - "rand 0.8.3", + "rand 0.8.4", ] [[package]] @@ -6908,11 +8065,11 @@ dependencies = [ [[package]] name = "rand_hc" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3190ef7066a446f2e7f42e239d161e905420ccab01eb967c9eb27d21b2322a73" +checksum = "d51e9f596de227fda2ea6c84607f5558e196eeaf43c986b724ba4fb8fdf497e7" dependencies = [ - "rand_core 0.6.2", + "rand_core 0.6.3", ] [[package]] @@ -6932,25 +8089,25 @@ checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3" [[package]] name = "rayon" -version = "1.5.0" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b0d8e0819fadc20c74ea8373106ead0600e3a67ef1fe8da56e39b9ae7275674" +checksum = "c06aca804d41dbc8ba42dfd964f0d01334eceb64314b9ecf7c5fad5188a06d90" dependencies = [ "autocfg", - "crossbeam-deque 0.8.0", + "crossbeam-deque", "either", "rayon-core", ] [[package]] name = "rayon-core" -version = "1.9.0" +version = "1.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ab346ac5921dc62ffa9f89b7a773907511cdfa5490c572ae9be1be33e8afa4a" +checksum = "d78120e2c850279833f1dd3582f730c4ab53ed95aeaaaa862a2a5c71b1656d8e" dependencies = [ "crossbeam-channel", - "crossbeam-deque 0.8.0", - "crossbeam-utils 0.8.3", + "crossbeam-deque", + "crossbeam-utils", "lazy_static", "num_cpus", ] @@ -6972,32 +8129,21 @@ checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce" [[package]] name = "redox_syscall" -version = "0.2.5" +version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94341e4e44e24f6b591b59e47a8a027df12e008d73fd5672dbea9cc22f4507d9" +checksum = "8383f39639269cde97d255a32bdb68c047337295414940c68bdd30c2e13203ff" dependencies = [ "bitflags", ] -[[package]] -name = "redox_users" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de0737333e7a9502c789a36d7c7fa6092a49895d4faa31ca5df163857ded2e9d" -dependencies = [ - "getrandom 0.1.16", - "redox_syscall 0.1.57", - "rust-argon2", -] - [[package]] name = "redox_users" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "528532f3d801c87aec9def2add9ca802fe569e44a544afe633765267840abe64" dependencies = [ - "getrandom 0.2.2", - "redox_syscall 0.2.5", + "getrandom 0.2.3", + "redox_syscall 0.2.10", ] [[package]] @@ -7008,7 +8154,7 @@ checksum = "3bd8f48b2066e9f69ab192797d66da804d1935bf22763204ed3675740cb0f221" dependencies = [ "derive_more", "fs-err", - "itertools 0.10.0", + "itertools", "static_init", "thiserror", ] @@ -7042,36 +8188,34 @@ dependencies = [ "log", "rustc-hash", "serde", - "smallvec 1.6.1", + "smallvec", ] [[package]] name = "regex" -version = "1.4.3" +version = "1.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9251239e129e16308e70d853559389de218ac275b515068abc96829d05b948a" +checksum = "d07a8629359eb56f1e2fb1652bb04212c072a87ba68546a04065d525673ac461" dependencies = [ "aho-corasick", "memchr", "regex-syntax", - "thread_local", ] [[package]] name = "regex-automata" -version = "0.1.9" +version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae1ded71d66a4a97f5e961fd0cb25a5f366a42a41570d16a763a69c092c26ae4" +checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" dependencies = [ - "byteorder", "regex-syntax", ] [[package]] name = "regex-syntax" -version = "0.6.22" +version = "0.6.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5eb417147ba9860a96cfe72a0b93bf88fee1744b5636ec99ab20c1aa9376581" +checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b" [[package]] name = "region" @@ -7092,13 +8236,13 @@ dependencies = [ "async-std", "bp-eth-poa", "headers-relay", - "hex-literal 0.3.1", - "jsonrpsee-proc-macros", - "jsonrpsee-ws-client", - "libsecp256k1", + "hex-literal 0.3.3", + "jsonrpsee-proc-macros 0.2.0", + "jsonrpsee-ws-client 0.2.0", + "libsecp256k1 0.3.5", "log", "relay-utils", - "tokio 1.8.1", + "tokio", "web3", ] @@ -7209,11 +8353,11 @@ dependencies = [ "finality-relay", "frame-support", "frame-system", - "futures 0.3.15", + "futures 0.3.17", "headers-relay", - "jsonrpsee-proc-macros", - "jsonrpsee-types", - "jsonrpsee-ws-client", + "jsonrpsee-proc-macros 0.2.0", + "jsonrpsee-types 0.2.0", + "jsonrpsee-ws-client 0.2.0", "log", "num-traits", "pallet-balances", @@ -7223,15 +8367,15 @@ dependencies = [ "rand 0.7.3", "relay-utils", "sc-rpc-api", + "sc-transaction-pool-api", "sp-core", "sp-finality-grandpa", "sp-rpc", "sp-runtime", "sp-storage", - "sp-transaction-pool", "sp-trie", "sp-version", - "tokio 1.8.1", + "tokio", ] [[package]] @@ -7243,8 +8387,8 @@ dependencies = [ "async-std", "async-trait", "backoff", - "env_logger 0.8.3", - "futures 0.3.15", + "env_logger 0.8.4", + "futures 0.3.17", "isahc", "jsonpath_lib", "log", @@ -7252,7 +8396,7 @@ dependencies = [ "serde_json", "substrate-prometheus-endpoint", "sysinfo", - "time 0.2.25", + "time 0.2.27", ] [[package]] @@ -7289,6 +8433,24 @@ dependencies = [ "sp-runtime", ] +[[package]] +name = "remote-externalities" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" +dependencies = [ + "env_logger 0.9.0", + "jsonrpsee-proc-macros 0.3.0", + "jsonrpsee-ws-client 0.3.0", + "log", + "parity-scale-codec", + "serde", + "serde_json", + "sp-core", + "sp-io", + "sp-runtime", + "sp-version", +] + [[package]] name = "remove_dir_all" version = "0.5.3" @@ -7305,13 +8467,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "246e9f61b9bb77df069a947682be06e31ac43ea37862e244a69f177694ea6d22" dependencies = [ "base64 0.13.0", - "bytes 1.0.1", + "bytes 1.1.0", "encoding_rs", "futures-core", "futures-util", - "http 0.2.3", - "http-body 0.4.2", - "hyper 0.14.5", + "http", + "http-body", + "hyper", "hyper-tls", "ipnet", "js-sys", @@ -7320,13 +8482,13 @@ dependencies = [ "mime", "native-tls", "percent-encoding 2.1.0", - "pin-project-lite 0.2.4", + "pin-project-lite 0.2.7", "serde", "serde_json", "serde_urlencoded", - "tokio 1.8.1", + "tokio", "tokio-native-tls", - "url 2.2.1", + "url 2.2.2", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", @@ -7358,10 +8520,10 @@ dependencies = [ "frame-benchmarking", "frame-benchmarking-cli", "frame-system-rpc-runtime-api", - "futures 0.3.15", - "jsonrpc-core 15.1.0", + "futures 0.3.17", + "jsonrpc-core 18.0.0", "kvdb", - "kvdb-rocksdb", + "kvdb-rocksdb 0.12.1", "node-inspect", "pallet-bridge-messages", "pallet-transaction-payment-rpc", @@ -7371,6 +8533,7 @@ dependencies = [ "polkadot-availability-distribution", "polkadot-availability-recovery", "polkadot-collator-protocol", + "polkadot-dispute-distribution", "polkadot-gossip-support", "polkadot-network-bridge", "polkadot-node-collation-generation", @@ -7380,10 +8543,14 @@ 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-pvf", "polkadot-node-core-runtime-api", + "polkadot-node-network-protocol", "polkadot-node-subsystem-util", "polkadot-overseer", "polkadot-primitives", @@ -7395,30 +8562,90 @@ dependencies = [ "sc-cli", "sc-client-api", "sc-consensus", - "sc-consensus-babe", - "sc-consensus-slots", - "sc-consensus-uncles", + "sc-consensus-babe", + "sc-consensus-slots", + "sc-consensus-uncles", + "sc-executor", + "sc-finality-grandpa", + "sc-finality-grandpa-rpc", + "sc-keystore", + "sc-network", + "sc-rpc", + "sc-service", + "sc-telemetry", + "sc-transaction-pool", + "serde_json", + "sp-api", + "sp-authority-discovery", + "sp-authorship", + "sp-block-builder", + "sp-blockchain", + "sp-consensus", + "sp-consensus-babe", + "sp-core", + "sp-finality-grandpa", + "sp-inherents", + "sp-offchain", + "sp-runtime", + "sp-session", + "sp-timestamp", + "sp-transaction-pool", + "structopt", + "substrate-build-script-utils", + "substrate-frame-rpc-system", + "substrate-prometheus-endpoint", + "thiserror", +] + +[[package]] +name = "rialto-parachain-collator" +version = "0.1.0" +dependencies = [ + "cumulus-client-cli", + "cumulus-client-collator", + "cumulus-client-consensus-aura", + "cumulus-client-consensus-common", + "cumulus-client-network", + "cumulus-client-service", + "cumulus-primitives-core", + "cumulus-primitives-parachain-inherent", + "derive_more", + "frame-benchmarking", + "frame-benchmarking-cli", + "hex-literal 0.3.3", + "jsonrpc-core 18.0.0", + "log", + "pallet-transaction-payment-rpc", + "parity-scale-codec", + "polkadot-cli", + "polkadot-parachain", + "polkadot-primitives", + "polkadot-service", + "polkadot-test-service", + "rialto-parachain-runtime", + "sc-basic-authorship", + "sc-chain-spec", + "sc-cli", + "sc-client-api", + "sc-consensus", "sc-executor", - "sc-finality-grandpa", - "sc-finality-grandpa-rpc", - "sc-finality-grandpa-warp-sync", "sc-keystore", "sc-network", "sc-rpc", + "sc-rpc-api", "sc-service", "sc-telemetry", + "sc-tracing", "sc-transaction-pool", - "serde_json", + "serde", "sp-api", - "sp-authority-discovery", - "sp-authorship", "sp-block-builder", "sp-blockchain", "sp-consensus", - "sp-consensus-babe", + "sp-consensus-aura", "sp-core", - "sp-finality-grandpa", "sp-inherents", + "sp-keystore", "sp-offchain", "sp-runtime", "sp-session", @@ -7428,7 +8655,55 @@ dependencies = [ "substrate-build-script-utils", "substrate-frame-rpc-system", "substrate-prometheus-endpoint", - "thiserror", +] + +[[package]] +name = "rialto-parachain-runtime" +version = "0.1.0" +dependencies = [ + "cumulus-pallet-aura-ext", + "cumulus-pallet-dmp-queue", + "cumulus-pallet-parachain-system", + "cumulus-pallet-xcm", + "cumulus-pallet-xcmp-queue", + "cumulus-primitives-core", + "cumulus-primitives-timestamp", + "cumulus-primitives-utility", + "frame-benchmarking", + "frame-executive", + "frame-support", + "frame-system", + "frame-system-benchmarking", + "frame-system-rpc-runtime-api", + "log", + "pallet-aura", + "pallet-balances", + "pallet-randomness-collective-flip", + "pallet-sudo", + "pallet-timestamp", + "pallet-transaction-payment", + "pallet-transaction-payment-rpc-runtime-api", + "pallet-xcm", + "parachain-info", + "parity-scale-codec", + "polkadot-parachain", + "serde", + "sp-api", + "sp-block-builder", + "sp-consensus-aura", + "sp-core", + "sp-inherents", + "sp-io", + "sp-offchain", + "sp-runtime", + "sp-session", + "sp-std", + "sp-transaction-pool", + "sp-version", + "substrate-wasm-builder", + "xcm", + "xcm-builder", + "xcm-executor", ] [[package]] @@ -7449,8 +8724,8 @@ dependencies = [ "frame-support", "frame-system", "frame-system-rpc-runtime-api", - "hex-literal 0.3.1", - "libsecp256k1", + "hex-literal 0.3.3", + "libsecp256k1 0.3.5", "log", "pallet-authority-discovery", "pallet-babe", @@ -7508,19 +8783,19 @@ dependencies = [ [[package]] name = "rlp" -version = "0.5.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e54369147e3e7796c9b885c7304db87ca3d09a0a98f72843d532868675bbfba8" +checksum = "999508abb0ae792aabed2460c45b89106d97fe4adac593bdaef433c2605847b5" dependencies = [ - "bytes 1.0.1", + "bytes 1.1.0", "rustc-hex", ] [[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", @@ -7536,23 +8811,11 @@ dependencies = [ "winapi 0.3.9", ] -[[package]] -name = "rust-argon2" -version = "0.8.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b18820d944b33caa75a71378964ac46f58517c92b6ae5f762636247c09e78fb" -dependencies = [ - "base64 0.13.0", - "blake2b_simd", - "constant_time_eq", - "crossbeam-utils 0.8.3", -] - [[package]] name = "rustc-demangle" -version = "0.1.18" +version = "0.1.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e3bad0ee36814ca07d7968269dd4b7ec89ec2da10c4bb613928d3077083c232" +checksum = "7ef03e0a2b150c7a90d01faf6254c9c48a41e95fb2a8c2ac1c6f0d2b9aefc342" [[package]] name = "rustc-hash" @@ -7584,19 +8847,6 @@ dependencies = [ "semver 0.11.0", ] -[[package]] -name = "rustls" -version = "0.18.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d1126dcf58e93cee7d098dbda643b5f92ed724f1f6a63007c1116eed6700c81" -dependencies = [ - "base64 0.12.3", - "log", - "ring", - "sct", - "webpki", -] - [[package]] name = "rustls" version = "0.19.1" @@ -7610,18 +8860,6 @@ dependencies = [ "webpki", ] -[[package]] -name = "rustls-native-certs" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "629d439a7672da82dd955498445e496ee2096fe2117b9f796558a43fdb9e59b8" -dependencies = [ - "openssl-probe", - "rustls 0.18.1", - "schannel", - "security-framework 1.0.0", -] - [[package]] name = "rustls-native-certs" version = "0.5.0" @@ -7629,19 +8867,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5a07b7c1885bd8ed3831c289b7870b13ef46fe0e856d288c30d9cc17d75a2092" dependencies = [ "openssl-probe", - "rustls 0.19.1", + "rustls", "schannel", - "security-framework 2.3.1", -] - -[[package]] -name = "ruzstd" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d425143485a37727c7a46e689bbe3b883a00f42b4a52c4ac0f44855c1009b00" -dependencies = [ - "byteorder", - "twox-hash", + "security-framework", ] [[package]] @@ -7650,8 +8878,8 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4da5fcb054c46f5a5dff833b129285a93d3f0179531735e6c866e8cc307d2020" dependencies = [ - "futures 0.3.15", - "pin-project 0.4.27", + "futures 0.3.17", + "pin-project 0.4.28", "static_assertions", ] @@ -7672,9 +8900,9 @@ dependencies = [ [[package]] name = "salsa20" -version = "0.7.2" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "399f290ffc409596022fce5ea5d4138184be4784f2b28c62c59f0d8389059a15" +checksum = "ecbd2eb639fd7cab5804a0837fe373cc2172d15437e804c054a9fb885cb923b0" dependencies = [ "cipher", ] @@ -7690,25 +8918,23 @@ dependencies = [ [[package]] name = "sc-allocator" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" 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=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "async-trait", "derive_more", - "either", - "futures 0.3.15", + "futures 0.3.17", "futures-timer 3.0.2", "ip_network", "libp2p", @@ -7719,7 +8945,6 @@ dependencies = [ "rand 0.7.3", "sc-client-api", "sc-network", - "serde_json", "sp-api", "sp-authority-discovery", "sp-blockchain", @@ -7731,10 +8956,10 @@ dependencies = [ [[package]] name = "sc-basic-authorship" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ - "futures 0.3.15", + "futures 0.3.17", "futures-timer 3.0.2", "log", "parity-scale-codec", @@ -7742,20 +8967,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=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "parity-scale-codec", "sc-client-api", @@ -7770,30 +8995,26 @@ dependencies = [ [[package]] name = "sc-chain-spec" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" 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=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ - "proc-macro-crate 1.0.0", + "proc-macro-crate 1.1.0", "proc-macro2", "quote", "syn", @@ -7801,12 +9022,12 @@ dependencies = [ [[package]] name = "sc-cli" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "chrono", "fdlimit", - "futures 0.3.15", + "futures 0.3.17", "hex", "libp2p", "log", @@ -7821,6 +9042,7 @@ dependencies = [ "sc-service", "sc-telemetry", "sc-tracing", + "sc-utils", "serde", "serde_json", "sp-blockchain", @@ -7829,104 +9051,103 @@ dependencies = [ "sp-keystore", "sp-panic-handler", "sp-runtime", - "sp-utils", "sp-version", "structopt", "thiserror", "tiny-bip39", - "tokio 0.2.25", + "tokio", ] [[package]] name = "sc-client-api" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ - "derive_more", "fnv", - "futures 0.3.15", + "futures 0.3.17", "hash-db", - "kvdb", - "lazy_static", "log", "parity-scale-codec", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "sc-executor", + "sc-transaction-pool-api", + "sc-utils", "sp-api", "sp-blockchain", "sp-consensus", "sp-core", "sp-database", "sp-externalities", - "sp-inherents", "sp-keystore", "sp-runtime", "sp-state-machine", - "sp-std", "sp-storage", - "sp-transaction-pool", "sp-trie", - "sp-utils", - "sp-version", "substrate-prometheus-endpoint", ] [[package]] name = "sc-client-db" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ - "blake2-rfc", "hash-db", "kvdb", "kvdb-memorydb", - "kvdb-rocksdb", + "kvdb-rocksdb 0.14.0", "linked-hash-map", "log", "parity-db", "parity-scale-codec", - "parity-util-mem", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "sc-client-api", - "sc-executor", "sc-state-db", "sp-arithmetic", "sp-blockchain", - "sp-consensus", "sp-core", "sp-database", "sp-runtime", "sp-state-machine", "sp-trie", - "substrate-prometheus-endpoint", ] [[package]] name = "sc-consensus" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "async-trait", - "parking_lot 0.11.1", + "futures 0.3.17", + "futures-timer 3.0.2", + "libp2p", + "log", + "parking_lot 0.11.2", "sc-client-api", + "sc-utils", + "serde", + "sp-api", "sp-blockchain", "sp-consensus", + "sp-core", "sp-runtime", + "sp-state-machine", + "substrate-prometheus-endpoint", + "thiserror", ] [[package]] name = "sc-consensus-aura" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "async-trait", "derive_more", - "futures 0.3.15", - "futures-timer 3.0.2", + "futures 0.3.17", "log", "parity-scale-codec", "sc-block-builder", "sc-client-api", + "sc-consensus", "sc-consensus-slots", "sc-telemetry", "sp-api", @@ -7938,37 +9159,33 @@ dependencies = [ "sp-consensus-slots", "sp-core", "sp-inherents", - "sp-io", "sp-keystore", "sp-runtime", - "sp-version", "substrate-prometheus-endpoint", ] [[package]] name = "sc-consensus-babe" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "async-trait", "derive_more", "fork-tree", - "futures 0.3.15", - "futures-timer 3.0.2", + "futures 0.3.17", "log", "merlin", "num-bigint", "num-rational 0.2.4", "num-traits", "parity-scale-codec", - "parking_lot 0.11.1", - "pdqselect", + "parking_lot 0.11.2", "rand 0.7.3", "retain_mut", "sc-client-api", + "sc-consensus", "sc-consensus-epochs", "sc-consensus-slots", - "sc-consensus-uncles", "sc-keystore", "sc-telemetry", "schnorrkel", @@ -7986,15 +9203,38 @@ dependencies = [ "sp-io", "sp-keystore", "sp-runtime", - "sp-utils", "sp-version", "substrate-prometheus-endpoint", ] +[[package]] +name = "sc-consensus-babe-rpc" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" +dependencies = [ + "derive_more", + "futures 0.3.17", + "jsonrpc-core 18.0.0", + "jsonrpc-core-client", + "jsonrpc-derive", + "sc-consensus-babe", + "sc-consensus-epochs", + "sc-rpc-api", + "serde", + "sp-api", + "sp-application-crypto", + "sp-blockchain", + "sp-consensus", + "sp-consensus-babe", + "sp-core", + "sp-keystore", + "sp-runtime", +] + [[package]] name = "sc-consensus-epochs" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "fork-tree", "parity-scale-codec", @@ -8006,19 +9246,18 @@ dependencies = [ [[package]] name = "sc-consensus-slots" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "async-trait", - "futures 0.3.15", + "futures 0.3.17", "futures-timer 3.0.2", - "impl-trait-for-tuples", "log", "parity-scale-codec", "sc-client-api", + "sc-consensus", "sc-telemetry", "sp-api", - "sp-application-crypto", "sp-arithmetic", "sp-blockchain", "sp-consensus", @@ -8028,14 +9267,13 @@ dependencies = [ "sp-runtime", "sp-state-machine", "sp-timestamp", - "sp-trie", "thiserror", ] [[package]] name = "sc-consensus-uncles" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "sc-client-api", "sp-authorship", @@ -8045,16 +9283,14 @@ dependencies = [ [[package]] name = "sc-executor" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ - "derive_more", "lazy_static", - "libsecp256k1", + "libsecp256k1 0.6.0", "log", "parity-scale-codec", - "parity-wasm 0.42.2", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "sc-executor-common", "sc-executor-wasmi", "sc-executor-wasmtime", @@ -8064,7 +9300,6 @@ dependencies = [ "sp-io", "sp-panic-handler", "sp-runtime-interface", - "sp-serializer", "sp-tasks", "sp-trie", "sp-version", @@ -8074,10 +9309,11 @@ dependencies = [ [[package]] name = "sc-executor-common" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "derive_more", + "environmental", "parity-scale-codec", "pwasm-utils", "sc-allocator", @@ -8091,13 +9327,14 @@ dependencies = [ [[package]] name = "sc-executor-wasmi" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "log", "parity-scale-codec", "sc-allocator", "sc-executor-common", + "scoped-tls", "sp-core", "sp-runtime-interface", "sp-wasm-interface", @@ -8106,15 +9343,14 @@ dependencies = [ [[package]] name = "sc-executor-wasmtime" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" 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", @@ -8126,22 +9362,20 @@ dependencies = [ [[package]] name = "sc-finality-grandpa" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "async-trait", "derive_more", "dyn-clone", "finality-grandpa", "fork-tree", - "futures 0.3.15", + "futures 0.3.17", "futures-timer 3.0.2", - "linked-hash-map", "log", "parity-scale-codec", - "parking_lot 0.11.1", - "pin-project 1.0.7", - "rand 0.7.3", + "parking_lot 0.11.2", + "rand 0.8.4", "sc-block-builder", "sc-client-api", "sc-consensus", @@ -8149,6 +9383,7 @@ dependencies = [ "sc-network", "sc-network-gossip", "sc-telemetry", + "sc-utils", "serde_json", "sp-api", "sp-application-crypto", @@ -8157,23 +9392,20 @@ dependencies = [ "sp-consensus", "sp-core", "sp-finality-grandpa", - "sp-inherents", "sp-keystore", "sp-runtime", - "sp-utils", "substrate-prometheus-endpoint", - "wasm-timer", ] [[package]] name = "sc-finality-grandpa-rpc" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "derive_more", "finality-grandpa", - "futures 0.3.15", - "jsonrpc-core 15.1.0", + "futures 0.3.17", + "jsonrpc-core 18.0.0", "jsonrpc-core-client", "jsonrpc-derive", "jsonrpc-pubsub", @@ -8189,74 +9421,46 @@ dependencies = [ "sp-runtime", ] -[[package]] -name = "sc-finality-grandpa-warp-sync" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" -dependencies = [ - "derive_more", - "futures 0.3.15", - "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=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "ansi_term 0.12.1", - "futures 0.3.15", + "futures 0.3.17", "futures-timer 3.0.2", "log", "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=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "async-trait", "derive_more", - "futures 0.3.15", - "futures-util", "hex", - "merlin", - "parking_lot 0.11.1", - "rand 0.7.3", + "parking_lot 0.11.2", "serde_json", "sp-application-crypto", "sp-core", "sp-keystore", - "subtle 2.4.0", ] [[package]] name = "sc-light" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "hash-db", - "lazy_static", "parity-scale-codec", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "sc-client-api", "sc-executor", "sp-api", @@ -8269,22 +9473,20 @@ dependencies = [ [[package]] name = "sc-network" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "async-std", "async-trait", "asynchronous-codec 0.5.0", "bitflags", - "bs58", - "bytes 1.0.1", + "bytes 1.1.0", "cid", "derive_more", "either", - "erased-serde", "fnv", "fork-tree", - "futures 0.3.15", + "futures 0.3.17", "futures-timer 3.0.2", "hex", "ip_network", @@ -8293,39 +9495,39 @@ dependencies = [ "linked_hash_set", "log", "lru", - "nohash-hasher", "parity-scale-codec", - "parking_lot 0.11.1", - "pin-project 1.0.7", + "parking_lot 0.11.2", + "pin-project 1.0.8", "prost", "prost-build", "rand 0.7.3", "sc-block-builder", "sc-client-api", + "sc-consensus", "sc-peerset", + "sc-utils", "serde", "serde_json", - "smallvec 1.6.1", + "smallvec", "sp-arithmetic", "sp-blockchain", "sp-consensus", "sp-core", + "sp-finality-grandpa", "sp-runtime", - "sp-utils", "substrate-prometheus-endpoint", "thiserror", "unsigned-varint 0.6.0", "void", - "wasm-timer", "zeroize", ] [[package]] name = "sc-network-gossip" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ - "futures 0.3.15", + "futures 0.3.17", "futures-timer 3.0.2", "libp2p", "log", @@ -8334,54 +9536,52 @@ dependencies = [ "sp-runtime", "substrate-prometheus-endpoint", "tracing", - "wasm-timer", ] [[package]] name = "sc-offchain" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ - "bytes 0.5.6", + "bytes 1.1.0", "fnv", - "futures 0.3.15", + "futures 0.3.17", "futures-timer 3.0.2", "hex", - "hyper 0.13.10", + "hyper", "hyper-rustls", "log", "num_cpus", "parity-scale-codec", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "rand 0.7.3", "sc-client-api", - "sc-keystore", "sc-network", + "sc-utils", "sp-api", "sp-core", "sp-offchain", "sp-runtime", - "sp-utils", "threadpool", ] [[package]] name = "sc-peerset" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ - "futures 0.3.15", + "futures 0.3.17", "libp2p", "log", + "sc-utils", "serde_json", - "sp-utils", "wasm-timer", ] [[package]] name = "sc-proposer-metrics" version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "log", "substrate-prometheus-endpoint", @@ -8389,23 +9589,23 @@ dependencies = [ [[package]] name = "sc-rpc" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ - "futures 0.3.15", + "futures 0.3.17", "hash-db", - "jsonrpc-core 15.1.0", + "jsonrpc-core 18.0.0", "jsonrpc-pubsub", "log", "parity-scale-codec", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "sc-block-builder", "sc-chain-spec", "sc-client-api", - "sc-executor", - "sc-keystore", "sc-rpc-api", "sc-tracing", + "sc-transaction-pool-api", + "sc-utils", "serde_json", "sp-api", "sp-blockchain", @@ -8415,81 +9615,75 @@ dependencies = [ "sp-rpc", "sp-runtime", "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=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ - "derive_more", - "futures 0.3.15", - "jsonrpc-core 15.1.0", + "futures 0.3.17", + "jsonrpc-core 18.0.0", "jsonrpc-core-client", "jsonrpc-derive", "jsonrpc-pubsub", "log", "parity-scale-codec", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "sc-chain-spec", + "sc-transaction-pool-api", "serde", "serde_json", "sp-core", "sp-rpc", "sp-runtime", "sp-tracing", - "sp-transaction-pool", "sp-version", + "thiserror", ] [[package]] name = "sc-rpc-server" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ - "futures 0.1.31", - "jsonrpc-core 15.1.0", + "futures 0.3.17", + "jsonrpc-core 18.0.0", "jsonrpc-http-server", "jsonrpc-ipc-server", "jsonrpc-pubsub", "jsonrpc-ws-server", "log", - "serde", "serde_json", - "sp-runtime", "substrate-prometheus-endpoint", + "tokio", ] [[package]] name = "sc-service" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "async-trait", "directories", "exit-future", - "futures 0.1.31", - "futures 0.3.15", + "futures 0.3.17", "futures-timer 3.0.2", "hash-db", - "jsonrpc-core 15.1.0", + "jsonrpc-core 18.0.0", "jsonrpc-pubsub", - "lazy_static", "log", "parity-scale-codec", "parity-util-mem", - "parking_lot 0.11.1", - "pin-project 1.0.7", + "parking_lot 0.11.2", + "pin-project 1.0.8", "rand 0.7.3", "sc-block-builder", "sc-chain-spec", "sc-client-api", "sc-client-db", + "sc-consensus", "sc-executor", "sc-informant", "sc-keystore", @@ -8501,6 +9695,8 @@ dependencies = [ "sc-telemetry", "sc-tracing", "sc-transaction-pool", + "sc-transaction-pool-api", + "sc-utils", "serde", "serde_json", "sp-api", @@ -8511,7 +9707,6 @@ dependencies = [ "sp-core", "sp-externalities", "sp-inherents", - "sp-io", "sp-keystore", "sp-runtime", "sp-session", @@ -8521,144 +9716,184 @@ dependencies = [ "sp-transaction-pool", "sp-transaction-storage-proof", "sp-trie", - "sp-utils", "sp-version", "substrate-prometheus-endpoint", "tempfile", "thiserror", + "tokio", "tracing", "tracing-futures", - "wasm-timer", ] [[package]] name = "sc-state-db" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" +dependencies = [ + "log", + "parity-scale-codec", + "parity-util-mem", + "parity-util-mem-derive", + "parking_lot 0.11.2", + "sc-client-api", + "sp-core", +] + +[[package]] +name = "sc-sync-state-rpc" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ - "log", + "jsonrpc-core 18.0.0", + "jsonrpc-core-client", + "jsonrpc-derive", "parity-scale-codec", - "parity-util-mem", - "parity-util-mem-derive", - "parking_lot 0.11.1", + "sc-chain-spec", "sc-client-api", - "sp-core", + "sc-consensus-babe", + "sc-consensus-epochs", + "sc-finality-grandpa", + "sc-rpc-api", + "serde", + "serde_json", + "sp-blockchain", + "sp-runtime", "thiserror", ] [[package]] name = "sc-telemetry" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "chrono", - "futures 0.3.15", + "futures 0.3.17", "libp2p", "log", - "parking_lot 0.11.1", - "pin-project 1.0.7", + "parking_lot 0.11.2", + "pin-project 1.0.8", "rand 0.7.3", "serde", "serde_json", - "take_mut", "thiserror", - "void", "wasm-timer", ] [[package]] name = "sc-tracing" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "ansi_term 0.12.1", "atty", - "erased-serde", "lazy_static", "log", "once_cell", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "regex", "rustc-hash", "sc-client-api", "sc-rpc-server", - "sc-telemetry", "sc-tracing-proc-macro", "serde", - "serde_json", "sp-api", - "sp-block-builder", "sp-blockchain", "sp-core", "sp-rpc", "sp-runtime", - "sp-storage", "sp-tracing", "thiserror", "tracing", "tracing-log", "tracing-subscriber", - "wasm-bindgen", - "wasm-timer", - "web-sys", ] [[package]] name = "sc-tracing-proc-macro" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ - "proc-macro-crate 1.0.0", + "proc-macro-crate 1.1.0", "proc-macro2", "quote", "syn", ] [[package]] -name = "sc-transaction-graph" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +name = "sc-transaction-pool" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ - "derive_more", - "futures 0.3.15", + "futures 0.3.17", + "intervalier", "linked-hash-map", "log", + "parity-scale-codec", "parity-util-mem", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "retain_mut", + "sc-client-api", + "sc-transaction-pool-api", + "sc-utils", "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=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +name = "sc-transaction-pool-api" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ - "futures 0.3.15", - "intervalier", + "derive_more", + "futures 0.3.17", "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]] +name = "sc-utils" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" +dependencies = [ + "futures 0.3.17", + "futures-timer 3.0.2", + "lazy_static", + "prometheus", +] + +[[package]] +name = "scale-info" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c55b744399c25532d63a0d2789b109df8d46fc93752d46b0782991a931a782f" +dependencies = [ + "bitvec 0.20.4", + "cfg-if 1.0.0", + "derive_more", + "parity-scale-codec", + "scale-info-derive", +] + +[[package]] +name = "scale-info-derive" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baeb2780690380592f86205aa4ee49815feb2acad8c2f59e6dd207148c3f1fcd" +dependencies = [ + "proc-macro-crate 1.1.0", + "proc-macro2", + "quote", + "syn", ] [[package]] @@ -8679,13 +9914,13 @@ checksum = "021b403afe70d81eea68f6ea12f6b3c9588e5d536a94c3bf80f15e7faa267862" dependencies = [ "arrayref", "arrayvec 0.5.2", - "curve25519-dalek 2.1.2", + "curve25519-dalek 2.1.3", "getrandom 0.1.16", "merlin", "rand 0.7.3", "rand_core 0.5.1", "sha2 0.8.2", - "subtle 2.4.0", + "subtle 2.4.1", "zeroize", ] @@ -8703,9 +9938,9 @@ checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" [[package]] name = "sct" -version = "0.6.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3042af939fca8c3453b7af0f1c66e533a15a86169e39de2657310ade8f98d3c" +checksum = "b362b83898e0e69f38515b82ee15aa80636befe47c3b6d3d89a911e78fc228ce" dependencies = [ "ring", "untrusted", @@ -8740,47 +9975,24 @@ dependencies = [ [[package]] name = "security-framework" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad502866817f0575705bd7be36e2b2535cc33262d493aa733a2ec862baa2bc2b" -dependencies = [ - "bitflags", - "core-foundation 0.7.0", - "core-foundation-sys 0.7.0", - "libc", - "security-framework-sys 1.0.0", -] - -[[package]] -name = "security-framework" -version = "2.3.1" +version = "2.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23a2ac85147a3a11d77ecf1bc7166ec0b92febfa4461c37944e180f319ece467" +checksum = "525bc1abfda2e1998d152c45cf13e696f76d0a4972310b22fac1658b05df7c87" dependencies = [ "bitflags", - "core-foundation 0.9.1", - "core-foundation-sys 0.8.2", - "libc", - "security-framework-sys 2.3.0", -] - -[[package]] -name = "security-framework-sys" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51ceb04988b17b6d1dcd555390fa822ca5637b4a14e1f5099f13d351bed4d6c7" -dependencies = [ - "core-foundation-sys 0.7.0", + "core-foundation", + "core-foundation-sys", "libc", + "security-framework-sys", ] [[package]] name = "security-framework-sys" -version = "2.3.0" +version = "2.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e4effb91b4b8b6fb7732e670b6cee160278ff8e6bf485c7805d9e319d76e284" +checksum = "a9dd14d83160b528b7bfd66439110573efcfbe281b17fc2ca9f39f550d619c7e" dependencies = [ - "core-foundation-sys 0.8.2", + "core-foundation-sys", "libc", ] @@ -8829,9 +10041,9 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.126" +version = "1.0.130" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec7505abeacaec74ae4778d9d9328fe5a5d04253220a85c4ee022239fc996d03" +checksum = "f12d06de37cf59146fbdecab66aa99f9fe4f78722e3607577a5375d66bd0c913" dependencies = [ "serde_derive", ] @@ -8848,9 +10060,9 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.126" +version = "1.0.130" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "963a7dbc9895aeac7ac90e74f34a5d5261828f79df35cbed41e10189d3804d43" +checksum = "d7bc1a1ab1961464eae040d96713baa5a724a8152c1222492465b54322ec508b" dependencies = [ "proc-macro2", "quote", @@ -8859,9 +10071,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.64" +version = "1.0.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "799e97dc9fdae36a5c8b8f2cae9ce2ee9fdce2058c57a93e6099d919fd982f79" +checksum = "0f690853975602e1bfe1ccbf50504d67174e3bcf340f23b5ea9992e0587a52d8" dependencies = [ "indexmap", "itoa", @@ -8895,13 +10107,13 @@ dependencies = [ [[package]] name = "sha-1" -version = "0.9.4" +version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfebf75d25bd900fd1e7d11501efab59bc846dbc76196839663e6637bba9f25f" +checksum = "99cd6713db3cf16b6c84e06321e049a9b9f699826e16096d23bbcc44d15d51a6" dependencies = [ "block-buffer 0.9.0", "cfg-if 1.0.0", - "cpuid-bool 0.1.2", + "cpufeatures 0.2.1", "digest 0.9.0", "opaque-debug 0.3.0", ] @@ -8926,13 +10138,13 @@ dependencies = [ [[package]] name = "sha2" -version = "0.9.3" +version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa827a14b29ab7f44778d14a88d3cb76e949c45083f7dbfa507d0cb699dc12de" +checksum = "b69f9a4c9740d74c5baa3fd2e547f9525fa8088a8a958e0ca2409a514e33f5fa" dependencies = [ "block-buffer 0.9.0", "cfg-if 1.0.0", - "cpuid-bool 0.1.2", + "cpufeatures 0.2.1", "digest 0.9.0", "opaque-debug 0.3.0", ] @@ -8951,24 +10163,24 @@ dependencies = [ [[package]] name = "sharded-slab" -version = "0.1.1" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79c719719ee05df97490f80a45acfc99e5a30ce98a1e4fb67aee422745ae14e3" +checksum = "740223c51853f3145fe7c90360d2d4232f2b62e3449489c207eccde818979982" dependencies = [ "lazy_static", ] [[package]] name = "shlex" -version = "0.1.1" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fdf1b9db47230893d76faad238fd6097fd6d6a9245cd7a4d90dbd639536bbd2" +checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3" [[package]] name = "signal-hook" -version = "0.3.6" +version = "0.3.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a7f3f92a1da3d6b1d32245d0cbcbbab0cfc45996d8df619c42bccfa6d2bbb5f" +checksum = "9c98891d737e271a2954825ef19e46bd16bdb98e2746f2eec4f7a4ef7946efd1" dependencies = [ "libc", "signal-hook-registry", @@ -8976,18 +10188,18 @@ dependencies = [ [[package]] name = "signal-hook-registry" -version = "1.3.0" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16f1d0fef1604ba8f7a073c7e701f213e056707210e9020af4528e0101ce11a6" +checksum = "e51e73328dc4ac0c7ccbda3a494dfa03df1de2f46018127f60c693f2648455b0" dependencies = [ "libc", ] [[package]] name = "signature" -version = "1.3.0" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f0242b8e50dd9accdd56170e94ca1ebd223b098eb9c83539a6e367d0f36ae68" +checksum = "c19772be3c4dd2ceaacf03cb41d5885f2a02c4d8804884918e3a258480803335" [[package]] name = "simba" @@ -8998,14 +10210,14 @@ dependencies = [ "approx", "num-complex", "num-traits", - "paste", + "paste 1.0.5", ] [[package]] name = "slab" -version = "0.4.2" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8" +checksum = "c307a32c1c5c437f38c7fd45d753050587732ba8628319fbdf12a7e289ccc590" [[package]] name = "slog" @@ -9018,66 +10230,63 @@ dependencies = [ [[package]] name = "slot-range-helper" -version = "0.9.8" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ "enumn", "parity-scale-codec", - "paste", + "paste 1.0.5", "sp-runtime", "sp-std", ] [[package]] name = "slotmap" -version = "1.0.5" +version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a952280edbecfb1d4bd3cf2dbc309dc6ab523e53487c438ae21a6df09fe84bc4" +checksum = "e1e08e261d0e8f5c43123b7adf3e4ca1690d655377ac93a03b2c9d3e98de1342" dependencies = [ "version_check", ] [[package]] name = "sluice" -version = "0.5.4" +version = "0.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fa0333a60ff2e3474a6775cc611840c2a55610c831dd366503474c02f1a28f5" +checksum = "6d7400c0eff44aa2fcb5e31a5f24ba9716ed90138769e4977a2ba6014ae63eb5" dependencies = [ - "futures-channel", + "async-channel", "futures-core", "futures-io", ] [[package]] name = "smallvec" -version = "0.6.14" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b97fcaeba89edba30f044a10c6a3cc39df9c3f17d7cd829dd1446cab35f890e0" -dependencies = [ - "maybe-uninit", -] +checksum = "fe0f37c9e8f3c5a4a66ad655a93c74daac4ad00c441533bf5c6e7990bb42604e" [[package]] -name = "smallvec" -version = "1.6.1" +name = "snap" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe0f37c9e8f3c5a4a66ad655a93c74daac4ad00c441533bf5c6e7990bb42604e" +checksum = "45456094d1983e2ee2a18fdfebce3189fa451699d0502cb8e3b49dba5ba41451" [[package]] name = "snow" -version = "0.7.2" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "795dd7aeeee24468e5a32661f6d27f7b5cbed802031b2d7640c7b10f8fb2dd50" +checksum = "6142f7c25e94f6fd25a32c3348ec230df9109b463f59c8c7acc4bd34936babb7" dependencies = [ "aes-gcm", "blake2", "chacha20poly1305", - "rand 0.7.3", - "rand_core 0.5.1", + "rand 0.8.4", + "rand_core 0.6.3", "ring", - "rustc_version 0.2.3", - "sha2 0.9.3", - "subtle 2.4.0", + "rustc_version 0.3.3", + "sha2 0.9.8", + "subtle 2.4.1", "x25519-dalek", ] @@ -9094,9 +10303,9 @@ dependencies = [ [[package]] name = "socket2" -version = "0.4.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e3dfc207c526015c632472a77be09cf1b6e46866581aecae5cc38fb4235dea2" +checksum = "765f090f0e423d2b55843402a07915add955e7d60657db13707a159727326cad" dependencies = [ "libc", "winapi 0.3.9", @@ -9111,11 +10320,11 @@ dependencies = [ "base64 0.12.3", "bytes 0.5.6", "flate2", - "futures 0.3.15", + "futures 0.3.17", "httparse", "log", "rand 0.7.3", - "sha-1 0.9.4", + "sha-1 0.9.8", ] [[package]] @@ -9125,18 +10334,33 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4919971d141dbadaa0e82b5d369e2d7666c98e4625046140615ca363e50d4daa" dependencies = [ "base64 0.13.0", - "bytes 1.0.1", - "futures 0.3.15", + "bytes 1.1.0", + "futures 0.3.17", + "httparse", + "log", + "rand 0.8.4", + "sha-1 0.9.8", +] + +[[package]] +name = "soketto" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a74e48087dbeed4833785c2f3352b59140095dc192dce966a3bfc155020a439f" +dependencies = [ + "base64 0.13.0", + "bytes 1.1.0", + "futures 0.3.17", "httparse", "log", - "rand 0.8.3", - "sha-1 0.9.4", + "rand 0.8.4", + "sha-1 0.9.8", ] [[package]] name = "sp-api" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "hash-db", "log", @@ -9152,11 +10376,11 @@ dependencies = [ [[package]] name = "sp-api-proc-macro" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "blake2-rfc", - "proc-macro-crate 1.0.0", + "proc-macro-crate 1.1.0", "proc-macro2", "quote", "syn", @@ -9164,8 +10388,8 @@ dependencies = [ [[package]] name = "sp-application-crypto" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "parity-scale-codec", "serde", @@ -9176,8 +10400,8 @@ dependencies = [ [[package]] name = "sp-arithmetic" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "integer-sqrt", "num-traits", @@ -9190,8 +10414,8 @@ dependencies = [ [[package]] name = "sp-authority-discovery" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "parity-scale-codec", "sp-api", @@ -9202,8 +10426,8 @@ dependencies = [ [[package]] name = "sp-authorship" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "async-trait", "parity-scale-codec", @@ -9214,8 +10438,8 @@ dependencies = [ [[package]] name = "sp-block-builder" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "parity-scale-codec", "sp-api", @@ -9226,14 +10450,14 @@ dependencies = [ [[package]] name = "sp-blockchain" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ - "futures 0.3.15", + "futures 0.3.17", "log", "lru", "parity-scale-codec", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "sp-api", "sp-consensus", "sp-database", @@ -9244,35 +10468,27 @@ dependencies = [ [[package]] name = "sp-consensus" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "async-trait", - "futures 0.3.15", + "futures 0.3.17", "futures-timer 3.0.2", - "libp2p", "log", "parity-scale-codec", - "parking_lot 0.11.1", - "serde", - "sp-api", "sp-core", "sp-inherents", "sp-runtime", "sp-state-machine", "sp-std", - "sp-trie", - "sp-utils", "sp-version", - "substrate-prometheus-endpoint", "thiserror", - "wasm-timer", ] [[package]] name = "sp-consensus-aura" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "async-trait", "parity-scale-codec", @@ -9288,8 +10504,8 @@ dependencies = [ [[package]] name = "sp-consensus-babe" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "async-trait", "merlin", @@ -9310,8 +10526,8 @@ dependencies = [ [[package]] name = "sp-consensus-slots" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "parity-scale-codec", "sp-arithmetic", @@ -9320,8 +10536,8 @@ dependencies = [ [[package]] name = "sp-consensus-vrf" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "parity-scale-codec", "schnorrkel", @@ -9332,34 +10548,34 @@ dependencies = [ [[package]] name = "sp-core" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "base58", "blake2-rfc", "byteorder", "dyn-clonable", "ed25519-dalek", - "futures 0.3.15", + "futures 0.3.17", "hash-db", "hash256-std-hasher", "hex", "impl-serde", "lazy_static", - "libsecp256k1", + "libsecp256k1 0.6.0", "log", "merlin", "num-traits", "parity-scale-codec", "parity-util-mem", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "primitive-types", "rand 0.7.3", "regex", "schnorrkel", "secrecy", "serde", - "sha2 0.9.3", + "sha2 0.9.8", "sp-debug-derive", "sp-externalities", "sp-runtime-interface", @@ -9376,17 +10592,17 @@ dependencies = [ [[package]] name = "sp-database" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "kvdb", - "parking_lot 0.11.1", + "parking_lot 0.11.2", ] [[package]] name = "sp-debug-derive" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "proc-macro2", "quote", @@ -9395,8 +10611,8 @@ dependencies = [ [[package]] name = "sp-externalities" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "environmental", "parity-scale-codec", @@ -9406,8 +10622,8 @@ dependencies = [ [[package]] name = "sp-finality-grandpa" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "finality-grandpa", "log", @@ -9423,8 +10639,8 @@ dependencies = [ [[package]] name = "sp-inherents" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "async-trait", "impl-trait-for-tuples", @@ -9437,15 +10653,15 @@ dependencies = [ [[package]] name = "sp-io" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ - "futures 0.3.15", + "futures 0.3.17", "hash-db", - "libsecp256k1", + "libsecp256k1 0.6.0", "log", "parity-scale-codec", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "sp-core", "sp-externalities", "sp-keystore", @@ -9462,8 +10678,8 @@ dependencies = [ [[package]] name = "sp-keyring" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "lazy_static", "sp-core", @@ -9473,15 +10689,15 @@ dependencies = [ [[package]] name = "sp-keystore" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "async-trait", "derive_more", - "futures 0.3.15", + "futures 0.3.17", "merlin", "parity-scale-codec", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "schnorrkel", "serde", "sp-core", @@ -9490,32 +10706,32 @@ dependencies = [ [[package]] name = "sp-maybe-compressed-blob" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ - "ruzstd", "zstd", ] [[package]] name = "sp-npos-elections" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "parity-scale-codec", "serde", "sp-arithmetic", "sp-core", - "sp-npos-elections-compact", + "sp-npos-elections-solution-type", + "sp-runtime", "sp-std", ] [[package]] -name = "sp-npos-elections-compact" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +name = "sp-npos-elections-solution-type" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ - "proc-macro-crate 1.0.0", + "proc-macro-crate 1.1.0", "proc-macro2", "quote", "syn", @@ -9523,8 +10739,8 @@ dependencies = [ [[package]] name = "sp-offchain" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "sp-api", "sp-core", @@ -9534,26 +10750,25 @@ dependencies = [ [[package]] name = "sp-panic-handler" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "backtrace", ] [[package]] name = "sp-rpc" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "rustc-hash", "serde", "sp-core", - "tracing-core", ] [[package]] name = "sp-runtime" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "either", "hash256-std-hasher", @@ -9561,7 +10776,7 @@ dependencies = [ "log", "parity-scale-codec", "parity-util-mem", - "paste", + "paste 1.0.5", "rand 0.7.3", "serde", "sp-application-crypto", @@ -9573,8 +10788,8 @@ dependencies = [ [[package]] name = "sp-runtime-interface" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "impl-trait-for-tuples", "parity-scale-codec", @@ -9590,11 +10805,11 @@ dependencies = [ [[package]] name = "sp-runtime-interface-proc-macro" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "Inflector", - "proc-macro-crate 1.0.0", + "proc-macro-crate 1.1.0", "proc-macro2", "quote", "syn", @@ -9603,7 +10818,7 @@ dependencies = [ [[package]] name = "sp-serializer" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "serde", "serde_json", @@ -9611,8 +10826,8 @@ dependencies = [ [[package]] name = "sp-session" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "parity-scale-codec", "sp-api", @@ -9624,8 +10839,8 @@ dependencies = [ [[package]] name = "sp-staking" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "parity-scale-codec", "sp-runtime", @@ -9634,16 +10849,16 @@ dependencies = [ [[package]] name = "sp-state-machine" -version = "0.9.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "hash-db", "log", "num-traits", "parity-scale-codec", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "rand 0.7.3", - "smallvec 1.6.1", + "smallvec", "sp-core", "sp-externalities", "sp-panic-handler", @@ -9657,13 +10872,13 @@ dependencies = [ [[package]] name = "sp-std" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" [[package]] name = "sp-storage" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "impl-serde", "parity-scale-codec", @@ -9675,8 +10890,8 @@ dependencies = [ [[package]] name = "sp-tasks" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "log", "sp-core", @@ -9688,8 +10903,8 @@ dependencies = [ [[package]] name = "sp-timestamp" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "async-trait", "futures-timer 3.0.2", @@ -9700,13 +10915,12 @@ dependencies = [ "sp-runtime", "sp-std", "thiserror", - "wasm-timer", ] [[package]] name = "sp-tracing" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "erased-serde", "log", @@ -9723,24 +10937,17 @@ dependencies = [ [[package]] name = "sp-transaction-pool" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ - "derive_more", - "futures 0.3.15", - "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=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "async-trait", "log", @@ -9754,8 +10961,8 @@ dependencies = [ [[package]] name = "sp-trie" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "hash-db", "memory-db", @@ -9766,22 +10973,10 @@ dependencies = [ "trie-root", ] -[[package]] -name = "sp-utils" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" -dependencies = [ - "futures 0.3.15", - "futures-core", - "futures-timer 3.0.2", - "lazy_static", - "prometheus", -] - [[package]] name = "sp-version" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "impl-serde", "parity-scale-codec", @@ -9795,11 +10990,10 @@ dependencies = [ [[package]] name = "sp-version-proc-macro" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "parity-scale-codec", - "proc-macro-crate 1.0.0", "proc-macro2", "quote", "syn", @@ -9807,8 +11001,8 @@ dependencies = [ [[package]] name = "sp-wasm-interface" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "impl-trait-for-tuples", "parity-scale-codec", @@ -9822,15 +11016,6 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" -[[package]] -name = "spinning_top" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8bd0ab6b8c375d2d963503b90d3770010d95bc3b5f98036f948dee24bf4e8879" -dependencies = [ - "lock_api 0.4.2", -] - [[package]] name = "stable_deref_trait" version = "1.2.0" @@ -9860,7 +11045,7 @@ checksum = "11b73400442027c4adedda20a9f9b7945234a5bd8d5f7e86da22bd5d0622369c" dependencies = [ "cfg_aliases", "libc", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "static_init_macro", ] @@ -9887,7 +11072,7 @@ dependencies = [ "lazy_static", "nalgebra", "num-traits", - "rand 0.8.3", + "rand 0.8.4", ] [[package]] @@ -9944,7 +11129,7 @@ name = "storage-proof-fuzzer" version = "0.1.0" dependencies = [ "bp-runtime", - "env_logger 0.8.3", + "env_logger 0.8.4", "honggfuzz", "log", "sp-core", @@ -9953,25 +11138,6 @@ dependencies = [ "sp-trie", ] -[[package]] -name = "stream-cipher" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c80e15f898d8d8f25db24c253ea615cc14acf418ff307822995814e7d42cfa89" -dependencies = [ - "block-cipher", - "generic-array 0.14.4", -] - -[[package]] -name = "string" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d24114bfcceb867ca7f71a0d3fe45d45619ec47a6fbfa98cb14e14250bfa5d6d" -dependencies = [ - "bytes 0.4.12", -] - [[package]] name = "strsim" version = "0.8.0" @@ -9980,9 +11146,9 @@ checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a" [[package]] name = "structopt" -version = "0.3.21" +version = "0.3.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5277acd7ee46e63e5168a80734c9f6ee81b1367a7d8772a2d765df2a3705d28c" +checksum = "bf9d950ef167e25e0bdb073cf1d68e9ad2795ac826f2f3f59647817cf23c0bfa" dependencies = [ "clap", "lazy_static", @@ -9991,12 +11157,12 @@ dependencies = [ [[package]] name = "structopt-derive" -version = "0.4.14" +version = "0.4.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ba9cdfda491b814720b6b06e0cac513d922fc407582032e8706e9f137976f90" +checksum = "134d838a2c9943ac3125cf6df165eda53493451b719f3255b2a26b85f772d0ba" dependencies = [ "heck", - "proc-macro-error", + "proc-macro-error 1.0.4", "proc-macro2", "quote", "syn", @@ -10046,60 +11212,59 @@ dependencies = [ [[package]] name = "substrate-bip39" -version = "0.4.2" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bed6646a0159b9935b5d045611560eeef842b78d7adc3ba36f5ca325a13a0236" +checksum = "49eee6965196b32f882dd2ee85a92b1dbead41b04e53907f269de3b0dc04733c" dependencies = [ - "hmac 0.7.1", - "pbkdf2 0.3.0", + "hmac 0.11.0", + "pbkdf2 0.8.0", "schnorrkel", - "sha2 0.8.2", + "sha2 0.9.8", "zeroize", ] [[package]] name = "substrate-build-script-utils" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "platforms", ] [[package]] name = "substrate-frame-rpc-system" -version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "frame-system-rpc-runtime-api", - "futures 0.3.15", - "jsonrpc-core 15.1.0", + "futures 0.3.17", + "jsonrpc-core 18.0.0", "jsonrpc-core-client", "jsonrpc-derive", "log", "parity-scale-codec", "sc-client-api", "sc-rpc-api", - "serde", + "sc-transaction-pool-api", "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=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "async-std", "derive_more", "futures-util", - "hyper 0.13.10", + "hyper", "log", "prometheus", - "tokio 0.2.25", + "tokio", ] [[package]] @@ -10124,9 +11289,9 @@ dependencies = [ "finality-grandpa", "finality-relay", "frame-support", - "futures 0.3.15", + "futures 0.3.17", "hex", - "hex-literal 0.3.1", + "hex-literal 0.3.3", "log", "messages-relay", "millau-runtime", @@ -10138,8 +11303,8 @@ dependencies = [ "pallet-bridge-messages", "pallet-bridge-token-swap", "parity-scale-codec", - "paste", - "rand 0.8.3", + "paste 1.0.5", + "rand 0.8.4", "relay-kusama-client", "relay-millau-client", "relay-polkadot-client", @@ -10178,29 +11343,55 @@ dependencies = [ "finality-grandpa", "finality-relay", "frame-support", - "futures 0.3.15", + "futures 0.3.17", "log", "messages-relay", "num-traits", "pallet-bridge-messages", "parity-scale-codec", - "relay-rococo-client", - "relay-substrate-client", - "relay-utils", - "relay-wococo-client", - "rialto-runtime", + "relay-rococo-client", + "relay-substrate-client", + "relay-utils", + "relay-wococo-client", + "rialto-runtime", + "sp-core", + "sp-finality-grandpa", + "sp-runtime", +] + +[[package]] +name = "substrate-test-client" +version = "2.0.1" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" +dependencies = [ + "async-trait", + "futures 0.3.17", + "hex", + "parity-scale-codec", + "sc-client-api", + "sc-client-db", + "sc-consensus", + "sc-executor", + "sc-light", + "sc-offchain", + "sc-service", + "serde", + "serde_json", + "sp-blockchain", + "sp-consensus", "sp-core", - "sp-finality-grandpa", + "sp-keyring", + "sp-keystore", "sp-runtime", + "sp-state-machine", ] [[package]] name = "substrate-wasm-builder" -version = "4.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#3cd75117765c4a63d40c00aa41e1bf12135c237b" +version = "5.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" dependencies = [ "ansi_term 0.12.1", - "atty", "build-helper", "cargo_metadata", "sp-maybe-compressed-blob", @@ -10218,26 +11409,37 @@ checksum = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee" [[package]] name = "subtle" -version = "2.4.0" +version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e81da0851ada1f3e9d4312c704aa4f8806f0f9d69faaf8df2f3464b4a9437c2" +checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601" [[package]] name = "syn" -version = "1.0.68" +version = "1.0.76" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ce15dd3ed8aa2f8eeac4716d6ef5ab58b6b9256db41d7e1a0224c2788e8fd87" +checksum = "c6f107db402c2c2055242dbf4d2af0e69197202e9faacbef9571bbe47f5a1b84" 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.4" +version = "0.12.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b834f2d66f734cb897113e34aaff2f1ab4719ca946f9a7358dba8f8064148701" +checksum = "474aaa926faa1603c40b7885a9eaea29b444d1cb2850cb7c0e37bb1a4182f4fa" dependencies = [ "proc-macro2", "quote", @@ -10253,7 +11455,7 @@ checksum = "de94457a09609f33fec5e7fceaf907488967c6c7c75d64da6a7ce6ffdb8b5abd" dependencies = [ "cc", "cfg-if 1.0.0", - "core-foundation-sys 0.8.2", + "core-foundation-sys", "doc-comment", "libc", "ntapi", @@ -10262,12 +11464,6 @@ dependencies = [ "winapi 0.3.9", ] -[[package]] -name = "take_mut" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f764005d11ee5f36500a149ace24e00e3da98b0158b3e2d53a7495660d3f4d60" - [[package]] name = "tap" version = "1.0.1" @@ -10276,9 +11472,9 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] name = "target-lexicon" -version = "0.12.0" +version = "0.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64ae3b39281e4b14b8123bdbaddd472b7dfe215e444181f2f9d2443c2444f834" +checksum = "d9bffcddbc2458fa3e6058414599e3c838a022abae82e5c67b4f7f80298d5bff" [[package]] name = "tempdir" @@ -10298,8 +11494,8 @@ checksum = "dac1c663cfc93810f88aed9b8941d48cabf856a1b111c29a40439018d870eb22" dependencies = [ "cfg-if 1.0.0", "libc", - "rand 0.8.3", - "redox_syscall 0.2.5", + "rand 0.8.4", + "redox_syscall 0.2.10", "remove_dir_all", "winapi 0.3.9", ] @@ -10324,281 +11520,18 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.24" +version = "1.0.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0f4a65597094d4483ddaed134f409b2cb7c1beccf25201a9f73c719254fa98e" +checksum = "602eca064b2d83369e2b2f34b09c70b605402801927c65c11071ac911d299b88" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.24" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7765189610d8241a44529806d6fd1f2e0a08734313a35d5b3a556f92b381f3c0" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "thread_local" -version = "1.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8018d24e04c95ac8790716a5987d0fec4f8b27249ffa0f7d33f1369bdfb88cbd" -dependencies = [ - "once_cell", -] - -[[package]] -name = "threadpool" -version = "1.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d050e60b33d41c19108b32cea32164033a9013fe3b46cbd4457559bfbf77afaa" -dependencies = [ - "num_cpus", -] - -[[package]] -name = "thrift" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c6d965454947cc7266d22716ebfd07b18d84ebaf35eec558586bbb2a8cb6b5b" -dependencies = [ - "byteorder", - "integer-encoding", - "log", - "ordered-float", - "threadpool", -] - -[[package]] -name = "time" -version = "0.1.44" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6db9e6914ab8b1ae1c260a4ae7a49b6c5611b40328a735b21862567685e73255" -dependencies = [ - "libc", - "wasi 0.10.0+wasi-snapshot-preview1", - "winapi 0.3.9", -] - -[[package]] -name = "time" -version = "0.2.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1195b046942c221454c2539395f85413b33383a067449d78aab2b7b052a142f7" -dependencies = [ - "const_fn", - "libc", - "standback", - "stdweb", - "time-macros", - "version_check", - "winapi 0.3.9", -] - -[[package]] -name = "time-macros" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "957e9c6e26f12cb6d0dd7fc776bb67a706312e7299aed74c8dd5b17ebb27e2f1" -dependencies = [ - "proc-macro-hack", - "time-macros-impl", -] - -[[package]] -name = "time-macros-impl" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5c3be1edfad6027c69f5491cf4cb310d1a71ecd6af742788c6ff8bced86b8fa" -dependencies = [ - "proc-macro-hack", - "proc-macro2", - "quote", - "standback", - "syn", -] - -[[package]] -name = "tiny-bip39" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9e44c4759bae7f1032e286a7ef990bd9ed23fe831b7eeba0beb97484c2e59b8" -dependencies = [ - "anyhow", - "hmac 0.8.1", - "once_cell", - "pbkdf2 0.4.0", - "rand 0.7.3", - "rustc-hash", - "sha2 0.9.3", - "thiserror", - "unicode-normalization", - "zeroize", -] - -[[package]] -name = "tiny-keccak" -version = "2.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237" -dependencies = [ - "crunchy", -] - -[[package]] -name = "tinyvec" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "317cca572a0e89c3ce0ca1f1bdc9369547fe318a683418e42ac8f59d14701023" -dependencies = [ - "tinyvec_macros", -] - -[[package]] -name = "tinyvec_macros" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" - -[[package]] -name = "tokio" -version = "0.1.22" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a09c0b5bb588872ab2f09afa13ee6e9dac11e10a0ec9e8e3ba39a5a5d530af6" -dependencies = [ - "bytes 0.4.12", - "futures 0.1.31", - "mio 0.6.23", - "num_cpus", - "tokio-codec", - "tokio-current-thread", - "tokio-executor", - "tokio-fs", - "tokio-io", - "tokio-reactor", - "tokio-sync", - "tokio-tcp", - "tokio-threadpool", - "tokio-timer", - "tokio-udp", - "tokio-uds", -] - -[[package]] -name = "tokio" -version = "0.2.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6703a273949a90131b290be1fe7b039d0fc884aa1935860dfcbe056f28cd8092" -dependencies = [ - "bytes 0.5.6", - "fnv", - "futures-core", - "iovec", - "lazy_static", - "libc", - "memchr", - "mio 0.6.23", - "mio-uds", - "num_cpus", - "pin-project-lite 0.1.11", - "signal-hook-registry", - "slab", - "winapi 0.3.9", -] - -[[package]] -name = "tokio" -version = "1.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98c8b05dc14c75ea83d63dd391100353789f5f24b8b3866542a5e85c8be8e985" -dependencies = [ - "autocfg", - "bytes 1.0.1", - "libc", - "memchr", - "mio 0.7.13", - "num_cpus", - "once_cell", - "parking_lot 0.11.1", - "pin-project-lite 0.2.4", - "signal-hook-registry", - "tokio-macros", - "winapi 0.3.9", -] - -[[package]] -name = "tokio-buf" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fb220f46c53859a4b7ec083e41dec9778ff0b1851c0942b211edb89e0ccdc46" -dependencies = [ - "bytes 0.4.12", - "either", - "futures 0.1.31", -] - -[[package]] -name = "tokio-codec" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25b2998660ba0e70d18684de5d06b70b70a3a747469af9dea7618cc59e75976b" -dependencies = [ - "bytes 0.4.12", - "futures 0.1.31", - "tokio-io", -] - -[[package]] -name = "tokio-current-thread" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1de0e32a83f131e002238d7ccde18211c0a5397f60cbfffcb112868c2e0e20e" -dependencies = [ - "futures 0.1.31", - "tokio-executor", -] - -[[package]] -name = "tokio-executor" -version = "0.1.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb2d1b8f4548dbf5e1f7818512e9c406860678f29c300cdf0ebac72d1a3a1671" -dependencies = [ - "crossbeam-utils 0.7.2", - "futures 0.1.31", -] - -[[package]] -name = "tokio-fs" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "297a1206e0ca6302a0eed35b700d292b275256f596e2f3fea7729d5e629b6ff4" -dependencies = [ - "futures 0.1.31", - "tokio-io", - "tokio-threadpool", -] - -[[package]] -name = "tokio-io" -version = "0.1.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57fc868aae093479e3131e3d165c93b1c7474109d13c90ec0dda2a1bbfff0674" -dependencies = [ - "bytes 0.4.12", - "futures 0.1.31", - "log", -] - -[[package]] -name = "tokio-macros" -version = "1.3.0" +version = "1.0.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54473be61f4ebe4efd09cec9bd5d16fa51d70ea0192213d754d2d500457db110" +checksum = "bad553cc2c78e8de258400763a647e80e6d1b31ee237275d756f6836d204494c" dependencies = [ "proc-macro2", "quote", @@ -10606,203 +11539,203 @@ dependencies = [ ] [[package]] -name = "tokio-named-pipes" -version = "0.1.0" +name = "thread_local" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d282d483052288b2308ba5ee795f5673b159c9bdf63c385a05609da782a5eae" +checksum = "8018d24e04c95ac8790716a5987d0fec4f8b27249ffa0f7d33f1369bdfb88cbd" dependencies = [ - "bytes 0.4.12", - "futures 0.1.31", - "mio 0.6.23", - "mio-named-pipes", - "tokio 0.1.22", + "once_cell", ] [[package]] -name = "tokio-native-tls" -version = "0.3.0" +name = "threadpool" +version = "1.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7d995660bd2b7f8c1568414c1126076c13fbb725c40112dc0120b78eb9b717b" +checksum = "d050e60b33d41c19108b32cea32164033a9013fe3b46cbd4457559bfbf77afaa" dependencies = [ - "native-tls", - "tokio 1.8.1", + "num_cpus", ] [[package]] -name = "tokio-reactor" -version = "0.1.12" +name = "thrift" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09bc590ec4ba8ba87652da2068d150dcada2cfa2e07faae270a5e0409aa51351" +checksum = "0c6d965454947cc7266d22716ebfd07b18d84ebaf35eec558586bbb2a8cb6b5b" dependencies = [ - "crossbeam-utils 0.7.2", - "futures 0.1.31", - "lazy_static", + "byteorder", + "integer-encoding", "log", - "mio 0.6.23", - "num_cpus", - "parking_lot 0.9.0", - "slab", - "tokio-executor", - "tokio-io", - "tokio-sync", + "ordered-float", + "threadpool", ] [[package]] -name = "tokio-rustls" -version = "0.14.1" +name = "time" +version = "0.1.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e12831b255bcfa39dc0436b01e19fea231a37db570686c06ee72c423479f889a" +checksum = "6db9e6914ab8b1ae1c260a4ae7a49b6c5611b40328a735b21862567685e73255" dependencies = [ - "futures-core", - "rustls 0.18.1", - "tokio 0.2.25", - "webpki", + "libc", + "wasi 0.10.0+wasi-snapshot-preview1", + "winapi 0.3.9", ] [[package]] -name = "tokio-rustls" -version = "0.22.0" +name = "time" +version = "0.2.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc6844de72e57df1980054b38be3a9f4702aba4858be64dd700181a8a6d0e1b6" +checksum = "4752a97f8eebd6854ff91f1c1824cd6160626ac4bd44287f7f4ea2035a02a242" dependencies = [ - "rustls 0.19.1", - "tokio 1.8.1", - "webpki", + "const_fn", + "libc", + "standback", + "stdweb", + "time-macros", + "version_check", + "winapi 0.3.9", ] [[package]] -name = "tokio-service" -version = "0.1.0" +name = "time-macros" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24da22d077e0f15f55162bdbdc661228c1581892f52074fb242678d015b45162" +checksum = "957e9c6e26f12cb6d0dd7fc776bb67a706312e7299aed74c8dd5b17ebb27e2f1" dependencies = [ - "futures 0.1.31", + "proc-macro-hack", + "time-macros-impl", ] [[package]] -name = "tokio-stream" -version = "0.1.7" +name = "time-macros-impl" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b2f3f698253f03119ac0102beaa64f67a67e08074d03a22d18784104543727f" +checksum = "fd3c141a1b43194f3f56a1411225df8646c55781d5f26db825b3d98507eb482f" dependencies = [ - "futures-core", - "pin-project-lite 0.2.4", - "tokio 1.8.1", + "proc-macro-hack", + "proc-macro2", + "quote", + "standback", + "syn", ] [[package]] -name = "tokio-sync" -version = "0.1.8" +name = "tiny-bip39" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edfe50152bc8164fcc456dab7891fa9bf8beaf01c5ee7e1dd43a397c3cf87dee" +checksum = "d9e44c4759bae7f1032e286a7ef990bd9ed23fe831b7eeba0beb97484c2e59b8" dependencies = [ - "fnv", - "futures 0.1.31", + "anyhow", + "hmac 0.8.1", + "once_cell", + "pbkdf2 0.4.0", + "rand 0.7.3", + "rustc-hash", + "sha2 0.9.8", + "thiserror", + "unicode-normalization", + "zeroize", ] [[package]] -name = "tokio-tcp" -version = "0.1.4" +name = "tiny-keccak" +version = "2.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98df18ed66e3b72e742f185882a9e201892407957e45fbff8da17ae7a7c51f72" +checksum = "2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237" dependencies = [ - "bytes 0.4.12", - "futures 0.1.31", - "iovec", - "mio 0.6.23", - "tokio-io", - "tokio-reactor", + "crunchy", ] [[package]] -name = "tokio-threadpool" -version = "0.1.18" +name = "tinyvec" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df720b6581784c118f0eb4310796b12b1d242a7eb95f716a8367855325c25f89" +checksum = "5241dd6f21443a3606b432718b166d3cedc962fd4b8bea54a8bc7f514ebda986" dependencies = [ - "crossbeam-deque 0.7.3", - "crossbeam-queue", - "crossbeam-utils 0.7.2", - "futures 0.1.31", - "lazy_static", - "log", + "tinyvec_macros", +] + +[[package]] +name = "tinyvec_macros" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" + +[[package]] +name = "tokio" +version = "1.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4efe6fc2395938c8155973d7be49fe8d03a843726e285e100a8a383cc0154ce" +dependencies = [ + "autocfg", + "bytes 1.1.0", + "libc", + "memchr", + "mio 0.7.13", "num_cpus", - "slab", - "tokio-executor", + "once_cell", + "parking_lot 0.11.2", + "pin-project-lite 0.2.7", + "signal-hook-registry", + "tokio-macros", + "winapi 0.3.9", ] [[package]] -name = "tokio-timer" -version = "0.2.13" +name = "tokio-macros" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93044f2d313c95ff1cb7809ce9a7a05735b012288a888b62d4434fd58c94f296" +checksum = "54473be61f4ebe4efd09cec9bd5d16fa51d70ea0192213d754d2d500457db110" dependencies = [ - "crossbeam-utils 0.7.2", - "futures 0.1.31", - "slab", - "tokio-executor", + "proc-macro2", + "quote", + "syn", ] [[package]] -name = "tokio-udp" -version = "0.1.6" +name = "tokio-native-tls" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2a0b10e610b39c38b031a2fcab08e4b82f16ece36504988dcbd81dbba650d82" +checksum = "f7d995660bd2b7f8c1568414c1126076c13fbb725c40112dc0120b78eb9b717b" dependencies = [ - "bytes 0.4.12", - "futures 0.1.31", - "log", - "mio 0.6.23", - "tokio-codec", - "tokio-io", - "tokio-reactor", + "native-tls", + "tokio", ] [[package]] -name = "tokio-uds" -version = "0.2.7" +name = "tokio-rustls" +version = "0.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab57a4ac4111c8c9dbcf70779f6fc8bc35ae4b2454809febac840ad19bd7e4e0" +checksum = "bc6844de72e57df1980054b38be3a9f4702aba4858be64dd700181a8a6d0e1b6" dependencies = [ - "bytes 0.4.12", - "futures 0.1.31", - "iovec", - "libc", - "log", - "mio 0.6.23", - "mio-uds", - "tokio-codec", - "tokio-io", - "tokio-reactor", + "rustls", + "tokio", + "webpki", ] [[package]] -name = "tokio-util" -version = "0.3.1" +name = "tokio-stream" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be8242891f2b6cbef26a2d7e8605133c2c554cd35b3e4948ea892d6d68436499" +checksum = "7b2f3f698253f03119ac0102beaa64f67a67e08074d03a22d18784104543727f" dependencies = [ - "bytes 0.5.6", "futures-core", - "futures-sink", - "log", - "pin-project-lite 0.1.11", - "tokio 0.2.25", + "pin-project-lite 0.2.7", + "tokio", ] [[package]] name = "tokio-util" -version = "0.6.7" +version = "0.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1caa0b0c8d94a049db56b5acf8cba99dc0623aab1b26d5b5f5e2d945846b3592" +checksum = "08d3725d3efa29485e87311c5b699de63cde14b00ed4d256b8318aa30ca452cd" dependencies = [ - "bytes 1.0.1", + "bytes 1.1.0", "futures-core", "futures-io", "futures-sink", "log", - "pin-project-lite 0.2.4", - "tokio 1.8.1", + "pin-project-lite 0.2.7", + "tokio", ] [[package]] @@ -10822,22 +11755,22 @@ checksum = "360dfd1d6d30e05fda32ace2c8c70e9c0a9da713275777f5a4dbb8a1893930c6" [[package]] name = "tracing" -version = "0.1.26" +version = "0.1.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09adeb8c97449311ccd28a427f96fb563e7fd31aabf994189879d9da2394b89d" +checksum = "c2ba9ab62b7d6497a8638dfda5e5c4fb3b2d5a7fca4118f2b96151c8ef1a437e" dependencies = [ "cfg-if 1.0.0", "log", - "pin-project-lite 0.2.4", + "pin-project-lite 0.2.7", "tracing-attributes", "tracing-core", ] [[package]] name = "tracing-attributes" -version = "0.1.15" +version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c42e6fa53307c8a17e4ccd4dc81cf5ec38db9209f59b222210375b54ee40d1e2" +checksum = "98863d0dd09fa59a1b79c6750ad80dbda6b75f4e71c437a6a1a8cb91a8bcbd77" dependencies = [ "proc-macro2", "quote", @@ -10846,9 +11779,9 @@ dependencies = [ [[package]] name = "tracing-core" -version = "0.1.18" +version = "0.1.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9ff14f98b1a4b289c6248a023c1c2fa1491062964e9fed67ab29c4e4da4a052" +checksum = "46125608c26121c81b0c6d693eab5a420e416da7e43c426d2e8f7df8da8a3acf" dependencies = [ "lazy_static", ] @@ -10859,7 +11792,7 @@ version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "97d095ae15e245a057c8e8451bab9b3ee1e1f68e9ba2b4fbc18d0ac5237835f2" dependencies = [ - "pin-project 1.0.7", + "pin-project 1.0.8", "tracing", ] @@ -10886,9 +11819,9 @@ dependencies = [ [[package]] name = "tracing-subscriber" -version = "0.2.18" +version = "0.2.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa5553bf0883ba7c9cbe493b085c29926bd41b66afc31ff72cf17ff4fb60dcd5" +checksum = "62af966210b88ad5776ee3ba12d5f35b8d6a2b2a12168f3080cf02b814d7376b" dependencies = [ "ansi_term 0.12.1", "chrono", @@ -10898,7 +11831,7 @@ dependencies = [ "serde", "serde_json", "sharded-slab", - "smallvec 1.6.1", + "smallvec", "thread_local", "tracing", "tracing-core", @@ -10913,10 +11846,10 @@ 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", + "smallvec", ] [[package]] @@ -10940,9 +11873,9 @@ dependencies = [ [[package]] name = "trust-dns-proto" -version = "0.20.1" +version = "0.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d57e219ba600dd96c2f6d82eb79645068e14edbc5c7e27514af40436b88150c" +checksum = "ad0d7f5db438199a6e2609debe3f69f808d074e0a2888ee0bccb45fe234d03f4" dependencies = [ "async-trait", "cfg-if 1.0.0", @@ -10951,22 +11884,22 @@ dependencies = [ "futures-channel", "futures-io", "futures-util", - "idna 0.2.2", + "idna 0.2.3", "ipnet", "lazy_static", "log", - "rand 0.8.3", - "smallvec 1.6.1", + "rand 0.8.4", + "smallvec", "thiserror", "tinyvec", - "url 2.2.1", + "url 2.2.2", ] [[package]] name = "trust-dns-resolver" -version = "0.20.1" +version = "0.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0437eea3a6da51acc1e946545ff53d5b8fb2611ff1c3bed58522dde100536ae" +checksum = "f6ad17b608a64bd0735e67bde16b0636f8aa8591f831a25d18443ed00a699770" dependencies = [ "cfg-if 1.0.0", "futures-util", @@ -10974,9 +11907,9 @@ dependencies = [ "lazy_static", "log", "lru-cache", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "resolv-conf", - "smallvec 1.6.1", + "smallvec", "thiserror", "trust-dns-proto", ] @@ -10987,22 +11920,42 @@ version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642" +[[package]] +name = "try-runtime-cli" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#630422d6108cbaaca893ab213dde69f3bdaa1f6b" +dependencies = [ + "log", + "parity-scale-codec", + "remote-externalities", + "sc-chain-spec", + "sc-cli", + "sc-executor", + "sc-service", + "serde", + "sp-core", + "sp-keystore", + "sp-runtime", + "sp-state-machine", + "structopt", +] + [[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", ] [[package]] name = "typenum" -version = "1.12.0" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "373c8a200f9e67a0c95e62a4f52fbf80c23b4381c05a17845531982fa99e6b33" +checksum = "b63708a265f51345575b27fe43f9500ad611579e764c79edbc2037b1121959ec" [[package]] name = "ucd-trie" @@ -11012,9 +11965,9 @@ checksum = "56dee185309b50d1f11bfedef0fe6d036842e3fb77413abef29f8f8d1c5d4c1c" [[package]] name = "uint" -version = "0.9.0" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e11fe9a9348741cf134085ad57c249508345fe16411b3d7fb4ff2da2f1d6382e" +checksum = "6470ab50f482bde894a037a57064480a246dbfdd5960bd65a44824693f08da5f" dependencies = [ "byteorder", "crunchy", @@ -11033,27 +11986,24 @@ dependencies = [ [[package]] name = "unicode-bidi" -version = "0.3.4" +version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5" -dependencies = [ - "matches", -] +checksum = "246f4c42e67e7a4e3c6106ff716a5d067d4132a642840b242e357e468a2a0085" [[package]] name = "unicode-normalization" -version = "0.1.17" +version = "0.1.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07fbfce1c8a97d547e8b5334978438d9d6ec8c20e38f56d4a4374d181493eaef" +checksum = "d54590932941a9e9266f0832deed84ebe1bf2e4c9e4a3554d393d18f5e854bf9" dependencies = [ "tinyvec", ] [[package]] name = "unicode-segmentation" -version = "1.7.1" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb0d2e7be6ae3a5fa87eed5fb451aff96f2573d2694942e40543ae0bbe19c796" +checksum = "8895849a949e7845e06bd6dc1aa51731a103c42707010a5b591c0038fb73385b" [[package]] name = "unicode-width" @@ -11063,18 +12013,18 @@ checksum = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3" [[package]] name = "unicode-xid" -version = "0.2.1" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564" +checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3" [[package]] name = "universal-hash" -version = "0.4.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8326b2c654932e3e4f9196e69d08fdf7cfd718e1dc6f66b347e6024a0c961402" +checksum = "9f214e8f697e925001e66ec2c6e37a4ef93f0f78c2eed7814394e10c62025b05" dependencies = [ "generic-array 0.14.4", - "subtle 2.4.0", + "subtle 2.4.1", ] [[package]] @@ -11090,7 +12040,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "35581ff83d4101e58b582e607120c7f5ffb17e632a980b1f38334d76b36908b2" dependencies = [ "asynchronous-codec 0.5.0", - "bytes 1.0.1", + "bytes 1.1.0", "futures-io", "futures-util", ] @@ -11102,7 +12052,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5f8d425fafb8cd76bc3f22aace4af471d3156301d7508f2107e98fbeae10bc7f" dependencies = [ "asynchronous-codec 0.6.0", - "bytes 1.0.1", + "bytes 1.1.0", "futures-io", "futures-util", ] @@ -11126,36 +12076,31 @@ dependencies = [ [[package]] name = "url" -version = "2.2.1" +version = "2.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ccd964113622c8e9322cfac19eb1004a07e636c545f325da085d5cdde6f1f8b" +checksum = "a507c383b2d33b5fc35d1861e77e6b383d158b2da5e14fe51b83dfedf6fd578c" dependencies = [ "form_urlencoded", - "idna 0.2.2", + "idna 0.2.3", "matches", "percent-encoding 2.1.0", ] [[package]] name = "value-bag" -version = "1.0.0-alpha.6" +version = "1.0.0-alpha.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b676010e055c99033117c2343b33a40a30b91fecd6c49055ac9cd2d6c305ab1" +checksum = "dd320e1520f94261153e96f7534476ad869c14022aee1e59af7c778075d840ae" dependencies = [ "ctor", + "version_check", ] [[package]] name = "vcpkg" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b00bca6106a5e23f3eee943593759b7fcddb00554332e856d990c893966879fb" - -[[package]] -name = "vec-arena" -version = "1.0.0" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eafc1b9b2dfc6f5529177b62cf806484db55b32dc7c9658a118e11bbeb33061d" +checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" [[package]] name = "vec_map" @@ -11165,9 +12110,9 @@ checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191" [[package]] name = "version_check" -version = "0.9.2" +version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5a972e5669d67ba988ce3dc826706fb0a8b01471c088cb0b6110b805cc36aed" +checksum = "5fecdca9a5291cc2b8dcf7dc02453fee791a280f3743cb0905f8822ae463b3fe" [[package]] name = "void" @@ -11192,17 +12137,6 @@ dependencies = [ "winapi-util", ] -[[package]] -name = "want" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6395efa4784b027708f7451087e647ec73cc74f5d9bc2e418404248d679a230" -dependencies = [ - "futures 0.1.31", - "log", - "try-lock", -] - [[package]] name = "want" version = "0.3.0" @@ -11227,9 +12161,9 @@ checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f" [[package]] name = "wasm-bindgen" -version = "0.2.73" +version = "0.2.77" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83240549659d187488f91f33c0f8547cbfef0b2088bc470c116d1d260ef623d9" +checksum = "5e68338db6becec24d3c7977b5bf8a48be992c934b5d07177e3931f5dc9b076c" dependencies = [ "cfg-if 1.0.0", "serde", @@ -11239,9 +12173,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.73" +version = "0.2.77" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae70622411ca953215ca6d06d3ebeb1e915f0f6613e3b495122878d7ebec7dae" +checksum = "f34c405b4f0658583dba0c1c7c9b694f3cac32655db463b56c254a1c75269523" dependencies = [ "bumpalo", "lazy_static", @@ -11254,9 +12188,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.20" +version = "0.4.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3de431a2910c86679c34283a33f66f4e4abd7e0aec27b6669060148872aadf94" +checksum = "a87d738d4abc4cf22f6eb142f5b9a81301331ee3c767f2fef2fda4e325492060" dependencies = [ "cfg-if 1.0.0", "js-sys", @@ -11266,9 +12200,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.73" +version = "0.2.77" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e734d91443f177bfdb41969de821e15c516931c3c3db3d318fa1b68975d0f6f" +checksum = "b9d5a6580be83b19dc570a8f9c324251687ab2184e57086f71625feb57ec77c8" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -11276,9 +12210,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.73" +version = "0.2.77" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d53739ff08c8a68b0fdbcd54c372b8ab800b1449ab3c9d706503bc7dd1621b2c" +checksum = "e3775a030dc6f5a0afd8a84981a21cc92a781eb429acef9ecce476d0c9113e92" dependencies = [ "proc-macro2", "quote", @@ -11289,9 +12223,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.73" +version = "0.2.77" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9a543ae66aa233d14bb765ed9af4a33e81b8b58d1584cf1b47ff8cd0b9e4489" +checksum = "c279e376c7a8e8752a8f1eaa35b7b0bee6bb9fb0cdacfa97cc3f1f289c87e2b4" [[package]] name = "wasm-gc-api" @@ -11310,9 +12244,9 @@ version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "be0ecb0db480561e9a7642b5d3e4187c128914e58aa84330b9493e3eb68c5e7f" dependencies = [ - "futures 0.3.15", + "futures 0.3.17", "js-sys", - "parking_lot 0.11.1", + "parking_lot 0.11.2", "pin-utils", "wasm-bindgen", "wasm-bindgen-futures", @@ -11364,12 +12298,12 @@ dependencies = [ "lazy_static", "libc", "log", - "paste", + "paste 1.0.5", "psm", "region", "rustc-demangle", "serde", - "smallvec 1.6.1", + "smallvec", "target-lexicon", "wasmparser", "wasmtime-cache", @@ -11395,7 +12329,7 @@ dependencies = [ "libc", "log", "serde", - "sha2 0.9.3", + "sha2 0.9.8", "toml", "winapi 0.3.9", "zstd", @@ -11529,9 +12463,9 @@ dependencies = [ "libc", "log", "mach", - "memoffset 0.6.1", + "memoffset", "more-asserts", - "rand 0.8.3", + "rand 0.8.4", "region", "thiserror", "wasmtime-environ", @@ -11540,9 +12474,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.47" +version = "0.3.54" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c40dc691fc48003eba817c38da7113c15698142da971298003cac3ef175680b3" +checksum = "0a84d70d1ec7d2da2d26a5bd78f4bca1b8c3254805363ce743b7a05bc30d195a" dependencies = [ "js-sys", "wasm-bindgen", @@ -11555,18 +12489,18 @@ source = "git+https://github.com/svyatonik/rust-web3.git?branch=bump-deps#117bad dependencies = [ "arrayvec 0.5.2", "base64 0.13.0", - "bytes 1.0.1", + "bytes 1.1.0", "derive_more", "ethabi", "ethereum-types", - "futures 0.3.15", + "futures 0.3.17", "futures-timer 3.0.2", "headers", "hex", - "jsonrpc-core 17.0.0", + "jsonrpc-core 17.1.0", "log", - "parking_lot 0.11.1", - "pin-project 1.0.7", + "parking_lot 0.11.2", + "pin-project 1.0.8", "reqwest", "rlp", "secp256k1", @@ -11574,10 +12508,10 @@ dependencies = [ "serde_json", "soketto 0.5.0", "tiny-keccak", - "tokio 1.8.1", + "tokio", "tokio-stream", - "tokio-util 0.6.7", - "url 2.2.1", + "tokio-util", + "url 2.2.2", "web3-async-native-tls", ] @@ -11589,8 +12523,8 @@ checksum = "1f6d8d1636b2627fe63518d5a9b38a569405d9c9bc665c43c9c341de57227ebb" dependencies = [ "native-tls", "thiserror", - "tokio 1.8.1", - "url 2.2.1", + "tokio", + "url 2.2.2", ] [[package]] @@ -11605,30 +12539,31 @@ dependencies = [ [[package]] name = "webpki-roots" -version = "0.21.0" +version = "0.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82015b7e0b8bad8185994674a13a93306bea76cf5a16c5a181382fd3a5ec2376" +checksum = "aabe153544e473b775453675851ecc86863d2a81d786d741f6b76778f2a48940" dependencies = [ "webpki", ] [[package]] -name = "wepoll-sys" -version = "3.0.1" +name = "wepoll-ffi" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fcb14dea929042224824779fbc82d9fab8d2e6d3cbc0ac404de8edf489e77ff" +checksum = "d743fdedc5c64377b5fc2bc036b01c7fd642205a0d96356034ae3404d49eb7fb" dependencies = [ "cc", ] [[package]] name = "which" -version = "4.0.2" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87c14ef7e1b8b8ecfc75d5eca37949410046e66f15d185c01d70824f1f8111ef" +checksum = "ea187a8ef279bc014ec368c27a920da2024d2a711109bfbe3440585d5cf27ad9" dependencies = [ + "either", + "lazy_static", "libc", - "thiserror", ] [[package]] @@ -11716,30 +12651,50 @@ checksum = "85e60b0d1b5f99db2556934e21937020776a5d31520bf169e851ac44e6420214" [[package]] name = "x25519-dalek" -version = "1.1.0" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc614d95359fd7afc321b66d2107ede58b246b844cf5d8a0adcca413e439f088" +checksum = "5a0c105152107e3b96f6a00a65e86ce82d9b125230e1c4302940eca58ff71f4f" dependencies = [ - "curve25519-dalek 3.0.2", + "curve25519-dalek 3.2.0", "rand_core 0.5.1", "zeroize", ] [[package]] name = "xcm" -version = "0.9.8" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ "derivative", "impl-trait-for-tuples", "log", "parity-scale-codec", + "xcm-procedural", +] + +[[package]] +name = "xcm-builder" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" +dependencies = [ + "frame-support", + "frame-system", + "log", + "pallet-transaction-payment", + "parity-scale-codec", + "polkadot-parachain", + "sp-arithmetic", + "sp-io", + "sp-runtime", + "sp-std", + "xcm", + "xcm-executor", ] [[package]] name = "xcm-executor" -version = "0.9.8" -source = "git+https://github.com/paritytech/polkadot?branch=master#2bad8079a73dc92d83bc3c0e5d81de388d36cf24" +version = "0.9.9" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" dependencies = [ "frame-support", "impl-trait-for-tuples", @@ -11753,6 +12708,16 @@ dependencies = [ "xcm", ] +[[package]] +name = "xcm-procedural" +version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot?branch=master#48122d0220555bfd59d46e2971522cc4e7c9edf9" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "yaml-rust" version = "0.3.5" @@ -11765,28 +12730,28 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e7d9028f208dd5e63c614be69f115c1b53cacc1111437d4c765185856666c107" dependencies = [ - "futures 0.3.15", + "futures 0.3.17", "log", "nohash-hasher", - "parking_lot 0.11.1", - "rand 0.8.3", + "parking_lot 0.11.2", + "rand 0.8.4", "static_assertions", ] [[package]] name = "zeroize" -version = "1.2.0" +version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81a974bcdd357f0dca4d41677db03436324d45a4c9ed2d0b873a5a360ce41c36" +checksum = "377db0846015f7ae377174787dd452e1c5f5a9050bc6f954911d01f116daa0cd" dependencies = [ "zeroize_derive", ] [[package]] name = "zeroize_derive" -version = "1.0.1" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3f369ddb18862aba61aa49bf31e74d29f0f162dec753063200e1dc084345d16" +checksum = "a2c1e130bebaeab2f23886bf9acbaca14b092408c452543c857f66399cd6dab1" dependencies = [ "proc-macro2", "quote", diff --git a/bin/millau/node/Cargo.toml b/bin/millau/node/Cargo.toml index 18d301d354..3307d6031d 100644 --- a/bin/millau/node/Cargo.toml +++ b/bin/millau/node/Cargo.toml @@ -10,7 +10,7 @@ repository = "https://github.com/paritytech/parity-bridges-common/" license = "GPL-3.0-or-later WITH Classpath-exception-2.0" [dependencies] -jsonrpc-core = "15.1.0" +jsonrpc-core = "18.0" structopt = "0.3.21" serde_json = "1.0.59" diff --git a/bin/millau/node/src/command.rs b/bin/millau/node/src/command.rs index d73f9b1ac9..61786452e0 100644 --- a/bin/millau/node/src/command.rs +++ b/bin/millau/node/src/command.rs @@ -79,7 +79,7 @@ pub fn run() -> sc_cli::Result<()> { if cfg!(feature = "runtime-benchmarks") { let runner = cli.create_runner(cmd)?; - runner.sync_run(|config| cmd.run::(config)) + runner.sync_run(|config| cmd.run::(config)) } else { println!( "Benchmarking wasn't enabled when building the node. \ @@ -156,7 +156,7 @@ pub fn run() -> sc_cli::Result<()> { } Some(Subcommand::Inspect(cmd)) => { let runner = cli.create_runner(cmd)?; - runner.sync_run(|config| cmd.run::(config)) + runner.sync_run(|config| cmd.run::(config)) } None => { let runner = cli.create_runner(&cli.run)?; diff --git a/bin/millau/node/src/service.rs b/bin/millau/node/src/service.rs index 2373d0fbdc..3e8d16f596 100644 --- a/bin/millau/node/src/service.rs +++ b/bin/millau/node/src/service.rs @@ -31,8 +31,7 @@ use millau_runtime::{self, opaque::Block, RuntimeApi}; use sc_client_api::{ExecutorProvider, RemoteBackend}; use sc_consensus_aura::{ImportQueueParams, SlotProportion, StartAuraParams}; -use sc_executor::native_executor_instance; -pub use sc_executor::NativeExecutor; +pub use sc_executor::NativeElseWasmExecutor; use sc_keystore::LocalKeystore; use sc_service::{error::Error as ServiceError, Configuration, TaskManager}; @@ -41,15 +40,24 @@ use sp_consensus::SlotData; use sp_consensus_aura::sr25519::AuthorityPair as AuraPair; use std::{sync::Arc, time::Duration}; +type Executor = NativeElseWasmExecutor; + // Our native executor instance. -native_executor_instance!( - pub Executor, - millau_runtime::api::dispatch, - millau_runtime::native_version, - frame_benchmarking::benchmarking::HostFunctions, -); - -type FullClient = sc_service::TFullClient; +pub struct ExecutorDispatch; + +impl sc_executor::NativeExecutionDispatch for ExecutorDispatch { + type ExtendHostFunctions = frame_benchmarking::benchmarking::HostFunctions; + + fn dispatch(method: &str, data: &[u8]) -> Option> { + millau_runtime::api::dispatch(method, data) + } + + fn native_version() -> sc_executor::NativeVersion { + millau_runtime::native_version() + } +} + +type FullClient = sc_service::TFullClient>; type FullBackend = sc_service::TFullBackend; type FullSelectChain = sc_consensus::LongestChain; @@ -61,7 +69,7 @@ pub fn new_partial( FullClient, FullBackend, FullSelectChain, - sp_consensus::DefaultImportQueue, + sc_consensus::DefaultImportQueue, sc_transaction_pool::FullPool, ( sc_finality_grandpa::GrandpaBlockImport, @@ -86,9 +94,16 @@ pub fn new_partial( }) .transpose()?; + let executor = NativeElseWasmExecutor::::new( + config.wasm_method, + config.default_heap_pages, + config.max_runtime_instances, + ); + let (client, backend, keystore_container, task_manager) = sc_service::new_full_parts::( config, telemetry.as_ref().map(|(_, telemetry)| telemetry.handle()), + executor, )?; let client = Arc::new(client); @@ -185,6 +200,10 @@ pub fn new_full(mut config: Configuration) -> Result .network .extra_sets .push(sc_finality_grandpa::grandpa_peers_set_config()); + let warp_sync = Arc::new(sc_finality_grandpa::warp_proof::NetworkProvider::new( + backend.clone(), + grandpa_link.shared_authority_set().clone(), + )); let (network, system_rpc_tx, network_starter) = sc_service::build_network(sc_service::BuildNetworkParams { config: &config, @@ -194,6 +213,7 @@ pub fn new_full(mut config: Configuration) -> Result import_queue, on_demand: None, block_announce_validator_builder: None, + warp_sync: Some(warp_sync), })?; if config.offchain_worker.enabled { @@ -244,7 +264,7 @@ pub fn new_full(mut config: Configuration) -> Result subscription_executor, finality_proof_provider.clone(), ))); - io + Ok(io) }) }; @@ -369,10 +389,17 @@ pub fn new_light(mut config: Configuration) -> Result }) .transpose()?; + let executor = NativeElseWasmExecutor::::new( + config.wasm_method, + config.default_heap_pages, + config.max_runtime_instances, + ); + let (client, backend, keystore_container, mut task_manager, on_demand) = sc_service::new_light_parts::( &config, telemetry.as_ref().map(|(_, telemetry)| telemetry.handle()), + executor, )?; let mut telemetry = telemetry.map(|(worker, telemetry)| { @@ -425,6 +452,11 @@ pub fn new_light(mut config: Configuration) -> Result telemetry: telemetry.as_ref().map(|x| x.handle()), })?; + let warp_sync = Arc::new(sc_finality_grandpa::warp_proof::NetworkProvider::new( + backend.clone(), + grandpa_link.shared_authority_set().clone(), + )); + let (network, system_rpc_tx, network_starter) = sc_service::build_network(sc_service::BuildNetworkParams { config: &config, client: client.clone(), @@ -433,6 +465,7 @@ pub fn new_light(mut config: Configuration) -> Result import_queue, on_demand: Some(on_demand.clone()), block_announce_validator_builder: None, + warp_sync: Some(warp_sync), })?; if config.offchain_worker.enabled { @@ -464,7 +497,7 @@ pub fn new_light(mut config: Configuration) -> Result transaction_pool, task_manager: &mut task_manager, on_demand: Some(on_demand), - rpc_extensions_builder: Box::new(|_, _| ()), + rpc_extensions_builder: Box::new(|_, _| Ok(())), config, client, keystore: keystore_container.sync_keystore(), diff --git a/bin/millau/runtime/Cargo.toml b/bin/millau/runtime/Cargo.toml index 271ff3cc98..68d10168e4 100644 --- a/bin/millau/runtime/Cargo.toml +++ b/bin/millau/runtime/Cargo.toml @@ -9,7 +9,7 @@ license = "GPL-3.0-or-later WITH Classpath-exception-2.0" [dependencies] codec = { package = "parity-scale-codec", version = "2.2.0", default-features = false, features = ["derive"] } -serde = { version = "1.0.124", optional = true, features = ["derive"] } +serde = { version = "1.0", optional = true, features = ["derive"] } # Bridge dependencies diff --git a/bin/millau/runtime/src/lib.rs b/bin/millau/runtime/src/lib.rs index 3aa42ef8bd..ce3ca28d39 100644 --- a/bin/millau/runtime/src/lib.rs +++ b/bin/millau/runtime/src/lib.rs @@ -156,7 +156,7 @@ parameter_types! { impl frame_system::Config for Runtime { /// The basic call filter to use in dispatchable. - type BaseCallFilter = (); + type BaseCallFilter = frame_support::traits::Everything; /// The identifier used to distinguish between accounts. type AccountId = AccountId; /// The aggregated dispatch type that is available for extrinsics. @@ -206,14 +206,20 @@ impl frame_system::Config for Runtime { impl pallet_randomness_collective_flip::Config for Runtime {} +parameter_types! { + pub const MaxAuthorities: u32 = 10; +} + impl pallet_aura::Config for Runtime { type AuthorityId = AuraId; + type MaxAuthorities = MaxAuthorities; + type DisabledValidators = (); } impl pallet_bridge_dispatch::Config for Runtime { type Event = Event; type BridgeMessageId = (bp_messages::LaneId, bp_messages::MessageNonce); type Call = Call; - type CallFilter = (); + type CallFilter = frame_support::traits::Everything; type EncodedCall = crate::rialto_messages::FromRialtoEncodedCall; type SourceChainAccountId = bp_rialto::AccountId; type TargetChainAccountPublic = MultiSigner; @@ -555,7 +561,7 @@ impl_runtime_apis! { } fn authorities() -> Vec { - Aura::authorities() + Aura::authorities().to_vec() } } @@ -584,6 +590,10 @@ impl_runtime_apis! { } impl fg_primitives::GrandpaApi for Runtime { + fn current_set_id() -> fg_primitives::SetId { + Grandpa::current_set_id() + } + fn grandpa_authorities() -> GrandpaAuthorityList { Grandpa::grandpa_authorities() } diff --git a/bin/rialto-parachain/node/Cargo.toml b/bin/rialto-parachain/node/Cargo.toml new file mode 100644 index 0000000000..8adc998e47 --- /dev/null +++ b/bin/rialto-parachain/node/Cargo.toml @@ -0,0 +1,89 @@ +[package] +name = "rialto-parachain-collator" +version = "0.1.0" +authors = ["Parity Technologies "] +edition = "2018" +homepage = "https://substrate.dev" +repository = "https://github.com/paritytech/parity-bridges-common/" +license = "GPL-3.0-or-later WITH Classpath-exception-2.0" + +[build-dependencies] +substrate-build-script-utils = { git = "https://github.com/paritytech/substrate", branch = "master" } + +[[bin]] +name = 'rialto-parachain-collator' + +[features] +default = [] +runtime-benchmarks = ['rialto-parachain-runtime/runtime-benchmarks'] + +[dependencies] +derive_more = '0.99.2' +log = '0.4.14' +codec = { package = 'parity-scale-codec', version = '2.0.0' } +structopt = '0.3.8' +serde = { version = '1.0', features = ['derive'] } +hex-literal = '0.3.1' + +# RPC related Dependencies +jsonrpc-core = '18.0' + +# Local Dependencies +rialto-parachain-runtime = { path = '../runtime' } + +# Substrate Dependencies +frame-benchmarking = { git = "https://github.com/paritytech/substrate", branch = "master" } +frame-benchmarking-cli = { git = "https://github.com/paritytech/substrate", branch = "master" } + +pallet-transaction-payment-rpc = { git = "https://github.com/paritytech/substrate", branch = "master" } + +substrate-frame-rpc-system = { git = "https://github.com/paritytech/substrate", branch = "master" } +substrate-prometheus-endpoint = { git = "https://github.com/paritytech/substrate", branch = "master" } + +## Substrate Client Dependencies +sc-basic-authorship = { git = "https://github.com/paritytech/substrate", branch = "master" } +sc-chain-spec = { git = "https://github.com/paritytech/substrate", branch = "master" } +sc-cli = { git = "https://github.com/paritytech/substrate", branch = "master" } +sc-client-api = { git = "https://github.com/paritytech/substrate", branch = "master" } +sc-consensus = { git = "https://github.com/paritytech/substrate", branch = "master" } +sc-executor = { git = "https://github.com/paritytech/substrate", branch = "master" } +sc-network = { git = "https://github.com/paritytech/substrate", branch = "master" } +sc-keystore = { git = "https://github.com/paritytech/substrate", branch = "master" } +sc-rpc = { git = "https://github.com/paritytech/substrate", branch = "master" } +sc-rpc-api = { git = "https://github.com/paritytech/substrate", branch = "master" } +sc-service = { git = "https://github.com/paritytech/substrate", branch = "master", features = ['wasmtime'] } +sc-telemetry = { git = "https://github.com/paritytech/substrate", branch = "master" } +sc-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "master" } +sc-tracing = { git = "https://github.com/paritytech/substrate", branch = "master" } + +## Substrate Primitive Dependencies +sp-api = { git = "https://github.com/paritytech/substrate", branch = "master" } +sp-block-builder = { git = "https://github.com/paritytech/substrate", branch = "master" } +sp-blockchain = { git = "https://github.com/paritytech/substrate", branch = "master" } +sp-consensus = { git = "https://github.com/paritytech/substrate", branch = "master" } +sp-consensus-aura = { git = "https://github.com/paritytech/substrate", branch = "master" } +sp-core = { git = "https://github.com/paritytech/substrate", branch = "master" } +sp-inherents = { git = "https://github.com/paritytech/substrate", branch = "master" } +sp-keystore = { git = "https://github.com/paritytech/substrate", branch = "master" } +sp-offchain = { git = "https://github.com/paritytech/substrate", branch = "master" } +sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "master" } +sp-session = { git = "https://github.com/paritytech/substrate", branch = "master" } +sp-timestamp = { git = "https://github.com/paritytech/substrate", branch = "master" } +sp-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "master" } + +# Cumulus dependencies +cumulus-client-consensus-aura = { git = "https://github.com/paritytech/cumulus", branch = "master" } +cumulus-client-consensus-common = { git = "https://github.com/paritytech/cumulus", branch = "master" } +cumulus-client-collator = { git = "https://github.com/paritytech/cumulus", branch = "master" } +cumulus-client-cli = { git = "https://github.com/paritytech/cumulus", branch = "master" } +cumulus-client-network = { git = "https://github.com/paritytech/cumulus", branch = "master" } +cumulus-client-service = { git = "https://github.com/paritytech/cumulus", branch = "master" } +cumulus-primitives-core = { git = "https://github.com/paritytech/cumulus", branch = "master" } +cumulus-primitives-parachain-inherent = { git = "https://github.com/paritytech/cumulus", branch = "master" } + +# Polkadot dependencies +polkadot-cli = { git = "https://github.com/paritytech/polkadot", branch = "master" } +polkadot-parachain = { git = "https://github.com/paritytech/polkadot", branch = "master" } +polkadot-primitives = { git = "https://github.com/paritytech/polkadot", branch = "master" } +polkadot-service = { git = "https://github.com/paritytech/polkadot", branch = "master" } +polkadot-test-service = { git = "https://github.com/paritytech/polkadot", branch = "master" } \ No newline at end of file diff --git a/bin/rialto-parachain/node/build.rs b/bin/rialto-parachain/node/build.rs new file mode 100644 index 0000000000..8ba8a31e9a --- /dev/null +++ b/bin/rialto-parachain/node/build.rs @@ -0,0 +1,22 @@ +// Copyright 2019-2021 Parity Technologies (UK) Ltd. +// This file is part of Parity Bridges Common. + +// Parity Bridges Common is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Parity Bridges Common is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Parity Bridges Common. If not, see . + +use substrate_build_script_utils::{generate_cargo_keys, rerun_if_git_head_changed}; + +fn main() { + generate_cargo_keys(); + rerun_if_git_head_changed(); +} diff --git a/bin/rialto-parachain/node/src/chain_spec.rs b/bin/rialto-parachain/node/src/chain_spec.rs new file mode 100644 index 0000000000..728c4a0a8e --- /dev/null +++ b/bin/rialto-parachain/node/src/chain_spec.rs @@ -0,0 +1,166 @@ +// Copyright 2020-2021 Parity Technologies (UK) Ltd. +// This file is part of Parity Bridges Common. + +// Parity Bridges Common is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Parity Bridges Common is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Parity Bridges Common. If not, see . + +use cumulus_primitives_core::ParaId; +use rialto_parachain_runtime::{AccountId, AuraId, Signature}; +use sc_chain_spec::{ChainSpecExtension, ChainSpecGroup}; +use sc_service::ChainType; +use serde::{Deserialize, Serialize}; +use sp_core::{sr25519, Pair, Public}; +use sp_runtime::traits::{IdentifyAccount, Verify}; + +/// Specialized `ChainSpec` for the normal parachain runtime. +pub type ChainSpec = sc_service::GenericChainSpec; + +/// Helper function to generate a crypto pair from seed +pub fn get_from_seed(seed: &str) -> ::Public { + TPublic::Pair::from_string(&format!("//{}", seed), None) + .expect("static values are valid; qed") + .public() +} + +/// The extensions for the [`ChainSpec`]. +#[derive(Debug, Clone, PartialEq, Serialize, Deserialize, ChainSpecGroup, ChainSpecExtension)] +#[serde(deny_unknown_fields)] +pub struct Extensions { + /// The relay chain of the Parachain. + pub relay_chain: String, + /// The id of the Parachain. + pub para_id: u32, +} + +impl Extensions { + /// Try to get the extension from the given `ChainSpec`. + pub fn try_get(chain_spec: &dyn sc_service::ChainSpec) -> Option<&Self> { + sc_chain_spec::get_extension(chain_spec.extensions()) + } +} + +type AccountPublic = ::Signer; + +/// Helper function to generate an account ID from seed +pub fn get_account_id_from_seed(seed: &str) -> AccountId +where + AccountPublic: From<::Public>, +{ + AccountPublic::from(get_from_seed::(seed)).into_account() +} + +pub fn development_config(id: ParaId) -> ChainSpec { + // Give your base currency a unit name and decimal places + let mut properties = sc_chain_spec::Properties::new(); + properties.insert("tokenSymbol".into(), "UNIT".into()); + properties.insert("tokenDecimals".into(), 12.into()); + + ChainSpec::from_genesis( + // Name + "Development", + // ID + "dev", + ChainType::Local, + move || { + testnet_genesis( + get_account_id_from_seed::("Alice"), + vec![get_from_seed::("Alice"), get_from_seed::("Bob")], + vec![ + get_account_id_from_seed::("Alice"), + get_account_id_from_seed::("Bob"), + get_account_id_from_seed::("Alice//stash"), + get_account_id_from_seed::("Bob//stash"), + ], + id, + ) + }, + vec![], + None, + None, + None, + Extensions { + relay_chain: "rococo-local".into(), // You MUST set this to the correct network! + para_id: id.into(), + }, + ) +} + +pub fn local_testnet_config(id: ParaId) -> ChainSpec { + // Give your base currency a unit name and decimal places + let mut properties = sc_chain_spec::Properties::new(); + properties.insert("tokenSymbol".into(), "UNIT".into()); + properties.insert("tokenDecimals".into(), 12.into()); + + ChainSpec::from_genesis( + // Name + "Local Testnet", + // ID + "local_testnet", + ChainType::Local, + move || { + testnet_genesis( + get_account_id_from_seed::("Alice"), + vec![get_from_seed::("Alice"), get_from_seed::("Bob")], + vec![ + get_account_id_from_seed::("Alice"), + get_account_id_from_seed::("Bob"), + get_account_id_from_seed::("Charlie"), + get_account_id_from_seed::("Dave"), + get_account_id_from_seed::("Eve"), + get_account_id_from_seed::("Ferdie"), + get_account_id_from_seed::("Alice//stash"), + get_account_id_from_seed::("Bob//stash"), + get_account_id_from_seed::("Charlie//stash"), + get_account_id_from_seed::("Dave//stash"), + get_account_id_from_seed::("Eve//stash"), + get_account_id_from_seed::("Ferdie//stash"), + ], + id, + ) + }, + Vec::new(), + None, + None, + None, + Extensions { + relay_chain: "rococo-local".into(), // You MUST set this to the correct network! + para_id: id.into(), + }, + ) +} + +fn testnet_genesis( + root_key: AccountId, + initial_authorities: Vec, + endowed_accounts: Vec, + id: ParaId, +) -> rialto_parachain_runtime::GenesisConfig { + rialto_parachain_runtime::GenesisConfig { + system: rialto_parachain_runtime::SystemConfig { + code: rialto_parachain_runtime::WASM_BINARY + .expect("WASM binary was not build, please build it!") + .to_vec(), + changes_trie_config: Default::default(), + }, + balances: rialto_parachain_runtime::BalancesConfig { + balances: endowed_accounts.iter().cloned().map(|k| (k, 1 << 60)).collect(), + }, + sudo: rialto_parachain_runtime::SudoConfig { key: root_key }, + parachain_info: rialto_parachain_runtime::ParachainInfoConfig { parachain_id: id }, + aura: rialto_parachain_runtime::AuraConfig { + authorities: initial_authorities, + }, + aura_ext: Default::default(), + // parachain_system: Default::default(), + } +} diff --git a/bin/rialto-parachain/node/src/cli.rs b/bin/rialto-parachain/node/src/cli.rs new file mode 100644 index 0000000000..865d8eb92b --- /dev/null +++ b/bin/rialto-parachain/node/src/cli.rs @@ -0,0 +1,146 @@ +// Copyright 2020-2021 Parity Technologies (UK) Ltd. +// This file is part of Parity Bridges Common. + +// Parity Bridges Common is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Parity Bridges Common is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Parity Bridges Common. If not, see . + +use crate::chain_spec; +use cumulus_client_cli; +use sc_cli; +use std::path::PathBuf; +use structopt::StructOpt; + +/// Sub-commands supported by the collator. +#[derive(Debug, StructOpt)] +pub enum Subcommand { + /// Export the genesis state of the parachain. + #[structopt(name = "export-genesis-state")] + ExportGenesisState(ExportGenesisStateCommand), + + /// Export the genesis wasm of the parachain. + #[structopt(name = "export-genesis-wasm")] + ExportGenesisWasm(ExportGenesisWasmCommand), + + /// Build a chain specification. + BuildSpec(sc_cli::BuildSpecCmd), + + /// Validate blocks. + CheckBlock(sc_cli::CheckBlockCmd), + + /// Export blocks. + ExportBlocks(sc_cli::ExportBlocksCmd), + + /// Export the state of a given block into a chain spec. + ExportState(sc_cli::ExportStateCmd), + + /// Import blocks. + ImportBlocks(sc_cli::ImportBlocksCmd), + + /// Remove the whole chain. + PurgeChain(cumulus_client_cli::PurgeChainCmd), + + /// Revert the chain to a previous state. + Revert(sc_cli::RevertCmd), + + /// The custom benchmark subcommmand benchmarking runtime pallets. + #[structopt(name = "benchmark", about = "Benchmark runtime pallets.")] + Benchmark(frame_benchmarking_cli::BenchmarkCmd), +} + +/// Command for exporting the genesis state of the parachain +#[derive(Debug, StructOpt)] +pub struct ExportGenesisStateCommand { + /// Output file name or stdout if unspecified. + #[structopt(parse(from_os_str))] + pub output: Option, + + /// Id of the parachain this state is for. + /// + /// Default: 100 + #[structopt(long, conflicts_with = "chain")] + pub parachain_id: Option, + + /// Write output in binary. Default is to write in hex. + #[structopt(short, long)] + pub raw: bool, + + /// The name of the chain for that the genesis state should be exported. + #[structopt(long, conflicts_with = "parachain-id")] + pub chain: Option, +} + +/// Command for exporting the genesis wasm file. +#[derive(Debug, StructOpt)] +pub struct ExportGenesisWasmCommand { + /// Output file name or stdout if unspecified. + #[structopt(parse(from_os_str))] + pub output: Option, + + /// Write output in binary. Default is to write in hex. + #[structopt(short, long)] + pub raw: bool, + + /// The name of the chain for that the genesis wasm file should be exported. + #[structopt(long)] + pub chain: Option, +} + +#[derive(Debug, StructOpt)] +#[structopt(settings = &[ + structopt::clap::AppSettings::GlobalVersion, + structopt::clap::AppSettings::ArgsNegateSubcommands, + structopt::clap::AppSettings::SubcommandsNegateReqs, +])] +pub struct Cli { + #[structopt(subcommand)] + pub subcommand: Option, + + #[structopt(flatten)] + pub run: cumulus_client_cli::RunCmd, + + /// Relaychain arguments + #[structopt(raw = true)] + pub relaychain_args: Vec, +} + +#[derive(Debug)] +pub struct RelayChainCli { + /// The actual relay chain cli object. + pub base: polkadot_cli::RunCmd, + + /// Optional chain id that should be passed to the relay chain. + pub chain_id: Option, + + /// The base path that should be used by the relay chain. + pub base_path: Option, +} + +impl RelayChainCli { + /// Parse the relay chain CLI parameters using the para chain `Configuration`. + pub fn new<'a>( + para_config: &sc_service::Configuration, + relay_chain_args: impl Iterator, + ) -> Self { + let extension = chain_spec::Extensions::try_get(&*para_config.chain_spec); + let chain_id = extension.map(|e| e.relay_chain.clone()); + let base_path = para_config + .base_path + .as_ref() + .map(|x| x.path().join("rialto-bridge-node")); + Self { + base_path, + chain_id, + base: polkadot_cli::RunCmd::from_iter(relay_chain_args), + } + } +} diff --git a/bin/rialto-parachain/node/src/command.rs b/bin/rialto-parachain/node/src/command.rs new file mode 100644 index 0000000000..a37673a5b9 --- /dev/null +++ b/bin/rialto-parachain/node/src/command.rs @@ -0,0 +1,414 @@ +// Copyright 2020-2021 Parity Technologies (UK) Ltd. +// This file is part of Parity Bridges Common. + +// Parity Bridges Common is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Parity Bridges Common is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Parity Bridges Common. If not, see . + +use crate::{ + chain_spec, + cli::{Cli, RelayChainCli, Subcommand}, + service::{new_partial, ParachainRuntimeExecutor}, +}; +use codec::Encode; +use cumulus_client_service::genesis::generate_genesis_block; +use cumulus_primitives_core::ParaId; +use log::info; +use polkadot_parachain::primitives::AccountIdConversion; +use rialto_parachain_runtime::{Block, RuntimeApi}; +use sc_cli::{ + ChainSpec, CliConfiguration, DefaultConfigurationValues, ImportParams, KeystoreParams, NetworkParams, Result, + RuntimeVersion, SharedParams, SubstrateCli, +}; +use sc_service::config::{BasePath, PrometheusConfig}; +use sp_core::hexdisplay::HexDisplay; +use sp_runtime::traits::Block as BlockT; +use std::{io::Write, net::SocketAddr}; + +fn load_spec(id: &str, para_id: ParaId) -> std::result::Result, String> { + Ok(match id { + "dev" => Box::new(chain_spec::development_config(para_id)), + "" | "local" => Box::new(chain_spec::local_testnet_config(para_id)), + path => Box::new(chain_spec::ChainSpec::from_json_file(std::path::PathBuf::from(path))?), + }) +} + +impl SubstrateCli for Cli { + fn impl_name() -> String { + "Parachain Collator Template".into() + } + + fn impl_version() -> String { + env!("SUBSTRATE_CLI_IMPL_VERSION").into() + } + + fn description() -> String { + format!( + "Parachain Collator Template\n\nThe command-line arguments provided first will be \ + passed to the parachain node, while the arguments provided after -- will be passed \ + to the relaychain node.\n\n\ + {} [parachain-args] -- [relaychain-args]", + Self::executable_name() + ) + } + + fn author() -> String { + env!("CARGO_PKG_AUTHORS").into() + } + + fn support_url() -> String { + "https://github.com/substrate-developer-hub/substrate-parachain-template/issues/new".into() + } + + fn copyright_start_year() -> i32 { + 2017 + } + + fn load_spec(&self, id: &str) -> std::result::Result, String> { + load_spec(id, self.run.parachain_id.unwrap_or(2000).into()) + } + + fn native_runtime_version(_: &Box) -> &'static RuntimeVersion { + &rialto_parachain_runtime::VERSION + } +} + +impl SubstrateCli for RelayChainCli { + fn impl_name() -> String { + "Parachain Collator Template".into() + } + + fn impl_version() -> String { + env!("SUBSTRATE_CLI_IMPL_VERSION").into() + } + + fn description() -> String { + "Parachain Collator Template\n\nThe command-line arguments provided first will be \ + passed to the parachain node, while the arguments provided after -- will be passed \ + to the relaychain node.\n\n\ + parachain-collator [parachain-args] -- [relaychain-args]" + .into() + } + + fn author() -> String { + env!("CARGO_PKG_AUTHORS").into() + } + + fn support_url() -> String { + "https://github.com/substrate-developer-hub/substrate-parachain-template/issues/new".into() + } + + fn copyright_start_year() -> i32 { + 2017 + } + + fn load_spec(&self, id: &str) -> std::result::Result, String> { + polkadot_cli::Cli::from_iter([RelayChainCli::executable_name().to_string()].iter()).load_spec(id) + } + + fn native_runtime_version(chain_spec: &Box) -> &'static RuntimeVersion { + polkadot_cli::Cli::native_runtime_version(chain_spec) + } +} + +fn extract_genesis_wasm(chain_spec: &Box) -> Result> { + let mut storage = chain_spec.build_storage()?; + + storage + .top + .remove(sp_core::storage::well_known_keys::CODE) + .ok_or_else(|| "Could not find wasm file in genesis state!".into()) +} + +macro_rules! construct_async_run { + (|$components:ident, $cli:ident, $cmd:ident, $config:ident| $( $code:tt )* ) => {{ + let runner = $cli.create_runner($cmd)?; + runner.async_run(|$config| { + let $components = new_partial::< + RuntimeApi, + ParachainRuntimeExecutor, + _ + >( + &$config, + crate::service::parachain_build_import_queue, + )?; + let task_manager = $components.task_manager; + { $( $code )* }.map(|v| (v, task_manager)) + }) + }} +} + +/// Parse command line arguments into service configuration. +pub fn run() -> Result<()> { + let cli = Cli::from_args(); + sp_core::crypto::set_default_ss58_version(sp_core::crypto::Ss58AddressFormat::Custom( + rialto_parachain_runtime::SS58Prefix::get() as u16, + )); + + match &cli.subcommand { + Some(Subcommand::BuildSpec(cmd)) => { + let runner = cli.create_runner(cmd)?; + runner.sync_run(|config| cmd.run(config.chain_spec, config.network)) + } + Some(Subcommand::CheckBlock(cmd)) => { + construct_async_run!(|components, cli, cmd, config| { + Ok(cmd.run(components.client, components.import_queue)) + }) + } + Some(Subcommand::ExportBlocks(cmd)) => { + construct_async_run!(|components, cli, cmd, config| Ok(cmd.run(components.client, config.database))) + } + Some(Subcommand::ExportState(cmd)) => { + construct_async_run!(|components, cli, cmd, config| Ok(cmd.run(components.client, config.chain_spec))) + } + Some(Subcommand::ImportBlocks(cmd)) => { + construct_async_run!(|components, cli, cmd, config| { + Ok(cmd.run(components.client, components.import_queue)) + }) + } + Some(Subcommand::PurgeChain(cmd)) => { + let runner = cli.create_runner(cmd)?; + + runner.sync_run(|config| { + let polkadot_cli = RelayChainCli::new( + &config, + [RelayChainCli::executable_name().to_string()] + .iter() + .chain(cli.relaychain_args.iter()), + ); + + let polkadot_config = + SubstrateCli::create_configuration(&polkadot_cli, &polkadot_cli, config.tokio_handle.clone()) + .map_err(|err| format!("Relay chain argument error: {}", err))?; + + cmd.run(config, polkadot_config) + }) + } + Some(Subcommand::Revert(cmd)) => { + construct_async_run!(|components, cli, cmd, config| Ok(cmd.run(components.client, components.backend))) + } + Some(Subcommand::ExportGenesisState(params)) => { + let mut builder = sc_cli::LoggerBuilder::new(""); + builder.with_profiling(sc_tracing::TracingReceiver::Log, ""); + let _ = builder.init(); + + let block: Block = generate_genesis_block(&load_spec( + ¶ms.chain.clone().unwrap_or_default(), + params.parachain_id.expect("Missing ParaId").into(), + )?)?; + let raw_header = block.header().encode(); + let output_buf = if params.raw { + raw_header + } else { + format!("0x{:?}", HexDisplay::from(&block.header().encode())).into_bytes() + }; + + if let Some(output) = ¶ms.output { + std::fs::write(output, output_buf)?; + } else { + std::io::stdout().write_all(&output_buf)?; + } + + Ok(()) + } + Some(Subcommand::ExportGenesisWasm(params)) => { + let mut builder = sc_cli::LoggerBuilder::new(""); + builder.with_profiling(sc_tracing::TracingReceiver::Log, ""); + let _ = builder.init(); + + let raw_wasm_blob = extract_genesis_wasm(&cli.load_spec(¶ms.chain.clone().unwrap_or_default())?)?; + let output_buf = if params.raw { + raw_wasm_blob + } else { + format!("0x{:?}", HexDisplay::from(&raw_wasm_blob)).into_bytes() + }; + + if let Some(output) = ¶ms.output { + std::fs::write(output, output_buf)?; + } else { + std::io::stdout().write_all(&output_buf)?; + } + + Ok(()) + } + Some(Subcommand::Benchmark(cmd)) => { + if cfg!(feature = "runtime-benchmarks") { + let runner = cli.create_runner(cmd)?; + + runner.sync_run(|config| cmd.run::(config)) + } else { + Err("Benchmarking wasn't enabled when building the node. \ + You can enable it with `--features runtime-benchmarks`." + .into()) + } + } + None => { + let runner = cli.create_runner(&cli.run.normalize())?; + + runner.run_node_until_exit(|config| async move { + let para_id = chain_spec::Extensions::try_get(&*config.chain_spec).map(|e| e.para_id); + + let polkadot_cli = RelayChainCli::new( + &config, + [RelayChainCli::executable_name().to_string()] + .iter() + .chain(cli.relaychain_args.iter()), + ); + + let id = ParaId::from(cli.run.parachain_id.or(para_id).expect("Missing ParaId")); + + let parachain_account = AccountIdConversion::::into_account(&id); + + let block: Block = generate_genesis_block(&config.chain_spec).map_err(|e| format!("{:?}", e))?; + let genesis_state = format!("0x{:?}", HexDisplay::from(&block.header().encode())); + + let polkadot_config = + SubstrateCli::create_configuration(&polkadot_cli, &polkadot_cli, config.tokio_handle.clone()) + .map_err(|err| format!("Relay chain argument error: {}", err))?; + + info!("Parachain id: {:?}", id); + info!("Parachain Account: {}", parachain_account); + info!("Parachain genesis state: {}", genesis_state); + info!( + "Is collating: {}", + if config.role.is_authority() { "yes" } else { "no" } + ); + + crate::service::start_node(config, polkadot_config, id) + .await + .map(|r| r.0) + .map_err(Into::into) + }) + } + } +} + +impl DefaultConfigurationValues for RelayChainCli { + fn p2p_listen_port() -> u16 { + 30334 + } + + fn rpc_ws_listen_port() -> u16 { + 9945 + } + + fn rpc_http_listen_port() -> u16 { + 9934 + } + + fn prometheus_listen_port() -> u16 { + 9616 + } +} + +impl CliConfiguration for RelayChainCli { + fn shared_params(&self) -> &SharedParams { + self.base.base.shared_params() + } + + fn import_params(&self) -> Option<&ImportParams> { + self.base.base.import_params() + } + + fn network_params(&self) -> Option<&NetworkParams> { + self.base.base.network_params() + } + + fn keystore_params(&self) -> Option<&KeystoreParams> { + self.base.base.keystore_params() + } + + fn base_path(&self) -> Result> { + Ok(self + .shared_params() + .base_path() + .or_else(|| self.base_path.clone().map(Into::into))) + } + + fn rpc_http(&self, default_listen_port: u16) -> Result> { + self.base.base.rpc_http(default_listen_port) + } + + fn rpc_ipc(&self) -> Result> { + self.base.base.rpc_ipc() + } + + fn rpc_ws(&self, default_listen_port: u16) -> Result> { + self.base.base.rpc_ws(default_listen_port) + } + + fn prometheus_config(&self, default_listen_port: u16) -> Result> { + self.base.base.prometheus_config(default_listen_port) + } + + fn init(&self) -> Result<()> { + unreachable!("PolkadotCli is never initialized; qed"); + } + + fn chain_id(&self, is_dev: bool) -> Result { + let chain_id = self.base.base.chain_id(is_dev)?; + + Ok(if chain_id.is_empty() { + self.chain_id.clone().unwrap_or_default() + } else { + chain_id + }) + } + + fn role(&self, is_dev: bool) -> Result { + self.base.base.role(is_dev) + } + + fn transaction_pool(&self) -> Result { + self.base.base.transaction_pool() + } + + fn state_cache_child_ratio(&self) -> Result> { + self.base.base.state_cache_child_ratio() + } + + fn rpc_methods(&self) -> Result { + self.base.base.rpc_methods() + } + + fn rpc_ws_max_connections(&self) -> Result> { + self.base.base.rpc_ws_max_connections() + } + + fn rpc_cors(&self, is_dev: bool) -> Result>> { + self.base.base.rpc_cors(is_dev) + } + + fn default_heap_pages(&self) -> Result> { + self.base.base.default_heap_pages() + } + + fn force_authoring(&self) -> Result { + self.base.base.force_authoring() + } + + fn disable_grandpa(&self) -> Result { + self.base.base.disable_grandpa() + } + + fn max_runtime_instances(&self) -> Result> { + self.base.base.max_runtime_instances() + } + + fn announce_block(&self) -> Result { + self.base.base.announce_block() + } + + fn telemetry_endpoints(&self, chain_spec: &Box) -> Result> { + self.base.base.telemetry_endpoints(chain_spec) + } +} diff --git a/bin/rialto-parachain/node/src/lib.rs b/bin/rialto-parachain/node/src/lib.rs new file mode 100644 index 0000000000..3ec291596b --- /dev/null +++ b/bin/rialto-parachain/node/src/lib.rs @@ -0,0 +1,18 @@ +// Copyright 2020-2021 Parity Technologies (UK) Ltd. +// This file is part of Parity Bridges Common. + +// Parity Bridges Common is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Parity Bridges Common is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Parity Bridges Common. If not, see . + +pub mod chain_spec; +pub mod service; diff --git a/bin/rialto-parachain/node/src/main.rs b/bin/rialto-parachain/node/src/main.rs new file mode 100644 index 0000000000..2b4e0b438d --- /dev/null +++ b/bin/rialto-parachain/node/src/main.rs @@ -0,0 +1,29 @@ +// Copyright 2020-2021 Parity Technologies (UK) Ltd. +// This file is part of Parity Bridges Common. + +// Parity Bridges Common is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Parity Bridges Common is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Parity Bridges Common. If not, see . + +//! Substrate Parachain Node Template CLI + +#![warn(missing_docs)] + +mod chain_spec; +#[macro_use] +mod service; +mod cli; +mod command; + +fn main() -> sc_cli::Result<()> { + command::run() +} diff --git a/bin/rialto-parachain/node/src/service.rs b/bin/rialto-parachain/node/src/service.rs new file mode 100644 index 0000000000..a812358edf --- /dev/null +++ b/bin/rialto-parachain/node/src/service.rs @@ -0,0 +1,461 @@ +// Copyright 2020-2021 Parity Technologies (UK) Ltd. +// This file is part of Parity Bridges Common. + +// Parity Bridges Common is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Parity Bridges Common is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Parity Bridges Common. If not, see . + +// std +use std::sync::Arc; + +// Local Runtime Types +use rialto_parachain_runtime::RuntimeApi; + +// Cumulus Imports +use cumulus_client_consensus_aura::{build_aura_consensus, BuildAuraConsensusParams, SlotProportion}; +use cumulus_client_consensus_common::ParachainConsensus; +use cumulus_client_network::build_block_announce_validator; +use cumulus_client_service::{ + prepare_node_config, start_collator, start_full_node, StartCollatorParams, StartFullNodeParams, +}; +use cumulus_primitives_core::ParaId; + +// Substrate Imports +use sc_client_api::ExecutorProvider; +use sc_executor::{NativeElseWasmExecutor, NativeExecutionDispatch}; +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::SlotData; +use sp_keystore::SyncCryptoStorePtr; +use sp_runtime::traits::BlakeTwo256; +use substrate_prometheus_endpoint::Registry; + +// Runtime type overrides +type BlockNumber = u32; +type Header = sp_runtime::generic::Header; +pub type Block = sp_runtime::generic::Block; +type Hash = sp_core::H256; + +pub type ParachainRuntimeExecutor = ExecutorDispatch; + +// Our native executor instance. +pub struct ExecutorDispatch; + +impl NativeExecutionDispatch for ExecutorDispatch { + type ExtendHostFunctions = frame_benchmarking::benchmarking::HostFunctions; + + fn dispatch(method: &str, data: &[u8]) -> Option> { + rialto_parachain_runtime::api::dispatch(method, data) + } + + fn native_version() -> sc_executor::NativeVersion { + rialto_parachain_runtime::native_version() + } +} + +/// Starts a `ServiceBuilder` for a full service. +/// +/// Use this macro if you don't actually need the full service, but just the builder in order to +/// be able to perform chain operations. +pub fn new_partial( + config: &Configuration, + build_import_queue: BIQ, +) -> Result< + PartialComponents< + TFullClient>, + TFullBackend, + (), + sc_consensus::DefaultImportQueue>>, + sc_transaction_pool::FullPool>>, + (Option, Option), + >, + sc_service::Error, +> +where + RuntimeApi: ConstructRuntimeApi>> + + Send + + Sync + + 'static, + RuntimeApi::RuntimeApi: sp_transaction_pool::runtime_api::TaggedTransactionQueue + + sp_api::Metadata + + sp_session::SessionKeys + + sp_api::ApiExt, Block>> + + sp_offchain::OffchainWorkerApi + + sp_block_builder::BlockBuilder, + sc_client_api::StateBackendFor, Block>: sp_api::StateBackend, + Executor: NativeExecutionDispatch + 'static, + BIQ: FnOnce( + Arc>>, + &Configuration, + Option, + &TaskManager, + ) -> Result< + sc_consensus::DefaultImportQueue>>, + sc_service::Error, + >, +{ + let telemetry = config + .telemetry_endpoints + .clone() + .filter(|x| !x.is_empty()) + .map(|endpoints| -> Result<_, sc_telemetry::Error> { + let worker = TelemetryWorker::new(16)?; + let telemetry = worker.handle().new_telemetry(endpoints); + Ok((worker, telemetry)) + }) + .transpose()?; + + let executor = sc_executor::NativeElseWasmExecutor::::new( + config.wasm_method, + config.default_heap_pages, + config.max_runtime_instances, + ); + + let (client, backend, keystore_container, task_manager) = sc_service::new_full_parts::( + &config, + telemetry.as_ref().map(|(_, telemetry)| telemetry.handle()), + executor, + )?; + let client = Arc::new(client); + + let telemetry_worker_handle = telemetry.as_ref().map(|(worker, _)| worker.handle()); + + let telemetry = telemetry.map(|(worker, telemetry)| { + task_manager.spawn_handle().spawn("telemetry", worker.run()); + telemetry + }); + + let transaction_pool = sc_transaction_pool::BasicPool::new_full( + config.transaction_pool.clone(), + config.role.is_authority().into(), + config.prometheus_registry(), + task_manager.spawn_essential_handle(), + client.clone(), + ); + + let import_queue = build_import_queue( + client.clone(), + config, + telemetry.as_ref().map(|telemetry| telemetry.handle()), + &task_manager, + )?; + + let params = PartialComponents { + backend, + client, + import_queue, + keystore_container, + task_manager, + transaction_pool, + select_chain: (), + other: (telemetry, telemetry_worker_handle), + }; + + Ok(params) +} + +/// Start a node with the given parachain `Configuration` and relay chain `Configuration`. +/// +/// 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( + 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>>, +)> +where + RuntimeApi: ConstructRuntimeApi>> + + Send + + Sync + + 'static, + RuntimeApi::RuntimeApi: sp_transaction_pool::runtime_api::TaggedTransactionQueue + + sp_api::Metadata + + sp_session::SessionKeys + + sp_api::ApiExt, Block>> + + sp_offchain::OffchainWorkerApi + + sp_block_builder::BlockBuilder + + cumulus_primitives_core::CollectCollationInfo, + sc_client_api::StateBackendFor, Block>: sp_api::StateBackend, + Executor: NativeExecutionDispatch + 'static, + RB: Fn( + Arc>>, + ) -> jsonrpc_core::IoHandler + + Send + + 'static, + BIQ: FnOnce( + Arc>>, + &Configuration, + Option, + &TaskManager, + ) -> Result< + sc_consensus::DefaultImportQueue>>, + sc_service::Error, + >, + BIC: FnOnce( + Arc>>, + Option<&Registry>, + Option, + &TaskManager, + &polkadot_service::NewFull, + Arc>>>, + Arc>, + SyncCryptoStorePtr, + bool, + ) -> Result>, sc_service::Error>, +{ + if matches!(parachain_config.role, Role::Light) { + return Err("Light client not supported!".into()); + } + + let parachain_config = prepare_node_config(parachain_config); + + let params = new_partial::(¶chain_config, build_import_queue)?; + let (mut telemetry, telemetry_worker_handle) = params.other; + + let relay_chain_full_node = + cumulus_client_service::build_polkadot_full_node(polkadot_config, telemetry_worker_handle).map_err( + |e| match e { + polkadot_service::Error::Sub(x) => x, + s => format!("{}", s).into(), + }, + )?; + + let client = params.client.clone(); + let backend = params.backend.clone(); + let block_announce_validator = build_block_announce_validator( + relay_chain_full_node.client.clone(), + id, + Box::new(relay_chain_full_node.network.clone()), + relay_chain_full_node.backend.clone(), + ); + + let force_authoring = parachain_config.force_authoring; + let validator = parachain_config.role.is_authority(); + let prometheus_registry = parachain_config.prometheus_registry().cloned(); + let transaction_pool = params.transaction_pool.clone(); + let mut task_manager = params.task_manager; + let import_queue = cumulus_client_service::SharedImportQueue::new(params.import_queue); + let (network, system_rpc_tx, start_network) = sc_service::build_network(sc_service::BuildNetworkParams { + config: ¶chain_config, + client: client.clone(), + transaction_pool: transaction_pool.clone(), + spawn_handle: task_manager.spawn_handle(), + 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 |_, _| Ok(rpc_ext_builder(rpc_client.clone()))); + + sc_service::spawn_tasks(sc_service::SpawnTasksParams { + on_demand: None, + remote_blockchain: None, + rpc_extensions_builder, + client: client.clone(), + transaction_pool: transaction_pool.clone(), + task_manager: &mut task_manager, + config: parachain_config, + keystore: params.keystore_container.sync_keystore(), + backend: backend.clone(), + network: network.clone(), + system_rpc_tx, + telemetry: telemetry.as_mut(), + })?; + + let announce_block = { + let network = network.clone(); + Arc::new(move |hash, data| network.announce_block(hash, data)) + }; + + if validator { + let parachain_consensus = build_consensus( + client.clone(), + prometheus_registry.as_ref(), + telemetry.as_ref().map(|t| t.handle()), + &task_manager, + &relay_chain_full_node, + transaction_pool, + network, + params.keystore_container.sync_keystore(), + force_authoring, + )?; + + let spawner = task_manager.spawn_handle(); + + let params = StartCollatorParams { + para_id: id, + block_status: client.clone(), + announce_block, + client: client.clone(), + task_manager: &mut task_manager, + relay_chain_full_node, + spawner, + parachain_consensus, + import_queue, + }; + + start_collator(params).await?; + } else { + let params = StartFullNodeParams { + client: client.clone(), + announce_block, + task_manager: &mut task_manager, + para_id: id, + relay_chain_full_node, + }; + + start_full_node(params)?; + } + + start_network.start_network(); + + Ok((task_manager, client)) +} + +/// Build the import queue for the the parachain runtime. +pub fn parachain_build_import_queue( + client: Arc>>, + config: &Configuration, + telemetry: Option, + task_manager: &TaskManager, +) -> Result< + sc_consensus::DefaultImportQueue< + Block, + TFullClient>, + >, + sc_service::Error, +> { + let slot_duration = cumulus_client_consensus_aura::slot_duration(&*client)?; + + cumulus_client_consensus_aura::import_queue::( + cumulus_client_consensus_aura::ImportQueueParams { + block_import: client.clone(), + client: client.clone(), + create_inherent_data_providers: move |_, _| async move { + let time = sp_timestamp::InherentDataProvider::from_system_time(); + + let slot = sp_consensus_aura::inherents::InherentDataProvider::from_timestamp_and_duration( + *time, + slot_duration.slot_duration(), + ); + + Ok((time, slot)) + }, + registry: config.prometheus_registry().clone(), + can_author_with: sp_consensus::CanAuthorWithNativeVersion::new(client.executor().clone()), + spawner: &task_manager.spawn_essential_handle(), + telemetry, + }, + ) + .map_err(Into::into) +} + +/// Start a normal parachain node. +pub async fn start_node( + parachain_config: Configuration, + polkadot_config: Configuration, + id: ParaId, +) -> sc_service::error::Result<( + TaskManager, + Arc>>, +)> { + start_node_impl::( + parachain_config, + polkadot_config, + id, + |_| Default::default(), + parachain_build_import_queue, + |client, + prometheus_registry, + telemetry, + task_manager, + relay_chain_node, + transaction_pool, + sync_oracle, + keystore, + force_authoring| { + let slot_duration = cumulus_client_consensus_aura::slot_duration(&*client)?; + + let proposer_factory = sc_basic_authorship::ProposerFactory::with_proof_recording( + task_manager.spawn_handle(), + client.clone(), + transaction_pool, + prometheus_registry.clone(), + telemetry.clone(), + ); + + let relay_chain_backend = relay_chain_node.backend.clone(); + let relay_chain_client = relay_chain_node.client.clone(); + Ok(build_aura_consensus::< + sp_consensus_aura::sr25519::AuthorityPair, + _, + _, + _, + _, + _, + _, + _, + _, + _, + >(BuildAuraConsensusParams { + proposer_factory, + create_inherent_data_providers: move |_, (relay_parent, validation_data)| { + let parachain_inherent = + cumulus_primitives_parachain_inherent::ParachainInherentData::create_at_with_client( + relay_parent, + &relay_chain_client, + &*relay_chain_backend, + &validation_data, + id, + ); + async move { + let time = sp_timestamp::InherentDataProvider::from_system_time(); + + let slot = sp_consensus_aura::inherents::InherentDataProvider::from_timestamp_and_duration( + *time, + slot_duration.slot_duration(), + ); + + let parachain_inherent = parachain_inherent.ok_or_else(|| { + Box::::from("Failed to create parachain inherent") + })?; + Ok((time, slot, parachain_inherent)) + } + }, + block_import: client.clone(), + relay_chain_client: relay_chain_node.client.clone(), + relay_chain_backend: relay_chain_node.backend.clone(), + para_client: client.clone(), + backoff_authoring_blocks: Option::<()>::None, + sync_oracle, + keystore, + force_authoring, + slot_duration, + // We got around 500ms for proposing + block_proposal_slot_portion: SlotProportion::new(1f32 / 24f32), + telemetry, + max_block_proposal_slot_portion: None, + })) + }, + ) + .await +} diff --git a/bin/rialto-parachain/runtime/Cargo.toml b/bin/rialto-parachain/runtime/Cargo.toml new file mode 100644 index 0000000000..09916f508b --- /dev/null +++ b/bin/rialto-parachain/runtime/Cargo.toml @@ -0,0 +1,115 @@ +[package] +name = "rialto-parachain-runtime" +version = "0.1.0" +authors = ["Parity Technologies "] +edition = "2018" +homepage = "https://substrate.dev" +repository = "https://github.com/paritytech/parity-bridges-common/" +license = "GPL-3.0-or-later WITH Classpath-exception-2.0" + +[build-dependencies] +substrate-wasm-builder = { git = "https://github.com/paritytech/substrate", branch = "master" } + +[dependencies] +codec = { package = 'parity-scale-codec', version = '2.0.0', default-features = false, features = ['derive']} +log = { version = "0.4.14", default-features = false } +serde = { version = '1.0', optional = true, features = ['derive'] } + +# Substrate Dependencies +## Substrate Primitive Dependencies +sp-api = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } +sp-block-builder = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } +sp-core = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } +sp-consensus-aura = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } +sp-inherents = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } +sp-io = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } +sp-offchain = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } +sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } +sp-session = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } +sp-std = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } +sp-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } +sp-version = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } + +## Substrate FRAME Dependencies +frame-executive = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } +frame-benchmarking = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false, optional = true } +frame-support = { git = "https://github.com/paritytech/substrate", default-features = false, branch = "master" } +frame-system = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } +frame-system-benchmarking = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false, optional = true } +frame-system-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } + +## Substrate Pallet Dependencies +pallet-aura = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } +pallet-balances = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } +pallet-randomness-collective-flip = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } +pallet-sudo = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } +pallet-timestamp = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } +pallet-transaction-payment = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } +pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", branch = "master", default-features = false } + +# Cumulus Dependencies +cumulus-pallet-aura-ext = { git = "https://github.com/paritytech/cumulus", branch = "master", default-features = false } +cumulus-pallet-parachain-system = { git = "https://github.com/paritytech/cumulus", branch = "master", default-features = false } +cumulus-pallet-dmp-queue = { git = "https://github.com/paritytech/cumulus", branch = "master", default-features = false } +cumulus-pallet-xcm = { git = "https://github.com/paritytech/cumulus", branch = "master", default-features = false } +cumulus-pallet-xcmp-queue = { git = "https://github.com/paritytech/cumulus", branch = "master", default-features = false } +cumulus-primitives-core = { git = "https://github.com/paritytech/cumulus", branch = "master", default-features = false } +cumulus-primitives-timestamp = { git = "https://github.com/paritytech/cumulus", branch = "master", default-features = false } +cumulus-primitives-utility = { git = "https://github.com/paritytech/cumulus", branch = "master", default-features = false } +parachain-info = { git = "https://github.com/paritytech/cumulus", branch = "master", default-features = false } + +# Polkadot Dependencies +polkadot-parachain = { git = "https://github.com/paritytech/polkadot", branch = "master", default-features = false } +xcm = { git = "https://github.com/paritytech/polkadot", branch = "master", default-features = false } +xcm-builder = { git = "https://github.com/paritytech/polkadot", branch = "master", default-features = false } +xcm-executor = { git = "https://github.com/paritytech/polkadot", branch = "master", default-features = false } +pallet-xcm = { git = "https://github.com/paritytech/polkadot", branch = "master", default-features = false } + +[features] +default = ['std'] +runtime-benchmarks = [ + 'sp-runtime/runtime-benchmarks', + 'frame-benchmarking', + 'frame-support/runtime-benchmarks', + 'frame-system-benchmarking', + 'frame-system/runtime-benchmarks', + 'pallet-balances/runtime-benchmarks', + 'pallet-timestamp/runtime-benchmarks', +] +std = [ + "codec/std", + "serde", + "log/std", + "sp-api/std", + "sp-std/std", + "sp-io/std", + "sp-core/std", + "sp-runtime/std", + "sp-version/std", + "sp-offchain/std", + "sp-session/std", + "sp-block-builder/std", + "sp-transaction-pool/std", + "sp-inherents/std", + "frame-support/std", + "frame-executive/std", + "frame-system/std", + "pallet-balances/std", + "pallet-randomness-collective-flip/std", + "pallet-timestamp/std", + "pallet-sudo/std", + "pallet-transaction-payment/std", + "parachain-info/std", + "cumulus-pallet-aura-ext/std", + "cumulus-pallet-parachain-system/std", + "cumulus-pallet-xcmp-queue/std", + "cumulus-pallet-xcm/std", + "cumulus-primitives-core/std", + "cumulus-primitives-timestamp/std", + "cumulus-primitives-utility/std", + "xcm/std", + "xcm-builder/std", + "xcm-executor/std", + "pallet-aura/std", + "sp-consensus-aura/std", +] diff --git a/bin/rialto-parachain/runtime/build.rs b/bin/rialto-parachain/runtime/build.rs new file mode 100644 index 0000000000..65095bd1b7 --- /dev/null +++ b/bin/rialto-parachain/runtime/build.rs @@ -0,0 +1,25 @@ +// Copyright 2019-2021 Parity Technologies (UK) Ltd. +// This file is part of Parity Bridges Common. + +// Parity Bridges Common is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Parity Bridges Common is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Parity Bridges Common. If not, see . + +use substrate_wasm_builder::WasmBuilder; + +fn main() { + WasmBuilder::new() + .with_current_project() + .export_heap_base() + .import_memory() + .build() +} diff --git a/bin/rialto-parachain/runtime/src/lib.rs b/bin/rialto-parachain/runtime/src/lib.rs new file mode 100644 index 0000000000..58f592bea8 --- /dev/null +++ b/bin/rialto-parachain/runtime/src/lib.rs @@ -0,0 +1,682 @@ +// Copyright 2019-2021 Parity Technologies (UK) Ltd. +// This file is part of Parity Bridges Common. + +// Parity Bridges Common is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Parity Bridges Common is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Parity Bridges Common. If not, see . + +//! The Rialto parachain runtime. This can be compiled with `#[no_std]`, ready for Wasm. +//! +//! Originally a copypaste of runtime from https://github.com/substrate-developer-hub/substrate-parachain-template. + +#![cfg_attr(not(feature = "std"), no_std)] +// `construct_runtime!` does a lot of recursion and requires us to increase the limit to 256. +#![recursion_limit = "256"] + +// Make the WASM binary available. +#[cfg(feature = "std")] +include!(concat!(env!("OUT_DIR"), "/wasm_binary.rs")); + +use sp_api::impl_runtime_apis; +use sp_core::{crypto::KeyTypeId, OpaqueMetadata}; +use sp_runtime::{ + create_runtime_str, generic, impl_opaque_keys, + traits::{AccountIdLookup, BlakeTwo256, Block as BlockT, IdentifyAccount, Verify}, + transaction_validity::{TransactionSource, TransactionValidity}, + ApplyExtrinsicResult, MultiSignature, +}; + +use sp_std::prelude::*; +#[cfg(feature = "std")] +use sp_version::NativeVersion; +use sp_version::RuntimeVersion; + +// A few exports that help ease life for downstream crates. +pub use frame_support::{ + construct_runtime, match_type, parameter_types, + traits::{Everything, IsInVec, Randomness}, + weights::{ + constants::{BlockExecutionWeight, ExtrinsicBaseWeight, RocksDbWeight, WEIGHT_PER_SECOND}, + DispatchClass, IdentityFee, Weight, + }, + StorageValue, +}; +use frame_system::limits::{BlockLength, BlockWeights}; +pub use pallet_balances::Call as BalancesCall; +pub use pallet_timestamp::Call as TimestampCall; +pub use sp_consensus_aura::sr25519::AuthorityId as AuraId; +#[cfg(any(feature = "std", test))] +pub use sp_runtime::BuildStorage; +pub use sp_runtime::{MultiAddress, Perbill, Permill}; + +// Polkadot & XCM imports +use pallet_xcm::XcmPassthrough; +use polkadot_parachain::primitives::Sibling; +use xcm::latest::prelude::*; +use xcm_builder::{ + AccountId32Aliases, AllowTopLevelPaidExecutionFrom, AllowUnpaidExecutionFrom, CurrencyAdapter, EnsureXcmOrigin, + FixedWeightBounds, IsConcrete, LocationInverter, NativeAsset, ParentAsSuperuser, ParentIsDefault, + RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia, SignedAccountId32AsNative, + SignedToAccountId32, SovereignSignedViaLocation, TakeWeightCredit, UsingComponents, +}; +use xcm_executor::{Config, XcmExecutor}; + +// /// Import the template pallet. +// pub use template; + +/// Alias to 512-bit hash when used in the context of a transaction signature on the chain. +pub type Signature = MultiSignature; +/// Some way of identifying an account on the chain. We intentionally make it equivalent +/// to the public key of our transaction signing scheme. +pub type AccountId = <::Signer as IdentifyAccount>::AccountId; +/// Balance of an account. +pub type Balance = u128; +/// Index of a transaction in the chain. +pub type Index = u32; +/// A hash of some data used by the chain. +pub type Hash = sp_core::H256; +/// An index to a block. +pub type BlockNumber = u32; +/// The address format for describing accounts. +pub type Address = MultiAddress; +/// Block header type as expected by this runtime. +pub type Header = generic::Header; +/// Block type as expected by this runtime. +pub type Block = generic::Block; +/// A Block signed with a Justification +pub type SignedBlock = generic::SignedBlock; +/// BlockId type as expected by this runtime. +pub type BlockId = generic::BlockId; +/// The SignedExtension to the basic transaction logic. +pub type SignedExtra = ( + frame_system::CheckSpecVersion, + frame_system::CheckGenesis, + frame_system::CheckEra, + frame_system::CheckNonce, + frame_system::CheckWeight, + pallet_transaction_payment::ChargeTransactionPayment, +); +/// Unchecked extrinsic type as expected by this runtime. +pub type UncheckedExtrinsic = generic::UncheckedExtrinsic; +/// Extrinsic type that has already been checked. +pub type CheckedExtrinsic = generic::CheckedExtrinsic; +/// Executive: handles dispatch to the various modules. +pub type Executive = + frame_executive::Executive, Runtime, AllPallets>; + +impl_opaque_keys! { + pub struct SessionKeys { + pub aura: Aura, + } +} + +/// This runtime version. +#[sp_version::runtime_version] +pub const VERSION: RuntimeVersion = RuntimeVersion { + spec_name: create_runtime_str!("template-parachain"), + impl_name: create_runtime_str!("template-parachain"), + authoring_version: 1, + spec_version: 1, + impl_version: 0, + apis: RUNTIME_API_VERSIONS, + transaction_version: 1, +}; + +/// This determines the average expected block time that we are targeting. +/// Blocks will be produced at a minimum duration defined by `SLOT_DURATION`. +/// `SLOT_DURATION` is picked up by `pallet_timestamp` which is in turn picked +/// up by `pallet_aura` to implement `fn slot_duration()`. +/// +/// Change this to adjust the block time. +pub const MILLISECS_PER_BLOCK: u64 = 12000; + +pub const SLOT_DURATION: u64 = MILLISECS_PER_BLOCK; + +pub const EPOCH_DURATION_IN_BLOCKS: u32 = 10 * MINUTES; + +// Time is measured by number of blocks. +pub const MINUTES: BlockNumber = 60_000 / (MILLISECS_PER_BLOCK as BlockNumber); +pub const HOURS: BlockNumber = MINUTES * 60; +pub const DAYS: BlockNumber = HOURS * 24; + +// Unit = the base number of indivisible units for balances +pub const UNIT: Balance = 1_000_000_000_000; +pub const MILLIUNIT: Balance = 1_000_000_000; +pub const MICROUNIT: Balance = 1_000_000; + +// 1 in 4 blocks (on average, not counting collisions) will be primary babe blocks. +pub const PRIMARY_PROBABILITY: (u64, u64) = (1, 4); + +/// The version information used to identify this runtime when compiled natively. +#[cfg(feature = "std")] +pub fn native_version() -> NativeVersion { + NativeVersion { + runtime_version: VERSION, + can_author_with: Default::default(), + } +} + +/// We assume that approximately 10 percent of the block weight is consumed by `on_initalize` handlers. +/// This is used to limit the maximal weight of a single extrinsic. +const AVERAGE_ON_INITIALIZE_RATIO: Perbill = Perbill::from_percent(10); +/// We allow `Normal` extrinsics to fill up the block up to 75 percent, the rest can be used +/// by Operational extrinsics. +const NORMAL_DISPATCH_RATIO: Perbill = Perbill::from_percent(75); +/// We allow for 2 seconds of compute with a 12 second average block time. +const MAXIMUM_BLOCK_WEIGHT: Weight = WEIGHT_PER_SECOND * 2; + +parameter_types! { + pub const BlockHashCount: BlockNumber = 250; + pub const Version: RuntimeVersion = VERSION; + pub RuntimeBlockLength: BlockLength = + BlockLength::max_with_normal_ratio(5 * 1024 * 1024, NORMAL_DISPATCH_RATIO); + pub RuntimeBlockWeights: BlockWeights = BlockWeights::builder() + .base_block(BlockExecutionWeight::get()) + .for_class(DispatchClass::all(), |weights| { + weights.base_extrinsic = ExtrinsicBaseWeight::get(); + }) + .for_class(DispatchClass::Normal, |weights| { + weights.max_total = Some(NORMAL_DISPATCH_RATIO * MAXIMUM_BLOCK_WEIGHT); + }) + .for_class(DispatchClass::Operational, |weights| { + weights.max_total = Some(MAXIMUM_BLOCK_WEIGHT); + // Operational transactions have some extra reserved space, so that they + // are included even if block reached `MAXIMUM_BLOCK_WEIGHT`. + weights.reserved = Some( + MAXIMUM_BLOCK_WEIGHT - NORMAL_DISPATCH_RATIO * MAXIMUM_BLOCK_WEIGHT + ); + }) + .avg_block_initialization(AVERAGE_ON_INITIALIZE_RATIO) + .build_or_panic(); + pub const SS58Prefix: u8 = 48; +} + +// Configure FRAME pallets to include in runtime. + +impl frame_system::Config for Runtime { + /// The identifier used to distinguish between accounts. + type AccountId = AccountId; + /// The aggregated dispatch type that is available for extrinsics. + type Call = Call; + /// The lookup mechanism to get account ID from whatever is passed in dispatchers. + type Lookup = AccountIdLookup; + /// The index type for storing how many extrinsics an account has signed. + type Index = Index; + /// The index type for blocks. + type BlockNumber = BlockNumber; + /// The type for hashing blocks and tries. + type Hash = Hash; + /// The hashing algorithm used. + type Hashing = BlakeTwo256; + /// The header type. + type Header = generic::Header; + /// The ubiquitous event type. + type Event = Event; + /// The ubiquitous origin type. + type Origin = Origin; + /// Maximum number of block number to block hash mappings to keep (oldest pruned first). + type BlockHashCount = BlockHashCount; + /// Runtime version. + type Version = Version; + /// Converts a module to an index of this module in the runtime. + type PalletInfo = PalletInfo; + type AccountData = pallet_balances::AccountData; + /// What to do if a new account is created. + type OnNewAccount = (); + /// What to do if an account is fully reaped from the system. + type OnKilledAccount = (); + /// The weight of database operations that the runtime can invoke. + type DbWeight = (); + /// The basic call filter to use in dispatchable. + type BaseCallFilter = Everything; + /// Weight information for the extrinsics of this pallet. + type SystemWeightInfo = (); + /// Block & extrinsics weights: base values and limits. + type BlockWeights = RuntimeBlockWeights; + /// The maximum length of a block (in bytes). + type BlockLength = RuntimeBlockLength; + /// This is used as an identifier of the chain. 42 is the generic substrate prefix. + type SS58Prefix = SS58Prefix; + /// The action to take on a Runtime Upgrade + type OnSetCode = cumulus_pallet_parachain_system::ParachainSetCode; +} + +parameter_types! { + pub const MinimumPeriod: u64 = SLOT_DURATION / 2; +} + +impl pallet_timestamp::Config for Runtime { + /// A timestamp: milliseconds since the Unix epoch. + type Moment = u64; + type OnTimestampSet = (); + type MinimumPeriod = MinimumPeriod; + type WeightInfo = (); +} + +parameter_types! { + pub const ExistentialDeposit: u128 = 1 * MILLIUNIT; + pub const TransferFee: u128 = 1 * MILLIUNIT; + pub const CreationFee: u128 = 1 * MILLIUNIT; + pub const TransactionByteFee: u128 = 1 * MICROUNIT; + pub const MaxLocks: u32 = 50; + pub const MaxReserves: u32 = 50; +} + +impl pallet_balances::Config for Runtime { + /// The type for recording an account's balance. + type Balance = Balance; + /// The ubiquitous event type. + type Event = Event; + type DustRemoval = (); + type ExistentialDeposit = ExistentialDeposit; + type AccountStore = System; + type WeightInfo = pallet_balances::weights::SubstrateWeight; + type MaxLocks = MaxLocks; + type MaxReserves = MaxReserves; + type ReserveIdentifier = [u8; 8]; +} + +impl pallet_transaction_payment::Config for Runtime { + type OnChargeTransaction = pallet_transaction_payment::CurrencyAdapter; + type TransactionByteFee = TransactionByteFee; + type WeightToFee = IdentityFee; + type FeeMultiplierUpdate = (); +} + +impl pallet_sudo::Config for Runtime { + type Call = Call; + type Event = Event; +} + +parameter_types! { + pub const ReservedXcmpWeight: Weight = MAXIMUM_BLOCK_WEIGHT / 4; + pub const ReservedDmpWeight: Weight = MAXIMUM_BLOCK_WEIGHT / 4; +} + +impl cumulus_pallet_parachain_system::Config for Runtime { + type Event = Event; + type OnValidationData = (); + type SelfParaId = parachain_info::Pallet; + type OutboundXcmpMessageSource = XcmpQueue; + type DmpMessageHandler = DmpQueue; + type ReservedDmpWeight = ReservedDmpWeight; + type XcmpMessageHandler = XcmpQueue; + type ReservedXcmpWeight = ReservedXcmpWeight; +} + +impl parachain_info::Config for Runtime {} + +impl cumulus_pallet_aura_ext::Config for Runtime {} + +impl pallet_randomness_collective_flip::Config for Runtime {} + +parameter_types! { + pub const RelayLocation: MultiLocation = MultiLocation::parent(); + pub const RelayNetwork: NetworkId = NetworkId::Polkadot; + pub RelayOrigin: Origin = cumulus_pallet_xcm::Origin::Relay.into(); + pub Ancestry: MultiLocation = Parachain(ParachainInfo::parachain_id().into()).into(); +} + +/// Type for specifying how a `MultiLocation` can be converted into an `AccountId`. This is used +/// when determining ownership of accounts for asset transacting and when attempting to use XCM +/// `Transact` in order to determine the dispatch Origin. +pub type LocationToAccountId = ( + // The parent (Relay-chain) origin converts to the default `AccountId`. + ParentIsDefault, + // Sibling parachain origins convert to AccountId via the `ParaId::into`. + SiblingParachainConvertsVia, + // Straight up local `AccountId32` origins just alias directly to `AccountId`. + AccountId32Aliases, +); + +/// Means for transacting assets on this chain. +pub type LocalAssetTransactor = CurrencyAdapter< + // Use this currency: + Balances, + // Use this currency when it is a fungible asset matching the given location or name: + IsConcrete, + // Do a simple punn to convert an AccountId32 MultiLocation into a native chain account ID: + LocationToAccountId, + // Our chain's account ID type (we can't get away without mentioning it explicitly): + AccountId, + // We don't track any teleports. + (), +>; + +/// This is the type we use to convert an (incoming) XCM origin into a local `Origin` instance, +/// ready for dispatching a transaction with XCM `Transact`. There is an `OriginKind` which can +/// biases the kind of local `Origin` it will become. +pub type XcmOriginToTransactDispatchOrigin = ( + // Sovereign account converter; this attempts to derive an `AccountId` from the origin location + // using `LocationToAccountId` and then turn that into the usual `Signed` origin. Useful for + // foreign chains who want to have a local sovereign account on this chain which they control. + SovereignSignedViaLocation, + // Native converter for Relay-chain (Parent) location; will converts to a `Relay` origin when + // recognised. + RelayChainAsNative, + // Native converter for sibling Parachains; will convert to a `SiblingPara` origin when + // recognised. + SiblingParachainAsNative, + // Superuser converter for the Relay-chain (Parent) location. This will allow it to issue a + // transaction from the Root origin. + ParentAsSuperuser, + // Native signed account converter; this just converts an `AccountId32` origin into a normal + // `Origin::Signed` origin of the same 32-byte value. + SignedAccountId32AsNative, + // Xcm origins can be represented natively under the Xcm pallet's Xcm origin. + XcmPassthrough, +); + +parameter_types! { + // One XCM operation is 1_000_000 weight - almost certainly a conservative estimate. + pub UnitWeightCost: Weight = 1_000_000; + // One UNIT buys 1 second of weight. + pub const WeightPrice: (MultiLocation, u128) = (MultiLocation::parent(), UNIT); + pub const MaxInstructions: u32 = 100; + pub const MaxAuthorities: u32 = 100_000; +} + +match_type! { + pub type ParentOrParentsUnitPlurality: impl Contains = { + MultiLocation { parents: 1, interior: Here } | + MultiLocation { parents: 1, interior: X1(Plurality { id: BodyId::Unit, .. }) } + }; +} + +pub type Barrier = ( + TakeWeightCredit, + AllowTopLevelPaidExecutionFrom, + AllowUnpaidExecutionFrom, + // ^^^ Parent & its unit plurality gets free execution +); + +pub struct XcmConfig; +impl Config for XcmConfig { + type Call = Call; + type XcmSender = XcmRouter; + // How to withdraw and deposit an asset. + type AssetTransactor = LocalAssetTransactor; + type OriginConverter = XcmOriginToTransactDispatchOrigin; + type IsReserve = NativeAsset; + type IsTeleporter = NativeAsset; // <- should be enough to allow teleportation of UNIT + type LocationInverter = LocationInverter; + type Barrier = Barrier; + type Weigher = FixedWeightBounds; + type Trader = UsingComponents, RelayLocation, AccountId, Balances, ()>; + type ResponseHandler = PolkadotXcm; + type AssetTrap = PolkadotXcm; + type AssetClaims = PolkadotXcm; + type SubscriptionService = PolkadotXcm; +} + +/// No local origins on this chain are allowed to dispatch XCM sends/executions. +pub type LocalOriginToLocation = SignedToAccountId32; + +/// The means for routing XCM messages which are not for local execution into the right message +/// queues. +pub type XcmRouter = ( + // Two routers - use UMP to communicate with the relay chain: + cumulus_primitives_utility::ParentAsUmp, + // ..and XCMP to communicate with the sibling chains. + XcmpQueue, +); + +impl pallet_xcm::Config for Runtime { + type Event = Event; + type SendXcmOrigin = EnsureXcmOrigin; + type XcmRouter = XcmRouter; + type ExecuteXcmOrigin = EnsureXcmOrigin; + type XcmExecuteFilter = Everything; + type XcmExecutor = XcmExecutor; + type XcmTeleportFilter = Everything; + type XcmReserveTransferFilter = Everything; + type Weigher = FixedWeightBounds; + type LocationInverter = LocationInverter; + type Origin = Origin; + type Call = Call; + const VERSION_DISCOVERY_QUEUE_SIZE: u32 = 100; + type AdvertisedXcmVersion = pallet_xcm::CurrentXcmVersion; +} + +impl cumulus_pallet_xcm::Config for Runtime { + type Event = Event; + type XcmExecutor = XcmExecutor; +} + +impl cumulus_pallet_xcmp_queue::Config for Runtime { + type Event = Event; + type XcmExecutor = XcmExecutor; + type ChannelInfo = ParachainSystem; + type VersionWrapper = (); +} + +impl cumulus_pallet_dmp_queue::Config for Runtime { + type Event = Event; + type XcmExecutor = XcmExecutor; + type ExecuteOverweightOrigin = frame_system::EnsureRoot; +} + +impl pallet_aura::Config for Runtime { + type AuthorityId = AuraId; + type DisabledValidators = (); + type MaxAuthorities = MaxAuthorities; +} + +// /// Configure the pallet template in pallets/template. +// impl template::Config for Runtime { +// type Event = Event; +// } + +// Create the runtime by composing the FRAME pallets that were previously configured. +construct_runtime!( + pub enum Runtime where + Block = Block, + NodeBlock = generic::Block, + UncheckedExtrinsic = UncheckedExtrinsic, + { + System: frame_system::{Pallet, Call, Storage, Config, Event}, + Timestamp: pallet_timestamp::{Pallet, Call, Storage, Inherent}, + Sudo: pallet_sudo::{Pallet, Call, Storage, Config, Event}, + RandomnessCollectiveFlip: pallet_randomness_collective_flip::{Pallet, Storage}, + TransactionPayment: pallet_transaction_payment::{Pallet, Storage}, + + ParachainSystem: cumulus_pallet_parachain_system::{Pallet, Call, Storage, Inherent, Event} = 20, + ParachainInfo: parachain_info::{Pallet, Storage, Config} = 21, + + Balances: pallet_balances::{Pallet, Call, Storage, Config, Event} = 30, + + Aura: pallet_aura::{Pallet, Config}, + AuraExt: cumulus_pallet_aura_ext::{Pallet, Config}, + + // XCM helpers. + XcmpQueue: cumulus_pallet_xcmp_queue::{Pallet, Call, Storage, Event} = 50, + PolkadotXcm: pallet_xcm::{Pallet, Call, Event, Origin} = 51, + CumulusXcm: cumulus_pallet_xcm::{Pallet, Call, Event, Origin} = 52, + DmpQueue: cumulus_pallet_dmp_queue::{Pallet, Call, Storage, Event} = 53, + + // //Template + // TemplatePallet: template::{Pallet, Call, Storage, Event}, + } +); + +impl_runtime_apis! { + impl sp_api::Core for Runtime { + fn version() -> RuntimeVersion { + VERSION + } + + fn execute_block(block: Block) { + Executive::execute_block(block) + } + + fn initialize_block(header: &::Header) { + Executive::initialize_block(header) + } + } + + impl sp_api::Metadata for Runtime { + fn metadata() -> OpaqueMetadata { + Runtime::metadata().into() + } + } + + impl sp_block_builder::BlockBuilder for Runtime { + fn apply_extrinsic( + extrinsic: ::Extrinsic, + ) -> ApplyExtrinsicResult { + Executive::apply_extrinsic(extrinsic) + } + + fn finalize_block() -> ::Header { + Executive::finalize_block() + } + + fn inherent_extrinsics(data: sp_inherents::InherentData) -> Vec<::Extrinsic> { + data.create_extrinsics() + } + + fn check_inherents( + block: Block, + data: sp_inherents::InherentData, + ) -> sp_inherents::CheckInherentsResult { + data.check_extrinsics(&block) + } + } + + impl sp_transaction_pool::runtime_api::TaggedTransactionQueue for Runtime { + fn validate_transaction( + source: TransactionSource, + tx: ::Extrinsic, + block_hash: ::Hash, + ) -> TransactionValidity { + Executive::validate_transaction(source, tx, block_hash) + } + } + + impl sp_offchain::OffchainWorkerApi for Runtime { + fn offchain_worker(header: &::Header) { + Executive::offchain_worker(header) + } + } + + impl sp_session::SessionKeys for Runtime { + fn decode_session_keys( + encoded: Vec, + ) -> Option, KeyTypeId)>> { + SessionKeys::decode_into_raw_public_keys(&encoded) + } + + fn generate_session_keys(seed: Option>) -> Vec { + SessionKeys::generate(seed) + } + } + + impl sp_consensus_aura::AuraApi for Runtime { + fn slot_duration() -> sp_consensus_aura::SlotDuration { + sp_consensus_aura::SlotDuration::from_millis(Aura::slot_duration()) + } + + fn authorities() -> Vec { + Aura::authorities().to_vec() + } + } + + impl cumulus_primitives_core::CollectCollationInfo for Runtime { + fn collect_collation_info() -> cumulus_primitives_core::CollationInfo { + ParachainSystem::collect_collation_info() + } + } + + impl frame_system_rpc_runtime_api::AccountNonceApi for Runtime { + fn account_nonce(account: AccountId) -> Index { + System::account_nonce(account) + } + } + + impl pallet_transaction_payment_rpc_runtime_api::TransactionPaymentApi for Runtime { + fn query_info( + uxt: ::Extrinsic, + len: u32, + ) -> pallet_transaction_payment_rpc_runtime_api::RuntimeDispatchInfo { + TransactionPayment::query_info(uxt, len) + } + fn query_fee_details( + uxt: ::Extrinsic, + len: u32, + ) -> pallet_transaction_payment::FeeDetails { + TransactionPayment::query_fee_details(uxt, len) + } + } + + #[cfg(feature = "runtime-benchmarks")] + impl frame_benchmarking::Benchmark for Runtime { + fn dispatch_benchmark( + config: frame_benchmarking::BenchmarkConfig + ) -> Result, sp_runtime::RuntimeString> { + use frame_benchmarking::{Benchmarking, BenchmarkBatch, add_benchmark, TrackedStorageKey}; + + use frame_system_benchmarking::Pallet as SystemBench; + impl frame_system_benchmarking::Config for Runtime {} + + let whitelist: Vec = vec![ + // Block Number + hex_literal::hex!("26aa394eea5630e07c48ae0c9558cef702a5c1b19ab7a04f536c519aca4983ac").to_vec().into(), + // Total Issuance + hex_literal::hex!("c2261276cc9d1f8598ea4b6a74b15c2f57c875e4cff74148e4628f264b974c80").to_vec().into(), + // Execution Phase + hex_literal::hex!("26aa394eea5630e07c48ae0c9558cef7ff553b5a9862a516939d82b3d3d8661a").to_vec().into(), + // Event Count + hex_literal::hex!("26aa394eea5630e07c48ae0c9558cef70a98fdbe9ce6c55837576c60c7af3850").to_vec().into(), + // System Events + hex_literal::hex!("26aa394eea5630e07c48ae0c9558cef780d41e5e16056765bc8461851072c9d7").to_vec().into(), + ]; + + let mut batches = Vec::::new(); + let params = (&config, &whitelist); + + add_benchmark!(params, batches, frame_system, SystemBench::); + add_benchmark!(params, batches, pallet_balances, Balances); + add_benchmark!(params, batches, pallet_timestamp, Timestamp); + + if batches.is_empty() { return Err("Benchmark not found for this pallet.".into()) } + Ok(batches) + } + } +} + +struct CheckInherents; + +impl cumulus_pallet_parachain_system::CheckInherents for CheckInherents { + fn check_inherents( + block: &Block, + relay_state_proof: &cumulus_pallet_parachain_system::RelayChainStateProof, + ) -> sp_inherents::CheckInherentsResult { + let relay_chain_slot = relay_state_proof + .read_slot() + .expect("Could not read the relay chain slot from the proof"); + + let inherent_data = cumulus_primitives_timestamp::InherentDataProvider::from_relay_chain_slot_and_duration( + relay_chain_slot, + sp_std::time::Duration::from_secs(6), + ) + .create_inherent_data() + .expect("Could not create the timestamp inherent data"); + + inherent_data.check_extrinsics(&block) + } +} + +cumulus_pallet_parachain_system::register_validate_block!( + Runtime = Runtime, + BlockExecutor = cumulus_pallet_aura_ext::BlockExecutor::, + CheckInherents = CheckInherents, +); diff --git a/bin/rialto/node/Cargo.toml b/bin/rialto/node/Cargo.toml index 833cea604d..08c72ce676 100644 --- a/bin/rialto/node/Cargo.toml +++ b/bin/rialto/node/Cargo.toml @@ -11,7 +11,7 @@ license = "GPL-3.0-or-later WITH Classpath-exception-2.0" [dependencies] futures = "0.3" -jsonrpc-core = "15.1.0" +jsonrpc-core = "18.0" kvdb = "0.10" kvdb-rocksdb = "0.12" structopt = "0.3.21" @@ -44,7 +44,7 @@ sc-consensus-uncles = { git = "https://github.com/paritytech/substrate", branch sc-executor = { git = "https://github.com/paritytech/substrate", branch = "master" } sc-finality-grandpa = { git = "https://github.com/paritytech/substrate", branch = "master" } sc-finality-grandpa-rpc = { git = "https://github.com/paritytech/substrate", branch = "master" } -sc-finality-grandpa-warp-sync = { git = "https://github.com/paritytech/substrate", branch = "master" } +#sc-finality-grandpa-warp-sync = { git = "https://github.com/paritytech/substrate", branch = "master" } sc-keystore = { git = "https://github.com/paritytech/substrate", branch = "master" } sc-network = { git = "https://github.com/paritytech/substrate", branch = "master" } sc-rpc = { git = "https://github.com/paritytech/substrate", branch = "master" } @@ -76,6 +76,7 @@ polkadot-availability-bitfield-distribution = { git = "https://github.com/parity polkadot-availability-distribution = { git = "https://github.com/paritytech/polkadot", branch = "master" } polkadot-availability-recovery = { git = "https://github.com/paritytech/polkadot", branch = "master" } polkadot-collator-protocol = { git = "https://github.com/paritytech/polkadot", branch = "master" } +polkadot-dispute-distribution = { git = "https://github.com/paritytech/polkadot", branch = "master" } polkadot-gossip-support = { git = "https://github.com/paritytech/polkadot", branch = "master" } polkadot-network-bridge = { git = "https://github.com/paritytech/polkadot", branch = "master" } polkadot-node-collation-generation = { git = "https://github.com/paritytech/polkadot", branch = "master" } @@ -85,10 +86,14 @@ polkadot-node-core-backing = { git = "https://github.com/paritytech/polkadot", b polkadot-node-core-bitfield-signing = { git = "https://github.com/paritytech/polkadot", branch = "master" } polkadot-node-core-candidate-validation = { git = "https://github.com/paritytech/polkadot", branch = "master" } polkadot-node-core-chain-api = { git = "https://github.com/paritytech/polkadot", branch = "master" } +polkadot-node-core-chain-selection = { git = "https://github.com/paritytech/polkadot", branch = "master" } +polkadot-node-core-dispute-participation = { git = "https://github.com/paritytech/polkadot", branch = "master" } polkadot-node-core-parachains-inherent = { git = "https://github.com/paritytech/polkadot", branch = "master" } polkadot-node-core-provisioner = { git = "https://github.com/paritytech/polkadot", branch = "master" } polkadot-node-core-pvf = { git = "https://github.com/paritytech/polkadot", branch = "master" } polkadot-node-core-runtime-api = { git = "https://github.com/paritytech/polkadot", branch = "master" } +polkadot-node-core-dispute-coordinator = { git = "https://github.com/paritytech/polkadot", branch = "master" } +polkadot-node-network-protocol = { git = "https://github.com/paritytech/polkadot", branch = "master" } polkadot-node-subsystem-util = { git = "https://github.com/paritytech/polkadot", branch = "master" } polkadot-overseer = { git = "https://github.com/paritytech/polkadot", branch = "master" } polkadot-primitives = { git = "https://github.com/paritytech/polkadot", branch = "master" } diff --git a/bin/rialto/node/src/chain_spec.rs b/bin/rialto/node/src/chain_spec.rs index be631109fa..68a2928ed2 100644 --- a/bin/rialto/node/src/chain_spec.rs +++ b/bin/rialto/node/src/chain_spec.rs @@ -18,8 +18,8 @@ use bp_rialto::derive_account_from_millau_id; use polkadot_primitives::v1::{AssignmentId, ValidatorId}; use rialto_runtime::{ AccountId, BabeConfig, BalancesConfig, BridgeKovanConfig, BridgeMillauMessagesConfig, BridgeRialtoPoaConfig, - GenesisConfig, GrandpaConfig, ParachainsConfigurationConfig, SessionConfig, SessionKeys, Signature, SudoConfig, - SystemConfig, WASM_BINARY, + ConfigurationConfig, GenesisConfig, GrandpaConfig, SessionConfig, SessionKeys, Signature, SudoConfig, SystemConfig, + WASM_BINARY, }; use serde_json::json; use sp_authority_discovery::AuthorityId as AuthorityDiscoveryId; @@ -251,7 +251,7 @@ fn testnet_genesis( hrmp: Default::default(), // this configuration is exact copy of configuration from Polkadot repo // (see /node/service/src/chain_spec.rs:default_parachains_host_configuration) - parachains_configuration: ParachainsConfigurationConfig { + configuration: ConfigurationConfig { config: polkadot_runtime_parachains::configuration::HostConfiguration { validation_upgrade_frequency: 1u32, validation_upgrade_delay: 1, @@ -273,7 +273,7 @@ fn testnet_genesis( ump_service_total_weight: 4 * 1_000_000_000, max_upward_message_size: 1024 * 1024, max_upward_message_num_per_candidate: 5, - hrmp_open_request_ttl: 5, + _hrmp_open_request_ttl: 5, hrmp_sender_deposit: 0, hrmp_recipient_deposit: 0, hrmp_channel_max_capacity: 8, diff --git a/bin/rialto/node/src/command.rs b/bin/rialto/node/src/command.rs index 4fe40251e6..308cb10344 100644 --- a/bin/rialto/node/src/command.rs +++ b/bin/rialto/node/src/command.rs @@ -77,7 +77,7 @@ pub fn run() -> sc_cli::Result<()> { if cfg!(feature = "runtime-benchmarks") { let runner = cli.create_runner(cmd)?; - runner.sync_run(|config| cmd.run::(config)) + runner.sync_run(|config| cmd.run::(config)) } else { println!( "Benchmarking wasn't enabled when building the node. \ @@ -154,7 +154,7 @@ pub fn run() -> sc_cli::Result<()> { } Some(Subcommand::Inspect(cmd)) => { let runner = cli.create_runner(cmd)?; - runner.sync_run(|config| cmd.run::(config)) + runner.sync_run(|config| cmd.run::(config)) } Some(Subcommand::PvfPrepareWorker(cmd)) => { let mut builder = sc_cli::LoggerBuilder::new(""); diff --git a/bin/rialto/node/src/overseer.rs b/bin/rialto/node/src/overseer.rs index f7aaef4b5d..ff82db8b0e 100644 --- a/bin/rialto/node/src/overseer.rs +++ b/bin/rialto/node/src/overseer.rs @@ -20,19 +20,22 @@ // this warning comes from `polkadot_overseer::AllSubsystems` type #![allow(clippy::type_complexity)] -use crate::service::Error; +use crate::service::{AuthorityDiscoveryApi, Error}; +use rialto_runtime::{opaque::Block, Hash}; -use polkadot_network_bridge::RequestMultiplexer; +use polkadot_availability_distribution::IncomingRequestReceivers; use polkadot_node_core_approval_voting::Config as ApprovalVotingConfig; use polkadot_node_core_av_store::Config as AvailabilityConfig; use polkadot_node_core_candidate_validation::Config as CandidateValidationConfig; -use polkadot_overseer::{AllSubsystems, BlockInfo, Overseer, OverseerHandler}; -use polkadot_primitives::v1::{Block, Hash, ParachainHost}; +use polkadot_node_core_chain_selection::Config as ChainSelectionConfig; +use polkadot_node_core_dispute_coordinator::Config as DisputeCoordinatorConfig; +use polkadot_node_network_protocol::request_response::{v1 as request_v1, IncomingRequestReceiver}; +use polkadot_overseer::{AllSubsystems, BlockInfo, Overseer, OverseerHandle}; +use polkadot_primitives::v1::ParachainHost; use sc_authority_discovery::Service as AuthorityDiscoveryService; use sc_client_api::AuxStore; use sc_keystore::LocalKeystore; use sp_api::ProvideRuntimeApi; -use sp_authority_discovery::AuthorityDiscoveryApi; use sp_blockchain::HeaderBackend; use sp_consensus_babe::BabeApi; use sp_core::traits::SpawnNamed; @@ -44,6 +47,7 @@ pub use polkadot_availability_bitfield_distribution::BitfieldDistribution as Bit pub use polkadot_availability_distribution::AvailabilityDistributionSubsystem; pub use polkadot_availability_recovery::AvailabilityRecoverySubsystem; pub use polkadot_collator_protocol::{CollatorProtocolSubsystem, ProtocolSide}; +pub use polkadot_dispute_distribution::DisputeDistributionSubsystem; pub use polkadot_gossip_support::GossipSupport as GossipSupportSubsystem; pub use polkadot_network_bridge::NetworkBridge as NetworkBridgeSubsystem; pub use polkadot_node_collation_generation::CollationGenerationSubsystem; @@ -53,6 +57,9 @@ pub use polkadot_node_core_backing::CandidateBackingSubsystem; pub use polkadot_node_core_bitfield_signing::BitfieldSigningSubsystem; pub use polkadot_node_core_candidate_validation::CandidateValidationSubsystem; pub use polkadot_node_core_chain_api::ChainApiSubsystem; +pub use polkadot_node_core_chain_selection::ChainSelectionSubsystem; +pub use polkadot_node_core_dispute_coordinator::DisputeCoordinatorSubsystem; +pub use polkadot_node_core_dispute_participation::DisputeParticipationSubsystem; pub use polkadot_node_core_provisioner::ProvisioningSubsystem as ProvisionerSubsystem; pub use polkadot_node_core_runtime_api::RuntimeApiSubsystem; pub use polkadot_statement_distribution::StatementDistribution as StatementDistributionSubsystem; @@ -72,43 +79,58 @@ where pub runtime_client: Arc, /// The underlying key value store for the parachains. pub parachains_db: Arc, - /// Configuration for the availability store subsystem. - pub availability_config: AvailabilityConfig, - /// Configuration for the approval voting subsystem. - pub approval_voting_config: ApprovalVotingConfig, /// Underlying network service implementation. pub network_service: Arc>, /// Underlying authority discovery service. pub authority_discovery_service: AuthorityDiscoveryService, - /// A multiplexer to arbitrate incoming `IncomingRequest`s from the network. - pub request_multiplexer: RequestMultiplexer, + /// POV request receiver + pub pov_req_receiver: IncomingRequestReceiver, + pub chunk_req_receiver: IncomingRequestReceiver, + pub collation_req_receiver: IncomingRequestReceiver, + pub available_data_req_receiver: IncomingRequestReceiver, + pub statement_req_receiver: IncomingRequestReceiver, + pub dispute_req_receiver: IncomingRequestReceiver, /// Prometheus registry, commonly used for production systems, less so for test. pub registry: Option<&'a Registry>, /// Task spawner to be used throughout the overseer and the APIs it provides. pub spawner: Spawner, + /// Configuration for the approval voting subsystem. + pub approval_voting_config: ApprovalVotingConfig, + /// Configuration for the availability store subsystem. + pub availability_config: AvailabilityConfig, /// Configuration for the candidate validation subsystem. pub candidate_validation_config: CandidateValidationConfig, + /// Configuration for the chain selection subsystem. + pub chain_selection_config: ChainSelectionConfig, + /// Configuration for the dispute coordinator subsystem. + pub dispute_coordinator_config: DisputeCoordinatorConfig, } /// Create a default, unaltered set of subsystems. /// /// A convenience for usage with malus, to avoid /// repetitive code across multiple behavior strain implementations. -pub fn create_default_subsystems( +pub fn create_default_subsystems<'a, Spawner, RuntimeClient>( OverseerGenArgs { keystore, runtime_client, parachains_db, - availability_config, - approval_voting_config, network_service, authority_discovery_service, - request_multiplexer, + pov_req_receiver, + chunk_req_receiver, + available_data_req_receiver, + statement_req_receiver, + dispute_req_receiver, registry, spawner, + approval_voting_config, + availability_config, candidate_validation_config, + chain_selection_config, + dispute_coordinator_config, .. - }: OverseerGenArgs, + }: OverseerGenArgs<'a, Spawner, RuntimeClient>, ) -> Result< AllSubsystems< CandidateValidationSubsystem, @@ -128,6 +150,10 @@ pub fn create_default_subsystems( ApprovalDistributionSubsystem, ApprovalVotingSubsystem, GossipSupportSubsystem, + DisputeCoordinatorSubsystem, + DisputeParticipationSubsystem, + DisputeDistributionSubsystem, + ChainSelectionSubsystem, >, Error, > @@ -141,9 +167,16 @@ where let all_subsystems = AllSubsystems { availability_distribution: AvailabilityDistributionSubsystem::new( keystore.clone(), + IncomingRequestReceivers { + pov_req_receiver, + chunk_req_receiver, + }, + Metrics::register(registry)?, + ), + availability_recovery: AvailabilityRecoverySubsystem::with_chunks_only( + available_data_req_receiver, Metrics::register(registry)?, ), - availability_recovery: AvailabilityRecoverySubsystem::with_chunks_only(), availability_store: AvailabilityStoreSubsystem::new( parachains_db.clone(), availability_config, @@ -162,37 +195,51 @@ where ), candidate_validation: CandidateValidationSubsystem::with_config( candidate_validation_config, - Metrics::register(registry)?, + Metrics::register(registry)?, // candidate-validation metrics + Metrics::register(registry)?, // validation host metrics ), chain_api: ChainApiSubsystem::new(runtime_client.clone(), Metrics::register(registry)?), collation_generation: CollationGenerationSubsystem::new(Metrics::register(registry)?), - collator_protocol: { - let side = ProtocolSide::Validator { - keystore: keystore.clone(), - eviction_policy: Default::default(), - metrics: Metrics::register(registry)?, - }; - CollatorProtocolSubsystem::new(side) - }, + collator_protocol: CollatorProtocolSubsystem::new(ProtocolSide::Validator { + keystore: keystore.clone(), + eviction_policy: Default::default(), + metrics: Metrics::register(registry)?, + }), network_bridge: NetworkBridgeSubsystem::new( network_service.clone(), - authority_discovery_service, - request_multiplexer, + authority_discovery_service.clone(), Box::new(network_service.clone()), Metrics::register(registry)?, ), provisioner: ProvisionerSubsystem::new(spawner.clone(), (), Metrics::register(registry)?), - runtime_api: RuntimeApiSubsystem::new(runtime_client, Metrics::register(registry)?, spawner), - statement_distribution: StatementDistributionSubsystem::new(keystore.clone(), Metrics::register(registry)?), + runtime_api: RuntimeApiSubsystem::new(runtime_client.clone(), Metrics::register(registry)?, spawner.clone()), + statement_distribution: StatementDistributionSubsystem::new( + keystore.clone(), + statement_req_receiver, + Metrics::register(registry)?, + ), approval_distribution: ApprovalDistributionSubsystem::new(Metrics::register(registry)?), approval_voting: ApprovalVotingSubsystem::with_config( approval_voting_config, - parachains_db, + parachains_db.clone(), + keystore.clone(), + Box::new(network_service.clone()), + Metrics::register(registry)?, + ), + gossip_support: GossipSupportSubsystem::new(keystore.clone()), + dispute_coordinator: DisputeCoordinatorSubsystem::new( + parachains_db.clone(), + dispute_coordinator_config, + keystore.clone(), + ), + dispute_participation: DisputeParticipationSubsystem::new(), + dispute_distribution: DisputeDistributionSubsystem::new( keystore.clone(), - Box::new(network_service), + dispute_req_receiver, + authority_discovery_service.clone(), Metrics::register(registry)?, ), - gossip_support: GossipSupportSubsystem::new(keystore), + chain_selection: ChainSelectionSubsystem::new(chain_selection_config, parachains_db), }; Ok(all_subsystems) } @@ -203,10 +250,10 @@ where /// would do. pub trait OverseerGen { /// Overwrite the full generation of the overseer, including the subsystems. - fn generate( + fn generate<'a, Spawner, RuntimeClient>( &self, - args: OverseerGenArgs, - ) -> Result<(Overseer>, OverseerHandler), Error> + args: OverseerGenArgs<'a, Spawner, RuntimeClient>, + ) -> Result<(Overseer>, OverseerHandle), Error> where RuntimeClient: 'static + ProvideRuntimeApi + HeaderBackend + AuxStore, RuntimeClient::Api: ParachainHost + BabeApi + AuthorityDiscoveryApi, @@ -224,10 +271,10 @@ pub trait OverseerGen { pub struct RealOverseerGen; impl OverseerGen for RealOverseerGen { - fn generate( + fn generate<'a, Spawner, RuntimeClient>( &self, - args: OverseerGenArgs, - ) -> Result<(Overseer>, OverseerHandler), Error> + args: OverseerGenArgs<'a, Spawner, RuntimeClient>, + ) -> Result<(Overseer>, OverseerHandle), Error> where RuntimeClient: 'static + ProvideRuntimeApi + HeaderBackend + AuxStore, RuntimeClient::Api: ParachainHost + BabeApi + AuthorityDiscoveryApi, @@ -236,7 +283,7 @@ impl OverseerGen for RealOverseerGen { let spawner = args.spawner.clone(); let leaves = args.leaves.clone(); let runtime_client = args.runtime_client.clone(); - let registry = args.registry; + let registry = args.registry.clone(); let all_subsystems = create_default_subsystems::(args)?; diff --git a/bin/rialto/node/src/parachains_db.rs b/bin/rialto/node/src/parachains_db.rs index aa70d45cd7..976191fc80 100644 --- a/bin/rialto/node/src/parachains_db.rs +++ b/bin/rialto/node/src/parachains_db.rs @@ -20,11 +20,13 @@ use {kvdb::KeyValueDB, std::io, std::path::PathBuf, std::sync::Arc}; mod columns { - pub const NUM_COLUMNS: u32 = 3; + pub const NUM_COLUMNS: u32 = 5; pub const COL_AVAILABILITY_DATA: u32 = 0; pub const COL_AVAILABILITY_META: u32 = 1; pub const COL_APPROVAL_DATA: u32 = 2; + pub const COL_CHAIN_SELECTION_DATA: u32 = 3; + pub const COL_DISPUTE_COORDINATOR_DATA: u32 = 4; } /// Columns used by different subsystems. @@ -36,6 +38,10 @@ pub struct ColumnsConfig { pub col_availability_meta: u32, /// The column used by approval voting for data. pub col_approval_data: u32, + /// The column used by chain selection for data. + pub col_chain_selection_data: u32, + /// The column used by dispute coordinator for data. + pub col_dispute_coordinator_data: u32, } /// The real columns used by the parachains DB. @@ -43,6 +49,8 @@ pub const REAL_COLUMNS: ColumnsConfig = ColumnsConfig { col_availability_data: columns::COL_AVAILABILITY_DATA, col_availability_meta: columns::COL_AVAILABILITY_META, col_approval_data: columns::COL_APPROVAL_DATA, + col_chain_selection_data: columns::COL_CHAIN_SELECTION_DATA, + col_dispute_coordinator_data: columns::COL_DISPUTE_COORDINATOR_DATA, }; /// The cache size for each column, in megabytes. diff --git a/bin/rialto/node/src/service.rs b/bin/rialto/node/src/service.rs index 71ab93d858..dd7aea1b9c 100644 --- a/bin/rialto/node/src/service.rs +++ b/bin/rialto/node/src/service.rs @@ -26,34 +26,51 @@ use crate::overseer::{OverseerGen, OverseerGenArgs}; -use polkadot_network_bridge::RequestMultiplexer; use polkadot_node_core_approval_voting::Config as ApprovalVotingConfig; use polkadot_node_core_av_store::Config as AvailabilityConfig; use polkadot_node_core_candidate_validation::Config as CandidateValidationConfig; -use polkadot_overseer::{BlockInfo, OverseerHandler}; +use polkadot_node_core_chain_selection::Config as ChainSelectionConfig; +use polkadot_node_core_dispute_coordinator::Config as DisputeCoordinatorConfig; +use polkadot_node_network_protocol::request_response::IncomingRequest; +use polkadot_overseer::BlockInfo; use polkadot_primitives::v1::BlockId; use rialto_runtime::{self, opaque::Block, RuntimeApi}; use sc_client_api::ExecutorProvider; -use sc_executor::{native_executor_instance, NativeExecutionDispatch}; +use sc_executor::{NativeElseWasmExecutor, NativeExecutionDispatch}; use sc_finality_grandpa::FinalityProofProvider as GrandpaFinalityProofProvider; use sc_service::{config::PrometheusConfig, Configuration, TaskManager}; use sc_telemetry::{Telemetry, TelemetryWorker}; use sp_api::{ConstructRuntimeApi, HeaderT}; -use sp_blockchain::HeaderBackend; use sp_consensus::SelectChain; use sp_runtime::traits::{BlakeTwo256, Block as BlockT}; use std::{sync::Arc, time::Duration}; use substrate_prometheus_endpoint::Registry; -pub use sc_executor::NativeExecutor; +pub use { + polkadot_overseer::{Handle, Overseer, OverseerHandle}, + polkadot_primitives::v1::ParachainHost, + sc_client_api::AuxStore, + sp_authority_discovery::AuthorityDiscoveryApi, + sp_blockchain::HeaderBackend, + sp_consensus_babe::BabeApi, +}; + +pub type Executor = NativeElseWasmExecutor; // Our native executor instance. -native_executor_instance!( - pub Executor, - rialto_runtime::api::dispatch, - rialto_runtime::native_version, - frame_benchmarking::benchmarking::HostFunctions, -); +pub struct ExecutorDispatch; + +impl sc_executor::NativeExecutionDispatch for ExecutorDispatch { + type ExtendHostFunctions = frame_benchmarking::benchmarking::HostFunctions; + + fn dispatch(method: &str, data: &[u8]) -> Option> { + rialto_runtime::api::dispatch(method, data) + } + + fn native_version() -> sc_executor::NativeVersion { + rialto_runtime::native_version() + } +} #[derive(thiserror::Error, Debug)] pub enum Error { @@ -153,13 +170,13 @@ pub fn new_partial( FullClient, FullBackend, FullSelectChain, - sp_consensus::DefaultImportQueue, + sc_consensus::DefaultImportQueue, FullTransactionPool, ( impl Fn( sc_rpc::DenyUnsafe, sc_rpc::SubscriptionTaskExecutor, - ) -> jsonrpc_core::IoHandler, + ) -> Result, sc_service::Error>, (FullBabeBlockImport, FullGrandpaLink, FullBabeLink), sc_finality_grandpa::SharedVoterState, std::time::Duration, @@ -172,7 +189,7 @@ where RuntimeApi: ConstructRuntimeApi + Send + Sync + 'static, >::RuntimeApi: RequiredApiCollection>, - Executor: NativeExecutionDispatch + 'static, + ExecutorDispatch: NativeExecutionDispatch + 'static, { set_prometheus_registry(config)?; @@ -187,9 +204,16 @@ where }) .transpose()?; + let executor = NativeElseWasmExecutor::::new( + config.wasm_method, + config.default_heap_pages, + config.max_runtime_instances, + ); + let (client, backend, keystore_container, task_manager) = sc_service::new_full_parts::( config, telemetry.as_ref().map(|(_, telemetry)| telemetry.handle()), + executor, )?; let client = Arc::new(client); @@ -260,7 +284,7 @@ where move |deny_unsafe, subscription_executor: sc_rpc::SubscriptionTaskExecutor| - -> jsonrpc_core::IoHandler { + -> Result, sc_service::Error> { use pallet_transaction_payment_rpc::{TransactionPayment, TransactionPaymentApi}; use sc_finality_grandpa_rpc::{GrandpaApi, GrandpaRpcHandler}; use substrate_frame_rpc_system::{FullSystem, SystemApi}; @@ -289,7 +313,7 @@ where finality_proof_provider, ))); - io + Ok(io) } }; @@ -314,7 +338,7 @@ where pub struct NewFull { pub task_manager: TaskManager, pub client: C, - pub overseer_handler: Option, + pub overseer_handle: Option, pub network: Arc::Hash>>, pub rpc_handlers: sc_service::RpcHandlers, pub backend: Arc, @@ -332,7 +356,7 @@ where RuntimeApi: ConstructRuntimeApi + Send + Sync + 'static, >::RuntimeApi: RequiredApiCollection>, - Executor: NativeExecutionDispatch + 'static, + ExecutorDispatch: NativeExecutionDispatch + 'static, { let best_block = select_chain.best_chain().await?; @@ -381,7 +405,7 @@ where RuntimeApi: ConstructRuntimeApi + Send + Sync + 'static, >::RuntimeApi: RequiredApiCollection>, - Executor: NativeExecutionDispatch + 'static, + ExecutorDispatch: NativeExecutionDispatch + 'static, { let is_collator = false; @@ -426,20 +450,23 @@ where config.network.extra_sets.extend(peer_sets_info(is_authority)); } - config - .network - .request_response_protocols - .push(sc_finality_grandpa_warp_sync::request_response_config_for_chain( - &config, - task_manager.spawn_handle(), - backend.clone(), - import_setup.1.shared_authority_set().clone(), - )); - let request_multiplexer = { - let (multiplexer, configs) = RequestMultiplexer::new(); - config.network.request_response_protocols.extend(configs); - multiplexer - }; + let (pov_req_receiver, cfg) = IncomingRequest::get_config_receiver(); + config.network.request_response_protocols.push(cfg); + let (chunk_req_receiver, cfg) = IncomingRequest::get_config_receiver(); + config.network.request_response_protocols.push(cfg); + let (collation_req_receiver, cfg) = IncomingRequest::get_config_receiver(); + config.network.request_response_protocols.push(cfg); + let (available_data_req_receiver, cfg) = IncomingRequest::get_config_receiver(); + config.network.request_response_protocols.push(cfg); + let (statement_req_receiver, cfg) = IncomingRequest::get_config_receiver(); + config.network.request_response_protocols.push(cfg); + let (dispute_req_receiver, cfg) = IncomingRequest::get_config_receiver(); + config.network.request_response_protocols.push(cfg); + + let warp_sync = Arc::new(sc_finality_grandpa::warp_proof::NetworkProvider::new( + backend.clone(), + import_setup.1.shared_authority_set().clone(), + )); let (network, system_rpc_tx, network_starter) = sc_service::build_network(sc_service::BuildNetworkParams { config: &config, @@ -449,6 +476,7 @@ where import_queue, on_demand: None, block_announce_validator_builder: None, + warp_sync: Some(warp_sync), })?; if config.offchain_worker.enabled { @@ -483,6 +511,15 @@ where }, }; + let chain_selection_config = ChainSelectionConfig { + col_data: crate::parachains_db::REAL_COLUMNS.col_chain_selection_data, + stagnant_check_interval: polkadot_node_core_chain_selection::StagnantCheckInterval::never(), + }; + + let dispute_coordinator_config = DisputeCoordinatorConfig { + col_data: crate::parachains_db::REAL_COLUMNS.col_dispute_coordinator_data, + }; + let rpc_handlers = sc_service::spawn_tasks(sc_service::SpawnTasksParams { config, backend: backend.clone(), @@ -545,8 +582,8 @@ where let local_keystore = keystore_container.local_keystore(); let maybe_params = local_keystore.and_then(move |k| authority_discovery_service.map(|a| (a, k))); - let overseer_handler = if let Some((authority_discovery_service, keystore)) = maybe_params { - let (overseer, overseer_handler) = + let overseer_handle = if let Some((authority_discovery_service, keystore)) = maybe_params { + let (overseer, overseer_handle) = overseer_gen.generate::(OverseerGenArgs { leaves: active_leaves, keystore, @@ -556,19 +593,27 @@ where approval_voting_config, network_service: network.clone(), authority_discovery_service, - request_multiplexer, registry: prometheus_registry.as_ref(), spawner, candidate_validation_config, + available_data_req_receiver, + chain_selection_config, + chunk_req_receiver, + collation_req_receiver, + dispute_coordinator_config, + dispute_req_receiver, + pov_req_receiver, + statement_req_receiver, })?; - let overseer_handler_clone = overseer_handler.clone(); + let handle = Handle::Connected(overseer_handle.clone()); + let handle_clone = handle.clone(); task_manager.spawn_essential_handle().spawn_blocking( "overseer", Box::pin(async move { use futures::{pin_mut, select, FutureExt}; - let forward = polkadot_overseer::forward_events(overseer_client, overseer_handler_clone); + let forward = polkadot_overseer::forward_events(overseer_client, handle_clone); let forward = forward.fuse(); let overseer_fut = overseer.run().fuse(); @@ -584,7 +629,7 @@ where }), ); - Some(overseer_handler) + Some(handle) } else { None }; @@ -601,7 +646,7 @@ where ); let client_clone = client.clone(); - let overseer_handler = overseer_handler + let overseer_handle = overseer_handle .as_ref() .ok_or(Error::AuthoritiesRequireRealOverseer)? .clone(); @@ -616,11 +661,11 @@ where justification_sync_link: network.clone(), create_inherent_data_providers: move |parent, ()| { let client_clone = client_clone.clone(); - let overseer_handler = overseer_handler.clone(); + let overseer_handle = overseer_handle.clone(); async move { let parachain = polkadot_node_core_parachains_inherent::ParachainsInherentDataProvider::create( &*client_clone, - overseer_handler, + overseer_handle, parent, ) .await @@ -705,7 +750,7 @@ where Ok(NewFull { task_manager, client, - overseer_handler, + overseer_handle, network, rpc_handlers, backend, diff --git a/bin/rialto/runtime/Cargo.toml b/bin/rialto/runtime/Cargo.toml index 4c0e51ad3c..8f4f4ef30e 100644 --- a/bin/rialto/runtime/Cargo.toml +++ b/bin/rialto/runtime/Cargo.toml @@ -12,7 +12,7 @@ codec = { package = "parity-scale-codec", version = "2.2.0", default-features = hex-literal = "0.3" libsecp256k1 = { version = "0.3.4", optional = true, default-features = false, features = ["hmac"] } log = { version = "0.4.14", default-features = false } -serde = { version = "1.0.124", optional = true, features = ["derive"] } +serde = { version = "1.0", optional = true, features = ["derive"] } # Bridge dependencies diff --git a/bin/rialto/runtime/src/lib.rs b/bin/rialto/runtime/src/lib.rs index 8e7f3f2e42..b440000ae6 100644 --- a/bin/rialto/runtime/src/lib.rs +++ b/bin/rialto/runtime/src/lib.rs @@ -167,7 +167,7 @@ parameter_types! { impl frame_system::Config for Runtime { /// The basic call filter to use in dispatchable. - type BaseCallFilter = (); + type BaseCallFilter = frame_support::traits::Everything; /// The identifier used to distinguish between accounts. type AccountId = AccountId; /// The aggregated dispatch type that is available for extrinsics. @@ -244,6 +244,7 @@ impl pallet_babe::Config for Runtime { >::IdentificationTuple; type HandleEquivocation = (); + type DisabledValidators = (); type WeightInfo = (); } @@ -293,7 +294,7 @@ impl pallet_bridge_dispatch::Config for Runtime { type Event = Event; type BridgeMessageId = (bp_messages::LaneId, bp_messages::MessageNonce); type Call = Call; - type CallFilter = (); + type CallFilter = frame_support::traits::Everything; type EncodedCall = crate::millau_messages::FromMillauEncodedCall; type SourceChainAccountId = bp_millau::AccountId; type TargetChainAccountPublic = MultiSigner; @@ -447,7 +448,13 @@ impl pallet_session::Config for Runtime { type WeightInfo = (); } -impl pallet_authority_discovery::Config for Runtime {} +parameter_types! { + pub const MaxAuthorities: u32 = 10; +} + +impl pallet_authority_discovery::Config for Runtime { + type MaxAuthorities = MaxAuthorities; +} parameter_types! { /// This is a pretty unscientific cap. @@ -572,17 +579,17 @@ construct_runtime!( // Parachain modules. ParachainsOrigin: polkadot_runtime_parachains::origin::{Pallet, Origin}, - ParachainsConfiguration: polkadot_runtime_parachains::configuration::{Pallet, Call, Storage, Config}, + Configuration: polkadot_runtime_parachains::configuration::{Pallet, Call, Storage, Config}, Shared: polkadot_runtime_parachains::shared::{Pallet, Call, Storage}, Inclusion: polkadot_runtime_parachains::inclusion::{Pallet, Call, Storage, Event}, ParasInherent: polkadot_runtime_parachains::paras_inherent::{Pallet, Call, Storage, Inherent}, - Scheduler: polkadot_runtime_parachains::scheduler::{Pallet, Call, Storage}, + Scheduler: polkadot_runtime_parachains::scheduler::{Pallet, Storage}, Paras: polkadot_runtime_parachains::paras::{Pallet, Call, Storage, Event, Config}, Initializer: polkadot_runtime_parachains::initializer::{Pallet, Call, Storage}, Dmp: polkadot_runtime_parachains::dmp::{Pallet, Call, Storage}, Ump: polkadot_runtime_parachains::ump::{Pallet, Call, Storage, Event}, - Hrmp: polkadot_runtime_parachains::hrmp::{Pallet, Call, Storage, Event, Config}, - SessionInfo: polkadot_runtime_parachains::session_info::{Pallet, Call, Storage}, + Hrmp: polkadot_runtime_parachains::hrmp::{Pallet, Call, Storage, Event, Config}, + SessionInfo: polkadot_runtime_parachains::session_info::{Pallet, Storage}, // Parachain Onboarding Pallets Registrar: polkadot_runtime_common::paras_registrar::{Pallet, Call, Storage, Event}, @@ -911,6 +918,10 @@ impl_runtime_apis! { } impl fg_primitives::GrandpaApi for Runtime { + fn current_set_id() -> fg_primitives::SetId { + Grandpa::current_set_id() + } + fn grandpa_authorities() -> GrandpaAuthorityList { Grandpa::grandpa_authorities() } @@ -989,6 +1000,32 @@ impl_runtime_apis! { #[cfg(feature = "runtime-benchmarks")] impl frame_benchmarking::Benchmark for Runtime { + fn benchmark_metadata(extra: bool) -> ( + Vec, + Vec, + ) { + use frame_benchmarking::{list_benchmark, Benchmarking, BenchmarkList}; + use frame_support::traits::StorageInfoTrait; + + use pallet_bridge_currency_exchange::benchmarking::Pallet as BridgeCurrencyExchangeBench; + use pallet_bridge_messages::benchmarking::Pallet as MessagesBench; + + let mut list = Vec::::new(); + + list_benchmark!(list, extra, pallet_bridge_eth_poa, BridgeRialtoPoa); + list_benchmark!( + list, + extra, + pallet_bridge_currency_exchange, BridgeCurrencyExchangeBench:: + ); + list_benchmark!(list, extra, pallet_bridge_messages, MessagesBench::); + list_benchmark!(list, extra, pallet_bridge_grandpa, BridgeMillauGrandpa); + + let storage_info = AllPalletsWithSystem::storage_info(); + + return (list, storage_info) + } + fn dispatch_benchmark( config: frame_benchmarking::BenchmarkConfig, ) -> Result, sp_runtime::RuntimeString> { diff --git a/bin/rialto/runtime/src/parachains.rs b/bin/rialto/runtime/src/parachains.rs index 47fc6722a1..ba7b01ea11 100644 --- a/bin/rialto/runtime/src/parachains.rs +++ b/bin/rialto/runtime/src/parachains.rs @@ -59,6 +59,7 @@ impl parachains_hrmp::Config for Runtime { impl parachains_inclusion::Config for Runtime { type Event = Event; type RewardValidators = RewardValidators; + type DisputesHandler = (); } impl parachains_initializer::Config for Runtime { diff --git a/modules/currency-exchange/src/lib.rs b/modules/currency-exchange/src/lib.rs index 290e1a9bc9..550467f5d6 100644 --- a/modules/currency-exchange/src/lib.rs +++ b/modules/currency-exchange/src/lib.rs @@ -371,7 +371,7 @@ mod tests { type AccountData = (); type OnNewAccount = (); type OnKilledAccount = (); - type BaseCallFilter = (); + type BaseCallFilter = frame_support::traits::Everything; type SystemWeightInfo = (); type BlockWeights = (); type BlockLength = (); diff --git a/modules/dispatch/src/lib.rs b/modules/dispatch/src/lib.rs index b334d862d8..698d3842a0 100644 --- a/modules/dispatch/src/lib.rs +++ b/modules/dispatch/src/lib.rs @@ -36,7 +36,7 @@ use codec::Encode; use frame_support::{ dispatch::Dispatchable, ensure, - traits::{Filter, Get}, + traits::{Contains, Get}, weights::{extract_actual_weight, GetDispatchInfo}, }; use frame_system::RawOrigin; @@ -77,7 +77,7 @@ pub mod pallet { /// /// The pallet will filter all incoming calls right before they're dispatched. If this filter /// rejects the call, special event (`Event::MessageCallRejected`) is emitted. - type CallFilter: Filter<>::Call>; + type CallFilter: Contains<>::Call>; /// The type that is used to wrap the `Self::Call` when it is moved over bridge. /// /// The idea behind this is to avoid `Call` conversion/decoding until we'll be sure @@ -252,7 +252,7 @@ impl, I: 'static> MessageDispatch }; // filter the call - if !T::CallFilter::filter(&call) { + if !T::CallFilter::contains(&call) { log::trace!( target: "runtime::bridge-dispatch", "Message {:?}/{:?}: the call ({:?}) is rejected by filter", @@ -491,7 +491,7 @@ mod tests { type AccountData = (); type OnNewAccount = (); type OnKilledAccount = (); - type BaseCallFilter = (); + type BaseCallFilter = frame_support::traits::Everything; type SystemWeightInfo = (); type BlockWeights = (); type BlockLength = (); @@ -523,8 +523,8 @@ mod tests { pub struct TestCallFilter; - impl Filter for TestCallFilter { - fn filter(call: &Call) -> bool { + impl Contains for TestCallFilter { + fn contains(call: &Call) -> bool { !matches!(*call, Call::System(frame_system::Call::fill_block(_))) } } diff --git a/modules/ethereum/src/mock.rs b/modules/ethereum/src/mock.rs index 90c143dc93..00c10d3cc3 100644 --- a/modules/ethereum/src/mock.rs +++ b/modules/ethereum/src/mock.rs @@ -73,7 +73,7 @@ impl frame_system::Config for TestRuntime { type AccountData = (); type OnNewAccount = (); type OnKilledAccount = (); - type BaseCallFilter = (); + type BaseCallFilter = frame_support::traits::Everything; type SystemWeightInfo = (); type BlockWeights = (); type BlockLength = (); diff --git a/modules/grandpa/src/mock.rs b/modules/grandpa/src/mock.rs index 363594c35f..dcbae4e60f 100644 --- a/modules/grandpa/src/mock.rs +++ b/modules/grandpa/src/mock.rs @@ -70,7 +70,7 @@ impl frame_system::Config for TestRuntime { type AccountData = (); type OnNewAccount = (); type OnKilledAccount = (); - type BaseCallFilter = (); + type BaseCallFilter = frame_support::traits::Everything; type SystemWeightInfo = (); type DbWeight = (); type BlockWeights = (); diff --git a/modules/messages/src/mock.rs b/modules/messages/src/mock.rs index 88ec92ff03..84496393d5 100644 --- a/modules/messages/src/mock.rs +++ b/modules/messages/src/mock.rs @@ -112,7 +112,7 @@ impl frame_system::Config for TestRuntime { type AccountData = pallet_balances::AccountData; type OnNewAccount = (); type OnKilledAccount = (); - type BaseCallFilter = (); + type BaseCallFilter = frame_support::traits::Everything; type SystemWeightInfo = (); type BlockWeights = (); type BlockLength = (); diff --git a/modules/shift-session-manager/src/lib.rs b/modules/shift-session-manager/src/lib.rs index eef336ffd8..011b50ad59 100644 --- a/modules/shift-session-manager/src/lib.rs +++ b/modules/shift-session-manager/src/lib.rs @@ -150,7 +150,7 @@ mod tests { type AccountData = (); type OnNewAccount = (); type OnKilledAccount = (); - type BaseCallFilter = (); + type BaseCallFilter = frame_support::traits::Everything; type SystemWeightInfo = (); type BlockWeights = (); type BlockLength = (); diff --git a/modules/token-swap/src/mock.rs b/modules/token-swap/src/mock.rs index c95f413b72..ed5c1b7cee 100644 --- a/modules/token-swap/src/mock.rs +++ b/modules/token-swap/src/mock.rs @@ -81,7 +81,7 @@ impl frame_system::Config for TestRuntime { type AccountData = pallet_balances::AccountData; type OnNewAccount = (); type OnKilledAccount = (); - type BaseCallFilter = (); + type BaseCallFilter = frame_support::traits::Everything; type SystemWeightInfo = (); type BlockWeights = (); type BlockLength = (); diff --git a/primitives/chain-millau/Cargo.toml b/primitives/chain-millau/Cargo.toml index c4f30aaf6b..a0630fa8a9 100644 --- a/primitives/chain-millau/Cargo.toml +++ b/primitives/chain-millau/Cargo.toml @@ -16,8 +16,8 @@ fixed-hash = { version = "0.7.0", default-features = false } hash256-std-hasher = { version = "0.15.2", default-features = false } impl-codec = { version = "0.5.1", default-features = false } impl-serde = { version = "0.3.1", optional = true } -parity-util-mem = { version = "0.10.0", default-features = false, features = ["primitive-types"] } -serde = { version = "1.0.101", optional = true, features = ["derive"] } +parity-util-mem = { version = "0.10", default-features = false, features = ["primitive-types"] } +serde = { version = "1.0", optional = true, features = ["derive"] } # Substrate Based Dependencies diff --git a/primitives/messages/Cargo.toml b/primitives/messages/Cargo.toml index 2dc5ae8032..af0dcf904f 100644 --- a/primitives/messages/Cargo.toml +++ b/primitives/messages/Cargo.toml @@ -10,7 +10,7 @@ license = "GPL-3.0-or-later WITH Classpath-exception-2.0" bitvec = { version = "0.20", default-features = false, features = ["alloc"] } codec = { package = "parity-scale-codec", version = "2.2.0", default-features = false, features = ["derive", "bit-vec"] } impl-trait-for-tuples = "0.2" -serde = { version = "1.0.101", optional = true, features = ["derive"] } +serde = { version = "1.0", optional = true, features = ["derive"] } # Bridge dependencies diff --git a/relays/bin-substrate/src/cli/encode_call.rs b/relays/bin-substrate/src/cli/encode_call.rs index b5f80ffdcd..23ea4b8073 100644 --- a/relays/bin-substrate/src/cli/encode_call.rs +++ b/relays/bin-substrate/src/cli/encode_call.rs @@ -332,7 +332,7 @@ mod tests { // then assert!(format!("{:?}", call_hex).starts_with( - "0x11030000000001000000b0d60f000000000001d43593c715fdd31c61141abd04a99fd6822c8558854cc\ + "0x11030000000001000000381409000000000001d43593c715fdd31c61141abd04a99fd6822c8558854cc\ de39a5684e7a56da27d01d43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d01" )) } diff --git a/relays/bin-substrate/src/cli/encode_message.rs b/relays/bin-substrate/src/cli/encode_message.rs index a2e049f24f..36a4806976 100644 --- a/relays/bin-substrate/src/cli/encode_message.rs +++ b/relays/bin-substrate/src/cli/encode_message.rs @@ -102,6 +102,6 @@ mod tests { let hex = encode_message.encode().unwrap(); // then - assert_eq!(format!("{:?}", hex), "0x01000000b0d60f000000000002d43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d003c000130000000000000000000000000"); + assert_eq!(format!("{:?}", hex), "0x0100000010f108000000000002d43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d003c000130000000000000000000000000"); } } diff --git a/relays/bin-substrate/src/cli/send_message.rs b/relays/bin-substrate/src/cli/send_message.rs index 68b332b069..04ce386ef0 100644 --- a/relays/bin-substrate/src/cli/send_message.rs +++ b/relays/bin-substrate/src/cli/send_message.rs @@ -320,7 +320,7 @@ mod tests { payload, MessagePayload { spec_version: relay_millau_client::Millau::RUNTIME_VERSION.spec_version, - weight: 1038000, + weight: 576000, origin: CallOrigin::SourceAccount(sp_keyring::AccountKeyring::Alice.to_account_id()), dispatch_fee_payment: bp_runtime::messages::DispatchFeePayment::AtSourceChain, call: hex!("0001081234").to_vec(), @@ -360,7 +360,7 @@ mod tests { payload, MessagePayload { spec_version: relay_millau_client::Millau::RUNTIME_VERSION.spec_version, - weight: 1038000, + weight: 576000, origin: CallOrigin::TargetAccount( sp_keyring::AccountKeyring::Alice.to_account_id(), sp_keyring::AccountKeyring::Bob.into(), diff --git a/relays/client-substrate/Cargo.toml b/relays/client-substrate/Cargo.toml index 807080dcc8..90e775b784 100644 --- a/relays/client-substrate/Cargo.toml +++ b/relays/client-substrate/Cargo.toml @@ -34,11 +34,11 @@ pallet-transaction-payment = { git = "https://github.com/paritytech/substrate", pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", branch = "master" } sc-rpc-api = { git = "https://github.com/paritytech/substrate", branch = "master" } sp-core = { git = "https://github.com/paritytech/substrate", branch = "master" } +sc-transaction-pool-api = { git = "https://github.com/paritytech/substrate", branch = "master" } sp-finality-grandpa = { git = "https://github.com/paritytech/substrate", branch = "master" } sp-rpc = { git = "https://github.com/paritytech/substrate", branch = "master" } sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "master" } sp-storage = { git = "https://github.com/paritytech/substrate", branch = "master" } -sp-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "master" } sp-trie = { git = "https://github.com/paritytech/substrate", branch = "master" } sp-version = { git = "https://github.com/paritytech/substrate", branch = "master" } diff --git a/relays/client-substrate/src/chain.rs b/relays/client-substrate/src/chain.rs index 60fe63230a..84db77ec6d 100644 --- a/relays/client-substrate/src/chain.rs +++ b/relays/client-substrate/src/chain.rs @@ -19,13 +19,13 @@ use codec::{Codec, Encode}; use frame_support::weights::WeightToFeePolynomial; use jsonrpsee_ws_client::{DeserializeOwned, Serialize}; use num_traits::Zero; +use sc_transaction_pool_api::TransactionStatus; use sp_core::{storage::StorageKey, Pair}; use sp_runtime::{ generic::SignedBlock, traits::{Block as BlockT, Dispatchable, Member}, EncodedJustification, }; -use sp_transaction_pool::TransactionStatus; use std::{fmt::Debug, time::Duration}; /// Substrate-based chain from minimal relay-client point of view. diff --git a/relays/client-substrate/src/client.rs b/relays/client-substrate/src/client.rs index 31f4a19d8f..be483243df 100644 --- a/relays/client-substrate/src/client.rs +++ b/relays/client-substrate/src/client.rs @@ -18,7 +18,7 @@ use crate::chain::{Chain, ChainWithBalances, TransactionStatusOf}; use crate::rpc::Substrate; -use crate::{ConnectionParams, Error, HeaderIdOf, Result}; +use crate::{ConnectionParams, Error, HashOf, HeaderIdOf, Result}; use async_std::sync::{Arc, Mutex}; use async_trait::async_trait; @@ -61,7 +61,7 @@ pub struct Client { /// Substrate RPC client. client: Arc, /// Genesis block hash. - genesis_hash: C::Hash, + genesis_hash: HashOf, /// If several tasks are submitting their transactions simultaneously using `submit_signed_extrinsic` /// method, they may get the same transaction nonce. So one of transactions will be rejected /// from the pool. This lock is here to prevent situations like that. diff --git a/relays/client-substrate/src/guard.rs b/relays/client-substrate/src/guard.rs index 6c5bf16baa..093cc50f05 100644 --- a/relays/client-substrate/src/guard.rs +++ b/relays/client-substrate/src/guard.rs @@ -39,10 +39,12 @@ pub trait Environment: Send + Sync + 'static { fn now(&self) -> Instant { Instant::now() } + /// Sleep given amount of time. async fn sleep(&mut self, duration: Duration) { async_std::task::sleep(duration).await } + /// Abort current process. Called when guard condition check fails. async fn abort(&mut self) { std::process::abort(); diff --git a/relays/headers/src/sync.rs b/relays/headers/src/sync.rs index cd5ab0906f..7e3d902029 100644 --- a/relays/headers/src/sync.rs +++ b/relays/headers/src/sync.rs @@ -131,13 +131,13 @@ impl HeadersSync

{ } // if queue is empty and best header on target is > than best header on source, - // then we shoud reorg + // then we shoud reorganization let best_queued_number = self.headers.best_queued_number(); if best_queued_number.is_zero() && source_best_number < target_best_header.0 { return Some(source_best_number); } - // we assume that there were no reorgs if we have already downloaded best header + // we assume that there were no reorganizations if we have already downloaded best header let best_downloaded_number = std::cmp::max( std::cmp::max(best_queued_number, self.headers.best_synced_number()), target_best_header.0, diff --git a/relays/headers/src/sync_loop.rs b/relays/headers/src/sync_loop.rs index c373f41520..a557eca6a2 100644 --- a/relays/headers/src/sync_loop.rs +++ b/relays/headers/src/sync_loop.rs @@ -38,13 +38,13 @@ use std::{ /// When we submit headers to target node, but see no updates of best /// source block known to target node during STALL_SYNC_TIMEOUT seconds, -/// we consider that our headers are rejected because there has been reorg in target chain. -/// This reorg could invalidate our knowledge about sync process (i.e. we have asked if -/// HeaderA is known to target, but then reorg happened and the answer is different +/// we consider that our headers are rejected because there has been reorganization in target chain. +/// This reorganization could invalidate our knowledge about sync process (i.e. we have asked if +/// HeaderA is known to target, but then reorganization happened and the answer is different /// now) => we need to reset sync. /// The other option is to receive **EVERY** best target header and check if it is /// direct child of previous best header. But: (1) subscription doesn't guarantee that -/// the subscriber will receive every best header (2) reorg won't always lead to sync +/// the subscriber will receive every best header (2) reorganization won't always lead to sync /// stall and restart is a heavy operation (we forget all in-memory headers). const STALL_SYNC_TIMEOUT: Duration = Duration::from_secs(5 * 60); /// Delay after we have seen update of best source header at target node,