From 3fedd893e53520fb0c00e42821007886f127ee6a Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Wed, 28 Aug 2024 18:21:47 -0400 Subject: [PATCH 01/60] Update to polkadot SDK release-polkadot-v1.11.0 --- Cargo.lock | 1215 ++++++++++++++++++++++++++++++------------- Cargo.toml | 140 ++--- node/src/command.rs | 5 +- node/src/service.rs | 25 +- runtime/src/lib.rs | 47 +- 5 files changed, 985 insertions(+), 447 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index ee0933379..d3b46835c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -496,7 +496,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" dependencies = [ "num-traits", - "rand", + "rand 0.8.5", "rayon", ] @@ -676,7 +676,7 @@ dependencies = [ "dleq_vrf", "fflonk", "merlin", - "rand_chacha", + "rand_chacha 0.3.1", "rand_core 0.6.4", "ring 0.1.0", "sha2 0.10.8", @@ -1091,7 +1091,20 @@ checksum = "b9b68e3193982cd54187d71afdb2a271ad4cf8af157858e9cb911b91321de143" dependencies = [ "core2", "multibase", - "multihash", + "multihash 0.17.0", + "serde", + "unsigned-varint", +] + +[[package]] +name = "cid" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fd94671561e36e4e7de75f753f577edafb0e7c05d6e4547229fdf7938fbcd2c3" +dependencies = [ + "core2", + "multibase", + "multihash 0.18.1", "serde", "unsigned-varint", ] @@ -1184,6 +1197,16 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b6a852b24ab71dffc585bcb46eaf7959d175cb865a7152e35b348d1b2960422" +[[package]] +name = "combine" +version = "4.6.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" +dependencies = [ + "bytes", + "memchr", +] + [[package]] name = "comfy-table" version = "7.1.1" @@ -1208,7 +1231,7 @@ dependencies = [ "fflonk", "getrandom_or_panic", "merlin", - "rand_chacha", + "rand_chacha 0.3.1", ] [[package]] @@ -1424,6 +1447,21 @@ dependencies = [ "wasmtime-types", ] +[[package]] +name = "crc" +version = "3.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69e6e4d7b33a94f0991c26729976b10ebde1d34c3ee82408fb536164fa10d636" +dependencies = [ + "crc-catalog", +] + +[[package]] +name = "crc-catalog" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" + [[package]] name = "crc32fast" version = "1.4.2" @@ -1936,10 +1974,19 @@ dependencies = [ "elliptic-curve", "rfc6979", "serdect", - "signature", + "signature 2.2.0", "spki", ] +[[package]] +name = "ed25519" +version = "1.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91cff35c70bba8a626e3185d8cd48cc11b5437e1a5bcd15b9b5fa3c64b6dfee7" +dependencies = [ + "signature 1.6.4", +] + [[package]] name = "ed25519" version = "2.2.3" @@ -1947,7 +1994,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53" dependencies = [ "pkcs8", - "signature", + "signature 2.2.0", +] + +[[package]] +name = "ed25519-dalek" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c762bae6dcaf24c4c84667b8579785430908723d5c889f469d76a41d59cc7a9d" +dependencies = [ + "curve25519-dalek 3.2.0", + "ed25519 1.5.3", + "rand 0.7.3", + "serde", + "sha2 0.9.9", + "zeroize", ] [[package]] @@ -1957,7 +2018,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4a3daa8e81a3963a60642bcc1f90a670680bd4a77535faa384e9d1c79d620871" dependencies = [ "curve25519-dalek 4.1.3", - "ed25519", + "ed25519 2.2.3", "rand_core 0.6.4", "serde", "sha2 0.10.8", @@ -2023,6 +2084,18 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "enum-as-inner" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ffccbb6966c05b32ef8fbac435df276c4ae4d3dc55a8cd0eb9745e6c12f546a" +dependencies = [ + "heck 0.4.1", + "proc-macro2", + "quote", + "syn 2.0.71", +] + [[package]] name = "enumflags2" version = "0.7.10" @@ -2268,7 +2341,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "835c052cb0c08c1acf6ffd71c022172e18723949c8282f2b9f27efbc51e64534" dependencies = [ "byteorder", - "rand", + "rand 0.8.5", "rustc-hex", "static_assertions", ] @@ -2305,10 +2378,25 @@ version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" +[[package]] +name = "foreign-types" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" +dependencies = [ + "foreign-types-shared", +] + +[[package]] +name = "foreign-types-shared" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" + [[package]] name = "fork-tree" version = "12.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "parity-scale-codec", ] @@ -2331,7 +2419,7 @@ checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa" [[package]] name = "frame-benchmarking" version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "frame-support", "frame-support-procedural", @@ -2347,16 +2435,16 @@ dependencies = [ "sp-core", "sp-io", "sp-runtime", - "sp-runtime-interface 24.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", - "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-runtime-interface 24.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", + "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "static_assertions", ] [[package]] name = "frame-benchmarking-cli" version = "32.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "Inflector", "array-bytes 6.2.3", @@ -2373,9 +2461,10 @@ dependencies = [ "linked-hash-map", "log", "parity-scale-codec", - "rand", + "rand 0.8.5", "rand_pcg", "sc-block-builder", + "sc-chain-spec", "sc-cli", "sc-client-api", "sc-client-db", @@ -2388,15 +2477,16 @@ dependencies = [ "sp-blockchain", "sp-core", "sp-database", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", + "sp-genesis-builder", "sp-inherents", "sp-io", "sp-keystore", "sp-runtime", "sp-state-machine", - "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-trie", - "sp-wasm-interface 20.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-wasm-interface 20.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "thiserror", "thousands", ] @@ -2404,7 +2494,7 @@ dependencies = [ [[package]] name = "frame-executive" version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "aquamarine 0.3.3", "frame-support", @@ -2416,8 +2506,8 @@ dependencies = [ "sp-core", "sp-io", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", - "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", + "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", ] [[package]] @@ -2435,7 +2525,7 @@ dependencies = [ [[package]] name = "frame-metadata-hash-extension" version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "array-bytes 6.2.3", "docify", @@ -2450,7 +2540,7 @@ dependencies = [ [[package]] name = "frame-support" version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "aquamarine 0.5.0", "array-bytes 6.2.3", @@ -2473,7 +2563,7 @@ dependencies = [ "sp-arithmetic", "sp-core", "sp-crypto-hashing-proc-macro", - "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-genesis-builder", "sp-inherents", "sp-io", @@ -2481,8 +2571,8 @@ dependencies = [ "sp-runtime", "sp-staking", "sp-state-machine", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", - "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", + "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-weights", "static_assertions", "tt-call", @@ -2491,7 +2581,7 @@ dependencies = [ [[package]] name = "frame-support-procedural" version = "23.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "Inflector", "cfg-expr", @@ -2510,7 +2600,7 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools" version = "10.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "frame-support-procedural-tools-derive", "proc-macro-crate 3.1.0", @@ -2522,7 +2612,7 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools-derive" version = "11.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "proc-macro2", "quote", @@ -2532,7 +2622,7 @@ dependencies = [ [[package]] name = "frame-system" version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "cfg-if", "docify", @@ -2544,7 +2634,7 @@ dependencies = [ "sp-core", "sp-io", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-version", "sp-weights", ] @@ -2552,7 +2642,7 @@ dependencies = [ [[package]] name = "frame-system-benchmarking" version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "frame-benchmarking", "frame-support", @@ -2561,13 +2651,13 @@ dependencies = [ "scale-info", "sp-core", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", ] [[package]] name = "frame-system-rpc-runtime-api" version = "26.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "parity-scale-codec", "sp-api", @@ -2576,13 +2666,13 @@ dependencies = [ [[package]] name = "frame-try-runtime" version = "0.34.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "frame-support", "parity-scale-codec", "sp-api", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", ] [[package]] @@ -2794,7 +2884,7 @@ version = "0.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6ea1015b5a70616b688dc230cfe50c8af89d972cb132d5a622814d29773b10b9" dependencies = [ - "rand", + "rand 0.8.5", "rand_core 0.6.4", ] @@ -2856,7 +2946,7 @@ dependencies = [ "parking_lot 0.12.3", "portable-atomic", "quanta", - "rand", + "rand 0.8.5", "smallvec", "spinning_top", ] @@ -3184,6 +3274,16 @@ dependencies = [ "unicode-normalization", ] +[[package]] +name = "idna" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c" +dependencies = [ + "unicode-bidi", + "unicode-normalization", +] + [[package]] name = "idna" version = "0.5.0" @@ -3449,7 +3549,7 @@ dependencies = [ "hyper", "jsonrpsee-types", "parking_lot 0.12.3", - "rand", + "rand 0.8.5", "rustc-hash", "serde", "serde_json", @@ -3675,13 +3775,13 @@ dependencies = [ "libp2p-identity", "log", "multiaddr", - "multihash", + "multihash 0.17.0", "multistream-select", "once_cell", "parking_lot 0.12.3", "pin-project", "quick-protobuf", - "rand", + "rand 0.8.5", "rw-stream-sink", "smallvec", "thiserror", @@ -3700,7 +3800,7 @@ dependencies = [ "log", "parking_lot 0.12.3", "smallvec", - "trust-dns-resolver", + "trust-dns-resolver 0.22.0", ] [[package]] @@ -3732,12 +3832,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "276bb57e7af15d8f100d3c11cbdd32c6752b7eef4ba7a18ecf464972c07abcce" dependencies = [ "bs58 0.4.0", - "ed25519-dalek", + "ed25519-dalek 2.1.1", "log", "multiaddr", - "multihash", + "multihash 0.17.0", "quick-protobuf", - "rand", + "rand 0.8.5", "sha2 0.10.8", "thiserror", "zeroize", @@ -3762,7 +3862,7 @@ dependencies = [ "libp2p-swarm", "log", "quick-protobuf", - "rand", + "rand 0.8.5", "sha2 0.10.8", "smallvec", "thiserror", @@ -3784,11 +3884,11 @@ dependencies = [ "libp2p-identity", "libp2p-swarm", "log", - "rand", + "rand 0.8.5", "smallvec", "socket2 0.4.10", "tokio", - "trust-dns-proto", + "trust-dns-proto 0.22.0", "void", ] @@ -3820,7 +3920,7 @@ dependencies = [ "log", "once_cell", "quick-protobuf", - "rand", + "rand 0.8.5", "sha2 0.10.8", "snow", "static_assertions", @@ -3842,7 +3942,7 @@ dependencies = [ "libp2p-core", "libp2p-swarm", "log", - "rand", + "rand 0.8.5", "void", ] @@ -3862,7 +3962,7 @@ dependencies = [ "log", "parking_lot 0.12.3", "quinn-proto", - "rand", + "rand 0.8.5", "rustls 0.20.9", "thiserror", "tokio", @@ -3880,7 +3980,7 @@ dependencies = [ "libp2p-core", "libp2p-identity", "libp2p-swarm", - "rand", + "rand 0.8.5", "smallvec", ] @@ -3899,7 +3999,7 @@ dependencies = [ "libp2p-identity", "libp2p-swarm-derive", "log", - "rand", + "rand 0.8.5", "smallvec", "tokio", "void", @@ -3947,7 +4047,7 @@ dependencies = [ "rustls 0.20.9", "thiserror", "webpki", - "x509-parser", + "x509-parser 0.14.0", "yasna", ] @@ -4035,7 +4135,7 @@ dependencies = [ "libsecp256k1-core", "libsecp256k1-gen-ecmult", "libsecp256k1-gen-genmult", - "rand", + "rand 0.8.5", "serde", "sha2 0.9.9", "typenum 1.17.0", @@ -4138,6 +4238,61 @@ dependencies = [ "keystream", ] +[[package]] +name = "litep2p" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f02542ae3a94b4c4ffa37dc56388c923e286afa3bf65452e3984b50b2a2f316" +dependencies = [ + "async-trait", + "bs58 0.4.0", + "bytes", + "cid 0.10.1", + "ed25519-dalek 1.0.1", + "futures", + "futures-timer", + "hex-literal", + "indexmap 2.2.6", + "libc", + "mockall 0.12.1", + "multiaddr", + "multihash 0.17.0", + "network-interface", + "nohash-hasher", + "parking_lot 0.12.3", + "pin-project", + "prost 0.11.9", + "prost-build", + "quinn", + "rand 0.8.5", + "rcgen", + "ring 0.16.20", + "rustls 0.20.9", + "serde", + "sha2 0.10.8", + "simple-dns", + "smallvec", + "snow", + "socket2 0.5.7", + "static_assertions", + "str0m", + "thiserror", + "tokio", + "tokio-stream", + "tokio-tungstenite", + "tokio-util", + "tracing", + "trust-dns-resolver 0.23.2", + "uint", + "unsigned-varint", + "url", + "webpki", + "x25519-dalek 2.0.1", + "x509-parser 0.15.1", + "yasna", + "zeroize", +] + [[package]] name = "lock_api" version = "0.4.12" @@ -4264,15 +4419,6 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ffbee8634e0d45d258acb448e7eaab3fce7a0a467395d4d9f228e3c1f01fb2e4" -[[package]] -name = "matchers" -version = "0.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f099785f7595cc4b4553a174ce30dd7589ef93391ff414dbb67f62392b9e0ce1" -dependencies = [ - "regex-automata 0.1.10", -] - [[package]] name = "matchers" version = "0.1.0" @@ -4418,8 +4564,8 @@ dependencies = [ "lioness", "log", "parking_lot 0.12.3", - "rand", - "rand_chacha", + "rand 0.8.5", + "rand_chacha 0.3.1", "rand_distr", "subtle 2.6.0", "thiserror", @@ -4436,8 +4582,23 @@ dependencies = [ "downcast", "fragile", "lazy_static", - "mockall_derive", - "predicates", + "mockall_derive 0.11.4", + "predicates 2.1.5", + "predicates-tree", +] + +[[package]] +name = "mockall" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43766c2b5203b10de348ffe19f7e54564b64f3d6018ff7648d1e2d6d3a0f0a48" +dependencies = [ + "cfg-if", + "downcast", + "fragile", + "lazy_static", + "mockall_derive 0.12.1", + "predicates 3.1.2", "predicates-tree", ] @@ -4453,6 +4614,18 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "mockall_derive" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af7cbce79ec385a1d4f54baa90a76401eb15d9cab93685f62e7e9f942aa00ae2" +dependencies = [ + "cfg-if", + "proc-macro2", + "quote", + "syn 2.0.71", +] + [[package]] name = "multiaddr" version = "0.17.1" @@ -4464,7 +4637,7 @@ dependencies = [ "data-encoding", "log", "multibase", - "multihash", + "multihash 0.17.0", "percent-encoding", "serde", "static_assertions", @@ -4500,6 +4673,23 @@ dependencies = [ "unsigned-varint", ] +[[package]] +name = "multihash" +version = "0.18.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfd8a792c1694c6da4f68db0a9d707c72bd260994da179e6030a5dcee00bb815" +dependencies = [ + "blake2b_simd", + "blake2s_simd", + "blake3", + "core2", + "digest 0.10.7", + "multihash-derive", + "sha2 0.10.8", + "sha3", + "unsigned-varint", +] + [[package]] name = "multihash-derive" version = "0.8.1" @@ -4567,7 +4757,7 @@ version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7bddcd3bf5144b6392de80e04c347cd7fab2508f6df16a85fc496ecd5cec39bc" dependencies = [ - "rand", + "rand 0.8.5", ] [[package]] @@ -4649,6 +4839,18 @@ dependencies = [ "tokio", ] +[[package]] +name = "network-interface" +version = "1.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4a43439bf756eed340bdf8feba761e2d50c7d47175d87545cd5cbe4a137c4d1" +dependencies = [ + "cc", + "libc", + "thiserror", + "winapi", +] + [[package]] name = "nix" version = "0.24.3" @@ -4770,9 +4972,9 @@ dependencies = [ "sp-offchain", "sp-runtime", "sp-session", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", - "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", - "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", + "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", + "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-transaction-pool", "sp-version", "substrate-wasm-builder", @@ -4949,12 +5151,60 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" +[[package]] +name = "openssl" +version = "0.10.66" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9529f4786b70a3e8c61e11179af17ab6188ad8d0ded78c5529441ed39d4bd9c1" +dependencies = [ + "bitflags 2.5.0", + "cfg-if", + "foreign-types", + "libc", + "once_cell", + "openssl-macros", + "openssl-sys", +] + +[[package]] +name = "openssl-macros" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.71", +] + [[package]] name = "openssl-probe" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" +[[package]] +name = "openssl-src" +version = "300.3.1+3.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7259953d42a81bf137fbbd73bd30a8e1914d6dce43c2b90ed575783a22608b91" +dependencies = [ + "cc", +] + +[[package]] +name = "openssl-sys" +version = "0.9.103" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f9e8deee91df40a943c71b917e5874b951d32a802526c85721ce3b776c929d6" +dependencies = [ + "cc", + "libc", + "openssl-src", + "pkg-config", + "vcpkg", +] + [[package]] name = "option-ext" version = "0.2.0" @@ -4984,8 +5234,8 @@ dependencies = [ "sp-core", "sp-io", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", - "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", + "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-weights", "substrate-fixed", "subtensor-macros", @@ -4994,7 +5244,7 @@ dependencies = [ [[package]] name = "pallet-aura" version = "27.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "frame-support", "frame-system", @@ -5005,13 +5255,13 @@ dependencies = [ "sp-application-crypto", "sp-consensus-aura", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", ] [[package]] name = "pallet-authorship" version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "frame-support", "frame-system", @@ -5019,13 +5269,13 @@ dependencies = [ "parity-scale-codec", "scale-info", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", ] [[package]] name = "pallet-balances" version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "docify", "frame-benchmarking", @@ -5035,7 +5285,7 @@ dependencies = [ "parity-scale-codec", "scale-info", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", ] [[package]] @@ -5051,7 +5301,7 @@ dependencies = [ "sp-core", "sp-io", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "subtensor-macros", ] @@ -5069,14 +5319,14 @@ dependencies = [ "sp-core", "sp-io", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "subtensor-macros", ] [[package]] name = "pallet-grandpa" version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "frame-benchmarking", "frame-support", @@ -5093,13 +5343,13 @@ dependencies = [ "sp-runtime", "sp-session", "sp-staking", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", ] [[package]] name = "pallet-insecure-randomness-collective-flip" version = "16.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "frame-support", "frame-system", @@ -5107,13 +5357,13 @@ dependencies = [ "safe-mix", "scale-info", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", ] [[package]] name = "pallet-membership" version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "frame-benchmarking", "frame-support", @@ -5124,13 +5374,13 @@ dependencies = [ "sp-core", "sp-io", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", ] [[package]] name = "pallet-multisig" version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "frame-benchmarking", "frame-support", @@ -5140,13 +5390,13 @@ dependencies = [ "scale-info", "sp-io", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", ] [[package]] name = "pallet-preimage" version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "frame-benchmarking", "frame-support", @@ -5157,13 +5407,13 @@ dependencies = [ "sp-core", "sp-io", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", ] [[package]] name = "pallet-proxy" version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "frame-benchmarking", "frame-support", @@ -5172,7 +5422,7 @@ dependencies = [ "scale-info", "sp-io", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", ] [[package]] @@ -5188,14 +5438,14 @@ dependencies = [ "sp-core", "sp-io", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "subtensor-macros", ] [[package]] name = "pallet-safe-mode" version = "9.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "docify", "frame-benchmarking", @@ -5208,13 +5458,13 @@ dependencies = [ "scale-info", "sp-arithmetic", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", ] [[package]] name = "pallet-scheduler" version = "29.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "docify", "frame-benchmarking", @@ -5225,14 +5475,14 @@ dependencies = [ "scale-info", "sp-io", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-weights", ] [[package]] name = "pallet-session" version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "frame-support", "frame-system", @@ -5247,7 +5497,7 @@ dependencies = [ "sp-session", "sp-staking", "sp-state-machine", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-trie", ] @@ -5272,7 +5522,7 @@ dependencies = [ "pallet-utility", "parity-scale-codec", "parity-util-mem", - "rand", + "rand 0.8.5", "scale-info", "serde", "serde-tuple-vec-map", @@ -5282,8 +5532,8 @@ dependencies = [ "sp-core", "sp-io", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", - "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", + "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-version", "substrate-fixed", "subtensor-macros", @@ -5292,7 +5542,7 @@ dependencies = [ [[package]] name = "pallet-sudo" version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "docify", "frame-benchmarking", @@ -5302,13 +5552,13 @@ dependencies = [ "scale-info", "sp-io", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", ] [[package]] name = "pallet-timestamp" version = "27.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "docify", "frame-benchmarking", @@ -5320,15 +5570,15 @@ dependencies = [ "sp-inherents", "sp-io", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", - "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", + "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-timestamp", ] [[package]] name = "pallet-transaction-payment" version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "frame-support", "frame-system", @@ -5338,13 +5588,13 @@ dependencies = [ "sp-core", "sp-io", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", ] [[package]] name = "pallet-transaction-payment-rpc" version = "30.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "jsonrpsee", "pallet-transaction-payment-rpc-runtime-api", @@ -5360,7 +5610,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc-runtime-api" version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "pallet-transaction-payment", "parity-scale-codec", @@ -5372,7 +5622,7 @@ dependencies = [ [[package]] name = "pallet-utility" version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "frame-benchmarking", "frame-support", @@ -5382,7 +5632,7 @@ dependencies = [ "sp-core", "sp-io", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", ] [[package]] @@ -5392,7 +5642,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4e69bf016dc406eff7d53a7d3f7cf1c2e72c82b9088aac1118591e36dd2cd3e9" dependencies = [ "bitcoin_hashes", - "rand", + "rand 0.8.5", "rand_core 0.6.4", "serde", "unicode-normalization", @@ -5413,7 +5663,7 @@ dependencies = [ "lz4", "memmap2 0.5.10", "parking_lot 0.12.3", - "rand", + "rand 0.8.5", "siphasher", "snap", "winapi", @@ -5857,6 +6107,16 @@ dependencies = [ "regex", ] +[[package]] +name = "predicates" +version = "3.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7e9086cc7640c29a356d1a29fd134380bee9d8f79a17410aa76e7ad295f42c97" +dependencies = [ + "anstyle", + "predicates-core", +] + [[package]] name = "predicates-core" version = "1.0.6" @@ -6147,6 +6407,24 @@ dependencies = [ "pin-project-lite 0.1.12", ] +[[package]] +name = "quinn" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e8b432585672228923edbbf64b8b12c14e1112f62e88737655b4a083dbcd78e" +dependencies = [ + "bytes", + "pin-project-lite 0.2.14", + "quinn-proto", + "quinn-udp", + "rustc-hash", + "rustls 0.20.9", + "thiserror", + "tokio", + "tracing", + "webpki", +] + [[package]] name = "quinn-proto" version = "0.9.6" @@ -6154,7 +6432,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94b0b33c13a79f669c85defaf4c275dc86a0c0372807d0ca3d78e0bb87274863" dependencies = [ "bytes", - "rand", + "rand 0.8.5", "ring 0.16.20", "rustc-hash", "rustls 0.20.9", @@ -6165,6 +6443,19 @@ dependencies = [ "webpki", ] +[[package]] +name = "quinn-udp" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "641538578b21f5e5c8ea733b736895576d0fe329bb883b937db6f4d163dbaaf4" +dependencies = [ + "libc", + "quinn-proto", + "socket2 0.4.10", + "tracing", + "windows-sys 0.42.0", +] + [[package]] name = "quote" version = "1.0.36" @@ -6180,6 +6471,19 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" +[[package]] +name = "rand" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" +dependencies = [ + "getrandom 0.1.16", + "libc", + "rand_chacha 0.2.2", + "rand_core 0.5.1", + "rand_hc", +] + [[package]] name = "rand" version = "0.8.5" @@ -6187,10 +6491,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" dependencies = [ "libc", - "rand_chacha", + "rand_chacha 0.3.1", "rand_core 0.6.4", ] +[[package]] +name = "rand_chacha" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" +dependencies = [ + "ppv-lite86", + "rand_core 0.5.1", +] + [[package]] name = "rand_chacha" version = "0.3.1" @@ -6226,7 +6540,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "32cb0b9bc82b0a0876c2dd994a7e7a2683d3e7390ca40e6886785ef0c7e3ee31" dependencies = [ "num-traits", - "rand", + "rand 0.8.5", +] + +[[package]] +name = "rand_hc" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" +dependencies = [ + "rand_core 0.5.1", ] [[package]] @@ -6721,18 +7044,18 @@ dependencies = [ [[package]] name = "sc-allocator" version = "23.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "log", "sp-core", - "sp-wasm-interface 20.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-wasm-interface 20.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "thiserror", ] [[package]] name = "sc-basic-authorship" version = "0.34.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "futures", "futures-timer", @@ -6754,7 +7077,7 @@ dependencies = [ [[package]] name = "sc-block-builder" version = "0.33.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "parity-scale-codec", "sp-api", @@ -6768,8 +7091,8 @@ dependencies = [ [[package]] name = "sc-chain-spec" -version = "27.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +version = "28.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "array-bytes 6.2.3", "docify", @@ -6790,12 +7113,13 @@ dependencies = [ "sp-io", "sp-runtime", "sp-state-machine", + "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", ] [[package]] name = "sc-chain-spec-derive" version = "11.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", @@ -6806,7 +7130,7 @@ dependencies = [ [[package]] name = "sc-cli" version = "0.36.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "array-bytes 6.2.3", "chrono", @@ -6819,7 +7143,7 @@ dependencies = [ "names", "parity-bip39", "parity-scale-codec", - "rand", + "rand 0.8.5", "regex", "rpassword", "sc-client-api", @@ -6847,7 +7171,7 @@ dependencies = [ [[package]] name = "sc-client-api" version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "fnv", "futures", @@ -6862,11 +7186,11 @@ dependencies = [ "sp-consensus", "sp-core", "sp-database", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-runtime", "sp-state-machine", "sp-statement-store", - "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-trie", "substrate-prometheus-endpoint", ] @@ -6874,7 +7198,7 @@ dependencies = [ [[package]] name = "sc-client-db" version = "0.35.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "hash-db", "kvdb", @@ -6900,16 +7224,16 @@ dependencies = [ [[package]] name = "sc-consensus" version = "0.33.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "async-trait", "futures", "futures-timer", - "libp2p-identity", "log", - "mockall", + "mockall 0.11.4", "parking_lot 0.12.3", "sc-client-api", + "sc-network-types", "sc-utils", "serde", "sp-api", @@ -6925,7 +7249,7 @@ dependencies = [ [[package]] name = "sc-consensus-aura" version = "0.34.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "async-trait", "futures", @@ -6954,7 +7278,7 @@ dependencies = [ [[package]] name = "sc-consensus-grandpa" version = "0.19.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "ahash 0.8.11", "array-bytes 6.2.3", @@ -6967,7 +7291,7 @@ dependencies = [ "log", "parity-scale-codec", "parking_lot 0.12.3", - "rand", + "rand 0.8.5", "sc-block-builder", "sc-chain-spec", "sc-client-api", @@ -6976,6 +7300,7 @@ dependencies = [ "sc-network-common", "sc-network-gossip", "sc-network-sync", + "sc-network-types", "sc-telemetry", "sc-transaction-pool-api", "sc-utils", @@ -6997,7 +7322,7 @@ dependencies = [ [[package]] name = "sc-consensus-grandpa-rpc" version = "0.19.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "finality-grandpa", "futures", @@ -7017,7 +7342,7 @@ dependencies = [ [[package]] name = "sc-consensus-slots" version = "0.33.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "async-trait", "futures", @@ -7040,7 +7365,7 @@ dependencies = [ [[package]] name = "sc-executor" version = "0.32.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "parity-scale-codec", "parking_lot 0.12.3", @@ -7050,25 +7375,25 @@ dependencies = [ "schnellru", "sp-api", "sp-core", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-io", "sp-panic-handler", - "sp-runtime-interface 24.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-runtime-interface 24.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-trie", "sp-version", - "sp-wasm-interface 20.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-wasm-interface 20.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "tracing", ] [[package]] name = "sc-executor-common" version = "0.29.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "polkavm", "sc-allocator", "sp-maybe-compressed-blob", - "sp-wasm-interface 20.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-wasm-interface 20.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "thiserror", "wasm-instrument", ] @@ -7076,18 +7401,18 @@ dependencies = [ [[package]] name = "sc-executor-polkavm" version = "0.29.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "log", "polkavm", "sc-executor-common", - "sp-wasm-interface 20.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-wasm-interface 20.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", ] [[package]] name = "sc-executor-wasmtime" version = "0.29.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "anyhow", "cfg-if", @@ -7097,15 +7422,15 @@ dependencies = [ "rustix 0.36.17", "sc-allocator", "sc-executor-common", - "sp-runtime-interface 24.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", - "sp-wasm-interface 20.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-runtime-interface 24.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", + "sp-wasm-interface 20.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "wasmtime", ] [[package]] name = "sc-informant" version = "0.33.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "ansi_term", "futures", @@ -7122,7 +7447,7 @@ dependencies = [ [[package]] name = "sc-keystore" version = "25.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "array-bytes 6.2.3", "parking_lot 0.12.3", @@ -7136,7 +7461,7 @@ dependencies = [ [[package]] name = "sc-mixnet" version = "0.4.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "array-bytes 4.2.0", "arrayvec", @@ -7144,7 +7469,6 @@ dependencies = [ "bytes", "futures", "futures-timer", - "libp2p-identity", "log", "mixnet", "multiaddr", @@ -7152,6 +7476,7 @@ dependencies = [ "parking_lot 0.12.3", "sc-client-api", "sc-network", + "sc-network-types", "sc-transaction-pool-api", "sp-api", "sp-consensus", @@ -7165,13 +7490,14 @@ dependencies = [ [[package]] name = "sc-network" version = "0.34.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "array-bytes 6.2.3", "async-channel", "async-trait", "asynchronous-codec", "bytes", + "cid 0.9.0", "either", "fnv", "futures", @@ -7179,16 +7505,22 @@ dependencies = [ "ip_network", "libp2p", "linked_hash_set", + "litep2p", "log", - "mockall", + "mockall 0.11.4", + "once_cell", "parity-scale-codec", "parking_lot 0.12.3", "partial_sort", "pin-project", - "rand", + "prost 0.11.9", + "prost-build", + "rand 0.8.5", "sc-client-api", "sc-network-common", + "sc-network-types", "sc-utils", + "schnellru", "serde", "serde_json", "smallvec", @@ -7201,34 +7533,15 @@ dependencies = [ "tokio", "tokio-stream", "unsigned-varint", + "void", "wasm-timer", "zeroize", ] -[[package]] -name = "sc-network-bitswap" -version = "0.33.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" -dependencies = [ - "async-channel", - "cid", - "futures", - "libp2p-identity", - "log", - "prost 0.12.6", - "prost-build", - "sc-client-api", - "sc-network", - "sp-blockchain", - "sp-runtime", - "thiserror", - "unsigned-varint", -] - [[package]] name = "sc-network-common" version = "0.33.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "async-trait", "bitflags 1.3.2", @@ -7237,6 +7550,7 @@ dependencies = [ "parity-scale-codec", "prost-build", "sc-consensus", + "sc-network-types", "sp-consensus", "sp-consensus-grandpa", "sp-runtime", @@ -7245,7 +7559,7 @@ dependencies = [ [[package]] name = "sc-network-gossip" version = "0.34.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "ahash 0.8.11", "futures", @@ -7255,6 +7569,7 @@ dependencies = [ "sc-network", "sc-network-common", "sc-network-sync", + "sc-network-types", "schnellru", "sp-runtime", "substrate-prometheus-endpoint", @@ -7264,18 +7579,18 @@ dependencies = [ [[package]] name = "sc-network-light" version = "0.33.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "array-bytes 6.2.3", "async-channel", "futures", - "libp2p-identity", "log", "parity-scale-codec", "prost 0.12.6", "prost-build", "sc-client-api", "sc-network", + "sc-network-types", "sp-blockchain", "sp-core", "sp-runtime", @@ -7285,7 +7600,7 @@ dependencies = [ [[package]] name = "sc-network-sync" version = "0.33.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "array-bytes 6.2.3", "async-channel", @@ -7295,7 +7610,7 @@ dependencies = [ "futures-timer", "libp2p", "log", - "mockall", + "mockall 0.11.4", "parity-scale-codec", "prost 0.12.6", "prost-build", @@ -7303,6 +7618,7 @@ dependencies = [ "sc-consensus", "sc-network", "sc-network-common", + "sc-network-types", "sc-utils", "schnellru", "smallvec", @@ -7321,7 +7637,7 @@ dependencies = [ [[package]] name = "sc-network-transactions" version = "0.33.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "array-bytes 6.2.3", "futures", @@ -7331,16 +7647,31 @@ dependencies = [ "sc-network", "sc-network-common", "sc-network-sync", + "sc-network-types", "sc-utils", "sp-consensus", "sp-runtime", "substrate-prometheus-endpoint", ] +[[package]] +name = "sc-network-types" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" +dependencies = [ + "bs58 0.4.0", + "libp2p-identity", + "litep2p", + "multiaddr", + "multihash 0.17.0", + "rand 0.8.5", + "thiserror", +] + [[package]] name = "sc-offchain" version = "29.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "array-bytes 6.2.3", "bytes", @@ -7355,15 +7686,16 @@ dependencies = [ "once_cell", "parity-scale-codec", "parking_lot 0.12.3", - "rand", + "rand 0.8.5", "sc-client-api", "sc-network", "sc-network-common", + "sc-network-types", "sc-transaction-pool-api", "sc-utils", "sp-api", "sp-core", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-keystore", "sp-offchain", "sp-runtime", @@ -7374,7 +7706,7 @@ dependencies = [ [[package]] name = "sc-proposer-metrics" version = "0.17.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "log", "substrate-prometheus-endpoint", @@ -7383,7 +7715,7 @@ dependencies = [ [[package]] name = "sc-rpc" version = "29.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "futures", "jsonrpsee", @@ -7415,7 +7747,7 @@ dependencies = [ [[package]] name = "sc-rpc-api" version = "0.33.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "jsonrpsee", "parity-scale-codec", @@ -7435,7 +7767,7 @@ dependencies = [ [[package]] name = "sc-rpc-server" version = "11.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "futures", "governor", @@ -7453,7 +7785,7 @@ dependencies = [ [[package]] name = "sc-rpc-spec-v2" version = "0.34.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "array-bytes 6.2.3", "futures", @@ -7463,12 +7795,13 @@ dependencies = [ "log", "parity-scale-codec", "parking_lot 0.12.3", - "rand", + "rand 0.8.5", "sc-chain-spec", "sc-client-api", "sc-rpc", "sc-transaction-pool-api", "sc-utils", + "schnellru", "serde", "sp-api", "sp-blockchain", @@ -7484,7 +7817,7 @@ dependencies = [ [[package]] name = "sc-service" version = "0.35.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "async-trait", "directories", @@ -7496,7 +7829,7 @@ dependencies = [ "parity-scale-codec", "parking_lot 0.12.3", "pin-project", - "rand", + "rand 0.8.5", "sc-chain-spec", "sc-client-api", "sc-client-db", @@ -7505,11 +7838,11 @@ dependencies = [ "sc-informant", "sc-keystore", "sc-network", - "sc-network-bitswap", "sc-network-common", "sc-network-light", "sc-network-sync", "sc-network-transactions", + "sc-network-types", "sc-rpc", "sc-rpc-server", "sc-rpc-spec-v2", @@ -7526,12 +7859,12 @@ dependencies = [ "sp-blockchain", "sp-consensus", "sp-core", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-keystore", "sp-runtime", "sp-session", "sp-state-machine", - "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-transaction-pool", "sp-transaction-storage-proof", "sp-trie", @@ -7548,7 +7881,7 @@ dependencies = [ [[package]] name = "sc-state-db" version = "0.30.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "log", "parity-scale-codec", @@ -7559,13 +7892,13 @@ dependencies = [ [[package]] name = "sc-sysinfo" version = "27.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "derive_more", "futures", "libc", "log", - "rand", + "rand 0.8.5", "rand_pcg", "regex", "sc-telemetry", @@ -7574,13 +7907,13 @@ dependencies = [ "sp-core", "sp-crypto-hashing", "sp-io", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", ] [[package]] name = "sc-telemetry" version = "15.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "chrono", "futures", @@ -7588,7 +7921,8 @@ dependencies = [ "log", "parking_lot 0.12.3", "pin-project", - "rand", + "rand 0.8.5", + "sc-network", "sc-utils", "serde", "serde_json", @@ -7599,7 +7933,7 @@ dependencies = [ [[package]] name = "sc-tracing" version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "ansi_term", "chrono", @@ -7619,17 +7953,17 @@ dependencies = [ "sp-core", "sp-rpc", "sp-runtime", - "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "thiserror", "tracing", "tracing-log 0.1.4", - "tracing-subscriber 0.2.25", + "tracing-subscriber", ] [[package]] name = "sc-tracing-proc-macro" version = "11.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", @@ -7640,7 +7974,7 @@ dependencies = [ [[package]] name = "sc-transaction-pool" version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "async-trait", "futures", @@ -7658,7 +7992,7 @@ dependencies = [ "sp-core", "sp-crypto-hashing", "sp-runtime", - "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-transaction-pool", "substrate-prometheus-endpoint", "thiserror", @@ -7667,7 +8001,7 @@ dependencies = [ [[package]] name = "sc-transaction-pool-api" version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "async-trait", "futures", @@ -7683,7 +8017,7 @@ dependencies = [ [[package]] name = "sc-utils" version = "14.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "async-channel", "futures", @@ -7811,6 +8145,21 @@ dependencies = [ "untrusted 0.9.0", ] +[[package]] +name = "sctp-proto" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6220f78bb44c15f326b0596113305f6101097a18755d53727a575c97e09fb24" +dependencies = [ + "bytes", + "crc", + "fxhash", + "log", + "rand 0.8.5", + "slab", + "thiserror", +] + [[package]] name = "sec1" version = "0.7.3" @@ -8018,6 +8367,38 @@ dependencies = [ "opaque-debug 0.3.1", ] +[[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", + "sha1-asm", +] + +[[package]] +name = "sha1" +version = "0.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest 0.10.7", +] + +[[package]] +name = "sha1-asm" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "286acebaf8b67c1130aedffad26f594eff0c1292389158135327d2e23aed582b" +dependencies = [ + "cc", +] + [[package]] name = "sha2" version = "0.9.9" @@ -8076,6 +8457,12 @@ dependencies = [ "libc", ] +[[package]] +name = "signature" +version = "1.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c" + [[package]] name = "signature" version = "2.2.0" @@ -8099,6 +8486,15 @@ dependencies = [ "wide", ] +[[package]] +name = "simple-dns" +version = "0.5.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cae9a3fcdadafb6d97f4c0e007e4247b114ee0f119f650c3cbf3a8b3a1479694" +dependencies = [ + "bitflags 2.5.0", +] + [[package]] name = "simple-mermaid" version = "0.1.1" @@ -8188,14 +8584,14 @@ dependencies = [ "http", "httparse", "log", - "rand", - "sha-1", + "rand 0.8.5", + "sha-1 0.9.8", ] [[package]] name = "sp-api" version = "26.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "hash-db", "log", @@ -8203,12 +8599,12 @@ dependencies = [ "scale-info", "sp-api-proc-macro", "sp-core", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-metadata-ir", "sp-runtime", - "sp-runtime-interface 24.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-runtime-interface 24.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-state-machine", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-trie", "sp-version", "thiserror", @@ -8217,7 +8613,7 @@ dependencies = [ [[package]] name = "sp-api-proc-macro" version = "15.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "Inflector", "blake2 0.10.6", @@ -8231,20 +8627,20 @@ dependencies = [ [[package]] name = "sp-application-crypto" version = "30.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "parity-scale-codec", "scale-info", "serde", "sp-core", "sp-io", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", ] [[package]] name = "sp-arithmetic" version = "23.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "docify", "integer-sqrt", @@ -8252,7 +8648,7 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "static_assertions", ] @@ -8277,7 +8673,7 @@ dependencies = [ [[package]] name = "sp-block-builder" version = "26.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "sp-api", "sp-inherents", @@ -8287,7 +8683,7 @@ dependencies = [ [[package]] name = "sp-blockchain" version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "futures", "log", @@ -8305,7 +8701,7 @@ dependencies = [ [[package]] name = "sp-consensus" version = "0.32.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "async-trait", "futures", @@ -8320,7 +8716,7 @@ dependencies = [ [[package]] name = "sp-consensus-aura" version = "0.32.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "async-trait", "parity-scale-codec", @@ -8336,7 +8732,7 @@ dependencies = [ [[package]] name = "sp-consensus-grandpa" version = "13.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "finality-grandpa", "log", @@ -8353,7 +8749,7 @@ dependencies = [ [[package]] name = "sp-consensus-slots" version = "0.32.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "parity-scale-codec", "scale-info", @@ -8364,7 +8760,7 @@ dependencies = [ [[package]] name = "sp-core" version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "array-bytes 6.2.3", "bandersnatch_vrfs", @@ -8388,18 +8784,18 @@ dependencies = [ "parking_lot 0.12.3", "paste", "primitive-types", - "rand", + "rand 0.8.5", "scale-info", "schnorrkel", "secp256k1", "secrecy", "serde", "sp-crypto-hashing", - "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", - "sp-runtime-interface 24.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", - "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", + "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", + "sp-runtime-interface 24.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", + "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "ss58-registry", "substrate-bip39", "thiserror", @@ -8430,8 +8826,8 @@ dependencies = [ [[package]] name = "sp-crypto-hashing" -version = "0.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "blake2b_simd", "byteorder", @@ -8443,8 +8839,8 @@ dependencies = [ [[package]] name = "sp-crypto-hashing-proc-macro" -version = "0.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "quote", "sp-crypto-hashing", @@ -8454,7 +8850,7 @@ dependencies = [ [[package]] name = "sp-database" version = "10.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "kvdb", "parking_lot 0.12.3", @@ -8463,7 +8859,7 @@ dependencies = [ [[package]] name = "sp-debug-derive" version = "14.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "proc-macro2", "quote", @@ -8483,11 +8879,11 @@ dependencies = [ [[package]] name = "sp-externalities" version = "0.25.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "environmental", "parity-scale-codec", - "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", ] [[package]] @@ -8502,9 +8898,11 @@ dependencies = [ [[package]] name = "sp-genesis-builder" -version = "0.7.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +version = "0.8.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ + "parity-scale-codec", + "scale-info", "serde_json", "sp-api", "sp-runtime", @@ -8513,7 +8911,7 @@ dependencies = [ [[package]] name = "sp-inherents" version = "26.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "async-trait", "impl-trait-for-tuples", @@ -8526,10 +8924,10 @@ dependencies = [ [[package]] name = "sp-io" version = "30.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "bytes", - "ed25519-dalek", + "ed25519-dalek 2.1.1", "libsecp256k1", "log", "parity-scale-codec", @@ -8538,12 +8936,12 @@ dependencies = [ "secp256k1", "sp-core", "sp-crypto-hashing", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-keystore", - "sp-runtime-interface 24.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-runtime-interface 24.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-state-machine", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", - "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", + "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-trie", "tracing", "tracing-core", @@ -8552,7 +8950,7 @@ dependencies = [ [[package]] name = "sp-keyring" version = "31.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "sp-core", "sp-runtime", @@ -8562,18 +8960,18 @@ dependencies = [ [[package]] name = "sp-keystore" version = "0.34.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "parity-scale-codec", "parking_lot 0.12.3", "sp-core", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", ] [[package]] name = "sp-maybe-compressed-blob" version = "11.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "thiserror", "zstd 0.12.4", @@ -8582,7 +8980,7 @@ dependencies = [ [[package]] name = "sp-metadata-ir" version = "0.6.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "frame-metadata", "parity-scale-codec", @@ -8592,7 +8990,7 @@ dependencies = [ [[package]] name = "sp-mixnet" version = "0.4.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "parity-scale-codec", "scale-info", @@ -8603,7 +9001,7 @@ dependencies = [ [[package]] name = "sp-offchain" version = "26.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "sp-api", "sp-core", @@ -8613,7 +9011,7 @@ dependencies = [ [[package]] name = "sp-panic-handler" version = "13.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "backtrace", "lazy_static", @@ -8623,7 +9021,7 @@ dependencies = [ [[package]] name = "sp-rpc" version = "26.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "rustc-hash", "serde", @@ -8633,7 +9031,7 @@ dependencies = [ [[package]] name = "sp-runtime" version = "31.0.1" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "docify", "either", @@ -8642,7 +9040,7 @@ dependencies = [ "log", "parity-scale-codec", "paste", - "rand", + "rand 0.8.5", "scale-info", "serde", "simple-mermaid", @@ -8650,26 +9048,26 @@ dependencies = [ "sp-arithmetic", "sp-core", "sp-io", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-weights", ] [[package]] name = "sp-runtime-interface" version = "24.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "bytes", "impl-trait-for-tuples", "parity-scale-codec", "polkavm-derive", "primitive-types", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", - "sp-runtime-interface-proc-macro 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", - "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", - "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", - "sp-wasm-interface 20.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", + "sp-runtime-interface-proc-macro 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", + "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", + "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", + "sp-wasm-interface 20.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "static_assertions", ] @@ -8695,7 +9093,7 @@ dependencies = [ [[package]] name = "sp-runtime-interface-proc-macro" version = "17.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "Inflector", "expander", @@ -8721,7 +9119,7 @@ dependencies = [ [[package]] name = "sp-session" version = "27.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "parity-scale-codec", "scale-info", @@ -8735,7 +9133,7 @@ dependencies = [ [[package]] name = "sp-staking" version = "26.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "impl-trait-for-tuples", "parity-scale-codec", @@ -8748,16 +9146,16 @@ dependencies = [ [[package]] name = "sp-state-machine" version = "0.35.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "hash-db", "log", "parity-scale-codec", "parking_lot 0.12.3", - "rand", + "rand 0.8.5", "smallvec", "sp-core", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-panic-handler", "sp-trie", "thiserror", @@ -8768,23 +9166,23 @@ dependencies = [ [[package]] name = "sp-statement-store" version = "10.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "aes-gcm", "curve25519-dalek 4.1.3", - "ed25519-dalek", + "ed25519-dalek 2.1.1", "hkdf", "parity-scale-codec", - "rand", + "rand 0.8.5", "scale-info", "sha2 0.10.8", "sp-api", "sp-application-crypto", "sp-core", "sp-crypto-hashing", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-runtime", - "sp-runtime-interface 24.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-runtime-interface 24.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "thiserror", "x25519-dalek 2.0.1", ] @@ -8792,7 +9190,7 @@ dependencies = [ [[package]] name = "sp-std" version = "14.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" [[package]] name = "sp-std" @@ -8802,13 +9200,13 @@ source = "git+https://github.com/paritytech/polkadot-sdk#6a5b6e03bfc8d0c6f5f05f3 [[package]] name = "sp-storage" version = "19.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "impl-serde", "parity-scale-codec", "ref-cast", "serde", - "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", ] [[package]] @@ -8826,7 +9224,7 @@ dependencies = [ [[package]] name = "sp-timestamp" version = "26.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "async-trait", "parity-scale-codec", @@ -8838,12 +9236,12 @@ dependencies = [ [[package]] name = "sp-tracing" version = "16.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "parity-scale-codec", "tracing", "tracing-core", - "tracing-subscriber 0.2.25", + "tracing-subscriber", ] [[package]] @@ -8854,13 +9252,13 @@ dependencies = [ "parity-scale-codec", "tracing", "tracing-core", - "tracing-subscriber 0.3.18", + "tracing-subscriber", ] [[package]] name = "sp-transaction-pool" version = "26.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "sp-api", "sp-runtime", @@ -8869,7 +9267,7 @@ dependencies = [ [[package]] name = "sp-transaction-storage-proof" version = "26.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "async-trait", "parity-scale-codec", @@ -8883,7 +9281,7 @@ dependencies = [ [[package]] name = "sp-trie" version = "29.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "ahash 0.8.11", "hash-db", @@ -8892,11 +9290,11 @@ dependencies = [ "nohash-hasher", "parity-scale-codec", "parking_lot 0.12.3", - "rand", + "rand 0.8.5", "scale-info", "schnellru", "sp-core", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "thiserror", "tracing", "trie-db", @@ -8906,7 +9304,7 @@ dependencies = [ [[package]] name = "sp-version" version = "29.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "impl-serde", "parity-scale-codec", @@ -8915,7 +9313,7 @@ dependencies = [ "serde", "sp-crypto-hashing-proc-macro", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-version-proc-macro", "thiserror", ] @@ -8923,7 +9321,7 @@ dependencies = [ [[package]] name = "sp-version-proc-macro" version = "13.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "parity-scale-codec", "proc-macro2", @@ -8934,7 +9332,7 @@ dependencies = [ [[package]] name = "sp-wasm-interface" version = "20.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "anyhow", "impl-trait-for-tuples", @@ -8956,7 +9354,7 @@ dependencies = [ [[package]] name = "sp-weights" version = "27.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "bounded-collections", "parity-scale-codec", @@ -8964,7 +9362,7 @@ dependencies = [ "serde", "smallvec", "sp-arithmetic", - "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", ] [[package]] @@ -9053,6 +9451,26 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "str0m" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6706347e49b13373f7ddfafad47df7583ed52083d6fc8a594eb2c80497ef959d" +dependencies = [ + "combine", + "crc", + "fastrand", + "hmac 0.12.1", + "once_cell", + "openssl", + "openssl-sys", + "sctp-proto", + "serde", + "sha-1 0.10.1", + "thiserror", + "tracing", +] + [[package]] name = "strsim" version = "0.11.1" @@ -9103,7 +9521,7 @@ dependencies = [ [[package]] name = "substrate-bip39" version = "0.4.7" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "hmac 0.12.1", "pbkdf2", @@ -9115,7 +9533,7 @@ dependencies = [ [[package]] name = "substrate-build-script-utils" version = "11.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" [[package]] name = "substrate-fixed" @@ -9131,7 +9549,7 @@ dependencies = [ [[package]] name = "substrate-frame-rpc-system" version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "frame-system-rpc-runtime-api", "futures", @@ -9150,7 +9568,7 @@ dependencies = [ [[package]] name = "substrate-prometheus-endpoint" version = "0.17.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "hyper", "log", @@ -9162,7 +9580,7 @@ dependencies = [ [[package]] name = "substrate-wasm-builder" version = "17.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3#8d2f55dfe06bae13e9f47ccf587acfd3fb9cd923" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" dependencies = [ "array-bytes 6.2.3", "build-helper", @@ -9178,7 +9596,7 @@ dependencies = [ "sp-core", "sp-io", "sp-maybe-compressed-blob", - "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.10.0-rc3)", + "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", "sp-version", "strum 0.26.2", "tempfile", @@ -9533,6 +9951,21 @@ dependencies = [ "tokio-util", ] +[[package]] +name = "tokio-tungstenite" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "212d5dcb2a1ce06d81107c3d0ffa3121fe974b73f068c8282cb1c32328113b6c" +dependencies = [ + "futures-util", + "log", + "rustls 0.21.12", + "rustls-native-certs", + "tokio", + "tokio-rustls", + "tungstenite", +] + [[package]] name = "tokio-util" version = "0.7.11" @@ -9711,48 +10144,16 @@ dependencies = [ "tracing-core", ] -[[package]] -name = "tracing-serde" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc6b213177105856957181934e4920de57730fc69bf42c37ee5bb664d406d9e1" -dependencies = [ - "serde", - "tracing-core", -] - -[[package]] -name = "tracing-subscriber" -version = "0.2.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e0d2eaa99c3c2e41547cfa109e910a68ea03823cccad4a0525dcbc9b01e8c71" -dependencies = [ - "ansi_term", - "chrono", - "lazy_static", - "matchers 0.0.1", - "parking_lot 0.11.2", - "regex", - "serde", - "serde_json", - "sharded-slab", - "smallvec", - "thread_local", - "tracing", - "tracing-core", - "tracing-log 0.1.4", - "tracing-serde", -] - [[package]] name = "tracing-subscriber" version = "0.3.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b" dependencies = [ - "matchers 0.1.0", + "matchers", "nu-ansi-term", "once_cell", + "parking_lot 0.12.3", "regex", "sharded-slab", "smallvec", @@ -9764,12 +10165,11 @@ dependencies = [ [[package]] name = "trie-db" -version = "0.28.0" +version = "0.29.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff28e0f815c2fea41ebddf148e008b077d2faddb026c9555b29696114d602642" +checksum = "0c992b4f40c234a074d48a757efeabb1a6be88af84c0c23f7ca158950cb0ae7f" dependencies = [ "hash-db", - "hashbrown 0.13.2", "log", "rustc-hex", "smallvec", @@ -9793,14 +10193,14 @@ dependencies = [ "async-trait", "cfg-if", "data-encoding", - "enum-as-inner", + "enum-as-inner 0.5.1", "futures-channel", "futures-io", "futures-util", "idna 0.2.3", "ipnet", "lazy_static", - "rand", + "rand 0.8.5", "smallvec", "socket2 0.4.10", "thiserror", @@ -9810,6 +10210,31 @@ dependencies = [ "url", ] +[[package]] +name = "trust-dns-proto" +version = "0.23.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3119112651c157f4488931a01e586aa459736e9d6046d3bd9105ffb69352d374" +dependencies = [ + "async-trait", + "cfg-if", + "data-encoding", + "enum-as-inner 0.6.0", + "futures-channel", + "futures-io", + "futures-util", + "idna 0.4.0", + "ipnet", + "once_cell", + "rand 0.8.5", + "smallvec", + "thiserror", + "tinyvec", + "tokio", + "tracing", + "url", +] + [[package]] name = "trust-dns-resolver" version = "0.22.0" @@ -9827,7 +10252,28 @@ dependencies = [ "thiserror", "tokio", "tracing", - "trust-dns-proto", + "trust-dns-proto 0.22.0", +] + +[[package]] +name = "trust-dns-resolver" +version = "0.23.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "10a3e6c3aff1718b3c73e395d1f35202ba2ffa847c6a62eea0db8fb4cfe30be6" +dependencies = [ + "cfg-if", + "futures-util", + "ipconfig", + "lru-cache", + "once_cell", + "parking_lot 0.12.3", + "rand 0.8.5", + "resolv-conf", + "smallvec", + "thiserror", + "tokio", + "tracing", + "trust-dns-proto 0.23.2", ] [[package]] @@ -9842,6 +10288,26 @@ version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f4f195fd851901624eee5a58c4bb2b4f06399148fcd0ed336e6f1cb60a9881df" +[[package]] +name = "tungstenite" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e3dac10fd62eaf6617d3a904ae222845979aec67c615d1c842b4002c7666fb9" +dependencies = [ + "byteorder", + "bytes", + "data-encoding", + "http", + "httparse", + "log", + "rand 0.8.5", + "rustls 0.21.12", + "sha1", + "thiserror", + "url", + "utf-8", +] + [[package]] name = "twox-hash" version = "1.6.3" @@ -9850,7 +10316,7 @@ checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675" dependencies = [ "cfg-if", "digest 0.10.7", - "rand", + "rand 0.8.5", "static_assertions", ] @@ -9940,6 +10406,7 @@ dependencies = [ "bytes", "futures-io", "futures-util", + "tokio-util", ] [[package]] @@ -9965,6 +10432,12 @@ dependencies = [ "percent-encoding", ] +[[package]] +name = "utf-8" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" + [[package]] name = "utf8parse" version = "0.2.2" @@ -10010,8 +10483,8 @@ dependencies = [ "arrayref", "constcat", "digest 0.10.7", - "rand", - "rand_chacha", + "rand 0.8.5", + "rand_chacha 0.3.1", "rand_core 0.6.4", "sha2 0.10.8", "sha3", @@ -10365,7 +10838,7 @@ dependencies = [ "memfd", "memoffset", "paste", - "rand", + "rand 0.8.5", "rustix 0.36.17", "wasmtime-asm-macros", "wasmtime-environ", @@ -10501,6 +10974,21 @@ dependencies = [ "windows-targets 0.52.5", ] +[[package]] +name = "windows-sys" +version = "0.42.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" +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", +] + [[package]] name = "windows-sys" version = "0.45.0" @@ -10784,6 +11272,23 @@ dependencies = [ "time", ] +[[package]] +name = "x509-parser" +version = "0.15.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7069fba5b66b9193bd2c5d3d4ff12b839118f6bcbef5328efafafb5395cf63da" +dependencies = [ + "asn1-rs", + "data-encoding", + "der-parser", + "lazy_static", + "nom", + "oid-registry", + "rusticata-macros", + "thiserror", + "time", +] + [[package]] name = "yamux" version = "0.10.2" @@ -10794,7 +11299,7 @@ dependencies = [ "log", "nohash-hasher", "parking_lot 0.12.3", - "rand", + "rand 0.8.5", "static_assertions", ] diff --git a/Cargo.toml b/Cargo.toml index f9a7968b9..6e6c400e3 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -77,81 +77,81 @@ walkdir = "2" subtensor-macros = { path = "support/macros" } -frame-benchmarking = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -frame-benchmarking-cli = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } -frame-executive = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -frame-metadata-hash-extension = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -frame-support = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -frame-system = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -frame-system-benchmarking = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -frame-system-rpc-runtime-api = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -frame-try-runtime = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } +frame-benchmarking = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +frame-benchmarking-cli = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } +frame-executive = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +frame-metadata-hash-extension = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +frame-support = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +frame-system = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +frame-system-benchmarking = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +frame-system-rpc-runtime-api = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +frame-try-runtime = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } -pallet-aura = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -pallet-balances = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -pallet-grandpa = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -pallet-insecure-randomness-collective-flip = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -pallet-membership = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -pallet-multisig = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -pallet-preimage = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -pallet-proxy = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -pallet-safe-mode = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -pallet-scheduler = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -pallet-sudo = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -pallet-timestamp = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -pallet-transaction-payment = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -pallet-transaction-payment-rpc = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } -pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -pallet-utility = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } +pallet-aura = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +pallet-balances = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +pallet-grandpa = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +pallet-insecure-randomness-collective-flip = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +pallet-membership = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +pallet-multisig = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +pallet-preimage = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +pallet-proxy = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +pallet-safe-mode = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +pallet-scheduler = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +pallet-sudo = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +pallet-timestamp = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +pallet-transaction-payment = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +pallet-transaction-payment-rpc = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } +pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +pallet-utility = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } -sc-basic-authorship = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } -sc-cli = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } -sc-client-api = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } -sc-consensus = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } -sc-consensus-aura = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } -sc-consensus-grandpa = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } -sc-consensus-grandpa-rpc = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } -sc-chain-spec-derive = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } -sc-chain-spec = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } -sc-consensus-slots = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } -sc-executor = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } -sc-keystore = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } -sc-network = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } -sc-offchain = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } -sc-rpc = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } -sc-rpc-api = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } -sc-service = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } -sc-telemetry = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } -sc-transaction-pool = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } -sc-transaction-pool-api = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } +sc-basic-authorship = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } +sc-cli = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } +sc-client-api = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } +sc-consensus = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } +sc-consensus-aura = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } +sc-consensus-grandpa = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } +sc-consensus-grandpa-rpc = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } +sc-chain-spec-derive = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } +sc-chain-spec = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } +sc-consensus-slots = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } +sc-executor = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } +sc-keystore = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } +sc-network = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } +sc-offchain = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } +sc-rpc = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } +sc-rpc-api = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } +sc-service = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } +sc-telemetry = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } +sc-transaction-pool = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } +sc-transaction-pool-api = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } -sp-api = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -sp-block-builder = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -sp-blockchain = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -sp-consensus = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } -sp-consensus-aura = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -sp-consensus-grandpa = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } -sp-genesis-builder = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -sp-core = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -sp-inherents = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -sp-io = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -sp-keyring = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } -sp-offchain = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -sp-rpc = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -sp-runtime = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -sp-session = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -sp-std = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -sp-storage = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -sp-timestamp = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } -sp-tracing = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -sp-transaction-pool = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -sp-version = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } -sp-weights = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3", default-features = false } +sp-api = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +sp-block-builder = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +sp-blockchain = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +sp-consensus = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } +sp-consensus-aura = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +sp-consensus-grandpa = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } +sp-genesis-builder = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +sp-core = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +sp-inherents = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +sp-io = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +sp-keyring = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } +sp-offchain = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +sp-rpc = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +sp-runtime = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +sp-session = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +sp-std = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +sp-storage = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +sp-timestamp = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } +sp-tracing = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +sp-transaction-pool = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +sp-version = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +sp-weights = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } -substrate-build-script-utils = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } +substrate-build-script-utils = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } substrate-fixed = { git = "https://github.com/opentensor/substrate-fixed.git", tag = "v0.5.9" } -substrate-frame-rpc-system = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } -substrate-wasm-builder = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.10.0-rc3" } +substrate-frame-rpc-system = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } +substrate-wasm-builder = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } frame-metadata = "16" [profile.release] diff --git a/node/src/command.rs b/node/src/command.rs index 2423d1456..5e591d8b1 100644 --- a/node/src/command.rs +++ b/node/src/command.rs @@ -149,7 +149,7 @@ pub fn run() -> sc_cli::Result<()> { ); } - cmd.run::, service::ExecutorDispatch>(config) + cmd.run_with_spec::, service::ExecutorDispatch>(Some(config.chain_spec)) } BenchmarkCmd::Block(cmd) => { let PartialComponents { client, .. } = service::new_partial(&config)?; @@ -210,7 +210,8 @@ pub fn run() -> sc_cli::Result<()> { let runner = cli.create_runner(&cli.run)?; runner.run_node_until_exit(|config| async move { let config = override_default_heap_pages(config, 60_000); - service::new_full(config).map_err(sc_cli::Error::Service) + service::new_full::(config) + .map_err(sc_cli::Error::Service) }) } } diff --git a/node/src/service.rs b/node/src/service.rs index 9a19ae354..afeededeb 100644 --- a/node/src/service.rs +++ b/node/src/service.rs @@ -163,7 +163,11 @@ pub fn new_partial( } // Builds a new service for a full client. -pub fn new_full(config: Configuration) -> Result { +pub fn new_full< + N: sc_network::NetworkBackend::Hash>, +>( + config: Configuration, +) -> Result { let sc_service::PartialComponents { client, backend, @@ -175,8 +179,14 @@ pub fn new_full(config: Configuration) -> Result { other: (block_import, grandpa_link, mut telemetry), } = new_partial(&config)?; - let mut net_config = sc_network::config::FullNetworkConfiguration::new(&config.network); - + let mut net_config = sc_network::config::FullNetworkConfiguration::< + Block, + ::Hash, + N, + >::new(&config.network); + let metrics = N::register_notification_metrics(config.prometheus_registry()); + let peer_store_handle = net_config.peer_store_handle(); + let grandpa_protocol_name = sc_consensus_grandpa::protocol_standard_name( &client .block_hash(0) @@ -187,7 +197,11 @@ pub fn new_full(config: Configuration) -> Result { ); let (grandpa_protocol_config, grandpa_notification_service) = - sc_consensus_grandpa::grandpa_peers_set_config(grandpa_protocol_name.clone()); + sc_consensus_grandpa::grandpa_peers_set_config::<_, N>( + grandpa_protocol_name.clone(), + metrics.clone(), + peer_store_handle, + ); net_config.add_notification_protocol(grandpa_protocol_config); let warp_sync = Arc::new(sc_consensus_grandpa::warp_proof::NetworkProvider::new( @@ -207,6 +221,7 @@ pub fn new_full(config: Configuration) -> Result { block_announce_validator_builder: None, warp_sync_params: Some(WarpSyncParams::WithProvider(warp_sync)), block_relay: None, + metrics, })?; if config.offchain_worker.enabled { @@ -221,7 +236,7 @@ pub fn new_full(config: Configuration) -> Result { transaction_pool: Some(OffchainTransactionPoolFactory::new( transaction_pool.clone(), )), - network_provider: network.clone(), + network_provider: Arc::new(network.clone()), enable_http_requests: true, custom_extensions: |_| vec![], }) diff --git a/runtime/src/lib.rs b/runtime/src/lib.rs index ca8f83911..b9f0c0fcb 100644 --- a/runtime/src/lib.rs +++ b/runtime/src/lib.rs @@ -12,15 +12,17 @@ pub mod check_nonce; mod migrations; use codec::{Decode, Encode, MaxEncodedLen}; -use frame_support::traits::Imbalance; use frame_support::{ dispatch::DispatchResultWithPostInfo, - genesis_builder_helper::{build_config, create_default_config}, + genesis_builder_helper::{build_state, get_preset}, pallet_prelude::Get, - traits::{fungible::HoldConsideration, Contains, LinearStoragePrice, OnUnbalanced}, + traits::{ + fungible::{Imbalance as FungibleImbalance, IncreaseIssuance, DecreaseIssuance, HoldConsideration}, + Contains, LinearStoragePrice, OnUnbalanced + }, }; +use frame_support::traits::Imbalance; use frame_system::{EnsureNever, EnsureRoot, EnsureRootWithSuccess, RawOrigin}; -use pallet_balances::NegativeImbalance; use pallet_commitments::CanCommit; use pallet_grandpa::{ fg_primitives, AuthorityId as GrandpaId, AuthorityList as GrandpaAuthorityList, @@ -37,7 +39,7 @@ use sp_runtime::{ AccountIdLookup, BlakeTwo256, Block as BlockT, IdentifyAccount, NumberFor, One, Verify, }, transaction_validity::{TransactionSource, TransactionValidity}, - ApplyExtrinsicResult, MultiSignature, + ApplyExtrinsicResult, MultiSignature, AccountId32 }; use sp_std::cmp::Ordering; use sp_std::prelude::*; @@ -45,6 +47,7 @@ use sp_std::prelude::*; use sp_version::NativeVersion; use sp_version::RuntimeVersion; + // A few exports that help ease life for downstream crates. pub use frame_support::{ construct_runtime, parameter_types, @@ -64,7 +67,7 @@ pub use frame_support::{ pub use frame_system::Call as SystemCall; pub use pallet_balances::Call as BalancesCall; pub use pallet_timestamp::Call as TimestampCall; -use pallet_transaction_payment::{CurrencyAdapter, Multiplier}; +use pallet_transaction_payment::{FungibleAdapter, Multiplier}; #[cfg(any(feature = "std", test))] pub use sp_runtime::BuildStorage; pub use sp_runtime::{Perbill, Permill}; @@ -394,8 +397,18 @@ parameter_types! { /// Deduct the transaction fee from the Subtensor Pallet TotalIssuance when dropping the transaction /// fee. pub struct TransactionFeeHandler; -impl OnUnbalanced> for TransactionFeeHandler { - fn on_nonzero_unbalanced(credit: NegativeImbalance) { +impl OnUnbalanced< + FungibleImbalance< + u64, + DecreaseIssuance>, + IncreaseIssuance> + > +> for TransactionFeeHandler { + fn on_nonzero_unbalanced(credit: FungibleImbalance< + u64, + DecreaseIssuance>, + IncreaseIssuance> + >) { let ti_before = pallet_subtensor::TotalIssuance::::get(); pallet_subtensor::TotalIssuance::::put(ti_before.saturating_sub(credit.peek())); drop(credit); @@ -406,7 +419,7 @@ impl pallet_transaction_payment::Config for Runtime { type RuntimeEvent = RuntimeEvent; //type TransactionByteFee = TransactionByteFee; - type OnChargeTransaction = CurrencyAdapter; + type OnChargeTransaction = FungibleAdapter; // Convert dispatch weight to a chargeable fee. type WeightToFee = LinearWeightToFee; @@ -1164,13 +1177,17 @@ impl_runtime_apis! { } impl sp_genesis_builder::GenesisBuilder for Runtime { - fn create_default_config() -> Vec { - create_default_config::() - } + fn build_state(config: Vec) -> sp_genesis_builder::Result { + build_state::(config) + } - fn build_config(config: Vec) -> sp_genesis_builder::Result { - build_config::(config) - } + fn get_preset(id: &Option) -> Option> { + get_preset::(id, |_| None) + } + + fn preset_names() -> Vec { + vec![] + } } impl sp_transaction_pool::runtime_api::TaggedTransactionQueue for Runtime { From 4886e965f0acdf266156caef269fedfc773e4d91 Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Wed, 28 Aug 2024 20:07:13 -0400 Subject: [PATCH 02/60] Add EVM pallets, rpc, and precompiles --- Cargo.lock | 970 +++++++++++++++++- Cargo.toml | 32 + node/Cargo.toml | 34 +- node/src/cli.rs | 18 + node/src/command.rs | 167 +-- node/src/ethereum.rs | 348 +++++++ node/src/lib.rs | 2 + node/src/main.rs | 1 + node/src/rpc.rs | 187 ++-- node/src/service.rs | 495 +++++++-- runtime/Cargo.toml | 32 + runtime/src/lib.rs | 507 ++++++++- runtime/src/precompiles/balance_transfer.rs | 60 ++ runtime/src/precompiles/mod.rs | 101 ++ .../precompiles/solidity/balanceTransfer.abi | 15 + .../precompiles/solidity/balanceTransfer.sol | 7 + runtime/src/precompiles/solidity/staking.abi | 33 + runtime/src/precompiles/solidity/staking.sol | 42 + scripts/localnet-evm.sh | 75 ++ 19 files changed, 2882 insertions(+), 244 deletions(-) create mode 100644 node/src/ethereum.rs create mode 100644 runtime/src/precompiles/balance_transfer.rs create mode 100644 runtime/src/precompiles/mod.rs create mode 100644 runtime/src/precompiles/solidity/balanceTransfer.abi create mode 100644 runtime/src/precompiles/solidity/balanceTransfer.sol create mode 100644 runtime/src/precompiles/solidity/staking.abi create mode 100644 runtime/src/precompiles/solidity/staking.sol create mode 100755 scripts/localnet-evm.sh diff --git a/Cargo.lock b/Cargo.lock index d3b46835c..bd3ae5a31 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -576,6 +576,12 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "assert_matches" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b34d609dfbaf33d6889b2b7106d3ca345eacad44200913df5ba02bfd31d2ba9" + [[package]] name = "async-channel" version = "1.9.0" @@ -641,6 +647,26 @@ dependencies = [ "pin-project-lite 0.2.14", ] +[[package]] +name = "atoi" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f28d99ec8bfea296261ca1af174f24225171fea9664ba9003cbebee704810528" +dependencies = [ + "num-traits", +] + +[[package]] +name = "auto_impl" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c87f3f15e7794432337fc718554eaa4dc8f04c9677a950ffe366f20a162ae42" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.71", +] + [[package]] name = "autocfg" version = "1.3.0" @@ -1490,6 +1516,15 @@ dependencies = [ "crossbeam-utils", ] +[[package]] +name = "crossbeam-queue" +version = "0.3.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df0346b5d5e76ac2fe4e327c5fd1118d6be7c51dfb18f9b7922923f287471e35" +dependencies = [ + "crossbeam-utils", +] + [[package]] name = "crossbeam-utils" version = "0.8.20" @@ -1924,6 +1959,12 @@ dependencies = [ "walkdir", ] +[[package]] +name = "dotenvy" +version = "0.15.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1aaf95b3e5c8f23aa320147307562d361db0ae0d51242340f558153b4eb2439b" + [[package]] name = "downcast" version = "0.11.0" @@ -2045,6 +2086,9 @@ name = "either" version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3dca9240753cf90908d7e4aac30f630662b02aebaa1b58a3cadabdb23385b58b" +dependencies = [ + "serde", +] [[package]] name = "elliptic-curve" @@ -2159,11 +2203,31 @@ checksum = "c22d4b5885b6aa2fe5e8b9329fb8d232bf739e434e6b87347c63bdd00c120f60" dependencies = [ "crunchy", "fixed-hash", + "impl-codec", "impl-rlp", "impl-serde", + "scale-info", "tiny-keccak", ] +[[package]] +name = "ethereum" +version = "0.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e04d24d20b8ff2235cffbf242d5092de3aa45f77c5270ddbfadd2778ca13fea" +dependencies = [ + "bytes", + "ethereum-types", + "hash-db", + "hash256-std-hasher", + "parity-scale-codec", + "rlp", + "scale-info", + "serde", + "sha3", + "trie-root", +] + [[package]] name = "ethereum-types" version = "0.14.1" @@ -2172,9 +2236,11 @@ checksum = "02d215cbf040552efcbe99a38372fe80ab9d00268e20012b79fcd0f073edd8ee" dependencies = [ "ethbloom", "fixed-hash", + "impl-codec", "impl-rlp", "impl-serde", "primitive-types", + "scale-info", "uint", ] @@ -2205,6 +2271,64 @@ dependencies = [ "pin-project-lite 0.2.14", ] +[[package]] +name = "evm" +version = "0.41.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "767f43e9630cc36cf8ff2777cbb0121b055f0d1fd6eaaa13b46a1808f0d0e7e9" +dependencies = [ + "auto_impl", + "environmental", + "ethereum", + "evm-core", + "evm-gasometer", + "evm-runtime", + "log", + "parity-scale-codec", + "primitive-types", + "rlp", + "scale-info", + "serde", + "sha3", +] + +[[package]] +name = "evm-core" +version = "0.41.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1da6cedc5cedb4208e59467106db0d1f50db01b920920589f8e672c02fdc04f" +dependencies = [ + "parity-scale-codec", + "primitive-types", + "scale-info", + "serde", +] + +[[package]] +name = "evm-gasometer" +version = "0.41.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1dc0eb591abc5cd7b05bef6a036c2bb6c66ab6c5e0c5ce94bfe377ab670b1fd7" +dependencies = [ + "environmental", + "evm-core", + "evm-runtime", + "primitive-types", +] + +[[package]] +name = "evm-runtime" +version = "0.41.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "84bbe09b64ae13a29514048c1bb6fda6374ac0b4f6a1f15a443348ab88ef42cd" +dependencies = [ + "auto_impl", + "environmental", + "evm-core", + "primitive-types", + "sha3", +] + [[package]] name = "exit-future" version = "0.2.0" @@ -2247,6 +2371,173 @@ version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a" +[[package]] +name = "fc-api" +version = "1.0.0-dev" +source = "git+https://github.com/gztensor/frontier?branch=polkadot-v1.11.0-subtensor#09a2d999d6f7b9f5dca25c0679ccdf745db441c2" +dependencies = [ + "async-trait", + "fp-storage", + "parity-scale-codec", + "sp-core", + "sp-runtime", +] + +[[package]] +name = "fc-consensus" +version = "2.0.0-dev" +source = "git+https://github.com/gztensor/frontier?branch=polkadot-v1.11.0-subtensor#09a2d999d6f7b9f5dca25c0679ccdf745db441c2" +dependencies = [ + "async-trait", + "fp-consensus", + "fp-rpc", + "sc-consensus", + "sp-api", + "sp-block-builder", + "sp-consensus", + "sp-runtime", + "thiserror", +] + +[[package]] +name = "fc-db" +version = "2.0.0-dev" +source = "git+https://github.com/gztensor/frontier?branch=polkadot-v1.11.0-subtensor#09a2d999d6f7b9f5dca25c0679ccdf745db441c2" +dependencies = [ + "async-trait", + "ethereum", + "fc-api", + "fc-storage", + "fp-consensus", + "fp-rpc", + "fp-storage", + "futures", + "kvdb-rocksdb", + "log", + "parity-db", + "parity-scale-codec", + "parking_lot 0.12.3", + "sc-client-api", + "sc-client-db", + "smallvec", + "sp-api", + "sp-blockchain", + "sp-core", + "sp-database", + "sp-runtime", + "sqlx", + "tokio", +] + +[[package]] +name = "fc-mapping-sync" +version = "2.0.0-dev" +source = "git+https://github.com/gztensor/frontier?branch=polkadot-v1.11.0-subtensor#09a2d999d6f7b9f5dca25c0679ccdf745db441c2" +dependencies = [ + "fc-db", + "fc-storage", + "fp-consensus", + "fp-rpc", + "futures", + "futures-timer", + "log", + "parking_lot 0.12.3", + "sc-client-api", + "sc-utils", + "sp-api", + "sp-blockchain", + "sp-consensus", + "sp-core", + "sp-runtime", + "tokio", +] + +[[package]] +name = "fc-rpc" +version = "2.0.0-dev" +source = "git+https://github.com/gztensor/frontier?branch=polkadot-v1.11.0-subtensor#09a2d999d6f7b9f5dca25c0679ccdf745db441c2" +dependencies = [ + "ethereum", + "ethereum-types", + "evm", + "fc-api", + "fc-mapping-sync", + "fc-rpc-core", + "fc-storage", + "fp-evm", + "fp-rpc", + "fp-storage", + "futures", + "hex", + "jsonrpsee", + "libsecp256k1", + "log", + "pallet-evm", + "parity-scale-codec", + "prometheus", + "rand 0.8.5", + "rlp", + "sc-client-api", + "sc-consensus-aura", + "sc-network", + "sc-network-sync", + "sc-rpc", + "sc-service", + "sc-transaction-pool", + "sc-transaction-pool-api", + "sc-utils", + "schnellru", + "serde", + "sp-api", + "sp-block-builder", + "sp-blockchain", + "sp-consensus", + "sp-consensus-aura", + "sp-core", + "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", + "sp-inherents", + "sp-io", + "sp-runtime", + "sp-state-machine", + "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", + "sp-timestamp", + "substrate-prometheus-endpoint", + "thiserror", + "tokio", +] + +[[package]] +name = "fc-rpc-core" +version = "1.1.0-dev" +source = "git+https://github.com/gztensor/frontier?branch=polkadot-v1.11.0-subtensor#09a2d999d6f7b9f5dca25c0679ccdf745db441c2" +dependencies = [ + "ethereum", + "ethereum-types", + "jsonrpsee", + "rlp", + "rustc-hex", + "serde", + "serde_json", + "sp-crypto-hashing", +] + +[[package]] +name = "fc-storage" +version = "1.0.0-dev" +source = "git+https://github.com/gztensor/frontier?branch=polkadot-v1.11.0-subtensor#09a2d999d6f7b9f5dca25c0679ccdf745db441c2" +dependencies = [ + "ethereum", + "ethereum-types", + "fp-rpc", + "fp-storage", + "parity-scale-codec", + "sc-client-api", + "sp-api", + "sp-io", + "sp-runtime", + "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", +] + [[package]] name = "fdlimit" version = "0.3.0" @@ -2372,6 +2663,17 @@ dependencies = [ "num-traits", ] +[[package]] +name = "flume" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55ac459de2512911e4b674ce33cf20befaba382d05b62b008afc1c8b57cbf181" +dependencies = [ + "futures-core", + "futures-sink", + "spin 0.9.8", +] + [[package]] name = "fnv" version = "1.0.7" @@ -2410,6 +2712,109 @@ dependencies = [ "percent-encoding", ] +[[package]] +name = "fp-account" +version = "1.0.0-dev" +source = "git+https://github.com/gztensor/frontier?branch=polkadot-v1.11.0-subtensor#09a2d999d6f7b9f5dca25c0679ccdf745db441c2" +dependencies = [ + "hex", + "impl-serde", + "libsecp256k1", + "log", + "parity-scale-codec", + "scale-info", + "serde", + "sp-core", + "sp-io", + "sp-runtime", + "sp-runtime-interface 24.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", +] + +[[package]] +name = "fp-consensus" +version = "2.0.0-dev" +source = "git+https://github.com/gztensor/frontier?branch=polkadot-v1.11.0-subtensor#09a2d999d6f7b9f5dca25c0679ccdf745db441c2" +dependencies = [ + "ethereum", + "parity-scale-codec", + "sp-core", + "sp-runtime", +] + +[[package]] +name = "fp-dynamic-fee" +version = "1.0.0" +source = "git+https://github.com/gztensor/frontier?branch=polkadot-v1.11.0-subtensor#09a2d999d6f7b9f5dca25c0679ccdf745db441c2" +dependencies = [ + "async-trait", + "sp-core", + "sp-inherents", +] + +[[package]] +name = "fp-ethereum" +version = "1.0.0-dev" +source = "git+https://github.com/gztensor/frontier?branch=polkadot-v1.11.0-subtensor#09a2d999d6f7b9f5dca25c0679ccdf745db441c2" +dependencies = [ + "ethereum", + "ethereum-types", + "fp-evm", + "frame-support", + "parity-scale-codec", +] + +[[package]] +name = "fp-evm" +version = "3.0.0-dev" +source = "git+https://github.com/gztensor/frontier?branch=polkadot-v1.11.0-subtensor#09a2d999d6f7b9f5dca25c0679ccdf745db441c2" +dependencies = [ + "evm", + "frame-support", + "num_enum", + "parity-scale-codec", + "scale-info", + "serde", + "sp-core", + "sp-runtime", +] + +[[package]] +name = "fp-rpc" +version = "3.0.0-dev" +source = "git+https://github.com/gztensor/frontier?branch=polkadot-v1.11.0-subtensor#09a2d999d6f7b9f5dca25c0679ccdf745db441c2" +dependencies = [ + "ethereum", + "ethereum-types", + "fp-evm", + "parity-scale-codec", + "scale-info", + "sp-api", + "sp-core", + "sp-runtime", + "sp-state-machine", +] + +[[package]] +name = "fp-self-contained" +version = "1.0.0-dev" +source = "git+https://github.com/gztensor/frontier?branch=polkadot-v1.11.0-subtensor#09a2d999d6f7b9f5dca25c0679ccdf745db441c2" +dependencies = [ + "frame-support", + "parity-scale-codec", + "scale-info", + "serde", + "sp-runtime", +] + +[[package]] +name = "fp-storage" +version = "2.0.0" +source = "git+https://github.com/gztensor/frontier?branch=polkadot-v1.11.0-subtensor#09a2d999d6f7b9f5dca25c0679ccdf745db441c2" +dependencies = [ + "parity-scale-codec", + "serde", +] + [[package]] name = "fragile" version = "2.0.0" @@ -2743,6 +3148,17 @@ dependencies = [ "num_cpus", ] +[[package]] +name = "futures-intrusive" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d930c203dd0b6ff06e0201a4a2fe9149b43c684fd4420555b26d21b1a02956f" +dependencies = [ + "futures-core", + "lock_api", + "parking_lot 0.12.3", +] + [[package]] name = "futures-io" version = "0.3.30" @@ -3052,6 +3468,9 @@ name = "heck" version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" +dependencies = [ + "unicode-segmentation", +] [[package]] name = "heck" @@ -4170,6 +4589,17 @@ dependencies = [ "libsecp256k1-core", ] +[[package]] +name = "libsqlite3-sys" +version = "0.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf4e226dcd58b4be396f7bd3c20da8fdee2911400705297ba7d2d7cc2c30f716" +dependencies = [ + "cc", + "pkg-config", + "vcpkg", +] + [[package]] name = "libz-sys" version = "1.1.18" @@ -4760,6 +5190,23 @@ dependencies = [ "rand 0.8.5", ] +[[package]] +name = "native-tls" +version = "0.2.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8614eb2c83d59d1c8cc974dd3f920198647674a0a035e1af1fa58707e317466" +dependencies = [ + "libc", + "log", + "openssl", + "openssl-probe", + "openssl-sys", + "schannel", + "security-framework", + "security-framework-sys", + "tempfile", +] + [[package]] name = "ndarray" version = "0.15.6" @@ -4872,7 +5319,17 @@ checksum = "b93853da6d84c2e3c7d730d6473e8817692dd89be387eb01b94d7f108ecb5b8c" name = "node-subtensor" version = "4.0.0-dev" dependencies = [ + "async-trait", "clap", + "fc-api", + "fc-consensus", + "fc-db", + "fc-mapping-sync", + "fc-rpc", + "fc-rpc-core", + "fc-storage", + "fp-dynamic-fee", + "fp-rpc", "frame-benchmarking", "frame-benchmarking-cli", "frame-metadata-hash-extension", @@ -4893,10 +5350,12 @@ dependencies = [ "sc-consensus-aura", "sc-consensus-grandpa", "sc-consensus-grandpa-rpc", + "sc-consensus-manual-seal", "sc-consensus-slots", "sc-executor", "sc-keystore", "sc-network", + "sc-network-sync", "sc-offchain", "sc-rpc", "sc-rpc-api", @@ -4920,6 +5379,7 @@ dependencies = [ "sp-timestamp", "substrate-build-script-utils", "substrate-frame-rpc-system", + "substrate-prometheus-endpoint", "subtensor-custom-rpc", "subtensor-custom-rpc-runtime-api", ] @@ -4928,6 +5388,10 @@ dependencies = [ name = "node-subtensor-runtime" version = "4.0.0-dev" dependencies = [ + "fp-account", + "fp-evm", + "fp-rpc", + "fp-self-contained", "frame-benchmarking", "frame-executive", "frame-metadata", @@ -4941,9 +5405,18 @@ dependencies = [ "pallet-admin-utils", "pallet-aura", "pallet-balances", + "pallet-base-fee", "pallet-collective", "pallet-commitments", + "pallet-dynamic-fee", + "pallet-ethereum", + "pallet-evm", + "pallet-evm-chain-id", + "pallet-evm-precompile-modexp", + "pallet-evm-precompile-sha3fips", + "pallet-evm-precompile-simple", "pallet-grandpa", + "pallet-hotfix-sufficients", "pallet-insecure-randomness-collective-flip", "pallet-membership", "pallet-multisig", @@ -5020,6 +5493,20 @@ dependencies = [ "winapi", ] +[[package]] +name = "num" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23" +dependencies = [ + "num-bigint", + "num-complex", + "num-integer", + "num-iter", + "num-rational", + "num-traits", +] + [[package]] name = "num-bigint" version = "0.4.5" @@ -5064,12 +5551,24 @@ dependencies = [ "num-traits", ] +[[package]] +name = "num-iter" +version = "0.1.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf" +dependencies = [ + "autocfg", + "num-integer", + "num-traits", +] + [[package]] name = "num-rational" version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824" dependencies = [ + "num-bigint", "num-integer", "num-traits", ] @@ -5094,6 +5593,27 @@ dependencies = [ "libc", ] +[[package]] +name = "num_enum" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e613fc340b2220f734a8595782c551f1250e969d87d3be1ae0579e8d4065179" +dependencies = [ + "num_enum_derive", +] + +[[package]] +name = "num_enum_derive" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" +dependencies = [ + "proc-macro-crate 3.1.0", + "proc-macro2", + "quote", + "syn 2.0.71", +] + [[package]] name = "object" version = "0.30.4" @@ -5285,42 +5805,157 @@ dependencies = [ "parity-scale-codec", "scale-info", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", +] + +[[package]] +name = "pallet-base-fee" +version = "1.0.0" +source = "git+https://github.com/gztensor/frontier?branch=polkadot-v1.11.0-subtensor#09a2d999d6f7b9f5dca25c0679ccdf745db441c2" +dependencies = [ + "fp-evm", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-runtime", +] + +[[package]] +name = "pallet-collective" +version = "4.0.0-dev" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", + "subtensor-macros", +] + +[[package]] +name = "pallet-commitments" +version = "4.0.0-dev" +dependencies = [ + "enumflags2", + "frame-benchmarking", + "frame-support", + "frame-system", + "pallet-balances", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", + "subtensor-macros", +] + +[[package]] +name = "pallet-dynamic-fee" +version = "4.0.0-dev" +source = "git+https://github.com/gztensor/frontier?branch=polkadot-v1.11.0-subtensor#09a2d999d6f7b9f5dca25c0679ccdf745db441c2" +dependencies = [ + "fp-dynamic-fee", + "fp-evm", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-inherents", +] + +[[package]] +name = "pallet-ethereum" +version = "4.0.0-dev" +source = "git+https://github.com/gztensor/frontier?branch=polkadot-v1.11.0-subtensor#09a2d999d6f7b9f5dca25c0679ccdf745db441c2" +dependencies = [ + "ethereum", + "ethereum-types", + "evm", + "fp-consensus", + "fp-ethereum", + "fp-evm", + "fp-rpc", + "fp-storage", + "frame-support", + "frame-system", + "pallet-evm", + "parity-scale-codec", + "scale-info", + "sp-io", + "sp-runtime", ] [[package]] -name = "pallet-collective" -version = "4.0.0-dev" +name = "pallet-evm" +version = "6.0.0-dev" +source = "git+https://github.com/gztensor/frontier?branch=polkadot-v1.11.0-subtensor#09a2d999d6f7b9f5dca25c0679ccdf745db441c2" dependencies = [ + "environmental", + "evm", + "fp-account", + "fp-evm", "frame-benchmarking", "frame-support", "frame-system", + "hash-db", + "hex", + "hex-literal", + "impl-trait-for-tuples", "log", "parity-scale-codec", + "rlp", "scale-info", "sp-core", "sp-io", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", - "subtensor-macros", ] [[package]] -name = "pallet-commitments" -version = "4.0.0-dev" +name = "pallet-evm-chain-id" +version = "1.0.0-dev" +source = "git+https://github.com/gztensor/frontier?branch=polkadot-v1.11.0-subtensor#09a2d999d6f7b9f5dca25c0679ccdf745db441c2" dependencies = [ - "enumflags2", - "frame-benchmarking", "frame-support", "frame-system", - "pallet-balances", "parity-scale-codec", "scale-info", - "sp-core", +] + +[[package]] +name = "pallet-evm-precompile-modexp" +version = "2.0.0-dev" +source = "git+https://github.com/gztensor/frontier?branch=polkadot-v1.11.0-subtensor#09a2d999d6f7b9f5dca25c0679ccdf745db441c2" +dependencies = [ + "fp-evm", + "num", +] + +[[package]] +name = "pallet-evm-precompile-sha3fips" +version = "2.0.0-dev" +source = "git+https://github.com/gztensor/frontier?branch=polkadot-v1.11.0-subtensor#09a2d999d6f7b9f5dca25c0679ccdf745db441c2" +dependencies = [ + "fp-evm", + "tiny-keccak", +] + +[[package]] +name = "pallet-evm-precompile-simple" +version = "2.0.0-dev" +source = "git+https://github.com/gztensor/frontier?branch=polkadot-v1.11.0-subtensor#09a2d999d6f7b9f5dca25c0679ccdf745db441c2" +dependencies = [ + "fp-evm", + "ripemd", "sp-io", - "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", - "subtensor-macros", ] [[package]] @@ -5346,6 +5981,21 @@ dependencies = [ "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0)", ] +[[package]] +name = "pallet-hotfix-sufficients" +version = "1.0.0" +source = "git+https://github.com/gztensor/frontier?branch=polkadot-v1.11.0-subtensor#09a2d999d6f7b9f5dca25c0679ccdf745db441c2" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "pallet-evm", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-runtime", +] + [[package]] name = "pallet-insecure-randomness-collective-flip" version = "16.0.0" @@ -6802,6 +7452,15 @@ dependencies = [ "windows-sys 0.52.0", ] +[[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 = "rlp" version = "0.5.2" @@ -6809,9 +7468,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bb919243f34364b6bd2fc10ef797edbfa75f33c252e7998527479c6d6b47e1ec" dependencies = [ "bytes", + "rlp-derive", "rustc-hex", ] +[[package]] +name = "rlp-derive" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e33d7b2abe0c340d8797fe2907d3f20d3b5ea5908683618bfe80df7f621f672a" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "rocksdb" version = "0.21.0" @@ -7275,6 +7946,55 @@ dependencies = [ "thiserror", ] +[[package]] +name = "sc-consensus-babe" +version = "0.34.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" +dependencies = [ + "async-trait", + "fork-tree", + "futures", + "log", + "num-bigint", + "num-rational", + "num-traits", + "parity-scale-codec", + "parking_lot 0.12.3", + "sc-client-api", + "sc-consensus", + "sc-consensus-epochs", + "sc-consensus-slots", + "sc-telemetry", + "sc-transaction-pool-api", + "sp-api", + "sp-application-crypto", + "sp-block-builder", + "sp-blockchain", + "sp-consensus", + "sp-consensus-babe", + "sp-consensus-slots", + "sp-core", + "sp-crypto-hashing", + "sp-inherents", + "sp-keystore", + "sp-runtime", + "substrate-prometheus-endpoint", + "thiserror", +] + +[[package]] +name = "sc-consensus-epochs" +version = "0.33.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" +dependencies = [ + "fork-tree", + "parity-scale-codec", + "sc-client-api", + "sc-consensus", + "sp-blockchain", + "sp-runtime", +] + [[package]] name = "sc-consensus-grandpa" version = "0.19.0" @@ -7339,6 +8059,41 @@ dependencies = [ "thiserror", ] +[[package]] +name = "sc-consensus-manual-seal" +version = "0.35.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" +dependencies = [ + "assert_matches", + "async-trait", + "futures", + "futures-timer", + "jsonrpsee", + "log", + "parity-scale-codec", + "sc-client-api", + "sc-consensus", + "sc-consensus-aura", + "sc-consensus-babe", + "sc-consensus-epochs", + "sc-transaction-pool", + "sc-transaction-pool-api", + "serde", + "sp-api", + "sp-blockchain", + "sp-consensus", + "sp-consensus-aura", + "sp-consensus-babe", + "sp-consensus-slots", + "sp-core", + "sp-inherents", + "sp-keystore", + "sp-runtime", + "sp-timestamp", + "substrate-prometheus-endpoint", + "thiserror", +] + [[package]] name = "sc-consensus-slots" version = "0.33.0" @@ -8260,9 +9015,9 @@ checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" [[package]] name = "serde" -version = "1.0.204" +version = "1.0.209" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc76f558e0cbb2a839d37354c575f1dc3fdc6546b5be373ba43d95f231bf7c12" +checksum = "99fce0ffe7310761ca6bf9faf5115afbc19688edd00171d81b1bb1b116c63e09" dependencies = [ "serde_derive", ] @@ -8287,9 +9042,9 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.204" +version = "1.0.209" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0cd7e117be63d3c3678776753929474f3b04a43a080c744d6b0ae2a8c28e222" +checksum = "a5831b979fd7b5439637af1752d535ff49f4860c0f341d1baeb6faf0f4242170" dependencies = [ "proc-macro2", "quote", @@ -8729,6 +9484,24 @@ dependencies = [ "sp-timestamp", ] +[[package]] +name = "sp-consensus-babe" +version = "0.32.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polkadot-v1.11.0#8c8edacf8942298c3807a2e192860da9e7e4996a" +dependencies = [ + "async-trait", + "parity-scale-codec", + "scale-info", + "serde", + "sp-api", + "sp-application-crypto", + "sp-consensus-slots", + "sp-core", + "sp-inherents", + "sp-runtime", + "sp-timestamp", +] + [[package]] name = "sp-consensus-grandpa" version = "13.0.0" @@ -8807,7 +9580,7 @@ dependencies = [ [[package]] name = "sp-crypto-ec-utils" version = "0.10.0" -source = "git+https://github.com/paritytech/polkadot-sdk#6a5b6e03bfc8d0c6f5f05f3180313902c15aee84" +source = "git+https://github.com/paritytech/polkadot-sdk#56201964f9184004ca17992a3b4778de855b1a35" dependencies = [ "ark-bls12-377", "ark-bls12-377-ext", @@ -8869,7 +9642,7 @@ dependencies = [ [[package]] name = "sp-debug-derive" version = "14.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk#6a5b6e03bfc8d0c6f5f05f3180313902c15aee84" +source = "git+https://github.com/paritytech/polkadot-sdk#56201964f9184004ca17992a3b4778de855b1a35" dependencies = [ "proc-macro2", "quote", @@ -8889,7 +9662,7 @@ dependencies = [ [[package]] name = "sp-externalities" version = "0.25.0" -source = "git+https://github.com/paritytech/polkadot-sdk#6a5b6e03bfc8d0c6f5f05f3180313902c15aee84" +source = "git+https://github.com/paritytech/polkadot-sdk#56201964f9184004ca17992a3b4778de855b1a35" dependencies = [ "environmental", "parity-scale-codec", @@ -9074,7 +9847,7 @@ dependencies = [ [[package]] name = "sp-runtime-interface" version = "24.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk#6a5b6e03bfc8d0c6f5f05f3180313902c15aee84" +source = "git+https://github.com/paritytech/polkadot-sdk#56201964f9184004ca17992a3b4778de855b1a35" dependencies = [ "bytes", "impl-trait-for-tuples", @@ -9106,7 +9879,7 @@ dependencies = [ [[package]] name = "sp-runtime-interface-proc-macro" version = "17.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk#6a5b6e03bfc8d0c6f5f05f3180313902c15aee84" +source = "git+https://github.com/paritytech/polkadot-sdk#56201964f9184004ca17992a3b4778de855b1a35" dependencies = [ "Inflector", "expander", @@ -9195,7 +9968,7 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?branch=release-polk [[package]] name = "sp-std" version = "14.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk#6a5b6e03bfc8d0c6f5f05f3180313902c15aee84" +source = "git+https://github.com/paritytech/polkadot-sdk#56201964f9184004ca17992a3b4778de855b1a35" [[package]] name = "sp-storage" @@ -9212,7 +9985,7 @@ dependencies = [ [[package]] name = "sp-storage" version = "19.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk#6a5b6e03bfc8d0c6f5f05f3180313902c15aee84" +source = "git+https://github.com/paritytech/polkadot-sdk#56201964f9184004ca17992a3b4778de855b1a35" dependencies = [ "impl-serde", "parity-scale-codec", @@ -9247,7 +10020,7 @@ dependencies = [ [[package]] name = "sp-tracing" version = "16.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk#6a5b6e03bfc8d0c6f5f05f3180313902c15aee84" +source = "git+https://github.com/paritytech/polkadot-sdk#56201964f9184004ca17992a3b4778de855b1a35" dependencies = [ "parity-scale-codec", "tracing", @@ -9344,8 +10117,9 @@ dependencies = [ [[package]] name = "sp-wasm-interface" version = "20.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk#6a5b6e03bfc8d0c6f5f05f3180313902c15aee84" +source = "git+https://github.com/paritytech/polkadot-sdk#56201964f9184004ca17992a3b4778de855b1a35" dependencies = [ + "anyhow", "impl-trait-for-tuples", "log", "parity-scale-codec", @@ -9376,6 +10150,9 @@ name = "spin" version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" +dependencies = [ + "lock_api", +] [[package]] name = "spinning_top" @@ -9396,6 +10173,126 @@ dependencies = [ "der", ] +[[package]] +name = "sqlformat" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f895e3734318cc55f1fe66258926c9b910c124d47520339efecbb6c59cec7c1f" +dependencies = [ + "nom", + "unicode_categories", +] + +[[package]] +name = "sqlx" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9a2ccff1a000a5a59cd33da541d9f2fdcd9e6e8229cc200565942bff36d0aaa" +dependencies = [ + "sqlx-core", + "sqlx-macros", + "sqlx-sqlite", +] + +[[package]] +name = "sqlx-core" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24ba59a9342a3d9bab6c56c118be528b27c9b60e490080e9711a04dccac83ef6" +dependencies = [ + "ahash 0.8.11", + "atoi", + "byteorder", + "bytes", + "crc", + "crossbeam-queue", + "either", + "event-listener 2.5.3", + "futures-channel", + "futures-core", + "futures-intrusive", + "futures-io", + "futures-util", + "hashlink", + "hex", + "indexmap 2.2.6", + "log", + "memchr", + "native-tls", + "once_cell", + "paste", + "percent-encoding", + "serde", + "sha2 0.10.8", + "smallvec", + "sqlformat", + "thiserror", + "tokio", + "tokio-stream", + "tracing", + "url", +] + +[[package]] +name = "sqlx-macros" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ea40e2345eb2faa9e1e5e326db8c34711317d2b5e08d0d5741619048a803127" +dependencies = [ + "proc-macro2", + "quote", + "sqlx-core", + "sqlx-macros-core", + "syn 1.0.109", +] + +[[package]] +name = "sqlx-macros-core" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5833ef53aaa16d860e92123292f1f6a3d53c34ba8b1969f152ef1a7bb803f3c8" +dependencies = [ + "dotenvy", + "either", + "heck 0.4.1", + "hex", + "once_cell", + "proc-macro2", + "quote", + "serde", + "serde_json", + "sha2 0.10.8", + "sqlx-core", + "sqlx-sqlite", + "syn 1.0.109", + "tempfile", + "tokio", + "url", +] + +[[package]] +name = "sqlx-sqlite" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b244ef0a8414da0bed4bb1910426e890b19e5e9bccc27ada6b797d05c55ae0aa" +dependencies = [ + "atoi", + "flume", + "futures-channel", + "futures-core", + "futures-executor", + "futures-intrusive", + "futures-util", + "libsqlite3-sys", + "log", + "percent-encoding", + "serde", + "sqlx-core", + "tracing", + "url", + "urlencoding", +] + [[package]] name = "ss58-registry" version = "1.47.0" @@ -10158,6 +11055,7 @@ dependencies = [ "sharded-slab", "smallvec", "thread_local", + "time", "tracing", "tracing-core", "tracing-log 0.2.0", @@ -10374,6 +11272,12 @@ dependencies = [ "tinyvec", ] +[[package]] +name = "unicode-segmentation" +version = "1.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202" + [[package]] name = "unicode-width" version = "0.1.13" @@ -10386,6 +11290,12 @@ version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" +[[package]] +name = "unicode_categories" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39ec24b3121d976906ece63c9daad25b85969647682eee313cb5779fdd69e14e" + [[package]] name = "universal-hash" version = "0.5.1" @@ -10432,6 +11342,12 @@ dependencies = [ "percent-encoding", ] +[[package]] +name = "urlencoding" +version = "2.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da" + [[package]] name = "utf-8" version = "0.7.6" diff --git a/Cargo.toml b/Cargo.toml index 6e6c400e3..0d525f966 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -43,6 +43,7 @@ type_complexity = "allow" unwrap-used = "deny" [workspace.dependencies] +async-trait = "0.1" cargo-husky = { version = "1", default-features = false } clap = "4.5.4" codec = { version = "3.2.2", default-features = false } @@ -152,6 +153,37 @@ substrate-build-script-utils = { git = "https://github.com/paritytech/polkadot-s substrate-fixed = { git = "https://github.com/opentensor/substrate-fixed.git", tag = "v0.5.9" } substrate-frame-rpc-system = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } substrate-wasm-builder = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0" } + +sc-consensus-manual-seal = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +sc-network-sync = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } +substrate-prometheus-endpoint = { git = "https://github.com/paritytech/polkadot-sdk.git", branch = "release-polkadot-v1.11.0", default-features = false } + +# Frontier +fp-evm = { git = "https://github.com/gztensor/frontier", branch = "polkadot-v1.11.0-subtensor", default-features = false } +fp-rpc = { git = "https://github.com/gztensor/frontier", branch = "polkadot-v1.11.0-subtensor", default-features = false } +fp-self-contained = { git = "https://github.com/gztensor/frontier", branch = "polkadot-v1.11.0-subtensor", default-features = false, features = [ + "serde", +] } +fp-account = { git = "https://github.com/gztensor/frontier", branch = "polkadot-v1.11.0-subtensor", default-features = false } +fc-storage = { git = "https://github.com/gztensor/frontier", branch = "polkadot-v1.11.0-subtensor", default-features = false } +fc-db = { git = "https://github.com/gztensor/frontier", branch = "polkadot-v1.11.0-subtensor", default-features = false } +fc-consensus = { git = "https://github.com/gztensor/frontier", branch = "polkadot-v1.11.0-subtensor", default-features = false } +fp-dynamic-fee = { git = "https://github.com/gztensor/frontier", branch = "polkadot-v1.11.0-subtensor", default-features = false } +fc-api = { git = "https://github.com/gztensor/frontier", branch = "polkadot-v1.11.0-subtensor", default-features = false } +fc-rpc = { git = "https://github.com/gztensor/frontier", branch = "polkadot-v1.11.0-subtensor", default-features = false } +fc-rpc-core = { git = "https://github.com/gztensor/frontier", branch = "polkadot-v1.11.0-subtensor", default-features = false } +fc-mapping-sync = { git = "https://github.com/gztensor/frontier", branch = "polkadot-v1.11.0-subtensor", default-features = false } + +# Frontier FRAME +pallet-base-fee = { git = "https://github.com/gztensor/frontier", branch = "polkadot-v1.11.0-subtensor", default-features = false } +pallet-dynamic-fee = { git = "https://github.com/gztensor/frontier", branch = "polkadot-v1.11.0-subtensor", default-features = false } +pallet-ethereum = { git = "https://github.com/gztensor/frontier", branch = "polkadot-v1.11.0-subtensor", default-features = false } +pallet-evm = { git = "https://github.com/gztensor/frontier", branch = "polkadot-v1.11.0-subtensor", default-features = false } +pallet-evm-chain-id = { git = "https://github.com/gztensor/frontier", branch = "polkadot-v1.11.0-subtensor", default-features = false } +pallet-evm-precompile-modexp = { git = "https://github.com/gztensor/frontier", branch = "polkadot-v1.11.0-subtensor", default-features = false } +pallet-evm-precompile-sha3fips = { git = "https://github.com/gztensor/frontier", branch = "polkadot-v1.11.0-subtensor", default-features = false } +pallet-evm-precompile-simple = { git = "https://github.com/gztensor/frontier", branch = "polkadot-v1.11.0-subtensor", default-features = false } +pallet-hotfix-sufficients = { git = "https://github.com/gztensor/frontier", branch = "polkadot-v1.11.0-subtensor", default-features = false } frame-metadata = "16" [profile.release] diff --git a/node/Cargo.toml b/node/Cargo.toml index 3c5c91b92..efccee28a 100644 --- a/node/Cargo.toml +++ b/node/Cargo.toml @@ -20,6 +20,7 @@ targets = ["x86_64-unknown-linux-gnu"] name = "node-subtensor" [dependencies] +async-trait = { workspace = true } clap = { workspace = true, features = ["derive"] } futures = { workspace = true, features = ["thread-pool"] } serde = { workspace = true, features = ["derive"] } @@ -74,6 +75,22 @@ pallet-transaction-payment-rpc = { workspace = true } frame-benchmarking = { workspace = true } frame-benchmarking-cli = { workspace = true } +# Needed for Frontier +sc-consensus-manual-seal = { workspace = true } +sc-network-sync = { workspace = true } +substrate-prometheus-endpoint = { workspace = true } + +# Frontier +fc-storage = { workspace = true } +fc-db = { workspace = true } +fc-consensus = { workspace = true } +fp-dynamic-fee = { workspace = true } +fc-api = { workspace = true } +fc-rpc = { workspace = true } +fc-rpc-core = { workspace = true } +fp-rpc = { workspace = true } +fc-mapping-sync = { workspace = true } + # Local Dependencies node-subtensor-runtime = { path = "../runtime" } subtensor-custom-rpc = { path = "../pallets/subtensor/rpc" } @@ -83,7 +100,22 @@ subtensor-custom-rpc-runtime-api = { path = "../pallets/subtensor/runtime-api" } substrate-build-script-utils = { workspace = true } [features] -default = [] +default = [ + "rocksdb", + "sql", + "txpool", +] +sql = [ + "fc-db/sql", + "fc-mapping-sync/sql", +] +rocksdb = [ + "sc-service/rocksdb", + "fc-db/rocksdb", + "fc-mapping-sync/rocksdb", +] +txpool = ["fc-rpc/txpool"] + # Dependencies that are only required if runtime benchmarking should be build. runtime-benchmarks = [ "node-subtensor-runtime/runtime-benchmarks", diff --git a/node/src/cli.rs b/node/src/cli.rs index 2c9c4c9fd..3e81fdd07 100644 --- a/node/src/cli.rs +++ b/node/src/cli.rs @@ -1,4 +1,5 @@ use sc_cli::RunCmd; +use crate::ethereum::EthConfiguration; #[derive(Debug, clap::Parser)] pub struct Cli { @@ -7,6 +8,13 @@ pub struct Cli { #[clap(flatten)] pub run: RunCmd, + + /// Choose sealing method. + #[arg(long, value_enum, ignore_case = true)] + pub sealing: Option, + + #[command(flatten)] + pub eth: EthConfiguration, } #[allow(clippy::large_enum_variant)] @@ -45,3 +53,13 @@ pub enum Subcommand { // Db meta columns information. ChainInfo(sc_cli::ChainInfoCmd), } + +/// Available Sealing methods. +#[derive(Copy, Clone, Debug, Default, clap::ValueEnum)] +pub enum Sealing { + /// Seal using rpc method. + #[default] + Manual, + /// Seal when transaction is executed. + Instant, +} diff --git a/node/src/command.rs b/node/src/command.rs index 5e591d8b1..f83997480 100644 --- a/node/src/command.rs +++ b/node/src/command.rs @@ -1,8 +1,9 @@ use crate::{ chain_spec, cli::{Cli, Subcommand}, - service, + ethereum::db_config_dir, service }; +use fc_db::{kv::frontier_database_dir, DatabaseSource}; #[cfg(feature = "runtime-benchmarks")] pub use crate::benchmarking::{inherent_benchmark_data, RemarkBuilder, TransferKeepAliveBuilder}; @@ -17,7 +18,8 @@ use sp_runtime::traits::HashingFor; use node_subtensor_runtime::Block; use sc_cli::SubstrateCli; -use sc_service::{Configuration, PartialComponents}; +use sc_service::Configuration; +use futures::TryFutureExt; impl SubstrateCli for Cli { fn impl_name() -> String { @@ -66,72 +68,97 @@ pub fn run() -> sc_cli::Result<()> { let runner = cli.create_runner(cmd)?; runner.sync_run(|config| cmd.run(config.chain_spec, config.network)) } - Some(Subcommand::CheckBlock(cmd)) => { - let runner = cli.create_runner(cmd)?; - runner.async_run(|config| { - let PartialComponents { - client, - task_manager, - import_queue, - .. - } = service::new_partial(&config)?; - Ok((cmd.run(client, import_queue), task_manager)) - }) - } - Some(Subcommand::ExportBlocks(cmd)) => { - let runner = cli.create_runner(cmd)?; - runner.async_run(|config| { - let PartialComponents { - client, - task_manager, - .. - } = service::new_partial(&config)?; - Ok((cmd.run(client, config.database), task_manager)) - }) - } - Some(Subcommand::ExportState(cmd)) => { - let runner = cli.create_runner(cmd)?; - runner.async_run(|config| { - let PartialComponents { - client, - task_manager, - .. - } = service::new_partial(&config)?; - Ok((cmd.run(client, config.chain_spec), task_manager)) - }) - } - Some(Subcommand::ImportBlocks(cmd)) => { - let runner = cli.create_runner(cmd)?; - runner.async_run(|config| { - let PartialComponents { - client, - task_manager, - import_queue, - .. - } = service::new_partial(&config)?; - Ok((cmd.run(client, import_queue), task_manager)) - }) - } + Some(Subcommand::CheckBlock(cmd)) => { + let runner = cli.create_runner(cmd)?; + runner.async_run(|mut config| { + let (client, _, import_queue, task_manager, _) = + service::new_chain_ops(&mut config, &cli.eth)?; + Ok((cmd.run(client, import_queue), task_manager)) + }) + } + Some(Subcommand::ExportBlocks(cmd)) => { + let runner = cli.create_runner(cmd)?; + runner.async_run(|mut config| { + let (client, _, _, task_manager, _) = + service::new_chain_ops(&mut config, &cli.eth)?; + Ok((cmd.run(client, config.database), task_manager)) + }) + } + Some(Subcommand::ExportState(cmd)) => { + let runner = cli.create_runner(cmd)?; + runner.async_run(|mut config| { + let (client, _, _, task_manager, _) = + service::new_chain_ops(&mut config, &cli.eth)?; + Ok((cmd.run(client, config.chain_spec), task_manager)) + }) + } + Some(Subcommand::ImportBlocks(cmd)) => { + let runner = cli.create_runner(cmd)?; + runner.async_run(|mut config| { + let (client, _, import_queue, task_manager, _) = + service::new_chain_ops(&mut config, &cli.eth)?; + Ok((cmd.run(client, import_queue), task_manager)) + }) + } Some(Subcommand::PurgeChain(cmd)) => { - let runner = cli.create_runner(cmd)?; - runner.sync_run(|config| cmd.run(config.database)) - } - Some(Subcommand::Revert(cmd)) => { - let runner = cli.create_runner(cmd)?; - runner.async_run(|config| { - let PartialComponents { - client, - task_manager, - backend, - .. - } = service::new_partial(&config)?; - let aux_revert = Box::new(|client, _, blocks| { - sc_consensus_grandpa::revert(client, blocks)?; - Ok(()) - }); - Ok((cmd.run(client, backend, Some(aux_revert)), task_manager)) - }) + let runner = cli.create_runner(cmd)?; + runner.sync_run(|config| { + // Remove Frontier offchain db + let db_config_dir = db_config_dir(&config); + match cli.eth.frontier_backend_type { + crate::ethereum::BackendType::KeyValue => { + let frontier_database_config = match config.database { + DatabaseSource::RocksDb { .. } => DatabaseSource::RocksDb { + path: frontier_database_dir(&db_config_dir, "db"), + cache_size: 0, + }, + DatabaseSource::ParityDb { .. } => DatabaseSource::ParityDb { + path: frontier_database_dir(&db_config_dir, "paritydb"), + }, + _ => { + return Err(format!( + "Cannot purge `{:?}` database", + config.database + ) + .into()) + } + }; + cmd.run(frontier_database_config)?; + } + crate::ethereum::BackendType::Sql => { + let db_path = db_config_dir.join("sql"); + match std::fs::remove_dir_all(&db_path) { + Ok(_) => { + println!("{:?} removed.", &db_path); + } + Err(ref err) if err.kind() == std::io::ErrorKind::NotFound => { + eprintln!("{:?} did not exist.", &db_path); + } + Err(err) => { + return Err(format!( + "Cannot purge `{:?}` database: {:?}", + db_path, err, + ) + .into()) + } + }; + } + }; + cmd.run(config.database) + }) } + Some(Subcommand::Revert(cmd)) => { + let runner = cli.create_runner(cmd)?; + runner.async_run(|mut config| { + let (client, backend, _, task_manager, _) = + service::new_chain_ops(&mut config, &cli.eth)?; + let aux_revert = Box::new(move |client, _, blocks| { + sc_consensus_grandpa::revert(client, blocks)?; + Ok(()) + }); + Ok((cmd.run(client, backend, Some(aux_revert)), task_manager)) + }) + } #[cfg(feature = "runtime-benchmarks")] Some(Subcommand::Benchmark(cmd)) => { let runner = cli.create_runner(cmd)?; @@ -210,8 +237,12 @@ pub fn run() -> sc_cli::Result<()> { let runner = cli.create_runner(&cli.run)?; runner.run_node_until_exit(|config| async move { let config = override_default_heap_pages(config, 60_000); - service::new_full::(config) - .map_err(sc_cli::Error::Service) + service::new_full::( + config, + cli.eth, + cli.sealing + ).map_err(Into::into) + .await }) } } diff --git a/node/src/ethereum.rs b/node/src/ethereum.rs new file mode 100644 index 000000000..163c68ff1 --- /dev/null +++ b/node/src/ethereum.rs @@ -0,0 +1,348 @@ +use std::{collections::BTreeMap, sync::{Arc, Mutex}}; +use std::path::PathBuf; +use std::time::Duration; +use jsonrpsee::RpcModule; +use sc_network_sync::SyncingService; +use sc_rpc::SubscriptionTaskExecutor; +use sc_service::{error::Error as ServiceError, Configuration, TaskManager}; +use futures::future; +pub use fc_rpc::{EthTask, EthConfig}; +use sc_client_api::{ + backend::{Backend, StorageProvider}, + client::BlockchainEvents, + AuxStore, UsageProvider, +}; +use futures::StreamExt; +use sp_consensus_aura::AuraApi; +use sp_core::H256; +use crate::rpc::EthDeps; +use sp_runtime::traits::Block as BlockT; +use sp_api::{CallApiAt, ProvideRuntimeApi}; +use sp_consensus_aura::sr25519::AuthorityId as AuraId; +use sp_block_builder::BlockBuilder as BlockBuilderApi; +use fp_rpc::{ConvertTransaction, ConvertTransactionRuntimeApi, EthereumRuntimeRPCApi}; +use sp_blockchain::{Error as BlockChainError, HeaderBackend, HeaderMetadata}; +use sc_transaction_pool::ChainApi; +use sc_transaction_pool_api::TransactionPool; +use sp_inherents::CreateInherentDataProviders; + +/// Frontier DB backend type. +pub use fc_storage::{StorageOverride, StorageOverrideHandler}; +pub use fc_consensus::FrontierBlockImport; +pub use fc_rpc_core::types::{FeeHistoryCache, FeeHistoryCacheLimit, FilterPool}; + +use node_subtensor_runtime::opaque::Block; + +use crate::service::{FullBackend, FullClient}; + +pub type FrontierBackend = fc_db::Backend; + +/// Avalailable frontier backend types. +#[derive(Debug, Copy, Clone, Default, clap::ValueEnum)] +pub enum BackendType { + /// Either RocksDb or ParityDb as per inherited from the global backend settings. + #[default] + KeyValue, + /// Sql database with custom log indexing. + Sql, +} + +/// The ethereum-compatibility configuration used to run a node. +#[derive(Clone, Debug, clap::Parser)] +pub struct EthConfiguration { + /// Maximum number of logs in a query. + #[arg(long, default_value = "10000")] + pub max_past_logs: u32, + + /// Maximum fee history cache size. + #[arg(long, default_value = "2048")] + pub fee_history_limit: u64, + + #[arg(long)] + pub enable_dev_signer: bool, + + /// The dynamic-fee pallet target gas price set by block author + #[arg(long, default_value = "1")] + pub target_gas_price: u64, + + /// Maximum allowed gas limit will be `block.gas_limit * execute_gas_limit_multiplier` + /// when using eth_call/eth_estimateGas. + #[arg(long, default_value = "10")] + pub execute_gas_limit_multiplier: u64, + + /// Size in bytes of the LRU cache for block data. + #[arg(long, default_value = "50")] + pub eth_log_block_cache: usize, + + /// Size in bytes of the LRU cache for transactions statuses data. + #[arg(long, default_value = "50")] + pub eth_statuses_cache: usize, + + /// Sets the frontier backend type (KeyValue or Sql) + #[arg(long, value_enum, ignore_case = true, default_value_t = BackendType::default())] + pub frontier_backend_type: BackendType, + + // Sets the SQL backend's pool size. + #[arg(long, default_value = "100")] + pub frontier_sql_backend_pool_size: u32, + + /// Sets the SQL backend's query timeout in number of VM ops. + #[arg(long, default_value = "10000000")] + pub frontier_sql_backend_num_ops_timeout: u32, + + /// Sets the SQL backend's auxiliary thread limit. + #[arg(long, default_value = "4")] + pub frontier_sql_backend_thread_count: u32, + + /// Sets the SQL backend's query timeout in number of VM ops. + /// Default value is 200MB. + #[arg(long, default_value = "209715200")] + pub frontier_sql_backend_cache_size: u64, +} + +pub fn db_config_dir(config: &Configuration) -> PathBuf { + config.base_path.config_dir(config.chain_spec.id()) +} + +pub struct FrontierPartialComponents { + pub filter_pool: Option, + pub fee_history_cache: FeeHistoryCache, + pub fee_history_cache_limit: FeeHistoryCacheLimit, +} + +pub fn new_frontier_partial( + config: &EthConfiguration, +) -> Result { + Ok(FrontierPartialComponents { + filter_pool: Some(Arc::new(Mutex::new(BTreeMap::new()))), + fee_history_cache: Arc::new(Mutex::new(BTreeMap::new())), + fee_history_cache_limit: config.fee_history_limit, + }) +} + +pub async fn spawn_frontier_tasks( + task_manager: &TaskManager, + client: Arc, + backend: Arc, + frontier_backend: Arc>, + filter_pool: Option, + storage_override: Arc>, + fee_history_cache: FeeHistoryCache, + fee_history_cache_limit: FeeHistoryCacheLimit, + sync: Arc>, + pubsub_notification_sinks: Arc< + fc_mapping_sync::EthereumBlockNotificationSinks< + fc_mapping_sync::EthereumBlockNotification, + >, + >, +) // where + // RuntimeApi: ConstructRuntimeApi, + // RuntimeApi: Send + Sync + 'static, + // RuntimeApi::RuntimeApi: EthCompatRuntimeApiCollection, + // Executor: NativeExecutionDispatch + 'static, +{ + // Spawn main mapping sync worker background task. + match &*frontier_backend { + fc_db::Backend::KeyValue(b) => { + task_manager.spawn_essential_handle().spawn( + "frontier-mapping-sync-worker", + Some("frontier"), + fc_mapping_sync::kv::MappingSyncWorker::new( + client.import_notification_stream(), + Duration::new(6, 0), + client.clone(), + backend, + storage_override.clone(), + b.clone(), + 3, + 0, + fc_mapping_sync::SyncStrategy::Normal, + sync, + pubsub_notification_sinks, + ) + .for_each(|()| future::ready(())), + ); + } + fc_db::Backend::Sql(b) => { + task_manager.spawn_essential_handle().spawn_blocking( + "frontier-mapping-sync-worker", + Some("frontier"), + fc_mapping_sync::sql::SyncWorker::run( + client.clone(), + backend, + b.clone(), + client.import_notification_stream(), + fc_mapping_sync::sql::SyncWorkerConfig { + read_notification_timeout: Duration::from_secs(30), + check_indexed_blocks_interval: Duration::from_secs(60), + }, + fc_mapping_sync::SyncStrategy::Parachain, + sync, + pubsub_notification_sinks, + ), + ); + } + } + + // Spawn Frontier EthFilterApi maintenance task. + if let Some(filter_pool) = filter_pool { + // Each filter is allowed to stay in the pool for 100 blocks. + const FILTER_RETAIN_THRESHOLD: u64 = 100; + task_manager.spawn_essential_handle().spawn( + "frontier-filter-pool", + Some("frontier"), + EthTask::filter_pool_task(client.clone(), filter_pool, FILTER_RETAIN_THRESHOLD), + ); + } + + // Spawn Frontier FeeHistory cache maintenance task. + task_manager.spawn_essential_handle().spawn( + "frontier-fee-history", + Some("frontier"), + EthTask::fee_history_task( + client, + storage_override, + fee_history_cache, + fee_history_cache_limit, + ), + ); +} + +/// Instantiate Ethereum-compatible RPC extensions. +pub fn create_eth( + mut io: RpcModule<()>, + deps: EthDeps, + subscription_task_executor: SubscriptionTaskExecutor, + pubsub_notification_sinks: Arc< + fc_mapping_sync::EthereumBlockNotificationSinks< + fc_mapping_sync::EthereumBlockNotification, + >, + >, +) -> Result, Box> +where + B: BlockT, + C: CallApiAt + ProvideRuntimeApi, + C::Api: AuraApi + + BlockBuilderApi + + ConvertTransactionRuntimeApi + + EthereumRuntimeRPCApi, + C: HeaderBackend + HeaderMetadata, + C: BlockchainEvents + AuxStore + UsageProvider + StorageProvider + 'static, + BE: Backend + 'static, + P: TransactionPool + 'static, + A: ChainApi + 'static, + CT: ConvertTransaction<::Extrinsic> + Send + Sync + 'static, + CIDP: CreateInherentDataProviders + Send + 'static, + EC: EthConfig, +{ + use fc_rpc::{ + pending::AuraConsensusDataProvider, Debug, DebugApiServer, Eth, EthApiServer, EthDevSigner, + EthFilter, EthFilterApiServer, EthPubSub, EthPubSubApiServer, EthSigner, Net, NetApiServer, + Web3, Web3ApiServer, + }; + #[cfg(feature = "txpool")] + use fc_rpc::{TxPool, TxPoolApiServer}; + + let EthDeps { + client, + pool, + graph, + converter, + is_authority, + enable_dev_signer, + network, + sync, + frontier_backend, + storage_override, + block_data_cache, + filter_pool, + max_past_logs, + fee_history_cache, + fee_history_cache_limit, + execute_gas_limit_multiplier, + forced_parent_hashes, + pending_create_inherent_data_providers, + } = deps; + + let mut signers = Vec::new(); + if enable_dev_signer { + signers.push(Box::new(EthDevSigner::new()) as Box); + } + + io.merge( + Eth::::new( + client.clone(), + pool.clone(), + graph.clone(), + converter, + sync.clone(), + signers, + storage_override.clone(), + frontier_backend.clone(), + is_authority, + block_data_cache.clone(), + fee_history_cache, + fee_history_cache_limit, + execute_gas_limit_multiplier, + forced_parent_hashes, + pending_create_inherent_data_providers, + Some(Box::new(AuraConsensusDataProvider::new(client.clone()))), + ) + .replace_config::() + .into_rpc(), + )?; + + if let Some(filter_pool) = filter_pool { + io.merge( + EthFilter::new( + client.clone(), + frontier_backend.clone(), + graph.clone(), + filter_pool, + 500_usize, // max stored filters + max_past_logs, + block_data_cache.clone(), + ) + .into_rpc(), + )?; + } + + io.merge( + EthPubSub::new( + pool, + client.clone(), + sync, + subscription_task_executor, + storage_override.clone(), + pubsub_notification_sinks, + ) + .into_rpc(), + )?; + + io.merge( + Net::new( + client.clone(), + network, + // Whether to format the `peer_count` response as Hex (default) or not. + true, + ) + .into_rpc(), + )?; + + io.merge(Web3::new(client.clone()).into_rpc())?; + + io.merge( + Debug::new( + client.clone(), + frontier_backend, + storage_override, + block_data_cache, + ) + .into_rpc(), + )?; + + #[cfg(feature = "txpool")] + io.merge(TxPool::new(client, graph).into_rpc())?; + + Ok(io) +} \ No newline at end of file diff --git a/node/src/lib.rs b/node/src/lib.rs index f117b8aae..3e0f3a11a 100644 --- a/node/src/lib.rs +++ b/node/src/lib.rs @@ -1,3 +1,5 @@ pub mod chain_spec; pub mod rpc; pub mod service; +pub mod ethereum; +pub mod cli; \ No newline at end of file diff --git a/node/src/main.rs b/node/src/main.rs index a79d48b1b..00db180da 100644 --- a/node/src/main.rs +++ b/node/src/main.rs @@ -9,6 +9,7 @@ mod benchmarking; mod cli; mod command; mod rpc; +mod ethereum; fn main() -> sc_cli::Result<()> { command::run() diff --git a/node/src/rpc.rs b/node/src/rpc.rs index 54f82447f..885418132 100644 --- a/node/src/rpc.rs +++ b/node/src/rpc.rs @@ -5,66 +5,138 @@ #![warn(missing_docs)] -use std::sync::Arc; +use std::{collections::BTreeMap, sync::Arc}; + +use fp_rpc::{ConvertTransactionRuntimeApi, EthereumRuntimeRPCApi}; +use futures::channel::mpsc; use jsonrpsee::RpcModule; -use node_subtensor_runtime::{opaque::Block, AccountId, Balance, BlockNumber, Hash, Index}; -use sc_consensus_grandpa::FinalityProofProvider; +use node_subtensor_runtime::{opaque::Block, AccountId, Balance, Hash, Nonce}; +use sc_consensus_manual_seal::EngineCommand; +use sc_network::service::traits::NetworkService; +use sc_network_sync::SyncingService; use sc_transaction_pool_api::TransactionPool; -use sp_api::ProvideRuntimeApi; +use sp_api::{CallApiAt, ProvideRuntimeApi}; use sp_block_builder::BlockBuilder; use sp_blockchain::{Error as BlockChainError, HeaderBackend, HeaderMetadata}; - +use sp_runtime::traits::Block as BlockT; +use sc_transaction_pool::{ChainApi, Pool}; +use fc_storage::StorageOverride; +pub use fc_rpc::{EthBlockDataCacheTask, EthConfig}; +pub use fc_rpc_core::types::{FeeHistoryCache, FeeHistoryCacheLimit, FilterPool}; +use sp_core::H256; +use sp_inherents::CreateInherentDataProviders; +use sc_rpc::SubscriptionTaskExecutor; pub use sc_rpc_api::DenyUnsafe; +use sc_client_api::{ + backend::{Backend, StorageProvider}, + client::BlockchainEvents, + AuxStore, UsageProvider, +}; +use sp_consensus_aura::AuraApi; +use sp_consensus_aura::sr25519::AuthorityId as AuraId; +use crate::ethereum::create_eth; + +/// Extra dependencies for Ethereum compatibility. +pub struct EthDeps { + /// The client instance to use. + pub client: Arc, + /// Transaction pool instance. + pub pool: Arc

, + /// Graph pool instance. + pub graph: Arc>, + /// Ethereum transaction converter. + pub converter: Option, + /// The Node authority flag + pub is_authority: bool, + /// Whether to enable dev signer + pub enable_dev_signer: bool, + /// Network service + pub network: Arc, + /// Chain syncing service + pub sync: Arc>, + /// Frontier Backend. + pub frontier_backend: Arc>, + /// Ethereum data access overrides. + pub storage_override: Arc>, + /// Cache for Ethereum block data. + pub block_data_cache: Arc>, + /// EthFilterApi pool. + pub filter_pool: Option, + /// Maximum number of logs in a query. + pub max_past_logs: u32, + /// Fee history cache. + pub fee_history_cache: FeeHistoryCache, + /// Maximum fee history cache size. + pub fee_history_cache_limit: FeeHistoryCacheLimit, + /// Maximum allowed gas limit will be ` block.gas_limit * execute_gas_limit_multiplier` when + /// using eth_call/eth_estimateGas. + pub execute_gas_limit_multiplier: u64, + /// Mandated parent hashes for a given block hash. + pub forced_parent_hashes: Option>, + /// Something that can create the inherent data providers for pending state + pub pending_create_inherent_data_providers: CIDP, +} + +/// Default Eth RPC configuration +pub struct DefaultEthConfig(std::marker::PhantomData<(C, BE)>); -/// Dependencies for GRANDPA -pub struct GrandpaDeps { - /// Voting round info. - pub shared_voter_state: sc_consensus_grandpa::SharedVoterState, - /// Authority set info. - pub shared_authority_set: sc_consensus_grandpa::SharedAuthoritySet, - /// Receives notifications about justification events from Grandpa. - pub justification_stream: sc_consensus_grandpa::GrandpaJustificationStream, - /// Executor to drive the subscription manager in the Grandpa RPC handler. - pub subscription_executor: sc_rpc::SubscriptionTaskExecutor, - /// Finality proof provider. - pub finality_provider: Arc>, +impl EthConfig for DefaultEthConfig +where + C: StorageProvider + Sync + Send + 'static, + BE: Backend + 'static, +{ + type EstimateGasAdapter = (); + type RuntimeStorageOverride = + fc_rpc::frontier_backend_client::SystemAccountId20StorageOverride; } /// Full client dependencies. -pub struct FullDeps { +pub struct FullDeps { /// The client instance to use. pub client: Arc, /// Transaction pool instance. pub pool: Arc

, /// Whether to deny unsafe calls pub deny_unsafe: DenyUnsafe, - /// Grandpa block import setup. - pub grandpa: GrandpaDeps, - /// Backend used by the node. - pub _backend: Arc, + /// Manual seal command sink + pub command_sink: Option>>, + /// Ethereum-compatibility specific dependencies. + pub eth: EthDeps, } /// Instantiate all full RPC extensions. -pub fn create_full( - deps: FullDeps, +pub fn create_full( + deps: FullDeps, + subscription_task_executor: SubscriptionTaskExecutor, + pubsub_notification_sinks: Arc< + fc_mapping_sync::EthereumBlockNotificationSinks< + fc_mapping_sync::EthereumBlockNotification, + >, + >, ) -> Result, Box> where - C: ProvideRuntimeApi, - C: HeaderBackend + HeaderMetadata + 'static, - C: Send + Sync + 'static, - C::Api: substrate_frame_rpc_system::AccountNonceApi, - C::Api: pallet_transaction_payment_rpc::TransactionPaymentRuntimeApi, - C::Api: BlockBuilder, - C::Api: subtensor_custom_rpc_runtime_api::DelegateInfoRuntimeApi, - C::Api: subtensor_custom_rpc_runtime_api::NeuronInfoRuntimeApi, - C::Api: subtensor_custom_rpc_runtime_api::SubnetInfoRuntimeApi, - C::Api: subtensor_custom_rpc_runtime_api::SubnetRegistrationRuntimeApi, - B: sc_client_api::Backend + Send + Sync + 'static, - P: TransactionPool + 'static, + C: CallApiAt + ProvideRuntimeApi, + C::Api: BlockBuilder, + C::Api: AuraApi, + C::Api: substrate_frame_rpc_system::AccountNonceApi, + C::Api: pallet_transaction_payment_rpc::TransactionPaymentRuntimeApi, + C::Api: ConvertTransactionRuntimeApi, + C::Api: EthereumRuntimeRPCApi, + C::Api: subtensor_custom_rpc_runtime_api::DelegateInfoRuntimeApi, + C::Api: subtensor_custom_rpc_runtime_api::NeuronInfoRuntimeApi, + C::Api: subtensor_custom_rpc_runtime_api::SubnetInfoRuntimeApi, + C::Api: subtensor_custom_rpc_runtime_api::SubnetRegistrationRuntimeApi, + C: HeaderBackend + HeaderMetadata + 'static, + C: BlockchainEvents + AuxStore + UsageProvider + StorageProvider, + BE: Backend + 'static, + P: TransactionPool + 'static, + A: ChainApi + 'static, + CIDP: CreateInherentDataProviders + Send + 'static, + CT: fp_rpc::ConvertTransaction<::Extrinsic> + Send + Sync + 'static, { use pallet_transaction_payment_rpc::{TransactionPayment, TransactionPaymentApiServer}; - use sc_consensus_grandpa_rpc::{Grandpa, GrandpaApiServer}; + use sc_consensus_manual_seal::rpc::{ManualSeal, ManualSealApiServer}; use substrate_frame_rpc_system::{System, SystemApiServer}; use subtensor_custom_rpc::{SubtensorCustom, SubtensorCustomApiServer}; @@ -73,9 +145,9 @@ where client, pool, deny_unsafe, - grandpa, - _backend: _, - } = deps; + command_sink, + eth, + } = deps; // Custom RPC methods for Paratensor module.merge(SubtensorCustom::new(client.clone()).into_rpc())?; @@ -83,29 +155,26 @@ where module.merge(System::new(client.clone(), pool.clone(), deny_unsafe).into_rpc())?; module.merge(TransactionPayment::new(client).into_rpc())?; - let GrandpaDeps { - shared_voter_state, - shared_authority_set, - justification_stream, - subscription_executor, - finality_provider, - } = grandpa; - - module.merge( - Grandpa::new( - subscription_executor, - shared_authority_set.clone(), - shared_voter_state, - justification_stream, - finality_provider, - ) - .into_rpc(), - )?; - // Extend this RPC with a custom API by using the following syntax. // `YourRpcStruct` should have a reference to a client, which is needed // to call into the runtime. // `module.merge(YourRpcTrait::into_rpc(YourRpcStruct::new(ReferenceToClient, ...)))?;` + if let Some(command_sink) = command_sink { + module.merge( + // We provide the rpc handler with the sending end of the channel to allow the rpc + // send EngineCommands to the background block authorship task. + ManualSeal::new(command_sink).into_rpc(), + )?; + } + + // Ethereum compatibility RPCs + let module = create_eth::<_, _, _, _, _, _, _, DefaultEthConfig>( + module, + eth, + subscription_task_executor, + pubsub_notification_sinks, + )?; + Ok(module) } diff --git a/node/src/service.rs b/node/src/service.rs index afeededeb..beadbf6aa 100644 --- a/node/src/service.rs +++ b/node/src/service.rs @@ -1,23 +1,38 @@ //! Service and ServiceFactory implementation. Specialized wrapper over substrate service. -use futures::FutureExt; -use node_subtensor_runtime::{opaque::Block, RuntimeApi}; +use futures::{channel::mpsc, future, FutureExt}; +use node_subtensor_runtime::{Hash, opaque::Block, RuntimeApi, TransactionConverter}; use sc_client_api::{Backend, BlockBackend}; -use sc_consensus_aura::{ImportQueueParams, SlotProportion, StartAuraParams}; +use sc_consensus_aura::{SlotProportion, StartAuraParams}; +use sc_consensus::BasicQueue; use sc_consensus_grandpa::SharedVoterState; use sc_consensus_slots::BackoffAuthoringOnFinalizedHeadLagging; use sc_executor::sp_wasm_interface::{Function, HostFunctionRegistry, HostFunctions}; pub use sc_executor::NativeElseWasmExecutor; -use sc_service::{error::Error as ServiceError, Configuration, TaskManager, WarpSyncParams}; -use sc_telemetry::{Telemetry, TelemetryWorker}; +use sc_service::{error::Error as ServiceError, Configuration, TaskManager, PartialComponents}; +use sc_network_sync::strategy::warp::{WarpSyncParams, WarpSyncProvider}; +use sc_telemetry::{log, Telemetry, TelemetryHandle, TelemetryWorker}; use sc_transaction_pool_api::OffchainTransactionPoolFactory; use sp_consensus_aura::sr25519::AuthorityPair as AuraPair; use std::{sync::Arc, time::Duration}; +use sp_core::U256; +use std::{cell::RefCell, path::Path}; +use sc_transaction_pool::FullPool; +use substrate_prometheus_endpoint::Registry; +use crate::ethereum::{ + FrontierBackend, StorageOverride, StorageOverrideHandler, EthConfiguration, FrontierBlockImport, BackendType, db_config_dir, + FrontierPartialComponents, new_frontier_partial, spawn_frontier_tasks +}; +use crate::cli::Sealing; /// The minimum period of blocks on which justifications will be /// imported and generated. const GRANDPA_JUSTIFICATION_PERIOD: u32 = 512; +type BasicImportQueue = sc_consensus::DefaultImportQueue; +type GrandpaBlockImport = + sc_consensus_grandpa::GrandpaBlockImport; + // Our native executor instance. pub struct ExecutorDispatch; @@ -54,31 +69,41 @@ impl sc_executor::NativeExecutionDispatch for ExecutorDispatch { pub(crate) type FullClient = sc_service::TFullClient>; -type FullBackend = sc_service::TFullBackend; +pub type FullBackend = sc_service::TFullBackend; type FullSelectChain = sc_consensus::LongestChain; +type BoxBlockImport = sc_consensus::BoxBlockImport; -pub fn new_partial( +pub fn new_partial( config: &Configuration, + eth_config: &EthConfiguration, + build_import_queue: BIQ, ) -> Result< sc_service::PartialComponents< FullClient, FullBackend, FullSelectChain, - sc_consensus::DefaultImportQueue, - sc_transaction_pool::FullPool, + BasicImportQueue, + FullPool, ( - sc_consensus_grandpa::GrandpaBlockImport< - FullBackend, - Block, - FullClient, - FullSelectChain, - >, + BoxBlockImport, sc_consensus_grandpa::LinkHalf, Option, + FrontierBackend, + Arc>, ), >, ServiceError, -> { +> +where + BIQ: FnOnce( + Arc, + &Configuration, + &EthConfiguration, + &TaskManager, + Option, + GrandpaBlockImport, + ) -> Result<(BasicImportQueue, BoxBlockImport), ServiceError>, +{ let telemetry = config .telemetry_endpoints .clone() @@ -125,30 +150,44 @@ pub fn new_partial( telemetry.as_ref().map(|x| x.handle()), )?; - let slot_duration = sc_consensus_aura::slot_duration(&*client)?; - - let import_queue = - sc_consensus_aura::import_queue::(ImportQueueParams { - block_import: grandpa_block_import.clone(), - justification_import: Some(Box::new(grandpa_block_import.clone())), - client: client.clone(), - create_inherent_data_providers: move |_, ()| async move { - let timestamp = sp_timestamp::InherentDataProvider::from_system_time(); - - let slot = - sp_consensus_aura::inherents::InherentDataProvider::from_timestamp_and_slot_duration( - *timestamp, - slot_duration, - ); - - Ok((slot, timestamp)) - }, - spawner: &task_manager.spawn_essential_handle(), - registry: config.prometheus_registry(), - check_for_equivocation: Default::default(), - telemetry: telemetry.as_ref().map(|x| x.handle()), - compatibility_mode: Default::default(), - })?; + let (import_queue, block_import) = build_import_queue( + client.clone(), + config, + eth_config, + &task_manager, + telemetry.as_ref().map(|x| x.handle()), + grandpa_block_import, + )?; + + let storage_override = Arc::new(StorageOverrideHandler::new(client.clone())); + let frontier_backend = match eth_config.frontier_backend_type { + BackendType::KeyValue => FrontierBackend::KeyValue(Arc::new(fc_db::kv::Backend::open( + Arc::clone(&client), + &config.database, + &db_config_dir(config), + )?)), + BackendType::Sql => { + let db_path = db_config_dir(config).join("sql"); + std::fs::create_dir_all(&db_path).expect("failed creating sql db directory"); + let backend = futures::executor::block_on(fc_db::sql::Backend::new( + fc_db::sql::BackendConfig::Sqlite(fc_db::sql::SqliteBackendConfig { + path: Path::new("sqlite:///") + .join(db_path) + .join("frontier.db3") + .to_str() + .unwrap(), + create_if_missing: true, + thread_count: eth_config.frontier_sql_backend_thread_count, + cache_size: eth_config.frontier_sql_backend_cache_size, + }), + eth_config.frontier_sql_backend_pool_size, + std::num::NonZeroU32::new(eth_config.frontier_sql_backend_num_ops_timeout), + storage_override.clone(), + )) + .unwrap_or_else(|err| panic!("failed creating sql backend: {:?}", err)); + FrontierBackend::Sql(Arc::new(backend)) + } + }; Ok(sc_service::PartialComponents { client, @@ -158,16 +197,95 @@ pub fn new_partial( keystore_container, select_chain, transaction_pool, - other: (grandpa_block_import, grandpa_link, telemetry), + other: ( + block_import, + grandpa_link, + telemetry, + frontier_backend, + storage_override, + ), }) } +/// Build the import queue for the template runtime (aura + grandpa). +pub fn build_aura_grandpa_import_queue( + client: Arc, + config: &Configuration, + eth_config: &EthConfiguration, + task_manager: &TaskManager, + telemetry: Option, + grandpa_block_import: GrandpaBlockImport, +) -> Result<(BasicImportQueue, BoxBlockImport), ServiceError> +{ + let frontier_block_import = + FrontierBlockImport::new(grandpa_block_import.clone(), client.clone()); + + let slot_duration = sc_consensus_aura::slot_duration(&*client)?; + let target_gas_price = eth_config.target_gas_price; + let create_inherent_data_providers = move |_, ()| async move { + let timestamp = sp_timestamp::InherentDataProvider::from_system_time(); + let slot = + sp_consensus_aura::inherents::InherentDataProvider::from_timestamp_and_slot_duration( + *timestamp, + slot_duration, + ); + let dynamic_fee = fp_dynamic_fee::InherentDataProvider(U256::from(target_gas_price)); + Ok((slot, timestamp, dynamic_fee)) + }; + + let import_queue = sc_consensus_aura::import_queue::( + sc_consensus_aura::ImportQueueParams { + block_import: frontier_block_import.clone(), + justification_import: Some(Box::new(grandpa_block_import)), + client, + create_inherent_data_providers, + spawner: &task_manager.spawn_essential_handle(), + registry: config.prometheus_registry(), + check_for_equivocation: Default::default(), + telemetry, + compatibility_mode: sc_consensus_aura::CompatibilityMode::None, + }, + ) + .map_err::(Into::into)?; + + Ok((import_queue, Box::new(frontier_block_import))) +} + +/// Build the import queue for the template runtime (manual seal). +pub fn build_manual_seal_import_queue( + client: Arc, + config: &Configuration, + _eth_config: &EthConfiguration, + task_manager: &TaskManager, + _telemetry: Option, + _grandpa_block_import: GrandpaBlockImport, +) -> Result<(BasicImportQueue, BoxBlockImport), ServiceError> +{ + let frontier_block_import = FrontierBlockImport::new(client.clone(), client); + Ok(( + sc_consensus_manual_seal::import_queue( + Box::new(frontier_block_import.clone()), + &task_manager.spawn_essential_handle(), + config.prometheus_registry(), + ), + Box::new(frontier_block_import), + )) +} + // Builds a new service for a full client. -pub fn new_full< +pub async fn new_full< N: sc_network::NetworkBackend::Hash>, >( - config: Configuration, + mut config: Configuration, + eth_config: EthConfiguration, + sealing: Option, ) -> Result { + let build_import_queue = if sealing.is_some() { + build_manual_seal_import_queue + } else { + build_aura_grandpa_import_queue + }; + let sc_service::PartialComponents { client, backend, @@ -176,8 +294,20 @@ pub fn new_full< keystore_container, select_chain, transaction_pool, - other: (block_import, grandpa_link, mut telemetry), - } = new_partial(&config)?; + other: ( + block_import, + grandpa_link, + mut telemetry, + frontier_backend, + storage_override, + ), + } = new_partial(&config, ð_config, build_import_queue)?; + + let FrontierPartialComponents { + filter_pool, + fee_history_cache, + fee_history_cache_limit, + } = new_frontier_partial(ð_config)?; let mut net_config = sc_network::config::FullNetworkConfiguration::< Block, @@ -202,13 +332,19 @@ pub fn new_full< metrics.clone(), peer_store_handle, ); - net_config.add_notification_protocol(grandpa_protocol_config); - let warp_sync = Arc::new(sc_consensus_grandpa::warp_proof::NetworkProvider::new( - backend.clone(), - grandpa_link.shared_authority_set().clone(), - Vec::default(), - )); + let warp_sync_params = if sealing.is_some() { + None + } else { + net_config.add_notification_protocol(grandpa_protocol_config); + let warp_sync: Arc> = + Arc::new(sc_consensus_grandpa::warp_proof::NetworkProvider::new( + backend.clone(), + grandpa_link.shared_authority_set().clone(), + Vec::default(), + )); + Some(WarpSyncParams::WithProvider(warp_sync)) + }; let (network, system_rpc_tx, tx_handler_controller, network_starter, sync_service) = sc_service::build_network(sc_service::BuildNetworkParams { @@ -219,7 +355,7 @@ pub fn new_full< spawn_handle: task_manager.spawn_handle(), import_queue, block_announce_validator_builder: None, - warp_sync_params: Some(WarpSyncParams::WithProvider(warp_sync)), + warp_sync_params, block_relay: None, metrics, })?; @@ -245,15 +381,6 @@ pub fn new_full< ); } - let finality_proof_provider = sc_consensus_grandpa::FinalityProofProvider::new_for_service( - backend.clone(), - Some(grandpa_link.shared_authority_set().clone()), - ); - let rpc_backend = backend.clone(); - let justification_stream = grandpa_link.justification_stream(); - let shared_authority_set = grandpa_link.shared_authority_set().clone(); - let shared_voter_state = SharedVoterState::empty(); - let role = config.role.clone(); let force_authoring = config.force_authoring; let backoff_authoring_blocks = Some(BackoffAuthoringOnFinalizedHeadLagging { @@ -263,27 +390,103 @@ pub fn new_full< let name = config.network.node_name.clone(); let enable_grandpa = !config.disable_grandpa; let prometheus_registry = config.prometheus_registry().cloned(); + let frontier_backend = Arc::new(frontier_backend); + + // Channel for the rpc handler to communicate with the authorship task. + let (command_sink, commands_stream) = mpsc::channel(1000); + + // Sinks for pubsub notifications. + // Everytime a new subscription is created, a new mpsc channel is added to the sink pool. + // The MappingSyncWorker sends through the channel on block import and the subscription emits a notification to the subscriber on receiving a message through this channel. + // This way we avoid race conditions when using native substrate block import notification stream. + let pubsub_notification_sinks: fc_mapping_sync::EthereumBlockNotificationSinks< + fc_mapping_sync::EthereumBlockNotification, + > = Default::default(); + let pubsub_notification_sinks = Arc::new(pubsub_notification_sinks); + + // for ethereum-compatibility rpc. + config.rpc_id_provider = Some(Box::new(fc_rpc::EthereumSubIdProvider)); let rpc_extensions_builder = { let client = client.clone(); let pool = transaction_pool.clone(); + let network = network.clone(); + let sync_service = sync_service.clone(); + + let is_authority = role.is_authority(); + let enable_dev_signer = eth_config.enable_dev_signer; + let max_past_logs = eth_config.max_past_logs; + let execute_gas_limit_multiplier = eth_config.execute_gas_limit_multiplier; + let filter_pool = filter_pool.clone(); + let frontier_backend = frontier_backend.clone(); + let pubsub_notification_sinks = pubsub_notification_sinks.clone(); + let storage_override = storage_override.clone(); + let fee_history_cache = fee_history_cache.clone(); + let block_data_cache = Arc::new(fc_rpc::EthBlockDataCacheTask::new( + task_manager.spawn_handle(), + storage_override.clone(), + eth_config.eth_log_block_cache, + eth_config.eth_statuses_cache, + prometheus_registry.clone(), + )); + + let slot_duration = sc_consensus_aura::slot_duration(&*client)?; + let target_gas_price = eth_config.target_gas_price; + let pending_create_inherent_data_providers = move |_, ()| async move { + let current = sp_timestamp::InherentDataProvider::from_system_time(); + let next_slot = current.timestamp().as_millis() + slot_duration.as_millis(); + let timestamp = sp_timestamp::InherentDataProvider::new(next_slot.into()); + let slot = sp_consensus_aura::inherents::InherentDataProvider::from_timestamp_and_slot_duration( + *timestamp, + slot_duration, + ); + let dynamic_fee = fp_dynamic_fee::InherentDataProvider(U256::from(target_gas_price)); + Ok((slot, timestamp, dynamic_fee)) + }; + Box::new( move |deny_unsafe, subscription_executor: sc_rpc::SubscriptionTaskExecutor| { + let eth_deps = crate::rpc::EthDeps { + client: client.clone(), + pool: pool.clone(), + graph: pool.pool().clone(), + converter: Some(TransactionConverter), + is_authority, + enable_dev_signer, + network: network.clone(), + sync: sync_service.clone(), + frontier_backend: match &*frontier_backend { + fc_db::Backend::KeyValue(b) => b.clone(), + fc_db::Backend::Sql(b) => b.clone(), + }, + storage_override: storage_override.clone(), + block_data_cache: block_data_cache.clone(), + filter_pool: filter_pool.clone(), + max_past_logs, + fee_history_cache: fee_history_cache.clone(), + fee_history_cache_limit, + execute_gas_limit_multiplier, + forced_parent_hashes: None, + pending_create_inherent_data_providers, + }; + let deps = crate::rpc::FullDeps { client: client.clone(), pool: pool.clone(), deny_unsafe, - grandpa: crate::rpc::GrandpaDeps { - shared_voter_state: shared_voter_state.clone(), - shared_authority_set: shared_authority_set.clone(), - justification_stream: justification_stream.clone(), - subscription_executor: subscription_executor.clone(), - finality_provider: finality_proof_provider.clone(), + command_sink: if sealing.is_some() { + Some(command_sink.clone()) + } else { + None }, - _backend: rpc_backend.clone(), + eth: eth_deps, }; - crate::rpc::create_full(deps).map_err(Into::into) + crate::rpc::create_full( + deps, + subscription_executor, + pubsub_notification_sinks.clone(), + ).map_err(Into::into) }, ) }; @@ -295,7 +498,7 @@ pub fn new_full< task_manager: &mut task_manager, transaction_pool: transaction_pool.clone(), rpc_builder: rpc_extensions_builder, - backend, + backend: backend.clone(), system_rpc_tx, tx_handler_controller, sync_service: sync_service.clone(), @@ -303,7 +506,41 @@ pub fn new_full< telemetry: telemetry.as_mut(), })?; + spawn_frontier_tasks( + &task_manager, + client.clone(), + backend, + frontier_backend, + filter_pool, + storage_override, + fee_history_cache, + fee_history_cache_limit, + sync_service.clone(), + pubsub_notification_sinks, + ) + .await; + if role.is_authority() { + // manual-seal authorship + if let Some(sealing) = sealing { + run_manual_seal_authorship( + ð_config, + sealing, + client, + transaction_pool, + select_chain, + block_import, + &task_manager, + prometheus_registry.as_ref(), + telemetry.as_ref(), + commands_stream, + )?; + + network_starter.start_network(); + log::info!("Manual Seal Ready"); + return Ok(task_manager); + } + let proposer_factory = sc_basic_authorship::ProposerFactory::new( task_manager.spawn_handle(), client.clone(), @@ -403,3 +640,121 @@ pub fn new_full< network_starter.start_network(); Ok(task_manager) } + +pub fn new_chain_ops( + config: &mut Configuration, + eth_config: &EthConfiguration, +) -> Result< + ( + Arc, + Arc, + BasicQueue, + TaskManager, + FrontierBackend, + ), + ServiceError, +> { + config.keystore = sc_service::config::KeystoreConfig::InMemory; + let PartialComponents { + client, + backend, + import_queue, + task_manager, + other, + .. + } = new_partial::<_>( + config, + eth_config, + build_aura_grandpa_import_queue, + )?; + Ok((client, backend, import_queue, task_manager, other.3)) +} + +fn run_manual_seal_authorship( + eth_config: &EthConfiguration, + sealing: Sealing, + client: Arc, + transaction_pool: Arc>, + select_chain: FullSelectChain, + block_import: BoxBlockImport, + task_manager: &TaskManager, + prometheus_registry: Option<&Registry>, + telemetry: Option<&Telemetry>, + commands_stream: mpsc::Receiver>, +) -> Result<(), ServiceError> +{ + let proposer_factory = sc_basic_authorship::ProposerFactory::new( + task_manager.spawn_handle(), + client.clone(), + transaction_pool.clone(), + prometheus_registry, + telemetry.as_ref().map(|x| x.handle()), + ); + + thread_local!(static TIMESTAMP: RefCell = const { RefCell::new(0) }); + + /// Provide a mock duration starting at 0 in millisecond for timestamp inherent. + /// Each call will increment timestamp by slot_duration making Aura think time has passed. + struct MockTimestampInherentDataProvider; + + #[async_trait::async_trait] + impl sp_inherents::InherentDataProvider for MockTimestampInherentDataProvider { + async fn provide_inherent_data( + &self, + inherent_data: &mut sp_inherents::InherentData, + ) -> Result<(), sp_inherents::Error> { + TIMESTAMP.with(|x| { + *x.borrow_mut() += node_subtensor_runtime::SLOT_DURATION; + inherent_data.put_data(sp_timestamp::INHERENT_IDENTIFIER, &*x.borrow()) + }) + } + + async fn try_handle_error( + &self, + _identifier: &sp_inherents::InherentIdentifier, + _error: &[u8], + ) -> Option> { + // The pallet never reports error. + None + } + } + + let target_gas_price = eth_config.target_gas_price; + let create_inherent_data_providers = move |_, ()| async move { + let timestamp = MockTimestampInherentDataProvider; + let dynamic_fee = fp_dynamic_fee::InherentDataProvider(U256::from(target_gas_price)); + Ok((timestamp, dynamic_fee)) + }; + + let manual_seal = match sealing { + Sealing::Manual => future::Either::Left(sc_consensus_manual_seal::run_manual_seal( + sc_consensus_manual_seal::ManualSealParams { + block_import, + env: proposer_factory, + client, + pool: transaction_pool, + commands_stream, + select_chain, + consensus_data_provider: None, + create_inherent_data_providers, + }, + )), + Sealing::Instant => future::Either::Right(sc_consensus_manual_seal::run_instant_seal( + sc_consensus_manual_seal::InstantSealParams { + block_import, + env: proposer_factory, + client, + pool: transaction_pool, + select_chain, + consensus_data_provider: None, + create_inherent_data_providers, + }, + )), + }; + + // we spawn the future on a background thread managed by service. + task_manager + .spawn_essential_handle() + .spawn_blocking("manual-seal", None, manual_seal); + Ok(()) +} diff --git a/runtime/Cargo.toml b/runtime/Cargo.toml index 8a2886eb1..9037db57a 100644 --- a/runtime/Cargo.toml +++ b/runtime/Cargo.toml @@ -93,6 +93,23 @@ pallet-registry = { default-features = false, path = "../pallets/registry" } # Metadata commitment pallet pallet-commitments = { default-features = false, path = "../pallets/commitments" } +# Frontier +fp-evm = { workspace = true } +fp-rpc = { workspace = true } +fp-self-contained = { workspace = true } + +# Frontier FRAME +pallet-base-fee = { workspace = true } +pallet-dynamic-fee = { workspace = true } +pallet-ethereum = { workspace = true } +pallet-evm = { workspace = true } +pallet-evm-chain-id = { workspace = true } +pallet-evm-precompile-modexp = { workspace = true } +pallet-evm-precompile-sha3fips = { workspace = true } +pallet-evm-precompile-simple = { workspace = true } +pallet-hotfix-sufficients = { workspace = true } +fp-account = { workspace = true } + [dev-dependencies] frame-metadata = { workspace = true } sp-io = { workspace = true } @@ -156,6 +173,21 @@ std = [ "log/std", "sp-storage/std", "sp-genesis-builder/std", + # Frontier + "fp-evm/std", + "fp-rpc/std", + "fp-self-contained/std", + # Frontier FRAME + "pallet-base-fee/std", + "pallet-dynamic-fee/std", + "pallet-ethereum/std", + "pallet-evm/std", + "pallet-evm-chain-id/std", + "pallet-evm-precompile-modexp/std", + "pallet-evm-precompile-sha3fips/std", + "pallet-evm-precompile-simple/std", + "pallet-hotfix-sufficients/std", + "fp-account/std", ] runtime-benchmarks = [ "frame-benchmarking/runtime-benchmarks", diff --git a/runtime/src/lib.rs b/runtime/src/lib.rs index b9f0c0fcb..56c527c8b 100644 --- a/runtime/src/lib.rs +++ b/runtime/src/lib.rs @@ -32,14 +32,18 @@ use scale_info::TypeInfo; use smallvec::smallvec; use sp_api::impl_runtime_apis; use sp_consensus_aura::sr25519::AuthorityId as AuraId; -use sp_core::{crypto::KeyTypeId, OpaqueMetadata, RuntimeDebug}; +use sp_core::{ + crypto::{ByteArray, KeyTypeId}, + H160, H256, U256, OpaqueMetadata +}; use sp_runtime::{ create_runtime_str, generic, impl_opaque_keys, traits::{ - AccountIdLookup, BlakeTwo256, Block as BlockT, IdentifyAccount, NumberFor, One, Verify, + BlakeTwo256, Block as BlockT, IdentifyAccount, NumberFor, One, Verify, DispatchInfoOf, PostDispatchInfoOf, Dispatchable, + UniqueSaturatedInto, AccountIdLookup }, - transaction_validity::{TransactionSource, TransactionValidity}, - ApplyExtrinsicResult, MultiSignature, AccountId32 + transaction_validity::{TransactionSource, TransactionValidity, TransactionValidityError}, + ApplyExtrinsicResult, MultiSignature, ConsensusEngineId, AccountId32 }; use sp_std::cmp::Ordering; use sp_std::prelude::*; @@ -52,8 +56,8 @@ use sp_version::RuntimeVersion; pub use frame_support::{ construct_runtime, parameter_types, traits::{ - ConstBool, ConstU128, ConstU32, ConstU64, ConstU8, InstanceFilter, KeyOwnerProofSystem, - PrivilegeCmp, Randomness, StorageInfo, + ConstBool, ConstU128, ConstU32, ConstU64, ConstU8, FindAuthor, InstanceFilter, KeyOwnerProofSystem, + PrivilegeCmp, Randomness, StorageInfo, OnFinalize, OnTimestampSet }, weights::{ constants::{ @@ -67,11 +71,24 @@ pub use frame_support::{ pub use frame_system::Call as SystemCall; pub use pallet_balances::Call as BalancesCall; pub use pallet_timestamp::Call as TimestampCall; -use pallet_transaction_payment::{FungibleAdapter, Multiplier}; +use pallet_transaction_payment::{ConstFeeMultiplier, Multiplier, FungibleAdapter}; #[cfg(any(feature = "std", test))] pub use sp_runtime::BuildStorage; pub use sp_runtime::{Perbill, Permill}; +use core::marker::PhantomData; + +mod precompiles; +use precompiles::FrontierPrecompiles; + +// Frontier +use fp_evm::weight_per_gas; +use fp_rpc::TransactionStatus; +use pallet_ethereum::{Call::transact, PostLogContent, Transaction as EthereumTransaction}; +use pallet_evm::{ + Account as EVMAccount, FeeCalculator, Runner +}; + // Subtensor module pub use pallet_scheduler; pub use pallet_subtensor; @@ -174,6 +191,20 @@ pub const MINUTES: BlockNumber = 60_000 / (MILLISECS_PER_BLOCK as BlockNumber); pub const HOURS: BlockNumber = MINUTES * 60; pub const DAYS: BlockNumber = HOURS * 24; +pub const MAXIMUM_BLOCK_WEIGHT: Weight = + Weight::from_parts(4u64 * WEIGHT_REF_TIME_PER_SECOND, u64::MAX); + +/// Current approximation of the gas/s consumption considering +/// EVM execution over compiled WASM (on 4.4Ghz CPU). +/// Given the 500ms Weight, from which 75% only are used for transactions, +/// the total EVM execution gas limit is: GAS_PER_SECOND * 0.500 * 0.75 ~= 15_000_000. +/// Note: this value has been used in production by (and is copied from) the Moonbeam parachain. +pub const GAS_PER_SECOND: u64 = 40_000_000; + +/// Approximate ratio of the amount of Weight per Gas. +/// u64 works for approximations because Weight is a very small unit compared to gas. +pub const WEIGHT_PER_GAS: u64 = WEIGHT_REF_TIME_PER_SECOND / GAS_PER_SECOND; + // The version information used to identify this runtime when compiled natively. #[cfg(feature = "std")] pub fn native_version() -> NativeVersion { @@ -191,7 +222,7 @@ parameter_types! { // We allow for 2 seconds of compute with a 6 second average block time. pub BlockWeights: frame_system::limits::BlockWeights = frame_system::limits::BlockWeights::with_sensible_defaults( - Weight::from_parts(4u64 * WEIGHT_REF_TIME_PER_SECOND, u64::MAX), + MAXIMUM_BLOCK_WEIGHT, NORMAL_DISPATCH_RATIO, ); pub BlockLength: frame_system::limits::BlockLength = frame_system::limits::BlockLength @@ -390,7 +421,8 @@ where parameter_types! { // Used with LinearWeightToFee conversion. pub const FeeWeightRatio: u64 = 1; - pub const TransactionByteFee: u128 = 1; + pub const TransactionByteFee: u64 = 1; + pub const OperationalFeeMultiplier: u8 = 5; pub FeeMultiplier: Multiplier = Multiplier::one(); } @@ -417,19 +449,13 @@ impl OnUnbalanced< impl pallet_transaction_payment::Config for Runtime { type RuntimeEvent = RuntimeEvent; - //type TransactionByteFee = TransactionByteFee; type OnChargeTransaction = FungibleAdapter; - // Convert dispatch weight to a chargeable fee. type WeightToFee = LinearWeightToFee; - - type FeeMultiplierUpdate = (); - - type OperationalFeeMultiplier = ConstU8<1>; - + type OperationalFeeMultiplier = OperationalFeeMultiplier; type LengthToFee = IdentityFee; - //type FeeMultiplierUpdate = ConstFeeMultiplier; + type FeeMultiplierUpdate = ConstFeeMultiplier; } // Configure collective pallet for council @@ -625,7 +651,7 @@ parameter_types! { PartialOrd, Encode, Decode, - RuntimeDebug, + Debug, MaxEncodedLen, TypeInfo, )] @@ -1039,6 +1065,187 @@ impl pallet_admin_utils::Config for Runtime { type WeightInfo = pallet_admin_utils::weights::SubstrateWeight; } +// Define the ChainId +parameter_types! { + pub const SubtensorChainId: u64 = 0x03C4; // Unicode for lowercase tau +} + +impl pallet_evm_chain_id::Config for Runtime {} + +pub struct FindAuthorTruncated(PhantomData); +impl> FindAuthor for FindAuthorTruncated { + fn find_author<'a, I>(digests: I) -> Option + where + I: 'a + IntoIterator, + { + if let Some(author_index) = F::find_author(digests) { + let authority_id = + pallet_aura::Authorities::::get()[author_index as usize].clone(); + return Some(H160::from_slice(&authority_id.to_raw_vec()[4..24])); + } + None + } +} + +const BLOCK_GAS_LIMIT: u64 = 75_000_000; +const MAX_POV_SIZE: u64 = 5 * 1024 * 1024; + +parameter_types! { + pub BlockGasLimit: U256 = U256::from(BLOCK_GAS_LIMIT); + pub const GasLimitPovSizeRatio: u64 = BLOCK_GAS_LIMIT.saturating_div(MAX_POV_SIZE); + pub PrecompilesValue: FrontierPrecompiles = FrontierPrecompiles::<_>::new(); + pub WeightPerGas: Weight = Weight::from_parts(weight_per_gas(BLOCK_GAS_LIMIT, NORMAL_DISPATCH_RATIO, MILLISECS_PER_BLOCK), 0); + pub SuicideQuickClearLimit: u32 = 0; +} + +impl pallet_evm::Config for Runtime { + type FeeCalculator = BaseFee; + type GasWeightMapping = pallet_evm::FixedGasWeightMapping; + type WeightPerGas = WeightPerGas; + type BlockHashMapping = pallet_ethereum::EthereumBlockHashMapping; + type CallOrigin = pallet_evm::EnsureAddressTruncated; + type WithdrawOrigin = pallet_evm::EnsureAddressTruncated; + type AddressMapping = pallet_evm::HashedAddressMapping; + type Currency = Balances; + type RuntimeEvent = RuntimeEvent; + type PrecompilesType = FrontierPrecompiles; + type PrecompilesValue = PrecompilesValue; + type ChainId = SubtensorChainId; + type BlockGasLimit = BlockGasLimit; + type Runner = pallet_evm::runner::stack::Runner; + type OnChargeTransaction = (); + type OnCreate = (); + type FindAuthor = FindAuthorTruncated; + type GasLimitPovSizeRatio = GasLimitPovSizeRatio; + type SuicideQuickClearLimit = SuicideQuickClearLimit; + type Timestamp = Timestamp; + type WeightInfo = pallet_evm::weights::SubstrateWeight; +} + +parameter_types! { + pub const PostBlockAndTxnHashes: PostLogContent = PostLogContent::BlockAndTxnHashes; +} + +impl pallet_ethereum::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type StateRoot = pallet_ethereum::IntermediateStateRoot; + type PostLogContent = PostBlockAndTxnHashes; + type ExtraDataLength = ConstU32<30>; +} + +parameter_types! { + pub BoundDivision: U256 = U256::from(1024); +} + +impl pallet_dynamic_fee::Config for Runtime { + type MinGasPriceBoundDivisor = BoundDivision; +} + +parameter_types! { + pub DefaultBaseFeePerGas: U256 = U256::from(1_000_000_000); + pub DefaultElasticity: Permill = Permill::from_parts(125_000); +} +pub struct BaseFeeThreshold; +impl pallet_base_fee::BaseFeeThreshold for BaseFeeThreshold { + fn lower() -> Permill { + Permill::zero() + } + fn ideal() -> Permill { + Permill::from_parts(500_000) + } + fn upper() -> Permill { + Permill::from_parts(1_000_000) + } +} +impl pallet_base_fee::Config for Runtime { + type RuntimeEvent = RuntimeEvent; + type Threshold = BaseFeeThreshold; + type DefaultBaseFeePerGas = DefaultBaseFeePerGas; + type DefaultElasticity = DefaultElasticity; +} + +#[derive(Clone)] +pub struct TransactionConverter; +impl fp_rpc::ConvertTransaction for TransactionConverter { + fn convert_transaction(&self, transaction: pallet_ethereum::Transaction) -> UncheckedExtrinsic { + UncheckedExtrinsic::new_unsigned( + pallet_ethereum::Call::::transact { transaction }.into(), + ) + } +} + +impl fp_rpc::ConvertTransaction for TransactionConverter { + fn convert_transaction( + &self, + transaction: pallet_ethereum::Transaction, + ) -> opaque::UncheckedExtrinsic { + let extrinsic = UncheckedExtrinsic::new_unsigned( + pallet_ethereum::Call::::transact { transaction }.into(), + ); + let encoded = extrinsic.encode(); + opaque::UncheckedExtrinsic::decode(&mut &encoded[..]) + .expect("Encoded extrinsic is always valid") + } +} + +impl fp_self_contained::SelfContainedCall for RuntimeCall { + type SignedInfo = H160; + + fn is_self_contained(&self) -> bool { + match self { + RuntimeCall::Ethereum(call) => call.is_self_contained(), + _ => false, + } + } + + fn check_self_contained(&self) -> Option> { + match self { + RuntimeCall::Ethereum(call) => call.check_self_contained(), + _ => None, + } + } + + fn validate_self_contained( + &self, + info: &Self::SignedInfo, + dispatch_info: &DispatchInfoOf, + len: usize, + ) -> Option { + match self { + RuntimeCall::Ethereum(call) => call.validate_self_contained(info, dispatch_info, len), + _ => None, + } + } + + fn pre_dispatch_self_contained( + &self, + info: &Self::SignedInfo, + dispatch_info: &DispatchInfoOf, + len: usize, + ) -> Option> { + match self { + RuntimeCall::Ethereum(call) => { + call.pre_dispatch_self_contained(info, dispatch_info, len) + } + _ => None, + } + } + + fn apply_self_contained( + self, + info: Self::SignedInfo, + ) -> Option>> { + match self { + call @ RuntimeCall::Ethereum(pallet_ethereum::Call::transact { .. }) => { + Some(call.dispatch(RuntimeOrigin::from( + pallet_ethereum::RawOrigin::EthereumTransaction(info), + ))) + } + _ => None, + } + } +} + // Create the runtime by composing the FRAME pallets that were previously configured. construct_runtime!( pub struct Runtime @@ -1064,6 +1271,13 @@ construct_runtime!( Commitments: pallet_commitments = 18, AdminUtils: pallet_admin_utils = 19, SafeMode: pallet_safe_mode = 20, + + // Frontier + Ethereum: pallet_ethereum = 21, + EVM: pallet_evm = 22, + EVMChainId: pallet_evm_chain_id = 23, + DynamicFee: pallet_dynamic_fee = 24, + BaseFee: pallet_base_fee = 25, } ); @@ -1095,7 +1309,12 @@ type Migrations = // Unchecked extrinsic type as expected by this runtime. pub type UncheckedExtrinsic = - generic::UncheckedExtrinsic; + fp_self_contained::UncheckedExtrinsic; + +/// Extrinsic type that has already been checked. +pub type CheckedExtrinsic = + fp_self_contained::CheckedExtrinsic; + // The payload being signed in transactions. pub type SignedPayload = generic::SignedPayload; // Executive: handles dispatch to the various modules. @@ -1308,6 +1527,256 @@ impl_runtime_apis! { } } + impl fp_rpc::EthereumRuntimeRPCApi for Runtime { + fn chain_id() -> u64 { + ::ChainId::get() + } + + fn account_basic(address: H160) -> EVMAccount { + let (account, _) = pallet_evm::Pallet::::account_basic(&address); + account + } + + fn gas_price() -> U256 { + let (gas_price, _) = ::FeeCalculator::min_gas_price(); + gas_price + } + + fn account_code_at(address: H160) -> Vec { + pallet_evm::AccountCodes::::get(address) + } + + fn author() -> H160 { + >::find_author() + } + + fn storage_at(address: H160, index: U256) -> H256 { + let mut tmp = [0u8; 32]; + index.to_big_endian(&mut tmp); + pallet_evm::AccountStorages::::get(address, H256::from_slice(&tmp[..])) + } + + fn call( + from: H160, + to: H160, + data: Vec, + value: U256, + gas_limit: U256, + max_fee_per_gas: Option, + max_priority_fee_per_gas: Option, + nonce: Option, + estimate: bool, + access_list: Option)>>, + ) -> Result { + use pallet_evm::GasWeightMapping as _; + + let config = if estimate { + let mut config = ::config().clone(); + config.estimate = true; + Some(config) + } else { + None + }; + + // Estimated encoded transaction size must be based on the heaviest transaction + // type (EIP1559Transaction) to be compatible with all transaction types. + let mut estimated_transaction_len = data.len() + + // pallet ethereum index: 1 + // transact call index: 1 + // Transaction enum variant: 1 + // chain_id 8 bytes + // nonce: 32 + // max_priority_fee_per_gas: 32 + // max_fee_per_gas: 32 + // gas_limit: 32 + // action: 21 (enum varianrt + call address) + // value: 32 + // access_list: 1 (empty vec size) + // 65 bytes signature + 258; + + if access_list.is_some() { + estimated_transaction_len += access_list.encoded_size(); + } + + + let gas_limit = if gas_limit > U256::from(u64::MAX) { + u64::MAX + } else { + gas_limit.low_u64() + }; + let without_base_extrinsic_weight = true; + + let (weight_limit, proof_size_base_cost) = + match ::GasWeightMapping::gas_to_weight( + gas_limit, + without_base_extrinsic_weight + ) { + weight_limit if weight_limit.proof_size() > 0 => { + (Some(weight_limit), Some(estimated_transaction_len as u64)) + } + _ => (None, None), + }; + + ::Runner::call( + from, + to, + data, + value, + gas_limit.unique_saturated_into(), + max_fee_per_gas, + max_priority_fee_per_gas, + nonce, + access_list.unwrap_or_default(), + false, + true, + weight_limit, + proof_size_base_cost, + config.as_ref().unwrap_or(::config()), + ).map_err(|err| err.error.into()) + } + + fn create( + from: H160, + data: Vec, + value: U256, + gas_limit: U256, + max_fee_per_gas: Option, + max_priority_fee_per_gas: Option, + nonce: Option, + estimate: bool, + access_list: Option)>>, + ) -> Result { + use pallet_evm::GasWeightMapping as _; + + let config = if estimate { + let mut config = ::config().clone(); + config.estimate = true; + Some(config) + } else { + None + }; + + + let mut estimated_transaction_len = data.len() + + // from: 20 + // value: 32 + // gas_limit: 32 + // nonce: 32 + // 1 byte transaction action variant + // chain id 8 bytes + // 65 bytes signature + 190; + + if max_fee_per_gas.is_some() { + estimated_transaction_len += 32; + } + if max_priority_fee_per_gas.is_some() { + estimated_transaction_len += 32; + } + if access_list.is_some() { + estimated_transaction_len += access_list.encoded_size(); + } + + + let gas_limit = if gas_limit > U256::from(u64::MAX) { + u64::MAX + } else { + gas_limit.low_u64() + }; + let without_base_extrinsic_weight = true; + + let (weight_limit, proof_size_base_cost) = + match ::GasWeightMapping::gas_to_weight( + gas_limit, + without_base_extrinsic_weight + ) { + weight_limit if weight_limit.proof_size() > 0 => { + (Some(weight_limit), Some(estimated_transaction_len as u64)) + } + _ => (None, None), + }; + + ::Runner::create( + from, + data, + value, + gas_limit.unique_saturated_into(), + max_fee_per_gas, + max_priority_fee_per_gas, + nonce, + access_list.unwrap_or_default(), + false, + true, + weight_limit, + proof_size_base_cost, + config.as_ref().unwrap_or(::config()), + ).map_err(|err| err.error.into()) + } + + fn current_transaction_statuses() -> Option> { + pallet_ethereum::CurrentTransactionStatuses::::get() + } + + fn current_block() -> Option { + pallet_ethereum::CurrentBlock::::get() + } + + fn current_receipts() -> Option> { + pallet_ethereum::CurrentReceipts::::get() + } + + fn current_all() -> ( + Option, + Option>, + Option> + ) { + ( + pallet_ethereum::CurrentBlock::::get(), + pallet_ethereum::CurrentReceipts::::get(), + pallet_ethereum::CurrentTransactionStatuses::::get() + ) + } + + fn extrinsic_filter( + xts: Vec<::Extrinsic>, + ) -> Vec { + xts.into_iter().filter_map(|xt| match xt.0.function { + RuntimeCall::Ethereum(transact { transaction }) => Some(transaction), + _ => None + }).collect::>() + } + + fn elasticity() -> Option { + Some(pallet_base_fee::Elasticity::::get()) + } + + fn gas_limit_multiplier_support() {} + + fn pending_block( + xts: Vec<::Extrinsic>, + ) -> (Option, Option>) { + for ext in xts.into_iter() { + let _ = Executive::apply_extrinsic(ext); + } + + Ethereum::on_finalize(System::block_number() + 1); + + ( + pallet_ethereum::CurrentBlock::::get(), + pallet_ethereum::CurrentTransactionStatuses::::get() + ) + } + } + + impl fp_rpc::ConvertTransactionRuntimeApi for Runtime { + fn convert_transaction(transaction: EthereumTransaction) -> ::Extrinsic { + UncheckedExtrinsic::new_unsigned( + pallet_ethereum::Call::::transact { transaction }.into(), + ) + } + } + #[cfg(feature = "runtime-benchmarks")] impl frame_benchmarking::Benchmark for Runtime { fn benchmark_metadata(extra: bool) -> ( diff --git a/runtime/src/precompiles/balance_transfer.rs b/runtime/src/precompiles/balance_transfer.rs new file mode 100644 index 000000000..9d2dbf36b --- /dev/null +++ b/runtime/src/precompiles/balance_transfer.rs @@ -0,0 +1,60 @@ +use sp_core::U256; +use pallet_evm::{ + ExitError, ExitSucceed, PrecompileFailure, PrecompileHandle, + PrecompileOutput, PrecompileResult +}; +use frame_system::RawOrigin; +use sp_std::vec; +use sp_runtime::traits::Dispatchable; + +use crate::{Runtime, RuntimeCall}; + +use crate::precompiles::{ bytes_to_account_id, get_method_id }; + +pub const BALANCE_TRANSFER_INDEX: u64 = 2048; + +pub struct BalanceTransferPrecompile; + +impl BalanceTransferPrecompile { + pub fn execute(handle: &mut impl PrecompileHandle) -> PrecompileResult { + let txdata = handle.input(); + + // Match method ID: keccak256("transfer(bytes32)") + let method: &[u8] = &txdata[0..4]; + if get_method_id("transfer(bytes32)") == method { + // Forward all received value to the destination address + let amount: U256 = handle.context().apparent_value; + + // This is hardcoded hashed address mapping of + // 0x0000000000000000000000000000000000000800 to ss58 public key + // i.e. the contract sends funds it received to the destination address + // from the method parameter + let address_bytes_src: [u8; 32] = [ + 0x07, 0xec, 0x71, 0x2a, 0x5d, 0x38, 0x43, 0x4d, + 0xdd, 0x03, 0x3f, 0x8f, 0x02, 0x4e, 0xcd, 0xfc, + 0x4b, 0xb5, 0x95, 0x1c, 0x13, 0xc3, 0x08, 0x5c, + 0x39, 0x9c, 0x8a, 0x5f, 0x62, 0x93, 0x70, 0x5d + ]; + let address_bytes_dst: &[u8] = &txdata[4..36]; + let account_id_src = bytes_to_account_id(&address_bytes_src)?; + let account_id_dst = bytes_to_account_id(&address_bytes_dst)?; + + let call = RuntimeCall::Balances(pallet_balances::Call::::transfer_allow_death { + dest: account_id_dst.into(), + value: amount.as_u64(), + }); + + let result = call.dispatch(RawOrigin::Signed(account_id_src).into()); + if let Err(_) = result { + return Err(PrecompileFailure::Error { + exit_status: ExitError::OutOfFund + }); + } + } + + Ok(PrecompileOutput { + exit_status: ExitSucceed::Returned, + output: vec![], + }) + } +} diff --git a/runtime/src/precompiles/mod.rs b/runtime/src/precompiles/mod.rs new file mode 100644 index 000000000..1cbf3707b --- /dev/null +++ b/runtime/src/precompiles/mod.rs @@ -0,0 +1,101 @@ +use core::marker::PhantomData; +use sp_core::{ + crypto::ByteArray, hashing::keccak_256, H160 +}; +use sp_runtime::AccountId32; + +use pallet_evm::{ + ExitError, IsPrecompileResult, Precompile, PrecompileHandle, PrecompileResult, PrecompileSet, + PrecompileFailure +}; +use pallet_evm_precompile_modexp::Modexp; +use pallet_evm_precompile_sha3fips::Sha3FIPS256; +use pallet_evm_precompile_simple::{ECRecover, ECRecoverPublicKey, Identity, Ripemd160, Sha256}; + +// Include custom precompiles +mod balance_transfer; + +use balance_transfer::*; + +pub struct FrontierPrecompiles(PhantomData); + +impl FrontierPrecompiles +where + R: pallet_evm::Config, +{ + pub fn new() -> Self { + Self(Default::default()) + } + pub fn used_addresses() -> [H160; 8] { + [ + hash(1), + hash(2), + hash(3), + hash(4), + hash(5), + hash(1024), + hash(1025), + hash(BALANCE_TRANSFER_INDEX) + ] + } +} +impl PrecompileSet for FrontierPrecompiles +where + R: pallet_evm::Config, +{ + fn execute(&self, handle: &mut impl PrecompileHandle) -> Option { + match handle.code_address() { + // Ethereum precompiles : + a if a == hash(1) => Some(ECRecover::execute(handle)), + a if a == hash(2) => Some(Sha256::execute(handle)), + a if a == hash(3) => Some(Ripemd160::execute(handle)), + a if a == hash(4) => Some(Identity::execute(handle)), + a if a == hash(5) => Some(Modexp::execute(handle)), + // Non-Frontier specific nor Ethereum precompiles : + a if a == hash(1024) => Some(Sha3FIPS256::execute(handle)), + a if a == hash(1025) => Some(ECRecoverPublicKey::execute(handle)), + a if a == hash(BALANCE_TRANSFER_INDEX) => Some(BalanceTransferPrecompile::execute(handle)), + _ => None, + } + } + + fn is_precompile(&self, address: H160, _gas: u64) -> IsPrecompileResult { + IsPrecompileResult::Answer { + is_precompile: Self::used_addresses().contains(&address), + extra_cost: 0, + } + } +} + +fn hash(a: u64) -> H160 { + H160::from_low_u64_be(a) +} + +/// Returns Ethereum method ID from an str method signature +/// +pub fn get_method_id(method_signature: &str) -> [u8; 4] { + // Calculate the full Keccak-256 hash of the method signature + let hash = keccak_256(method_signature.as_bytes()); + + // Extract the first 4 bytes to get the method ID + let method_id = [ + hash[0], + hash[1], + hash[2], + hash[3], + ]; + + method_id +} + +/// Convert bytes to AccountId32 with PrecompileFailure as Error +/// which consumes all gas +/// +pub fn bytes_to_account_id(account_id_bytes: &[u8]) -> Result { + AccountId32::from_slice(&account_id_bytes).map_err(|_| { + log::info!("Error parsing account id bytes {:?}", account_id_bytes); + PrecompileFailure::Error { + exit_status: ExitError::InvalidRange + } + }) +} diff --git a/runtime/src/precompiles/solidity/balanceTransfer.abi b/runtime/src/precompiles/solidity/balanceTransfer.abi new file mode 100644 index 000000000..99913b900 --- /dev/null +++ b/runtime/src/precompiles/solidity/balanceTransfer.abi @@ -0,0 +1,15 @@ +[ + { + "inputs": [ + { + "internalType": "bytes32", + "name": "data", + "type": "bytes32" + } + ], + "name": "transfer", + "outputs": [], + "stateMutability": "payable", + "type": "function" + } +] \ No newline at end of file diff --git a/runtime/src/precompiles/solidity/balanceTransfer.sol b/runtime/src/precompiles/solidity/balanceTransfer.sol new file mode 100644 index 000000000..42790b900 --- /dev/null +++ b/runtime/src/precompiles/solidity/balanceTransfer.sol @@ -0,0 +1,7 @@ +pragma solidity ^0.8.0; + +address constant ISUBTENSOR_BALANCE_TRANSFER_ADDRESS = 0x0000000000000000000000000000000000000800; + +interface ISubtensorBalanceTransfer { + function transfer(bytes32 data) external payable; +} \ No newline at end of file diff --git a/runtime/src/precompiles/solidity/staking.abi b/runtime/src/precompiles/solidity/staking.abi new file mode 100644 index 000000000..c470bec5c --- /dev/null +++ b/runtime/src/precompiles/solidity/staking.abi @@ -0,0 +1,33 @@ +[ + { + "inputs": [ + { + "internalType": "bytes32", + "name": "hotkey", + "type": "bytes32" + } + ], + "name": "addStake", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "hotkey", + "type": "bytes32" + }, + { + "internalType": "uint64", + "name": "amount", + "type": "uint64" + } + ], + "name": "removeStake", + "outputs": [], + "stateMutability": "payable", + "type": "function" + } +] \ No newline at end of file diff --git a/runtime/src/precompiles/solidity/staking.sol b/runtime/src/precompiles/solidity/staking.sol new file mode 100644 index 000000000..d806b08d0 --- /dev/null +++ b/runtime/src/precompiles/solidity/staking.sol @@ -0,0 +1,42 @@ +pragma solidity ^0.8.0; + +address constant ISTAKING_ADDRESS = 0x0000000000000000000000000000000000000801; + +interface IStaking { + /** + * @dev Adds a subtensor stake corresponding to the value sent with the transaction, associated + * with the `hotkey`. + * + * This function allows external accounts and contracts to stake TAO into the subtensor pallet, + * which effectively calls `add_stake` on the subtensor pallet with specified hotkey as a parameter + * and coldkey being the hashed address mapping of H160 sender address to Substrate ss58 address as + * implemented in Frontier HashedAddressMapping: + * https://github.com/polkadot-evm/frontier/blob/2e219e17a526125da003e64ef22ec037917083fa/frame/evm/src/lib.rs#L739 + * + * @param hotkey The hotkey public key (32 bytes). + * + * Requirements: + * - `hotkey` must be a valid hotkey registered on the network, ensuring that the stake is + * correctly attributed. + */ + function addStake(bytes32 hotkey) external payable; + + /** + * @dev Removes a subtensor stake `amount` from the specified `hotkey`. + * + * This function allows external accounts and contracts to unstake TAO from the subtensor pallet, + * which effectively calls `remove_stake` on the subtensor pallet with specified hotkey as a parameter + * and coldkey being the hashed address mapping of H160 sender address to Substrate ss58 address as + * implemented in Frontier HashedAddressMapping: + * https://github.com/polkadot-evm/frontier/blob/2e219e17a526125da003e64ef22ec037917083fa/frame/evm/src/lib.rs#L739 + * + * @param hotkey The hotkey public key (32 bytes). + * @param amount The amount to unstake in rao. + * + * Requirements: + * - `hotkey` must be a valid hotkey registered on the network, ensuring that the stake is + * correctly attributed. + * - The existing stake amount must be not lower than specified amount + */ + function removeStake(bytes32 hotkey, uint64 amount) external payable; +} \ No newline at end of file diff --git a/scripts/localnet-evm.sh b/scripts/localnet-evm.sh new file mode 100755 index 000000000..0e9c7ad34 --- /dev/null +++ b/scripts/localnet-evm.sh @@ -0,0 +1,75 @@ +#!/bin/bash + +# Determine the directory this script resides in. This allows invoking it from any location. +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" &>/dev/null && pwd)" + +# The base directory of the subtensor project +BASE_DIR="$SCRIPT_DIR/.." +CHAIN=local +BUILD_BINARY=1 +FEATURES="" + +SPEC_PATH="${SCRIPT_DIR}/specs/" +FULL_PATH="$SPEC_PATH$CHAIN.json" + +# Kill any existing nodes which may have not exited correctly after a previous +# run. +pkill -9 'node-subtensor' + +if [ ! -d "$SPEC_PATH" ]; then + echo "*** Creating directory ${SPEC_PATH}..." + mkdir $SPEC_PATH +fi + +if [[ $BUILD_BINARY == "1" ]]; then + echo "*** Building substrate binary..." + cargo build --workspace --profile=release --features "$FEATURES" --manifest-path "$BASE_DIR/Cargo.toml" + echo "*** Binary compiled" +fi + +echo "*** Building chainspec..." +"$BASE_DIR/target/release/node-subtensor" build-spec --disable-default-bootnode --raw --chain $CHAIN >$FULL_PATH +echo "*** Chainspec built and output to file" + +# generate node keys +$BASE_DIR/target/release/node-subtensor key generate-node-key --chain="$FULL_PATH" --base-path /tmp/alice +$BASE_DIR/target/release/node-subtensor key generate-node-key --chain="$FULL_PATH" --base-path /tmp/bob + +echo "*** Purging previous state..." +"$BASE_DIR/target/release/node-subtensor" purge-chain -y --base-path /tmp/bob --chain="$FULL_PATH" >/dev/null 2>&1 +"$BASE_DIR/target/release/node-subtensor" purge-chain -y --base-path /tmp/alice --chain="$FULL_PATH" >/dev/null 2>&1 +echo "*** Previous chainstate purged" + +echo "*** Starting localnet nodes..." +alice_start=( + "$BASE_DIR/target/release/node-subtensor" + --base-path /tmp/alice + --chain="$FULL_PATH" + --alice + --port 30334 + --rpc-port 9946 + --validator + --rpc-cors=all + --allow-private-ipv4 + --discover-local +) + +bob_start=( + "$BASE_DIR"/target/release/node-subtensor + --base-path /tmp/bob + --chain="$FULL_PATH" + --bob + --port 30335 + --rpc-port 9945 + --validator + --allow-private-ipv4 + --discover-local +) + +trap 'pkill -P $$' EXIT SIGINT SIGTERM + +( + ("${alice_start[@]}" 2>&1) & + ("${bob_start[@]}" 2>&1) + wait +) From dee91c057ad92cc20fd389c068733547b2ae7372 Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Wed, 28 Aug 2024 20:08:38 -0400 Subject: [PATCH 03/60] Format --- node/src/cli.rs | 22 +- node/src/command.rs | 196 ++--- node/src/ethereum.rs | 606 ++++++++-------- node/src/lib.rs | 4 +- node/src/main.rs | 2 +- node/src/rpc.rs | 200 +++--- node/src/service.rs | 619 ++++++++-------- runtime/src/lib.rs | 749 ++++++++++---------- runtime/src/precompiles/balance_transfer.rs | 31 +- runtime/src/precompiles/mod.rs | 105 ++- 10 files changed, 1257 insertions(+), 1277 deletions(-) diff --git a/node/src/cli.rs b/node/src/cli.rs index 3e81fdd07..d9744d44d 100644 --- a/node/src/cli.rs +++ b/node/src/cli.rs @@ -1,5 +1,5 @@ -use sc_cli::RunCmd; use crate::ethereum::EthConfiguration; +use sc_cli::RunCmd; #[derive(Debug, clap::Parser)] pub struct Cli { @@ -9,12 +9,12 @@ pub struct Cli { #[clap(flatten)] pub run: RunCmd, - /// Choose sealing method. - #[arg(long, value_enum, ignore_case = true)] - pub sealing: Option, + /// Choose sealing method. + #[arg(long, value_enum, ignore_case = true)] + pub sealing: Option, - #[command(flatten)] - pub eth: EthConfiguration, + #[command(flatten)] + pub eth: EthConfiguration, } #[allow(clippy::large_enum_variant)] @@ -57,9 +57,9 @@ pub enum Subcommand { /// Available Sealing methods. #[derive(Copy, Clone, Debug, Default, clap::ValueEnum)] pub enum Sealing { - /// Seal using rpc method. - #[default] - Manual, - /// Seal when transaction is executed. - Instant, + /// Seal using rpc method. + #[default] + Manual, + /// Seal when transaction is executed. + Instant, } diff --git a/node/src/command.rs b/node/src/command.rs index f83997480..f7d1156d9 100644 --- a/node/src/command.rs +++ b/node/src/command.rs @@ -1,7 +1,8 @@ use crate::{ chain_spec, cli::{Cli, Subcommand}, - ethereum::db_config_dir, service + ethereum::db_config_dir, + service, }; use fc_db::{kv::frontier_database_dir, DatabaseSource}; @@ -16,10 +17,10 @@ pub use sp_keyring::Sr25519Keyring; #[cfg(feature = "runtime-benchmarks")] use sp_runtime::traits::HashingFor; +use futures::TryFutureExt; use node_subtensor_runtime::Block; use sc_cli::SubstrateCli; use sc_service::Configuration; -use futures::TryFutureExt; impl SubstrateCli for Cli { fn impl_name() -> String { @@ -68,97 +69,97 @@ pub fn run() -> sc_cli::Result<()> { let runner = cli.create_runner(cmd)?; runner.sync_run(|config| cmd.run(config.chain_spec, config.network)) } - Some(Subcommand::CheckBlock(cmd)) => { - let runner = cli.create_runner(cmd)?; - runner.async_run(|mut config| { - let (client, _, import_queue, task_manager, _) = - service::new_chain_ops(&mut config, &cli.eth)?; - Ok((cmd.run(client, import_queue), task_manager)) - }) - } - Some(Subcommand::ExportBlocks(cmd)) => { - let runner = cli.create_runner(cmd)?; - runner.async_run(|mut config| { - let (client, _, _, task_manager, _) = - service::new_chain_ops(&mut config, &cli.eth)?; - Ok((cmd.run(client, config.database), task_manager)) - }) - } - Some(Subcommand::ExportState(cmd)) => { - let runner = cli.create_runner(cmd)?; - runner.async_run(|mut config| { - let (client, _, _, task_manager, _) = - service::new_chain_ops(&mut config, &cli.eth)?; - Ok((cmd.run(client, config.chain_spec), task_manager)) - }) - } - Some(Subcommand::ImportBlocks(cmd)) => { - let runner = cli.create_runner(cmd)?; - runner.async_run(|mut config| { - let (client, _, import_queue, task_manager, _) = - service::new_chain_ops(&mut config, &cli.eth)?; - Ok((cmd.run(client, import_queue), task_manager)) - }) - } + Some(Subcommand::CheckBlock(cmd)) => { + let runner = cli.create_runner(cmd)?; + runner.async_run(|mut config| { + let (client, _, import_queue, task_manager, _) = + service::new_chain_ops(&mut config, &cli.eth)?; + Ok((cmd.run(client, import_queue), task_manager)) + }) + } + Some(Subcommand::ExportBlocks(cmd)) => { + let runner = cli.create_runner(cmd)?; + runner.async_run(|mut config| { + let (client, _, _, task_manager, _) = + service::new_chain_ops(&mut config, &cli.eth)?; + Ok((cmd.run(client, config.database), task_manager)) + }) + } + Some(Subcommand::ExportState(cmd)) => { + let runner = cli.create_runner(cmd)?; + runner.async_run(|mut config| { + let (client, _, _, task_manager, _) = + service::new_chain_ops(&mut config, &cli.eth)?; + Ok((cmd.run(client, config.chain_spec), task_manager)) + }) + } + Some(Subcommand::ImportBlocks(cmd)) => { + let runner = cli.create_runner(cmd)?; + runner.async_run(|mut config| { + let (client, _, import_queue, task_manager, _) = + service::new_chain_ops(&mut config, &cli.eth)?; + Ok((cmd.run(client, import_queue), task_manager)) + }) + } Some(Subcommand::PurgeChain(cmd)) => { - let runner = cli.create_runner(cmd)?; - runner.sync_run(|config| { - // Remove Frontier offchain db - let db_config_dir = db_config_dir(&config); - match cli.eth.frontier_backend_type { - crate::ethereum::BackendType::KeyValue => { - let frontier_database_config = match config.database { - DatabaseSource::RocksDb { .. } => DatabaseSource::RocksDb { - path: frontier_database_dir(&db_config_dir, "db"), - cache_size: 0, - }, - DatabaseSource::ParityDb { .. } => DatabaseSource::ParityDb { - path: frontier_database_dir(&db_config_dir, "paritydb"), - }, - _ => { - return Err(format!( - "Cannot purge `{:?}` database", - config.database - ) - .into()) - } - }; - cmd.run(frontier_database_config)?; - } - crate::ethereum::BackendType::Sql => { - let db_path = db_config_dir.join("sql"); - match std::fs::remove_dir_all(&db_path) { - Ok(_) => { - println!("{:?} removed.", &db_path); - } - Err(ref err) if err.kind() == std::io::ErrorKind::NotFound => { - eprintln!("{:?} did not exist.", &db_path); - } - Err(err) => { - return Err(format!( - "Cannot purge `{:?}` database: {:?}", - db_path, err, - ) - .into()) - } - }; - } - }; - cmd.run(config.database) - }) + let runner = cli.create_runner(cmd)?; + runner.sync_run(|config| { + // Remove Frontier offchain db + let db_config_dir = db_config_dir(&config); + match cli.eth.frontier_backend_type { + crate::ethereum::BackendType::KeyValue => { + let frontier_database_config = match config.database { + DatabaseSource::RocksDb { .. } => DatabaseSource::RocksDb { + path: frontier_database_dir(&db_config_dir, "db"), + cache_size: 0, + }, + DatabaseSource::ParityDb { .. } => DatabaseSource::ParityDb { + path: frontier_database_dir(&db_config_dir, "paritydb"), + }, + _ => { + return Err(format!( + "Cannot purge `{:?}` database", + config.database + ) + .into()) + } + }; + cmd.run(frontier_database_config)?; + } + crate::ethereum::BackendType::Sql => { + let db_path = db_config_dir.join("sql"); + match std::fs::remove_dir_all(&db_path) { + Ok(_) => { + println!("{:?} removed.", &db_path); + } + Err(ref err) if err.kind() == std::io::ErrorKind::NotFound => { + eprintln!("{:?} did not exist.", &db_path); + } + Err(err) => { + return Err(format!( + "Cannot purge `{:?}` database: {:?}", + db_path, err, + ) + .into()) + } + }; + } + }; + cmd.run(config.database) + }) + } + Some(Subcommand::Revert(cmd)) => { + let runner = cli.create_runner(cmd)?; + runner.async_run(|mut config| { + let (client, backend, _, task_manager, _) = + service::new_chain_ops(&mut config, &cli.eth)?; + let aux_revert = Box::new(move |client, _, blocks| { + sc_consensus_grandpa::revert(client, blocks)?; + Ok(()) + }); + Ok((cmd.run(client, backend, Some(aux_revert)), task_manager)) + }) } - Some(Subcommand::Revert(cmd)) => { - let runner = cli.create_runner(cmd)?; - runner.async_run(|mut config| { - let (client, backend, _, task_manager, _) = - service::new_chain_ops(&mut config, &cli.eth)?; - let aux_revert = Box::new(move |client, _, blocks| { - sc_consensus_grandpa::revert(client, blocks)?; - Ok(()) - }); - Ok((cmd.run(client, backend, Some(aux_revert)), task_manager)) - }) - } #[cfg(feature = "runtime-benchmarks")] Some(Subcommand::Benchmark(cmd)) => { let runner = cli.create_runner(cmd)?; @@ -176,7 +177,9 @@ pub fn run() -> sc_cli::Result<()> { ); } - cmd.run_with_spec::, service::ExecutorDispatch>(Some(config.chain_spec)) + cmd.run_with_spec::, service::ExecutorDispatch>(Some( + config.chain_spec, + )) } BenchmarkCmd::Block(cmd) => { let PartialComponents { client, .. } = service::new_partial(&config)?; @@ -237,12 +240,9 @@ pub fn run() -> sc_cli::Result<()> { let runner = cli.create_runner(&cli.run)?; runner.run_node_until_exit(|config| async move { let config = override_default_heap_pages(config, 60_000); - service::new_full::( - config, - cli.eth, - cli.sealing - ).map_err(Into::into) - .await + service::new_full::(config, cli.eth, cli.sealing) + .map_err(Into::into) + .await }) } } diff --git a/node/src/ethereum.rs b/node/src/ethereum.rs index 163c68ff1..291a963ef 100644 --- a/node/src/ethereum.rs +++ b/node/src/ethereum.rs @@ -1,35 +1,38 @@ -use std::{collections::BTreeMap, sync::{Arc, Mutex}}; -use std::path::PathBuf; -use std::time::Duration; +use crate::rpc::EthDeps; +pub use fc_rpc::{EthConfig, EthTask}; +use fp_rpc::{ConvertTransaction, ConvertTransactionRuntimeApi, EthereumRuntimeRPCApi}; +use futures::future; +use futures::StreamExt; use jsonrpsee::RpcModule; +use sc_client_api::{ + backend::{Backend, StorageProvider}, + client::BlockchainEvents, + AuxStore, UsageProvider, +}; use sc_network_sync::SyncingService; use sc_rpc::SubscriptionTaskExecutor; use sc_service::{error::Error as ServiceError, Configuration, TaskManager}; -use futures::future; -pub use fc_rpc::{EthTask, EthConfig}; -use sc_client_api::{ - backend::{Backend, StorageProvider}, - client::BlockchainEvents, - AuxStore, UsageProvider, -}; -use futures::StreamExt; -use sp_consensus_aura::AuraApi; -use sp_core::H256; -use crate::rpc::EthDeps; -use sp_runtime::traits::Block as BlockT; +use sc_transaction_pool::ChainApi; +use sc_transaction_pool_api::TransactionPool; use sp_api::{CallApiAt, ProvideRuntimeApi}; -use sp_consensus_aura::sr25519::AuthorityId as AuraId; use sp_block_builder::BlockBuilder as BlockBuilderApi; -use fp_rpc::{ConvertTransaction, ConvertTransactionRuntimeApi, EthereumRuntimeRPCApi}; use sp_blockchain::{Error as BlockChainError, HeaderBackend, HeaderMetadata}; -use sc_transaction_pool::ChainApi; -use sc_transaction_pool_api::TransactionPool; +use sp_consensus_aura::sr25519::AuthorityId as AuraId; +use sp_consensus_aura::AuraApi; +use sp_core::H256; use sp_inherents::CreateInherentDataProviders; +use sp_runtime::traits::Block as BlockT; +use std::path::PathBuf; +use std::time::Duration; +use std::{ + collections::BTreeMap, + sync::{Arc, Mutex}, +}; -/// Frontier DB backend type. -pub use fc_storage::{StorageOverride, StorageOverrideHandler}; pub use fc_consensus::FrontierBlockImport; pub use fc_rpc_core::types::{FeeHistoryCache, FeeHistoryCacheLimit, FilterPool}; +/// Frontier DB backend type. +pub use fc_storage::{StorageOverride, StorageOverrideHandler}; use node_subtensor_runtime::opaque::Block; @@ -40,309 +43,310 @@ pub type FrontierBackend = fc_db::Backend; /// Avalailable frontier backend types. #[derive(Debug, Copy, Clone, Default, clap::ValueEnum)] pub enum BackendType { - /// Either RocksDb or ParityDb as per inherited from the global backend settings. - #[default] - KeyValue, - /// Sql database with custom log indexing. - Sql, + /// Either RocksDb or ParityDb as per inherited from the global backend settings. + #[default] + KeyValue, + /// Sql database with custom log indexing. + Sql, } /// The ethereum-compatibility configuration used to run a node. #[derive(Clone, Debug, clap::Parser)] pub struct EthConfiguration { - /// Maximum number of logs in a query. - #[arg(long, default_value = "10000")] - pub max_past_logs: u32, - - /// Maximum fee history cache size. - #[arg(long, default_value = "2048")] - pub fee_history_limit: u64, - - #[arg(long)] - pub enable_dev_signer: bool, - - /// The dynamic-fee pallet target gas price set by block author - #[arg(long, default_value = "1")] - pub target_gas_price: u64, - - /// Maximum allowed gas limit will be `block.gas_limit * execute_gas_limit_multiplier` - /// when using eth_call/eth_estimateGas. - #[arg(long, default_value = "10")] - pub execute_gas_limit_multiplier: u64, - - /// Size in bytes of the LRU cache for block data. - #[arg(long, default_value = "50")] - pub eth_log_block_cache: usize, - - /// Size in bytes of the LRU cache for transactions statuses data. - #[arg(long, default_value = "50")] - pub eth_statuses_cache: usize, - - /// Sets the frontier backend type (KeyValue or Sql) - #[arg(long, value_enum, ignore_case = true, default_value_t = BackendType::default())] - pub frontier_backend_type: BackendType, - - // Sets the SQL backend's pool size. - #[arg(long, default_value = "100")] - pub frontier_sql_backend_pool_size: u32, - - /// Sets the SQL backend's query timeout in number of VM ops. - #[arg(long, default_value = "10000000")] - pub frontier_sql_backend_num_ops_timeout: u32, - - /// Sets the SQL backend's auxiliary thread limit. - #[arg(long, default_value = "4")] - pub frontier_sql_backend_thread_count: u32, - - /// Sets the SQL backend's query timeout in number of VM ops. - /// Default value is 200MB. - #[arg(long, default_value = "209715200")] - pub frontier_sql_backend_cache_size: u64, + /// Maximum number of logs in a query. + #[arg(long, default_value = "10000")] + pub max_past_logs: u32, + + /// Maximum fee history cache size. + #[arg(long, default_value = "2048")] + pub fee_history_limit: u64, + + #[arg(long)] + pub enable_dev_signer: bool, + + /// The dynamic-fee pallet target gas price set by block author + #[arg(long, default_value = "1")] + pub target_gas_price: u64, + + /// Maximum allowed gas limit will be `block.gas_limit * execute_gas_limit_multiplier` + /// when using eth_call/eth_estimateGas. + #[arg(long, default_value = "10")] + pub execute_gas_limit_multiplier: u64, + + /// Size in bytes of the LRU cache for block data. + #[arg(long, default_value = "50")] + pub eth_log_block_cache: usize, + + /// Size in bytes of the LRU cache for transactions statuses data. + #[arg(long, default_value = "50")] + pub eth_statuses_cache: usize, + + /// Sets the frontier backend type (KeyValue or Sql) + #[arg(long, value_enum, ignore_case = true, default_value_t = BackendType::default())] + pub frontier_backend_type: BackendType, + + // Sets the SQL backend's pool size. + #[arg(long, default_value = "100")] + pub frontier_sql_backend_pool_size: u32, + + /// Sets the SQL backend's query timeout in number of VM ops. + #[arg(long, default_value = "10000000")] + pub frontier_sql_backend_num_ops_timeout: u32, + + /// Sets the SQL backend's auxiliary thread limit. + #[arg(long, default_value = "4")] + pub frontier_sql_backend_thread_count: u32, + + /// Sets the SQL backend's query timeout in number of VM ops. + /// Default value is 200MB. + #[arg(long, default_value = "209715200")] + pub frontier_sql_backend_cache_size: u64, } pub fn db_config_dir(config: &Configuration) -> PathBuf { - config.base_path.config_dir(config.chain_spec.id()) + config.base_path.config_dir(config.chain_spec.id()) } pub struct FrontierPartialComponents { - pub filter_pool: Option, - pub fee_history_cache: FeeHistoryCache, - pub fee_history_cache_limit: FeeHistoryCacheLimit, + pub filter_pool: Option, + pub fee_history_cache: FeeHistoryCache, + pub fee_history_cache_limit: FeeHistoryCacheLimit, } pub fn new_frontier_partial( - config: &EthConfiguration, + config: &EthConfiguration, ) -> Result { - Ok(FrontierPartialComponents { - filter_pool: Some(Arc::new(Mutex::new(BTreeMap::new()))), - fee_history_cache: Arc::new(Mutex::new(BTreeMap::new())), - fee_history_cache_limit: config.fee_history_limit, - }) + Ok(FrontierPartialComponents { + filter_pool: Some(Arc::new(Mutex::new(BTreeMap::new()))), + fee_history_cache: Arc::new(Mutex::new(BTreeMap::new())), + fee_history_cache_limit: config.fee_history_limit, + }) } pub async fn spawn_frontier_tasks( - task_manager: &TaskManager, - client: Arc, - backend: Arc, - frontier_backend: Arc>, - filter_pool: Option, - storage_override: Arc>, - fee_history_cache: FeeHistoryCache, - fee_history_cache_limit: FeeHistoryCacheLimit, - sync: Arc>, - pubsub_notification_sinks: Arc< - fc_mapping_sync::EthereumBlockNotificationSinks< - fc_mapping_sync::EthereumBlockNotification, - >, - >, -) // where - // RuntimeApi: ConstructRuntimeApi, - // RuntimeApi: Send + Sync + 'static, - // RuntimeApi::RuntimeApi: EthCompatRuntimeApiCollection, - // Executor: NativeExecutionDispatch + 'static, + task_manager: &TaskManager, + client: Arc, + backend: Arc, + frontier_backend: Arc>, + filter_pool: Option, + storage_override: Arc>, + fee_history_cache: FeeHistoryCache, + fee_history_cache_limit: FeeHistoryCacheLimit, + sync: Arc>, + pubsub_notification_sinks: Arc< + fc_mapping_sync::EthereumBlockNotificationSinks< + fc_mapping_sync::EthereumBlockNotification, + >, + >, +) +// where +// RuntimeApi: ConstructRuntimeApi, +// RuntimeApi: Send + Sync + 'static, +// RuntimeApi::RuntimeApi: EthCompatRuntimeApiCollection, +// Executor: NativeExecutionDispatch + 'static, { - // Spawn main mapping sync worker background task. - match &*frontier_backend { - fc_db::Backend::KeyValue(b) => { - task_manager.spawn_essential_handle().spawn( - "frontier-mapping-sync-worker", - Some("frontier"), - fc_mapping_sync::kv::MappingSyncWorker::new( - client.import_notification_stream(), - Duration::new(6, 0), - client.clone(), - backend, - storage_override.clone(), - b.clone(), - 3, - 0, - fc_mapping_sync::SyncStrategy::Normal, - sync, - pubsub_notification_sinks, - ) - .for_each(|()| future::ready(())), - ); - } - fc_db::Backend::Sql(b) => { - task_manager.spawn_essential_handle().spawn_blocking( - "frontier-mapping-sync-worker", - Some("frontier"), - fc_mapping_sync::sql::SyncWorker::run( - client.clone(), - backend, - b.clone(), - client.import_notification_stream(), - fc_mapping_sync::sql::SyncWorkerConfig { - read_notification_timeout: Duration::from_secs(30), - check_indexed_blocks_interval: Duration::from_secs(60), - }, - fc_mapping_sync::SyncStrategy::Parachain, - sync, - pubsub_notification_sinks, - ), - ); - } - } - - // Spawn Frontier EthFilterApi maintenance task. - if let Some(filter_pool) = filter_pool { - // Each filter is allowed to stay in the pool for 100 blocks. - const FILTER_RETAIN_THRESHOLD: u64 = 100; - task_manager.spawn_essential_handle().spawn( - "frontier-filter-pool", - Some("frontier"), - EthTask::filter_pool_task(client.clone(), filter_pool, FILTER_RETAIN_THRESHOLD), - ); - } - - // Spawn Frontier FeeHistory cache maintenance task. - task_manager.spawn_essential_handle().spawn( - "frontier-fee-history", - Some("frontier"), - EthTask::fee_history_task( - client, - storage_override, - fee_history_cache, - fee_history_cache_limit, - ), - ); + // Spawn main mapping sync worker background task. + match &*frontier_backend { + fc_db::Backend::KeyValue(b) => { + task_manager.spawn_essential_handle().spawn( + "frontier-mapping-sync-worker", + Some("frontier"), + fc_mapping_sync::kv::MappingSyncWorker::new( + client.import_notification_stream(), + Duration::new(6, 0), + client.clone(), + backend, + storage_override.clone(), + b.clone(), + 3, + 0, + fc_mapping_sync::SyncStrategy::Normal, + sync, + pubsub_notification_sinks, + ) + .for_each(|()| future::ready(())), + ); + } + fc_db::Backend::Sql(b) => { + task_manager.spawn_essential_handle().spawn_blocking( + "frontier-mapping-sync-worker", + Some("frontier"), + fc_mapping_sync::sql::SyncWorker::run( + client.clone(), + backend, + b.clone(), + client.import_notification_stream(), + fc_mapping_sync::sql::SyncWorkerConfig { + read_notification_timeout: Duration::from_secs(30), + check_indexed_blocks_interval: Duration::from_secs(60), + }, + fc_mapping_sync::SyncStrategy::Parachain, + sync, + pubsub_notification_sinks, + ), + ); + } + } + + // Spawn Frontier EthFilterApi maintenance task. + if let Some(filter_pool) = filter_pool { + // Each filter is allowed to stay in the pool for 100 blocks. + const FILTER_RETAIN_THRESHOLD: u64 = 100; + task_manager.spawn_essential_handle().spawn( + "frontier-filter-pool", + Some("frontier"), + EthTask::filter_pool_task(client.clone(), filter_pool, FILTER_RETAIN_THRESHOLD), + ); + } + + // Spawn Frontier FeeHistory cache maintenance task. + task_manager.spawn_essential_handle().spawn( + "frontier-fee-history", + Some("frontier"), + EthTask::fee_history_task( + client, + storage_override, + fee_history_cache, + fee_history_cache_limit, + ), + ); } /// Instantiate Ethereum-compatible RPC extensions. pub fn create_eth( - mut io: RpcModule<()>, - deps: EthDeps, - subscription_task_executor: SubscriptionTaskExecutor, - pubsub_notification_sinks: Arc< - fc_mapping_sync::EthereumBlockNotificationSinks< - fc_mapping_sync::EthereumBlockNotification, - >, - >, + mut io: RpcModule<()>, + deps: EthDeps, + subscription_task_executor: SubscriptionTaskExecutor, + pubsub_notification_sinks: Arc< + fc_mapping_sync::EthereumBlockNotificationSinks< + fc_mapping_sync::EthereumBlockNotification, + >, + >, ) -> Result, Box> where - B: BlockT, - C: CallApiAt + ProvideRuntimeApi, - C::Api: AuraApi - + BlockBuilderApi - + ConvertTransactionRuntimeApi - + EthereumRuntimeRPCApi, - C: HeaderBackend + HeaderMetadata, - C: BlockchainEvents + AuxStore + UsageProvider + StorageProvider + 'static, - BE: Backend + 'static, - P: TransactionPool + 'static, - A: ChainApi + 'static, - CT: ConvertTransaction<::Extrinsic> + Send + Sync + 'static, - CIDP: CreateInherentDataProviders + Send + 'static, - EC: EthConfig, + B: BlockT, + C: CallApiAt + ProvideRuntimeApi, + C::Api: AuraApi + + BlockBuilderApi + + ConvertTransactionRuntimeApi + + EthereumRuntimeRPCApi, + C: HeaderBackend + HeaderMetadata, + C: BlockchainEvents + AuxStore + UsageProvider + StorageProvider + 'static, + BE: Backend + 'static, + P: TransactionPool + 'static, + A: ChainApi + 'static, + CT: ConvertTransaction<::Extrinsic> + Send + Sync + 'static, + CIDP: CreateInherentDataProviders + Send + 'static, + EC: EthConfig, { - use fc_rpc::{ - pending::AuraConsensusDataProvider, Debug, DebugApiServer, Eth, EthApiServer, EthDevSigner, - EthFilter, EthFilterApiServer, EthPubSub, EthPubSubApiServer, EthSigner, Net, NetApiServer, - Web3, Web3ApiServer, - }; - #[cfg(feature = "txpool")] - use fc_rpc::{TxPool, TxPoolApiServer}; - - let EthDeps { - client, - pool, - graph, - converter, - is_authority, - enable_dev_signer, - network, - sync, - frontier_backend, - storage_override, - block_data_cache, - filter_pool, - max_past_logs, - fee_history_cache, - fee_history_cache_limit, - execute_gas_limit_multiplier, - forced_parent_hashes, - pending_create_inherent_data_providers, - } = deps; - - let mut signers = Vec::new(); - if enable_dev_signer { - signers.push(Box::new(EthDevSigner::new()) as Box); - } - - io.merge( - Eth::::new( - client.clone(), - pool.clone(), - graph.clone(), - converter, - sync.clone(), - signers, - storage_override.clone(), - frontier_backend.clone(), - is_authority, - block_data_cache.clone(), - fee_history_cache, - fee_history_cache_limit, - execute_gas_limit_multiplier, - forced_parent_hashes, - pending_create_inherent_data_providers, - Some(Box::new(AuraConsensusDataProvider::new(client.clone()))), - ) - .replace_config::() - .into_rpc(), - )?; - - if let Some(filter_pool) = filter_pool { - io.merge( - EthFilter::new( - client.clone(), - frontier_backend.clone(), - graph.clone(), - filter_pool, - 500_usize, // max stored filters - max_past_logs, - block_data_cache.clone(), - ) - .into_rpc(), - )?; - } - - io.merge( - EthPubSub::new( - pool, - client.clone(), - sync, - subscription_task_executor, - storage_override.clone(), - pubsub_notification_sinks, - ) - .into_rpc(), - )?; - - io.merge( - Net::new( - client.clone(), - network, - // Whether to format the `peer_count` response as Hex (default) or not. - true, - ) - .into_rpc(), - )?; - - io.merge(Web3::new(client.clone()).into_rpc())?; - - io.merge( - Debug::new( - client.clone(), - frontier_backend, - storage_override, - block_data_cache, - ) - .into_rpc(), - )?; - - #[cfg(feature = "txpool")] - io.merge(TxPool::new(client, graph).into_rpc())?; - - Ok(io) -} \ No newline at end of file + use fc_rpc::{ + pending::AuraConsensusDataProvider, Debug, DebugApiServer, Eth, EthApiServer, EthDevSigner, + EthFilter, EthFilterApiServer, EthPubSub, EthPubSubApiServer, EthSigner, Net, NetApiServer, + Web3, Web3ApiServer, + }; + #[cfg(feature = "txpool")] + use fc_rpc::{TxPool, TxPoolApiServer}; + + let EthDeps { + client, + pool, + graph, + converter, + is_authority, + enable_dev_signer, + network, + sync, + frontier_backend, + storage_override, + block_data_cache, + filter_pool, + max_past_logs, + fee_history_cache, + fee_history_cache_limit, + execute_gas_limit_multiplier, + forced_parent_hashes, + pending_create_inherent_data_providers, + } = deps; + + let mut signers = Vec::new(); + if enable_dev_signer { + signers.push(Box::new(EthDevSigner::new()) as Box); + } + + io.merge( + Eth::::new( + client.clone(), + pool.clone(), + graph.clone(), + converter, + sync.clone(), + signers, + storage_override.clone(), + frontier_backend.clone(), + is_authority, + block_data_cache.clone(), + fee_history_cache, + fee_history_cache_limit, + execute_gas_limit_multiplier, + forced_parent_hashes, + pending_create_inherent_data_providers, + Some(Box::new(AuraConsensusDataProvider::new(client.clone()))), + ) + .replace_config::() + .into_rpc(), + )?; + + if let Some(filter_pool) = filter_pool { + io.merge( + EthFilter::new( + client.clone(), + frontier_backend.clone(), + graph.clone(), + filter_pool, + 500_usize, // max stored filters + max_past_logs, + block_data_cache.clone(), + ) + .into_rpc(), + )?; + } + + io.merge( + EthPubSub::new( + pool, + client.clone(), + sync, + subscription_task_executor, + storage_override.clone(), + pubsub_notification_sinks, + ) + .into_rpc(), + )?; + + io.merge( + Net::new( + client.clone(), + network, + // Whether to format the `peer_count` response as Hex (default) or not. + true, + ) + .into_rpc(), + )?; + + io.merge(Web3::new(client.clone()).into_rpc())?; + + io.merge( + Debug::new( + client.clone(), + frontier_backend, + storage_override, + block_data_cache, + ) + .into_rpc(), + )?; + + #[cfg(feature = "txpool")] + io.merge(TxPool::new(client, graph).into_rpc())?; + + Ok(io) +} diff --git a/node/src/lib.rs b/node/src/lib.rs index 3e0f3a11a..b7d7a5640 100644 --- a/node/src/lib.rs +++ b/node/src/lib.rs @@ -1,5 +1,5 @@ pub mod chain_spec; +pub mod cli; +pub mod ethereum; pub mod rpc; pub mod service; -pub mod ethereum; -pub mod cli; \ No newline at end of file diff --git a/node/src/main.rs b/node/src/main.rs index 00db180da..c0243fd92 100644 --- a/node/src/main.rs +++ b/node/src/main.rs @@ -8,8 +8,8 @@ mod service; mod benchmarking; mod cli; mod command; -mod rpc; mod ethereum; +mod rpc; fn main() -> sc_cli::Result<()> { command::run() diff --git a/node/src/rpc.rs b/node/src/rpc.rs index 885418132..95ec5bd53 100644 --- a/node/src/rpc.rs +++ b/node/src/rpc.rs @@ -10,85 +10,85 @@ use std::{collections::BTreeMap, sync::Arc}; use fp_rpc::{ConvertTransactionRuntimeApi, EthereumRuntimeRPCApi}; use futures::channel::mpsc; +use crate::ethereum::create_eth; +pub use fc_rpc::{EthBlockDataCacheTask, EthConfig}; +pub use fc_rpc_core::types::{FeeHistoryCache, FeeHistoryCacheLimit, FilterPool}; +use fc_storage::StorageOverride; use jsonrpsee::RpcModule; use node_subtensor_runtime::{opaque::Block, AccountId, Balance, Hash, Nonce}; +use sc_client_api::{ + backend::{Backend, StorageProvider}, + client::BlockchainEvents, + AuxStore, UsageProvider, +}; use sc_consensus_manual_seal::EngineCommand; use sc_network::service::traits::NetworkService; use sc_network_sync::SyncingService; +use sc_rpc::SubscriptionTaskExecutor; +pub use sc_rpc_api::DenyUnsafe; +use sc_transaction_pool::{ChainApi, Pool}; use sc_transaction_pool_api::TransactionPool; use sp_api::{CallApiAt, ProvideRuntimeApi}; use sp_block_builder::BlockBuilder; use sp_blockchain::{Error as BlockChainError, HeaderBackend, HeaderMetadata}; -use sp_runtime::traits::Block as BlockT; -use sc_transaction_pool::{ChainApi, Pool}; -use fc_storage::StorageOverride; -pub use fc_rpc::{EthBlockDataCacheTask, EthConfig}; -pub use fc_rpc_core::types::{FeeHistoryCache, FeeHistoryCacheLimit, FilterPool}; +use sp_consensus_aura::sr25519::AuthorityId as AuraId; +use sp_consensus_aura::AuraApi; use sp_core::H256; use sp_inherents::CreateInherentDataProviders; -use sc_rpc::SubscriptionTaskExecutor; -pub use sc_rpc_api::DenyUnsafe; -use sc_client_api::{ - backend::{Backend, StorageProvider}, - client::BlockchainEvents, - AuxStore, UsageProvider, -}; -use sp_consensus_aura::AuraApi; -use sp_consensus_aura::sr25519::AuthorityId as AuraId; -use crate::ethereum::create_eth; +use sp_runtime::traits::Block as BlockT; /// Extra dependencies for Ethereum compatibility. pub struct EthDeps { - /// The client instance to use. - pub client: Arc, - /// Transaction pool instance. - pub pool: Arc

, - /// Graph pool instance. - pub graph: Arc>, - /// Ethereum transaction converter. - pub converter: Option, - /// The Node authority flag - pub is_authority: bool, - /// Whether to enable dev signer - pub enable_dev_signer: bool, - /// Network service - pub network: Arc, - /// Chain syncing service - pub sync: Arc>, - /// Frontier Backend. - pub frontier_backend: Arc>, - /// Ethereum data access overrides. - pub storage_override: Arc>, - /// Cache for Ethereum block data. - pub block_data_cache: Arc>, - /// EthFilterApi pool. - pub filter_pool: Option, - /// Maximum number of logs in a query. - pub max_past_logs: u32, - /// Fee history cache. - pub fee_history_cache: FeeHistoryCache, - /// Maximum fee history cache size. - pub fee_history_cache_limit: FeeHistoryCacheLimit, - /// Maximum allowed gas limit will be ` block.gas_limit * execute_gas_limit_multiplier` when - /// using eth_call/eth_estimateGas. - pub execute_gas_limit_multiplier: u64, - /// Mandated parent hashes for a given block hash. - pub forced_parent_hashes: Option>, - /// Something that can create the inherent data providers for pending state - pub pending_create_inherent_data_providers: CIDP, + /// The client instance to use. + pub client: Arc, + /// Transaction pool instance. + pub pool: Arc

, + /// Graph pool instance. + pub graph: Arc>, + /// Ethereum transaction converter. + pub converter: Option, + /// The Node authority flag + pub is_authority: bool, + /// Whether to enable dev signer + pub enable_dev_signer: bool, + /// Network service + pub network: Arc, + /// Chain syncing service + pub sync: Arc>, + /// Frontier Backend. + pub frontier_backend: Arc>, + /// Ethereum data access overrides. + pub storage_override: Arc>, + /// Cache for Ethereum block data. + pub block_data_cache: Arc>, + /// EthFilterApi pool. + pub filter_pool: Option, + /// Maximum number of logs in a query. + pub max_past_logs: u32, + /// Fee history cache. + pub fee_history_cache: FeeHistoryCache, + /// Maximum fee history cache size. + pub fee_history_cache_limit: FeeHistoryCacheLimit, + /// Maximum allowed gas limit will be ` block.gas_limit * execute_gas_limit_multiplier` when + /// using eth_call/eth_estimateGas. + pub execute_gas_limit_multiplier: u64, + /// Mandated parent hashes for a given block hash. + pub forced_parent_hashes: Option>, + /// Something that can create the inherent data providers for pending state + pub pending_create_inherent_data_providers: CIDP, } -/// Default Eth RPC configuration +/// Default Eth RPC configuration pub struct DefaultEthConfig(std::marker::PhantomData<(C, BE)>); impl EthConfig for DefaultEthConfig where - C: StorageProvider + Sync + Send + 'static, - BE: Backend + 'static, + C: StorageProvider + Sync + Send + 'static, + BE: Backend + 'static, { - type EstimateGasAdapter = (); - type RuntimeStorageOverride = - fc_rpc::frontier_backend_client::SystemAccountId20StorageOverride; + type EstimateGasAdapter = (); + type RuntimeStorageOverride = + fc_rpc::frontier_backend_client::SystemAccountId20StorageOverride; } /// Full client dependencies. @@ -99,10 +99,10 @@ pub struct FullDeps { pub pool: Arc

, /// Whether to deny unsafe calls pub deny_unsafe: DenyUnsafe, - /// Manual seal command sink - pub command_sink: Option>>, - /// Ethereum-compatibility specific dependencies. - pub eth: EthDeps, + /// Manual seal command sink + pub command_sink: Option>>, + /// Ethereum-compatibility specific dependencies. + pub eth: EthDeps, } /// Instantiate all full RPC extensions. @@ -116,27 +116,27 @@ pub fn create_full( >, ) -> Result, Box> where - C: CallApiAt + ProvideRuntimeApi, - C::Api: BlockBuilder, - C::Api: AuraApi, - C::Api: substrate_frame_rpc_system::AccountNonceApi, - C::Api: pallet_transaction_payment_rpc::TransactionPaymentRuntimeApi, - C::Api: ConvertTransactionRuntimeApi, - C::Api: EthereumRuntimeRPCApi, - C::Api: subtensor_custom_rpc_runtime_api::DelegateInfoRuntimeApi, - C::Api: subtensor_custom_rpc_runtime_api::NeuronInfoRuntimeApi, - C::Api: subtensor_custom_rpc_runtime_api::SubnetInfoRuntimeApi, - C::Api: subtensor_custom_rpc_runtime_api::SubnetRegistrationRuntimeApi, - C: HeaderBackend + HeaderMetadata + 'static, - C: BlockchainEvents + AuxStore + UsageProvider + StorageProvider, - BE: Backend + 'static, - P: TransactionPool + 'static, - A: ChainApi + 'static, - CIDP: CreateInherentDataProviders + Send + 'static, - CT: fp_rpc::ConvertTransaction<::Extrinsic> + Send + Sync + 'static, + C: CallApiAt + ProvideRuntimeApi, + C::Api: BlockBuilder, + C::Api: AuraApi, + C::Api: substrate_frame_rpc_system::AccountNonceApi, + C::Api: pallet_transaction_payment_rpc::TransactionPaymentRuntimeApi, + C::Api: ConvertTransactionRuntimeApi, + C::Api: EthereumRuntimeRPCApi, + C::Api: subtensor_custom_rpc_runtime_api::DelegateInfoRuntimeApi, + C::Api: subtensor_custom_rpc_runtime_api::NeuronInfoRuntimeApi, + C::Api: subtensor_custom_rpc_runtime_api::SubnetInfoRuntimeApi, + C::Api: subtensor_custom_rpc_runtime_api::SubnetRegistrationRuntimeApi, + C: HeaderBackend + HeaderMetadata + 'static, + C: BlockchainEvents + AuxStore + UsageProvider + StorageProvider, + BE: Backend + 'static, + P: TransactionPool + 'static, + A: ChainApi + 'static, + CIDP: CreateInherentDataProviders + Send + 'static, + CT: fp_rpc::ConvertTransaction<::Extrinsic> + Send + Sync + 'static, { use pallet_transaction_payment_rpc::{TransactionPayment, TransactionPaymentApiServer}; - use sc_consensus_manual_seal::rpc::{ManualSeal, ManualSealApiServer}; + use sc_consensus_manual_seal::rpc::{ManualSeal, ManualSealApiServer}; use substrate_frame_rpc_system::{System, SystemApiServer}; use subtensor_custom_rpc::{SubtensorCustom, SubtensorCustomApiServer}; @@ -145,9 +145,9 @@ where client, pool, deny_unsafe, - command_sink, - eth, - } = deps; + command_sink, + eth, + } = deps; // Custom RPC methods for Paratensor module.merge(SubtensorCustom::new(client.clone()).into_rpc())?; @@ -160,21 +160,21 @@ where // to call into the runtime. // `module.merge(YourRpcTrait::into_rpc(YourRpcStruct::new(ReferenceToClient, ...)))?;` - if let Some(command_sink) = command_sink { - module.merge( - // We provide the rpc handler with the sending end of the channel to allow the rpc - // send EngineCommands to the background block authorship task. - ManualSeal::new(command_sink).into_rpc(), - )?; - } - - // Ethereum compatibility RPCs - let module = create_eth::<_, _, _, _, _, _, _, DefaultEthConfig>( - module, - eth, - subscription_task_executor, - pubsub_notification_sinks, - )?; - + if let Some(command_sink) = command_sink { + module.merge( + // We provide the rpc handler with the sending end of the channel to allow the rpc + // send EngineCommands to the background block authorship task. + ManualSeal::new(command_sink).into_rpc(), + )?; + } + + // Ethereum compatibility RPCs + let module = create_eth::<_, _, _, _, _, _, _, DefaultEthConfig>( + module, + eth, + subscription_task_executor, + pubsub_notification_sinks, + )?; + Ok(module) } diff --git a/node/src/service.rs b/node/src/service.rs index beadbf6aa..f8d321155 100644 --- a/node/src/service.rs +++ b/node/src/service.rs @@ -1,29 +1,30 @@ //! Service and ServiceFactory implementation. Specialized wrapper over substrate service. +use crate::cli::Sealing; +use crate::ethereum::{ + db_config_dir, new_frontier_partial, spawn_frontier_tasks, BackendType, EthConfiguration, + FrontierBackend, FrontierBlockImport, FrontierPartialComponents, StorageOverride, + StorageOverrideHandler, +}; use futures::{channel::mpsc, future, FutureExt}; -use node_subtensor_runtime::{Hash, opaque::Block, RuntimeApi, TransactionConverter}; +use node_subtensor_runtime::{opaque::Block, Hash, RuntimeApi, TransactionConverter}; use sc_client_api::{Backend, BlockBackend}; -use sc_consensus_aura::{SlotProportion, StartAuraParams}; use sc_consensus::BasicQueue; +use sc_consensus_aura::{SlotProportion, StartAuraParams}; use sc_consensus_grandpa::SharedVoterState; use sc_consensus_slots::BackoffAuthoringOnFinalizedHeadLagging; use sc_executor::sp_wasm_interface::{Function, HostFunctionRegistry, HostFunctions}; pub use sc_executor::NativeElseWasmExecutor; -use sc_service::{error::Error as ServiceError, Configuration, TaskManager, PartialComponents}; use sc_network_sync::strategy::warp::{WarpSyncParams, WarpSyncProvider}; +use sc_service::{error::Error as ServiceError, Configuration, PartialComponents, TaskManager}; use sc_telemetry::{log, Telemetry, TelemetryHandle, TelemetryWorker}; +use sc_transaction_pool::FullPool; use sc_transaction_pool_api::OffchainTransactionPoolFactory; use sp_consensus_aura::sr25519::AuthorityPair as AuraPair; -use std::{sync::Arc, time::Duration}; use sp_core::U256; use std::{cell::RefCell, path::Path}; -use sc_transaction_pool::FullPool; +use std::{sync::Arc, time::Duration}; use substrate_prometheus_endpoint::Registry; -use crate::ethereum::{ - FrontierBackend, StorageOverride, StorageOverrideHandler, EthConfiguration, FrontierBlockImport, BackendType, db_config_dir, - FrontierPartialComponents, new_frontier_partial, spawn_frontier_tasks -}; -use crate::cli::Sealing; /// The minimum period of blocks on which justifications will be /// imported and generated. @@ -31,7 +32,7 @@ const GRANDPA_JUSTIFICATION_PERIOD: u32 = 512; type BasicImportQueue = sc_consensus::DefaultImportQueue; type GrandpaBlockImport = - sc_consensus_grandpa::GrandpaBlockImport; + sc_consensus_grandpa::GrandpaBlockImport; // Our native executor instance. pub struct ExecutorDispatch; @@ -76,7 +77,7 @@ type BoxBlockImport = sc_consensus::BoxBlockImport; pub fn new_partial( config: &Configuration, eth_config: &EthConfiguration, - build_import_queue: BIQ, + build_import_queue: BIQ, ) -> Result< sc_service::PartialComponents< FullClient, @@ -150,44 +151,44 @@ where telemetry.as_ref().map(|x| x.handle()), )?; - let (import_queue, block_import) = build_import_queue( - client.clone(), - config, - eth_config, - &task_manager, - telemetry.as_ref().map(|x| x.handle()), - grandpa_block_import, - )?; + let (import_queue, block_import) = build_import_queue( + client.clone(), + config, + eth_config, + &task_manager, + telemetry.as_ref().map(|x| x.handle()), + grandpa_block_import, + )?; let storage_override = Arc::new(StorageOverrideHandler::new(client.clone())); - let frontier_backend = match eth_config.frontier_backend_type { - BackendType::KeyValue => FrontierBackend::KeyValue(Arc::new(fc_db::kv::Backend::open( - Arc::clone(&client), - &config.database, - &db_config_dir(config), - )?)), - BackendType::Sql => { - let db_path = db_config_dir(config).join("sql"); - std::fs::create_dir_all(&db_path).expect("failed creating sql db directory"); - let backend = futures::executor::block_on(fc_db::sql::Backend::new( - fc_db::sql::BackendConfig::Sqlite(fc_db::sql::SqliteBackendConfig { - path: Path::new("sqlite:///") - .join(db_path) - .join("frontier.db3") - .to_str() - .unwrap(), - create_if_missing: true, - thread_count: eth_config.frontier_sql_backend_thread_count, - cache_size: eth_config.frontier_sql_backend_cache_size, - }), - eth_config.frontier_sql_backend_pool_size, - std::num::NonZeroU32::new(eth_config.frontier_sql_backend_num_ops_timeout), - storage_override.clone(), - )) - .unwrap_or_else(|err| panic!("failed creating sql backend: {:?}", err)); - FrontierBackend::Sql(Arc::new(backend)) - } - }; + let frontier_backend = match eth_config.frontier_backend_type { + BackendType::KeyValue => FrontierBackend::KeyValue(Arc::new(fc_db::kv::Backend::open( + Arc::clone(&client), + &config.database, + &db_config_dir(config), + )?)), + BackendType::Sql => { + let db_path = db_config_dir(config).join("sql"); + std::fs::create_dir_all(&db_path).expect("failed creating sql db directory"); + let backend = futures::executor::block_on(fc_db::sql::Backend::new( + fc_db::sql::BackendConfig::Sqlite(fc_db::sql::SqliteBackendConfig { + path: Path::new("sqlite:///") + .join(db_path) + .join("frontier.db3") + .to_str() + .unwrap(), + create_if_missing: true, + thread_count: eth_config.frontier_sql_backend_thread_count, + cache_size: eth_config.frontier_sql_backend_cache_size, + }), + eth_config.frontier_sql_backend_pool_size, + std::num::NonZeroU32::new(eth_config.frontier_sql_backend_num_ops_timeout), + storage_override.clone(), + )) + .unwrap_or_else(|err| panic!("failed creating sql backend: {:?}", err)); + FrontierBackend::Sql(Arc::new(backend)) + } + }; Ok(sc_service::PartialComponents { client, @@ -209,74 +210,72 @@ where /// Build the import queue for the template runtime (aura + grandpa). pub fn build_aura_grandpa_import_queue( - client: Arc, - config: &Configuration, - eth_config: &EthConfiguration, - task_manager: &TaskManager, - telemetry: Option, - grandpa_block_import: GrandpaBlockImport, -) -> Result<(BasicImportQueue, BoxBlockImport), ServiceError> -{ - let frontier_block_import = - FrontierBlockImport::new(grandpa_block_import.clone(), client.clone()); - - let slot_duration = sc_consensus_aura::slot_duration(&*client)?; - let target_gas_price = eth_config.target_gas_price; - let create_inherent_data_providers = move |_, ()| async move { - let timestamp = sp_timestamp::InherentDataProvider::from_system_time(); - let slot = - sp_consensus_aura::inherents::InherentDataProvider::from_timestamp_and_slot_duration( - *timestamp, - slot_duration, - ); - let dynamic_fee = fp_dynamic_fee::InherentDataProvider(U256::from(target_gas_price)); - Ok((slot, timestamp, dynamic_fee)) - }; - - let import_queue = sc_consensus_aura::import_queue::( - sc_consensus_aura::ImportQueueParams { - block_import: frontier_block_import.clone(), - justification_import: Some(Box::new(grandpa_block_import)), - client, - create_inherent_data_providers, - spawner: &task_manager.spawn_essential_handle(), - registry: config.prometheus_registry(), - check_for_equivocation: Default::default(), - telemetry, - compatibility_mode: sc_consensus_aura::CompatibilityMode::None, - }, - ) - .map_err::(Into::into)?; - - Ok((import_queue, Box::new(frontier_block_import))) + client: Arc, + config: &Configuration, + eth_config: &EthConfiguration, + task_manager: &TaskManager, + telemetry: Option, + grandpa_block_import: GrandpaBlockImport, +) -> Result<(BasicImportQueue, BoxBlockImport), ServiceError> { + let frontier_block_import = + FrontierBlockImport::new(grandpa_block_import.clone(), client.clone()); + + let slot_duration = sc_consensus_aura::slot_duration(&*client)?; + let target_gas_price = eth_config.target_gas_price; + let create_inherent_data_providers = move |_, ()| async move { + let timestamp = sp_timestamp::InherentDataProvider::from_system_time(); + let slot = + sp_consensus_aura::inherents::InherentDataProvider::from_timestamp_and_slot_duration( + *timestamp, + slot_duration, + ); + let dynamic_fee = fp_dynamic_fee::InherentDataProvider(U256::from(target_gas_price)); + Ok((slot, timestamp, dynamic_fee)) + }; + + let import_queue = sc_consensus_aura::import_queue::( + sc_consensus_aura::ImportQueueParams { + block_import: frontier_block_import.clone(), + justification_import: Some(Box::new(grandpa_block_import)), + client, + create_inherent_data_providers, + spawner: &task_manager.spawn_essential_handle(), + registry: config.prometheus_registry(), + check_for_equivocation: Default::default(), + telemetry, + compatibility_mode: sc_consensus_aura::CompatibilityMode::None, + }, + ) + .map_err::(Into::into)?; + + Ok((import_queue, Box::new(frontier_block_import))) } /// Build the import queue for the template runtime (manual seal). pub fn build_manual_seal_import_queue( - client: Arc, - config: &Configuration, - _eth_config: &EthConfiguration, - task_manager: &TaskManager, - _telemetry: Option, - _grandpa_block_import: GrandpaBlockImport, -) -> Result<(BasicImportQueue, BoxBlockImport), ServiceError> -{ - let frontier_block_import = FrontierBlockImport::new(client.clone(), client); - Ok(( - sc_consensus_manual_seal::import_queue( - Box::new(frontier_block_import.clone()), - &task_manager.spawn_essential_handle(), - config.prometheus_registry(), - ), - Box::new(frontier_block_import), - )) + client: Arc, + config: &Configuration, + _eth_config: &EthConfiguration, + task_manager: &TaskManager, + _telemetry: Option, + _grandpa_block_import: GrandpaBlockImport, +) -> Result<(BasicImportQueue, BoxBlockImport), ServiceError> { + let frontier_block_import = FrontierBlockImport::new(client.clone(), client); + Ok(( + sc_consensus_manual_seal::import_queue( + Box::new(frontier_block_import.clone()), + &task_manager.spawn_essential_handle(), + config.prometheus_registry(), + ), + Box::new(frontier_block_import), + )) } // Builds a new service for a full client. pub async fn new_full< - N: sc_network::NetworkBackend::Hash>, + N: sc_network::NetworkBackend::Hash>, >( - mut config: Configuration, + mut config: Configuration, eth_config: EthConfiguration, sealing: Option, ) -> Result { @@ -294,29 +293,23 @@ pub async fn new_full< keystore_container, select_chain, transaction_pool, - other: ( - block_import, - grandpa_link, - mut telemetry, - frontier_backend, - storage_override, - ), + other: (block_import, grandpa_link, mut telemetry, frontier_backend, storage_override), } = new_partial(&config, ð_config, build_import_queue)?; let FrontierPartialComponents { - filter_pool, - fee_history_cache, - fee_history_cache_limit, + filter_pool, + fee_history_cache, + fee_history_cache_limit, } = new_frontier_partial(ð_config)?; let mut net_config = sc_network::config::FullNetworkConfiguration::< - Block, - ::Hash, - N, + Block, + ::Hash, + N, >::new(&config.network); let metrics = N::register_notification_metrics(config.prometheus_registry()); let peer_store_handle = net_config.peer_store_handle(); - + let grandpa_protocol_name = sc_consensus_grandpa::protocol_standard_name( &client .block_hash(0) @@ -334,16 +327,16 @@ pub async fn new_full< ); let warp_sync_params = if sealing.is_some() { - None + None } else { - net_config.add_notification_protocol(grandpa_protocol_config); - let warp_sync: Arc> = - Arc::new(sc_consensus_grandpa::warp_proof::NetworkProvider::new( - backend.clone(), - grandpa_link.shared_authority_set().clone(), - Vec::default(), - )); - Some(WarpSyncParams::WithProvider(warp_sync)) + net_config.add_notification_protocol(grandpa_protocol_config); + let warp_sync: Arc> = + Arc::new(sc_consensus_grandpa::warp_proof::NetworkProvider::new( + backend.clone(), + grandpa_link.shared_authority_set().clone(), + Vec::default(), + )); + Some(WarpSyncParams::WithProvider(warp_sync)) }; let (network, system_rpc_tx, tx_handler_controller, network_starter, sync_service) = @@ -392,58 +385,58 @@ pub async fn new_full< let prometheus_registry = config.prometheus_registry().cloned(); let frontier_backend = Arc::new(frontier_backend); - // Channel for the rpc handler to communicate with the authorship task. - let (command_sink, commands_stream) = mpsc::channel(1000); + // Channel for the rpc handler to communicate with the authorship task. + let (command_sink, commands_stream) = mpsc::channel(1000); - // Sinks for pubsub notifications. - // Everytime a new subscription is created, a new mpsc channel is added to the sink pool. - // The MappingSyncWorker sends through the channel on block import and the subscription emits a notification to the subscriber on receiving a message through this channel. - // This way we avoid race conditions when using native substrate block import notification stream. - let pubsub_notification_sinks: fc_mapping_sync::EthereumBlockNotificationSinks< - fc_mapping_sync::EthereumBlockNotification, - > = Default::default(); - let pubsub_notification_sinks = Arc::new(pubsub_notification_sinks); + // Sinks for pubsub notifications. + // Everytime a new subscription is created, a new mpsc channel is added to the sink pool. + // The MappingSyncWorker sends through the channel on block import and the subscription emits a notification to the subscriber on receiving a message through this channel. + // This way we avoid race conditions when using native substrate block import notification stream. + let pubsub_notification_sinks: fc_mapping_sync::EthereumBlockNotificationSinks< + fc_mapping_sync::EthereumBlockNotification, + > = Default::default(); + let pubsub_notification_sinks = Arc::new(pubsub_notification_sinks); - // for ethereum-compatibility rpc. - config.rpc_id_provider = Some(Box::new(fc_rpc::EthereumSubIdProvider)); + // for ethereum-compatibility rpc. + config.rpc_id_provider = Some(Box::new(fc_rpc::EthereumSubIdProvider)); let rpc_extensions_builder = { let client = client.clone(); let pool = transaction_pool.clone(); - let network = network.clone(); - let sync_service = sync_service.clone(); - - let is_authority = role.is_authority(); - let enable_dev_signer = eth_config.enable_dev_signer; - let max_past_logs = eth_config.max_past_logs; - let execute_gas_limit_multiplier = eth_config.execute_gas_limit_multiplier; - let filter_pool = filter_pool.clone(); - let frontier_backend = frontier_backend.clone(); - let pubsub_notification_sinks = pubsub_notification_sinks.clone(); - let storage_override = storage_override.clone(); - let fee_history_cache = fee_history_cache.clone(); - let block_data_cache = Arc::new(fc_rpc::EthBlockDataCacheTask::new( - task_manager.spawn_handle(), - storage_override.clone(), - eth_config.eth_log_block_cache, - eth_config.eth_statuses_cache, - prometheus_registry.clone(), - )); - - let slot_duration = sc_consensus_aura::slot_duration(&*client)?; - let target_gas_price = eth_config.target_gas_price; - let pending_create_inherent_data_providers = move |_, ()| async move { - let current = sp_timestamp::InherentDataProvider::from_system_time(); - let next_slot = current.timestamp().as_millis() + slot_duration.as_millis(); - let timestamp = sp_timestamp::InherentDataProvider::new(next_slot.into()); - let slot = sp_consensus_aura::inherents::InherentDataProvider::from_timestamp_and_slot_duration( + let network = network.clone(); + let sync_service = sync_service.clone(); + + let is_authority = role.is_authority(); + let enable_dev_signer = eth_config.enable_dev_signer; + let max_past_logs = eth_config.max_past_logs; + let execute_gas_limit_multiplier = eth_config.execute_gas_limit_multiplier; + let filter_pool = filter_pool.clone(); + let frontier_backend = frontier_backend.clone(); + let pubsub_notification_sinks = pubsub_notification_sinks.clone(); + let storage_override = storage_override.clone(); + let fee_history_cache = fee_history_cache.clone(); + let block_data_cache = Arc::new(fc_rpc::EthBlockDataCacheTask::new( + task_manager.spawn_handle(), + storage_override.clone(), + eth_config.eth_log_block_cache, + eth_config.eth_statuses_cache, + prometheus_registry.clone(), + )); + + let slot_duration = sc_consensus_aura::slot_duration(&*client)?; + let target_gas_price = eth_config.target_gas_price; + let pending_create_inherent_data_providers = move |_, ()| async move { + let current = sp_timestamp::InherentDataProvider::from_system_time(); + let next_slot = current.timestamp().as_millis() + slot_duration.as_millis(); + let timestamp = sp_timestamp::InherentDataProvider::new(next_slot.into()); + let slot = sp_consensus_aura::inherents::InherentDataProvider::from_timestamp_and_slot_duration( *timestamp, slot_duration, ); - let dynamic_fee = fp_dynamic_fee::InherentDataProvider(U256::from(target_gas_price)); - Ok((slot, timestamp, dynamic_fee)) - }; + let dynamic_fee = fp_dynamic_fee::InherentDataProvider(U256::from(target_gas_price)); + Ok((slot, timestamp, dynamic_fee)) + }; Box::new( move |deny_unsafe, subscription_executor: sc_rpc::SubscriptionTaskExecutor| { @@ -486,7 +479,8 @@ pub async fn new_full< deps, subscription_executor, pubsub_notification_sinks.clone(), - ).map_err(Into::into) + ) + .map_err(Into::into) }, ) }; @@ -506,40 +500,40 @@ pub async fn new_full< telemetry: telemetry.as_mut(), })?; - spawn_frontier_tasks( - &task_manager, - client.clone(), - backend, - frontier_backend, - filter_pool, - storage_override, - fee_history_cache, - fee_history_cache_limit, - sync_service.clone(), - pubsub_notification_sinks, - ) - .await; + spawn_frontier_tasks( + &task_manager, + client.clone(), + backend, + frontier_backend, + filter_pool, + storage_override, + fee_history_cache, + fee_history_cache_limit, + sync_service.clone(), + pubsub_notification_sinks, + ) + .await; if role.is_authority() { - // manual-seal authorship - if let Some(sealing) = sealing { - run_manual_seal_authorship( - ð_config, - sealing, - client, - transaction_pool, - select_chain, - block_import, - &task_manager, - prometheus_registry.as_ref(), - telemetry.as_ref(), - commands_stream, - )?; - - network_starter.start_network(); - log::info!("Manual Seal Ready"); - return Ok(task_manager); - } + // manual-seal authorship + if let Some(sealing) = sealing { + run_manual_seal_authorship( + ð_config, + sealing, + client, + transaction_pool, + select_chain, + block_import, + &task_manager, + prometheus_registry.as_ref(), + telemetry.as_ref(), + commands_stream, + )?; + + network_starter.start_network(); + log::info!("Manual Seal Ready"); + return Ok(task_manager); + } let proposer_factory = sc_basic_authorship::ProposerFactory::new( task_manager.spawn_handle(), @@ -642,119 +636,114 @@ pub async fn new_full< } pub fn new_chain_ops( - config: &mut Configuration, - eth_config: &EthConfiguration, + config: &mut Configuration, + eth_config: &EthConfiguration, ) -> Result< - ( - Arc, - Arc, - BasicQueue, - TaskManager, - FrontierBackend, - ), - ServiceError, + ( + Arc, + Arc, + BasicQueue, + TaskManager, + FrontierBackend, + ), + ServiceError, > { - config.keystore = sc_service::config::KeystoreConfig::InMemory; - let PartialComponents { - client, - backend, - import_queue, - task_manager, - other, - .. - } = new_partial::<_>( - config, - eth_config, - build_aura_grandpa_import_queue, - )?; - Ok((client, backend, import_queue, task_manager, other.3)) + config.keystore = sc_service::config::KeystoreConfig::InMemory; + let PartialComponents { + client, + backend, + import_queue, + task_manager, + other, + .. + } = new_partial::<_>(config, eth_config, build_aura_grandpa_import_queue)?; + Ok((client, backend, import_queue, task_manager, other.3)) } fn run_manual_seal_authorship( - eth_config: &EthConfiguration, - sealing: Sealing, - client: Arc, - transaction_pool: Arc>, - select_chain: FullSelectChain, - block_import: BoxBlockImport, - task_manager: &TaskManager, - prometheus_registry: Option<&Registry>, - telemetry: Option<&Telemetry>, - commands_stream: mpsc::Receiver>, -) -> Result<(), ServiceError> -{ - let proposer_factory = sc_basic_authorship::ProposerFactory::new( - task_manager.spawn_handle(), - client.clone(), - transaction_pool.clone(), - prometheus_registry, - telemetry.as_ref().map(|x| x.handle()), - ); - - thread_local!(static TIMESTAMP: RefCell = const { RefCell::new(0) }); - - /// Provide a mock duration starting at 0 in millisecond for timestamp inherent. - /// Each call will increment timestamp by slot_duration making Aura think time has passed. - struct MockTimestampInherentDataProvider; - - #[async_trait::async_trait] - impl sp_inherents::InherentDataProvider for MockTimestampInherentDataProvider { - async fn provide_inherent_data( - &self, - inherent_data: &mut sp_inherents::InherentData, - ) -> Result<(), sp_inherents::Error> { - TIMESTAMP.with(|x| { - *x.borrow_mut() += node_subtensor_runtime::SLOT_DURATION; - inherent_data.put_data(sp_timestamp::INHERENT_IDENTIFIER, &*x.borrow()) - }) - } - - async fn try_handle_error( - &self, - _identifier: &sp_inherents::InherentIdentifier, - _error: &[u8], - ) -> Option> { - // The pallet never reports error. - None - } - } - - let target_gas_price = eth_config.target_gas_price; - let create_inherent_data_providers = move |_, ()| async move { - let timestamp = MockTimestampInherentDataProvider; - let dynamic_fee = fp_dynamic_fee::InherentDataProvider(U256::from(target_gas_price)); - Ok((timestamp, dynamic_fee)) - }; - - let manual_seal = match sealing { - Sealing::Manual => future::Either::Left(sc_consensus_manual_seal::run_manual_seal( - sc_consensus_manual_seal::ManualSealParams { - block_import, - env: proposer_factory, - client, - pool: transaction_pool, - commands_stream, - select_chain, - consensus_data_provider: None, - create_inherent_data_providers, - }, - )), - Sealing::Instant => future::Either::Right(sc_consensus_manual_seal::run_instant_seal( - sc_consensus_manual_seal::InstantSealParams { - block_import, - env: proposer_factory, - client, - pool: transaction_pool, - select_chain, - consensus_data_provider: None, - create_inherent_data_providers, - }, - )), - }; - - // we spawn the future on a background thread managed by service. - task_manager - .spawn_essential_handle() - .spawn_blocking("manual-seal", None, manual_seal); - Ok(()) + eth_config: &EthConfiguration, + sealing: Sealing, + client: Arc, + transaction_pool: Arc>, + select_chain: FullSelectChain, + block_import: BoxBlockImport, + task_manager: &TaskManager, + prometheus_registry: Option<&Registry>, + telemetry: Option<&Telemetry>, + commands_stream: mpsc::Receiver>, +) -> Result<(), ServiceError> { + let proposer_factory = sc_basic_authorship::ProposerFactory::new( + task_manager.spawn_handle(), + client.clone(), + transaction_pool.clone(), + prometheus_registry, + telemetry.as_ref().map(|x| x.handle()), + ); + + thread_local!(static TIMESTAMP: RefCell = const { RefCell::new(0) }); + + /// Provide a mock duration starting at 0 in millisecond for timestamp inherent. + /// Each call will increment timestamp by slot_duration making Aura think time has passed. + struct MockTimestampInherentDataProvider; + + #[async_trait::async_trait] + impl sp_inherents::InherentDataProvider for MockTimestampInherentDataProvider { + async fn provide_inherent_data( + &self, + inherent_data: &mut sp_inherents::InherentData, + ) -> Result<(), sp_inherents::Error> { + TIMESTAMP.with(|x| { + *x.borrow_mut() += node_subtensor_runtime::SLOT_DURATION; + inherent_data.put_data(sp_timestamp::INHERENT_IDENTIFIER, &*x.borrow()) + }) + } + + async fn try_handle_error( + &self, + _identifier: &sp_inherents::InherentIdentifier, + _error: &[u8], + ) -> Option> { + // The pallet never reports error. + None + } + } + + let target_gas_price = eth_config.target_gas_price; + let create_inherent_data_providers = move |_, ()| async move { + let timestamp = MockTimestampInherentDataProvider; + let dynamic_fee = fp_dynamic_fee::InherentDataProvider(U256::from(target_gas_price)); + Ok((timestamp, dynamic_fee)) + }; + + let manual_seal = match sealing { + Sealing::Manual => future::Either::Left(sc_consensus_manual_seal::run_manual_seal( + sc_consensus_manual_seal::ManualSealParams { + block_import, + env: proposer_factory, + client, + pool: transaction_pool, + commands_stream, + select_chain, + consensus_data_provider: None, + create_inherent_data_providers, + }, + )), + Sealing::Instant => future::Either::Right(sc_consensus_manual_seal::run_instant_seal( + sc_consensus_manual_seal::InstantSealParams { + block_import, + env: proposer_factory, + client, + pool: transaction_pool, + select_chain, + consensus_data_provider: None, + create_inherent_data_providers, + }, + )), + }; + + // we spawn the future on a background thread managed by service. + task_manager + .spawn_essential_handle() + .spawn_blocking("manual-seal", None, manual_seal); + Ok(()) } diff --git a/runtime/src/lib.rs b/runtime/src/lib.rs index 56c527c8b..aa2701c83 100644 --- a/runtime/src/lib.rs +++ b/runtime/src/lib.rs @@ -12,16 +12,18 @@ pub mod check_nonce; mod migrations; use codec::{Decode, Encode, MaxEncodedLen}; +use frame_support::traits::Imbalance; use frame_support::{ dispatch::DispatchResultWithPostInfo, genesis_builder_helper::{build_state, get_preset}, pallet_prelude::Get, traits::{ - fungible::{Imbalance as FungibleImbalance, IncreaseIssuance, DecreaseIssuance, HoldConsideration}, - Contains, LinearStoragePrice, OnUnbalanced + fungible::{ + DecreaseIssuance, HoldConsideration, Imbalance as FungibleImbalance, IncreaseIssuance, + }, + Contains, LinearStoragePrice, OnUnbalanced, }, }; -use frame_support::traits::Imbalance; use frame_system::{EnsureNever, EnsureRoot, EnsureRootWithSuccess, RawOrigin}; use pallet_commitments::CanCommit; use pallet_grandpa::{ @@ -33,17 +35,17 @@ use smallvec::smallvec; use sp_api::impl_runtime_apis; use sp_consensus_aura::sr25519::AuthorityId as AuraId; use sp_core::{ - crypto::{ByteArray, KeyTypeId}, - H160, H256, U256, OpaqueMetadata + crypto::{ByteArray, KeyTypeId}, + OpaqueMetadata, H160, H256, U256, }; use sp_runtime::{ create_runtime_str, generic, impl_opaque_keys, traits::{ - BlakeTwo256, Block as BlockT, IdentifyAccount, NumberFor, One, Verify, DispatchInfoOf, PostDispatchInfoOf, Dispatchable, - UniqueSaturatedInto, AccountIdLookup + AccountIdLookup, BlakeTwo256, Block as BlockT, DispatchInfoOf, Dispatchable, + IdentifyAccount, NumberFor, One, PostDispatchInfoOf, UniqueSaturatedInto, Verify, }, transaction_validity::{TransactionSource, TransactionValidity, TransactionValidityError}, - ApplyExtrinsicResult, MultiSignature, ConsensusEngineId, AccountId32 + AccountId32, ApplyExtrinsicResult, ConsensusEngineId, MultiSignature, }; use sp_std::cmp::Ordering; use sp_std::prelude::*; @@ -51,13 +53,12 @@ use sp_std::prelude::*; use sp_version::NativeVersion; use sp_version::RuntimeVersion; - // A few exports that help ease life for downstream crates. pub use frame_support::{ construct_runtime, parameter_types, traits::{ - ConstBool, ConstU128, ConstU32, ConstU64, ConstU8, FindAuthor, InstanceFilter, KeyOwnerProofSystem, - PrivilegeCmp, Randomness, StorageInfo, OnFinalize, OnTimestampSet + ConstBool, ConstU128, ConstU32, ConstU64, ConstU8, FindAuthor, InstanceFilter, + KeyOwnerProofSystem, OnFinalize, OnTimestampSet, PrivilegeCmp, Randomness, StorageInfo, }, weights::{ constants::{ @@ -71,7 +72,7 @@ pub use frame_support::{ pub use frame_system::Call as SystemCall; pub use pallet_balances::Call as BalancesCall; pub use pallet_timestamp::Call as TimestampCall; -use pallet_transaction_payment::{ConstFeeMultiplier, Multiplier, FungibleAdapter}; +use pallet_transaction_payment::{ConstFeeMultiplier, FungibleAdapter, Multiplier}; #[cfg(any(feature = "std", test))] pub use sp_runtime::BuildStorage; pub use sp_runtime::{Perbill, Permill}; @@ -85,9 +86,7 @@ use precompiles::FrontierPrecompiles; use fp_evm::weight_per_gas; use fp_rpc::TransactionStatus; use pallet_ethereum::{Call::transact, PostLogContent, Transaction as EthereumTransaction}; -use pallet_evm::{ - Account as EVMAccount, FeeCalculator, Runner -}; +use pallet_evm::{Account as EVMAccount, FeeCalculator, Runner}; // Subtensor module pub use pallet_scheduler; @@ -429,18 +428,22 @@ parameter_types! { /// Deduct the transaction fee from the Subtensor Pallet TotalIssuance when dropping the transaction /// fee. pub struct TransactionFeeHandler; -impl OnUnbalanced< - FungibleImbalance< - u64, - DecreaseIssuance>, - IncreaseIssuance> - > -> for TransactionFeeHandler { - fn on_nonzero_unbalanced(credit: FungibleImbalance< - u64, - DecreaseIssuance>, - IncreaseIssuance> - >) { +impl + OnUnbalanced< + FungibleImbalance< + u64, + DecreaseIssuance>, + IncreaseIssuance>, + >, + > for TransactionFeeHandler +{ + fn on_nonzero_unbalanced( + credit: FungibleImbalance< + u64, + DecreaseIssuance>, + IncreaseIssuance>, + >, + ) { let ti_before = pallet_subtensor::TotalIssuance::::get(); pallet_subtensor::TotalIssuance::::put(ti_before.saturating_sub(credit.peek())); drop(credit); @@ -643,17 +646,7 @@ parameter_types! { } #[derive( - Copy, - Clone, - Eq, - PartialEq, - Ord, - PartialOrd, - Encode, - Decode, - Debug, - MaxEncodedLen, - TypeInfo, + Copy, Clone, Eq, PartialEq, Ord, PartialOrd, Encode, Decode, Debug, MaxEncodedLen, TypeInfo, )] pub enum ProxyType { Any, @@ -1074,118 +1067,118 @@ impl pallet_evm_chain_id::Config for Runtime {} pub struct FindAuthorTruncated(PhantomData); impl> FindAuthor for FindAuthorTruncated { - fn find_author<'a, I>(digests: I) -> Option - where - I: 'a + IntoIterator, - { - if let Some(author_index) = F::find_author(digests) { - let authority_id = - pallet_aura::Authorities::::get()[author_index as usize].clone(); - return Some(H160::from_slice(&authority_id.to_raw_vec()[4..24])); - } - None - } + fn find_author<'a, I>(digests: I) -> Option + where + I: 'a + IntoIterator, + { + if let Some(author_index) = F::find_author(digests) { + let authority_id = + pallet_aura::Authorities::::get()[author_index as usize].clone(); + return Some(H160::from_slice(&authority_id.to_raw_vec()[4..24])); + } + None + } } const BLOCK_GAS_LIMIT: u64 = 75_000_000; const MAX_POV_SIZE: u64 = 5 * 1024 * 1024; parameter_types! { - pub BlockGasLimit: U256 = U256::from(BLOCK_GAS_LIMIT); - pub const GasLimitPovSizeRatio: u64 = BLOCK_GAS_LIMIT.saturating_div(MAX_POV_SIZE); - pub PrecompilesValue: FrontierPrecompiles = FrontierPrecompiles::<_>::new(); - pub WeightPerGas: Weight = Weight::from_parts(weight_per_gas(BLOCK_GAS_LIMIT, NORMAL_DISPATCH_RATIO, MILLISECS_PER_BLOCK), 0); - pub SuicideQuickClearLimit: u32 = 0; + pub BlockGasLimit: U256 = U256::from(BLOCK_GAS_LIMIT); + pub const GasLimitPovSizeRatio: u64 = BLOCK_GAS_LIMIT.saturating_div(MAX_POV_SIZE); + pub PrecompilesValue: FrontierPrecompiles = FrontierPrecompiles::<_>::new(); + pub WeightPerGas: Weight = Weight::from_parts(weight_per_gas(BLOCK_GAS_LIMIT, NORMAL_DISPATCH_RATIO, MILLISECS_PER_BLOCK), 0); + pub SuicideQuickClearLimit: u32 = 0; } impl pallet_evm::Config for Runtime { - type FeeCalculator = BaseFee; - type GasWeightMapping = pallet_evm::FixedGasWeightMapping; - type WeightPerGas = WeightPerGas; - type BlockHashMapping = pallet_ethereum::EthereumBlockHashMapping; - type CallOrigin = pallet_evm::EnsureAddressTruncated; - type WithdrawOrigin = pallet_evm::EnsureAddressTruncated; - type AddressMapping = pallet_evm::HashedAddressMapping; - type Currency = Balances; - type RuntimeEvent = RuntimeEvent; - type PrecompilesType = FrontierPrecompiles; - type PrecompilesValue = PrecompilesValue; - type ChainId = SubtensorChainId; - type BlockGasLimit = BlockGasLimit; - type Runner = pallet_evm::runner::stack::Runner; - type OnChargeTransaction = (); - type OnCreate = (); - type FindAuthor = FindAuthorTruncated; - type GasLimitPovSizeRatio = GasLimitPovSizeRatio; - type SuicideQuickClearLimit = SuicideQuickClearLimit; - type Timestamp = Timestamp; - type WeightInfo = pallet_evm::weights::SubstrateWeight; + type FeeCalculator = BaseFee; + type GasWeightMapping = pallet_evm::FixedGasWeightMapping; + type WeightPerGas = WeightPerGas; + type BlockHashMapping = pallet_ethereum::EthereumBlockHashMapping; + type CallOrigin = pallet_evm::EnsureAddressTruncated; + type WithdrawOrigin = pallet_evm::EnsureAddressTruncated; + type AddressMapping = pallet_evm::HashedAddressMapping; + type Currency = Balances; + type RuntimeEvent = RuntimeEvent; + type PrecompilesType = FrontierPrecompiles; + type PrecompilesValue = PrecompilesValue; + type ChainId = SubtensorChainId; + type BlockGasLimit = BlockGasLimit; + type Runner = pallet_evm::runner::stack::Runner; + type OnChargeTransaction = (); + type OnCreate = (); + type FindAuthor = FindAuthorTruncated; + type GasLimitPovSizeRatio = GasLimitPovSizeRatio; + type SuicideQuickClearLimit = SuicideQuickClearLimit; + type Timestamp = Timestamp; + type WeightInfo = pallet_evm::weights::SubstrateWeight; } parameter_types! { - pub const PostBlockAndTxnHashes: PostLogContent = PostLogContent::BlockAndTxnHashes; + pub const PostBlockAndTxnHashes: PostLogContent = PostLogContent::BlockAndTxnHashes; } impl pallet_ethereum::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - type StateRoot = pallet_ethereum::IntermediateStateRoot; - type PostLogContent = PostBlockAndTxnHashes; - type ExtraDataLength = ConstU32<30>; + type RuntimeEvent = RuntimeEvent; + type StateRoot = pallet_ethereum::IntermediateStateRoot; + type PostLogContent = PostBlockAndTxnHashes; + type ExtraDataLength = ConstU32<30>; } parameter_types! { - pub BoundDivision: U256 = U256::from(1024); + pub BoundDivision: U256 = U256::from(1024); } impl pallet_dynamic_fee::Config for Runtime { - type MinGasPriceBoundDivisor = BoundDivision; + type MinGasPriceBoundDivisor = BoundDivision; } parameter_types! { - pub DefaultBaseFeePerGas: U256 = U256::from(1_000_000_000); - pub DefaultElasticity: Permill = Permill::from_parts(125_000); + pub DefaultBaseFeePerGas: U256 = U256::from(1_000_000_000); + pub DefaultElasticity: Permill = Permill::from_parts(125_000); } pub struct BaseFeeThreshold; impl pallet_base_fee::BaseFeeThreshold for BaseFeeThreshold { - fn lower() -> Permill { - Permill::zero() - } - fn ideal() -> Permill { - Permill::from_parts(500_000) - } - fn upper() -> Permill { - Permill::from_parts(1_000_000) - } + fn lower() -> Permill { + Permill::zero() + } + fn ideal() -> Permill { + Permill::from_parts(500_000) + } + fn upper() -> Permill { + Permill::from_parts(1_000_000) + } } impl pallet_base_fee::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - type Threshold = BaseFeeThreshold; - type DefaultBaseFeePerGas = DefaultBaseFeePerGas; - type DefaultElasticity = DefaultElasticity; + type RuntimeEvent = RuntimeEvent; + type Threshold = BaseFeeThreshold; + type DefaultBaseFeePerGas = DefaultBaseFeePerGas; + type DefaultElasticity = DefaultElasticity; } #[derive(Clone)] pub struct TransactionConverter; impl fp_rpc::ConvertTransaction for TransactionConverter { - fn convert_transaction(&self, transaction: pallet_ethereum::Transaction) -> UncheckedExtrinsic { - UncheckedExtrinsic::new_unsigned( - pallet_ethereum::Call::::transact { transaction }.into(), - ) - } + fn convert_transaction(&self, transaction: pallet_ethereum::Transaction) -> UncheckedExtrinsic { + UncheckedExtrinsic::new_unsigned( + pallet_ethereum::Call::::transact { transaction }.into(), + ) + } } impl fp_rpc::ConvertTransaction for TransactionConverter { - fn convert_transaction( - &self, - transaction: pallet_ethereum::Transaction, - ) -> opaque::UncheckedExtrinsic { - let extrinsic = UncheckedExtrinsic::new_unsigned( - pallet_ethereum::Call::::transact { transaction }.into(), - ); - let encoded = extrinsic.encode(); - opaque::UncheckedExtrinsic::decode(&mut &encoded[..]) - .expect("Encoded extrinsic is always valid") - } + fn convert_transaction( + &self, + transaction: pallet_ethereum::Transaction, + ) -> opaque::UncheckedExtrinsic { + let extrinsic = UncheckedExtrinsic::new_unsigned( + pallet_ethereum::Call::::transact { transaction }.into(), + ); + let encoded = extrinsic.encode(); + opaque::UncheckedExtrinsic::decode(&mut &encoded[..]) + .expect("Encoded extrinsic is always valid") + } } impl fp_self_contained::SelfContainedCall for RuntimeCall { @@ -1272,12 +1265,12 @@ construct_runtime!( AdminUtils: pallet_admin_utils = 19, SafeMode: pallet_safe_mode = 20, - // Frontier - Ethereum: pallet_ethereum = 21, - EVM: pallet_evm = 22, - EVMChainId: pallet_evm_chain_id = 23, - DynamicFee: pallet_dynamic_fee = 24, - BaseFee: pallet_base_fee = 25, + // Frontier + Ethereum: pallet_ethereum = 21, + EVM: pallet_evm = 22, + EVMChainId: pallet_evm_chain_id = 23, + DynamicFee: pallet_dynamic_fee = 24, + BaseFee: pallet_base_fee = 25, } ); @@ -1313,7 +1306,7 @@ pub type UncheckedExtrinsic = /// Extrinsic type that has already been checked. pub type CheckedExtrinsic = - fp_self_contained::CheckedExtrinsic; + fp_self_contained::CheckedExtrinsic; // The payload being signed in transactions. pub type SignedPayload = generic::SignedPayload; @@ -1396,17 +1389,17 @@ impl_runtime_apis! { } impl sp_genesis_builder::GenesisBuilder for Runtime { - fn build_state(config: Vec) -> sp_genesis_builder::Result { - build_state::(config) - } + fn build_state(config: Vec) -> sp_genesis_builder::Result { + build_state::(config) + } - fn get_preset(id: &Option) -> Option> { - get_preset::(id, |_| None) - } + fn get_preset(id: &Option) -> Option> { + get_preset::(id, |_| None) + } - fn preset_names() -> Vec { - vec![] - } + fn preset_names() -> Vec { + vec![] + } } impl sp_transaction_pool::runtime_api::TaggedTransactionQueue for Runtime { @@ -1527,255 +1520,255 @@ impl_runtime_apis! { } } - impl fp_rpc::EthereumRuntimeRPCApi for Runtime { - fn chain_id() -> u64 { - ::ChainId::get() - } - - fn account_basic(address: H160) -> EVMAccount { - let (account, _) = pallet_evm::Pallet::::account_basic(&address); - account - } - - fn gas_price() -> U256 { - let (gas_price, _) = ::FeeCalculator::min_gas_price(); - gas_price - } - - fn account_code_at(address: H160) -> Vec { - pallet_evm::AccountCodes::::get(address) - } - - fn author() -> H160 { - >::find_author() - } - - fn storage_at(address: H160, index: U256) -> H256 { - let mut tmp = [0u8; 32]; - index.to_big_endian(&mut tmp); - pallet_evm::AccountStorages::::get(address, H256::from_slice(&tmp[..])) - } - - fn call( - from: H160, - to: H160, - data: Vec, - value: U256, - gas_limit: U256, - max_fee_per_gas: Option, - max_priority_fee_per_gas: Option, - nonce: Option, - estimate: bool, - access_list: Option)>>, - ) -> Result { - use pallet_evm::GasWeightMapping as _; - - let config = if estimate { - let mut config = ::config().clone(); - config.estimate = true; - Some(config) - } else { - None - }; - - // Estimated encoded transaction size must be based on the heaviest transaction - // type (EIP1559Transaction) to be compatible with all transaction types. - let mut estimated_transaction_len = data.len() + - // pallet ethereum index: 1 - // transact call index: 1 - // Transaction enum variant: 1 - // chain_id 8 bytes - // nonce: 32 - // max_priority_fee_per_gas: 32 - // max_fee_per_gas: 32 - // gas_limit: 32 - // action: 21 (enum varianrt + call address) - // value: 32 - // access_list: 1 (empty vec size) - // 65 bytes signature - 258; - - if access_list.is_some() { - estimated_transaction_len += access_list.encoded_size(); - } - - - let gas_limit = if gas_limit > U256::from(u64::MAX) { - u64::MAX - } else { - gas_limit.low_u64() - }; - let without_base_extrinsic_weight = true; - - let (weight_limit, proof_size_base_cost) = - match ::GasWeightMapping::gas_to_weight( - gas_limit, - without_base_extrinsic_weight - ) { - weight_limit if weight_limit.proof_size() > 0 => { - (Some(weight_limit), Some(estimated_transaction_len as u64)) - } - _ => (None, None), - }; - - ::Runner::call( - from, - to, - data, - value, - gas_limit.unique_saturated_into(), - max_fee_per_gas, - max_priority_fee_per_gas, - nonce, - access_list.unwrap_or_default(), - false, - true, - weight_limit, - proof_size_base_cost, - config.as_ref().unwrap_or(::config()), - ).map_err(|err| err.error.into()) - } - - fn create( - from: H160, - data: Vec, - value: U256, - gas_limit: U256, - max_fee_per_gas: Option, - max_priority_fee_per_gas: Option, - nonce: Option, - estimate: bool, - access_list: Option)>>, - ) -> Result { - use pallet_evm::GasWeightMapping as _; - - let config = if estimate { - let mut config = ::config().clone(); - config.estimate = true; - Some(config) - } else { - None - }; - - - let mut estimated_transaction_len = data.len() + - // from: 20 - // value: 32 - // gas_limit: 32 - // nonce: 32 - // 1 byte transaction action variant - // chain id 8 bytes - // 65 bytes signature - 190; - - if max_fee_per_gas.is_some() { - estimated_transaction_len += 32; - } - if max_priority_fee_per_gas.is_some() { - estimated_transaction_len += 32; - } - if access_list.is_some() { - estimated_transaction_len += access_list.encoded_size(); - } - - - let gas_limit = if gas_limit > U256::from(u64::MAX) { - u64::MAX - } else { - gas_limit.low_u64() - }; - let without_base_extrinsic_weight = true; - - let (weight_limit, proof_size_base_cost) = - match ::GasWeightMapping::gas_to_weight( - gas_limit, - without_base_extrinsic_weight - ) { - weight_limit if weight_limit.proof_size() > 0 => { - (Some(weight_limit), Some(estimated_transaction_len as u64)) - } - _ => (None, None), - }; - - ::Runner::create( - from, - data, - value, - gas_limit.unique_saturated_into(), - max_fee_per_gas, - max_priority_fee_per_gas, - nonce, - access_list.unwrap_or_default(), - false, - true, - weight_limit, - proof_size_base_cost, - config.as_ref().unwrap_or(::config()), - ).map_err(|err| err.error.into()) - } - - fn current_transaction_statuses() -> Option> { - pallet_ethereum::CurrentTransactionStatuses::::get() - } - - fn current_block() -> Option { - pallet_ethereum::CurrentBlock::::get() - } - - fn current_receipts() -> Option> { - pallet_ethereum::CurrentReceipts::::get() - } - - fn current_all() -> ( - Option, - Option>, - Option> - ) { - ( - pallet_ethereum::CurrentBlock::::get(), - pallet_ethereum::CurrentReceipts::::get(), - pallet_ethereum::CurrentTransactionStatuses::::get() - ) - } - - fn extrinsic_filter( - xts: Vec<::Extrinsic>, - ) -> Vec { - xts.into_iter().filter_map(|xt| match xt.0.function { - RuntimeCall::Ethereum(transact { transaction }) => Some(transaction), - _ => None - }).collect::>() - } - - fn elasticity() -> Option { - Some(pallet_base_fee::Elasticity::::get()) - } - - fn gas_limit_multiplier_support() {} - - fn pending_block( - xts: Vec<::Extrinsic>, - ) -> (Option, Option>) { - for ext in xts.into_iter() { - let _ = Executive::apply_extrinsic(ext); - } - - Ethereum::on_finalize(System::block_number() + 1); - - ( - pallet_ethereum::CurrentBlock::::get(), - pallet_ethereum::CurrentTransactionStatuses::::get() - ) - } - } - - impl fp_rpc::ConvertTransactionRuntimeApi for Runtime { - fn convert_transaction(transaction: EthereumTransaction) -> ::Extrinsic { - UncheckedExtrinsic::new_unsigned( - pallet_ethereum::Call::::transact { transaction }.into(), - ) - } - } + impl fp_rpc::EthereumRuntimeRPCApi for Runtime { + fn chain_id() -> u64 { + ::ChainId::get() + } + + fn account_basic(address: H160) -> EVMAccount { + let (account, _) = pallet_evm::Pallet::::account_basic(&address); + account + } + + fn gas_price() -> U256 { + let (gas_price, _) = ::FeeCalculator::min_gas_price(); + gas_price + } + + fn account_code_at(address: H160) -> Vec { + pallet_evm::AccountCodes::::get(address) + } + + fn author() -> H160 { + >::find_author() + } + + fn storage_at(address: H160, index: U256) -> H256 { + let mut tmp = [0u8; 32]; + index.to_big_endian(&mut tmp); + pallet_evm::AccountStorages::::get(address, H256::from_slice(&tmp[..])) + } + + fn call( + from: H160, + to: H160, + data: Vec, + value: U256, + gas_limit: U256, + max_fee_per_gas: Option, + max_priority_fee_per_gas: Option, + nonce: Option, + estimate: bool, + access_list: Option)>>, + ) -> Result { + use pallet_evm::GasWeightMapping as _; + + let config = if estimate { + let mut config = ::config().clone(); + config.estimate = true; + Some(config) + } else { + None + }; + + // Estimated encoded transaction size must be based on the heaviest transaction + // type (EIP1559Transaction) to be compatible with all transaction types. + let mut estimated_transaction_len = data.len() + + // pallet ethereum index: 1 + // transact call index: 1 + // Transaction enum variant: 1 + // chain_id 8 bytes + // nonce: 32 + // max_priority_fee_per_gas: 32 + // max_fee_per_gas: 32 + // gas_limit: 32 + // action: 21 (enum varianrt + call address) + // value: 32 + // access_list: 1 (empty vec size) + // 65 bytes signature + 258; + + if access_list.is_some() { + estimated_transaction_len += access_list.encoded_size(); + } + + + let gas_limit = if gas_limit > U256::from(u64::MAX) { + u64::MAX + } else { + gas_limit.low_u64() + }; + let without_base_extrinsic_weight = true; + + let (weight_limit, proof_size_base_cost) = + match ::GasWeightMapping::gas_to_weight( + gas_limit, + without_base_extrinsic_weight + ) { + weight_limit if weight_limit.proof_size() > 0 => { + (Some(weight_limit), Some(estimated_transaction_len as u64)) + } + _ => (None, None), + }; + + ::Runner::call( + from, + to, + data, + value, + gas_limit.unique_saturated_into(), + max_fee_per_gas, + max_priority_fee_per_gas, + nonce, + access_list.unwrap_or_default(), + false, + true, + weight_limit, + proof_size_base_cost, + config.as_ref().unwrap_or(::config()), + ).map_err(|err| err.error.into()) + } + + fn create( + from: H160, + data: Vec, + value: U256, + gas_limit: U256, + max_fee_per_gas: Option, + max_priority_fee_per_gas: Option, + nonce: Option, + estimate: bool, + access_list: Option)>>, + ) -> Result { + use pallet_evm::GasWeightMapping as _; + + let config = if estimate { + let mut config = ::config().clone(); + config.estimate = true; + Some(config) + } else { + None + }; + + + let mut estimated_transaction_len = data.len() + + // from: 20 + // value: 32 + // gas_limit: 32 + // nonce: 32 + // 1 byte transaction action variant + // chain id 8 bytes + // 65 bytes signature + 190; + + if max_fee_per_gas.is_some() { + estimated_transaction_len += 32; + } + if max_priority_fee_per_gas.is_some() { + estimated_transaction_len += 32; + } + if access_list.is_some() { + estimated_transaction_len += access_list.encoded_size(); + } + + + let gas_limit = if gas_limit > U256::from(u64::MAX) { + u64::MAX + } else { + gas_limit.low_u64() + }; + let without_base_extrinsic_weight = true; + + let (weight_limit, proof_size_base_cost) = + match ::GasWeightMapping::gas_to_weight( + gas_limit, + without_base_extrinsic_weight + ) { + weight_limit if weight_limit.proof_size() > 0 => { + (Some(weight_limit), Some(estimated_transaction_len as u64)) + } + _ => (None, None), + }; + + ::Runner::create( + from, + data, + value, + gas_limit.unique_saturated_into(), + max_fee_per_gas, + max_priority_fee_per_gas, + nonce, + access_list.unwrap_or_default(), + false, + true, + weight_limit, + proof_size_base_cost, + config.as_ref().unwrap_or(::config()), + ).map_err(|err| err.error.into()) + } + + fn current_transaction_statuses() -> Option> { + pallet_ethereum::CurrentTransactionStatuses::::get() + } + + fn current_block() -> Option { + pallet_ethereum::CurrentBlock::::get() + } + + fn current_receipts() -> Option> { + pallet_ethereum::CurrentReceipts::::get() + } + + fn current_all() -> ( + Option, + Option>, + Option> + ) { + ( + pallet_ethereum::CurrentBlock::::get(), + pallet_ethereum::CurrentReceipts::::get(), + pallet_ethereum::CurrentTransactionStatuses::::get() + ) + } + + fn extrinsic_filter( + xts: Vec<::Extrinsic>, + ) -> Vec { + xts.into_iter().filter_map(|xt| match xt.0.function { + RuntimeCall::Ethereum(transact { transaction }) => Some(transaction), + _ => None + }).collect::>() + } + + fn elasticity() -> Option { + Some(pallet_base_fee::Elasticity::::get()) + } + + fn gas_limit_multiplier_support() {} + + fn pending_block( + xts: Vec<::Extrinsic>, + ) -> (Option, Option>) { + for ext in xts.into_iter() { + let _ = Executive::apply_extrinsic(ext); + } + + Ethereum::on_finalize(System::block_number() + 1); + + ( + pallet_ethereum::CurrentBlock::::get(), + pallet_ethereum::CurrentTransactionStatuses::::get() + ) + } + } + + impl fp_rpc::ConvertTransactionRuntimeApi for Runtime { + fn convert_transaction(transaction: EthereumTransaction) -> ::Extrinsic { + UncheckedExtrinsic::new_unsigned( + pallet_ethereum::Call::::transact { transaction }.into(), + ) + } + } #[cfg(feature = "runtime-benchmarks")] impl frame_benchmarking::Benchmark for Runtime { diff --git a/runtime/src/precompiles/balance_transfer.rs b/runtime/src/precompiles/balance_transfer.rs index 9d2dbf36b..9ffc8b2c2 100644 --- a/runtime/src/precompiles/balance_transfer.rs +++ b/runtime/src/precompiles/balance_transfer.rs @@ -1,15 +1,14 @@ -use sp_core::U256; +use frame_system::RawOrigin; use pallet_evm::{ - ExitError, ExitSucceed, PrecompileFailure, PrecompileHandle, - PrecompileOutput, PrecompileResult + ExitError, ExitSucceed, PrecompileFailure, PrecompileHandle, PrecompileOutput, PrecompileResult, }; -use frame_system::RawOrigin; -use sp_std::vec; +use sp_core::U256; use sp_runtime::traits::Dispatchable; +use sp_std::vec; use crate::{Runtime, RuntimeCall}; -use crate::precompiles::{ bytes_to_account_id, get_method_id }; +use crate::precompiles::{bytes_to_account_id, get_method_id}; pub const BALANCE_TRANSFER_INDEX: u64 = 2048; @@ -25,29 +24,29 @@ impl BalanceTransferPrecompile { // Forward all received value to the destination address let amount: U256 = handle.context().apparent_value; - // This is hardcoded hashed address mapping of + // This is hardcoded hashed address mapping of // 0x0000000000000000000000000000000000000800 to ss58 public key // i.e. the contract sends funds it received to the destination address // from the method parameter let address_bytes_src: [u8; 32] = [ - 0x07, 0xec, 0x71, 0x2a, 0x5d, 0x38, 0x43, 0x4d, - 0xdd, 0x03, 0x3f, 0x8f, 0x02, 0x4e, 0xcd, 0xfc, - 0x4b, 0xb5, 0x95, 0x1c, 0x13, 0xc3, 0x08, 0x5c, - 0x39, 0x9c, 0x8a, 0x5f, 0x62, 0x93, 0x70, 0x5d + 0x07, 0xec, 0x71, 0x2a, 0x5d, 0x38, 0x43, 0x4d, 0xdd, 0x03, 0x3f, 0x8f, 0x02, 0x4e, + 0xcd, 0xfc, 0x4b, 0xb5, 0x95, 0x1c, 0x13, 0xc3, 0x08, 0x5c, 0x39, 0x9c, 0x8a, 0x5f, + 0x62, 0x93, 0x70, 0x5d, ]; let address_bytes_dst: &[u8] = &txdata[4..36]; let account_id_src = bytes_to_account_id(&address_bytes_src)?; let account_id_dst = bytes_to_account_id(&address_bytes_dst)?; - let call = RuntimeCall::Balances(pallet_balances::Call::::transfer_allow_death { - dest: account_id_dst.into(), - value: amount.as_u64(), - }); + let call = + RuntimeCall::Balances(pallet_balances::Call::::transfer_allow_death { + dest: account_id_dst.into(), + value: amount.as_u64(), + }); let result = call.dispatch(RawOrigin::Signed(account_id_src).into()); if let Err(_) = result { return Err(PrecompileFailure::Error { - exit_status: ExitError::OutOfFund + exit_status: ExitError::OutOfFund, }); } } diff --git a/runtime/src/precompiles/mod.rs b/runtime/src/precompiles/mod.rs index 1cbf3707b..8f6e2612e 100644 --- a/runtime/src/precompiles/mod.rs +++ b/runtime/src/precompiles/mod.rs @@ -1,12 +1,10 @@ use core::marker::PhantomData; -use sp_core::{ - crypto::ByteArray, hashing::keccak_256, H160 -}; +use sp_core::{crypto::ByteArray, hashing::keccak_256, H160}; use sp_runtime::AccountId32; use pallet_evm::{ - ExitError, IsPrecompileResult, Precompile, PrecompileHandle, PrecompileResult, PrecompileSet, - PrecompileFailure + ExitError, IsPrecompileResult, Precompile, PrecompileFailure, PrecompileHandle, + PrecompileResult, PrecompileSet, }; use pallet_evm_precompile_modexp::Modexp; use pallet_evm_precompile_sha3fips::Sha3FIPS256; @@ -21,81 +19,78 @@ pub struct FrontierPrecompiles(PhantomData); impl FrontierPrecompiles where - R: pallet_evm::Config, + R: pallet_evm::Config, { - pub fn new() -> Self { - Self(Default::default()) - } - pub fn used_addresses() -> [H160; 8] { - [ - hash(1), - hash(2), - hash(3), - hash(4), - hash(5), - hash(1024), - hash(1025), - hash(BALANCE_TRANSFER_INDEX) - ] - } + pub fn new() -> Self { + Self(Default::default()) + } + pub fn used_addresses() -> [H160; 8] { + [ + hash(1), + hash(2), + hash(3), + hash(4), + hash(5), + hash(1024), + hash(1025), + hash(BALANCE_TRANSFER_INDEX), + ] + } } impl PrecompileSet for FrontierPrecompiles where - R: pallet_evm::Config, + R: pallet_evm::Config, { - fn execute(&self, handle: &mut impl PrecompileHandle) -> Option { - match handle.code_address() { - // Ethereum precompiles : - a if a == hash(1) => Some(ECRecover::execute(handle)), - a if a == hash(2) => Some(Sha256::execute(handle)), - a if a == hash(3) => Some(Ripemd160::execute(handle)), - a if a == hash(4) => Some(Identity::execute(handle)), - a if a == hash(5) => Some(Modexp::execute(handle)), - // Non-Frontier specific nor Ethereum precompiles : - a if a == hash(1024) => Some(Sha3FIPS256::execute(handle)), - a if a == hash(1025) => Some(ECRecoverPublicKey::execute(handle)), - a if a == hash(BALANCE_TRANSFER_INDEX) => Some(BalanceTransferPrecompile::execute(handle)), - _ => None, - } - } + fn execute(&self, handle: &mut impl PrecompileHandle) -> Option { + match handle.code_address() { + // Ethereum precompiles : + a if a == hash(1) => Some(ECRecover::execute(handle)), + a if a == hash(2) => Some(Sha256::execute(handle)), + a if a == hash(3) => Some(Ripemd160::execute(handle)), + a if a == hash(4) => Some(Identity::execute(handle)), + a if a == hash(5) => Some(Modexp::execute(handle)), + // Non-Frontier specific nor Ethereum precompiles : + a if a == hash(1024) => Some(Sha3FIPS256::execute(handle)), + a if a == hash(1025) => Some(ECRecoverPublicKey::execute(handle)), + a if a == hash(BALANCE_TRANSFER_INDEX) => { + Some(BalanceTransferPrecompile::execute(handle)) + } + _ => None, + } + } - fn is_precompile(&self, address: H160, _gas: u64) -> IsPrecompileResult { - IsPrecompileResult::Answer { - is_precompile: Self::used_addresses().contains(&address), - extra_cost: 0, - } - } + fn is_precompile(&self, address: H160, _gas: u64) -> IsPrecompileResult { + IsPrecompileResult::Answer { + is_precompile: Self::used_addresses().contains(&address), + extra_cost: 0, + } + } } fn hash(a: u64) -> H160 { - H160::from_low_u64_be(a) + H160::from_low_u64_be(a) } /// Returns Ethereum method ID from an str method signature -/// +/// pub fn get_method_id(method_signature: &str) -> [u8; 4] { // Calculate the full Keccak-256 hash of the method signature let hash = keccak_256(method_signature.as_bytes()); // Extract the first 4 bytes to get the method ID - let method_id = [ - hash[0], - hash[1], - hash[2], - hash[3], - ]; + let method_id = [hash[0], hash[1], hash[2], hash[3]]; method_id } /// Convert bytes to AccountId32 with PrecompileFailure as Error /// which consumes all gas -/// +/// pub fn bytes_to_account_id(account_id_bytes: &[u8]) -> Result { AccountId32::from_slice(&account_id_bytes).map_err(|_| { log::info!("Error parsing account id bytes {:?}", account_id_bytes); - PrecompileFailure::Error { - exit_status: ExitError::InvalidRange - } + PrecompileFailure::Error { + exit_status: ExitError::InvalidRange, + } }) } From 8dd904ed22fffc036e1a810ddc68a73107b55acd Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Wed, 28 Aug 2024 22:05:12 -0400 Subject: [PATCH 04/60] Fix clippy issues --- node/src/ethereum.rs | 6 +---- node/src/service.rs | 8 +++--- runtime/src/lib.rs | 12 ++++++--- runtime/src/precompiles/balance_transfer.rs | 10 ++++---- runtime/src/precompiles/mod.rs | 28 ++++++++++++++++++--- 5 files changed, 43 insertions(+), 21 deletions(-) diff --git a/node/src/ethereum.rs b/node/src/ethereum.rs index 291a963ef..e02d1311c 100644 --- a/node/src/ethereum.rs +++ b/node/src/ethereum.rs @@ -123,6 +123,7 @@ pub fn new_frontier_partial( }) } +#[allow(clippy::too_many_arguments)] pub async fn spawn_frontier_tasks( task_manager: &TaskManager, client: Arc, @@ -139,11 +140,6 @@ pub async fn spawn_frontier_tasks( >, >, ) -// where -// RuntimeApi: ConstructRuntimeApi, -// RuntimeApi: Send + Sync + 'static, -// RuntimeApi::RuntimeApi: EthCompatRuntimeApiCollection, -// Executor: NativeExecutionDispatch + 'static, { // Spawn main mapping sync worker background task. match &*frontier_backend { diff --git a/node/src/service.rs b/node/src/service.rs index f8d321155..32dfec665 100644 --- a/node/src/service.rs +++ b/node/src/service.rs @@ -176,7 +176,7 @@ where .join(db_path) .join("frontier.db3") .to_str() - .unwrap(), + .unwrap_or(""), create_if_missing: true, thread_count: eth_config.frontier_sql_backend_thread_count, cache_size: eth_config.frontier_sql_backend_cache_size, @@ -428,7 +428,7 @@ pub async fn new_full< let target_gas_price = eth_config.target_gas_price; let pending_create_inherent_data_providers = move |_, ()| async move { let current = sp_timestamp::InherentDataProvider::from_system_time(); - let next_slot = current.timestamp().as_millis() + slot_duration.as_millis(); + let next_slot = current.timestamp().as_millis().saturating_add(slot_duration.as_millis()); let timestamp = sp_timestamp::InherentDataProvider::new(next_slot.into()); let slot = sp_consensus_aura::inherents::InherentDataProvider::from_timestamp_and_slot_duration( *timestamp, @@ -660,6 +660,7 @@ pub fn new_chain_ops( Ok((client, backend, import_queue, task_manager, other.3)) } +#[allow(clippy::too_many_arguments)] fn run_manual_seal_authorship( eth_config: &EthConfiguration, sealing: Sealing, @@ -693,7 +694,8 @@ fn run_manual_seal_authorship( inherent_data: &mut sp_inherents::InherentData, ) -> Result<(), sp_inherents::Error> { TIMESTAMP.with(|x| { - *x.borrow_mut() += node_subtensor_runtime::SLOT_DURATION; + let mut x_ref = x.borrow_mut(); + *x_ref = x_ref.saturating_add(node_subtensor_runtime::SLOT_DURATION); inherent_data.put_data(sp_timestamp::INHERENT_IDENTIFIER, &*x.borrow()) }) } diff --git a/runtime/src/lib.rs b/runtime/src/lib.rs index aa2701c83..9ada2be07 100644 --- a/runtime/src/lib.rs +++ b/runtime/src/lib.rs @@ -1072,11 +1072,15 @@ impl> FindAuthor for FindAuthorTruncated { I: 'a + IntoIterator, { if let Some(author_index) = F::find_author(digests) { - let authority_id = - pallet_aura::Authorities::::get()[author_index as usize].clone(); - return Some(H160::from_slice(&authority_id.to_raw_vec()[4..24])); + pallet_aura::Authorities::::get() + .get(author_index as usize) + .and_then(|authority_id| { + let raw_vec = authority_id.to_raw_vec(); + raw_vec.get(4..24).map(H160::from_slice) + }) + } else { + None } - None } } diff --git a/runtime/src/precompiles/balance_transfer.rs b/runtime/src/precompiles/balance_transfer.rs index 9ffc8b2c2..514c73dda 100644 --- a/runtime/src/precompiles/balance_transfer.rs +++ b/runtime/src/precompiles/balance_transfer.rs @@ -8,7 +8,7 @@ use sp_std::vec; use crate::{Runtime, RuntimeCall}; -use crate::precompiles::{bytes_to_account_id, get_method_id}; +use crate::precompiles::{bytes_to_account_id, get_method_id, get_slice}; pub const BALANCE_TRANSFER_INDEX: u64 = 2048; @@ -19,7 +19,7 @@ impl BalanceTransferPrecompile { let txdata = handle.input(); // Match method ID: keccak256("transfer(bytes32)") - let method: &[u8] = &txdata[0..4]; + let method: &[u8] = get_slice(txdata, 0, 4)?; if get_method_id("transfer(bytes32)") == method { // Forward all received value to the destination address let amount: U256 = handle.context().apparent_value; @@ -33,9 +33,9 @@ impl BalanceTransferPrecompile { 0xcd, 0xfc, 0x4b, 0xb5, 0x95, 0x1c, 0x13, 0xc3, 0x08, 0x5c, 0x39, 0x9c, 0x8a, 0x5f, 0x62, 0x93, 0x70, 0x5d, ]; - let address_bytes_dst: &[u8] = &txdata[4..36]; + let address_bytes_dst: &[u8] = get_slice(txdata, 4, 36)?; let account_id_src = bytes_to_account_id(&address_bytes_src)?; - let account_id_dst = bytes_to_account_id(&address_bytes_dst)?; + let account_id_dst = bytes_to_account_id(address_bytes_dst)?; let call = RuntimeCall::Balances(pallet_balances::Call::::transfer_allow_death { @@ -44,7 +44,7 @@ impl BalanceTransferPrecompile { }); let result = call.dispatch(RawOrigin::Signed(account_id_src).into()); - if let Err(_) = result { + if result.is_err() { return Err(PrecompileFailure::Error { exit_status: ExitError::OutOfFund, }); diff --git a/runtime/src/precompiles/mod.rs b/runtime/src/precompiles/mod.rs index 8f6e2612e..a500d8f9d 100644 --- a/runtime/src/precompiles/mod.rs +++ b/runtime/src/precompiles/mod.rs @@ -17,6 +17,15 @@ use balance_transfer::*; pub struct FrontierPrecompiles(PhantomData); +impl Default for FrontierPrecompiles +where + R: pallet_evm::Config, + { + fn default() -> Self { + Self::new() + } +} + impl FrontierPrecompiles where R: pallet_evm::Config, @@ -78,19 +87,30 @@ pub fn get_method_id(method_signature: &str) -> [u8; 4] { let hash = keccak_256(method_signature.as_bytes()); // Extract the first 4 bytes to get the method ID - let method_id = [hash[0], hash[1], hash[2], hash[3]]; - - method_id + [hash[0], hash[1], hash[2], hash[3]] } /// Convert bytes to AccountId32 with PrecompileFailure as Error /// which consumes all gas /// pub fn bytes_to_account_id(account_id_bytes: &[u8]) -> Result { - AccountId32::from_slice(&account_id_bytes).map_err(|_| { + AccountId32::from_slice(account_id_bytes).map_err(|_| { log::info!("Error parsing account id bytes {:?}", account_id_bytes); PrecompileFailure::Error { exit_status: ExitError::InvalidRange, } }) } + +/// Takes a slice from bytes with PrecompileFailure as Error +/// +pub fn get_slice(data: &[u8], from: usize, to: usize) -> Result<&[u8], PrecompileFailure> { + let maybe_slice = data.get(from..to); + if let Some(slice) = maybe_slice { + Ok(slice) + } else { + Err(PrecompileFailure::Error { + exit_status: ExitError::InvalidRange, + }) + } +} From 86167cbaf8bdc44b5d9c724cc521836eddf4ef20 Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Wed, 28 Aug 2024 22:05:31 -0400 Subject: [PATCH 05/60] Format --- node/src/ethereum.rs | 3 +-- node/src/service.rs | 5 ++++- runtime/src/precompiles/mod.rs | 12 ++++++------ 3 files changed, 11 insertions(+), 9 deletions(-) diff --git a/node/src/ethereum.rs b/node/src/ethereum.rs index e02d1311c..973e47aab 100644 --- a/node/src/ethereum.rs +++ b/node/src/ethereum.rs @@ -139,8 +139,7 @@ pub async fn spawn_frontier_tasks( fc_mapping_sync::EthereumBlockNotification, >, >, -) -{ +) { // Spawn main mapping sync worker background task. match &*frontier_backend { fc_db::Backend::KeyValue(b) => { diff --git a/node/src/service.rs b/node/src/service.rs index 32dfec665..b1c7e5b61 100644 --- a/node/src/service.rs +++ b/node/src/service.rs @@ -428,7 +428,10 @@ pub async fn new_full< let target_gas_price = eth_config.target_gas_price; let pending_create_inherent_data_providers = move |_, ()| async move { let current = sp_timestamp::InherentDataProvider::from_system_time(); - let next_slot = current.timestamp().as_millis().saturating_add(slot_duration.as_millis()); + let next_slot = current + .timestamp() + .as_millis() + .saturating_add(slot_duration.as_millis()); let timestamp = sp_timestamp::InherentDataProvider::new(next_slot.into()); let slot = sp_consensus_aura::inherents::InherentDataProvider::from_timestamp_and_slot_duration( *timestamp, diff --git a/runtime/src/precompiles/mod.rs b/runtime/src/precompiles/mod.rs index a500d8f9d..6831cb6a8 100644 --- a/runtime/src/precompiles/mod.rs +++ b/runtime/src/precompiles/mod.rs @@ -20,7 +20,7 @@ pub struct FrontierPrecompiles(PhantomData); impl Default for FrontierPrecompiles where R: pallet_evm::Config, - { +{ fn default() -> Self { Self::new() } @@ -105,12 +105,12 @@ pub fn bytes_to_account_id(account_id_bytes: &[u8]) -> Result Result<&[u8], PrecompileFailure> { - let maybe_slice = data.get(from..to); - if let Some(slice) = maybe_slice { - Ok(slice) - } else { + let maybe_slice = data.get(from..to); + if let Some(slice) = maybe_slice { + Ok(slice) + } else { Err(PrecompileFailure::Error { exit_status: ExitError::InvalidRange, }) - } + } } From ca953f42596704cf004e96387d211208c834fc3a Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Thu, 29 Aug 2024 12:03:18 -0400 Subject: [PATCH 06/60] Fix try-runtime build --- runtime/Cargo.toml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/runtime/Cargo.toml b/runtime/Cargo.toml index 9037db57a..5e6780a78 100644 --- a/runtime/Cargo.toml +++ b/runtime/Cargo.toml @@ -237,5 +237,13 @@ try-runtime = [ "pallet-admin-utils/try-runtime", "pallet-commitments/try-runtime", "pallet-registry/try-runtime", + + # EVM + Frontier + "fp-self-contained/try-runtime", + "pallet-base-fee/try-runtime", + "pallet-dynamic-fee/try-runtime", + "pallet-ethereum/try-runtime", + "pallet-evm/try-runtime", + "pallet-evm-chain-id/try-runtime", ] metadata-hash = ["substrate-wasm-builder/metadata-hash"] From fa7d30fb578c53f684723a6d6a0f93bf082aa1a7 Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Thu, 29 Aug 2024 12:58:30 -0400 Subject: [PATCH 07/60] Fix runtime-benchmarks build --- node/src/command.rs | 12 +++---- runtime/Cargo.toml | 8 +++++ runtime/src/lib.rs | 2 +- scripts/localnet-evm.sh | 75 ----------------------------------------- scripts/localnet.sh | 4 +++ 5 files changed, 19 insertions(+), 82 deletions(-) delete mode 100755 scripts/localnet-evm.sh diff --git a/node/src/command.rs b/node/src/command.rs index f7d1156d9..593172be5 100644 --- a/node/src/command.rs +++ b/node/src/command.rs @@ -165,6 +165,12 @@ pub fn run() -> sc_cli::Result<()> { let runner = cli.create_runner(cmd)?; runner.sync_run(|config| { + let sc_service::PartialComponents { + client, + backend, + .. + } = crate::service::new_partial(&config, &cli.eth, crate::service::build_manual_seal_import_queue)?; + // This switch needs to be in the client, since the client decides // which sub-commands it wants to support. match cmd { @@ -182,7 +188,6 @@ pub fn run() -> sc_cli::Result<()> { )) } BenchmarkCmd::Block(cmd) => { - let PartialComponents { client, .. } = service::new_partial(&config)?; cmd.run(client) } #[cfg(not(feature = "runtime-benchmarks"))] @@ -192,16 +197,12 @@ pub fn run() -> sc_cli::Result<()> { ), #[cfg(feature = "runtime-benchmarks")] BenchmarkCmd::Storage(cmd) => { - let PartialComponents { - client, backend, .. - } = service::new_partial(&config)?; let db = backend.expose_db(); let storage = backend.expose_storage(); cmd.run(config, client, db, storage) } BenchmarkCmd::Overhead(cmd) => { - let PartialComponents { client, .. } = service::new_partial(&config)?; let ext_builder = RemarkBuilder::new(client.clone()); cmd.run( @@ -213,7 +214,6 @@ pub fn run() -> sc_cli::Result<()> { ) } BenchmarkCmd::Extrinsic(cmd) => { - let PartialComponents { client, .. } = service::new_partial(&config)?; // Register the *Remark* and *TKA* builders. let ext_factory = ExtrinsicFactory(vec![ Box::new(RemarkBuilder::new(client.clone())), diff --git a/runtime/Cargo.toml b/runtime/Cargo.toml index 5e6780a78..463475384 100644 --- a/runtime/Cargo.toml +++ b/runtime/Cargo.toml @@ -211,6 +211,14 @@ runtime-benchmarks = [ "pallet-preimage/runtime-benchmarks", "pallet-scheduler/runtime-benchmarks", "pallet-sudo/runtime-benchmarks", + + # EVM + Frontier +# "fp-self-contained/runtime-benchmarks", +# "pallet-base-fee/runtime-benchmarks", +# "pallet-dynamic-fee/runtime-benchmarks", + "pallet-ethereum/runtime-benchmarks", +# "pallet-evm/runtime-benchmarks", +# "pallet-evm-chain-id/runtime-benchmarks", ] try-runtime = [ "frame-try-runtime/try-runtime", diff --git a/runtime/src/lib.rs b/runtime/src/lib.rs index 9ada2be07..c1433df40 100644 --- a/runtime/src/lib.rs +++ b/runtime/src/lib.rs @@ -161,7 +161,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { // `spec_version`, and `authoring_version` are the same between Wasm and native. // This value is set to 100 to notify Polkadot-JS App (https://polkadot.js.org/apps) to use // the compatible custom types. - spec_version: 195, + spec_version: 196, impl_version: 1, apis: RUNTIME_API_VERSIONS, transaction_version: 1, diff --git a/scripts/localnet-evm.sh b/scripts/localnet-evm.sh deleted file mode 100755 index 0e9c7ad34..000000000 --- a/scripts/localnet-evm.sh +++ /dev/null @@ -1,75 +0,0 @@ -#!/bin/bash - -# Determine the directory this script resides in. This allows invoking it from any location. -SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" &>/dev/null && pwd)" - -# The base directory of the subtensor project -BASE_DIR="$SCRIPT_DIR/.." -CHAIN=local -BUILD_BINARY=1 -FEATURES="" - -SPEC_PATH="${SCRIPT_DIR}/specs/" -FULL_PATH="$SPEC_PATH$CHAIN.json" - -# Kill any existing nodes which may have not exited correctly after a previous -# run. -pkill -9 'node-subtensor' - -if [ ! -d "$SPEC_PATH" ]; then - echo "*** Creating directory ${SPEC_PATH}..." - mkdir $SPEC_PATH -fi - -if [[ $BUILD_BINARY == "1" ]]; then - echo "*** Building substrate binary..." - cargo build --workspace --profile=release --features "$FEATURES" --manifest-path "$BASE_DIR/Cargo.toml" - echo "*** Binary compiled" -fi - -echo "*** Building chainspec..." -"$BASE_DIR/target/release/node-subtensor" build-spec --disable-default-bootnode --raw --chain $CHAIN >$FULL_PATH -echo "*** Chainspec built and output to file" - -# generate node keys -$BASE_DIR/target/release/node-subtensor key generate-node-key --chain="$FULL_PATH" --base-path /tmp/alice -$BASE_DIR/target/release/node-subtensor key generate-node-key --chain="$FULL_PATH" --base-path /tmp/bob - -echo "*** Purging previous state..." -"$BASE_DIR/target/release/node-subtensor" purge-chain -y --base-path /tmp/bob --chain="$FULL_PATH" >/dev/null 2>&1 -"$BASE_DIR/target/release/node-subtensor" purge-chain -y --base-path /tmp/alice --chain="$FULL_PATH" >/dev/null 2>&1 -echo "*** Previous chainstate purged" - -echo "*** Starting localnet nodes..." -alice_start=( - "$BASE_DIR/target/release/node-subtensor" - --base-path /tmp/alice - --chain="$FULL_PATH" - --alice - --port 30334 - --rpc-port 9946 - --validator - --rpc-cors=all - --allow-private-ipv4 - --discover-local -) - -bob_start=( - "$BASE_DIR"/target/release/node-subtensor - --base-path /tmp/bob - --chain="$FULL_PATH" - --bob - --port 30335 - --rpc-port 9945 - --validator - --allow-private-ipv4 - --discover-local -) - -trap 'pkill -P $$' EXIT SIGINT SIGTERM - -( - ("${alice_start[@]}" 2>&1) & - ("${bob_start[@]}" 2>&1) - wait -) diff --git a/scripts/localnet.sh b/scripts/localnet.sh index 850a314d8..b25d2afd9 100755 --- a/scripts/localnet.sh +++ b/scripts/localnet.sh @@ -56,6 +56,10 @@ echo "*** Building chainspec..." "$BASE_DIR/target/release/node-subtensor" build-spec --disable-default-bootnode --raw --chain $CHAIN >$FULL_PATH echo "*** Chainspec built and output to file" +# generate node keys +$BASE_DIR/target/release/node-subtensor key generate-node-key --chain="$FULL_PATH" --base-path /tmp/alice +$BASE_DIR/target/release/node-subtensor key generate-node-key --chain="$FULL_PATH" --base-path /tmp/bob + if [ $NO_PURGE -eq 1 ]; then echo "*** Purging previous state skipped..." else From 069bea46aaca913ed61e706c163c5a16b013963e Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Thu, 29 Aug 2024 13:01:52 -0400 Subject: [PATCH 08/60] Format --- node/src/command.rs | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/node/src/command.rs b/node/src/command.rs index 593172be5..cb607cb5a 100644 --- a/node/src/command.rs +++ b/node/src/command.rs @@ -166,11 +166,13 @@ pub fn run() -> sc_cli::Result<()> { runner.sync_run(|config| { let sc_service::PartialComponents { - client, - backend, - .. - } = crate::service::new_partial(&config, &cli.eth, crate::service::build_manual_seal_import_queue)?; - + client, backend, .. + } = crate::service::new_partial( + &config, + &cli.eth, + crate::service::build_manual_seal_import_queue, + )?; + // This switch needs to be in the client, since the client decides // which sub-commands it wants to support. match cmd { @@ -187,9 +189,7 @@ pub fn run() -> sc_cli::Result<()> { config.chain_spec, )) } - BenchmarkCmd::Block(cmd) => { - cmd.run(client) - } + BenchmarkCmd::Block(cmd) => cmd.run(client), #[cfg(not(feature = "runtime-benchmarks"))] BenchmarkCmd::Storage(_) => Err( "Storage benchmarking can be enabled with `--features runtime-benchmarks`." From f0dde3c2a95a4db702b7b69b3936632ca9fea5bc Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Thu, 29 Aug 2024 14:03:25 -0400 Subject: [PATCH 09/60] Fix configuration of pallet_transaction_payment, reduce linear fees to fit e2e tests. --- runtime/src/lib.rs | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/runtime/src/lib.rs b/runtime/src/lib.rs index c1433df40..54f4552ed 100644 --- a/runtime/src/lib.rs +++ b/runtime/src/lib.rs @@ -397,18 +397,16 @@ impl pallet_balances::Config for Runtime { type MaxFreezes = ConstU32<50>; } -pub struct LinearWeightToFee(sp_std::marker::PhantomData); +pub struct LinearWeightToFee; -impl WeightToFeePolynomial for LinearWeightToFee -where - C: Get, +impl WeightToFeePolynomial for LinearWeightToFee { type Balance = Balance; fn polynomial() -> WeightToFeeCoefficients { let coefficient = WeightToFeeCoefficient { coeff_integer: 0, - coeff_frac: Perbill::from_parts(1_000_000), + coeff_frac: Perbill::from_parts(500_000), negative: false, degree: 1, }; @@ -418,9 +416,6 @@ where } parameter_types! { - // Used with LinearWeightToFee conversion. - pub const FeeWeightRatio: u64 = 1; - pub const TransactionByteFee: u64 = 1; pub const OperationalFeeMultiplier: u8 = 5; pub FeeMultiplier: Multiplier = Multiplier::one(); } @@ -452,10 +447,9 @@ impl impl pallet_transaction_payment::Config for Runtime { type RuntimeEvent = RuntimeEvent; - //type TransactionByteFee = TransactionByteFee; type OnChargeTransaction = FungibleAdapter; // Convert dispatch weight to a chargeable fee. - type WeightToFee = LinearWeightToFee; + type WeightToFee = LinearWeightToFee; type OperationalFeeMultiplier = OperationalFeeMultiplier; type LengthToFee = IdentityFee; type FeeMultiplierUpdate = ConstFeeMultiplier; From 3f3b546786bb9a74c8d4a666989415c9d90d59e6 Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Thu, 29 Aug 2024 14:27:23 -0400 Subject: [PATCH 10/60] Format --- runtime/src/lib.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/runtime/src/lib.rs b/runtime/src/lib.rs index 54f4552ed..7791b57bd 100644 --- a/runtime/src/lib.rs +++ b/runtime/src/lib.rs @@ -399,8 +399,7 @@ impl pallet_balances::Config for Runtime { pub struct LinearWeightToFee; -impl WeightToFeePolynomial for LinearWeightToFee -{ +impl WeightToFeePolynomial for LinearWeightToFee { type Balance = Balance; fn polynomial() -> WeightToFeeCoefficients { From 8c1de0d94ac9128acd88db4fb519cbb053e17c1b Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Thu, 29 Aug 2024 16:06:21 -0400 Subject: [PATCH 11/60] Fix zepter check --- runtime/Cargo.toml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/runtime/Cargo.toml b/runtime/Cargo.toml index 463475384..9f6c8c453 100644 --- a/runtime/Cargo.toml +++ b/runtime/Cargo.toml @@ -213,12 +213,7 @@ runtime-benchmarks = [ "pallet-sudo/runtime-benchmarks", # EVM + Frontier -# "fp-self-contained/runtime-benchmarks", -# "pallet-base-fee/runtime-benchmarks", -# "pallet-dynamic-fee/runtime-benchmarks", "pallet-ethereum/runtime-benchmarks", -# "pallet-evm/runtime-benchmarks", -# "pallet-evm-chain-id/runtime-benchmarks", ] try-runtime = [ "frame-try-runtime/try-runtime", @@ -229,6 +224,7 @@ try-runtime = [ "pallet-sudo/try-runtime", "pallet-balances/try-runtime", "pallet-grandpa/try-runtime", + "pallet-hotfix-sufficients/try-runtime", "pallet-insecure-randomness-collective-flip/try-runtime", "pallet-timestamp/try-runtime", "pallet-transaction-payment/try-runtime", From 072bdeaa2ca1a9fc48a0dd19805a5a4255082410 Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Thu, 29 Aug 2024 16:29:58 -0400 Subject: [PATCH 12/60] Fix zepter check --- runtime/Cargo.toml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/runtime/Cargo.toml b/runtime/Cargo.toml index 9f6c8c453..831710058 100644 --- a/runtime/Cargo.toml +++ b/runtime/Cargo.toml @@ -214,6 +214,8 @@ runtime-benchmarks = [ # EVM + Frontier "pallet-ethereum/runtime-benchmarks", + "pallet-evm/runtime-benchmarks", + "pallet-hotfix-sufficients/runtime-benchmarks", ] try-runtime = [ "frame-try-runtime/try-runtime", From 0d571b4a25a673add6e74e4887e2059ad7aa2491 Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Fri, 30 Aug 2024 13:05:19 -0400 Subject: [PATCH 13/60] Cleanup and fix gas to weight to fees conversion --- runtime/src/lib.rs | 22 ++++++++-------------- 1 file changed, 8 insertions(+), 14 deletions(-) diff --git a/runtime/src/lib.rs b/runtime/src/lib.rs index 7791b57bd..325a64369 100644 --- a/runtime/src/lib.rs +++ b/runtime/src/lib.rs @@ -83,7 +83,6 @@ mod precompiles; use precompiles::FrontierPrecompiles; // Frontier -use fp_evm::weight_per_gas; use fp_rpc::TransactionStatus; use pallet_ethereum::{Call::transact, PostLogContent, Transaction as EthereumTransaction}; use pallet_evm::{Account as EVMAccount, FeeCalculator, Runner}; @@ -193,17 +192,6 @@ pub const DAYS: BlockNumber = HOURS * 24; pub const MAXIMUM_BLOCK_WEIGHT: Weight = Weight::from_parts(4u64 * WEIGHT_REF_TIME_PER_SECOND, u64::MAX); -/// Current approximation of the gas/s consumption considering -/// EVM execution over compiled WASM (on 4.4Ghz CPU). -/// Given the 500ms Weight, from which 75% only are used for transactions, -/// the total EVM execution gas limit is: GAS_PER_SECOND * 0.500 * 0.75 ~= 15_000_000. -/// Note: this value has been used in production by (and is copied from) the Moonbeam parachain. -pub const GAS_PER_SECOND: u64 = 40_000_000; - -/// Approximate ratio of the amount of Weight per Gas. -/// u64 works for approximations because Weight is a very small unit compared to gas. -pub const WEIGHT_PER_GAS: u64 = WEIGHT_REF_TIME_PER_SECOND / GAS_PER_SECOND; - // The version information used to identify this runtime when compiled natively. #[cfg(feature = "std")] pub fn native_version() -> NativeVersion { @@ -1080,11 +1068,17 @@ impl> FindAuthor for FindAuthorTruncated { const BLOCK_GAS_LIMIT: u64 = 75_000_000; const MAX_POV_SIZE: u64 = 5 * 1024 * 1024; +/// `WeightPerGas` is an approximate ratio of the amount of Weight per Gas. +/// +fn weight_per_gas() -> Weight { + (NORMAL_DISPATCH_RATIO * MAXIMUM_BLOCK_WEIGHT).saturating_div(BLOCK_GAS_LIMIT) +} + parameter_types! { pub BlockGasLimit: U256 = U256::from(BLOCK_GAS_LIMIT); pub const GasLimitPovSizeRatio: u64 = BLOCK_GAS_LIMIT.saturating_div(MAX_POV_SIZE); pub PrecompilesValue: FrontierPrecompiles = FrontierPrecompiles::<_>::new(); - pub WeightPerGas: Weight = Weight::from_parts(weight_per_gas(BLOCK_GAS_LIMIT, NORMAL_DISPATCH_RATIO, MILLISECS_PER_BLOCK), 0); + pub WeightPerGas: Weight = weight_per_gas(); pub SuicideQuickClearLimit: u32 = 0; } @@ -1132,7 +1126,7 @@ impl pallet_dynamic_fee::Config for Runtime { } parameter_types! { - pub DefaultBaseFeePerGas: U256 = U256::from(1_000_000_000); + pub DefaultBaseFeePerGas: U256 = U256::from(20); pub DefaultElasticity: Permill = Permill::from_parts(125_000); } pub struct BaseFeeThreshold; From 020fb2ab3ee8c7d4068b02f0cbb42500060fce0a Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Fri, 30 Aug 2024 13:05:37 -0400 Subject: [PATCH 14/60] Format --- runtime/src/lib.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime/src/lib.rs b/runtime/src/lib.rs index 325a64369..ecf35faea 100644 --- a/runtime/src/lib.rs +++ b/runtime/src/lib.rs @@ -1071,7 +1071,7 @@ const MAX_POV_SIZE: u64 = 5 * 1024 * 1024; /// `WeightPerGas` is an approximate ratio of the amount of Weight per Gas. /// fn weight_per_gas() -> Weight { - (NORMAL_DISPATCH_RATIO * MAXIMUM_BLOCK_WEIGHT).saturating_div(BLOCK_GAS_LIMIT) + (NORMAL_DISPATCH_RATIO * MAXIMUM_BLOCK_WEIGHT).saturating_div(BLOCK_GAS_LIMIT) } parameter_types! { From 9609bd254a84e43db7dc895ff7351fde68a7e8b4 Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Fri, 30 Aug 2024 18:17:21 -0400 Subject: [PATCH 15/60] Change chain ID to 945 for testnet --- runtime/src/lib.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/runtime/src/lib.rs b/runtime/src/lib.rs index ecf35faea..4b1b1d565 100644 --- a/runtime/src/lib.rs +++ b/runtime/src/lib.rs @@ -1041,7 +1041,8 @@ impl pallet_admin_utils::Config for Runtime { // Define the ChainId parameter_types! { - pub const SubtensorChainId: u64 = 0x03C4; // Unicode for lowercase tau + pub const SubtensorChainId: u64 = 0x03B1; // Unicode for lowercase alpha + // pub const SubtensorChainId: u64 = 0x03C4; // Unicode for lowercase tau } impl pallet_evm_chain_id::Config for Runtime {} From e88f428ad2c029504c887fdc633effde1a083d76 Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Tue, 3 Sep 2024 10:52:04 -0400 Subject: [PATCH 16/60] Add staking precompile implementation notes --- runtime/src/precompiles/staking.rs | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 runtime/src/precompiles/staking.rs diff --git a/runtime/src/precompiles/staking.rs b/runtime/src/precompiles/staking.rs new file mode 100644 index 000000000..31652332f --- /dev/null +++ b/runtime/src/precompiles/staking.rs @@ -0,0 +1,25 @@ +/// Staking precompile's goal is to allow interaction between EVM users and smart contracts and +/// subtensor staking functionality, namely add_stake, and remove_stake extrinsics. +/// +/// Additional requirement is to preserve compatibility with Ethereum indexers, which requires +/// no balance transfers from EVM accounts without a corresponding transaction that can be +/// parsed by an indexer. +/// +/// Implementation of add_stake: +/// - User transfers balance that will be staked to the precompile address with a payable +/// method addStake. This method also takes hotkey public key (bytes32) of the hotkey +/// that the stake should be assigned to. +/// - Precompile transfers the balance back to the signing address, and then invokes +/// do_add_stake from subtensor pallet with signing origin that mmatches to HashedAddressMapping +/// of the message sender, which will effectively withdraw and stake balance from the message +/// sender. +/// - Precompile checks the result of do_add_stake and, in case of a failure, reverts the transaction, +/// and leaves the balance on the message sender account. +/// +/// Implementation of remove_stake: +/// - User involkes removeStake method and specifies hotkey public key (bytes32) of the hotkey +/// to remove stake from, and the amount to unstake. +/// - Precompile calls do_remove_stake method of the subtensor pallet with the signing origin of message +/// sender, which effectively unstakes the specified amount and credits it to the message sender +/// - Precompile checks the result of do_remove_stake and, in case of a failure, reverts the transaction. +/// From 8285c39889bc42904c3a5ea1f29e6fbc8c8b2f7a Mon Sep 17 00:00:00 2001 From: DedicatedDev Date: Wed, 4 Sep 2024 20:26:28 +0300 Subject: [PATCH 17/60] add add staking logic --- runtime/src/precompiles/mod.rs | 8 ++- runtime/src/precompiles/staking.rs | 108 ++++++++++++++++++++++------- 2 files changed, 90 insertions(+), 26 deletions(-) diff --git a/runtime/src/precompiles/mod.rs b/runtime/src/precompiles/mod.rs index 6831cb6a8..f1902ff8d 100644 --- a/runtime/src/precompiles/mod.rs +++ b/runtime/src/precompiles/mod.rs @@ -12,8 +12,10 @@ use pallet_evm_precompile_simple::{ECRecover, ECRecoverPublicKey, Identity, Ripe // Include custom precompiles mod balance_transfer; +mod staking; use balance_transfer::*; +use staking::*; pub struct FrontierPrecompiles(PhantomData); @@ -33,7 +35,7 @@ where pub fn new() -> Self { Self(Default::default()) } - pub fn used_addresses() -> [H160; 8] { + pub fn used_addresses() -> [H160; 9] { [ hash(1), hash(2), @@ -43,6 +45,7 @@ where hash(1024), hash(1025), hash(BALANCE_TRANSFER_INDEX), + hash(STAKING_PRECOMPILE_INDEX), ] } } @@ -63,6 +66,9 @@ where a if a == hash(1025) => Some(ECRecoverPublicKey::execute(handle)), a if a == hash(BALANCE_TRANSFER_INDEX) => { Some(BalanceTransferPrecompile::execute(handle)) + }, + a if a == hash(STAKING_PRECOMPILE_INDEX) => { + Some(StakingPrecompile::execute(handle)) // Add this line } _ => None, } diff --git a/runtime/src/precompiles/staking.rs b/runtime/src/precompiles/staking.rs index 31652332f..bfceba15e 100644 --- a/runtime/src/precompiles/staking.rs +++ b/runtime/src/precompiles/staking.rs @@ -1,25 +1,83 @@ -/// Staking precompile's goal is to allow interaction between EVM users and smart contracts and -/// subtensor staking functionality, namely add_stake, and remove_stake extrinsics. -/// -/// Additional requirement is to preserve compatibility with Ethereum indexers, which requires -/// no balance transfers from EVM accounts without a corresponding transaction that can be -/// parsed by an indexer. -/// -/// Implementation of add_stake: -/// - User transfers balance that will be staked to the precompile address with a payable -/// method addStake. This method also takes hotkey public key (bytes32) of the hotkey -/// that the stake should be assigned to. -/// - Precompile transfers the balance back to the signing address, and then invokes -/// do_add_stake from subtensor pallet with signing origin that mmatches to HashedAddressMapping -/// of the message sender, which will effectively withdraw and stake balance from the message -/// sender. -/// - Precompile checks the result of do_add_stake and, in case of a failure, reverts the transaction, -/// and leaves the balance on the message sender account. -/// -/// Implementation of remove_stake: -/// - User involkes removeStake method and specifies hotkey public key (bytes32) of the hotkey -/// to remove stake from, and the amount to unstake. -/// - Precompile calls do_remove_stake method of the subtensor pallet with the signing origin of message -/// sender, which effectively unstakes the specified amount and credits it to the message sender -/// - Precompile checks the result of do_remove_stake and, in case of a failure, reverts the transaction. -/// +use frame_system::RawOrigin; +use pallet_evm::{ + ExitError, ExitSucceed, PrecompileFailure, PrecompileHandle, PrecompileOutput, PrecompileResult, +}; +use pallet_evm::{HashedAddressMapping,AddressMapping}; +use sp_core::{H160, U256}; +use sp_runtime::traits::BlakeTwo256; +use sp_runtime::traits::Dispatchable; +use sp_runtime::AccountId32; +use sp_std::vec; +use crate::precompiles::{bytes_to_account_id, get_method_id, get_slice}; + + +use crate::{Runtime, RuntimeCall}; +pub const STAKING_PRECOMPILE_INDEX: u64 = 2049; + +pub struct StakingPrecompile; + +impl StakingPrecompile { + pub fn execute(handle: &mut impl PrecompileHandle) -> PrecompileResult { + let txdata = handle.input(); + let method_id = get_slice(txdata, 0, 4)?; + let method_input = txdata[4..].to_vec(); // Avoiding borrowing conflicts + + if method_id == get_method_id("addStake(bytes32)") { + return Self::add_stake(handle, &method_input); + } else if method_id == get_method_id("removeStake(bytes32,uint64)") { + return Self::remove_stake(handle, &method_input); + }else { + return Err(PrecompileFailure::Error { + exit_status: ExitError::InvalidRange, + }) + } + } + + fn add_stake(handle: &mut impl PrecompileHandle, data: &[u8]) -> PrecompileResult { + let hotkey = Self::parse_hotkey(data)?.into(); + let amount: U256 = handle.context().apparent_value; + let call = RuntimeCall::SubtensorModule(pallet_subtensor::Call::::add_stake { + hotkey, + amount_staked: amount.as_u64(), + }); + + Self::dispatch(handle, call) + } + + fn remove_stake(handle: &mut impl PrecompileHandle, data: &[u8]) -> PrecompileResult { + let hotkey = Self::parse_hotkey(data)?.into(); + let amount = U256::from_big_endian(&data[32..40]).as_u64(); // Assuming the next 8 bytes represent the amount + let call = RuntimeCall::SubtensorModule(pallet_subtensor::Call::::remove_stake { + hotkey, + amount_unstaked: amount, + }); + Self::dispatch(handle, call) + } + + fn parse_hotkey(data: &[u8]) -> Result<[u8; 32], PrecompileFailure> { + if data.len() < 32 { + return Err(PrecompileFailure::Error { + exit_status: ExitError::InvalidRange, + }); + } + let mut hotkey = [0u8; 32]; + hotkey.copy_from_slice(&data[0..32]); + Ok(hotkey) + } + + fn dispatch(handle: &mut impl PrecompileHandle, call: RuntimeCall) -> PrecompileResult { + let account_id = as AddressMapping>::into_account_id(handle.context().caller); + log::info!("Mapped account_id: {:?}", account_id); + //let account_id = bytes_to_account_id(&address_bytes_src)?; + let result = call.dispatch(RawOrigin::Signed(account_id).into()); + match result { + Ok(_) => Ok(PrecompileOutput { + exit_status: ExitSucceed::Returned, + output: vec![], + }), + Err(_) => Err(PrecompileFailure::Error { + exit_status: ExitError::Other("Subtensor call failed".into()), + }), + } + } +} From 609005baa4b608c73cfb5a19a29a97b649b3ff8f Mon Sep 17 00:00:00 2001 From: DedicatedDev Date: Wed, 4 Sep 2024 20:28:22 +0300 Subject: [PATCH 18/60] refactor execute function --- runtime/src/precompiles/staking.rs | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/runtime/src/precompiles/staking.rs b/runtime/src/precompiles/staking.rs index bfceba15e..2572f95db 100644 --- a/runtime/src/precompiles/staking.rs +++ b/runtime/src/precompiles/staking.rs @@ -22,12 +22,10 @@ impl StakingPrecompile { let method_id = get_slice(txdata, 0, 4)?; let method_input = txdata[4..].to_vec(); // Avoiding borrowing conflicts - if method_id == get_method_id("addStake(bytes32)") { - return Self::add_stake(handle, &method_input); - } else if method_id == get_method_id("removeStake(bytes32,uint64)") { - return Self::remove_stake(handle, &method_input); - }else { - return Err(PrecompileFailure::Error { + match method_id { + id if id == get_method_id("addStake(bytes32)") => Self::add_stake(handle, &method_input), + id if id == get_method_id("removeStake(bytes32,uint64)") => Self::remove_stake(handle, &method_input), + _ => Err(PrecompileFailure::Error { exit_status: ExitError::InvalidRange, }) } From 231e5862896a81955e08d33f480141210617e25c Mon Sep 17 00:00:00 2001 From: DedicatedDev Date: Thu, 5 Sep 2024 00:17:28 +0300 Subject: [PATCH 19/60] add remove staking function --- runtime/src/precompiles/staking.rs | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/runtime/src/precompiles/staking.rs b/runtime/src/precompiles/staking.rs index 2572f95db..9d30e8435 100644 --- a/runtime/src/precompiles/staking.rs +++ b/runtime/src/precompiles/staking.rs @@ -3,14 +3,13 @@ use pallet_evm::{ ExitError, ExitSucceed, PrecompileFailure, PrecompileHandle, PrecompileOutput, PrecompileResult, }; use pallet_evm::{HashedAddressMapping,AddressMapping}; -use sp_core::{H160, U256}; +use sp_core::U256; use sp_runtime::traits::BlakeTwo256; use sp_runtime::traits::Dispatchable; use sp_runtime::AccountId32; use sp_std::vec; use crate::precompiles::{bytes_to_account_id, get_method_id, get_slice}; - use crate::{Runtime, RuntimeCall}; pub const STAKING_PRECOMPILE_INDEX: u64 = 2049; @@ -34,14 +33,14 @@ impl StakingPrecompile { fn add_stake(handle: &mut impl PrecompileHandle, data: &[u8]) -> PrecompileResult { let hotkey = Self::parse_hotkey(data)?.into(); let amount: U256 = handle.context().apparent_value; + // Create the add_stake call let call = RuntimeCall::SubtensorModule(pallet_subtensor::Call::::add_stake { hotkey, amount_staked: amount.as_u64(), }); - + // Dispatch the add_stake call Self::dispatch(handle, call) } - fn remove_stake(handle: &mut impl PrecompileHandle, data: &[u8]) -> PrecompileResult { let hotkey = Self::parse_hotkey(data)?.into(); let amount = U256::from_big_endian(&data[32..40]).as_u64(); // Assuming the next 8 bytes represent the amount @@ -65,9 +64,11 @@ impl StakingPrecompile { fn dispatch(handle: &mut impl PrecompileHandle, call: RuntimeCall) -> PrecompileResult { let account_id = as AddressMapping>::into_account_id(handle.context().caller); - log::info!("Mapped account_id: {:?}", account_id); - //let account_id = bytes_to_account_id(&address_bytes_src)?; let result = call.dispatch(RawOrigin::Signed(account_id).into()); + match &result { + Ok(post_info) => log::info!("Dispatch succeeded. Post info: {:?}", post_info), + Err(dispatch_error) => log::error!("Dispatch failed. Error: {:?}", dispatch_error), + } match result { Ok(_) => Ok(PrecompileOutput { exit_status: ExitSucceed::Returned, From 074c9b63b4513ada30b132085af2420767b8124c Mon Sep 17 00:00:00 2001 From: DedicatedDev Date: Thu, 5 Sep 2024 00:24:52 +0300 Subject: [PATCH 20/60] fix lint issue --- runtime/src/precompiles/mod.rs | 2 +- runtime/src/precompiles/staking.rs | 19 +++++++++++++------ 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/runtime/src/precompiles/mod.rs b/runtime/src/precompiles/mod.rs index f1902ff8d..e1ef8439a 100644 --- a/runtime/src/precompiles/mod.rs +++ b/runtime/src/precompiles/mod.rs @@ -66,7 +66,7 @@ where a if a == hash(1025) => Some(ECRecoverPublicKey::execute(handle)), a if a == hash(BALANCE_TRANSFER_INDEX) => { Some(BalanceTransferPrecompile::execute(handle)) - }, + } a if a == hash(STAKING_PRECOMPILE_INDEX) => { Some(StakingPrecompile::execute(handle)) // Add this line } diff --git a/runtime/src/precompiles/staking.rs b/runtime/src/precompiles/staking.rs index 9d30e8435..51f7609a1 100644 --- a/runtime/src/precompiles/staking.rs +++ b/runtime/src/precompiles/staking.rs @@ -1,14 +1,14 @@ +use crate::precompiles::{bytes_to_account_id, get_method_id, get_slice}; use frame_system::RawOrigin; +use pallet_evm::{AddressMapping, HashedAddressMapping}; use pallet_evm::{ ExitError, ExitSucceed, PrecompileFailure, PrecompileHandle, PrecompileOutput, PrecompileResult, }; -use pallet_evm::{HashedAddressMapping,AddressMapping}; use sp_core::U256; use sp_runtime::traits::BlakeTwo256; use sp_runtime::traits::Dispatchable; use sp_runtime::AccountId32; use sp_std::vec; -use crate::precompiles::{bytes_to_account_id, get_method_id, get_slice}; use crate::{Runtime, RuntimeCall}; pub const STAKING_PRECOMPILE_INDEX: u64 = 2049; @@ -22,11 +22,15 @@ impl StakingPrecompile { let method_input = txdata[4..].to_vec(); // Avoiding borrowing conflicts match method_id { - id if id == get_method_id("addStake(bytes32)") => Self::add_stake(handle, &method_input), - id if id == get_method_id("removeStake(bytes32,uint64)") => Self::remove_stake(handle, &method_input), + id if id == get_method_id("addStake(bytes32)") => { + Self::add_stake(handle, &method_input) + } + id if id == get_method_id("removeStake(bytes32,uint64)") => { + Self::remove_stake(handle, &method_input) + } _ => Err(PrecompileFailure::Error { exit_status: ExitError::InvalidRange, - }) + }), } } @@ -63,7 +67,10 @@ impl StakingPrecompile { } fn dispatch(handle: &mut impl PrecompileHandle, call: RuntimeCall) -> PrecompileResult { - let account_id = as AddressMapping>::into_account_id(handle.context().caller); + let account_id = + as AddressMapping>::into_account_id( + handle.context().caller, + ); let result = call.dispatch(RawOrigin::Signed(account_id).into()); match &result { Ok(post_info) => log::info!("Dispatch succeeded. Post info: {:?}", post_info), From fad6d17da70bb8afffcca993f063e5da77b4c93c Mon Sep 17 00:00:00 2001 From: DedicatedDev Date: Thu, 5 Sep 2024 13:31:17 +0300 Subject: [PATCH 21/60] add refund logic to caller --- runtime/src/precompiles/staking.rs | 66 +++++++++++++++++++++++------- 1 file changed, 52 insertions(+), 14 deletions(-) diff --git a/runtime/src/precompiles/staking.rs b/runtime/src/precompiles/staking.rs index 51f7609a1..95f2e9677 100644 --- a/runtime/src/precompiles/staking.rs +++ b/runtime/src/precompiles/staking.rs @@ -1,14 +1,16 @@ -use crate::precompiles::{bytes_to_account_id, get_method_id, get_slice}; use frame_system::RawOrigin; -use pallet_evm::{AddressMapping, HashedAddressMapping}; use pallet_evm::{ ExitError, ExitSucceed, PrecompileFailure, PrecompileHandle, PrecompileOutput, PrecompileResult, }; +use pallet_evm::{HashedAddressMapping,AddressMapping}; +use sp_core::crypto::Ss58Codec; use sp_core::U256; use sp_runtime::traits::BlakeTwo256; use sp_runtime::traits::Dispatchable; use sp_runtime::AccountId32; + use sp_std::vec; +use crate::precompiles::{get_method_id, get_slice}; use crate::{Runtime, RuntimeCall}; pub const STAKING_PRECOMPILE_INDEX: u64 = 2049; @@ -22,15 +24,11 @@ impl StakingPrecompile { let method_input = txdata[4..].to_vec(); // Avoiding borrowing conflicts match method_id { - id if id == get_method_id("addStake(bytes32)") => { - Self::add_stake(handle, &method_input) - } - id if id == get_method_id("removeStake(bytes32,uint64)") => { - Self::remove_stake(handle, &method_input) - } + id if id == get_method_id("addStake(bytes32)") => Self::add_stake(handle, &method_input), + id if id == get_method_id("removeStake(bytes32,uint64)") => Self::remove_stake(handle, &method_input), _ => Err(PrecompileFailure::Error { exit_status: ExitError::InvalidRange, - }), + }) } } @@ -67,11 +65,17 @@ impl StakingPrecompile { } fn dispatch(handle: &mut impl PrecompileHandle, call: RuntimeCall) -> PrecompileResult { - let account_id = - as AddressMapping>::into_account_id( - handle.context().caller, - ); - let result = call.dispatch(RawOrigin::Signed(account_id).into()); + let account_id = as AddressMapping>::into_account_id(handle.context().caller); + + // Transfer the amount back to the caller before executing the staking operation + // let caller = handle.context().caller; + let amount = handle.context().apparent_value; + + if !amount.is_zero() { + Self::transfer_back_to_caller (&account_id, amount)?; + } + + let result = call.dispatch(RawOrigin::Signed(account_id.clone()).into()); match &result { Ok(post_info) => log::info!("Dispatch succeeded. Post info: {:?}", post_info), Err(dispatch_error) => log::error!("Dispatch failed. Error: {:?}", dispatch_error), @@ -86,4 +90,38 @@ impl StakingPrecompile { }), } } + + + fn transfer_back_to_caller( + account_id: &AccountId32, + amount: U256, + ) -> Result<(), PrecompileFailure> { + // this is staking smart contract's(0x0000000000000000000000000000000000000800) sr25519 address + let smart_contract_account_id = match AccountId32::from_ss58check("5CwnBK9Ack1mhznmCnwiibCNQc174pYQVktYW3ayRpLm4K2X") { + Ok(addr) => addr, + Err(_) => { + return Err(PrecompileFailure::Error { + exit_status: ExitError::Other("Invalid SS58 address".into()), + }); + } + }; + + // Create a transfer call from the smart contract to the caller + let transfer_call = RuntimeCall::Balances(pallet_balances::Call::::transfer_allow_death { + dest: account_id.clone().into(), + value: amount.as_u64(), + }); + + // Execute the transfer + let transfer_result = transfer_call.dispatch(RawOrigin::Signed(smart_contract_account_id).into()); + + if let Err(dispatch_error) = transfer_result { + log::error!("Transfer back to caller failed. Error: {:?}", dispatch_error); + return Err(PrecompileFailure::Error { + exit_status: ExitError::Other("Transfer back to caller failed".into()), + }); + } + + Ok(()) + } } From 7e047fa0eb0f4e6eb944c40617224ad9bc44a688 Mon Sep 17 00:00:00 2001 From: DedicatedDev Date: Thu, 5 Sep 2024 13:33:37 +0300 Subject: [PATCH 22/60] fix lint issue --- runtime/src/precompiles/staking.rs | 64 ++++++++++++++++++------------ 1 file changed, 38 insertions(+), 26 deletions(-) diff --git a/runtime/src/precompiles/staking.rs b/runtime/src/precompiles/staking.rs index 95f2e9677..11baa0130 100644 --- a/runtime/src/precompiles/staking.rs +++ b/runtime/src/precompiles/staking.rs @@ -1,16 +1,16 @@ use frame_system::RawOrigin; +use pallet_evm::{AddressMapping, HashedAddressMapping}; use pallet_evm::{ ExitError, ExitSucceed, PrecompileFailure, PrecompileHandle, PrecompileOutput, PrecompileResult, }; -use pallet_evm::{HashedAddressMapping,AddressMapping}; use sp_core::crypto::Ss58Codec; use sp_core::U256; use sp_runtime::traits::BlakeTwo256; use sp_runtime::traits::Dispatchable; use sp_runtime::AccountId32; -use sp_std::vec; use crate::precompiles::{get_method_id, get_slice}; +use sp_std::vec; use crate::{Runtime, RuntimeCall}; pub const STAKING_PRECOMPILE_INDEX: u64 = 2049; @@ -24,11 +24,15 @@ impl StakingPrecompile { let method_input = txdata[4..].to_vec(); // Avoiding borrowing conflicts match method_id { - id if id == get_method_id("addStake(bytes32)") => Self::add_stake(handle, &method_input), - id if id == get_method_id("removeStake(bytes32,uint64)") => Self::remove_stake(handle, &method_input), + id if id == get_method_id("addStake(bytes32)") => { + Self::add_stake(handle, &method_input) + } + id if id == get_method_id("removeStake(bytes32,uint64)") => { + Self::remove_stake(handle, &method_input) + } _ => Err(PrecompileFailure::Error { exit_status: ExitError::InvalidRange, - }) + }), } } @@ -65,16 +69,19 @@ impl StakingPrecompile { } fn dispatch(handle: &mut impl PrecompileHandle, call: RuntimeCall) -> PrecompileResult { - let account_id = as AddressMapping>::into_account_id(handle.context().caller); + let account_id = + as AddressMapping>::into_account_id( + handle.context().caller, + ); // Transfer the amount back to the caller before executing the staking operation - // let caller = handle.context().caller; + // let caller = handle.context().caller; let amount = handle.context().apparent_value; if !amount.is_zero() { - Self::transfer_back_to_caller (&account_id, amount)?; - } - + Self::transfer_back_to_caller(&account_id, amount)?; + } + let result = call.dispatch(RawOrigin::Signed(account_id.clone()).into()); match &result { Ok(post_info) => log::info!("Dispatch succeeded. Post info: {:?}", post_info), @@ -91,32 +98,37 @@ impl StakingPrecompile { } } - fn transfer_back_to_caller( account_id: &AccountId32, amount: U256, ) -> Result<(), PrecompileFailure> { - // this is staking smart contract's(0x0000000000000000000000000000000000000800) sr25519 address - let smart_contract_account_id = match AccountId32::from_ss58check("5CwnBK9Ack1mhznmCnwiibCNQc174pYQVktYW3ayRpLm4K2X") { - Ok(addr) => addr, - Err(_) => { - return Err(PrecompileFailure::Error { - exit_status: ExitError::Other("Invalid SS58 address".into()), - }); - } - }; + // this is staking smart contract's(0x0000000000000000000000000000000000000800) sr25519 address + let smart_contract_account_id = + match AccountId32::from_ss58check("5CwnBK9Ack1mhznmCnwiibCNQc174pYQVktYW3ayRpLm4K2X") { + Ok(addr) => addr, + Err(_) => { + return Err(PrecompileFailure::Error { + exit_status: ExitError::Other("Invalid SS58 address".into()), + }); + } + }; // Create a transfer call from the smart contract to the caller - let transfer_call = RuntimeCall::Balances(pallet_balances::Call::::transfer_allow_death { - dest: account_id.clone().into(), - value: amount.as_u64(), - }); + let transfer_call = + RuntimeCall::Balances(pallet_balances::Call::::transfer_allow_death { + dest: account_id.clone().into(), + value: amount.as_u64(), + }); // Execute the transfer - let transfer_result = transfer_call.dispatch(RawOrigin::Signed(smart_contract_account_id).into()); + let transfer_result = + transfer_call.dispatch(RawOrigin::Signed(smart_contract_account_id).into()); if let Err(dispatch_error) = transfer_result { - log::error!("Transfer back to caller failed. Error: {:?}", dispatch_error); + log::error!( + "Transfer back to caller failed. Error: {:?}", + dispatch_error + ); return Err(PrecompileFailure::Error { exit_status: ExitError::Other("Transfer back to caller failed".into()), }); From 600e6d18b8b71537a259b1aa6acc0d75b444f44a Mon Sep 17 00:00:00 2001 From: DedicatedDev Date: Thu, 5 Sep 2024 21:02:02 +0300 Subject: [PATCH 23/60] fix clippy lint issues --- runtime/src/precompiles/staking.rs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/runtime/src/precompiles/staking.rs b/runtime/src/precompiles/staking.rs index 11baa0130..d156e33ae 100644 --- a/runtime/src/precompiles/staking.rs +++ b/runtime/src/precompiles/staking.rs @@ -21,7 +21,7 @@ impl StakingPrecompile { pub fn execute(handle: &mut impl PrecompileHandle) -> PrecompileResult { let txdata = handle.input(); let method_id = get_slice(txdata, 0, 4)?; - let method_input = txdata[4..].to_vec(); // Avoiding borrowing conflicts + let method_input = txdata.get(4..).map_or_else(vec::Vec::new, |slice| slice.to_vec()); // Avoiding borrowing conflicts match method_id { id if id == get_method_id("addStake(bytes32)") => { @@ -49,7 +49,9 @@ impl StakingPrecompile { } fn remove_stake(handle: &mut impl PrecompileHandle, data: &[u8]) -> PrecompileResult { let hotkey = Self::parse_hotkey(data)?.into(); - let amount = U256::from_big_endian(&data[32..40]).as_u64(); // Assuming the next 8 bytes represent the amount + let amount = data.get(32..40) + .map(U256::from_big_endian) + .map_or(0, |v| v.as_u64()); // Assuming the next 8 bytes represent the amount let call = RuntimeCall::SubtensorModule(pallet_subtensor::Call::::remove_stake { hotkey, amount_unstaked: amount, @@ -64,7 +66,7 @@ impl StakingPrecompile { }); } let mut hotkey = [0u8; 32]; - hotkey.copy_from_slice(&data[0..32]); + hotkey.copy_from_slice(get_slice(data, 0, 32)?); Ok(hotkey) } From 27797ae34cf80882d19ca2d77a5663b9f6683df6 Mon Sep 17 00:00:00 2001 From: DedicatedDev Date: Thu, 5 Sep 2024 22:37:40 +0300 Subject: [PATCH 24/60] fix clippy lint issues --- runtime/src/precompiles/staking.rs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/runtime/src/precompiles/staking.rs b/runtime/src/precompiles/staking.rs index d156e33ae..5d7042e46 100644 --- a/runtime/src/precompiles/staking.rs +++ b/runtime/src/precompiles/staking.rs @@ -21,7 +21,9 @@ impl StakingPrecompile { pub fn execute(handle: &mut impl PrecompileHandle) -> PrecompileResult { let txdata = handle.input(); let method_id = get_slice(txdata, 0, 4)?; - let method_input = txdata.get(4..).map_or_else(vec::Vec::new, |slice| slice.to_vec()); // Avoiding borrowing conflicts + let method_input = txdata + .get(4..) + .map_or_else(vec::Vec::new, |slice| slice.to_vec()); // Avoiding borrowing conflicts match method_id { id if id == get_method_id("addStake(bytes32)") => { @@ -49,7 +51,8 @@ impl StakingPrecompile { } fn remove_stake(handle: &mut impl PrecompileHandle, data: &[u8]) -> PrecompileResult { let hotkey = Self::parse_hotkey(data)?.into(); - let amount = data.get(32..40) + let amount = data + .get(32..40) .map(U256::from_big_endian) .map_or(0, |v| v.as_u64()); // Assuming the next 8 bytes represent the amount let call = RuntimeCall::SubtensorModule(pallet_subtensor::Call::::remove_stake { From 1c2c12f7f992f12c7e0acd3c7c3cb95d428e33b7 Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Thu, 5 Sep 2024 18:12:50 -0400 Subject: [PATCH 25/60] Address code review comments: Separate RPC merging into helper functions --- node/src/ethereum.rs | 279 ++++++++++++++++++++++++++++++------------- node/src/rpc.rs | 4 +- 2 files changed, 201 insertions(+), 82 deletions(-) diff --git a/node/src/ethereum.rs b/node/src/ethereum.rs index 973e47aab..9b89a90a6 100644 --- a/node/src/ethereum.rs +++ b/node/src/ethereum.rs @@ -1,5 +1,9 @@ use crate::rpc::EthDeps; -pub use fc_rpc::{EthConfig, EthTask}; +use fc_rpc::{ + pending::AuraConsensusDataProvider, Debug, DebugApiServer, Eth, EthApiServer, EthConfig, + EthDevSigner, EthFilter, EthFilterApiServer, EthPubSub, EthPubSubApiServer, EthSigner, EthTask, + Net, NetApiServer, Web3, Web3ApiServer, +}; use fp_rpc::{ConvertTransaction, ConvertTransactionRuntimeApi, EthereumRuntimeRPCApi}; use futures::future; use futures::StreamExt; @@ -207,17 +211,10 @@ pub async fn spawn_frontier_tasks( ); } -/// Instantiate Ethereum-compatible RPC extensions. -pub fn create_eth( - mut io: RpcModule<()>, - deps: EthDeps, - subscription_task_executor: SubscriptionTaskExecutor, - pubsub_notification_sinks: Arc< - fc_mapping_sync::EthereumBlockNotificationSinks< - fc_mapping_sync::EthereumBlockNotification, - >, - >, -) -> Result, Box> +fn extend_rpc_aet_api( + io: &mut RpcModule<()>, + deps: &EthDeps, +) -> Result<(), Box> where B: BlockT, C: CallApiAt + ProvideRuntimeApi, @@ -230,118 +227,240 @@ where BE: Backend + 'static, P: TransactionPool + 'static, A: ChainApi + 'static, - CT: ConvertTransaction<::Extrinsic> + Send + Sync + 'static, - CIDP: CreateInherentDataProviders + Send + 'static, + CT: ConvertTransaction<::Extrinsic> + Send + Sync + Clone + 'static, + CIDP: CreateInherentDataProviders + Send + Clone + 'static, EC: EthConfig, { - use fc_rpc::{ - pending::AuraConsensusDataProvider, Debug, DebugApiServer, Eth, EthApiServer, EthDevSigner, - EthFilter, EthFilterApiServer, EthPubSub, EthPubSubApiServer, EthSigner, Net, NetApiServer, - Web3, Web3ApiServer, - }; - #[cfg(feature = "txpool")] - use fc_rpc::{TxPool, TxPoolApiServer}; - - let EthDeps { - client, - pool, - graph, - converter, - is_authority, - enable_dev_signer, - network, - sync, - frontier_backend, - storage_override, - block_data_cache, - filter_pool, - max_past_logs, - fee_history_cache, - fee_history_cache_limit, - execute_gas_limit_multiplier, - forced_parent_hashes, - pending_create_inherent_data_providers, - } = deps; - let mut signers = Vec::new(); - if enable_dev_signer { + if deps.enable_dev_signer { signers.push(Box::new(EthDevSigner::new()) as Box); } io.merge( Eth::::new( - client.clone(), - pool.clone(), - graph.clone(), - converter, - sync.clone(), + deps.client.clone(), + deps.pool.clone(), + deps.graph.clone(), + deps.converter.clone(), + deps.sync.clone(), signers, - storage_override.clone(), - frontier_backend.clone(), - is_authority, - block_data_cache.clone(), - fee_history_cache, - fee_history_cache_limit, - execute_gas_limit_multiplier, - forced_parent_hashes, - pending_create_inherent_data_providers, - Some(Box::new(AuraConsensusDataProvider::new(client.clone()))), + deps.storage_override.clone(), + deps.frontier_backend.clone(), + deps.is_authority, + deps.block_data_cache.clone(), + deps.fee_history_cache.clone(), + deps.fee_history_cache_limit, + deps.execute_gas_limit_multiplier, + deps.forced_parent_hashes.clone(), + deps.pending_create_inherent_data_providers.clone(), + Some(Box::new(AuraConsensusDataProvider::new( + deps.client.clone(), + ))), ) .replace_config::() .into_rpc(), )?; + Ok(()) +} - if let Some(filter_pool) = filter_pool { +fn extend_rpc_eth_filter( + io: &mut RpcModule<()>, + deps: &EthDeps, +) -> Result<(), Box> +where + B: BlockT, + C: CallApiAt + ProvideRuntimeApi, + C::Api: AuraApi + + BlockBuilderApi + + ConvertTransactionRuntimeApi + + EthereumRuntimeRPCApi, + C: HeaderBackend + HeaderMetadata, + C: BlockchainEvents + AuxStore + UsageProvider + StorageProvider + 'static, + BE: Backend + 'static, + P: TransactionPool + 'static, + A: ChainApi + 'static, + CT: ConvertTransaction<::Extrinsic> + Send + Sync + Clone + 'static, + CIDP: CreateInherentDataProviders + Send + Clone + 'static, +{ + if let Some(filter_pool) = deps.filter_pool.clone() { io.merge( EthFilter::new( - client.clone(), - frontier_backend.clone(), - graph.clone(), + deps.client.clone(), + deps.frontier_backend.clone(), + deps.graph.clone(), filter_pool, 500_usize, // max stored filters - max_past_logs, - block_data_cache.clone(), + deps.max_past_logs, + deps.block_data_cache.clone(), ) .into_rpc(), )?; } + Ok(()) +} +// Function for EthPubSub merge +fn extend_rpc_eth_pubsub( + io: &mut RpcModule<()>, + deps: &EthDeps, + subscription_task_executor: SubscriptionTaskExecutor, + pubsub_notification_sinks: Arc< + fc_mapping_sync::EthereumBlockNotificationSinks< + fc_mapping_sync::EthereumBlockNotification, + >, + >, +) -> Result<(), Box> +where + B: BlockT, + C: CallApiAt + ProvideRuntimeApi, + C::Api: AuraApi + + BlockBuilderApi + + ConvertTransactionRuntimeApi + + EthereumRuntimeRPCApi, + C: HeaderBackend + HeaderMetadata, + C: BlockchainEvents + AuxStore + UsageProvider + StorageProvider + 'static, + BE: Backend + 'static, + P: TransactionPool + 'static, + A: ChainApi + 'static, + CT: ConvertTransaction<::Extrinsic> + Send + Sync + 'static, + CIDP: CreateInherentDataProviders + Send + 'static, +{ io.merge( EthPubSub::new( - pool, - client.clone(), - sync, + deps.pool.clone(), + deps.client.clone(), + deps.sync.clone(), subscription_task_executor, - storage_override.clone(), + deps.storage_override.clone(), pubsub_notification_sinks, ) .into_rpc(), )?; + Ok(()) +} +fn extend_rpc_net( + io: &mut RpcModule<()>, + deps: &EthDeps, +) -> Result<(), Box> +where + B: BlockT, + C: CallApiAt + ProvideRuntimeApi, + C::Api: AuraApi + + BlockBuilderApi + + ConvertTransactionRuntimeApi + + EthereumRuntimeRPCApi, + C: HeaderBackend + HeaderMetadata, + C: BlockchainEvents + AuxStore + UsageProvider + StorageProvider + 'static, + BE: Backend + 'static, + P: TransactionPool + 'static, + A: ChainApi + 'static, + CT: ConvertTransaction<::Extrinsic> + Send + Sync + 'static, + CIDP: CreateInherentDataProviders + Send + 'static, +{ io.merge( Net::new( - client.clone(), - network, - // Whether to format the `peer_count` response as Hex (default) or not. - true, + deps.client.clone(), + deps.network.clone(), + true, // Whether to format the `peer_count` response as Hex (default) or not. ) .into_rpc(), )?; + Ok(()) +} - io.merge(Web3::new(client.clone()).into_rpc())?; +fn extend_rpc_web3( + io: &mut RpcModule<()>, + deps: &EthDeps, +) -> Result<(), Box> +where + B: BlockT, + C: CallApiAt + ProvideRuntimeApi, + C::Api: AuraApi + + BlockBuilderApi + + ConvertTransactionRuntimeApi + + EthereumRuntimeRPCApi, + C: HeaderBackend + HeaderMetadata, + C: BlockchainEvents + AuxStore + UsageProvider + StorageProvider + 'static, + BE: Backend + 'static, + P: TransactionPool + 'static, + A: ChainApi + 'static, + CT: ConvertTransaction<::Extrinsic> + Send + Sync + 'static, + CIDP: CreateInherentDataProviders + Send + 'static, +{ + io.merge(Web3::new(deps.client.clone()).into_rpc())?; + Ok(()) +} +fn extend_rpc_debug( + io: &mut RpcModule<()>, + deps: &EthDeps, +) -> Result<(), Box> +where + B: BlockT, + C: CallApiAt + ProvideRuntimeApi, + C::Api: AuraApi + + BlockBuilderApi + + ConvertTransactionRuntimeApi + + EthereumRuntimeRPCApi, + C: HeaderBackend + HeaderMetadata, + C: BlockchainEvents + AuxStore + UsageProvider + StorageProvider + 'static, + BE: Backend + 'static, + P: TransactionPool + 'static, + A: ChainApi + 'static, + CT: ConvertTransaction<::Extrinsic> + Send + Sync + 'static, + CIDP: CreateInherentDataProviders + Send + 'static, +{ io.merge( Debug::new( - client.clone(), - frontier_backend, - storage_override, - block_data_cache, + deps.client.clone(), + deps.frontier_backend.clone(), + deps.storage_override.clone(), + deps.block_data_cache.clone(), ) .into_rpc(), )?; + Ok(()) +} - #[cfg(feature = "txpool")] - io.merge(TxPool::new(client, graph).into_rpc())?; +/// Extend RpcModule with Eth RPCs +pub fn create_eth( + mut io: RpcModule<()>, + deps: EthDeps, + subscription_task_executor: SubscriptionTaskExecutor, + pubsub_notification_sinks: Arc< + fc_mapping_sync::EthereumBlockNotificationSinks< + fc_mapping_sync::EthereumBlockNotification, + >, + >, +) -> Result, Box> +where + B: BlockT, + C: CallApiAt + ProvideRuntimeApi, + C::Api: AuraApi + + BlockBuilderApi + + ConvertTransactionRuntimeApi + + EthereumRuntimeRPCApi, + C: HeaderBackend + HeaderMetadata, + C: BlockchainEvents + AuxStore + UsageProvider + StorageProvider + 'static, + BE: Backend + 'static, + P: TransactionPool + 'static, + A: ChainApi + 'static, + CT: ConvertTransaction<::Extrinsic> + Send + Sync + Clone + 'static, + CIDP: CreateInherentDataProviders + Send + Clone + 'static, + EC: EthConfig, +{ + extend_rpc_aet_api::(&mut io, &deps)?; + extend_rpc_eth_filter::(&mut io, &deps)?; + extend_rpc_eth_pubsub::( + &mut io, + &deps, + subscription_task_executor, + pubsub_notification_sinks, + )?; + extend_rpc_net::(&mut io, &deps)?; + extend_rpc_web3::(&mut io, &deps)?; + extend_rpc_debug::(&mut io, &deps)?; Ok(io) } diff --git a/node/src/rpc.rs b/node/src/rpc.rs index 95ec5bd53..475bd55fb 100644 --- a/node/src/rpc.rs +++ b/node/src/rpc.rs @@ -132,8 +132,8 @@ where BE: Backend + 'static, P: TransactionPool + 'static, A: ChainApi + 'static, - CIDP: CreateInherentDataProviders + Send + 'static, - CT: fp_rpc::ConvertTransaction<::Extrinsic> + Send + Sync + 'static, + CIDP: CreateInherentDataProviders + Send + Clone + 'static, + CT: fp_rpc::ConvertTransaction<::Extrinsic> + Send + Sync + Clone + 'static, { use pallet_transaction_payment_rpc::{TransactionPayment, TransactionPaymentApiServer}; use sc_consensus_manual_seal::rpc::{ManualSeal, ManualSealApiServer}; From 89c89108e33a7887bfae63c21f9957d8dbbc0468 Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Thu, 5 Sep 2024 18:38:06 -0400 Subject: [PATCH 26/60] Use TryFrom for converting bytes to AccountId32 with error --- runtime/src/precompiles/mod.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime/src/precompiles/mod.rs b/runtime/src/precompiles/mod.rs index e1ef8439a..ab6b5e0d0 100644 --- a/runtime/src/precompiles/mod.rs +++ b/runtime/src/precompiles/mod.rs @@ -1,5 +1,5 @@ use core::marker::PhantomData; -use sp_core::{crypto::ByteArray, hashing::keccak_256, H160}; +use sp_core::{hashing::keccak_256, H160}; use sp_runtime::AccountId32; use pallet_evm::{ @@ -100,7 +100,7 @@ pub fn get_method_id(method_signature: &str) -> [u8; 4] { /// which consumes all gas /// pub fn bytes_to_account_id(account_id_bytes: &[u8]) -> Result { - AccountId32::from_slice(account_id_bytes).map_err(|_| { + AccountId32::try_from(account_id_bytes).map_err(|_| { log::info!("Error parsing account id bytes {:?}", account_id_bytes); PrecompileFailure::Error { exit_status: ExitError::InvalidRange, From 767ed555cbd27904e5229d036c6f959ef5742a96 Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Thu, 5 Sep 2024 20:31:14 -0400 Subject: [PATCH 27/60] Bump runtime version to 197 --- runtime/src/lib.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime/src/lib.rs b/runtime/src/lib.rs index 4b1b1d565..cac595bf1 100644 --- a/runtime/src/lib.rs +++ b/runtime/src/lib.rs @@ -160,7 +160,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { // `spec_version`, and `authoring_version` are the same between Wasm and native. // This value is set to 100 to notify Polkadot-JS App (https://polkadot.js.org/apps) to use // the compatible custom types. - spec_version: 196, + spec_version: 197, impl_version: 1, apis: RUNTIME_API_VERSIONS, transaction_version: 1, From 56a9809c190943064a10294c17766c923347dd87 Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Fri, 6 Sep 2024 12:12:13 -0400 Subject: [PATCH 28/60] Re-add staking precompile implementation notes --- runtime/src/precompiles/staking.rs | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/runtime/src/precompiles/staking.rs b/runtime/src/precompiles/staking.rs index 5d7042e46..8d6f357b8 100644 --- a/runtime/src/precompiles/staking.rs +++ b/runtime/src/precompiles/staking.rs @@ -1,3 +1,30 @@ +// The goal of staking precompile is to allow interaction between EVM users and smart contracts and +// subtensor staking functionality, namely add_stake, and remove_stake extrinsicsk, as well as the +// staking state. +// +// Additional requirement is to preserve compatibility with Ethereum indexers, which requires +// no balance transfers from EVM accounts without a corresponding transaction that can be +// parsed by an indexer. +// +// Implementation of add_stake: +// - User transfers balance that will be staked to the precompile address with a payable +// method addStake. This method also takes hotkey public key (bytes32) of the hotkey +// that the stake should be assigned to. +// - Precompile transfers the balance back to the signing address, and then invokes +// do_add_stake from subtensor pallet with signing origin that mmatches to HashedAddressMapping +// of the message sender, which will effectively withdraw and stake balance from the message +// sender. +// - Precompile checks the result of do_add_stake and, in case of a failure, reverts the transaction, +// and leaves the balance on the message sender account. +// +// Implementation of remove_stake: +// - User involkes removeStake method and specifies hotkey public key (bytes32) of the hotkey +// to remove stake from, and the amount to unstake. +// - Precompile calls do_remove_stake method of the subtensor pallet with the signing origin of message +// sender, which effectively unstakes the specified amount and credits it to the message sender +// - Precompile checks the result of do_remove_stake and, in case of a failure, reverts the transaction. +// + use frame_system::RawOrigin; use pallet_evm::{AddressMapping, HashedAddressMapping}; use pallet_evm::{ From f8632e3e7010fe426e7ff43940d5663b772d0a68 Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Fri, 6 Sep 2024 12:19:56 -0400 Subject: [PATCH 29/60] Format --- runtime/src/precompiles/staking.rs | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/runtime/src/precompiles/staking.rs b/runtime/src/precompiles/staking.rs index 8d6f357b8..864a5b719 100644 --- a/runtime/src/precompiles/staking.rs +++ b/runtime/src/precompiles/staking.rs @@ -1,29 +1,29 @@ -// The goal of staking precompile is to allow interaction between EVM users and smart contracts and +// The goal of staking precompile is to allow interaction between EVM users and smart contracts and // subtensor staking functionality, namely add_stake, and remove_stake extrinsicsk, as well as the // staking state. -// -// Additional requirement is to preserve compatibility with Ethereum indexers, which requires -// no balance transfers from EVM accounts without a corresponding transaction that can be +// +// Additional requirement is to preserve compatibility with Ethereum indexers, which requires +// no balance transfers from EVM accounts without a corresponding transaction that can be // parsed by an indexer. -// +// // Implementation of add_stake: -// - User transfers balance that will be staked to the precompile address with a payable +// - User transfers balance that will be staked to the precompile address with a payable // method addStake. This method also takes hotkey public key (bytes32) of the hotkey // that the stake should be assigned to. -// - Precompile transfers the balance back to the signing address, and then invokes +// - Precompile transfers the balance back to the signing address, and then invokes // do_add_stake from subtensor pallet with signing origin that mmatches to HashedAddressMapping -// of the message sender, which will effectively withdraw and stake balance from the message +// of the message sender, which will effectively withdraw and stake balance from the message // sender. -// - Precompile checks the result of do_add_stake and, in case of a failure, reverts the transaction, +// - Precompile checks the result of do_add_stake and, in case of a failure, reverts the transaction, // and leaves the balance on the message sender account. -// +// // Implementation of remove_stake: // - User involkes removeStake method and specifies hotkey public key (bytes32) of the hotkey // to remove stake from, and the amount to unstake. -// - Precompile calls do_remove_stake method of the subtensor pallet with the signing origin of message +// - Precompile calls do_remove_stake method of the subtensor pallet with the signing origin of message // sender, which effectively unstakes the specified amount and credits it to the message sender // - Precompile checks the result of do_remove_stake and, in case of a failure, reverts the transaction. -// +// use frame_system::RawOrigin; use pallet_evm::{AddressMapping, HashedAddressMapping}; From 0478b8d8accb9f3169d2c6212feb97cd8921db7c Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Tue, 17 Sep 2024 19:24:58 -0400 Subject: [PATCH 30/60] Fix removing stake in staking precompile --- runtime/src/lib.rs | 3 +-- runtime/src/precompiles/mod.rs | 4 +--- runtime/src/precompiles/solidity/staking.abi | 4 ++-- runtime/src/precompiles/solidity/staking.sol | 2 +- runtime/src/precompiles/staking.rs | 12 ++++++++---- 5 files changed, 13 insertions(+), 12 deletions(-) diff --git a/runtime/src/lib.rs b/runtime/src/lib.rs index 337a19bfe..1077a2188 100644 --- a/runtime/src/lib.rs +++ b/runtime/src/lib.rs @@ -1073,7 +1073,6 @@ impl> FindAuthor for FindAuthorTruncated { } const BLOCK_GAS_LIMIT: u64 = 75_000_000; -const MAX_POV_SIZE: u64 = 5 * 1024 * 1024; /// `WeightPerGas` is an approximate ratio of the amount of Weight per Gas. /// @@ -1083,7 +1082,7 @@ fn weight_per_gas() -> Weight { parameter_types! { pub BlockGasLimit: U256 = U256::from(BLOCK_GAS_LIMIT); - pub const GasLimitPovSizeRatio: u64 = BLOCK_GAS_LIMIT.saturating_div(MAX_POV_SIZE); + pub const GasLimitPovSizeRatio: u64 = 0; pub PrecompilesValue: FrontierPrecompiles = FrontierPrecompiles::<_>::new(); pub WeightPerGas: Weight = weight_per_gas(); pub SuicideQuickClearLimit: u32 = 0; diff --git a/runtime/src/precompiles/mod.rs b/runtime/src/precompiles/mod.rs index ab6b5e0d0..39f7618e1 100644 --- a/runtime/src/precompiles/mod.rs +++ b/runtime/src/precompiles/mod.rs @@ -67,9 +67,7 @@ where a if a == hash(BALANCE_TRANSFER_INDEX) => { Some(BalanceTransferPrecompile::execute(handle)) } - a if a == hash(STAKING_PRECOMPILE_INDEX) => { - Some(StakingPrecompile::execute(handle)) // Add this line - } + a if a == hash(STAKING_PRECOMPILE_INDEX) => Some(StakingPrecompile::execute(handle)), _ => None, } } diff --git a/runtime/src/precompiles/solidity/staking.abi b/runtime/src/precompiles/solidity/staking.abi index c470bec5c..5baf231c9 100644 --- a/runtime/src/precompiles/solidity/staking.abi +++ b/runtime/src/precompiles/solidity/staking.abi @@ -20,9 +20,9 @@ "type": "bytes32" }, { - "internalType": "uint64", + "internalType": "uint256", "name": "amount", - "type": "uint64" + "type": "uint256" } ], "name": "removeStake", diff --git a/runtime/src/precompiles/solidity/staking.sol b/runtime/src/precompiles/solidity/staking.sol index d806b08d0..75dc19021 100644 --- a/runtime/src/precompiles/solidity/staking.sol +++ b/runtime/src/precompiles/solidity/staking.sol @@ -38,5 +38,5 @@ interface IStaking { * correctly attributed. * - The existing stake amount must be not lower than specified amount */ - function removeStake(bytes32 hotkey, uint64 amount) external payable; + function removeStake(bytes32 hotkey, uint256 amount) external payable; } \ No newline at end of file diff --git a/runtime/src/precompiles/staking.rs b/runtime/src/precompiles/staking.rs index 864a5b719..45d4ddbbc 100644 --- a/runtime/src/precompiles/staking.rs +++ b/runtime/src/precompiles/staking.rs @@ -56,7 +56,7 @@ impl StakingPrecompile { id if id == get_method_id("addStake(bytes32)") => { Self::add_stake(handle, &method_input) } - id if id == get_method_id("removeStake(bytes32,uint64)") => { + id if id == get_method_id("removeStake(bytes32,uint256)") => { Self::remove_stake(handle, &method_input) } _ => Err(PrecompileFailure::Error { @@ -78,10 +78,14 @@ impl StakingPrecompile { } fn remove_stake(handle: &mut impl PrecompileHandle, data: &[u8]) -> PrecompileResult { let hotkey = Self::parse_hotkey(data)?.into(); + + // We have to treat this as uint256 (because of Solidity ABI encoding rules, it pads uint64), + // but this will never exceed 8 bytes, se we will ignore higher bytes and will only use lower + // 8 bytes. let amount = data - .get(32..40) + .get(56..64) .map(U256::from_big_endian) - .map_or(0, |v| v.as_u64()); // Assuming the next 8 bytes represent the amount + .map_or(0, |v| v.as_u64()); let call = RuntimeCall::SubtensorModule(pallet_subtensor::Call::::remove_stake { hotkey, amount_unstaked: amount, @@ -134,7 +138,7 @@ impl StakingPrecompile { account_id: &AccountId32, amount: U256, ) -> Result<(), PrecompileFailure> { - // this is staking smart contract's(0x0000000000000000000000000000000000000800) sr25519 address + // this is staking smart contract's(0x0000000000000000000000000000000000000801) sr25519 address let smart_contract_account_id = match AccountId32::from_ss58check("5CwnBK9Ack1mhznmCnwiibCNQc174pYQVktYW3ayRpLm4K2X") { Ok(addr) => addr, From 4cdfeb54b8f7d54976a3136dc48a1b1df71decfd Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Tue, 17 Sep 2024 19:26:41 -0400 Subject: [PATCH 31/60] Remove payable modifier from removeStake precompile method --- runtime/src/precompiles/solidity/staking.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime/src/precompiles/solidity/staking.sol b/runtime/src/precompiles/solidity/staking.sol index 75dc19021..8d0b1f6aa 100644 --- a/runtime/src/precompiles/solidity/staking.sol +++ b/runtime/src/precompiles/solidity/staking.sol @@ -38,5 +38,5 @@ interface IStaking { * correctly attributed. * - The existing stake amount must be not lower than specified amount */ - function removeStake(bytes32 hotkey, uint256 amount) external payable; + function removeStake(bytes32 hotkey, uint256 amount) external; } \ No newline at end of file From 517fabf42282c5784ad5668212a09d9f1d98ef1f Mon Sep 17 00:00:00 2001 From: Cameron Fairchild Date: Mon, 23 Sep 2024 15:34:17 -0400 Subject: [PATCH 32/60] bump spec above mainnet (#829) --- runtime/src/lib.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime/src/lib.rs b/runtime/src/lib.rs index 270b0a069..7061e7464 100644 --- a/runtime/src/lib.rs +++ b/runtime/src/lib.rs @@ -142,7 +142,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { // `spec_version`, and `authoring_version` are the same between Wasm and native. // This value is set to 100 to notify Polkadot-JS App (https://polkadot.js.org/apps) to use // the compatible custom types. - spec_version: 202, + spec_version: 203, impl_version: 1, apis: RUNTIME_API_VERSIONS, transaction_version: 1, From 5372f5e56635dcc0a7e41f4230a8f311cb9afb76 Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Wed, 25 Sep 2024 21:35:33 -0400 Subject: [PATCH 33/60] Format --- node/src/client.rs | 72 +-- node/src/command.rs | 12 +- node/src/ethereum.rs | 14 +- node/src/lib.rs | 2 +- node/src/main.rs | 2 +- node/src/rpc.rs | 28 +- node/src/service.rs | 1061 +++++++++++++++++++++--------------------- runtime/src/lib.rs | 34 +- 8 files changed, 615 insertions(+), 610 deletions(-) diff --git a/node/src/client.rs b/node/src/client.rs index 27076958d..c7196b5a9 100644 --- a/node/src/client.rs +++ b/node/src/client.rs @@ -12,41 +12,41 @@ pub type FullClient = sc_service::TFullClient /// A set of APIs that every runtime must implement. pub trait BaseRuntimeApiCollection: - sp_api::ApiExt - + sp_api::Metadata - + sp_block_builder::BlockBuilder - + sp_offchain::OffchainWorkerApi - + sp_session::SessionKeys - + sp_transaction_pool::runtime_api::TaggedTransactionQueue + sp_api::ApiExt + + sp_api::Metadata + + sp_block_builder::BlockBuilder + + sp_offchain::OffchainWorkerApi + + sp_session::SessionKeys + + sp_transaction_pool::runtime_api::TaggedTransactionQueue { } impl BaseRuntimeApiCollection for Api where - Block: BlockT, - Api: sp_api::ApiExt - + sp_api::Metadata - + sp_block_builder::BlockBuilder - + sp_offchain::OffchainWorkerApi - + sp_session::SessionKeys - + sp_transaction_pool::runtime_api::TaggedTransactionQueue, + Block: BlockT, + Api: sp_api::ApiExt + + sp_api::Metadata + + sp_block_builder::BlockBuilder + + sp_offchain::OffchainWorkerApi + + sp_session::SessionKeys + + sp_transaction_pool::runtime_api::TaggedTransactionQueue, { } /// A set of APIs that Subtensor runtime must implement. pub trait RuntimeApiCollection< - Block: BlockT, - AuraId: Codec, - AccountId: Codec, - Nonce: Codec, - Balance: Codec + MaybeDisplay, + Block: BlockT, + AuraId: Codec, + AccountId: Codec, + Nonce: Codec, + Balance: Codec + MaybeDisplay, >: - BaseRuntimeApiCollection - + EthCompatRuntimeApiCollection - + sp_consensus_aura::AuraApi - + sp_consensus_grandpa::GrandpaApi - + frame_system_rpc_runtime_api::AccountNonceApi - + pallet_transaction_payment_rpc_runtime_api::TransactionPaymentApi + BaseRuntimeApiCollection + + EthCompatRuntimeApiCollection + + sp_consensus_aura::AuraApi + + sp_consensus_grandpa::GrandpaApi + + frame_system_rpc_runtime_api::AccountNonceApi + + pallet_transaction_payment_rpc_runtime_api::TransactionPaymentApi + subtensor_custom_rpc_runtime_api::DelegateInfoRuntimeApi + subtensor_custom_rpc_runtime_api::NeuronInfoRuntimeApi + subtensor_custom_rpc_runtime_api::SubnetInfoRuntimeApi @@ -55,19 +55,19 @@ pub trait RuntimeApiCollection< } impl - RuntimeApiCollection for Api + RuntimeApiCollection for Api where - Block: BlockT, - AuraId: Codec, - AccountId: Codec, - Nonce: Codec, - Balance: Codec + MaybeDisplay, - Api: BaseRuntimeApiCollection - + EthCompatRuntimeApiCollection - + sp_consensus_aura::AuraApi - + sp_consensus_grandpa::GrandpaApi - + frame_system_rpc_runtime_api::AccountNonceApi - + pallet_transaction_payment_rpc_runtime_api::TransactionPaymentApi + Block: BlockT, + AuraId: Codec, + AccountId: Codec, + Nonce: Codec, + Balance: Codec + MaybeDisplay, + Api: BaseRuntimeApiCollection + + EthCompatRuntimeApiCollection + + sp_consensus_aura::AuraApi + + sp_consensus_grandpa::GrandpaApi + + frame_system_rpc_runtime_api::AccountNonceApi + + pallet_transaction_payment_rpc_runtime_api::TransactionPaymentApi + subtensor_custom_rpc_runtime_api::DelegateInfoRuntimeApi + subtensor_custom_rpc_runtime_api::NeuronInfoRuntimeApi + subtensor_custom_rpc_runtime_api::SubnetInfoRuntimeApi diff --git a/node/src/command.rs b/node/src/command.rs index 9d13adef1..1c5c32350 100644 --- a/node/src/command.rs +++ b/node/src/command.rs @@ -241,13 +241,13 @@ pub fn run() -> sc_cli::Result<()> { runner.sync_run(|config| cmd.run::(&config)) } None => { - let runner = cli.create_runner(&cli.run)?; - runner.run_node_until_exit(|config| async move { + let runner = cli.create_runner(&cli.run)?; + runner.run_node_until_exit(|config| async move { let config = override_default_heap_pages(config, 60_000); - service::build_full(config, cli.eth, cli.sealing) - .map_err(Into::into) - .await - }) + service::build_full(config, cli.eth, cli.sealing) + .map_err(Into::into) + .await + }) } } } diff --git a/node/src/ethereum.rs b/node/src/ethereum.rs index 44f6a041d..337013a56 100644 --- a/node/src/ethereum.rs +++ b/node/src/ethereum.rs @@ -128,18 +128,18 @@ pub fn new_frontier_partial( /// A set of APIs that ethereum-compatible runtimes must implement. pub trait EthCompatRuntimeApiCollection: - sp_api::ApiExt - + fp_rpc::ConvertTransactionRuntimeApi - + fp_rpc::EthereumRuntimeRPCApi + sp_api::ApiExt + + fp_rpc::ConvertTransactionRuntimeApi + + fp_rpc::EthereumRuntimeRPCApi { } impl EthCompatRuntimeApiCollection for Api where - Block: BlockT, - Api: sp_api::ApiExt - + fp_rpc::ConvertTransactionRuntimeApi - + fp_rpc::EthereumRuntimeRPCApi, + Block: BlockT, + Api: sp_api::ApiExt + + fp_rpc::ConvertTransactionRuntimeApi + + fp_rpc::EthereumRuntimeRPCApi, { } diff --git a/node/src/lib.rs b/node/src/lib.rs index 1138576d5..81cae5145 100644 --- a/node/src/lib.rs +++ b/node/src/lib.rs @@ -1,6 +1,6 @@ pub mod chain_spec; -pub mod client; pub mod cli; +pub mod client; pub mod ethereum; pub mod rpc; pub mod service; diff --git a/node/src/main.rs b/node/src/main.rs index c129c048a..bb8cd8e8b 100644 --- a/node/src/main.rs +++ b/node/src/main.rs @@ -6,8 +6,8 @@ mod chain_spec; mod service; #[cfg(feature = "runtime-benchmarks")] mod benchmarking; -mod client; mod cli; +mod client; mod command; mod ethereum; mod rpc; diff --git a/node/src/rpc.rs b/node/src/rpc.rs index c9930c041..5723a6fba 100644 --- a/node/src/rpc.rs +++ b/node/src/rpc.rs @@ -82,25 +82,25 @@ pub struct DefaultEthConfig(std::marker::PhantomData<(C, BE)>); impl fc_rpc::EthConfig for DefaultEthConfig where - B: BlockT, - C: StorageProvider + Sync + Send + 'static, - BE: Backend + 'static, + B: BlockT, + C: StorageProvider + Sync + Send + 'static, + BE: Backend + 'static, { - type EstimateGasAdapter = (); - type RuntimeStorageOverride = - fc_rpc::frontier_backend_client::SystemAccountId20StorageOverride; + type EstimateGasAdapter = (); + type RuntimeStorageOverride = + fc_rpc::frontier_backend_client::SystemAccountId20StorageOverride; } /// Full client dependencies. pub struct FullDeps { - /// The client instance to use. - pub client: Arc, - /// Transaction pool instance. - pub pool: Arc

, - /// Manual seal command sink - pub command_sink: Option>>, - /// Ethereum-compatibility specific dependencies. - pub eth: EthDeps, + /// The client instance to use. + pub client: Arc, + /// Transaction pool instance. + pub pool: Arc

, + /// Manual seal command sink + pub command_sink: Option>>, + /// Ethereum-compatibility specific dependencies. + pub eth: EthDeps, } /// Instantiate all full RPC extensions. diff --git a/node/src/service.rs b/node/src/service.rs index d6dcec60c..194ab84d4 100644 --- a/node/src/service.rs +++ b/node/src/service.rs @@ -1,16 +1,15 @@ //! Service and ServiceFactory implementation. Specialized wrapper over substrate service. use crate::cli::Sealing; -use crate::client::{ FullBackend, FullClient, RuntimeApiCollection }; +use crate::client::{FullBackend, FullClient, RuntimeApiCollection}; use crate::ethereum::{ db_config_dir, new_frontier_partial, spawn_frontier_tasks, BackendType, EthConfiguration, FrontierBackend, FrontierBlockImport, FrontierPartialComponents, StorageOverride, - StorageOverrideHandler + StorageOverrideHandler, }; use futures::{channel::mpsc, future, FutureExt}; use sc_client_api::{Backend as BackendT, BlockBackend}; use sc_consensus::{BasicQueue, BoxBlockImport}; -use sp_consensus_aura::sr25519::{AuthorityId as AuraId, AuthorityPair as AuraPair}; use sc_consensus_grandpa::BlockNumberOps; use sc_consensus_slots::BackoffAuthoringOnFinalizedHeadLagging; use sc_executor::HostFunctions as HostFunctionsT; @@ -20,6 +19,7 @@ use sc_telemetry::{log, Telemetry, TelemetryHandle, TelemetryWorker}; use sc_transaction_pool::FullPool; use sc_transaction_pool_api::OffchainTransactionPoolFactory; use sp_api::ConstructRuntimeApi; +use sp_consensus_aura::sr25519::{AuthorityId as AuraId, AuthorityPair as AuraPair}; use sp_core::{H256, U256}; use sp_runtime::traits::{Block as BlockT, NumberFor}; use std::{cell::RefCell, path::Path}; @@ -28,7 +28,7 @@ use substrate_prometheus_endpoint::Registry; // Runtime use node_subtensor_runtime::{ - opaque::Block, AccountId, Balance, Nonce, RuntimeApi, TransactionConverter, + opaque::Block, AccountId, Balance, Nonce, RuntimeApi, TransactionConverter, }; /// The minimum period of blocks on which justifications will be @@ -38,8 +38,8 @@ const GRANDPA_JUSTIFICATION_PERIOD: u32 = 512; /// Only enable the benchmarking host functions when we actually want to benchmark. #[cfg(feature = "runtime-benchmarks")] pub type HostFunctions = ( - sp_io::SubstrateHostFunctions, - frame_benchmarking::benchmarking::HostFunctions, + sp_io::SubstrateHostFunctions, + frame_benchmarking::benchmarking::HostFunctions, ); /// Otherwise we use empty host functions for ext host functions. #[cfg(not(feature = "runtime-benchmarks"))] @@ -50,144 +50,144 @@ pub type Client = FullClient; type FullSelectChain = sc_consensus::LongestChain, B>; type GrandpaBlockImport = - sc_consensus_grandpa::GrandpaBlockImport, B, C, FullSelectChain>; + sc_consensus_grandpa::GrandpaBlockImport, B, C, FullSelectChain>; type GrandpaLinkHalf = sc_consensus_grandpa::LinkHalf>; pub fn new_partial( - config: &Configuration, - eth_config: &EthConfiguration, - build_import_queue: BIQ, + config: &Configuration, + eth_config: &EthConfiguration, + build_import_queue: BIQ, ) -> Result< - PartialComponents< - FullClient, - FullBackend, - FullSelectChain, - BasicQueue, - FullPool>, - ( - Option, - BoxBlockImport, - GrandpaLinkHalf>, - FrontierBackend>, - Arc>, - ), - >, - ServiceError, + PartialComponents< + FullClient, + FullBackend, + FullSelectChain, + BasicQueue, + FullPool>, + ( + Option, + BoxBlockImport, + GrandpaLinkHalf>, + FrontierBackend>, + Arc>, + ), + >, + ServiceError, > where B: BlockT, - RA: ConstructRuntimeApi>, - RA: Send + Sync + 'static, - RA::RuntimeApi: RuntimeApiCollection, - HF: HostFunctionsT + 'static, - BIQ: FnOnce( - Arc>, - &Configuration, - &EthConfiguration, - &TaskManager, - Option, - GrandpaBlockImport>, - ) -> Result<(BasicQueue, BoxBlockImport), ServiceError>, + RA: ConstructRuntimeApi>, + RA: Send + Sync + 'static, + RA::RuntimeApi: RuntimeApiCollection, + HF: HostFunctionsT + 'static, + BIQ: FnOnce( + Arc>, + &Configuration, + &EthConfiguration, + &TaskManager, + Option, + GrandpaBlockImport>, + ) -> Result<(BasicQueue, BoxBlockImport), ServiceError>, { - let telemetry = config - .telemetry_endpoints - .clone() - .filter(|x| !x.is_empty()) - .map(|endpoints| -> Result<_, sc_telemetry::Error> { - let worker = TelemetryWorker::new(16)?; - let telemetry = worker.handle().new_telemetry(endpoints); - Ok((worker, telemetry)) - }) - .transpose()?; + let telemetry = config + .telemetry_endpoints + .clone() + .filter(|x| !x.is_empty()) + .map(|endpoints| -> Result<_, sc_telemetry::Error> { + let worker = TelemetryWorker::new(16)?; + let telemetry = worker.handle().new_telemetry(endpoints); + Ok((worker, telemetry)) + }) + .transpose()?; let executor = sc_service::new_wasm_executor(&config.executor); - let (client, backend, keystore_container, task_manager) = sc_service::new_full_parts::( - config, - telemetry.as_ref().map(|(_, telemetry)| telemetry.handle()), - executor, - )?; - let client = Arc::new(client); - - let telemetry = telemetry.map(|(worker, telemetry)| { - task_manager - .spawn_handle() - .spawn("telemetry", None, worker.run()); - telemetry - }); - - let select_chain = sc_consensus::LongestChain::new(backend.clone()); - let (grandpa_block_import, grandpa_link) = sc_consensus_grandpa::block_import( - client.clone(), - GRANDPA_JUSTIFICATION_PERIOD, - &client, - select_chain.clone(), - telemetry.as_ref().map(|x| x.handle()), - )?; - - let storage_override = Arc::new(StorageOverrideHandler::::new(client.clone())); - let frontier_backend = match eth_config.frontier_backend_type { - BackendType::KeyValue => FrontierBackend::KeyValue(Arc::new(fc_db::kv::Backend::open( - Arc::clone(&client), - &config.database, - &db_config_dir(config), - )?)), - BackendType::Sql => { - let db_path = db_config_dir(config).join("sql"); - std::fs::create_dir_all(&db_path).expect("failed creating sql db directory"); - let backend = futures::executor::block_on(fc_db::sql::Backend::new( - fc_db::sql::BackendConfig::Sqlite(fc_db::sql::SqliteBackendConfig { - path: Path::new("sqlite:///") - .join(db_path) - .join("frontier.db3") - .to_str() - .unwrap(), - create_if_missing: true, - thread_count: eth_config.frontier_sql_backend_thread_count, - cache_size: eth_config.frontier_sql_backend_cache_size, - }), - eth_config.frontier_sql_backend_pool_size, - std::num::NonZeroU32::new(eth_config.frontier_sql_backend_num_ops_timeout), - storage_override.clone(), - )) - .unwrap_or_else(|err| panic!("failed creating sql backend: {:?}", err)); - FrontierBackend::Sql(Arc::new(backend)) - } - }; - - let (import_queue, block_import) = build_import_queue( - client.clone(), - config, - eth_config, - &task_manager, - telemetry.as_ref().map(|x| x.handle()), - grandpa_block_import, - )?; - - let transaction_pool = sc_transaction_pool::BasicPool::new_full( - config.transaction_pool.clone(), - config.role.is_authority().into(), - config.prometheus_registry(), - task_manager.spawn_essential_handle(), - client.clone(), - ); - - Ok(PartialComponents { - client, - backend, - keystore_container, - task_manager, - select_chain, - import_queue, - transaction_pool, - other: ( - telemetry, - block_import, - grandpa_link, - frontier_backend, - storage_override, - ), - }) + let (client, backend, keystore_container, task_manager) = sc_service::new_full_parts::( + config, + telemetry.as_ref().map(|(_, telemetry)| telemetry.handle()), + executor, + )?; + let client = Arc::new(client); + + let telemetry = telemetry.map(|(worker, telemetry)| { + task_manager + .spawn_handle() + .spawn("telemetry", None, worker.run()); + telemetry + }); + + let select_chain = sc_consensus::LongestChain::new(backend.clone()); + let (grandpa_block_import, grandpa_link) = sc_consensus_grandpa::block_import( + client.clone(), + GRANDPA_JUSTIFICATION_PERIOD, + &client, + select_chain.clone(), + telemetry.as_ref().map(|x| x.handle()), + )?; + + let storage_override = Arc::new(StorageOverrideHandler::::new(client.clone())); + let frontier_backend = match eth_config.frontier_backend_type { + BackendType::KeyValue => FrontierBackend::KeyValue(Arc::new(fc_db::kv::Backend::open( + Arc::clone(&client), + &config.database, + &db_config_dir(config), + )?)), + BackendType::Sql => { + let db_path = db_config_dir(config).join("sql"); + std::fs::create_dir_all(&db_path).expect("failed creating sql db directory"); + let backend = futures::executor::block_on(fc_db::sql::Backend::new( + fc_db::sql::BackendConfig::Sqlite(fc_db::sql::SqliteBackendConfig { + path: Path::new("sqlite:///") + .join(db_path) + .join("frontier.db3") + .to_str() + .unwrap(), + create_if_missing: true, + thread_count: eth_config.frontier_sql_backend_thread_count, + cache_size: eth_config.frontier_sql_backend_cache_size, + }), + eth_config.frontier_sql_backend_pool_size, + std::num::NonZeroU32::new(eth_config.frontier_sql_backend_num_ops_timeout), + storage_override.clone(), + )) + .unwrap_or_else(|err| panic!("failed creating sql backend: {:?}", err)); + FrontierBackend::Sql(Arc::new(backend)) + } + }; + + let (import_queue, block_import) = build_import_queue( + client.clone(), + config, + eth_config, + &task_manager, + telemetry.as_ref().map(|x| x.handle()), + grandpa_block_import, + )?; + + let transaction_pool = sc_transaction_pool::BasicPool::new_full( + config.transaction_pool.clone(), + config.role.is_authority().into(), + config.prometheus_registry(), + task_manager.spawn_essential_handle(), + client.clone(), + ); + + Ok(PartialComponents { + client, + backend, + keystore_container, + task_manager, + select_chain, + import_queue, + transaction_pool, + other: ( + telemetry, + block_import, + grandpa_link, + frontier_backend, + storage_override, + ), + }) } /// Build the import queue for the template runtime (aura + grandpa). @@ -200,12 +200,12 @@ pub fn build_aura_grandpa_import_queue( grandpa_block_import: GrandpaBlockImport>, ) -> Result<(BasicQueue, BoxBlockImport), ServiceError> where - B: BlockT, - NumberFor: BlockNumberOps, - RA: ConstructRuntimeApi>, - RA: Send + Sync + 'static, - RA::RuntimeApi: RuntimeApiCollection, - HF: HostFunctionsT + 'static, + B: BlockT, + NumberFor: BlockNumberOps, + RA: ConstructRuntimeApi>, + RA: Send + Sync + 'static, + RA::RuntimeApi: RuntimeApiCollection, + HF: HostFunctionsT + 'static, { let frontier_block_import = FrontierBlockImport::new(grandpa_block_import.clone(), client.clone()); @@ -243,19 +243,19 @@ where /// Build the import queue for the template runtime (manual seal). pub fn build_manual_seal_import_queue( - client: Arc>, - config: &Configuration, - _eth_config: &EthConfiguration, - task_manager: &TaskManager, - _telemetry: Option, - _grandpa_block_import: GrandpaBlockImport>, + client: Arc>, + config: &Configuration, + _eth_config: &EthConfiguration, + task_manager: &TaskManager, + _telemetry: Option, + _grandpa_block_import: GrandpaBlockImport>, ) -> Result<(BasicQueue, BoxBlockImport), ServiceError> where - B: BlockT, - RA: ConstructRuntimeApi>, - RA: Send + Sync + 'static, - RA::RuntimeApi: RuntimeApiCollection, - HF: HostFunctionsT + 'static, + B: BlockT, + RA: ConstructRuntimeApi>, + RA: Send + Sync + 'static, + RA::RuntimeApi: RuntimeApiCollection, + HF: HostFunctionsT + 'static, { let frontier_block_import = FrontierBlockImport::new(client.clone(), client); Ok(( @@ -270,395 +270,400 @@ where /// Builds a new service for a full client. pub async fn new_full( - mut config: Configuration, - eth_config: EthConfiguration, - sealing: Option, + mut config: Configuration, + eth_config: EthConfiguration, + sealing: Option, ) -> Result where - B: BlockT, - NumberFor: BlockNumberOps, - ::Header: Unpin, - RA: ConstructRuntimeApi>, - RA: Send + Sync + 'static, - RA::RuntimeApi: RuntimeApiCollection, - HF: HostFunctionsT + 'static, + B: BlockT, + NumberFor: BlockNumberOps, + ::Header: Unpin, + RA: ConstructRuntimeApi>, + RA: Send + Sync + 'static, + RA::RuntimeApi: RuntimeApiCollection, + HF: HostFunctionsT + 'static, NB: sc_network::NetworkBackend::Hash>, { - let build_import_queue = if sealing.is_some() { - build_manual_seal_import_queue:: - } else { - build_aura_grandpa_import_queue:: - }; - - let PartialComponents { - client, - backend, - mut task_manager, - import_queue, - keystore_container, - select_chain, - transaction_pool, - other: (mut telemetry, block_import, grandpa_link, frontier_backend, storage_override), - } = new_partial(&config, ð_config, build_import_queue)?; - - let FrontierPartialComponents { - filter_pool, - fee_history_cache, - fee_history_cache_limit, - } = new_frontier_partial(ð_config)?; - - let maybe_registry = config.prometheus_config.as_ref().map(|cfg| &cfg.registry); - let mut net_config = sc_network::config::FullNetworkConfiguration::<_, _, NB>::new( - &config.network, - maybe_registry.cloned(), - ); - let peer_store_handle = net_config.peer_store_handle(); - let metrics = NB::register_notification_metrics(maybe_registry); - - let grandpa_protocol_name = sc_consensus_grandpa::protocol_standard_name( - &client - .block_hash(0u32.into())? - .expect("Genesis block exists; qed"), - &config.chain_spec, - ); - - let (grandpa_protocol_config, grandpa_notification_service) = - sc_consensus_grandpa::grandpa_peers_set_config::<_, NB>( - grandpa_protocol_name.clone(), - metrics.clone(), - peer_store_handle, - ); - - let warp_sync_config = if sealing.is_some() { - None - } else { - net_config.add_notification_protocol(grandpa_protocol_config); - let warp_sync: Arc> = - Arc::new(sc_consensus_grandpa::warp_proof::NetworkProvider::new( - backend.clone(), - grandpa_link.shared_authority_set().clone(), - Vec::new(), - )); - Some(WarpSyncConfig::WithProvider(warp_sync)) - }; - - let (network, system_rpc_tx, tx_handler_controller, network_starter, sync_service) = - sc_service::build_network(sc_service::BuildNetworkParams { - config: &config, - net_config, - client: client.clone(), - transaction_pool: transaction_pool.clone(), - spawn_handle: task_manager.spawn_handle(), - import_queue, - block_announce_validator_builder: None, - warp_sync_config, - block_relay: None, - metrics, - })?; - - if config.offchain_worker.enabled { - task_manager.spawn_handle().spawn( - "offchain-workers-runner", - "offchain-worker", - sc_offchain::OffchainWorkers::new(sc_offchain::OffchainWorkerOptions { - runtime_api_provider: client.clone(), - is_validator: config.role.is_authority(), - keystore: Some(keystore_container.keystore()), - offchain_db: backend.offchain_storage(), - transaction_pool: Some(OffchainTransactionPoolFactory::new( - transaction_pool.clone(), - )), - network_provider: Arc::new(network.clone()), - enable_http_requests: true, - custom_extensions: |_| vec![], - }) - .run(client.clone(), task_manager.spawn_handle()) - .boxed(), - ); - } - - let role = config.role; - let force_authoring = config.force_authoring; + let build_import_queue = if sealing.is_some() { + build_manual_seal_import_queue:: + } else { + build_aura_grandpa_import_queue:: + }; + + let PartialComponents { + client, + backend, + mut task_manager, + import_queue, + keystore_container, + select_chain, + transaction_pool, + other: (mut telemetry, block_import, grandpa_link, frontier_backend, storage_override), + } = new_partial(&config, ð_config, build_import_queue)?; + + let FrontierPartialComponents { + filter_pool, + fee_history_cache, + fee_history_cache_limit, + } = new_frontier_partial(ð_config)?; + + let maybe_registry = config.prometheus_config.as_ref().map(|cfg| &cfg.registry); + let mut net_config = sc_network::config::FullNetworkConfiguration::<_, _, NB>::new( + &config.network, + maybe_registry.cloned(), + ); + let peer_store_handle = net_config.peer_store_handle(); + let metrics = NB::register_notification_metrics(maybe_registry); + + let grandpa_protocol_name = sc_consensus_grandpa::protocol_standard_name( + &client + .block_hash(0u32.into())? + .expect("Genesis block exists; qed"), + &config.chain_spec, + ); + + let (grandpa_protocol_config, grandpa_notification_service) = + sc_consensus_grandpa::grandpa_peers_set_config::<_, NB>( + grandpa_protocol_name.clone(), + metrics.clone(), + peer_store_handle, + ); + + let warp_sync_config = if sealing.is_some() { + None + } else { + net_config.add_notification_protocol(grandpa_protocol_config); + let warp_sync: Arc> = + Arc::new(sc_consensus_grandpa::warp_proof::NetworkProvider::new( + backend.clone(), + grandpa_link.shared_authority_set().clone(), + Vec::new(), + )); + Some(WarpSyncConfig::WithProvider(warp_sync)) + }; + + let (network, system_rpc_tx, tx_handler_controller, network_starter, sync_service) = + sc_service::build_network(sc_service::BuildNetworkParams { + config: &config, + net_config, + client: client.clone(), + transaction_pool: transaction_pool.clone(), + spawn_handle: task_manager.spawn_handle(), + import_queue, + block_announce_validator_builder: None, + warp_sync_config, + block_relay: None, + metrics, + })?; + + if config.offchain_worker.enabled { + task_manager.spawn_handle().spawn( + "offchain-workers-runner", + "offchain-worker", + sc_offchain::OffchainWorkers::new(sc_offchain::OffchainWorkerOptions { + runtime_api_provider: client.clone(), + is_validator: config.role.is_authority(), + keystore: Some(keystore_container.keystore()), + offchain_db: backend.offchain_storage(), + transaction_pool: Some(OffchainTransactionPoolFactory::new( + transaction_pool.clone(), + )), + network_provider: Arc::new(network.clone()), + enable_http_requests: true, + custom_extensions: |_| vec![], + }) + .run(client.clone(), task_manager.spawn_handle()) + .boxed(), + ); + } + + let role = config.role; + let force_authoring = config.force_authoring; let backoff_authoring_blocks = Some(BackoffAuthoringOnFinalizedHeadLagging::> { unfinalized_slack: 6u32.into(), ..Default::default() }); - let name = config.network.node_name.clone(); - let frontier_backend = Arc::new(frontier_backend); - let enable_grandpa = !config.disable_grandpa && sealing.is_none(); - let prometheus_registry = config.prometheus_registry().cloned(); - - // Channel for the rpc handler to communicate with the authorship task. - let (command_sink, commands_stream) = mpsc::channel(1000); - - // Sinks for pubsub notifications. - // Everytime a new subscription is created, a new mpsc channel is added to the sink pool. - // The MappingSyncWorker sends through the channel on block import and the subscription emits a notification to the subscriber on receiving a message through this channel. - // This way we avoid race conditions when using native substrate block import notification stream. - let pubsub_notification_sinks: fc_mapping_sync::EthereumBlockNotificationSinks< - fc_mapping_sync::EthereumBlockNotification, - > = Default::default(); - let pubsub_notification_sinks = Arc::new(pubsub_notification_sinks); - - // for ethereum-compatibility rpc. - config.rpc.id_provider = Some(Box::new(fc_rpc::EthereumSubIdProvider)); - - let rpc_builder = { - let client = client.clone(); - let pool = transaction_pool.clone(); - let network = network.clone(); - let sync_service = sync_service.clone(); - - let is_authority = role.is_authority(); - let enable_dev_signer = eth_config.enable_dev_signer; - let max_past_logs = eth_config.max_past_logs; - let execute_gas_limit_multiplier = eth_config.execute_gas_limit_multiplier; - let filter_pool = filter_pool.clone(); - let frontier_backend = frontier_backend.clone(); - let pubsub_notification_sinks = pubsub_notification_sinks.clone(); - let storage_override = storage_override.clone(); - let fee_history_cache = fee_history_cache.clone(); - let block_data_cache = Arc::new(fc_rpc::EthBlockDataCacheTask::new( - task_manager.spawn_handle(), - storage_override.clone(), - eth_config.eth_log_block_cache, - eth_config.eth_statuses_cache, - prometheus_registry.clone(), - )); - - let slot_duration = sc_consensus_aura::slot_duration(&*client)?; - let target_gas_price = eth_config.target_gas_price; - let pending_create_inherent_data_providers = move |_, ()| async move { - let current = sp_timestamp::InherentDataProvider::from_system_time(); - let next_slot = current.timestamp().as_millis() + slot_duration.as_millis(); - let timestamp = sp_timestamp::InherentDataProvider::new(next_slot.into()); - let slot = sp_consensus_aura::inherents::InherentDataProvider::from_timestamp_and_slot_duration( + let name = config.network.node_name.clone(); + let frontier_backend = Arc::new(frontier_backend); + let enable_grandpa = !config.disable_grandpa && sealing.is_none(); + let prometheus_registry = config.prometheus_registry().cloned(); + + // Channel for the rpc handler to communicate with the authorship task. + let (command_sink, commands_stream) = mpsc::channel(1000); + + // Sinks for pubsub notifications. + // Everytime a new subscription is created, a new mpsc channel is added to the sink pool. + // The MappingSyncWorker sends through the channel on block import and the subscription emits a notification to the subscriber on receiving a message through this channel. + // This way we avoid race conditions when using native substrate block import notification stream. + let pubsub_notification_sinks: fc_mapping_sync::EthereumBlockNotificationSinks< + fc_mapping_sync::EthereumBlockNotification, + > = Default::default(); + let pubsub_notification_sinks = Arc::new(pubsub_notification_sinks); + + // for ethereum-compatibility rpc. + config.rpc.id_provider = Some(Box::new(fc_rpc::EthereumSubIdProvider)); + + let rpc_builder = { + let client = client.clone(); + let pool = transaction_pool.clone(); + let network = network.clone(); + let sync_service = sync_service.clone(); + + let is_authority = role.is_authority(); + let enable_dev_signer = eth_config.enable_dev_signer; + let max_past_logs = eth_config.max_past_logs; + let execute_gas_limit_multiplier = eth_config.execute_gas_limit_multiplier; + let filter_pool = filter_pool.clone(); + let frontier_backend = frontier_backend.clone(); + let pubsub_notification_sinks = pubsub_notification_sinks.clone(); + let storage_override = storage_override.clone(); + let fee_history_cache = fee_history_cache.clone(); + let block_data_cache = Arc::new(fc_rpc::EthBlockDataCacheTask::new( + task_manager.spawn_handle(), + storage_override.clone(), + eth_config.eth_log_block_cache, + eth_config.eth_statuses_cache, + prometheus_registry.clone(), + )); + + let slot_duration = sc_consensus_aura::slot_duration(&*client)?; + let target_gas_price = eth_config.target_gas_price; + let pending_create_inherent_data_providers = move |_, ()| async move { + let current = sp_timestamp::InherentDataProvider::from_system_time(); + let next_slot = current.timestamp().as_millis() + slot_duration.as_millis(); + let timestamp = sp_timestamp::InherentDataProvider::new(next_slot.into()); + let slot = sp_consensus_aura::inherents::InherentDataProvider::from_timestamp_and_slot_duration( *timestamp, slot_duration, ); - let dynamic_fee = fp_dynamic_fee::InherentDataProvider(U256::from(target_gas_price)); - Ok((slot, timestamp, dynamic_fee)) - }; - - Box::new(move |subscription_task_executor| { - let eth_deps = crate::rpc::EthDeps { - client: client.clone(), - pool: pool.clone(), - graph: pool.pool().clone(), - converter: Some(TransactionConverter::::default()), - is_authority, - enable_dev_signer, - network: network.clone(), - sync: sync_service.clone(), - frontier_backend: match &*frontier_backend { - fc_db::Backend::KeyValue(b) => b.clone(), - fc_db::Backend::Sql(b) => b.clone(), - }, - storage_override: storage_override.clone(), - block_data_cache: block_data_cache.clone(), - filter_pool: filter_pool.clone(), - max_past_logs, - fee_history_cache: fee_history_cache.clone(), - fee_history_cache_limit, - execute_gas_limit_multiplier, - forced_parent_hashes: None, - pending_create_inherent_data_providers, - }; - let deps = crate::rpc::FullDeps { - client: client.clone(), - pool: pool.clone(), - command_sink: if sealing.is_some() { - Some(command_sink.clone()) - } else { - None - }, - eth: eth_deps, - }; - crate::rpc::create_full( - deps, - subscription_task_executor, - pubsub_notification_sinks.clone(), - ) - .map_err(Into::into) - }) - }; - - let _rpc_handlers = sc_service::spawn_tasks(sc_service::SpawnTasksParams { - config, - client: client.clone(), - backend: backend.clone(), - task_manager: &mut task_manager, - keystore: keystore_container.keystore(), - transaction_pool: transaction_pool.clone(), - rpc_builder, - network: network.clone(), - system_rpc_tx, - tx_handler_controller, - sync_service: sync_service.clone(), - telemetry: telemetry.as_mut(), - })?; - - spawn_frontier_tasks( - &task_manager, - client.clone(), - backend, - frontier_backend, - filter_pool, - storage_override, - fee_history_cache, - fee_history_cache_limit, - sync_service.clone(), - pubsub_notification_sinks, - ) - .await; - - if role.is_authority() { - // manual-seal authorship - if let Some(sealing) = sealing { - run_manual_seal_authorship( - ð_config, - sealing, - client, - transaction_pool, - select_chain, - block_import, - &task_manager, - prometheus_registry.as_ref(), - telemetry.as_ref(), - commands_stream, - )?; - - network_starter.start_network(); - log::info!("Manual Seal Ready"); - return Ok(task_manager); - } - - let proposer_factory = sc_basic_authorship::ProposerFactory::new( - task_manager.spawn_handle(), - client.clone(), - transaction_pool.clone(), - prometheus_registry.as_ref(), - telemetry.as_ref().map(|x| x.handle()), - ); - - let slot_duration = sc_consensus_aura::slot_duration(&*client)?; - let target_gas_price = eth_config.target_gas_price; - let create_inherent_data_providers = move |_, ()| async move { - let timestamp = sp_timestamp::InherentDataProvider::from_system_time(); - let slot = sp_consensus_aura::inherents::InherentDataProvider::from_timestamp_and_slot_duration( + let dynamic_fee = fp_dynamic_fee::InherentDataProvider(U256::from(target_gas_price)); + Ok((slot, timestamp, dynamic_fee)) + }; + + Box::new(move |subscription_task_executor| { + let eth_deps = crate::rpc::EthDeps { + client: client.clone(), + pool: pool.clone(), + graph: pool.pool().clone(), + converter: Some(TransactionConverter::::default()), + is_authority, + enable_dev_signer, + network: network.clone(), + sync: sync_service.clone(), + frontier_backend: match &*frontier_backend { + fc_db::Backend::KeyValue(b) => b.clone(), + fc_db::Backend::Sql(b) => b.clone(), + }, + storage_override: storage_override.clone(), + block_data_cache: block_data_cache.clone(), + filter_pool: filter_pool.clone(), + max_past_logs, + fee_history_cache: fee_history_cache.clone(), + fee_history_cache_limit, + execute_gas_limit_multiplier, + forced_parent_hashes: None, + pending_create_inherent_data_providers, + }; + let deps = crate::rpc::FullDeps { + client: client.clone(), + pool: pool.clone(), + command_sink: if sealing.is_some() { + Some(command_sink.clone()) + } else { + None + }, + eth: eth_deps, + }; + crate::rpc::create_full( + deps, + subscription_task_executor, + pubsub_notification_sinks.clone(), + ) + .map_err(Into::into) + }) + }; + + let _rpc_handlers = sc_service::spawn_tasks(sc_service::SpawnTasksParams { + config, + client: client.clone(), + backend: backend.clone(), + task_manager: &mut task_manager, + keystore: keystore_container.keystore(), + transaction_pool: transaction_pool.clone(), + rpc_builder, + network: network.clone(), + system_rpc_tx, + tx_handler_controller, + sync_service: sync_service.clone(), + telemetry: telemetry.as_mut(), + })?; + + spawn_frontier_tasks( + &task_manager, + client.clone(), + backend, + frontier_backend, + filter_pool, + storage_override, + fee_history_cache, + fee_history_cache_limit, + sync_service.clone(), + pubsub_notification_sinks, + ) + .await; + + if role.is_authority() { + // manual-seal authorship + if let Some(sealing) = sealing { + run_manual_seal_authorship( + ð_config, + sealing, + client, + transaction_pool, + select_chain, + block_import, + &task_manager, + prometheus_registry.as_ref(), + telemetry.as_ref(), + commands_stream, + )?; + + network_starter.start_network(); + log::info!("Manual Seal Ready"); + return Ok(task_manager); + } + + let proposer_factory = sc_basic_authorship::ProposerFactory::new( + task_manager.spawn_handle(), + client.clone(), + transaction_pool.clone(), + prometheus_registry.as_ref(), + telemetry.as_ref().map(|x| x.handle()), + ); + + let slot_duration = sc_consensus_aura::slot_duration(&*client)?; + let target_gas_price = eth_config.target_gas_price; + let create_inherent_data_providers = move |_, ()| async move { + let timestamp = sp_timestamp::InherentDataProvider::from_system_time(); + let slot = sp_consensus_aura::inherents::InherentDataProvider::from_timestamp_and_slot_duration( *timestamp, slot_duration, ); - let dynamic_fee = fp_dynamic_fee::InherentDataProvider(U256::from(target_gas_price)); - Ok((slot, timestamp, dynamic_fee)) - }; + let dynamic_fee = fp_dynamic_fee::InherentDataProvider(U256::from(target_gas_price)); + Ok((slot, timestamp, dynamic_fee)) + }; - let aura = sc_consensus_aura::start_aura::( - sc_consensus_aura::StartAuraParams { - slot_duration, - client, - select_chain, - block_import, - proposer_factory, - sync_oracle: sync_service.clone(), - justification_sync_link: sync_service.clone(), - create_inherent_data_providers, - force_authoring, + let aura = sc_consensus_aura::start_aura::( + sc_consensus_aura::StartAuraParams { + slot_duration, + client, + select_chain, + block_import, + proposer_factory, + sync_oracle: sync_service.clone(), + justification_sync_link: sync_service.clone(), + create_inherent_data_providers, + force_authoring, backoff_authoring_blocks, - keystore: keystore_container.keystore(), - block_proposal_slot_portion: sc_consensus_aura::SlotProportion::new(2f32 / 3f32), - max_block_proposal_slot_portion: None, - telemetry: telemetry.as_ref().map(|x| x.handle()), - compatibility_mode: sc_consensus_aura::CompatibilityMode::None, - }, - )?; - // the AURA authoring task is considered essential, i.e. if it - // fails we take down the service with it. - task_manager - .spawn_essential_handle() - .spawn_blocking("aura", Some("block-authoring"), aura); - } - - if enable_grandpa { - // if the node isn't actively participating in consensus then it doesn't - // need a keystore, regardless of which protocol we use below. - let keystore = if role.is_authority() { - Some(keystore_container.keystore()) - } else { - None - }; - - let grandpa_config = sc_consensus_grandpa::Config { - // FIXME #1578 make this available through chainspec - gossip_duration: Duration::from_millis(333), - justification_generation_period: GRANDPA_JUSTIFICATION_PERIOD, - name: Some(name), - observer_enabled: false, - keystore, - local_role: role, - telemetry: telemetry.as_ref().map(|x| x.handle()), - protocol_name: grandpa_protocol_name, - }; - - // start the full GRANDPA voter - // NOTE: non-authorities could run the GRANDPA observer protocol, but at - // this point the full voter should provide better guarantees of block - // and vote data availability than the observer. The observer has not - // been tested extensively yet and having most nodes in a network run it - // could lead to finality stalls. - let grandpa_voter = - sc_consensus_grandpa::run_grandpa_voter(sc_consensus_grandpa::GrandpaParams { - config: grandpa_config, - link: grandpa_link, - network, - sync: sync_service, - notification_service: grandpa_notification_service, - voting_rule: sc_consensus_grandpa::VotingRulesBuilder::default().build(), - prometheus_registry, - shared_voter_state: sc_consensus_grandpa::SharedVoterState::empty(), - telemetry: telemetry.as_ref().map(|x| x.handle()), - offchain_tx_pool_factory: OffchainTransactionPoolFactory::new(transaction_pool), - })?; - - // the GRANDPA voter task is considered infallible, i.e. - // if it fails we take down the service with it. - task_manager - .spawn_essential_handle() - .spawn_blocking("grandpa-voter", None, grandpa_voter); - } - - network_starter.start_network(); - Ok(task_manager) + keystore: keystore_container.keystore(), + block_proposal_slot_portion: sc_consensus_aura::SlotProportion::new(2f32 / 3f32), + max_block_proposal_slot_portion: None, + telemetry: telemetry.as_ref().map(|x| x.handle()), + compatibility_mode: sc_consensus_aura::CompatibilityMode::None, + }, + )?; + // the AURA authoring task is considered essential, i.e. if it + // fails we take down the service with it. + task_manager + .spawn_essential_handle() + .spawn_blocking("aura", Some("block-authoring"), aura); + } + + if enable_grandpa { + // if the node isn't actively participating in consensus then it doesn't + // need a keystore, regardless of which protocol we use below. + let keystore = if role.is_authority() { + Some(keystore_container.keystore()) + } else { + None + }; + + let grandpa_config = sc_consensus_grandpa::Config { + // FIXME #1578 make this available through chainspec + gossip_duration: Duration::from_millis(333), + justification_generation_period: GRANDPA_JUSTIFICATION_PERIOD, + name: Some(name), + observer_enabled: false, + keystore, + local_role: role, + telemetry: telemetry.as_ref().map(|x| x.handle()), + protocol_name: grandpa_protocol_name, + }; + + // start the full GRANDPA voter + // NOTE: non-authorities could run the GRANDPA observer protocol, but at + // this point the full voter should provide better guarantees of block + // and vote data availability than the observer. The observer has not + // been tested extensively yet and having most nodes in a network run it + // could lead to finality stalls. + let grandpa_voter = + sc_consensus_grandpa::run_grandpa_voter(sc_consensus_grandpa::GrandpaParams { + config: grandpa_config, + link: grandpa_link, + network, + sync: sync_service, + notification_service: grandpa_notification_service, + voting_rule: sc_consensus_grandpa::VotingRulesBuilder::default().build(), + prometheus_registry, + shared_voter_state: sc_consensus_grandpa::SharedVoterState::empty(), + telemetry: telemetry.as_ref().map(|x| x.handle()), + offchain_tx_pool_factory: OffchainTransactionPoolFactory::new(transaction_pool), + })?; + + // the GRANDPA voter task is considered infallible, i.e. + // if it fails we take down the service with it. + task_manager + .spawn_essential_handle() + .spawn_blocking("grandpa-voter", None, grandpa_voter); + } + + network_starter.start_network(); + Ok(task_manager) } pub async fn build_full( - config: Configuration, - eth_config: EthConfiguration, - sealing: Option, + config: Configuration, + eth_config: EthConfiguration, + sealing: Option, ) -> Result { - match config.network.network_backend { - sc_network::config::NetworkBackendType::Libp2p => new_full::>( + sc_network::config::NetworkBackendType::Libp2p => { + new_full::>( config, eth_config, sealing, - ).await, - sc_network::config::NetworkBackendType::Litep2p => new_full::( + ) + .await + } + sc_network::config::NetworkBackendType::Litep2p => { + new_full::( config, eth_config, sealing, - ).await, + ) + .await + } } } pub fn new_chain_ops( - config: &mut Configuration, - eth_config: &EthConfiguration, + config: &mut Configuration, + eth_config: &EthConfiguration, ) -> Result< - ( - Arc, - Arc, - BasicQueue, - TaskManager, - FrontierBackend, - ), - ServiceError, + ( + Arc, + Arc, + BasicQueue, + TaskManager, + FrontierBackend, + ), + ServiceError, > { config.keystore = sc_service::config::KeystoreConfig::InMemory; let PartialComponents { @@ -678,25 +683,25 @@ pub fn new_chain_ops( #[allow(clippy::too_many_arguments)] fn run_manual_seal_authorship( - eth_config: &EthConfiguration, - sealing: Sealing, - client: Arc>, - transaction_pool: Arc>>, - select_chain: FullSelectChain, - block_import: BoxBlockImport, - task_manager: &TaskManager, - prometheus_registry: Option<&Registry>, - telemetry: Option<&Telemetry>, - commands_stream: mpsc::Receiver< - sc_consensus_manual_seal::rpc::EngineCommand<::Hash>, - >, + eth_config: &EthConfiguration, + sealing: Sealing, + client: Arc>, + transaction_pool: Arc>>, + select_chain: FullSelectChain, + block_import: BoxBlockImport, + task_manager: &TaskManager, + prometheus_registry: Option<&Registry>, + telemetry: Option<&Telemetry>, + commands_stream: mpsc::Receiver< + sc_consensus_manual_seal::rpc::EngineCommand<::Hash>, + >, ) -> Result<(), ServiceError> where - B: BlockT, - RA: ConstructRuntimeApi>, - RA: Send + Sync + 'static, - RA::RuntimeApi: RuntimeApiCollection, - HF: HostFunctionsT + 'static, + B: BlockT, + RA: ConstructRuntimeApi>, + RA: Send + Sync + 'static, + RA::RuntimeApi: RuntimeApiCollection, + HF: HostFunctionsT + 'static, { let proposer_factory = sc_basic_authorship::ProposerFactory::new( task_manager.spawn_handle(), diff --git a/runtime/src/lib.rs b/runtime/src/lib.rs index ba74cbc66..938e95f6e 100644 --- a/runtime/src/lib.rs +++ b/runtime/src/lib.rs @@ -1158,23 +1158,23 @@ impl pallet_base_fee::Config for Runtime { pub struct TransactionConverter(PhantomData); impl Default for TransactionConverter { - fn default() -> Self { - Self(PhantomData) - } + fn default() -> Self { + Self(PhantomData) + } } impl fp_rpc::ConvertTransaction<::Extrinsic> for TransactionConverter { - fn convert_transaction( - &self, - transaction: pallet_ethereum::Transaction, - ) -> ::Extrinsic { - let extrinsic = UncheckedExtrinsic::new_unsigned( - pallet_ethereum::Call::::transact { transaction }.into(), - ); - let encoded = extrinsic.encode(); - ::Extrinsic::decode(&mut &encoded[..]) - .expect("Encoded extrinsic is always valid") - } + fn convert_transaction( + &self, + transaction: pallet_ethereum::Transaction, + ) -> ::Extrinsic { + let extrinsic = UncheckedExtrinsic::new_unsigned( + pallet_ethereum::Call::::transact { transaction }.into(), + ); + let encoded = extrinsic.encode(); + ::Extrinsic::decode(&mut &encoded[..]) + .expect("Encoded extrinsic is always valid") + } } impl fp_self_contained::SelfContainedCall for RuntimeCall { @@ -1761,9 +1761,9 @@ impl_runtime_apis! { ) } - fn initialize_pending_block(header: &::Header) { - Executive::initialize_block(header); - } + fn initialize_pending_block(header: &::Header) { + Executive::initialize_block(header); + } } impl fp_rpc::ConvertTransactionRuntimeApi for Runtime { From f706122e1a5d7d1778ef3da056778685288f213c Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Wed, 25 Sep 2024 21:38:12 -0400 Subject: [PATCH 34/60] Make linter happy again --- node/src/service.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/node/src/service.rs b/node/src/service.rs index 194ab84d4..56b2ab953 100644 --- a/node/src/service.rs +++ b/node/src/service.rs @@ -141,7 +141,7 @@ where .join(db_path) .join("frontier.db3") .to_str() - .unwrap(), + .unwrap_or(""), create_if_missing: true, thread_count: eth_config.frontier_sql_backend_thread_count, cache_size: eth_config.frontier_sql_backend_cache_size, @@ -430,7 +430,7 @@ where let target_gas_price = eth_config.target_gas_price; let pending_create_inherent_data_providers = move |_, ()| async move { let current = sp_timestamp::InherentDataProvider::from_system_time(); - let next_slot = current.timestamp().as_millis() + slot_duration.as_millis(); + let next_slot = current.timestamp().as_millis().saturating_add(slot_duration.as_millis()); let timestamp = sp_timestamp::InherentDataProvider::new(next_slot.into()); let slot = sp_consensus_aura::inherents::InherentDataProvider::from_timestamp_and_slot_duration( *timestamp, From a2b8bb6cab6142c81a9c1d40bdf840f4113bf158 Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Wed, 25 Sep 2024 21:52:16 -0400 Subject: [PATCH 35/60] Format --- node/src/service.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/node/src/service.rs b/node/src/service.rs index 56b2ab953..fef86dee6 100644 --- a/node/src/service.rs +++ b/node/src/service.rs @@ -430,7 +430,10 @@ where let target_gas_price = eth_config.target_gas_price; let pending_create_inherent_data_providers = move |_, ()| async move { let current = sp_timestamp::InherentDataProvider::from_system_time(); - let next_slot = current.timestamp().as_millis().saturating_add(slot_duration.as_millis()); + let next_slot = current + .timestamp() + .as_millis() + .saturating_add(slot_duration.as_millis()); let timestamp = sp_timestamp::InherentDataProvider::new(next_slot.into()); let slot = sp_consensus_aura::inherents::InherentDataProvider::from_timestamp_and_slot_duration( *timestamp, From 3f147b867f252cb41c57032f8ab512d9a4404dca Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Wed, 25 Sep 2024 21:55:32 -0400 Subject: [PATCH 36/60] Remove unused manifest key: dependencies.scale-codec.package (linter) --- node/Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/node/Cargo.toml b/node/Cargo.toml index b16e93da1..07790c197 100644 --- a/node/Cargo.toml +++ b/node/Cargo.toml @@ -23,7 +23,7 @@ name = "node-subtensor" async-trait = { workspace = true } clap = { workspace = true, features = ["derive"] } futures = { workspace = true, features = ["thread-pool"] } -scale-codec = { package = "parity-scale-codec", workspace = true } +scale-codec = { workspace = true } serde = { workspace = true, features = ["derive"] } # Storage import From 1c72c6fadbb300029f80aa6d9bc10ff5c27bf6d0 Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Thu, 26 Sep 2024 12:55:44 -0400 Subject: [PATCH 37/60] Fix benchmarks --- node/src/benchmarking.rs | 12 ++++++------ node/src/command.rs | 37 +++++++++---------------------------- 2 files changed, 15 insertions(+), 34 deletions(-) diff --git a/node/src/benchmarking.rs b/node/src/benchmarking.rs index cf48df62f..a97550071 100644 --- a/node/src/benchmarking.rs +++ b/node/src/benchmarking.rs @@ -2,7 +2,7 @@ //! //! Should only be used for benchmarking as it may break in other contexts. -use crate::service::FullClient; +use crate::service::Client; use node_subtensor_runtime as runtime; use node_subtensor_runtime::check_nonce; @@ -21,12 +21,12 @@ use std::{sync::Arc, time::Duration}; // // Note: Should only be used for benchmarking. pub struct RemarkBuilder { - client: Arc, + client: Arc, } impl RemarkBuilder { // Creates a new [`Self`] from the given client. - pub fn new(client: Arc) -> Self { + pub fn new(client: Arc) -> Self { Self { client } } } @@ -58,14 +58,14 @@ impl frame_benchmarking_cli::ExtrinsicBuilder for RemarkBuilder { // // Note: Should only be used for benchmarking. pub struct TransferKeepAliveBuilder { - client: Arc, + client: Arc, dest: AccountId, value: Balance, } impl TransferKeepAliveBuilder { // Creates a new [`Self`] from the given client. - pub fn new(client: Arc, dest: AccountId, value: Balance) -> Self { + pub fn new(client: Arc, dest: AccountId, value: Balance) -> Self { Self { client, dest, @@ -105,7 +105,7 @@ impl frame_benchmarking_cli::ExtrinsicBuilder for TransferKeepAliveBuilder { // // Note: Should only be used for benchmarking. pub fn create_benchmark_extrinsic( - client: &FullClient, + client: &Client, sender: sp_core::sr25519::Pair, call: runtime::RuntimeCall, nonce: u32, diff --git a/node/src/command.rs b/node/src/command.rs index 1c5c32350..0671d9fc6 100644 --- a/node/src/command.rs +++ b/node/src/command.rs @@ -6,15 +6,6 @@ use crate::{ }; use fc_db::{kv::frontier_database_dir, DatabaseSource}; -#[cfg(feature = "runtime-benchmarks")] -pub use crate::benchmarking::{inherent_benchmark_data, RemarkBuilder, TransferKeepAliveBuilder}; -#[cfg(feature = "runtime-benchmarks")] -pub use frame_benchmarking_cli::{BenchmarkCmd, ExtrinsicFactory, SUBSTRATE_REFERENCE_HARDWARE}; -#[cfg(feature = "runtime-benchmarks")] -pub use node_subtensor_runtime::EXISTENTIAL_DEPOSIT; -#[cfg(feature = "runtime-benchmarks")] -pub use sp_keyring::Sr25519Keyring; - use futures::TryFutureExt; use node_subtensor_runtime::Block; use sc_cli::SubstrateCli; @@ -163,10 +154,17 @@ pub fn run() -> sc_cli::Result<()> { } #[cfg(feature = "runtime-benchmarks")] Some(Subcommand::Benchmark(cmd)) => { + use crate::benchmarking::{inherent_benchmark_data, RemarkBuilder, TransferKeepAliveBuilder}; + use frame_benchmarking_cli::{BenchmarkCmd, ExtrinsicFactory, SUBSTRATE_REFERENCE_HARDWARE}; + use node_subtensor_runtime::EXISTENTIAL_DEPOSIT; + use sp_keyring::Sr25519Keyring; + use sp_runtime::traits::HashingFor; + use sc_service::PartialComponents; + let runner = cli.create_runner(cmd)?; runner.sync_run(|config| { - let sc_service::PartialComponents { + let PartialComponents { client, backend, .. } = crate::service::new_partial( &config, @@ -178,28 +176,11 @@ pub fn run() -> sc_cli::Result<()> { // which sub-commands it wants to support. match cmd { BenchmarkCmd::Pallet(cmd) => { - if !cfg!(feature = "runtime-benchmarks") { - return Err( - "Runtime benchmarking wasn't enabled when building the node. \ - You can enable it with `--features runtime-benchmarks`." - .into(), - ); - } - - cmd.run_with_spec::, service::ExecutorDispatch>(Some( - config.chain_spec, - )) + cmd.run_with_spec::, ()>(Some(config.chain_spec)) } BenchmarkCmd::Block(cmd) => { - let PartialComponents { client, .. } = service::new_partial(&config)?; cmd.run(client) } - #[cfg(not(feature = "runtime-benchmarks"))] - BenchmarkCmd::Storage(_) => Err( - "Storage benchmarking can be enabled with `--features runtime-benchmarks`." - .into(), - ), - #[cfg(feature = "runtime-benchmarks")] BenchmarkCmd::Storage(cmd) => { let db = backend.expose_db(); let storage = backend.expose_storage(); From bb9ee35b0c49c61bf08864d62f50725b1629e3be Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Thu, 26 Sep 2024 12:57:40 -0400 Subject: [PATCH 38/60] Format --- node/src/command.rs | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/node/src/command.rs b/node/src/command.rs index 0671d9fc6..0839649bd 100644 --- a/node/src/command.rs +++ b/node/src/command.rs @@ -154,12 +154,16 @@ pub fn run() -> sc_cli::Result<()> { } #[cfg(feature = "runtime-benchmarks")] Some(Subcommand::Benchmark(cmd)) => { - use crate::benchmarking::{inherent_benchmark_data, RemarkBuilder, TransferKeepAliveBuilder}; - use frame_benchmarking_cli::{BenchmarkCmd, ExtrinsicFactory, SUBSTRATE_REFERENCE_HARDWARE}; + use crate::benchmarking::{ + inherent_benchmark_data, RemarkBuilder, TransferKeepAliveBuilder, + }; + use frame_benchmarking_cli::{ + BenchmarkCmd, ExtrinsicFactory, SUBSTRATE_REFERENCE_HARDWARE, + }; use node_subtensor_runtime::EXISTENTIAL_DEPOSIT; + use sc_service::PartialComponents; use sp_keyring::Sr25519Keyring; use sp_runtime::traits::HashingFor; - use sc_service::PartialComponents; let runner = cli.create_runner(cmd)?; @@ -178,9 +182,7 @@ pub fn run() -> sc_cli::Result<()> { BenchmarkCmd::Pallet(cmd) => { cmd.run_with_spec::, ()>(Some(config.chain_spec)) } - BenchmarkCmd::Block(cmd) => { - cmd.run(client) - } + BenchmarkCmd::Block(cmd) => cmd.run(client), BenchmarkCmd::Storage(cmd) => { let db = backend.expose_db(); let storage = backend.expose_storage(); From 4966c2c5a706a7aeb7a77d3bd0bc9b64b2617069 Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Fri, 27 Sep 2024 13:15:03 -0400 Subject: [PATCH 39/60] Cleanup RPC create_full bounds --- node/src/rpc.rs | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/node/src/rpc.rs b/node/src/rpc.rs index 5723a6fba..4f2063215 100644 --- a/node/src/rpc.rs +++ b/node/src/rpc.rs @@ -7,10 +7,9 @@ use std::{collections::BTreeMap, sync::Arc}; -use fp_rpc::{ConvertTransactionRuntimeApi, EthereumRuntimeRPCApi}; use futures::channel::mpsc; -use crate::ethereum::create_eth; +use crate::{client::RuntimeApiCollection, ethereum::create_eth}; pub use fc_rpc::EthBlockDataCacheTask; pub use fc_rpc_core::types::{FeeHistoryCache, FeeHistoryCacheLimit, FilterPool}; use fc_storage::StorageOverride; @@ -28,10 +27,8 @@ use sc_rpc::SubscriptionTaskExecutor; use sc_transaction_pool::{ChainApi, Pool}; use sc_transaction_pool_api::TransactionPool; use sp_api::{CallApiAt, ProvideRuntimeApi}; -use sp_block_builder::BlockBuilder; use sp_blockchain::{Error as BlockChainError, HeaderBackend, HeaderMetadata}; use sp_consensus_aura::sr25519::AuthorityId as AuraId; -use sp_consensus_aura::AuraApi; use sp_core::H256; use sp_inherents::CreateInherentDataProviders; use sp_runtime::traits::Block as BlockT; @@ -116,16 +113,7 @@ pub fn create_full( where B: BlockT, C: CallApiAt + ProvideRuntimeApi, - C::Api: BlockBuilder, - C::Api: AuraApi, - C::Api: substrate_frame_rpc_system::AccountNonceApi, - C::Api: pallet_transaction_payment_rpc::TransactionPaymentRuntimeApi, - C::Api: ConvertTransactionRuntimeApi, - C::Api: EthereumRuntimeRPCApi, - C::Api: subtensor_custom_rpc_runtime_api::DelegateInfoRuntimeApi, - C::Api: subtensor_custom_rpc_runtime_api::NeuronInfoRuntimeApi, - C::Api: subtensor_custom_rpc_runtime_api::SubnetInfoRuntimeApi, - C::Api: subtensor_custom_rpc_runtime_api::SubnetRegistrationRuntimeApi, + C::Api: RuntimeApiCollection, C: HeaderBackend + HeaderMetadata + 'static, C: BlockchainEvents + AuxStore + UsageProvider + StorageProvider, BE: Backend + 'static, From 7064b52ef0766bda4719969d96ba374da4faf671 Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Mon, 30 Sep 2024 10:40:46 -0400 Subject: [PATCH 40/60] Add ed25519 verify precompile --- Cargo.lock | 28 +++++++++++++++++++--------- Cargo.toml | 1 + runtime/Cargo.toml | 2 ++ runtime/src/precompiles/mod.rs | 8 +++++++- 4 files changed, 29 insertions(+), 10 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 5e42f9c92..fce2cedaa 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -5619,6 +5619,7 @@ dependencies = [ "pallet-ethereum", "pallet-evm", "pallet-evm-chain-id", + "pallet-evm-precompile-ed25519", "pallet-evm-precompile-modexp", "pallet-evm-precompile-sha3fips", "pallet-evm-precompile-simple", @@ -6147,6 +6148,15 @@ dependencies = [ "scale-info", ] +[[package]] +name = "pallet-evm-precompile-ed25519" +version = "2.0.0-dev" +source = "git+https://github.com/keithtensor/frontier?branch=upgrade-to-v1.16.0#f80f9e2bad338f3bf3854b256b3c4edea23e5968" +dependencies = [ + "ed25519-dalek", + "fp-evm", +] + [[package]] name = "pallet-evm-precompile-modexp" version = "2.0.0-dev" @@ -9817,7 +9827,7 @@ dependencies = [ [[package]] name = "sp-crypto-ec-utils" version = "0.10.0" -source = "git+https://github.com/paritytech/polkadot-sdk#c77095f51119d2eccdc54d2f3518bed0ffbd6d53" +source = "git+https://github.com/paritytech/polkadot-sdk#9283dc1db4bbc199b0fe3fb7da81eee98013785e" dependencies = [ "ark-bls12-377", "ark-bls12-377-ext", @@ -9893,7 +9903,7 @@ dependencies = [ [[package]] name = "sp-debug-derive" version = "14.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk#c77095f51119d2eccdc54d2f3518bed0ffbd6d53" +source = "git+https://github.com/paritytech/polkadot-sdk#9283dc1db4bbc199b0fe3fb7da81eee98013785e" dependencies = [ "proc-macro2", "quote", @@ -9913,7 +9923,7 @@ dependencies = [ [[package]] name = "sp-externalities" version = "0.25.0" -source = "git+https://github.com/paritytech/polkadot-sdk#c77095f51119d2eccdc54d2f3518bed0ffbd6d53" +source = "git+https://github.com/paritytech/polkadot-sdk#9283dc1db4bbc199b0fe3fb7da81eee98013785e" dependencies = [ "environmental", "parity-scale-codec", @@ -10100,7 +10110,7 @@ dependencies = [ [[package]] name = "sp-runtime-interface" version = "24.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk#c77095f51119d2eccdc54d2f3518bed0ffbd6d53" +source = "git+https://github.com/paritytech/polkadot-sdk#9283dc1db4bbc199b0fe3fb7da81eee98013785e" dependencies = [ "bytes", "impl-trait-for-tuples", @@ -10132,7 +10142,7 @@ dependencies = [ [[package]] name = "sp-runtime-interface-proc-macro" version = "17.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk#c77095f51119d2eccdc54d2f3518bed0ffbd6d53" +source = "git+https://github.com/paritytech/polkadot-sdk#9283dc1db4bbc199b0fe3fb7da81eee98013785e" dependencies = [ "Inflector", "expander", @@ -10221,7 +10231,7 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a42 [[package]] name = "sp-std" version = "14.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk#c77095f51119d2eccdc54d2f3518bed0ffbd6d53" +source = "git+https://github.com/paritytech/polkadot-sdk#9283dc1db4bbc199b0fe3fb7da81eee98013785e" [[package]] name = "sp-storage" @@ -10238,7 +10248,7 @@ dependencies = [ [[package]] name = "sp-storage" version = "19.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk#c77095f51119d2eccdc54d2f3518bed0ffbd6d53" +source = "git+https://github.com/paritytech/polkadot-sdk#9283dc1db4bbc199b0fe3fb7da81eee98013785e" dependencies = [ "impl-serde", "parity-scale-codec", @@ -10273,7 +10283,7 @@ dependencies = [ [[package]] name = "sp-tracing" version = "16.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk#c77095f51119d2eccdc54d2f3518bed0ffbd6d53" +source = "git+https://github.com/paritytech/polkadot-sdk#9283dc1db4bbc199b0fe3fb7da81eee98013785e" dependencies = [ "parity-scale-codec", "tracing", @@ -10370,7 +10380,7 @@ dependencies = [ [[package]] name = "sp-wasm-interface" version = "20.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk#c77095f51119d2eccdc54d2f3518bed0ffbd6d53" +source = "git+https://github.com/paritytech/polkadot-sdk#9283dc1db4bbc199b0fe3fb7da81eee98013785e" dependencies = [ "anyhow", "impl-trait-for-tuples", diff --git a/Cargo.toml b/Cargo.toml index 5ab0f5097..2d52e4359 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -184,6 +184,7 @@ pallet-dynamic-fee = { git = "https://github.com/keithtensor/frontier", branch = pallet-ethereum = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } pallet-evm = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } pallet-evm-chain-id = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } +pallet-evm-precompile-ed25519 = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } pallet-evm-precompile-modexp = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } pallet-evm-precompile-sha3fips = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } pallet-evm-precompile-simple = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } diff --git a/runtime/Cargo.toml b/runtime/Cargo.toml index 831710058..2077eb05e 100644 --- a/runtime/Cargo.toml +++ b/runtime/Cargo.toml @@ -104,6 +104,7 @@ pallet-dynamic-fee = { workspace = true } pallet-ethereum = { workspace = true } pallet-evm = { workspace = true } pallet-evm-chain-id = { workspace = true } +pallet-evm-precompile-ed25519 = { workspace = true } pallet-evm-precompile-modexp = { workspace = true } pallet-evm-precompile-sha3fips = { workspace = true } pallet-evm-precompile-simple = { workspace = true } @@ -183,6 +184,7 @@ std = [ "pallet-ethereum/std", "pallet-evm/std", "pallet-evm-chain-id/std", + "pallet-evm-precompile-ed25519/std", "pallet-evm-precompile-modexp/std", "pallet-evm-precompile-sha3fips/std", "pallet-evm-precompile-simple/std", diff --git a/runtime/src/precompiles/mod.rs b/runtime/src/precompiles/mod.rs index 39f7618e1..b1eec9826 100644 --- a/runtime/src/precompiles/mod.rs +++ b/runtime/src/precompiles/mod.rs @@ -6,6 +6,7 @@ use pallet_evm::{ ExitError, IsPrecompileResult, Precompile, PrecompileFailure, PrecompileHandle, PrecompileResult, PrecompileSet, }; +use pallet_evm_precompile_ed25519::Ed25519Verify; use pallet_evm_precompile_modexp::Modexp; use pallet_evm_precompile_sha3fips::Sha3FIPS256; use pallet_evm_precompile_simple::{ECRecover, ECRecoverPublicKey, Identity, Ripemd160, Sha256}; @@ -17,6 +18,8 @@ mod staking; use balance_transfer::*; use staking::*; +pub const EDVERIFY_PRECOMPILE_INDEX: u64 = 1026; + pub struct FrontierPrecompiles(PhantomData); impl Default for FrontierPrecompiles @@ -35,7 +38,7 @@ where pub fn new() -> Self { Self(Default::default()) } - pub fn used_addresses() -> [H160; 9] { + pub fn used_addresses() -> [H160; 10] { [ hash(1), hash(2), @@ -44,6 +47,7 @@ where hash(5), hash(1024), hash(1025), + hash(EDVERIFY_PRECOMPILE_INDEX), hash(BALANCE_TRANSFER_INDEX), hash(STAKING_PRECOMPILE_INDEX), ] @@ -64,6 +68,8 @@ where // Non-Frontier specific nor Ethereum precompiles : a if a == hash(1024) => Some(Sha3FIPS256::execute(handle)), a if a == hash(1025) => Some(ECRecoverPublicKey::execute(handle)), + a if a == hash(EDVERIFY_PRECOMPILE_INDEX) => Some(Ed25519Verify::execute(handle)), + // Subtensor specific precompiles : a if a == hash(BALANCE_TRANSFER_INDEX) => { Some(BalanceTransferPrecompile::execute(handle)) } From c587301b8b8438d61034bf0878fe221874e5d15e Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Tue, 1 Oct 2024 13:47:33 -0400 Subject: [PATCH 41/60] Implement ed25519 verification precompile --- Cargo.lock | 11 +---- Cargo.toml | 2 +- runtime/Cargo.toml | 3 +- runtime/src/precompiles/ed25519.rs | 46 +++++++++++++++++++ runtime/src/precompiles/mod.rs | 5 +- .../precompiles/solidity/ed25519Verify.abi | 14 ++++++ .../precompiles/solidity/ed25519Verify.sol | 17 +++++++ 7 files changed, 82 insertions(+), 16 deletions(-) create mode 100644 runtime/src/precompiles/ed25519.rs create mode 100644 runtime/src/precompiles/solidity/ed25519Verify.abi create mode 100644 runtime/src/precompiles/solidity/ed25519Verify.sol diff --git a/Cargo.lock b/Cargo.lock index fce2cedaa..fcdbfd5ae 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -5595,6 +5595,7 @@ dependencies = [ name = "node-subtensor-runtime" version = "4.0.0-dev" dependencies = [ + "ed25519-dalek", "fp-account", "fp-evm", "fp-rpc", @@ -5619,7 +5620,6 @@ dependencies = [ "pallet-ethereum", "pallet-evm", "pallet-evm-chain-id", - "pallet-evm-precompile-ed25519", "pallet-evm-precompile-modexp", "pallet-evm-precompile-sha3fips", "pallet-evm-precompile-simple", @@ -6148,15 +6148,6 @@ dependencies = [ "scale-info", ] -[[package]] -name = "pallet-evm-precompile-ed25519" -version = "2.0.0-dev" -source = "git+https://github.com/keithtensor/frontier?branch=upgrade-to-v1.16.0#f80f9e2bad338f3bf3854b256b3c4edea23e5968" -dependencies = [ - "ed25519-dalek", - "fp-evm", -] - [[package]] name = "pallet-evm-precompile-modexp" version = "2.0.0-dev" diff --git a/Cargo.toml b/Cargo.toml index 2d52e4359..13fef82bd 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -50,6 +50,7 @@ async-trait = "0.1" cargo-husky = { version = "1", default-features = false } clap = "4.5.4" codec = { version = "3.2.2", default-features = false } +ed25519-dalek = { version = "2.1.0", default-features = false, features = ["alloc"] } enumflags2 = "0.7.9" futures = "0.3.30" hex = { version = "0.4", default-features = false } @@ -184,7 +185,6 @@ pallet-dynamic-fee = { git = "https://github.com/keithtensor/frontier", branch = pallet-ethereum = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } pallet-evm = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } pallet-evm-chain-id = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } -pallet-evm-precompile-ed25519 = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } pallet-evm-precompile-modexp = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } pallet-evm-precompile-sha3fips = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } pallet-evm-precompile-simple = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } diff --git a/runtime/Cargo.toml b/runtime/Cargo.toml index 2077eb05e..db6d4439e 100644 --- a/runtime/Cargo.toml +++ b/runtime/Cargo.toml @@ -20,6 +20,7 @@ name = "spec_version" path = "src/spec_version.rs" [dependencies] +ed25519-dalek = { workspace = true } subtensor-macros.workspace = true subtensor-custom-rpc-runtime-api = { path = "../pallets/subtensor/runtime-api", default-features = false } smallvec = { workspace = true } @@ -104,7 +105,6 @@ pallet-dynamic-fee = { workspace = true } pallet-ethereum = { workspace = true } pallet-evm = { workspace = true } pallet-evm-chain-id = { workspace = true } -pallet-evm-precompile-ed25519 = { workspace = true } pallet-evm-precompile-modexp = { workspace = true } pallet-evm-precompile-sha3fips = { workspace = true } pallet-evm-precompile-simple = { workspace = true } @@ -184,7 +184,6 @@ std = [ "pallet-ethereum/std", "pallet-evm/std", "pallet-evm-chain-id/std", - "pallet-evm-precompile-ed25519/std", "pallet-evm-precompile-modexp/std", "pallet-evm-precompile-sha3fips/std", "pallet-evm-precompile-simple/std", diff --git a/runtime/src/precompiles/ed25519.rs b/runtime/src/precompiles/ed25519.rs new file mode 100644 index 000000000..5357d46b3 --- /dev/null +++ b/runtime/src/precompiles/ed25519.rs @@ -0,0 +1,46 @@ +#![cfg_attr(not(feature = "std"), no_std)] + +extern crate alloc; + +use alloc::vec::Vec; + +use crate::precompiles::get_slice; +use ed25519_dalek::{Signature, Verifier, VerifyingKey}; +use fp_evm::{ExitError, ExitSucceed, LinearCostPrecompile, PrecompileFailure}; + +pub const EDVERIFY_PRECOMPILE_INDEX: u64 = 1026; + +pub struct Ed25519Verify; + +impl LinearCostPrecompile for Ed25519Verify { + const BASE: u64 = 15; + const WORD: u64 = 3; + + fn execute(input: &[u8], _: u64) -> Result<(ExitSucceed, Vec), PrecompileFailure> { + if input.len() < 132 { + return Err(PrecompileFailure::Error { + exit_status: ExitError::Other("input must contain 128 bytes".into()), + }); + }; + + let mut buf = [0u8; 32]; + + let msg = get_slice(input, 4, 36)?; + let pk = VerifyingKey::try_from(get_slice(input, 36, 68)?).map_err(|_| { + PrecompileFailure::Error { + exit_status: ExitError::Other("Public key recover failed".into()), + } + })?; + let sig = Signature::try_from(get_slice(input, 68, 132)?).map_err(|_| { + PrecompileFailure::Error { + exit_status: ExitError::Other("Signature recover failed".into()), + } + })?; + + if pk.verify(msg, &sig).is_ok() { + buf[31] = 1u8; + }; + + Ok((ExitSucceed::Returned, buf.to_vec())) + } +} diff --git a/runtime/src/precompiles/mod.rs b/runtime/src/precompiles/mod.rs index b1eec9826..22f2a4881 100644 --- a/runtime/src/precompiles/mod.rs +++ b/runtime/src/precompiles/mod.rs @@ -6,20 +6,19 @@ use pallet_evm::{ ExitError, IsPrecompileResult, Precompile, PrecompileFailure, PrecompileHandle, PrecompileResult, PrecompileSet, }; -use pallet_evm_precompile_ed25519::Ed25519Verify; use pallet_evm_precompile_modexp::Modexp; use pallet_evm_precompile_sha3fips::Sha3FIPS256; use pallet_evm_precompile_simple::{ECRecover, ECRecoverPublicKey, Identity, Ripemd160, Sha256}; // Include custom precompiles mod balance_transfer; +mod ed25519; mod staking; use balance_transfer::*; +use ed25519::*; use staking::*; -pub const EDVERIFY_PRECOMPILE_INDEX: u64 = 1026; - pub struct FrontierPrecompiles(PhantomData); impl Default for FrontierPrecompiles diff --git a/runtime/src/precompiles/solidity/ed25519Verify.abi b/runtime/src/precompiles/solidity/ed25519Verify.abi new file mode 100644 index 000000000..05d75ae6c --- /dev/null +++ b/runtime/src/precompiles/solidity/ed25519Verify.abi @@ -0,0 +1,14 @@ +[ + { + "inputs": [ + { "internalType": "bytes32", "name": "message", "type": "bytes32" }, + { "internalType": "bytes32", "name": "publicKey", "type": "bytes32" }, + { "internalType": "bytes32", "name": "r", "type": "bytes32" }, + { "internalType": "bytes32", "name": "s", "type": "bytes32" } + ], + "name": "verify", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "pure", + "type": "function" + } +] \ No newline at end of file diff --git a/runtime/src/precompiles/solidity/ed25519Verify.sol b/runtime/src/precompiles/solidity/ed25519Verify.sol new file mode 100644 index 000000000..035feb4cc --- /dev/null +++ b/runtime/src/precompiles/solidity/ed25519Verify.sol @@ -0,0 +1,17 @@ +// SPDX-License-Identifier: GPL-3.0 +pragma solidity ^0.8.0; + +address constant IED25519VERIFY_ADDRESS = 0x0000000000000000000000000000000000000402; + +interface IEd25519Verify { + /** + * @dev Verifies Ed25519 signature using provided message and public key. + * + * @param message The 32-byte signature payload message. + * @param publicKey 32-byte public key matching to private key used to sign the message. + * @param r The Ed25519 signature commitment (first 32 bytes). + * @param s The Ed25519 signature response (second 32 bytes). + * @return bool Returns true if the signature is valid for the given message and public key, false otherwise. + */ + function verify(bytes32 message, bytes32 publicKey, bytes32 r, bytes32 s) external pure returns (bool); +} From 129d3d98e211fd3d279ad8bd7964c9e4704fd1fc Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Wed, 2 Oct 2024 10:04:27 -0400 Subject: [PATCH 42/60] Propagate features for ed25519-dalek --- runtime/Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime/Cargo.toml b/runtime/Cargo.toml index db6d4439e..5e6a65263 100644 --- a/runtime/Cargo.toml +++ b/runtime/Cargo.toml @@ -20,7 +20,7 @@ name = "spec_version" path = "src/spec_version.rs" [dependencies] -ed25519-dalek = { workspace = true } +ed25519-dalek = { workspace = true, default-features = false, features = ["alloc"] } subtensor-macros.workspace = true subtensor-custom-rpc-runtime-api = { path = "../pallets/subtensor/runtime-api", default-features = false } smallvec = { workspace = true } From ac24a8fe0d708cae033f11d156c6fac44e46e8bc Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Wed, 2 Oct 2024 10:56:32 -0400 Subject: [PATCH 43/60] Add ed25519-dalek to std feature in runtime --- runtime/Cargo.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/runtime/Cargo.toml b/runtime/Cargo.toml index 5e6a65263..c82a5aa49 100644 --- a/runtime/Cargo.toml +++ b/runtime/Cargo.toml @@ -128,6 +128,7 @@ std = [ "frame-system-benchmarking?/std", "frame-benchmarking/std", "codec/std", + "ed25519-dalek/std", "scale-info/std", "frame-executive/std", "frame-metadata-hash-extension/std", From 6ead7786960bf9fac3ddfe756a20ffb86e9e45fd Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Thu, 3 Oct 2024 22:56:43 -0400 Subject: [PATCH 44/60] Implement subtensor evm balance converter, use in balance transfer precompile --- Cargo.lock | 1083 ++++++------------- Cargo.toml | 196 ++-- runtime/src/lib.rs | 27 +- runtime/src/precompiles/balance_transfer.rs | 8 +- 4 files changed, 486 insertions(+), 828 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index fcdbfd5ae..98cbb7d19 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -214,18 +214,6 @@ dependencies = [ "ark-std", ] -[[package]] -name = "ark-bls12-377-ext" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20c7021f180a0cbea0380eba97c2af3c57074cdaffe0eef7e840e1c9f2841e55" -dependencies = [ - "ark-bls12-377", - "ark-ec", - "ark-models-ext", - "ark-std", -] - [[package]] name = "ark-bls12-381" version = "0.4.0" @@ -238,45 +226,6 @@ dependencies = [ "ark-std", ] -[[package]] -name = "ark-bls12-381-ext" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1dc4b3d08f19e8ec06e949712f95b8361e43f1391d94f65e4234df03480631c" -dependencies = [ - "ark-bls12-381", - "ark-ec", - "ark-ff", - "ark-models-ext", - "ark-serialize", - "ark-std", -] - -[[package]] -name = "ark-bw6-761" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e0605daf0cc5aa2034b78d008aaf159f56901d92a52ee4f6ecdfdac4f426700" -dependencies = [ - "ark-bls12-377", - "ark-ec", - "ark-ff", - "ark-std", -] - -[[package]] -name = "ark-bw6-761-ext" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccee5fba47266f460067588ee1bf070a9c760bf2050c1c509982c5719aadb4f2" -dependencies = [ - "ark-bw6-761", - "ark-ec", - "ark-ff", - "ark-models-ext", - "ark-std", -] - [[package]] name = "ark-ec" version = "0.4.2" @@ -291,60 +240,9 @@ dependencies = [ "hashbrown 0.13.2", "itertools 0.10.5", "num-traits", - "rayon", "zeroize", ] -[[package]] -name = "ark-ed-on-bls12-377" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b10d901b9ac4b38f9c32beacedfadcdd64e46f8d7f8e88c1ae1060022cf6f6c6" -dependencies = [ - "ark-bls12-377", - "ark-ec", - "ark-ff", - "ark-std", -] - -[[package]] -name = "ark-ed-on-bls12-377-ext" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "524a4fb7540df2e1a8c2e67a83ba1d1e6c3947f4f9342cc2359fc2e789ad731d" -dependencies = [ - "ark-ec", - "ark-ed-on-bls12-377", - "ark-ff", - "ark-models-ext", - "ark-std", -] - -[[package]] -name = "ark-ed-on-bls12-381-bandersnatch" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9cde0f2aa063a2a5c28d39b47761aa102bda7c13c84fc118a61b87c7b2f785c" -dependencies = [ - "ark-bls12-381", - "ark-ec", - "ark-ff", - "ark-std", -] - -[[package]] -name = "ark-ed-on-bls12-381-bandersnatch-ext" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d15185f1acb49a07ff8cbe5f11a1adc5a93b19e211e325d826ae98e98e124346" -dependencies = [ - "ark-ec", - "ark-ed-on-bls12-381-bandersnatch", - "ark-ff", - "ark-models-ext", - "ark-std", -] - [[package]] name = "ark-ff" version = "0.4.2" @@ -388,19 +286,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "ark-models-ext" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e9eab5d4b5ff2f228b763d38442adc9b084b0a465409b059fac5c2308835ec2" -dependencies = [ - "ark-ec", - "ark-ff", - "ark-serialize", - "ark-std", - "derivative", -] - [[package]] name = "ark-poly" version = "0.4.2" @@ -414,35 +299,6 @@ dependencies = [ "hashbrown 0.13.2", ] -[[package]] -name = "ark-scale" -version = "0.0.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f69c00b3b529be29528a6f2fd5fa7b1790f8bed81b9cdca17e326538545a179" -dependencies = [ - "ark-ec", - "ark-ff", - "ark-serialize", - "ark-std", - "parity-scale-codec", - "scale-info", -] - -[[package]] -name = "ark-secret-scalar" -version = "0.0.2" -source = "git+https://github.com/w3f/ring-vrf?rev=0fef826#0fef8266d851932ad25d6b41bc4b34d834d1e11d" -dependencies = [ - "ark-ec", - "ark-ff", - "ark-serialize", - "ark-std", - "ark-transcript", - "digest 0.10.7", - "getrandom_or_panic", - "zeroize", -] - [[package]] name = "ark-serialize" version = "0.4.2" @@ -474,20 +330,6 @@ checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" dependencies = [ "num-traits", "rand", - "rayon", -] - -[[package]] -name = "ark-transcript" -version = "0.0.2" -source = "git+https://github.com/w3f/ring-vrf?rev=0fef826#0fef8266d851932ad25d6b41bc4b34d834d1e11d" -dependencies = [ - "ark-ff", - "ark-serialize", - "ark-std", - "digest 0.10.7", - "rand_core", - "sha3", ] [[package]] @@ -715,27 +557,6 @@ dependencies = [ "windows-targets 0.52.6", ] -[[package]] -name = "bandersnatch_vrfs" -version = "0.0.4" -source = "git+https://github.com/w3f/ring-vrf?rev=0fef826#0fef8266d851932ad25d6b41bc4b34d834d1e11d" -dependencies = [ - "ark-bls12-381", - "ark-ec", - "ark-ed-on-bls12-381-bandersnatch", - "ark-ff", - "ark-serialize", - "ark-std", - "dleq_vrf", - "rand_chacha", - "rand_core", - "ring 0.1.0", - "sha2 0.10.8", - "sp-ark-bls12-381", - "sp-ark-ed-on-bls12-381-bandersnatch", - "zeroize", -] - [[package]] name = "base-x" version = "0.2.11" @@ -1266,22 +1087,6 @@ dependencies = [ "unicode-width", ] -[[package]] -name = "common" -version = "0.1.0" -source = "git+https://github.com/w3f/ring-proof?rev=665f5f5#665f5f51af5734c7b6d90b985dd6861d4c5b4752" -dependencies = [ - "ark-ec", - "ark-ff", - "ark-poly", - "ark-serialize", - "ark-std", - "fflonk", - "getrandom_or_panic", - "merlin", - "rand_chacha", -] - [[package]] name = "common-path" version = "1.0.0" @@ -1928,22 +1733,6 @@ dependencies = [ "syn 2.0.77", ] -[[package]] -name = "dleq_vrf" -version = "0.0.2" -source = "git+https://github.com/w3f/ring-vrf?rev=0fef826#0fef8266d851932ad25d6b41bc4b34d834d1e11d" -dependencies = [ - "ark-ec", - "ark-ff", - "ark-scale", - "ark-secret-scalar", - "ark-serialize", - "ark-std", - "ark-transcript", - "arrayvec", - "zeroize", -] - [[package]] name = "docify" version = "0.2.8" @@ -2364,7 +2153,7 @@ checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6" [[package]] name = "fc-api" version = "1.0.0-dev" -source = "git+https://github.com/keithtensor/frontier?branch=upgrade-to-v1.16.0#f80f9e2bad338f3bf3854b256b3c4edea23e5968" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" dependencies = [ "async-trait", "fp-storage", @@ -2376,7 +2165,7 @@ dependencies = [ [[package]] name = "fc-consensus" version = "2.0.0-dev" -source = "git+https://github.com/keithtensor/frontier?branch=upgrade-to-v1.16.0#f80f9e2bad338f3bf3854b256b3c4edea23e5968" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" dependencies = [ "async-trait", "fp-consensus", @@ -2392,7 +2181,7 @@ dependencies = [ [[package]] name = "fc-db" version = "2.0.0-dev" -source = "git+https://github.com/keithtensor/frontier?branch=upgrade-to-v1.16.0#f80f9e2bad338f3bf3854b256b3c4edea23e5968" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" dependencies = [ "async-trait", "ethereum", @@ -2422,7 +2211,7 @@ dependencies = [ [[package]] name = "fc-mapping-sync" version = "2.0.0-dev" -source = "git+https://github.com/keithtensor/frontier?branch=upgrade-to-v1.16.0#f80f9e2bad338f3bf3854b256b3c4edea23e5968" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" dependencies = [ "fc-db", "fc-storage", @@ -2445,7 +2234,7 @@ dependencies = [ [[package]] name = "fc-rpc" version = "2.0.0-dev" -source = "git+https://github.com/keithtensor/frontier?branch=upgrade-to-v1.16.0#f80f9e2bad338f3bf3854b256b3c4edea23e5968" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" dependencies = [ "ethereum", "ethereum-types", @@ -2484,12 +2273,12 @@ dependencies = [ "sp-consensus", "sp-consensus-aura", "sp-core", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-externalities", "sp-inherents", "sp-io", "sp-runtime", "sp-state-machine", - "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-storage", "sp-timestamp", "substrate-prometheus-endpoint", "thiserror", @@ -2499,7 +2288,7 @@ dependencies = [ [[package]] name = "fc-rpc-core" version = "1.1.0-dev" -source = "git+https://github.com/keithtensor/frontier?branch=upgrade-to-v1.16.0#f80f9e2bad338f3bf3854b256b3c4edea23e5968" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" dependencies = [ "ethereum", "ethereum-types", @@ -2508,13 +2297,13 @@ dependencies = [ "rustc-hex", "serde", "serde_json", - "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", ] [[package]] name = "fc-storage" version = "1.0.0-dev" -source = "git+https://github.com/keithtensor/frontier?branch=upgrade-to-v1.16.0#f80f9e2bad338f3bf3854b256b3c4edea23e5968" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" dependencies = [ "ethereum", "ethereum-types", @@ -2525,7 +2314,7 @@ dependencies = [ "sp-api", "sp-io", "sp-runtime", - "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-storage", ] [[package]] @@ -2548,19 +2337,6 @@ dependencies = [ "subtle 2.6.1", ] -[[package]] -name = "fflonk" -version = "0.1.0" -source = "git+https://github.com/w3f/fflonk#1e854f35e9a65d08b11a86291405cdc95baa0a35" -dependencies = [ - "ark-ec", - "ark-ff", - "ark-poly", - "ark-serialize", - "ark-std", - "merlin", -] - [[package]] name = "fiat-crypto" version = "0.2.9" @@ -2676,8 +2452,8 @@ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" [[package]] name = "fork-tree" -version = "12.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "13.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "parity-scale-codec", ] @@ -2704,7 +2480,7 @@ dependencies = [ [[package]] name = "fp-account" version = "1.0.0-dev" -source = "git+https://github.com/keithtensor/frontier?branch=upgrade-to-v1.16.0#f80f9e2bad338f3bf3854b256b3c4edea23e5968" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" dependencies = [ "hex", "impl-serde", @@ -2716,14 +2492,14 @@ dependencies = [ "sp-core", "sp-io", "sp-runtime", - "sp-runtime-interface 24.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-runtime-interface", "staging-xcm", ] [[package]] name = "fp-consensus" version = "2.0.0-dev" -source = "git+https://github.com/keithtensor/frontier?branch=upgrade-to-v1.16.0#f80f9e2bad338f3bf3854b256b3c4edea23e5968" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" dependencies = [ "ethereum", "parity-scale-codec", @@ -2734,7 +2510,7 @@ dependencies = [ [[package]] name = "fp-dynamic-fee" version = "1.0.0" -source = "git+https://github.com/keithtensor/frontier?branch=upgrade-to-v1.16.0#f80f9e2bad338f3bf3854b256b3c4edea23e5968" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" dependencies = [ "async-trait", "sp-core", @@ -2744,7 +2520,7 @@ dependencies = [ [[package]] name = "fp-ethereum" version = "1.0.0-dev" -source = "git+https://github.com/keithtensor/frontier?branch=upgrade-to-v1.16.0#f80f9e2bad338f3bf3854b256b3c4edea23e5968" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" dependencies = [ "ethereum", "ethereum-types", @@ -2756,7 +2532,7 @@ dependencies = [ [[package]] name = "fp-evm" version = "3.0.0-dev" -source = "git+https://github.com/keithtensor/frontier?branch=upgrade-to-v1.16.0#f80f9e2bad338f3bf3854b256b3c4edea23e5968" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" dependencies = [ "evm", "frame-support", @@ -2771,7 +2547,7 @@ dependencies = [ [[package]] name = "fp-rpc" version = "3.0.0-dev" -source = "git+https://github.com/keithtensor/frontier?branch=upgrade-to-v1.16.0#f80f9e2bad338f3bf3854b256b3c4edea23e5968" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" dependencies = [ "ethereum", "ethereum-types", @@ -2787,7 +2563,7 @@ dependencies = [ [[package]] name = "fp-self-contained" version = "1.0.0-dev" -source = "git+https://github.com/keithtensor/frontier?branch=upgrade-to-v1.16.0#f80f9e2bad338f3bf3854b256b3c4edea23e5968" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" dependencies = [ "frame-support", "parity-scale-codec", @@ -2799,7 +2575,7 @@ dependencies = [ [[package]] name = "fp-storage" version = "2.0.0" -source = "git+https://github.com/keithtensor/frontier?branch=upgrade-to-v1.16.0#f80f9e2bad338f3bf3854b256b3c4edea23e5968" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" dependencies = [ "parity-scale-codec", "serde", @@ -2813,8 +2589,8 @@ checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa" [[package]] name = "frame-benchmarking" -version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "38.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "frame-support", "frame-support-procedural", @@ -2830,15 +2606,15 @@ dependencies = [ "sp-core", "sp-io", "sp-runtime", - "sp-runtime-interface 24.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", - "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-runtime-interface", + "sp-storage", "static_assertions", ] [[package]] name = "frame-benchmarking-cli" -version = "32.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "43.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "Inflector", "array-bytes", @@ -2871,24 +2647,24 @@ dependencies = [ "sp-blockchain", "sp-core", "sp-database", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-externalities", "sp-genesis-builder", "sp-inherents", "sp-io", "sp-keystore", "sp-runtime", "sp-state-machine", - "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-storage", "sp-trie", - "sp-wasm-interface 20.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-wasm-interface", "thiserror", "thousands", ] [[package]] name = "frame-executive" -version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "38.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "aquamarine", "frame-support", @@ -2900,7 +2676,7 @@ dependencies = [ "sp-core", "sp-io", "sp-runtime", - "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-tracing", ] [[package]] @@ -2917,8 +2693,8 @@ dependencies = [ [[package]] name = "frame-metadata-hash-extension" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.6.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "array-bytes", "docify", @@ -2932,8 +2708,8 @@ dependencies = [ [[package]] name = "frame-support" -version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "38.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "aquamarine", "array-bytes", @@ -2956,7 +2732,7 @@ dependencies = [ "sp-arithmetic", "sp-core", "sp-crypto-hashing-proc-macro", - "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-debug-derive", "sp-genesis-builder", "sp-inherents", "sp-io", @@ -2964,8 +2740,8 @@ dependencies = [ "sp-runtime", "sp-staking", "sp-state-machine", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", - "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-std", + "sp-tracing", "sp-weights", "static_assertions", "tt-call", @@ -2973,21 +2749,21 @@ dependencies = [ [[package]] name = "frame-support-procedural" -version = "23.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "30.0.3" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "Inflector", "cfg-expr", "derive-syn-parse", "docify", "expander", - "frame-support-procedural-tools 10.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "frame-support-procedural-tools 13.0.0", "itertools 0.11.0", "macro_magic", "proc-macro-warning 1.0.2", "proc-macro2", "quote", - "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "syn 2.0.77", ] @@ -2997,7 +2773,7 @@ version = "10.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3363df38464c47a73eb521a4f648bfcc7537a82d70347ef8af3f73b6d019e910" dependencies = [ - "frame-support-procedural-tools-derive 11.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "frame-support-procedural-tools-derive 11.0.0", "proc-macro-crate 3.2.0", "proc-macro2", "quote", @@ -3006,10 +2782,10 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools" -version = "10.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "13.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-support-procedural-tools-derive 11.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "frame-support-procedural-tools-derive 12.0.0", "proc-macro-crate 3.2.0", "proc-macro2", "quote", @@ -3029,8 +2805,8 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools-derive" -version = "11.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "12.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "proc-macro2", "quote", @@ -3039,8 +2815,8 @@ dependencies = [ [[package]] name = "frame-system" -version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "38.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "cfg-if", "docify", @@ -3052,15 +2828,15 @@ dependencies = [ "sp-core", "sp-io", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-std", "sp-version", "sp-weights", ] [[package]] name = "frame-system-benchmarking" -version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "38.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "frame-benchmarking", "frame-support", @@ -3073,8 +2849,8 @@ dependencies = [ [[package]] name = "frame-system-rpc-runtime-api" -version = "26.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "34.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "docify", "parity-scale-codec", @@ -3083,8 +2859,8 @@ dependencies = [ [[package]] name = "frame-try-runtime" -version = "0.34.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.44.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "frame-support", "parity-scale-codec", @@ -5653,9 +5429,9 @@ dependencies = [ "sp-offchain", "sp-runtime", "sp-session", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", - "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", - "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-std", + "sp-storage", + "sp-tracing", "sp-transaction-pool", "sp-version", "substrate-wasm-builder", @@ -5977,8 +5753,8 @@ dependencies = [ "sp-core", "sp-io", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", - "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-std", + "sp-tracing", "sp-weights", "substrate-fixed", "subtensor-macros", @@ -5986,8 +5762,8 @@ dependencies = [ [[package]] name = "pallet-aura" -version = "27.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "37.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "frame-support", "frame-system", @@ -6002,8 +5778,8 @@ dependencies = [ [[package]] name = "pallet-authorship" -version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "38.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "frame-support", "frame-system", @@ -6015,8 +5791,8 @@ dependencies = [ [[package]] name = "pallet-balances" -version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "39.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "docify", "frame-benchmarking", @@ -6031,7 +5807,7 @@ dependencies = [ [[package]] name = "pallet-base-fee" version = "1.0.0" -source = "git+https://github.com/keithtensor/frontier?branch=upgrade-to-v1.16.0#f80f9e2bad338f3bf3854b256b3c4edea23e5968" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" dependencies = [ "fp-evm", "frame-support", @@ -6055,7 +5831,7 @@ dependencies = [ "sp-core", "sp-io", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-std", "subtensor-macros", ] @@ -6073,14 +5849,14 @@ dependencies = [ "sp-core", "sp-io", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-std", "subtensor-macros", ] [[package]] name = "pallet-dynamic-fee" version = "4.0.0-dev" -source = "git+https://github.com/keithtensor/frontier?branch=upgrade-to-v1.16.0#f80f9e2bad338f3bf3854b256b3c4edea23e5968" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" dependencies = [ "fp-dynamic-fee", "fp-evm", @@ -6095,7 +5871,7 @@ dependencies = [ [[package]] name = "pallet-ethereum" version = "4.0.0-dev" -source = "git+https://github.com/keithtensor/frontier?branch=upgrade-to-v1.16.0#f80f9e2bad338f3bf3854b256b3c4edea23e5968" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" dependencies = [ "ethereum", "ethereum-types", @@ -6117,7 +5893,7 @@ dependencies = [ [[package]] name = "pallet-evm" version = "6.0.0-dev" -source = "git+https://github.com/keithtensor/frontier?branch=upgrade-to-v1.16.0#f80f9e2bad338f3bf3854b256b3c4edea23e5968" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" dependencies = [ "environmental", "evm", @@ -6140,7 +5916,7 @@ dependencies = [ [[package]] name = "pallet-evm-chain-id" version = "1.0.0-dev" -source = "git+https://github.com/keithtensor/frontier?branch=upgrade-to-v1.16.0#f80f9e2bad338f3bf3854b256b3c4edea23e5968" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" dependencies = [ "frame-support", "frame-system", @@ -6151,7 +5927,7 @@ dependencies = [ [[package]] name = "pallet-evm-precompile-modexp" version = "2.0.0-dev" -source = "git+https://github.com/keithtensor/frontier?branch=upgrade-to-v1.16.0#f80f9e2bad338f3bf3854b256b3c4edea23e5968" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" dependencies = [ "fp-evm", "num", @@ -6160,7 +5936,7 @@ dependencies = [ [[package]] name = "pallet-evm-precompile-sha3fips" version = "2.0.0-dev" -source = "git+https://github.com/keithtensor/frontier?branch=upgrade-to-v1.16.0#f80f9e2bad338f3bf3854b256b3c4edea23e5968" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" dependencies = [ "fp-evm", "tiny-keccak", @@ -6169,7 +5945,7 @@ dependencies = [ [[package]] name = "pallet-evm-precompile-simple" version = "2.0.0-dev" -source = "git+https://github.com/keithtensor/frontier?branch=upgrade-to-v1.16.0#f80f9e2bad338f3bf3854b256b3c4edea23e5968" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" dependencies = [ "fp-evm", "ripemd", @@ -6178,8 +5954,8 @@ dependencies = [ [[package]] name = "pallet-grandpa" -version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "38.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "frame-benchmarking", "frame-support", @@ -6201,7 +5977,7 @@ dependencies = [ [[package]] name = "pallet-hotfix-sufficients" version = "1.0.0" -source = "git+https://github.com/keithtensor/frontier?branch=upgrade-to-v1.16.0#f80f9e2bad338f3bf3854b256b3c4edea23e5968" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" dependencies = [ "frame-benchmarking", "frame-support", @@ -6215,8 +5991,8 @@ dependencies = [ [[package]] name = "pallet-insecure-randomness-collective-flip" -version = "16.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "26.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "frame-support", "frame-system", @@ -6228,8 +6004,8 @@ dependencies = [ [[package]] name = "pallet-membership" -version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "38.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "frame-benchmarking", "frame-support", @@ -6244,8 +6020,8 @@ dependencies = [ [[package]] name = "pallet-multisig" -version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "38.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "frame-benchmarking", "frame-support", @@ -6259,8 +6035,8 @@ dependencies = [ [[package]] name = "pallet-preimage" -version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "38.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "frame-benchmarking", "frame-support", @@ -6275,8 +6051,8 @@ dependencies = [ [[package]] name = "pallet-proxy" -version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "38.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "frame-benchmarking", "frame-support", @@ -6300,14 +6076,14 @@ dependencies = [ "sp-core", "sp-io", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-std", "subtensor-macros", ] [[package]] name = "pallet-safe-mode" -version = "9.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "19.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "docify", "frame-benchmarking", @@ -6324,8 +6100,8 @@ dependencies = [ [[package]] name = "pallet-scheduler" -version = "29.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "39.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "docify", "frame-benchmarking", @@ -6341,8 +6117,8 @@ dependencies = [ [[package]] name = "pallet-session" -version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "38.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "frame-support", "frame-system", @@ -6391,8 +6167,8 @@ dependencies = [ "sp-core", "sp-io", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", - "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-std", + "sp-tracing", "sp-version", "substrate-fixed", "subtensor-macros", @@ -6400,8 +6176,8 @@ dependencies = [ [[package]] name = "pallet-sudo" -version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "38.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "docify", "frame-benchmarking", @@ -6415,8 +6191,8 @@ dependencies = [ [[package]] name = "pallet-timestamp" -version = "27.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "37.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "docify", "frame-benchmarking", @@ -6428,14 +6204,14 @@ dependencies = [ "sp-inherents", "sp-io", "sp-runtime", - "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-storage", "sp-timestamp", ] [[package]] name = "pallet-transaction-payment" -version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "38.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "frame-support", "frame-system", @@ -6449,8 +6225,8 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc" -version = "30.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "41.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "jsonrpsee", "pallet-transaction-payment-rpc-runtime-api", @@ -6465,8 +6241,8 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc-runtime-api" -version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "38.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "pallet-transaction-payment", "parity-scale-codec", @@ -6477,8 +6253,8 @@ dependencies = [ [[package]] name = "pallet-utility" -version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "38.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "frame-benchmarking", "frame-support", @@ -7095,7 +6871,7 @@ dependencies = [ "cfg-expr", "derive-syn-parse", "expander", - "frame-support-procedural-tools 10.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "frame-support-procedural-tools 10.0.0", "itertools 0.10.5", "macro_magic", "proc-macro-warning 1.0.2", @@ -7648,23 +7424,6 @@ dependencies = [ "subtle 2.6.1", ] -[[package]] -name = "ring" -version = "0.1.0" -source = "git+https://github.com/w3f/ring-proof?rev=665f5f5#665f5f51af5734c7b6d90b985dd6861d4c5b4752" -dependencies = [ - "ark-ec", - "ark-ff", - "ark-poly", - "ark-serialize", - "ark-std", - "arrayvec", - "blake2 0.10.6", - "common", - "fflonk", - "merlin", -] - [[package]] name = "ring" version = "0.16.20" @@ -7962,19 +7721,19 @@ dependencies = [ [[package]] name = "sc-allocator" -version = "23.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "29.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "log", "sp-core", - "sp-wasm-interface 20.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-wasm-interface", "thiserror", ] [[package]] name = "sc-basic-authorship" -version = "0.34.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.45.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "futures", "futures-timer", @@ -7995,8 +7754,8 @@ dependencies = [ [[package]] name = "sc-block-builder" -version = "0.33.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.42.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "parity-scale-codec", "sp-api", @@ -8010,8 +7769,8 @@ dependencies = [ [[package]] name = "sc-chain-spec" -version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "38.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "array-bytes", "docify", @@ -8027,18 +7786,18 @@ dependencies = [ "serde_json", "sp-blockchain", "sp-core", - "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "sp-genesis-builder", "sp-io", "sp-runtime", "sp-state-machine", - "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-tracing", ] [[package]] name = "sc-chain-spec-derive" -version = "11.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "12.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "proc-macro-crate 3.2.0", "proc-macro2", @@ -8048,8 +7807,8 @@ dependencies = [ [[package]] name = "sc-cli" -version = "0.36.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.47.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "array-bytes", "chrono", @@ -8089,8 +7848,8 @@ dependencies = [ [[package]] name = "sc-client-api" -version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "37.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "fnv", "futures", @@ -8105,19 +7864,19 @@ dependencies = [ "sp-consensus", "sp-core", "sp-database", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-externalities", "sp-runtime", "sp-state-machine", "sp-statement-store", - "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-storage", "sp-trie", "substrate-prometheus-endpoint", ] [[package]] name = "sc-client-db" -version = "0.35.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.44.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "hash-db", "kvdb", @@ -8142,8 +7901,8 @@ dependencies = [ [[package]] name = "sc-consensus" -version = "0.33.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.44.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "async-trait", "futures", @@ -8166,8 +7925,8 @@ dependencies = [ [[package]] name = "sc-consensus-aura" -version = "0.34.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.45.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "async-trait", "futures", @@ -8195,8 +7954,8 @@ dependencies = [ [[package]] name = "sc-consensus-babe" -version = "0.34.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.45.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "async-trait", "fork-tree", @@ -8221,7 +7980,7 @@ dependencies = [ "sp-consensus-babe", "sp-consensus-slots", "sp-core", - "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "sp-inherents", "sp-keystore", "sp-runtime", @@ -8231,8 +7990,8 @@ dependencies = [ [[package]] name = "sc-consensus-epochs" -version = "0.33.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.44.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "fork-tree", "parity-scale-codec", @@ -8244,8 +8003,8 @@ dependencies = [ [[package]] name = "sc-consensus-grandpa" -version = "0.19.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.30.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "ahash 0.8.11", "array-bytes", @@ -8279,7 +8038,7 @@ dependencies = [ "sp-consensus", "sp-consensus-grandpa", "sp-core", - "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "sp-keystore", "sp-runtime", "substrate-prometheus-endpoint", @@ -8288,8 +8047,8 @@ dependencies = [ [[package]] name = "sc-consensus-grandpa-rpc" -version = "0.19.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.30.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "finality-grandpa", "futures", @@ -8308,8 +8067,8 @@ dependencies = [ [[package]] name = "sc-consensus-manual-seal" -version = "0.35.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.46.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "assert_matches", "async-trait", @@ -8343,8 +8102,8 @@ dependencies = [ [[package]] name = "sc-consensus-slots" -version = "0.33.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.44.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "async-trait", "futures", @@ -8366,8 +8125,8 @@ dependencies = [ [[package]] name = "sc-executor" -version = "0.32.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.40.1" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "parity-scale-codec", "parking_lot 0.12.3", @@ -8377,44 +8136,44 @@ dependencies = [ "schnellru", "sp-api", "sp-core", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-externalities", "sp-io", "sp-panic-handler", - "sp-runtime-interface 24.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-runtime-interface", "sp-trie", "sp-version", - "sp-wasm-interface 20.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-wasm-interface", "tracing", ] [[package]] name = "sc-executor-common" -version = "0.29.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.35.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "polkavm", "sc-allocator", "sp-maybe-compressed-blob", - "sp-wasm-interface 20.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-wasm-interface", "thiserror", "wasm-instrument", ] [[package]] name = "sc-executor-polkavm" -version = "0.29.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.32.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "log", "polkavm", "sc-executor-common", - "sp-wasm-interface 20.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-wasm-interface", ] [[package]] name = "sc-executor-wasmtime" -version = "0.29.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.35.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "anyhow", "cfg-if", @@ -8424,15 +8183,15 @@ dependencies = [ "rustix 0.36.17", "sc-allocator", "sc-executor-common", - "sp-runtime-interface 24.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", - "sp-wasm-interface 20.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-runtime-interface", + "sp-wasm-interface", "wasmtime", ] [[package]] name = "sc-informant" -version = "0.33.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.44.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "console", "futures", @@ -8448,8 +8207,8 @@ dependencies = [ [[package]] name = "sc-keystore" -version = "25.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "33.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "array-bytes", "parking_lot 0.12.3", @@ -8462,8 +8221,8 @@ dependencies = [ [[package]] name = "sc-mixnet" -version = "0.4.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.15.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "array-bytes", "arrayvec", @@ -8491,8 +8250,8 @@ dependencies = [ [[package]] name = "sc-network" -version = "0.34.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.45.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "array-bytes", "async-channel", @@ -8542,8 +8301,8 @@ dependencies = [ [[package]] name = "sc-network-common" -version = "0.33.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.44.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "async-trait", "bitflags 1.3.2", @@ -8560,8 +8319,8 @@ dependencies = [ [[package]] name = "sc-network-gossip" -version = "0.34.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.45.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "ahash 0.8.11", "futures", @@ -8579,8 +8338,8 @@ dependencies = [ [[package]] name = "sc-network-light" -version = "0.33.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.44.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "array-bytes", "async-channel", @@ -8600,8 +8359,8 @@ dependencies = [ [[package]] name = "sc-network-sync" -version = "0.33.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.44.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "array-bytes", "async-channel", @@ -8637,8 +8396,8 @@ dependencies = [ [[package]] name = "sc-network-transactions" -version = "0.33.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.44.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "array-bytes", "futures", @@ -8656,8 +8415,8 @@ dependencies = [ [[package]] name = "sc-network-types" -version = "0.10.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.12.1" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "bs58 0.5.1", "ed25519-dalek", @@ -8673,8 +8432,8 @@ dependencies = [ [[package]] name = "sc-offchain" -version = "29.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "40.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "array-bytes", "bytes", @@ -8697,7 +8456,7 @@ dependencies = [ "sc-utils", "sp-api", "sp-core", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-externalities", "sp-keystore", "sp-offchain", "sp-runtime", @@ -8707,8 +8466,8 @@ dependencies = [ [[package]] name = "sc-proposer-metrics" -version = "0.17.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.18.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "log", "substrate-prometheus-endpoint", @@ -8716,8 +8475,8 @@ dependencies = [ [[package]] name = "sc-rpc" -version = "29.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "40.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "futures", "jsonrpsee", @@ -8748,8 +8507,8 @@ dependencies = [ [[package]] name = "sc-rpc-api" -version = "0.33.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.44.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "jsonrpsee", "parity-scale-codec", @@ -8768,8 +8527,8 @@ dependencies = [ [[package]] name = "sc-rpc-server" -version = "11.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "17.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "dyn-clone", "forwarded-header-value", @@ -8792,8 +8551,8 @@ dependencies = [ [[package]] name = "sc-rpc-spec-v2" -version = "0.34.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.45.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "array-bytes", "futures", @@ -8824,8 +8583,8 @@ dependencies = [ [[package]] name = "sc-service" -version = "0.35.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.46.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "async-trait", "directories", @@ -8867,12 +8626,12 @@ dependencies = [ "sp-blockchain", "sp-consensus", "sp-core", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-externalities", "sp-keystore", "sp-runtime", "sp-session", "sp-state-machine", - "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-storage", "sp-transaction-pool", "sp-transaction-storage-proof", "sp-trie", @@ -8888,8 +8647,8 @@ dependencies = [ [[package]] name = "sc-state-db" -version = "0.30.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.36.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "log", "parity-scale-codec", @@ -8899,8 +8658,8 @@ dependencies = [ [[package]] name = "sc-sysinfo" -version = "27.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "38.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "derive_more", "futures", @@ -8913,15 +8672,15 @@ dependencies = [ "serde", "serde_json", "sp-core", - "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "sp-io", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-std", ] [[package]] name = "sc-telemetry" -version = "15.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "25.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "chrono", "futures", @@ -8940,8 +8699,8 @@ dependencies = [ [[package]] name = "sc-tracing" -version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "37.0.1" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "chrono", "console", @@ -8960,7 +8719,7 @@ dependencies = [ "sp-core", "sp-rpc", "sp-runtime", - "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-tracing", "thiserror", "tracing", "tracing-log", @@ -8970,7 +8729,7 @@ dependencies = [ [[package]] name = "sc-tracing-proc-macro" version = "11.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "proc-macro-crate 3.2.0", "proc-macro2", @@ -8980,8 +8739,8 @@ dependencies = [ [[package]] name = "sc-transaction-pool" -version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "37.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "async-trait", "futures", @@ -8997,9 +8756,9 @@ dependencies = [ "sp-api", "sp-blockchain", "sp-core", - "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "sp-runtime", - "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-tracing", "sp-transaction-pool", "substrate-prometheus-endpoint", "thiserror", @@ -9007,8 +8766,8 @@ dependencies = [ [[package]] name = "sc-transaction-pool-api" -version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "37.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "async-trait", "futures", @@ -9023,8 +8782,8 @@ dependencies = [ [[package]] name = "sc-utils" -version = "14.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "17.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "async-channel", "futures", @@ -9584,8 +9343,8 @@ dependencies = [ [[package]] name = "sp-api" -version = "26.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "34.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "docify", "hash-db", @@ -9594,10 +9353,10 @@ dependencies = [ "scale-info", "sp-api-proc-macro", "sp-core", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-externalities", "sp-metadata-ir", "sp-runtime", - "sp-runtime-interface 24.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-runtime-interface", "sp-state-machine", "sp-trie", "sp-version", @@ -9606,8 +9365,8 @@ dependencies = [ [[package]] name = "sp-api-proc-macro" -version = "15.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "20.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "Inflector", "blake2 0.10.6", @@ -9620,8 +9379,8 @@ dependencies = [ [[package]] name = "sp-application-crypto" -version = "30.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "38.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "parity-scale-codec", "scale-info", @@ -9632,8 +9391,8 @@ dependencies = [ [[package]] name = "sp-arithmetic" -version = "23.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "26.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "docify", "integer-sqrt", @@ -9644,28 +9403,10 @@ dependencies = [ "static_assertions", ] -[[package]] -name = "sp-ark-bls12-381" -version = "0.4.2" -source = "git+https://github.com/paritytech/arkworks-substrate#caa2eed74beb885dd07c7db5f916f2281dad818f" -dependencies = [ - "ark-bls12-381-ext", - "sp-crypto-ec-utils", -] - -[[package]] -name = "sp-ark-ed-on-bls12-381-bandersnatch" -version = "0.4.2" -source = "git+https://github.com/paritytech/arkworks-substrate#caa2eed74beb885dd07c7db5f916f2281dad818f" -dependencies = [ - "ark-ed-on-bls12-381-bandersnatch-ext", - "sp-crypto-ec-utils", -] - [[package]] name = "sp-block-builder" -version = "26.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "34.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "sp-api", "sp-inherents", @@ -9674,8 +9415,8 @@ dependencies = [ [[package]] name = "sp-blockchain" -version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "37.0.1" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "futures", "parity-scale-codec", @@ -9693,8 +9434,8 @@ dependencies = [ [[package]] name = "sp-consensus" -version = "0.32.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.40.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "async-trait", "futures", @@ -9708,8 +9449,8 @@ dependencies = [ [[package]] name = "sp-consensus-aura" -version = "0.32.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.40.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "async-trait", "parity-scale-codec", @@ -9724,8 +9465,8 @@ dependencies = [ [[package]] name = "sp-consensus-babe" -version = "0.32.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.40.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "async-trait", "parity-scale-codec", @@ -9742,8 +9483,8 @@ dependencies = [ [[package]] name = "sp-consensus-grandpa" -version = "13.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "21.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "finality-grandpa", "log", @@ -9759,8 +9500,8 @@ dependencies = [ [[package]] name = "sp-consensus-slots" -version = "0.32.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.40.1" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "parity-scale-codec", "scale-info", @@ -9770,11 +9511,10 @@ dependencies = [ [[package]] name = "sp-core" -version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "34.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "array-bytes", - "bandersnatch_vrfs", "bitflags 1.3.2", "blake2 0.10.6", "bounded-collections", @@ -9801,12 +9541,12 @@ dependencies = [ "secp256k1", "secrecy", "serde", - "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", - "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", - "sp-runtime-interface 24.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", - "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-debug-derive", + "sp-externalities", + "sp-runtime-interface", + "sp-std", + "sp-storage", "ss58-registry", "substrate-bip39", "thiserror", @@ -9815,26 +9555,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "sp-crypto-ec-utils" -version = "0.10.0" -source = "git+https://github.com/paritytech/polkadot-sdk#9283dc1db4bbc199b0fe3fb7da81eee98013785e" -dependencies = [ - "ark-bls12-377", - "ark-bls12-377-ext", - "ark-bls12-381", - "ark-bls12-381-ext", - "ark-bw6-761", - "ark-bw6-761-ext", - "ark-ec", - "ark-ed-on-bls12-377", - "ark-ed-on-bls12-377-ext", - "ark-ed-on-bls12-381-bandersnatch", - "ark-ed-on-bls12-381-bandersnatch-ext", - "ark-scale", - "sp-runtime-interface 24.0.0 (git+https://github.com/paritytech/polkadot-sdk)", -] - [[package]] name = "sp-crypto-hashing" version = "0.1.0" @@ -9852,7 +9572,7 @@ dependencies = [ [[package]] name = "sp-crypto-hashing" version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "blake2b_simd", "byteorder", @@ -9865,17 +9585,17 @@ dependencies = [ [[package]] name = "sp-crypto-hashing-proc-macro" version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "quote", - "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "syn 2.0.77", ] [[package]] name = "sp-database" version = "10.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "kvdb", "parking_lot 0.12.3", @@ -9884,17 +9604,7 @@ dependencies = [ [[package]] name = "sp-debug-derive" version = "14.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "sp-debug-derive" -version = "14.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk#9283dc1db4bbc199b0fe3fb7da81eee98013785e" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "proc-macro2", "quote", @@ -9903,28 +9613,18 @@ dependencies = [ [[package]] name = "sp-externalities" -version = "0.25.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" -dependencies = [ - "environmental", - "parity-scale-codec", - "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", -] - -[[package]] -name = "sp-externalities" -version = "0.25.0" -source = "git+https://github.com/paritytech/polkadot-sdk#9283dc1db4bbc199b0fe3fb7da81eee98013785e" +version = "0.29.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "environmental", "parity-scale-codec", - "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk)", + "sp-storage", ] [[package]] name = "sp-genesis-builder" -version = "0.8.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.15.1" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "parity-scale-codec", "scale-info", @@ -9935,8 +9635,8 @@ dependencies = [ [[package]] name = "sp-inherents" -version = "26.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "34.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "async-trait", "impl-trait-for-tuples", @@ -9948,8 +9648,8 @@ dependencies = [ [[package]] name = "sp-io" -version = "30.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "38.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "bytes", "docify", @@ -9961,12 +9661,12 @@ dependencies = [ "rustversion", "secp256k1", "sp-core", - "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-externalities", "sp-keystore", - "sp-runtime-interface 24.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-runtime-interface", "sp-state-machine", - "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-tracing", "sp-trie", "tracing", "tracing-core", @@ -9974,8 +9674,8 @@ dependencies = [ [[package]] name = "sp-keyring" -version = "31.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "39.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "sp-core", "sp-runtime", @@ -9984,19 +9684,19 @@ dependencies = [ [[package]] name = "sp-keystore" -version = "0.34.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.40.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "parity-scale-codec", "parking_lot 0.12.3", "sp-core", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-externalities", ] [[package]] name = "sp-maybe-compressed-blob" version = "11.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "thiserror", "zstd 0.12.4", @@ -10004,8 +9704,8 @@ dependencies = [ [[package]] name = "sp-metadata-ir" -version = "0.6.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.7.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "frame-metadata", "parity-scale-codec", @@ -10014,8 +9714,8 @@ dependencies = [ [[package]] name = "sp-mixnet" -version = "0.4.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.12.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "parity-scale-codec", "scale-info", @@ -10025,8 +9725,8 @@ dependencies = [ [[package]] name = "sp-offchain" -version = "26.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "34.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "sp-api", "sp-core", @@ -10036,7 +9736,7 @@ dependencies = [ [[package]] name = "sp-panic-handler" version = "13.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "backtrace", "lazy_static", @@ -10045,8 +9745,8 @@ dependencies = [ [[package]] name = "sp-rpc" -version = "26.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "32.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "rustc-hash 1.1.0", "serde", @@ -10055,8 +9755,8 @@ dependencies = [ [[package]] name = "sp-runtime" -version = "31.0.1" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "39.0.1" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "docify", "either", @@ -10074,66 +9774,34 @@ dependencies = [ "sp-arithmetic", "sp-core", "sp-io", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-std", "sp-weights", "tracing", ] [[package]] name = "sp-runtime-interface" -version = "24.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" -dependencies = [ - "bytes", - "impl-trait-for-tuples", - "parity-scale-codec", - "polkavm-derive", - "primitive-types", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", - "sp-runtime-interface-proc-macro 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", - "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", - "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", - "sp-wasm-interface 20.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", - "static_assertions", -] - -[[package]] -name = "sp-runtime-interface" -version = "24.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk#9283dc1db4bbc199b0fe3fb7da81eee98013785e" +version = "28.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "bytes", "impl-trait-for-tuples", "parity-scale-codec", "polkavm-derive", "primitive-types", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk)", - "sp-runtime-interface-proc-macro 17.0.0 (git+https://github.com/paritytech/polkadot-sdk)", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk)", - "sp-storage 19.0.0 (git+https://github.com/paritytech/polkadot-sdk)", - "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk)", - "sp-wasm-interface 20.0.0 (git+https://github.com/paritytech/polkadot-sdk)", + "sp-externalities", + "sp-runtime-interface-proc-macro", + "sp-std", + "sp-storage", + "sp-tracing", + "sp-wasm-interface", "static_assertions", ] [[package]] name = "sp-runtime-interface-proc-macro" -version = "17.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" -dependencies = [ - "Inflector", - "expander", - "proc-macro-crate 3.2.0", - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "sp-runtime-interface-proc-macro" -version = "17.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk#9283dc1db4bbc199b0fe3fb7da81eee98013785e" +version = "18.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "Inflector", "expander", @@ -10145,8 +9813,8 @@ dependencies = [ [[package]] name = "sp-session" -version = "27.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "36.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "parity-scale-codec", "scale-info", @@ -10159,8 +9827,8 @@ dependencies = [ [[package]] name = "sp-staking" -version = "26.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "36.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "impl-trait-for-tuples", "parity-scale-codec", @@ -10172,8 +9840,8 @@ dependencies = [ [[package]] name = "sp-state-machine" -version = "0.35.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.43.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "hash-db", "log", @@ -10182,7 +9850,7 @@ dependencies = [ "rand", "smallvec", "sp-core", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-externalities", "sp-panic-handler", "sp-trie", "thiserror", @@ -10192,8 +9860,8 @@ dependencies = [ [[package]] name = "sp-statement-store" -version = "10.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "18.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "aes-gcm", "curve25519-dalek", @@ -10206,10 +9874,10 @@ dependencies = [ "sp-api", "sp-application-crypto", "sp-core", - "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-externalities", "sp-runtime", - "sp-runtime-interface 24.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-runtime-interface", "thiserror", "x25519-dalek", ] @@ -10217,41 +9885,24 @@ dependencies = [ [[package]] name = "sp-std" version = "14.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" - -[[package]] -name = "sp-std" -version = "14.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk#9283dc1db4bbc199b0fe3fb7da81eee98013785e" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" [[package]] name = "sp-storage" -version = "19.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "21.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "impl-serde", "parity-scale-codec", "ref-cast", "serde", - "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", -] - -[[package]] -name = "sp-storage" -version = "19.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk#9283dc1db4bbc199b0fe3fb7da81eee98013785e" -dependencies = [ - "impl-serde", - "parity-scale-codec", - "ref-cast", - "serde", - "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk)", + "sp-debug-derive", ] [[package]] name = "sp-timestamp" -version = "26.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "34.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "async-trait", "parity-scale-codec", @@ -10262,19 +9913,8 @@ dependencies = [ [[package]] name = "sp-tracing" -version = "16.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" -dependencies = [ - "parity-scale-codec", - "tracing", - "tracing-core", - "tracing-subscriber", -] - -[[package]] -name = "sp-tracing" -version = "16.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk#9283dc1db4bbc199b0fe3fb7da81eee98013785e" +version = "17.0.1" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "parity-scale-codec", "tracing", @@ -10284,8 +9924,8 @@ dependencies = [ [[package]] name = "sp-transaction-pool" -version = "26.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "34.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "sp-api", "sp-runtime", @@ -10293,8 +9933,8 @@ dependencies = [ [[package]] name = "sp-transaction-storage-proof" -version = "26.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "34.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "async-trait", "parity-scale-codec", @@ -10307,8 +9947,8 @@ dependencies = [ [[package]] name = "sp-trie" -version = "29.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "37.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "ahash 0.8.11", "hash-db", @@ -10321,7 +9961,7 @@ dependencies = [ "scale-info", "schnellru", "sp-core", - "sp-externalities 0.25.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-externalities", "thiserror", "tracing", "trie-db", @@ -10330,8 +9970,8 @@ dependencies = [ [[package]] name = "sp-version" -version = "29.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "37.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "impl-serde", "parity-scale-codec", @@ -10340,15 +9980,15 @@ dependencies = [ "serde", "sp-crypto-hashing-proc-macro", "sp-runtime", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-std", "sp-version-proc-macro", "thiserror", ] [[package]] name = "sp-version-proc-macro" -version = "13.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "14.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "parity-scale-codec", "proc-macro2", @@ -10358,8 +9998,8 @@ dependencies = [ [[package]] name = "sp-wasm-interface" -version = "20.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "21.0.1" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "anyhow", "impl-trait-for-tuples", @@ -10368,21 +10008,10 @@ dependencies = [ "wasmtime", ] -[[package]] -name = "sp-wasm-interface" -version = "20.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk#9283dc1db4bbc199b0fe3fb7da81eee98013785e" -dependencies = [ - "anyhow", - "impl-trait-for-tuples", - "log", - "parity-scale-codec", -] - [[package]] name = "sp-weights" -version = "27.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "31.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "bounded-collections", "parity-scale-codec", @@ -10390,7 +10019,7 @@ dependencies = [ "serde", "smallvec", "sp-arithmetic", - "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-debug-derive", ] [[package]] @@ -10570,8 +10199,8 @@ checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" [[package]] name = "staging-xcm" -version = "7.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "14.2.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "array-bytes", "bounded-collections", @@ -10690,8 +10319,8 @@ dependencies = [ [[package]] name = "substrate-bip39" -version = "0.4.7" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "0.6.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "hmac 0.12.1", "pbkdf2", @@ -10703,7 +10332,7 @@ dependencies = [ [[package]] name = "substrate-build-script-utils" version = "11.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" [[package]] name = "substrate-fixed" @@ -10718,8 +10347,8 @@ dependencies = [ [[package]] name = "substrate-frame-rpc-system" -version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "39.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "docify", "frame-system-rpc-runtime-api", @@ -10739,7 +10368,7 @@ dependencies = [ [[package]] name = "substrate-prometheus-endpoint" version = "0.17.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "http-body-util", "hyper 1.4.1", @@ -10752,8 +10381,8 @@ dependencies = [ [[package]] name = "substrate-wasm-builder" -version = "17.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "24.0.1" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "array-bytes", "build-helper", @@ -10770,7 +10399,7 @@ dependencies = [ "sp-core", "sp-io", "sp-maybe-compressed-blob", - "sp-tracing 16.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1)", + "sp-tracing", "sp-version", "strum 0.26.3", "tempfile", @@ -12441,8 +12070,8 @@ dependencies = [ [[package]] name = "xcm-procedural" -version = "7.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=v1.16.0-rc1#a427d8fb677b62635dfb78a6e530facdd2c362ec" +version = "10.1.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "Inflector", "proc-macro2", diff --git a/Cargo.toml b/Cargo.toml index 13fef82bd..092e2bc69 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -83,112 +83,112 @@ walkdir = "2" subtensor-macros = { path = "support/macros" } -frame-benchmarking = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -frame-benchmarking-cli = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } -frame-executive = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -frame-metadata-hash-extension = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -frame-support = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -frame-system = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -frame-system-benchmarking = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -frame-system-rpc-runtime-api = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -frame-try-runtime = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } - -pallet-aura = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -pallet-balances = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -pallet-grandpa = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -pallet-insecure-randomness-collective-flip = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -pallet-membership = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -pallet-multisig = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -pallet-preimage = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -pallet-proxy = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -pallet-safe-mode = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -pallet-scheduler = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -pallet-sudo = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -pallet-timestamp = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -pallet-transaction-payment = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -pallet-transaction-payment-rpc = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } -pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -pallet-utility = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } - -sc-basic-authorship = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } -sc-cli = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } -sc-client-api = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } -sc-consensus = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } -sc-consensus-aura = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } -sc-consensus-grandpa = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } -sc-consensus-grandpa-rpc = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } -sc-chain-spec-derive = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } -sc-chain-spec = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } -sc-consensus-slots = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } -sc-executor = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } -sc-keystore = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } -sc-network = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } -sc-offchain = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } -sc-rpc = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } -sc-rpc-api = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } -sc-service = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } -sc-telemetry = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } -sc-transaction-pool = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } -sc-transaction-pool-api = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } - -sp-api = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -sp-block-builder = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -sp-blockchain = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -sp-consensus = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } -sp-consensus-aura = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -sp-consensus-grandpa = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } -sp-genesis-builder = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -sp-core = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -sp-inherents = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -sp-io = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -sp-keyring = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } -sp-offchain = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -sp-rpc = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -sp-runtime = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -sp-session = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -sp-std = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -sp-storage = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -sp-timestamp = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } -sp-tracing = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -sp-transaction-pool = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -sp-version = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -sp-weights = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } - -substrate-build-script-utils = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } +frame-benchmarking = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +frame-benchmarking-cli = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } +frame-executive = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +frame-metadata-hash-extension = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +frame-support = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +frame-system = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +frame-system-benchmarking = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +frame-system-rpc-runtime-api = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +frame-try-runtime = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } + +pallet-aura = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +pallet-balances = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +pallet-grandpa = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +pallet-insecure-randomness-collective-flip = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +pallet-membership = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +pallet-multisig = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +pallet-preimage = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +pallet-proxy = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +pallet-safe-mode = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +pallet-scheduler = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +pallet-sudo = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +pallet-timestamp = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +pallet-transaction-payment = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +pallet-transaction-payment-rpc = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } +pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +pallet-utility = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } + +sc-basic-authorship = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } +sc-cli = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } +sc-client-api = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } +sc-consensus = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } +sc-consensus-aura = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } +sc-consensus-grandpa = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } +sc-consensus-grandpa-rpc = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } +sc-chain-spec-derive = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } +sc-chain-spec = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } +sc-consensus-slots = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } +sc-executor = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } +sc-keystore = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } +sc-network = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } +sc-offchain = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } +sc-rpc = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } +sc-rpc-api = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } +sc-service = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } +sc-telemetry = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } +sc-transaction-pool = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } +sc-transaction-pool-api = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } + +sp-api = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +sp-block-builder = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +sp-blockchain = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +sp-consensus = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } +sp-consensus-aura = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +sp-consensus-grandpa = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } +sp-genesis-builder = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +sp-core = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +sp-inherents = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +sp-io = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +sp-keyring = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } +sp-offchain = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +sp-rpc = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +sp-runtime = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +sp-session = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +sp-std = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +sp-storage = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +sp-timestamp = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } +sp-tracing = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +sp-transaction-pool = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +sp-version = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +sp-weights = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } + +substrate-build-script-utils = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } substrate-fixed = { git = "https://github.com/opentensor/substrate-fixed.git", tag = "v0.5.9" } -substrate-frame-rpc-system = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } -substrate-wasm-builder = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1" } +substrate-frame-rpc-system = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } +substrate-wasm-builder = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409" } -sc-consensus-manual-seal = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -sc-network-sync = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } -substrate-prometheus-endpoint = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "v1.16.0-rc1", default-features = false } +sc-consensus-manual-seal = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +sc-network-sync = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } +substrate-prometheus-endpoint = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } # Frontier -fp-evm = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } -fp-rpc = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } -fp-self-contained = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false, features = [ +fp-evm = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } +fp-rpc = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } +fp-self-contained = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false, features = [ "serde", ] } -fp-account = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } -fc-storage = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } -fc-db = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } -fc-consensus = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } -fp-dynamic-fee = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } -fc-api = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } -fc-rpc = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } -fc-rpc-core = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } -fc-mapping-sync = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } +fp-account = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } +fc-storage = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } +fc-db = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } +fc-consensus = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } +fp-dynamic-fee = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } +fc-api = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } +fc-rpc = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } +fc-rpc-core = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } +fc-mapping-sync = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } # Frontier FRAME -pallet-base-fee = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } -pallet-dynamic-fee = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } -pallet-ethereum = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } -pallet-evm = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } -pallet-evm-chain-id = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } -pallet-evm-precompile-modexp = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } -pallet-evm-precompile-sha3fips = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } -pallet-evm-precompile-simple = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } -pallet-hotfix-sufficients = { git = "https://github.com/keithtensor/frontier", branch = "upgrade-to-v1.16.0", default-features = false } +pallet-base-fee = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } +pallet-dynamic-fee = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } +pallet-ethereum = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } +pallet-evm = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } +pallet-evm-chain-id = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } +pallet-evm-precompile-modexp = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } +pallet-evm-precompile-sha3fips = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } +pallet-evm-precompile-simple = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } +pallet-hotfix-sufficients = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } frame-metadata = "16" diff --git a/runtime/src/lib.rs b/runtime/src/lib.rs index 938e95f6e..37a5e966c 100644 --- a/runtime/src/lib.rs +++ b/runtime/src/lib.rs @@ -85,7 +85,7 @@ use precompiles::FrontierPrecompiles; // Frontier use fp_rpc::TransactionStatus; use pallet_ethereum::{Call::transact, PostLogContent, Transaction as EthereumTransaction}; -use pallet_evm::{Account as EVMAccount, FeeCalculator, Runner}; +use pallet_evm::{Account as EVMAccount, BalanceConverter, FeeCalculator, Runner}; // Subtensor module pub use pallet_scheduler; @@ -1088,6 +1088,30 @@ parameter_types! { pub SuicideQuickClearLimit: u32 = 0; } +const EVM_DECIMALS_FACTOR: u64 = 1_000_000_000_u64; + +pub struct SubtensorEvmBalanceConverter(PhantomData); +impl BalanceConverter for SubtensorEvmBalanceConverter +where + pallet_evm::BalanceOf: TryFrom + Into, +{ + fn into_evm_balance( + value: < + ::Currency as frame_support::traits::tokens::fungible::Inspect<::AccountId> + >::Balance, + ) -> Option { + U256::from(UniqueSaturatedInto::::unique_saturated_into(value)) + .checked_mul(U256::from(EVM_DECIMALS_FACTOR)) + } + + fn into_substrate_balance(value: U256) -> Option> { + value + .checked_div(U256::from(EVM_DECIMALS_FACTOR)) + .map(|result| result.try_into().ok()) + .flatten() + } +} + impl pallet_evm::Config for Runtime { type FeeCalculator = BaseFee; type GasWeightMapping = pallet_evm::FixedGasWeightMapping; @@ -1110,6 +1134,7 @@ impl pallet_evm::Config for Runtime { type SuicideQuickClearLimit = SuicideQuickClearLimit; type Timestamp = Timestamp; type WeightInfo = pallet_evm::weights::SubstrateWeight; + type BalanceConverter = SubtensorEvmBalanceConverter; } parameter_types! { diff --git a/runtime/src/precompiles/balance_transfer.rs b/runtime/src/precompiles/balance_transfer.rs index 514c73dda..09864b793 100644 --- a/runtime/src/precompiles/balance_transfer.rs +++ b/runtime/src/precompiles/balance_transfer.rs @@ -1,6 +1,7 @@ use frame_system::RawOrigin; use pallet_evm::{ - ExitError, ExitSucceed, PrecompileFailure, PrecompileHandle, PrecompileOutput, PrecompileResult, + BalanceConverter, ExitError, ExitSucceed, PrecompileFailure, PrecompileHandle, + PrecompileOutput, PrecompileResult, }; use sp_core::U256; use sp_runtime::traits::Dispatchable; @@ -36,11 +37,14 @@ impl BalanceTransferPrecompile { let address_bytes_dst: &[u8] = get_slice(txdata, 4, 36)?; let account_id_src = bytes_to_account_id(&address_bytes_src)?; let account_id_dst = bytes_to_account_id(address_bytes_dst)?; + let amount_sub = + ::BalanceConverter::into_substrate_balance(amount) + .ok_or(ExitError::OutOfFund)?; let call = RuntimeCall::Balances(pallet_balances::Call::::transfer_allow_death { dest: account_id_dst.into(), - value: amount.as_u64(), + value: amount_sub, }); let result = call.dispatch(RawOrigin::Signed(account_id_src).into()); From bdd85cd0d72f9aebf1fbc047f1e9f44fae391567 Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Thu, 3 Oct 2024 23:08:13 -0400 Subject: [PATCH 45/60] Use evm balance converter in staking precompile --- runtime/src/lib.rs | 3 +-- runtime/src/precompiles/staking.rs | 21 ++++++++++++++++----- 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/runtime/src/lib.rs b/runtime/src/lib.rs index 37a5e966c..d57773a34 100644 --- a/runtime/src/lib.rs +++ b/runtime/src/lib.rs @@ -1107,8 +1107,7 @@ where fn into_substrate_balance(value: U256) -> Option> { value .checked_div(U256::from(EVM_DECIMALS_FACTOR)) - .map(|result| result.try_into().ok()) - .flatten() + .and_then(|result| result.try_into().ok()) } } diff --git a/runtime/src/precompiles/staking.rs b/runtime/src/precompiles/staking.rs index 45d4ddbbc..3db96373e 100644 --- a/runtime/src/precompiles/staking.rs +++ b/runtime/src/precompiles/staking.rs @@ -26,7 +26,7 @@ // use frame_system::RawOrigin; -use pallet_evm::{AddressMapping, HashedAddressMapping}; +use pallet_evm::{AddressMapping, BalanceConverter, HashedAddressMapping}; use pallet_evm::{ ExitError, ExitSucceed, PrecompileFailure, PrecompileHandle, PrecompileOutput, PrecompileResult, }; @@ -68,10 +68,14 @@ impl StakingPrecompile { fn add_stake(handle: &mut impl PrecompileHandle, data: &[u8]) -> PrecompileResult { let hotkey = Self::parse_hotkey(data)?.into(); let amount: U256 = handle.context().apparent_value; + let amount_sub = + ::BalanceConverter::into_substrate_balance(amount) + .ok_or(ExitError::OutOfFund)?; + // Create the add_stake call let call = RuntimeCall::SubtensorModule(pallet_subtensor::Call::::add_stake { hotkey, - amount_staked: amount.as_u64(), + amount_staked: amount_sub, }); // Dispatch the add_stake call Self::dispatch(handle, call) @@ -85,10 +89,14 @@ impl StakingPrecompile { let amount = data .get(56..64) .map(U256::from_big_endian) - .map_or(0, |v| v.as_u64()); + .ok_or(ExitError::OutOfFund)?; + let amount_sub = + ::BalanceConverter::into_substrate_balance(amount) + .ok_or(ExitError::OutOfFund)?; + let call = RuntimeCall::SubtensorModule(pallet_subtensor::Call::::remove_stake { hotkey, - amount_unstaked: amount, + amount_unstaked: amount_sub, }); Self::dispatch(handle, call) } @@ -148,12 +156,15 @@ impl StakingPrecompile { }); } }; + let amount_sub = + ::BalanceConverter::into_substrate_balance(amount) + .ok_or(ExitError::OutOfFund)?; // Create a transfer call from the smart contract to the caller let transfer_call = RuntimeCall::Balances(pallet_balances::Call::::transfer_allow_death { dest: account_id.clone().into(), - value: amount.as_u64(), + value: amount_sub, }); // Execute the transfer From 40fff232b76c1975ed83abedf6ae0b9741c86149 Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Fri, 4 Oct 2024 17:37:57 -0400 Subject: [PATCH 46/60] Recalculate decimals for gas price --- runtime/src/lib.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/runtime/src/lib.rs b/runtime/src/lib.rs index d57773a34..504df5b5d 100644 --- a/runtime/src/lib.rs +++ b/runtime/src/lib.rs @@ -1088,6 +1088,9 @@ parameter_types! { pub SuicideQuickClearLimit: u32 = 0; } +/// The difference between EVM decimals and Substrate decimals. +/// Substrate balances has 9 decimals, while EVM has 18, so the +/// difference factor is 9 decimals, or 10^9 const EVM_DECIMALS_FACTOR: u64 = 1_000_000_000_u64; pub struct SubtensorEvmBalanceConverter(PhantomData); @@ -1556,7 +1559,9 @@ impl_runtime_apis! { fn gas_price() -> U256 { let (gas_price, _) = ::FeeCalculator::min_gas_price(); - gas_price + + // Recalculate decimals + gas_price * U256::from(EVM_DECIMALS_FACTOR) } fn account_code_at(address: H160) -> Vec { From 4ea966353bd483ec10ee4cbe55173ede02fee71d Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Tue, 15 Oct 2024 13:30:21 -0400 Subject: [PATCH 47/60] Fix decimals in gas fees (max_fee_per_gas and max_priority_fee_per_gas) --- Cargo.lock | 48 ++++++++++----------- runtime/src/lib.rs | 26 +++++------ runtime/src/precompiles/balance_transfer.rs | 4 +- runtime/src/precompiles/ed25519.rs | 2 - runtime/src/precompiles/staking.rs | 8 ++-- 5 files changed, 41 insertions(+), 47 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 287b25b5c..9926331f4 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2153,7 +2153,7 @@ checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6" [[package]] name = "fc-api" version = "1.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" dependencies = [ "async-trait", "fp-storage", @@ -2165,7 +2165,7 @@ dependencies = [ [[package]] name = "fc-consensus" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" dependencies = [ "async-trait", "fp-consensus", @@ -2181,7 +2181,7 @@ dependencies = [ [[package]] name = "fc-db" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" dependencies = [ "async-trait", "ethereum", @@ -2211,7 +2211,7 @@ dependencies = [ [[package]] name = "fc-mapping-sync" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" dependencies = [ "fc-db", "fc-storage", @@ -2234,7 +2234,7 @@ dependencies = [ [[package]] name = "fc-rpc" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" dependencies = [ "ethereum", "ethereum-types", @@ -2288,7 +2288,7 @@ dependencies = [ [[package]] name = "fc-rpc-core" version = "1.1.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" dependencies = [ "ethereum", "ethereum-types", @@ -2303,7 +2303,7 @@ dependencies = [ [[package]] name = "fc-storage" version = "1.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" dependencies = [ "ethereum", "ethereum-types", @@ -2480,7 +2480,7 @@ dependencies = [ [[package]] name = "fp-account" version = "1.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" dependencies = [ "hex", "impl-serde", @@ -2499,7 +2499,7 @@ dependencies = [ [[package]] name = "fp-consensus" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" dependencies = [ "ethereum", "parity-scale-codec", @@ -2510,7 +2510,7 @@ dependencies = [ [[package]] name = "fp-dynamic-fee" version = "1.0.0" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" dependencies = [ "async-trait", "sp-core", @@ -2520,7 +2520,7 @@ dependencies = [ [[package]] name = "fp-ethereum" version = "1.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" dependencies = [ "ethereum", "ethereum-types", @@ -2532,7 +2532,7 @@ dependencies = [ [[package]] name = "fp-evm" version = "3.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" dependencies = [ "evm", "frame-support", @@ -2547,7 +2547,7 @@ dependencies = [ [[package]] name = "fp-rpc" version = "3.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" dependencies = [ "ethereum", "ethereum-types", @@ -2563,7 +2563,7 @@ dependencies = [ [[package]] name = "fp-self-contained" version = "1.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" dependencies = [ "frame-support", "parity-scale-codec", @@ -2575,7 +2575,7 @@ dependencies = [ [[package]] name = "fp-storage" version = "2.0.0" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" dependencies = [ "parity-scale-codec", "serde", @@ -5816,7 +5816,7 @@ dependencies = [ [[package]] name = "pallet-base-fee" version = "1.0.0" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" dependencies = [ "fp-evm", "frame-support", @@ -5865,7 +5865,7 @@ dependencies = [ [[package]] name = "pallet-dynamic-fee" version = "4.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" dependencies = [ "fp-dynamic-fee", "fp-evm", @@ -5880,7 +5880,7 @@ dependencies = [ [[package]] name = "pallet-ethereum" version = "4.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" dependencies = [ "ethereum", "ethereum-types", @@ -5902,7 +5902,7 @@ dependencies = [ [[package]] name = "pallet-evm" version = "6.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" dependencies = [ "environmental", "evm", @@ -5925,7 +5925,7 @@ dependencies = [ [[package]] name = "pallet-evm-chain-id" version = "1.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" dependencies = [ "frame-support", "frame-system", @@ -5936,7 +5936,7 @@ dependencies = [ [[package]] name = "pallet-evm-precompile-modexp" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" dependencies = [ "fp-evm", "num", @@ -5945,7 +5945,7 @@ dependencies = [ [[package]] name = "pallet-evm-precompile-sha3fips" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" dependencies = [ "fp-evm", "tiny-keccak", @@ -5954,7 +5954,7 @@ dependencies = [ [[package]] name = "pallet-evm-precompile-simple" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" dependencies = [ "fp-evm", "ripemd", @@ -5986,7 +5986,7 @@ dependencies = [ [[package]] name = "pallet-hotfix-sufficients" version = "1.0.0" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#87ab182dd3376ff55db90ea8c323c3ddbe02887a" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" dependencies = [ "frame-benchmarking", "frame-support", diff --git a/runtime/src/lib.rs b/runtime/src/lib.rs index 504df5b5d..02f3202e9 100644 --- a/runtime/src/lib.rs +++ b/runtime/src/lib.rs @@ -1093,24 +1093,20 @@ parameter_types! { /// difference factor is 9 decimals, or 10^9 const EVM_DECIMALS_FACTOR: u64 = 1_000_000_000_u64; -pub struct SubtensorEvmBalanceConverter(PhantomData); -impl BalanceConverter for SubtensorEvmBalanceConverter -where - pallet_evm::BalanceOf: TryFrom + Into, +pub struct SubtensorEvmBalanceConverter; +impl BalanceConverter for SubtensorEvmBalanceConverter { - fn into_evm_balance( - value: < - ::Currency as frame_support::traits::tokens::fungible::Inspect<::AccountId> - >::Balance, - ) -> Option { + fn into_evm_balance(value: U256) -> Option { U256::from(UniqueSaturatedInto::::unique_saturated_into(value)) .checked_mul(U256::from(EVM_DECIMALS_FACTOR)) } - fn into_substrate_balance(value: U256) -> Option> { - value - .checked_div(U256::from(EVM_DECIMALS_FACTOR)) - .and_then(|result| result.try_into().ok()) + fn into_substrate_balance(value: U256) -> Option { + if value <= U256::from(u64::MAX) { + value.checked_div(U256::from(EVM_DECIMALS_FACTOR)) + } else { + None + } } } @@ -1136,7 +1132,7 @@ impl pallet_evm::Config for Runtime { type SuicideQuickClearLimit = SuicideQuickClearLimit; type Timestamp = Timestamp; type WeightInfo = pallet_evm::weights::SubstrateWeight; - type BalanceConverter = SubtensorEvmBalanceConverter; + type BalanceConverter = SubtensorEvmBalanceConverter; } parameter_types! { @@ -1159,7 +1155,7 @@ impl pallet_dynamic_fee::Config for Runtime { } parameter_types! { - pub DefaultBaseFeePerGas: U256 = U256::from(20); + pub DefaultBaseFeePerGas: U256 = U256::from(20_000_000_000_u128); pub DefaultElasticity: Permill = Permill::from_parts(125_000); } pub struct BaseFeeThreshold; diff --git a/runtime/src/precompiles/balance_transfer.rs b/runtime/src/precompiles/balance_transfer.rs index 09864b793..6ae554fa4 100644 --- a/runtime/src/precompiles/balance_transfer.rs +++ b/runtime/src/precompiles/balance_transfer.rs @@ -4,7 +4,7 @@ use pallet_evm::{ PrecompileOutput, PrecompileResult, }; use sp_core::U256; -use sp_runtime::traits::Dispatchable; +use sp_runtime::traits::{Dispatchable, UniqueSaturatedInto}; use sp_std::vec; use crate::{Runtime, RuntimeCall}; @@ -44,7 +44,7 @@ impl BalanceTransferPrecompile { let call = RuntimeCall::Balances(pallet_balances::Call::::transfer_allow_death { dest: account_id_dst.into(), - value: amount_sub, + value: amount_sub.unique_saturated_into(), }); let result = call.dispatch(RawOrigin::Signed(account_id_src).into()); diff --git a/runtime/src/precompiles/ed25519.rs b/runtime/src/precompiles/ed25519.rs index 5357d46b3..83be4ca77 100644 --- a/runtime/src/precompiles/ed25519.rs +++ b/runtime/src/precompiles/ed25519.rs @@ -1,5 +1,3 @@ -#![cfg_attr(not(feature = "std"), no_std)] - extern crate alloc; use alloc::vec::Vec; diff --git a/runtime/src/precompiles/staking.rs b/runtime/src/precompiles/staking.rs index 3db96373e..993f42bab 100644 --- a/runtime/src/precompiles/staking.rs +++ b/runtime/src/precompiles/staking.rs @@ -32,7 +32,7 @@ use pallet_evm::{ }; use sp_core::crypto::Ss58Codec; use sp_core::U256; -use sp_runtime::traits::BlakeTwo256; +use sp_runtime::traits::{BlakeTwo256, UniqueSaturatedInto}; use sp_runtime::traits::Dispatchable; use sp_runtime::AccountId32; @@ -75,7 +75,7 @@ impl StakingPrecompile { // Create the add_stake call let call = RuntimeCall::SubtensorModule(pallet_subtensor::Call::::add_stake { hotkey, - amount_staked: amount_sub, + amount_staked: amount_sub.unique_saturated_into(), }); // Dispatch the add_stake call Self::dispatch(handle, call) @@ -96,7 +96,7 @@ impl StakingPrecompile { let call = RuntimeCall::SubtensorModule(pallet_subtensor::Call::::remove_stake { hotkey, - amount_unstaked: amount_sub, + amount_unstaked: amount_sub.unique_saturated_into(), }); Self::dispatch(handle, call) } @@ -164,7 +164,7 @@ impl StakingPrecompile { let transfer_call = RuntimeCall::Balances(pallet_balances::Call::::transfer_allow_death { dest: account_id.clone().into(), - value: amount_sub, + value: amount_sub.unique_saturated_into(), }); // Execute the transfer From f39520ccfaf2296864463314cd8bc50d48021269 Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Tue, 15 Oct 2024 13:30:40 -0400 Subject: [PATCH 48/60] Format --- runtime/src/lib.rs | 3 +-- runtime/src/precompiles/staking.rs | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/runtime/src/lib.rs b/runtime/src/lib.rs index 02f3202e9..ffc45233a 100644 --- a/runtime/src/lib.rs +++ b/runtime/src/lib.rs @@ -1094,8 +1094,7 @@ parameter_types! { const EVM_DECIMALS_FACTOR: u64 = 1_000_000_000_u64; pub struct SubtensorEvmBalanceConverter; -impl BalanceConverter for SubtensorEvmBalanceConverter -{ +impl BalanceConverter for SubtensorEvmBalanceConverter { fn into_evm_balance(value: U256) -> Option { U256::from(UniqueSaturatedInto::::unique_saturated_into(value)) .checked_mul(U256::from(EVM_DECIMALS_FACTOR)) diff --git a/runtime/src/precompiles/staking.rs b/runtime/src/precompiles/staking.rs index 993f42bab..bc5d91660 100644 --- a/runtime/src/precompiles/staking.rs +++ b/runtime/src/precompiles/staking.rs @@ -32,8 +32,8 @@ use pallet_evm::{ }; use sp_core::crypto::Ss58Codec; use sp_core::U256; -use sp_runtime::traits::{BlakeTwo256, UniqueSaturatedInto}; use sp_runtime::traits::Dispatchable; +use sp_runtime::traits::{BlakeTwo256, UniqueSaturatedInto}; use sp_runtime::AccountId32; use crate::precompiles::{get_method_id, get_slice}; From 66229057786ad4a975b24e372ef4431f2b68f0eb Mon Sep 17 00:00:00 2001 From: Sam Johnson Date: Wed, 16 Oct 2024 15:46:03 -0400 Subject: [PATCH 49/60] add ability to skip cargo audit --- .github/workflows/check-rust.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check-rust.yml b/.github/workflows/check-rust.yml index e42e369cf..56a68d29a 100644 --- a/.github/workflows/check-rust.yml +++ b/.github/workflows/check-rust.yml @@ -208,10 +208,10 @@ jobs: - name: cargo clippy --workspace --all-targets --all-features -- -D warnings run: cargo clippy --workspace --all-targets --all-features -- -D warnings - # runs cargo audit cargo-audit: name: cargo audit runs-on: SubtensorCI + if: ${{ !contains(github.event.pull_request.labels.*.name, 'skip-cargo-audit') }} strategy: matrix: rust-branch: From 70e86e2a7779170d45dcc01a2710dc562ce6e83e Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Wed, 16 Oct 2024 15:46:23 -0400 Subject: [PATCH 50/60] Cargo update after updating frontier version of sqlx --- Cargo.lock | 407 ++++++++++++++++++++++++++--------------------------- Cargo.toml | 2 +- 2 files changed, 201 insertions(+), 208 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 9926331f4..4bbe1207e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -23,11 +23,11 @@ dependencies = [ [[package]] name = "addr2line" -version = "0.24.1" +version = "0.24.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5fb1d8e4442bd405fdfd1dacb42792696b0cf9cb15882e5d097b742a676d375" +checksum = "dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1" dependencies = [ - "gimli 0.31.0", + "gimli 0.31.1", ] [[package]] @@ -548,11 +548,11 @@ version = "0.3.74" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8d82cb332cdfaed17ae235a638438ac4d4839913cc2af585c3c6746e8f8bee1a" dependencies = [ - "addr2line 0.24.1", + "addr2line 0.24.2", "cfg-if", "libc", "miniz_oxide", - "object 0.36.4", + "object 0.36.5", "rustc-demangle", "windows-targets 0.52.6", ] @@ -739,9 +739,9 @@ dependencies = [ [[package]] name = "bounded-collections" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d32385ecb91a31bddaf908e8dcf4a15aef1bcd3913cc03ebfad02ff6d568abc1" +checksum = "db436177db0d505b1507f03aca56a41442ae6efdf8b6eaa855d73e52c5b078dc" dependencies = [ "log", "parity-scale-codec", @@ -793,9 +793,9 @@ checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" [[package]] name = "bytemuck" -version = "1.18.0" +version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94bbb0ad554ad961ddc5da507a12a29b14e4ae5bda06b19f575a3e6079d2e2ae" +checksum = "8334215b81e418a0a7bdb8ef0849474f40bb10c8b71f1c4ed315cff49f32494d" [[package]] name = "byteorder" @@ -864,9 +864,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.1.24" +version = "1.1.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "812acba72f0a070b003d3697490d2b55b837230ae7c6c6497f05cc2ddbb8d938" +checksum = "b16803a61b81d9eabb7eae2588776c4c1e584b738ede45fdbb4c972cec1e9945" dependencies = [ "jobserver", "libc", @@ -1011,9 +1011,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.19" +version = "4.5.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7be5744db7978a28d9df86a214130d106a89ce49644cbc4e3f0c22c3fba30615" +checksum = "b97f376d85a664d5837dbae44bf546e6477a679ff6610010f17276f686d867e8" dependencies = [ "clap_builder", "clap_derive", @@ -1021,9 +1021,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.19" +version = "4.5.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5fbc17d3ef8278f55b282b2a2e75ae6f6c7d4bb70ed3d0382375104bfafdb4b" +checksum = "19bc80abd44e4bed93ca373a0704ccbd1b710dc5749406201bb018272808dc54" dependencies = [ "anstream", "anstyle", @@ -1445,9 +1445,9 @@ dependencies = [ [[package]] name = "cxx" -version = "1.0.128" +version = "1.0.129" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54ccead7d199d584d139148b04b4a368d1ec7556a1d9ea2548febb1b9d49f9a4" +checksum = "cbdc8cca144dce1c4981b5c9ab748761619979e515c3d53b5df385c677d1d007" dependencies = [ "cc", "cxxbridge-flags", @@ -1457,9 +1457,9 @@ dependencies = [ [[package]] name = "cxx-build" -version = "1.0.128" +version = "1.0.129" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c77953e99f01508f89f55c494bfa867171ef3a6c8cea03d26975368f2121a5c1" +checksum = "c5764c3142ab44fcf857101d12c0ddf09c34499900557c764f5ad0597159d1fc" dependencies = [ "cc", "codespan-reporting", @@ -1472,15 +1472,15 @@ dependencies = [ [[package]] name = "cxxbridge-flags" -version = "1.0.128" +version = "1.0.129" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65777e06cc48f0cb0152024c77d6cf9e4bdb4408e7b48bea993d42fa0f5b02b6" +checksum = "d422aff542b4fa28c2ce8e5cc202d42dbf24702345c1fba3087b2d3f8a1b90ff" [[package]] name = "cxxbridge-macro" -version = "1.0.128" +version = "1.0.129" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98532a60dedaebc4848cb2cba5023337cc9ea3af16a5b062633fabfd9f18fb60" +checksum = "a1719100f31492cd6adeeab9a0f46cdbc846e615fdb66d7b398aa46ec7fdd06f" dependencies = [ "proc-macro2", "quote", @@ -2153,7 +2153,7 @@ checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6" [[package]] name = "fc-api" version = "1.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" dependencies = [ "async-trait", "fp-storage", @@ -2165,7 +2165,7 @@ dependencies = [ [[package]] name = "fc-consensus" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" dependencies = [ "async-trait", "fp-consensus", @@ -2181,7 +2181,7 @@ dependencies = [ [[package]] name = "fc-db" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" dependencies = [ "async-trait", "ethereum", @@ -2211,7 +2211,7 @@ dependencies = [ [[package]] name = "fc-mapping-sync" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" dependencies = [ "fc-db", "fc-storage", @@ -2234,7 +2234,7 @@ dependencies = [ [[package]] name = "fc-rpc" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" dependencies = [ "ethereum", "ethereum-types", @@ -2288,7 +2288,7 @@ dependencies = [ [[package]] name = "fc-rpc-core" version = "1.1.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" dependencies = [ "ethereum", "ethereum-types", @@ -2303,7 +2303,7 @@ dependencies = [ [[package]] name = "fc-storage" version = "1.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" dependencies = [ "ethereum", "ethereum-types", @@ -2435,6 +2435,12 @@ version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" +[[package]] +name = "foldhash" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f81ec6369c545a7d40e4589b5597581fa1c441fe1cce96dd1de43159910a36a2" + [[package]] name = "foreign-types" version = "0.3.2" @@ -2480,7 +2486,7 @@ dependencies = [ [[package]] name = "fp-account" version = "1.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" dependencies = [ "hex", "impl-serde", @@ -2499,7 +2505,7 @@ dependencies = [ [[package]] name = "fp-consensus" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" dependencies = [ "ethereum", "parity-scale-codec", @@ -2510,7 +2516,7 @@ dependencies = [ [[package]] name = "fp-dynamic-fee" version = "1.0.0" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" dependencies = [ "async-trait", "sp-core", @@ -2520,7 +2526,7 @@ dependencies = [ [[package]] name = "fp-ethereum" version = "1.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" dependencies = [ "ethereum", "ethereum-types", @@ -2532,7 +2538,7 @@ dependencies = [ [[package]] name = "fp-evm" version = "3.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" dependencies = [ "evm", "frame-support", @@ -2547,7 +2553,7 @@ dependencies = [ [[package]] name = "fp-rpc" version = "3.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" dependencies = [ "ethereum", "ethereum-types", @@ -2563,7 +2569,7 @@ dependencies = [ [[package]] name = "fp-self-contained" version = "1.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" dependencies = [ "frame-support", "parity-scale-codec", @@ -2575,7 +2581,7 @@ dependencies = [ [[package]] name = "fp-storage" version = "2.0.0" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" dependencies = [ "parity-scale-codec", "serde", @@ -2895,9 +2901,9 @@ checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" [[package]] name = "futures" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0" +checksum = "65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876" dependencies = [ "futures-channel", "futures-core", @@ -2920,9 +2926,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" +checksum = "2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10" dependencies = [ "futures-core", "futures-sink", @@ -2930,15 +2936,15 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" +checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e" [[package]] name = "futures-executor" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d" +checksum = "1e28d1d997f585e54aebc3f97d39e72338912123a67330d723fdbb564d646c9f" dependencies = [ "futures-core", "futures-task", @@ -2959,9 +2965,9 @@ dependencies = [ [[package]] name = "futures-io" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" +checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6" [[package]] name = "futures-lite" @@ -2975,9 +2981,9 @@ dependencies = [ [[package]] name = "futures-macro" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" +checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", @@ -2996,15 +3002,15 @@ dependencies = [ [[package]] name = "futures-sink" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" +checksum = "e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7" [[package]] name = "futures-task" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" +checksum = "f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988" [[package]] name = "futures-timer" @@ -3014,9 +3020,9 @@ checksum = "f288b0a4f20f9a56b5d1da57e2227c661b7b16168e2f72365f57b63326e29b24" [[package]] name = "futures-util" -version = "0.3.30" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" +checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81" dependencies = [ "futures-channel", "futures-core", @@ -3123,9 +3129,9 @@ dependencies = [ [[package]] name = "gimli" -version = "0.31.0" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32085ea23f3234fc7846555e85283ba4de91e21016dc0455a16286d87a292d64" +checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" [[package]] name = "glob" @@ -3264,6 +3270,11 @@ name = "hashbrown" version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb" +dependencies = [ + "allocator-api2", + "equivalent", + "foldhash", +] [[package]] name = "hashlink" @@ -3274,14 +3285,20 @@ dependencies = [ "hashbrown 0.14.5", ] +[[package]] +name = "hashlink" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ba4ff7128dee98c7dc9794b6a411377e1404dba1c97deb8d1a55297bd25d8af" +dependencies = [ + "hashbrown 0.14.5", +] + [[package]] name = "heck" version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" -dependencies = [ - "unicode-segmentation", -] [[package]] name = "heck" @@ -3454,9 +3471,9 @@ checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" [[package]] name = "hyper" -version = "0.14.30" +version = "0.14.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a152ddd61dfaec7273fe8419ab357f33aee0d914c5f4efbf0d96fa749eea5ec9" +checksum = "8c08302e8fa335b151b788c775ff56e7a03ae64ff85c548ee820fecb70356e85" dependencies = [ "bytes", "futures-channel", @@ -3478,9 +3495,9 @@ dependencies = [ [[package]] name = "hyper" -version = "1.4.1" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50dfd22e0e76d0f662d429a5f80fcaf3855009297eab6a0a9f8543834744ba05" +checksum = "bbbff0a806a4728c99295b254c8838933b5b082d75e3cb70c8dab21fdfbcfa9a" dependencies = [ "bytes", "futures-channel", @@ -3504,7 +3521,7 @@ checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590" dependencies = [ "futures-util", "http 0.2.12", - "hyper 0.14.30", + "hyper 0.14.31", "log", "rustls 0.21.12", "rustls-native-certs", @@ -3522,7 +3539,7 @@ dependencies = [ "futures-util", "http 1.1.0", "http-body 1.0.1", - "hyper 1.4.1", + "hyper 1.5.0", "pin-project-lite", "tokio", "tower-service", @@ -3628,7 +3645,7 @@ dependencies = [ "bytes", "futures", "http 0.2.12", - "hyper 0.14.30", + "hyper 0.14.31", "log", "rand", "tokio", @@ -3772,9 +3789,9 @@ dependencies = [ [[package]] name = "ipnet" -version = "2.10.0" +version = "2.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "187674a687eed5fe42285b40c6291f9a01517d415fad1c3cbc6a9f778af7fcd4" +checksum = "ddc24109865250148c2e0f3d25d4f0f479571723792d3802153c60922a4fb708" [[package]] name = "is-terminal" @@ -3811,15 +3828,6 @@ dependencies = [ "either", ] -[[package]] -name = "itertools" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" -dependencies = [ - "either", -] - [[package]] name = "itoa" version = "1.0.11" @@ -3837,18 +3845,18 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.70" +version = "0.3.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1868808506b929d7b0cfa8f75951347aa71bb21144b7791bae35d9bccfcfe37a" +checksum = "6a88f1bda2bd75b0452a14784937d796722fdebfe50df998aeb3f0b7603019a9" dependencies = [ "wasm-bindgen", ] [[package]] name = "jsonrpsee" -version = "0.24.5" +version = "0.24.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "126b48a5acc3c52fbd5381a77898cb60e145123179588a29e7ac48f9c06e401b" +checksum = "c5c71d8c1a731cc4227c2f698d377e7848ca12c8a48866fc5e6951c43a4db843" dependencies = [ "jsonrpsee-core", "jsonrpsee-proc-macros", @@ -3860,9 +3868,9 @@ dependencies = [ [[package]] name = "jsonrpsee-core" -version = "0.24.5" +version = "0.24.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0e503369a76e195b65af35058add0e6900b794a4e9a9316900ddd3a87a80477" +checksum = "f2882f6f8acb9fdaec7cefc4fd607119a9bd709831df7d7672a1d3b644628280" dependencies = [ "async-trait", "bytes", @@ -3883,9 +3891,9 @@ dependencies = [ [[package]] name = "jsonrpsee-proc-macros" -version = "0.24.5" +version = "0.24.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc660a9389e2748e794a40673a4155d501f32db667757cdb80edeff0306b489b" +checksum = "c06c01ae0007548e73412c08e2285ffe5d723195bf268bce67b1b77c3bb2a14d" dependencies = [ "heck 0.5.0", "proc-macro-crate 3.2.0", @@ -3896,15 +3904,15 @@ dependencies = [ [[package]] name = "jsonrpsee-server" -version = "0.24.5" +version = "0.24.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af6e6c9b6d975edcb443565d648b605f3e85a04ec63aa6941811a8894cc9cded" +checksum = "82ad8ddc14be1d4290cd68046e7d1d37acd408efed6d3ca08aefcc3ad6da069c" dependencies = [ "futures-util", "http 1.1.0", "http-body 1.0.1", "http-body-util", - "hyper 1.4.1", + "hyper 1.5.0", "hyper-util", "jsonrpsee-core", "jsonrpsee-types", @@ -3923,9 +3931,9 @@ dependencies = [ [[package]] name = "jsonrpsee-types" -version = "0.24.5" +version = "0.24.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8fb16314327cbc94fdf7965ef7e4422509cd5597f76d137bd104eb34aeede67" +checksum = "a178c60086f24cc35bb82f57c651d0d25d99c4742b4d335de04e97fa1f08a8a1" dependencies = [ "http 1.1.0", "serde", @@ -4149,7 +4157,7 @@ dependencies = [ "libp2p-identity", "libp2p-swarm", "log", - "lru 0.12.4", + "lru 0.12.5", "quick-protobuf", "quick-protobuf-codec", "smallvec", @@ -4539,9 +4547,9 @@ dependencies = [ [[package]] name = "libsqlite3-sys" -version = "0.27.0" +version = "0.30.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf4e226dcd58b4be396f7bd3c20da8fdee2911400705297ba7d2d7cc2c30f716" +checksum = "2e99fb7a497b1e3339bc746195567ed8d3e24945ecd636e3619d20b9de9e9149" dependencies = [ "cc", "pkg-config", @@ -4585,9 +4593,9 @@ dependencies = [ [[package]] name = "linregress" -version = "0.5.3" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4de04dcecc58d366391f9920245b85ffa684558a5ef6e7736e754347c3aea9c2" +checksum = "a9eda9dcf4f2a99787827661f312ac3219292549c2ee992bf9a6248ffb066bf7" dependencies = [ "nalgebra", ] @@ -4698,11 +4706,11 @@ dependencies = [ [[package]] name = "lru" -version = "0.12.4" +version = "0.12.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37ee39891760e7d94734f6f63fedc29a2e4a152f836120753a72503f09fcf904" +checksum = "234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38" dependencies = [ - "hashbrown 0.14.5", + "hashbrown 0.15.0", ] [[package]] @@ -4938,7 +4946,7 @@ dependencies = [ "c2-chacha", "curve25519-dalek", "either", - "hashlink", + "hashlink 0.8.4", "lioness", "log", "parking_lot 0.12.3", @@ -5139,13 +5147,12 @@ dependencies = [ [[package]] name = "nalgebra" -version = "0.32.6" +version = "0.33.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b5c17de023a86f59ed79891b2e5d5a94c705dbe904a5b5c9c952ea6221b03e4" +checksum = "3bf139e93ad757869338ad85239cb1d6c067b23b94e5846e637ca6328ee4be60" dependencies = [ "approx", "matrixmultiply", - "nalgebra-macros", "num-complex", "num-rational", "num-traits", @@ -5153,17 +5160,6 @@ dependencies = [ "typenum 1.17.0", ] -[[package]] -name = "nalgebra-macros" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "254a5372af8fc138e36684761d3c0cdb758a4410e938babcff1c860ce14ddbfc" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.79", -] - [[package]] name = "names" version = "0.14.0" @@ -5633,9 +5629,9 @@ dependencies = [ [[package]] name = "object" -version = "0.36.4" +version = "0.36.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "084f1a5821ac4c651660a94a7153d27ac9d8a53736203f58b31945ded098070a" +checksum = "aedf0a2d09c573ed1d8d85b30c119153926a2b36dce0ab28322c09a117a4683e" dependencies = [ "memchr", ] @@ -5660,12 +5656,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.20.1" +version = "1.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82881c4be219ab5faaf2ad5e5e5ecdff8c66bd7402ca3160975c93b24961afd1" -dependencies = [ - "portable-atomic", -] +checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" [[package]] name = "opaque-debug" @@ -5681,9 +5674,9 @@ checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] name = "openssl" -version = "0.10.66" +version = "0.10.67" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9529f4786b70a3e8c61e11179af17ab6188ad8d0ded78c5529441ed39d4bd9c1" +checksum = "7b8cefcf97f41316955f9294cd61f639bdcfa9f2f230faac6cb896aa8ab64704" dependencies = [ "bitflags 2.6.0", "cfg-if", @@ -5722,9 +5715,9 @@ dependencies = [ [[package]] name = "openssl-sys" -version = "0.9.103" +version = "0.9.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f9e8deee91df40a943c71b917e5874b951d32a802526c85721ce3b776c929d6" +checksum = "45abf306cbf99debc8195b66b7346498d7b10c210de50418b5ccd7ceba08c741" dependencies = [ "cc", "libc", @@ -5816,7 +5809,7 @@ dependencies = [ [[package]] name = "pallet-base-fee" version = "1.0.0" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" dependencies = [ "fp-evm", "frame-support", @@ -5865,7 +5858,7 @@ dependencies = [ [[package]] name = "pallet-dynamic-fee" version = "4.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" dependencies = [ "fp-dynamic-fee", "fp-evm", @@ -5880,7 +5873,7 @@ dependencies = [ [[package]] name = "pallet-ethereum" version = "4.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" dependencies = [ "ethereum", "ethereum-types", @@ -5902,7 +5895,7 @@ dependencies = [ [[package]] name = "pallet-evm" version = "6.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" dependencies = [ "environmental", "evm", @@ -5925,7 +5918,7 @@ dependencies = [ [[package]] name = "pallet-evm-chain-id" version = "1.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" dependencies = [ "frame-support", "frame-system", @@ -5936,7 +5929,7 @@ dependencies = [ [[package]] name = "pallet-evm-precompile-modexp" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" dependencies = [ "fp-evm", "num", @@ -5945,7 +5938,7 @@ dependencies = [ [[package]] name = "pallet-evm-precompile-sha3fips" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" dependencies = [ "fp-evm", "tiny-keccak", @@ -5954,7 +5947,7 @@ dependencies = [ [[package]] name = "pallet-evm-precompile-simple" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" dependencies = [ "fp-evm", "ripemd", @@ -5986,7 +5979,7 @@ dependencies = [ [[package]] name = "pallet-hotfix-sufficients" version = "1.0.0" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#5f6770b00560031787bc4efa5aaef60bdc10d0d6" +source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" dependencies = [ "frame-benchmarking", "frame-support", @@ -6481,9 +6474,9 @@ checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" [[package]] name = "pest" -version = "2.7.13" +version = "2.7.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdbef9d1d47087a895abd220ed25eb4ad973a5e26f6a4367b038c25e28dfc2d9" +checksum = "879952a81a83930934cbf1786752d6dedc3b1f29e8f8fb2ad1d0a36f377cf442" dependencies = [ "memchr", "thiserror", @@ -6492,9 +6485,9 @@ dependencies = [ [[package]] name = "pest_derive" -version = "2.7.13" +version = "2.7.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d3a6e3394ec80feb3b6393c725571754c6188490265c61aaf260810d6b95aa0" +checksum = "d214365f632b123a47fd913301e14c946c61d1c183ee245fa76eb752e59a02dd" dependencies = [ "pest", "pest_generator", @@ -6502,9 +6495,9 @@ dependencies = [ [[package]] name = "pest_generator" -version = "2.7.13" +version = "2.7.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94429506bde1ca69d1b5601962c73f4172ab4726571a59ea95931218cb0e930e" +checksum = "eb55586734301717aea2ac313f50b2eb8f60d2fc3dc01d190eefa2e625f60c4e" dependencies = [ "pest", "pest_meta", @@ -6515,9 +6508,9 @@ dependencies = [ [[package]] name = "pest_meta" -version = "2.7.13" +version = "2.7.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac8a071862e93690b6e34e9a5fb8e33ff3734473ac0245b27232222c4906a33f" +checksum = "b75da2a70cf4d9cb76833c990ac9cd3923c9a8905a8929789ce347c84564d03d" dependencies = [ "once_cell", "pest", @@ -6536,18 +6529,18 @@ dependencies = [ [[package]] name = "pin-project" -version = "1.1.5" +version = "1.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3" +checksum = "baf123a161dde1e524adf36f90bc5d8d3462824a9c43553ad07a8183161189ec" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.1.5" +version = "1.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" +checksum = "a4502d8515ca9f32f1fb543d987f63d95a14934883db45bdb48060b6b69257f8" dependencies = [ "proc-macro2", "quote", @@ -6865,9 +6858,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.86" +version = "1.0.88" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" +checksum = "7c3a7fc5db1e57d5a779a352c8cdb57b29aa4c40cc69c3a68a7fedc815fbf2f9" dependencies = [ "unicode-ident", ] @@ -6978,7 +6971,7 @@ checksum = "22505a5c94da8e3b7c2996394d1c933236c4d743e81a410bcca4e6989fc066a4" dependencies = [ "bytes", "heck 0.5.0", - "itertools 0.12.1", + "itertools 0.11.0", "log", "multimap 0.10.0", "once_cell", @@ -7011,7 +7004,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "81bddcdb20abf9501610992b6759a4c888aef7d1a7247ef75e2404275ac24af1" dependencies = [ "anyhow", - "itertools 0.12.1", + "itertools 0.11.0", "proc-macro2", "quote", "syn 2.0.79", @@ -7680,9 +7673,9 @@ dependencies = [ [[package]] name = "rustversion" -version = "1.0.17" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "955d28af4278de8121b7ebeb796b6a45735dc01436d898801014aced2773a3d6" +checksum = "0e819f2bc632f285be6d7cd36e25940d45b2391dd6d9b939e79de557f7014248" [[package]] name = "rw-stream-sink" @@ -8449,7 +8442,7 @@ dependencies = [ "fnv", "futures", "futures-timer", - "hyper 0.14.30", + "hyper 0.14.31", "hyper-rustls", "log", "num_cpus", @@ -8545,7 +8538,7 @@ dependencies = [ "governor", "http 1.1.0", "http-body-util", - "hyper 1.4.1", + "hyper 1.5.0", "ip_network", "jsonrpsee", "log", @@ -8861,9 +8854,9 @@ checksum = "f0cded6518aa0bd6c1be2b88ac81bf7044992f0f154bfbabd5ad34f43512abcb" [[package]] name = "schannel" -version = "0.1.24" +version = "0.1.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9aaafd5a2b6e3d657ff009d82fbd630b6bd54dd4eb06f21693925cdf80f9b8b" +checksum = "01227be5826fa0690321a2ba6c5cd57a19cf3f6a09e76973b58e61de6ab9d1c1" dependencies = [ "windows-sys 0.59.0", ] @@ -9098,6 +9091,18 @@ dependencies = [ "serde", ] +[[package]] +name = "serde_urlencoded" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" +dependencies = [ + "form_urlencoded", + "itoa", + "ryu", + "serde", +] + [[package]] name = "serde_with" version = "2.0.0" @@ -9238,9 +9243,9 @@ dependencies = [ [[package]] name = "simba" -version = "0.8.1" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "061507c94fc6ab4ba1c9a0305018408e312e17c041eb63bef8aa726fa33aceae" +checksum = "b3a386a501cd104797982c15ae17aafe8b9261315b5d07e3ec803f2ea26be0fa" dependencies = [ "approx", "num-complex", @@ -10077,9 +10082,9 @@ dependencies = [ [[package]] name = "sqlx" -version = "0.7.4" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9a2ccff1a000a5a59cd33da541d9f2fdcd9e6e8229cc200565942bff36d0aaa" +checksum = "93334716a037193fac19df402f8571269c84a00852f6a7066b5d2616dcd64d3e" dependencies = [ "sqlx-core", "sqlx-macros", @@ -10088,24 +10093,24 @@ dependencies = [ [[package]] name = "sqlx-core" -version = "0.7.4" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24ba59a9342a3d9bab6c56c118be528b27c9b60e490080e9711a04dccac83ef6" +checksum = "d4d8060b456358185f7d50c55d9b5066ad956956fddec42ee2e8567134a8936e" dependencies = [ - "ahash 0.8.11", "atoi", "byteorder", "bytes", "crc", "crossbeam-queue", "either", - "event-listener 2.5.3", + "event-listener 5.3.1", "futures-channel", "futures-core", "futures-intrusive", "futures-io", "futures-util", - "hashlink", + "hashbrown 0.14.5", + "hashlink 0.9.1", "hex", "indexmap 2.6.0", "log", @@ -10127,26 +10132,26 @@ dependencies = [ [[package]] name = "sqlx-macros" -version = "0.7.4" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ea40e2345eb2faa9e1e5e326db8c34711317d2b5e08d0d5741619048a803127" +checksum = "cac0692bcc9de3b073e8d747391827297e075c7710ff6276d9f7a1f3d58c6657" dependencies = [ "proc-macro2", "quote", "sqlx-core", "sqlx-macros-core", - "syn 1.0.109", + "syn 2.0.79", ] [[package]] name = "sqlx-macros-core" -version = "0.7.4" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5833ef53aaa16d860e92123292f1f6a3d53c34ba8b1969f152ef1a7bb803f3c8" +checksum = "1804e8a7c7865599c9c79be146dc8a9fd8cc86935fa641d3ea58e5f0688abaa5" dependencies = [ "dotenvy", "either", - "heck 0.4.1", + "heck 0.5.0", "hex", "once_cell", "proc-macro2", @@ -10156,7 +10161,7 @@ dependencies = [ "sha2 0.10.8", "sqlx-core", "sqlx-sqlite", - "syn 1.0.109", + "syn 2.0.79", "tempfile", "tokio", "url", @@ -10164,9 +10169,9 @@ dependencies = [ [[package]] name = "sqlx-sqlite" -version = "0.7.4" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b244ef0a8414da0bed4bb1910426e890b19e5e9bccc27ada6b797d05c55ae0aa" +checksum = "d5b2cf34a45953bfd3daaf3db0f7a7878ab9b7a6b91b422d24a7a9e4c857b680" dependencies = [ "atoi", "flume", @@ -10179,17 +10184,17 @@ dependencies = [ "log", "percent-encoding", "serde", + "serde_urlencoded", "sqlx-core", "tracing", "url", - "urlencoding", ] [[package]] name = "ss58-registry" -version = "1.50.0" +version = "1.51.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43fce22ed1df64d04b262351c8f9d5c6da4f76f79f25ad15529792f893fad25d" +checksum = "19409f13998e55816d1c728395af0b52ec066206341d939e22e7766df9b494b8" dependencies = [ "Inflector", "num-format", @@ -10380,7 +10385,7 @@ version = "0.17.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "http-body-util", - "hyper 1.4.1", + "hyper 1.5.0", "hyper-util", "log", "prometheus", @@ -11155,12 +11160,6 @@ dependencies = [ "tinyvec", ] -[[package]] -name = "unicode-segmentation" -version = "1.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" - [[package]] name = "unicode-width" version = "0.1.14" @@ -11234,12 +11233,6 @@ dependencies = [ "percent-encoding", ] -[[package]] -name = "urlencoding" -version = "2.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da" - [[package]] name = "utf-8" version = "0.7.6" @@ -11278,9 +11271,9 @@ checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" [[package]] name = "w3f-bls" -version = "0.1.4" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c5da5fa2c6afa2c9158eaa7cd9aee249765eb32b5fb0c63ad8b9e79336a47ec" +checksum = "6a48c48447120a85b0bdb897ba9426a7aa15b4229498a2e19103e8c9368dd4b2" dependencies = [ "ark-bls12-377", "ark-bls12-381", @@ -11327,9 +11320,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.93" +version = "0.2.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a82edfc16a6c469f5f44dc7b571814045d60404b55a0ee849f9bcfa2e63dd9b5" +checksum = "128d1e363af62632b8eb57219c8fd7877144af57558fb2ef0368d0087bddeb2e" dependencies = [ "cfg-if", "once_cell", @@ -11338,9 +11331,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.93" +version = "0.2.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9de396da306523044d3302746f1208fa71d7532227f15e347e2d93e4145dd77b" +checksum = "cb6dd4d3ca0ddffd1dd1c9c04f94b868c37ff5fac97c30b97cff2d74fce3a358" dependencies = [ "bumpalo", "log", @@ -11353,9 +11346,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.43" +version = "0.4.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61e9300f63a621e96ed275155c108eb6f843b6a26d053f122ab69724559dc8ed" +checksum = "cc7ec4f8827a71586374db3e87abdb5a2bb3a15afed140221307c3ec06b1f63b" dependencies = [ "cfg-if", "js-sys", @@ -11365,9 +11358,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.93" +version = "0.2.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "585c4c91a46b072c92e908d99cb1dcdf95c5218eeb6f3bf1efa991ee7a68cccf" +checksum = "e79384be7f8f5a9dd5d7167216f022090cf1f9ec128e6e6a482a2cb5c5422c56" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -11375,9 +11368,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.93" +version = "0.2.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afc340c74d9005395cf9dd098506f7f44e38f2b4a21c6aaacf9a105ea5e1e836" +checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68" dependencies = [ "proc-macro2", "quote", @@ -11388,9 +11381,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.93" +version = "0.2.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c62a0a307cb4a311d3a07867860911ca130c3494e8c2719593806c08bc5d0484" +checksum = "65fc09f10666a9f147042251e0dda9c18f166ff7de300607007e96bdebc1068d" [[package]] name = "wasm-instrument" @@ -11663,9 +11656,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.70" +version = "0.3.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26fdeaafd9bd129f65e7c031593c24d62186301e0c72c8978fa1678be7d532c0" +checksum = "f6488b90108c040df0fe62fa815cbdee25124641df01814dd7282749234c6112" dependencies = [ "js-sys", "wasm-bindgen", diff --git a/Cargo.toml b/Cargo.toml index cdfbdd8f4..8e99ed1c0 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -69,7 +69,7 @@ serde_bytes = { version = "0.11.14", default-features = false } serde_json = { version = "1.0.121", default-features = false } serde_with = { version = "=2.0.0", default-features = false } smallvec = "1.13.2" -litep2p = { git = "https://github.com/paritytech/litep2p", branch = "master" } +litep2p = { git = "https://github.com/paritytech/litep2p", tag = "v0.7.0" } syn = { version = "2", features = [ "full", "visit-mut", From 3c17e7cccb03bb325eff8cb415ae135bf9ffcb4a Mon Sep 17 00:00:00 2001 From: Sam Johnson Date: Wed, 16 Oct 2024 15:47:56 -0400 Subject: [PATCH 51/60] fix --- .github/workflows/check-rust.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/check-rust.yml b/.github/workflows/check-rust.yml index 56a68d29a..29be51edf 100644 --- a/.github/workflows/check-rust.yml +++ b/.github/workflows/check-rust.yml @@ -9,6 +9,7 @@ on: branches: [main, devnet-ready, devnet, testnet, finney] pull_request: + types: [labeled, unlabeled, synchronize] ## Allow running workflow manually from the Actions tab workflow_dispatch: From 7c4126ffd345b546bb18e0119165b87d084e378f Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Wed, 16 Oct 2024 16:58:35 -0400 Subject: [PATCH 52/60] Fix decimals in gas price rpc --- runtime/src/lib.rs | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/runtime/src/lib.rs b/runtime/src/lib.rs index 2437a1414..c87a5bb74 100644 --- a/runtime/src/lib.rs +++ b/runtime/src/lib.rs @@ -1554,9 +1554,7 @@ impl_runtime_apis! { fn gas_price() -> U256 { let (gas_price, _) = ::FeeCalculator::min_gas_price(); - - // Recalculate decimals - gas_price * U256::from(EVM_DECIMALS_FACTOR) + gas_price } fn account_code_at(address: H160) -> Vec { From 042d5d74050f93e6217248dc62e604d4a2dbd273 Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Tue, 29 Oct 2024 16:28:35 -0400 Subject: [PATCH 53/60] Update frontier fork to master branch --- Cargo.lock | 3659 ++++++++++++++++++++++++++++++++++++++-------------- Cargo.toml | 42 +- 2 files changed, 2703 insertions(+), 998 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 4bbe1207e..ad97a4a85 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -125,6 +125,15 @@ dependencies = [ "libc", ] +[[package]] +name = "ansi_term" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2" +dependencies = [ + "winapi", +] + [[package]] name = "anstream" version = "0.6.15" @@ -593,6 +602,15 @@ version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" +[[package]] +name = "beef" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a8241f3ebb85c056b509d4327ad0358fbbba6ffb340bf388f26350aeda225b1" +dependencies = [ + "serde", +] + [[package]] name = "bincode" version = "1.3.3" @@ -2153,35 +2171,35 @@ checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6" [[package]] name = "fc-api" version = "1.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" +source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" dependencies = [ "async-trait", "fp-storage", "parity-scale-codec", - "sp-core", - "sp-runtime", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", ] [[package]] name = "fc-consensus" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" +source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" dependencies = [ "async-trait", "fp-consensus", "fp-rpc", - "sc-consensus", - "sp-api", - "sp-block-builder", - "sp-consensus", - "sp-runtime", + "sc-consensus 0.43.0", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-block-builder 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", "thiserror", ] [[package]] name = "fc-db" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" +source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" dependencies = [ "async-trait", "ethereum", @@ -2196,14 +2214,14 @@ dependencies = [ "parity-db", "parity-scale-codec", "parking_lot 0.12.3", - "sc-client-api", - "sc-client-db", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-client-db 0.44.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", "smallvec", - "sp-api", - "sp-blockchain", - "sp-core", - "sp-database", - "sp-runtime", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-database 10.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", "sqlx", "tokio", ] @@ -2211,7 +2229,7 @@ dependencies = [ [[package]] name = "fc-mapping-sync" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" +source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" dependencies = [ "fc-db", "fc-storage", @@ -2221,20 +2239,20 @@ dependencies = [ "futures-timer", "log", "parking_lot 0.12.3", - "sc-client-api", - "sc-utils", - "sp-api", - "sp-blockchain", - "sp-consensus", - "sp-core", - "sp-runtime", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", "tokio", ] [[package]] name = "fc-rpc" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" +source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" dependencies = [ "ethereum", "ethereum-types", @@ -2248,7 +2266,7 @@ dependencies = [ "fp-storage", "futures", "hex", - "jsonrpsee", + "jsonrpsee 0.23.2", "libsecp256k1", "log", "pallet-evm", @@ -2256,31 +2274,31 @@ dependencies = [ "prometheus", "rand", "rlp", - "sc-client-api", - "sc-consensus-aura", - "sc-network", - "sc-network-sync", - "sc-rpc", - "sc-service", - "sc-transaction-pool", - "sc-transaction-pool-api", - "sc-utils", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-consensus-aura 0.44.0", + "sc-network 0.44.0", + "sc-network-sync 0.43.0", + "sc-rpc 39.0.0", + "sc-service 0.45.0", + "sc-transaction-pool 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", "schnellru", "serde", - "sp-api", - "sp-block-builder", - "sp-blockchain", - "sp-consensus", - "sp-consensus-aura", - "sp-core", - "sp-externalities", - "sp-inherents", - "sp-io", - "sp-runtime", - "sp-state-machine", - "sp-storage", - "sp-timestamp", - "substrate-prometheus-endpoint", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-block-builder 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-consensus-aura 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-timestamp 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", "thiserror", "tokio", ] @@ -2288,33 +2306,33 @@ dependencies = [ [[package]] name = "fc-rpc-core" version = "1.1.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" +source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" dependencies = [ "ethereum", "ethereum-types", - "jsonrpsee", + "jsonrpsee 0.23.2", "rlp", "rustc-hex", "serde", "serde_json", - "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", ] [[package]] name = "fc-storage" version = "1.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" +source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" dependencies = [ "ethereum", "ethereum-types", "fp-rpc", "fp-storage", "parity-scale-codec", - "sc-client-api", - "sp-api", - "sp-io", - "sp-runtime", - "sp-storage", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", ] [[package]] @@ -2464,6 +2482,14 @@ dependencies = [ "parity-scale-codec", ] +[[package]] +name = "fork-tree" +version = "13.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "parity-scale-codec", +] + [[package]] name = "form_urlencoded" version = "1.2.1" @@ -2486,7 +2512,7 @@ dependencies = [ [[package]] name = "fp-account" version = "1.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" +source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" dependencies = [ "hex", "impl-serde", @@ -2495,93 +2521,93 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-core", - "sp-io", - "sp-runtime", - "sp-runtime-interface", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", "staging-xcm", ] [[package]] name = "fp-consensus" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" +source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" dependencies = [ "ethereum", "parity-scale-codec", - "sp-core", - "sp-runtime", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", ] [[package]] name = "fp-dynamic-fee" version = "1.0.0" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" +source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" dependencies = [ "async-trait", - "sp-core", - "sp-inherents", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", ] [[package]] name = "fp-ethereum" version = "1.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" +source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" dependencies = [ "ethereum", "ethereum-types", "fp-evm", - "frame-support", + "frame-support 37.0.1", "parity-scale-codec", ] [[package]] name = "fp-evm" version = "3.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" +source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" dependencies = [ "evm", - "frame-support", + "frame-support 37.0.1", "num_enum", "parity-scale-codec", "scale-info", "serde", - "sp-core", - "sp-runtime", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", ] [[package]] name = "fp-rpc" version = "3.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" +source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" dependencies = [ "ethereum", "ethereum-types", "fp-evm", "parity-scale-codec", "scale-info", - "sp-api", - "sp-core", - "sp-runtime", - "sp-state-machine", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", ] [[package]] name = "fp-self-contained" version = "1.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" +source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" dependencies = [ - "frame-support", + "frame-support 37.0.1", "parity-scale-codec", "scale-info", "serde", - "sp-runtime", + "sp-runtime 39.0.2", ] [[package]] name = "fp-storage" version = "2.0.0" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" +source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" dependencies = [ "parity-scale-codec", "serde", @@ -2593,27 +2619,51 @@ version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa" +[[package]] +name = "frame-benchmarking" +version = "37.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "frame-support 37.0.1", + "frame-support-procedural 30.0.4", + "frame-system 37.1.0", + "linregress", + "log", + "parity-scale-codec", + "paste", + "scale-info", + "serde", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "static_assertions", +] + [[package]] name = "frame-benchmarking" version = "38.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-support", - "frame-support-procedural", - "frame-system", + "frame-support 38.0.0", + "frame-support-procedural 30.0.3", + "frame-system 38.0.0", "linregress", "log", "parity-scale-codec", "paste", "scale-info", "serde", - "sp-api", - "sp-application-crypto", - "sp-core", - "sp-io", - "sp-runtime", - "sp-runtime-interface", - "sp-storage", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "static_assertions", ] @@ -2627,9 +2677,9 @@ dependencies = [ "chrono", "clap", "comfy-table", - "frame-benchmarking", - "frame-support", - "frame-system", + "frame-benchmarking 38.0.0", + "frame-support 38.0.0", + "frame-system 38.0.0", "gethostname", "handlebars", "itertools 0.11.0", @@ -2639,30 +2689,30 @@ dependencies = [ "parity-scale-codec", "rand", "rand_pcg", - "sc-block-builder", - "sc-chain-spec", + "sc-block-builder 0.42.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-chain-spec 38.0.0", "sc-cli", - "sc-client-api", - "sc-client-db", - "sc-executor", - "sc-service", - "sc-sysinfo", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-client-db 0.44.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-executor 0.40.1", + "sc-service 0.46.0", + "sc-sysinfo 38.0.0", "serde", "serde_json", - "sp-api", - "sp-blockchain", - "sp-core", - "sp-database", - "sp-externalities", - "sp-genesis-builder", - "sp-inherents", - "sp-io", - "sp-keystore", - "sp-runtime", - "sp-state-machine", - "sp-storage", - "sp-trie", - "sp-wasm-interface", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-database 10.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-genesis-builder 0.15.1", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-wasm-interface 21.0.1", "thiserror", "thousands", ] @@ -2673,16 +2723,16 @@ version = "38.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "aquamarine", - "frame-support", - "frame-system", + "frame-support 38.0.0", + "frame-system 38.0.0", "frame-try-runtime", "log", "parity-scale-codec", "scale-info", - "sp-core", - "sp-io", - "sp-runtime", - "sp-tracing", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-tracing 17.0.1", ] [[package]] @@ -2704,12 +2754,53 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable dependencies = [ "array-bytes", "docify", - "frame-support", - "frame-system", + "frame-support 38.0.0", + "frame-system 38.0.0", + "log", + "parity-scale-codec", + "scale-info", + "sp-runtime 39.0.1", +] + +[[package]] +name = "frame-support" +version = "37.0.1" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "aquamarine", + "array-bytes", + "bitflags 1.3.2", + "docify", + "environmental", + "frame-metadata", + "frame-support-procedural 30.0.4", + "impl-trait-for-tuples", + "k256", "log", + "macro_magic", "parity-scale-codec", + "paste", "scale-info", - "sp-runtime", + "serde", + "serde_json", + "smallvec", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-crypto-hashing-proc-macro 0.1.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-genesis-builder 0.15.0", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-metadata-ir 0.7.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-staking 34.0.0", + "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-tracing 17.0.0", + "sp-weights 31.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "static_assertions", + "tt-call", ] [[package]] @@ -2723,7 +2814,7 @@ dependencies = [ "docify", "environmental", "frame-metadata", - "frame-support-procedural", + "frame-support-procedural 30.0.3", "impl-trait-for-tuples", "k256", "log", @@ -2734,21 +2825,21 @@ dependencies = [ "serde", "serde_json", "smallvec", - "sp-api", - "sp-arithmetic", - "sp-core", - "sp-crypto-hashing-proc-macro", - "sp-debug-derive", - "sp-genesis-builder", - "sp-inherents", - "sp-io", - "sp-metadata-ir", - "sp-runtime", - "sp-staking", - "sp-state-machine", - "sp-std", - "sp-tracing", - "sp-weights", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-crypto-hashing-proc-macro 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-genesis-builder 0.15.1", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-metadata-ir 0.7.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-staking 36.0.0", + "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-tracing 17.0.1", + "sp-weights 31.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "static_assertions", "tt-call", ] @@ -2763,7 +2854,7 @@ dependencies = [ "derive-syn-parse", "docify", "expander", - "frame-support-procedural-tools 13.0.0", + "frame-support-procedural-tools 13.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "itertools 0.11.0", "macro_magic", "proc-macro-warning 1.0.2", @@ -2773,6 +2864,25 @@ dependencies = [ "syn 2.0.79", ] +[[package]] +name = "frame-support-procedural" +version = "30.0.4" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "Inflector", + "cfg-expr", + "derive-syn-parse", + "expander", + "frame-support-procedural-tools 13.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "itertools 0.11.0", + "macro_magic", + "proc-macro-warning 1.0.2", + "proc-macro2", + "quote", + "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "syn 2.0.79", +] + [[package]] name = "frame-support-procedural-tools" version = "10.0.0" @@ -2791,7 +2901,19 @@ name = "frame-support-procedural-tools" version = "13.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-support-procedural-tools-derive 12.0.0", + "frame-support-procedural-tools-derive 12.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "proc-macro-crate 3.2.0", + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "frame-support-procedural-tools" +version = "13.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "frame-support-procedural-tools-derive 12.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", "proc-macro-crate 3.2.0", "proc-macro2", "quote", @@ -2819,6 +2941,36 @@ dependencies = [ "syn 2.0.79", ] +[[package]] +name = "frame-support-procedural-tools-derive" +version = "12.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "frame-system" +version = "37.1.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "cfg-if", + "docify", + "frame-support 37.0.1", + "log", + "parity-scale-codec", + "scale-info", + "serde", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-weights 31.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", +] + [[package]] name = "frame-system" version = "38.0.0" @@ -2826,17 +2978,17 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable dependencies = [ "cfg-if", "docify", - "frame-support", + "frame-support 38.0.0", "log", "parity-scale-codec", "scale-info", "serde", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", - "sp-version", - "sp-weights", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-weights 31.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", ] [[package]] @@ -2844,13 +2996,13 @@ name = "frame-system-benchmarking" version = "38.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-benchmarking", - "frame-support", - "frame-system", + "frame-benchmarking 38.0.0", + "frame-support 38.0.0", + "frame-system 38.0.0", "parity-scale-codec", "scale-info", - "sp-core", - "sp-runtime", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", ] [[package]] @@ -2860,7 +3012,7 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable dependencies = [ "docify", "parity-scale-codec", - "sp-api", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", ] [[package]] @@ -2868,10 +3020,10 @@ name = "frame-try-runtime" version = "0.44.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-support", + "frame-support 38.0.0", "parity-scale-codec", - "sp-api", - "sp-runtime", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", ] [[package]] @@ -3285,20 +3437,14 @@ dependencies = [ "hashbrown 0.14.5", ] -[[package]] -name = "hashlink" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ba4ff7128dee98c7dc9794b6a411377e1404dba1c97deb8d1a55297bd25d8af" -dependencies = [ - "hashbrown 0.14.5", -] - [[package]] name = "heck" version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" +dependencies = [ + "unicode-segmentation", +] [[package]] name = "heck" @@ -3852,16 +3998,55 @@ dependencies = [ "wasm-bindgen", ] +[[package]] +name = "jsonrpsee" +version = "0.23.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62b089779ad7f80768693755a031cc14a7766aba707cbe886674e3f79e9b7e47" +dependencies = [ + "jsonrpsee-core 0.23.2", + "jsonrpsee-proc-macros 0.23.2", + "jsonrpsee-server 0.23.2", + "jsonrpsee-types 0.23.2", + "tokio", + "tracing", +] + [[package]] name = "jsonrpsee" version = "0.24.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c5c71d8c1a731cc4227c2f698d377e7848ca12c8a48866fc5e6951c43a4db843" dependencies = [ - "jsonrpsee-core", - "jsonrpsee-proc-macros", - "jsonrpsee-server", - "jsonrpsee-types", + "jsonrpsee-core 0.24.7", + "jsonrpsee-proc-macros 0.24.7", + "jsonrpsee-server 0.24.7", + "jsonrpsee-types 0.24.7", + "tokio", + "tracing", +] + +[[package]] +name = "jsonrpsee-core" +version = "0.23.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "79712302e737d23ca0daa178e752c9334846b08321d439fd89af9a384f8c830b" +dependencies = [ + "anyhow", + "async-trait", + "beef", + "bytes", + "futures-util", + "http 1.1.0", + "http-body 1.0.1", + "http-body-util", + "jsonrpsee-types 0.23.2", + "parking_lot 0.12.3", + "rand", + "rustc-hash 1.1.0", + "serde", + "serde_json", + "thiserror", "tokio", "tracing", ] @@ -3878,7 +4063,7 @@ dependencies = [ "http 1.1.0", "http-body 1.0.1", "http-body-util", - "jsonrpsee-types", + "jsonrpsee-types 0.24.7", "parking_lot 0.12.3", "rand", "rustc-hash 2.0.0", @@ -3889,6 +4074,19 @@ dependencies = [ "tracing", ] +[[package]] +name = "jsonrpsee-proc-macros" +version = "0.23.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7895f186d5921065d96e16bd795e5ca89ac8356ec423fafc6e3d7cf8ec11aee4" +dependencies = [ + "heck 0.5.0", + "proc-macro-crate 3.2.0", + "proc-macro2", + "quote", + "syn 2.0.79", +] + [[package]] name = "jsonrpsee-proc-macros" version = "0.24.7" @@ -3902,6 +4100,34 @@ dependencies = [ "syn 2.0.79", ] +[[package]] +name = "jsonrpsee-server" +version = "0.23.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "654afab2e92e5d88ebd8a39d6074483f3f2bfdf91c5ac57fe285e7127cdd4f51" +dependencies = [ + "anyhow", + "futures-util", + "http 1.1.0", + "http-body 1.0.1", + "http-body-util", + "hyper 1.5.0", + "hyper-util", + "jsonrpsee-core 0.23.2", + "jsonrpsee-types 0.23.2", + "pin-project", + "route-recognizer", + "serde", + "serde_json", + "soketto", + "thiserror", + "tokio", + "tokio-stream", + "tokio-util", + "tower", + "tracing", +] + [[package]] name = "jsonrpsee-server" version = "0.24.7" @@ -3914,8 +4140,8 @@ dependencies = [ "http-body-util", "hyper 1.5.0", "hyper-util", - "jsonrpsee-core", - "jsonrpsee-types", + "jsonrpsee-core 0.24.7", + "jsonrpsee-types 0.24.7", "pin-project", "route-recognizer", "serde", @@ -3929,6 +4155,19 @@ dependencies = [ "tracing", ] +[[package]] +name = "jsonrpsee-types" +version = "0.23.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9c465fbe385238e861fdc4d1c85e04ada6c1fd246161d26385c1b311724d2af" +dependencies = [ + "beef", + "http 1.1.0", + "serde", + "serde_json", + "thiserror", +] + [[package]] name = "jsonrpsee-types" version = "0.24.7" @@ -4547,9 +4786,9 @@ dependencies = [ [[package]] name = "libsqlite3-sys" -version = "0.30.1" +version = "0.27.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e99fb7a497b1e3339bc746195567ed8d3e24945ecd636e3619d20b9de9e9149" +checksum = "cf4e226dcd58b4be396f7bd3c20da8fdee2911400705297ba7d2d7cc2c30f716" dependencies = [ "cc", "pkg-config", @@ -4946,7 +5185,7 @@ dependencies = [ "c2-chacha", "curve25519-dalek", "either", - "hashlink 0.8.4", + "hashlink", "lioness", "log", "parking_lot 0.12.3", @@ -5309,13 +5548,13 @@ dependencies = [ "fc-storage", "fp-dynamic-fee", "fp-rpc", - "frame-benchmarking", + "frame-benchmarking 38.0.0", "frame-benchmarking-cli", "frame-metadata-hash-extension", - "frame-system", + "frame-system 38.0.0", "frame-system-rpc-runtime-api", "futures", - "jsonrpsee", + "jsonrpsee 0.24.7", "memmap2 0.9.5", "node-subtensor-runtime", "pallet-commitments", @@ -5324,47 +5563,47 @@ dependencies = [ "pallet-transaction-payment-rpc-runtime-api", "parity-scale-codec", "sc-basic-authorship", - "sc-chain-spec", - "sc-chain-spec-derive", + "sc-chain-spec 38.0.0", + "sc-chain-spec-derive 12.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "sc-cli", - "sc-client-api", - "sc-consensus", - "sc-consensus-aura", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-consensus 0.44.0", + "sc-consensus-aura 0.45.0", "sc-consensus-grandpa", "sc-consensus-grandpa-rpc", "sc-consensus-manual-seal", - "sc-consensus-slots", - "sc-executor", - "sc-keystore", - "sc-network", - "sc-network-sync", + "sc-consensus-slots 0.44.0", + "sc-executor 0.40.1", + "sc-keystore 33.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-network 0.45.0", + "sc-network-sync 0.44.0", "sc-offchain", - "sc-rpc", - "sc-rpc-api", - "sc-service", - "sc-telemetry", - "sc-transaction-pool", - "sc-transaction-pool-api", + "sc-rpc 40.0.0", + "sc-rpc-api 0.44.0", + "sc-service 0.46.0", + "sc-telemetry 25.0.0", + "sc-transaction-pool 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "serde", "serde_json", - "sp-api", - "sp-block-builder", - "sp-blockchain", - "sp-consensus", - "sp-consensus-aura", - "sp-consensus-grandpa", - "sp-core", - "sp-inherents", - "sp-io", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-block-builder 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus-aura 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus-grandpa 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "sp-keyring", - "sp-offchain", - "sp-runtime", - "sp-session", - "sp-timestamp", - "sp-transaction-pool", + "sp-offchain 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-session 36.0.0", + "sp-timestamp 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-transaction-pool 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "substrate-build-script-utils", "substrate-frame-rpc-system", - "substrate-prometheus-endpoint", + "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "subtensor-custom-rpc", "subtensor-custom-rpc-runtime-api", ] @@ -5378,12 +5617,12 @@ dependencies = [ "fp-evm", "fp-rpc", "fp-self-contained", - "frame-benchmarking", + "frame-benchmarking 38.0.0", "frame-executive", "frame-metadata", "frame-metadata-hash-extension", - "frame-support", - "frame-system", + "frame-support 38.0.0", + "frame-system 38.0.0", "frame-system-benchmarking", "frame-system-rpc-runtime-api", "frame-try-runtime", @@ -5421,21 +5660,21 @@ dependencies = [ "scale-info", "serde_json", "smallvec", - "sp-api", - "sp-block-builder", - "sp-consensus-aura", - "sp-core", - "sp-genesis-builder", - "sp-inherents", - "sp-io", - "sp-offchain", - "sp-runtime", - "sp-session", - "sp-std", - "sp-storage", - "sp-tracing", - "sp-transaction-pool", - "sp-version", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-block-builder 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus-aura 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-genesis-builder 0.15.1", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-offchain 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-session 36.0.0", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-tracing 17.0.1", + "sp-transaction-pool 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "substrate-wasm-builder", "subtensor-custom-rpc-runtime-api", "subtensor-macros", @@ -5742,22 +5981,22 @@ checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" name = "pallet-admin-utils" version = "4.0.0-dev" dependencies = [ - "frame-benchmarking", - "frame-support", - "frame-system", + "frame-benchmarking 38.0.0", + "frame-support 38.0.0", + "frame-system 38.0.0", "log", "pallet-balances", "pallet-scheduler", "pallet-subtensor", "parity-scale-codec", "scale-info", - "sp-consensus-aura", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", - "sp-tracing", - "sp-weights", + "sp-consensus-aura 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-tracing 17.0.1", + "sp-weights 31.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "substrate-fixed", "subtensor-macros", ] @@ -5767,15 +6006,15 @@ name = "pallet-aura" version = "37.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-support", - "frame-system", + "frame-support 38.0.0", + "frame-system 38.0.0", "log", "pallet-timestamp", "parity-scale-codec", "scale-info", - "sp-application-crypto", - "sp-consensus-aura", - "sp-runtime", + "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus-aura 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", ] [[package]] @@ -5783,12 +6022,12 @@ name = "pallet-authorship" version = "38.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-support", - "frame-system", + "frame-support 38.0.0", + "frame-system 38.0.0", "impl-trait-for-tuples", "parity-scale-codec", "scale-info", - "sp-runtime", + "sp-runtime 39.0.1", ] [[package]] @@ -5797,43 +6036,43 @@ version = "39.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "docify", - "frame-benchmarking", - "frame-support", - "frame-system", + "frame-benchmarking 38.0.0", + "frame-support 38.0.0", + "frame-system 38.0.0", "log", "parity-scale-codec", "scale-info", - "sp-runtime", + "sp-runtime 39.0.1", ] [[package]] name = "pallet-base-fee" version = "1.0.0" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" +source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" dependencies = [ "fp-evm", - "frame-support", - "frame-system", + "frame-support 37.0.1", + "frame-system 37.1.0", "parity-scale-codec", "scale-info", - "sp-core", - "sp-runtime", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", ] [[package]] name = "pallet-collective" version = "4.0.0-dev" dependencies = [ - "frame-benchmarking", - "frame-support", - "frame-system", + "frame-benchmarking 38.0.0", + "frame-support 38.0.0", + "frame-system 38.0.0", "log", "parity-scale-codec", "scale-info", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "subtensor-macros", ] @@ -5842,38 +6081,38 @@ name = "pallet-commitments" version = "4.0.0-dev" dependencies = [ "enumflags2", - "frame-benchmarking", - "frame-support", - "frame-system", + "frame-benchmarking 38.0.0", + "frame-support 38.0.0", + "frame-system 38.0.0", "pallet-balances", "parity-scale-codec", "scale-info", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "subtensor-macros", ] [[package]] name = "pallet-dynamic-fee" version = "4.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" +source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" dependencies = [ "fp-dynamic-fee", "fp-evm", - "frame-support", - "frame-system", + "frame-support 37.0.1", + "frame-system 37.1.0", "parity-scale-codec", "scale-info", - "sp-core", - "sp-inherents", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", ] [[package]] name = "pallet-ethereum" version = "4.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" +source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" dependencies = [ "ethereum", "ethereum-types", @@ -5883,45 +6122,45 @@ dependencies = [ "fp-evm", "fp-rpc", "fp-storage", - "frame-support", - "frame-system", + "frame-support 37.0.1", + "frame-system 37.1.0", "pallet-evm", "parity-scale-codec", "scale-info", - "sp-io", - "sp-runtime", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", ] [[package]] name = "pallet-evm" version = "6.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" +source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" dependencies = [ "environmental", "evm", "fp-account", "fp-evm", - "frame-benchmarking", - "frame-support", - "frame-system", + "frame-benchmarking 37.0.0", + "frame-support 37.0.1", + "frame-system 37.1.0", "hash-db", "hex-literal", "impl-trait-for-tuples", "log", "parity-scale-codec", "scale-info", - "sp-core", - "sp-io", - "sp-runtime", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", ] [[package]] name = "pallet-evm-chain-id" version = "1.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" +source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" dependencies = [ - "frame-support", - "frame-system", + "frame-support 37.0.1", + "frame-system 37.1.0", "parity-scale-codec", "scale-info", ] @@ -5929,7 +6168,7 @@ dependencies = [ [[package]] name = "pallet-evm-precompile-modexp" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" +source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" dependencies = [ "fp-evm", "num", @@ -5938,7 +6177,7 @@ dependencies = [ [[package]] name = "pallet-evm-precompile-sha3fips" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" +source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" dependencies = [ "fp-evm", "tiny-keccak", @@ -5947,11 +6186,11 @@ dependencies = [ [[package]] name = "pallet-evm-precompile-simple" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" +source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" dependencies = [ "fp-evm", "ripemd", - "sp-io", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", ] [[package]] @@ -5959,36 +6198,36 @@ name = "pallet-grandpa" version = "38.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-benchmarking", - "frame-support", - "frame-system", + "frame-benchmarking 38.0.0", + "frame-support 38.0.0", + "frame-system 38.0.0", "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-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus-grandpa 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-session 36.0.0", + "sp-staking 36.0.0", ] [[package]] name = "pallet-hotfix-sufficients" version = "1.0.0" -source = "git+https://github.com/gztensor/frontier?branch=feat/adjustable-decimals#4c4dbbd8101ffaa318398e318529ec60637202b9" +source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" dependencies = [ - "frame-benchmarking", - "frame-support", - "frame-system", + "frame-benchmarking 37.0.0", + "frame-support 37.0.1", + "frame-system 37.1.0", "pallet-evm", "parity-scale-codec", "scale-info", - "sp-core", - "sp-runtime", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", ] [[package]] @@ -5996,12 +6235,12 @@ name = "pallet-insecure-randomness-collective-flip" version = "26.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-support", - "frame-system", + "frame-support 38.0.0", + "frame-system 38.0.0", "parity-scale-codec", "safe-mix", "scale-info", - "sp-runtime", + "sp-runtime 39.0.1", ] [[package]] @@ -6009,15 +6248,15 @@ name = "pallet-membership" version = "38.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-benchmarking", - "frame-support", - "frame-system", + "frame-benchmarking 38.0.0", + "frame-support 38.0.0", + "frame-system 38.0.0", "log", "parity-scale-codec", "scale-info", - "sp-core", - "sp-io", - "sp-runtime", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", ] [[package]] @@ -6025,14 +6264,14 @@ name = "pallet-multisig" version = "38.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-benchmarking", - "frame-support", - "frame-system", + "frame-benchmarking 38.0.0", + "frame-support 38.0.0", + "frame-system 38.0.0", "log", "parity-scale-codec", "scale-info", - "sp-io", - "sp-runtime", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", ] [[package]] @@ -6040,15 +6279,15 @@ name = "pallet-preimage" version = "38.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-benchmarking", - "frame-support", - "frame-system", + "frame-benchmarking 38.0.0", + "frame-support 38.0.0", + "frame-system 38.0.0", "log", "parity-scale-codec", "scale-info", - "sp-core", - "sp-io", - "sp-runtime", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", ] [[package]] @@ -6056,13 +6295,13 @@ name = "pallet-proxy" version = "38.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-benchmarking", - "frame-support", - "frame-system", + "frame-benchmarking 38.0.0", + "frame-support 38.0.0", + "frame-system 38.0.0", "parity-scale-codec", "scale-info", - "sp-io", - "sp-runtime", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", ] [[package]] @@ -6070,15 +6309,15 @@ name = "pallet-registry" version = "4.0.0-dev" dependencies = [ "enumflags2", - "frame-benchmarking", - "frame-support", - "frame-system", + "frame-benchmarking 38.0.0", + "frame-support 38.0.0", + "frame-system 38.0.0", "parity-scale-codec", "scale-info", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "subtensor-macros", ] @@ -6088,16 +6327,16 @@ version = "19.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "docify", - "frame-benchmarking", - "frame-support", - "frame-system", + "frame-benchmarking 38.0.0", + "frame-support 38.0.0", + "frame-system 38.0.0", "pallet-balances", "pallet-proxy", "pallet-utility", "parity-scale-codec", "scale-info", - "sp-arithmetic", - "sp-runtime", + "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", ] [[package]] @@ -6106,15 +6345,15 @@ version = "39.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "docify", - "frame-benchmarking", - "frame-support", - "frame-system", + "frame-benchmarking 38.0.0", + "frame-support 38.0.0", + "frame-system 38.0.0", "log", "parity-scale-codec", "scale-info", - "sp-io", - "sp-runtime", - "sp-weights", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-weights 31.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", ] [[package]] @@ -6122,29 +6361,29 @@ name = "pallet-session" version = "38.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-support", - "frame-system", + "frame-support 38.0.0", + "frame-system 38.0.0", "impl-trait-for-tuples", "log", "pallet-timestamp", "parity-scale-codec", "scale-info", - "sp-core", - "sp-io", - "sp-runtime", - "sp-session", - "sp-staking", - "sp-state-machine", - "sp-trie", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-session 36.0.0", + "sp-staking 36.0.0", + "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", ] [[package]] name = "pallet-subtensor" version = "4.0.0-dev" dependencies = [ - "frame-benchmarking", - "frame-support", - "frame-system", + "frame-benchmarking 38.0.0", + "frame-support 38.0.0", + "frame-system 38.0.0", "hex", "hex-literal", "log", @@ -6166,12 +6405,12 @@ dependencies = [ "serde_bytes", "serde_json", "serde_with", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", - "sp-tracing", - "sp-version", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-tracing 17.0.1", + "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "substrate-fixed", "subtensor-macros", ] @@ -6182,13 +6421,13 @@ version = "38.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "docify", - "frame-benchmarking", - "frame-support", - "frame-system", + "frame-benchmarking 38.0.0", + "frame-support 38.0.0", + "frame-system 38.0.0", "parity-scale-codec", "scale-info", - "sp-io", - "sp-runtime", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", ] [[package]] @@ -6197,17 +6436,17 @@ version = "37.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "docify", - "frame-benchmarking", - "frame-support", - "frame-system", + "frame-benchmarking 38.0.0", + "frame-support 38.0.0", + "frame-system 38.0.0", "log", "parity-scale-codec", "scale-info", - "sp-inherents", - "sp-io", - "sp-runtime", - "sp-storage", - "sp-timestamp", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-timestamp 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", ] [[package]] @@ -6215,14 +6454,14 @@ name = "pallet-transaction-payment" version = "38.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-support", - "frame-system", + "frame-support 38.0.0", + "frame-system 38.0.0", "parity-scale-codec", "scale-info", "serde", - "sp-core", - "sp-io", - "sp-runtime", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", ] [[package]] @@ -6230,15 +6469,15 @@ name = "pallet-transaction-payment-rpc" version = "41.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "jsonrpsee", + "jsonrpsee 0.24.7", "pallet-transaction-payment-rpc-runtime-api", "parity-scale-codec", - "sp-api", - "sp-blockchain", - "sp-core", - "sp-rpc", - "sp-runtime", - "sp-weights", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-rpc 32.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-weights 31.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", ] [[package]] @@ -6248,9 +6487,9 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable dependencies = [ "pallet-transaction-payment", "parity-scale-codec", - "sp-api", - "sp-runtime", - "sp-weights", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-weights 31.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", ] [[package]] @@ -6258,14 +6497,14 @@ name = "pallet-utility" version = "38.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-benchmarking", - "frame-support", - "frame-system", + "frame-benchmarking 38.0.0", + "frame-support 38.0.0", + "frame-system 38.0.0", "parity-scale-codec", "scale-info", - "sp-core", - "sp-io", - "sp-runtime", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", ] [[package]] @@ -7727,8 +7966,19 @@ version = "29.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "log", - "sp-core", - "sp-wasm-interface", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-wasm-interface 21.0.1", + "thiserror", +] + +[[package]] +name = "sc-allocator" +version = "29.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "log", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-wasm-interface 21.0.0", "thiserror", ] @@ -7741,17 +7991,17 @@ dependencies = [ "futures-timer", "log", "parity-scale-codec", - "sc-block-builder", + "sc-block-builder 0.42.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "sc-proposer-metrics", - "sc-telemetry", - "sc-transaction-pool-api", - "sp-api", - "sp-blockchain", - "sp-consensus", - "sp-core", - "sp-inherents", - "sp-runtime", - "substrate-prometheus-endpoint", + "sc-telemetry 25.0.0", + "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", ] [[package]] @@ -7760,13 +8010,55 @@ version = "0.42.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "parity-scale-codec", - "sp-api", - "sp-block-builder", - "sp-blockchain", - "sp-core", - "sp-inherents", - "sp-runtime", - "sp-trie", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-block-builder 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", +] + +[[package]] +name = "sc-block-builder" +version = "0.42.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "parity-scale-codec", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-block-builder 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", +] + +[[package]] +name = "sc-chain-spec" +version = "37.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "array-bytes", + "docify", + "log", + "memmap2 0.9.5", + "parity-scale-codec", + "sc-chain-spec-derive 12.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-executor 0.40.0", + "sc-network 0.44.0", + "sc-telemetry 24.0.0", + "serde", + "serde_json", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-genesis-builder 0.15.0", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-tracing 17.0.0", ] [[package]] @@ -7779,21 +8071,21 @@ dependencies = [ "log", "memmap2 0.9.5", "parity-scale-codec", - "sc-chain-spec-derive", - "sc-client-api", - "sc-executor", - "sc-network", - "sc-telemetry", + "sc-chain-spec-derive 12.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-executor 0.40.1", + "sc-network 0.45.0", + "sc-telemetry 25.0.0", "serde", "serde_json", - "sp-blockchain", - "sp-core", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-genesis-builder", - "sp-io", - "sp-runtime", - "sp-state-machine", - "sp-tracing", + "sp-genesis-builder 0.15.1", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-tracing 17.0.1", ] [[package]] @@ -7807,6 +8099,17 @@ dependencies = [ "syn 2.0.79", ] +[[package]] +name = "sc-chain-spec-derive" +version = "12.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "proc-macro-crate 3.2.0", + "proc-macro2", + "quote", + "syn 2.0.79", +] + [[package]] name = "sc-cli" version = "0.47.0" @@ -7826,24 +8129,24 @@ dependencies = [ "rand", "regex", "rpassword", - "sc-client-api", - "sc-client-db", - "sc-keystore", - "sc-mixnet", - "sc-network", - "sc-service", - "sc-telemetry", - "sc-tracing", - "sc-utils", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-client-db 0.44.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-keystore 33.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-mixnet 0.15.0", + "sc-network 0.45.0", + "sc-service 0.46.0", + "sc-telemetry 25.0.0", + "sc-tracing 37.0.1", + "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "serde", "serde_json", - "sp-blockchain", - "sp-core", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "sp-keyring", - "sp-keystore", - "sp-panic-handler", - "sp-runtime", - "sp-version", + "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-panic-handler 13.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "thiserror", "tokio", ] @@ -7858,21 +8161,48 @@ dependencies = [ "log", "parity-scale-codec", "parking_lot 0.12.3", - "sc-executor", - "sc-transaction-pool-api", - "sc-utils", - "sp-api", - "sp-blockchain", - "sp-consensus", - "sp-core", - "sp-database", - "sp-externalities", - "sp-runtime", - "sp-state-machine", - "sp-statement-store", - "sp-storage", - "sp-trie", - "substrate-prometheus-endpoint", + "sc-executor 0.40.1", + "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-database 10.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-statement-store 18.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", +] + +[[package]] +name = "sc-client-api" +version = "37.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "fnv", + "futures", + "log", + "parity-scale-codec", + "parking_lot 0.12.3", + "sc-executor 0.40.0", + "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-database 10.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-statement-store 18.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", ] [[package]] @@ -7889,39 +8219,118 @@ dependencies = [ "parity-db", "parity-scale-codec", "parking_lot 0.12.3", - "sc-client-api", - "sc-state-db", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-state-db 0.36.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "schnellru", - "sp-arithmetic", - "sp-blockchain", - "sp-core", - "sp-database", - "sp-runtime", - "sp-state-machine", - "sp-trie", + "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-database 10.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", ] [[package]] -name = "sc-consensus" +name = "sc-client-db" version = "0.44.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" dependencies = [ - "async-trait", - "futures", + "hash-db", + "kvdb", + "kvdb-memorydb", + "kvdb-rocksdb", + "linked-hash-map", "log", - "mockall 0.11.4", + "parity-db", + "parity-scale-codec", "parking_lot 0.12.3", - "sc-client-api", - "sc-network-types", - "sc-utils", - "serde", - "sp-api", - "sp-blockchain", - "sp-consensus", - "sp-core", - "sp-runtime", - "sp-state-machine", - "substrate-prometheus-endpoint", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-state-db 0.36.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "schnellru", + "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-database 10.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", +] + +[[package]] +name = "sc-consensus" +version = "0.43.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "async-trait", + "futures", + "log", + "mockall 0.11.4", + "parking_lot 0.12.3", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "serde", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "thiserror", +] + +[[package]] +name = "sc-consensus" +version = "0.44.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" +dependencies = [ + "async-trait", + "futures", + "log", + "mockall 0.11.4", + "parking_lot 0.12.3", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "serde", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "thiserror", +] + +[[package]] +name = "sc-consensus-aura" +version = "0.44.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "async-trait", + "futures", + "log", + "parity-scale-codec", + "sc-block-builder 0.42.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-consensus 0.43.0", + "sc-consensus-slots 0.43.0", + "sc-telemetry 24.0.0", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-block-builder 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-consensus-aura 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-consensus-slots 0.40.0", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", "thiserror", ] @@ -7934,23 +8343,23 @@ dependencies = [ "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", + "sc-block-builder 0.42.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-consensus 0.44.0", + "sc-consensus-slots 0.44.0", + "sc-telemetry 25.0.0", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-block-builder 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus-aura 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus-slots 0.40.1", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "thiserror", ] @@ -7960,7 +8369,7 @@ version = "0.45.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "async-trait", - "fork-tree", + "fork-tree 13.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "futures", "log", "num-bigint", @@ -7968,25 +8377,25 @@ dependencies = [ "num-traits", "parity-scale-codec", "parking_lot 0.12.3", - "sc-client-api", - "sc-consensus", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-consensus 0.44.0", "sc-consensus-epochs", - "sc-consensus-slots", - "sc-telemetry", - "sc-transaction-pool-api", - "sp-api", - "sp-application-crypto", - "sp-block-builder", - "sp-blockchain", - "sp-consensus", + "sc-consensus-slots 0.44.0", + "sc-telemetry 25.0.0", + "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-block-builder 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "sp-consensus-babe", - "sp-consensus-slots", - "sp-core", + "sp-consensus-slots 0.40.1", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-inherents", - "sp-keystore", - "sp-runtime", - "substrate-prometheus-endpoint", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "thiserror", ] @@ -7995,12 +8404,12 @@ name = "sc-consensus-epochs" version = "0.44.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "fork-tree", + "fork-tree 13.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "parity-scale-codec", - "sc-client-api", - "sc-consensus", - "sp-blockchain", - "sp-runtime", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-consensus 0.44.0", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", ] [[package]] @@ -8013,37 +8422,37 @@ dependencies = [ "async-trait", "dyn-clone", "finality-grandpa", - "fork-tree", + "fork-tree 13.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "futures", "futures-timer", "log", "parity-scale-codec", "parking_lot 0.12.3", "rand", - "sc-block-builder", - "sc-chain-spec", - "sc-client-api", - "sc-consensus", - "sc-network", - "sc-network-common", + "sc-block-builder 0.42.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-chain-spec 38.0.0", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-consensus 0.44.0", + "sc-network 0.45.0", + "sc-network-common 0.44.0", "sc-network-gossip", - "sc-network-sync", - "sc-network-types", - "sc-telemetry", - "sc-transaction-pool-api", - "sc-utils", + "sc-network-sync 0.44.0", + "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-telemetry 25.0.0", + "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "serde_json", - "sp-api", - "sp-application-crypto", - "sp-arithmetic", - "sp-blockchain", - "sp-consensus", - "sp-consensus-grandpa", - "sp-core", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus-grandpa 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-keystore", - "sp-runtime", - "substrate-prometheus-endpoint", + "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "thiserror", ] @@ -8054,16 +8463,16 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable dependencies = [ "finality-grandpa", "futures", - "jsonrpsee", + "jsonrpsee 0.24.7", "log", "parity-scale-codec", - "sc-client-api", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "sc-consensus-grandpa", - "sc-rpc", + "sc-rpc 40.0.0", "serde", - "sp-blockchain", - "sp-core", - "sp-runtime", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", "thiserror", ] @@ -8076,32 +8485,55 @@ dependencies = [ "async-trait", "futures", "futures-timer", - "jsonrpsee", + "jsonrpsee 0.24.7", "log", "parity-scale-codec", - "sc-client-api", - "sc-consensus", - "sc-consensus-aura", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-consensus 0.44.0", + "sc-consensus-aura 0.45.0", "sc-consensus-babe", "sc-consensus-epochs", - "sc-transaction-pool", - "sc-transaction-pool-api", + "sc-transaction-pool 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "serde", - "sp-api", - "sp-blockchain", - "sp-consensus", - "sp-consensus-aura", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus-aura 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "sp-consensus-babe", - "sp-consensus-slots", - "sp-core", - "sp-inherents", - "sp-keystore", - "sp-runtime", - "sp-timestamp", - "substrate-prometheus-endpoint", + "sp-consensus-slots 0.40.1", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-timestamp 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "thiserror", ] +[[package]] +name = "sc-consensus-slots" +version = "0.43.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "async-trait", + "futures", + "futures-timer", + "log", + "parity-scale-codec", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-consensus 0.43.0", + "sc-telemetry 24.0.0", + "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-consensus-slots 0.40.0", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", +] + [[package]] name = "sc-consensus-slots" version = "0.44.0" @@ -8112,17 +8544,40 @@ dependencies = [ "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", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-consensus 0.44.0", + "sc-telemetry 25.0.0", + "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus-slots 0.40.1", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", +] + +[[package]] +name = "sc-executor" +version = "0.40.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "parity-scale-codec", + "parking_lot 0.12.3", + "sc-executor-common 0.35.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-executor-polkavm 0.32.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-executor-wasmtime 0.35.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "schnellru", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-panic-handler 13.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-wasm-interface 21.0.0", + "tracing", ] [[package]] @@ -8132,19 +8587,19 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable dependencies = [ "parity-scale-codec", "parking_lot 0.12.3", - "sc-executor-common", - "sc-executor-polkavm", - "sc-executor-wasmtime", + "sc-executor-common 0.35.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-executor-polkavm 0.32.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-executor-wasmtime 0.35.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "schnellru", - "sp-api", - "sp-core", - "sp-externalities", - "sp-io", - "sp-panic-handler", - "sp-runtime-interface", - "sp-trie", - "sp-version", - "sp-wasm-interface", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-panic-handler 13.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-wasm-interface 21.0.1", "tracing", ] @@ -8154,9 +8609,22 @@ version = "0.35.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "polkavm", - "sc-allocator", - "sp-maybe-compressed-blob", - "sp-wasm-interface", + "sc-allocator 29.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-maybe-compressed-blob 11.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-wasm-interface 21.0.1", + "thiserror", + "wasm-instrument", +] + +[[package]] +name = "sc-executor-common" +version = "0.35.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "polkavm", + "sc-allocator 29.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-maybe-compressed-blob 11.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-wasm-interface 21.0.0", "thiserror", "wasm-instrument", ] @@ -8168,8 +8636,19 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable dependencies = [ "log", "polkavm", - "sc-executor-common", - "sp-wasm-interface", + "sc-executor-common 0.35.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-wasm-interface 21.0.1", +] + +[[package]] +name = "sc-executor-polkavm" +version = "0.32.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "log", + "polkavm", + "sc-executor-common 0.35.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-wasm-interface 21.0.0", ] [[package]] @@ -8183,13 +8662,48 @@ dependencies = [ "log", "parking_lot 0.12.3", "rustix 0.36.17", - "sc-allocator", - "sc-executor-common", - "sp-runtime-interface", - "sp-wasm-interface", + "sc-allocator 29.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-executor-common 0.35.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-wasm-interface 21.0.1", + "wasmtime", +] + +[[package]] +name = "sc-executor-wasmtime" +version = "0.35.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "anyhow", + "cfg-if", + "libc", + "log", + "parking_lot 0.12.3", + "rustix 0.36.17", + "sc-allocator 29.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-executor-common 0.35.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-wasm-interface 21.0.0", "wasmtime", ] +[[package]] +name = "sc-informant" +version = "0.43.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "ansi_term", + "futures", + "futures-timer", + "log", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-network 0.44.0", + "sc-network-common 0.43.0", + "sc-network-sync 0.43.0", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", +] + [[package]] name = "sc-informant" version = "0.44.0" @@ -8199,12 +8713,12 @@ dependencies = [ "futures", "futures-timer", "log", - "sc-client-api", - "sc-network", - "sc-network-common", - "sc-network-sync", - "sp-blockchain", - "sp-runtime", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-network 0.45.0", + "sc-network-common 0.44.0", + "sc-network-sync 0.44.0", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", ] [[package]] @@ -8215,9 +8729,52 @@ dependencies = [ "array-bytes", "parking_lot 0.12.3", "serde_json", - "sp-application-crypto", - "sp-core", - "sp-keystore", + "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "thiserror", +] + +[[package]] +name = "sc-keystore" +version = "33.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "array-bytes", + "parking_lot 0.12.3", + "serde_json", + "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "thiserror", +] + +[[package]] +name = "sc-mixnet" +version = "0.14.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "array-bytes", + "arrayvec", + "blake2 0.10.6", + "bytes", + "futures", + "futures-timer", + "log", + "mixnet", + "multiaddr 0.18.2", + "parity-scale-codec", + "parking_lot 0.12.3", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-network 0.44.0", + "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-mixnet 0.12.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", "thiserror", ] @@ -8237,17 +8794,68 @@ dependencies = [ "multiaddr 0.18.2", "parity-scale-codec", "parking_lot 0.12.3", - "sc-client-api", - "sc-network", - "sc-network-types", - "sc-transaction-pool-api", - "sp-api", - "sp-consensus", - "sp-core", - "sp-keystore", - "sp-mixnet", - "sp-runtime", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-network 0.45.0", + "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-mixnet 0.12.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "thiserror", +] + +[[package]] +name = "sc-network" +version = "0.44.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "array-bytes", + "async-channel", + "async-trait", + "asynchronous-codec", + "bytes", + "cid 0.9.0", + "either", + "fnv", + "futures", + "futures-timer", + "ip_network", + "libp2p", + "linked_hash_set", + "litep2p", + "log", + "mockall 0.11.4", + "once_cell", + "parity-scale-codec", + "parking_lot 0.12.3", + "partial_sort", + "pin-project", + "prost 0.12.6", + "prost-build 0.12.6", + "rand", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-network-common 0.43.0", + "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "schnellru", + "serde", + "serde_json", + "smallvec", + "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", "thiserror", + "tokio", + "tokio-stream", + "unsigned-varint 0.7.2", + "void", + "wasm-timer", + "zeroize", ] [[package]] @@ -8279,19 +8887,19 @@ dependencies = [ "prost 0.12.6", "prost-build 0.12.6", "rand", - "sc-client-api", - "sc-network-common", - "sc-network-types", - "sc-utils", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-network-common 0.44.0", + "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "schnellru", "serde", "serde_json", "smallvec", - "sp-arithmetic", - "sp-blockchain", - "sp-core", - "sp-runtime", - "substrate-prometheus-endpoint", + "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "thiserror", "tokio", "tokio-stream", @@ -8301,6 +8909,24 @@ dependencies = [ "zeroize", ] +[[package]] +name = "sc-network-common" +version = "0.43.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "async-trait", + "bitflags 1.3.2", + "futures", + "libp2p-identity", + "parity-scale-codec", + "prost-build 0.12.6", + "sc-consensus 0.43.0", + "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-consensus-grandpa 21.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", +] + [[package]] name = "sc-network-common" version = "0.44.0" @@ -8312,11 +8938,11 @@ dependencies = [ "libp2p-identity", "parity-scale-codec", "prost-build 0.12.6", - "sc-consensus", - "sc-network-types", - "sp-consensus", - "sp-consensus-grandpa", - "sp-runtime", + "sc-consensus 0.44.0", + "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus-grandpa 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", ] [[package]] @@ -8328,16 +8954,37 @@ dependencies = [ "futures", "futures-timer", "log", - "sc-network", - "sc-network-common", - "sc-network-sync", - "sc-network-types", + "sc-network 0.45.0", + "sc-network-common 0.44.0", + "sc-network-sync 0.44.0", + "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "schnellru", - "sp-runtime", - "substrate-prometheus-endpoint", + "sp-runtime 39.0.1", + "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "tracing", ] +[[package]] +name = "sc-network-light" +version = "0.43.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "array-bytes", + "async-channel", + "futures", + "log", + "parity-scale-codec", + "prost 0.12.6", + "prost-build 0.12.6", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-network 0.44.0", + "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "thiserror", +] + [[package]] name = "sc-network-light" version = "0.44.0" @@ -8350,13 +8997,50 @@ dependencies = [ "parity-scale-codec", "prost 0.12.6", "prost-build 0.12.6", - "sc-client-api", - "sc-network", - "sc-network-types", - "sp-blockchain", - "sp-core", - "sp-runtime", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-network 0.45.0", + "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "thiserror", +] + +[[package]] +name = "sc-network-sync" +version = "0.43.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "array-bytes", + "async-channel", + "async-trait", + "fork-tree 13.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "futures", + "futures-timer", + "libp2p", + "log", + "mockall 0.11.4", + "parity-scale-codec", + "prost 0.12.6", + "prost-build 0.12.6", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-consensus 0.43.0", + "sc-network 0.44.0", + "sc-network-common 0.43.0", + "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "schnellru", + "smallvec", + "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-consensus-grandpa 21.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", "thiserror", + "tokio", + "tokio-stream", ] [[package]] @@ -8367,7 +9051,7 @@ dependencies = [ "array-bytes", "async-channel", "async-trait", - "fork-tree", + "fork-tree 13.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "futures", "futures-timer", "libp2p", @@ -8376,26 +9060,45 @@ dependencies = [ "parity-scale-codec", "prost 0.12.6", "prost-build 0.12.6", - "sc-client-api", - "sc-consensus", - "sc-network", - "sc-network-common", - "sc-network-types", - "sc-utils", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-consensus 0.44.0", + "sc-network 0.45.0", + "sc-network-common 0.44.0", + "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "schnellru", "smallvec", - "sp-arithmetic", - "sp-blockchain", - "sp-consensus", - "sp-consensus-grandpa", - "sp-core", - "sp-runtime", - "substrate-prometheus-endpoint", + "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus-grandpa 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "thiserror", "tokio", "tokio-stream", ] +[[package]] +name = "sc-network-transactions" +version = "0.43.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "array-bytes", + "futures", + "log", + "parity-scale-codec", + "sc-network 0.44.0", + "sc-network-common 0.43.0", + "sc-network-sync 0.43.0", + "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", +] + [[package]] name = "sc-network-transactions" version = "0.44.0" @@ -8405,14 +9108,14 @@ dependencies = [ "futures", "log", "parity-scale-codec", - "sc-network", - "sc-network-common", - "sc-network-sync", - "sc-network-types", - "sc-utils", - "sp-consensus", - "sp-runtime", - "substrate-prometheus-endpoint", + "sc-network 0.45.0", + "sc-network-common 0.44.0", + "sc-network-sync 0.44.0", + "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", ] [[package]] @@ -8432,6 +9135,23 @@ dependencies = [ "zeroize", ] +[[package]] +name = "sc-network-types" +version = "0.12.1" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "bs58 0.5.1", + "ed25519-dalek", + "libp2p-identity", + "litep2p", + "log", + "multiaddr 0.18.2", + "multihash 0.19.1", + "rand", + "thiserror", + "zeroize", +] + [[package]] name = "sc-offchain" version = "40.0.0" @@ -8450,18 +9170,18 @@ dependencies = [ "parity-scale-codec", "parking_lot 0.12.3", "rand", - "sc-client-api", - "sc-network", - "sc-network-common", - "sc-network-types", - "sc-transaction-pool-api", - "sc-utils", - "sp-api", - "sp-core", - "sp-externalities", - "sp-keystore", - "sp-offchain", - "sp-runtime", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-network 0.45.0", + "sc-network-common 0.44.0", + "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-offchain 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", "threadpool", "tracing", ] @@ -8472,7 +9192,39 @@ version = "0.18.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "log", - "substrate-prometheus-endpoint", + "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", +] + +[[package]] +name = "sc-rpc" +version = "39.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "futures", + "jsonrpsee 0.23.2", + "log", + "parity-scale-codec", + "parking_lot 0.12.3", + "sc-block-builder 0.42.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-chain-spec 37.0.0", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-mixnet 0.14.0", + "sc-rpc-api 0.43.0", + "sc-tracing 37.0.0", + "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "serde_json", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-offchain 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-rpc 32.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-session 35.0.0", + "sp-statement-store 18.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "tokio", ] [[package]] @@ -8481,52 +9233,94 @@ version = "40.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "futures", - "jsonrpsee", + "jsonrpsee 0.24.7", "log", "parity-scale-codec", "parking_lot 0.12.3", - "sc-block-builder", - "sc-chain-spec", - "sc-client-api", - "sc-mixnet", - "sc-rpc-api", - "sc-tracing", - "sc-transaction-pool-api", - "sc-utils", + "sc-block-builder 0.42.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-chain-spec 38.0.0", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-mixnet 0.15.0", + "sc-rpc-api 0.44.0", + "sc-tracing 37.0.1", + "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "serde_json", - "sp-api", - "sp-blockchain", - "sp-core", - "sp-keystore", - "sp-offchain", - "sp-rpc", - "sp-runtime", - "sp-session", - "sp-statement-store", - "sp-version", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-offchain 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-rpc 32.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-session 36.0.0", + "sp-statement-store 18.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "tokio", ] [[package]] name = "sc-rpc-api" -version = "0.44.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" +version = "0.43.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" dependencies = [ - "jsonrpsee", + "jsonrpsee 0.23.2", "parity-scale-codec", - "sc-chain-spec", - "sc-mixnet", - "sc-transaction-pool-api", + "sc-chain-spec 37.0.0", + "sc-mixnet 0.14.0", + "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", "scale-info", "serde", "serde_json", - "sp-core", - "sp-rpc", - "sp-runtime", - "sp-version", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-rpc 32.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", "thiserror", ] +[[package]] +name = "sc-rpc-api" +version = "0.44.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" +dependencies = [ + "jsonrpsee 0.24.7", + "parity-scale-codec", + "sc-chain-spec 38.0.0", + "sc-mixnet 0.15.0", + "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "scale-info", + "serde", + "serde_json", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-rpc 32.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "thiserror", +] + +[[package]] +name = "sc-rpc-server" +version = "16.0.2" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "forwarded-header-value", + "futures", + "governor", + "http 1.1.0", + "http-body-util", + "hyper 1.5.0", + "ip_network", + "jsonrpsee 0.23.2", + "log", + "serde", + "serde_json", + "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "tokio", + "tower", + "tower-http", +] + [[package]] name = "sc-rpc-server" version = "17.0.0" @@ -8540,17 +9334,49 @@ dependencies = [ "http-body-util", "hyper 1.5.0", "ip_network", - "jsonrpsee", + "jsonrpsee 0.24.7", "log", - "sc-rpc-api", + "sc-rpc-api 0.44.0", "serde", "serde_json", - "substrate-prometheus-endpoint", + "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "tokio", "tower", "tower-http", ] +[[package]] +name = "sc-rpc-spec-v2" +version = "0.44.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "array-bytes", + "futures", + "futures-util", + "hex", + "jsonrpsee 0.23.2", + "log", + "parity-scale-codec", + "parking_lot 0.12.3", + "rand", + "sc-chain-spec 37.0.0", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-rpc 39.0.0", + "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "schnellru", + "serde", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-rpc 32.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "thiserror", + "tokio", + "tokio-stream", +] + [[package]] name = "sc-rpc-spec-v2" version = "0.45.0" @@ -8560,29 +9386,93 @@ dependencies = [ "futures", "futures-util", "hex", - "jsonrpsee", + "jsonrpsee 0.24.7", "log", "parity-scale-codec", "parking_lot 0.12.3", "rand", - "sc-chain-spec", - "sc-client-api", - "sc-rpc", - "sc-transaction-pool-api", - "sc-utils", + "sc-chain-spec 38.0.0", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-rpc 40.0.0", + "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "schnellru", "serde", - "sp-api", - "sp-blockchain", - "sp-core", - "sp-rpc", - "sp-runtime", - "sp-version", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-rpc 32.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "thiserror", "tokio", "tokio-stream", ] +[[package]] +name = "sc-service" +version = "0.45.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "async-trait", + "directories", + "exit-future", + "futures", + "futures-timer", + "jsonrpsee 0.23.2", + "log", + "parity-scale-codec", + "parking_lot 0.12.3", + "pin-project", + "rand", + "sc-chain-spec 37.0.0", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-client-db 0.44.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-consensus 0.43.0", + "sc-executor 0.40.0", + "sc-informant 0.43.0", + "sc-keystore 33.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-network 0.44.0", + "sc-network-common 0.43.0", + "sc-network-light 0.43.0", + "sc-network-sync 0.43.0", + "sc-network-transactions 0.43.0", + "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-rpc 39.0.0", + "sc-rpc-server 16.0.2", + "sc-rpc-spec-v2 0.44.0", + "sc-sysinfo 37.0.0", + "sc-telemetry 24.0.0", + "sc-tracing 37.0.0", + "sc-transaction-pool 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "schnellru", + "serde", + "serde_json", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-session 35.0.0", + "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-transaction-pool 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-transaction-storage-proof 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "static_init", + "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "tempfile", + "thiserror", + "tokio", + "tracing", + "tracing-futures", +] + [[package]] name = "sc-service" version = "0.46.0" @@ -8593,53 +9483,53 @@ dependencies = [ "exit-future", "futures", "futures-timer", - "jsonrpsee", + "jsonrpsee 0.24.7", "log", "parity-scale-codec", "parking_lot 0.12.3", "pin-project", "rand", - "sc-chain-spec", - "sc-client-api", - "sc-client-db", - "sc-consensus", - "sc-executor", - "sc-informant", - "sc-keystore", - "sc-network", - "sc-network-common", - "sc-network-light", - "sc-network-sync", - "sc-network-transactions", - "sc-network-types", - "sc-rpc", - "sc-rpc-server", - "sc-rpc-spec-v2", - "sc-sysinfo", - "sc-telemetry", - "sc-tracing", - "sc-transaction-pool", - "sc-transaction-pool-api", - "sc-utils", + "sc-chain-spec 38.0.0", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-client-db 0.44.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-consensus 0.44.0", + "sc-executor 0.40.1", + "sc-informant 0.44.0", + "sc-keystore 33.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-network 0.45.0", + "sc-network-common 0.44.0", + "sc-network-light 0.44.0", + "sc-network-sync 0.44.0", + "sc-network-transactions 0.44.0", + "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-rpc 40.0.0", + "sc-rpc-server 17.0.0", + "sc-rpc-spec-v2 0.45.0", + "sc-sysinfo 38.0.0", + "sc-telemetry 25.0.0", + "sc-tracing 37.0.1", + "sc-transaction-pool 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "schnellru", "serde", "serde_json", - "sp-api", - "sp-blockchain", - "sp-consensus", - "sp-core", - "sp-externalities", - "sp-keystore", - "sp-runtime", - "sp-session", - "sp-state-machine", - "sp-storage", - "sp-transaction-pool", - "sp-transaction-storage-proof", - "sp-trie", - "sp-version", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-session 36.0.0", + "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-transaction-pool 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-transaction-storage-proof 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "static_init", - "substrate-prometheus-endpoint", + "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "tempfile", "thiserror", "tokio", @@ -8655,7 +9545,39 @@ dependencies = [ "log", "parity-scale-codec", "parking_lot 0.12.3", - "sp-core", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", +] + +[[package]] +name = "sc-state-db" +version = "0.36.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "log", + "parity-scale-codec", + "parking_lot 0.12.3", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", +] + +[[package]] +name = "sc-sysinfo" +version = "37.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "derive_more", + "futures", + "libc", + "log", + "rand", + "rand_pcg", + "regex", + "sc-telemetry 24.0.0", + "serde", + "serde_json", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", ] [[package]] @@ -8670,13 +9592,33 @@ dependencies = [ "rand", "rand_pcg", "regex", - "sc-telemetry", + "sc-telemetry 25.0.0", "serde", "serde_json", - "sp-core", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-io", - "sp-std", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", +] + +[[package]] +name = "sc-telemetry" +version = "24.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "chrono", + "futures", + "libp2p", + "log", + "parking_lot 0.12.3", + "pin-project", + "rand", + "sc-network 0.44.0", + "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "serde", + "serde_json", + "thiserror", + "wasm-timer", ] [[package]] @@ -8691,14 +9633,44 @@ dependencies = [ "parking_lot 0.12.3", "pin-project", "rand", - "sc-network", - "sc-utils", + "sc-network 0.45.0", + "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "serde", "serde_json", "thiserror", "wasm-timer", ] +[[package]] +name = "sc-tracing" +version = "37.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "ansi_term", + "chrono", + "is-terminal", + "lazy_static", + "libc", + "log", + "parity-scale-codec", + "parking_lot 0.12.3", + "regex", + "rustc-hash 1.1.0", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-tracing-proc-macro 11.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "serde", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-rpc 32.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-tracing 17.0.0", + "thiserror", + "tracing", + "tracing-log", + "tracing-subscriber", +] + [[package]] name = "sc-tracing" version = "37.0.1" @@ -8713,15 +9685,15 @@ dependencies = [ "parity-scale-codec", "parking_lot 0.12.3", "rustc-hash 1.1.0", - "sc-client-api", - "sc-tracing-proc-macro", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-tracing-proc-macro 11.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "serde", - "sp-api", - "sp-blockchain", - "sp-core", - "sp-rpc", - "sp-runtime", - "sp-tracing", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-rpc 32.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-tracing 17.0.1", "thiserror", "tracing", "tracing-log", @@ -8739,6 +9711,17 @@ dependencies = [ "syn 2.0.79", ] +[[package]] +name = "sc-tracing-proc-macro" +version = "11.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "proc-macro-crate 3.2.0", + "proc-macro2", + "quote", + "syn 2.0.79", +] + [[package]] name = "sc-transaction-pool" version = "37.0.0" @@ -8751,18 +9734,45 @@ dependencies = [ "log", "parity-scale-codec", "parking_lot 0.12.3", - "sc-client-api", - "sc-transaction-pool-api", - "sc-utils", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "serde", - "sp-api", - "sp-blockchain", - "sp-core", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime", - "sp-tracing", - "sp-transaction-pool", - "substrate-prometheus-endpoint", + "sp-runtime 39.0.1", + "sp-tracing 17.0.1", + "sp-transaction-pool 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "thiserror", +] + +[[package]] +name = "sc-transaction-pool" +version = "37.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "async-trait", + "futures", + "futures-timer", + "linked-hash-map", + "log", + "parity-scale-codec", + "parking_lot 0.12.3", + "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "serde", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-tracing 17.0.0", + "sp-transaction-pool 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", "thiserror", ] @@ -8776,9 +9786,25 @@ dependencies = [ "log", "parity-scale-codec", "serde", - "sp-blockchain", - "sp-core", - "sp-runtime", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "thiserror", +] + +[[package]] +name = "sc-transaction-pool-api" +version = "37.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "async-trait", + "futures", + "log", + "parity-scale-codec", + "serde", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", "thiserror", ] @@ -8794,7 +9820,22 @@ dependencies = [ "log", "parking_lot 0.12.3", "prometheus", - "sp-arithmetic", + "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", +] + +[[package]] +name = "sc-utils" +version = "17.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "async-channel", + "futures", + "futures-timer", + "lazy_static", + "log", + "parking_lot 0.12.3", + "prometheus", + "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", ] [[package]] @@ -9091,18 +10132,6 @@ dependencies = [ "serde", ] -[[package]] -name = "serde_urlencoded" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" -dependencies = [ - "form_urlencoded", - "itoa", - "ryu", - "serde", -] - [[package]] name = "serde_with" version = "2.0.0" @@ -9365,15 +10394,37 @@ dependencies = [ "log", "parity-scale-codec", "scale-info", - "sp-api-proc-macro", - "sp-core", - "sp-externalities", - "sp-metadata-ir", - "sp-runtime", - "sp-runtime-interface", - "sp-state-machine", - "sp-trie", - "sp-version", + "sp-api-proc-macro 20.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-metadata-ir 0.7.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "thiserror", +] + +[[package]] +name = "sp-api" +version = "34.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "docify", + "hash-db", + "log", + "parity-scale-codec", + "scale-info", + "sp-api-proc-macro 20.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-metadata-ir 0.7.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", "thiserror", ] @@ -9391,6 +10442,20 @@ dependencies = [ "syn 2.0.79", ] +[[package]] +name = "sp-api-proc-macro" +version = "20.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "Inflector", + "blake2 0.10.6", + "expander", + "proc-macro-crate 3.2.0", + "proc-macro2", + "quote", + "syn 2.0.79", +] + [[package]] name = "sp-application-crypto" version = "38.0.0" @@ -9399,8 +10464,20 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-core", - "sp-io", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", +] + +[[package]] +name = "sp-application-crypto" +version = "38.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "parity-scale-codec", + "scale-info", + "serde", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", ] [[package]] @@ -9417,14 +10494,38 @@ dependencies = [ "static_assertions", ] +[[package]] +name = "sp-arithmetic" +version = "26.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "docify", + "integer-sqrt", + "num-traits", + "parity-scale-codec", + "scale-info", + "serde", + "static_assertions", +] + [[package]] name = "sp-block-builder" version = "34.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "sp-api", - "sp-inherents", - "sp-runtime", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", +] + +[[package]] +name = "sp-block-builder" +version = "34.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", ] [[package]] @@ -9436,12 +10537,31 @@ dependencies = [ "parity-scale-codec", "parking_lot 0.12.3", "schnellru", - "sp-api", - "sp-consensus", - "sp-core", - "sp-database", - "sp-runtime", - "sp-state-machine", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-database 10.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "thiserror", + "tracing", +] + +[[package]] +name = "sp-blockchain" +version = "37.0.1" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "futures", + "parity-scale-codec", + "parking_lot 0.12.3", + "schnellru", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-database 10.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", "thiserror", "tracing", ] @@ -9454,10 +10574,25 @@ dependencies = [ "async-trait", "futures", "log", - "sp-core", - "sp-inherents", - "sp-runtime", - "sp-state-machine", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "thiserror", +] + +[[package]] +name = "sp-consensus" +version = "0.40.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "async-trait", + "futures", + "log", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", "thiserror", ] @@ -9469,12 +10604,28 @@ dependencies = [ "async-trait", "parity-scale-codec", "scale-info", - "sp-api", - "sp-application-crypto", - "sp-consensus-slots", - "sp-inherents", - "sp-runtime", - "sp-timestamp", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus-slots 0.40.1", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-timestamp 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", +] + +[[package]] +name = "sp-consensus-aura" +version = "0.40.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "async-trait", + "parity-scale-codec", + "scale-info", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-consensus-slots 0.40.0", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-timestamp 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", ] [[package]] @@ -9486,13 +10637,13 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-api", - "sp-application-crypto", - "sp-consensus-slots", - "sp-core", - "sp-inherents", - "sp-runtime", - "sp-timestamp", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus-slots 0.40.1", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-timestamp 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", ] [[package]] @@ -9505,11 +10656,39 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-api", - "sp-application-crypto", - "sp-core", - "sp-keystore", - "sp-runtime", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", +] + +[[package]] +name = "sp-consensus-grandpa" +version = "21.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "finality-grandpa", + "log", + "parity-scale-codec", + "scale-info", + "serde", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", +] + +[[package]] +name = "sp-consensus-slots" +version = "0.40.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "parity-scale-codec", + "scale-info", + "serde", + "sp-timestamp 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", ] [[package]] @@ -9520,7 +10699,7 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-timestamp", + "sp-timestamp 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", ] [[package]] @@ -9556,13 +10735,59 @@ dependencies = [ "secrecy", "serde", "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-debug-derive", - "sp-externalities", - "sp-runtime-interface", - "sp-std", - "sp-storage", + "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "ss58-registry", - "substrate-bip39", + "substrate-bip39 0.6.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "thiserror", + "tracing", + "w3f-bls", + "zeroize", +] + +[[package]] +name = "sp-core" +version = "34.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "array-bytes", + "bitflags 1.3.2", + "blake2 0.10.6", + "bounded-collections", + "bs58 0.5.1", + "dyn-clonable", + "ed25519-zebra", + "futures", + "hash-db", + "hash256-std-hasher", + "impl-serde", + "itertools 0.11.0", + "k256", + "libsecp256k1", + "log", + "merlin", + "parity-bip39", + "parity-scale-codec", + "parking_lot 0.12.3", + "paste", + "primitive-types", + "rand", + "scale-info", + "schnorrkel", + "secp256k1", + "secrecy", + "serde", + "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "ss58-registry", + "substrate-bip39 0.6.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", "thiserror", "tracing", "w3f-bls", @@ -9596,6 +10821,19 @@ dependencies = [ "twox-hash", ] +[[package]] +name = "sp-crypto-hashing" +version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "blake2b_simd", + "byteorder", + "digest 0.10.7", + "sha2 0.10.8", + "sha3", + "twox-hash", +] + [[package]] name = "sp-crypto-hashing-proc-macro" version = "0.1.0" @@ -9606,6 +10844,16 @@ dependencies = [ "syn 2.0.79", ] +[[package]] +name = "sp-crypto-hashing-proc-macro" +version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "quote", + "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "syn 2.0.79", +] + [[package]] name = "sp-database" version = "10.0.0" @@ -9615,6 +10863,15 @@ dependencies = [ "parking_lot 0.12.3", ] +[[package]] +name = "sp-database" +version = "10.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "kvdb", + "parking_lot 0.12.3", +] + [[package]] name = "sp-debug-derive" version = "14.0.0" @@ -9625,6 +10882,16 @@ dependencies = [ "syn 2.0.79", ] +[[package]] +name = "sp-debug-derive" +version = "14.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", +] + [[package]] name = "sp-externalities" version = "0.29.0" @@ -9632,7 +10899,29 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable dependencies = [ "environmental", "parity-scale-codec", - "sp-storage", + "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", +] + +[[package]] +name = "sp-externalities" +version = "0.29.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "environmental", + "parity-scale-codec", + "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", +] + +[[package]] +name = "sp-genesis-builder" +version = "0.15.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "parity-scale-codec", + "scale-info", + "serde_json", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", ] [[package]] @@ -9643,8 +10932,8 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde_json", - "sp-api", - "sp-runtime", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", ] [[package]] @@ -9656,7 +10945,20 @@ dependencies = [ "impl-trait-for-tuples", "parity-scale-codec", "scale-info", - "sp-runtime", + "sp-runtime 39.0.1", + "thiserror", +] + +[[package]] +name = "sp-inherents" +version = "34.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "async-trait", + "impl-trait-for-tuples", + "parity-scale-codec", + "scale-info", + "sp-runtime 39.0.2", "thiserror", ] @@ -9674,14 +10976,40 @@ dependencies = [ "polkavm-derive", "rustversion", "secp256k1", - "sp-core", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-externalities", - "sp-keystore", - "sp-runtime-interface", - "sp-state-machine", - "sp-tracing", - "sp-trie", + "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-tracing 17.0.1", + "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "tracing", + "tracing-core", +] + +[[package]] +name = "sp-io" +version = "38.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "bytes", + "docify", + "ed25519-dalek", + "libsecp256k1", + "log", + "parity-scale-codec", + "polkavm-derive", + "rustversion", + "secp256k1", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-tracing 17.0.0", + "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", "tracing", "tracing-core", ] @@ -9691,8 +11019,8 @@ name = "sp-keyring" version = "39.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "sp-core", - "sp-runtime", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", "strum 0.26.3", ] @@ -9703,8 +11031,19 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable dependencies = [ "parity-scale-codec", "parking_lot 0.12.3", - "sp-core", - "sp-externalities", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", +] + +[[package]] +name = "sp-keystore" +version = "0.40.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "parity-scale-codec", + "parking_lot 0.12.3", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", ] [[package]] @@ -9716,6 +11055,15 @@ dependencies = [ "zstd 0.12.4", ] +[[package]] +name = "sp-maybe-compressed-blob" +version = "11.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "thiserror", + "zstd 0.12.4", +] + [[package]] name = "sp-metadata-ir" version = "0.7.0" @@ -9726,6 +11074,16 @@ dependencies = [ "scale-info", ] +[[package]] +name = "sp-metadata-ir" +version = "0.7.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "frame-metadata", + "parity-scale-codec", + "scale-info", +] + [[package]] name = "sp-mixnet" version = "0.12.0" @@ -9733,8 +11091,19 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable dependencies = [ "parity-scale-codec", "scale-info", - "sp-api", - "sp-application-crypto", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", +] + +[[package]] +name = "sp-mixnet" +version = "0.12.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "parity-scale-codec", + "scale-info", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", ] [[package]] @@ -9742,9 +11111,19 @@ name = "sp-offchain" version = "34.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "sp-api", - "sp-core", - "sp-runtime", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", +] + +[[package]] +name = "sp-offchain" +version = "34.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", ] [[package]] @@ -9752,19 +11131,39 @@ name = "sp-panic-handler" version = "13.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "backtrace", - "lazy_static", - "regex", + "backtrace", + "lazy_static", + "regex", +] + +[[package]] +name = "sp-panic-handler" +version = "13.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "backtrace", + "lazy_static", + "regex", +] + +[[package]] +name = "sp-rpc" +version = "32.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" +dependencies = [ + "rustc-hash 1.1.0", + "serde", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", ] [[package]] name = "sp-rpc" version = "32.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" dependencies = [ "rustc-hash 1.1.0", "serde", - "sp-core", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", ] [[package]] @@ -9784,12 +11183,38 @@ dependencies = [ "scale-info", "serde", "simple-mermaid", - "sp-application-crypto", - "sp-arithmetic", - "sp-core", - "sp-io", - "sp-std", - "sp-weights", + "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-weights 31.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "tracing", +] + +[[package]] +name = "sp-runtime" +version = "39.0.2" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "docify", + "either", + "hash256-std-hasher", + "impl-trait-for-tuples", + "log", + "num-traits", + "parity-scale-codec", + "paste", + "rand", + "scale-info", + "serde", + "simple-mermaid", + "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-weights 31.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", "tracing", ] @@ -9803,12 +11228,31 @@ dependencies = [ "parity-scale-codec", "polkavm-derive", "primitive-types", - "sp-externalities", - "sp-runtime-interface-proc-macro", - "sp-std", - "sp-storage", - "sp-tracing", - "sp-wasm-interface", + "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime-interface-proc-macro 18.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-tracing 17.0.1", + "sp-wasm-interface 21.0.1", + "static_assertions", +] + +[[package]] +name = "sp-runtime-interface" +version = "28.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "bytes", + "impl-trait-for-tuples", + "parity-scale-codec", + "polkavm-derive", + "primitive-types", + "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime-interface-proc-macro 18.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-tracing 17.0.0", + "sp-wasm-interface 21.0.0", "static_assertions", ] @@ -9825,6 +11269,33 @@ dependencies = [ "syn 2.0.79", ] +[[package]] +name = "sp-runtime-interface-proc-macro" +version = "18.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "Inflector", + "expander", + "proc-macro-crate 3.2.0", + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "sp-session" +version = "35.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "parity-scale-codec", + "scale-info", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-staking 34.0.0", +] + [[package]] name = "sp-session" version = "36.0.0" @@ -9832,11 +11303,24 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable dependencies = [ "parity-scale-codec", "scale-info", - "sp-api", - "sp-core", - "sp-keystore", - "sp-runtime", - "sp-staking", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-staking 36.0.0", +] + +[[package]] +name = "sp-staking" +version = "34.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "impl-trait-for-tuples", + "parity-scale-codec", + "scale-info", + "serde", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", ] [[package]] @@ -9848,8 +11332,8 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-core", - "sp-runtime", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", ] [[package]] @@ -9863,10 +11347,30 @@ dependencies = [ "parking_lot 0.12.3", "rand", "smallvec", - "sp-core", - "sp-externalities", - "sp-panic-handler", - "sp-trie", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-panic-handler 13.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "thiserror", + "tracing", + "trie-db", +] + +[[package]] +name = "sp-state-machine" +version = "0.43.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "hash-db", + "log", + "parity-scale-codec", + "parking_lot 0.12.3", + "rand", + "smallvec", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-panic-handler 13.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", "thiserror", "tracing", "trie-db", @@ -9885,13 +11389,37 @@ dependencies = [ "rand", "scale-info", "sha2 0.10.8", - "sp-api", - "sp-application-crypto", - "sp-core", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-externalities", - "sp-runtime", - "sp-runtime-interface", + "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "thiserror", + "x25519-dalek", +] + +[[package]] +name = "sp-statement-store" +version = "18.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "aes-gcm", + "curve25519-dalek", + "ed25519-dalek", + "hkdf", + "parity-scale-codec", + "rand", + "scale-info", + "sha2 0.10.8", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", "thiserror", "x25519-dalek", ] @@ -9901,6 +11429,11 @@ name = "sp-std" version = "14.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" +[[package]] +name = "sp-std" +version = "14.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" + [[package]] name = "sp-storage" version = "21.0.0" @@ -9910,7 +11443,19 @@ dependencies = [ "parity-scale-codec", "ref-cast", "serde", - "sp-debug-derive", + "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", +] + +[[package]] +name = "sp-storage" +version = "21.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "impl-serde", + "parity-scale-codec", + "ref-cast", + "serde", + "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", ] [[package]] @@ -9920,11 +11465,34 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable dependencies = [ "async-trait", "parity-scale-codec", - "sp-inherents", - "sp-runtime", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "thiserror", +] + +[[package]] +name = "sp-timestamp" +version = "34.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "async-trait", + "parity-scale-codec", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", "thiserror", ] +[[package]] +name = "sp-tracing" +version = "17.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "parity-scale-codec", + "tracing", + "tracing-core", + "tracing-subscriber", +] + [[package]] name = "sp-tracing" version = "17.0.1" @@ -9941,8 +11509,17 @@ name = "sp-transaction-pool" version = "34.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "sp-api", - "sp-runtime", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", +] + +[[package]] +name = "sp-transaction-pool" +version = "34.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", ] [[package]] @@ -9953,10 +11530,24 @@ dependencies = [ "async-trait", "parity-scale-codec", "scale-info", - "sp-core", - "sp-inherents", - "sp-runtime", - "sp-trie", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", +] + +[[package]] +name = "sp-transaction-storage-proof" +version = "34.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "async-trait", + "parity-scale-codec", + "scale-info", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", ] [[package]] @@ -9974,8 +11565,31 @@ dependencies = [ "rand", "scale-info", "schnellru", - "sp-core", - "sp-externalities", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "thiserror", + "tracing", + "trie-db", + "trie-root", +] + +[[package]] +name = "sp-trie" +version = "37.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "ahash 0.8.11", + "hash-db", + "lazy_static", + "memory-db", + "nohash-hasher", + "parity-scale-codec", + "parking_lot 0.12.3", + "rand", + "scale-info", + "schnellru", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", "thiserror", "tracing", "trie-db", @@ -9992,10 +11606,27 @@ dependencies = [ "parity-wasm", "scale-info", "serde", - "sp-crypto-hashing-proc-macro", - "sp-runtime", - "sp-std", - "sp-version-proc-macro", + "sp-crypto-hashing-proc-macro 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-version-proc-macro 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "thiserror", +] + +[[package]] +name = "sp-version" +version = "37.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "impl-serde", + "parity-scale-codec", + "parity-wasm", + "scale-info", + "serde", + "sp-crypto-hashing-proc-macro 0.1.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime 39.0.2", + "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-version-proc-macro 14.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", "thiserror", ] @@ -10010,6 +11641,29 @@ dependencies = [ "syn 2.0.79", ] +[[package]] +name = "sp-version-proc-macro" +version = "14.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "parity-scale-codec", + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "sp-wasm-interface" +version = "21.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "anyhow", + "impl-trait-for-tuples", + "log", + "parity-scale-codec", + "wasmtime", +] + [[package]] name = "sp-wasm-interface" version = "21.0.1" @@ -10032,8 +11686,22 @@ dependencies = [ "scale-info", "serde", "smallvec", - "sp-arithmetic", - "sp-debug-derive", + "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", +] + +[[package]] +name = "sp-weights" +version = "31.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "bounded-collections", + "parity-scale-codec", + "scale-info", + "serde", + "smallvec", + "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", ] [[package]] @@ -10082,9 +11750,9 @@ dependencies = [ [[package]] name = "sqlx" -version = "0.8.2" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93334716a037193fac19df402f8571269c84a00852f6a7066b5d2616dcd64d3e" +checksum = "c9a2ccff1a000a5a59cd33da541d9f2fdcd9e6e8229cc200565942bff36d0aaa" dependencies = [ "sqlx-core", "sqlx-macros", @@ -10093,24 +11761,24 @@ dependencies = [ [[package]] name = "sqlx-core" -version = "0.8.2" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4d8060b456358185f7d50c55d9b5066ad956956fddec42ee2e8567134a8936e" +checksum = "24ba59a9342a3d9bab6c56c118be528b27c9b60e490080e9711a04dccac83ef6" dependencies = [ + "ahash 0.8.11", "atoi", "byteorder", "bytes", "crc", "crossbeam-queue", "either", - "event-listener 5.3.1", + "event-listener 2.5.3", "futures-channel", "futures-core", "futures-intrusive", "futures-io", "futures-util", - "hashbrown 0.14.5", - "hashlink 0.9.1", + "hashlink", "hex", "indexmap 2.6.0", "log", @@ -10132,26 +11800,26 @@ dependencies = [ [[package]] name = "sqlx-macros" -version = "0.8.2" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cac0692bcc9de3b073e8d747391827297e075c7710ff6276d9f7a1f3d58c6657" +checksum = "4ea40e2345eb2faa9e1e5e326db8c34711317d2b5e08d0d5741619048a803127" dependencies = [ "proc-macro2", "quote", "sqlx-core", "sqlx-macros-core", - "syn 2.0.79", + "syn 1.0.109", ] [[package]] name = "sqlx-macros-core" -version = "0.8.2" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1804e8a7c7865599c9c79be146dc8a9fd8cc86935fa641d3ea58e5f0688abaa5" +checksum = "5833ef53aaa16d860e92123292f1f6a3d53c34ba8b1969f152ef1a7bb803f3c8" dependencies = [ "dotenvy", "either", - "heck 0.5.0", + "heck 0.4.1", "hex", "once_cell", "proc-macro2", @@ -10161,7 +11829,7 @@ dependencies = [ "sha2 0.10.8", "sqlx-core", "sqlx-sqlite", - "syn 2.0.79", + "syn 1.0.109", "tempfile", "tokio", "url", @@ -10169,9 +11837,9 @@ dependencies = [ [[package]] name = "sqlx-sqlite" -version = "0.8.2" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5b2cf34a45953bfd3daaf3db0f7a7878ab9b7a6b91b422d24a7a9e4c857b680" +checksum = "b244ef0a8414da0bed4bb1910426e890b19e5e9bccc27ada6b797d05c55ae0aa" dependencies = [ "atoi", "flume", @@ -10184,10 +11852,10 @@ dependencies = [ "log", "percent-encoding", "serde", - "serde_urlencoded", "sqlx-core", "tracing", "url", + "urlencoding", ] [[package]] @@ -10213,8 +11881,8 @@ checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" [[package]] name = "staging-xcm" -version = "14.2.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" +version = "14.1.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" dependencies = [ "array-bytes", "bounded-collections", @@ -10225,8 +11893,7 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-runtime", - "sp-weights", + "sp-weights 31.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", "xcm-procedural", ] @@ -10343,6 +12010,18 @@ dependencies = [ "zeroize", ] +[[package]] +name = "substrate-bip39" +version = "0.6.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "hmac 0.12.1", + "pbkdf2", + "schnorrkel", + "sha2 0.10.8", + "zeroize", +] + [[package]] name = "substrate-build-script-utils" version = "11.0.0" @@ -10367,16 +12046,16 @@ dependencies = [ "docify", "frame-system-rpc-runtime-api", "futures", - "jsonrpsee", + "jsonrpsee 0.24.7", "log", "parity-scale-codec", - "sc-rpc-api", - "sc-transaction-pool-api", - "sp-api", - "sp-block-builder", - "sp-blockchain", - "sp-core", - "sp-runtime", + "sc-rpc-api 0.44.0", + "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-block-builder 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", ] [[package]] @@ -10393,6 +12072,20 @@ dependencies = [ "tokio", ] +[[package]] +name = "substrate-prometheus-endpoint" +version = "0.17.0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +dependencies = [ + "http-body-util", + "hyper 1.5.0", + "hyper-util", + "log", + "prometheus", + "thiserror", + "tokio", +] + [[package]] name = "substrate-wasm-builder" version = "24.0.1" @@ -10409,12 +12102,12 @@ dependencies = [ "parity-scale-codec", "parity-wasm", "polkavm-linker", - "sc-executor", - "sp-core", - "sp-io", - "sp-maybe-compressed-blob", - "sp-tracing", - "sp-version", + "sc-executor 0.40.1", + "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-maybe-compressed-blob 11.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-tracing 17.0.1", + "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", "strum 0.26.3", "tempfile", "toml 0.8.19", @@ -10440,14 +12133,14 @@ dependencies = [ name = "subtensor-custom-rpc" version = "0.0.2" dependencies = [ - "jsonrpsee", + "jsonrpsee 0.24.7", "pallet-subtensor", "parity-scale-codec", "serde", - "sp-api", - "sp-blockchain", - "sp-rpc", - "sp-runtime", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-rpc 32.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime 39.0.1", "subtensor-custom-rpc-runtime-api", ] @@ -10455,10 +12148,10 @@ dependencies = [ name = "subtensor-custom-rpc-runtime-api" version = "0.0.2" dependencies = [ - "frame-support", + "frame-support 38.0.0", "pallet-subtensor", "serde", - "sp-api", + "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", ] [[package]] @@ -11160,6 +12853,12 @@ dependencies = [ "tinyvec", ] +[[package]] +name = "unicode-segmentation" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" + [[package]] name = "unicode-width" version = "0.1.14" @@ -11233,6 +12932,12 @@ dependencies = [ "percent-encoding", ] +[[package]] +name = "urlencoding" +version = "2.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da" + [[package]] name = "utf-8" version = "0.7.6" @@ -12073,7 +13778,7 @@ dependencies = [ [[package]] name = "xcm-procedural" version = "10.1.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" +source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" dependencies = [ "Inflector", "proc-macro2", diff --git a/Cargo.toml b/Cargo.toml index 8e99ed1c0..11a4e8e67 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -164,31 +164,31 @@ sc-network-sync = { git = "https://github.com/paritytech/polkadot-sdk.git", tag substrate-prometheus-endpoint = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } # Frontier -fp-evm = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } -fp-rpc = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } -fp-self-contained = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false, features = [ +fp-evm = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } +fp-rpc = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } +fp-self-contained = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false, features = [ "serde", ] } -fp-account = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } -fc-storage = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } -fc-db = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } -fc-consensus = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } -fp-dynamic-fee = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } -fc-api = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } -fc-rpc = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } -fc-rpc-core = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } -fc-mapping-sync = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } +fp-account = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } +fc-storage = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } +fc-db = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } +fc-consensus = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } +fp-dynamic-fee = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } +fc-api = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } +fc-rpc = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } +fc-rpc-core = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } +fc-mapping-sync = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } # Frontier FRAME -pallet-base-fee = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } -pallet-dynamic-fee = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } -pallet-ethereum = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } -pallet-evm = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } -pallet-evm-chain-id = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } -pallet-evm-precompile-modexp = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } -pallet-evm-precompile-sha3fips = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } -pallet-evm-precompile-simple = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } -pallet-hotfix-sufficients = { git = "https://github.com/gztensor/frontier", branch = "feat/adjustable-decimals", default-features = false } +pallet-base-fee = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } +pallet-dynamic-fee = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } +pallet-ethereum = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } +pallet-evm = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } +pallet-evm-chain-id = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } +pallet-evm-precompile-modexp = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } +pallet-evm-precompile-sha3fips = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } +pallet-evm-precompile-simple = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } +pallet-hotfix-sufficients = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } frame-metadata = "16" From a85e207b184313fdaa58945d45a249640b590321 Mon Sep 17 00:00:00 2001 From: Liam Date: Wed, 30 Oct 2024 15:55:11 +0400 Subject: [PATCH 54/60] fix: whitelist --- runtime/src/lib.rs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/runtime/src/lib.rs b/runtime/src/lib.rs index c87a5bb74..c39aa6896 100644 --- a/runtime/src/lib.rs +++ b/runtime/src/lib.rs @@ -1712,6 +1712,7 @@ impl_runtime_apis! { _ => (None, None), }; + let whitelist = pallet_evm::WhitelistedCreators::::get(); ::Runner::create( from, data, @@ -1721,6 +1722,7 @@ impl_runtime_apis! { max_priority_fee_per_gas, nonce, access_list.unwrap_or_default(), + whitelist, false, true, weight_limit, From dbb3ad33c9c61fb166590e03ee4dd342b6a6c2ed Mon Sep 17 00:00:00 2001 From: Greg Zaitsev Date: Wed, 30 Oct 2024 12:19:07 -0400 Subject: [PATCH 55/60] Reapply hotkey swap fix for childkey's parents --- pallets/subtensor/src/swap/swap_hotkey.rs | 15 +++- pallets/subtensor/tests/swap_hotkey.rs | 97 +++++++++++++++++++++++ 2 files changed, 111 insertions(+), 1 deletion(-) diff --git a/pallets/subtensor/src/swap/swap_hotkey.rs b/pallets/subtensor/src/swap/swap_hotkey.rs index efa6c53f8..b16c180c4 100644 --- a/pallets/subtensor/src/swap/swap_hotkey.rs +++ b/pallets/subtensor/src/swap/swap_hotkey.rs @@ -337,7 +337,20 @@ impl Pallet { // Remove the old hotkey's child entries ChildKeys::::remove(old_hotkey, netuid); // Insert the same child entries for the new hotkey - ChildKeys::::insert(new_hotkey, netuid, my_children); + ChildKeys::::insert(new_hotkey, netuid, my_children.clone()); + for (_, child_key_i) in my_children { + // For each child, update their parent list + let mut child_parents: Vec<(u64, T::AccountId)> = + ParentKeys::::get(child_key_i.clone(), netuid); + for parent in child_parents.iter_mut() { + // If the parent is the old hotkey, replace it with the new hotkey + if parent.1 == *old_hotkey { + parent.1 = new_hotkey.clone(); + } + } + // Update the child's parent list + ParentKeys::::insert(child_key_i, netuid, child_parents); + } } // 13. Swap ParentKeys. diff --git a/pallets/subtensor/tests/swap_hotkey.rs b/pallets/subtensor/tests/swap_hotkey.rs index bf5ecb301..53524c72c 100644 --- a/pallets/subtensor/tests/swap_hotkey.rs +++ b/pallets/subtensor/tests/swap_hotkey.rs @@ -1148,3 +1148,100 @@ fn test_swap_complex_parent_child_structure() { ); }); } + +#[test] +fn test_swap_parent_hotkey_childkey_maps() { + new_test_ext(1).execute_with(|| { + let netuid: u16 = 1; + let parent_old = U256::from(1); + let coldkey = U256::from(2); + let child = U256::from(3); + let parent_new = U256::from(4); + add_network(netuid, 0, 0); + SubtensorModule::create_account_if_non_existent(&coldkey, &parent_old); + + // Set child and verify state maps + assert_ok!(SubtensorModule::do_set_children( + RuntimeOrigin::signed(coldkey), + parent_old, + netuid, + vec![(u64::MAX, child)] + )); + assert_eq!( + ParentKeys::::get(child, netuid), + vec![(u64::MAX, parent_old)] + ); + assert_eq!( + ChildKeys::::get(parent_old, netuid), + vec![(u64::MAX, child)] + ); + + // Swap + let mut weight = Weight::zero(); + assert_ok!(SubtensorModule::perform_hotkey_swap( + &parent_old, + &parent_new, + &coldkey, + &mut weight + )); + + // Verify parent and child keys updates + assert_eq!( + ParentKeys::::get(child, netuid), + vec![(u64::MAX, parent_new)] + ); + assert_eq!( + ChildKeys::::get(parent_new, netuid), + vec![(u64::MAX, child)] + ); + }) +} + +#[test] +fn test_swap_child_hotkey_childkey_maps() { + new_test_ext(1).execute_with(|| { + let netuid: u16 = 1; + let parent = U256::from(1); + let coldkey = U256::from(2); + let child_old = U256::from(3); + let child_new = U256::from(4); + add_network(netuid, 0, 0); + SubtensorModule::create_account_if_non_existent(&coldkey, &child_old); + SubtensorModule::create_account_if_non_existent(&coldkey, &parent); + + // Set child and verify state maps + assert_ok!(SubtensorModule::do_set_children( + RuntimeOrigin::signed(coldkey), + parent, + netuid, + vec![(u64::MAX, child_old)] + )); + assert_eq!( + ParentKeys::::get(child_old, netuid), + vec![(u64::MAX, parent)] + ); + assert_eq!( + ChildKeys::::get(parent, netuid), + vec![(u64::MAX, child_old)] + ); + + // Swap + let mut weight = Weight::zero(); + assert_ok!(SubtensorModule::perform_hotkey_swap( + &child_old, + &child_new, + &coldkey, + &mut weight + )); + + // Verify parent and child keys updates + assert_eq!( + ParentKeys::::get(child_new, netuid), + vec![(u64::MAX, parent)] + ); + assert_eq!( + ChildKeys::::get(parent, netuid), + vec![(u64::MAX, child_new)] + ); + }) +} From 2ad1381d50d48e99a2c196560087ffc853c74232 Mon Sep 17 00:00:00 2001 From: Sam Johnson Date: Wed, 30 Oct 2024 13:18:08 -0400 Subject: [PATCH 56/60] separate out cargo-audit so it can be canceled via label --- .github/workflows/cargo-audit.yml | 42 +++++++++++++++++++++++++++++++ .github/workflows/check-rust.yml | 31 ----------------------- 2 files changed, 42 insertions(+), 31 deletions(-) create mode 100644 .github/workflows/cargo-audit.yml diff --git a/.github/workflows/cargo-audit.yml b/.github/workflows/cargo-audit.yml new file mode 100644 index 000000000..4687eee59 --- /dev/null +++ b/.github/workflows/cargo-audit.yml @@ -0,0 +1,42 @@ +name: cargo audit +on: + pull_request: + types: + - labeled + - unlabeled + - synchronize +concurrency: + group: cargo-audit-${{ github.ref }} + cancel-in-progress: true + +jobs: + cargo-audit: + name: cargo audit + runs-on: SubtensorCI + if: ${{ !contains(github.event.pull_request.labels.*.name, 'skip-cargo-audit') }} + steps: + - name: Check-out repositoroy under $GITHUB_WORKSPACE + uses: actions/checkout@v4 + + - name: Install dependencies + run: | + sudo apt-get update && + sudo apt-get install -y clang curl libssl-dev llvm libudev-dev protobuf-compiler + + - name: Install Rust Stable + uses: actions-rs/toolchain@v1.0.6 + with: + toolchain: stable + components: rustfmt, clippy + profile: minimal + + - name: Utilize Shared Rust Cache + uses: Swatinem/rust-cache@v2.2.1 + with: + key: ubuntu-latest-${{ env.RUST_BIN_DIR }} + + - name: Install cargo-audit + run: cargo install cargo-audit + + - name: cargo audit + run: cargo audit --ignore RUSTSEC-2024-0336 # rustls issue; wait for upstream to resolve this diff --git a/.github/workflows/check-rust.yml b/.github/workflows/check-rust.yml index b6a627314..80d543163 100644 --- a/.github/workflows/check-rust.yml +++ b/.github/workflows/check-rust.yml @@ -208,37 +208,6 @@ jobs: - name: cargo clippy --workspace --all-targets --all-features -- -D warnings run: cargo clippy --workspace --all-targets --all-features -- -D warnings - # runs cargo audit - cargo-audit: - name: cargo audit - runs-on: SubtensorCI - if: ${{ github.event_name != 'push' && !contains(github.event.pull_request.labels.*.name, 'skip-cargo-audit') }} - steps: - - name: Check-out repositoroy under $GITHUB_WORKSPACE - uses: actions/checkout@v4 - - - name: Install dependencies - run: | - sudo apt-get update && - sudo apt-get install -y clang curl libssl-dev llvm libudev-dev protobuf-compiler - - - name: Install Rust Stable - uses: actions-rs/toolchain@v1.0.6 - with: - toolchain: stable - components: rustfmt, clippy - profile: minimal - - - name: Utilize Shared Rust Cache - uses: Swatinem/rust-cache@v2.2.1 - with: - key: ubuntu-latest-${{ env.RUST_BIN_DIR }} - - - name: Install cargo-audit - run: cargo install cargo-audit - - - name: cargo audit - run: cargo audit --ignore RUSTSEC-2024-0336 # rustls issue; wait for upstream to resolve this # runs cargo test --workspace cargo-test: From f58977b8ed123450aee4a29c43d5dd3c0cac7835 Mon Sep 17 00:00:00 2001 From: Liam Date: Thu, 31 Oct 2024 10:35:38 +0400 Subject: [PATCH 57/60] pin frontier version --- Cargo.lock | 3659 ++++++++++++++-------------------------------------- Cargo.toml | 42 +- 2 files changed, 998 insertions(+), 2703 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index ad97a4a85..6bca0feec 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -125,15 +125,6 @@ dependencies = [ "libc", ] -[[package]] -name = "ansi_term" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2" -dependencies = [ - "winapi", -] - [[package]] name = "anstream" version = "0.6.15" @@ -602,15 +593,6 @@ version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" -[[package]] -name = "beef" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a8241f3ebb85c056b509d4327ad0358fbbba6ffb340bf388f26350aeda225b1" -dependencies = [ - "serde", -] - [[package]] name = "bincode" version = "1.3.3" @@ -2171,35 +2153,35 @@ checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6" [[package]] name = "fc-api" version = "1.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" +source = "git+https://github.com/gztensor/frontier?rev=b8e3025#b8e3025aa30ea65144372bd68d26090c0f31bea2" dependencies = [ "async-trait", "fp-storage", "parity-scale-codec", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", + "sp-core", + "sp-runtime", ] [[package]] name = "fc-consensus" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" +source = "git+https://github.com/gztensor/frontier?rev=b8e3025#b8e3025aa30ea65144372bd68d26090c0f31bea2" dependencies = [ "async-trait", "fp-consensus", "fp-rpc", - "sc-consensus 0.43.0", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-block-builder 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", + "sc-consensus", + "sp-api", + "sp-block-builder", + "sp-consensus", + "sp-runtime", "thiserror", ] [[package]] name = "fc-db" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" +source = "git+https://github.com/gztensor/frontier?rev=b8e3025#b8e3025aa30ea65144372bd68d26090c0f31bea2" dependencies = [ "async-trait", "ethereum", @@ -2214,14 +2196,14 @@ dependencies = [ "parity-db", "parity-scale-codec", "parking_lot 0.12.3", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-client-db 0.44.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-client-api", + "sc-client-db", "smallvec", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-database 10.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", + "sp-api", + "sp-blockchain", + "sp-core", + "sp-database", + "sp-runtime", "sqlx", "tokio", ] @@ -2229,7 +2211,7 @@ dependencies = [ [[package]] name = "fc-mapping-sync" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" +source = "git+https://github.com/gztensor/frontier?rev=b8e3025#b8e3025aa30ea65144372bd68d26090c0f31bea2" dependencies = [ "fc-db", "fc-storage", @@ -2239,20 +2221,20 @@ dependencies = [ "futures-timer", "log", "parking_lot 0.12.3", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", + "sc-client-api", + "sc-utils", + "sp-api", + "sp-blockchain", + "sp-consensus", + "sp-core", + "sp-runtime", "tokio", ] [[package]] name = "fc-rpc" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" +source = "git+https://github.com/gztensor/frontier?rev=b8e3025#b8e3025aa30ea65144372bd68d26090c0f31bea2" dependencies = [ "ethereum", "ethereum-types", @@ -2266,7 +2248,7 @@ dependencies = [ "fp-storage", "futures", "hex", - "jsonrpsee 0.23.2", + "jsonrpsee", "libsecp256k1", "log", "pallet-evm", @@ -2274,31 +2256,31 @@ dependencies = [ "prometheus", "rand", "rlp", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-consensus-aura 0.44.0", - "sc-network 0.44.0", - "sc-network-sync 0.43.0", - "sc-rpc 39.0.0", - "sc-service 0.45.0", - "sc-transaction-pool 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-client-api", + "sc-consensus-aura", + "sc-network", + "sc-network-sync", + "sc-rpc", + "sc-service", + "sc-transaction-pool", + "sc-transaction-pool-api", + "sc-utils", "schnellru", "serde", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-block-builder 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-consensus-aura 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-timestamp 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-api", + "sp-block-builder", + "sp-blockchain", + "sp-consensus", + "sp-consensus-aura", + "sp-core", + "sp-externalities", + "sp-inherents", + "sp-io", + "sp-runtime", + "sp-state-machine", + "sp-storage", + "sp-timestamp", + "substrate-prometheus-endpoint", "thiserror", "tokio", ] @@ -2306,33 +2288,33 @@ dependencies = [ [[package]] name = "fc-rpc-core" version = "1.1.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" +source = "git+https://github.com/gztensor/frontier?rev=b8e3025#b8e3025aa30ea65144372bd68d26090c0f31bea2" dependencies = [ "ethereum", "ethereum-types", - "jsonrpsee 0.23.2", + "jsonrpsee", "rlp", "rustc-hex", "serde", "serde_json", - "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", ] [[package]] name = "fc-storage" version = "1.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" +source = "git+https://github.com/gztensor/frontier?rev=b8e3025#b8e3025aa30ea65144372bd68d26090c0f31bea2" dependencies = [ "ethereum", "ethereum-types", "fp-rpc", "fp-storage", "parity-scale-codec", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-client-api", + "sp-api", + "sp-io", + "sp-runtime", + "sp-storage", ] [[package]] @@ -2482,14 +2464,6 @@ dependencies = [ "parity-scale-codec", ] -[[package]] -name = "fork-tree" -version = "13.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "parity-scale-codec", -] - [[package]] name = "form_urlencoded" version = "1.2.1" @@ -2512,7 +2486,7 @@ dependencies = [ [[package]] name = "fp-account" version = "1.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" +source = "git+https://github.com/gztensor/frontier?rev=b8e3025#b8e3025aa30ea65144372bd68d26090c0f31bea2" dependencies = [ "hex", "impl-serde", @@ -2521,93 +2495,93 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core", + "sp-io", + "sp-runtime", + "sp-runtime-interface", "staging-xcm", ] [[package]] name = "fp-consensus" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" +source = "git+https://github.com/gztensor/frontier?rev=b8e3025#b8e3025aa30ea65144372bd68d26090c0f31bea2" dependencies = [ "ethereum", "parity-scale-codec", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", + "sp-core", + "sp-runtime", ] [[package]] name = "fp-dynamic-fee" version = "1.0.0" -source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" +source = "git+https://github.com/gztensor/frontier?rev=b8e3025#b8e3025aa30ea65144372bd68d26090c0f31bea2" dependencies = [ "async-trait", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core", + "sp-inherents", ] [[package]] name = "fp-ethereum" version = "1.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" +source = "git+https://github.com/gztensor/frontier?rev=b8e3025#b8e3025aa30ea65144372bd68d26090c0f31bea2" dependencies = [ "ethereum", "ethereum-types", "fp-evm", - "frame-support 37.0.1", + "frame-support", "parity-scale-codec", ] [[package]] name = "fp-evm" version = "3.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" +source = "git+https://github.com/gztensor/frontier?rev=b8e3025#b8e3025aa30ea65144372bd68d26090c0f31bea2" dependencies = [ "evm", - "frame-support 37.0.1", + "frame-support", "num_enum", "parity-scale-codec", "scale-info", "serde", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", + "sp-core", + "sp-runtime", ] [[package]] name = "fp-rpc" version = "3.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" +source = "git+https://github.com/gztensor/frontier?rev=b8e3025#b8e3025aa30ea65144372bd68d26090c0f31bea2" dependencies = [ "ethereum", "ethereum-types", "fp-evm", "parity-scale-codec", "scale-info", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-api", + "sp-core", + "sp-runtime", + "sp-state-machine", ] [[package]] name = "fp-self-contained" version = "1.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" +source = "git+https://github.com/gztensor/frontier?rev=b8e3025#b8e3025aa30ea65144372bd68d26090c0f31bea2" dependencies = [ - "frame-support 37.0.1", + "frame-support", "parity-scale-codec", "scale-info", "serde", - "sp-runtime 39.0.2", + "sp-runtime", ] [[package]] name = "fp-storage" version = "2.0.0" -source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" +source = "git+https://github.com/gztensor/frontier?rev=b8e3025#b8e3025aa30ea65144372bd68d26090c0f31bea2" dependencies = [ "parity-scale-codec", "serde", @@ -2619,51 +2593,27 @@ version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa" -[[package]] -name = "frame-benchmarking" -version = "37.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "frame-support 37.0.1", - "frame-support-procedural 30.0.4", - "frame-system 37.1.0", - "linregress", - "log", - "parity-scale-codec", - "paste", - "scale-info", - "serde", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "static_assertions", -] - [[package]] name = "frame-benchmarking" version = "38.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-support 38.0.0", - "frame-support-procedural 30.0.3", - "frame-system 38.0.0", + "frame-support", + "frame-support-procedural", + "frame-system", "linregress", "log", "parity-scale-codec", "paste", "scale-info", "serde", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-api", + "sp-application-crypto", + "sp-core", + "sp-io", + "sp-runtime", + "sp-runtime-interface", + "sp-storage", "static_assertions", ] @@ -2677,9 +2627,9 @@ dependencies = [ "chrono", "clap", "comfy-table", - "frame-benchmarking 38.0.0", - "frame-support 38.0.0", - "frame-system 38.0.0", + "frame-benchmarking", + "frame-support", + "frame-system", "gethostname", "handlebars", "itertools 0.11.0", @@ -2689,30 +2639,30 @@ dependencies = [ "parity-scale-codec", "rand", "rand_pcg", - "sc-block-builder 0.42.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-chain-spec 38.0.0", + "sc-block-builder", + "sc-chain-spec", "sc-cli", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-client-db 0.44.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-executor 0.40.1", - "sc-service 0.46.0", - "sc-sysinfo 38.0.0", + "sc-client-api", + "sc-client-db", + "sc-executor", + "sc-service", + "sc-sysinfo", "serde", "serde_json", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-database 10.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-genesis-builder 0.15.1", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-wasm-interface 21.0.1", + "sp-api", + "sp-blockchain", + "sp-core", + "sp-database", + "sp-externalities", + "sp-genesis-builder", + "sp-inherents", + "sp-io", + "sp-keystore", + "sp-runtime", + "sp-state-machine", + "sp-storage", + "sp-trie", + "sp-wasm-interface", "thiserror", "thousands", ] @@ -2723,16 +2673,16 @@ version = "38.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "aquamarine", - "frame-support 38.0.0", - "frame-system 38.0.0", + "frame-support", + "frame-system", "frame-try-runtime", "log", "parity-scale-codec", "scale-info", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-tracing 17.0.1", + "sp-core", + "sp-io", + "sp-runtime", + "sp-tracing", ] [[package]] @@ -2754,53 +2704,12 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable dependencies = [ "array-bytes", "docify", - "frame-support 38.0.0", - "frame-system 38.0.0", - "log", - "parity-scale-codec", - "scale-info", - "sp-runtime 39.0.1", -] - -[[package]] -name = "frame-support" -version = "37.0.1" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "aquamarine", - "array-bytes", - "bitflags 1.3.2", - "docify", - "environmental", - "frame-metadata", - "frame-support-procedural 30.0.4", - "impl-trait-for-tuples", - "k256", + "frame-support", + "frame-system", "log", - "macro_magic", "parity-scale-codec", - "paste", "scale-info", - "serde", - "serde_json", - "smallvec", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-crypto-hashing-proc-macro 0.1.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-genesis-builder 0.15.0", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-metadata-ir 0.7.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-staking 34.0.0", - "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-tracing 17.0.0", - "sp-weights 31.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "static_assertions", - "tt-call", + "sp-runtime", ] [[package]] @@ -2814,7 +2723,7 @@ dependencies = [ "docify", "environmental", "frame-metadata", - "frame-support-procedural 30.0.3", + "frame-support-procedural", "impl-trait-for-tuples", "k256", "log", @@ -2825,21 +2734,21 @@ dependencies = [ "serde", "serde_json", "smallvec", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-crypto-hashing-proc-macro 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-genesis-builder 0.15.1", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-metadata-ir 0.7.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-staking 36.0.0", - "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-tracing 17.0.1", - "sp-weights 31.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-api", + "sp-arithmetic", + "sp-core", + "sp-crypto-hashing-proc-macro", + "sp-debug-derive", + "sp-genesis-builder", + "sp-inherents", + "sp-io", + "sp-metadata-ir", + "sp-runtime", + "sp-staking", + "sp-state-machine", + "sp-std", + "sp-tracing", + "sp-weights", "static_assertions", "tt-call", ] @@ -2854,7 +2763,7 @@ dependencies = [ "derive-syn-parse", "docify", "expander", - "frame-support-procedural-tools 13.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "frame-support-procedural-tools 13.0.0", "itertools 0.11.0", "macro_magic", "proc-macro-warning 1.0.2", @@ -2864,25 +2773,6 @@ dependencies = [ "syn 2.0.79", ] -[[package]] -name = "frame-support-procedural" -version = "30.0.4" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "Inflector", - "cfg-expr", - "derive-syn-parse", - "expander", - "frame-support-procedural-tools 13.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "itertools 0.11.0", - "macro_magic", - "proc-macro-warning 1.0.2", - "proc-macro2", - "quote", - "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "syn 2.0.79", -] - [[package]] name = "frame-support-procedural-tools" version = "10.0.0" @@ -2901,19 +2791,7 @@ name = "frame-support-procedural-tools" version = "13.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-support-procedural-tools-derive 12.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "proc-macro-crate 3.2.0", - "proc-macro2", - "quote", - "syn 2.0.79", -] - -[[package]] -name = "frame-support-procedural-tools" -version = "13.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "frame-support-procedural-tools-derive 12.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "frame-support-procedural-tools-derive 12.0.0", "proc-macro-crate 3.2.0", "proc-macro2", "quote", @@ -2941,36 +2819,6 @@ dependencies = [ "syn 2.0.79", ] -[[package]] -name = "frame-support-procedural-tools-derive" -version = "12.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.79", -] - -[[package]] -name = "frame-system" -version = "37.1.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "cfg-if", - "docify", - "frame-support 37.0.1", - "log", - "parity-scale-codec", - "scale-info", - "serde", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-weights 31.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", -] - [[package]] name = "frame-system" version = "38.0.0" @@ -2978,17 +2826,17 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable dependencies = [ "cfg-if", "docify", - "frame-support 38.0.0", + "frame-support", "log", "parity-scale-codec", "scale-info", "serde", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-weights 31.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", + "sp-version", + "sp-weights", ] [[package]] @@ -2996,13 +2844,13 @@ name = "frame-system-benchmarking" version = "38.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-benchmarking 38.0.0", - "frame-support 38.0.0", - "frame-system 38.0.0", + "frame-benchmarking", + "frame-support", + "frame-system", "parity-scale-codec", "scale-info", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", + "sp-core", + "sp-runtime", ] [[package]] @@ -3012,7 +2860,7 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable dependencies = [ "docify", "parity-scale-codec", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-api", ] [[package]] @@ -3020,10 +2868,10 @@ name = "frame-try-runtime" version = "0.44.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-support 38.0.0", + "frame-support", "parity-scale-codec", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", + "sp-api", + "sp-runtime", ] [[package]] @@ -3437,14 +3285,20 @@ dependencies = [ "hashbrown 0.14.5", ] +[[package]] +name = "hashlink" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ba4ff7128dee98c7dc9794b6a411377e1404dba1c97deb8d1a55297bd25d8af" +dependencies = [ + "hashbrown 0.14.5", +] + [[package]] name = "heck" version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" -dependencies = [ - "unicode-segmentation", -] [[package]] name = "heck" @@ -3998,55 +3852,16 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "jsonrpsee" -version = "0.23.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62b089779ad7f80768693755a031cc14a7766aba707cbe886674e3f79e9b7e47" -dependencies = [ - "jsonrpsee-core 0.23.2", - "jsonrpsee-proc-macros 0.23.2", - "jsonrpsee-server 0.23.2", - "jsonrpsee-types 0.23.2", - "tokio", - "tracing", -] - [[package]] name = "jsonrpsee" version = "0.24.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c5c71d8c1a731cc4227c2f698d377e7848ca12c8a48866fc5e6951c43a4db843" dependencies = [ - "jsonrpsee-core 0.24.7", - "jsonrpsee-proc-macros 0.24.7", - "jsonrpsee-server 0.24.7", - "jsonrpsee-types 0.24.7", - "tokio", - "tracing", -] - -[[package]] -name = "jsonrpsee-core" -version = "0.23.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79712302e737d23ca0daa178e752c9334846b08321d439fd89af9a384f8c830b" -dependencies = [ - "anyhow", - "async-trait", - "beef", - "bytes", - "futures-util", - "http 1.1.0", - "http-body 1.0.1", - "http-body-util", - "jsonrpsee-types 0.23.2", - "parking_lot 0.12.3", - "rand", - "rustc-hash 1.1.0", - "serde", - "serde_json", - "thiserror", + "jsonrpsee-core", + "jsonrpsee-proc-macros", + "jsonrpsee-server", + "jsonrpsee-types", "tokio", "tracing", ] @@ -4063,7 +3878,7 @@ dependencies = [ "http 1.1.0", "http-body 1.0.1", "http-body-util", - "jsonrpsee-types 0.24.7", + "jsonrpsee-types", "parking_lot 0.12.3", "rand", "rustc-hash 2.0.0", @@ -4074,19 +3889,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "jsonrpsee-proc-macros" -version = "0.23.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7895f186d5921065d96e16bd795e5ca89ac8356ec423fafc6e3d7cf8ec11aee4" -dependencies = [ - "heck 0.5.0", - "proc-macro-crate 3.2.0", - "proc-macro2", - "quote", - "syn 2.0.79", -] - [[package]] name = "jsonrpsee-proc-macros" version = "0.24.7" @@ -4100,34 +3902,6 @@ dependencies = [ "syn 2.0.79", ] -[[package]] -name = "jsonrpsee-server" -version = "0.23.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "654afab2e92e5d88ebd8a39d6074483f3f2bfdf91c5ac57fe285e7127cdd4f51" -dependencies = [ - "anyhow", - "futures-util", - "http 1.1.0", - "http-body 1.0.1", - "http-body-util", - "hyper 1.5.0", - "hyper-util", - "jsonrpsee-core 0.23.2", - "jsonrpsee-types 0.23.2", - "pin-project", - "route-recognizer", - "serde", - "serde_json", - "soketto", - "thiserror", - "tokio", - "tokio-stream", - "tokio-util", - "tower", - "tracing", -] - [[package]] name = "jsonrpsee-server" version = "0.24.7" @@ -4140,8 +3914,8 @@ dependencies = [ "http-body-util", "hyper 1.5.0", "hyper-util", - "jsonrpsee-core 0.24.7", - "jsonrpsee-types 0.24.7", + "jsonrpsee-core", + "jsonrpsee-types", "pin-project", "route-recognizer", "serde", @@ -4155,19 +3929,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "jsonrpsee-types" -version = "0.23.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9c465fbe385238e861fdc4d1c85e04ada6c1fd246161d26385c1b311724d2af" -dependencies = [ - "beef", - "http 1.1.0", - "serde", - "serde_json", - "thiserror", -] - [[package]] name = "jsonrpsee-types" version = "0.24.7" @@ -4786,9 +4547,9 @@ dependencies = [ [[package]] name = "libsqlite3-sys" -version = "0.27.0" +version = "0.30.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf4e226dcd58b4be396f7bd3c20da8fdee2911400705297ba7d2d7cc2c30f716" +checksum = "2e99fb7a497b1e3339bc746195567ed8d3e24945ecd636e3619d20b9de9e9149" dependencies = [ "cc", "pkg-config", @@ -5185,7 +4946,7 @@ dependencies = [ "c2-chacha", "curve25519-dalek", "either", - "hashlink", + "hashlink 0.8.4", "lioness", "log", "parking_lot 0.12.3", @@ -5548,13 +5309,13 @@ dependencies = [ "fc-storage", "fp-dynamic-fee", "fp-rpc", - "frame-benchmarking 38.0.0", + "frame-benchmarking", "frame-benchmarking-cli", "frame-metadata-hash-extension", - "frame-system 38.0.0", + "frame-system", "frame-system-rpc-runtime-api", "futures", - "jsonrpsee 0.24.7", + "jsonrpsee", "memmap2 0.9.5", "node-subtensor-runtime", "pallet-commitments", @@ -5563,47 +5324,47 @@ dependencies = [ "pallet-transaction-payment-rpc-runtime-api", "parity-scale-codec", "sc-basic-authorship", - "sc-chain-spec 38.0.0", - "sc-chain-spec-derive 12.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-chain-spec", + "sc-chain-spec-derive", "sc-cli", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-consensus 0.44.0", - "sc-consensus-aura 0.45.0", + "sc-client-api", + "sc-consensus", + "sc-consensus-aura", "sc-consensus-grandpa", "sc-consensus-grandpa-rpc", "sc-consensus-manual-seal", - "sc-consensus-slots 0.44.0", - "sc-executor 0.40.1", - "sc-keystore 33.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-network 0.45.0", - "sc-network-sync 0.44.0", + "sc-consensus-slots", + "sc-executor", + "sc-keystore", + "sc-network", + "sc-network-sync", "sc-offchain", - "sc-rpc 40.0.0", - "sc-rpc-api 0.44.0", - "sc-service 0.46.0", - "sc-telemetry 25.0.0", - "sc-transaction-pool 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-rpc", + "sc-rpc-api", + "sc-service", + "sc-telemetry", + "sc-transaction-pool", + "sc-transaction-pool-api", "serde", "serde_json", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-block-builder 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus-aura 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus-grandpa 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-api", + "sp-block-builder", + "sp-blockchain", + "sp-consensus", + "sp-consensus-aura", + "sp-consensus-grandpa", + "sp-core", + "sp-inherents", + "sp-io", "sp-keyring", - "sp-offchain 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-session 36.0.0", - "sp-timestamp 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-transaction-pool 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-offchain", + "sp-runtime", + "sp-session", + "sp-timestamp", + "sp-transaction-pool", "substrate-build-script-utils", "substrate-frame-rpc-system", - "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "substrate-prometheus-endpoint", "subtensor-custom-rpc", "subtensor-custom-rpc-runtime-api", ] @@ -5617,12 +5378,12 @@ dependencies = [ "fp-evm", "fp-rpc", "fp-self-contained", - "frame-benchmarking 38.0.0", + "frame-benchmarking", "frame-executive", "frame-metadata", "frame-metadata-hash-extension", - "frame-support 38.0.0", - "frame-system 38.0.0", + "frame-support", + "frame-system", "frame-system-benchmarking", "frame-system-rpc-runtime-api", "frame-try-runtime", @@ -5660,21 +5421,21 @@ dependencies = [ "scale-info", "serde_json", "smallvec", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-block-builder 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus-aura 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-genesis-builder 0.15.1", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-offchain 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-session 36.0.0", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-tracing 17.0.1", - "sp-transaction-pool 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-api", + "sp-block-builder", + "sp-consensus-aura", + "sp-core", + "sp-genesis-builder", + "sp-inherents", + "sp-io", + "sp-offchain", + "sp-runtime", + "sp-session", + "sp-std", + "sp-storage", + "sp-tracing", + "sp-transaction-pool", + "sp-version", "substrate-wasm-builder", "subtensor-custom-rpc-runtime-api", "subtensor-macros", @@ -5981,22 +5742,22 @@ checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" name = "pallet-admin-utils" version = "4.0.0-dev" dependencies = [ - "frame-benchmarking 38.0.0", - "frame-support 38.0.0", - "frame-system 38.0.0", + "frame-benchmarking", + "frame-support", + "frame-system", "log", "pallet-balances", "pallet-scheduler", "pallet-subtensor", "parity-scale-codec", "scale-info", - "sp-consensus-aura 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-tracing 17.0.1", - "sp-weights 31.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus-aura", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", + "sp-tracing", + "sp-weights", "substrate-fixed", "subtensor-macros", ] @@ -6006,15 +5767,15 @@ name = "pallet-aura" version = "37.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-support 38.0.0", - "frame-system 38.0.0", + "frame-support", + "frame-system", "log", "pallet-timestamp", "parity-scale-codec", "scale-info", - "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus-aura 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", + "sp-application-crypto", + "sp-consensus-aura", + "sp-runtime", ] [[package]] @@ -6022,12 +5783,12 @@ name = "pallet-authorship" version = "38.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-support 38.0.0", - "frame-system 38.0.0", + "frame-support", + "frame-system", "impl-trait-for-tuples", "parity-scale-codec", "scale-info", - "sp-runtime 39.0.1", + "sp-runtime", ] [[package]] @@ -6036,43 +5797,43 @@ version = "39.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "docify", - "frame-benchmarking 38.0.0", - "frame-support 38.0.0", - "frame-system 38.0.0", + "frame-benchmarking", + "frame-support", + "frame-system", "log", "parity-scale-codec", "scale-info", - "sp-runtime 39.0.1", + "sp-runtime", ] [[package]] name = "pallet-base-fee" version = "1.0.0" -source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" +source = "git+https://github.com/gztensor/frontier?rev=b8e3025#b8e3025aa30ea65144372bd68d26090c0f31bea2" dependencies = [ "fp-evm", - "frame-support 37.0.1", - "frame-system 37.1.0", + "frame-support", + "frame-system", "parity-scale-codec", "scale-info", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", + "sp-core", + "sp-runtime", ] [[package]] name = "pallet-collective" version = "4.0.0-dev" dependencies = [ - "frame-benchmarking 38.0.0", - "frame-support 38.0.0", - "frame-system 38.0.0", + "frame-benchmarking", + "frame-support", + "frame-system", "log", "parity-scale-codec", "scale-info", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", "subtensor-macros", ] @@ -6081,38 +5842,38 @@ name = "pallet-commitments" version = "4.0.0-dev" dependencies = [ "enumflags2", - "frame-benchmarking 38.0.0", - "frame-support 38.0.0", - "frame-system 38.0.0", + "frame-benchmarking", + "frame-support", + "frame-system", "pallet-balances", "parity-scale-codec", "scale-info", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", "subtensor-macros", ] [[package]] name = "pallet-dynamic-fee" version = "4.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" +source = "git+https://github.com/gztensor/frontier?rev=b8e3025#b8e3025aa30ea65144372bd68d26090c0f31bea2" dependencies = [ "fp-dynamic-fee", "fp-evm", - "frame-support 37.0.1", - "frame-system 37.1.0", + "frame-support", + "frame-system", "parity-scale-codec", "scale-info", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core", + "sp-inherents", ] [[package]] name = "pallet-ethereum" version = "4.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" +source = "git+https://github.com/gztensor/frontier?rev=b8e3025#b8e3025aa30ea65144372bd68d26090c0f31bea2" dependencies = [ "ethereum", "ethereum-types", @@ -6122,45 +5883,45 @@ dependencies = [ "fp-evm", "fp-rpc", "fp-storage", - "frame-support 37.0.1", - "frame-system 37.1.0", + "frame-support", + "frame-system", "pallet-evm", "parity-scale-codec", "scale-info", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", + "sp-io", + "sp-runtime", ] [[package]] name = "pallet-evm" version = "6.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" +source = "git+https://github.com/gztensor/frontier?rev=b8e3025#b8e3025aa30ea65144372bd68d26090c0f31bea2" dependencies = [ "environmental", "evm", "fp-account", "fp-evm", - "frame-benchmarking 37.0.0", - "frame-support 37.0.1", - "frame-system 37.1.0", + "frame-benchmarking", + "frame-support", + "frame-system", "hash-db", "hex-literal", "impl-trait-for-tuples", "log", "parity-scale-codec", "scale-info", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", + "sp-core", + "sp-io", + "sp-runtime", ] [[package]] name = "pallet-evm-chain-id" version = "1.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" +source = "git+https://github.com/gztensor/frontier?rev=b8e3025#b8e3025aa30ea65144372bd68d26090c0f31bea2" dependencies = [ - "frame-support 37.0.1", - "frame-system 37.1.0", + "frame-support", + "frame-system", "parity-scale-codec", "scale-info", ] @@ -6168,7 +5929,7 @@ dependencies = [ [[package]] name = "pallet-evm-precompile-modexp" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" +source = "git+https://github.com/gztensor/frontier?rev=b8e3025#b8e3025aa30ea65144372bd68d26090c0f31bea2" dependencies = [ "fp-evm", "num", @@ -6177,7 +5938,7 @@ dependencies = [ [[package]] name = "pallet-evm-precompile-sha3fips" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" +source = "git+https://github.com/gztensor/frontier?rev=b8e3025#b8e3025aa30ea65144372bd68d26090c0f31bea2" dependencies = [ "fp-evm", "tiny-keccak", @@ -6186,11 +5947,11 @@ dependencies = [ [[package]] name = "pallet-evm-precompile-simple" version = "2.0.0-dev" -source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" +source = "git+https://github.com/gztensor/frontier?rev=b8e3025#b8e3025aa30ea65144372bd68d26090c0f31bea2" dependencies = [ "fp-evm", "ripemd", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-io", ] [[package]] @@ -6198,36 +5959,36 @@ name = "pallet-grandpa" version = "38.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-benchmarking 38.0.0", - "frame-support 38.0.0", - "frame-system 38.0.0", + "frame-benchmarking", + "frame-support", + "frame-system", "log", "pallet-authorship", "pallet-session", "parity-scale-codec", "scale-info", - "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus-grandpa 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-session 36.0.0", - "sp-staking 36.0.0", + "sp-application-crypto", + "sp-consensus-grandpa", + "sp-core", + "sp-io", + "sp-runtime", + "sp-session", + "sp-staking", ] [[package]] name = "pallet-hotfix-sufficients" version = "1.0.0" -source = "git+https://github.com/gztensor/frontier?branch=master#75ac31da7314bd3fe858295759d2f276c5617c2e" +source = "git+https://github.com/gztensor/frontier?rev=b8e3025#b8e3025aa30ea65144372bd68d26090c0f31bea2" dependencies = [ - "frame-benchmarking 37.0.0", - "frame-support 37.0.1", - "frame-system 37.1.0", + "frame-benchmarking", + "frame-support", + "frame-system", "pallet-evm", "parity-scale-codec", "scale-info", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", + "sp-core", + "sp-runtime", ] [[package]] @@ -6235,12 +5996,12 @@ name = "pallet-insecure-randomness-collective-flip" version = "26.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-support 38.0.0", - "frame-system 38.0.0", + "frame-support", + "frame-system", "parity-scale-codec", "safe-mix", "scale-info", - "sp-runtime 39.0.1", + "sp-runtime", ] [[package]] @@ -6248,15 +6009,15 @@ name = "pallet-membership" version = "38.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-benchmarking 38.0.0", - "frame-support 38.0.0", - "frame-system 38.0.0", + "frame-benchmarking", + "frame-support", + "frame-system", "log", "parity-scale-codec", "scale-info", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", + "sp-core", + "sp-io", + "sp-runtime", ] [[package]] @@ -6264,14 +6025,14 @@ name = "pallet-multisig" version = "38.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-benchmarking 38.0.0", - "frame-support 38.0.0", - "frame-system 38.0.0", + "frame-benchmarking", + "frame-support", + "frame-system", "log", "parity-scale-codec", "scale-info", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", + "sp-io", + "sp-runtime", ] [[package]] @@ -6279,15 +6040,15 @@ name = "pallet-preimage" version = "38.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-benchmarking 38.0.0", - "frame-support 38.0.0", - "frame-system 38.0.0", + "frame-benchmarking", + "frame-support", + "frame-system", "log", "parity-scale-codec", "scale-info", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", + "sp-core", + "sp-io", + "sp-runtime", ] [[package]] @@ -6295,13 +6056,13 @@ name = "pallet-proxy" version = "38.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-benchmarking 38.0.0", - "frame-support 38.0.0", - "frame-system 38.0.0", + "frame-benchmarking", + "frame-support", + "frame-system", "parity-scale-codec", "scale-info", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", + "sp-io", + "sp-runtime", ] [[package]] @@ -6309,15 +6070,15 @@ name = "pallet-registry" version = "4.0.0-dev" dependencies = [ "enumflags2", - "frame-benchmarking 38.0.0", - "frame-support 38.0.0", - "frame-system 38.0.0", + "frame-benchmarking", + "frame-support", + "frame-system", "parity-scale-codec", "scale-info", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", "subtensor-macros", ] @@ -6327,16 +6088,16 @@ version = "19.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "docify", - "frame-benchmarking 38.0.0", - "frame-support 38.0.0", - "frame-system 38.0.0", + "frame-benchmarking", + "frame-support", + "frame-system", "pallet-balances", "pallet-proxy", "pallet-utility", "parity-scale-codec", "scale-info", - "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", + "sp-arithmetic", + "sp-runtime", ] [[package]] @@ -6345,15 +6106,15 @@ version = "39.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "docify", - "frame-benchmarking 38.0.0", - "frame-support 38.0.0", - "frame-system 38.0.0", + "frame-benchmarking", + "frame-support", + "frame-system", "log", "parity-scale-codec", "scale-info", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-weights 31.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-io", + "sp-runtime", + "sp-weights", ] [[package]] @@ -6361,29 +6122,29 @@ name = "pallet-session" version = "38.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-support 38.0.0", - "frame-system 38.0.0", + "frame-support", + "frame-system", "impl-trait-for-tuples", "log", "pallet-timestamp", "parity-scale-codec", "scale-info", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-session 36.0.0", - "sp-staking 36.0.0", - "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core", + "sp-io", + "sp-runtime", + "sp-session", + "sp-staking", + "sp-state-machine", + "sp-trie", ] [[package]] name = "pallet-subtensor" version = "4.0.0-dev" dependencies = [ - "frame-benchmarking 38.0.0", - "frame-support 38.0.0", - "frame-system 38.0.0", + "frame-benchmarking", + "frame-support", + "frame-system", "hex", "hex-literal", "log", @@ -6405,12 +6166,12 @@ dependencies = [ "serde_bytes", "serde_json", "serde_with", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-tracing 17.0.1", - "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", + "sp-tracing", + "sp-version", "substrate-fixed", "subtensor-macros", ] @@ -6421,13 +6182,13 @@ version = "38.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "docify", - "frame-benchmarking 38.0.0", - "frame-support 38.0.0", - "frame-system 38.0.0", + "frame-benchmarking", + "frame-support", + "frame-system", "parity-scale-codec", "scale-info", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", + "sp-io", + "sp-runtime", ] [[package]] @@ -6436,17 +6197,17 @@ version = "37.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "docify", - "frame-benchmarking 38.0.0", - "frame-support 38.0.0", - "frame-system 38.0.0", + "frame-benchmarking", + "frame-support", + "frame-system", "log", "parity-scale-codec", "scale-info", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-timestamp 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-inherents", + "sp-io", + "sp-runtime", + "sp-storage", + "sp-timestamp", ] [[package]] @@ -6454,14 +6215,14 @@ name = "pallet-transaction-payment" version = "38.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-support 38.0.0", - "frame-system 38.0.0", + "frame-support", + "frame-system", "parity-scale-codec", "scale-info", "serde", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", + "sp-core", + "sp-io", + "sp-runtime", ] [[package]] @@ -6469,15 +6230,15 @@ name = "pallet-transaction-payment-rpc" version = "41.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "jsonrpsee 0.24.7", + "jsonrpsee", "pallet-transaction-payment-rpc-runtime-api", "parity-scale-codec", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-rpc 32.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-weights 31.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-api", + "sp-blockchain", + "sp-core", + "sp-rpc", + "sp-runtime", + "sp-weights", ] [[package]] @@ -6487,9 +6248,9 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable dependencies = [ "pallet-transaction-payment", "parity-scale-codec", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-weights 31.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-api", + "sp-runtime", + "sp-weights", ] [[package]] @@ -6497,14 +6258,14 @@ name = "pallet-utility" version = "38.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "frame-benchmarking 38.0.0", - "frame-support 38.0.0", - "frame-system 38.0.0", + "frame-benchmarking", + "frame-support", + "frame-system", "parity-scale-codec", "scale-info", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", + "sp-core", + "sp-io", + "sp-runtime", ] [[package]] @@ -7966,19 +7727,8 @@ version = "29.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "log", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-wasm-interface 21.0.1", - "thiserror", -] - -[[package]] -name = "sc-allocator" -version = "29.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "log", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-wasm-interface 21.0.0", + "sp-core", + "sp-wasm-interface", "thiserror", ] @@ -7991,17 +7741,17 @@ dependencies = [ "futures-timer", "log", "parity-scale-codec", - "sc-block-builder 0.42.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-block-builder", "sc-proposer-metrics", - "sc-telemetry 25.0.0", - "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-telemetry", + "sc-transaction-pool-api", + "sp-api", + "sp-blockchain", + "sp-consensus", + "sp-core", + "sp-inherents", + "sp-runtime", + "substrate-prometheus-endpoint", ] [[package]] @@ -8010,55 +7760,13 @@ version = "0.42.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "parity-scale-codec", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-block-builder 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", -] - -[[package]] -name = "sc-block-builder" -version = "0.42.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "parity-scale-codec", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-block-builder 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", -] - -[[package]] -name = "sc-chain-spec" -version = "37.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "array-bytes", - "docify", - "log", - "memmap2 0.9.5", - "parity-scale-codec", - "sc-chain-spec-derive 12.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-executor 0.40.0", - "sc-network 0.44.0", - "sc-telemetry 24.0.0", - "serde", - "serde_json", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-genesis-builder 0.15.0", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-tracing 17.0.0", + "sp-api", + "sp-block-builder", + "sp-blockchain", + "sp-core", + "sp-inherents", + "sp-runtime", + "sp-trie", ] [[package]] @@ -8071,21 +7779,21 @@ dependencies = [ "log", "memmap2 0.9.5", "parity-scale-codec", - "sc-chain-spec-derive 12.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-executor 0.40.1", - "sc-network 0.45.0", - "sc-telemetry 25.0.0", + "sc-chain-spec-derive", + "sc-client-api", + "sc-executor", + "sc-network", + "sc-telemetry", "serde", "serde_json", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-blockchain", + "sp-core", "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-genesis-builder 0.15.1", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-tracing 17.0.1", + "sp-genesis-builder", + "sp-io", + "sp-runtime", + "sp-state-machine", + "sp-tracing", ] [[package]] @@ -8099,17 +7807,6 @@ dependencies = [ "syn 2.0.79", ] -[[package]] -name = "sc-chain-spec-derive" -version = "12.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "proc-macro-crate 3.2.0", - "proc-macro2", - "quote", - "syn 2.0.79", -] - [[package]] name = "sc-cli" version = "0.47.0" @@ -8129,24 +7826,24 @@ dependencies = [ "rand", "regex", "rpassword", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-client-db 0.44.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-keystore 33.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-mixnet 0.15.0", - "sc-network 0.45.0", - "sc-service 0.46.0", - "sc-telemetry 25.0.0", - "sc-tracing 37.0.1", - "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-client-api", + "sc-client-db", + "sc-keystore", + "sc-mixnet", + "sc-network", + "sc-service", + "sc-telemetry", + "sc-tracing", + "sc-utils", "serde", "serde_json", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-blockchain", + "sp-core", "sp-keyring", - "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-panic-handler 13.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-keystore", + "sp-panic-handler", + "sp-runtime", + "sp-version", "thiserror", "tokio", ] @@ -8161,48 +7858,21 @@ dependencies = [ "log", "parity-scale-codec", "parking_lot 0.12.3", - "sc-executor 0.40.1", - "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-database 10.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-statement-store 18.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", -] - -[[package]] -name = "sc-client-api" -version = "37.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "fnv", - "futures", - "log", - "parity-scale-codec", - "parking_lot 0.12.3", - "sc-executor 0.40.0", - "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-database 10.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-statement-store 18.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-executor", + "sc-transaction-pool-api", + "sc-utils", + "sp-api", + "sp-blockchain", + "sp-consensus", + "sp-core", + "sp-database", + "sp-externalities", + "sp-runtime", + "sp-state-machine", + "sp-statement-store", + "sp-storage", + "sp-trie", + "substrate-prometheus-endpoint", ] [[package]] @@ -8219,118 +7889,39 @@ dependencies = [ "parity-db", "parity-scale-codec", "parking_lot 0.12.3", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-state-db 0.36.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-client-api", + "sc-state-db", "schnellru", - "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-database 10.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-arithmetic", + "sp-blockchain", + "sp-core", + "sp-database", + "sp-runtime", + "sp-state-machine", + "sp-trie", ] [[package]] -name = "sc-client-db" +name = "sc-consensus" version = "0.44.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "hash-db", - "kvdb", - "kvdb-memorydb", - "kvdb-rocksdb", - "linked-hash-map", + "async-trait", + "futures", "log", - "parity-db", - "parity-scale-codec", + "mockall 0.11.4", "parking_lot 0.12.3", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-state-db 0.36.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "schnellru", - "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-database 10.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", -] - -[[package]] -name = "sc-consensus" -version = "0.43.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "async-trait", - "futures", - "log", - "mockall 0.11.4", - "parking_lot 0.12.3", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "serde", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "thiserror", -] - -[[package]] -name = "sc-consensus" -version = "0.44.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" -dependencies = [ - "async-trait", - "futures", - "log", - "mockall 0.11.4", - "parking_lot 0.12.3", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-client-api", + "sc-network-types", + "sc-utils", "serde", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "thiserror", -] - -[[package]] -name = "sc-consensus-aura" -version = "0.44.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "async-trait", - "futures", - "log", - "parity-scale-codec", - "sc-block-builder 0.42.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-consensus 0.43.0", - "sc-consensus-slots 0.43.0", - "sc-telemetry 24.0.0", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-block-builder 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-consensus-aura 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-consensus-slots 0.40.0", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-api", + "sp-blockchain", + "sp-consensus", + "sp-core", + "sp-runtime", + "sp-state-machine", + "substrate-prometheus-endpoint", "thiserror", ] @@ -8343,23 +7934,23 @@ dependencies = [ "futures", "log", "parity-scale-codec", - "sc-block-builder 0.42.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-consensus 0.44.0", - "sc-consensus-slots 0.44.0", - "sc-telemetry 25.0.0", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-block-builder 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus-aura 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus-slots 0.40.1", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "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", ] @@ -8369,7 +7960,7 @@ version = "0.45.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "async-trait", - "fork-tree 13.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "fork-tree", "futures", "log", "num-bigint", @@ -8377,25 +7968,25 @@ dependencies = [ "num-traits", "parity-scale-codec", "parking_lot 0.12.3", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-consensus 0.44.0", + "sc-client-api", + "sc-consensus", "sc-consensus-epochs", - "sc-consensus-slots 0.44.0", - "sc-telemetry 25.0.0", - "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-block-builder 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-consensus-slots", + "sc-telemetry", + "sc-transaction-pool-api", + "sp-api", + "sp-application-crypto", + "sp-block-builder", + "sp-blockchain", + "sp-consensus", "sp-consensus-babe", - "sp-consensus-slots 0.40.1", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus-slots", + "sp-core", "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-inherents", + "sp-keystore", + "sp-runtime", + "substrate-prometheus-endpoint", "thiserror", ] @@ -8404,12 +7995,12 @@ name = "sc-consensus-epochs" version = "0.44.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "fork-tree 13.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "fork-tree", "parity-scale-codec", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-consensus 0.44.0", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", + "sc-client-api", + "sc-consensus", + "sp-blockchain", + "sp-runtime", ] [[package]] @@ -8422,37 +8013,37 @@ dependencies = [ "async-trait", "dyn-clone", "finality-grandpa", - "fork-tree 13.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "fork-tree", "futures", "futures-timer", "log", "parity-scale-codec", "parking_lot 0.12.3", "rand", - "sc-block-builder 0.42.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-chain-spec 38.0.0", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-consensus 0.44.0", - "sc-network 0.45.0", - "sc-network-common 0.44.0", + "sc-block-builder", + "sc-chain-spec", + "sc-client-api", + "sc-consensus", + "sc-network", + "sc-network-common", "sc-network-gossip", - "sc-network-sync 0.44.0", - "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-telemetry 25.0.0", - "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-network-sync", + "sc-network-types", + "sc-telemetry", + "sc-transaction-pool-api", + "sc-utils", "serde_json", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus-grandpa 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-api", + "sp-application-crypto", + "sp-arithmetic", + "sp-blockchain", + "sp-consensus", + "sp-consensus-grandpa", + "sp-core", "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-keystore", + "sp-runtime", + "substrate-prometheus-endpoint", "thiserror", ] @@ -8463,16 +8054,16 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable dependencies = [ "finality-grandpa", "futures", - "jsonrpsee 0.24.7", + "jsonrpsee", "log", "parity-scale-codec", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-client-api", "sc-consensus-grandpa", - "sc-rpc 40.0.0", + "sc-rpc", "serde", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", + "sp-blockchain", + "sp-core", + "sp-runtime", "thiserror", ] @@ -8485,55 +8076,32 @@ dependencies = [ "async-trait", "futures", "futures-timer", - "jsonrpsee 0.24.7", + "jsonrpsee", "log", "parity-scale-codec", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-consensus 0.44.0", - "sc-consensus-aura 0.45.0", + "sc-client-api", + "sc-consensus", + "sc-consensus-aura", "sc-consensus-babe", "sc-consensus-epochs", - "sc-transaction-pool 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-transaction-pool", + "sc-transaction-pool-api", "serde", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus-aura 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-api", + "sp-blockchain", + "sp-consensus", + "sp-consensus-aura", "sp-consensus-babe", - "sp-consensus-slots 0.40.1", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-timestamp 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-consensus-slots", + "sp-core", + "sp-inherents", + "sp-keystore", + "sp-runtime", + "sp-timestamp", + "substrate-prometheus-endpoint", "thiserror", ] -[[package]] -name = "sc-consensus-slots" -version = "0.43.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "async-trait", - "futures", - "futures-timer", - "log", - "parity-scale-codec", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-consensus 0.43.0", - "sc-telemetry 24.0.0", - "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-consensus-slots 0.40.0", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", -] - [[package]] name = "sc-consensus-slots" version = "0.44.0" @@ -8544,40 +8112,17 @@ dependencies = [ "futures-timer", "log", "parity-scale-codec", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-consensus 0.44.0", - "sc-telemetry 25.0.0", - "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus-slots 0.40.1", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", -] - -[[package]] -name = "sc-executor" -version = "0.40.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "parity-scale-codec", - "parking_lot 0.12.3", - "sc-executor-common 0.35.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-executor-polkavm 0.32.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-executor-wasmtime 0.35.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "schnellru", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-panic-handler 13.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-wasm-interface 21.0.0", - "tracing", + "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]] @@ -8587,19 +8132,19 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable dependencies = [ "parity-scale-codec", "parking_lot 0.12.3", - "sc-executor-common 0.35.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-executor-polkavm 0.32.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-executor-wasmtime 0.35.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-executor-common", + "sc-executor-polkavm", + "sc-executor-wasmtime", "schnellru", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-panic-handler 13.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-wasm-interface 21.0.1", + "sp-api", + "sp-core", + "sp-externalities", + "sp-io", + "sp-panic-handler", + "sp-runtime-interface", + "sp-trie", + "sp-version", + "sp-wasm-interface", "tracing", ] @@ -8609,22 +8154,9 @@ version = "0.35.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "polkavm", - "sc-allocator 29.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-maybe-compressed-blob 11.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-wasm-interface 21.0.1", - "thiserror", - "wasm-instrument", -] - -[[package]] -name = "sc-executor-common" -version = "0.35.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "polkavm", - "sc-allocator 29.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-maybe-compressed-blob 11.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-wasm-interface 21.0.0", + "sc-allocator", + "sp-maybe-compressed-blob", + "sp-wasm-interface", "thiserror", "wasm-instrument", ] @@ -8636,19 +8168,8 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable dependencies = [ "log", "polkavm", - "sc-executor-common 0.35.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-wasm-interface 21.0.1", -] - -[[package]] -name = "sc-executor-polkavm" -version = "0.32.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "log", - "polkavm", - "sc-executor-common 0.35.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-wasm-interface 21.0.0", + "sc-executor-common", + "sp-wasm-interface", ] [[package]] @@ -8662,48 +8183,13 @@ dependencies = [ "log", "parking_lot 0.12.3", "rustix 0.36.17", - "sc-allocator 29.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-executor-common 0.35.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-wasm-interface 21.0.1", - "wasmtime", -] - -[[package]] -name = "sc-executor-wasmtime" -version = "0.35.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "anyhow", - "cfg-if", - "libc", - "log", - "parking_lot 0.12.3", - "rustix 0.36.17", - "sc-allocator 29.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-executor-common 0.35.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-wasm-interface 21.0.0", + "sc-allocator", + "sc-executor-common", + "sp-runtime-interface", + "sp-wasm-interface", "wasmtime", ] -[[package]] -name = "sc-informant" -version = "0.43.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "ansi_term", - "futures", - "futures-timer", - "log", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-network 0.44.0", - "sc-network-common 0.43.0", - "sc-network-sync 0.43.0", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", -] - [[package]] name = "sc-informant" version = "0.44.0" @@ -8713,12 +8199,12 @@ dependencies = [ "futures", "futures-timer", "log", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-network 0.45.0", - "sc-network-common 0.44.0", - "sc-network-sync 0.44.0", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", + "sc-client-api", + "sc-network", + "sc-network-common", + "sc-network-sync", + "sp-blockchain", + "sp-runtime", ] [[package]] @@ -8729,52 +8215,9 @@ dependencies = [ "array-bytes", "parking_lot 0.12.3", "serde_json", - "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "thiserror", -] - -[[package]] -name = "sc-keystore" -version = "33.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "array-bytes", - "parking_lot 0.12.3", - "serde_json", - "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "thiserror", -] - -[[package]] -name = "sc-mixnet" -version = "0.14.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "array-bytes", - "arrayvec", - "blake2 0.10.6", - "bytes", - "futures", - "futures-timer", - "log", - "mixnet", - "multiaddr 0.18.2", - "parity-scale-codec", - "parking_lot 0.12.3", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-network 0.44.0", - "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-mixnet 0.12.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", + "sp-application-crypto", + "sp-core", + "sp-keystore", "thiserror", ] @@ -8794,68 +8237,17 @@ dependencies = [ "multiaddr 0.18.2", "parity-scale-codec", "parking_lot 0.12.3", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-network 0.45.0", - "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-mixnet 0.12.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "thiserror", -] - -[[package]] -name = "sc-network" -version = "0.44.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "array-bytes", - "async-channel", - "async-trait", - "asynchronous-codec", - "bytes", - "cid 0.9.0", - "either", - "fnv", - "futures", - "futures-timer", - "ip_network", - "libp2p", - "linked_hash_set", - "litep2p", - "log", - "mockall 0.11.4", - "once_cell", - "parity-scale-codec", - "parking_lot 0.12.3", - "partial_sort", - "pin-project", - "prost 0.12.6", - "prost-build 0.12.6", - "rand", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-network-common 0.43.0", - "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "schnellru", - "serde", - "serde_json", - "smallvec", - "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-client-api", + "sc-network", + "sc-network-types", + "sc-transaction-pool-api", + "sp-api", + "sp-consensus", + "sp-core", + "sp-keystore", + "sp-mixnet", + "sp-runtime", "thiserror", - "tokio", - "tokio-stream", - "unsigned-varint 0.7.2", - "void", - "wasm-timer", - "zeroize", ] [[package]] @@ -8887,19 +8279,19 @@ dependencies = [ "prost 0.12.6", "prost-build 0.12.6", "rand", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-network-common 0.44.0", - "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-client-api", + "sc-network-common", + "sc-network-types", + "sc-utils", "schnellru", "serde", "serde_json", "smallvec", - "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-arithmetic", + "sp-blockchain", + "sp-core", + "sp-runtime", + "substrate-prometheus-endpoint", "thiserror", "tokio", "tokio-stream", @@ -8909,24 +8301,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "sc-network-common" -version = "0.43.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "async-trait", - "bitflags 1.3.2", - "futures", - "libp2p-identity", - "parity-scale-codec", - "prost-build 0.12.6", - "sc-consensus 0.43.0", - "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-consensus-grandpa 21.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", -] - [[package]] name = "sc-network-common" version = "0.44.0" @@ -8938,11 +8312,11 @@ dependencies = [ "libp2p-identity", "parity-scale-codec", "prost-build 0.12.6", - "sc-consensus 0.44.0", - "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus-grandpa 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", + "sc-consensus", + "sc-network-types", + "sp-consensus", + "sp-consensus-grandpa", + "sp-runtime", ] [[package]] @@ -8954,37 +8328,16 @@ dependencies = [ "futures", "futures-timer", "log", - "sc-network 0.45.0", - "sc-network-common 0.44.0", - "sc-network-sync 0.44.0", - "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-network", + "sc-network-common", + "sc-network-sync", + "sc-network-types", "schnellru", - "sp-runtime 39.0.1", - "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-runtime", + "substrate-prometheus-endpoint", "tracing", ] -[[package]] -name = "sc-network-light" -version = "0.43.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "array-bytes", - "async-channel", - "futures", - "log", - "parity-scale-codec", - "prost 0.12.6", - "prost-build 0.12.6", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-network 0.44.0", - "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "thiserror", -] - [[package]] name = "sc-network-light" version = "0.44.0" @@ -8997,50 +8350,13 @@ dependencies = [ "parity-scale-codec", "prost 0.12.6", "prost-build 0.12.6", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-network 0.45.0", - "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "thiserror", -] - -[[package]] -name = "sc-network-sync" -version = "0.43.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "array-bytes", - "async-channel", - "async-trait", - "fork-tree 13.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "futures", - "futures-timer", - "libp2p", - "log", - "mockall 0.11.4", - "parity-scale-codec", - "prost 0.12.6", - "prost-build 0.12.6", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-consensus 0.43.0", - "sc-network 0.44.0", - "sc-network-common 0.43.0", - "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "schnellru", - "smallvec", - "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-consensus-grandpa 21.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-client-api", + "sc-network", + "sc-network-types", + "sp-blockchain", + "sp-core", + "sp-runtime", "thiserror", - "tokio", - "tokio-stream", ] [[package]] @@ -9051,7 +8367,7 @@ dependencies = [ "array-bytes", "async-channel", "async-trait", - "fork-tree 13.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "fork-tree", "futures", "futures-timer", "libp2p", @@ -9060,45 +8376,26 @@ dependencies = [ "parity-scale-codec", "prost 0.12.6", "prost-build 0.12.6", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-consensus 0.44.0", - "sc-network 0.45.0", - "sc-network-common 0.44.0", - "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-client-api", + "sc-consensus", + "sc-network", + "sc-network-common", + "sc-network-types", + "sc-utils", "schnellru", "smallvec", - "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus-grandpa 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-arithmetic", + "sp-blockchain", + "sp-consensus", + "sp-consensus-grandpa", + "sp-core", + "sp-runtime", + "substrate-prometheus-endpoint", "thiserror", "tokio", "tokio-stream", ] -[[package]] -name = "sc-network-transactions" -version = "0.43.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "array-bytes", - "futures", - "log", - "parity-scale-codec", - "sc-network 0.44.0", - "sc-network-common 0.43.0", - "sc-network-sync 0.43.0", - "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", -] - [[package]] name = "sc-network-transactions" version = "0.44.0" @@ -9108,14 +8405,14 @@ dependencies = [ "futures", "log", "parity-scale-codec", - "sc-network 0.45.0", - "sc-network-common 0.44.0", - "sc-network-sync 0.44.0", - "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-network", + "sc-network-common", + "sc-network-sync", + "sc-network-types", + "sc-utils", + "sp-consensus", + "sp-runtime", + "substrate-prometheus-endpoint", ] [[package]] @@ -9135,23 +8432,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "sc-network-types" -version = "0.12.1" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "bs58 0.5.1", - "ed25519-dalek", - "libp2p-identity", - "litep2p", - "log", - "multiaddr 0.18.2", - "multihash 0.19.1", - "rand", - "thiserror", - "zeroize", -] - [[package]] name = "sc-offchain" version = "40.0.0" @@ -9170,18 +8450,18 @@ dependencies = [ "parity-scale-codec", "parking_lot 0.12.3", "rand", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-network 0.45.0", - "sc-network-common 0.44.0", - "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-offchain 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", + "sc-client-api", + "sc-network", + "sc-network-common", + "sc-network-types", + "sc-transaction-pool-api", + "sc-utils", + "sp-api", + "sp-core", + "sp-externalities", + "sp-keystore", + "sp-offchain", + "sp-runtime", "threadpool", "tracing", ] @@ -9192,39 +8472,7 @@ version = "0.18.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "log", - "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", -] - -[[package]] -name = "sc-rpc" -version = "39.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "futures", - "jsonrpsee 0.23.2", - "log", - "parity-scale-codec", - "parking_lot 0.12.3", - "sc-block-builder 0.42.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-chain-spec 37.0.0", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-mixnet 0.14.0", - "sc-rpc-api 0.43.0", - "sc-tracing 37.0.0", - "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "serde_json", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-offchain 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-rpc 32.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-session 35.0.0", - "sp-statement-store 18.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "tokio", + "substrate-prometheus-endpoint", ] [[package]] @@ -9233,94 +8481,52 @@ version = "40.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "futures", - "jsonrpsee 0.24.7", + "jsonrpsee", "log", "parity-scale-codec", "parking_lot 0.12.3", - "sc-block-builder 0.42.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-chain-spec 38.0.0", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-mixnet 0.15.0", - "sc-rpc-api 0.44.0", - "sc-tracing 37.0.1", - "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-block-builder", + "sc-chain-spec", + "sc-client-api", + "sc-mixnet", + "sc-rpc-api", + "sc-tracing", + "sc-transaction-pool-api", + "sc-utils", "serde_json", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-offchain 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-rpc 32.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-session 36.0.0", - "sp-statement-store 18.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-api", + "sp-blockchain", + "sp-core", + "sp-keystore", + "sp-offchain", + "sp-rpc", + "sp-runtime", + "sp-session", + "sp-statement-store", + "sp-version", "tokio", ] [[package]] name = "sc-rpc-api" -version = "0.43.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +version = "0.44.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "jsonrpsee 0.23.2", + "jsonrpsee", "parity-scale-codec", - "sc-chain-spec 37.0.0", - "sc-mixnet 0.14.0", - "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sc-chain-spec", + "sc-mixnet", + "sc-transaction-pool-api", "scale-info", "serde", "serde_json", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-rpc 32.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core", + "sp-rpc", + "sp-runtime", + "sp-version", "thiserror", ] -[[package]] -name = "sc-rpc-api" -version = "0.44.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" -dependencies = [ - "jsonrpsee 0.24.7", - "parity-scale-codec", - "sc-chain-spec 38.0.0", - "sc-mixnet 0.15.0", - "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "scale-info", - "serde", - "serde_json", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-rpc 32.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "thiserror", -] - -[[package]] -name = "sc-rpc-server" -version = "16.0.2" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "forwarded-header-value", - "futures", - "governor", - "http 1.1.0", - "http-body-util", - "hyper 1.5.0", - "ip_network", - "jsonrpsee 0.23.2", - "log", - "serde", - "serde_json", - "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "tokio", - "tower", - "tower-http", -] - [[package]] name = "sc-rpc-server" version = "17.0.0" @@ -9334,49 +8540,17 @@ dependencies = [ "http-body-util", "hyper 1.5.0", "ip_network", - "jsonrpsee 0.24.7", + "jsonrpsee", "log", - "sc-rpc-api 0.44.0", + "sc-rpc-api", "serde", "serde_json", - "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "substrate-prometheus-endpoint", "tokio", "tower", "tower-http", ] -[[package]] -name = "sc-rpc-spec-v2" -version = "0.44.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "array-bytes", - "futures", - "futures-util", - "hex", - "jsonrpsee 0.23.2", - "log", - "parity-scale-codec", - "parking_lot 0.12.3", - "rand", - "sc-chain-spec 37.0.0", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-rpc 39.0.0", - "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "schnellru", - "serde", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-rpc 32.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "thiserror", - "tokio", - "tokio-stream", -] - [[package]] name = "sc-rpc-spec-v2" version = "0.45.0" @@ -9386,93 +8560,29 @@ dependencies = [ "futures", "futures-util", "hex", - "jsonrpsee 0.24.7", + "jsonrpsee", "log", "parity-scale-codec", "parking_lot 0.12.3", "rand", - "sc-chain-spec 38.0.0", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-rpc 40.0.0", - "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-chain-spec", + "sc-client-api", + "sc-rpc", + "sc-transaction-pool-api", + "sc-utils", "schnellru", "serde", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-rpc 32.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-api", + "sp-blockchain", + "sp-core", + "sp-rpc", + "sp-runtime", + "sp-version", "thiserror", "tokio", "tokio-stream", ] -[[package]] -name = "sc-service" -version = "0.45.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "async-trait", - "directories", - "exit-future", - "futures", - "futures-timer", - "jsonrpsee 0.23.2", - "log", - "parity-scale-codec", - "parking_lot 0.12.3", - "pin-project", - "rand", - "sc-chain-spec 37.0.0", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-client-db 0.44.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-consensus 0.43.0", - "sc-executor 0.40.0", - "sc-informant 0.43.0", - "sc-keystore 33.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-network 0.44.0", - "sc-network-common 0.43.0", - "sc-network-light 0.43.0", - "sc-network-sync 0.43.0", - "sc-network-transactions 0.43.0", - "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-rpc 39.0.0", - "sc-rpc-server 16.0.2", - "sc-rpc-spec-v2 0.44.0", - "sc-sysinfo 37.0.0", - "sc-telemetry 24.0.0", - "sc-tracing 37.0.0", - "sc-transaction-pool 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "schnellru", - "serde", - "serde_json", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-session 35.0.0", - "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-transaction-pool 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-transaction-storage-proof 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "static_init", - "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "tempfile", - "thiserror", - "tokio", - "tracing", - "tracing-futures", -] - [[package]] name = "sc-service" version = "0.46.0" @@ -9483,53 +8593,53 @@ dependencies = [ "exit-future", "futures", "futures-timer", - "jsonrpsee 0.24.7", + "jsonrpsee", "log", "parity-scale-codec", "parking_lot 0.12.3", "pin-project", "rand", - "sc-chain-spec 38.0.0", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-client-db 0.44.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-consensus 0.44.0", - "sc-executor 0.40.1", - "sc-informant 0.44.0", - "sc-keystore 33.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-network 0.45.0", - "sc-network-common 0.44.0", - "sc-network-light 0.44.0", - "sc-network-sync 0.44.0", - "sc-network-transactions 0.44.0", - "sc-network-types 0.12.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-rpc 40.0.0", - "sc-rpc-server 17.0.0", - "sc-rpc-spec-v2 0.45.0", - "sc-sysinfo 38.0.0", - "sc-telemetry 25.0.0", - "sc-tracing 37.0.1", - "sc-transaction-pool 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-chain-spec", + "sc-client-api", + "sc-client-db", + "sc-consensus", + "sc-executor", + "sc-informant", + "sc-keystore", + "sc-network", + "sc-network-common", + "sc-network-light", + "sc-network-sync", + "sc-network-transactions", + "sc-network-types", + "sc-rpc", + "sc-rpc-server", + "sc-rpc-spec-v2", + "sc-sysinfo", + "sc-telemetry", + "sc-tracing", + "sc-transaction-pool", + "sc-transaction-pool-api", + "sc-utils", "schnellru", "serde", "serde_json", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-session 36.0.0", - "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-transaction-pool 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-transaction-storage-proof 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-api", + "sp-blockchain", + "sp-consensus", + "sp-core", + "sp-externalities", + "sp-keystore", + "sp-runtime", + "sp-session", + "sp-state-machine", + "sp-storage", + "sp-transaction-pool", + "sp-transaction-storage-proof", + "sp-trie", + "sp-version", "static_init", - "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "substrate-prometheus-endpoint", "tempfile", "thiserror", "tokio", @@ -9545,39 +8655,7 @@ dependencies = [ "log", "parity-scale-codec", "parking_lot 0.12.3", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", -] - -[[package]] -name = "sc-state-db" -version = "0.36.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "log", - "parity-scale-codec", - "parking_lot 0.12.3", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", -] - -[[package]] -name = "sc-sysinfo" -version = "37.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "derive_more", - "futures", - "libc", - "log", - "rand", - "rand_pcg", - "regex", - "sc-telemetry 24.0.0", - "serde", - "serde_json", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core", ] [[package]] @@ -9592,33 +8670,13 @@ dependencies = [ "rand", "rand_pcg", "regex", - "sc-telemetry 25.0.0", + "sc-telemetry", "serde", "serde_json", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core", "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", -] - -[[package]] -name = "sc-telemetry" -version = "24.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "chrono", - "futures", - "libp2p", - "log", - "parking_lot 0.12.3", - "pin-project", - "rand", - "sc-network 0.44.0", - "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "serde", - "serde_json", - "thiserror", - "wasm-timer", + "sp-io", + "sp-std", ] [[package]] @@ -9633,44 +8691,14 @@ dependencies = [ "parking_lot 0.12.3", "pin-project", "rand", - "sc-network 0.45.0", - "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-network", + "sc-utils", "serde", "serde_json", "thiserror", "wasm-timer", ] -[[package]] -name = "sc-tracing" -version = "37.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "ansi_term", - "chrono", - "is-terminal", - "lazy_static", - "libc", - "log", - "parity-scale-codec", - "parking_lot 0.12.3", - "regex", - "rustc-hash 1.1.0", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-tracing-proc-macro 11.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "serde", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-rpc 32.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-tracing 17.0.0", - "thiserror", - "tracing", - "tracing-log", - "tracing-subscriber", -] - [[package]] name = "sc-tracing" version = "37.0.1" @@ -9685,15 +8713,15 @@ dependencies = [ "parity-scale-codec", "parking_lot 0.12.3", "rustc-hash 1.1.0", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-tracing-proc-macro 11.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-client-api", + "sc-tracing-proc-macro", "serde", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-rpc 32.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-tracing 17.0.1", + "sp-api", + "sp-blockchain", + "sp-core", + "sp-rpc", + "sp-runtime", + "sp-tracing", "thiserror", "tracing", "tracing-log", @@ -9711,17 +8739,6 @@ dependencies = [ "syn 2.0.79", ] -[[package]] -name = "sc-tracing-proc-macro" -version = "11.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "proc-macro-crate 3.2.0", - "proc-macro2", - "quote", - "syn 2.0.79", -] - [[package]] name = "sc-transaction-pool" version = "37.0.0" @@ -9734,45 +8751,18 @@ dependencies = [ "log", "parity-scale-codec", "parking_lot 0.12.3", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-client-api", + "sc-transaction-pool-api", + "sc-utils", "serde", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-api", + "sp-blockchain", + "sp-core", "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-tracing 17.0.1", - "sp-transaction-pool 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "thiserror", -] - -[[package]] -name = "sc-transaction-pool" -version = "37.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "async-trait", - "futures", - "futures-timer", - "linked-hash-map", - "log", - "parity-scale-codec", - "parking_lot 0.12.3", - "sc-client-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sc-utils 17.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "serde", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-tracing 17.0.0", - "sp-transaction-pool 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "substrate-prometheus-endpoint 0.17.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime", + "sp-tracing", + "sp-transaction-pool", + "substrate-prometheus-endpoint", "thiserror", ] @@ -9786,25 +8776,9 @@ dependencies = [ "log", "parity-scale-codec", "serde", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "thiserror", -] - -[[package]] -name = "sc-transaction-pool-api" -version = "37.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "async-trait", - "futures", - "log", - "parity-scale-codec", - "serde", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", + "sp-blockchain", + "sp-core", + "sp-runtime", "thiserror", ] @@ -9820,22 +8794,7 @@ dependencies = [ "log", "parking_lot 0.12.3", "prometheus", - "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", -] - -[[package]] -name = "sc-utils" -version = "17.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "async-channel", - "futures", - "futures-timer", - "lazy_static", - "log", - "parking_lot 0.12.3", - "prometheus", - "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-arithmetic", ] [[package]] @@ -10132,6 +9091,18 @@ dependencies = [ "serde", ] +[[package]] +name = "serde_urlencoded" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" +dependencies = [ + "form_urlencoded", + "itoa", + "ryu", + "serde", +] + [[package]] name = "serde_with" version = "2.0.0" @@ -10394,37 +9365,15 @@ dependencies = [ "log", "parity-scale-codec", "scale-info", - "sp-api-proc-macro 20.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-metadata-ir 0.7.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "thiserror", -] - -[[package]] -name = "sp-api" -version = "34.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "docify", - "hash-db", - "log", - "parity-scale-codec", - "scale-info", - "sp-api-proc-macro 20.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-metadata-ir 0.7.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-api-proc-macro", + "sp-core", + "sp-externalities", + "sp-metadata-ir", + "sp-runtime", + "sp-runtime-interface", + "sp-state-machine", + "sp-trie", + "sp-version", "thiserror", ] @@ -10442,20 +9391,6 @@ dependencies = [ "syn 2.0.79", ] -[[package]] -name = "sp-api-proc-macro" -version = "20.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "Inflector", - "blake2 0.10.6", - "expander", - "proc-macro-crate 3.2.0", - "proc-macro2", - "quote", - "syn 2.0.79", -] - [[package]] name = "sp-application-crypto" version = "38.0.0" @@ -10464,20 +9399,8 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", -] - -[[package]] -name = "sp-application-crypto" -version = "38.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "parity-scale-codec", - "scale-info", - "serde", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core", + "sp-io", ] [[package]] @@ -10494,38 +9417,14 @@ dependencies = [ "static_assertions", ] -[[package]] -name = "sp-arithmetic" -version = "26.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "docify", - "integer-sqrt", - "num-traits", - "parity-scale-codec", - "scale-info", - "serde", - "static_assertions", -] - [[package]] name = "sp-block-builder" version = "34.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", -] - -[[package]] -name = "sp-block-builder" -version = "34.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", + "sp-api", + "sp-inherents", + "sp-runtime", ] [[package]] @@ -10537,31 +9436,12 @@ dependencies = [ "parity-scale-codec", "parking_lot 0.12.3", "schnellru", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-database 10.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "thiserror", - "tracing", -] - -[[package]] -name = "sp-blockchain" -version = "37.0.1" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "futures", - "parity-scale-codec", - "parking_lot 0.12.3", - "schnellru", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-consensus 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-database 10.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-api", + "sp-consensus", + "sp-core", + "sp-database", + "sp-runtime", + "sp-state-machine", "thiserror", "tracing", ] @@ -10574,25 +9454,10 @@ dependencies = [ "async-trait", "futures", "log", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "thiserror", -] - -[[package]] -name = "sp-consensus" -version = "0.40.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "async-trait", - "futures", - "log", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core", + "sp-inherents", + "sp-runtime", + "sp-state-machine", "thiserror", ] @@ -10604,28 +9469,12 @@ dependencies = [ "async-trait", "parity-scale-codec", "scale-info", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus-slots 0.40.1", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-timestamp 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", -] - -[[package]] -name = "sp-consensus-aura" -version = "0.40.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "async-trait", - "parity-scale-codec", - "scale-info", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-consensus-slots 0.40.0", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-timestamp 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-api", + "sp-application-crypto", + "sp-consensus-slots", + "sp-inherents", + "sp-runtime", + "sp-timestamp", ] [[package]] @@ -10637,13 +9486,13 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-consensus-slots 0.40.1", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-timestamp 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-api", + "sp-application-crypto", + "sp-consensus-slots", + "sp-core", + "sp-inherents", + "sp-runtime", + "sp-timestamp", ] [[package]] @@ -10656,39 +9505,11 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", -] - -[[package]] -name = "sp-consensus-grandpa" -version = "21.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "finality-grandpa", - "log", - "parity-scale-codec", - "scale-info", - "serde", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", -] - -[[package]] -name = "sp-consensus-slots" -version = "0.40.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "parity-scale-codec", - "scale-info", - "serde", - "sp-timestamp 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-api", + "sp-application-crypto", + "sp-core", + "sp-keystore", + "sp-runtime", ] [[package]] @@ -10699,7 +9520,7 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-timestamp 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-timestamp", ] [[package]] @@ -10735,59 +9556,13 @@ dependencies = [ "secrecy", "serde", "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-debug-derive", + "sp-externalities", + "sp-runtime-interface", + "sp-std", + "sp-storage", "ss58-registry", - "substrate-bip39 0.6.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "thiserror", - "tracing", - "w3f-bls", - "zeroize", -] - -[[package]] -name = "sp-core" -version = "34.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "array-bytes", - "bitflags 1.3.2", - "blake2 0.10.6", - "bounded-collections", - "bs58 0.5.1", - "dyn-clonable", - "ed25519-zebra", - "futures", - "hash-db", - "hash256-std-hasher", - "impl-serde", - "itertools 0.11.0", - "k256", - "libsecp256k1", - "log", - "merlin", - "parity-bip39", - "parity-scale-codec", - "parking_lot 0.12.3", - "paste", - "primitive-types", - "rand", - "scale-info", - "schnorrkel", - "secp256k1", - "secrecy", - "serde", - "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "ss58-registry", - "substrate-bip39 0.6.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "substrate-bip39", "thiserror", "tracing", "w3f-bls", @@ -10821,19 +9596,6 @@ dependencies = [ "twox-hash", ] -[[package]] -name = "sp-crypto-hashing" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "blake2b_simd", - "byteorder", - "digest 0.10.7", - "sha2 0.10.8", - "sha3", - "twox-hash", -] - [[package]] name = "sp-crypto-hashing-proc-macro" version = "0.1.0" @@ -10844,16 +9606,6 @@ dependencies = [ "syn 2.0.79", ] -[[package]] -name = "sp-crypto-hashing-proc-macro" -version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "quote", - "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "syn 2.0.79", -] - [[package]] name = "sp-database" version = "10.0.0" @@ -10863,15 +9615,6 @@ dependencies = [ "parking_lot 0.12.3", ] -[[package]] -name = "sp-database" -version = "10.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "kvdb", - "parking_lot 0.12.3", -] - [[package]] name = "sp-debug-derive" version = "14.0.0" @@ -10882,16 +9625,6 @@ dependencies = [ "syn 2.0.79", ] -[[package]] -name = "sp-debug-derive" -version = "14.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.79", -] - [[package]] name = "sp-externalities" version = "0.29.0" @@ -10899,29 +9632,7 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable dependencies = [ "environmental", "parity-scale-codec", - "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", -] - -[[package]] -name = "sp-externalities" -version = "0.29.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "environmental", - "parity-scale-codec", - "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", -] - -[[package]] -name = "sp-genesis-builder" -version = "0.15.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "parity-scale-codec", - "scale-info", - "serde_json", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", + "sp-storage", ] [[package]] @@ -10932,8 +9643,8 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde_json", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", + "sp-api", + "sp-runtime", ] [[package]] @@ -10945,20 +9656,7 @@ dependencies = [ "impl-trait-for-tuples", "parity-scale-codec", "scale-info", - "sp-runtime 39.0.1", - "thiserror", -] - -[[package]] -name = "sp-inherents" -version = "34.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "async-trait", - "impl-trait-for-tuples", - "parity-scale-codec", - "scale-info", - "sp-runtime 39.0.2", + "sp-runtime", "thiserror", ] @@ -10976,40 +9674,14 @@ dependencies = [ "polkavm-derive", "rustversion", "secp256k1", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-core", "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-tracing 17.0.1", - "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "tracing", - "tracing-core", -] - -[[package]] -name = "sp-io" -version = "38.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "bytes", - "docify", - "ed25519-dalek", - "libsecp256k1", - "log", - "parity-scale-codec", - "polkavm-derive", - "rustversion", - "secp256k1", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-state-machine 0.43.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-tracing 17.0.0", - "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-externalities", + "sp-keystore", + "sp-runtime-interface", + "sp-state-machine", + "sp-tracing", + "sp-trie", "tracing", "tracing-core", ] @@ -11019,8 +9691,8 @@ name = "sp-keyring" version = "39.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", + "sp-core", + "sp-runtime", "strum 0.26.3", ] @@ -11031,19 +9703,8 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable dependencies = [ "parity-scale-codec", "parking_lot 0.12.3", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", -] - -[[package]] -name = "sp-keystore" -version = "0.40.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "parity-scale-codec", - "parking_lot 0.12.3", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core", + "sp-externalities", ] [[package]] @@ -11055,15 +9716,6 @@ dependencies = [ "zstd 0.12.4", ] -[[package]] -name = "sp-maybe-compressed-blob" -version = "11.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "thiserror", - "zstd 0.12.4", -] - [[package]] name = "sp-metadata-ir" version = "0.7.0" @@ -11074,16 +9726,6 @@ dependencies = [ "scale-info", ] -[[package]] -name = "sp-metadata-ir" -version = "0.7.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "frame-metadata", - "parity-scale-codec", - "scale-info", -] - [[package]] name = "sp-mixnet" version = "0.12.0" @@ -11091,19 +9733,8 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable dependencies = [ "parity-scale-codec", "scale-info", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", -] - -[[package]] -name = "sp-mixnet" -version = "0.12.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "parity-scale-codec", - "scale-info", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-api", + "sp-application-crypto", ] [[package]] @@ -11111,59 +9742,29 @@ name = "sp-offchain" version = "34.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", -] - -[[package]] -name = "sp-offchain" -version = "34.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", + "sp-api", + "sp-core", + "sp-runtime", ] [[package]] name = "sp-panic-handler" -version = "13.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" -dependencies = [ - "backtrace", - "lazy_static", - "regex", -] - -[[package]] -name = "sp-panic-handler" -version = "13.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "backtrace", - "lazy_static", - "regex", -] - -[[package]] -name = "sp-rpc" -version = "32.0.0" +version = "13.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "rustc-hash 1.1.0", - "serde", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "backtrace", + "lazy_static", + "regex", ] [[package]] name = "sp-rpc" version = "32.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "rustc-hash 1.1.0", "serde", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core", ] [[package]] @@ -11183,38 +9784,12 @@ dependencies = [ "scale-info", "serde", "simple-mermaid", - "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-weights 31.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "tracing", -] - -[[package]] -name = "sp-runtime" -version = "39.0.2" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "docify", - "either", - "hash256-std-hasher", - "impl-trait-for-tuples", - "log", - "num-traits", - "parity-scale-codec", - "paste", - "rand", - "scale-info", - "serde", - "simple-mermaid", - "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-weights 31.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-application-crypto", + "sp-arithmetic", + "sp-core", + "sp-io", + "sp-std", + "sp-weights", "tracing", ] @@ -11228,31 +9803,12 @@ dependencies = [ "parity-scale-codec", "polkavm-derive", "primitive-types", - "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime-interface-proc-macro 18.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-tracing 17.0.1", - "sp-wasm-interface 21.0.1", - "static_assertions", -] - -[[package]] -name = "sp-runtime-interface" -version = "28.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "bytes", - "impl-trait-for-tuples", - "parity-scale-codec", - "polkavm-derive", - "primitive-types", - "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime-interface-proc-macro 18.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-storage 21.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-tracing 17.0.0", - "sp-wasm-interface 21.0.0", + "sp-externalities", + "sp-runtime-interface-proc-macro", + "sp-std", + "sp-storage", + "sp-tracing", + "sp-wasm-interface", "static_assertions", ] @@ -11269,33 +9825,6 @@ dependencies = [ "syn 2.0.79", ] -[[package]] -name = "sp-runtime-interface-proc-macro" -version = "18.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "Inflector", - "expander", - "proc-macro-crate 3.2.0", - "proc-macro2", - "quote", - "syn 2.0.79", -] - -[[package]] -name = "sp-session" -version = "35.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "parity-scale-codec", - "scale-info", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-staking 34.0.0", -] - [[package]] name = "sp-session" version = "36.0.0" @@ -11303,24 +9832,11 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable dependencies = [ "parity-scale-codec", "scale-info", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-keystore 0.40.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-staking 36.0.0", -] - -[[package]] -name = "sp-staking" -version = "34.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "impl-trait-for-tuples", - "parity-scale-codec", - "scale-info", - "serde", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", + "sp-api", + "sp-core", + "sp-keystore", + "sp-runtime", + "sp-staking", ] [[package]] @@ -11332,8 +9848,8 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", + "sp-core", + "sp-runtime", ] [[package]] @@ -11347,30 +9863,10 @@ dependencies = [ "parking_lot 0.12.3", "rand", "smallvec", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-panic-handler 13.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "thiserror", - "tracing", - "trie-db", -] - -[[package]] -name = "sp-state-machine" -version = "0.43.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "hash-db", - "log", - "parity-scale-codec", - "parking_lot 0.12.3", - "rand", - "smallvec", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-panic-handler 13.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core", + "sp-externalities", + "sp-panic-handler", + "sp-trie", "thiserror", "tracing", "trie-db", @@ -11389,37 +9885,13 @@ dependencies = [ "rand", "scale-info", "sha2 0.10.8", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-api", + "sp-application-crypto", + "sp-core", "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "thiserror", - "x25519-dalek", -] - -[[package]] -name = "sp-statement-store" -version = "18.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "aes-gcm", - "curve25519-dalek", - "ed25519-dalek", - "hkdf", - "parity-scale-codec", - "rand", - "scale-info", - "sha2 0.10.8", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-application-crypto 38.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-crypto-hashing 0.1.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-runtime-interface 28.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-externalities", + "sp-runtime", + "sp-runtime-interface", "thiserror", "x25519-dalek", ] @@ -11429,11 +9901,6 @@ name = "sp-std" version = "14.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" -[[package]] -name = "sp-std" -version = "14.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" - [[package]] name = "sp-storage" version = "21.0.0" @@ -11443,19 +9910,7 @@ dependencies = [ "parity-scale-codec", "ref-cast", "serde", - "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", -] - -[[package]] -name = "sp-storage" -version = "21.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "impl-serde", - "parity-scale-codec", - "ref-cast", - "serde", - "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-debug-derive", ] [[package]] @@ -11465,34 +9920,11 @@ source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable dependencies = [ "async-trait", "parity-scale-codec", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "thiserror", -] - -[[package]] -name = "sp-timestamp" -version = "34.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "async-trait", - "parity-scale-codec", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", + "sp-inherents", + "sp-runtime", "thiserror", ] -[[package]] -name = "sp-tracing" -version = "17.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "parity-scale-codec", - "tracing", - "tracing-core", - "tracing-subscriber", -] - [[package]] name = "sp-tracing" version = "17.0.1" @@ -11509,17 +9941,8 @@ name = "sp-transaction-pool" version = "34.0.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", -] - -[[package]] -name = "sp-transaction-pool" -version = "34.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", + "sp-api", + "sp-runtime", ] [[package]] @@ -11530,24 +9953,10 @@ dependencies = [ "async-trait", "parity-scale-codec", "scale-info", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", -] - -[[package]] -name = "sp-transaction-storage-proof" -version = "34.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "async-trait", - "parity-scale-codec", - "scale-info", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-inherents 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-trie 37.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core", + "sp-inherents", + "sp-runtime", + "sp-trie", ] [[package]] @@ -11565,31 +9974,8 @@ dependencies = [ "rand", "scale-info", "schnellru", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "thiserror", - "tracing", - "trie-db", - "trie-root", -] - -[[package]] -name = "sp-trie" -version = "37.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "ahash 0.8.11", - "hash-db", - "lazy_static", - "memory-db", - "nohash-hasher", - "parity-scale-codec", - "parking_lot 0.12.3", - "rand", - "scale-info", - "schnellru", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-externalities 0.29.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-core", + "sp-externalities", "thiserror", "tracing", "trie-db", @@ -11606,27 +9992,10 @@ dependencies = [ "parity-wasm", "scale-info", "serde", - "sp-crypto-hashing-proc-macro 0.1.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-version-proc-macro 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "thiserror", -] - -[[package]] -name = "sp-version" -version = "37.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "impl-serde", - "parity-scale-codec", - "parity-wasm", - "scale-info", - "serde", - "sp-crypto-hashing-proc-macro 0.1.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-runtime 39.0.2", - "sp-std 14.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-version-proc-macro 14.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-crypto-hashing-proc-macro", + "sp-runtime", + "sp-std", + "sp-version-proc-macro", "thiserror", ] @@ -11641,29 +10010,6 @@ dependencies = [ "syn 2.0.79", ] -[[package]] -name = "sp-version-proc-macro" -version = "14.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "parity-scale-codec", - "proc-macro2", - "quote", - "syn 2.0.79", -] - -[[package]] -name = "sp-wasm-interface" -version = "21.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "anyhow", - "impl-trait-for-tuples", - "log", - "parity-scale-codec", - "wasmtime", -] - [[package]] name = "sp-wasm-interface" version = "21.0.1" @@ -11686,22 +10032,8 @@ dependencies = [ "scale-info", "serde", "smallvec", - "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", -] - -[[package]] -name = "sp-weights" -version = "31.0.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "bounded-collections", - "parity-scale-codec", - "scale-info", - "serde", - "smallvec", - "sp-arithmetic 26.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", - "sp-debug-derive 14.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-arithmetic", + "sp-debug-derive", ] [[package]] @@ -11750,9 +10082,9 @@ dependencies = [ [[package]] name = "sqlx" -version = "0.7.4" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9a2ccff1a000a5a59cd33da541d9f2fdcd9e6e8229cc200565942bff36d0aaa" +checksum = "93334716a037193fac19df402f8571269c84a00852f6a7066b5d2616dcd64d3e" dependencies = [ "sqlx-core", "sqlx-macros", @@ -11761,24 +10093,24 @@ dependencies = [ [[package]] name = "sqlx-core" -version = "0.7.4" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24ba59a9342a3d9bab6c56c118be528b27c9b60e490080e9711a04dccac83ef6" +checksum = "d4d8060b456358185f7d50c55d9b5066ad956956fddec42ee2e8567134a8936e" dependencies = [ - "ahash 0.8.11", "atoi", "byteorder", "bytes", "crc", "crossbeam-queue", "either", - "event-listener 2.5.3", + "event-listener 5.3.1", "futures-channel", "futures-core", "futures-intrusive", "futures-io", "futures-util", - "hashlink", + "hashbrown 0.14.5", + "hashlink 0.9.1", "hex", "indexmap 2.6.0", "log", @@ -11800,26 +10132,26 @@ dependencies = [ [[package]] name = "sqlx-macros" -version = "0.7.4" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ea40e2345eb2faa9e1e5e326db8c34711317d2b5e08d0d5741619048a803127" +checksum = "cac0692bcc9de3b073e8d747391827297e075c7710ff6276d9f7a1f3d58c6657" dependencies = [ "proc-macro2", "quote", "sqlx-core", "sqlx-macros-core", - "syn 1.0.109", + "syn 2.0.79", ] [[package]] name = "sqlx-macros-core" -version = "0.7.4" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5833ef53aaa16d860e92123292f1f6a3d53c34ba8b1969f152ef1a7bb803f3c8" +checksum = "1804e8a7c7865599c9c79be146dc8a9fd8cc86935fa641d3ea58e5f0688abaa5" dependencies = [ "dotenvy", "either", - "heck 0.4.1", + "heck 0.5.0", "hex", "once_cell", "proc-macro2", @@ -11829,7 +10161,7 @@ dependencies = [ "sha2 0.10.8", "sqlx-core", "sqlx-sqlite", - "syn 1.0.109", + "syn 2.0.79", "tempfile", "tokio", "url", @@ -11837,9 +10169,9 @@ dependencies = [ [[package]] name = "sqlx-sqlite" -version = "0.7.4" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b244ef0a8414da0bed4bb1910426e890b19e5e9bccc27ada6b797d05c55ae0aa" +checksum = "d5b2cf34a45953bfd3daaf3db0f7a7878ab9b7a6b91b422d24a7a9e4c857b680" dependencies = [ "atoi", "flume", @@ -11852,10 +10184,10 @@ dependencies = [ "log", "percent-encoding", "serde", + "serde_urlencoded", "sqlx-core", "tracing", "url", - "urlencoding", ] [[package]] @@ -11881,8 +10213,8 @@ checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" [[package]] name = "staging-xcm" -version = "14.1.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +version = "14.2.0" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "array-bytes", "bounded-collections", @@ -11893,7 +10225,8 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-weights 31.0.0 (git+https://github.com/paritytech/polkadot-sdk?branch=stable2407)", + "sp-runtime", + "sp-weights", "xcm-procedural", ] @@ -12010,18 +10343,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "substrate-bip39" -version = "0.6.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "hmac 0.12.1", - "pbkdf2", - "schnorrkel", - "sha2 0.10.8", - "zeroize", -] - [[package]] name = "substrate-build-script-utils" version = "11.0.0" @@ -12046,16 +10367,16 @@ dependencies = [ "docify", "frame-system-rpc-runtime-api", "futures", - "jsonrpsee 0.24.7", + "jsonrpsee", "log", "parity-scale-codec", - "sc-rpc-api 0.44.0", - "sc-transaction-pool-api 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-block-builder 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", + "sc-rpc-api", + "sc-transaction-pool-api", + "sp-api", + "sp-block-builder", + "sp-blockchain", + "sp-core", + "sp-runtime", ] [[package]] @@ -12072,20 +10393,6 @@ dependencies = [ "tokio", ] -[[package]] -name = "substrate-prometheus-endpoint" -version = "0.17.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" -dependencies = [ - "http-body-util", - "hyper 1.5.0", - "hyper-util", - "log", - "prometheus", - "thiserror", - "tokio", -] - [[package]] name = "substrate-wasm-builder" version = "24.0.1" @@ -12102,12 +10409,12 @@ dependencies = [ "parity-scale-codec", "parity-wasm", "polkavm-linker", - "sc-executor 0.40.1", - "sp-core 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-io 38.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-maybe-compressed-blob 11.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-tracing 17.0.1", - "sp-version 37.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sc-executor", + "sp-core", + "sp-io", + "sp-maybe-compressed-blob", + "sp-tracing", + "sp-version", "strum 0.26.3", "tempfile", "toml 0.8.19", @@ -12133,14 +10440,14 @@ dependencies = [ name = "subtensor-custom-rpc" version = "0.0.2" dependencies = [ - "jsonrpsee 0.24.7", + "jsonrpsee", "pallet-subtensor", "parity-scale-codec", "serde", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-blockchain 37.0.1 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-rpc 32.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", - "sp-runtime 39.0.1", + "sp-api", + "sp-blockchain", + "sp-rpc", + "sp-runtime", "subtensor-custom-rpc-runtime-api", ] @@ -12148,10 +10455,10 @@ dependencies = [ name = "subtensor-custom-rpc-runtime-api" version = "0.0.2" dependencies = [ - "frame-support 38.0.0", + "frame-support", "pallet-subtensor", "serde", - "sp-api 34.0.0 (git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409)", + "sp-api", ] [[package]] @@ -12853,12 +11160,6 @@ dependencies = [ "tinyvec", ] -[[package]] -name = "unicode-segmentation" -version = "1.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" - [[package]] name = "unicode-width" version = "0.1.14" @@ -12932,12 +11233,6 @@ dependencies = [ "percent-encoding", ] -[[package]] -name = "urlencoding" -version = "2.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da" - [[package]] name = "utf-8" version = "0.7.6" @@ -13778,7 +12073,7 @@ dependencies = [ [[package]] name = "xcm-procedural" version = "10.1.0" -source = "git+https://github.com/paritytech/polkadot-sdk?branch=stable2407#fff69c3c96346ed91cf127ec313793682e4d9868" +source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "Inflector", "proc-macro2", diff --git a/Cargo.toml b/Cargo.toml index 11a4e8e67..8f3e35e03 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -164,31 +164,31 @@ sc-network-sync = { git = "https://github.com/paritytech/polkadot-sdk.git", tag substrate-prometheus-endpoint = { git = "https://github.com/paritytech/polkadot-sdk.git", tag = "polkadot-stable2409", default-features = false } # Frontier -fp-evm = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } -fp-rpc = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } -fp-self-contained = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false, features = [ +fp-evm = { git = "https://github.com/gztensor/frontier", rev = "b8e3025", default-features = false } +fp-rpc = { git = "https://github.com/gztensor/frontier", rev = "b8e3025", default-features = false } +fp-self-contained = { git = "https://github.com/gztensor/frontier", rev = "b8e3025", default-features = false, features = [ "serde", ] } -fp-account = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } -fc-storage = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } -fc-db = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } -fc-consensus = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } -fp-dynamic-fee = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } -fc-api = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } -fc-rpc = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } -fc-rpc-core = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } -fc-mapping-sync = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } +fp-account = { git = "https://github.com/gztensor/frontier", rev = "b8e3025", default-features = false } +fc-storage = { git = "https://github.com/gztensor/frontier", rev = "b8e3025", default-features = false } +fc-db = { git = "https://github.com/gztensor/frontier", rev = "b8e3025", default-features = false } +fc-consensus = { git = "https://github.com/gztensor/frontier", rev = "b8e3025", default-features = false } +fp-dynamic-fee = { git = "https://github.com/gztensor/frontier", rev = "b8e3025", default-features = false } +fc-api = { git = "https://github.com/gztensor/frontier", rev = "b8e3025", default-features = false } +fc-rpc = { git = "https://github.com/gztensor/frontier", rev = "b8e3025", default-features = false } +fc-rpc-core = { git = "https://github.com/gztensor/frontier", rev = "b8e3025", default-features = false } +fc-mapping-sync = { git = "https://github.com/gztensor/frontier", rev = "b8e3025", default-features = false } # Frontier FRAME -pallet-base-fee = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } -pallet-dynamic-fee = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } -pallet-ethereum = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } -pallet-evm = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } -pallet-evm-chain-id = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } -pallet-evm-precompile-modexp = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } -pallet-evm-precompile-sha3fips = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } -pallet-evm-precompile-simple = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } -pallet-hotfix-sufficients = { git = "https://github.com/gztensor/frontier", branch = "master", default-features = false } +pallet-base-fee = { git = "https://github.com/gztensor/frontier", rev = "b8e3025", default-features = false } +pallet-dynamic-fee = { git = "https://github.com/gztensor/frontier", rev = "b8e3025", default-features = false } +pallet-ethereum = { git = "https://github.com/gztensor/frontier", rev = "b8e3025", default-features = false } +pallet-evm = { git = "https://github.com/gztensor/frontier", rev = "b8e3025", default-features = false } +pallet-evm-chain-id = { git = "https://github.com/gztensor/frontier", rev = "b8e3025", default-features = false } +pallet-evm-precompile-modexp = { git = "https://github.com/gztensor/frontier", rev = "b8e3025", default-features = false } +pallet-evm-precompile-sha3fips = { git = "https://github.com/gztensor/frontier", rev = "b8e3025", default-features = false } +pallet-evm-precompile-simple = { git = "https://github.com/gztensor/frontier", rev = "b8e3025", default-features = false } +pallet-hotfix-sufficients = { git = "https://github.com/gztensor/frontier", rev = "b8e3025", default-features = false } frame-metadata = "16" From 8d084b1ccf292806973f56cafd5662fdb1ff67c8 Mon Sep 17 00:00:00 2001 From: Liam Date: Thu, 31 Oct 2024 10:44:36 +0400 Subject: [PATCH 58/60] fix merge --- .github/workflows/check-rust.yml | 44 +++++++++++++++----------------- 1 file changed, 21 insertions(+), 23 deletions(-) diff --git a/.github/workflows/check-rust.yml b/.github/workflows/check-rust.yml index 73a402fc5..80d543163 100644 --- a/.github/workflows/check-rust.yml +++ b/.github/workflows/check-rust.yml @@ -113,8 +113,8 @@ jobs: - name: cargo clippy --workspace --all-targets -- -D warnings run: cargo clippy --workspace --all-targets -- -D warnings - cargo-clippy-all-features: - name: cargo clippy --all-features + cargo-check-lints: + name: check custom lints runs-on: SubtensorCI strategy: matrix: @@ -122,24 +122,21 @@ jobs: - stable rust-target: - x86_64-unknown-linux-gnu - # - x86_64-apple-darwin + # - x86_64-apple-darwin os: - ubuntu-latest # - macos-latest - include: - - os: ubuntu-latest - # - os: macos-latest env: RELEASE_NAME: development - # RUSTFLAGS: -A warnings RUSTV: ${{ matrix.rust-branch }} + RUSTFLAGS: -D warnings RUST_BACKTRACE: full RUST_BIN_DIR: target/${{ matrix.rust-target }} SKIP_WASM_BUILD: 1 TARGET: ${{ matrix.rust-target }} steps: - name: Check-out repository under $GITHUB_WORKSPACE - uses: actions/checkout@v2 + uses: actions/checkout@v4 - name: Install dependencies run: | @@ -158,12 +155,14 @@ jobs: with: key: ${{ matrix.os }}-${{ env.RUST_BIN_DIR }} - - name: cargo clippy --workspace --all-targets --all-features -- -D warnings - run: cargo clippy --workspace --all-targets --all-features -- -D warnings + - name: check lints + run: | + set -o pipefail + cargo check 2>&1 | sed -r "s/\x1B\[[0-9;]*[mK]//g" | grep "warning:" && exit 1 + echo "No warnings found." - # runs cargo test --workspace - cargo-test: - name: cargo test + cargo-clippy-all-features: + name: cargo clippy --all-features runs-on: SubtensorCI strategy: matrix: @@ -188,7 +187,7 @@ jobs: TARGET: ${{ matrix.rust-target }} steps: - name: Check-out repository under $GITHUB_WORKSPACE - uses: actions/checkout@v4 + uses: actions/checkout@v2 - name: Install dependencies run: | @@ -202,17 +201,17 @@ jobs: components: rustfmt, clippy profile: minimal - - name: Utilize Rust shared cached + - name: Utilize Shared Rust Cache uses: Swatinem/rust-cache@v2.2.1 with: key: ${{ matrix.os }}-${{ env.RUST_BIN_DIR }} - - name: cargo test --workspace - run: cargo test --workspace + - name: cargo clippy --workspace --all-targets --all-features -- -D warnings + run: cargo clippy --workspace --all-targets --all-features -- -D warnings - # runs cargo test --workspace --features=runtime-benchmarks - cargo-test-benchmarks: - name: cargo test w/benchmarks + # runs cargo test --workspace + cargo-test: + name: cargo test runs-on: SubtensorCI strategy: matrix: @@ -256,8 +255,8 @@ jobs: with: key: ${{ matrix.os }}-${{ env.RUST_BIN_DIR }} - - name: cargo test --workspace --features=runtime-benchmarks - run: cargo test --workspace --features=runtime-benchmarks + - name: cargo test --workspace --all-features + run: cargo test --workspace --all-features # ensures cargo fix has no trivial changes that can be applied cargo-fix: @@ -339,4 +338,3 @@ jobs: - name: Check features run: zepter run check - From 6513d4662223748eb68818030d26f50b36e3145a Mon Sep 17 00:00:00 2001 From: Liam Date: Thu, 31 Oct 2024 10:44:40 +0400 Subject: [PATCH 59/60] update cargo.lock --- Cargo.lock | 289 ++++++++++++++++++++++++++++------------------------- 1 file changed, 151 insertions(+), 138 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 6bca0feec..7e78684b1 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -23,11 +23,11 @@ dependencies = [ [[package]] name = "addr2line" -version = "0.24.2" +version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1" +checksum = "f5fb1d8e4442bd405fdfd1dacb42792696b0cf9cb15882e5d097b742a676d375" dependencies = [ - "gimli 0.31.1", + "gimli 0.31.0", ] [[package]] @@ -548,11 +548,11 @@ version = "0.3.74" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8d82cb332cdfaed17ae235a638438ac4d4839913cc2af585c3c6746e8f8bee1a" dependencies = [ - "addr2line 0.24.2", + "addr2line 0.24.1", "cfg-if", "libc", "miniz_oxide", - "object 0.36.5", + "object 0.36.4", "rustc-demangle", "windows-targets 0.52.6", ] @@ -739,9 +739,9 @@ dependencies = [ [[package]] name = "bounded-collections" -version = "0.2.1" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db436177db0d505b1507f03aca56a41442ae6efdf8b6eaa855d73e52c5b078dc" +checksum = "d32385ecb91a31bddaf908e8dcf4a15aef1bcd3913cc03ebfad02ff6d568abc1" dependencies = [ "log", "parity-scale-codec", @@ -793,9 +793,9 @@ checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" [[package]] name = "bytemuck" -version = "1.19.0" +version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8334215b81e418a0a7bdb8ef0849474f40bb10c8b71f1c4ed315cff49f32494d" +checksum = "94bbb0ad554ad961ddc5da507a12a29b14e4ae5bda06b19f575a3e6079d2e2ae" [[package]] name = "byteorder" @@ -864,9 +864,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.1.30" +version = "1.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b16803a61b81d9eabb7eae2588776c4c1e584b738ede45fdbb4c972cec1e9945" +checksum = "812acba72f0a070b003d3697490d2b55b837230ae7c6c6497f05cc2ddbb8d938" dependencies = [ "jobserver", "libc", @@ -1011,9 +1011,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.20" +version = "4.5.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b97f376d85a664d5837dbae44bf546e6477a679ff6610010f17276f686d867e8" +checksum = "7be5744db7978a28d9df86a214130d106a89ce49644cbc4e3f0c22c3fba30615" dependencies = [ "clap_builder", "clap_derive", @@ -1021,9 +1021,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.20" +version = "4.5.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19bc80abd44e4bed93ca373a0704ccbd1b710dc5749406201bb018272808dc54" +checksum = "a5fbc17d3ef8278f55b282b2a2e75ae6f6c7d4bb70ed3d0382375104bfafdb4b" dependencies = [ "anstream", "anstyle", @@ -1445,9 +1445,9 @@ dependencies = [ [[package]] name = "cxx" -version = "1.0.129" +version = "1.0.128" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cbdc8cca144dce1c4981b5c9ab748761619979e515c3d53b5df385c677d1d007" +checksum = "54ccead7d199d584d139148b04b4a368d1ec7556a1d9ea2548febb1b9d49f9a4" dependencies = [ "cc", "cxxbridge-flags", @@ -1457,9 +1457,9 @@ dependencies = [ [[package]] name = "cxx-build" -version = "1.0.129" +version = "1.0.128" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5764c3142ab44fcf857101d12c0ddf09c34499900557c764f5ad0597159d1fc" +checksum = "c77953e99f01508f89f55c494bfa867171ef3a6c8cea03d26975368f2121a5c1" dependencies = [ "cc", "codespan-reporting", @@ -1472,15 +1472,15 @@ dependencies = [ [[package]] name = "cxxbridge-flags" -version = "1.0.129" +version = "1.0.128" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d422aff542b4fa28c2ce8e5cc202d42dbf24702345c1fba3087b2d3f8a1b90ff" +checksum = "65777e06cc48f0cb0152024c77d6cf9e4bdb4408e7b48bea993d42fa0f5b02b6" [[package]] name = "cxxbridge-macro" -version = "1.0.129" +version = "1.0.128" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1719100f31492cd6adeeab9a0f46cdbc846e615fdb66d7b398aa46ec7fdd06f" +checksum = "98532a60dedaebc4848cb2cba5023337cc9ea3af16a5b062633fabfd9f18fb60" dependencies = [ "proc-macro2", "quote", @@ -2420,9 +2420,9 @@ dependencies = [ [[package]] name = "flume" -version = "0.11.0" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55ac459de2512911e4b674ce33cf20befaba382d05b62b008afc1c8b57cbf181" +checksum = "da0e4dd2a88388a1f4ccc7c9ce104604dab68d9f408dc34cd45823d5a9069095" dependencies = [ "futures-core", "futures-sink", @@ -2435,12 +2435,6 @@ version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" -[[package]] -name = "foldhash" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f81ec6369c545a7d40e4589b5597581fa1c441fe1cce96dd1de43159910a36a2" - [[package]] name = "foreign-types" version = "0.3.2" @@ -2901,9 +2895,9 @@ checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" [[package]] name = "futures" -version = "0.3.31" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876" +checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0" dependencies = [ "futures-channel", "futures-core", @@ -2926,9 +2920,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.31" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10" +checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" dependencies = [ "futures-core", "futures-sink", @@ -2936,15 +2930,15 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.31" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e" +checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" [[package]] name = "futures-executor" -version = "0.3.31" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e28d1d997f585e54aebc3f97d39e72338912123a67330d723fdbb564d646c9f" +checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d" dependencies = [ "futures-core", "futures-task", @@ -2965,9 +2959,9 @@ dependencies = [ [[package]] name = "futures-io" -version = "0.3.31" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6" +checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" [[package]] name = "futures-lite" @@ -2981,9 +2975,9 @@ dependencies = [ [[package]] name = "futures-macro" -version = "0.3.31" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" +checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" dependencies = [ "proc-macro2", "quote", @@ -3002,15 +2996,15 @@ dependencies = [ [[package]] name = "futures-sink" -version = "0.3.31" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7" +checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" [[package]] name = "futures-task" -version = "0.3.31" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988" +checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" [[package]] name = "futures-timer" @@ -3020,9 +3014,9 @@ checksum = "f288b0a4f20f9a56b5d1da57e2227c661b7b16168e2f72365f57b63326e29b24" [[package]] name = "futures-util" -version = "0.3.31" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81" +checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" dependencies = [ "futures-channel", "futures-core", @@ -3129,9 +3123,9 @@ dependencies = [ [[package]] name = "gimli" -version = "0.31.1" +version = "0.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" +checksum = "32085ea23f3234fc7846555e85283ba4de91e21016dc0455a16286d87a292d64" [[package]] name = "glob" @@ -3270,11 +3264,6 @@ name = "hashbrown" version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb" -dependencies = [ - "allocator-api2", - "equivalent", - "foldhash", -] [[package]] name = "hashlink" @@ -3471,9 +3460,9 @@ checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" [[package]] name = "hyper" -version = "0.14.31" +version = "0.14.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c08302e8fa335b151b788c775ff56e7a03ae64ff85c548ee820fecb70356e85" +checksum = "a152ddd61dfaec7273fe8419ab357f33aee0d914c5f4efbf0d96fa749eea5ec9" dependencies = [ "bytes", "futures-channel", @@ -3495,9 +3484,9 @@ dependencies = [ [[package]] name = "hyper" -version = "1.5.0" +version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbbff0a806a4728c99295b254c8838933b5b082d75e3cb70c8dab21fdfbcfa9a" +checksum = "50dfd22e0e76d0f662d429a5f80fcaf3855009297eab6a0a9f8543834744ba05" dependencies = [ "bytes", "futures-channel", @@ -3521,7 +3510,7 @@ checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590" dependencies = [ "futures-util", "http 0.2.12", - "hyper 0.14.31", + "hyper 0.14.30", "log", "rustls 0.21.12", "rustls-native-certs", @@ -3539,7 +3528,7 @@ dependencies = [ "futures-util", "http 1.1.0", "http-body 1.0.1", - "hyper 1.5.0", + "hyper 1.4.1", "pin-project-lite", "tokio", "tower-service", @@ -3645,7 +3634,7 @@ dependencies = [ "bytes", "futures", "http 0.2.12", - "hyper 0.14.31", + "hyper 0.14.30", "log", "rand", "tokio", @@ -3789,9 +3778,9 @@ dependencies = [ [[package]] name = "ipnet" -version = "2.10.1" +version = "2.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddc24109865250148c2e0f3d25d4f0f479571723792d3802153c60922a4fb708" +checksum = "187674a687eed5fe42285b40c6291f9a01517d415fad1c3cbc6a9f778af7fcd4" [[package]] name = "is-terminal" @@ -3828,6 +3817,15 @@ dependencies = [ "either", ] +[[package]] +name = "itertools" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" +dependencies = [ + "either", +] + [[package]] name = "itoa" version = "1.0.11" @@ -3845,18 +3843,18 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.72" +version = "0.3.70" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a88f1bda2bd75b0452a14784937d796722fdebfe50df998aeb3f0b7603019a9" +checksum = "1868808506b929d7b0cfa8f75951347aa71bb21144b7791bae35d9bccfcfe37a" dependencies = [ "wasm-bindgen", ] [[package]] name = "jsonrpsee" -version = "0.24.7" +version = "0.24.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5c71d8c1a731cc4227c2f698d377e7848ca12c8a48866fc5e6951c43a4db843" +checksum = "126b48a5acc3c52fbd5381a77898cb60e145123179588a29e7ac48f9c06e401b" dependencies = [ "jsonrpsee-core", "jsonrpsee-proc-macros", @@ -3868,9 +3866,9 @@ dependencies = [ [[package]] name = "jsonrpsee-core" -version = "0.24.7" +version = "0.24.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2882f6f8acb9fdaec7cefc4fd607119a9bd709831df7d7672a1d3b644628280" +checksum = "b0e503369a76e195b65af35058add0e6900b794a4e9a9316900ddd3a87a80477" dependencies = [ "async-trait", "bytes", @@ -3891,9 +3889,9 @@ dependencies = [ [[package]] name = "jsonrpsee-proc-macros" -version = "0.24.7" +version = "0.24.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06c01ae0007548e73412c08e2285ffe5d723195bf268bce67b1b77c3bb2a14d" +checksum = "fc660a9389e2748e794a40673a4155d501f32db667757cdb80edeff0306b489b" dependencies = [ "heck 0.5.0", "proc-macro-crate 3.2.0", @@ -3904,15 +3902,15 @@ dependencies = [ [[package]] name = "jsonrpsee-server" -version = "0.24.7" +version = "0.24.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82ad8ddc14be1d4290cd68046e7d1d37acd408efed6d3ca08aefcc3ad6da069c" +checksum = "af6e6c9b6d975edcb443565d648b605f3e85a04ec63aa6941811a8894cc9cded" dependencies = [ "futures-util", "http 1.1.0", "http-body 1.0.1", "http-body-util", - "hyper 1.5.0", + "hyper 1.4.1", "hyper-util", "jsonrpsee-core", "jsonrpsee-types", @@ -3931,9 +3929,9 @@ dependencies = [ [[package]] name = "jsonrpsee-types" -version = "0.24.7" +version = "0.24.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a178c60086f24cc35bb82f57c651d0d25d99c4742b4d335de04e97fa1f08a8a1" +checksum = "d8fb16314327cbc94fdf7965ef7e4422509cd5597f76d137bd104eb34aeede67" dependencies = [ "http 1.1.0", "serde", @@ -4157,7 +4155,7 @@ dependencies = [ "libp2p-identity", "libp2p-swarm", "log", - "lru 0.12.5", + "lru 0.12.4", "quick-protobuf", "quick-protobuf-codec", "smallvec", @@ -4593,9 +4591,9 @@ dependencies = [ [[package]] name = "linregress" -version = "0.5.4" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9eda9dcf4f2a99787827661f312ac3219292549c2ee992bf9a6248ffb066bf7" +checksum = "4de04dcecc58d366391f9920245b85ffa684558a5ef6e7736e754347c3aea9c2" dependencies = [ "nalgebra", ] @@ -4706,11 +4704,11 @@ dependencies = [ [[package]] name = "lru" -version = "0.12.5" +version = "0.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38" +checksum = "37ee39891760e7d94734f6f63fedc29a2e4a152f836120753a72503f09fcf904" dependencies = [ - "hashbrown 0.15.0", + "hashbrown 0.14.5", ] [[package]] @@ -5147,12 +5145,13 @@ dependencies = [ [[package]] name = "nalgebra" -version = "0.33.1" +version = "0.32.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bf139e93ad757869338ad85239cb1d6c067b23b94e5846e637ca6328ee4be60" +checksum = "7b5c17de023a86f59ed79891b2e5d5a94c705dbe904a5b5c9c952ea6221b03e4" dependencies = [ "approx", "matrixmultiply", + "nalgebra-macros", "num-complex", "num-rational", "num-traits", @@ -5160,6 +5159,17 @@ dependencies = [ "typenum 1.17.0", ] +[[package]] +name = "nalgebra-macros" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "254a5372af8fc138e36684761d3c0cdb758a4410e938babcff1c860ce14ddbfc" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", +] + [[package]] name = "names" version = "0.14.0" @@ -5600,7 +5610,7 @@ version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" dependencies = [ - "proc-macro-crate 3.2.0", + "proc-macro-crate 1.1.3", "proc-macro2", "quote", "syn 2.0.79", @@ -5629,9 +5639,9 @@ dependencies = [ [[package]] name = "object" -version = "0.36.5" +version = "0.36.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aedf0a2d09c573ed1d8d85b30c119153926a2b36dce0ab28322c09a117a4683e" +checksum = "084f1a5821ac4c651660a94a7153d27ac9d8a53736203f58b31945ded098070a" dependencies = [ "memchr", ] @@ -5656,9 +5666,12 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.20.2" +version = "1.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" +checksum = "82881c4be219ab5faaf2ad5e5e5ecdff8c66bd7402ca3160975c93b24961afd1" +dependencies = [ + "portable-atomic", +] [[package]] name = "opaque-debug" @@ -5674,9 +5687,9 @@ checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] name = "openssl" -version = "0.10.67" +version = "0.10.66" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b8cefcf97f41316955f9294cd61f639bdcfa9f2f230faac6cb896aa8ab64704" +checksum = "9529f4786b70a3e8c61e11179af17ab6188ad8d0ded78c5529441ed39d4bd9c1" dependencies = [ "bitflags 2.6.0", "cfg-if", @@ -5715,9 +5728,9 @@ dependencies = [ [[package]] name = "openssl-sys" -version = "0.9.104" +version = "0.9.103" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45abf306cbf99debc8195b66b7346498d7b10c210de50418b5ccd7ceba08c741" +checksum = "7f9e8deee91df40a943c71b917e5874b951d32a802526c85721ce3b776c929d6" dependencies = [ "cc", "libc", @@ -6474,9 +6487,9 @@ checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" [[package]] name = "pest" -version = "2.7.14" +version = "2.7.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "879952a81a83930934cbf1786752d6dedc3b1f29e8f8fb2ad1d0a36f377cf442" +checksum = "fdbef9d1d47087a895abd220ed25eb4ad973a5e26f6a4367b038c25e28dfc2d9" dependencies = [ "memchr", "thiserror", @@ -6485,9 +6498,9 @@ dependencies = [ [[package]] name = "pest_derive" -version = "2.7.14" +version = "2.7.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d214365f632b123a47fd913301e14c946c61d1c183ee245fa76eb752e59a02dd" +checksum = "4d3a6e3394ec80feb3b6393c725571754c6188490265c61aaf260810d6b95aa0" dependencies = [ "pest", "pest_generator", @@ -6495,9 +6508,9 @@ dependencies = [ [[package]] name = "pest_generator" -version = "2.7.14" +version = "2.7.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb55586734301717aea2ac313f50b2eb8f60d2fc3dc01d190eefa2e625f60c4e" +checksum = "94429506bde1ca69d1b5601962c73f4172ab4726571a59ea95931218cb0e930e" dependencies = [ "pest", "pest_meta", @@ -6508,9 +6521,9 @@ dependencies = [ [[package]] name = "pest_meta" -version = "2.7.14" +version = "2.7.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b75da2a70cf4d9cb76833c990ac9cd3923c9a8905a8929789ce347c84564d03d" +checksum = "ac8a071862e93690b6e34e9a5fb8e33ff3734473ac0245b27232222c4906a33f" dependencies = [ "once_cell", "pest", @@ -6529,18 +6542,18 @@ dependencies = [ [[package]] name = "pin-project" -version = "1.1.6" +version = "1.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf123a161dde1e524adf36f90bc5d8d3462824a9c43553ad07a8183161189ec" +checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.1.6" +version = "1.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4502d8515ca9f32f1fb543d987f63d95a14934883db45bdb48060b6b69257f8" +checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" dependencies = [ "proc-macro2", "quote", @@ -6858,9 +6871,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.88" +version = "1.0.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c3a7fc5db1e57d5a779a352c8cdb57b29aa4c40cc69c3a68a7fedc815fbf2f9" +checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" dependencies = [ "unicode-ident", ] @@ -6971,7 +6984,7 @@ checksum = "22505a5c94da8e3b7c2996394d1c933236c4d743e81a410bcca4e6989fc066a4" dependencies = [ "bytes", "heck 0.5.0", - "itertools 0.11.0", + "itertools 0.12.1", "log", "multimap 0.10.0", "once_cell", @@ -7004,7 +7017,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "81bddcdb20abf9501610992b6759a4c888aef7d1a7247ef75e2404275ac24af1" dependencies = [ "anyhow", - "itertools 0.11.0", + "itertools 0.12.1", "proc-macro2", "quote", "syn 2.0.79", @@ -7673,9 +7686,9 @@ dependencies = [ [[package]] name = "rustversion" -version = "1.0.18" +version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e819f2bc632f285be6d7cd36e25940d45b2391dd6d9b939e79de557f7014248" +checksum = "955d28af4278de8121b7ebeb796b6a45735dc01436d898801014aced2773a3d6" [[package]] name = "rw-stream-sink" @@ -8442,7 +8455,7 @@ dependencies = [ "fnv", "futures", "futures-timer", - "hyper 0.14.31", + "hyper 0.14.30", "hyper-rustls", "log", "num_cpus", @@ -8538,7 +8551,7 @@ dependencies = [ "governor", "http 1.1.0", "http-body-util", - "hyper 1.5.0", + "hyper 1.4.1", "ip_network", "jsonrpsee", "log", @@ -8854,9 +8867,9 @@ checksum = "f0cded6518aa0bd6c1be2b88ac81bf7044992f0f154bfbabd5ad34f43512abcb" [[package]] name = "schannel" -version = "0.1.26" +version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01227be5826fa0690321a2ba6c5cd57a19cf3f6a09e76973b58e61de6ab9d1c1" +checksum = "e9aaafd5a2b6e3d657ff009d82fbd630b6bd54dd4eb06f21693925cdf80f9b8b" dependencies = [ "windows-sys 0.59.0", ] @@ -9243,9 +9256,9 @@ dependencies = [ [[package]] name = "simba" -version = "0.9.0" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3a386a501cd104797982c15ae17aafe8b9261315b5d07e3ec803f2ea26be0fa" +checksum = "061507c94fc6ab4ba1c9a0305018408e312e17c041eb63bef8aa726fa33aceae" dependencies = [ "approx", "num-complex", @@ -10192,9 +10205,9 @@ dependencies = [ [[package]] name = "ss58-registry" -version = "1.51.0" +version = "1.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19409f13998e55816d1c728395af0b52ec066206341d939e22e7766df9b494b8" +checksum = "43fce22ed1df64d04b262351c8f9d5c6da4f76f79f25ad15529792f893fad25d" dependencies = [ "Inflector", "num-format", @@ -10385,7 +10398,7 @@ version = "0.17.0" source = "git+https://github.com/paritytech/polkadot-sdk.git?tag=polkadot-stable2409#87971b3e92721bdf10bf40b410eaae779d494ca0" dependencies = [ "http-body-util", - "hyper 1.5.0", + "hyper 1.4.1", "hyper-util", "log", "prometheus", @@ -11271,9 +11284,9 @@ checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" [[package]] name = "w3f-bls" -version = "0.1.6" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a48c48447120a85b0bdb897ba9426a7aa15b4229498a2e19103e8c9368dd4b2" +checksum = "9c5da5fa2c6afa2c9158eaa7cd9aee249765eb32b5fb0c63ad8b9e79336a47ec" dependencies = [ "ark-bls12-377", "ark-bls12-381", @@ -11320,9 +11333,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.95" +version = "0.2.93" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "128d1e363af62632b8eb57219c8fd7877144af57558fb2ef0368d0087bddeb2e" +checksum = "a82edfc16a6c469f5f44dc7b571814045d60404b55a0ee849f9bcfa2e63dd9b5" dependencies = [ "cfg-if", "once_cell", @@ -11331,9 +11344,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.95" +version = "0.2.93" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb6dd4d3ca0ddffd1dd1c9c04f94b868c37ff5fac97c30b97cff2d74fce3a358" +checksum = "9de396da306523044d3302746f1208fa71d7532227f15e347e2d93e4145dd77b" dependencies = [ "bumpalo", "log", @@ -11346,9 +11359,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.45" +version = "0.4.43" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc7ec4f8827a71586374db3e87abdb5a2bb3a15afed140221307c3ec06b1f63b" +checksum = "61e9300f63a621e96ed275155c108eb6f843b6a26d053f122ab69724559dc8ed" dependencies = [ "cfg-if", "js-sys", @@ -11358,9 +11371,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.95" +version = "0.2.93" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e79384be7f8f5a9dd5d7167216f022090cf1f9ec128e6e6a482a2cb5c5422c56" +checksum = "585c4c91a46b072c92e908d99cb1dcdf95c5218eeb6f3bf1efa991ee7a68cccf" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -11368,9 +11381,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.95" +version = "0.2.93" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68" +checksum = "afc340c74d9005395cf9dd098506f7f44e38f2b4a21c6aaacf9a105ea5e1e836" dependencies = [ "proc-macro2", "quote", @@ -11381,9 +11394,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.95" +version = "0.2.93" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65fc09f10666a9f147042251e0dda9c18f166ff7de300607007e96bdebc1068d" +checksum = "c62a0a307cb4a311d3a07867860911ca130c3494e8c2719593806c08bc5d0484" [[package]] name = "wasm-instrument" @@ -11656,9 +11669,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.72" +version = "0.3.70" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6488b90108c040df0fe62fa815cbdee25124641df01814dd7282749234c6112" +checksum = "26fdeaafd9bd129f65e7c031593c24d62186301e0c72c8978fa1678be7d532c0" dependencies = [ "js-sys", "wasm-bindgen", From d8eadf3a7cb2acee4f6209dbe7393647fa5e1160 Mon Sep 17 00:00:00 2001 From: Liam Date: Thu, 31 Oct 2024 10:46:06 +0400 Subject: [PATCH 60/60] fix feature propagation --- node/Cargo.toml | 6 +++++- zepter.yaml | 4 ++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/node/Cargo.toml b/node/Cargo.toml index 07790c197..2aba49c96 100644 --- a/node/Cargo.toml +++ b/node/Cargo.toml @@ -119,8 +119,12 @@ rocksdb = [ "sc-service/rocksdb", "fc-db/rocksdb", "fc-mapping-sync/rocksdb", + "fc-rpc/rocksdb" +] +txpool = [ + "fc-rpc/txpool", + "fc-rpc-core/txpool" ] -txpool = ["fc-rpc/txpool"] # Dependencies that are only required if runtime benchmarking should be build. runtime-benchmarks = [ diff --git a/zepter.yaml b/zepter.yaml index 2841580e5..e448fa228 100644 --- a/zepter.yaml +++ b/zepter.yaml @@ -12,13 +12,13 @@ workflows: # Check that `A` activates the features of `B`. "propagate-feature", # These are the features to check: - "--features=try-runtime,runtime-benchmarks,std", + "--features=try-runtime,runtime-benchmarks,std,sql,rocksdb,txpool", # Do not try to add a new section into `[features]` of `A` only because `B` expose that feature. There are edge-cases where this is still needed, but we can add them manually. "--left-side-feature-missing=ignore", # Ignore the case that `A` it outside of the workspace. Otherwise it will report errors in external dependencies that we have no influence on. "--left-side-outside-workspace=ignore", # Some features imply that they activate a specific dependency as non-optional. Otherwise the default behaviour with a `?` is used. - "--feature-enables-dep=try-runtime:frame-try-runtime,runtime-benchmarks:frame-benchmarking", # Auxillary flags: + "--feature-enables-dep=try-runtime:frame-try-runtime,runtime-benchmarks:frame-benchmarking", # Auxillary flags: "--offline", "--locked", "--show-path",