From 80b0d940797afb291c6a71438d6d1fecb4cdf7fb Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Thu, 3 Aug 2023 11:09:13 +0700 Subject: [PATCH 01/44] work with latest substrate --- Cargo.lock | 6014 +++++++++++++++++++++++++++-------------------- cli/Cargo.toml | 12 +- cli/main.rs | 33 +- core/Cargo.toml | 30 +- core/src/lib.rs | 73 +- rust-toolchain | 1 - 6 files changed, 3539 insertions(+), 2624 deletions(-) delete mode 100644 rust-toolchain diff --git a/Cargo.lock b/Cargo.lock index 00e68eadbab..735d8fb3ac5 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -14,20 +14,20 @@ dependencies = [ [[package]] name = "addr2line" -version = "0.17.0" +version = "0.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9ecd88a8c8378ca913a680cd98f0f13ac67383d35993f86c90a70e3f137816b" +checksum = "a76fd60b23679b7d19bd066031410fb7e458ccc5e958eb5c325888ce4baedc97" dependencies = [ - "gimli 0.26.2", + "gimli", ] [[package]] name = "addr2line" -version = "0.19.0" +version = "0.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a76fd60b23679b7d19bd066031410fb7e458ccc5e958eb5c325888ce4baedc97" +checksum = "f4fa78e18c64fce05e902adecd7a5eed15a5e0a3439f7b0e169f0252214865e3" dependencies = [ - "gimli 0.27.2", + "gimli", ] [[package]] @@ -36,44 +36,23 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" -[[package]] -name = "aead" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fc95d1bdb8e6666b2b217308eeeb09f2d6728d104be3e31916cc74d15420331" -dependencies = [ - "generic-array 0.14.6", -] - [[package]] name = "aead" version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b613b8e1e3cf911a086f53f03bf286f52fd7a7258e4fa606f0ef220d39d8877" dependencies = [ - "generic-array 0.14.6", - "rand_core 0.6.4", + "generic-array 0.14.7", ] [[package]] name = "aead" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c192eb8f11fc081b0fe4259ba5af04217d4e0faddd02417310a927911abd7c8" +checksum = "d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0" dependencies = [ "crypto-common", - "generic-array 0.14.6", -] - -[[package]] -name = "aes" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "884391ef1066acaa41e766ba8f596341b96e93ce34f9a43e7d24bf0a0eaf0561" -dependencies = [ - "aes-soft", - "aesni", - "cipher 0.2.5", + "generic-array 0.14.7", ] [[package]] @@ -90,9 +69,9 @@ dependencies = [ [[package]] name = "aes" -version = "0.8.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "433cfd6710c9986c576a25ca913c39d66a6474107b406f34f91d4a8923395241" +checksum = "ac1f845298e95f983ff1944b728ae08b8cebab80d684f0a832ed0fc74dfa27e2" dependencies = [ "cfg-if", "cipher 0.4.4", @@ -115,45 +94,25 @@ dependencies = [ [[package]] name = "aes-gcm" -version = "0.10.1" +version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82e1366e0c69c9f927b1fa5ce2c7bf9eafc8f9268c0b9800729e8b267612447c" +checksum = "209b47e8954a928e1d72e86eca7000ebb6655fe1436d33eefc2201cad027e237" dependencies = [ - "aead 0.5.1", - "aes 0.8.2", + "aead 0.5.2", + "aes 0.8.3", "cipher 0.4.4", "ctr 0.9.2", "ghash 0.5.0", "subtle", ] -[[package]] -name = "aes-soft" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be14c7498ea50828a38d0e24a765ed2effe92a705885b57d029cd67d45744072" -dependencies = [ - "cipher 0.2.5", - "opaque-debug 0.3.0", -] - -[[package]] -name = "aesni" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea2e11f5e94c2f7d386164cc2aa1f97823fed6f259e486940a71c174dd01b0ce" -dependencies = [ - "cipher 0.2.5", - "opaque-debug 0.3.0", -] - [[package]] name = "ahash" version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47" dependencies = [ - "getrandom 0.2.8", + "getrandom 0.2.10", "once_cell", "version_check", ] @@ -165,20 +124,26 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2c99f64d1e06488f620f932677e24bc6e2897582980441ae90a671415bd7ec2f" dependencies = [ "cfg-if", - "getrandom 0.2.8", + "getrandom 0.2.10", "once_cell", "version_check", ] [[package]] name = "aho-corasick" -version = "0.7.20" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac" +checksum = "43f6cb1bf222025340178f382c426f13757b2960e89779dfcb319c32542a5a41" dependencies = [ "memchr", ] +[[package]] +name = "android-tzdata" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" + [[package]] name = "android_system_properties" version = "0.1.5" @@ -198,119 +163,118 @@ dependencies = [ ] [[package]] -name = "anyhow" -version = "1.0.70" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7de8ce5e0f9f8d88245311066a578d72b7af3e7088f32783804676302df237e4" - -[[package]] -name = "arc-swap" -version = "1.6.0" +name = "anstream" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bddcadddf5e9015d310179a59bb28c4d4b9920ad0f11e8e14dbadf654890c9a6" +checksum = "0ca84f3628370c59db74ee214b3263d58f9aadd9b4fe7e711fd87dc452b7f163" +dependencies = [ + "anstyle", + "anstyle-parse", + "anstyle-query", + "anstyle-wincon", + "colorchoice", + "is-terminal", + "utf8parse", +] [[package]] -name = "array-bytes" -version = "4.2.0" +name = "anstyle" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f52f63c5c1316a16a4b35eaac8b76a98248961a533f061684cb2a7cb0eafb6c6" +checksum = "3a30da5c5f2d5e72842e00bcb57657162cdabef0931f40e2deb9b4140440cecd" [[package]] -name = "arrayref" -version = "0.3.7" +name = "anstyle-parse" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b4930d2cb77ce62f89ee5d5289b4ac049559b1c45539271f5ed4fdc7db34545" +checksum = "938874ff5980b03a87c5524b3ae5b59cf99b1d6bc836848df7bc5ada9643c333" +dependencies = [ + "utf8parse", +] [[package]] -name = "arrayvec" -version = "0.5.2" +name = "anstyle-query" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" +checksum = "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b" +dependencies = [ + "windows-sys 0.48.0", +] [[package]] -name = "arrayvec" -version = "0.7.2" +name = "anstyle-wincon" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8da52d66c7071e2e3fa2a1e5c6d088fec47b593032b254f5e980de8ea54454d6" +checksum = "180abfa45703aebe0093f79badacc01b8fd4ea2e35118747e5811127f926e188" +dependencies = [ + "anstyle", + "windows-sys 0.48.0", +] [[package]] -name = "asn1-rs" -version = "0.3.1" +name = "anyhow" +version = "1.0.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30ff05a702273012438132f449575dbc804e27b2f3cbe3069aa237d26c98fa33" -dependencies = [ - "asn1-rs-derive 0.1.0", - "asn1-rs-impl", - "displaydoc", - "nom", - "num-traits", - "rusticata-macros", - "thiserror", - "time 0.3.20", -] +checksum = "3b13c32d80ecc7ab747b80c3784bce54ee8a7a0cc4fbda9bf4cda2cf6fe90854" [[package]] -name = "asn1-rs" -version = "0.5.2" +name = "approx" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f6fd5ddaf0351dff5b8da21b2fb4ff8e08ddd02857f0bf69c47639106c0fff0" +checksum = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6" dependencies = [ - "asn1-rs-derive 0.4.0", - "asn1-rs-impl", - "displaydoc", - "nom", "num-traits", - "rusticata-macros", - "thiserror", - "time 0.3.20", ] [[package]] -name = "asn1-rs-derive" -version = "0.1.0" +name = "aquamarine" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db8b7511298d5b7784b40b092d9e9dcd3a627a5707e4b5e507931ab0d44eeebf" +checksum = "df752953c49ce90719c7bf1fc587bc8227aed04732ea0c0f85e5397d7fdbd1a1" dependencies = [ + "include_dir", + "itertools", + "proc-macro-error", "proc-macro2", "quote", "syn 1.0.109", - "synstructure", ] [[package]] -name = "asn1-rs-derive" -version = "0.4.0" +name = "array-bytes" +version = "6.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "726535892e8eae7e70657b4c8ea93d26b8553afb1ce617caee529ef96d7dee6c" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", - "synstructure", -] +checksum = "d9b1c5a481ec30a5abd8dfbd94ab5cf1bb4e9a66be7f1b3b322f2f1170c200fd" [[package]] -name = "asn1-rs-impl" -version = "0.1.0" +name = "arrayref" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2777730b2039ac0f95f093556e61b6d26cebed5393ca6f152717777cec3a42ed" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] +checksum = "6b4930d2cb77ce62f89ee5d5289b4ac049559b1c45539271f5ed4fdc7db34545" [[package]] -name = "asn1_der" -version = "0.7.5" +name = "arrayvec" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" + +[[package]] +name = "arrayvec" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" + +[[package]] +name = "assert_matches" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e22d1f4b888c298a027c99dc9048015fac177587de20fc30232a057dfbe24a21" +checksum = "9b34d609dfbaf33d6889b2b7106d3ca345eacad44200913df5ba02bfd31d2ba9" [[package]] name = "async-channel" -version = "1.8.0" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf46fee83e5ccffc220104713af3292ff9bc7c64c7de289f66dae8e38d826833" +checksum = "81953c529336010edd6d8e358f886d9581267795c61b19475b71314bffa46d35" dependencies = [ "concurrent-queue", "event-listener", @@ -319,22 +283,22 @@ dependencies = [ [[package]] name = "async-io" -version = "1.12.0" +version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c374dda1ed3e7d8f0d9ba58715f924862c63eae6849c92d3a18e7fbde9e2794" +checksum = "0fc5b45d93ef0529756f812ca52e44c221b35341892d3dcc34132ac02f3dd2af" dependencies = [ "async-lock", "autocfg", + "cfg-if", "concurrent-queue", "futures-lite", - "libc", "log", "parking", "polling", + "rustix 0.37.23", "slab", - "socket2", + "socket2 0.4.9", "waker-fn", - "windows-sys 0.42.0", ] [[package]] @@ -346,36 +310,41 @@ dependencies = [ "event-listener", ] +[[package]] +name = "async-recursion" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e97ce7de6cf12de5d7226c73f5ba9811622f4db3a5b91b55c53e987e5f91cba" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.28", +] + [[package]] name = "async-trait" -version = "0.1.67" +version = "0.1.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86ea188f25f0255d8f92797797c97ebf5631fa88178beb1a46fdf5622c9a00e4" +checksum = "cc6dde6e4ed435a4c1ee4e73592f5ba9da2151af10076cc04858746af9352d09" dependencies = [ "proc-macro2", "quote", - "syn 2.0.4", + "syn 2.0.28", ] [[package]] name = "asynchronous-codec" -version = "0.6.1" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06a0daa378f5fd10634e44b0a29b2a87b890657658e072a30d6f26e57ddee182" +checksum = "4057f2c32adbb2fc158e22fb38433c8e9bbf76b75a4732c7c0cbaf695fb65568" dependencies = [ "bytes", "futures-sink", "futures-util", "memchr", - "pin-project-lite 0.2.9", + "pin-project-lite 0.2.10", ] -[[package]] -name = "atomic-waker" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "debc29dde2e69f9e47506b525f639ed42300fc014a3e007832592448fa8e4599" - [[package]] name = "atty" version = "0.2.14" @@ -395,16 +364,16 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" [[package]] name = "backtrace" -version = "0.3.67" +version = "0.3.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "233d376d6d185f2a3093e58f283f60f880315b6c60075b01f36b3b85154564ca" +checksum = "4319208da049c43661739c5fade2ba182f09d1dc2299b32298d3a31692b17e12" dependencies = [ - "addr2line 0.19.0", + "addr2line 0.20.0", "cc", "cfg-if", "libc", "miniz_oxide", - "object 0.30.3", + "object 0.31.1", "rustc-demangle", ] @@ -414,24 +383,12 @@ version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4cbbc9d0964165b47557570cce6c952866c2678457aca742aafc9fb771d30270" -[[package]] -name = "base16ct" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349a06037c7bf932dd7e7d1f653678b2038b9ad46a74102f1fc7bd7872678cce" - [[package]] name = "base16ct" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" -[[package]] -name = "base58" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6107fe1be6682a68940da878d9e9f5e90ca5745b3dec9fd1bb393c8777d4f581" - [[package]] name = "base64" version = "0.13.1" @@ -440,9 +397,9 @@ checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" [[package]] name = "base64" -version = "0.21.0" +version = "0.21.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4a4ddaa51a5bc52a6948f74c06d20aaaddb71924eab79b8c97a8c556e942d6a" +checksum = "604178f6c5c21f02dc555784810edfb88d34ac2c73b2eae109655649ee73ce3d" [[package]] name = "base64ct" @@ -470,9 +427,9 @@ dependencies = [ [[package]] name = "bindgen" -version = "0.64.0" +version = "0.65.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4243e6031260db77ede97ad86c27e501d646a27ab57b59a574f725d98ab1fb4" +checksum = "cfdf7b466f9a4903edc73f95d6d2bcd5baf8ae620638762244d3f60143643cc5" dependencies = [ "bitflags 1.3.2", "cexpr", @@ -480,12 +437,13 @@ dependencies = [ "lazy_static", "lazycell", "peeking_take_while", + "prettyplease 0.2.12", "proc-macro2", "quote", "regex", "rustc-hash", "shlex", - "syn 1.0.109", + "syn 2.0.28", ] [[package]] @@ -496,9 +454,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.0.2" +version = "2.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "487f1e0fcbe47deb8b0574e646def1c903389d95241dd1bbcc6ce4a715dfc0c1" +checksum = "630be753d4e58660abd17930c71b647fe46c27ea6b63cc59e1e3851406972e42" [[package]] name = "bitvec" @@ -518,7 +476,7 @@ version = "0.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe" dependencies = [ - "digest 0.10.6", + "digest 0.10.7", ] [[package]] @@ -528,8 +486,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c2f0dc9a68c6317d884f97cc36cf5a3d20ba14ce404227df55e1af708ab04bc" dependencies = [ "arrayref", - "arrayvec 0.7.2", - "constant_time_eq", + "arrayvec 0.7.4", + "constant_time_eq 0.2.6", ] [[package]] @@ -539,21 +497,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6637f448b9e61dfadbdcbae9a885fadee1f3eaffb1f8d3c1965d3ade8bdfd44f" dependencies = [ "arrayref", - "arrayvec 0.7.2", - "constant_time_eq", + "arrayvec 0.7.4", + "constant_time_eq 0.2.6", ] [[package]] name = "blake3" -version = "1.3.3" +version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42ae2468a89544a466886840aa467a25b766499f4f04bf7d9fcd10ecee9fccef" +checksum = "199c42ab6972d92c9f8995f086273d25c42fc0f7b2a1fcefba465c1352d25ba5" dependencies = [ "arrayref", - "arrayvec 0.7.2", + "arrayvec 0.7.4", "cc", "cfg-if", - "constant_time_eq", + "constant_time_eq 0.3.0", ] [[package]] @@ -562,7 +520,7 @@ version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b" dependencies = [ - "block-padding 0.1.5", + "block-padding", "byte-tools", "byteorder", "generic-array 0.12.4", @@ -574,7 +532,7 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" dependencies = [ - "generic-array 0.14.6", + "generic-array 0.14.7", ] [[package]] @@ -583,17 +541,7 @@ version = "0.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" dependencies = [ - "generic-array 0.14.6", -] - -[[package]] -name = "block-modes" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57a0e8073e8baa88212fb5823574c02ebccb395136ba9a164ab89379ec6072f0" -dependencies = [ - "block-padding 0.2.1", - "cipher 0.2.5", + "generic-array 0.14.7", ] [[package]] @@ -605,17 +553,11 @@ dependencies = [ "byte-tools", ] -[[package]] -name = "block-padding" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d696c370c750c948ada61c69a0ee2cbbb9c50b1019ddb86d9317157a99c2cae" - [[package]] name = "bounded-collections" -version = "0.1.5" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a071c348a5ef6da1d3a87166b408170b46002382b1dda83992b5c2208cefb370" +checksum = "eb5b05133427c07c4776906f673ccf36c21b102c9829c641a5b56bd151d44fd6" dependencies = [ "log", "parity-scale-codec", @@ -629,21 +571,39 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "771fe0050b883fcc3ea2359b1a96bcfbc090b7116eae7c3c512c7a083fdf23d3" +[[package]] +name = "bs58" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f5353f36341f7451062466f0b755b96ac3a9547e4d7f6b70d603fc721a7d7896" +dependencies = [ + "tinyvec", +] + [[package]] name = "bstr" -version = "1.4.0" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3d4260bcc2e8fc9df1eac4919a720effeb63a3f0952f5bf4944adfa18897f09" +checksum = "6798148dccfbff0fae41c7574d2fa8f1ef3492fba0face179de5d8d447d67b05" dependencies = [ "memchr", "serde", ] +[[package]] +name = "build-helper" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bdce191bf3fa4995ce948c8c83b4640a1745457a149e73c6db75b4ffe36aad5f" +dependencies = [ + "semver 0.6.0", +] + [[package]] name = "bumpalo" -version = "3.12.0" +version = "3.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d261e256854913907f67ed06efbc3338dfe6179796deefc1ff763fc1aee5535" +checksum = "a3e2c3daef883ecc1b5d58c15adae93470a91d425f3532ba1695849656af3fc1" [[package]] name = "byte-slice-cast" @@ -657,6 +617,12 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" +[[package]] +name = "bytemuck" +version = "1.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "17febce684fd15d89027105661fec94afb475cb995fbc59d2865198446ba2eea" + [[package]] name = "byteorder" version = "1.4.3" @@ -681,23 +647,45 @@ dependencies = [ ] [[package]] -name = "cc" -version = "1.0.79" +name = "camino" +version = "1.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f" +checksum = "c59e92b5a388f549b863a7bea62612c09f24c8393560709a54558a9abdfb3b9c" dependencies = [ - "jobserver", + "serde", ] [[package]] -name = "ccm" -version = "0.3.0" +name = "cargo-platform" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aca1a8fbc20b50ac9673ff014abfb2b5f4085ee1a850d408f14a159c5853ac7" +checksum = "2cfa25e60aea747ec7e1124f238816749faa93759c6ff5b31f1ccdda137f4479" dependencies = [ - "aead 0.3.2", - "cipher 0.2.5", - "subtle", + "serde", +] + +[[package]] +name = "cargo_metadata" +version = "0.15.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eee4243f1f26fc7a42710e7439c149e2b10b05472f88090acce52632f231a73a" +dependencies = [ + "camino", + "cargo-platform", + "semver 1.0.18", + "serde", + "serde_json", + "thiserror", +] + +[[package]] +name = "cc" +version = "1.0.81" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c6b2562119bf28c3439f7f02db99faf0aa1a8cdfe5772a2ee155d32227239f0" +dependencies = [ + "jobserver", + "libc", ] [[package]] @@ -711,9 +699,9 @@ dependencies = [ [[package]] name = "cfg-expr" -version = "0.10.3" +version = "0.15.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0aacacf4d96c24b2ad6eb8ee6df040e4f27b0d0b39a5710c30091baa830485db" +checksum = "b40ccee03b5175c18cde8f37e7d2a33bcef6f8ec8f7cc0d81090d1bb380949c9" dependencies = [ "smallvec", ] @@ -757,48 +745,39 @@ dependencies = [ [[package]] name = "chrono" -version = "0.4.24" +version = "0.4.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e3c5919066adf22df73762e50cffcde3a758f2a848b113b586d1f86728b673b" +checksum = "ec837a71355b28f6556dbd569b37b3f363091c0bd4b2e735674521b4c5fd9bc5" dependencies = [ + "android-tzdata", "iana-time-zone", "js-sys", - "num-integer", "num-traits", - "time 0.1.45", + "time", "wasm-bindgen", "winapi", ] [[package]] name = "cid" -version = "0.8.6" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6ed9c8b2d17acb8110c46f1da5bf4a696d745e1474a16db0cd2b49cd0249bf2" +checksum = "b9b68e3193982cd54187d71afdb2a271ad4cf8af157858e9cb911b91321de143" dependencies = [ "core2", "multibase", - "multihash 0.16.3", + "multihash 0.17.0", "serde", "unsigned-varint", ] -[[package]] -name = "cipher" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12f8e7987cbd042a63249497f41aed09f8e65add917ea6566effbc56578d6801" -dependencies = [ - "generic-array 0.14.6", -] - [[package]] name = "cipher" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7ee52072ec15386f770805afd189a01c8841be8696bed250fa2f13c4c0d6dfb7" dependencies = [ - "generic-array 0.14.6", + "generic-array 0.14.7", ] [[package]] @@ -811,11 +790,20 @@ dependencies = [ "inout", ] +[[package]] +name = "ckb-merkle-mountain-range" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56ccb671c5921be8a84686e6212ca184cb1d7c51cadcdbfcbd1cc3f042f5dfb8" +dependencies = [ + "cfg-if", +] + [[package]] name = "clang-sys" -version = "1.6.0" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77ed9a53e5d4d9c573ae844bfac6872b159cb1d1585a83b29e7a64b7eef7332a" +checksum = "c688fc74432808e3eb684cae8830a86be1d66a2bd58e1f248ed0960a590baf6f" dependencies = [ "glob", "libc", @@ -824,40 +812,44 @@ dependencies = [ [[package]] name = "clap" -version = "4.1.11" +version = "4.3.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42dfd32784433290c51d92c438bb72ea5063797fc3cc9a21a8c4346bebbb2098" +checksum = "5fd304a20bff958a57f04c4e96a2e7594cc4490a0e809cbd48bb6437edaa452d" dependencies = [ - "bitflags 2.0.2", + "clap_builder", "clap_derive", - "clap_lex", - "is-terminal", "once_cell", +] + +[[package]] +name = "clap_builder" +version = "4.3.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "01c6a3f08f1fe5662a35cfe393aec09c4df95f60ee93b7556505260f75eee9e1" +dependencies = [ + "anstream", + "anstyle", + "clap_lex", "strsim", - "termcolor", ] [[package]] name = "clap_derive" -version = "4.1.9" +version = "4.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fddf67631444a3a3e3e5ac51c36a5e01335302de677bd78759eaa90ab1f46644" +checksum = "54a9bb5758fc5dfe728d1019941681eccaf0cf8a4189b692a0ee2f2ecf90a050" dependencies = [ "heck", - "proc-macro-error", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.28", ] [[package]] name = "clap_lex" -version = "0.3.3" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "033f6b7a4acb1f358c742aaca805c939ee73b4c6209ae4318ec7aca81c42e646" -dependencies = [ - "os_str_bytes", -] +checksum = "2da6da31387c7e4ef160ffab6d5e7f00c42626fe39aea70a7b0f1773f7dd6c1b" [[package]] name = "codespan-reporting" @@ -869,26 +861,79 @@ dependencies = [ "unicode-width", ] +[[package]] +name = "colorchoice" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7" + +[[package]] +name = "common-path" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2382f75942f4b3be3690fe4f86365e9c853c1587d6ee58212cebf6e2a9ccd101" + [[package]] name = "concurrent-queue" -version = "2.1.0" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c278839b831783b70278b14df4d45e1beb1aad306c07bb796637de9a0e323e8e" +checksum = "62ec6771ecfa0762d24683ee5a32ad78487a3d3afdc0fb8cae19d2c5deb50b7c" dependencies = [ "crossbeam-utils", ] [[package]] -name = "const-oid" -version = "0.9.2" +name = "console" +version = "0.15.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "520fbf3c07483f94e3e3ca9d0cfd913d7718ef2483d2cfd91c0d9e91474ab913" - -[[package]] -name = "constant_time_eq" -version = "0.2.5" +checksum = "c926e00cc70edefdc64d3a5ff31cc65bb97a3460097762bd23afb4d8145fccf8" +dependencies = [ + "encode_unicode", + "lazy_static", + "libc", + "unicode-width", + "windows-sys 0.45.0", +] + +[[package]] +name = "const-oid" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "795bc6e66a8e340f075fcf6227e417a2dc976b92b91f3cdc778bb858778b6747" + +[[package]] +name = "const-random" +version = "0.1.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "368a7a772ead6ce7e1de82bfb04c485f3db8ec744f72925af5735e29a22cc18e" +dependencies = [ + "const-random-macro", + "proc-macro-hack", +] + +[[package]] +name = "const-random-macro" +version = "0.1.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d7d6ab3c3a2282db210df5f02c4dab6e0a7057af0fb7ebd4070f30fe05c0ddb" +dependencies = [ + "getrandom 0.2.10", + "once_cell", + "proc-macro-hack", + "tiny-keccak", +] + +[[package]] +name = "constant_time_eq" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "21a53c0a4d288377e7415b53dcfc3c04da5cdc2cc95c8d5ac178b58f0b861ad6" + +[[package]] +name = "constant_time_eq" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13418e745008f7349ec7e449155f419a61b92b58a99cc3616942b926825ec76b" +checksum = "f7144d30dcf0fafbce74250a3963025d8d52177934239851c917d29f1df280c2" [[package]] name = "core-foundation" @@ -902,9 +947,9 @@ dependencies = [ [[package]] name = "core-foundation-sys" -version = "0.8.3" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc" +checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa" [[package]] name = "core2" @@ -926,37 +971,36 @@ dependencies = [ [[package]] name = "cpufeatures" -version = "0.2.5" +version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28d997bd5e24a5928dd43e46dc529867e207907fe0b239c3477d924f7f2ca320" +checksum = "a17b76ff3a4162b0b27f354a0c87015ddad39d35f9c0c36607a3bdd175dde1f1" dependencies = [ "libc", ] [[package]] name = "cranelift-bforest" -version = "0.93.1" +version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7379abaacee0f14abf3204a7606118f0465785252169d186337bcb75030815a" +checksum = "1277fbfa94bc82c8ec4af2ded3e639d49ca5f7f3c7eeab2c66accd135ece4e70" dependencies = [ "cranelift-entity", ] [[package]] name = "cranelift-codegen" -version = "0.93.1" +version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9489fa336927df749631f1008007ced2871068544f40a202ce6d93fbf2366a7b" +checksum = "c6e8c31ad3b2270e9aeec38723888fe1b0ace3bea2b06b3f749ccf46661d3220" dependencies = [ - "arrayvec 0.7.2", "bumpalo", "cranelift-bforest", "cranelift-codegen-meta", "cranelift-codegen-shared", "cranelift-entity", "cranelift-isle", - "gimli 0.26.2", - "hashbrown 0.12.3", + "gimli", + "hashbrown 0.13.2", "log", "regalloc2", "smallvec", @@ -965,33 +1009,33 @@ dependencies = [ [[package]] name = "cranelift-codegen-meta" -version = "0.93.1" +version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05bbb67da91ec721ed57cef2f7c5ef7728e1cd9bde9ffd3ef8601022e73e3239" +checksum = "c8ac5ac30d62b2d66f12651f6b606dbdfd9c2cfd0908de6b387560a277c5c9da" dependencies = [ "cranelift-codegen-shared", ] [[package]] name = "cranelift-codegen-shared" -version = "0.93.1" +version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "418ecb2f36032f6665dc1a5e2060a143dbab41d83b784882e97710e890a7a16d" +checksum = "dd82b8b376247834b59ed9bdc0ddeb50f517452827d4a11bccf5937b213748b8" [[package]] name = "cranelift-entity" -version = "0.93.1" +version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7cf583f7b093f291005f9fb1323e2c37f6ee4c7909e39ce016b2e8360d461705" +checksum = "40099d38061b37e505e63f89bab52199037a72b931ad4868d9089ff7268660b0" dependencies = [ "serde", ] [[package]] name = "cranelift-frontend" -version = "0.93.1" +version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b66bf9e916f57fbbd0f7703ec6286f4624866bf45000111627c70d272c8dda1" +checksum = "64a25d9d0a0ae3079c463c34115ec59507b4707175454f0eee0891e83e30e82d" dependencies = [ "cranelift-codegen", "log", @@ -1001,15 +1045,15 @@ dependencies = [ [[package]] name = "cranelift-isle" -version = "0.93.1" +version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "649782a39ce99798dd6b4029e2bb318a2fbeaade1b4fa25330763c10c65bc358" +checksum = "80de6a7d0486e4acbd5f9f87ec49912bf4c8fb6aea00087b989685460d4469ba" [[package]] name = "cranelift-native" -version = "0.93.1" +version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "937e021e089c51f9749d09e7ad1c4f255c2f8686cb8c3df63a34b3ec9921bc41" +checksum = "bb6b03e0e03801c4b3fd8ce0758a94750c07a44e7944cc0ffbf0d3f2e7c79b00" dependencies = [ "cranelift-codegen", "libc", @@ -1018,9 +1062,9 @@ dependencies = [ [[package]] name = "cranelift-wasm" -version = "0.93.1" +version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d850cf6775477747c9dfda9ae23355dd70512ffebc70cf82b85a5b111ae668b5" +checksum = "ff3220489a3d928ad91e59dd7aeaa8b3de18afb554a6211213673a71c90737ac" dependencies = [ "cranelift-codegen", "cranelift-entity", @@ -1032,21 +1076,6 @@ dependencies = [ "wasmtime-types", ] -[[package]] -name = "crc" -version = "3.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86ec7a15cbe22e59248fc7eadb1907dab5ba09372595da4d73dd805ed4417dfe" -dependencies = [ - "crc-catalog", -] - -[[package]] -name = "crc-catalog" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9cace84e55f07e7301bae1c519df89cdad8cc3cd868413d3fdbdeca9ff3db484" - [[package]] name = "crc32fast" version = "1.3.2" @@ -1058,9 +1087,9 @@ dependencies = [ [[package]] name = "crossbeam-channel" -version = "0.5.7" +version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf2b3e8478797446514c91ef04bafcb59faba183e621ad488df88983cc14128c" +checksum = "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200" dependencies = [ "cfg-if", "crossbeam-utils", @@ -1079,22 +1108,22 @@ dependencies = [ [[package]] name = "crossbeam-epoch" -version = "0.9.14" +version = "0.9.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46bd5f3f85273295a9d14aedfb86f6aadbff6d8f5295c4a9edb08e819dcf5695" +checksum = "ae211234986c545741a7dc064309f67ee1e5ad243d0e48335adc0484d960bcc7" dependencies = [ "autocfg", "cfg-if", "crossbeam-utils", - "memoffset 0.8.0", + "memoffset 0.9.0", "scopeguard", ] [[package]] name = "crossbeam-utils" -version = "0.8.15" +version = "0.8.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c063cd8cc95f5c377ed0d4b49a4b21f632396ff690e8470c29b3359b346984b" +checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294" dependencies = [ "cfg-if", ] @@ -1105,25 +1134,13 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" -[[package]] -name = "crypto-bigint" -version = "0.4.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef2b4b23cddf68b89b8f8069890e8c270d54e2d5fe1b143820234805e4cb17ef" -dependencies = [ - "generic-array 0.14.6", - "rand_core 0.6.4", - "subtle", - "zeroize", -] - [[package]] name = "crypto-bigint" version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cf4c2f4e1afd912bc40bfd6fed5d9dc1f288e0ba01bfcc835cc5bc3eb13efe15" dependencies = [ - "generic-array 0.14.6", + "generic-array 0.14.7", "rand_core 0.6.4", "subtle", "zeroize", @@ -1135,7 +1152,7 @@ version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" dependencies = [ - "generic-array 0.14.6", + "generic-array 0.14.7", "rand_core 0.6.4", "typenum", ] @@ -1146,7 +1163,7 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b584a330336237c1eecd3e94266efb216c56ed91225d634cb2991c5f3fd1aeab" dependencies = [ - "generic-array 0.14.6", + "generic-array 0.14.7", "subtle", ] @@ -1156,7 +1173,7 @@ version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b1d1a86f49236c215f271d40892d5fc950490551400b02ef360692c29815c714" dependencies = [ - "generic-array 0.14.6", + "generic-array 0.14.7", "subtle", ] @@ -1220,9 +1237,9 @@ dependencies = [ [[package]] name = "cxx" -version = "1.0.93" +version = "1.0.102" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9c00419335c41018365ddf7e4d5f1c12ee3659ddcf3e01974650ba1de73d038" +checksum = "f68e12e817cb19eaab81aaec582b4052d07debd3c3c6b083b9d361db47c7dc9d" dependencies = [ "cc", "cxxbridge-flags", @@ -1232,9 +1249,9 @@ dependencies = [ [[package]] name = "cxx-build" -version = "1.0.93" +version = "1.0.102" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb8307ad413a98fff033c8545ecf133e3257747b3bae935e7602aab8aa92d4ca" +checksum = "e789217e4ab7cf8cc9ce82253180a9fe331f35f5d339f0ccfe0270b39433f397" dependencies = [ "cc", "codespan-reporting", @@ -1242,72 +1259,37 @@ dependencies = [ "proc-macro2", "quote", "scratch", - "syn 2.0.4", + "syn 2.0.28", ] [[package]] name = "cxxbridge-flags" -version = "1.0.93" +version = "1.0.102" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edc52e2eb08915cb12596d29d55f0b5384f00d697a646dbd269b6ecb0fbd9d31" +checksum = "78a19f4c80fd9ab6c882286fa865e92e07688f4387370a209508014ead8751d0" [[package]] name = "cxxbridge-macro" -version = "1.0.93" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "631569015d0d8d54e6c241733f944042623ab6df7bc3be7466874b05fcdb1c5f" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.4", -] - -[[package]] -name = "darling" -version = "0.14.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850" -dependencies = [ - "darling_core", - "darling_macro", -] - -[[package]] -name = "darling_core" -version = "0.14.4" +version = "1.0.102" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0" +checksum = "b8fcfa71f66c8563c4fa9dd2bb68368d50267856f831ac5d85367e0805f9606c" dependencies = [ - "fnv", - "ident_case", "proc-macro2", "quote", - "strsim", - "syn 1.0.109", -] - -[[package]] -name = "darling_macro" -version = "0.14.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e" -dependencies = [ - "darling_core", - "quote", - "syn 1.0.109", + "syn 2.0.28", ] [[package]] name = "data-encoding" -version = "2.3.3" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23d8666cb01533c39dde32bcbab8e227b4ed6679b2c925eba05feabea39508fb" +checksum = "c2e66c9d817f1720209181c316d28635c050fa304f9c79e47a520882661b7308" [[package]] name = "data-encoding-macro" -version = "0.1.12" +version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86927b7cd2fe88fa698b87404b287ab98d1a0063a34071d92e575b72d3029aca" +checksum = "c904b33cc60130e1aeea4956ab803d08a3f4a0ca82d64ed757afac3891f2bb99" dependencies = [ "data-encoding", "data-encoding-macro-internal", @@ -1315,9 +1297,9 @@ dependencies = [ [[package]] name = "data-encoding-macro-internal" -version = "0.1.10" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5bbed42daaa95e780b60a50546aa345b8413a1e46f9a40a12907d3598f038db" +checksum = "8fdf3fce3ce863539ec1d7fd1b6dcc3c645663376b43ed376bbf887733e4f772" dependencies = [ "data-encoding", "syn 1.0.109", @@ -1325,64 +1307,14 @@ dependencies = [ [[package]] name = "der" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1a467a65c5e759bce6e65eaf91cc29f466cdc57cb65777bd646872a8a1fd4de" -dependencies = [ - "const-oid", - "pem-rfc7468", - "zeroize", -] - -[[package]] -name = "der" -version = "0.7.5" +version = "0.7.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05e58dffcdcc8ee7b22f0c1f71a69243d7c2d9ad87b5a14361f2424a1565c219" +checksum = "0c7ed52955ce76b1554f509074bb357d3fb8ac9b51288a65a3fd480d1dfba946" dependencies = [ "const-oid", "zeroize", ] -[[package]] -name = "der-parser" -version = "7.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe398ac75057914d7d07307bf67dc7f3f574a26783b4fc7805a20ffa9f506e82" -dependencies = [ - "asn1-rs 0.3.1", - "displaydoc", - "nom", - "num-bigint", - "num-traits", - "rusticata-macros", -] - -[[package]] -name = "der-parser" -version = "8.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbd676fbbab537128ef0278adb5576cf363cff6aa22a7b24effe97347cfab61e" -dependencies = [ - "asn1-rs 0.5.2", - "displaydoc", - "nom", - "num-bigint", - "num-traits", - "rusticata-macros", -] - -[[package]] -name = "derivative" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "derive-syn-parse" version = "0.1.5" @@ -1394,37 +1326,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "derive_builder" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d07adf7be193b71cc36b193d0f5fe60b918a3a9db4dad0449f57bcfd519704a3" -dependencies = [ - "derive_builder_macro", -] - -[[package]] -name = "derive_builder_core" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f91d4cfa921f1c05904dc3c57b4a32c38aed3340cce209f3a6fd1478babafc4" -dependencies = [ - "darling", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "derive_builder_macro" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f0314b72bed045f3a68671b3c86328386762c93f82d98c65c3cb5e5f573dd68" -dependencies = [ - "derive_builder_core", - "syn 1.0.109", -] - [[package]] name = "derive_more" version = "0.99.17" @@ -1457,14 +1358,14 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" dependencies = [ - "generic-array 0.14.6", + "generic-array 0.14.7", ] [[package]] name = "digest" -version = "0.10.6" +version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8168378f4e5023e7218c89c891c0fd8ecdb5e5e4f18cb78f38cf245dd021e76f" +checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ "block-buffer 0.10.4", "const-oid", @@ -1514,14 +1415,29 @@ dependencies = [ ] [[package]] -name = "displaydoc" -version = "0.2.3" +name = "docify" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6491709f76fb7ceb951244daf624d480198b427556084391d6e3c33d3ae74b9" +dependencies = [ + "docify_macros", +] + +[[package]] +name = "docify_macros" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bf95dc3f046b9da4f2d51833c0d3547d8564ef6910f5c1ed130306a75b92886" +checksum = "ffc5338a9f72ce29a81377d9039798fcc926fb471b2004666caf48e446dffbbf" dependencies = [ + "common-path", + "derive-syn-parse", + "once_cell", "proc-macro2", "quote", - "syn 1.0.109", + "regex", + "syn 2.0.28", + "termcolor", + "walkdir", ] [[package]] @@ -1538,9 +1454,9 @@ checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650" [[package]] name = "dtoa" -version = "1.0.6" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65d09067bfacaa79114679b279d7f5885b53295b1e2cfb4e79c8e4bd3d633169" +checksum = "dcbb2bf8e87535c23f7a8a321e364ce21462d0ff10cb6407820e8e96dfff6653" [[package]] name = "dyn-clonable" @@ -1565,33 +1481,22 @@ dependencies = [ [[package]] name = "dyn-clone" -version = "1.0.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68b0cf012f1230e43cd00ebb729c6bb58707ecfa8ad08b52ef3a4ccd2697fc30" - -[[package]] -name = "ecdsa" -version = "0.14.8" +version = "1.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "413301934810f597c1d19ca71c8710e99a3f1ba28a0d2ebc01551a2daeea3c5c" -dependencies = [ - "der 0.6.1", - "elliptic-curve 0.12.3", - "rfc6979 0.3.1", - "signature 1.6.4", -] +checksum = "304e6508efa593091e97a9abbc10f90aa7ca635b6d2784feff3c89d41dd12272" [[package]] name = "ecdsa" -version = "0.16.6" +version = "0.16.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a48e5d537b8a30c0b023116d981b16334be1485af7ca68db3a2b7024cbc957fd" +checksum = "a4b1e0c257a9e9f25f90ff76d7a68360ed497ee519c8e428d1825ef0000799d4" dependencies = [ - "der 0.7.5", - "digest 0.10.6", - "elliptic-curve 0.13.4", - "rfc6979 0.4.0", + "der", + "digest 0.10.7", + "elliptic-curve", + "rfc6979", "signature 2.1.0", + "spki", ] [[package]] @@ -1633,50 +1538,34 @@ dependencies = [ [[package]] name = "either" -version = "1.8.1" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91" +checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07" [[package]] name = "elliptic-curve" -version = "0.12.3" +version = "0.13.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7bb888ab5300a19b8e5bceef25ac745ad065f3c9f7efc6de1b91958110891d3" +checksum = "968405c8fdc9b3bf4df0a6638858cc0b52462836ab6b1c87377785dd09cf1c0b" dependencies = [ - "base16ct 0.1.1", - "crypto-bigint 0.4.9", - "der 0.6.1", - "digest 0.10.6", - "ff 0.12.1", - "generic-array 0.14.6", - "group 0.12.1", - "hkdf", - "pem-rfc7468", - "pkcs8 0.9.0", + "base16ct", + "crypto-bigint", + "digest 0.10.7", + "ff", + "generic-array 0.14.7", + "group", + "pkcs8", "rand_core 0.6.4", - "sec1 0.3.0", + "sec1", "subtle", "zeroize", ] [[package]] -name = "elliptic-curve" -version = "0.13.4" +name = "encode_unicode" +version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75c71eaa367f2e5d556414a8eea812bc62985c879748d6403edabd9cb03f16e7" -dependencies = [ - "base16ct 0.2.0", - "crypto-bigint 0.5.2", - "digest 0.10.6", - "ff 0.13.0", - "generic-array 0.14.6", - "group 0.13.0", - "pkcs8 0.10.2", - "rand_core 0.6.4", - "sec1 0.7.1", - "subtle", - "zeroize", -] +checksum = "a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f" [[package]] name = "enum-as-inner" @@ -1690,6 +1579,26 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "enumflags2" +version = "0.7.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c041f5090df68b32bcd905365fd51769c8b9d553fe87fde0b683534f10c01bd2" +dependencies = [ + "enumflags2_derive", +] + +[[package]] +name = "enumflags2_derive" +version = "0.7.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e9a1f9f7d83e59740248a6e14ecf93929ade55027844dfcea78beafccc15745" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.28", +] + [[package]] name = "env_logger" version = "0.10.0" @@ -1710,21 +1619,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e48c92028aaa870e83d51c64e5d4e0b6981b360c522198c23959f219a4e1b15b" [[package]] -name = "errno" -version = "0.2.8" +name = "equivalent" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f639046355ee4f37944e44f60642c6f3a7efa3cf6b78c78a0d989a8ce6c396a1" -dependencies = [ - "errno-dragonfly", - "libc", - "winapi", -] +checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] name = "errno" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a" +checksum = "6b30f669a7961ef1631673d2766cc92f52d64f7ef354d4fe0ddfd30ed52f0f4f" dependencies = [ "errno-dragonfly", "libc", @@ -1758,15 +1662,15 @@ dependencies = [ [[package]] name = "expander" -version = "1.0.0" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f360349150728553f92e4c997a16af8915f418d3a0f21b440d34c5632f16ed84" +checksum = "5f86a749cf851891866c10515ef6c299b5c69661465e9c3bbe7e07a2b77fb0f7" dependencies = [ "blake2", "fs-err", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.28", ] [[package]] @@ -1790,6 +1694,12 @@ dependencies = [ "instant", ] +[[package]] +name = "fastrand" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6999dc1837253364c2ebb0704ba97994bd874e8f195d665c50b7548f6ea92764" + [[package]] name = "fdlimit" version = "0.2.1" @@ -1799,16 +1709,6 @@ dependencies = [ "libc", ] -[[package]] -name = "ff" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d013fc25338cc558c5c2cfbad646908fb23591e2404481826742b651c9af7160" -dependencies = [ - "rand_core 0.6.4", - "subtle", -] - [[package]] name = "ff" version = "0.13.0" @@ -1821,9 +1721,9 @@ dependencies = [ [[package]] name = "fiat-crypto" -version = "0.1.19" +version = "0.1.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93ace6ec7cc19c8ed33a32eaa9ea692d7faea05006b5356b9e2b668ec4bc3955" +checksum = "e825f6987101665dea6ec934c09ec6d721de7bc1bf92248e1d5810c8cd636b77" [[package]] name = "file-per-thread-logger" @@ -1835,6 +1735,18 @@ dependencies = [ "log", ] +[[package]] +name = "filetime" +version = "0.2.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5cbc844cecaee9d4443931972e1289c8ff485cb4cc2767cb03ca139ed6885153" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall 0.2.16", + "windows-sys 0.48.0", +] + [[package]] name = "finality-grandpa" version = "0.16.2" @@ -1869,17 +1781,6 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" -[[package]] -name = "flate2" -version = "1.0.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8a2db397cb1c8772f31494cb8917e48cd1e64f0fa7efac59fbd741a0a8ce841" -dependencies = [ - "crc32fast", - "libz-sys", - "miniz_oxide", -] - [[package]] name = "float-cmp" version = "0.9.0" @@ -1897,18 +1798,17 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] name = "fork-tree" -version = "7.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4615fe5ff97489aa729b6f5133397efb0ba3075d11a50aa6c06d7bce9501f7b9" +version = "3.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "parity-scale-codec", ] [[package]] name = "form_urlencoded" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9c384f161156f5260c24a097c56119f9be8c798586aecc13afbcbe7b7e26bf8" +checksum = "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652" dependencies = [ "percent-encoding", ] @@ -1920,40 +1820,129 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa" [[package]] -name = "frame-metadata" -version = "15.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df6bb8542ef006ef0de09a5c4420787d79823c0ed7924225822362fd2bf2ff2d" +name = "frame-benchmarking" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ - "cfg-if", + "frame-support", + "frame-support-procedural", + "frame-system", + "linregress", + "log", "parity-scale-codec", + "paste", "scale-info", "serde", + "sp-api", + "sp-application-crypto", + "sp-core", + "sp-io", + "sp-runtime", + "sp-runtime-interface", + "sp-std", + "sp-storage", + "static_assertions", ] [[package]] -name = "frame-remote-externalities" -version = "0.28.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13306364f34cda2e7cdf916d8468324733b2566777ffe6db9770e49d092cfbc0" +name = "frame-benchmarking-pallet-pov" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ - "futures", - "log", + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "frame-election-provider-solution-type" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.28", +] + +[[package]] +name = "frame-election-provider-support" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-election-provider-solution-type", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-arithmetic", + "sp-core", + "sp-npos-elections", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "frame-executive" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-support", + "frame-system", + "frame-try-runtime", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", + "sp-tracing", +] + +[[package]] +name = "frame-metadata" +version = "16.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87cf1549fba25a6fcac22785b61698317d958e96cac72a59102ea45b9ae64692" +dependencies = [ + "cfg-if", + "parity-scale-codec", + "scale-info", + "serde", +] + +[[package]] +name = "frame-remote-externalities" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "async-recursion", + "futures", + "indicatif", + "jsonrpsee", + "log", "parity-scale-codec", "serde", "sp-core", "sp-io", "sp-runtime", + "spinners", "substrate-rpc-client", "tokio", + "tokio-retry", ] [[package]] name = "frame-support" -version = "21.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80da0f683e5da274ff0401a02d16f4fb976686ed4286204fa00ab29207013d2c" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ + "aquamarine", "bitflags 1.3.2", "environmental", "frame-metadata", @@ -1961,16 +1950,19 @@ dependencies = [ "impl-trait-for-tuples", "k256", "log", - "once_cell", + "macro_magic", "parity-scale-codec", "paste", "scale-info", "serde", + "serde_json", "smallvec", "sp-api", "sp-arithmetic", "sp-core", "sp-core-hashing-proc-macro", + "sp-debug-derive", + "sp-genesis-builder", "sp-inherents", "sp-io", "sp-runtime", @@ -1984,50 +1976,91 @@ dependencies = [ [[package]] name = "frame-support-procedural" -version = "16.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37e680991289aa3e7b11609228642df005edd888b72b52fbbabb361d2b7cb1ed" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "Inflector", "cfg-expr", "derive-syn-parse", + "expander", "frame-support-procedural-tools", "itertools", + "macro_magic", "proc-macro-warning", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.28", ] [[package]] name = "frame-support-procedural-tools" -version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fd1ce0e420f441e4b5fc53cda17fd63f98147a392191ff3c94270d01110a070" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "frame-support-procedural-tools-derive", "proc-macro-crate", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.28", ] [[package]] name = "frame-support-procedural-tools-derive" -version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b64b7713ff42072fba1dadf3165fb4837e7d84d28fd7fae5f7d752a659607682" +version = "3.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.28", +] + +[[package]] +name = "frame-system" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "cfg-if", + "frame-support", + "log", + "parity-scale-codec", + "scale-info", + "serde", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", + "sp-version", + "sp-weights", +] + +[[package]] +name = "frame-system-benchmarking" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "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#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "parity-scale-codec", + "sp-api", ] [[package]] name = "frame-try-runtime" -version = "0.27.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71e2f824cfe5f945a24862233b17354542f57cd94e5bceddc8bf08ad84015ab0" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "frame-support", "parity-scale-codec", @@ -2052,16 +2085,6 @@ dependencies = [ "winapi", ] -[[package]] -name = "fs4" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7f5b6908aecca5812a4569056285e58c666588c9573ee59765bf1d3692699e2" -dependencies = [ - "rustix 0.37.19", - "windows-sys 0.48.0", -] - [[package]] name = "funty" version = "2.0.0" @@ -2070,9 +2093,9 @@ checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" [[package]] name = "futures" -version = "0.3.27" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "531ac96c6ff5fd7c62263c5e3c67a603af4fcaee2e1a0ae5565ba3a11e69e549" +checksum = "23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40" dependencies = [ "futures-channel", "futures-core", @@ -2085,9 +2108,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.27" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "164713a5a0dcc3e7b4b1ed7d3b433cabc18025386f9339346e8daf15963cf7ac" +checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2" dependencies = [ "futures-core", "futures-sink", @@ -2095,15 +2118,15 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.27" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86d7a0c1aa76363dac491de0ee99faf6941128376f1cf96f07db7603b7de69dd" +checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c" [[package]] name = "futures-executor" -version = "0.3.27" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1997dd9df74cdac935c76252744c1ed5794fac083242ea4fe77ef3ed60ba0f83" +checksum = "ccecee823288125bd88b4d7f565c9e58e41858e47ab72e8ea2d64e93624386e0" dependencies = [ "futures-core", "futures-task", @@ -2113,34 +2136,34 @@ dependencies = [ [[package]] name = "futures-io" -version = "0.3.27" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89d422fa3cbe3b40dca574ab087abb5bc98258ea57eea3fd6f1fa7162c778b91" +checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964" [[package]] name = "futures-lite" -version = "1.12.0" +version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7694489acd39452c77daa48516b894c153f192c3578d5a839b62c58099fcbf48" +checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce" dependencies = [ - "fastrand", + "fastrand 1.9.0", "futures-core", "futures-io", "memchr", "parking", - "pin-project-lite 0.2.9", + "pin-project-lite 0.2.10", "waker-fn", ] [[package]] name = "futures-macro" -version = "0.3.27" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3eb14ed937631bd8b8b8977f2c198443447a8355b6e3ca599f38c975e5a963b6" +checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.28", ] [[package]] @@ -2150,21 +2173,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d2411eed028cdf8c8034eaf21f9915f956b6c3abec4d4c7949ee67f0721127bd" dependencies = [ "futures-io", - "rustls 0.20.8", - "webpki 0.22.0", + "rustls", + "webpki", ] [[package]] name = "futures-sink" -version = "0.3.27" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec93083a4aecafb2a80a885c9de1f0ccae9dbd32c2bb54b0c3a65690e0b8d2f2" +checksum = "f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e" [[package]] name = "futures-task" -version = "0.3.27" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd65540d33b37b16542a0438c12e6aeead10d4ac5d05bd3f805b8f35ab592879" +checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65" [[package]] name = "futures-timer" @@ -2174,9 +2197,9 @@ checksum = "e64b03909df88034c26dc1547e8970b91f98bdb65165d6a4e9110d94263dbb2c" [[package]] name = "futures-util" -version = "0.3.27" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ef6b17e481503ec85211fed8f39d1970f128935ca1f814cd32ac4a6842e84ab" +checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533" dependencies = [ "futures-channel", "futures-core", @@ -2185,7 +2208,7 @@ dependencies = [ "futures-sink", "futures-task", "memchr", - "pin-project-lite 0.2.9", + "pin-project-lite 0.2.10", "pin-utils", "slab", ] @@ -2210,9 +2233,9 @@ dependencies = [ [[package]] name = "generic-array" -version = "0.14.6" +version = "0.14.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bff49e947297f3312447abdca79f45f4738097cc82b06e72054d2223f601f1b9" +checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" dependencies = [ "typenum", "version_check", @@ -2232,15 +2255,13 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.8" +version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31" +checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427" dependencies = [ "cfg-if", - "js-sys", "libc", "wasi 0.11.0+wasi-snapshot-preview1", - "wasm-bindgen", ] [[package]] @@ -2260,26 +2281,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d930750de5717d2dd0b8c0d42c076c0e884c81a73e6cab859bbd2339c71e3e40" dependencies = [ "opaque-debug 0.3.0", - "polyval 0.6.0", + "polyval 0.6.1", ] [[package]] name = "gimli" -version = "0.26.2" +version = "0.27.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22030e2c5a68ec659fde1e949a745124b48e6fa8b045b7ed5bd1fe4ccc5c4e5d" +checksum = "b6c80984affa11d98d1b88b66ac8853f143217b399d3c74116778ff8fdb4ed2e" dependencies = [ "fallible-iterator", - "indexmap", + "indexmap 1.9.3", "stable_deref_trait", ] -[[package]] -name = "gimli" -version = "0.27.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad0a93d233ebf96623465aad4046a8d3aa4da22d4f4beba5388838c8a434bbb4" - [[package]] name = "glob" version = "0.3.1" @@ -2288,9 +2303,9 @@ checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" [[package]] name = "globset" -version = "0.4.10" +version = "0.4.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "029d74589adefde59de1a0c4f4732695c32805624aec7b68d91503d4dba79afc" +checksum = "aca8bbd8e0707c1887a8bbb7e6b40e228f251ff5d62c8220a4a7a53c73aff006" dependencies = [ "aho-corasick", "bstr", @@ -2299,33 +2314,22 @@ dependencies = [ "regex", ] -[[package]] -name = "group" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5dfbfb3a6cfbd390d5c9564ab283a0349b9b9fcd46a706c1eb10e0db70bfbac7" -dependencies = [ - "ff 0.12.1", - "rand_core 0.6.4", - "subtle", -] - [[package]] name = "group" version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" dependencies = [ - "ff 0.13.0", + "ff", "rand_core 0.6.4", "subtle", ] [[package]] name = "h2" -version = "0.3.16" +version = "0.3.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5be7b54589b581f624f566bf5d8eb2bab1db736c51528720b6bd36b96b55924d" +checksum = "97ec8491ebaf99c8eaa73058b045fe58073cd6be7f596ac993ced0b0a0c01049" dependencies = [ "bytes", "fnv", @@ -2333,7 +2337,7 @@ dependencies = [ "futures-sink", "futures-util", "http", - "indexmap", + "indexmap 1.9.3", "slab", "tokio", "tokio-util", @@ -2373,6 +2377,12 @@ dependencies = [ "ahash 0.8.3", ] +[[package]] +name = "hashbrown" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a" + [[package]] name = "heck" version = "0.4.1" @@ -2390,18 +2400,9 @@ dependencies = [ [[package]] name = "hermit-abi" -version = "0.2.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7" -dependencies = [ - "libc", -] - -[[package]] -name = "hermit-abi" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286" +checksum = "443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b" [[package]] name = "hex" @@ -2409,6 +2410,12 @@ version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" +[[package]] +name = "hex-literal" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ebdb29d2ea9ed0083cd8cece49bbd968021bd99b0849edb4a9a7ee0fdf6a4e0" + [[package]] name = "hkdf" version = "0.12.3" @@ -2444,7 +2451,7 @@ version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" dependencies = [ - "digest 0.10.6", + "digest 0.10.7", ] [[package]] @@ -2454,7 +2461,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "17ea0a1394df5b6574da6e0c1ade9e78868c9fb0a4e5ef4428e32da4676b85b1" dependencies = [ "digest 0.9.0", - "generic-array 0.14.6", + "generic-array 0.14.7", "hmac 0.8.1", ] @@ -2488,14 +2495,14 @@ checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1" dependencies = [ "bytes", "http", - "pin-project-lite 0.2.9", + "pin-project-lite 0.2.10", ] [[package]] name = "http-range-header" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0bfe8eed0a9285ef776bb792479ea3834e8b94e13d615c2f66d03dd50a435a29" +checksum = "add0ab9360ddbd88cfeb3bd9574a1d85cfdfa14db10b3e21d3700dbc4328758f" [[package]] name = "httparse" @@ -2517,9 +2524,9 @@ checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" [[package]] name = "hyper" -version = "0.14.25" +version = "0.14.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc5e554ff619822309ffd57d8734d77cd5ce6238bc956f037ea06c58238c9899" +checksum = "ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468" dependencies = [ "bytes", "futures-channel", @@ -2531,8 +2538,8 @@ dependencies = [ "httparse", "httpdate", "itoa", - "pin-project-lite 0.2.9", - "socket2", + "pin-project-lite 0.2.10", + "socket2 0.4.9", "tokio", "tower-service", "tracing", @@ -2548,43 +2555,36 @@ dependencies = [ "http", "hyper", "log", - "rustls 0.20.8", + "rustls", "rustls-native-certs", "tokio", "tokio-rustls", - "webpki-roots", + "webpki-roots 0.22.6", ] [[package]] name = "iana-time-zone" -version = "0.1.54" +version = "0.1.57" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c17cc76786e99f8d2f055c11159e7f0091c42474dcc3189fbab96072e873e6d" +checksum = "2fad5b825842d2b38bd206f3e81d6957625fd7f0a361e345c30e01a0ae2dd613" dependencies = [ "android_system_properties", "core-foundation-sys", "iana-time-zone-haiku", "js-sys", "wasm-bindgen", - "windows 0.46.0", + "windows 0.48.0", ] [[package]] name = "iana-time-zone-haiku" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0703ae284fc167426161c2e3f1da3ea71d94b21bedbcc9494e92b28e334e3dca" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" dependencies = [ - "cxx", - "cxx-build", + "cc", ] -[[package]] -name = "ident_case" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" - [[package]] name = "idna" version = "0.2.3" @@ -2598,9 +2598,9 @@ dependencies = [ [[package]] name = "idna" -version = "0.3.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6" +checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c" dependencies = [ "unicode-bidi", "unicode-normalization", @@ -2618,9 +2618,9 @@ dependencies = [ [[package]] name = "if-watch" -version = "3.0.0" +version = "3.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba7abdbb86e485125dad06c2691e1e393bf3b08c7b743b43aa162a00fd39062e" +checksum = "a9465340214b296cd17a0009acdb890d6160010b8adf8f78a00d0d7ab270f79f" dependencies = [ "async-io", "core-foundation", @@ -2644,6 +2644,17 @@ dependencies = [ "parity-scale-codec", ] +[[package]] +name = "impl-num-traits" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "951641f13f873bff03d4bf19ae8bec531935ac0ac2cc775f84d7edfdcfed3f17" +dependencies = [ + "integer-sqrt", + "num-traits", + "uint", +] + [[package]] name = "impl-serde" version = "0.4.0" @@ -2664,24 +2675,72 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "include_dir" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "18762faeff7122e89e0857b02f7ce6fcc0d101d5e9ad2ad7846cc01d61b7f19e" +dependencies = [ + "include_dir_macros", +] + +[[package]] +name = "include_dir_macros" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b139284b5cf57ecfa712bcc66950bb635b31aff41c188e8a4cfc758eca374a3f" +dependencies = [ + "proc-macro2", + "quote", +] + [[package]] name = "indexmap" -version = "1.9.2" +version = "1.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1885e79c1fc4b10f0e172c475f458b7f7b93061064d98c3293e98c5ba0c8b399" +checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" dependencies = [ "autocfg", "hashbrown 0.12.3", "serde", ] +[[package]] +name = "indexmap" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d5477fe2230a79769d8dc68e0eabf5437907c0457a5614a9e8dddb67f65eb65d" +dependencies = [ + "equivalent", + "hashbrown 0.14.0", +] + +[[package]] +name = "indexmap-nostd" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e04e2fd2b8188ea827b32ef11de88377086d690286ab35747ef7f9bf3ccb590" + +[[package]] +name = "indicatif" +version = "0.17.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b297dc40733f23a0e52728a58fa9489a5b7638a324932de16b41adc3ef80730" +dependencies = [ + "console", + "instant", + "number_prefix", + "portable-atomic", + "unicode-width", +] + [[package]] name = "inout" version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5" dependencies = [ - "generic-array 0.14.6", + "generic-array 0.14.7", ] [[package]] @@ -2703,31 +2762,18 @@ dependencies = [ ] [[package]] -name = "interceptor" -version = "0.8.2" +name = "intx" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e8a11ae2da61704edada656798b61c94b35ecac2c58eb955156987d5e6be90b" -dependencies = [ - "async-trait", - "bytes", - "log", - "rand 0.8.5", - "rtcp", - "rtp", - "thiserror", - "tokio", - "waitgroup", - "webrtc-srtp", - "webrtc-util", -] +checksum = "f6f38a50a899dc47a6d0ed5508e7f601a2e34c3a85303514b5d137f3c10a0c75" [[package]] name = "io-lifetimes" -version = "1.0.10" +version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c66c74d2ae7e79a5a8f7ac924adbe38ee42a859c6539ad869eb51f0b52dc220" +checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2" dependencies = [ - "hermit-abi 0.3.1", + "hermit-abi 0.3.2", "libc", "windows-sys 0.48.0", ] @@ -2740,32 +2786,31 @@ checksum = "aa2f047c0a98b2f299aa5d6d7088443570faae494e9ae1305e48be000c9e0eb1" [[package]] name = "ipconfig" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd302af1b90f2463a98fa5ad469fc212c8e3175a41c3068601bfa2727591c5be" +checksum = "b58db92f96b720de98181bbbe63c831e87005ab460c1bf306eb2622b4707997f" dependencies = [ - "socket2", + "socket2 0.5.3", "widestring", - "winapi", + "windows-sys 0.48.0", "winreg", ] [[package]] name = "ipnet" -version = "2.7.1" +version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30e22bd8629359895450b59ea7a776c850561b96a3b1d31321c1949d9e6c9146" +checksum = "28b29a3cd74f0f4598934efe3aeba42bae0eb4680554128851ebbecb02af14e6" [[package]] name = "is-terminal" -version = "0.4.5" +version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8687c819457e979cc940d09cb16e42a1bf70aa6b60a549de6d3a62a0ee90c69e" +checksum = "cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b" dependencies = [ - "hermit-abi 0.3.1", - "io-lifetimes", - "rustix 0.36.11", - "windows-sys 0.45.0", + "hermit-abi 0.3.2", + "rustix 0.38.6", + "windows-sys 0.48.0", ] [[package]] @@ -2779,9 +2824,9 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.6" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6" +checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38" [[package]] name = "jobserver" @@ -2794,9 +2839,9 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.61" +version = "0.3.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "445dde2150c55e483f3d8416706b97ec8e8237c307e5b7b4b8dd15e6af2a0730" +checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a" dependencies = [ "wasm-bindgen", ] @@ -2807,7 +2852,6 @@ version = "0.16.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7d291e3a5818a2384645fd9756362e6d89cf0541b0b916fa7702ea4a9833608e" dependencies = [ - "jsonrpsee-client-transport", "jsonrpsee-core", "jsonrpsee-http-client", "jsonrpsee-proc-macros", @@ -2835,7 +2879,7 @@ dependencies = [ "tokio-rustls", "tokio-util", "tracing", - "webpki-roots", + "webpki-roots 0.22.6", ] [[package]] @@ -2845,7 +2889,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a4e70b4439a751a5de7dd5ed55eacff78ebf4ffe0fc009cb1ebb11417f5b536b" dependencies = [ "anyhow", - "arrayvec 0.7.2", + "arrayvec 0.7.4", "async-lock", "async-trait", "beef", @@ -2953,45 +2997,155 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cadb76004ed8e97623117f3df85b17aaa6626ab0b0831e6573f104df16cd1bcc" dependencies = [ "cfg-if", - "ecdsa 0.16.6", - "elliptic-curve 0.13.4", + "ecdsa", + "elliptic-curve", "once_cell", - "sha2 0.10.6", + "sha2 0.10.7", ] [[package]] name = "keccak" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3afef3b6eff9ce9d8ff9b3601125eec7f0c8cbac7abd14f355d053fa56c98768" +checksum = "8f6d5ed8676d904364de097082f4e7d240b571b67989ced0240f08b7f966f940" dependencies = [ "cpufeatures", ] [[package]] -name = "kvdb" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7d770dcb02bf6835887c3a979b5107a04ff4bbde97a5f0928d27404a155add9" -dependencies = [ - "smallvec", -] - -[[package]] -name = "kvdb-memorydb" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf7a85fe66f9ff9cd74e169fdd2c94c6e1e74c412c99a73b4df3200b5d3760b2" +name = "kitchensink-runtime" +version = "3.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ - "kvdb", - "parking_lot 0.12.1", -] - -[[package]] -name = "kvdb-rocksdb" -version = "0.17.0" + "frame-benchmarking", + "frame-benchmarking-pallet-pov", + "frame-election-provider-support", + "frame-executive", + "frame-support", + "frame-system", + "frame-system-benchmarking", + "frame-system-rpc-runtime-api", + "frame-try-runtime", + "log", + "node-primitives", + "pallet-alliance", + "pallet-asset-conversion", + "pallet-asset-conversion-tx-payment", + "pallet-asset-rate", + "pallet-asset-tx-payment", + "pallet-assets", + "pallet-authority-discovery", + "pallet-authorship", + "pallet-babe", + "pallet-bags-list", + "pallet-balances", + "pallet-bounties", + "pallet-child-bounties", + "pallet-collective", + "pallet-contracts", + "pallet-contracts-primitives", + "pallet-conviction-voting", + "pallet-core-fellowship", + "pallet-democracy", + "pallet-election-provider-multi-phase", + "pallet-election-provider-support-benchmarking", + "pallet-elections-phragmen", + "pallet-fast-unstake", + "pallet-glutton", + "pallet-grandpa", + "pallet-identity", + "pallet-im-online", + "pallet-indices", + "pallet-insecure-randomness-collective-flip", + "pallet-lottery", + "pallet-membership", + "pallet-message-queue", + "pallet-mmr", + "pallet-multisig", + "pallet-nft-fractionalization", + "pallet-nfts", + "pallet-nfts-runtime-api", + "pallet-nis", + "pallet-nomination-pools", + "pallet-nomination-pools-benchmarking", + "pallet-nomination-pools-runtime-api", + "pallet-offences", + "pallet-offences-benchmarking", + "pallet-preimage", + "pallet-proxy", + "pallet-ranked-collective", + "pallet-recovery", + "pallet-referenda", + "pallet-remark", + "pallet-root-testing", + "pallet-salary", + "pallet-scheduler", + "pallet-session", + "pallet-session-benchmarking", + "pallet-society", + "pallet-staking", + "pallet-staking-reward-curve", + "pallet-staking-runtime-api", + "pallet-state-trie-migration", + "pallet-statement", + "pallet-sudo", + "pallet-timestamp", + "pallet-tips", + "pallet-transaction-payment", + "pallet-transaction-payment-rpc-runtime-api", + "pallet-transaction-storage", + "pallet-treasury", + "pallet-uniques", + "pallet-utility", + "pallet-vesting", + "pallet-whitelist", + "parity-scale-codec", + "primitive-types", + "scale-info", + "sp-api", + "sp-authority-discovery", + "sp-block-builder", + "sp-consensus-babe", + "sp-consensus-grandpa", + "sp-core", + "sp-inherents", + "sp-io", + "sp-offchain", + "sp-runtime", + "sp-session", + "sp-staking", + "sp-statement-store", + "sp-std", + "sp-transaction-pool", + "sp-version", + "static_assertions", + "substrate-wasm-builder", +] + +[[package]] +name = "kvdb" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7d770dcb02bf6835887c3a979b5107a04ff4bbde97a5f0928d27404a155add9" +dependencies = [ + "smallvec", +] + +[[package]] +name = "kvdb-memorydb" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf7a85fe66f9ff9cd74e169fdd2c94c6e1e74c412c99a73b4df3200b5d3760b2" +dependencies = [ + "kvdb", + "parking_lot 0.12.1", +] + +[[package]] +name = "kvdb-rocksdb" +version = "0.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2182b8219fee6bd83aacaab7344e840179ae079d5216aa4e249b4d704646a844" +checksum = "b644c70b92285f66bfc2032922a79000ea30af7bc2ab31902992a5dcb9b434f6" dependencies = [ "kvdb", "num_cpus", @@ -3015,9 +3169,9 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" [[package]] name = "libc" -version = "0.2.144" +version = "0.2.147" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b00cc1c228a6782d0f076e7b232802e0c5689d41bb5df366f2a6b6621cfdfe1" +checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3" [[package]] name = "libloading" @@ -3037,83 +3191,71 @@ checksum = "7fc7aa29613bd6a620df431842069224d8bc9011086b1db4c0e0cd47fa03ec9a" [[package]] name = "libm" -version = "0.2.6" +version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "348108ab3fba42ec82ff6e9564fc4ca0247bdccdc68dd8af9764bbc79c3c8ffb" +checksum = "f7012b1bbb0719e1097c47611d3898568c546d597c2e74d66f6087edd5233ff4" [[package]] name = "libp2p" -version = "0.50.1" +version = "0.52.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c7b0104790be871edcf97db9bd2356604984e623a08d825c3f27852290266b8" +checksum = "38039ba2df4f3255842050845daef4a004cc1f26da03dbc645535088b51910ef" dependencies = [ "bytes", "futures", "futures-timer", - "getrandom 0.2.8", + "getrandom 0.2.10", "instant", - "libp2p-core 0.38.0", + "libp2p-allow-block-list", + "libp2p-connection-limits", + "libp2p-core", "libp2p-dns", "libp2p-identify", + "libp2p-identity", "libp2p-kad", "libp2p-mdns", "libp2p-metrics", - "libp2p-mplex", "libp2p-noise", "libp2p-ping", - "libp2p-quic", "libp2p-request-response", "libp2p-swarm", "libp2p-tcp", "libp2p-wasm-ext", - "libp2p-webrtc", "libp2p-websocket", "libp2p-yamux", - "multiaddr 0.16.0", - "parking_lot 0.12.1", + "multiaddr", "pin-project", - "smallvec", ] [[package]] -name = "libp2p-core" -version = "0.38.0" +name = "libp2p-allow-block-list" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6a8fcd392ff67af6cc3f03b1426c41f7f26b6b9aff2dc632c1c56dd649e571f" +checksum = "55b46558c5c0bf99d3e2a1a38fd54ff5476ca66dd1737b12466a1824dd219311" dependencies = [ - "asn1_der", - "bs58", - "ed25519-dalek", - "either", - "fnv", - "futures", - "futures-timer", - "instant", - "log", - "multiaddr 0.16.0", - "multihash 0.16.3", - "multistream-select", - "once_cell", - "parking_lot 0.12.1", - "pin-project", - "prost", - "prost-build", - "rand 0.8.5", - "rw-stream-sink", - "sec1 0.3.0", - "sha2 0.10.6", - "smallvec", - "thiserror", - "unsigned-varint", + "libp2p-core", + "libp2p-identity", + "libp2p-swarm", + "void", +] + +[[package]] +name = "libp2p-connection-limits" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2f5107ad45cb20b2f6c3628c7b6014b996fcb13a88053f4569c872c6e30abf58" +dependencies = [ + "libp2p-core", + "libp2p-identity", + "libp2p-swarm", "void", - "zeroize", ] [[package]] name = "libp2p-core" -version = "0.39.1" +version = "0.40.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b7f8b7d65c070a5a1b5f8f0510648189da08f787b8963f8e21219e0710733af" +checksum = "ef7dd7b09e71aac9271c60031d0e558966cdb3253ba0308ab369bb2de80630d0" dependencies = [ "either", "fnv", @@ -3122,8 +3264,8 @@ dependencies = [ "instant", "libp2p-identity", "log", - "multiaddr 0.17.0", - "multihash 0.17.0", + "multiaddr", + "multihash 0.19.0", "multistream-select", "once_cell", "parking_lot 0.12.1", @@ -3139,12 +3281,13 @@ dependencies = [ [[package]] name = "libp2p-dns" -version = "0.38.0" +version = "0.40.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e42a271c1b49f789b92f7fc87749fa79ce5c7bdc88cbdfacb818a4bca47fec5" +checksum = "fd4394c81c0c06d7b4a60f3face7e8e8a9b246840f98d2c80508d0721b032147" dependencies = [ "futures", - "libp2p-core 0.38.0", + "libp2p-core", + "libp2p-identity", "log", "parking_lot 0.12.1", "smallvec", @@ -3153,20 +3296,21 @@ dependencies = [ [[package]] name = "libp2p-identify" -version = "0.41.1" +version = "0.43.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c052d0026f4817b44869bfb6810f4e1112f43aec8553f2cb38881c524b563abf" +checksum = "6a29675a32dbcc87790db6cf599709e64308f1ae9d5ecea2d259155889982db8" dependencies = [ "asynchronous-codec", + "either", "futures", "futures-timer", - "libp2p-core 0.38.0", + "libp2p-core", + "libp2p-identity", "libp2p-swarm", "log", "lru", - "prost", - "prost-build", - "prost-codec", + "quick-protobuf", + "quick-protobuf-codec", "smallvec", "thiserror", "void", @@ -3174,29 +3318,28 @@ dependencies = [ [[package]] name = "libp2p-identity" -version = "0.1.1" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a8ea433ae0cea7e3315354305237b9897afe45278b2118a7a57ca744e70fd27" +checksum = "a38d6012784fe4cc14e6d443eb415b11fc7c456dc15d9f0d90d9b70bc7ac3ec1" dependencies = [ - "bs58", + "bs58 0.5.0", "ed25519-dalek", "log", - "multiaddr 0.17.0", - "multihash 0.17.0", - "prost", + "multihash 0.19.0", "quick-protobuf", "rand 0.8.5", + "sha2 0.10.7", "thiserror", "zeroize", ] [[package]] name = "libp2p-kad" -version = "0.42.1" +version = "0.44.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2766dcd2be8c87d5e1f35487deb22d765f49c6ae1251b3633efe3b25698bd3d2" +checksum = "4f2584b0c27f879a1cca4b753fd96874109e5a2f46bd6e30924096456c2ba9b2" dependencies = [ - "arrayvec 0.7.2", + "arrayvec 0.7.4", "asynchronous-codec", "bytes", "either", @@ -3204,13 +3347,13 @@ dependencies = [ "futures", "futures-timer", "instant", - "libp2p-core 0.38.0", + "libp2p-core", + "libp2p-identity", "libp2p-swarm", "log", - "prost", - "prost-build", + "quick-protobuf", "rand 0.8.5", - "sha2 0.10.6", + "sha2 0.10.7", "smallvec", "thiserror", "uint", @@ -3220,19 +3363,20 @@ dependencies = [ [[package]] name = "libp2p-mdns" -version = "0.42.0" +version = "0.44.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04f378264aade9872d6ccd315c0accc18be3a35d15fc1b9c36e5b6f983b62b5b" +checksum = "42a2567c305232f5ef54185e9604579a894fd0674819402bb0ac0246da82f52a" dependencies = [ "data-encoding", "futures", "if-watch", - "libp2p-core 0.38.0", + "libp2p-core", + "libp2p-identity", "libp2p-swarm", "log", "rand 0.8.5", "smallvec", - "socket2", + "socket2 0.5.3", "tokio", "trust-dns-proto", "void", @@ -3240,52 +3384,39 @@ dependencies = [ [[package]] name = "libp2p-metrics" -version = "0.11.0" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ad8a64f29da86005c86a4d2728b8a0719e9b192f4092b609fd8790acb9dec55" +checksum = "3787ea81798dcc5bf1d8b40a8e8245cf894b168d04dd70aa48cb3ff2fff141d2" dependencies = [ - "libp2p-core 0.38.0", + "instant", + "libp2p-core", "libp2p-identify", + "libp2p-identity", "libp2p-kad", "libp2p-ping", "libp2p-swarm", + "once_cell", "prometheus-client", ] -[[package]] -name = "libp2p-mplex" -version = "0.38.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03805b44107aa013e7cbbfa5627b31c36cbedfdfb00603c0311998882bc4bace" -dependencies = [ - "asynchronous-codec", - "bytes", - "futures", - "libp2p-core 0.38.0", - "log", - "nohash-hasher", - "parking_lot 0.12.1", - "rand 0.8.5", - "smallvec", - "unsigned-varint", -] - [[package]] name = "libp2p-noise" -version = "0.41.0" +version = "0.43.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a978cb57efe82e892ec6f348a536bfbd9fee677adbe5689d7a93ad3a9bffbf2e" +checksum = "87945db2b3f977af09b62b9aa0a5f3e4870995a577ecd845cdeba94cdf6bbca7" dependencies = [ "bytes", "curve25519-dalek 3.2.0", "futures", - "libp2p-core 0.38.0", + "libp2p-core", + "libp2p-identity", "log", + "multiaddr", + "multihash 0.19.0", "once_cell", - "prost", - "prost-build", + "quick-protobuf", "rand 0.8.5", - "sha2 0.10.6", + "sha2 0.10.7", "snow", "static_assertions", "thiserror", @@ -3295,210 +3426,145 @@ dependencies = [ [[package]] name = "libp2p-ping" -version = "0.41.0" +version = "0.43.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "929fcace45a112536e22b3dcfd4db538723ef9c3cb79f672b98be2cc8e25f37f" +checksum = "3cd5ee3270229443a2b34b27ed0cb7470ef6b4a6e45e54e89a8771fa683bab48" dependencies = [ + "either", "futures", "futures-timer", "instant", - "libp2p-core 0.38.0", + "libp2p-core", + "libp2p-identity", "libp2p-swarm", "log", "rand 0.8.5", "void", ] -[[package]] -name = "libp2p-quic" -version = "0.7.0-alpha" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01e7c867e95c8130667b24409d236d37598270e6da69b3baf54213ba31ffca59" -dependencies = [ - "bytes", - "futures", - "futures-timer", - "if-watch", - "libp2p-core 0.38.0", - "libp2p-tls", - "log", - "parking_lot 0.12.1", - "quinn-proto", - "rand 0.8.5", - "rustls 0.20.8", - "thiserror", - "tokio", -] - [[package]] name = "libp2p-request-response" -version = "0.23.0" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3236168796727bfcf4927f766393415361e2c644b08bedb6a6b13d957c9a4884" +checksum = "20bd837798cdcce4283d2675f08bcd3756a650d56eab4d4367e1b3f27eed6887" dependencies = [ "async-trait", - "bytes", "futures", "instant", - "libp2p-core 0.38.0", + "libp2p-core", + "libp2p-identity", "libp2p-swarm", "log", "rand 0.8.5", "smallvec", - "unsigned-varint", + "void", ] [[package]] name = "libp2p-swarm" -version = "0.41.1" +version = "0.43.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2a35472fe3276b3855c00f1c032ea8413615e030256429ad5349cdf67c6e1a0" +checksum = "43106820057e0f65c77b01a3873593f66e676da4e40c70c3a809b239109f1d30" dependencies = [ "either", "fnv", "futures", "futures-timer", "instant", - "libp2p-core 0.38.0", + "libp2p-core", + "libp2p-identity", "libp2p-swarm-derive", "log", - "pin-project", + "multistream-select", + "once_cell", "rand 0.8.5", "smallvec", - "thiserror", "tokio", "void", ] [[package]] name = "libp2p-swarm-derive" -version = "0.31.0" +version = "0.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d527d5827582abd44a6d80c07ff8b50b4ee238a8979e05998474179e79dc400" +checksum = "c4d5ec2a3df00c7836d7696c136274c9c59705bac69133253696a6c932cd1d74" dependencies = [ "heck", + "proc-macro-warning", + "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.28", ] [[package]] name = "libp2p-tcp" -version = "0.38.0" +version = "0.40.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4b257baf6df8f2df39678b86c578961d48cc8b68642a12f0f763f56c8e5858d" +checksum = "09bfdfb6f945c5c014b87872a0bdb6e0aef90e92f380ef57cd9013f118f9289d" dependencies = [ "futures", "futures-timer", "if-watch", "libc", - "libp2p-core 0.38.0", + "libp2p-core", + "libp2p-identity", "log", - "socket2", + "socket2 0.5.3", "tokio", ] -[[package]] -name = "libp2p-tls" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff08d13d0dc66e5e9ba6279c1de417b84fa0d0adc3b03e5732928c180ec02781" -dependencies = [ - "futures", - "futures-rustls", - "libp2p-core 0.39.1", - "libp2p-identity", - "rcgen 0.10.0", - "ring", - "rustls 0.20.8", - "thiserror", - "webpki 0.22.0", - "x509-parser 0.14.0", - "yasna", -] - [[package]] name = "libp2p-wasm-ext" -version = "0.38.0" +version = "0.40.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bb1a35299860e0d4b3c02a3e74e3b293ad35ae0cee8a056363b0c862d082069" +checksum = "1e5d8e3a9e07da0ef5b55a9f26c009c8fb3c725d492d8bb4b431715786eea79c" dependencies = [ "futures", "js-sys", - "libp2p-core 0.38.0", - "parity-send-wrapper", + "libp2p-core", + "send_wrapper", "wasm-bindgen", "wasm-bindgen-futures", ] -[[package]] -name = "libp2p-webrtc" -version = "0.4.0-alpha" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdb6cd86dd68cba72308ea05de1cebf3ba0ae6e187c40548167955d4e3970f6a" -dependencies = [ - "async-trait", - "asynchronous-codec", - "bytes", - "futures", - "futures-timer", - "hex", - "if-watch", - "libp2p-core 0.38.0", - "libp2p-noise", - "log", - "multihash 0.16.3", - "prost", - "prost-build", - "prost-codec", - "rand 0.8.5", - "rcgen 0.9.3", - "serde", - "stun", - "thiserror", - "tinytemplate", - "tokio", - "tokio-util", - "webrtc", -] - [[package]] name = "libp2p-websocket" -version = "0.40.0" +version = "0.42.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d705506030d5c0aaf2882437c70dab437605f21c5f9811978f694e6917a3b54" +checksum = "956d981ebc84abc3377e5875483c06d94ff57bc6b25f725047f9fd52592f72d4" dependencies = [ "either", "futures", "futures-rustls", - "libp2p-core 0.38.0", + "libp2p-core", + "libp2p-identity", "log", "parking_lot 0.12.1", "quicksink", "rw-stream-sink", "soketto", "url", - "webpki-roots", + "webpki-roots 0.23.1", ] [[package]] name = "libp2p-yamux" -version = "0.42.0" +version = "0.44.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f63594a0aa818642d9d4915c791945053877253f08a3626f13416b5cd928a29" +checksum = "c0a9b42ab6de15c6f076d8fb11dc5f48d899a10b55a2e16b12be9012a05287b0" dependencies = [ "futures", - "libp2p-core 0.38.0", + "libp2p-core", "log", - "parking_lot 0.12.1", "thiserror", "yamux", ] [[package]] name = "librocksdb-sys" -version = "0.8.3+7.4.4" +version = "0.11.0+8.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "557b255ff04123fcc176162f56ed0c9cd42d8f357cf55b3fabeb60f7413741b3" +checksum = "d3386f101bcb4bd252d8e9d2fb41ec3b0862a15a62b478c355b2982efa469e3e" dependencies = [ "bindgen", "bzip2-sys", @@ -3559,9 +3625,9 @@ dependencies = [ [[package]] name = "libz-sys" -version = "1.1.8" +version = "1.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9702761c3935f8cc2f101793272e202c72b99da8f4224a19ddcf1279a6450bbf" +checksum = "d97137b25e321a73eef1418d1d5d2eda4d77e12813f8e6dead84bc52c5870a7b" dependencies = [ "cc", "pkg-config", @@ -3570,9 +3636,9 @@ dependencies = [ [[package]] name = "link-cplusplus" -version = "1.0.8" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecd207c9c713c34f95a097a5b029ac2ce6010530c7b49d7fea24d977dede04f5" +checksum = "9d240c6f7e1ba3a28b0249f774e6a9dd0175054b52dfbb61b16eb8505c3785c9" dependencies = [ "cc", ] @@ -3592,6 +3658,15 @@ dependencies = [ "linked-hash-map", ] +[[package]] +name = "linregress" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4de0b5f52a9f84544d268f5fabb71b38962d6aa3c6600b8bcd27d44ccf9c9c45" +dependencies = [ + "nalgebra", +] + [[package]] name = "linux-raw-sys" version = "0.1.4" @@ -3600,15 +3675,21 @@ checksum = "f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4" [[package]] name = "linux-raw-sys" -version = "0.3.7" +version = "0.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519" + +[[package]] +name = "linux-raw-sys" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ece97ea872ece730aed82664c424eb4c8291e1ff2480247ccf7409044bc6479f" +checksum = "57bcfdad1b858c2db7c38303a6d2ad4dfaf5eb53dfeb0910128b2c26d6158503" [[package]] name = "lock_api" -version = "0.4.9" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "435011366fe56583b16cf956f9df0095b405b82d76425bc8981c0e22e60ec4df" +checksum = "c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16" dependencies = [ "autocfg", "scopeguard", @@ -3616,20 +3697,17 @@ dependencies = [ [[package]] name = "log" -version = "0.4.17" +version = "0.4.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e" -dependencies = [ - "cfg-if", -] +checksum = "b06a4cde4c0f271a446782e3eff8de789548ce57dbc8eca9292c27f4a42004b4" [[package]] name = "lru" -version = "0.8.1" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6e8aaa3f231bb4bd57b84b2d5dc3ae7f350265df8aa96492e0bc394a1571909" +checksum = "718e8fae447df0c7e1ba7f5189829e63fd536945c8988d61444c19039f16b670" dependencies = [ - "hashbrown 0.12.3", + "hashbrown 0.13.2", ] [[package]] @@ -3670,6 +3748,60 @@ dependencies = [ "libc", ] +[[package]] +name = "macro_magic" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aee866bfee30d2d7e83835a4574aad5b45adba4cc807f2a3bbba974e5d4383c9" +dependencies = [ + "macro_magic_core", + "macro_magic_macros", + "quote", + "syn 2.0.28", +] + +[[package]] +name = "macro_magic_core" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7e766a20fd9c72bab3e1e64ed63f36bd08410e75803813df210d1ce297d7ad00" +dependencies = [ + "const-random", + "derive-syn-parse", + "macro_magic_core_macros", + "proc-macro2", + "quote", + "syn 2.0.28", +] + +[[package]] +name = "macro_magic_core_macros" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c12469fc165526520dff2807c2975310ab47cf7190a45b99b49a7dc8befab17b" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.28", +] + +[[package]] +name = "macro_magic_macros" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8fb85ec1620619edf2984a7693497d4ec88a9665d8b87e942856884c92dbf2a" +dependencies = [ + "macro_magic_core", + "quote", + "syn 2.0.28", +] + +[[package]] +name = "maplit" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e2e65a1a2e43cfcb47a895c4c8b10d1f4a61097f9f254f183aee60cad9c651d" + [[package]] name = "match_cfg" version = "0.1.0" @@ -3682,7 +3814,7 @@ version = "0.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f099785f7595cc4b4553a174ce30dd7589ef93391ff414dbb67f62392b9e0ce1" dependencies = [ - "regex-automata", + "regex-automata 0.1.10", ] [[package]] @@ -3692,12 +3824,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5" [[package]] -name = "md-5" -version = "0.10.5" +name = "matrixmultiply" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6365506850d44bff6e2fbcb5176cf63650e48bd45ef2fe2665ae1570e0f4b9ca" +checksum = "090126dc04f95dc0d1c1c91f61bdd474b3930ca064c1edc8a849da2c6cbe1e77" dependencies = [ - "digest 0.10.6", + "autocfg", + "rawpointer", ] [[package]] @@ -3708,11 +3841,11 @@ checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" [[package]] name = "memfd" -version = "0.6.2" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b20a59d985586e4a5aef64564ac77299f8586d8be6cf9106a5a40207e8908efb" +checksum = "ffc89ccdc6e10d6907450f753537ebc5c5d3460d2e4e62ea74bd571db62c0f9e" dependencies = [ - "rustix 0.36.11", + "rustix 0.37.23", ] [[package]] @@ -3726,18 +3859,18 @@ dependencies = [ [[package]] name = "memoffset" -version = "0.6.5" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" +checksum = "d61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1" dependencies = [ "autocfg", ] [[package]] name = "memoffset" -version = "0.8.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1" +checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c" dependencies = [ "autocfg", ] @@ -3751,12 +3884,6 @@ dependencies = [ "hash-db", ] -[[package]] -name = "memory_units" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8452105ba047068f40ff7093dd1d9da90898e63dd61736462e9cdda6a90ad3c3" - [[package]] name = "merlin" version = "2.0.1" @@ -3777,30 +3904,29 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" -version = "0.6.2" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa" +checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7" dependencies = [ "adler", ] [[package]] name = "mio" -version = "0.8.6" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b9d9a46eff5b4ff64b45a9e316a6d1e0bc719ef429cbec4dc630684212bfdf9" +checksum = "927a765cd3fc26206e66b296465fa9d3e5ab003e651c1b3c060e7956d96b19d2" dependencies = [ "libc", - "log", "wasi 0.11.0+wasi-snapshot-preview1", - "windows-sys 0.45.0", + "windows-sys 0.48.0", ] [[package]] name = "mockall" -version = "0.11.3" +version = "0.11.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50e4a1c770583dac7ab5e2f6c139153b783a53a1bbee9729613f193e59828326" +checksum = "4c84490118f2ee2d74570d114f3d0493cbf02790df303d2707606c3e14e07c96" dependencies = [ "cfg-if", "downcast", @@ -3813,9 +3939,9 @@ dependencies = [ [[package]] name = "mockall_derive" -version = "0.11.3" +version = "0.11.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "832663583d5fa284ca8810bf7015e46c9fff9622d3cf34bd1eea5003fec06dd0" +checksum = "22ce75669015c4f47b289fd4d4f56e894e4c96003ffdf3ac51313126f94c6cbb" dependencies = [ "cfg-if", "proc-macro2", @@ -3825,33 +3951,16 @@ dependencies = [ [[package]] name = "multiaddr" -version = "0.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4aebdb21e90f81d13ed01dc84123320838e53963c2ca94b60b305d3fa64f31e" -dependencies = [ - "arrayref", - "byteorder", - "data-encoding", - "multibase", - "multihash 0.16.3", - "percent-encoding", - "serde", - "static_assertions", - "unsigned-varint", - "url", -] - -[[package]] -name = "multiaddr" -version = "0.17.0" +version = "0.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b53e0cc5907a5c216ba6584bf74be8ab47d6d6289f72793b2dddbf15dc3bf8c" +checksum = "92a651988b3ed3ad1bc8c87d016bb92f6f395b84ed1db9b926b32b1fc5a2c8b5" dependencies = [ "arrayref", "byteorder", "data-encoding", + "libp2p-identity", "multibase", - "multihash 0.17.0", + "multihash 0.19.0", "percent-encoding", "serde", "static_assertions", @@ -3872,31 +3981,28 @@ dependencies = [ [[package]] name = "multihash" -version = "0.16.3" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c346cf9999c631f002d8f977c4eaeaa0e6386f16007202308d0b3757522c2cc" +checksum = "835d6ff01d610179fbce3de1694d007e500bf33a7f29689838941d6bf783ae40" dependencies = [ "blake2b_simd", "blake2s_simd", "blake3", "core2", - "digest 0.10.6", + "digest 0.10.7", "multihash-derive", - "sha2 0.10.6", + "sha2 0.10.7", "sha3", "unsigned-varint", ] [[package]] name = "multihash" -version = "0.17.0" +version = "0.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "835d6ff01d610179fbce3de1694d007e500bf33a7f29689838941d6bf783ae40" +checksum = "2fd59dcc2bbe70baabeac52cd22ae52c55eefe6c38ff11a9439f16a350a939f2" dependencies = [ "core2", - "digest 0.10.6", - "multihash-derive", - "sha2 0.10.6", "unsigned-varint", ] @@ -3922,9 +4028,9 @@ checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a" [[package]] name = "multistream-select" -version = "0.12.1" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8552ab875c1313b97b8d20cb857b9fd63e2d1d6a0a1b53ce9821e575405f27a" +checksum = "ea0df8e5eec2298a62b326ee4f0d7fe1a6b90a09dfcf9df37b38f947a8c42f19" dependencies = [ "bytes", "futures", @@ -3934,6 +4040,33 @@ dependencies = [ "unsigned-varint", ] +[[package]] +name = "nalgebra" +version = "0.32.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "307ed9b18cc2423f29e83f84fd23a8e73628727990181f18641a8b5dc2ab1caa" +dependencies = [ + "approx", + "matrixmultiply", + "nalgebra-macros", + "num-complex", + "num-rational", + "num-traits", + "simba", + "typenum", +] + +[[package]] +name = "nalgebra-macros" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91761aed67d03ad966ef783ae962ef9bbaca728d2dd7ceb7939ec110fffad998" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "names" version = "0.13.0" @@ -4018,7 +4151,34 @@ dependencies = [ "bitflags 1.3.2", "cfg-if", "libc", - "memoffset 0.6.5", +] + +[[package]] +name = "node-executor" +version = "3.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "kitchensink-runtime", + "node-primitives", + "parity-scale-codec", + "sc-executor", + "scale-info", + "sp-core", + "sp-keystore", + "sp-state-machine", + "sp-statement-store", + "sp-tracing", + "sp-trie", +] + +[[package]] +name = "node-primitives" +version = "2.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "sp-core", + "sp-runtime", ] [[package]] @@ -4044,13 +4204,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be" [[package]] -name = "num-bigint" +name = "num-complex" version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f93ab6289c7b344a8a9f60f88d80aa20032336fe78da341afc91c8a2341fc75f" +checksum = "02e0d21255c828d6f128a1e41534206671e8c3ea0c62f32291e808dc82cff17d" dependencies = [ - "autocfg", - "num-integer", "num-traits", ] @@ -4060,7 +4218,7 @@ version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a652d9771a63711fd3c3deb670acfbe5c30a4072e664d7a3bf5a9e1056ac72c3" dependencies = [ - "arrayvec 0.7.2", + "arrayvec 0.7.4", "itoa", ] @@ -4081,74 +4239,61 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0" dependencies = [ "autocfg", - "num-bigint", "num-integer", "num-traits", ] [[package]] name = "num-traits" -version = "0.2.15" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd" +checksum = "f30b0abd723be7e2ffca1272140fac1a2f084c77ec3e123c192b66af1ee9e6c2" dependencies = [ "autocfg", ] [[package]] name = "num_cpus" -version = "1.15.0" +version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b" +checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" dependencies = [ - "hermit-abi 0.2.6", + "hermit-abi 0.3.2", "libc", ] [[package]] -name = "object" -version = "0.29.0" +name = "number_prefix" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21158b2c33aa6d4561f1c0a6ea283ca92bc54802a93b263e910746d679a7eb53" -dependencies = [ - "crc32fast", - "hashbrown 0.12.3", - "indexmap", - "memchr", -] +checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" [[package]] name = "object" -version = "0.30.3" +version = "0.30.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea86265d3d3dcb6a27fc51bd29a4bf387fae9d2986b823079d4986af253eb439" +checksum = "03b4680b86d9cfafba8fc491dc9b6df26b68cf40e9e6cd73909194759a63c385" dependencies = [ + "crc32fast", + "hashbrown 0.13.2", + "indexmap 1.9.3", "memchr", ] [[package]] -name = "oid-registry" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38e20717fa0541f39bd146692035c37bedfa532b3e5071b35761082407546b2a" -dependencies = [ - "asn1-rs 0.3.1", -] - -[[package]] -name = "oid-registry" -version = "0.6.1" +name = "object" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9bedf36ffb6ba96c2eb7144ef6270557b52e54b20c0a8e1eb2ff99a6c6959bff" +checksum = "8bda667d9f2b5051b8833f59f3bf748b28ef54f850f4fcb389a252aa383866d1" dependencies = [ - "asn1-rs 0.5.2", + "memchr", ] [[package]] name = "once_cell" -version = "1.17.1" +version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3" +checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" [[package]] name = "opaque-debug" @@ -4169,48 +4314,1248 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" [[package]] -name = "os_str_bytes" -version = "6.5.0" +name = "packed_simd_2" +version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ceedf44fb00f2d1984b0bc98102627ce622e083e49a5bacdb3e514fa4238e267" +checksum = "a1914cd452d8fccd6f9db48147b29fd4ae05bea9dc5d9ad578509f72415de282" +dependencies = [ + "cfg-if", + "libm 0.1.4", +] [[package]] -name = "p256" -version = "0.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51f44edd08f51e2ade572f141051021c5af22677e42b7dd28a88155151c33594" +name = "pallet-alliance" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ - "ecdsa 0.14.8", - "elliptic-curve 0.12.3", - "sha2 0.10.6", + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "pallet-collective", + "pallet-identity", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-core-hashing", + "sp-io", + "sp-runtime", + "sp-std", ] [[package]] -name = "p384" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfc8c5bf642dde52bb9e87c0ecd8ca5a76faac2eeed98dedb7c717997e1080aa" +name = "pallet-asset-conversion" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-api", + "sp-arithmetic", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-asset-conversion-tx-payment" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ - "ecdsa 0.14.8", - "elliptic-curve 0.12.3", - "sha2 0.10.6", + "frame-support", + "frame-system", + "pallet-asset-conversion", + "pallet-transaction-payment", + "parity-scale-codec", + "scale-info", + "sp-runtime", + "sp-std", ] [[package]] -name = "packed_simd_2" -version = "0.3.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1914cd452d8fccd6f9db48147b29fd4ae05bea9dc5d9ad578509f72415de282" +name = "pallet-asset-rate" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ - "cfg-if", - "libm 0.1.4", + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-asset-tx-payment" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "pallet-transaction-payment", + "parity-scale-codec", + "scale-info", + "serde", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-assets" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-authority-discovery" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-support", + "frame-system", + "pallet-session", + "parity-scale-codec", + "scale-info", + "sp-application-crypto", + "sp-authority-discovery", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-authorship" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-support", + "frame-system", + "impl-trait-for-tuples", + "parity-scale-codec", + "scale-info", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-babe" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "pallet-authorship", + "pallet-session", + "pallet-timestamp", + "parity-scale-codec", + "scale-info", + "sp-application-crypto", + "sp-consensus-babe", + "sp-core", + "sp-io", + "sp-runtime", + "sp-session", + "sp-staking", + "sp-std", +] + +[[package]] +name = "pallet-bags-list" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-election-provider-support", + "frame-support", + "frame-system", + "log", + "pallet-balances", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", + "sp-tracing", +] + +[[package]] +name = "pallet-balances" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-bounties" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "pallet-treasury", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-child-bounties" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "pallet-bounties", + "pallet-treasury", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-collective" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-contracts" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "bitflags 1.3.2", + "environmental", + "frame-benchmarking", + "frame-support", + "frame-system", + "impl-trait-for-tuples", + "log", + "pallet-balances", + "pallet-contracts-primitives", + "pallet-contracts-proc-macro", + "parity-scale-codec", + "rand 0.8.5", + "scale-info", + "serde", + "smallvec", + "sp-api", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", + "wasm-instrument 0.4.0", + "wasmi", +] + +[[package]] +name = "pallet-contracts-primitives" +version = "24.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "bitflags 1.3.2", + "parity-scale-codec", + "scale-info", + "sp-runtime", + "sp-std", + "sp-weights", +] + +[[package]] +name = "pallet-contracts-proc-macro" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.28", +] + +[[package]] +name = "pallet-conviction-voting" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "assert_matches", + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "serde", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-core-fellowship" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-arithmetic", + "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#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "serde", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-election-provider-multi-phase" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-election-provider-support", + "frame-support", + "frame-system", + "log", + "pallet-election-provider-support-benchmarking", + "parity-scale-codec", + "rand 0.8.5", + "scale-info", + "sp-arithmetic", + "sp-core", + "sp-io", + "sp-npos-elections", + "sp-runtime", + "sp-std", + "strum", +] + +[[package]] +name = "pallet-election-provider-support-benchmarking" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-election-provider-support", + "frame-system", + "parity-scale-codec", + "sp-npos-elections", + "sp-runtime", +] + +[[package]] +name = "pallet-elections-phragmen" +version = "5.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-npos-elections", + "sp-runtime", + "sp-staking", + "sp-std", +] + +[[package]] +name = "pallet-fast-unstake" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "docify", + "frame-benchmarking", + "frame-election-provider-support", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-io", + "sp-runtime", + "sp-staking", + "sp-std", +] + +[[package]] +name = "pallet-glutton" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "blake2", + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-grandpa" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "pallet-authorship", + "pallet-session", + "parity-scale-codec", + "scale-info", + "sp-application-crypto", + "sp-consensus-grandpa", + "sp-core", + "sp-io", + "sp-runtime", + "sp-session", + "sp-staking", + "sp-std", +] + +[[package]] +name = "pallet-identity" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "enumflags2", + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "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#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "pallet-authorship", + "parity-scale-codec", + "scale-info", + "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#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-keyring", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-insecure-randomness-collective-flip" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-support", + "frame-system", + "parity-scale-codec", + "safe-mix", + "scale-info", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-lottery" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-membership" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-message-queue" +version = "7.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-arithmetic", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", + "sp-weights", +] + +[[package]] +name = "pallet-mmr" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-mmr-primitives", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-multisig" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-nft-fractionalization" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "pallet-assets", + "pallet-nfts", + "parity-scale-codec", + "scale-info", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-nfts" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "enumflags2", + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-nfts-runtime-api" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-support", + "pallet-nfts", + "parity-scale-codec", + "sp-api", +] + +[[package]] +name = "pallet-nis" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-arithmetic", + "sp-core", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-nomination-pools" +version = "1.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-support", + "frame-system", + "log", + "pallet-balances", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-staking", + "sp-std", + "sp-tracing", +] + +[[package]] +name = "pallet-nomination-pools-benchmarking" +version = "1.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-election-provider-support", + "frame-support", + "frame-system", + "pallet-bags-list", + "pallet-nomination-pools", + "pallet-staking", + "parity-scale-codec", + "scale-info", + "sp-runtime", + "sp-runtime-interface", + "sp-staking", + "sp-std", +] + +[[package]] +name = "pallet-nomination-pools-runtime-api" +version = "1.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "pallet-nomination-pools", + "parity-scale-codec", + "sp-api", + "sp-std", +] + +[[package]] +name = "pallet-offences" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-support", + "frame-system", + "log", + "pallet-balances", + "parity-scale-codec", + "scale-info", + "serde", + "sp-runtime", + "sp-staking", + "sp-std", +] + +[[package]] +name = "pallet-offences-benchmarking" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-election-provider-support", + "frame-support", + "frame-system", + "log", + "pallet-babe", + "pallet-balances", + "pallet-grandpa", + "pallet-im-online", + "pallet-offences", + "pallet-session", + "pallet-staking", + "parity-scale-codec", + "scale-info", + "sp-runtime", + "sp-staking", + "sp-std", +] + +[[package]] +name = "pallet-preimage" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-proxy" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-ranked-collective" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-arithmetic", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-recovery" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-referenda" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "serde", + "sp-arithmetic", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-remark" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "serde", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-root-testing" +version = "1.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-salary" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-arithmetic", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-scheduler" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-io", + "sp-runtime", + "sp-std", + "sp-weights", +] + +[[package]] +name = "pallet-session" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-support", + "frame-system", + "impl-trait-for-tuples", + "log", + "pallet-timestamp", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-session", + "sp-staking", + "sp-std", + "sp-trie", +] + +[[package]] +name = "pallet-session-benchmarking" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "pallet-session", + "pallet-staking", + "rand 0.8.5", + "sp-runtime", + "sp-session", + "sp-std", +] + +[[package]] +name = "pallet-society" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "hex-literal", + "log", + "parity-scale-codec", + "rand_chacha 0.2.2", + "scale-info", + "sp-arithmetic", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-staking" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-election-provider-support", + "frame-support", + "frame-system", + "log", + "pallet-authorship", + "pallet-session", + "parity-scale-codec", + "scale-info", + "serde", + "sp-application-crypto", + "sp-io", + "sp-runtime", + "sp-staking", + "sp-std", +] + +[[package]] +name = "pallet-staking-reward-curve" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.28", +] + +[[package]] +name = "pallet-staking-runtime-api" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "parity-scale-codec", + "sp-api", +] + +[[package]] +name = "pallet-state-trie-migration" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-statement" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-api", + "sp-core", + "sp-io", + "sp-runtime", + "sp-statement-store", + "sp-std", +] + +[[package]] +name = "pallet-sudo" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-timestamp" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "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#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "pallet-treasury", + "parity-scale-codec", + "scale-info", + "serde", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-transaction-payment" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "serde", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-transaction-payment-rpc-runtime-api" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "pallet-transaction-payment", + "parity-scale-codec", + "sp-api", + "sp-runtime", + "sp-weights", +] + +[[package]] +name = "pallet-transaction-storage" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "pallet-balances", + "parity-scale-codec", + "scale-info", + "serde", + "sp-inherents", + "sp-io", + "sp-runtime", + "sp-std", + "sp-transaction-storage-proof", +] + +[[package]] +name = "pallet-treasury" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "impl-trait-for-tuples", + "pallet-balances", + "parity-scale-codec", + "scale-info", + "serde", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-uniques" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-utility" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-vesting" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-whitelist" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-api", + "sp-runtime", + "sp-std", ] [[package]] name = "parity-db" -version = "0.4.6" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00bfb81cf5c90a222db2fb7b3a7cbf8cc7f38dfb6647aca4d98edf8281f56ed5" +checksum = "78f19d20a0d2cc52327a88d131fa1c4ea81ea4a04714aedcfeca2dd410049cf8" dependencies = [ "blake2", "crc32fast", @@ -4228,11 +5573,11 @@ dependencies = [ [[package]] name = "parity-scale-codec" -version = "3.4.0" +version = "3.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "637935964ff85a605d114591d4d2c13c5d1ba2806dae97cea6bf180238a749ac" +checksum = "dd8e946cc0cc711189c0b0249fb8b599cbeeab9784d83c415719368bb8d4ac64" dependencies = [ - "arrayvec 0.7.2", + "arrayvec 0.7.4", "bitvec", "byte-slice-cast", "bytes", @@ -4243,9 +5588,9 @@ dependencies = [ [[package]] name = "parity-scale-codec-derive" -version = "3.1.4" +version = "3.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86b26a931f824dd4eca30b3e43bb4f31cd5f0d3a403c5f5ff27106b805bfde7b" +checksum = "2a296c3079b5fefbc499e1de58dc26c09b1b9a5952d26694ee89f04a43ebbb3e" dependencies = [ "proc-macro-crate", "proc-macro2", @@ -4253,12 +5598,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "parity-send-wrapper" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa9777aa91b8ad9dd5aaa04a9b6bcb02c7f1deb952fca5a66034d5e63afc5c6f" - [[package]] name = "parity-wasm" version = "0.45.0" @@ -4267,9 +5606,9 @@ checksum = "e1ad0aff30c1da14b1254fcb2af73e1fa9a28670e584a626f53a369d0e157304" [[package]] name = "parking" -version = "2.0.0" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "427c3892f9e783d91cc128285287e70a59e206ca452770ece88a76f7a3eddd72" +checksum = "14f2252c834a40ed9bb5422029649578e63aa341ac401f74e719dd1afda8394e" [[package]] name = "parking_lot" @@ -4289,7 +5628,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" dependencies = [ "lock_api", - "parking_lot_core 0.9.7", + "parking_lot_core 0.9.8", ] [[package]] @@ -4301,29 +5640,35 @@ dependencies = [ "cfg-if", "instant", "libc", - "redox_syscall", + "redox_syscall 0.2.16", "smallvec", "winapi", ] [[package]] name = "parking_lot_core" -version = "0.9.7" +version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9069cbb9f99e3a5083476ccb29ceb1de18b9118cafa53e90c9551235de2b9521" +checksum = "93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447" dependencies = [ "cfg-if", "libc", - "redox_syscall", + "redox_syscall 0.3.5", "smallvec", - "windows-sys 0.45.0", + "windows-targets 0.48.1", ] +[[package]] +name = "partial_sort" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7924d1d0ad836f665c9065e26d016c673ece3993f30d340068b16f282afc1156" + [[package]] name = "paste" -version = "1.0.12" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f746c4065a8fa3fe23974dd82f15431cc8d40779821001404d10d2e79ca7d79" +checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c" [[package]] name = "pbkdf2" @@ -4340,7 +5685,7 @@ version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "83a0692ec44e4cf1ef28ca317f14f8f07da2d95ec3fa01f86e4467b725e60917" dependencies = [ - "digest 0.10.6", + "digest 0.10.7", ] [[package]] @@ -4349,29 +5694,11 @@ version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099" -[[package]] -name = "pem" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8835c273a76a90455d7344889b0964598e3316e2a79ede8e36f16bdcf2228b8" -dependencies = [ - "base64 0.13.1", -] - -[[package]] -name = "pem-rfc7468" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24d159833a9105500e0398934e205e0773f0b27529557134ecfc51c27646adac" -dependencies = [ - "base64ct", -] - [[package]] name = "percent-encoding" -version = "2.2.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e" +checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94" [[package]] name = "petgraph" @@ -4380,27 +5707,27 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4dd7d28ee937e54fe3080c91faa1c3a46c06de6252988a7f4592ba2310ef22a4" dependencies = [ "fixedbitset", - "indexmap", + "indexmap 1.9.3", ] [[package]] name = "pin-project" -version = "1.0.12" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad29a609b6bcd67fee905812e544992d216af9d755757c05ed2d0e15a74c6ecc" +checksum = "030ad2bc4db10a8944cb0d837f158bdfec4d4a4873ab701a95046770d11f8842" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.0.12" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "069bdb1e05adc7a8990dce9cc75370895fbe4e3d58b9b73bf1aee56359344a55" +checksum = "ec2e072ecce94ec471b13398d5402c188e76ac03cf74dd1a975161b23a3f6d9c" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.28", ] [[package]] @@ -4411,9 +5738,9 @@ checksum = "257b64915a082f7811703966789728173279bdebb956b143dbcd23f6f970a777" [[package]] name = "pin-project-lite" -version = "0.2.9" +version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116" +checksum = "4c40d25201921e5ff0c862a505c6557ea88568a4e3ace775ab55e93f2f4f9d57" [[package]] name = "pin-utils" @@ -4421,31 +5748,21 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" -[[package]] -name = "pkcs8" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9eca2c590a5f85da82668fa685c09ce2888b9430e83299debf1f34b65fd4a4ba" -dependencies = [ - "der 0.6.1", - "spki 0.6.0", -] - [[package]] name = "pkcs8" version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" dependencies = [ - "der 0.7.5", - "spki 0.7.2", + "der", + "spki", ] [[package]] name = "pkg-config" -version = "0.3.26" +version = "0.3.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ac9a59f73473f1b8d852421e59e64809f025994837ef743615c6d0c5b305160" +checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964" [[package]] name = "platforms" @@ -4455,9 +5772,9 @@ checksum = "e3d7ddaed09e0eb771a79ab0fd64609ba0afb0a8366421957936ad14cbd13630" [[package]] name = "polling" -version = "2.6.0" +version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e1f879b2998099c2d69ab9605d145d5b661195627eccc680002c4918a7fb6fa" +checksum = "4b2d323e8ca7996b3e23126511a523f7e62924d93ecd5ae73b333815b0eb3dce" dependencies = [ "autocfg", "bitflags 1.3.2", @@ -4465,8 +5782,8 @@ dependencies = [ "concurrent-queue", "libc", "log", - "pin-project-lite 0.2.9", - "windows-sys 0.45.0", + "pin-project-lite 0.2.10", + "windows-sys 0.48.0", ] [[package]] @@ -4494,16 +5811,22 @@ dependencies = [ [[package]] name = "polyval" -version = "0.6.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ef234e08c11dfcb2e56f79fd70f6f2eb7f025c0ce2333e82f4f0518ecad30c6" +checksum = "d52cff9d1d4dee5fe6d03729099f4a310a41179e0a10dbf542039873f2e826fb" dependencies = [ "cfg-if", "cpufeatures", "opaque-debug 0.3.0", - "universal-hash 0.5.0", + "universal-hash 0.5.1", ] +[[package]] +name = "portable-atomic" +version = "1.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f32154ba0af3a075eefa1eda8bb414ee928f62303a54ea85b8d6638ff1a6ee9e" + [[package]] name = "ppv-lite86" version = "0.2.17" @@ -4550,6 +5873,16 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "prettyplease" +version = "0.2.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c64d9ba0963cdcea2e1b2230fbae2bab30eb25a174be395c41e764bfb65dd62" +dependencies = [ + "proc-macro2", + "syn 2.0.28", +] + [[package]] name = "primitive-types" version = "0.12.1" @@ -4558,6 +5891,7 @@ checksum = "9f3486ccba82358b11a77516035647c34ba167dfa53312630de83b12bd4f3d66" dependencies = [ "fixed-hash", "impl-codec", + "impl-num-traits", "impl-serde", "scale-info", "uint", @@ -4570,7 +5904,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e17d47ce914bf4de440332250b0edd23ce48c005f59fab39d3335866b114f11a" dependencies = [ "thiserror", - "toml", + "toml 0.5.11", ] [[package]] @@ -4597,22 +5931,28 @@ dependencies = [ "version_check", ] +[[package]] +name = "proc-macro-hack" +version = "0.5.20+deprecated" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068" + [[package]] name = "proc-macro-warning" -version = "0.2.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d4f284d87b9cedc2ff57223cbc4e3937cd6063c01e92c8e2a8c080df0013933" +checksum = "70550716265d1ec349c41f70dd4f964b4fd88394efe4405f0c1da679c4799a07" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.28", ] [[package]] name = "proc-macro2" -version = "1.0.56" +version = "1.0.66" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b63bdb0cd06f1f4dedf69b254734f9b45af66e4a031e42a7480257d9898b435" +checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9" dependencies = [ "unicode-ident", ] @@ -4633,21 +5973,21 @@ dependencies = [ [[package]] name = "prometheus-client" -version = "0.18.1" +version = "0.21.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83cd1b99916654a69008fd66b4f9397fbe08e6e51dfe23d4417acf5d3b8cb87c" +checksum = "3c99afa9a01501019ac3a14d71d9f94050346f55ca471ce90c799a15c58f61e2" dependencies = [ "dtoa", "itoa", "parking_lot 0.12.1", - "prometheus-client-derive-text-encode", + "prometheus-client-derive-encode", ] [[package]] -name = "prometheus-client-derive-text-encode" -version = "0.3.0" +name = "prometheus-client-derive-encode" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66a455fbcb954c1a7decf3c586e860fd7889cddf4b8e164be736dbac95a953cd" +checksum = "72b6a5217beb0ad503ee7fa752d451c905113d70721b937126158f3106a48cc1" dependencies = [ "proc-macro2", "quote", @@ -4656,9 +5996,9 @@ dependencies = [ [[package]] name = "prost" -version = "0.11.8" +version = "0.11.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e48e50df39172a3e7eb17e14642445da64996989bc212b583015435d39a58537" +checksum = "0b82eaa1d779e9a4bc1c3217db8ffbeabaae1dca241bf70183242128d48681cd" dependencies = [ "bytes", "prost-derive", @@ -4666,9 +6006,9 @@ dependencies = [ [[package]] name = "prost-build" -version = "0.11.8" +version = "0.11.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c828f93f5ca4826f97fedcbd3f9a536c16b12cff3dbbb4a007f932bbad95b12" +checksum = "119533552c9a7ffacc21e099c24a0ac8bb19c2a2a3f363de84cd9b844feab270" dependencies = [ "bytes", "heck", @@ -4677,7 +6017,7 @@ dependencies = [ "log", "multimap", "petgraph", - "prettyplease", + "prettyplease 0.1.25", "prost", "prost-types", "regex", @@ -4686,24 +6026,11 @@ dependencies = [ "which", ] -[[package]] -name = "prost-codec" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dc34979ff898b6e141106178981ce2596c387ea6e62533facfc61a37fc879c0" -dependencies = [ - "asynchronous-codec", - "bytes", - "prost", - "thiserror", - "unsigned-varint", -] - [[package]] name = "prost-derive" -version = "0.11.8" +version = "0.11.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ea9b0f8cbe5e15a8a042d030bd96668db28ecb567ec37d691971ff5731d2b1b" +checksum = "e5d2d8d10f3c6ded6da8b05b5fb3b8a5082514344d56c9f871412d29b4e075b4" dependencies = [ "anyhow", "itertools", @@ -4714,9 +6041,9 @@ dependencies = [ [[package]] name = "prost-types" -version = "0.11.8" +version = "0.11.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "379119666929a1afd7a043aa6cf96fa67a6dce9af60c88095a4686dbce4c9c88" +checksum = "213622a1460818959ac1181aaeb2dc9c7f63df720db7d788b3e24eacd1983e13" dependencies = [ "prost", ] @@ -4745,6 +6072,19 @@ dependencies = [ "byteorder", ] +[[package]] +name = "quick-protobuf-codec" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8ededb1cd78531627244d51dd0c7139fbe736c7d57af0092a76f0ffb2f56e98" +dependencies = [ + "asynchronous-codec", + "bytes", + "quick-protobuf", + "thiserror", + "unsigned-varint", +] + [[package]] name = "quicksink" version = "0.1.2" @@ -4756,29 +6096,11 @@ dependencies = [ "pin-project-lite 0.1.12", ] -[[package]] -name = "quinn-proto" -version = "0.9.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72ef4ced82a24bb281af338b9e8f94429b6eca01b4e66d899f40031f074e74c9" -dependencies = [ - "bytes", - "rand 0.8.5", - "ring", - "rustc-hash", - "rustls 0.20.8", - "slab", - "thiserror", - "tinyvec", - "tracing", - "webpki 0.22.0", -] - [[package]] name = "quote" -version = "1.0.26" +version = "1.0.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4424af4bf778aae2051a77b60283332f386554255d722233d09fbfc7e30da2fc" +checksum = "50f3b39ccfb720540debaa0164757101c08ecb8d326b15358ce76a62c7e85965" dependencies = [ "proc-macro2", ] @@ -4848,7 +6170,7 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom 0.2.8", + "getrandom 0.2.10", ] [[package]] @@ -4869,6 +6191,12 @@ dependencies = [ "rand_core 0.6.4", ] +[[package]] +name = "rawpointer" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3" + [[package]] name = "rayon" version = "1.7.0" @@ -4892,35 +6220,19 @@ dependencies = [ ] [[package]] -name = "rcgen" -version = "0.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6413f3de1edee53342e6138e75b56d32e7bc6e332b3bd62d497b1929d4cfbcdd" -dependencies = [ - "pem", - "ring", - "time 0.3.20", - "x509-parser 0.13.2", - "yasna", -] - -[[package]] -name = "rcgen" -version = "0.10.0" +name = "redox_syscall" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffbe84efe2f38dea12e9bfc1f65377fdf03e53a18cb3b995faedf7934c7e785b" +checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" dependencies = [ - "pem", - "ring", - "time 0.3.20", - "yasna", + "bitflags 1.3.2", ] [[package]] name = "redox_syscall" -version = "0.2.16" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" +checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29" dependencies = [ "bitflags 1.3.2", ] @@ -4931,36 +6243,36 @@ version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b" dependencies = [ - "getrandom 0.2.8", - "redox_syscall", + "getrandom 0.2.10", + "redox_syscall 0.2.16", "thiserror", ] [[package]] name = "ref-cast" -version = "1.0.16" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f43faa91b1c8b36841ee70e97188a869d37ae21759da6846d4be66de5bf7b12c" +checksum = "61ef7e18e8841942ddb1cf845054f8008410030a3997875d9e49b7a363063df1" dependencies = [ "ref-cast-impl", ] [[package]] name = "ref-cast-impl" -version = "1.0.16" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d2275aab483050ab2a7364c1a46604865ee7d6906684e08db0f090acf74f9e7" +checksum = "2dfaf0c85b766276c797f3791f5bc6d5bd116b41d53049af2789666b0c0bc9fa" dependencies = [ "proc-macro2", "quote", - "syn 2.0.4", + "syn 2.0.28", ] [[package]] name = "regalloc2" -version = "0.5.1" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "300d4fbfb40c1c66a78ba3ddd41c1110247cf52f97b87d0f2fc9209bd49b030c" +checksum = "80535183cae11b149d618fbd3c37e38d7cda589d82d7769e196ca9a9042d7621" dependencies = [ "fxhash", "log", @@ -4970,13 +6282,14 @@ dependencies = [ [[package]] name = "regex" -version = "1.7.1" +version = "1.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48aaa5748ba571fb95cd2c85c09f629215d3a6ece942baa100950af03a34f733" +checksum = "b2eae68fc220f7cf2532e4494aded17545fce192d59cd996e0fe7887f4ceb575" dependencies = [ "aho-corasick", "memchr", - "regex-syntax", + "regex-automata 0.3.4", + "regex-syntax 0.7.4", ] [[package]] @@ -4985,26 +6298,31 @@ version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" dependencies = [ - "regex-syntax", + "regex-syntax 0.6.29", +] + +[[package]] +name = "regex-automata" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b7b6d6190b7594385f61bd3911cd1be99dfddcfc365a4160cc2ab5bff4aed294" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax 0.7.4", ] [[package]] name = "regex-syntax" -version = "0.6.28" +version = "0.6.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848" +checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" [[package]] -name = "region" -version = "3.0.0" +name = "regex-syntax" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76e189c2369884dce920945e2ddf79b3dff49e071a167dd1817fa9c4c00d512e" -dependencies = [ - "bitflags 1.3.2", - "libc", - "mach", - "winapi", -] +checksum = "e5ea92a5b6195c6ef2a0295ea818b312502c6fc94dde986c5553242e18fd4ce2" [[package]] name = "resolv-conf" @@ -5016,17 +6334,6 @@ dependencies = [ "quick-error", ] -[[package]] -name = "rfc6979" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7743f17af12fa0b03b803ba12cd6a8d9483a587e89c69445e3909655c0b9fabb" -dependencies = [ - "crypto-bigint 0.4.9", - "hmac 0.12.1", - "zeroize", -] - [[package]] name = "rfc6979" version = "0.4.0" @@ -5046,7 +6353,7 @@ dependencies = [ "cc", "libc", "once_cell", - "spin", + "spin 0.5.2", "untrusted", "web-sys", "winapi", @@ -5054,9 +6361,9 @@ dependencies = [ [[package]] name = "rocksdb" -version = "0.19.0" +version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e9562ea1d70c0cc63a34a22d977753b50cca91cc6b6527750463bd5dd8697bc" +checksum = "bb6f170a4041d50a0ce04b0d2e14916d6ca863ea2e422689a5b694395d299ffe" dependencies = [ "libc", "librocksdb-sys", @@ -5073,17 +6380,6 @@ dependencies = [ "winapi", ] -[[package]] -name = "rtcp" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1919efd6d4a6a85d13388f9487549bb8e359f17198cc03ffd72f79b553873691" -dependencies = [ - "bytes", - "thiserror", - "webrtc-util", -] - [[package]] name = "rtnetlink" version = "0.10.1" @@ -5109,25 +6405,11 @@ dependencies = [ "winapi", ] -[[package]] -name = "rtp" -version = "0.6.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2a095411ff00eed7b12e4c6a118ba984d113e1079582570d56a5ee723f11f80" -dependencies = [ - "async-trait", - "bytes", - "rand 0.8.5", - "serde", - "thiserror", - "webrtc-util", -] - [[package]] name = "rustc-demangle" -version = "0.1.21" +version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ef03e0a2b150c7a90d01faf6254c9c48a41e95fb2a8c2ac1c6f0d2b9aefc342" +checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" [[package]] name = "rustc-hash" @@ -5143,30 +6425,30 @@ checksum = "3e75f6a532d0fd9f7f13144f392b6ad56a32696bfcd9c78f797f16bbb6f072d6" [[package]] name = "rustc_version" -version = "0.4.0" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" +checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" dependencies = [ - "semver", + "semver 0.9.0", ] [[package]] -name = "rusticata-macros" -version = "4.1.0" +name = "rustc_version" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "faf0c4a6ece9950b9abdb62b1cfcf2a68b3b67a10ba445b3bb85be2a293d0632" +checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" dependencies = [ - "nom", + "semver 1.0.18", ] [[package]] name = "rustix" -version = "0.36.11" +version = "0.36.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db4165c9963ab29e422d6c26fbc1d37f15bace6b2810221f9d925023480fcf0e" +checksum = "c37f1bd5ef1b5422177b7646cba67430579cfe2ace80f284fee876bca52ad941" dependencies = [ "bitflags 1.3.2", - "errno 0.2.8", + "errno", "io-lifetimes", "libc", "linux-raw-sys 0.1.4", @@ -5175,29 +6457,29 @@ dependencies = [ [[package]] name = "rustix" -version = "0.37.19" +version = "0.37.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "acf8729d8542766f1b2cf77eb034d52f40d375bb8b615d0b147089946e16613d" +checksum = "4d69718bf81c6127a49dc64e44a742e8bb9213c0ff8869a22c308f84c1d4ab06" dependencies = [ "bitflags 1.3.2", - "errno 0.3.1", + "errno", "io-lifetimes", "libc", - "linux-raw-sys 0.3.7", + "linux-raw-sys 0.3.8", "windows-sys 0.48.0", ] [[package]] -name = "rustls" -version = "0.19.1" +name = "rustix" +version = "0.38.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35edb675feee39aec9c99fa5ff985081995a06d594114ae14cbe797ad7b7a6d7" +checksum = "1ee020b1716f0a80e2ace9b03441a749e402e86712f15f16fe8a8f75afac732f" dependencies = [ - "base64 0.13.1", - "log", - "ring", - "sct 0.6.1", - "webpki 0.21.4", + "bitflags 2.3.3", + "errno", + "libc", + "linux-raw-sys 0.4.5", + "windows-sys 0.48.0", ] [[package]] @@ -5208,15 +6490,15 @@ checksum = "fff78fc74d175294f4e83b28343315ffcfb114b156f0185e9741cb5570f50e2f" dependencies = [ "log", "ring", - "sct 0.7.0", - "webpki 0.22.0", + "sct", + "webpki", ] [[package]] name = "rustls-native-certs" -version = "0.6.2" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0167bac7a9f490495f3c33013e7722b53cb087ecbe082fb0c6387c96f634ea50" +checksum = "a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00" dependencies = [ "openssl-probe", "rustls-pemfile", @@ -5226,24 +6508,34 @@ dependencies = [ [[package]] name = "rustls-pemfile" -version = "1.0.2" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d3987094b1d07b653b7dfdc3f70ce9a1da9c51ac18c1b06b662e4f9a0e9f4b2" +dependencies = [ + "base64 0.21.2", +] + +[[package]] +name = "rustls-webpki" +version = "0.100.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d194b56d58803a43635bdc398cd17e383d6f71f9182b9a192c127ca42494a59b" +checksum = "d6207cd5ed3d8dca7816f8f3725513a34609c0c765bf652b8c3cb4cfd87db46b" dependencies = [ - "base64 0.21.0", + "ring", + "untrusted", ] [[package]] name = "rustversion" -version = "1.0.12" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f3208ce4d8448b3f3e7d168a73f5e0c43a61e32930de3bceeccedb388b6bf06" +checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4" [[package]] name = "rw-stream-sink" -version = "0.3.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26338f5e09bb721b85b135ea05af7767c90b52f6de4f087d4f4a3a9d64e7dc04" +checksum = "d8c9026ff5d2f23da5e45bbc283f156383001bfb09c4e44256d02c1a685fe9a1" dependencies = [ "futures", "pin-project", @@ -5252,15 +6544,41 @@ dependencies = [ [[package]] name = "ryu" -version = "1.0.13" +version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f91339c0467de62360649f8d3e185ca8de4224ff281f66000de5eb2a77a79041" +checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741" [[package]] -name = "sc-allocator" -version = "16.0.0" +name = "safe-mix" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d3d055a2582e6b00ed7a31c1524040aa391092bf636328350813f3a0605215c" +dependencies = [ + "rustc_version 0.2.3", +] + +[[package]] +name = "safe_arch" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f398075ce1e6a179b46f51bd88d0598b92b00d3551f1a2d4ac49e771b56ac354" +dependencies = [ + "bytemuck", +] + +[[package]] +name = "same-file" +version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9125c40a62c10913294a32a27ec94453898198c41243c31c254c8d578df1c2bc" +checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "sc-allocator" +version = "4.1.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "log", "sp-core", @@ -5270,9 +6588,8 @@ dependencies = [ [[package]] name = "sc-block-builder" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f1ab456d78be7888070f490c4bd7817961d298f2e8dc6f39fd6a17ba7b8e5a5" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "parity-scale-codec", "sc-client-api", @@ -5286,9 +6603,8 @@ dependencies = [ [[package]] name = "sc-chain-spec" -version = "20.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf07b2ff0b0a99662bd194699d8876ca9effe7b25b1f5ceaf4c980100e51448e" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "memmap2", "sc-chain-spec-derive", @@ -5306,28 +6622,26 @@ dependencies = [ [[package]] name = "sc-chain-spec-derive" -version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7185e052b4138f7023c6033926f458f2e46f215b6e02e0b5ac5863caa17b8cba" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.28", ] [[package]] name = "sc-cli" -version = "0.29.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7dd6c15e1bfc8fc499477db332d3f963171328942f4aac8ec207fcda636b9bed" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "array-bytes", "chrono", "clap", "fdlimit", "futures", - "libp2p", + "libp2p-identity", "log", "names", "parity-scale-codec", @@ -5338,7 +6652,6 @@ dependencies = [ "sc-client-db", "sc-keystore", "sc-network", - "sc-network-common", "sc-service", "sc-telemetry", "sc-tracing", @@ -5359,9 +6672,8 @@ dependencies = [ [[package]] name = "sc-client-api" -version = "21.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "659086026d731c1c503f1ca80073230cfab52afee990542e9146e8ee8fdc40d0" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "fnv", "futures", @@ -5377,18 +6689,17 @@ dependencies = [ "sp-core", "sp-database", "sp-externalities", - "sp-keystore", "sp-runtime", "sp-state-machine", + "sp-statement-store", "sp-storage", "substrate-prometheus-endpoint", ] [[package]] name = "sc-client-db" -version = "0.28.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78f2188a7355b5997448788e175a7a44b0caa12eee505f291fb593aed51966d8" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "hash-db", "kvdb", @@ -5413,14 +6724,13 @@ dependencies = [ [[package]] name = "sc-consensus" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f10906e2355075ee3bdb83a2cbca63523bb70a6222cbdfcbe08238c8bb585d1" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "async-trait", "futures", "futures-timer", - "libp2p", + "libp2p-identity", "log", "mockall", "parking_lot 0.12.1", @@ -5439,16 +6749,14 @@ dependencies = [ [[package]] name = "sc-executor" -version = "0.25.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f56163cb9950689d8be465735982cf455d559d6bae7c65f01cf79fb32cc97e0" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ - "lru", "parity-scale-codec", "parking_lot 0.12.1", "sc-executor-common", - "sc-executor-wasmi", "sc-executor-wasmtime", + "schnellru", "sp-api", "sp-core", "sp-externalities", @@ -5456,52 +6764,33 @@ dependencies = [ "sp-panic-handler", "sp-runtime-interface", "sp-trie", - "sp-version", - "sp-wasm-interface", - "tracing", - "wasmi", -] - -[[package]] -name = "sc-executor-common" -version = "0.22.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a039005564f63a1803e59888e0a0b9345d984d260bf8f8a3dfc06ab4d2d9ead1" -dependencies = [ - "sc-allocator", - "sp-maybe-compressed-blob", + "sp-version", "sp-wasm-interface", - "thiserror", - "wasm-instrument", - "wasmi", + "tracing", ] [[package]] -name = "sc-executor-wasmi" -version = "0.22.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "511a186b611402910e35676fb5d2be66f98dd148c32f9ac0b7ee9a83a403ff3c" +name = "sc-executor-common" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ - "log", "sc-allocator", - "sc-executor-common", - "sp-runtime-interface", + "sp-maybe-compressed-blob", "sp-wasm-interface", - "wasmi", + "thiserror", + "wasm-instrument 0.3.0", ] [[package]] name = "sc-executor-wasmtime" -version = "0.22.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84c03401def5d2b833406713d0adcd3403e810e6c54b5f430e83c1e581a93882" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "anyhow", "cfg-if", "libc", "log", - "once_cell", - "rustix 0.36.11", + "rustix 0.36.15", "sc-allocator", "sc-executor-common", "sp-runtime-interface", @@ -5511,9 +6800,8 @@ dependencies = [ [[package]] name = "sc-informant" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b5f3c621c7fb47d89165861545fd2f378d6a6aa77892cdee95c59913a2f5ad7" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "ansi_term", "futures", @@ -5528,12 +6816,10 @@ dependencies = [ [[package]] name = "sc-keystore" -version = "18.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "123ef8b81039742fbfaf173d4191f4ad2cfdb872ac435fa2868236c964bfac07" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "array-bytes", - "async-trait", "parking_lot 0.12.1", "serde_json", "sp-application-crypto", @@ -5544,9 +6830,8 @@ dependencies = [ [[package]] name = "sc-network" -version = "0.27.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22f5ceb7e61b1b4fe1f640ee954190b9dfc084c0f3f9475f4a44b68b89ae7b60" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "array-bytes", "async-channel", @@ -5559,50 +6844,47 @@ dependencies = [ "futures-timer", "ip_network", "libp2p", + "libp2p-kad", "linked_hash_set", "log", - "lru", "mockall", "parity-scale-codec", "parking_lot 0.12.1", + "partial_sort", "pin-project", "rand 0.8.5", - "sc-block-builder", "sc-client-api", - "sc-consensus", "sc-network-common", - "sc-peerset", "sc-utils", "serde", "serde_json", "smallvec", - "snow", "sp-arithmetic", "sp-blockchain", - "sp-consensus", "sp-core", "sp-runtime", "substrate-prometheus-endpoint", "thiserror", "unsigned-varint", + "void", + "wasm-timer", "zeroize", ] [[package]] name = "sc-network-bitswap" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4437607922226390fccfe7e947db38d7e3bf9f133725e3572ca150eb9e679fed" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ + "async-channel", "cid", "futures", - "libp2p", + "libp2p-identity", "log", "prost", "prost-build", "sc-client-api", "sc-network", - "sc-network-common", "sp-blockchain", "sp-runtime", "thiserror", @@ -5611,50 +6893,36 @@ dependencies = [ [[package]] name = "sc-network-common" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d84ad9e973f008f440c4b97e22f0d6d5225e7a09eecafd298f1cf52c448c84c5" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ - "array-bytes", "async-trait", "bitflags 1.3.2", - "bytes", "futures", - "futures-timer", - "libp2p", + "libp2p-identity", "parity-scale-codec", "prost-build", "sc-consensus", - "sc-peerset", - "sc-utils", - "serde", - "smallvec", - "sp-blockchain", "sp-consensus", "sp-consensus-grandpa", "sp-runtime", - "substrate-prometheus-endpoint", - "thiserror", - "zeroize", ] [[package]] name = "sc-network-light" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88d17e0d0bfd5fd4d47798a78a8efc8100eb53dc0244fa7e0403cb3579e698cc" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "array-bytes", + "async-channel", "futures", - "libp2p", + "libp2p-identity", "log", "parity-scale-codec", "prost", "prost-build", "sc-client-api", "sc-network", - "sc-network-common", - "sc-peerset", "sp-blockchain", "sp-core", "sp-runtime", @@ -5663,18 +6931,17 @@ dependencies = [ [[package]] name = "sc-network-sync" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6847e00d1fadf31b50caaca6ca1fdb4739481d80e103b4cb1596ae7bd1a4985d" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "array-bytes", + "async-channel", "async-trait", "fork-tree", "futures", "futures-timer", "libp2p", "log", - "lru", "mockall", "parity-scale-codec", "prost", @@ -5683,8 +6950,8 @@ dependencies = [ "sc-consensus", "sc-network", "sc-network-common", - "sc-peerset", "sc-utils", + "schnellru", "smallvec", "sp-arithmetic", "sp-blockchain", @@ -5698,76 +6965,26 @@ dependencies = [ [[package]] name = "sc-network-transactions" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec36a7534749886c7fabc17c24044966a7584b6edae4dad08de7a62239965639" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "array-bytes", "futures", "libp2p", "log", "parity-scale-codec", - "pin-project", "sc-network", "sc-network-common", - "sc-peerset", "sc-utils", "sp-consensus", "sp-runtime", "substrate-prometheus-endpoint", ] -[[package]] -name = "sc-offchain" -version = "22.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0a66b0c49c4262814579cd95b396bea6f3261daa2cbe68276046dc76fbe68b1" -dependencies = [ - "array-bytes", - "bytes", - "fnv", - "futures", - "futures-timer", - "hyper", - "hyper-rustls", - "libp2p", - "num_cpus", - "once_cell", - "parity-scale-codec", - "parking_lot 0.12.1", - "rand 0.8.5", - "sc-client-api", - "sc-network", - "sc-network-common", - "sc-peerset", - "sc-utils", - "sp-api", - "sp-core", - "sp-offchain", - "sp-runtime", - "threadpool", - "tracing", -] - -[[package]] -name = "sc-peerset" -version = "8.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc9731c05c36086cff3be45594a07d9dd951c7ac40ca0db1b6f5bd96bc591965" -dependencies = [ - "futures", - "libp2p", - "log", - "sc-utils", - "serde_json", - "wasm-timer", -] - [[package]] name = "sc-rpc" -version = "22.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b4ab32763fdc0fa24110110ceb629b4493d980525c2b3e21dd14538a7dc5e76" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "futures", "jsonrpsee", @@ -5790,15 +7007,15 @@ dependencies = [ "sp-rpc", "sp-runtime", "sp-session", + "sp-statement-store", "sp-version", "tokio", ] [[package]] name = "sc-rpc-api" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afe5794382859b074ead7a2a19f839b4e851aa6780f56687de0412e3e9e74e95" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "jsonrpsee", "parity-scale-codec", @@ -5816,9 +7033,8 @@ dependencies = [ [[package]] name = "sc-rpc-server" -version = "6.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ea79cd739532f851731af7917383bcca11f811f5e6f315e34f72873cfaebaac" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "http", "jsonrpsee", @@ -5832,9 +7048,8 @@ dependencies = [ [[package]] name = "sc-rpc-spec-v2" -version = "0.27.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf2c53f64aea277e2ec170abc74a455554f624e4e561362dc5b45b7f66564fb0" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "array-bytes", "futures", @@ -5859,9 +7074,8 @@ dependencies = [ [[package]] name = "sc-service" -version = "0.28.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6a38ad87a5158e01e0e695fb022309a5d98c2b340029512a744597b9c83ae65" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "async-trait", "directories", @@ -5888,11 +7102,9 @@ dependencies = [ "sc-network-light", "sc-network-sync", "sc-network-transactions", - "sc-offchain", "sc-rpc", "sc-rpc-server", "sc-rpc-spec-v2", - "sc-storage-monitor", "sc-sysinfo", "sc-telemetry", "sc-tracing", @@ -5926,9 +7138,8 @@ dependencies = [ [[package]] name = "sc-state-db" -version = "0.23.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c60607de5e5c7ff91a0b90147209b838bace62ccc9b0b420b60a5c52f66ccd7" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "log", "parity-scale-codec", @@ -5936,28 +7147,10 @@ dependencies = [ "sp-core", ] -[[package]] -name = "sc-storage-monitor" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2780c0052b5476dc2d17ce044ed9938599d4189f54d89731bf78622e9e82cfb0" -dependencies = [ - "clap", - "fs4", - "futures", - "log", - "sc-client-db", - "sc-utils", - "sp-core", - "thiserror", - "tokio", -] - [[package]] name = "sc-sysinfo" -version = "20.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "548e2cbc8ccfb49af6fb4483bffe14842922720569cc184ddd26e620d21eb651" +version = "6.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "futures", "libc", @@ -5975,9 +7168,8 @@ dependencies = [ [[package]] name = "sc-telemetry" -version = "8.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4871519fcc5ae2083a23a334461fd7e6d5b19e8f8d7f86dffe844de14dbb5bd9" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "chrono", "futures", @@ -5995,9 +7187,8 @@ dependencies = [ [[package]] name = "sc-tracing" -version = "21.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46b3ae6cd07244145e8367e2b2e5933f59f1600ba6e32309b59eefe0f005e82e" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "ansi_term", "atty", @@ -6005,12 +7196,10 @@ dependencies = [ "lazy_static", "libc", "log", - "once_cell", "parking_lot 0.12.1", "regex", "rustc-hash", "sc-client-api", - "sc-rpc-server", "sc-tracing-proc-macro", "serde", "sp-api", @@ -6027,28 +7216,25 @@ dependencies = [ [[package]] name = "sc-tracing-proc-macro" -version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3124ec69b179bca71cd20babf10f2198a5fc0d55f3e06a8f284e90930c76d3df" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.28", ] [[package]] name = "sc-transaction-pool" -version = "21.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6fa0d5ee5d2385a438c1bfc87ec7a5c8143abecd994df692889e33d0cdd3d8c" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "async-trait", "futures", "futures-timer", "linked-hash-map", "log", - "num-traits", "parity-scale-codec", "parking_lot 0.12.1", "sc-client-api", @@ -6067,24 +7253,24 @@ dependencies = [ [[package]] name = "sc-transaction-pool-api" -version = "21.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fb9259fbf4d6bb05314e8194b3b0484d1b85488109c75d724455c3817023c4a" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "async-trait", "futures", "log", + "parity-scale-codec", "serde", "sp-blockchain", + "sp-core", "sp-runtime", "thiserror", ] [[package]] name = "sc-utils" -version = "7.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "424e0af91552772a6c14a58be7b3d9db598cedbf2f3c4f1fc44c9e1d3139258f" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "async-channel", "futures", @@ -6096,76 +7282,11 @@ dependencies = [ "sp-arithmetic", ] -[[package]] -name = "scale-bits" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8dd7aca73785181cc41f0bbe017263e682b585ca660540ba569133901d013ecf" -dependencies = [ - "parity-scale-codec", - "scale-info", - "serde", -] - -[[package]] -name = "scale-decode" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7e5527e4b3bf079d4c0b2f253418598c380722ba37ef20fac9088081407f2b6" -dependencies = [ - "parity-scale-codec", - "primitive-types", - "scale-bits", - "scale-decode-derive", - "scale-info", - "thiserror", -] - -[[package]] -name = "scale-decode-derive" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b38741b2f78e4391b94eac6b102af0f6ea2b0f7fe65adb55d7f4004f507854db" -dependencies = [ - "darling", - "proc-macro-crate", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "scale-encode" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15546e5efbb45f0fc2291f7e202dee8623274c5d8bbfdf9c6886cc8b44a7ced3" -dependencies = [ - "parity-scale-codec", - "primitive-types", - "scale-bits", - "scale-encode-derive", - "scale-info", - "thiserror", -] - -[[package]] -name = "scale-encode-derive" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd983cf0a9effd76138554ead18a6de542d1af175ac12fd5e91836c5c0268082" -dependencies = [ - "darling", - "proc-macro-crate", - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "scale-info" -version = "2.6.0" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfdef77228a4c05dc94211441595746732131ad7f6530c6c18f045da7b7ab937" +checksum = "35c0a159d0c45c12b20c5a844feb1fe4bea86e28f17b92a5f0c42193634d3782" dependencies = [ "bitvec", "cfg-if", @@ -6177,9 +7298,9 @@ dependencies = [ [[package]] name = "scale-info-derive" -version = "2.6.0" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53012eae69e5aa5c14671942a5dd47de59d4cdcff8532a6dd0e081faf1119482" +checksum = "912e55f6d20e0e80d63733872b40e1227c0bce1e1ab81ba67d696339bfd7fd29" dependencies = [ "proc-macro-crate", "proc-macro2", @@ -6187,31 +7308,13 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "scale-value" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11f549769261561e6764218f847e500588f9a79a289de49ce92f9e26642a3574" -dependencies = [ - "either", - "frame-metadata", - "parity-scale-codec", - "scale-bits", - "scale-decode", - "scale-encode", - "scale-info", - "serde", - "thiserror", - "yap", -] - [[package]] name = "schannel" -version = "0.1.21" +version = "0.1.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "713cfb06c7059f3588fb8044c0fad1d09e3c01d225e25b9220dbfdcf16dbb1b3" +checksum = "0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88" dependencies = [ - "windows-sys 0.42.0", + "windows-sys 0.48.0", ] [[package]] @@ -6245,25 +7348,15 @@ dependencies = [ [[package]] name = "scopeguard" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" +checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" [[package]] name = "scratch" -version = "1.0.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1792db035ce95be60c3f8853017b3999209281c24e2ba5bc8e59bf97a0c590c1" - -[[package]] -name = "sct" -version = "0.6.1" +version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b362b83898e0e69f38515b82ee15aa80636befe47c3b6d3d89a911e78fc228ce" -dependencies = [ - "ring", - "untrusted", -] +checksum = "a3cf7c11c38cb994f3d40e8a8cde3bbd1f72a435e4c49e85d6553d8312306152" [[package]] name = "sct" @@ -6275,42 +7368,16 @@ dependencies = [ "untrusted", ] -[[package]] -name = "sdp" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d22a5ef407871893fd72b4562ee15e4742269b173959db4b8df6f538c414e13" -dependencies = [ - "rand 0.8.5", - "substring", - "thiserror", - "url", -] - -[[package]] -name = "sec1" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3be24c1842290c45df0a7bf069e0c268a747ad05a192f2fd7dcfdbc1cba40928" -dependencies = [ - "base16ct 0.1.1", - "der 0.6.1", - "generic-array 0.14.6", - "pkcs8 0.9.0", - "subtle", - "zeroize", -] - [[package]] name = "sec1" -version = "0.7.1" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48518a2b5775ba8ca5b46596aae011caa431e6ce7e4a67ead66d92f08884220e" +checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc" dependencies = [ - "base16ct 0.2.0", - "der 0.7.5", - "generic-array 0.14.6", - "pkcs8 0.10.2", + "base16ct", + "der", + "generic-array 0.14.7", + "pkcs8", "subtle", "zeroize", ] @@ -6344,9 +7411,9 @@ dependencies = [ [[package]] name = "security-framework" -version = "2.8.2" +version = "2.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a332be01508d814fed64bf28f798a146d73792121129962fdf335bb3c49a4254" +checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de" dependencies = [ "bitflags 1.3.2", "core-foundation", @@ -6356,52 +7423,94 @@ dependencies = [ ] [[package]] -name = "security-framework-sys" -version = "2.8.0" +name = "security-framework-sys" +version = "2.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "semver" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a3186ec9e65071a2095434b1f5bb24838d4e8e130f584c790f6033c79943537" +dependencies = [ + "semver-parser", +] + +[[package]] +name = "semver" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" +dependencies = [ + "semver-parser", +] + +[[package]] +name = "semver" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31c9bb296072e961fcbd8853511dd39c2d8be2deb1e17c6860b1d30732b323b4" +checksum = "b0293b4b29daaf487284529cc2f5675b8e57c61f70167ba415a463651fd6a918" dependencies = [ - "core-foundation-sys", - "libc", + "serde", ] [[package]] -name = "semver" -version = "1.0.17" +name = "semver-parser" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" + +[[package]] +name = "send_wrapper" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bebd363326d05ec3e2f532ab7660680f3b02130d780c299bca73469d521bc0ed" +checksum = "cd0b0ec5f1c1ca621c432a25813d8d60c88abe6d3e08a3eb9cf37d97a0fe3d73" [[package]] name = "serde" -version = "1.0.162" +version = "1.0.180" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71b2f6e1ab5c2b98c05f0f35b236b22e8df7ead6ffbf51d7808da7f8817e7ab6" +checksum = "0ea67f183f058fe88a4e3ec6e2788e003840893b91bac4559cabedd00863b3ed" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.162" +version = "1.0.180" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2a0814352fd64b58489904a44ea8d90cb1a91dcb6b4f5ebabc32c8318e93cb6" +checksum = "24e744d7782b686ab3b73267ef05697159cc0e5abbed3f47f9933165e5219036" dependencies = [ "proc-macro2", "quote", - "syn 2.0.4", + "syn 2.0.28", ] [[package]] name = "serde_json" -version = "1.0.96" +version = "1.0.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "057d394a50403bcac12672b2b18fb387ab6d289d957dab67dd201875391e52f1" +checksum = "076066c5f1078eac5b722a31827a8832fe108bed65dfa75e233c89f8206e976c" dependencies = [ "itoa", "ryu", "serde", ] +[[package]] +name = "serde_spanned" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96426c9936fd7a0124915f9185ea1d20aa9445cc9821142f0a73bc9207a2e186" +dependencies = [ + "serde", +] + [[package]] name = "sha-1" version = "0.9.8" @@ -6415,17 +7524,6 @@ dependencies = [ "opaque-debug 0.3.0", ] -[[package]] -name = "sha1" -version = "0.10.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f04293dc80c3993519f2d7f6f511707ee7094fe0c6d3406feb330cdb3540eba3" -dependencies = [ - "cfg-if", - "cpufeatures", - "digest 0.10.6", -] - [[package]] name = "sha2" version = "0.8.2" @@ -6453,22 +7551,22 @@ dependencies = [ [[package]] name = "sha2" -version = "0.10.6" +version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0" +checksum = "479fb9d862239e610720565ca91403019f2f00410f1864c5aa7479b950a76ed8" dependencies = [ "cfg-if", "cpufeatures", - "digest 0.10.6", + "digest 0.10.7", ] [[package]] name = "sha3" -version = "0.10.6" +version = "0.10.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdf0c33fae925bdc080598b84bc15c55e7b9a4a43b3c704da051f977469691c9" +checksum = "75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60" dependencies = [ - "digest 0.10.6", + "digest 0.10.7", "keccak", ] @@ -6501,10 +7599,6 @@ name = "signature" version = "1.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c" -dependencies = [ - "digest 0.10.6", - "rand_core 0.6.4", -] [[package]] name = "signature" @@ -6512,10 +7606,23 @@ version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5e1788eed21689f9cf370582dfc467ef36ed9c707f073528ddafa8d83e3b8500" dependencies = [ - "digest 0.10.6", + "digest 0.10.7", "rand_core 0.6.4", ] +[[package]] +name = "simba" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "061507c94fc6ab4ba1c9a0305018408e312e17c041eb63bef8aa726fa33aceae" +dependencies = [ + "approx", + "num-complex", + "num-traits", + "paste", + "wide", +] + [[package]] name = "siphasher" version = "0.3.10" @@ -6533,15 +7640,15 @@ dependencies = [ [[package]] name = "slice-group-by" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03b634d87b960ab1a38c4fe143b508576f075e7c978bfad18217645ebfdfa2ec" +checksum = "826167069c09b99d56f31e9ae5c99049e932a98c9dc2dac47645b08dbbf76ba7" [[package]] name = "smallvec" -version = "1.10.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0" +checksum = "62bb4feee49fdd9f707ef802e22365a35de4b7b299de4763d44bfea899442ff9" [[package]] name = "snap" @@ -6561,8 +7668,8 @@ dependencies = [ "curve25519-dalek 4.0.0-rc.1", "rand_core 0.6.4", "ring", - "rustc_version", - "sha2 0.10.6", + "rustc_version 0.4.0", + "sha2 0.10.7", "subtle", ] @@ -6576,6 +7683,16 @@ dependencies = [ "winapi", ] +[[package]] +name = "socket2" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2538b18701741680e0322a2302176d3253a35388e2e62f172f64f4f16605f877" +dependencies = [ + "libc", + "windows-sys 0.48.0", +] + [[package]] name = "soketto" version = "0.7.1" @@ -6584,7 +7701,6 @@ checksum = "41d1c5305e39e09653383c2c7244f2f78b3bcae37cf50c64cb4789c9f5096ec2" dependencies = [ "base64 0.13.1", "bytes", - "flate2", "futures", "http", "httparse", @@ -6595,15 +7711,17 @@ dependencies = [ [[package]] name = "sp-api" -version = "19.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2600bccfb4897e030d8974a17cfb1abfb3151d1f130db4ed4af1aa3ded436e1" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "hash-db", "log", "parity-scale-codec", + "scale-info", "sp-api-proc-macro", "sp-core", + "sp-externalities", + "sp-metadata-ir", "sp-runtime", "sp-state-machine", "sp-std", @@ -6614,9 +7732,8 @@ dependencies = [ [[package]] name = "sp-api-proc-macro" -version = "7.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c58a2f5386a0eb163fcb68b8057b3623cb8efa1470153aa5a9dac13907dbb95d" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "Inflector", "blake2", @@ -6624,14 +7741,13 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.28", ] [[package]] name = "sp-application-crypto" -version = "22.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8cf23435a4bbd6eeec2bbbc346719ba4f3200e0ddb5f9e9f06c1724db03a8410" +version = "23.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "parity-scale-codec", "scale-info", @@ -6643,9 +7759,8 @@ dependencies = [ [[package]] name = "sp-arithmetic" -version = "15.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c3d3507a803e8bc332fa290ed3015a7b51d4436ce2b836744642fc412040456" +version = "16.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "integer-sqrt", "num-traits", @@ -6657,12 +7772,23 @@ dependencies = [ ] [[package]] -name = "sp-block-builder" -version = "19.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66955fb0f32de956b981a1a466ff393f517c494c784fef56ce129562d737501a" +name = "sp-authority-discovery" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "parity-scale-codec", + "scale-info", + "sp-api", + "sp-application-crypto", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "sp-block-builder" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ "sp-api", "sp-inherents", "sp-runtime", @@ -6671,15 +7797,14 @@ dependencies = [ [[package]] name = "sp-blockchain" -version = "21.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f599badbd075bc6e56fd95cacb3ed09cd46693d56c303cd5a9838a294755076f" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "futures", "log", - "lru", "parity-scale-codec", "parking_lot 0.12.1", + "schnellru", "sp-api", "sp-consensus", "sp-database", @@ -6690,9 +7815,8 @@ dependencies = [ [[package]] name = "sp-consensus" -version = "0.25.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6490d6f21d72a11c8cdd6b4155aa43c5d2886de8ca2b6cfb2ca9594bbb9547c8" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "async-trait", "futures", @@ -6704,11 +7828,29 @@ dependencies = [ "thiserror", ] +[[package]] +name = "sp-consensus-babe" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "async-trait", + "parity-scale-codec", + "scale-info", + "serde", + "sp-api", + "sp-application-crypto", + "sp-consensus-slots", + "sp-core", + "sp-inherents", + "sp-runtime", + "sp-std", + "sp-timestamp", +] + [[package]] name = "sp-consensus-grandpa" -version = "6.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce1b051f922745ea4c5faedfe42e22bb40ddf36bdf73ae3afd2b101266e91ae0" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "finality-grandpa", "log", @@ -6723,17 +7865,28 @@ dependencies = [ "sp-std", ] +[[package]] +name = "sp-consensus-slots" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "parity-scale-codec", + "scale-info", + "serde", + "sp-std", + "sp-timestamp", +] + [[package]] name = "sp-core" -version = "20.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7789372146f8ad40d0b40fad0596cb1db5771187a258eabe19b06f00767fcbd6" +version = "21.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "array-bytes", "bitflags 1.3.2", "blake2", "bounded-collections", - "bs58", + "bs58 0.4.0", "dyn-clonable", "ed25519-zebra", "futures", @@ -6746,6 +7899,7 @@ dependencies = [ "merlin", "parity-scale-codec", "parking_lot 0.12.1", + "paste", "primitive-types", "rand 0.8.5", "regex", @@ -6764,41 +7918,37 @@ dependencies = [ "substrate-bip39", "thiserror", "tiny-bip39", + "tracing", "zeroize", ] [[package]] name = "sp-core-hashing" -version = "8.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27449abdfbe41b473e625bce8113745e81d65777dd1d5a8462cf24137930dad8" +version = "9.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "blake2b_simd", "byteorder", - "digest 0.10.6", - "sha2 0.10.6", + "digest 0.10.7", + "sha2 0.10.7", "sha3", - "sp-std", "twox-hash", ] [[package]] name = "sp-core-hashing-proc-macro" -version = "8.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23061dbb10975058aaca7965991386d93d0ffa1c4316094357ce65814a0a2a1e" +version = "9.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ - "proc-macro2", "quote", "sp-core-hashing", - "syn 1.0.109", + "syn 2.0.28", ] [[package]] name = "sp-database" -version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4dd6ef59a4a9e1945d5b49eb10a957b9d6b1c83af8379351baf0fa8ec12d8d64" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "kvdb", "parking_lot 0.12.1", @@ -6806,20 +7956,18 @@ dependencies = [ [[package]] name = "sp-debug-derive" -version = "7.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62211eed9ef9dac4b9d837c56ccc9f8ee4fc49d9d9b7e6b9daf098fe173389ab" +version = "8.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.28", ] [[package]] name = "sp-externalities" -version = "0.18.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ae0f275760689aaefe967943331d458cd99f5169d18364365d4cb584b246d1c" +version = "0.19.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "environmental", "parity-scale-codec", @@ -6827,17 +7975,26 @@ dependencies = [ "sp-storage", ] +[[package]] +name = "sp-genesis-builder" +version = "0.1.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "serde_json", + "sp-api", + "sp-runtime", + "sp-std", +] + [[package]] name = "sp-inherents" -version = "19.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "802044b0af966f76f0f42c23b24349c8f6f267e3ce4165244ac01bd0a49f7bb7" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "async-trait", "impl-trait-for-tuples", "parity-scale-codec", "scale-info", - "sp-core", "sp-runtime", "sp-std", "thiserror", @@ -6845,14 +8002,12 @@ dependencies = [ [[package]] name = "sp-io" -version = "22.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd3431c245992fe51b8256c838fc2e981f8d3b0afc1d1377ca7dbe0a3287a764" +version = "23.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "bytes", "ed25519", "ed25519-dalek", - "futures", "libsecp256k1", "log", "parity-scale-codec", @@ -6872,9 +8027,8 @@ dependencies = [ [[package]] name = "sp-keyring" -version = "23.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5f0fc76f89011d39243e87650e3bf747ee4b19abaaeb2702988a2e0b0a7d77c" +version = "24.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "lazy_static", "sp-core", @@ -6884,16 +8038,11 @@ dependencies = [ [[package]] name = "sp-keystore" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "452d079f592c97369c9ca8a5083b25f146751c6b5af10cbcacc2b24dc53fd72a" +version = "0.27.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ - "futures", - "merlin", "parity-scale-codec", "parking_lot 0.12.1", - "schnorrkel", - "serde", "sp-core", "sp-externalities", "thiserror", @@ -6901,19 +8050,60 @@ dependencies = [ [[package]] name = "sp-maybe-compressed-blob" -version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5df7732c6f130c3e819b142dc76bff0380133b65095567891c0a6a888c147fa3" +version = "4.1.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "thiserror", + "zstd 0.12.4", +] + +[[package]] +name = "sp-metadata-ir" +version = "0.1.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "frame-metadata", + "parity-scale-codec", + "scale-info", + "sp-std", +] + +[[package]] +name = "sp-mmr-primitives" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ + "ckb-merkle-mountain-range", + "log", + "parity-scale-codec", + "scale-info", + "serde", + "sp-api", + "sp-core", + "sp-debug-derive", + "sp-runtime", + "sp-std", "thiserror", - "zstd", +] + +[[package]] +name = "sp-npos-elections" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "parity-scale-codec", + "scale-info", + "serde", + "sp-arithmetic", + "sp-core", + "sp-runtime", + "sp-std", ] [[package]] name = "sp-offchain" -version = "19.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "296ca314e404fa39fd6b79111e42247fc73c0537ac6f9c58acc31ed3bbedc35b" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "sp-api", "sp-core", @@ -6922,9 +8112,8 @@ dependencies = [ [[package]] name = "sp-panic-handler" -version = "7.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75986cc917d897e0f6d0c848088064df4c74ccbb8f1c1848700b725f5ca7fe04" +version = "8.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "backtrace", "lazy_static", @@ -6933,9 +8122,8 @@ dependencies = [ [[package]] name = "sp-rpc" -version = "19.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82558e0876158eecd540ea3923c2fd03c07b8e5a2f228e7a6f500dbc6ff4d722" +version = "6.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "rustc-hash", "serde", @@ -6944,9 +8132,8 @@ dependencies = [ [[package]] name = "sp-runtime" -version = "23.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6220216caa67e3d931c693b06a3590dfcaa255f19bb3c3e3150f1672b8bc53f6" +version = "24.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "either", "hash256-std-hasher", @@ -6967,9 +8154,8 @@ dependencies = [ [[package]] name = "sp-runtime-interface" -version = "16.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca5d0cd80200bf85b8b064238b2508b69b6146b13adf36066ec5d924825af737" +version = "17.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "bytes", "impl-trait-for-tuples", @@ -6986,27 +8172,26 @@ dependencies = [ [[package]] name = "sp-runtime-interface-proc-macro" -version = "10.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05ae5b00aef477127ddb6177b3464ad1e2bdcc12ee913fc5dfc9d065c6cea89b" +version = "11.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "Inflector", "proc-macro-crate", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.28", ] [[package]] name = "sp-session" -version = "20.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "878c2ac2cb4e6b91d0f5184cbf1dc889b57ac193a6a57eed2f6a1cb61f8bd65e" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "parity-scale-codec", "scale-info", "sp-api", "sp-core", + "sp-keystore", "sp-runtime", "sp-staking", "sp-std", @@ -7014,12 +8199,13 @@ dependencies = [ [[package]] name = "sp-staking" -version = "19.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04b95b340fdd272af8bbec8dbc80996931a04b89d3d1edac555dcdd447f5982d" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ + "impl-trait-for-tuples", "parity-scale-codec", "scale-info", + "serde", "sp-core", "sp-runtime", "sp-std", @@ -7027,9 +8213,8 @@ dependencies = [ [[package]] name = "sp-state-machine" -version = "0.27.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1e49c3bfcc8c832c34552cd8194180cc60508c6d3d9b0b9615d6b7c3e275019" +version = "0.28.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "hash-db", "log", @@ -7044,19 +8229,42 @@ dependencies = [ "sp-trie", "thiserror", "tracing", + "trie-db", +] + +[[package]] +name = "sp-statement-store" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "aes-gcm 0.10.2", + "curve25519-dalek 3.2.0", + "ed25519-dalek", + "hkdf", + "parity-scale-codec", + "rand 0.8.5", + "scale-info", + "sha2 0.10.7", + "sp-api", + "sp-application-crypto", + "sp-core", + "sp-externalities", + "sp-runtime", + "sp-runtime-interface", + "sp-std", + "thiserror", + "x25519-dalek 2.0.0-pre.1", ] [[package]] name = "sp-std" -version = "7.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1de8eef39962b5b97478719c493bed2926cf70cb621005bbf68ebe58252ff986" +version = "8.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" [[package]] name = "sp-storage" -version = "12.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ad1f8c52d4700ac7bc42b3375679a6c6fc1fe876f4b40c6efdf36f933ef0291" +version = "13.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "impl-serde", "parity-scale-codec", @@ -7066,11 +8274,23 @@ dependencies = [ "sp-std", ] +[[package]] +name = "sp-timestamp" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +dependencies = [ + "async-trait", + "parity-scale-codec", + "sp-inherents", + "sp-runtime", + "sp-std", + "thiserror", +] + [[package]] name = "sp-tracing" -version = "9.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00fab60bf3d42255ce3f678903d3a2564662371c75623de4a1ffc7cac46143df" +version = "10.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "parity-scale-codec", "sp-std", @@ -7081,9 +8301,8 @@ dependencies = [ [[package]] name = "sp-transaction-pool" -version = "19.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59b2190446f4f709596d84d29ffb8b4e80f2bb4648eff6bafb01e7b2705d2104" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "sp-api", "sp-runtime", @@ -7091,12 +8310,10 @@ dependencies = [ [[package]] name = "sp-transaction-storage-proof" -version = "19.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f0c782565ecca4c5209bd5159d4398ae2ced9dc9fbbc7ac1ce5f97eb8762b15" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "async-trait", - "log", "parity-scale-codec", "scale-info", "sp-core", @@ -7108,9 +8325,8 @@ dependencies = [ [[package]] name = "sp-trie" -version = "21.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58401c53c08b6ecad83acd7e14534c8bbcb3fa73e81e26685e0ac70e51b00c56" +version = "22.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "ahash 0.8.3", "hash-db", @@ -7132,9 +8348,8 @@ dependencies = [ [[package]] name = "sp-version" -version = "21.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34be5b74199bdda63e9ec48dc1e9dd605af947b76fba0c738a422a6d4ae14f47" +version = "22.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "impl-serde", "parity-scale-codec", @@ -7150,36 +8365,32 @@ dependencies = [ [[package]] name = "sp-version-proc-macro" -version = "7.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a42f1acfd2bbaa92c4d97f7a0840e900a5dfa8e8d57b91c031c64f1df2112e90" +version = "8.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "parity-scale-codec", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.28", ] [[package]] name = "sp-wasm-interface" -version = "13.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "153b7374179439e2aa783c66ed439bd86920c67bbc95d34c76390561972bc02f" +version = "14.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "anyhow", "impl-trait-for-tuples", "log", "parity-scale-codec", "sp-std", - "wasmi", "wasmtime", ] [[package]] name = "sp-weights" -version = "19.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "123c661915e1bf328e21f8ecbe4e5247feba86f9149b782ea4348004547ce8ef" +version = "20.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "parity-scale-codec", "scale-info", @@ -7198,13 +8409,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" [[package]] -name = "spki" -version = "0.6.0" +name = "spin" +version = "0.9.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" + +[[package]] +name = "spinners" +version = "4.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67cf02bbac7a337dc36e4f5a693db6c21e7863f45070f7064577eb4367a3212b" +checksum = "08615eea740067d9899969bc2891c68a19c315cb1f66640af9a9ecb91b13bcab" dependencies = [ - "base64ct", - "der 0.6.1", + "lazy_static", + "maplit", + "strum", ] [[package]] @@ -7214,14 +8432,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d1e996ef02c474957d681f1b05213dfb0abab947b446a62d37770b23500184a" dependencies = [ "base64ct", - "der 0.7.5", + "der", ] [[package]] name = "ss58-registry" -version = "1.39.0" +version = "1.41.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecf0bd63593ef78eca595a7fc25e9a443ca46fe69fd472f8f09f5245cdcd769d" +checksum = "bfc443bad666016e012538782d9e3006213a7db43e9fb1dda91657dc06a6fa08" dependencies = [ "Inflector", "num-format", @@ -7300,25 +8518,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "stun" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7e94b1ec00bad60e6410e058b52f1c66de3dc5fe4d62d09b3e52bb7d3b73e25" -dependencies = [ - "base64 0.13.1", - "crc", - "lazy_static", - "md-5", - "rand 0.8.5", - "ring", - "subtle", - "thiserror", - "tokio", - "url", - "webrtc-util", -] - [[package]] name = "substrate-bip39" version = "0.4.4" @@ -7334,9 +8533,8 @@ dependencies = [ [[package]] name = "substrate-prometheus-endpoint" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98ef64b8fac4ecd85e4fcc7d6a8dfb8dccaec8b6754a8cd4c8112d6dc3afd240" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "hyper", "log", @@ -7347,9 +8545,8 @@ dependencies = [ [[package]] name = "substrate-rpc-client" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ed6049846ab53122adc5f0ae4fa0189dce8afce3a3923886335200188a1f8af" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ "async-trait", "jsonrpsee", @@ -7360,12 +8557,21 @@ dependencies = [ ] [[package]] -name = "substring" -version = "1.4.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42ee6433ecef213b2e72f587ef64a2f5943e7cd16fbd82dbe8bc07486c534c86" +name = "substrate-wasm-builder" +version = "5.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" dependencies = [ - "autocfg", + "ansi_term", + "build-helper", + "cargo_metadata", + "filetime", + "parity-wasm", + "sp-maybe-compressed-blob", + "strum", + "tempfile", + "toml 0.7.6", + "walkdir", + "wasm-opt", ] [[package]] @@ -7374,86 +8580,6 @@ version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601" -[[package]] -name = "subxt" -version = "0.28.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53b9c4ddefcb2d87eb18a6336f65635c29208f766d0deefaa2a1a19f7426a993" -dependencies = [ - "base58", - "blake2", - "derivative", - "either", - "frame-metadata", - "futures", - "getrandom 0.2.8", - "hex", - "impl-serde", - "jsonrpsee", - "parity-scale-codec", - "parking_lot 0.12.1", - "primitive-types", - "scale-bits", - "scale-decode", - "scale-encode", - "scale-info", - "scale-value", - "serde", - "serde_json", - "sp-core", - "sp-core-hashing", - "sp-runtime", - "subxt-macro", - "subxt-metadata", - "thiserror", - "tracing", -] - -[[package]] -name = "subxt-codegen" -version = "0.28.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e924f41069e9273236398ff89662d6d336468a5d94faac812129d44547db0e7f" -dependencies = [ - "darling", - "frame-metadata", - "heck", - "hex", - "jsonrpsee", - "parity-scale-codec", - "proc-macro2", - "quote", - "scale-info", - "subxt-metadata", - "syn 1.0.109", - "thiserror", - "tokio", -] - -[[package]] -name = "subxt-macro" -version = "0.28.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ced0b043a069ee039f8700d3dfda01be156e4229c82277c305bc8e79a7dd855d" -dependencies = [ - "darling", - "proc-macro-error", - "subxt-codegen", - "syn 1.0.109", -] - -[[package]] -name = "subxt-metadata" -version = "0.28.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18be3b8f4308fe7369ee1df66ae59c2eca79de20eab57b0f41c75736e843300f" -dependencies = [ - "frame-metadata", - "parity-scale-codec", - "scale-info", - "sp-core-hashing", -] - [[package]] name = "syn" version = "1.0.109" @@ -7467,9 +8593,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.4" +version = "2.0.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c622ae390c9302e214c31013517c2061ecb2699935882c60a9b37f82f8625ae" +checksum = "04361975b3f5e348b2189d8dc55bc942f278b2d482a6a0365de5bdd62d351567" dependencies = [ "proc-macro2", "quote", @@ -7490,9 +8616,9 @@ dependencies = [ [[package]] name = "system-configuration" -version = "0.5.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d75182f12f490e953596550b65ee31bda7c8e043d9386174b353bda50838c3fd" +checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" dependencies = [ "bitflags 1.3.2", "core-foundation", @@ -7517,21 +8643,21 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] name = "target-lexicon" -version = "0.12.6" +version = "0.12.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ae9980cab1db3fceee2f6c6f643d5d8de2997c58ee8d25fb0cc8a9e9e7348e5" +checksum = "9d0e916b1148c8e263850e1ebcbd046f333e0683c724876bb0da63ea4373dc8a" [[package]] name = "tempfile" -version = "3.4.0" +version = "3.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af18f7ae1acd354b992402e9ec5864359d693cd8a79dcbef59f76891701c1e95" +checksum = "5486094ee78b2e5038a6382ed7645bc084dc2ec433426ca4c3cb61e2007b8998" dependencies = [ "cfg-if", - "fastrand", - "redox_syscall", - "rustix 0.36.11", - "windows-sys 0.42.0", + "fastrand 2.0.0", + "redox_syscall 0.3.5", + "rustix 0.38.6", + "windows-sys 0.48.0", ] [[package]] @@ -7551,22 +8677,22 @@ checksum = "3369f5ac52d5eb6ab48c6b4ffdc8efbcad6b89c765749064ba298f2c68a16a76" [[package]] name = "thiserror" -version = "1.0.40" +version = "1.0.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "978c9a314bd8dc99be594bc3c175faaa9794be04a5a5e153caba6915336cebac" +checksum = "611040a08a0439f8248d1990b111c95baa9c704c805fa1f62104b39655fd7f90" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.40" +version = "1.0.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f" +checksum = "090198534930841fab3a5d1bb637cde49e339654e606195f8d9c76eeb081dc96" dependencies = [ "proc-macro2", "quote", - "syn 2.0.4", + "syn 2.0.28", ] [[package]] @@ -7579,20 +8705,11 @@ 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 = "tikv-jemalloc-sys" -version = "0.5.3+5.3.0-patched" +version = "0.5.4+5.3.0-patched" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a678df20055b43e57ef8cddde41cdfda9a3c1a060b67f4c5836dfb1d78543ba8" +checksum = "9402443cb8fd499b6f327e40565234ff34dbda27460c5b47db0db77443dd85d1" dependencies = [ "cc", "libc", @@ -7609,33 +8726,6 @@ dependencies = [ "winapi", ] -[[package]] -name = "time" -version = "0.3.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd0cbfecb4d19b5ea75bb31ad904eb5b9fa13f21079c3b92017ebdf4999a5890" -dependencies = [ - "itoa", - "serde", - "time-core", - "time-macros", -] - -[[package]] -name = "time-core" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e153e1f1acaef8acc537e68b44906d2db6436e2b35ac2c6b42640fff91f00fd" - -[[package]] -name = "time-macros" -version = "0.2.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd80a657e71da814b8e5d60d3374fc6d35045062245d80224748ae522dd76f36" -dependencies = [ - "time-core", -] - [[package]] name = "tiny-bip39" version = "1.0.0" @@ -7648,7 +8738,7 @@ dependencies = [ "pbkdf2 0.11.0", "rand 0.8.5", "rustc-hash", - "sha2 0.10.6", + "sha2 0.10.7", "thiserror", "unicode-normalization", "wasm-bindgen", @@ -7656,13 +8746,12 @@ dependencies = [ ] [[package]] -name = "tinytemplate" -version = "1.2.1" +name = "tiny-keccak" +version = "2.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc" +checksum = "2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237" dependencies = [ - "serde", - "serde_json", + "crunchy", ] [[package]] @@ -7682,19 +8771,20 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.28.0" +version = "1.29.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3c786bf8134e5a3a166db9b29ab8f48134739014a3eca7bc6bfa95d673b136f" +checksum = "532826ff75199d5833b9d2c5fe410f29235e25704ee5f0ef599fb51c21f4a4da" dependencies = [ "autocfg", + "backtrace", "bytes", "libc", "mio", "num_cpus", "parking_lot 0.12.1", - "pin-project-lite 0.2.9", + "pin-project-lite 0.2.10", "signal-hook-registry", - "socket2", + "socket2 0.4.9", "tokio-macros", "windows-sys 0.48.0", ] @@ -7707,7 +8797,18 @@ checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.4", + "syn 2.0.28", +] + +[[package]] +name = "tokio-retry" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f57eb36ecbe0fc510036adff84824dd3c24bb781e21bfa67b69d556aa85214f" +dependencies = [ + "pin-project", + "rand 0.8.5", + "tokio", ] [[package]] @@ -7716,34 +8817,34 @@ version = "0.23.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c43ee83903113e03984cb9e5cebe6c04a5116269e900e3ddba8f068a62adda59" dependencies = [ - "rustls 0.20.8", + "rustls", "tokio", - "webpki 0.22.0", + "webpki", ] [[package]] name = "tokio-stream" -version = "0.1.12" +version = "0.1.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fb52b74f05dbf495a8fba459fdc331812b96aa086d9eb78101fa0d4569c3313" +checksum = "397c988d37662c7dda6d2208364a706264bf3d6138b11d436cbac0ad38832842" dependencies = [ "futures-core", - "pin-project-lite 0.2.9", + "pin-project-lite 0.2.10", "tokio", "tokio-util", ] [[package]] name = "tokio-util" -version = "0.7.7" +version = "0.7.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5427d89453009325de0d8f342c9490009f76e999cb7672d77e46267448f7e6b2" +checksum = "806fe8c2c87eccc8b3267cbae29ed3ab2d0bd37fca70ab622e46aaa9375ddb7d" dependencies = [ "bytes", "futures-core", "futures-io", "futures-sink", - "pin-project-lite 0.2.9", + "pin-project-lite 0.2.10", "tokio", "tracing", ] @@ -7757,6 +8858,40 @@ dependencies = [ "serde", ] +[[package]] +name = "toml" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c17e963a819c331dcacd7ab957d80bc2b9a9c1e71c804826d2f283dd65306542" +dependencies = [ + "serde", + "serde_spanned", + "toml_datetime", + "toml_edit", +] + +[[package]] +name = "toml_datetime" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7cda73e2f1397b1262d6dfdcef8aafae14d1de7748d66822d3bfeeb6d03e5e4b" +dependencies = [ + "serde", +] + +[[package]] +name = "toml_edit" +version = "0.19.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8123f27e969974a3dfba720fdb560be359f57b44302d280ba72e76a74480e8a" +dependencies = [ + "indexmap 2.0.0", + "serde", + "serde_spanned", + "toml_datetime", + "winnow", +] + [[package]] name = "tower" version = "0.4.13" @@ -7770,18 +8905,18 @@ dependencies = [ [[package]] name = "tower-http" -version = "0.3.5" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f873044bf02dd1e8239e9c1293ea39dad76dc594ec16185d0a1bf31d8dc8d858" +checksum = "55ae70283aba8d2a8b411c695c437fe25b8b5e44e23e780662002fc72fb47a82" dependencies = [ - "bitflags 1.3.2", + "bitflags 2.3.3", "bytes", "futures-core", "futures-util", "http", "http-body", "http-range-header", - "pin-project-lite 0.2.9", + "pin-project-lite 0.2.10", "tower-layer", "tower-service", ] @@ -7806,27 +8941,27 @@ checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8" dependencies = [ "cfg-if", "log", - "pin-project-lite 0.2.9", + "pin-project-lite 0.2.10", "tracing-attributes", "tracing-core", ] [[package]] name = "tracing-attributes" -version = "0.1.23" +version = "0.1.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4017f8f45139870ca7e672686113917c71c7a6e02d4924eda67186083c03081a" +checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.28", ] [[package]] name = "tracing-core" -version = "0.1.30" +version = "0.1.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24eb03ba0eab1fd845050058ce5e616558e8f8d8fca633e6b163fe25c797213a" +checksum = "0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a" dependencies = [ "once_cell", "valuable", @@ -7926,7 +9061,7 @@ dependencies = [ "lazy_static", "rand 0.8.5", "smallvec", - "socket2", + "socket2 0.4.9", "thiserror", "tinyvec", "tokio", @@ -7966,11 +9101,12 @@ version = "0.1.0" dependencies = [ "clap", "env_logger", + "node-executor", + "node-primitives", "parity-scale-codec", "sc-executor", "sp-io", "sp-runtime", - "subxt", "tokio", "try-runtime-core", ] @@ -8000,7 +9136,7 @@ dependencies = [ "sp-state-machine", "sp-weights", "substrate-rpc-client", - "zstd", + "zstd 0.11.2+zstd.1.5.2", ] [[package]] @@ -8009,25 +9145,6 @@ version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f4f195fd851901624eee5a58c4bb2b4f06399148fcd0ed336e6f1cb60a9881df" -[[package]] -name = "turn" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4712ee30d123ec7ae26d1e1b218395a16c87cdbaf4b3925d170d684af62ea5e8" -dependencies = [ - "async-trait", - "base64 0.13.1", - "futures", - "log", - "md-5", - "rand 0.8.5", - "ring", - "stun", - "thiserror", - "tokio", - "webrtc-util", -] - [[package]] name = "twox-hash" version = "1.6.3" @@ -8035,7 +9152,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675" dependencies = [ "cfg-if", - "digest 0.10.6", + "digest 0.10.7", "rand 0.8.5", "static_assertions", ] @@ -8066,9 +9183,9 @@ checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460" [[package]] name = "unicode-ident" -version = "1.0.8" +version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5464a87b239f13a63a501f2701565754bae92d243d4bb7eb12f6d57d2269bf4" +checksum = "301abaae475aa91687eb82514b328ab47a211a533026cb25fc3e519b86adfc3c" [[package]] name = "unicode-normalization" @@ -8097,15 +9214,15 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9f214e8f697e925001e66ec2c6e37a4ef93f0f78c2eed7814394e10c62025b05" dependencies = [ - "generic-array 0.14.6", + "generic-array 0.14.7", "subtle", ] [[package]] name = "universal-hash" -version = "0.5.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d3160b73c9a19f7e2939a2fdad446c57c1bbbbf4d919d3213ff1267a580d8b5" +checksum = "fc1de2c688dc15305988b563c3854064043356019f97a4b46276fe734c4f07ea" dependencies = [ "crypto-common", "subtle", @@ -8131,23 +9248,20 @@ checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" [[package]] name = "url" -version = "2.3.1" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d68c799ae75762b8c3fe375feb6600ef5602c883c5d21eb51c09f22b83c4643" +checksum = "50bff7831e19200a85b17131d085c25d7811bc4e186efdaf54bbd132994a88cb" dependencies = [ "form_urlencoded", - "idna 0.3.0", + "idna 0.4.0", "percent-encoding", ] [[package]] -name = "uuid" -version = "1.3.0" +name = "utf8parse" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1674845326ee10d37ca60470760d4288a6f80f304007d92e5c53bab78c9cfd79" -dependencies = [ - "getrandom 0.2.8", -] +checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" [[package]] name = "valuable" @@ -8173,28 +9287,28 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" -[[package]] -name = "waitgroup" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1f50000a783467e6c0200f9d10642f4bc424e39efc1b770203e88b488f79292" -dependencies = [ - "atomic-waker", -] - [[package]] name = "waker-fn" version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d5b2c62b4012a3e1eca5a7e077d13b3bf498c4073e33ccd58626607748ceeca" +[[package]] +name = "walkdir" +version = "2.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "36df944cda56c7d8d8b7496af378e6b16de9284591917d307c9b4d313c44e698" +dependencies = [ + "same-file", + "winapi-util", +] + [[package]] name = "want" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ce8a968cb1cd110d136ff8b819a556d6fb6d919363c61534f6860c7eb172ba0" +checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" dependencies = [ - "log", "try-lock", ] @@ -8218,9 +9332,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.84" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31f8dcbc21f30d9b8f2ea926ecb58f6b91192c17e9d33594b3df58b2007ca53b" +checksum = "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342" dependencies = [ "cfg-if", "wasm-bindgen-macro", @@ -8228,24 +9342,24 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.84" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95ce90fd5bcc06af55a641a86428ee4229e44e07033963a2290a8e241607ccb9" +checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd" dependencies = [ "bumpalo", "log", "once_cell", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.28", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.34" +version = "0.4.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f219e0d211ba40266969f6dbdd90636da12f75bee4fc9d6c23d1260dadb51454" +checksum = "c02dbc21516f9f1f04f187958890d7e6026df8d16540b7ad9492bc34a67cea03" dependencies = [ "cfg-if", "js-sys", @@ -8255,9 +9369,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.84" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c21f77c0bedc37fd5dc21f897894a5ca01e7bb159884559461862ae90c0b4c5" +checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -8265,22 +9379,22 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.84" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2aff81306fcac3c7515ad4e177f521b5c9a15f2b08f4e32d823066102f35a5f6" +checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.28", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.84" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0046fef7e28c3804e5e38bfa31ea2a0f73905319b677e57ebe37e49358989b5d" +checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1" [[package]] name = "wasm-instrument" @@ -8291,6 +9405,55 @@ dependencies = [ "parity-wasm", ] +[[package]] +name = "wasm-instrument" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2a47ecb37b9734d1085eaa5ae1a81e60801fd8c28d4cabdd8aedb982021918bc" +dependencies = [ + "parity-wasm", +] + +[[package]] +name = "wasm-opt" +version = "0.112.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87fef6d0d508f08334e0ab0e6877feb4c0ecb3956bcf2cb950699b22fedf3e9c" +dependencies = [ + "anyhow", + "libc", + "strum", + "strum_macros", + "tempfile", + "thiserror", + "wasm-opt-cxx-sys", + "wasm-opt-sys", +] + +[[package]] +name = "wasm-opt-cxx-sys" +version = "0.112.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc816bbc1596c8f2e8127e137a760c798023ef3d378f2ae51f0f1840e2dfa445" +dependencies = [ + "anyhow", + "cxx", + "cxx-build", + "wasm-opt-sys", +] + +[[package]] +name = "wasm-opt-sys" +version = "0.112.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "40199e4f68ef1071b3c6d0bd8026a12b481865d4b9e49c156932ea9a6234dd14" +dependencies = [ + "anyhow", + "cc", + "cxx", + "cxx-build", +] + [[package]] name = "wasm-timer" version = "0.2.5" @@ -8308,61 +9471,68 @@ dependencies = [ [[package]] name = "wasmi" -version = "0.13.2" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06c326c93fbf86419608361a2c925a31754cf109da1b8b55737070b4d6669422" +checksum = "e51fb5c61993e71158abf5bb863df2674ca3ec39ed6471c64f07aeaf751d67b4" dependencies = [ - "parity-wasm", - "wasmi-validation", + "intx", + "smallvec", + "spin 0.9.8", + "wasmi_arena", "wasmi_core", + "wasmparser-nostd", ] [[package]] -name = "wasmi-validation" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91ff416ad1ff0c42e5a926ed5d5fab74c0f098749aa0ad8b2a34b982ce0e867b" -dependencies = [ - "parity-wasm", -] - -[[package]] +name = "wasmi_arena" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "401c1f35e413fac1846d4843745589d9ec678977ab35a384db8ae7830525d468" + +[[package]] name = "wasmi_core" -version = "0.2.1" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57d20cb3c59b788653d99541c646c561c9dd26506f25c0cebfe810659c54c6d7" +checksum = "624e6333e861ef49095d2d678b76ebf30b06bf37effca845be7e5b87c90071b7" dependencies = [ "downcast-rs", - "libm 0.2.6", - "memory_units", - "num-rational", + "libm 0.2.7", "num-traits", - "region", + "paste", ] [[package]] name = "wasmparser" -version = "0.100.0" +version = "0.102.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64b20236ab624147dfbb62cf12a19aaf66af0e41b8398838b66e997d07d269d4" +checksum = "48134de3d7598219ab9eaf6b91b15d8e50d31da76b8519fe4ecfcec2cf35104b" dependencies = [ - "indexmap", + "indexmap 1.9.3", "url", ] +[[package]] +name = "wasmparser-nostd" +version = "0.100.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9157cab83003221bfd385833ab587a039f5d6fa7304854042ba358a3b09e0724" +dependencies = [ + "indexmap-nostd", +] + [[package]] name = "wasmtime" -version = "6.0.1" +version = "8.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6e89f9819523447330ffd70367ef4a18d8c832e24e8150fe054d1d912841632" +checksum = "f907fdead3153cb9bfb7a93bbd5b62629472dc06dee83605358c64c52ed3dda9" dependencies = [ "anyhow", "bincode", "cfg-if", - "indexmap", + "indexmap 1.9.3", "libc", "log", - "object 0.29.0", + "object 0.30.4", "once_cell", "paste", "psm", @@ -8375,43 +9545,43 @@ dependencies = [ "wasmtime-environ", "wasmtime-jit", "wasmtime-runtime", - "windows-sys 0.42.0", + "windows-sys 0.45.0", ] [[package]] name = "wasmtime-asm-macros" -version = "6.0.1" +version = "8.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9bd3a5e46c198032da934469f3a6e48649d1f9142438e4fd4617b68a35644b8a" +checksum = "d3b9daa7c14cd4fa3edbf69de994408d5f4b7b0959ac13fa69d465f6597f810d" dependencies = [ "cfg-if", ] [[package]] name = "wasmtime-cache" -version = "6.0.1" +version = "8.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b389ae9b678b9c3851091a4804f4182d688d27aff7abc9aa37fa7be37d8ecffa" +checksum = "c86437fa68626fe896e5afc69234bb2b5894949083586535f200385adfd71213" dependencies = [ "anyhow", - "base64 0.13.1", + "base64 0.21.2", "bincode", "directories-next", "file-per-thread-logger", "log", - "rustix 0.36.11", + "rustix 0.36.15", "serde", - "sha2 0.10.6", - "toml", - "windows-sys 0.42.0", - "zstd", + "sha2 0.10.7", + "toml 0.5.11", + "windows-sys 0.45.0", + "zstd 0.11.2+zstd.1.5.2", ] [[package]] name = "wasmtime-cranelift" -version = "6.0.1" +version = "8.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59b2c92a08c0db6efffd88fdc97d7aa9c7c63b03edb0971dbca745469f820e8c" +checksum = "b1cefde0cce8cb700b1b21b6298a3837dba46521affd7b8c38a9ee2c869eee04" dependencies = [ "anyhow", "cranelift-codegen", @@ -8419,27 +9589,43 @@ dependencies = [ "cranelift-frontend", "cranelift-native", "cranelift-wasm", - "gimli 0.26.2", + "gimli", "log", - "object 0.29.0", + "object 0.30.4", "target-lexicon", "thiserror", "wasmparser", + "wasmtime-cranelift-shared", + "wasmtime-environ", +] + +[[package]] +name = "wasmtime-cranelift-shared" +version = "8.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd041e382ef5aea1b9fc78442394f1a4f6d676ce457e7076ca4cb3f397882f8b" +dependencies = [ + "anyhow", + "cranelift-codegen", + "cranelift-native", + "gimli", + "object 0.30.4", + "target-lexicon", "wasmtime-environ", ] [[package]] name = "wasmtime-environ" -version = "6.0.1" +version = "8.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a6db9fc52985ba06ca601f2ff0ff1f526c5d724c7ac267b47326304b0c97883" +checksum = "a990198cee4197423045235bf89d3359e69bd2ea031005f4c2d901125955c949" dependencies = [ "anyhow", "cranelift-entity", - "gimli 0.26.2", - "indexmap", + "gimli", + "indexmap 1.9.3", "log", - "object 0.29.0", + "object 0.30.4", "serde", "target-lexicon", "thiserror", @@ -8449,18 +9635,18 @@ dependencies = [ [[package]] name = "wasmtime-jit" -version = "6.0.1" +version = "8.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b77e3a52cd84d0f7f18554afa8060cfe564ccac61e3b0802d3fd4084772fa5f6" +checksum = "0de48df552cfca1c9b750002d3e07b45772dd033b0b206d5c0968496abf31244" dependencies = [ - "addr2line 0.17.0", + "addr2line 0.19.0", "anyhow", "bincode", "cfg-if", "cpp_demangle", - "gimli 0.26.2", + "gimli", "log", - "object 0.29.0", + "object 0.30.4", "rustc-demangle", "serde", "target-lexicon", @@ -8468,60 +9654,60 @@ dependencies = [ "wasmtime-jit-debug", "wasmtime-jit-icache-coherence", "wasmtime-runtime", - "windows-sys 0.42.0", + "windows-sys 0.45.0", ] [[package]] name = "wasmtime-jit-debug" -version = "6.0.1" +version = "8.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0245e8a9347017c7185a72e215218a802ff561545c242953c11ba00fccc930f" +checksum = "6e0554b84c15a27d76281d06838aed94e13a77d7bf604bbbaf548aa20eb93846" dependencies = [ - "object 0.29.0", + "object 0.30.4", "once_cell", - "rustix 0.36.11", + "rustix 0.36.15", ] [[package]] name = "wasmtime-jit-icache-coherence" -version = "6.0.1" +version = "8.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67d412e9340ab1c83867051d8d1d7c90aa8c9afc91da086088068e2734e25064" +checksum = "aecae978b13f7f67efb23bd827373ace4578f2137ec110bbf6a4a7cde4121bbd" dependencies = [ "cfg-if", "libc", - "windows-sys 0.42.0", + "windows-sys 0.45.0", ] [[package]] name = "wasmtime-runtime" -version = "6.0.1" +version = "8.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d594e791b5fdd4dbaf8cf7ae62f2e4ff85018ce90f483ca6f42947688e48827d" +checksum = "658cf6f325232b6760e202e5255d823da5e348fdea827eff0a2a22319000b441" dependencies = [ "anyhow", "cc", "cfg-if", - "indexmap", + "indexmap 1.9.3", "libc", "log", "mach", "memfd", - "memoffset 0.6.5", + "memoffset 0.8.0", "paste", "rand 0.8.5", - "rustix 0.36.11", + "rustix 0.36.15", "wasmtime-asm-macros", "wasmtime-environ", "wasmtime-jit-debug", - "windows-sys 0.42.0", + "windows-sys 0.45.0", ] [[package]] name = "wasmtime-types" -version = "6.0.1" +version = "8.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6688d6f96d4dbc1f89fab626c56c1778936d122b5f4ae7a57c2eb42b8d982e2" +checksum = "a4f6fffd2a1011887d57f07654dd112791e872e3ff4a2e626aee8059ee17f06f" dependencies = [ "cranelift-entity", "serde", @@ -8531,24 +9717,14 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.61" +version = "0.3.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e33b99f4b23ba3eec1a53ac264e35a755f00e966e0065077d6027c0f575b0b97" +checksum = "9b85cbef8c220a6abc02aefd892dfc0fc23afb1c6a426316ec33253a3877249b" dependencies = [ "js-sys", "wasm-bindgen", ] -[[package]] -name = "webpki" -version = "0.21.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8e38c0608262c46d4a56202ebabdeb094cef7e560ca7a226c6bf055188aa4ea" -dependencies = [ - "ring", - "untrusted", -] - [[package]] name = "webpki" version = "0.22.0" @@ -8565,219 +9741,16 @@ version = "0.22.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b6c71e40d7d2c34a5106301fb632274ca37242cd0c9d3e64dbece371a40a2d87" dependencies = [ - "webpki 0.22.0", -] - -[[package]] -name = "webrtc" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d3bc9049bdb2cea52f5fd4f6f728184225bdb867ed0dc2410eab6df5bdd67bb" -dependencies = [ - "arc-swap", - "async-trait", - "bytes", - "hex", - "interceptor", - "lazy_static", - "log", - "rand 0.8.5", - "rcgen 0.9.3", - "regex", - "ring", - "rtcp", - "rtp", - "rustls 0.19.1", - "sdp", - "serde", - "serde_json", - "sha2 0.10.6", - "stun", - "thiserror", - "time 0.3.20", - "tokio", - "turn", - "url", - "waitgroup", - "webrtc-data", - "webrtc-dtls", - "webrtc-ice", - "webrtc-mdns", - "webrtc-media", - "webrtc-sctp", - "webrtc-srtp", - "webrtc-util", -] - -[[package]] -name = "webrtc-data" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ef36a4d12baa6e842582fe9ec16a57184ba35e1a09308307b67d43ec8883100" -dependencies = [ - "bytes", - "derive_builder", - "log", - "thiserror", - "tokio", - "webrtc-sctp", - "webrtc-util", -] - -[[package]] -name = "webrtc-dtls" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "942be5bd85f072c3128396f6e5a9bfb93ca8c1939ded735d177b7bcba9a13d05" -dependencies = [ - "aes 0.6.0", - "aes-gcm 0.10.1", - "async-trait", - "bincode", - "block-modes", - "byteorder", - "ccm", - "curve25519-dalek 3.2.0", - "der-parser 8.2.0", - "elliptic-curve 0.12.3", - "hkdf", - "hmac 0.12.1", - "log", - "oid-registry 0.6.1", - "p256", - "p384", - "rand 0.8.5", - "rand_core 0.6.4", - "rcgen 0.9.3", - "ring", - "rustls 0.19.1", - "sec1 0.3.0", - "serde", - "sha1", - "sha2 0.10.6", - "signature 1.6.4", - "subtle", - "thiserror", - "tokio", - "webpki 0.21.4", - "webrtc-util", - "x25519-dalek 2.0.0-pre.1", - "x509-parser 0.13.2", -] - -[[package]] -name = "webrtc-ice" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "465a03cc11e9a7d7b4f9f99870558fe37a102b65b93f8045392fef7c67b39e80" -dependencies = [ - "arc-swap", - "async-trait", - "crc", - "log", - "rand 0.8.5", - "serde", - "serde_json", - "stun", - "thiserror", - "tokio", - "turn", - "url", - "uuid", - "waitgroup", - "webrtc-mdns", - "webrtc-util", -] - -[[package]] -name = "webrtc-mdns" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f08dfd7a6e3987e255c4dbe710dde5d94d0f0574f8a21afa95d171376c143106" -dependencies = [ - "log", - "socket2", - "thiserror", - "tokio", - "webrtc-util", -] - -[[package]] -name = "webrtc-media" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee2a3c157a040324e5049bcbd644ffc9079e6738fa2cfab2bcff64e5cc4c00d7" -dependencies = [ - "byteorder", - "bytes", - "derive_builder", - "displaydoc", - "rand 0.8.5", - "rtp", - "thiserror", - "webrtc-util", -] - -[[package]] -name = "webrtc-sctp" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d47adcd9427eb3ede33d5a7f3424038f63c965491beafcc20bc650a2f6679c0" -dependencies = [ - "arc-swap", - "async-trait", - "bytes", - "crc", - "log", - "rand 0.8.5", - "thiserror", - "tokio", - "webrtc-util", -] - -[[package]] -name = "webrtc-srtp" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6183edc4c1c6c0175f8812eefdce84dfa0aea9c3ece71c2bf6ddd3c964de3da5" -dependencies = [ - "aead 0.4.3", - "aes 0.7.5", - "aes-gcm 0.9.4", - "async-trait", - "byteorder", - "bytes", - "ctr 0.8.0", - "hmac 0.11.0", - "log", - "rtcp", - "rtp", - "sha-1", - "subtle", - "thiserror", - "tokio", - "webrtc-util", + "webpki", ] [[package]] -name = "webrtc-util" -version = "0.7.0" +name = "webpki-roots" +version = "0.23.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93f1db1727772c05cf7a2cfece52c3aca8045ca1e176cd517d323489aa3c6d87" +checksum = "b03058f88386e5ff5310d9111d53f48b17d732b401aeb83a8d5190f2ac459338" dependencies = [ - "async-trait", - "bitflags 1.3.2", - "bytes", - "cc", - "ipnet", - "lazy_static", - "libc", - "log", - "nix", - "rand 0.8.5", - "thiserror", - "tokio", - "winapi", + "rustls-webpki", ] [[package]] @@ -8791,11 +9764,21 @@ dependencies = [ "once_cell", ] +[[package]] +name = "wide" +version = "0.7.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa469ffa65ef7e0ba0f164183697b89b854253fd31aeb92358b7b6155177d62f" +dependencies = [ + "bytemuck", + "safe_arch", +] + [[package]] name = "widestring" -version = "0.5.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17882f045410753661207383517a6f62ec3dbeb6a4ed2acce01f0728238d1983" +checksum = "653f141f39ec16bba3c5abe400a0c60da7468261cc2cbf36805022876bc721a8" [[package]] name = "winapi" @@ -8843,26 +9826,11 @@ dependencies = [ [[package]] name = "windows" -version = "0.46.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdacb41e6a96a052c6cb63a144f24900236121c6f63f4f8219fef5977ecb0c25" -dependencies = [ - "windows-targets 0.42.2", -] - -[[package]] -name = "windows-sys" -version = "0.42.0" +version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" +checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f" dependencies = [ - "windows_aarch64_gnullvm 0.42.2", - "windows_aarch64_msvc 0.42.2", - "windows_i686_gnu 0.42.2", - "windows_i686_msvc 0.42.2", - "windows_x86_64_gnu 0.42.2", - "windows_x86_64_gnullvm 0.42.2", - "windows_x86_64_msvc 0.42.2", + "windows-targets 0.48.1", ] [[package]] @@ -8880,7 +9848,7 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" dependencies = [ - "windows-targets 0.48.0", + "windows-targets 0.48.1", ] [[package]] @@ -8900,9 +9868,9 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.48.0" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5" +checksum = "05d4b17490f70499f20b9e791dcf6a299785ce8af4d709018206dc5b4953e95f" dependencies = [ "windows_aarch64_gnullvm 0.48.0", "windows_aarch64_msvc 0.48.0", @@ -9027,13 +9995,23 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a" +[[package]] +name = "winnow" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f46aab759304e4d7b2075a9aecba26228bb073ee8c50db796b2c72c676b5d807" +dependencies = [ + "memchr", +] + [[package]] name = "winreg" -version = "0.10.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80d0f4e272c85def139476380b12f9ac60926689dd2e01d4923222f40580869d" +checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" dependencies = [ - "winapi", + "cfg-if", + "windows-sys 0.48.0", ] [[package]] @@ -9067,43 +10045,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "x509-parser" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fb9bace5b5589ffead1afb76e43e34cff39cd0f3ce7e170ae0c29e53b88eb1c" -dependencies = [ - "asn1-rs 0.3.1", - "base64 0.13.1", - "data-encoding", - "der-parser 7.0.0", - "lazy_static", - "nom", - "oid-registry 0.4.0", - "ring", - "rusticata-macros", - "thiserror", - "time 0.3.20", -] - -[[package]] -name = "x509-parser" -version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0ecbeb7b67ce215e40e3cc7f2ff902f94a223acf44995934763467e7b1febc8" -dependencies = [ - "asn1-rs 0.5.2", - "base64 0.13.1", - "data-encoding", - "der-parser 8.2.0", - "lazy_static", - "nom", - "oid-registry 0.6.1", - "rusticata-macros", - "thiserror", - "time 0.3.20", -] - [[package]] name = "yamux" version = "0.10.2" @@ -9118,40 +10059,24 @@ dependencies = [ "static_assertions", ] -[[package]] -name = "yap" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2a7eb6d82a11e4d0b8e6bda8347169aff4ccd8235d039bba7c47482d977dcf7" - -[[package]] -name = "yasna" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aed2e7a52e3744ab4d0c05c20aa065258e84c49fd4226f5191b2ed29712710b4" -dependencies = [ - "time 0.3.20", -] - [[package]] name = "zeroize" -version = "1.5.7" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c394b5bd0c6f669e7275d9c20aa90ae064cb22e75a1cad54e1b34088034b149f" +checksum = "2a0956f1ba7c7909bfb66c2e9e4124ab6f6482560f6628b5aaeba39207c9aad9" dependencies = [ "zeroize_derive", ] [[package]] name = "zeroize_derive" -version = "1.3.3" +version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44bf07cb3e50ea2003396695d58bf46bc9887a1f362260446fad6bc4e79bd36c" +checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", - "synstructure", + "syn 2.0.28", ] [[package]] @@ -9160,7 +10085,16 @@ version = "0.11.2+zstd.1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "20cc960326ece64f010d2d2107537f26dc589a6573a316bd5b1dba685fa5fde4" dependencies = [ - "zstd-safe", + "zstd-safe 5.0.2+zstd.1.5.2", +] + +[[package]] +name = "zstd" +version = "0.12.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a27595e173641171fc74a1232b7b1c7a7cb6e18222c11e9dfb9888fa424c53c" +dependencies = [ + "zstd-safe 6.0.6", ] [[package]] @@ -9173,11 +10107,21 @@ dependencies = [ "zstd-sys", ] +[[package]] +name = "zstd-safe" +version = "6.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee98ffd0b48ee95e6c5168188e44a54550b1564d9d530ee21d5f0eaed1069581" +dependencies = [ + "libc", + "zstd-sys", +] + [[package]] name = "zstd-sys" -version = "2.0.7+zstd.1.5.4" +version = "2.0.8+zstd.1.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94509c3ba2fe55294d752b79842c530ccfab760192521df74a081a78d2b3c7f5" +checksum = "5556e6ee25d32df2586c098bbfa278803692a20d0ab9565e049480d52707ec8c" dependencies = [ "cc", "libc", diff --git a/cli/Cargo.toml b/cli/Cargo.toml index f49b378f9be..663ef57b6d6 100644 --- a/cli/Cargo.toml +++ b/cli/Cargo.toml @@ -18,14 +18,14 @@ targets = ["x86_64-unknown-linux-gnu"] [dependencies] clap = { version = "4.0.9", features = ["derive"] } env_logger = "0.10.0" -parity-scale-codec = "3.2.2" +parity-scale-codec = { version = "3.6.1", features = ["derive"] } tokio = { version = "1.25.0", features = ["full"] } # Substrate -sc-executor = { version = "0.25.0" } -sp-io = { version = "22.0.0" } -sp-runtime = { version = "23.0.0" } - -subxt = { version = "0.28.0" } +sc-executor = { git = "https://github.com/paritytech/substrate", branch = "master" } +sp-io = { git = "https://github.com/paritytech/substrate", branch = "master" } +sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "master" } +node-executor = { git = "https://github.com/paritytech/substrate", branch = "master" } +node-primitives = { git = "https://github.com/paritytech/substrate", branch = "master" } try-runtime-core = { path = "../core", features = ["cli"] } diff --git a/cli/main.rs b/cli/main.rs index f8e351385f6..f9eaf14ad10 100644 --- a/cli/main.rs +++ b/cli/main.rs @@ -1,29 +1,10 @@ use std::env; use clap::Parser; -use sp_runtime::{generic, traits::BlakeTwo256}; -use subxt::PolkadotConfig; +use node_executor::ExecutorDispatch; +use node_primitives::Block; use try_runtime_core::commands::TryRuntime; -#[subxt::subxt( - runtime_metadata_url = "wss://rpc.polkadot.io:443", - derive_for_all_types = "Clone, PartialEq, Eq", - runtime_types_only -)] -pub mod polkadot {} - -type RuntimeCall = polkadot::runtime_types::polkadot_runtime::RuntimeCall; - -type UncheckedExtrinsic = generic::UncheckedExtrinsic< - ::Address, - RuntimeCall, - ::Signature, - (), ->; - -type Header = generic::Header; -type Block = generic::Block; - fn init_env() { if env::var(env_logger::DEFAULT_FILTER_ENV).is_err() { env::set_var(env_logger::DEFAULT_FILTER_ENV, "info"); @@ -35,8 +16,12 @@ fn init_env() { async fn main() { init_env(); + use sc_executor::{sp_wasm_interface::ExtendedHostFunctions, NativeExecutionDispatch}; let cmd = TryRuntime::parse(); - cmd.run::>() - .await - .unwrap(); + cmd.run::::ExtendHostFunctions, + >>() + .await + .unwrap(); } diff --git a/core/Cargo.toml b/core/Cargo.toml index 14aefb1775e..054f126b3d7 100644 --- a/core/Cargo.toml +++ b/core/Cargo.toml @@ -16,29 +16,29 @@ async-trait = "0.1.57" clap = { version = "4.0.9", features = ["derive"], optional = true } hex = { version = "0.4.3", default-features = false } log = "0.4.17" -parity-scale-codec = "3.2.2" +parity-scale-codec = { version = "3.6.1", features = ["derive"] } serde = "1.0.136" serde_json = "1.0.85" zstd = { version = "0.11.2", default-features = false } # Substrate -frame-remote-externalities = { version = "0.28.0" } -frame-try-runtime = { version = "0.27.0", features = ["try-runtime"] } +frame-remote-externalities = { git = "https://github.com/paritytech/substrate", branch = "master" } +frame-try-runtime = { git = "https://github.com/paritytech/substrate", branch = "master", features=["try-runtime"] } -sc-cli = { version = "0.29.0" } -sc-executor = { version = "0.25.0" } +sc-cli = { git = "https://github.com/paritytech/substrate", branch = "master" } +sc-executor = { git = "https://github.com/paritytech/substrate", branch = "master" } -sp-api = { version = "19.0.0" } -sp-core = { version = "20.0.0" } -sp-externalities = { version = "0.18.0" } -sp-io = { version = "22.0.0" } -sp-keystore = { version = "0.26.0" } -sp-runtime = { version = "23.0.0" } -sp-rpc = { version = "19.0.0" } -sp-state-machine = { version = "0.27.0" } -sp-weights = { version = "19.0.0" } +sp-api = { git = "https://github.com/paritytech/substrate", branch = "master" } +sp-core = { git = "https://github.com/paritytech/substrate", branch = "master" } +sp-externalities = { git = "https://github.com/paritytech/substrate", branch = "master" } +sp-io = { git = "https://github.com/paritytech/substrate", branch = "master" } +sp-keystore = { git = "https://github.com/paritytech/substrate", branch = "master" } +sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "master" } +sp-rpc = { git = "https://github.com/paritytech/substrate", branch = "master" } +sp-state-machine = { git = "https://github.com/paritytech/substrate", branch = "master" } +sp-weights = { git = "https://github.com/paritytech/substrate", branch = "master" } -substrate-rpc-client = "0.26.0" +substrate-rpc-client = { git = "https://github.com/paritytech/substrate", branch = "master" } [features] cli = [ diff --git a/core/src/lib.rs b/core/src/lib.rs index d52693a8932..28bac39eba3 100644 --- a/core/src/lib.rs +++ b/core/src/lib.rs @@ -4,8 +4,10 @@ use std::{fmt::Debug, path::PathBuf, str::FromStr}; use frame_remote_externalities::TestExternalities; use parity_scale_codec::Decode; -use sc_cli::RuntimeVersion; -use sc_executor::{sp_wasm_interface::HostFunctions, WasmExecutor}; +use sc_cli::{execution_method_from_cli, RuntimeVersion}; +use sc_executor::{ + sp_wasm_interface::HostFunctions, HeapAllocStrategy, WasmExecutor, DEFAULT_HEAP_ALLOC_STRATEGY, +}; use sp_api::RuntimeApiInfo; use sp_core::{ hexdisplay::HexDisplay, @@ -46,19 +48,23 @@ where .map_err(|e| format!("Could not parse block hash: {e:?}").into()) } -// todo: use new builder pattern +/// Build wasm executor by default config. pub(crate) fn build_executor(shared: &SharedParams) -> WasmExecutor { - let heap_pages = shared.heap_pages.or(Some(2048)); - let max_runtime_instances = 8; - let runtime_cache_size = 2; - - WasmExecutor::new( - sc_executor::WasmExecutionMethod::Interpreted, - heap_pages, - max_runtime_instances, - None, - runtime_cache_size, - ) + let heap_pages = + shared + .heap_pages + .map_or(DEFAULT_HEAP_ALLOC_STRATEGY, |p| HeapAllocStrategy::Static { + extra_pages: p as _, + }); + + WasmExecutor::builder() + .with_execution_method(execution_method_from_cli( + shared.wasm_method, + shared.wasmtime_instantiation_strategy, + )) + .with_onchain_heap_alloc_strategy(heap_pages) + .with_offchain_heap_alloc_strategy(heap_pages) + .build() } /// Ensure that the given `ext` is compiled with `try-runtime` @@ -66,6 +72,7 @@ fn ensure_try_runtime( executor: &WasmExecutor, ext: &mut TestExternalities, ) -> bool { + use sp_api::RuntimeApiInfo; let final_code = ext .execute_with(|| sp_io::storage::get(well_known_keys::CODE)) .expect("':CODE:' is always downloaded in try-runtime-cli; qed"); @@ -89,7 +96,7 @@ pub(crate) fn state_machine_call_with_proof, method: &'static str, data: &[u8], - extensions: Extensions, + mut extensions: Extensions, maybe_export_proof: Option, ) -> sc_cli::Result<(OverlayedChanges, Vec)> { use parity_scale_codec::Encode; @@ -109,12 +116,12 @@ pub(crate) fn state_machine_call_with_proof(Into::into)?; let proof = proving_backend @@ -132,11 +139,7 @@ pub(crate) fn state_machine_call_with_proof(pre_root) .map_err(|e| { - log::error!( - target: LOG_TARGET, - "failed to generate compact proof {}: {:?}", - method, - e - ); + log::error!(target: LOG_TARGET, "failed to generate compact proof {}: {:?}", method, e); e }) .unwrap_or(CompactProof { @@ -198,29 +196,18 @@ pub(crate) fn state_machine_call_with_proof>() - ), + HexDisplay::from(&proof_nodes.iter().flatten().cloned().take(10).collect::>()), proof_nodes.len() ); log::debug!(target: LOG_TARGET, "proof size: {}", humanize(proof_size)); - log::debug!( - target: LOG_TARGET, - "compact proof size: {}", - humanize(compact_proof_size), - ); + log::debug!(target: LOG_TARGET, "compact proof size: {}", humanize(compact_proof_size),); log::debug!( target: LOG_TARGET, "zstd-compressed compact proof {}", humanize(compressed_proof.len()), ); - log::debug!(target: LOG_TARGET, "{method} executed without errors."); + log::debug!(target: LOG_TARGET, "{} executed without errors.", method); Ok((changes, encoded_results)) } diff --git a/rust-toolchain b/rust-toolchain deleted file mode 100644 index fc039168e9f..00000000000 --- a/rust-toolchain +++ /dev/null @@ -1 +0,0 @@ -nightly-2023-01-17 From 2b85c228838dda9650f3d94342c591a429b58a4b Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Thu, 3 Aug 2023 11:58:51 +0700 Subject: [PATCH 02/44] sync code with latest substrate --- Cargo.lock | 1 + core/Cargo.toml | 1 + core/src/commands.rs | 78 +++-------------------- core/src/execute_block.rs | 111 ++++++++++++++++++++++----------- core/src/lib.rs | 30 ++++++++- core/src/on_runtime_upgrade.rs | 58 ++++++++++++----- core/src/parse.rs | 15 ++--- core/src/shared_parameters.rs | 56 +++++++++-------- core/src/state.rs | 86 ++++++++++++------------- 9 files changed, 234 insertions(+), 202 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 735d8fb3ac5..4b0a7d91a17 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -9134,6 +9134,7 @@ dependencies = [ "sp-rpc", "sp-runtime", "sp-state-machine", + "sp-version", "sp-weights", "substrate-rpc-client", "zstd 0.11.2+zstd.1.5.2", diff --git a/core/Cargo.toml b/core/Cargo.toml index 054f126b3d7..f4ec3064fcd 100644 --- a/core/Cargo.toml +++ b/core/Cargo.toml @@ -29,6 +29,7 @@ sc-cli = { git = "https://github.com/paritytech/substrate", branch = "master" } sc-executor = { git = "https://github.com/paritytech/substrate", branch = "master" } sp-api = { git = "https://github.com/paritytech/substrate", branch = "master" } +sp-version = { git = "https://github.com/paritytech/substrate", branch = "master" } sp-core = { git = "https://github.com/paritytech/substrate", branch = "master" } sp-externalities = { git = "https://github.com/paritytech/substrate", branch = "master" } sp-io = { git = "https://github.com/paritytech/substrate", branch = "master" } diff --git a/core/src/commands.rs b/core/src/commands.rs index 3297e6db531..fee647936ae 100644 --- a/core/src/commands.rs +++ b/core/src/commands.rs @@ -9,8 +9,7 @@ use sp_runtime::{ }; use crate::{ - execute_block, on_runtime_upgrade, parse::parse_url, shared_parameters::SharedParams, - state::State, + execute_block, on_runtime_upgrade, parse, shared_parameters::SharedParams, state::State, }; /// Ready to use, vanilla command combining common actions. @@ -50,30 +49,8 @@ pub enum TryRuntimeAction { /// `try_state`. /// /// See [`frame_try_runtime::TryRuntime`] and - /// [`on_runtime_upgrade::OnRuntimeUpgradeCmd`] for more information. - OnRuntimeUpgrade { - /// The state type to use. - #[command(subcommand)] - state: State, - - /// Select which optional checks to perform. Selects all when no value is given. - /// - /// - `none`: Perform no checks (default when the arg is not present). - /// - `all`: Perform all checks (default when the arg is present). - /// - `pre-and-post`: Perform pre- and post-upgrade checks. - /// - `try-state`: Perform the try-state checks. - /// - /// Performing any checks will potentially invalidate the measured PoV/Weight. - #[clap( - long, - default_value = "None", - default_missing_value = "All", - num_args = 0..=1, - require_equals = true, - verbatim_doc_comment - )] - checks: UpgradeCheckSelect, - }, + /// [`commands::on_runtime_upgrade::OnRuntimeUpgradeCmd`] for more information. + OnRuntimeUpgrade(on_runtime_upgrade::OnRuntimeUpgradeCmd), /// Executes the given block against some state. /// @@ -81,35 +58,9 @@ pub enum TryRuntimeAction { /// as state-root and signature checks are always disabled, and additional checks like /// `try-state` can be enabled. /// - /// See [`frame_try_runtime::TryRuntime`] and [`execute_block::ExecuteBlockCmd`] for + /// See [`frame_try_runtime::TryRuntime`] and [`commands::execute_block::ExecuteBlockCmd`] for /// more information. - ExecuteBlock { - /// The state type to use. - #[command(subcommand)] - state: State, - - /// Which try-state targets to execute when running this command. - /// - /// Expected values: - /// - `all` - /// - `none` - /// - A comma separated list of pallets, as per pallet names in `construct_runtime!()` - /// (e.g. `Staking, System`). - /// - `rr-[x]` where `[x]` is a number. Then, the given number of pallets are checked in a - /// round-robin fashion. - #[arg(long, default_value = "all")] - try_state: frame_try_runtime::TryStateSelect, - - /// The ws uri from which to fetch the block. - /// - /// This will always fetch the next block of whatever `state` is referring to, because this - /// is the only sensible combination. In other words, if you have the state of - /// block `n`, you should execute block `n+1` on top of it. - /// - /// If `state` is `Live`, this can be ignored and the same uri is used for both. - #[arg(long, value_parser = parse_url)] - block_ws_uri: Option, - }, + ExecuteBlock(execute_block::ExecuteBlockCmd), } impl TryRuntimeAction { @@ -125,26 +76,15 @@ impl TryRuntimeAction { HostFns: HostFunctions, { match &self { - TryRuntimeAction::OnRuntimeUpgrade { state, checks } => { + TryRuntimeAction::OnRuntimeUpgrade(ref cmd) => { on_runtime_upgrade::on_runtime_upgrade::( shared.clone(), - state.clone(), - *checks, + cmd.clone(), ) .await } - TryRuntimeAction::ExecuteBlock { - state, - try_state, - block_ws_uri, - } => { - execute_block::execute_block::( - shared.clone(), - state.clone(), - try_state.clone(), - block_ws_uri.clone(), - ) - .await + TryRuntimeAction::ExecuteBlock(cmd) => { + execute_block::execute_block::(shared.clone(), cmd.clone()).await } } } diff --git a/core/src/execute_block.rs b/core/src/execute_block.rs index e841f027bc6..38bb854ede9 100644 --- a/core/src/execute_block.rs +++ b/core/src/execute_block.rs @@ -1,45 +1,95 @@ use std::{fmt::Debug, str::FromStr}; -use frame_try_runtime::TryStateSelect; use parity_scale_codec::Encode; use sc_executor::sp_wasm_interface::HostFunctions; -use sp_api::HeaderT; use sp_rpc::{list::ListOrValue, number::NumberOrHex}; use sp_runtime::{ generic::SignedBlock, - traits::{Block as BlockT, NumberFor}, + traits::{Block as BlockT, Header as HeaderT, NumberFor}, }; use substrate_rpc_client::{ws_client, ChainApi}; use crate::{ build_executor, full_extensions, rpc_err_handler, - shared_parameters::SharedParams, state::{LiveState, State}, - state_machine_call_with_proof, LOG_TARGET, + state_machine_call_with_proof, SharedParams, LOG_TARGET, }; -pub async fn execute_block( +/// Configurations of the [`crate::Command::ExecuteBlock`]. +/// +/// This will always call into `TryRuntime_execute_block`, which can optionally skip the state-root +/// check (useful for trying a unreleased runtime), and can execute runtime sanity checks as well. +#[derive(Debug, Clone, clap::Parser)] +pub struct ExecuteBlockCmd { + /// Which try-state targets to execute when running this command. + /// + /// Expected values: + /// - `all` + /// - `none` + /// - A comma separated list of pallets, as per pallet names in `construct_runtime!()` (e.g. + /// `Staking, System`). + /// - `rr-[x]` where `[x]` is a number. Then, the given number of pallets are checked in a + /// round-robin fashion. + #[arg(long, default_value = "all")] + pub try_state: frame_try_runtime::TryStateSelect, + + /// The ws uri from which to fetch the block. + /// + /// This will always fetch the next block of whatever `state` is referring to, because this is + /// the only sensible combination. In other words, if you have the state of block `n`, you + /// should execute block `n+1` on top of it. + /// + /// If `state` is `Live`, this can be ignored and the same uri is used for both. + #[arg( + long, + value_parser = crate::parse::url + )] + pub block_ws_uri: Option, + + /// The state type to use. + #[command(subcommand)] + pub state: State, +} + +impl ExecuteBlockCmd { + fn block_ws_uri(&self) -> String + where + ::Err: Debug, + { + match (&self.block_ws_uri, &self.state) { + (Some(block_ws_uri), State::Snap { .. }) => block_ws_uri.to_owned(), + (Some(block_ws_uri), State::Live { .. }) => { + log::error!(target: LOG_TARGET, "--block-uri is provided while state type is live, Are you sure you know what you are doing?"); + block_ws_uri.to_owned() + } + (None, State::Live(LiveState { uri, .. })) => uri.clone(), + (None, State::Snap { .. }) => { + panic!("either `--block-uri` must be provided, or state must be `live`"); + } + } + } +} + +pub(crate) async fn execute_block( shared: SharedParams, - state: State, - try_state_checks: TryStateSelect, - block_ws_uri: Option, + command: ExecuteBlockCmd, ) -> sc_cli::Result<()> where Block: BlockT + serde::de::DeserializeOwned, - Block::Hash: FromStr, ::Err: Debug, + Block::Hash: serde::de::DeserializeOwned, Block::Header: serde::de::DeserializeOwned, - NumberFor: FromStr, - as FromStr>::Err: Debug, + as TryInto>::Error: Debug, HostFns: HostFunctions, { let executor = build_executor::(&shared); - let ext = state - .to_ext::(&shared, &executor, None, true) + let ext = command + .state + .into_ext::(&shared, &executor, None, true) .await?; // get the block number associated with this block. - let block_ws_uri = resolve_block_ws_uri::(block_ws_uri.as_ref(), &state); + let block_ws_uri = command.block_ws_uri::(); let rpc = ws_client(&block_ws_uri).await?; let next_hash = next_hash_of::(&rpc, ext.block_hash).await?; @@ -63,7 +113,13 @@ where // for now, hardcoded for the sake of simplicity. We might customize them one day. let state_root_check = false; let signature_check = false; - let payload = (block, state_root_check, signature_check, try_state_checks).encode(); + let payload = ( + block.clone(), + state_root_check, + signature_check, + command.try_state, + ) + .encode(); let _ = state_machine_call_with_proof::( &ext, @@ -77,28 +133,7 @@ where Ok(()) } -fn resolve_block_ws_uri(block_ws_uri: Option<&String>, state: &State) -> String -where - Block::Hash: FromStr, - ::Err: Debug, -{ - match (block_ws_uri, state) { - (Some(block_ws_uri), State::Snap { .. }) => block_ws_uri.to_owned(), - (Some(block_ws_uri), State::Live { .. }) => { - log::error!( - target: LOG_TARGET, - "Block uri is provided while state type is live. Are you sure you know what you are doing?" - ); - block_ws_uri.to_owned() - } - (None, State::Live(LiveState { uri, .. })) => uri.clone(), - (None, State::Snap { .. }) => { - panic!("either block ws uri must be provided, or state must be `Live`"); - } - } -} - -async fn next_hash_of( +pub(crate) async fn next_hash_of( rpc: &substrate_rpc_client::WsClient, hash: Block::Hash, ) -> sc_cli::Result diff --git a/core/src/lib.rs b/core/src/lib.rs index 28bac39eba3..71585363304 100644 --- a/core/src/lib.rs +++ b/core/src/lib.rs @@ -40,12 +40,11 @@ pub(crate) const LOG_TARGET: &str = "try-runtime::cli"; /// Get the hash type of the generic `Block` from a `hash_str`. pub(crate) fn hash_of(hash_str: &str) -> sc_cli::Result where - Block::Hash: FromStr, ::Err: Debug, { hash_str .parse::<::Hash>() - .map_err(|e| format!("Could not parse block hash: {e:?}").into()) + .map_err(|e| format!("Could not parse block hash: {:?}", e).into()) } /// Build wasm executor by default config. @@ -87,6 +86,33 @@ fn ensure_try_runtime( .is_some() } +/// Execute the given `method` and `data` on top of `ext`, returning the results (encoded) and the +/// state `changes`. +pub(crate) fn state_machine_call( + ext: &TestExternalities, + executor: &WasmExecutor, + method: &'static str, + data: &[u8], + mut extensions: Extensions, +) -> sc_cli::Result<(OverlayedChanges, Vec)> { + let mut changes = Default::default(); + let encoded_results = StateMachine::new( + &ext.backend, + &mut changes, + executor, + method, + data, + &mut extensions, + &sp_state_machine::backend::BackendRuntimeCode::new(&ext.backend).runtime_code()?, + CallContext::Offchain, + ) + .execute() + .map_err(|e| format!("failed to execute '{}': {}", method, e)) + .map_err::(Into::into)?; + + Ok((changes, encoded_results)) +} + /// Same as [`state_machine_call`], but it also computes and prints the storage proof in different /// size and formats. /// diff --git a/core/src/on_runtime_upgrade.rs b/core/src/on_runtime_upgrade.rs index c42a4c3c7b2..cf2941f68cd 100644 --- a/core/src/on_runtime_upgrade.rs +++ b/core/src/on_runtime_upgrade.rs @@ -7,18 +7,41 @@ use sp_runtime::traits::{Block as BlockT, NumberFor}; use sp_weights::Weight; use crate::{ - build_executor, shared_parameters::SharedParams, state::State, state_machine_call_with_proof, - LOG_TARGET, + build_executor, state::State, state_machine_call_with_proof, SharedParams, LOG_TARGET, }; -pub async fn on_runtime_upgrade( +/// Configurations of the [`crate::Command::OnRuntimeUpgrade`]. +#[derive(Debug, Clone, clap::Parser)] +pub struct OnRuntimeUpgradeCmd { + /// The state type to use. + #[command(subcommand)] + pub state: State, + + /// Select which optional checks to perform. Selects all when no value is given. + /// + /// - `none`: Perform no checks. + /// - `all`: Perform all checks (default when --checks is present with no value). + /// - `pre-and-post`: Perform pre- and post-upgrade checks (default when the arg is not + /// present). + /// - `try-state`: Perform the try-state checks. + /// + /// Performing any checks will potentially invalidate the measured PoV/Weight. + // NOTE: The clap attributes make it backwards compatible with the previous `--checks` flag. + #[clap(long, + default_value = "pre-and-post", + default_missing_value = "all", + num_args = 0..=1, + require_equals = true, + verbatim_doc_comment)] + pub checks: UpgradeCheckSelect, +} + +pub(crate) async fn on_runtime_upgrade( shared: SharedParams, - state: State, - checks: UpgradeCheckSelect, + command: OnRuntimeUpgradeCmd, ) -> sc_cli::Result<()> where Block: BlockT + serde::de::DeserializeOwned, - Block::Hash: FromStr, ::Err: Debug, Block::Header: serde::de::DeserializeOwned, NumberFor: FromStr, @@ -26,30 +49,31 @@ where HostFns: HostFunctions, { let executor = build_executor(&shared); - let ext = state - .to_ext::(&shared, &executor, None, true) + let ext = command + .state + .into_ext::(&shared, &executor, None, true) .await?; let (_, encoded_result) = state_machine_call_with_proof::( &ext, &executor, "TryRuntime_on_runtime_upgrade", - checks.encode().as_ref(), + command.checks.encode().as_ref(), Default::default(), // we don't really need any extensions here. shared.export_proof, )?; let (weight, total_weight) = <(Weight, Weight) as Decode>::decode(&mut &*encoded_result) - .map_err(|e| format!("failed to decode weight: {e:?}"))?; + .map_err(|e| format!("failed to decode weight: {:?}", e))?; log::info!( - target: LOG_TARGET, - "TryRuntime_on_runtime_upgrade executed without errors. Consumed weight = ({} ps, {} byte), total weight = ({} ps, {} byte) ({:.2} %, {:.2} %).", - weight.ref_time(), weight.proof_size(), - total_weight.ref_time(), total_weight.proof_size(), - (weight.ref_time() as f64 / total_weight.ref_time().max(1) as f64) * 100.0, - (weight.proof_size() as f64 / total_weight.proof_size().max(1) as f64) * 100.0, - ); + target: LOG_TARGET, + "TryRuntime_on_runtime_upgrade executed without errors. Consumed weight = ({} ps, {} byte), total weight = ({} ps, {} byte) ({:.2} %, {:.2} %).", + weight.ref_time(), weight.proof_size(), + total_weight.ref_time(), total_weight.proof_size(), + (weight.ref_time() as f64 / total_weight.ref_time().max(1) as f64) * 100.0, + (weight.proof_size() as f64 / total_weight.proof_size().max(1) as f64) * 100.0, + ); Ok(()) } diff --git a/core/src/parse.rs b/core/src/parse.rs index 338096e9e81..1deb9da8fa4 100644 --- a/core/src/parse.rs +++ b/core/src/parse.rs @@ -1,6 +1,6 @@ -use sp_runtime::StateVersion; +use sp_version::StateVersion; -pub(crate) fn parse_hash(block_hash: &str) -> Result { +pub(crate) fn hash(block_hash: &str) -> Result { let (block_hash, offset) = if let Some(block_hash) = block_hash.strip_prefix("0x") { (block_hash, 2) } else { @@ -13,21 +13,22 @@ pub(crate) fn parse_hash(block_hash: &str) -> Result { offset + pos, )) } else { - Ok(block_hash.to_string()) + Ok(block_hash.into()) } } -pub(crate) fn parse_url(s: &str) -> Result { +pub(crate) fn url(s: &str) -> Result { if s.starts_with("ws://") || s.starts_with("wss://") { + // could use Url crate as well, but lets keep it simple for now. Ok(s.to_string()) } else { - Err("not a valid WS(S) url: must start with 'ws://' or 'wss://'".to_string()) + Err("not a valid WS(S) url: must start with 'ws://' or 'wss://'") } } -pub(crate) fn parse_state_version(s: &str) -> Result { +pub(crate) fn state_version(s: &str) -> Result { s.parse::() .map_err(|_| ()) .and_then(StateVersion::try_from) - .map_err(|_| "Invalid state version.".to_string()) + .map_err(|_| "Invalid state version.") } diff --git a/core/src/shared_parameters.rs b/core/src/shared_parameters.rs index 3a87e058454..9c1fe01ed74 100644 --- a/core/src/shared_parameters.rs +++ b/core/src/shared_parameters.rs @@ -4,14 +4,22 @@ use sc_cli::{WasmExecutionMethod, WasmtimeInstantiationStrategy}; use sp_runtime::StateVersion; #[cfg(feature = "cli")] use { - crate::parse::parse_state_version, + crate::parse, sc_cli::{DEFAULT_WASMTIME_INSTANTIATION_STRATEGY, DEFAULT_WASM_EXECUTION_METHOD}, }; /// Shared parameters of the `try-runtime` commands -#[derive(Debug, Clone)] -#[cfg_attr(feature = "cli", derive(clap::Args))] +#[derive(Debug, Clone, clap::Parser)] +#[group(skip)] pub struct SharedParams { + /// Shared parameters of substrate cli. + /// + /// TODO: this is only needed because try-runtime is embedded in the substrate CLI. It should + /// go away. + #[allow(missing_docs)] + #[clap(flatten)] + pub shared_params: sc_cli::SharedParams, + /// The runtime to use. /// /// Must be a path to a wasm blob, compiled with `try-runtime` feature flag. @@ -20,51 +28,45 @@ pub struct SharedParams { /// whatever comes from the remote node, or the snapshot file. This will most likely not work /// against a remote node, as no (sane) blockchain should compile its onchain wasm with /// `try-runtime` feature. - #[cfg_attr(feature = "cli", arg(long))] + #[arg(long)] pub runtime: Runtime, /// Type of wasm execution used. - #[cfg_attr( - feature = "cli", - arg( - long = "wasm-execution", - value_name = "METHOD", - value_enum, - ignore_case = true, - default_value_t = DEFAULT_WASM_EXECUTION_METHOD, - ) - )] + #[arg( + long = "wasm-execution", + value_name = "METHOD", + value_enum, + ignore_case = true, + default_value_t = DEFAULT_WASM_EXECUTION_METHOD, + )] pub wasm_method: WasmExecutionMethod, /// The WASM instantiation method to use. /// /// Only has an effect when `wasm-execution` is set to `compiled`. - #[cfg_attr( - feature = "cli", - arg( - long = "wasm-instantiation-strategy", - value_name = "STRATEGY", - default_value_t = DEFAULT_WASMTIME_INSTANTIATION_STRATEGY, - value_enum, - ) - )] + #[arg( + long = "wasm-instantiation-strategy", + value_name = "STRATEGY", + default_value_t = DEFAULT_WASMTIME_INSTANTIATION_STRATEGY, + value_enum, + )] pub wasmtime_instantiation_strategy: WasmtimeInstantiationStrategy, /// The number of 64KB pages to allocate for Wasm execution. Defaults to /// [`sc_service::Configuration.default_heap_pages`]. - #[cfg_attr(feature = "cli", arg(long))] + #[arg(long)] pub heap_pages: Option, /// Path to a file to export the storage proof into (as a JSON). /// If several blocks are executed, the path is interpreted as a folder /// where one file per block will be written (named `{block_number}-{block_hash}`). - #[cfg_attr(feature = "cli", arg(long))] + #[clap(long)] pub export_proof: Option, /// Overwrite the `state_version`. /// /// Otherwise `remote-externalities` will automatically set the correct state version. - #[cfg_attr(feature = "cli", arg(long, value_parser = parse_state_version))] + #[arg(long, value_parser = parse::state_version)] pub overwrite_state_version: Option, } @@ -88,7 +90,7 @@ impl FromStr for Runtime { fn from_str(s: &str) -> Result { Ok(match s.to_lowercase().as_ref() { "existing" => Runtime::Existing, - x => Runtime::Path(PathBuf::from(x.to_string())), + x @ _ => Runtime::Path(x.into()), }) } } diff --git a/core/src/state.rs b/core/src/state.rs index 7bb468936e7..0c027a532fe 100644 --- a/core/src/state.rs +++ b/core/src/state.rs @@ -15,56 +15,58 @@ use sp_runtime::{ DeserializeOwned, }; -#[cfg(feature = "cli")] -use crate::parse::{parse_hash, parse_url}; use crate::{ - ensure_try_runtime, hash_of, + ensure_try_runtime, hash_of, parse, shared_parameters::{Runtime, SharedParams}, LOG_TARGET, }; -/// The source of runtime *state* to use. -#[derive(Debug, Clone)] -#[cfg_attr(feature = "cli", derive(clap::Subcommand))] -pub enum State { - /// Use a state snapshot as the source of runtime state. - /// - /// This can be crated by passing a value to [`State::Live::snapshot_path`]. - Snap { - #[cfg_attr(feature = "cli", arg(short, long))] - snapshot_path: PathBuf, - }, - - /// Use a live chain as the source of runtime state. - Live(LiveState), -} - -/// A `Live` variant [`State`] -#[derive(Debug, Clone)] -#[cfg_attr(feature = "cli", derive(clap::Args))] +/// A `Live` variant for [`State`] +#[derive(Debug, Clone, clap::Args)] pub struct LiveState { /// The url to connect to. - #[cfg_attr(feature = "cli", arg(short, long, value_parser = parse_url))] + #[arg( + short, + long, + value_parser = parse::url, + )] pub uri: String, /// The block hash at which to fetch the state. /// /// If non provided, then the latest finalized head is used. - #[cfg_attr(feature = "cli", arg(short, long, value_parser = parse_hash))] - pub at: Option, + #[arg( + short, + long, + value_parser = parse::hash, + )] + at: Option, /// A pallet to scrape. Can be provided multiple times. If empty, entire chain state will /// be scraped. - #[cfg_attr(feature = "cli", arg(short, long, num_args = 1..))] - pub pallet: Vec, + #[arg(short, long, num_args = 1..)] + pallet: Vec, /// Fetch the child-keys as well. /// /// Default is `false`, if specific `--pallets` are specified, `true` otherwise. In other /// words, if you scrape the whole state the child tree data is included out of the box. /// Otherwise, it must be enabled explicitly using this flag. - #[cfg_attr(feature = "cli", arg(long))] - pub child_tree: bool, + #[arg(long)] + child_tree: bool, +} + +/// The source of runtime *state* to use. +#[derive(Debug, Clone, clap::Subcommand)] +pub enum State { + /// Use a state snapshot as the source of runtime state. + Snap { + #[arg(short, long)] + snapshot_path: PathBuf, + }, + + /// Use a live chain as the source of runtime state. + Live(LiveState), } impl State { @@ -73,7 +75,7 @@ impl State { /// /// This will override the code as it sees fit based on [`SharedParams::Runtime`]. It will also /// check the spec-version and name. - pub(crate) async fn to_ext( + pub(crate) async fn into_ext( &self, shared: &SharedParams, executor: &WasmExecutor, @@ -81,9 +83,7 @@ impl State { try_runtime_check: bool, ) -> sc_cli::Result> where - Block::Hash: FromStr, Block::Header: DeserializeOwned, - Block::Hash: DeserializeOwned, ::Err: Debug, { let builder = match self { @@ -126,7 +126,8 @@ impl State { let builder = if let Some(state_version) = shared.overwrite_state_version { log::warn!( target: LOG_TARGET, - "overwriting state version to {state_version:?}, you better know what you are doing." + "overwriting state version to {:?}, you better know what you are doing.", + state_version ); builder.overwrite_state_version(state_version) } else { @@ -134,13 +135,12 @@ impl State { }; // then, we prepare to replace the code based on what the CLI wishes. - let maybe_code_to_overwrite = - match shared.runtime { - Runtime::Path(ref path) => Some(std::fs::read(path).map_err(|e| { - format!("error while reading runtime file from {path:?}: {e:?}") - })?), - Runtime::Existing => None, - }; + let maybe_code_to_overwrite = match shared.runtime { + Runtime::Path(ref path) => Some(std::fs::read(path).map_err(|e| { + format!("error while reading runtime file from {:?}: {:?}", path, e) + })?), + Runtime::Existing => None, + }; // build the main ext. let mut ext = builder.build().await?; @@ -187,8 +187,10 @@ impl State { } // whatever runtime we have in store now must have been compiled with try-runtime feature. - if try_runtime_check && !ensure_try_runtime::(executor, &mut ext) { - return Err("given runtime is NOT compiled with try-runtime feature!".into()); + if try_runtime_check { + if !ensure_try_runtime::(&executor, &mut ext) { + return Err("given runtime is NOT compiled with try-runtime feature!".into()); + } } Ok(ext) From 722902fa556aa77f654c5852e2705cc882fe08b6 Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Thu, 3 Aug 2023 12:08:05 +0700 Subject: [PATCH 03/44] remove sc_cli shared params --- core/src/shared_parameters.rs | 8 -------- 1 file changed, 8 deletions(-) diff --git a/core/src/shared_parameters.rs b/core/src/shared_parameters.rs index 9c1fe01ed74..a5d4ad7c554 100644 --- a/core/src/shared_parameters.rs +++ b/core/src/shared_parameters.rs @@ -12,14 +12,6 @@ use { #[derive(Debug, Clone, clap::Parser)] #[group(skip)] pub struct SharedParams { - /// Shared parameters of substrate cli. - /// - /// TODO: this is only needed because try-runtime is embedded in the substrate CLI. It should - /// go away. - #[allow(missing_docs)] - #[clap(flatten)] - pub shared_params: sc_cli::SharedParams, - /// The runtime to use. /// /// Must be a path to a wasm blob, compiled with `try-runtime` feature flag. From 28d9dd006329e0e7667bfb3467f297c57636605e Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Thu, 3 Aug 2023 12:08:58 +0700 Subject: [PATCH 04/44] fix comment --- core/src/commands.rs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/core/src/commands.rs b/core/src/commands.rs index fee647936ae..9dbfe234498 100644 --- a/core/src/commands.rs +++ b/core/src/commands.rs @@ -48,8 +48,8 @@ pub enum TryRuntimeAction { /// only triggers all of the `on_runtime_upgrade` hooks in the runtime, and optionally /// `try_state`. /// - /// See [`frame_try_runtime::TryRuntime`] and - /// [`commands::on_runtime_upgrade::OnRuntimeUpgradeCmd`] for more information. + /// See [`frame_try_runtime::TryRuntime`] and [`on_runtime_upgrade::OnRuntimeUpgradeCmd`] for + /// more information. OnRuntimeUpgrade(on_runtime_upgrade::OnRuntimeUpgradeCmd), /// Executes the given block against some state. @@ -58,8 +58,8 @@ pub enum TryRuntimeAction { /// as state-root and signature checks are always disabled, and additional checks like /// `try-state` can be enabled. /// - /// See [`frame_try_runtime::TryRuntime`] and [`commands::execute_block::ExecuteBlockCmd`] for - /// more information. + /// See [`frame_try_runtime::TryRuntime`] and [`execute_block::ExecuteBlockCmd`] for more + /// information. ExecuteBlock(execute_block::ExecuteBlockCmd), } From 0aaac8619fa64ab42bf013202bff6b9f41449a8e Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Thu, 3 Aug 2023 13:08:47 +0700 Subject: [PATCH 05/44] add missing stable commands --- core/src/commands/create_snapshot.rs | 69 ++++++ core/src/{ => commands}/execute_block.rs | 11 +- core/src/commands/follow_chain.rs | 201 ++++++++++++++++++ core/src/{commands.rs => commands/mod.rs} | 62 +++++- core/src/commands/offchain_worker.rs | 95 +++++++++ core/src/{ => commands}/on_runtime_upgrade.rs | 9 +- core/src/lib.rs | 3 - core/src/state.rs | 6 +- 8 files changed, 430 insertions(+), 26 deletions(-) create mode 100644 core/src/commands/create_snapshot.rs rename core/src/{ => commands}/execute_block.rs (96%) create mode 100644 core/src/commands/follow_chain.rs rename core/src/{commands.rs => commands/mod.rs} (51%) create mode 100644 core/src/commands/offchain_worker.rs rename core/src/{ => commands}/on_runtime_upgrade.rs (93%) diff --git a/core/src/commands/create_snapshot.rs b/core/src/commands/create_snapshot.rs new file mode 100644 index 00000000000..d5ba5a58448 --- /dev/null +++ b/core/src/commands/create_snapshot.rs @@ -0,0 +1,69 @@ +use std::{fmt::Debug, str::FromStr}; + +use sc_executor::sp_wasm_interface::HostFunctions; +use sp_runtime::traits::{Block as BlockT, NumberFor}; +use substrate_rpc_client::{ws_client, StateApi}; + +use crate::{ + build_executor, + state::{LiveState, State}, + SharedParams, LOG_TARGET, +}; + +/// Configurations for [`run`]. +#[derive(Debug, Clone, clap::Parser)] +pub struct Command { + /// The source of the snapshot. Must be a remote node. + #[clap(flatten)] + pub from: LiveState, + + /// The snapshot path to write to. + /// + /// If not provided `-@.snap` will be used. + pub snapshot_path: Option, +} + +/// Runs the `create_snapshot` command. +pub(crate) async fn run( + shared: SharedParams, + command: Command, +) -> sc_cli::Result<()> +where + Block: BlockT + serde::de::DeserializeOwned, + Block::Hash: serde::de::DeserializeOwned, + Block::Header: serde::de::DeserializeOwned, + ::Err: Debug, + NumberFor: FromStr, + as FromStr>::Err: Debug, + HostFns: HostFunctions, +{ + let snapshot_path = command.snapshot_path; + if !matches!(shared.runtime, crate::shared_parameters::Runtime::Existing) { + return Err("creating a snapshot is only possible with --runtime existing.".into()); + } + + let path = match snapshot_path { + Some(path) => path, + None => { + let rpc = ws_client(&command.from.uri).await.unwrap(); + let remote_spec = StateApi::::runtime_version(&rpc, None) + .await + .unwrap(); + let path_str = format!( + "{}-{}@{}.snap", + remote_spec.spec_name.to_lowercase(), + remote_spec.spec_version, + command.from.at.clone().unwrap_or("latest".to_owned()) + ); + log::info!(target: LOG_TARGET, "snapshot path not provided (-s), using '{}'", path_str); + path_str.into() + } + }; + + let executor = build_executor::(&shared); + let _ = State::Live(command.from) + .into_ext::(&shared, &executor, Some(path.into()), false) + .await?; + + Ok(()) +} diff --git a/core/src/execute_block.rs b/core/src/commands/execute_block.rs similarity index 96% rename from core/src/execute_block.rs rename to core/src/commands/execute_block.rs index 38bb854ede9..78c6220d633 100644 --- a/core/src/execute_block.rs +++ b/core/src/commands/execute_block.rs @@ -15,12 +15,12 @@ use crate::{ state_machine_call_with_proof, SharedParams, LOG_TARGET, }; -/// Configurations of the [`crate::Command::ExecuteBlock`]. +/// Configurations for [`run`]. /// /// This will always call into `TryRuntime_execute_block`, which can optionally skip the state-root /// check (useful for trying a unreleased runtime), and can execute runtime sanity checks as well. #[derive(Debug, Clone, clap::Parser)] -pub struct ExecuteBlockCmd { +pub struct Command { /// Which try-state targets to execute when running this command. /// /// Expected values: @@ -51,7 +51,7 @@ pub struct ExecuteBlockCmd { pub state: State, } -impl ExecuteBlockCmd { +impl Command { fn block_ws_uri(&self) -> String where ::Err: Debug, @@ -70,9 +70,10 @@ impl ExecuteBlockCmd { } } -pub(crate) async fn execute_block( +// Runs the `execute_block` command. +pub(crate) async fn run( shared: SharedParams, - command: ExecuteBlockCmd, + command: Command, ) -> sc_cli::Result<()> where Block: BlockT + serde::de::DeserializeOwned, diff --git a/core/src/commands/follow_chain.rs b/core/src/commands/follow_chain.rs new file mode 100644 index 00000000000..a5c043d58c2 --- /dev/null +++ b/core/src/commands/follow_chain.rs @@ -0,0 +1,201 @@ +use std::{fmt::Debug, str::FromStr}; + +use parity_scale_codec::{Decode, Encode}; +use sc_executor::sp_wasm_interface::HostFunctions; +use serde::{de::DeserializeOwned, Serialize}; +use sp_core::H256; +use sp_runtime::{ + generic::SignedBlock, + traits::{Block as BlockT, Header as HeaderT, NumberFor}, +}; +use substrate_rpc_client::{ws_client, ChainApi, FinalizedHeaders, Subscription, WsClient}; + +use crate::{ + build_executor, full_extensions, parse, rpc_err_handler, + state::{LiveState, State}, + state_machine_call_with_proof, SharedParams, LOG_TARGET, +}; + +const SUB: &str = "chain_subscribeFinalizedHeads"; +const UN_SUB: &str = "chain_unsubscribeFinalizedHeads"; + +/// Configurations for [`run`]. +#[derive(Debug, Clone, clap::Parser)] +pub struct Command { + /// The url to connect to. + #[arg(short, long, value_parser = parse::url)] + pub uri: String, + + /// If set, then the state root check is enabled. + #[arg(long)] + pub state_root_check: bool, + + /// Which try-state targets to execute when running this command. + /// + /// Expected values: + /// - `all` + /// - `none` + /// - A comma separated list of pallets, as per pallet names in `construct_runtime!()` (e.g. + /// `Staking, System`). + /// - `rr-[x]` where `[x]` is a number. Then, the given number of pallets are checked in a + /// round-robin fashion. + #[arg(long, default_value = "all")] + pub try_state: frame_try_runtime::TryStateSelect, + + /// If present, a single connection to a node will be kept and reused for fetching blocks. + #[arg(long)] + pub keep_connection: bool, +} + +/// Start listening for with `SUB` at `url`. +/// +/// Returns a pair `(client, subscription)` - `subscription` alone will be useless, because it +/// relies on the related alive `client`. +async fn start_subscribing( + url: &str, +) -> sc_cli::Result<(WsClient, Subscription
)> { + let client = ws_client(url) + .await + .map_err(|e| sc_cli::Error::Application(e.into()))?; + + log::info!(target: LOG_TARGET, "subscribing to {:?} / {:?}", SUB, UN_SUB); + + let sub = ChainApi::<(), (), Header, ()>::subscribe_finalized_heads(&client) + .await + .map_err(|e| sc_cli::Error::Application(e.into()))?; + Ok((client, sub)) +} + +// Runs the `follow_chain` command. +pub(crate) async fn run( + shared: SharedParams, + command: Command, +) -> sc_cli::Result<()> +where + Block: BlockT + DeserializeOwned, + Block::Header: DeserializeOwned, + ::Err: Debug, + NumberFor: FromStr, + as FromStr>::Err: Debug, + HostFns: HostFunctions, +{ + let (rpc, subscription) = start_subscribing::(&command.uri).await?; + let mut finalized_headers: FinalizedHeaders = + FinalizedHeaders::new(&rpc, subscription); + + let mut maybe_state_ext = None; + let executor = build_executor::(&shared); + + while let Some(header) = finalized_headers.next().await { + let hash = header.hash(); + let number = header.number(); + + let block = + ChainApi::<(), Block::Hash, Block::Header, SignedBlock>::block(&rpc, Some(hash)) + .await + .or_else(|e| { + if matches!(e, substrate_rpc_client::Error::ParseError(_)) { + log::error!( + target: LOG_TARGET, + "failed to parse the block format of remote against the local \ + codebase. The block format has changed, and follow-chain cannot run in \ + this case. Try running this command in a branch of your codebase that + has the same block format as the remote chain. For now, we replace the \ + block with an empty one." + ); + } + Err(rpc_err_handler(e)) + })? + .expect("if header exists, block should also exist.") + .block; + + log::debug!( + target: LOG_TARGET, + "new block event: {:?} => {:?}, extrinsics: {}", + hash, + number, + block.extrinsics().len() + ); + + // create an ext at the state of this block, whatever is the first subscription event. + if maybe_state_ext.is_none() { + let state = State::Live(LiveState { + uri: command.uri.clone(), + // a bit dodgy, we have to un-parse the has to a string again and re-parse it + // inside. + at: Some(hex::encode(header.parent_hash().encode())), + pallet: vec![], + child_tree: true, + }); + let ext = state + .into_ext::(&shared, &executor, None, true) + .await?; + maybe_state_ext = Some(ext); + } + + let state_ext = maybe_state_ext + .as_mut() + .expect("state_ext either existed or was just created"); + + let result = state_machine_call_with_proof::( + state_ext, + &executor, + "TryRuntime_execute_block", + ( + block, + command.state_root_check, + true, + command.try_state.clone(), + ) + .encode() + .as_ref(), + full_extensions(executor.clone()), + shared + .export_proof + .as_ref() + .map(|path| path.as_path().join(&format!("{}.json", number))), + ); + + if let Err(why) = result { + log::error!( + target: LOG_TARGET, + "failed to execute block {:?} due to {:?}", + number, + why + ); + continue; + } + + let (mut changes, encoded_result) = result.expect("checked to be Ok; qed"); + + let consumed_weight = ::decode(&mut &*encoded_result) + .map_err(|e| format!("failed to decode weight: {:?}", e))?; + + let storage_changes = changes + .drain_storage_changes( + &state_ext.backend, + &mut Default::default(), + // Note that in case a block contains a runtime upgrade, state version could + // potentially be incorrect here, this is very niche and would only result in + // unaligned roots, so this use case is ignored for now. + state_ext.state_version, + ) + .unwrap(); + + state_ext.backend.apply_transaction( + storage_changes.transaction_storage_root, + storage_changes.transaction, + ); + + log::info!( + target: LOG_TARGET, + "executed block {}, consumed weight {}, new storage root {:?}", + number, + consumed_weight, + state_ext.as_backend().root(), + ); + } + + log::error!(target: LOG_TARGET, "ws subscription must have terminated."); + Ok(()) +} diff --git a/core/src/commands.rs b/core/src/commands/mod.rs similarity index 51% rename from core/src/commands.rs rename to core/src/commands/mod.rs index 9dbfe234498..76e63095c1e 100644 --- a/core/src/commands.rs +++ b/core/src/commands/mod.rs @@ -8,9 +8,13 @@ use sp_runtime::{ DeserializeOwned, }; -use crate::{ - execute_block, on_runtime_upgrade, parse, shared_parameters::SharedParams, state::State, -}; +use crate::{parse, shared_parameters::SharedParams, state::State}; + +pub mod create_snapshot; +pub mod execute_block; +pub mod follow_chain; +pub mod offchain_worker; +pub mod on_runtime_upgrade; /// Ready to use, vanilla command combining common actions. #[derive(Debug, Clone, clap::Parser)] @@ -50,7 +54,7 @@ pub enum TryRuntimeAction { /// /// See [`frame_try_runtime::TryRuntime`] and [`on_runtime_upgrade::OnRuntimeUpgradeCmd`] for /// more information. - OnRuntimeUpgrade(on_runtime_upgrade::OnRuntimeUpgradeCmd), + OnRuntimeUpgrade(on_runtime_upgrade::Command), /// Executes the given block against some state. /// @@ -60,7 +64,38 @@ pub enum TryRuntimeAction { /// /// See [`frame_try_runtime::TryRuntime`] and [`execute_block::ExecuteBlockCmd`] for more /// information. - ExecuteBlock(execute_block::ExecuteBlockCmd), + ExecuteBlock(execute_block::Command), + + /// Executes *the offchain worker hooks* of a given block against some state. + /// + /// This executes the same runtime api as normal block import, namely + /// `OffchainWorkerApi_offchain_worker`. + /// + /// See [`frame_try_runtime::TryRuntime`] and [`commands::offchain_worker::OffchainWorkerCmd`] + /// for more information. + OffchainWorker(offchain_worker::Command), + + /// Follow the given chain's finalized blocks and apply all of its extrinsics. + /// + /// This is essentially repeated calls to [`Command::ExecuteBlock`]. + /// + /// This allows the behavior of a new runtime to be inspected over a long period of time, with + /// realistic transactions coming as input. + /// + /// NOTE: this does NOT execute the offchain worker hooks of mirrored blocks. This might be + /// added in the future. + /// + /// This does not support snapshot states, and can only work with a remote chain. Upon first + /// connections, starts listening for finalized block events. Upon first block notification, it + /// initializes the state from the remote node, and starts applying that block, plus all the + /// blocks that follow, to the same growing state. + /// + /// This can only work if the block format between the remote chain and the new runtime being + /// tested has remained the same, otherwise block decoding might fail. + FollowChain(follow_chain::Command), + + /// Create a new snapshot file. + CreateSnapshot(create_snapshot::Command), } impl TryRuntimeAction { @@ -77,14 +112,19 @@ impl TryRuntimeAction { { match &self { TryRuntimeAction::OnRuntimeUpgrade(ref cmd) => { - on_runtime_upgrade::on_runtime_upgrade::( - shared.clone(), - cmd.clone(), - ) - .await + on_runtime_upgrade::run::(shared.clone(), cmd.clone()).await } TryRuntimeAction::ExecuteBlock(cmd) => { - execute_block::execute_block::(shared.clone(), cmd.clone()).await + execute_block::run::(shared.clone(), cmd.clone()).await + } + TryRuntimeAction::OffchainWorker(cmd) => { + offchain_worker::run::(shared.clone(), cmd.clone()).await + } + TryRuntimeAction::FollowChain(cmd) => { + follow_chain::run::(shared.clone(), cmd.clone()).await + } + TryRuntimeAction::CreateSnapshot(cmd) => { + create_snapshot::run::(shared.clone(), cmd.clone()).await } } } diff --git a/core/src/commands/offchain_worker.rs b/core/src/commands/offchain_worker.rs new file mode 100644 index 00000000000..8d0b2ec3860 --- /dev/null +++ b/core/src/commands/offchain_worker.rs @@ -0,0 +1,95 @@ +use std::{fmt::Debug, str::FromStr}; + +use parity_scale_codec::Encode; +use sc_executor::sp_wasm_interface::HostFunctions; +use sp_runtime::traits::{Block as BlockT, NumberFor}; +use substrate_rpc_client::{ws_client, ChainApi}; + +use crate::{ + build_executor, + commands::execute_block::next_hash_of, + full_extensions, parse, rpc_err_handler, + state::{LiveState, State}, + state_machine_call, SharedParams, LOG_TARGET, +}; + +/// Configuration for [`run`]. +#[derive(Debug, Clone, clap::Parser)] +pub struct Command { + /// The ws uri from which to fetch the header. + /// + /// If the `live` state type is being used, then this can be omitted, and is equal to whatever + /// the `state::uri` is. Only use this (with care) when combined with a snapshot. + #[arg( + long, + value_parser = parse::url + )] + pub header_ws_uri: Option, + + /// The state type to use. + #[command(subcommand)] + pub state: State, +} + +impl Command { + fn header_ws_uri(&self) -> String + where + ::Err: Debug, + { + match (&self.header_ws_uri, &self.state) { + (Some(header_ws_uri), State::Snap { .. }) => header_ws_uri.to_owned(), + (Some(header_ws_uri), State::Live { .. }) => { + log::error!(target: LOG_TARGET, "--header-uri is provided while state type is live, this will most likely lead to a nonsensical result."); + header_ws_uri.to_owned() + } + (None, State::Live(LiveState { uri, .. })) => uri.clone(), + (None, State::Snap { .. }) => { + panic!("either `--header-uri` must be provided, or state must be `live`"); + } + } + } +} + +// Runs the `offchain_worker` command. +pub(crate) async fn run( + shared: SharedParams, + command: Command, +) -> sc_cli::Result<()> +where + Block: BlockT + serde::de::DeserializeOwned, + Block::Header: serde::de::DeserializeOwned, + ::Err: Debug, + NumberFor: FromStr, + as FromStr>::Err: Debug, + HostFns: HostFunctions, +{ + let executor = build_executor(&shared); + // we first build the externalities with the remote code. + let ext = command + .state + .into_ext::(&shared, &executor, None, true) + .await?; + + let header_ws_uri = command.header_ws_uri::(); + + let rpc = ws_client(&header_ws_uri).await?; + let next_hash = next_hash_of::(&rpc, ext.block_hash).await?; + log::info!(target: LOG_TARGET, "fetching next header: {:?} ", next_hash); + + let header = ChainApi::<(), Block::Hash, Block::Header, ()>::header(&rpc, Some(next_hash)) + .await + .map_err(rpc_err_handler) + .map(|maybe_header| maybe_header.ok_or("Header does not exist"))??; + let payload = header.encode(); + + let _ = state_machine_call::( + &ext, + &executor, + "OffchainWorkerApi_offchain_worker", + &payload, + full_extensions(executor.clone()), + )?; + + log::info!(target: LOG_TARGET, "finished execution"); + Ok(()) +} diff --git a/core/src/on_runtime_upgrade.rs b/core/src/commands/on_runtime_upgrade.rs similarity index 93% rename from core/src/on_runtime_upgrade.rs rename to core/src/commands/on_runtime_upgrade.rs index cf2941f68cd..12b0898e0f6 100644 --- a/core/src/on_runtime_upgrade.rs +++ b/core/src/commands/on_runtime_upgrade.rs @@ -10,9 +10,9 @@ use crate::{ build_executor, state::State, state_machine_call_with_proof, SharedParams, LOG_TARGET, }; -/// Configurations of the [`crate::Command::OnRuntimeUpgrade`]. +/// Configuration for [`run`]. #[derive(Debug, Clone, clap::Parser)] -pub struct OnRuntimeUpgradeCmd { +pub struct Command { /// The state type to use. #[command(subcommand)] pub state: State, @@ -36,9 +36,10 @@ pub struct OnRuntimeUpgradeCmd { pub checks: UpgradeCheckSelect, } -pub(crate) async fn on_runtime_upgrade( +// Runs the `on-runtime-upgrade` command. +pub(crate) async fn run( shared: SharedParams, - command: OnRuntimeUpgradeCmd, + command: Command, ) -> sc_cli::Result<()> where Block: BlockT + serde::de::DeserializeOwned, diff --git a/core/src/lib.rs b/core/src/lib.rs index 71585363304..e0180f9db18 100644 --- a/core/src/lib.rs +++ b/core/src/lib.rs @@ -32,9 +32,6 @@ mod parse; mod shared_parameters; mod state; -pub mod execute_block; -pub mod on_runtime_upgrade; - pub(crate) const LOG_TARGET: &str = "try-runtime::cli"; /// Get the hash type of the generic `Block` from a `hash_str`. diff --git a/core/src/state.rs b/core/src/state.rs index 0c027a532fe..dffd5c76d4b 100644 --- a/core/src/state.rs +++ b/core/src/state.rs @@ -40,12 +40,12 @@ pub struct LiveState { long, value_parser = parse::hash, )] - at: Option, + pub at: Option, /// A pallet to scrape. Can be provided multiple times. If empty, entire chain state will /// be scraped. #[arg(short, long, num_args = 1..)] - pallet: Vec, + pub pallet: Vec, /// Fetch the child-keys as well. /// @@ -53,7 +53,7 @@ pub struct LiveState { /// words, if you scrape the whole state the child tree data is included out of the box. /// Otherwise, it must be enabled explicitly using this flag. #[arg(long)] - child_tree: bool, + pub child_tree: bool, } /// The source of runtime *state* to use. From e55ea4d0b892a580d72f490f0b341d845c172f8a Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Mon, 7 Aug 2023 15:32:11 +0700 Subject: [PATCH 06/44] migrate tests --- core/Cargo.toml | 15 +++++-- core/src/lib.rs | 4 +- core/tests/create_snapshot.rs | 79 +++++++++++++++++++++++++++++++++++ core/tests/execute_block.rs | 55 ++++++++++++++++++++++++ core/tests/follow_chain.rs | 43 +++++++++++++++++++ 5 files changed, 191 insertions(+), 5 deletions(-) create mode 100644 core/tests/create_snapshot.rs create mode 100644 core/tests/execute_block.rs create mode 100644 core/tests/follow_chain.rs diff --git a/core/Cargo.toml b/core/Cargo.toml index f4ec3064fcd..b2c59ac148b 100644 --- a/core/Cargo.toml +++ b/core/Cargo.toml @@ -41,7 +41,16 @@ sp-weights = { git = "https://github.com/paritytech/substrate", branch = "master substrate-rpc-client = { git = "https://github.com/paritytech/substrate", branch = "master" } +[dev-dependencies] +sc-service = { git = "https://github.com/paritytech/substrate", branch = "master" } +assert_cmd = "2.0.10" +regex = "1.7.3" +tempfile = "3.1.0" +tokio = "1.27.0" +node-primitives = { git = "https://github.com/paritytech/substrate", branch = "master" } +substrate-cli-test-utils = { git = "https://github.com/paritytech/substrate", branch = "master" } +node-template = { git = "https://github.com/paritytech/substrate", branch = "master", features = ["try-runtime"] } +node-executor = { git = "https://github.com/paritytech/substrate", branch = "master" } + [features] -cli = [ - "clap", -] +cli = ["clap"] diff --git a/core/src/lib.rs b/core/src/lib.rs index e0180f9db18..8ac30e55db8 100644 --- a/core/src/lib.rs +++ b/core/src/lib.rs @@ -29,8 +29,8 @@ use crate::shared_parameters::SharedParams; pub mod commands; #[cfg(feature = "cli")] mod parse; -mod shared_parameters; -mod state; +pub mod shared_parameters; +pub mod state; pub(crate) const LOG_TARGET: &str = "try-runtime::cli"; diff --git a/core/tests/create_snapshot.rs b/core/tests/create_snapshot.rs new file mode 100644 index 00000000000..7315863e498 --- /dev/null +++ b/core/tests/create_snapshot.rs @@ -0,0 +1,79 @@ +#![cfg(unix)] + +use std::{ + path::{Path, PathBuf}, + time::Duration, +}; + +use assert_cmd::cargo::cargo_bin; +use frame_remote_externalities::{Builder, Mode, OfflineConfig, SnapshotConfig}; +use node_primitives::{Block, Hash}; +use regex::Regex; +use substrate_cli_test_utils as common; +use tokio::process::Command; + +#[tokio::test] +async fn create_snapshot_works() { + let ws_url = "ws://localhost:45789"; + + // Spawn a dev node. + let _ = std::thread::spawn(move || { + common::start_node_without_binary(); + }); + // Wait 30 seconds to ensure the node is warmed up. + std::thread::sleep(Duration::from_secs(30)); + + // Run the command with tokio + let temp_dir = tempfile::Builder::new() + .prefix("try-runtime-cli-test-dir") + .tempdir() + .expect("Failed to create a tempdir"); + let snap_file_path = temp_dir.path().join("snapshot.snap"); + + common::run_with_timeout(Duration::from_secs(60), async move { + fn create_snapshot(ws_url: &str, snap_file: &PathBuf, at: Hash) -> tokio::process::Child { + Command::new(cargo_bin("try-runtime-cli")) + .stdout(std::process::Stdio::piped()) + .stderr(std::process::Stdio::piped()) + .arg("--runtime=existing") + .args(&["create-snapshot", format!("--uri={}", ws_url).as_str()]) + .arg(snap_file) + .args(&["--at", format!("{:?}", at).as_str()]) + .kill_on_drop(true) + .spawn() + .unwrap() + } + let block_number = 2; + let block_hash = common::block_hash(block_number, &ws_url).await.unwrap(); + + // Try to create a snapshot. + let mut snapshot_creation = create_snapshot(&ws_url, &snap_file_path, block_hash); + + let re = Regex::new(r#".*writing snapshot of (\d+) bytes to .*"#).unwrap(); + let matched = + common::wait_for_stream_pattern_match(snapshot_creation.stderr.take().unwrap(), re) + .await; + + // Assert that the snapshot creation succeded. + assert!(matched.is_ok(), "Failed to create snapshot"); + + let snapshot_is_on_disk = Path::new(&snap_file_path).exists(); + assert!(snapshot_is_on_disk, "Snapshot was not written to disk"); + + // Try and load the snapshot we have created by running `create-snapshot`. + let snapshot_loading_result = Builder::::new() + .mode(Mode::Offline(OfflineConfig { + state_snapshot: SnapshotConfig { + path: snap_file_path, + }, + })) + .build() + .await; + + assert!( + snapshot_loading_result.is_ok(), + "Snapshot couldn't be loaded" + ); + }) + .await; +} diff --git a/core/tests/execute_block.rs b/core/tests/execute_block.rs new file mode 100644 index 00000000000..e8b59d60675 --- /dev/null +++ b/core/tests/execute_block.rs @@ -0,0 +1,55 @@ +#![cfg(unix)] + +use std::time::Duration; + +use assert_cmd::cargo::cargo_bin; +use node_primitives::Hash; +use regex::Regex; +use substrate_cli_test_utils as common; +use tokio::process::Command; + +#[tokio::test] +async fn execute_block_works() { + let ws_url = "ws://localhost:45789"; + + // Spawn a dev node. + let _ = std::thread::spawn(move || { + common::start_node_without_binary(); + }); + // Wait 30 seconds to ensure the node is warmed up. + std::thread::sleep(Duration::from_secs(30)); + + common::run_with_timeout(Duration::from_secs(60), async move { + fn execute_block(ws_url: &str, at: Hash) -> tokio::process::Child { + Command::new(cargo_bin("try-runtime-cli")) + .stdout(std::process::Stdio::piped()) + .stderr(std::process::Stdio::piped()) + .arg("--runtime=existing") + .args(&["execute-block"]) + .args(&["live", format!("--uri={}", ws_url).as_str()]) + .args(&["--at", format!("{:?}", at).as_str()]) + .kill_on_drop(true) + .spawn() + .unwrap() + } + + let block_number = 1; + let block_hash = common::block_hash(block_number, &ws_url).await.unwrap(); + + // Try to execute the block. + let mut block_execution = execute_block(&ws_url, block_hash); + + // The execute-block command is actually executing the next block. + let expected_output = format!( + r#".*Block #{} successfully executed"#, + block_number.saturating_add(1) + ); + let re = Regex::new(expected_output.as_str()).unwrap(); + let matched = + common::wait_for_stream_pattern_match(block_execution.stderr.take().unwrap(), re).await; + + // Assert that the block-execution process has executed a block. + assert!(matched.is_ok()); + }) + .await +} diff --git a/core/tests/follow_chain.rs b/core/tests/follow_chain.rs new file mode 100644 index 00000000000..0b9004ba085 --- /dev/null +++ b/core/tests/follow_chain.rs @@ -0,0 +1,43 @@ +#![cfg(unix)] + +use std::time::Duration; + +use assert_cmd::cargo::cargo_bin; +use regex::Regex; +use substrate_cli_test_utils as common; +use tokio::process::Command; + +#[tokio::test] +async fn follow_chain_works() { + let ws_url = "ws://localhost:45789"; + + // Spawn a dev node. + let _ = std::thread::spawn(move || { + common::start_node_without_binary(); + }); + // Wait 30 seconds to ensure the node is warmed up. + std::thread::sleep(Duration::from_secs(30)); + + common::run_with_timeout(Duration::from_secs(60), async move { + fn start_follow(ws_url: &str) -> tokio::process::Child { + Command::new(cargo_bin("try-runtime-cli")) + .stdout(std::process::Stdio::piped()) + .stderr(std::process::Stdio::piped()) + .arg("--runtime=existing") + .args(&["follow-chain", format!("--uri={}", ws_url).as_str()]) + .kill_on_drop(true) + .spawn() + .unwrap() + } + + // Kick off the follow-chain process and wait for it to process at least 3 blocks. + let mut follow = start_follow(&ws_url); + let re = Regex::new(r#".*executed block ([3-9]|[1-9]\d+).*"#).unwrap(); + let matched = + common::wait_for_stream_pattern_match(follow.stderr.take().unwrap(), re).await; + + // Assert that the follow-chain process has followed at least 3 blocks. + assert!(matched.is_ok()); + }) + .await +} From 552655b5f9b6a355a8ad28d6be8cc46f9332f340 Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Mon, 7 Aug 2023 15:39:16 +0700 Subject: [PATCH 07/44] test rust docs action --- .github/workflows/rust-docs.yaml | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 .github/workflows/rust-docs.yaml diff --git a/.github/workflows/rust-docs.yaml b/.github/workflows/rust-docs.yaml new file mode 100644 index 00000000000..2380d1d3b7b --- /dev/null +++ b/.github/workflows/rust-docs.yaml @@ -0,0 +1,32 @@ +name: Rust Docs to GitHub Pages + +on: + push: + branches: + - liam-v0.1.0 + +jobs: + docs: + runs-on: ubuntu-latest + + steps: + - name: Checkout code + uses: actions/checkout@v2 + + - name: Setup Rust + uses: actions-rs/toolchain@v1 + with: + profile: minimal + toolchain: stable + override: true + + - name: Build docs + uses: actions-rs/cargo@v1 + with: + command: doc + + - name: Deploy to GitHub Pages + uses: peaceiris/actions-gh-pages@v3 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + publish_dir: ./target/doc From 13e1bdce84905363422bd5a80992981702eeac73 Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Mon, 7 Aug 2023 15:49:56 +0700 Subject: [PATCH 08/44] install protoc --- .github/workflows/rust-docs.yaml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/.github/workflows/rust-docs.yaml b/.github/workflows/rust-docs.yaml index 2380d1d3b7b..808a272baf0 100644 --- a/.github/workflows/rust-docs.yaml +++ b/.github/workflows/rust-docs.yaml @@ -13,6 +13,14 @@ jobs: - name: Checkout code uses: actions/checkout@v2 + - name: Install Rust Toolchain + uses: actions-rs/toolchain@v1 + + - name: Install Protoc + uses: arduino/setup-protoc@v1 + with: + version: "3.6.1" + - name: Setup Rust uses: actions-rs/toolchain@v1 with: From ac51c9636eadaf81ceaef923680c651edb33fadb Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Mon, 7 Aug 2023 15:51:19 +0700 Subject: [PATCH 09/44] add rusttoolchain --- rust-toolchain | 1 + 1 file changed, 1 insertion(+) create mode 100644 rust-toolchain diff --git a/rust-toolchain b/rust-toolchain new file mode 100644 index 00000000000..832e9afb6c1 --- /dev/null +++ b/rust-toolchain @@ -0,0 +1 @@ +1.70.0 From 17a1f8793415f0357958432941e4f1c6bd716392 Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Mon, 7 Aug 2023 15:59:41 +0700 Subject: [PATCH 10/44] remove rust-toolchain --- .github/workflows/rust-checks.yaml | 5 +---- .github/workflows/rust-docs.yaml | 3 --- rust-toolchain | 1 - 3 files changed, 1 insertion(+), 8 deletions(-) delete mode 100644 rust-toolchain diff --git a/.github/workflows/rust-checks.yaml b/.github/workflows/rust-checks.yaml index e4ee9949a7c..ec14741fc66 100644 --- a/.github/workflows/rust-checks.yaml +++ b/.github/workflows/rust-checks.yaml @@ -17,13 +17,10 @@ jobs: - name: Checkout source code uses: actions/checkout@v3 - - name: Install Rust Toolchain - uses: actions-rs/toolchain@v1 - - name: Install Protoc uses: arduino/setup-protoc@v1 with: - version: '3.6.1' + version: "3.6.1" - name: Install clippy and fmt run: rustup component add clippy rustfmt diff --git a/.github/workflows/rust-docs.yaml b/.github/workflows/rust-docs.yaml index 808a272baf0..b6bb0b00caf 100644 --- a/.github/workflows/rust-docs.yaml +++ b/.github/workflows/rust-docs.yaml @@ -13,9 +13,6 @@ jobs: - name: Checkout code uses: actions/checkout@v2 - - name: Install Rust Toolchain - uses: actions-rs/toolchain@v1 - - name: Install Protoc uses: arduino/setup-protoc@v1 with: diff --git a/rust-toolchain b/rust-toolchain deleted file mode 100644 index 832e9afb6c1..00000000000 --- a/rust-toolchain +++ /dev/null @@ -1 +0,0 @@ -1.70.0 From 9ec0873d570f36004fcfe138082c3695ad828413 Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Mon, 7 Aug 2023 16:03:10 +0700 Subject: [PATCH 11/44] add licence --- core/src/commands/create_snapshot.rs | 17 +++++++++++++++++ core/src/commands/execute_block.rs | 17 +++++++++++++++++ core/src/commands/follow_chain.rs | 17 +++++++++++++++++ core/src/commands/mod.rs | 17 +++++++++++++++++ core/src/commands/offchain_worker.rs | 17 +++++++++++++++++ core/src/commands/on_runtime_upgrade.rs | 17 +++++++++++++++++ core/src/lib.rs | 17 ++++++++++++++++- core/src/parse.rs | 17 +++++++++++++++++ core/src/shared_parameters.rs | 17 +++++++++++++++++ core/src/state.rs | 17 +++++++++++++++++ core/tests/create_snapshot.rs | 17 +++++++++++++++++ core/tests/execute_block.rs | 17 +++++++++++++++++ core/tests/follow_chain.rs | 17 +++++++++++++++++ 13 files changed, 220 insertions(+), 1 deletion(-) diff --git a/core/src/commands/create_snapshot.rs b/core/src/commands/create_snapshot.rs index d5ba5a58448..92f48b8b54e 100644 --- a/core/src/commands/create_snapshot.rs +++ b/core/src/commands/create_snapshot.rs @@ -1,3 +1,20 @@ +// This file is part of try-runtime-cli. + +// Copyright (C) Parity Technologies (UK) Ltd. +// SPDX-License-Identifier: Apache-2.0 + +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + use std::{fmt::Debug, str::FromStr}; use sc_executor::sp_wasm_interface::HostFunctions; diff --git a/core/src/commands/execute_block.rs b/core/src/commands/execute_block.rs index 78c6220d633..83dd32ee064 100644 --- a/core/src/commands/execute_block.rs +++ b/core/src/commands/execute_block.rs @@ -1,3 +1,20 @@ +// This file is part of try-runtime-cli. + +// Copyright (C) Parity Technologies (UK) Ltd. +// SPDX-License-Identifier: Apache-2.0 + +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + use std::{fmt::Debug, str::FromStr}; use parity_scale_codec::Encode; diff --git a/core/src/commands/follow_chain.rs b/core/src/commands/follow_chain.rs index a5c043d58c2..97dc1ea08b6 100644 --- a/core/src/commands/follow_chain.rs +++ b/core/src/commands/follow_chain.rs @@ -1,3 +1,20 @@ +// This file is part of try-runtime-cli. + +// Copyright (C) Parity Technologies (UK) Ltd. +// SPDX-License-Identifier: Apache-2.0 + +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + use std::{fmt::Debug, str::FromStr}; use parity_scale_codec::{Decode, Encode}; diff --git a/core/src/commands/mod.rs b/core/src/commands/mod.rs index 76e63095c1e..eb77c99c401 100644 --- a/core/src/commands/mod.rs +++ b/core/src/commands/mod.rs @@ -1,3 +1,20 @@ +// This file is part of try-runtime-cli. + +// Copyright (C) Parity Technologies (UK) Ltd. +// SPDX-License-Identifier: Apache-2.0 + +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + use std::{fmt::Debug, str::FromStr}; use frame_try_runtime::UpgradeCheckSelect; diff --git a/core/src/commands/offchain_worker.rs b/core/src/commands/offchain_worker.rs index 8d0b2ec3860..673e0f5ce3a 100644 --- a/core/src/commands/offchain_worker.rs +++ b/core/src/commands/offchain_worker.rs @@ -1,3 +1,20 @@ +// This file is part of try-runtime-cli. + +// Copyright (C) Parity Technologies (UK) Ltd. +// SPDX-License-Identifier: Apache-2.0 + +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + use std::{fmt::Debug, str::FromStr}; use parity_scale_codec::Encode; diff --git a/core/src/commands/on_runtime_upgrade.rs b/core/src/commands/on_runtime_upgrade.rs index 12b0898e0f6..baac1dc5f44 100644 --- a/core/src/commands/on_runtime_upgrade.rs +++ b/core/src/commands/on_runtime_upgrade.rs @@ -1,3 +1,20 @@ +// This file is part of try-runtime-cli. + +// Copyright (C) Parity Technologies (UK) Ltd. +// SPDX-License-Identifier: Apache-2.0 + +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + use std::{fmt::Debug, str::FromStr}; use frame_try_runtime::UpgradeCheckSelect; diff --git a/core/src/lib.rs b/core/src/lib.rs index 8ac30e55db8..ed6eb77b7d1 100644 --- a/core/src/lib.rs +++ b/core/src/lib.rs @@ -1,4 +1,19 @@ -#![allow(unused)] +// This file is part of try-runtime-cli. + +// Copyright (C) Parity Technologies (UK) Ltd. +// SPDX-License-Identifier: Apache-2.0 + +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. use std::{fmt::Debug, path::PathBuf, str::FromStr}; diff --git a/core/src/parse.rs b/core/src/parse.rs index 1deb9da8fa4..60acbdc9046 100644 --- a/core/src/parse.rs +++ b/core/src/parse.rs @@ -1,3 +1,20 @@ +// This file is part of try-runtime-cli. + +// Copyright (C) Parity Technologies (UK) Ltd. +// SPDX-License-Identifier: Apache-2.0 + +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + use sp_version::StateVersion; pub(crate) fn hash(block_hash: &str) -> Result { diff --git a/core/src/shared_parameters.rs b/core/src/shared_parameters.rs index a5d4ad7c554..0ad0cee144e 100644 --- a/core/src/shared_parameters.rs +++ b/core/src/shared_parameters.rs @@ -1,3 +1,20 @@ +// This file is part of try-runtime-cli. + +// Copyright (C) Parity Technologies (UK) Ltd. +// SPDX-License-Identifier: Apache-2.0 + +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + use std::{path::PathBuf, str::FromStr}; use sc_cli::{WasmExecutionMethod, WasmtimeInstantiationStrategy}; diff --git a/core/src/state.rs b/core/src/state.rs index dffd5c76d4b..5cf3391162d 100644 --- a/core/src/state.rs +++ b/core/src/state.rs @@ -1,3 +1,20 @@ +// This file is part of try-runtime-cli. + +// Copyright (C) Parity Technologies (UK) Ltd. +// SPDX-License-Identifier: Apache-2.0 + +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + use std::{fmt::Debug, path::PathBuf, str::FromStr}; use frame_remote_externalities::{ diff --git a/core/tests/create_snapshot.rs b/core/tests/create_snapshot.rs index 7315863e498..26953522e24 100644 --- a/core/tests/create_snapshot.rs +++ b/core/tests/create_snapshot.rs @@ -1,3 +1,20 @@ +// This file is part of try-runtime-cli. + +// Copyright (C) Parity Technologies (UK) Ltd. +// SPDX-License-Identifier: Apache-2.0 + +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + #![cfg(unix)] use std::{ diff --git a/core/tests/execute_block.rs b/core/tests/execute_block.rs index e8b59d60675..0b8b79d5913 100644 --- a/core/tests/execute_block.rs +++ b/core/tests/execute_block.rs @@ -1,3 +1,20 @@ +// This file is part of try-runtime-cli. + +// Copyright (C) Parity Technologies (UK) Ltd. +// SPDX-License-Identifier: Apache-2.0 + +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + #![cfg(unix)] use std::time::Duration; diff --git a/core/tests/follow_chain.rs b/core/tests/follow_chain.rs index 0b9004ba085..8d3badf7f1d 100644 --- a/core/tests/follow_chain.rs +++ b/core/tests/follow_chain.rs @@ -1,3 +1,20 @@ +// This file is part of try-runtime-cli. + +// Copyright (C) Parity Technologies (UK) Ltd. +// SPDX-License-Identifier: Apache-2.0 + +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + #![cfg(unix)] use std::time::Duration; From d2b13efbacfb9742c0fe2d5b40f17ff52ba4095f Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Mon, 7 Aug 2023 16:10:24 +0700 Subject: [PATCH 12/44] lint --- core/src/commands/mod.rs | 3 +-- core/src/lib.rs | 1 - 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/core/src/commands/mod.rs b/core/src/commands/mod.rs index eb77c99c401..bb6b94cf59c 100644 --- a/core/src/commands/mod.rs +++ b/core/src/commands/mod.rs @@ -17,7 +17,6 @@ use std::{fmt::Debug, str::FromStr}; -use frame_try_runtime::UpgradeCheckSelect; use sc_executor::sp_wasm_interface::HostFunctions; use sp_core::H256; use sp_runtime::{ @@ -25,7 +24,7 @@ use sp_runtime::{ DeserializeOwned, }; -use crate::{parse, shared_parameters::SharedParams, state::State}; +use crate::shared_parameters::SharedParams; pub mod create_snapshot; pub mod execute_block; diff --git a/core/src/lib.rs b/core/src/lib.rs index ed6eb77b7d1..0ca3bf203ee 100644 --- a/core/src/lib.rs +++ b/core/src/lib.rs @@ -23,7 +23,6 @@ use sc_cli::{execution_method_from_cli, RuntimeVersion}; use sc_executor::{ sp_wasm_interface::HostFunctions, HeapAllocStrategy, WasmExecutor, DEFAULT_HEAP_ALLOC_STRATEGY, }; -use sp_api::RuntimeApiInfo; use sp_core::{ hexdisplay::HexDisplay, offchain::{ From cfda821da876902db1359c7ac2186ffb9376f37c Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Mon, 7 Aug 2023 16:37:33 +0700 Subject: [PATCH 13/44] add toolchain --- .github/workflows/rust-checks.yaml | 3 +++ .github/workflows/rust-docs.yaml | 3 +++ rust-toolchain.toml | 14 ++++++++++++++ 3 files changed, 20 insertions(+) create mode 100644 rust-toolchain.toml diff --git a/.github/workflows/rust-checks.yaml b/.github/workflows/rust-checks.yaml index ec14741fc66..30d3f41c93b 100644 --- a/.github/workflows/rust-checks.yaml +++ b/.github/workflows/rust-checks.yaml @@ -17,6 +17,9 @@ jobs: - name: Checkout source code uses: actions/checkout@v3 + - name: Install Rust Toolchain + uses: actions-rs/toolchain@v1 + - name: Install Protoc uses: arduino/setup-protoc@v1 with: diff --git a/.github/workflows/rust-docs.yaml b/.github/workflows/rust-docs.yaml index b6bb0b00caf..808a272baf0 100644 --- a/.github/workflows/rust-docs.yaml +++ b/.github/workflows/rust-docs.yaml @@ -13,6 +13,9 @@ jobs: - name: Checkout code uses: actions/checkout@v2 + - name: Install Rust Toolchain + uses: actions-rs/toolchain@v1 + - name: Install Protoc uses: arduino/setup-protoc@v1 with: diff --git a/rust-toolchain.toml b/rust-toolchain.toml new file mode 100644 index 00000000000..ed72c967f38 --- /dev/null +++ b/rust-toolchain.toml @@ -0,0 +1,14 @@ +[toolchain] +channel = "stable" +components = [ + "cargo", + "clippy", + "rust-analyzer", + "rust-src", + "rust-std", + "rustc-dev", + "rustc", + "rustfmt", +] +targets = [ "wasm32-unknown-unknown" ] +profile = "minimal" From 0061269e8a44d40d0277fa0eee1e34bade26523c Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Mon, 7 Aug 2023 16:46:11 +0700 Subject: [PATCH 14/44] try to fix github actions build --- .github/workflows/rust-checks.yaml | 6 +++--- .github/workflows/rust-docs.yaml | 6 +++--- cli/Cargo.toml | 1 + 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/.github/workflows/rust-checks.yaml b/.github/workflows/rust-checks.yaml index 30d3f41c93b..85ebcc0e4b8 100644 --- a/.github/workflows/rust-checks.yaml +++ b/.github/workflows/rust-checks.yaml @@ -17,9 +17,6 @@ jobs: - name: Checkout source code uses: actions/checkout@v3 - - name: Install Rust Toolchain - uses: actions-rs/toolchain@v1 - - name: Install Protoc uses: arduino/setup-protoc@v1 with: @@ -28,6 +25,9 @@ jobs: - name: Install clippy and fmt run: rustup component add clippy rustfmt + - name: Add wasm32-unknown-unknown target + run: rustup target add wasm32-unknown-unknown + - name: Run Format Checks uses: actions-rs/cargo@v1 with: diff --git a/.github/workflows/rust-docs.yaml b/.github/workflows/rust-docs.yaml index 808a272baf0..0f6a59f0f72 100644 --- a/.github/workflows/rust-docs.yaml +++ b/.github/workflows/rust-docs.yaml @@ -13,9 +13,6 @@ jobs: - name: Checkout code uses: actions/checkout@v2 - - name: Install Rust Toolchain - uses: actions-rs/toolchain@v1 - - name: Install Protoc uses: arduino/setup-protoc@v1 with: @@ -28,6 +25,9 @@ jobs: toolchain: stable override: true + - name: Add wasm32-unknwon-unknown target + run: rustup target add wasm32-unknown-unknown + - name: Build docs uses: actions-rs/cargo@v1 with: diff --git a/cli/Cargo.toml b/cli/Cargo.toml index 663ef57b6d6..1645073e3df 100644 --- a/cli/Cargo.toml +++ b/cli/Cargo.toml @@ -22,6 +22,7 @@ parity-scale-codec = { version = "3.6.1", features = ["derive"] } tokio = { version = "1.25.0", features = ["full"] } # Substrate +frame-try-runtime = { git = "https://github.com/paritytech/substrate", branch = "master", features=["try-runtime"] } sc-executor = { git = "https://github.com/paritytech/substrate", branch = "master" } sp-io = { git = "https://github.com/paritytech/substrate", branch = "master" } sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "master" } From afd1fb7abff993be62a114e831640b1804ede7fc Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Mon, 7 Aug 2023 18:18:47 +0700 Subject: [PATCH 15/44] docs --- README.md | 15 +- cli/main.rs | 274 ++++++++++++++++++++++++ core/src/commands/create_snapshot.rs | 5 +- core/src/commands/execute_block.rs | 5 +- core/src/commands/follow_chain.rs | 5 +- core/src/commands/mod.rs | 26 ++- core/src/commands/offchain_worker.rs | 5 +- core/src/commands/on_runtime_upgrade.rs | 5 +- core/src/state.rs | 7 +- 9 files changed, 308 insertions(+), 39 deletions(-) diff --git a/README.md b/README.md index 4c6f1d46dce..64258e5be8d 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,15 @@ # try-runtime-cli -demo repo to experiment with moving the CLI out + +Substrate’s testing framework for the power users. + +👉 [Documentation](https://paritytech.github.io/try-runtime-cli) + +## Usage + +```bash +$ git clone git@github.com:paritytech/try-runtime-cli.git +$ cd try-runtime-cli +$ cargo build --release +$ ./target/release/try-runtime-cli --help +$ ./target/release/try-runtime-cli on-runtime-upgrade --help +``` diff --git a/cli/main.rs b/cli/main.rs index f9eaf14ad10..8d394b0aa44 100644 --- a/cli/main.rs +++ b/cli/main.rs @@ -1,9 +1,283 @@ +// This file is part of try-runtime-cli. + +// Copyright (C) Parity Technologies (UK) Ltd. +// SPDX-License-Identifier: Apache-2.0 + +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +//! # Try-runtime +//! +//! Substrate's ultimate testing framework for the power users. +//! +//! > As the name suggests, `try-runtime` is a detailed testing framework that gives you a lot of +//! control over what is being executed in which environment. It is recommended that user's first +//! familiarize themselves with substrate in depth, particularly the execution model. It is critical +//! to deeply understand how the wasm/client/runtime interactions, and the runtime apis work in the +//! substrate runtime, before commencing to working with `try-runtime`. +//! +//! #### Resources +//! +//! Some resources about the above: +//! +//! 1. +//! 2. +//! 3. +//! +//! --- +//! +//! ## Background Knowledge +//! +//! The basis of all try-runtime commands is the same: connect to a live node, scrape its *state* +//! and put it inside a `TestExternalities`, then call into a *specific runtime-api* using the given +//! state and some *runtime*. +//! +//! Alternatively, the state could come from a snapshot file. +//! +//! All of the variables in the above statement are made *italic*. Let's look at each of them: +//! +//! 1. **State** is the key-value pairs of data that comprise the canonical information that any +//! blockchain is keeping. A state can be full (all key-value pairs), or be partial (only pairs +//! related to some pallets/prefixes). Moreover, some keys are especial and are not related to +//! specific pallets, known as `well_known_keys` in substrate. The most important of these is the +//! `:CODE:` key, which contains the code used for execution, when wasm execution is chosen. +//! +//! 2. *A runtime-api* call is a call into a function defined in the runtime, *on top of a given +//! state*. Each subcommand of `try-runtime` utilizes a specific *runtime-api*. +//! +//! 3. Finally, the **runtime** is the actual code that is used to execute the aforementioned +//! runtime-api. Everything in this crate assumes wasm execution, which means the runtime that +//! you use is the one stored onchain, namely under the `:CODE:` key. +//! +//! To recap, a typical try-runtime command does the following: +//! +//! 1. Download the state of a live chain, and write to an `externalities`. +//! 2. Overwrite the `:CODE:` with a given wasm blob +//! 3. Test some functionality via calling a runtime-api. +//! +//! ## Usage +//! +//! To use any of the provided commands, [`SharedParams`] must be provided. The most important of +//! which being [`SharedParams::runtime`], which specifies which runtime to use. Furthermore, +//! [`SharedParams::overwrite_state_version`] can be used to alter the state-version (see +//! for more info). +//! +//! Then, the specific command has to be specified. See [`Action`] for more information about each +//! command's specific customization flags, and assumptions regarding the runtime being used. +//! +//! Said briefly, this CLI is capable of executing: +//! +//! * [`Action::OnRuntimeUpgrade`]: execute all the `on_runtime_upgrade` hooks. +//! * [`Action::ExecuteBlock`]: re-execute the given block. +//! * [`Action::OffchainWorker`]: re-execute the given block's offchain worker code path. +//! * [`Action::FollowChain`]: continuously execute the blocks of a remote chain on top of a given +//! runtime. +//! * [`Action::CreateSnapshot`]: Create a snapshot file from a remote node. +//! +//! Finally, To make sure there are no errors regarding this, always run any `try-runtime` command +//! with `executor=trace` logging targets, which will specify which runtime is being used per api +//! call. Moreover, `remote-ext`, `try-runtime` and `runtime` logs targets will also be useful. +//! +//! ## Spec name check +//! +//! A common pitfall is that you might be running some test on top of the state of chain `x`, with +//! the runtime of chain `y`. To avoid this all commands do a spec-name check before executing +//! anything by default. This will check the, if any alterations are being made to the `:CODE:`, +//! then the spec names match. The spec versions are warned, but are not mandated to match. +//! +//! > If anything, in most cases, we expect spec-versions to NOT match, because try-runtime is all +//! > about testing unreleased runtimes. +//! +//! ## Note on signature and state-root checks +//! +//! All of the commands calling into `TryRuntime_execute_block` ([`Action::ExecuteBlock`] and +//! [`Action::FollowChain`]) disable both state root and signature checks. This is because in 99% +//! of the cases, the runtime that is being tested is different from the one that is stored in the +//! canonical chain state. This implies: +//! +//! 1. the state root will NEVER match, because `:CODE:` is different between the two. +//! 2. replaying all transactions will fail, because the spec-version is part of the transaction +//! signature. +//! +//! ## Best Practices +//! +//! Try-runtime is all about battle-testing unreleased runtime. The following list of suggestions +//! help developers maximize the testing coverage and make base use of `try-runtime`. +//! +//! #### Adding pre/post hooks +//! +//! One of the gems that come only in the `try-runtime` feature flag is the `pre_upgrade` and +//! `post_upgrade` hooks for `OnRuntimeUpgrade`. This trait is implemented either inside the pallet, +//! or manually in a runtime, to define a migration. In both cases, these functions can be added, +//! given the right flag: +//! +//! ```ignore +//! #[cfg(feature = "try-runtime")] +//! fn pre_upgrade() -> Result, TryRuntimeError> {} +//! +//! #[cfg(feature = "try-runtime")] +//! fn post_upgrade(state: Vec) -> Result<(), TryRuntimeError> {} +//! ``` +//! +//! (The pallet macro syntax will support this simply as a part of `#[pallet::hooks]`). +//! +//! These hooks allow you to execute some code, only within the `on-runtime-upgrade` command, before +//! and after the migration. Moreover, `pre_upgrade` can return a `Vec` that contains arbitrary +//! encoded data (usually some pre-upgrade state) which will be passed to `post_upgrade` after +//! upgrading and used for post checking. +//! +//! ## State Consistency +//! +//! Similarly, each pallet can expose a function in `#[pallet::hooks]` section as follows: +//! +//! ```ignore +//! #[cfg(feature = "try-runtime")] +//! fn try_state(_: BlockNumber) -> Result<(), TryRuntimeError> {} +//! ``` +//! +//! which is called on numerous code paths in the try-runtime tool. These checks should ensure that +//! the state of the pallet is consistent and correct. See `frame_support::try_runtime::TryState` +//! for more info. +//! +//! #### Logging +//! +//! It is super helpful to make sure your migration code uses logging (always with a `runtime` log +//! target prefix, e.g. `runtime::balance`) and state exactly at which stage it is, and what it is +//! doing. +//! +//! #### Guarding migrations +//! +//! Always make sure that any migration code is guarded either by `StorageVersion`, or by some +//! custom storage item, so that it is NEVER executed twice, even if the code lives in two +//! consecutive runtimes. +//! +//! ## Examples +//! +//! For the following examples, we assume the existence of the following: +//! +//! 1. a substrate node compiled with `--feature try-runtime`, called `substrate`. This will be +//! the running node that you connect to, and provide a wasm blob that has try-runtime +//! functionality enabled. +//! 2. a `try-runtime-cli` binary. +//! +//! ```bash +//! # this is like your running deployed node. +//! cargo build --features try-runtime --release && cp target/release/substrate . +//! ``` +//! +//! > The above example is with `substrate`'s `kitchensink-runtime`, but is applicable to any +//! > substrate-based chain. +//! +//! * Run the migrations of a given runtime on top of a live state. +//! +//! ```bash +//! # assuming there's `./substrate --dev --tmp --ws-port 9999` or similar running. +//! ./try-runtime-cli \ +//! --runtime /path-to-substrate/target/release/wbuild/my-runtime.wasm \ +//! on-runtime-upgrade \ +//! live --uri ws://localhost:9999 +//! ``` +//! +//! * Same as the previous one, but run it at specific block number's state. This means that this +//! block hash's state shall not yet have been pruned in `rpc.polkadot.io`. +//! +//! ```bash +//! ./try-runtime-cli \ +//! --runtime /path-to-substrate/target/release/wbuild/my-runtime.wasm \ +//! on-runtime-upgrade \ +//! live --uri ws://localhost:9999 \ +//! # replace with your desired block hash! +//! --at 0xa1b16c1efd889a9f17375ec4dd5c1b4351a2be17fa069564fced10d23b9b3836 +//! ``` +//! +//! * Now, let's use a snapshot file. First, we create the snapshot: +//! +//! ```bash +//! ./try-runtime-cli --runtime existing create-snapshot --uri ws://localhost:9999 my-snapshot.snap +//! 2022-12-13 10:28:17.516 INFO main remote-ext: since no at is provided, setting it to latest finalized head, 0xe7d0b614dfe89af65b33577aae46a6f958c974bf52f8a5e865a0f4faeb578d22 +//! 2022-12-13 10:28:17.516 INFO main remote-ext: since no prefix is filtered, the data for all pallets will be downloaded +//! 2022-12-13 10:28:17.550 INFO main remote-ext: writing snapshot of 1611464 bytes to "node-268@latest.snap" +//! 2022-12-13 10:28:17.551 INFO main remote-ext: initialized state externalities with storage root 0x925e4e95de4c08474fb7f976c4472fa9b8a1091619cd7820a793bf796ee6d932 and state_version V1 +//! ``` +//! +//! > Note that the snapshot contains the `existing` runtime, which does not have the correct +//! > `try-runtime` feature. In the following commands, we still need to overwrite the runtime. +//! +//! Then, we can use it to have the same command as before, `on-runtime-upgrade` +//! +//! ```bash +//! ./try-runtime-cli \ +//! --runtime /path-to-substrate/target/release/wbuild/my-runtime.wasm \ +//! on-runtime-upgrade \ +//! snap -s my-snapshot.snap +//! ``` +//! +//! * Execute the latest finalized block with the given runtime. +//! +//! ```bash +//! ./try-runtime-cli \ +//! --runtime /path-to-substrate/target/release/wbuild/my-runtime.wasm \ +//! execute-block live \ +//! --uri ws://localhost:9999 +//! ``` +//! +//! This can still be customized at a given block with `--at`. If you want to use a snapshot, you +//! can still use `--block-ws-uri` to provide a node form which the block data can be fetched. +//! +//! Moreover, this runs the `frame_support::try_runtime::TryState` hooks as well. The hooks to run +//! can be customized with the `--try-state`. For example: +//! +//! ```bash +//! ./try-runtime-cli \ +//! --runtime /path-to-substrate/target/release/wbuild/my-runtime.wasm \ +//! execute-block \ +//! --try-state System,Staking \ +//! live \ +//! --uri ws://localhost:9999 \ +//! --pallet System Staking +//! ``` +//! +//! Will only run the `try-state` of the two given pallets. When running `try-state` against +//! some real chain data it can take a long time for the command to execute since it has to +//! query all the key-value pairs. In scenarios like above where we only want to run the +//! `try-state` for some specific pallets, we can use the `--pallet` option to specify from +//! which pallets we want to query the state. This will greatly decrease the execution time. +//! +//! See [`TryStateSelect`] for more information. +//! +//! * Follow our live chain's blocks using `follow-chain`, whilst running the try-state of 3 pallets +//! in a round robin fashion +//! +//! ```bash +//! ./try-runtime-cli \ +//! --runtime /path-to-substrate/target/release/wbuild/my-runtime.wasm \ +//! follow-chain \ +//! --uri ws://localhost:9999 \ +//! --try-state rr-3 +//! ``` + use std::env; use clap::Parser; +#[allow(unused_imports)] // used in doc generation +use frame_try_runtime::TryStateSelect; use node_executor::ExecutorDispatch; use node_primitives::Block; use try_runtime_core::commands::TryRuntime; +#[allow(unused_imports)] // used in doc generation +use try_runtime_core::{ + commands::Action, + shared_parameters::{Runtime, SharedParams}, +}; fn init_env() { if env::var(env_logger::DEFAULT_FILTER_ENV).is_err() { diff --git a/core/src/commands/create_snapshot.rs b/core/src/commands/create_snapshot.rs index 92f48b8b54e..51af793b2d3 100644 --- a/core/src/commands/create_snapshot.rs +++ b/core/src/commands/create_snapshot.rs @@ -41,10 +41,7 @@ pub struct Command { } /// Runs the `create_snapshot` command. -pub(crate) async fn run( - shared: SharedParams, - command: Command, -) -> sc_cli::Result<()> +pub async fn run(shared: SharedParams, command: Command) -> sc_cli::Result<()> where Block: BlockT + serde::de::DeserializeOwned, Block::Hash: serde::de::DeserializeOwned, diff --git a/core/src/commands/execute_block.rs b/core/src/commands/execute_block.rs index 83dd32ee064..a64ff7d3069 100644 --- a/core/src/commands/execute_block.rs +++ b/core/src/commands/execute_block.rs @@ -88,10 +88,7 @@ impl Command { } // Runs the `execute_block` command. -pub(crate) async fn run( - shared: SharedParams, - command: Command, -) -> sc_cli::Result<()> +pub async fn run(shared: SharedParams, command: Command) -> sc_cli::Result<()> where Block: BlockT + serde::de::DeserializeOwned, ::Err: Debug, diff --git a/core/src/commands/follow_chain.rs b/core/src/commands/follow_chain.rs index 97dc1ea08b6..83720a20ec3 100644 --- a/core/src/commands/follow_chain.rs +++ b/core/src/commands/follow_chain.rs @@ -84,10 +84,7 @@ async fn start_subscribing( - shared: SharedParams, - command: Command, -) -> sc_cli::Result<()> +pub async fn run(shared: SharedParams, command: Command) -> sc_cli::Result<()> where Block: BlockT + DeserializeOwned, Block::Header: DeserializeOwned, diff --git a/core/src/commands/mod.rs b/core/src/commands/mod.rs index bb6b94cf59c..99dc8a3fbfe 100644 --- a/core/src/commands/mod.rs +++ b/core/src/commands/mod.rs @@ -40,7 +40,7 @@ pub struct TryRuntime { pub shared: SharedParams, #[command(subcommand)] - pub action: TryRuntimeAction, + pub action: Action, } impl TryRuntime { @@ -61,15 +61,14 @@ impl TryRuntime { /// Possible actions of `try-runtime`. #[derive(Debug, Clone, clap::Subcommand)] -pub enum TryRuntimeAction { +pub enum Action { /// Execute the migrations of the given runtime /// /// This uses a custom runtime api call, namely "TryRuntime_on_runtime_upgrade". The code path /// only triggers all of the `on_runtime_upgrade` hooks in the runtime, and optionally /// `try_state`. /// - /// See [`frame_try_runtime::TryRuntime`] and [`on_runtime_upgrade::OnRuntimeUpgradeCmd`] for - /// more information. + /// See [`TryRuntime`] and [`on_runtime_upgrade::Command`] for more information. OnRuntimeUpgrade(on_runtime_upgrade::Command), /// Executes the given block against some state. @@ -78,8 +77,7 @@ pub enum TryRuntimeAction { /// as state-root and signature checks are always disabled, and additional checks like /// `try-state` can be enabled. /// - /// See [`frame_try_runtime::TryRuntime`] and [`execute_block::ExecuteBlockCmd`] for more - /// information. + /// See [`TryRuntime`] and [`execute_block::Command`] for more information. ExecuteBlock(execute_block::Command), /// Executes *the offchain worker hooks* of a given block against some state. @@ -87,13 +85,13 @@ pub enum TryRuntimeAction { /// This executes the same runtime api as normal block import, namely /// `OffchainWorkerApi_offchain_worker`. /// - /// See [`frame_try_runtime::TryRuntime`] and [`commands::offchain_worker::OffchainWorkerCmd`] + /// See [`frame_try_runtime::TryRuntime`] and [`offchain_worker::Command`] /// for more information. OffchainWorker(offchain_worker::Command), /// Follow the given chain's finalized blocks and apply all of its extrinsics. /// - /// This is essentially repeated calls to [`Command::ExecuteBlock`]. + /// This is essentially repeated calls to [`Action::ExecuteBlock`]. /// /// This allows the behavior of a new runtime to be inspected over a long period of time, with /// realistic transactions coming as input. @@ -114,7 +112,7 @@ pub enum TryRuntimeAction { CreateSnapshot(create_snapshot::Command), } -impl TryRuntimeAction { +impl Action { pub async fn run(&self, shared: &SharedParams) -> sc_cli::Result<()> where Block: BlockT + DeserializeOwned, @@ -127,19 +125,19 @@ impl TryRuntimeAction { HostFns: HostFunctions, { match &self { - TryRuntimeAction::OnRuntimeUpgrade(ref cmd) => { + Action::OnRuntimeUpgrade(ref cmd) => { on_runtime_upgrade::run::(shared.clone(), cmd.clone()).await } - TryRuntimeAction::ExecuteBlock(cmd) => { + Action::ExecuteBlock(cmd) => { execute_block::run::(shared.clone(), cmd.clone()).await } - TryRuntimeAction::OffchainWorker(cmd) => { + Action::OffchainWorker(cmd) => { offchain_worker::run::(shared.clone(), cmd.clone()).await } - TryRuntimeAction::FollowChain(cmd) => { + Action::FollowChain(cmd) => { follow_chain::run::(shared.clone(), cmd.clone()).await } - TryRuntimeAction::CreateSnapshot(cmd) => { + Action::CreateSnapshot(cmd) => { create_snapshot::run::(shared.clone(), cmd.clone()).await } } diff --git a/core/src/commands/offchain_worker.rs b/core/src/commands/offchain_worker.rs index 673e0f5ce3a..468d2ec04ad 100644 --- a/core/src/commands/offchain_worker.rs +++ b/core/src/commands/offchain_worker.rs @@ -68,10 +68,7 @@ impl Command { } // Runs the `offchain_worker` command. -pub(crate) async fn run( - shared: SharedParams, - command: Command, -) -> sc_cli::Result<()> +pub async fn run(shared: SharedParams, command: Command) -> sc_cli::Result<()> where Block: BlockT + serde::de::DeserializeOwned, Block::Header: serde::de::DeserializeOwned, diff --git a/core/src/commands/on_runtime_upgrade.rs b/core/src/commands/on_runtime_upgrade.rs index baac1dc5f44..3098da0b11e 100644 --- a/core/src/commands/on_runtime_upgrade.rs +++ b/core/src/commands/on_runtime_upgrade.rs @@ -54,10 +54,7 @@ pub struct Command { } // Runs the `on-runtime-upgrade` command. -pub(crate) async fn run( - shared: SharedParams, - command: Command, -) -> sc_cli::Result<()> +pub async fn run(shared: SharedParams, command: Command) -> sc_cli::Result<()> where Block: BlockT + serde::de::DeserializeOwned, ::Err: Debug, diff --git a/core/src/state.rs b/core/src/state.rs index 5cf3391162d..c48db46bc18 100644 --- a/core/src/state.rs +++ b/core/src/state.rs @@ -87,11 +87,10 @@ pub enum State { } impl State { - /// Create the [`remote_externalities::RemoteExternalities`] using [`remote-externalities`] from - /// self. + /// Create the [`RemoteExternalities`]. /// - /// This will override the code as it sees fit based on [`SharedParams::Runtime`]. It will also - /// check the spec-version and name. + /// This will override the code as it sees fit based on [`Runtime`]. It will also check the + /// spec-version and name. pub(crate) async fn into_ext( &self, shared: &SharedParams, From ff8d5f06929386f634cbbe60d0e2d2de6228d285 Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Tue, 8 Aug 2023 11:38:56 +0700 Subject: [PATCH 16/44] clippy --- core/src/commands/create_snapshot.rs | 4 ++-- core/src/commands/execute_block.rs | 11 ++++------- core/src/commands/follow_chain.rs | 10 +++++----- core/src/commands/offchain_worker.rs | 11 ++++------- core/src/commands/on_runtime_upgrade.rs | 4 ++-- core/src/lib.rs | 4 ++-- core/src/shared_parameters.rs | 2 +- core/src/state.rs | 8 +++----- core/tests/create_snapshot.rs | 10 +++++----- core/tests/execute_block.rs | 10 +++++----- core/tests/follow_chain.rs | 6 +++--- 11 files changed, 36 insertions(+), 44 deletions(-) diff --git a/core/src/commands/create_snapshot.rs b/core/src/commands/create_snapshot.rs index 51af793b2d3..a25f1163318 100644 --- a/core/src/commands/create_snapshot.rs +++ b/core/src/commands/create_snapshot.rs @@ -70,13 +70,13 @@ where command.from.at.clone().unwrap_or("latest".to_owned()) ); log::info!(target: LOG_TARGET, "snapshot path not provided (-s), using '{}'", path_str); - path_str.into() + path_str } }; let executor = build_executor::(&shared); let _ = State::Live(command.from) - .into_ext::(&shared, &executor, Some(path.into()), false) + .to_ext::(&shared, &executor, Some(path.into()), false) .await?; Ok(()) diff --git a/core/src/commands/execute_block.rs b/core/src/commands/execute_block.rs index a64ff7d3069..3886a2d971e 100644 --- a/core/src/commands/execute_block.rs +++ b/core/src/commands/execute_block.rs @@ -69,10 +69,7 @@ pub struct Command { } impl Command { - fn block_ws_uri(&self) -> String - where - ::Err: Debug, - { + fn block_ws_uri(&self) -> String { match (&self.block_ws_uri, &self.state) { (Some(block_ws_uri), State::Snap { .. }) => block_ws_uri.to_owned(), (Some(block_ws_uri), State::Live { .. }) => { @@ -100,11 +97,11 @@ where let executor = build_executor::(&shared); let ext = command .state - .into_ext::(&shared, &executor, None, true) + .to_ext::(&shared, &executor, None, true) .await?; // get the block number associated with this block. - let block_ws_uri = command.block_ws_uri::(); + let block_ws_uri = command.block_ws_uri(); let rpc = ws_client(&block_ws_uri).await?; let next_hash = next_hash_of::(&rpc, ext.block_hash).await?; @@ -136,7 +133,7 @@ where ) .encode(); - let _ = state_machine_call_with_proof::( + let _ = state_machine_call_with_proof::( &ext, &executor, "TryRuntime_execute_block", diff --git a/core/src/commands/follow_chain.rs b/core/src/commands/follow_chain.rs index 83720a20ec3..a6a971db16b 100644 --- a/core/src/commands/follow_chain.rs +++ b/core/src/commands/follow_chain.rs @@ -107,7 +107,7 @@ where let block = ChainApi::<(), Block::Hash, Block::Header, SignedBlock>::block(&rpc, Some(hash)) .await - .or_else(|e| { + .map_err(|e| { if matches!(e, substrate_rpc_client::Error::ParseError(_)) { log::error!( target: LOG_TARGET, @@ -118,7 +118,7 @@ where block with an empty one." ); } - Err(rpc_err_handler(e)) + rpc_err_handler(e) })? .expect("if header exists, block should also exist.") .block; @@ -142,7 +142,7 @@ where child_tree: true, }); let ext = state - .into_ext::(&shared, &executor, None, true) + .to_ext::(&shared, &executor, None, true) .await?; maybe_state_ext = Some(ext); } @@ -151,7 +151,7 @@ where .as_mut() .expect("state_ext either existed or was just created"); - let result = state_machine_call_with_proof::( + let result = state_machine_call_with_proof::( state_ext, &executor, "TryRuntime_execute_block", @@ -167,7 +167,7 @@ where shared .export_proof .as_ref() - .map(|path| path.as_path().join(&format!("{}.json", number))), + .map(|path| path.as_path().join(format!("{}.json", number))), ); if let Err(why) = result { diff --git a/core/src/commands/offchain_worker.rs b/core/src/commands/offchain_worker.rs index 468d2ec04ad..6ec662c0c26 100644 --- a/core/src/commands/offchain_worker.rs +++ b/core/src/commands/offchain_worker.rs @@ -49,10 +49,7 @@ pub struct Command { } impl Command { - fn header_ws_uri(&self) -> String - where - ::Err: Debug, - { + fn header_ws_uri(&self) -> String { match (&self.header_ws_uri, &self.state) { (Some(header_ws_uri), State::Snap { .. }) => header_ws_uri.to_owned(), (Some(header_ws_uri), State::Live { .. }) => { @@ -81,10 +78,10 @@ where // we first build the externalities with the remote code. let ext = command .state - .into_ext::(&shared, &executor, None, true) + .to_ext::(&shared, &executor, None, true) .await?; - let header_ws_uri = command.header_ws_uri::(); + let header_ws_uri = command.header_ws_uri(); let rpc = ws_client(&header_ws_uri).await?; let next_hash = next_hash_of::(&rpc, ext.block_hash).await?; @@ -96,7 +93,7 @@ where .map(|maybe_header| maybe_header.ok_or("Header does not exist"))??; let payload = header.encode(); - let _ = state_machine_call::( + let _ = state_machine_call::( &ext, &executor, "OffchainWorkerApi_offchain_worker", diff --git a/core/src/commands/on_runtime_upgrade.rs b/core/src/commands/on_runtime_upgrade.rs index 3098da0b11e..e42308a1101 100644 --- a/core/src/commands/on_runtime_upgrade.rs +++ b/core/src/commands/on_runtime_upgrade.rs @@ -66,10 +66,10 @@ where let executor = build_executor(&shared); let ext = command .state - .into_ext::(&shared, &executor, None, true) + .to_ext::(&shared, &executor, None, true) .await?; - let (_, encoded_result) = state_machine_call_with_proof::( + let (_, encoded_result) = state_machine_call_with_proof::( &ext, &executor, "TryRuntime_on_runtime_upgrade", diff --git a/core/src/lib.rs b/core/src/lib.rs index 0ca3bf203ee..cdbfa6656d8 100644 --- a/core/src/lib.rs +++ b/core/src/lib.rs @@ -99,7 +99,7 @@ fn ensure_try_runtime( /// Execute the given `method` and `data` on top of `ext`, returning the results (encoded) and the /// state `changes`. -pub(crate) fn state_machine_call( +pub(crate) fn state_machine_call( ext: &TestExternalities, executor: &WasmExecutor, method: &'static str, @@ -128,7 +128,7 @@ pub(crate) fn state_machine_call( /// size and formats. /// /// Make sure [`LOG_TARGET`] is enabled in logging. -pub(crate) fn state_machine_call_with_proof( +pub(crate) fn state_machine_call_with_proof( ext: &TestExternalities, executor: &WasmExecutor, method: &'static str, diff --git a/core/src/shared_parameters.rs b/core/src/shared_parameters.rs index 0ad0cee144e..7f3b216130a 100644 --- a/core/src/shared_parameters.rs +++ b/core/src/shared_parameters.rs @@ -99,7 +99,7 @@ impl FromStr for Runtime { fn from_str(s: &str) -> Result { Ok(match s.to_lowercase().as_ref() { "existing" => Runtime::Existing, - x @ _ => Runtime::Path(x.into()), + x => Runtime::Path(x.into()), }) } } diff --git a/core/src/state.rs b/core/src/state.rs index c48db46bc18..142eb94e095 100644 --- a/core/src/state.rs +++ b/core/src/state.rs @@ -91,7 +91,7 @@ impl State { /// /// This will override the code as it sees fit based on [`Runtime`]. It will also check the /// spec-version and name. - pub(crate) async fn into_ext( + pub(crate) async fn to_ext( &self, shared: &SharedParams, executor: &WasmExecutor, @@ -203,10 +203,8 @@ impl State { } // whatever runtime we have in store now must have been compiled with try-runtime feature. - if try_runtime_check { - if !ensure_try_runtime::(&executor, &mut ext) { - return Err("given runtime is NOT compiled with try-runtime feature!".into()); - } + if try_runtime_check && !ensure_try_runtime::(executor, &mut ext) { + return Err("given runtime is NOT compiled with try-runtime feature!".into()); } Ok(ext) diff --git a/core/tests/create_snapshot.rs b/core/tests/create_snapshot.rs index 26953522e24..f855ef1ba0e 100644 --- a/core/tests/create_snapshot.rs +++ b/core/tests/create_snapshot.rs @@ -53,20 +53,20 @@ async fn create_snapshot_works() { .stdout(std::process::Stdio::piped()) .stderr(std::process::Stdio::piped()) .arg("--runtime=existing") - .args(&["create-snapshot", format!("--uri={}", ws_url).as_str()]) + .args(["create-snapshot", format!("--uri={}", ws_url).as_str()]) .arg(snap_file) - .args(&["--at", format!("{:?}", at).as_str()]) + .args(["--at", format!("{:?}", at).as_str()]) .kill_on_drop(true) .spawn() .unwrap() } let block_number = 2; - let block_hash = common::block_hash(block_number, &ws_url).await.unwrap(); + let block_hash = common::block_hash(block_number, ws_url).await.unwrap(); // Try to create a snapshot. - let mut snapshot_creation = create_snapshot(&ws_url, &snap_file_path, block_hash); + let mut snapshot_creation = create_snapshot(ws_url, &snap_file_path, block_hash); - let re = Regex::new(r#".*writing snapshot of (\d+) bytes to .*"#).unwrap(); + let re = Regex::new(r".*writing snapshot of (\d+) bytes to .*").unwrap(); let matched = common::wait_for_stream_pattern_match(snapshot_creation.stderr.take().unwrap(), re) .await; diff --git a/core/tests/execute_block.rs b/core/tests/execute_block.rs index 0b8b79d5913..2eb39b32231 100644 --- a/core/tests/execute_block.rs +++ b/core/tests/execute_block.rs @@ -42,19 +42,19 @@ async fn execute_block_works() { .stdout(std::process::Stdio::piped()) .stderr(std::process::Stdio::piped()) .arg("--runtime=existing") - .args(&["execute-block"]) - .args(&["live", format!("--uri={}", ws_url).as_str()]) - .args(&["--at", format!("{:?}", at).as_str()]) + .args(["execute-block"]) + .args(["live", format!("--uri={}", ws_url).as_str()]) + .args(["--at", format!("{:?}", at).as_str()]) .kill_on_drop(true) .spawn() .unwrap() } let block_number = 1; - let block_hash = common::block_hash(block_number, &ws_url).await.unwrap(); + let block_hash = common::block_hash(block_number, ws_url).await.unwrap(); // Try to execute the block. - let mut block_execution = execute_block(&ws_url, block_hash); + let mut block_execution = execute_block(ws_url, block_hash); // The execute-block command is actually executing the next block. let expected_output = format!( diff --git a/core/tests/follow_chain.rs b/core/tests/follow_chain.rs index 8d3badf7f1d..5f466355a29 100644 --- a/core/tests/follow_chain.rs +++ b/core/tests/follow_chain.rs @@ -41,15 +41,15 @@ async fn follow_chain_works() { .stdout(std::process::Stdio::piped()) .stderr(std::process::Stdio::piped()) .arg("--runtime=existing") - .args(&["follow-chain", format!("--uri={}", ws_url).as_str()]) + .args(["follow-chain", format!("--uri={}", ws_url).as_str()]) .kill_on_drop(true) .spawn() .unwrap() } // Kick off the follow-chain process and wait for it to process at least 3 blocks. - let mut follow = start_follow(&ws_url); - let re = Regex::new(r#".*executed block ([3-9]|[1-9]\d+).*"#).unwrap(); + let mut follow = start_follow(ws_url); + let re = Regex::new(r".*executed block ([3-9]|[1-9]\d+).*").unwrap(); let matched = common::wait_for_stream_pattern_match(follow.stderr.take().unwrap(), re).await; From 0955e4da20bbb4aaad8d5f44bb420621e00afa35 Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Tue, 8 Aug 2023 11:39:21 +0700 Subject: [PATCH 17/44] update homepage --- Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index 527ad360529..7836576127b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -10,5 +10,5 @@ version = "0.1.0" authors = ["Parity Technologies "] edition = "2021" license = "Apache-2.0" -homepage = "https://substrate.io" +homepage = "https://github.com/paritytech/try-runtime-cli" repository = "https://github.com/paritytech/try-runtime-cli/" From ba665244971d813aa9663282658e8c163604b5ae Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Tue, 8 Aug 2023 11:41:31 +0700 Subject: [PATCH 18/44] update cargo.lock --- Cargo.lock | 1042 ++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 855 insertions(+), 187 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 4b0a7d91a17..114f0b0ede3 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -264,6 +264,21 @@ version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" +[[package]] +name = "assert_cmd" +version = "2.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88903cb14723e4d4003335bb7f8a14f27691649105346a0f0957466c096adfe6" +dependencies = [ + "anstyle", + "bstr", + "doc-comment", + "predicates 3.0.3", + "predicates-core", + "predicates-tree", + "wait-timeout", +] + [[package]] name = "assert_matches" version = "1.5.0" @@ -587,6 +602,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6798148dccfbff0fae41c7574d2fa8f1ef3492fba0face179de5d8d447d67b05" dependencies = [ "memchr", + "regex-automata 0.3.4", "serde", ] @@ -867,6 +883,17 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7" +[[package]] +name = "comfy-table" +version = "7.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ab77dbd8adecaf3f0db40581631b995f312a8a5ae3aa9993188bb8f23d83a5b" +dependencies = [ + "strum", + "strum_macros", + "unicode-width", +] + [[package]] name = "common-path" version = "1.0.0" @@ -1414,20 +1441,26 @@ dependencies = [ "winapi", ] +[[package]] +name = "doc-comment" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10" + [[package]] name = "docify" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6491709f76fb7ceb951244daf624d480198b427556084391d6e3c33d3ae74b9" +checksum = "029de870d175d11969524d91a3fb2cbf6d488b853bff99d41cf65e533ac7d9d2" dependencies = [ "docify_macros", ] [[package]] name = "docify_macros" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffc5338a9f72ce29a81377d9039798fcc926fb471b2004666caf48e446dffbbf" +checksum = "cac43324656a1b05eb0186deb51f27d2d891c704c37f34de281ef6297ba193e5" dependencies = [ "common-path", "derive-syn-parse", @@ -1437,6 +1470,7 @@ dependencies = [ "regex", "syn 2.0.28", "termcolor", + "toml 0.7.6", "walkdir", ] @@ -1799,7 +1833,7 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] name = "fork-tree" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "parity-scale-codec", ] @@ -1822,7 +1856,7 @@ checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa" [[package]] name = "frame-benchmarking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-support", "frame-support-procedural", @@ -1844,10 +1878,58 @@ dependencies = [ "static_assertions", ] +[[package]] +name = "frame-benchmarking-cli" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +dependencies = [ + "Inflector", + "array-bytes", + "chrono", + "clap", + "comfy-table", + "frame-benchmarking", + "frame-support", + "frame-system", + "gethostname", + "handlebars", + "itertools", + "lazy_static", + "linked-hash-map", + "log", + "parity-scale-codec", + "rand 0.8.5", + "rand_pcg", + "sc-block-builder", + "sc-cli", + "sc-client-api", + "sc-client-db", + "sc-executor", + "sc-service", + "sc-sysinfo", + "serde", + "serde_json", + "sp-api", + "sp-blockchain", + "sp-core", + "sp-database", + "sp-externalities", + "sp-inherents", + "sp-io", + "sp-keystore", + "sp-runtime", + "sp-state-machine", + "sp-storage", + "sp-trie", + "sp-wasm-interface", + "thiserror", + "thousands", +] + [[package]] name = "frame-benchmarking-pallet-pov" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -1862,7 +1944,7 @@ dependencies = [ [[package]] name = "frame-election-provider-solution-type" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "proc-macro-crate", "proc-macro2", @@ -1873,7 +1955,7 @@ dependencies = [ [[package]] name = "frame-election-provider-support" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-election-provider-solution-type", "frame-support", @@ -1890,7 +1972,7 @@ dependencies = [ [[package]] name = "frame-executive" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-support", "frame-system", @@ -1919,7 +2001,7 @@ dependencies = [ [[package]] name = "frame-remote-externalities" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "async-recursion", "futures", @@ -1940,7 +2022,7 @@ dependencies = [ [[package]] name = "frame-support" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "aquamarine", "bitflags 1.3.2", @@ -1977,7 +2059,7 @@ dependencies = [ [[package]] name = "frame-support-procedural" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "Inflector", "cfg-expr", @@ -1995,7 +2077,7 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-support-procedural-tools-derive", "proc-macro-crate", @@ -2007,7 +2089,7 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools-derive" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "proc-macro2", "quote", @@ -2017,7 +2099,7 @@ dependencies = [ [[package]] name = "frame-system" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "cfg-if", "frame-support", @@ -2036,7 +2118,7 @@ dependencies = [ [[package]] name = "frame-system-benchmarking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -2051,7 +2133,7 @@ dependencies = [ [[package]] name = "frame-system-rpc-runtime-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "parity-scale-codec", "sp-api", @@ -2060,7 +2142,7 @@ dependencies = [ [[package]] name = "frame-try-runtime" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-support", "parity-scale-codec", @@ -2173,7 +2255,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d2411eed028cdf8c8034eaf21f9915f956b6c3abec4d4c7949ee67f0721127bd" dependencies = [ "futures-io", - "rustls", + "rustls 0.20.8", "webpki", ] @@ -2242,6 +2324,16 @@ dependencies = [ "zeroize", ] +[[package]] +name = "gethostname" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1ebd34e35c46e00bb73e81363248d627782724609fe1b6396f553f68fe3862e" +dependencies = [ + "libc", + "winapi", +] + [[package]] name = "getrandom" version = "0.1.16" @@ -2344,6 +2436,20 @@ dependencies = [ "tracing", ] +[[package]] +name = "handlebars" +version = "4.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "83c3372087601b532857d332f5957cbae686da52bb7810bf038c3e3c3cc2fa0d" +dependencies = [ + "log", + "pest", + "pest_derive", + "serde", + "serde_json", + "thiserror", +] + [[package]] name = "hash-db" version = "0.16.0" @@ -2555,13 +2661,29 @@ dependencies = [ "http", "hyper", "log", - "rustls", + "rustls 0.20.8", "rustls-native-certs", "tokio", - "tokio-rustls", + "tokio-rustls 0.23.4", "webpki-roots 0.22.6", ] +[[package]] +name = "hyper-rustls" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8d78e1e73ec14cf7375674f74d7dde185c8206fd9dea6fb6295e8a98098aaa97" +dependencies = [ + "futures-util", + "http", + "hyper", + "log", + "rustls 0.21.6", + "rustls-native-certs", + "tokio", + "tokio-rustls 0.24.1", +] + [[package]] name = "iana-time-zone" version = "0.1.57" @@ -2876,7 +2998,7 @@ dependencies = [ "soketto", "thiserror", "tokio", - "tokio-rustls", + "tokio-rustls 0.23.4", "tokio-util", "tracing", "webpki-roots 0.22.6", @@ -2918,7 +3040,7 @@ checksum = "cc345b0a43c6bc49b947ebeb936e886a419ee3d894421790c969cc56040542ad" dependencies = [ "async-trait", "hyper", - "hyper-rustls", + "hyper-rustls 0.23.2", "jsonrpsee-core", "jsonrpsee-types", "rustc-hash", @@ -3015,7 +3137,7 @@ dependencies = [ [[package]] name = "kitchensink-runtime" version = "3.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-benchmarking-pallet-pov", @@ -3857,6 +3979,15 @@ dependencies = [ "libc", ] +[[package]] +name = "memoffset" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4" +dependencies = [ + "autocfg", +] + [[package]] name = "memoffset" version = "0.8.0" @@ -3933,7 +4064,7 @@ dependencies = [ "fragile", "lazy_static", "mockall_derive", - "predicates", + "predicates 2.1.5", "predicates-tree", ] @@ -4153,10 +4284,24 @@ dependencies = [ "libc", ] +[[package]] +name = "nix" +version = "0.26.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfdda3d196821d6af13126e40375cdf7da646a96114af134d5f417a9a1dc8e1a" +dependencies = [ + "bitflags 1.3.2", + "cfg-if", + "libc", + "memoffset 0.7.1", + "pin-utils", + "static_assertions", +] + [[package]] name = "node-executor" version = "3.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "kitchensink-runtime", @@ -4175,10 +4320,91 @@ dependencies = [ [[package]] name = "node-primitives" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +dependencies = [ + "sp-core", + "sp-runtime", +] + +[[package]] +name = "node-template" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +dependencies = [ + "clap", + "frame-benchmarking", + "frame-benchmarking-cli", + "frame-system", + "futures", + "jsonrpsee", + "node-template-runtime", + "pallet-transaction-payment", + "pallet-transaction-payment-rpc", + "sc-basic-authorship", + "sc-cli", + "sc-client-api", + "sc-consensus", + "sc-consensus-aura", + "sc-consensus-grandpa", + "sc-executor", + "sc-network", + "sc-offchain", + "sc-rpc-api", + "sc-service", + "sc-telemetry", + "sc-transaction-pool", + "sc-transaction-pool-api", + "sp-api", + "sp-block-builder", + "sp-blockchain", + "sp-consensus-aura", + "sp-consensus-grandpa", + "sp-core", + "sp-inherents", + "sp-io", + "sp-keyring", + "sp-runtime", + "sp-timestamp", + "substrate-build-script-utils", + "substrate-frame-rpc-system", + "try-runtime-cli 0.10.0-dev", +] + +[[package]] +name = "node-template-runtime" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ + "frame-benchmarking", + "frame-executive", + "frame-support", + "frame-system", + "frame-system-benchmarking", + "frame-system-rpc-runtime-api", + "frame-try-runtime", + "pallet-aura", + "pallet-balances", + "pallet-grandpa", + "pallet-sudo", + "pallet-template", + "pallet-timestamp", + "pallet-transaction-payment", + "pallet-transaction-payment-rpc-runtime-api", + "parity-scale-codec", + "scale-info", + "sp-api", + "sp-block-builder", + "sp-consensus-aura", + "sp-consensus-grandpa", "sp-core", + "sp-inherents", + "sp-offchain", "sp-runtime", + "sp-session", + "sp-std", + "sp-transaction-pool", + "sp-version", + "substrate-wasm-builder", ] [[package]] @@ -4326,7 +4552,7 @@ dependencies = [ [[package]] name = "pallet-alliance" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -4346,7 +4572,7 @@ dependencies = [ [[package]] name = "pallet-asset-conversion" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -4364,7 +4590,7 @@ dependencies = [ [[package]] name = "pallet-asset-conversion-tx-payment" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-support", "frame-system", @@ -4379,7 +4605,7 @@ dependencies = [ [[package]] name = "pallet-asset-rate" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -4394,7 +4620,7 @@ dependencies = [ [[package]] name = "pallet-asset-tx-payment" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -4412,7 +4638,7 @@ dependencies = [ [[package]] name = "pallet-assets" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -4424,10 +4650,26 @@ dependencies = [ "sp-std", ] +[[package]] +name = "pallet-aura" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +dependencies = [ + "frame-support", + "frame-system", + "pallet-timestamp", + "parity-scale-codec", + "scale-info", + "sp-application-crypto", + "sp-consensus-aura", + "sp-runtime", + "sp-std", +] + [[package]] name = "pallet-authority-discovery" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-support", "frame-system", @@ -4443,7 +4685,7 @@ dependencies = [ [[package]] name = "pallet-authorship" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-support", "frame-system", @@ -4457,7 +4699,7 @@ dependencies = [ [[package]] name = "pallet-babe" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -4481,7 +4723,7 @@ dependencies = [ [[package]] name = "pallet-bags-list" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -4501,7 +4743,7 @@ dependencies = [ [[package]] name = "pallet-balances" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -4516,7 +4758,7 @@ dependencies = [ [[package]] name = "pallet-bounties" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -4534,7 +4776,7 @@ dependencies = [ [[package]] name = "pallet-child-bounties" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -4553,7 +4795,7 @@ dependencies = [ [[package]] name = "pallet-collective" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -4570,7 +4812,7 @@ dependencies = [ [[package]] name = "pallet-contracts" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "bitflags 1.3.2", "environmental", @@ -4599,7 +4841,7 @@ dependencies = [ [[package]] name = "pallet-contracts-primitives" version = "24.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "bitflags 1.3.2", "parity-scale-codec", @@ -4612,7 +4854,7 @@ dependencies = [ [[package]] name = "pallet-contracts-proc-macro" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "proc-macro2", "quote", @@ -4622,7 +4864,7 @@ dependencies = [ [[package]] name = "pallet-conviction-voting" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "assert_matches", "frame-benchmarking", @@ -4639,7 +4881,7 @@ dependencies = [ [[package]] name = "pallet-core-fellowship" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -4657,7 +4899,7 @@ dependencies = [ [[package]] name = "pallet-democracy" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -4675,7 +4917,7 @@ dependencies = [ [[package]] name = "pallet-election-provider-multi-phase" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -4698,7 +4940,7 @@ dependencies = [ [[package]] name = "pallet-election-provider-support-benchmarking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -4711,7 +4953,7 @@ dependencies = [ [[package]] name = "pallet-elections-phragmen" version = "5.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -4730,7 +4972,7 @@ dependencies = [ [[package]] name = "pallet-fast-unstake" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "docify", "frame-benchmarking", @@ -4749,7 +4991,7 @@ dependencies = [ [[package]] name = "pallet-glutton" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "blake2", "frame-benchmarking", @@ -4767,7 +5009,7 @@ dependencies = [ [[package]] name = "pallet-grandpa" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -4790,7 +5032,7 @@ dependencies = [ [[package]] name = "pallet-identity" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "enumflags2", "frame-benchmarking", @@ -4806,7 +5048,7 @@ dependencies = [ [[package]] name = "pallet-im-online" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -4826,7 +5068,7 @@ dependencies = [ [[package]] name = "pallet-indices" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -4843,7 +5085,7 @@ dependencies = [ [[package]] name = "pallet-insecure-randomness-collective-flip" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-support", "frame-system", @@ -4857,7 +5099,7 @@ dependencies = [ [[package]] name = "pallet-lottery" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -4871,7 +5113,7 @@ dependencies = [ [[package]] name = "pallet-membership" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -4888,7 +5130,7 @@ dependencies = [ [[package]] name = "pallet-message-queue" version = "7.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -4907,7 +5149,7 @@ dependencies = [ [[package]] name = "pallet-mmr" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -4924,7 +5166,7 @@ dependencies = [ [[package]] name = "pallet-multisig" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -4940,7 +5182,7 @@ dependencies = [ [[package]] name = "pallet-nft-fractionalization" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -4957,7 +5199,7 @@ dependencies = [ [[package]] name = "pallet-nfts" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "enumflags2", "frame-benchmarking", @@ -4975,7 +5217,7 @@ dependencies = [ [[package]] name = "pallet-nfts-runtime-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-support", "pallet-nfts", @@ -4986,7 +5228,7 @@ dependencies = [ [[package]] name = "pallet-nis" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -5002,7 +5244,7 @@ dependencies = [ [[package]] name = "pallet-nomination-pools" version = "1.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-support", "frame-system", @@ -5021,7 +5263,7 @@ dependencies = [ [[package]] name = "pallet-nomination-pools-benchmarking" version = "1.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -5041,7 +5283,7 @@ dependencies = [ [[package]] name = "pallet-nomination-pools-runtime-api" version = "1.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "pallet-nomination-pools", "parity-scale-codec", @@ -5052,7 +5294,7 @@ dependencies = [ [[package]] name = "pallet-offences" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-support", "frame-system", @@ -5069,7 +5311,7 @@ dependencies = [ [[package]] name = "pallet-offences-benchmarking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -5093,7 +5335,7 @@ dependencies = [ [[package]] name = "pallet-preimage" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -5110,7 +5352,7 @@ dependencies = [ [[package]] name = "pallet-proxy" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -5125,7 +5367,7 @@ dependencies = [ [[package]] name = "pallet-ranked-collective" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -5143,7 +5385,7 @@ dependencies = [ [[package]] name = "pallet-recovery" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -5158,7 +5400,7 @@ dependencies = [ [[package]] name = "pallet-referenda" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -5176,7 +5418,7 @@ dependencies = [ [[package]] name = "pallet-remark" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -5193,7 +5435,7 @@ dependencies = [ [[package]] name = "pallet-root-testing" version = "1.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-support", "frame-system", @@ -5208,7 +5450,7 @@ dependencies = [ [[package]] name = "pallet-salary" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -5226,7 +5468,7 @@ dependencies = [ [[package]] name = "pallet-scheduler" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -5243,7 +5485,7 @@ dependencies = [ [[package]] name = "pallet-session" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-support", "frame-system", @@ -5264,7 +5506,7 @@ dependencies = [ [[package]] name = "pallet-session-benchmarking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -5280,7 +5522,7 @@ dependencies = [ [[package]] name = "pallet-society" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -5299,7 +5541,7 @@ dependencies = [ [[package]] name = "pallet-staking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -5321,7 +5563,7 @@ dependencies = [ [[package]] name = "pallet-staking-reward-curve" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "proc-macro-crate", "proc-macro2", @@ -5332,7 +5574,7 @@ dependencies = [ [[package]] name = "pallet-staking-runtime-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "parity-scale-codec", "sp-api", @@ -5341,7 +5583,7 @@ dependencies = [ [[package]] name = "pallet-state-trie-migration" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -5358,7 +5600,7 @@ dependencies = [ [[package]] name = "pallet-statement" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-support", "frame-system", @@ -5376,7 +5618,7 @@ dependencies = [ [[package]] name = "pallet-sudo" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -5388,10 +5630,22 @@ dependencies = [ "sp-std", ] +[[package]] +name = "pallet-template" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", +] + [[package]] name = "pallet-timestamp" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -5409,7 +5663,7 @@ dependencies = [ [[package]] name = "pallet-tips" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -5428,7 +5682,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-support", "frame-system", @@ -5441,10 +5695,26 @@ dependencies = [ "sp-std", ] +[[package]] +name = "pallet-transaction-payment-rpc" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +dependencies = [ + "jsonrpsee", + "pallet-transaction-payment-rpc-runtime-api", + "parity-scale-codec", + "sp-api", + "sp-blockchain", + "sp-core", + "sp-rpc", + "sp-runtime", + "sp-weights", +] + [[package]] name = "pallet-transaction-payment-rpc-runtime-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "pallet-transaction-payment", "parity-scale-codec", @@ -5456,7 +5726,7 @@ dependencies = [ [[package]] name = "pallet-transaction-storage" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -5476,7 +5746,7 @@ dependencies = [ [[package]] name = "pallet-treasury" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -5493,7 +5763,7 @@ dependencies = [ [[package]] name = "pallet-uniques" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -5508,7 +5778,7 @@ dependencies = [ [[package]] name = "pallet-utility" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -5524,7 +5794,7 @@ dependencies = [ [[package]] name = "pallet-vesting" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -5539,7 +5809,7 @@ dependencies = [ [[package]] name = "pallet-whitelist" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-benchmarking", "frame-support", @@ -5700,6 +5970,50 @@ version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94" +[[package]] +name = "pest" +version = "2.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1acb4a4365a13f749a93f1a094a7805e5cfa0955373a9de860d962eaa3a5fe5a" +dependencies = [ + "thiserror", + "ucd-trie", +] + +[[package]] +name = "pest_derive" +version = "2.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "666d00490d4ac815001da55838c500eafb0320019bbaa44444137c48b443a853" +dependencies = [ + "pest", + "pest_generator", +] + +[[package]] +name = "pest_generator" +version = "2.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68ca01446f50dbda87c1786af8770d535423fa8a53aec03b8f4e3d7eb10e0929" +dependencies = [ + "pest", + "pest_meta", + "proc-macro2", + "quote", + "syn 2.0.28", +] + +[[package]] +name = "pest_meta" +version = "2.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56af0a30af74d0445c0bf6d9d051c979b516a1a5af790d251daee76005420a48" +dependencies = [ + "once_cell", + "pest", + "sha2 0.10.7", +] + [[package]] name = "petgraph" version = "0.6.3" @@ -5847,6 +6161,18 @@ dependencies = [ "regex", ] +[[package]] +name = "predicates" +version = "3.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09963355b9f467184c04017ced4a2ba2d75cbcb4e7462690d388233253d4b1a9" +dependencies = [ + "anstyle", + "difflib", + "itertools", + "predicates-core", +] + [[package]] name = "predicates-core" version = "1.0.6" @@ -6390,7 +6716,7 @@ dependencies = [ "log", "netlink-packet-route", "netlink-proto", - "nix", + "nix 0.24.3", "thiserror", "tokio", ] @@ -6495,8 +6821,20 @@ dependencies = [ ] [[package]] -name = "rustls-native-certs" -version = "0.6.3" +name = "rustls" +version = "0.21.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d1feddffcfcc0b33f5c6ce9a29e341e4cd59c3f78e7ee45f4a40c038b1d6cbb" +dependencies = [ + "log", + "ring", + "rustls-webpki 0.101.2", + "sct", +] + +[[package]] +name = "rustls-native-certs" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00" dependencies = [ @@ -6525,6 +6863,16 @@ dependencies = [ "untrusted", ] +[[package]] +name = "rustls-webpki" +version = "0.101.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "513722fd73ad80a71f72b61009ea1b584bcfa1483ca93949c8f290298837fa59" +dependencies = [ + "ring", + "untrusted", +] + [[package]] name = "rustversion" version = "1.0.14" @@ -6578,7 +6926,7 @@ dependencies = [ [[package]] name = "sc-allocator" version = "4.1.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "log", "sp-core", @@ -6586,10 +6934,33 @@ dependencies = [ "thiserror", ] +[[package]] +name = "sc-basic-authorship" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +dependencies = [ + "futures", + "futures-timer", + "log", + "parity-scale-codec", + "sc-block-builder", + "sc-client-api", + "sc-proposer-metrics", + "sc-telemetry", + "sc-transaction-pool-api", + "sp-api", + "sp-blockchain", + "sp-consensus", + "sp-core", + "sp-inherents", + "sp-runtime", + "substrate-prometheus-endpoint", +] + [[package]] name = "sc-block-builder" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "parity-scale-codec", "sc-client-api", @@ -6604,7 +6975,7 @@ dependencies = [ [[package]] name = "sc-chain-spec" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "memmap2", "sc-chain-spec-derive", @@ -6623,7 +6994,7 @@ dependencies = [ [[package]] name = "sc-chain-spec-derive" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "proc-macro-crate", "proc-macro2", @@ -6634,7 +7005,7 @@ dependencies = [ [[package]] name = "sc-cli" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "array-bytes", "chrono", @@ -6673,7 +7044,7 @@ dependencies = [ [[package]] name = "sc-client-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "fnv", "futures", @@ -6699,7 +7070,7 @@ dependencies = [ [[package]] name = "sc-client-db" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "hash-db", "kvdb", @@ -6725,7 +7096,7 @@ dependencies = [ [[package]] name = "sc-consensus" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "async-trait", "futures", @@ -6747,10 +7118,103 @@ dependencies = [ "thiserror", ] +[[package]] +name = "sc-consensus-aura" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +dependencies = [ + "async-trait", + "futures", + "log", + "parity-scale-codec", + "sc-block-builder", + "sc-client-api", + "sc-consensus", + "sc-consensus-slots", + "sc-telemetry", + "sp-api", + "sp-application-crypto", + "sp-block-builder", + "sp-blockchain", + "sp-consensus", + "sp-consensus-aura", + "sp-consensus-slots", + "sp-core", + "sp-inherents", + "sp-keystore", + "sp-runtime", + "substrate-prometheus-endpoint", + "thiserror", +] + +[[package]] +name = "sc-consensus-grandpa" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +dependencies = [ + "ahash 0.8.3", + "array-bytes", + "async-trait", + "dyn-clone", + "finality-grandpa", + "fork-tree", + "futures", + "futures-timer", + "log", + "parity-scale-codec", + "parking_lot 0.12.1", + "rand 0.8.5", + "sc-block-builder", + "sc-chain-spec", + "sc-client-api", + "sc-consensus", + "sc-network", + "sc-network-common", + "sc-network-gossip", + "sc-telemetry", + "sc-transaction-pool-api", + "sc-utils", + "serde_json", + "sp-api", + "sp-application-crypto", + "sp-arithmetic", + "sp-blockchain", + "sp-consensus", + "sp-consensus-grandpa", + "sp-core", + "sp-keystore", + "sp-runtime", + "substrate-prometheus-endpoint", + "thiserror", +] + +[[package]] +name = "sc-consensus-slots" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +dependencies = [ + "async-trait", + "futures", + "futures-timer", + "log", + "parity-scale-codec", + "sc-client-api", + "sc-consensus", + "sc-telemetry", + "sp-arithmetic", + "sp-blockchain", + "sp-consensus", + "sp-consensus-slots", + "sp-core", + "sp-inherents", + "sp-runtime", + "sp-state-machine", +] + [[package]] name = "sc-executor" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "parity-scale-codec", "parking_lot 0.12.1", @@ -6772,7 +7236,7 @@ dependencies = [ [[package]] name = "sc-executor-common" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "sc-allocator", "sp-maybe-compressed-blob", @@ -6784,7 +7248,7 @@ dependencies = [ [[package]] name = "sc-executor-wasmtime" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "anyhow", "cfg-if", @@ -6801,7 +7265,7 @@ dependencies = [ [[package]] name = "sc-informant" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "ansi_term", "futures", @@ -6817,7 +7281,7 @@ dependencies = [ [[package]] name = "sc-keystore" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "array-bytes", "parking_lot 0.12.1", @@ -6831,7 +7295,7 @@ dependencies = [ [[package]] name = "sc-network" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "array-bytes", "async-channel", @@ -6874,7 +7338,7 @@ dependencies = [ [[package]] name = "sc-network-bitswap" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "async-channel", "cid", @@ -6894,7 +7358,7 @@ dependencies = [ [[package]] name = "sc-network-common" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "async-trait", "bitflags 1.3.2", @@ -6908,10 +7372,29 @@ dependencies = [ "sp-runtime", ] +[[package]] +name = "sc-network-gossip" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +dependencies = [ + "ahash 0.8.3", + "futures", + "futures-timer", + "libp2p-identity", + "log", + "multiaddr", + "sc-network", + "sc-network-common", + "schnellru", + "sp-runtime", + "substrate-prometheus-endpoint", + "tracing", +] + [[package]] name = "sc-network-light" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "array-bytes", "async-channel", @@ -6932,7 +7415,7 @@ dependencies = [ [[package]] name = "sc-network-sync" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "array-bytes", "async-channel", @@ -6966,7 +7449,7 @@ dependencies = [ [[package]] name = "sc-network-transactions" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "array-bytes", "futures", @@ -6981,10 +7464,53 @@ dependencies = [ "substrate-prometheus-endpoint", ] +[[package]] +name = "sc-offchain" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +dependencies = [ + "array-bytes", + "bytes", + "fnv", + "futures", + "futures-timer", + "hyper", + "hyper-rustls 0.24.1", + "libp2p", + "log", + "num_cpus", + "once_cell", + "parity-scale-codec", + "parking_lot 0.12.1", + "rand 0.8.5", + "sc-client-api", + "sc-network", + "sc-network-common", + "sc-transaction-pool-api", + "sc-utils", + "sp-api", + "sp-core", + "sp-externalities", + "sp-keystore", + "sp-offchain", + "sp-runtime", + "threadpool", + "tracing", +] + +[[package]] +name = "sc-proposer-metrics" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +dependencies = [ + "log", + "substrate-prometheus-endpoint", +] + [[package]] name = "sc-rpc" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "futures", "jsonrpsee", @@ -7015,7 +7541,7 @@ dependencies = [ [[package]] name = "sc-rpc-api" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "jsonrpsee", "parity-scale-codec", @@ -7034,7 +7560,7 @@ dependencies = [ [[package]] name = "sc-rpc-server" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "http", "jsonrpsee", @@ -7049,7 +7575,7 @@ dependencies = [ [[package]] name = "sc-rpc-spec-v2" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "array-bytes", "futures", @@ -7075,7 +7601,7 @@ dependencies = [ [[package]] name = "sc-service" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "async-trait", "directories", @@ -7139,7 +7665,7 @@ dependencies = [ [[package]] name = "sc-state-db" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "log", "parity-scale-codec", @@ -7150,7 +7676,7 @@ dependencies = [ [[package]] name = "sc-sysinfo" version = "6.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "futures", "libc", @@ -7169,7 +7695,7 @@ dependencies = [ [[package]] name = "sc-telemetry" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "chrono", "futures", @@ -7188,7 +7714,7 @@ dependencies = [ [[package]] name = "sc-tracing" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "ansi_term", "atty", @@ -7217,7 +7743,7 @@ dependencies = [ [[package]] name = "sc-tracing-proc-macro" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "proc-macro-crate", "proc-macro2", @@ -7228,7 +7754,7 @@ dependencies = [ [[package]] name = "sc-transaction-pool" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "async-trait", "futures", @@ -7254,7 +7780,7 @@ dependencies = [ [[package]] name = "sc-transaction-pool-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "async-trait", "futures", @@ -7270,7 +7796,7 @@ dependencies = [ [[package]] name = "sc-utils" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "async-channel", "futures", @@ -7712,7 +8238,7 @@ dependencies = [ [[package]] name = "sp-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "hash-db", "log", @@ -7733,7 +8259,7 @@ dependencies = [ [[package]] name = "sp-api-proc-macro" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "Inflector", "blake2", @@ -7747,7 +8273,7 @@ dependencies = [ [[package]] name = "sp-application-crypto" version = "23.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "parity-scale-codec", "scale-info", @@ -7760,7 +8286,7 @@ dependencies = [ [[package]] name = "sp-arithmetic" version = "16.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "integer-sqrt", "num-traits", @@ -7774,7 +8300,7 @@ dependencies = [ [[package]] name = "sp-authority-discovery" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "parity-scale-codec", "scale-info", @@ -7787,7 +8313,7 @@ dependencies = [ [[package]] name = "sp-block-builder" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "sp-api", "sp-inherents", @@ -7798,7 +8324,7 @@ dependencies = [ [[package]] name = "sp-blockchain" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "futures", "log", @@ -7816,7 +8342,7 @@ dependencies = [ [[package]] name = "sp-consensus" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "async-trait", "futures", @@ -7828,10 +8354,27 @@ dependencies = [ "thiserror", ] +[[package]] +name = "sp-consensus-aura" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +dependencies = [ + "async-trait", + "parity-scale-codec", + "scale-info", + "sp-api", + "sp-application-crypto", + "sp-consensus-slots", + "sp-inherents", + "sp-runtime", + "sp-std", + "sp-timestamp", +] + [[package]] name = "sp-consensus-babe" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "async-trait", "parity-scale-codec", @@ -7850,7 +8393,7 @@ dependencies = [ [[package]] name = "sp-consensus-grandpa" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "finality-grandpa", "log", @@ -7868,7 +8411,7 @@ dependencies = [ [[package]] name = "sp-consensus-slots" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "parity-scale-codec", "scale-info", @@ -7880,7 +8423,7 @@ dependencies = [ [[package]] name = "sp-core" version = "21.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "array-bytes", "bitflags 1.3.2", @@ -7925,7 +8468,7 @@ dependencies = [ [[package]] name = "sp-core-hashing" version = "9.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "blake2b_simd", "byteorder", @@ -7938,7 +8481,7 @@ dependencies = [ [[package]] name = "sp-core-hashing-proc-macro" version = "9.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "quote", "sp-core-hashing", @@ -7948,7 +8491,7 @@ dependencies = [ [[package]] name = "sp-database" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "kvdb", "parking_lot 0.12.1", @@ -7957,7 +8500,7 @@ dependencies = [ [[package]] name = "sp-debug-derive" version = "8.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "proc-macro2", "quote", @@ -7967,7 +8510,7 @@ dependencies = [ [[package]] name = "sp-externalities" version = "0.19.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "environmental", "parity-scale-codec", @@ -7978,7 +8521,7 @@ dependencies = [ [[package]] name = "sp-genesis-builder" version = "0.1.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "serde_json", "sp-api", @@ -7989,7 +8532,7 @@ dependencies = [ [[package]] name = "sp-inherents" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "async-trait", "impl-trait-for-tuples", @@ -8003,7 +8546,7 @@ dependencies = [ [[package]] name = "sp-io" version = "23.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "bytes", "ed25519", @@ -8028,7 +8571,7 @@ dependencies = [ [[package]] name = "sp-keyring" version = "24.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "lazy_static", "sp-core", @@ -8039,7 +8582,7 @@ dependencies = [ [[package]] name = "sp-keystore" version = "0.27.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "parity-scale-codec", "parking_lot 0.12.1", @@ -8051,7 +8594,7 @@ dependencies = [ [[package]] name = "sp-maybe-compressed-blob" version = "4.1.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "thiserror", "zstd 0.12.4", @@ -8060,7 +8603,7 @@ dependencies = [ [[package]] name = "sp-metadata-ir" version = "0.1.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "frame-metadata", "parity-scale-codec", @@ -8071,7 +8614,7 @@ dependencies = [ [[package]] name = "sp-mmr-primitives" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "ckb-merkle-mountain-range", "log", @@ -8089,7 +8632,7 @@ dependencies = [ [[package]] name = "sp-npos-elections" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "parity-scale-codec", "scale-info", @@ -8103,7 +8646,7 @@ dependencies = [ [[package]] name = "sp-offchain" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "sp-api", "sp-core", @@ -8113,7 +8656,7 @@ dependencies = [ [[package]] name = "sp-panic-handler" version = "8.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "backtrace", "lazy_static", @@ -8123,7 +8666,7 @@ dependencies = [ [[package]] name = "sp-rpc" version = "6.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "rustc-hash", "serde", @@ -8133,7 +8676,7 @@ dependencies = [ [[package]] name = "sp-runtime" version = "24.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "either", "hash256-std-hasher", @@ -8155,7 +8698,7 @@ dependencies = [ [[package]] name = "sp-runtime-interface" version = "17.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "bytes", "impl-trait-for-tuples", @@ -8173,7 +8716,7 @@ dependencies = [ [[package]] name = "sp-runtime-interface-proc-macro" version = "11.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "Inflector", "proc-macro-crate", @@ -8185,7 +8728,7 @@ dependencies = [ [[package]] name = "sp-session" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "parity-scale-codec", "scale-info", @@ -8200,7 +8743,7 @@ dependencies = [ [[package]] name = "sp-staking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "impl-trait-for-tuples", "parity-scale-codec", @@ -8214,7 +8757,7 @@ dependencies = [ [[package]] name = "sp-state-machine" version = "0.28.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "hash-db", "log", @@ -8235,7 +8778,7 @@ dependencies = [ [[package]] name = "sp-statement-store" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "aes-gcm 0.10.2", "curve25519-dalek 3.2.0", @@ -8259,12 +8802,12 @@ dependencies = [ [[package]] name = "sp-std" version = "8.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" [[package]] name = "sp-storage" version = "13.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "impl-serde", "parity-scale-codec", @@ -8277,7 +8820,7 @@ dependencies = [ [[package]] name = "sp-timestamp" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "async-trait", "parity-scale-codec", @@ -8290,7 +8833,7 @@ dependencies = [ [[package]] name = "sp-tracing" version = "10.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "parity-scale-codec", "sp-std", @@ -8302,7 +8845,7 @@ dependencies = [ [[package]] name = "sp-transaction-pool" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "sp-api", "sp-runtime", @@ -8311,7 +8854,7 @@ dependencies = [ [[package]] name = "sp-transaction-storage-proof" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "async-trait", "parity-scale-codec", @@ -8326,7 +8869,7 @@ dependencies = [ [[package]] name = "sp-trie" version = "22.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "ahash 0.8.3", "hash-db", @@ -8349,7 +8892,7 @@ dependencies = [ [[package]] name = "sp-version" version = "22.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "impl-serde", "parity-scale-codec", @@ -8366,7 +8909,7 @@ dependencies = [ [[package]] name = "sp-version-proc-macro" version = "8.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "parity-scale-codec", "proc-macro2", @@ -8377,7 +8920,7 @@ dependencies = [ [[package]] name = "sp-wasm-interface" version = "14.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "anyhow", "impl-trait-for-tuples", @@ -8390,7 +8933,7 @@ dependencies = [ [[package]] name = "sp-weights" version = "20.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "parity-scale-codec", "scale-info", @@ -8531,10 +9074,49 @@ dependencies = [ "zeroize", ] +[[package]] +name = "substrate-build-script-utils" +version = "3.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" + +[[package]] +name = "substrate-cli-test-utils" +version = "0.1.0" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +dependencies = [ + "assert_cmd", + "futures", + "nix 0.26.2", + "node-primitives", + "regex", + "sp-rpc", + "substrate-rpc-client", + "tokio", +] + +[[package]] +name = "substrate-frame-rpc-system" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +dependencies = [ + "frame-system-rpc-runtime-api", + "futures", + "jsonrpsee", + "log", + "parity-scale-codec", + "sc-rpc-api", + "sc-transaction-pool-api", + "sp-api", + "sp-block-builder", + "sp-blockchain", + "sp-core", + "sp-runtime", +] + [[package]] name = "substrate-prometheus-endpoint" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "hyper", "log", @@ -8546,7 +9128,7 @@ dependencies = [ [[package]] name = "substrate-rpc-client" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "async-trait", "jsonrpsee", @@ -8559,7 +9141,7 @@ dependencies = [ [[package]] name = "substrate-wasm-builder" version = "5.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#f7e81b9be4fb3f2906a3768fe74d70c8228ab553" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" dependencies = [ "ansi_term", "build-helper", @@ -8695,6 +9277,12 @@ dependencies = [ "syn 2.0.28", ] +[[package]] +name = "thousands" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3bf63baf9f5039dadc247375c29eb13706706cfde997d0330d05aa63a77d8820" + [[package]] name = "thread_local" version = "1.1.7" @@ -8705,6 +9293,15 @@ 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 = "tikv-jemalloc-sys" version = "0.5.4+5.3.0-patched" @@ -8817,11 +9414,21 @@ version = "0.23.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c43ee83903113e03984cb9e5cebe6c04a5116269e900e3ddba8f068a62adda59" dependencies = [ - "rustls", + "rustls 0.20.8", "tokio", "webpki", ] +[[package]] +name = "tokio-rustls" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081" +dependencies = [ + "rustls 0.21.6", + "tokio", +] + [[package]] name = "tokio-stream" version = "0.1.14" @@ -9101,6 +9708,7 @@ version = "0.1.0" dependencies = [ "clap", "env_logger", + "frame-try-runtime", "node-executor", "node-primitives", "parity-scale-codec", @@ -9111,19 +9719,61 @@ dependencies = [ "try-runtime-core", ] +[[package]] +name = "try-runtime-cli" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +dependencies = [ + "async-trait", + "clap", + "frame-remote-externalities", + "frame-try-runtime", + "hex", + "log", + "parity-scale-codec", + "sc-cli", + "sc-executor", + "serde", + "serde_json", + "sp-api", + "sp-consensus-aura", + "sp-consensus-babe", + "sp-core", + "sp-debug-derive", + "sp-externalities", + "sp-inherents", + "sp-io", + "sp-keystore", + "sp-rpc", + "sp-runtime", + "sp-state-machine", + "sp-timestamp", + "sp-transaction-storage-proof", + "sp-version", + "sp-weights", + "substrate-rpc-client", + "zstd 0.12.4", +] + [[package]] name = "try-runtime-core" version = "0.1.0" dependencies = [ + "assert_cmd", "async-trait", "clap", "frame-remote-externalities", "frame-try-runtime", "hex", "log", + "node-executor", + "node-primitives", + "node-template", "parity-scale-codec", + "regex", "sc-cli", "sc-executor", + "sc-service", "serde", "serde_json", "sp-api", @@ -9136,7 +9786,10 @@ dependencies = [ "sp-state-machine", "sp-version", "sp-weights", + "substrate-cli-test-utils", "substrate-rpc-client", + "tempfile", + "tokio", "zstd 0.11.2+zstd.1.5.2", ] @@ -9164,6 +9817,12 @@ version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba" +[[package]] +name = "ucd-trie" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9" + [[package]] name = "uint" version = "0.9.5" @@ -9288,6 +9947,15 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" +[[package]] +name = "wait-timeout" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6" +dependencies = [ + "libc", +] + [[package]] name = "waker-fn" version = "1.1.0" @@ -9751,7 +10419,7 @@ version = "0.23.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b03058f88386e5ff5310d9111d53f48b17d732b401aeb83a8d5190f2ac459338" dependencies = [ - "rustls-webpki", + "rustls-webpki 0.100.1", ] [[package]] From 64c8f61f259ffe211f4c69c78a9c817767bc3a5f Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Tue, 8 Aug 2023 12:26:43 +0700 Subject: [PATCH 19/44] tweak docs --- .github/workflows/rust-docs.yaml | 2 +- Cargo.lock | 1 + cli/Cargo.toml | 5 +-- cli/main.rs | 60 +++++++++++++++++++------------- 4 files changed, 41 insertions(+), 27 deletions(-) diff --git a/.github/workflows/rust-docs.yaml b/.github/workflows/rust-docs.yaml index 0f6a59f0f72..81663fd3411 100644 --- a/.github/workflows/rust-docs.yaml +++ b/.github/workflows/rust-docs.yaml @@ -31,7 +31,7 @@ jobs: - name: Build docs uses: actions-rs/cargo@v1 with: - command: doc + command: doc --no-deps - name: Deploy to GitHub Pages uses: peaceiris/actions-gh-pages@v3 diff --git a/Cargo.lock b/Cargo.lock index 114f0b0ede3..80c256b50d9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -9708,6 +9708,7 @@ version = "0.1.0" dependencies = [ "clap", "env_logger", + "frame-support", "frame-try-runtime", "node-executor", "node-primitives", diff --git a/cli/Cargo.toml b/cli/Cargo.toml index 1645073e3df..2bbe0bc04c0 100644 --- a/cli/Cargo.toml +++ b/cli/Cargo.toml @@ -16,6 +16,8 @@ path = "main.rs" targets = ["x86_64-unknown-linux-gnu"] [dependencies] +try-runtime-core = { path = "../core", features = ["cli"] } + clap = { version = "4.0.9", features = ["derive"] } env_logger = "0.10.0" parity-scale-codec = { version = "3.6.1", features = ["derive"] } @@ -28,5 +30,4 @@ sp-io = { git = "https://github.com/paritytech/substrate", branch = "master" } sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "master" } node-executor = { git = "https://github.com/paritytech/substrate", branch = "master" } node-primitives = { git = "https://github.com/paritytech/substrate", branch = "master" } - -try-runtime-core = { path = "../core", features = ["cli"] } +frame-support = { git = "https://github.com/paritytech/substrate", branch = "master", features=["try-runtime", "experimental"] } diff --git a/cli/main.rs b/cli/main.rs index 8d394b0aa44..11a4f2c98cc 100644 --- a/cli/main.rs +++ b/cli/main.rs @@ -74,7 +74,7 @@ //! Then, the specific command has to be specified. See [`Action`] for more information about each //! command's specific customization flags, and assumptions regarding the runtime being used. //! -//! Said briefly, this CLI is capable of executing: +//! Briefly, this CLI is capable of executing: //! //! * [`Action::OnRuntimeUpgrade`]: execute all the `on_runtime_upgrade` hooks. //! * [`Action::ExecuteBlock`]: re-execute the given block. @@ -110,15 +110,16 @@ //! //! ## Best Practices //! -//! Try-runtime is all about battle-testing unreleased runtime. The following list of suggestions -//! help developers maximize the testing coverage and make base use of `try-runtime`. +//! Try-runtime is all about battle-testing unreleased runtimes. The following list of suggestions +//! help developers maximize their testing coverage and make the best use of `try-runtime` features. //! -//! #### Adding pre/post hooks +//! ### Testing Runtime Upgrades //! -//! One of the gems that come only in the `try-runtime` feature flag is the `pre_upgrade` and -//! `post_upgrade` hooks for `OnRuntimeUpgrade`. This trait is implemented either inside the pallet, -//! or manually in a runtime, to define a migration. In both cases, these functions can be added, -//! given the right flag: +//! One of the most powerful abilities of `try-runtime` is using the +//! [`OnRuntimeUpgrade::pre_upgrade`] and [`OnRuntimeUpgrade::post_upgrade`] hooks to test runtime +//! upgrades implemented with [`OnRuntimeUpgrade`]. [`OnRuntimeUpgrade`] can be implemented inside +//! the pallet, or standalone in a runtime to define a migration to execute next runtime upgrade. In +//! both cases, these methods can be added: //! //! ```ignore //! #[cfg(feature = "try-runtime")] @@ -130,12 +131,25 @@ //! //! (The pallet macro syntax will support this simply as a part of `#[pallet::hooks]`). //! -//! These hooks allow you to execute some code, only within the `on-runtime-upgrade` command, before -//! and after the migration. Moreover, `pre_upgrade` can return a `Vec` that contains arbitrary -//! encoded data (usually some pre-upgrade state) which will be passed to `post_upgrade` after -//! upgrading and used for post checking. +//! These hooks will be called when you execute the [`Action::OnRuntimeUpgrade`] command, before and +//! after the migration. [`OnRuntimeUpgrade::pre_upgrade`] returns a [`Vec`] that can contain +//! arbitrary encoded data (usually some pre-upgrade state) which will be passed to +//! [`OnRuntimeUpgrade::pre_upgrade`] after upgrading and used for post checking. //! -//! ## State Consistency +//! ### Guarding migrations and [`VersionedRuntimeUpgrade`] +//! +//! Always make sure that any migration code is guarded either by `StorageVersion`, or by some +//! custom storage item, so that it is NEVER executed twice, even if the code lives in two +//! consecutive runtimes. +//! +//! TODO: Briefly explain [`VersionedRuntimeUpgrade`] and link out to its docs. +//! +//! #### Examples +//! +//! TODO: Provide end-to-end examples of writing a runtime upgrade, and testing it with the CLI. One +//! example with [`VersionedRuntimeUpgrade`], one without. +//! +//! ### State Consistency //! //! Similarly, each pallet can expose a function in `#[pallet::hooks]` section as follows: //! @@ -145,21 +159,15 @@ //! ``` //! //! which is called on numerous code paths in the try-runtime tool. These checks should ensure that -//! the state of the pallet is consistent and correct. See `frame_support::try_runtime::TryState` -//! for more info. +//! the state of the pallet is consistent and correct. See [`frame_support::traits::TryState`] for +//! more info. //! -//! #### Logging +//! ### Logging //! //! It is super helpful to make sure your migration code uses logging (always with a `runtime` log //! target prefix, e.g. `runtime::balance`) and state exactly at which stage it is, and what it is //! doing. //! -//! #### Guarding migrations -//! -//! Always make sure that any migration code is guarded either by `StorageVersion`, or by some -//! custom storage item, so that it is NEVER executed twice, even if the code lives in two -//! consecutive runtimes. -//! //! ## Examples //! //! For the following examples, we assume the existence of the following: @@ -233,8 +241,8 @@ //! This can still be customized at a given block with `--at`. If you want to use a snapshot, you //! can still use `--block-ws-uri` to provide a node form which the block data can be fetched. //! -//! Moreover, this runs the `frame_support::try_runtime::TryState` hooks as well. The hooks to run -//! can be customized with the `--try-state`. For example: +//! Moreover, this runs the [`frame_support::traits::TryState`] hooks as well. The hooks to run can +//! be customized with the `--try-state`. For example: //! //! ```bash //! ./try-runtime-cli \ @@ -269,6 +277,10 @@ use std::env; use clap::Parser; #[allow(unused_imports)] // used in doc generation +use frame_support::migrations::VersionedRuntimeUpgrade; +#[allow(unused_imports)] // used in doc generation +use frame_support::traits::{OnRuntimeUpgrade, TryState}; +#[allow(unused_imports)] // used in doc generation use frame_try_runtime::TryStateSelect; use node_executor::ExecutorDispatch; use node_primitives::Block; From 4d08d016ee4b7a32324a4b5d02ebe748f34654b2 Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Tue, 8 Aug 2023 12:33:30 +0700 Subject: [PATCH 20/44] fix no deps arg --- .github/workflows/rust-docs.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/rust-docs.yaml b/.github/workflows/rust-docs.yaml index 81663fd3411..e6fc1756de9 100644 --- a/.github/workflows/rust-docs.yaml +++ b/.github/workflows/rust-docs.yaml @@ -31,7 +31,8 @@ jobs: - name: Build docs uses: actions-rs/cargo@v1 with: - command: doc --no-deps + command: doc + args: --no-deps - name: Deploy to GitHub Pages uses: peaceiris/actions-gh-pages@v3 From 8055e80ed78f8a449917a45cb4f8b35ebad8efe3 Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Tue, 8 Aug 2023 12:34:39 +0700 Subject: [PATCH 21/44] update readme --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 64258e5be8d..265481b83c9 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ Substrate’s testing framework for the power users. -👉 [Documentation](https://paritytech.github.io/try-runtime-cli) +📖 [Documentation](https://paritytech.github.io/try-runtime-cli) ## Usage From 1d14febd79f6a0ff83ec57733067d60bcd9e3813 Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Tue, 8 Aug 2023 12:35:44 +0700 Subject: [PATCH 22/44] update docs --- README.md | 2 +- cli/main.rs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 265481b83c9..47f8a463ba0 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # try-runtime-cli -Substrate’s testing framework for the power users. +Substrate's programatic testing framework for power users. 📖 [Documentation](https://paritytech.github.io/try-runtime-cli) diff --git a/cli/main.rs b/cli/main.rs index 11a4f2c98cc..18f8ed16e45 100644 --- a/cli/main.rs +++ b/cli/main.rs @@ -17,7 +17,7 @@ //! # Try-runtime //! -//! Substrate's ultimate testing framework for the power users. +//! Substrate's programatic testing framework for power users. //! //! > As the name suggests, `try-runtime` is a detailed testing framework that gives you a lot of //! control over what is being executed in which environment. It is recommended that user's first From 198e16450ad05ae85c726edbb11f4256d0bee8bf Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Tue, 8 Aug 2023 12:59:58 +0700 Subject: [PATCH 23/44] rust docs workflow --- .github/workflows/rust-docs.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/rust-docs.yaml b/.github/workflows/rust-docs.yaml index e6fc1756de9..a4bd065dea4 100644 --- a/.github/workflows/rust-docs.yaml +++ b/.github/workflows/rust-docs.yaml @@ -1,9 +1,9 @@ -name: Rust Docs to GitHub Pages +name: Update rust docs on: push: branches: - - liam-v0.1.0 + - main jobs: docs: From 7be1543acf30744c5e011626a538a6b8d41f25c8 Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Tue, 8 Aug 2023 13:39:55 +0700 Subject: [PATCH 24/44] update descriptions --- .github/workflows/rust-docs.yaml | 2 +- cli/Cargo.toml | 2 +- core/Cargo.toml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/rust-docs.yaml b/.github/workflows/rust-docs.yaml index a4bd065dea4..5395857c7d7 100644 --- a/.github/workflows/rust-docs.yaml +++ b/.github/workflows/rust-docs.yaml @@ -3,7 +3,7 @@ name: Update rust docs on: push: branches: - - main + - liam-v0.1.0 jobs: docs: diff --git a/cli/Cargo.toml b/cli/Cargo.toml index 2bbe0bc04c0..4ea6651469f 100644 --- a/cli/Cargo.toml +++ b/cli/Cargo.toml @@ -6,7 +6,7 @@ edition.workspace = true license.workspace = true homepage.workspace = true repository.workspace = true -description = "CLI tool for runtime testing and dry-running" +description = "Substrate's programatic testing framework for power users." [[bin]] name = "try-runtime-cli" diff --git a/core/Cargo.toml b/core/Cargo.toml index b2c59ac148b..396c9f0e045 100644 --- a/core/Cargo.toml +++ b/core/Cargo.toml @@ -6,7 +6,7 @@ edition.workspace = true license.workspace = true homepage.workspace = true repository.workspace = true -description = "Runtime testing and dry-running" +description = "Substrate's programatic testing framework for power users." [package.metadata.docs.rs] targets = ["x86_64-unknown-linux-gnu"] From dddd24a3889cc02eeb48c96a9ab6b9e6a423704e Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Tue, 8 Aug 2023 13:41:01 +0700 Subject: [PATCH 25/44] fix docs link --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 47f8a463ba0..af15c520055 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ Substrate's programatic testing framework for power users. -📖 [Documentation](https://paritytech.github.io/try-runtime-cli) +📖 [Documentation](https://paritytech.github.io/try-runtime-cli/try_runtime_cli) ## Usage From 523dfa24164375eef8bb9fcd86bb760a126cc783 Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Tue, 8 Aug 2023 13:57:43 +0700 Subject: [PATCH 26/44] improve docs --- Cargo.lock | 2 -- cli/Cargo.toml | 2 -- cli/main.rs | 51 ++++++++++++++++++++++++++++---------------------- 3 files changed, 29 insertions(+), 26 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 80c256b50d9..8129bd72f19 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -9708,8 +9708,6 @@ version = "0.1.0" dependencies = [ "clap", "env_logger", - "frame-support", - "frame-try-runtime", "node-executor", "node-primitives", "parity-scale-codec", diff --git a/cli/Cargo.toml b/cli/Cargo.toml index 4ea6651469f..a5acb99ac7a 100644 --- a/cli/Cargo.toml +++ b/cli/Cargo.toml @@ -24,10 +24,8 @@ parity-scale-codec = { version = "3.6.1", features = ["derive"] } tokio = { version = "1.25.0", features = ["full"] } # Substrate -frame-try-runtime = { git = "https://github.com/paritytech/substrate", branch = "master", features=["try-runtime"] } sc-executor = { git = "https://github.com/paritytech/substrate", branch = "master" } sp-io = { git = "https://github.com/paritytech/substrate", branch = "master" } sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "master" } node-executor = { git = "https://github.com/paritytech/substrate", branch = "master" } node-primitives = { git = "https://github.com/paritytech/substrate", branch = "master" } -frame-support = { git = "https://github.com/paritytech/substrate", branch = "master", features=["try-runtime", "experimental"] } diff --git a/cli/main.rs b/cli/main.rs index 18f8ed16e45..d863a1a9295 100644 --- a/cli/main.rs +++ b/cli/main.rs @@ -38,8 +38,8 @@ //! ## Background Knowledge //! //! The basis of all try-runtime commands is the same: connect to a live node, scrape its *state* -//! and put it inside a `TestExternalities`, then call into a *specific runtime-api* using the given -//! state and some *runtime*. +//! and put it inside a [`TestExternalities`], then call into a *specific runtime-api* using the +//! given state and some *runtime*. //! //! Alternatively, the state could come from a snapshot file. //! @@ -47,9 +47,9 @@ //! //! 1. **State** is the key-value pairs of data that comprise the canonical information that any //! blockchain is keeping. A state can be full (all key-value pairs), or be partial (only pairs -//! related to some pallets/prefixes). Moreover, some keys are especial and are not related to -//! specific pallets, known as `well_known_keys` in substrate. The most important of these is the -//! `:CODE:` key, which contains the code used for execution, when wasm execution is chosen. +//! related to some pallets/prefixes). Moreover, some keys are special and are not related to +//! specific pallets, known as [`well_known_keys`] in substrate. The most important of these is +//! the `:CODE:` key, which contains the code used for execution, when wasm execution is chosen. //! //! 2. *A runtime-api* call is a call into a function defined in the runtime, *on top of a given //! state*. Each subcommand of `try-runtime` utilizes a specific *runtime-api*. @@ -76,14 +76,14 @@ //! //! Briefly, this CLI is capable of executing: //! -//! * [`Action::OnRuntimeUpgrade`]: execute all the `on_runtime_upgrade` hooks. +//! * [`Action::OnRuntimeUpgrade`]: execute all the [`OnRuntimeUpgrade`] hooks. //! * [`Action::ExecuteBlock`]: re-execute the given block. //! * [`Action::OffchainWorker`]: re-execute the given block's offchain worker code path. //! * [`Action::FollowChain`]: continuously execute the blocks of a remote chain on top of a given //! runtime. //! * [`Action::CreateSnapshot`]: Create a snapshot file from a remote node. //! -//! Finally, To make sure there are no errors regarding this, always run any `try-runtime` command +//! Finally, to make sure there are no errors regarding this, always run any `try-runtime` command //! with `executor=trace` logging targets, which will specify which runtime is being used per api //! call. Moreover, `remote-ext`, `try-runtime` and `runtime` logs targets will also be useful. //! @@ -159,8 +159,7 @@ //! ``` //! //! which is called on numerous code paths in the try-runtime tool. These checks should ensure that -//! the state of the pallet is consistent and correct. See [`frame_support::traits::TryState`] for -//! more info. +//! the state of the pallet is consistent and correct. See [`TryState`] for more info. //! //! ### Logging //! @@ -241,8 +240,8 @@ //! This can still be customized at a given block with `--at`. If you want to use a snapshot, you //! can still use `--block-ws-uri` to provide a node form which the block data can be fetched. //! -//! Moreover, this runs the [`frame_support::traits::TryState`] hooks as well. The hooks to run can -//! be customized with the `--try-state`. For example: +//! Moreover, this runs the [`TryState`] hooks as well. The hooks to run can be customized with the +//! `--try-state`. For example: //! //! ```bash //! ./try-runtime-cli \ @@ -272,24 +271,32 @@ //! --uri ws://localhost:9999 \ //! --try-state rr-3 //! ``` +//! +//! [`VersionedRuntimeUpgrade`]: https://paritytech.github.io/substrate/master/frame_support/migrations/struct.VersionedRuntimeUpgrade.html +//! [`OnRuntimeUpgrade`]: https://paritytech.github.io/substrate/master/frame_support/traits/trait.OnRuntimeUpgrade.html +//! [`OnRuntimeUpgrade::pre_upgrade`]: https://paritytech.github.io/substrate/master/frame_support/traits/trait.OnRuntimeUpgrade.html#method.pre_upgrade +//! [`OnRuntimeUpgrade::post_upgrade`]: https://paritytech.github.io/substrate/master/frame_support/traits/trait.OnRuntimeUpgrade.html#method.post_upgrade +//! [`TryState`]: https://paritytech.github.io/substrate/master/frame_support/traits/trait.TryState.html +//! [`TryStateSelect`]: https://paritytech.github.io/substrate/master/frame_support/traits/enum.TryStateSelect.html +//! [`Action`]: ../try_runtime_core/commands/enum.Action.html +//! [`Action::FollowChain`]: ../try_runtime_core/commands/enum.Action.html#variant.FollowChain +//! [`Action::OnRuntimeUpgrade`]: ../try_runtime_core/commands/enum.Action.html#variant.OnRuntimeUpgrade +//! [`Action::ExecuteBlock`]: ../try_runtime_core/commands/enum.Action.html#variant.ExecuteBlock +//! [`Action::OffchainWorker`]: ../try_runtime_core/commands/enum.Action.html#variant.OffchainWorker +//! [`Action::CreateSnapshot`]: ../try_runtime_core/commands/enum.Action.html#variant.CreateSnapshot +//! [`SharedParams`]: ../try_runtime_core/shared_parameters/struct.SharedParams.html +//! [`SharedParams::runtime`]: ../try_runtime_core/shared_parameters/struct.SharedParams.html#structfield.runtime +//! [`SharedParams::overwrite_state_version`]: ../try_runtime_core/shared_parameters/struct.SharedParams.html#structfield.overwrite_state_version +//! [`TryState`]: https://paritytech.github.io/substrate/master/frame_support/traits/trait.TryState.html +//! [`TestExternalities`]: https://paritytech.github.io/substrate/master/sp_state_machine/struct.TestExternalities.html +//! [`well_known_keys`]: https://paritytech.github.io/substrate/master/sp_storage/well_known_keys/index.html use std::env; use clap::Parser; -#[allow(unused_imports)] // used in doc generation -use frame_support::migrations::VersionedRuntimeUpgrade; -#[allow(unused_imports)] // used in doc generation -use frame_support::traits::{OnRuntimeUpgrade, TryState}; -#[allow(unused_imports)] // used in doc generation -use frame_try_runtime::TryStateSelect; use node_executor::ExecutorDispatch; use node_primitives::Block; use try_runtime_core::commands::TryRuntime; -#[allow(unused_imports)] // used in doc generation -use try_runtime_core::{ - commands::Action, - shared_parameters::{Runtime, SharedParams}, -}; fn init_env() { if env::var(env_logger::DEFAULT_FILTER_ENV).is_err() { From e80051fd657d6fa9642250583a6fa696a14a6db6 Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Tue, 8 Aug 2023 14:11:09 +0700 Subject: [PATCH 27/44] typo --- README.md | 2 +- cli/Cargo.toml | 2 +- cli/main.rs | 2 +- core/Cargo.toml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index af15c520055..175863cb678 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # try-runtime-cli -Substrate's programatic testing framework for power users. +Substrate's programmatic testing framework for power users. 📖 [Documentation](https://paritytech.github.io/try-runtime-cli/try_runtime_cli) diff --git a/cli/Cargo.toml b/cli/Cargo.toml index a5acb99ac7a..4a4845ea1dd 100644 --- a/cli/Cargo.toml +++ b/cli/Cargo.toml @@ -6,7 +6,7 @@ edition.workspace = true license.workspace = true homepage.workspace = true repository.workspace = true -description = "Substrate's programatic testing framework for power users." +description = "Substrate's programmatic testing framework for power users." [[bin]] name = "try-runtime-cli" diff --git a/cli/main.rs b/cli/main.rs index d863a1a9295..8c184f56616 100644 --- a/cli/main.rs +++ b/cli/main.rs @@ -17,7 +17,7 @@ //! # Try-runtime //! -//! Substrate's programatic testing framework for power users. +//! Substrate's programmatic testing framework for power users. //! //! > As the name suggests, `try-runtime` is a detailed testing framework that gives you a lot of //! control over what is being executed in which environment. It is recommended that user's first diff --git a/core/Cargo.toml b/core/Cargo.toml index 396c9f0e045..7a9dfbe9f28 100644 --- a/core/Cargo.toml +++ b/core/Cargo.toml @@ -6,7 +6,7 @@ edition.workspace = true license.workspace = true homepage.workspace = true repository.workspace = true -description = "Substrate's programatic testing framework for power users." +description = "Substrate's programmatic testing framework for power users." [package.metadata.docs.rs] targets = ["x86_64-unknown-linux-gnu"] From 549278a0aabd35ffaedb4baa7930fe5e012464bb Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Tue, 8 Aug 2023 15:08:22 +0700 Subject: [PATCH 28/44] update tests --- core/tests/create_snapshot.rs | 14 ++++++++++---- core/tests/execute_block.rs | 14 ++++++++++---- core/tests/follow_chain.rs | 12 +++++++++--- 3 files changed, 29 insertions(+), 11 deletions(-) diff --git a/core/tests/create_snapshot.rs b/core/tests/create_snapshot.rs index f855ef1ba0e..c88b8559e01 100644 --- a/core/tests/create_snapshot.rs +++ b/core/tests/create_snapshot.rs @@ -31,11 +31,17 @@ use tokio::process::Command; #[tokio::test] async fn create_snapshot_works() { - let ws_url = "ws://localhost:45789"; + let port = 45789; + let ws_url = format!("ws://localhost:{}", port); // Spawn a dev node. let _ = std::thread::spawn(move || { - common::start_node_without_binary(); + match common::start_node_inline(vec!["--dev", format!("--rpc-port={}", port).as_str()]) { + Ok(_) => {} + Err(e) => { + panic!("Node exited with error: {}", e); + } + } }); // Wait 30 seconds to ensure the node is warmed up. std::thread::sleep(Duration::from_secs(30)); @@ -61,10 +67,10 @@ async fn create_snapshot_works() { .unwrap() } let block_number = 2; - let block_hash = common::block_hash(block_number, ws_url).await.unwrap(); + let block_hash = common::block_hash(block_number, &ws_url).await.unwrap(); // Try to create a snapshot. - let mut snapshot_creation = create_snapshot(ws_url, &snap_file_path, block_hash); + let mut snapshot_creation = create_snapshot(&ws_url, &snap_file_path, block_hash); let re = Regex::new(r".*writing snapshot of (\d+) bytes to .*").unwrap(); let matched = diff --git a/core/tests/execute_block.rs b/core/tests/execute_block.rs index 2eb39b32231..962c5698991 100644 --- a/core/tests/execute_block.rs +++ b/core/tests/execute_block.rs @@ -27,11 +27,17 @@ use tokio::process::Command; #[tokio::test] async fn execute_block_works() { - let ws_url = "ws://localhost:45789"; + let port = 45789; + let ws_url = format!("ws://localhost:{}", port); // Spawn a dev node. let _ = std::thread::spawn(move || { - common::start_node_without_binary(); + match common::start_node_inline(vec!["--dev", format!("--rpc-port={}", port).as_str()]) { + Ok(_) => {} + Err(e) => { + panic!("Node exited with error: {}", e); + } + } }); // Wait 30 seconds to ensure the node is warmed up. std::thread::sleep(Duration::from_secs(30)); @@ -51,10 +57,10 @@ async fn execute_block_works() { } let block_number = 1; - let block_hash = common::block_hash(block_number, ws_url).await.unwrap(); + let block_hash = common::block_hash(block_number, &ws_url).await.unwrap(); // Try to execute the block. - let mut block_execution = execute_block(ws_url, block_hash); + let mut block_execution = execute_block(&ws_url, block_hash); // The execute-block command is actually executing the next block. let expected_output = format!( diff --git a/core/tests/follow_chain.rs b/core/tests/follow_chain.rs index 5f466355a29..be5e8ebd270 100644 --- a/core/tests/follow_chain.rs +++ b/core/tests/follow_chain.rs @@ -26,11 +26,17 @@ use tokio::process::Command; #[tokio::test] async fn follow_chain_works() { - let ws_url = "ws://localhost:45789"; + let port = 45789; + let ws_url = format!("ws://localhost:{}", port); // Spawn a dev node. let _ = std::thread::spawn(move || { - common::start_node_without_binary(); + match common::start_node_inline(vec!["--dev", format!("--rpc-port={}", port).as_str()]) { + Ok(_) => {} + Err(e) => { + panic!("Node exited with error: {}", e); + } + } }); // Wait 30 seconds to ensure the node is warmed up. std::thread::sleep(Duration::from_secs(30)); @@ -48,7 +54,7 @@ async fn follow_chain_works() { } // Kick off the follow-chain process and wait for it to process at least 3 blocks. - let mut follow = start_follow(ws_url); + let mut follow = start_follow(&ws_url); let re = Regex::new(r".*executed block ([3-9]|[1-9]\d+).*").unwrap(); let matched = common::wait_for_stream_pattern_match(follow.stderr.take().unwrap(), re).await; From 503ebebb534c823f4b6b8ca9aaba1aadade945b5 Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Tue, 8 Aug 2023 15:33:24 +0700 Subject: [PATCH 29/44] prepare for merging --- .github/workflows/rust-docs.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/rust-docs.yaml b/.github/workflows/rust-docs.yaml index 5395857c7d7..a4bd065dea4 100644 --- a/.github/workflows/rust-docs.yaml +++ b/.github/workflows/rust-docs.yaml @@ -3,7 +3,7 @@ name: Update rust docs on: push: branches: - - liam-v0.1.0 + - main jobs: docs: From 81ec69d9038b936b7e0b60a5c05c758fcf1c64d5 Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Tue, 8 Aug 2023 18:56:23 +0700 Subject: [PATCH 30/44] use latest substrate in tests --- Cargo.lock | 909 +++++++++++++++++++++++----------- core/Cargo.toml | 4 +- core/tests/create_snapshot.rs | 10 +- core/tests/execute_block.rs | 10 +- core/tests/follow_chain.rs | 10 +- 5 files changed, 641 insertions(+), 302 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 8129bd72f19..93f69fb0441 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -527,6 +527,7 @@ dependencies = [ "cc", "cfg-if", "constant_time_eq 0.3.0", + "digest 0.10.7", ] [[package]] @@ -849,6 +850,15 @@ dependencies = [ "strsim", ] +[[package]] +name = "clap_complete" +version = "4.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5fc443334c81a804575546c5a8a79b4913b50e28d69232903604cada1de817ce" +dependencies = [ + "clap", +] + [[package]] name = "clap_derive" version = "4.3.12" @@ -1833,7 +1843,7 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] name = "fork-tree" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "parity-scale-codec", ] @@ -1856,7 +1866,7 @@ checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa" [[package]] name = "frame-benchmarking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-support", "frame-support-procedural", @@ -1881,7 +1891,7 @@ dependencies = [ [[package]] name = "frame-benchmarking-cli" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "Inflector", "array-bytes", @@ -1929,7 +1939,7 @@ dependencies = [ [[package]] name = "frame-benchmarking-pallet-pov" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -1944,7 +1954,7 @@ dependencies = [ [[package]] name = "frame-election-provider-solution-type" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "proc-macro-crate", "proc-macro2", @@ -1955,7 +1965,7 @@ dependencies = [ [[package]] name = "frame-election-provider-support" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-election-provider-solution-type", "frame-support", @@ -1972,7 +1982,7 @@ dependencies = [ [[package]] name = "frame-executive" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-support", "frame-system", @@ -2001,7 +2011,7 @@ dependencies = [ [[package]] name = "frame-remote-externalities" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "async-recursion", "futures", @@ -2022,7 +2032,7 @@ dependencies = [ [[package]] name = "frame-support" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "aquamarine", "bitflags 1.3.2", @@ -2059,7 +2069,7 @@ dependencies = [ [[package]] name = "frame-support-procedural" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "Inflector", "cfg-expr", @@ -2077,7 +2087,7 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-support-procedural-tools-derive", "proc-macro-crate", @@ -2089,7 +2099,7 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools-derive" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "proc-macro2", "quote", @@ -2099,7 +2109,7 @@ dependencies = [ [[package]] name = "frame-system" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "cfg-if", "frame-support", @@ -2118,7 +2128,7 @@ dependencies = [ [[package]] name = "frame-system-benchmarking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -2133,7 +2143,7 @@ dependencies = [ [[package]] name = "frame-system-rpc-runtime-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "parity-scale-codec", "sp-api", @@ -2142,7 +2152,7 @@ dependencies = [ [[package]] name = "frame-try-runtime" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-support", "parity-scale-codec", @@ -2167,6 +2177,16 @@ dependencies = [ "winapi", ] +[[package]] +name = "fs4" +version = "0.6.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2eeb4ed9e12f43b7fa0baae3f9cdda28352770132ef2e09a23760c29cae8bd47" +dependencies = [ + "rustix 0.38.6", + "windows-sys 0.48.0", +] + [[package]] name = "funty" version = "2.0.0" @@ -3137,7 +3157,7 @@ dependencies = [ [[package]] name = "kitchensink-runtime" version = "3.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-benchmarking-pallet-pov", @@ -4053,6 +4073,22 @@ dependencies = [ "windows-sys 0.48.0", ] +[[package]] +name = "mmr-rpc" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" +dependencies = [ + "anyhow", + "jsonrpsee", + "parity-scale-codec", + "serde", + "sp-api", + "sp-blockchain", + "sp-core", + "sp-mmr-primitives", + "sp-runtime", +] + [[package]] name = "mockall" version = "0.11.4" @@ -4121,7 +4157,7 @@ dependencies = [ "blake3", "core2", "digest 0.10.7", - "multihash-derive", + "multihash-derive 0.8.0", "sha2 0.10.7", "sha3", "unsigned-varint", @@ -4137,11 +4173,55 @@ dependencies = [ "unsigned-varint", ] +[[package]] +name = "multihash-codetable" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e46d7ff0b9b8d818e709e12135bfb6582fcde982ba2be48ea52e6e1df098c7a4" +dependencies = [ + "blake2b_simd", + "blake2s_simd", + "blake3", + "core2", + "digest 0.10.7", + "multihash-derive 0.9.0", + "ripemd", + "sha-1 0.10.1", + "sha2 0.10.7", + "sha3", + "strobe-rs", +] + [[package]] name = "multihash-derive" -version = "0.8.1" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d6d4752e6230d8ef7adf7bd5d8c4b1f6561c1014c5ba9a37445ccefe18aa1db" +checksum = "fc076939022111618a5026d3be019fd8b366e76314538ff9a1b59ffbcbf98bcd" +dependencies = [ + "proc-macro-crate", + "proc-macro-error", + "proc-macro2", + "quote", + "syn 1.0.109", + "synstructure", +] + +[[package]] +name = "multihash-derive" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "890e72cb7396cb99ed98c1246a97b243cc16394470d94e0bc8b0c2c11d84290e" +dependencies = [ + "core2", + "multihash 0.19.0", + "multihash-derive-impl", +] + +[[package]] +name = "multihash-derive-impl" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d38685e08adb338659871ecfc6ee47ba9b22dcc8abcf6975d379cc49145c3040" dependencies = [ "proc-macro-crate", "proc-macro-error", @@ -4299,112 +4379,150 @@ dependencies = [ ] [[package]] -name = "node-executor" +name = "node-cli" version = "3.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" -dependencies = [ - "frame-benchmarking", - "kitchensink-runtime", - "node-primitives", - "parity-scale-codec", - "sc-executor", - "scale-info", - "sp-core", - "sp-keystore", - "sp-state-machine", - "sp-statement-store", - "sp-tracing", - "sp-trie", -] - -[[package]] -name = "node-primitives" -version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" -dependencies = [ - "sp-core", - "sp-runtime", -] - -[[package]] -name = "node-template" -version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ + "array-bytes", "clap", - "frame-benchmarking", + "clap_complete", "frame-benchmarking-cli", "frame-system", + "frame-system-rpc-runtime-api", "futures", "jsonrpsee", - "node-template-runtime", - "pallet-transaction-payment", - "pallet-transaction-payment-rpc", + "kitchensink-runtime", + "log", + "node-executor", + "node-inspect", + "node-primitives", + "node-rpc", + "pallet-asset-conversion-tx-payment", + "pallet-asset-tx-payment", + "pallet-assets", + "pallet-balances", + "pallet-im-online", + "parity-scale-codec", + "rand 0.8.5", + "sc-authority-discovery", "sc-basic-authorship", + "sc-chain-spec", "sc-cli", "sc-client-api", "sc-consensus", - "sc-consensus-aura", + "sc-consensus-babe", "sc-consensus-grandpa", + "sc-consensus-slots", "sc-executor", "sc-network", + "sc-network-common", + "sc-network-statement", + "sc-network-sync", "sc-offchain", - "sc-rpc-api", + "sc-rpc", "sc-service", + "sc-statement-store", + "sc-storage-monitor", + "sc-sync-state-rpc", + "sc-sysinfo", "sc-telemetry", "sc-transaction-pool", "sc-transaction-pool-api", + "serde", + "serde_json", "sp-api", - "sp-block-builder", - "sp-blockchain", - "sp-consensus-aura", + "sp-authority-discovery", + "sp-consensus", + "sp-consensus-babe", "sp-consensus-grandpa", "sp-core", "sp-inherents", "sp-io", "sp-keyring", + "sp-keystore", "sp-runtime", + "sp-statement-store", "sp-timestamp", + "sp-transaction-storage-proof", "substrate-build-script-utils", - "substrate-frame-rpc-system", + "substrate-frame-cli", "try-runtime-cli 0.10.0-dev", ] [[package]] -name = "node-template-runtime" -version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +name = "node-executor" +version = "3.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", - "frame-executive", - "frame-support", - "frame-system", - "frame-system-benchmarking", - "frame-system-rpc-runtime-api", - "frame-try-runtime", - "pallet-aura", - "pallet-balances", - "pallet-grandpa", - "pallet-sudo", - "pallet-template", - "pallet-timestamp", - "pallet-transaction-payment", - "pallet-transaction-payment-rpc-runtime-api", + "kitchensink-runtime", + "node-primitives", "parity-scale-codec", + "sc-executor", "scale-info", + "sp-core", + "sp-keystore", + "sp-state-machine", + "sp-statement-store", + "sp-tracing", + "sp-trie", +] + +[[package]] +name = "node-inspect" +version = "0.9.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" +dependencies = [ + "clap", + "parity-scale-codec", + "sc-cli", + "sc-client-api", + "sc-service", + "sp-blockchain", + "sp-core", + "sp-runtime", + "thiserror", +] + +[[package]] +name = "node-primitives" +version = "2.0.0" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" +dependencies = [ + "sp-core", + "sp-runtime", +] + +[[package]] +name = "node-rpc" +version = "3.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" +dependencies = [ + "jsonrpsee", + "mmr-rpc", + "node-primitives", + "pallet-transaction-payment-rpc", + "sc-chain-spec", + "sc-client-api", + "sc-consensus-babe", + "sc-consensus-babe-rpc", + "sc-consensus-grandpa", + "sc-consensus-grandpa-rpc", + "sc-rpc", + "sc-rpc-api", + "sc-rpc-spec-v2", + "sc-sync-state-rpc", + "sc-transaction-pool-api", "sp-api", "sp-block-builder", - "sp-consensus-aura", - "sp-consensus-grandpa", - "sp-core", - "sp-inherents", - "sp-offchain", + "sp-blockchain", + "sp-consensus", + "sp-consensus-babe", + "sp-keystore", "sp-runtime", - "sp-session", - "sp-std", - "sp-transaction-pool", - "sp-version", - "substrate-wasm-builder", + "sp-statement-store", + "substrate-frame-rpc-system", + "substrate-state-trie-migration-rpc", ] [[package]] @@ -4429,6 +4547,17 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be" +[[package]] +name = "num-bigint" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f93ab6289c7b344a8a9f60f88d80aa20032336fe78da341afc91c8a2341fc75f" +dependencies = [ + "autocfg", + "num-integer", + "num-traits", +] + [[package]] name = "num-complex" version = "0.4.3" @@ -4465,6 +4594,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0" dependencies = [ "autocfg", + "num-bigint", "num-integer", "num-traits", ] @@ -4552,7 +4682,7 @@ dependencies = [ [[package]] name = "pallet-alliance" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -4572,7 +4702,7 @@ dependencies = [ [[package]] name = "pallet-asset-conversion" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -4590,7 +4720,7 @@ dependencies = [ [[package]] name = "pallet-asset-conversion-tx-payment" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-support", "frame-system", @@ -4605,7 +4735,7 @@ dependencies = [ [[package]] name = "pallet-asset-rate" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -4620,7 +4750,7 @@ dependencies = [ [[package]] name = "pallet-asset-tx-payment" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -4638,7 +4768,7 @@ dependencies = [ [[package]] name = "pallet-assets" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -4650,26 +4780,10 @@ dependencies = [ "sp-std", ] -[[package]] -name = "pallet-aura" -version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" -dependencies = [ - "frame-support", - "frame-system", - "pallet-timestamp", - "parity-scale-codec", - "scale-info", - "sp-application-crypto", - "sp-consensus-aura", - "sp-runtime", - "sp-std", -] - [[package]] name = "pallet-authority-discovery" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-support", "frame-system", @@ -4685,7 +4799,7 @@ dependencies = [ [[package]] name = "pallet-authorship" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-support", "frame-system", @@ -4699,7 +4813,7 @@ dependencies = [ [[package]] name = "pallet-babe" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -4723,7 +4837,7 @@ dependencies = [ [[package]] name = "pallet-bags-list" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -4743,7 +4857,7 @@ dependencies = [ [[package]] name = "pallet-balances" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -4758,7 +4872,7 @@ dependencies = [ [[package]] name = "pallet-bounties" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -4776,7 +4890,7 @@ dependencies = [ [[package]] name = "pallet-child-bounties" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -4795,7 +4909,7 @@ dependencies = [ [[package]] name = "pallet-collective" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -4812,7 +4926,7 @@ dependencies = [ [[package]] name = "pallet-contracts" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "bitflags 1.3.2", "environmental", @@ -4841,7 +4955,7 @@ dependencies = [ [[package]] name = "pallet-contracts-primitives" version = "24.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "bitflags 1.3.2", "parity-scale-codec", @@ -4854,7 +4968,7 @@ dependencies = [ [[package]] name = "pallet-contracts-proc-macro" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "proc-macro2", "quote", @@ -4864,7 +4978,7 @@ dependencies = [ [[package]] name = "pallet-conviction-voting" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "assert_matches", "frame-benchmarking", @@ -4881,7 +4995,7 @@ dependencies = [ [[package]] name = "pallet-core-fellowship" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -4899,7 +5013,7 @@ dependencies = [ [[package]] name = "pallet-democracy" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -4917,7 +5031,7 @@ dependencies = [ [[package]] name = "pallet-election-provider-multi-phase" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -4940,7 +5054,7 @@ dependencies = [ [[package]] name = "pallet-election-provider-support-benchmarking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -4953,7 +5067,7 @@ dependencies = [ [[package]] name = "pallet-elections-phragmen" version = "5.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -4972,7 +5086,7 @@ dependencies = [ [[package]] name = "pallet-fast-unstake" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "docify", "frame-benchmarking", @@ -4991,7 +5105,7 @@ dependencies = [ [[package]] name = "pallet-glutton" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "blake2", "frame-benchmarking", @@ -5009,7 +5123,7 @@ dependencies = [ [[package]] name = "pallet-grandpa" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5032,7 +5146,7 @@ dependencies = [ [[package]] name = "pallet-identity" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "enumflags2", "frame-benchmarking", @@ -5048,7 +5162,7 @@ dependencies = [ [[package]] name = "pallet-im-online" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5068,7 +5182,7 @@ dependencies = [ [[package]] name = "pallet-indices" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5085,7 +5199,7 @@ dependencies = [ [[package]] name = "pallet-insecure-randomness-collective-flip" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-support", "frame-system", @@ -5099,7 +5213,7 @@ dependencies = [ [[package]] name = "pallet-lottery" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5113,7 +5227,7 @@ dependencies = [ [[package]] name = "pallet-membership" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5130,7 +5244,7 @@ dependencies = [ [[package]] name = "pallet-message-queue" version = "7.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5149,7 +5263,7 @@ dependencies = [ [[package]] name = "pallet-mmr" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5166,7 +5280,7 @@ dependencies = [ [[package]] name = "pallet-multisig" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5182,7 +5296,7 @@ dependencies = [ [[package]] name = "pallet-nft-fractionalization" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5199,7 +5313,7 @@ dependencies = [ [[package]] name = "pallet-nfts" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "enumflags2", "frame-benchmarking", @@ -5217,7 +5331,7 @@ dependencies = [ [[package]] name = "pallet-nfts-runtime-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-support", "pallet-nfts", @@ -5228,7 +5342,7 @@ dependencies = [ [[package]] name = "pallet-nis" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5244,7 +5358,7 @@ dependencies = [ [[package]] name = "pallet-nomination-pools" version = "1.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-support", "frame-system", @@ -5263,7 +5377,7 @@ dependencies = [ [[package]] name = "pallet-nomination-pools-benchmarking" version = "1.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -5283,7 +5397,7 @@ dependencies = [ [[package]] name = "pallet-nomination-pools-runtime-api" version = "1.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "pallet-nomination-pools", "parity-scale-codec", @@ -5294,7 +5408,7 @@ dependencies = [ [[package]] name = "pallet-offences" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-support", "frame-system", @@ -5311,7 +5425,7 @@ dependencies = [ [[package]] name = "pallet-offences-benchmarking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -5335,7 +5449,7 @@ dependencies = [ [[package]] name = "pallet-preimage" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5352,7 +5466,7 @@ dependencies = [ [[package]] name = "pallet-proxy" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5367,7 +5481,7 @@ dependencies = [ [[package]] name = "pallet-ranked-collective" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5385,7 +5499,7 @@ dependencies = [ [[package]] name = "pallet-recovery" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5400,7 +5514,7 @@ dependencies = [ [[package]] name = "pallet-referenda" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5418,7 +5532,7 @@ dependencies = [ [[package]] name = "pallet-remark" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5435,7 +5549,7 @@ dependencies = [ [[package]] name = "pallet-root-testing" version = "1.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-support", "frame-system", @@ -5450,7 +5564,7 @@ dependencies = [ [[package]] name = "pallet-salary" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5468,7 +5582,7 @@ dependencies = [ [[package]] name = "pallet-scheduler" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5485,7 +5599,7 @@ dependencies = [ [[package]] name = "pallet-session" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-support", "frame-system", @@ -5506,7 +5620,7 @@ dependencies = [ [[package]] name = "pallet-session-benchmarking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5522,7 +5636,7 @@ dependencies = [ [[package]] name = "pallet-society" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5541,7 +5655,7 @@ dependencies = [ [[package]] name = "pallet-staking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -5563,7 +5677,7 @@ dependencies = [ [[package]] name = "pallet-staking-reward-curve" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "proc-macro-crate", "proc-macro2", @@ -5574,7 +5688,7 @@ dependencies = [ [[package]] name = "pallet-staking-runtime-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "parity-scale-codec", "sp-api", @@ -5583,7 +5697,7 @@ dependencies = [ [[package]] name = "pallet-state-trie-migration" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5600,7 +5714,7 @@ dependencies = [ [[package]] name = "pallet-statement" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-support", "frame-system", @@ -5618,7 +5732,7 @@ dependencies = [ [[package]] name = "pallet-sudo" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5630,22 +5744,10 @@ dependencies = [ "sp-std", ] -[[package]] -name = "pallet-template" -version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" -dependencies = [ - "frame-benchmarking", - "frame-support", - "frame-system", - "parity-scale-codec", - "scale-info", -] - [[package]] name = "pallet-timestamp" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5663,7 +5765,7 @@ dependencies = [ [[package]] name = "pallet-tips" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5682,7 +5784,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-support", "frame-system", @@ -5698,7 +5800,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "jsonrpsee", "pallet-transaction-payment-rpc-runtime-api", @@ -5714,7 +5816,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc-runtime-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "pallet-transaction-payment", "parity-scale-codec", @@ -5726,7 +5828,7 @@ dependencies = [ [[package]] name = "pallet-transaction-storage" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5746,7 +5848,7 @@ dependencies = [ [[package]] name = "pallet-treasury" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5763,7 +5865,7 @@ dependencies = [ [[package]] name = "pallet-uniques" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5778,7 +5880,7 @@ dependencies = [ [[package]] name = "pallet-utility" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5794,7 +5896,7 @@ dependencies = [ [[package]] name = "pallet-vesting" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -5809,7 +5911,7 @@ dependencies = [ [[package]] name = "pallet-whitelist" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-benchmarking", "frame-support", @@ -6225,12 +6327,12 @@ dependencies = [ [[package]] name = "proc-macro-crate" -version = "1.1.3" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e17d47ce914bf4de440332250b0edd23ce48c005f59fab39d3335866b114f11a" +checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919" dependencies = [ - "thiserror", - "toml 0.5.11", + "once_cell", + "toml_edit", ] [[package]] @@ -6685,6 +6787,15 @@ dependencies = [ "winapi", ] +[[package]] +name = "ripemd" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd124222d17ad93a644ed9d011a40f4fb64aa54275c08cc216524a9ea82fb09f" +dependencies = [ + "digest 0.10.7", +] + [[package]] name = "rocksdb" version = "0.21.0" @@ -6926,7 +7037,7 @@ dependencies = [ [[package]] name = "sc-allocator" version = "4.1.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "log", "sp-core", @@ -6934,10 +7045,38 @@ dependencies = [ "thiserror", ] +[[package]] +name = "sc-authority-discovery" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" +dependencies = [ + "async-trait", + "futures", + "futures-timer", + "ip_network", + "libp2p", + "log", + "multihash-codetable", + "parity-scale-codec", + "prost", + "prost-build", + "rand 0.8.5", + "sc-client-api", + "sc-network", + "sp-api", + "sp-authority-discovery", + "sp-blockchain", + "sp-core", + "sp-keystore", + "sp-runtime", + "substrate-prometheus-endpoint", + "thiserror", +] + [[package]] name = "sc-basic-authorship" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "futures", "futures-timer", @@ -6960,7 +7099,7 @@ dependencies = [ [[package]] name = "sc-block-builder" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "parity-scale-codec", "sc-client-api", @@ -6975,7 +7114,7 @@ dependencies = [ [[package]] name = "sc-chain-spec" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "memmap2", "sc-chain-spec-derive", @@ -6994,7 +7133,7 @@ dependencies = [ [[package]] name = "sc-chain-spec-derive" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "proc-macro-crate", "proc-macro2", @@ -7005,7 +7144,7 @@ dependencies = [ [[package]] name = "sc-cli" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "array-bytes", "chrono", @@ -7044,7 +7183,7 @@ dependencies = [ [[package]] name = "sc-client-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "fnv", "futures", @@ -7070,7 +7209,7 @@ dependencies = [ [[package]] name = "sc-client-db" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "hash-db", "kvdb", @@ -7096,7 +7235,7 @@ dependencies = [ [[package]] name = "sc-consensus" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "async-trait", "futures", @@ -7119,25 +7258,32 @@ dependencies = [ ] [[package]] -name = "sc-consensus-aura" +name = "sc-consensus-babe" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "async-trait", + "fork-tree", "futures", "log", + "num-bigint", + "num-rational", + "num-traits", "parity-scale-codec", - "sc-block-builder", + "parking_lot 0.12.1", "sc-client-api", "sc-consensus", + "sc-consensus-epochs", "sc-consensus-slots", "sc-telemetry", + "sc-transaction-pool-api", + "scale-info", "sp-api", "sp-application-crypto", "sp-block-builder", "sp-blockchain", "sp-consensus", - "sp-consensus-aura", + "sp-consensus-babe", "sp-consensus-slots", "sp-core", "sp-inherents", @@ -7147,10 +7293,45 @@ dependencies = [ "thiserror", ] +[[package]] +name = "sc-consensus-babe-rpc" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" +dependencies = [ + "futures", + "jsonrpsee", + "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", + "thiserror", +] + +[[package]] +name = "sc-consensus-epochs" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" +dependencies = [ + "fork-tree", + "parity-scale-codec", + "sc-client-api", + "sc-consensus", + "sp-blockchain", + "sp-runtime", +] + [[package]] name = "sc-consensus-grandpa" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "ahash 0.8.3", "array-bytes", @@ -7188,10 +7369,30 @@ dependencies = [ "thiserror", ] +[[package]] +name = "sc-consensus-grandpa-rpc" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" +dependencies = [ + "finality-grandpa", + "futures", + "jsonrpsee", + "log", + "parity-scale-codec", + "sc-client-api", + "sc-consensus-grandpa", + "sc-rpc", + "serde", + "sp-blockchain", + "sp-core", + "sp-runtime", + "thiserror", +] + [[package]] name = "sc-consensus-slots" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "async-trait", "futures", @@ -7214,7 +7415,7 @@ dependencies = [ [[package]] name = "sc-executor" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "parity-scale-codec", "parking_lot 0.12.1", @@ -7236,7 +7437,7 @@ dependencies = [ [[package]] name = "sc-executor-common" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "sc-allocator", "sp-maybe-compressed-blob", @@ -7248,7 +7449,7 @@ dependencies = [ [[package]] name = "sc-executor-wasmtime" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "anyhow", "cfg-if", @@ -7265,7 +7466,7 @@ dependencies = [ [[package]] name = "sc-informant" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "ansi_term", "futures", @@ -7281,7 +7482,7 @@ dependencies = [ [[package]] name = "sc-keystore" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "array-bytes", "parking_lot 0.12.1", @@ -7295,7 +7496,7 @@ dependencies = [ [[package]] name = "sc-network" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "array-bytes", "async-channel", @@ -7338,7 +7539,7 @@ dependencies = [ [[package]] name = "sc-network-bitswap" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "async-channel", "cid", @@ -7358,7 +7559,7 @@ dependencies = [ [[package]] name = "sc-network-common" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "async-trait", "bitflags 1.3.2", @@ -7375,7 +7576,7 @@ dependencies = [ [[package]] name = "sc-network-gossip" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "ahash 0.8.3", "futures", @@ -7394,7 +7595,7 @@ dependencies = [ [[package]] name = "sc-network-light" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "array-bytes", "async-channel", @@ -7412,10 +7613,28 @@ dependencies = [ "thiserror", ] +[[package]] +name = "sc-network-statement" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" +dependencies = [ + "array-bytes", + "async-channel", + "futures", + "libp2p", + "log", + "parity-scale-codec", + "sc-network", + "sc-network-common", + "sp-consensus", + "sp-statement-store", + "substrate-prometheus-endpoint", +] + [[package]] name = "sc-network-sync" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "array-bytes", "async-channel", @@ -7449,7 +7668,7 @@ dependencies = [ [[package]] name = "sc-network-transactions" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "array-bytes", "futures", @@ -7467,7 +7686,7 @@ dependencies = [ [[package]] name = "sc-offchain" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "array-bytes", "bytes", @@ -7501,7 +7720,7 @@ dependencies = [ [[package]] name = "sc-proposer-metrics" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "log", "substrate-prometheus-endpoint", @@ -7510,7 +7729,7 @@ dependencies = [ [[package]] name = "sc-rpc" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "futures", "jsonrpsee", @@ -7541,7 +7760,7 @@ dependencies = [ [[package]] name = "sc-rpc-api" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "jsonrpsee", "parity-scale-codec", @@ -7560,7 +7779,7 @@ dependencies = [ [[package]] name = "sc-rpc-server" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "http", "jsonrpsee", @@ -7575,7 +7794,7 @@ dependencies = [ [[package]] name = "sc-rpc-spec-v2" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "array-bytes", "futures", @@ -7601,7 +7820,7 @@ dependencies = [ [[package]] name = "sc-service" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "async-trait", "directories", @@ -7665,7 +7884,7 @@ dependencies = [ [[package]] name = "sc-state-db" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "log", "parity-scale-codec", @@ -7673,10 +7892,62 @@ dependencies = [ "sp-core", ] +[[package]] +name = "sc-statement-store" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" +dependencies = [ + "log", + "parity-db", + "parking_lot 0.12.1", + "sc-client-api", + "sc-keystore", + "sp-api", + "sp-blockchain", + "sp-core", + "sp-runtime", + "sp-statement-store", + "substrate-prometheus-endpoint", + "tokio", +] + +[[package]] +name = "sc-storage-monitor" +version = "0.1.0" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" +dependencies = [ + "clap", + "fs4", + "log", + "sc-client-db", + "sp-core", + "thiserror", + "tokio", +] + +[[package]] +name = "sc-sync-state-rpc" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" +dependencies = [ + "jsonrpsee", + "parity-scale-codec", + "sc-chain-spec", + "sc-client-api", + "sc-consensus-babe", + "sc-consensus-epochs", + "sc-consensus-grandpa", + "serde", + "serde_json", + "sp-blockchain", + "sp-runtime", + "thiserror", +] + [[package]] name = "sc-sysinfo" version = "6.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "futures", "libc", @@ -7695,7 +7966,7 @@ dependencies = [ [[package]] name = "sc-telemetry" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "chrono", "futures", @@ -7714,7 +7985,7 @@ dependencies = [ [[package]] name = "sc-tracing" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "ansi_term", "atty", @@ -7743,7 +8014,7 @@ dependencies = [ [[package]] name = "sc-tracing-proc-macro" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "proc-macro-crate", "proc-macro2", @@ -7754,7 +8025,7 @@ dependencies = [ [[package]] name = "sc-transaction-pool" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "async-trait", "futures", @@ -7780,7 +8051,7 @@ dependencies = [ [[package]] name = "sc-transaction-pool-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "async-trait", "futures", @@ -7796,7 +8067,7 @@ dependencies = [ [[package]] name = "sc-utils" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "async-channel", "futures", @@ -8050,6 +8321,17 @@ dependencies = [ "opaque-debug 0.3.0", ] +[[package]] +name = "sha-1" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f5058ada175748e33390e40e872bd0fe59a19f265d0158daa551c5a88a76009c" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest 0.10.7", +] + [[package]] name = "sha2" version = "0.8.2" @@ -8232,13 +8514,13 @@ dependencies = [ "httparse", "log", "rand 0.8.5", - "sha-1", + "sha-1 0.9.8", ] [[package]] name = "sp-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "hash-db", "log", @@ -8259,7 +8541,7 @@ dependencies = [ [[package]] name = "sp-api-proc-macro" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "Inflector", "blake2", @@ -8273,7 +8555,7 @@ dependencies = [ [[package]] name = "sp-application-crypto" version = "23.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "parity-scale-codec", "scale-info", @@ -8286,7 +8568,7 @@ dependencies = [ [[package]] name = "sp-arithmetic" version = "16.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "integer-sqrt", "num-traits", @@ -8300,7 +8582,7 @@ dependencies = [ [[package]] name = "sp-authority-discovery" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "parity-scale-codec", "scale-info", @@ -8313,7 +8595,7 @@ dependencies = [ [[package]] name = "sp-block-builder" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "sp-api", "sp-inherents", @@ -8324,7 +8606,7 @@ dependencies = [ [[package]] name = "sp-blockchain" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "futures", "log", @@ -8342,7 +8624,7 @@ dependencies = [ [[package]] name = "sp-consensus" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "async-trait", "futures", @@ -8357,7 +8639,7 @@ dependencies = [ [[package]] name = "sp-consensus-aura" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "async-trait", "parity-scale-codec", @@ -8374,7 +8656,7 @@ dependencies = [ [[package]] name = "sp-consensus-babe" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "async-trait", "parity-scale-codec", @@ -8393,7 +8675,7 @@ dependencies = [ [[package]] name = "sp-consensus-grandpa" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "finality-grandpa", "log", @@ -8411,7 +8693,7 @@ dependencies = [ [[package]] name = "sp-consensus-slots" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "parity-scale-codec", "scale-info", @@ -8423,7 +8705,7 @@ dependencies = [ [[package]] name = "sp-core" version = "21.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "array-bytes", "bitflags 1.3.2", @@ -8468,7 +8750,7 @@ dependencies = [ [[package]] name = "sp-core-hashing" version = "9.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "blake2b_simd", "byteorder", @@ -8481,7 +8763,7 @@ dependencies = [ [[package]] name = "sp-core-hashing-proc-macro" version = "9.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "quote", "sp-core-hashing", @@ -8491,7 +8773,7 @@ dependencies = [ [[package]] name = "sp-database" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "kvdb", "parking_lot 0.12.1", @@ -8500,7 +8782,7 @@ dependencies = [ [[package]] name = "sp-debug-derive" version = "8.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "proc-macro2", "quote", @@ -8510,7 +8792,7 @@ dependencies = [ [[package]] name = "sp-externalities" version = "0.19.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "environmental", "parity-scale-codec", @@ -8521,7 +8803,7 @@ dependencies = [ [[package]] name = "sp-genesis-builder" version = "0.1.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "serde_json", "sp-api", @@ -8532,7 +8814,7 @@ dependencies = [ [[package]] name = "sp-inherents" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "async-trait", "impl-trait-for-tuples", @@ -8546,7 +8828,7 @@ dependencies = [ [[package]] name = "sp-io" version = "23.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "bytes", "ed25519", @@ -8571,7 +8853,7 @@ dependencies = [ [[package]] name = "sp-keyring" version = "24.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "lazy_static", "sp-core", @@ -8582,7 +8864,7 @@ dependencies = [ [[package]] name = "sp-keystore" version = "0.27.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "parity-scale-codec", "parking_lot 0.12.1", @@ -8594,7 +8876,7 @@ dependencies = [ [[package]] name = "sp-maybe-compressed-blob" version = "4.1.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "thiserror", "zstd 0.12.4", @@ -8603,7 +8885,7 @@ dependencies = [ [[package]] name = "sp-metadata-ir" version = "0.1.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-metadata", "parity-scale-codec", @@ -8614,7 +8896,7 @@ dependencies = [ [[package]] name = "sp-mmr-primitives" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "ckb-merkle-mountain-range", "log", @@ -8632,7 +8914,7 @@ dependencies = [ [[package]] name = "sp-npos-elections" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "parity-scale-codec", "scale-info", @@ -8646,7 +8928,7 @@ dependencies = [ [[package]] name = "sp-offchain" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "sp-api", "sp-core", @@ -8656,7 +8938,7 @@ dependencies = [ [[package]] name = "sp-panic-handler" version = "8.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "backtrace", "lazy_static", @@ -8666,7 +8948,7 @@ dependencies = [ [[package]] name = "sp-rpc" version = "6.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "rustc-hash", "serde", @@ -8676,7 +8958,7 @@ dependencies = [ [[package]] name = "sp-runtime" version = "24.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "either", "hash256-std-hasher", @@ -8698,7 +8980,7 @@ dependencies = [ [[package]] name = "sp-runtime-interface" version = "17.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "bytes", "impl-trait-for-tuples", @@ -8716,7 +8998,7 @@ dependencies = [ [[package]] name = "sp-runtime-interface-proc-macro" version = "11.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "Inflector", "proc-macro-crate", @@ -8728,7 +9010,7 @@ dependencies = [ [[package]] name = "sp-session" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "parity-scale-codec", "scale-info", @@ -8743,7 +9025,7 @@ dependencies = [ [[package]] name = "sp-staking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "impl-trait-for-tuples", "parity-scale-codec", @@ -8757,7 +9039,7 @@ dependencies = [ [[package]] name = "sp-state-machine" version = "0.28.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "hash-db", "log", @@ -8778,7 +9060,7 @@ dependencies = [ [[package]] name = "sp-statement-store" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "aes-gcm 0.10.2", "curve25519-dalek 3.2.0", @@ -8802,12 +9084,12 @@ dependencies = [ [[package]] name = "sp-std" version = "8.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" [[package]] name = "sp-storage" version = "13.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "impl-serde", "parity-scale-codec", @@ -8820,7 +9102,7 @@ dependencies = [ [[package]] name = "sp-timestamp" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "async-trait", "parity-scale-codec", @@ -8833,7 +9115,7 @@ dependencies = [ [[package]] name = "sp-tracing" version = "10.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "parity-scale-codec", "sp-std", @@ -8845,7 +9127,7 @@ dependencies = [ [[package]] name = "sp-transaction-pool" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "sp-api", "sp-runtime", @@ -8854,7 +9136,7 @@ dependencies = [ [[package]] name = "sp-transaction-storage-proof" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "async-trait", "parity-scale-codec", @@ -8869,7 +9151,7 @@ dependencies = [ [[package]] name = "sp-trie" version = "22.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "ahash 0.8.3", "hash-db", @@ -8892,7 +9174,7 @@ dependencies = [ [[package]] name = "sp-version" version = "22.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "impl-serde", "parity-scale-codec", @@ -8909,7 +9191,7 @@ dependencies = [ [[package]] name = "sp-version-proc-macro" version = "8.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "parity-scale-codec", "proc-macro2", @@ -8920,7 +9202,7 @@ dependencies = [ [[package]] name = "sp-wasm-interface" version = "14.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "anyhow", "impl-trait-for-tuples", @@ -8933,7 +9215,7 @@ dependencies = [ [[package]] name = "sp-weights" version = "20.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "parity-scale-codec", "scale-info", @@ -9033,6 +9315,19 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "strobe-rs" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fabb238a1cccccfa4c4fb703670c0d157e1256c1ba695abf1b93bd2bb14bab2d" +dependencies = [ + "bitflags 1.3.2", + "byteorder", + "keccak", + "subtle", + "zeroize", +] + [[package]] name = "strsim" version = "0.10.0" @@ -9077,27 +9372,43 @@ dependencies = [ [[package]] name = "substrate-build-script-utils" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" [[package]] name = "substrate-cli-test-utils" version = "0.1.0" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "assert_cmd", "futures", "nix 0.26.2", + "node-cli", "node-primitives", "regex", + "sc-cli", + "sc-service", "sp-rpc", "substrate-rpc-client", "tokio", ] +[[package]] +name = "substrate-frame-cli" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" +dependencies = [ + "clap", + "frame-support", + "frame-system", + "sc-cli", + "sp-core", + "sp-runtime", +] + [[package]] name = "substrate-frame-rpc-system" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "frame-system-rpc-runtime-api", "futures", @@ -9116,7 +9427,7 @@ dependencies = [ [[package]] name = "substrate-prometheus-endpoint" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "hyper", "log", @@ -9128,7 +9439,7 @@ dependencies = [ [[package]] name = "substrate-rpc-client" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "async-trait", "jsonrpsee", @@ -9138,10 +9449,27 @@ dependencies = [ "sp-runtime", ] +[[package]] +name = "substrate-state-trie-migration-rpc" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" +dependencies = [ + "jsonrpsee", + "parity-scale-codec", + "sc-client-api", + "sc-rpc-api", + "serde", + "sp-core", + "sp-runtime", + "sp-state-machine", + "sp-trie", + "trie-db", +] + [[package]] name = "substrate-wasm-builder" version = "5.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "ansi_term", "build-helper", @@ -9721,7 +10049,7 @@ dependencies = [ [[package]] name = "try-runtime-cli" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=master#28e906dffcaa91e85f59aff628d953ebeb036ae2" +source = "git+https://github.com/paritytech/substrate?branch=master#c0ee512525862a63ea079192a0f49d6d25294c4e" dependencies = [ "async-trait", "clap", @@ -9767,7 +10095,6 @@ dependencies = [ "log", "node-executor", "node-primitives", - "node-template", "parity-scale-codec", "regex", "sc-cli", diff --git a/core/Cargo.toml b/core/Cargo.toml index 7a9dfbe9f28..18cc7feeceb 100644 --- a/core/Cargo.toml +++ b/core/Cargo.toml @@ -48,9 +48,9 @@ regex = "1.7.3" tempfile = "3.1.0" tokio = "1.27.0" node-primitives = { git = "https://github.com/paritytech/substrate", branch = "master" } -substrate-cli-test-utils = { git = "https://github.com/paritytech/substrate", branch = "master" } -node-template = { git = "https://github.com/paritytech/substrate", branch = "master", features = ["try-runtime"] } +substrate-cli-test-utils = { git = "https://github.com/paritytech/substrate", branch = "master", features = ["try-runtime"]} node-executor = { git = "https://github.com/paritytech/substrate", branch = "master" } [features] cli = ["clap"] +default = ["cli"] diff --git a/core/tests/create_snapshot.rs b/core/tests/create_snapshot.rs index c88b8559e01..8f1544a486a 100644 --- a/core/tests/create_snapshot.rs +++ b/core/tests/create_snapshot.rs @@ -36,15 +36,19 @@ async fn create_snapshot_works() { // Spawn a dev node. let _ = std::thread::spawn(move || { - match common::start_node_inline(vec!["--dev", format!("--rpc-port={}", port).as_str()]) { + match common::start_node_inline(vec![ + "--no-hardware-benchmarks", + "--dev", + format!("--rpc-port={}", port).as_str(), + ]) { Ok(_) => {} Err(e) => { panic!("Node exited with error: {}", e); } } }); - // Wait 30 seconds to ensure the node is warmed up. - std::thread::sleep(Duration::from_secs(30)); + // Wait some time to ensure the node is warmed up. + std::thread::sleep(Duration::from_secs(90)); // Run the command with tokio let temp_dir = tempfile::Builder::new() diff --git a/core/tests/execute_block.rs b/core/tests/execute_block.rs index 962c5698991..0495b123114 100644 --- a/core/tests/execute_block.rs +++ b/core/tests/execute_block.rs @@ -32,15 +32,19 @@ async fn execute_block_works() { // Spawn a dev node. let _ = std::thread::spawn(move || { - match common::start_node_inline(vec!["--dev", format!("--rpc-port={}", port).as_str()]) { + match common::start_node_inline(vec![ + "--no-hardware-benchmarks", + "--dev", + format!("--rpc-port={}", port).as_str(), + ]) { Ok(_) => {} Err(e) => { panic!("Node exited with error: {}", e); } } }); - // Wait 30 seconds to ensure the node is warmed up. - std::thread::sleep(Duration::from_secs(30)); + // Wait some time to ensure the node is warmed up. + std::thread::sleep(Duration::from_secs(90)); common::run_with_timeout(Duration::from_secs(60), async move { fn execute_block(ws_url: &str, at: Hash) -> tokio::process::Child { diff --git a/core/tests/follow_chain.rs b/core/tests/follow_chain.rs index be5e8ebd270..a588e545f39 100644 --- a/core/tests/follow_chain.rs +++ b/core/tests/follow_chain.rs @@ -31,15 +31,19 @@ async fn follow_chain_works() { // Spawn a dev node. let _ = std::thread::spawn(move || { - match common::start_node_inline(vec!["--dev", format!("--rpc-port={}", port).as_str()]) { + match common::start_node_inline(vec![ + "--no-hardware-benchmarks", + "--dev", + format!("--rpc-port={}", port).as_str(), + ]) { Ok(_) => {} Err(e) => { panic!("Node exited with error: {}", e); } } }); - // Wait 30 seconds to ensure the node is warmed up. - std::thread::sleep(Duration::from_secs(30)); + // Wait some time to ensure the node is warmed up. + std::thread::sleep(Duration::from_secs(90)); common::run_with_timeout(Duration::from_secs(60), async move { fn start_follow(ws_url: &str) -> tokio::process::Child { From 0ba460e61cf2a8118defae93e5f2e8a02cfc8623 Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Wed, 9 Aug 2023 11:09:03 +0700 Subject: [PATCH 31/44] try fix test ci --- .github/workflows/rust-checks.yaml | 13 ++++++++----- rust-toolchain.toml | 2 +- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/.github/workflows/rust-checks.yaml b/.github/workflows/rust-checks.yaml index 85ebcc0e4b8..4abfad97f13 100644 --- a/.github/workflows/rust-checks.yaml +++ b/.github/workflows/rust-checks.yaml @@ -34,13 +34,16 @@ jobs: command: fmt args: --all - - name: Run Linter + - name: Install C++ linker + run: sudo apt install --assume-yes build-essential git clang curl libssl-dev llvm libudev-dev make protobuf-compiler + + - name: Tests uses: actions-rs/cargo@v1 with: - command: clippy - args: --all-targets -- --no-deps -D warnings + command: test - - name: Run Unit Test Suite + - name: Clippy uses: actions-rs/cargo@v1 with: - command: test + command: clippy + args: --all-targets -- --no-deps -D warnings diff --git a/rust-toolchain.toml b/rust-toolchain.toml index ed72c967f38..64daeff6836 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -1,5 +1,5 @@ [toolchain] -channel = "stable" +channel = "nightly" components = [ "cargo", "clippy", From a519be5356a7c005a37b9fb8a370ee80c03a3a5f Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Wed, 9 Aug 2023 11:55:50 +0700 Subject: [PATCH 32/44] disable ci tests --- .github/workflows/rust-checks.yaml | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/.github/workflows/rust-checks.yaml b/.github/workflows/rust-checks.yaml index 4abfad97f13..77a812b52c0 100644 --- a/.github/workflows/rust-checks.yaml +++ b/.github/workflows/rust-checks.yaml @@ -34,13 +34,11 @@ jobs: command: fmt args: --all - - name: Install C++ linker - run: sudo apt install --assume-yes build-essential git clang curl libssl-dev llvm libudev-dev make protobuf-compiler - - - name: Tests - uses: actions-rs/cargo@v1 - with: - command: test + # TODO: Fix `error: linking with `cc` failed: exit status: 1` issue and re-enable CI tests + # - name: Tests + # uses: actions-rs/cargo@v1 + # with: + # command: test - name: Clippy uses: actions-rs/cargo@v1 From fd89392250be2534d9efce4df373a89f10a78069 Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Wed, 9 Aug 2023 12:15:30 +0700 Subject: [PATCH 33/44] update readme --- README.md | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 175863cb678..6a117123977 100644 --- a/README.md +++ b/README.md @@ -4,12 +4,14 @@ Substrate's programmatic testing framework for power users. 📖 [Documentation](https://paritytech.github.io/try-runtime-cli/try_runtime_cli) -## Usage +## Installation ```bash -$ git clone git@github.com:paritytech/try-runtime-cli.git -$ cd try-runtime-cli -$ cargo build --release -$ ./target/release/try-runtime-cli --help -$ ./target/release/try-runtime-cli on-runtime-upgrade --help +cargo install --git https://github.com/paritytech/try-runtime-cli +try-runtime-cli --help +try-runtime-cli on-runtime-upgrade --help ``` + +## Updating + +Simply re-run `cargo install --git https://github.com/paritytech/try-runtime-cli try-runtime-cli`. From 8746e556ffa77fb684fdaf85c71f857c1b735e91 Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Wed, 9 Aug 2023 12:22:07 +0700 Subject: [PATCH 34/44] update readme --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 6a117123977..7fc3795fad1 100644 --- a/README.md +++ b/README.md @@ -14,4 +14,4 @@ try-runtime-cli on-runtime-upgrade --help ## Updating -Simply re-run `cargo install --git https://github.com/paritytech/try-runtime-cli try-runtime-cli`. +Simply re-run `cargo install --git https://github.com/paritytech/try-runtime-cli`. From 77cb19f085c497d18d1a315dbf4b8913194a61f4 Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Thu, 10 Aug 2023 12:18:10 +0700 Subject: [PATCH 35/44] remove -cli suffix from binary --- README.md | 8 ++------ cli/Cargo.toml | 2 +- cli/main.rs | 16 ++++++++-------- 3 files changed, 11 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index 7fc3795fad1..1adbcfc03c1 100644 --- a/README.md +++ b/README.md @@ -8,10 +8,6 @@ Substrate's programmatic testing framework for power users. ```bash cargo install --git https://github.com/paritytech/try-runtime-cli -try-runtime-cli --help -try-runtime-cli on-runtime-upgrade --help +try-runtime --help +try-runtime on-runtime-upgrade --help ``` - -## Updating - -Simply re-run `cargo install --git https://github.com/paritytech/try-runtime-cli`. diff --git a/cli/Cargo.toml b/cli/Cargo.toml index 4a4845ea1dd..2702b00971e 100644 --- a/cli/Cargo.toml +++ b/cli/Cargo.toml @@ -9,7 +9,7 @@ repository.workspace = true description = "Substrate's programmatic testing framework for power users." [[bin]] -name = "try-runtime-cli" +name = "try-runtime" path = "main.rs" [package.metadata.docs.rs] diff --git a/cli/main.rs b/cli/main.rs index 8c184f56616..915a6bb2568 100644 --- a/cli/main.rs +++ b/cli/main.rs @@ -174,7 +174,7 @@ //! 1. a substrate node compiled with `--feature try-runtime`, called `substrate`. This will be //! the running node that you connect to, and provide a wasm blob that has try-runtime //! functionality enabled. -//! 2. a `try-runtime-cli` binary. +//! 2. the `try-runtime` CLI binary on your path. //! //! ```bash //! # this is like your running deployed node. @@ -188,7 +188,7 @@ //! //! ```bash //! # assuming there's `./substrate --dev --tmp --ws-port 9999` or similar running. -//! ./try-runtime-cli \ +//! try-runtime \ //! --runtime /path-to-substrate/target/release/wbuild/my-runtime.wasm \ //! on-runtime-upgrade \ //! live --uri ws://localhost:9999 @@ -198,7 +198,7 @@ //! block hash's state shall not yet have been pruned in `rpc.polkadot.io`. //! //! ```bash -//! ./try-runtime-cli \ +//! try-runtime \ //! --runtime /path-to-substrate/target/release/wbuild/my-runtime.wasm \ //! on-runtime-upgrade \ //! live --uri ws://localhost:9999 \ @@ -209,7 +209,7 @@ //! * Now, let's use a snapshot file. First, we create the snapshot: //! //! ```bash -//! ./try-runtime-cli --runtime existing create-snapshot --uri ws://localhost:9999 my-snapshot.snap +//! try-runtime --runtime existing create-snapshot --uri ws://localhost:9999 my-snapshot.snap //! 2022-12-13 10:28:17.516 INFO main remote-ext: since no at is provided, setting it to latest finalized head, 0xe7d0b614dfe89af65b33577aae46a6f958c974bf52f8a5e865a0f4faeb578d22 //! 2022-12-13 10:28:17.516 INFO main remote-ext: since no prefix is filtered, the data for all pallets will be downloaded //! 2022-12-13 10:28:17.550 INFO main remote-ext: writing snapshot of 1611464 bytes to "node-268@latest.snap" @@ -222,7 +222,7 @@ //! Then, we can use it to have the same command as before, `on-runtime-upgrade` //! //! ```bash -//! ./try-runtime-cli \ +//! try-runtime \ //! --runtime /path-to-substrate/target/release/wbuild/my-runtime.wasm \ //! on-runtime-upgrade \ //! snap -s my-snapshot.snap @@ -231,7 +231,7 @@ //! * Execute the latest finalized block with the given runtime. //! //! ```bash -//! ./try-runtime-cli \ +//! try-runtime \ //! --runtime /path-to-substrate/target/release/wbuild/my-runtime.wasm \ //! execute-block live \ //! --uri ws://localhost:9999 @@ -244,7 +244,7 @@ //! `--try-state`. For example: //! //! ```bash -//! ./try-runtime-cli \ +//! try-runtime \ //! --runtime /path-to-substrate/target/release/wbuild/my-runtime.wasm \ //! execute-block \ //! --try-state System,Staking \ @@ -265,7 +265,7 @@ //! in a round robin fashion //! //! ```bash -//! ./try-runtime-cli \ +//! try-runtime \ //! --runtime /path-to-substrate/target/release/wbuild/my-runtime.wasm \ //! follow-chain \ //! --uri ws://localhost:9999 \ From 347c0b27c25983775238cdaf7c959a9f2819fcbe Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Thu, 10 Aug 2023 12:24:34 +0700 Subject: [PATCH 36/44] update tests --- core/tests/create_snapshot.rs | 2 +- core/tests/execute_block.rs | 2 +- core/tests/follow_chain.rs | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/core/tests/create_snapshot.rs b/core/tests/create_snapshot.rs index 8f1544a486a..b950bf94854 100644 --- a/core/tests/create_snapshot.rs +++ b/core/tests/create_snapshot.rs @@ -59,7 +59,7 @@ async fn create_snapshot_works() { common::run_with_timeout(Duration::from_secs(60), async move { fn create_snapshot(ws_url: &str, snap_file: &PathBuf, at: Hash) -> tokio::process::Child { - Command::new(cargo_bin("try-runtime-cli")) + Command::new(cargo_bin("try-runtime")) .stdout(std::process::Stdio::piped()) .stderr(std::process::Stdio::piped()) .arg("--runtime=existing") diff --git a/core/tests/execute_block.rs b/core/tests/execute_block.rs index 0495b123114..1a3173db32f 100644 --- a/core/tests/execute_block.rs +++ b/core/tests/execute_block.rs @@ -48,7 +48,7 @@ async fn execute_block_works() { common::run_with_timeout(Duration::from_secs(60), async move { fn execute_block(ws_url: &str, at: Hash) -> tokio::process::Child { - Command::new(cargo_bin("try-runtime-cli")) + Command::new(cargo_bin("try-runtime")) .stdout(std::process::Stdio::piped()) .stderr(std::process::Stdio::piped()) .arg("--runtime=existing") diff --git a/core/tests/follow_chain.rs b/core/tests/follow_chain.rs index a588e545f39..677c5a1e75d 100644 --- a/core/tests/follow_chain.rs +++ b/core/tests/follow_chain.rs @@ -47,7 +47,7 @@ async fn follow_chain_works() { common::run_with_timeout(Duration::from_secs(60), async move { fn start_follow(ws_url: &str) -> tokio::process::Child { - Command::new(cargo_bin("try-runtime-cli")) + Command::new(cargo_bin("try-runtime")) .stdout(std::process::Stdio::piped()) .stderr(std::process::Stdio::piped()) .arg("--runtime=existing") From e47ffcd4e5df923cf2b144e9ee6b90d738e5293f Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Thu, 10 Aug 2023 12:34:44 +0700 Subject: [PATCH 37/44] use resolver = 2 --- Cargo.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/Cargo.toml b/Cargo.toml index 7836576127b..3a72feddbed 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,4 +1,5 @@ [workspace] +resolver = "2" members = [ "cli", From 211950852d9f0980c270402ca5fb891ba2efd54d Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Thu, 10 Aug 2023 17:25:12 +0700 Subject: [PATCH 38/44] set default runtime value --- core/src/shared_parameters.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/shared_parameters.rs b/core/src/shared_parameters.rs index 7f3b216130a..b53471b0f0e 100644 --- a/core/src/shared_parameters.rs +++ b/core/src/shared_parameters.rs @@ -37,7 +37,7 @@ pub struct SharedParams { /// whatever comes from the remote node, or the snapshot file. This will most likely not work /// against a remote node, as no (sane) blockchain should compile its onchain wasm with /// `try-runtime` feature. - #[arg(long)] + #[arg(long, default_value = "existing")] pub runtime: Runtime, /// Type of wasm execution used. From affc4c8ba365b93a0a80b7fc42696d970bad2bdc Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Tue, 15 Aug 2023 12:36:13 +0700 Subject: [PATCH 39/44] remove redundant comment --- .github/workflows/rust-checks.yaml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/.github/workflows/rust-checks.yaml b/.github/workflows/rust-checks.yaml index 77a812b52c0..da715013640 100644 --- a/.github/workflows/rust-checks.yaml +++ b/.github/workflows/rust-checks.yaml @@ -34,12 +34,6 @@ jobs: command: fmt args: --all - # TODO: Fix `error: linking with `cc` failed: exit status: 1` issue and re-enable CI tests - # - name: Tests - # uses: actions-rs/cargo@v1 - # with: - # command: test - - name: Clippy uses: actions-rs/cargo@v1 with: From 6d27cb10622263a16fd4490b99e3f5226aa37f46 Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Tue, 15 Aug 2023 12:37:46 +0700 Subject: [PATCH 40/44] test removing rust toolchain from rust-docs.yaml --- .github/workflows/rust-docs.yaml | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/.github/workflows/rust-docs.yaml b/.github/workflows/rust-docs.yaml index a4bd065dea4..b3762f7da6b 100644 --- a/.github/workflows/rust-docs.yaml +++ b/.github/workflows/rust-docs.yaml @@ -3,7 +3,7 @@ name: Update rust docs on: push: branches: - - main + - liam-v0.1.0 jobs: docs: @@ -18,13 +18,6 @@ jobs: with: version: "3.6.1" - - name: Setup Rust - uses: actions-rs/toolchain@v1 - with: - profile: minimal - toolchain: stable - override: true - - name: Add wasm32-unknwon-unknown target run: rustup target add wasm32-unknown-unknown From 79ec8e879ba49bbf2d6b9bf546ed373ca44a87d2 Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Tue, 15 Aug 2023 12:39:50 +0700 Subject: [PATCH 41/44] minor doc improvement --- README.md | 10 +--------- cli/main.rs | 10 +++++++++- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 1adbcfc03c1..99d5eadeb64 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,5 @@ # try-runtime-cli -Substrate's programmatic testing framework for power users. +Substrate's programmatic testing framework. 📖 [Documentation](https://paritytech.github.io/try-runtime-cli/try_runtime_cli) - -## Installation - -```bash -cargo install --git https://github.com/paritytech/try-runtime-cli -try-runtime --help -try-runtime on-runtime-upgrade --help -``` diff --git a/cli/main.rs b/cli/main.rs index 915a6bb2568..3793b00abdf 100644 --- a/cli/main.rs +++ b/cli/main.rs @@ -17,7 +17,7 @@ //! # Try-runtime //! -//! Substrate's programmatic testing framework for power users. +//! Substrate's programmatic testing framework. //! //! > As the name suggests, `try-runtime` is a detailed testing framework that gives you a lot of //! control over what is being executed in which environment. It is recommended that user's first @@ -64,6 +64,14 @@ //! 2. Overwrite the `:CODE:` with a given wasm blob //! 3. Test some functionality via calling a runtime-api. //! +//! ## Installation + +//!```bash +//! cargo install --git https://github.com/paritytech/try-runtime-cli +//! try-runtime --help +//! try-runtime on-runtime-upgrade --help +//! ``` +//! //! ## Usage //! //! To use any of the provided commands, [`SharedParams`] must be provided. The most important of From 1749caba397e88f5846989bad1ad0e0c97e9e71a Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Tue, 15 Aug 2023 12:48:57 +0700 Subject: [PATCH 42/44] try stable toolchain --- rust-toolchain.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rust-toolchain.toml b/rust-toolchain.toml index 64daeff6836..119c037e57f 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -1,5 +1,5 @@ [toolchain] -channel = "nightly" +channel = "1.71.1" components = [ "cargo", "clippy", From 27c82fc2c89c41f0819fa4e406e5352ad738ac6d Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Tue, 15 Aug 2023 13:13:21 +0700 Subject: [PATCH 43/44] organise deps --- cli/Cargo.toml | 7 +++++-- core/Cargo.toml | 12 +++++++++--- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/cli/Cargo.toml b/cli/Cargo.toml index 2702b00971e..476dff8740c 100644 --- a/cli/Cargo.toml +++ b/cli/Cargo.toml @@ -16,8 +16,7 @@ path = "main.rs" targets = ["x86_64-unknown-linux-gnu"] [dependencies] -try-runtime-core = { path = "../core", features = ["cli"] } - +# Crates.io clap = { version = "4.0.9", features = ["derive"] } env_logger = "0.10.0" parity-scale-codec = { version = "3.6.1", features = ["derive"] } @@ -27,5 +26,9 @@ tokio = { version = "1.25.0", features = ["full"] } sc-executor = { git = "https://github.com/paritytech/substrate", branch = "master" } sp-io = { git = "https://github.com/paritytech/substrate", branch = "master" } sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "master" } + node-executor = { git = "https://github.com/paritytech/substrate", branch = "master" } node-primitives = { git = "https://github.com/paritytech/substrate", branch = "master" } + +# Local +try-runtime-core = { path = "../core", features = ["cli"] } diff --git a/core/Cargo.toml b/core/Cargo.toml index 18cc7feeceb..a96f1ab8c49 100644 --- a/core/Cargo.toml +++ b/core/Cargo.toml @@ -11,7 +11,8 @@ description = "Substrate's programmatic testing framework for power users." [package.metadata.docs.rs] targets = ["x86_64-unknown-linux-gnu"] -[dependencies] # todo: move to workspace +[dependencies] +# Crates.io async-trait = "0.1.57" clap = { version = "4.0.9", features = ["derive"], optional = true } hex = { version = "0.4.3", default-features = false } @@ -42,15 +43,20 @@ sp-weights = { git = "https://github.com/paritytech/substrate", branch = "master substrate-rpc-client = { git = "https://github.com/paritytech/substrate", branch = "master" } [dev-dependencies] -sc-service = { git = "https://github.com/paritytech/substrate", branch = "master" } +# Crates.io assert_cmd = "2.0.10" regex = "1.7.3" tempfile = "3.1.0" tokio = "1.27.0" + +# Substrate +sc-service = { git = "https://github.com/paritytech/substrate", branch = "master" } + node-primitives = { git = "https://github.com/paritytech/substrate", branch = "master" } -substrate-cli-test-utils = { git = "https://github.com/paritytech/substrate", branch = "master", features = ["try-runtime"]} node-executor = { git = "https://github.com/paritytech/substrate", branch = "master" } +substrate-cli-test-utils = { git = "https://github.com/paritytech/substrate", branch = "master", features = ["try-runtime"]} + [features] cli = ["clap"] default = ["cli"] From ef307f7fd221d81328da4d691bd2bffbeb8d4e92 Mon Sep 17 00:00:00 2001 From: Liam Aharon Date: Tue, 15 Aug 2023 13:14:32 +0700 Subject: [PATCH 44/44] update description --- cli/Cargo.toml | 2 +- core/Cargo.toml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/cli/Cargo.toml b/cli/Cargo.toml index 476dff8740c..fe48b96f851 100644 --- a/cli/Cargo.toml +++ b/cli/Cargo.toml @@ -6,7 +6,7 @@ edition.workspace = true license.workspace = true homepage.workspace = true repository.workspace = true -description = "Substrate's programmatic testing framework for power users." +description = "Substrate's programmatic testing framework." [[bin]] name = "try-runtime" diff --git a/core/Cargo.toml b/core/Cargo.toml index a96f1ab8c49..dd9c744c257 100644 --- a/core/Cargo.toml +++ b/core/Cargo.toml @@ -6,7 +6,7 @@ edition.workspace = true license.workspace = true homepage.workspace = true repository.workspace = true -description = "Substrate's programmatic testing framework for power users." +description = "Substrate's programmatic testing framework." [package.metadata.docs.rs] targets = ["x86_64-unknown-linux-gnu"]