diff --git a/.editorconfig b/.editorconfig index 5c3994630c..7212f67d4c 100644 --- a/.editorconfig +++ b/.editorconfig @@ -1,5 +1,7 @@ root = true + + [*.rs] indent_style=tab indent_size=tab @@ -29,4 +31,14 @@ trim_trailing_whitespace=false [*.expanded.rs] indent_style=off indent_size=off +max_line_length=off + +[weights.rs] +indent_style=off +indent_size=off +max_line_length=off + +[**/weights/*.rs] +indent_style=off +indent_size=off max_line_length=off \ No newline at end of file diff --git a/Cargo.lock b/Cargo.lock index 684627357d..850136fb19 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -211,17 +211,51 @@ dependencies = [ "winapi", ] +[[package]] +name = "anstream" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "342258dd14006105c2b75ab1bd7543a03bdf0cfc94383303ac212a04939dff6f" +dependencies = [ + "anstyle", + "anstyle-parse", + "anstyle-wincon", + "concolor-override", + "concolor-query", + "is-terminal", + "utf8parse", +] + [[package]] name = "anstyle" version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "23ea9e81bd02e310c216d080f6223c179012256e5151c41db88d12c88a1684d2" +[[package]] +name = "anstyle-parse" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7d1bb534e9efed14f3e5f44e7dd1a4f709384023a4165199a4241e18dff0116" +dependencies = [ + "utf8parse", +] + +[[package]] +name = "anstyle-wincon" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3127af6145b149f3287bb9a0d10ad9c5692dba8c53ad48285e5bec4063834fa" +dependencies = [ + "anstyle", + "windows-sys 0.45.0", +] + [[package]] name = "anyhow" -version = "1.0.66" +version = "1.0.70" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "216261ddc8289130e551ddcd5ce8a064710c0d064a4d2895c67151c92b5443f6" +checksum = "7de8ce5e0f9f8d88245311066a578d72b7af3e7088f32783804676302df237e4" [[package]] name = "approx" @@ -317,7 +351,7 @@ checksum = "db8b7511298d5b7784b40b092d9e9dcd3a627a5707e4b5e507931ab0d44eeebf" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", "synstructure", ] @@ -329,7 +363,7 @@ checksum = "726535892e8eae7e70657b4c8ea93d26b8553afb1ce617caee529ef96d7dee6c" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", "synstructure", ] @@ -341,7 +375,7 @@ checksum = "2777730b2039ac0f95f093556e61b6d26cebed5393ca6f152717777cec3a42ed" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -371,6 +405,17 @@ version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9b34d609dfbaf33d6889b2b7106d3ca345eacad44200913df5ba02bfd31d2ba9" +[[package]] +name = "async-channel" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf46fee83e5ccffc220104713af3292ff9bc7c64c7de289f66dae8e38d826833" +dependencies = [ + "concurrent-queue 2.1.0", + "event-listener", + "futures-core", +] + [[package]] name = "async-io" version = "1.10.0" @@ -379,7 +424,7 @@ checksum = "e8121296a9f05be7f34aa4196b1747243b3b62e048bb7906f644f3fbfc490cf7" dependencies = [ "async-lock", "autocfg", - "concurrent-queue", + "concurrent-queue 1.2.4", "futures-lite", "libc", "log", @@ -403,13 +448,13 @@ dependencies = [ [[package]] name = "async-trait" -version = "0.1.64" +version = "0.1.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cd7fce9ba8c3c042128ce72d8b2ddbf3a05747efb67ea0313c635e10bda47a2" +checksum = "b9ccdd8f2a161be9bd5c023df56f1b2a0bd1d83872ae53b71a84a12c9bf6e842" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.12", ] [[package]] @@ -451,7 +496,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -515,66 +560,12 @@ dependencies = [ ] [[package]] -name = "beefy-gadget" -version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" -dependencies = [ - "array-bytes 4.1.0", - "async-trait", - "fnv", - "futures 0.3.25", - "log", - "parity-scale-codec", - "parking_lot 0.12.1", - "sc-client-api", - "sc-consensus", - "sc-keystore", - "sc-network", - "sc-network-common", - "sc-network-gossip", - "sc-utils", - "sp-api", - "sp-application-crypto", - "sp-arithmetic", - "sp-beefy", - "sp-blockchain", - "sp-consensus", - "sp-core", - "sp-keystore", - "sp-mmr-primitives", - "sp-runtime", - "substrate-prometheus-endpoint", - "thiserror", - "wasm-timer", -] - -[[package]] -name = "beefy-gadget-rpc" +name = "binary-merkle-tree" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ - "beefy-gadget", - "futures 0.3.25", - "jsonrpsee", + "hash-db 0.16.0", "log", - "parity-scale-codec", - "parking_lot 0.12.1", - "sc-rpc", - "serde", - "sp-beefy", - "sp-core", - "sp-runtime", - "thiserror", -] - -[[package]] -name = "beefy-merkle-tree" -version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" -dependencies = [ - "sp-api", - "sp-beefy", - "sp-runtime", ] [[package]] @@ -655,18 +646,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5d6d530bdd2d52966a6d03b7a964add7ae1a288d25214066fd4b600f0f796400" dependencies = [ "arrayvec 0.4.12", - "constant_time_eq", + "constant_time_eq 0.1.5", ] [[package]] name = "blake2b_simd" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72936ee4afc7f8f736d1c38383b56480b5497b4617b4a77bdbf1d2ababc76127" +checksum = "3c2f0dc9a68c6317d884f97cc36cf5a3d20ba14ce404227df55e1af708ab04bc" dependencies = [ "arrayref", "arrayvec 0.7.2", - "constant_time_eq", + "constant_time_eq 0.2.5", ] [[package]] @@ -677,7 +668,7 @@ checksum = "db539cc2b5f6003621f1cd9ef92d7ded8ea5232c7de0f9faa2de251cd98730d4" dependencies = [ "arrayref", "arrayvec 0.7.2", - "constant_time_eq", + "constant_time_eq 0.1.5", ] [[package]] @@ -690,7 +681,7 @@ dependencies = [ "arrayvec 0.7.2", "cc", "cfg-if", - "constant_time_eq", + "constant_time_eq 0.1.5", "digest 0.10.5", ] @@ -749,11 +740,23 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8d696c370c750c948ada61c69a0ee2cbbb9c50b1019ddb86d9317157a99c2cae" +[[package]] +name = "bounded-collections" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a071c348a5ef6da1d3a87166b408170b46002382b1dda83992b5c2208cefb370" +dependencies = [ + "log", + "parity-scale-codec", + "scale-info", + "serde", +] + [[package]] name = "bounded-vec" -version = "0.6.0" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3372be4090bf9d4da36bd8ba7ce6ca1669503d0cf6e667236c6df7f053153eb6" +checksum = "68534a48cbf63a4b1323c433cf21238c9ec23711e0df13b08c33e5c2082663ce" dependencies = [ "thiserror", ] @@ -817,6 +820,12 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" +[[package]] +name = "bytemuck" +version = "1.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "17febce684fd15d89027105661fec94afb475cb995fbc59d2865198446ba2eea" + [[package]] name = "byteorder" version = "1.4.3" @@ -866,15 +875,16 @@ dependencies = [ [[package]] name = "cargo_metadata" -version = "0.14.2" +version = "0.15.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4acbb09d9ee8e23699b9634375c72795d095bf268439da88562cf9b501f181fa" +checksum = "08a1ec454bc3eead8719cb56e15dbbfecdbc14e4b3a3ae4936cc6e31f5fc0d07" dependencies = [ "camino", "cargo-platform", "semver 1.0.14", "serde", "serde_json", + "thiserror", ] [[package]] @@ -1026,40 +1036,45 @@ dependencies = [ [[package]] name = "clap" -version = "4.1.4" +version = "4.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f13b9c79b5d1dd500d20ef541215a6423c75829ef43117e1b4d17fd8af0b5d76" +checksum = "046ae530c528f252094e4a77886ee1374437744b2bff1497aa898bbddbbb29b3" dependencies = [ - "bitflags", + "clap_builder", "clap_derive", - "clap_lex", - "is-terminal", "once_cell", +] + +[[package]] +name = "clap_builder" +version = "4.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "223163f58c9a40c3b0a43e1c4b50a9ce09f007ea2cb1ec258a687945b4b7929f" +dependencies = [ + "anstream", + "anstyle", + "bitflags", + "clap_lex", "strsim", - "termcolor", ] [[package]] name = "clap_derive" -version = "4.1.0" +version = "4.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "684a277d672e91966334af371f1a7b5833f9aa00b07c84e92fbce95e00208ce8" +checksum = "3f9644cd56d6b87dbe899ef8b053e331c0637664e9e21a33dfcdc36093f5c5c4" dependencies = [ "heck", - "proc-macro-error", "proc-macro2", "quote", - "syn", + "syn 2.0.12", ] [[package]] name = "clap_lex" -version = "0.3.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d4198f73e42b4936b35b5bb248d81d2b595ecb170da0bac7655c54eedfa8da8" -dependencies = [ - "os_str_bytes", -] +checksum = "8a2dd5a6fe8c6e3502f568a6353e5273bbb15193ad9a89e457b9970798efbea1" [[package]] name = "coarsetime" @@ -1094,6 +1109,21 @@ dependencies = [ "unicode-width", ] +[[package]] +name = "concolor-override" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a855d4a1978dc52fb0536a04d384c2c0c1aa273597f08b77c8c4d3b2eec6037f" + +[[package]] +name = "concolor-query" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88d11d52c3d7ca2e6d0040212be9e4dbbcd78b6447f535b6b561f449427944cf" +dependencies = [ + "windows-sys 0.45.0", +] + [[package]] name = "concurrent-queue" version = "1.2.4" @@ -1103,6 +1133,15 @@ dependencies = [ "cache-padded", ] +[[package]] +name = "concurrent-queue" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c278839b831783b70278b14df4d45e1beb1aad306c07bb796637de9a0e323e8e" +dependencies = [ + "crossbeam-utils", +] + [[package]] name = "console" version = "0.15.2" @@ -1128,6 +1167,12 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc" +[[package]] +name = "constant_time_eq" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13418e745008f7349ec7e449155f419a61b92b58a99cc3616942b926825ec76b" + [[package]] name = "convert_case" version = "0.4.0" @@ -1201,18 +1246,18 @@ checksum = "dcb25d077389e53838a8158c8e99174c5a9d902dee4904320db714f3c653ffba" [[package]] name = "cranelift-bforest" -version = "0.88.2" +version = "0.93.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52056f6d0584484b57fa6c1a65c1fcb15f3780d8b6a758426d9e3084169b2ddd" +checksum = "a7379abaacee0f14abf3204a7606118f0465785252169d186337bcb75030815a" dependencies = [ "cranelift-entity", ] [[package]] name = "cranelift-codegen" -version = "0.88.2" +version = "0.93.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18fed94c8770dc25d01154c3ffa64ed0b3ba9d583736f305fed7beebe5d9cf74" +checksum = "9489fa336927df749631f1008007ced2871068544f40a202ce6d93fbf2366a7b" dependencies = [ "arrayvec 0.7.2", "bumpalo", @@ -1222,6 +1267,7 @@ dependencies = [ "cranelift-entity", "cranelift-isle", "gimli 0.26.2", + "hashbrown 0.12.3", "log", "regalloc2", "smallvec", @@ -1230,33 +1276,33 @@ dependencies = [ [[package]] name = "cranelift-codegen-meta" -version = "0.88.2" +version = "0.93.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c451b81faf237d11c7e4f3165eeb6bac61112762c5cfe7b4c0fb7241474358f" +checksum = "05bbb67da91ec721ed57cef2f7c5ef7728e1cd9bde9ffd3ef8601022e73e3239" dependencies = [ "cranelift-codegen-shared", ] [[package]] name = "cranelift-codegen-shared" -version = "0.88.2" +version = "0.93.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7c940133198426d26128f08be2b40b0bd117b84771fd36798969c4d712d81fc" +checksum = "418ecb2f36032f6665dc1a5e2060a143dbab41d83b784882e97710e890a7a16d" [[package]] name = "cranelift-entity" -version = "0.88.2" +version = "0.93.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87a0f1b2fdc18776956370cf8d9b009ded3f855350c480c1c52142510961f352" +checksum = "7cf583f7b093f291005f9fb1323e2c37f6ee4c7909e39ce016b2e8360d461705" dependencies = [ "serde", ] [[package]] name = "cranelift-frontend" -version = "0.88.2" +version = "0.93.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34897538b36b216cc8dd324e73263596d51b8cf610da6498322838b2546baf8a" +checksum = "0b66bf9e916f57fbbd0f7703ec6286f4624866bf45000111627c70d272c8dda1" dependencies = [ "cranelift-codegen", "log", @@ -1266,15 +1312,15 @@ dependencies = [ [[package]] name = "cranelift-isle" -version = "0.88.2" +version = "0.93.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b2629a569fae540f16a76b70afcc87ad7decb38dc28fa6c648ac73b51e78470" +checksum = "649782a39ce99798dd6b4029e2bb318a2fbeaade1b4fa25330763c10c65bc358" [[package]] name = "cranelift-native" -version = "0.88.2" +version = "0.93.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20937dab4e14d3e225c5adfc9c7106bafd4ac669bdb43027b911ff794c6fb318" +checksum = "937e021e089c51f9749d09e7ad1c4f255c2f8686cb8c3df63a34b3ec9921bc41" dependencies = [ "cranelift-codegen", "libc", @@ -1283,9 +1329,9 @@ dependencies = [ [[package]] name = "cranelift-wasm" -version = "0.88.2" +version = "0.93.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80fc2288957a94fd342a015811479de1837850924166d1f1856d8406e6f3609b" +checksum = "d850cf6775477747c9dfda9ae23355dd70512ffebc70cf82b85a5b111ae668b5" dependencies = [ "cranelift-codegen", "cranelift-entity", @@ -1351,7 +1397,7 @@ dependencies = [ "autocfg", "cfg-if", "crossbeam-utils", - "memoffset 0.6.5", + "memoffset", "scopeguard", ] @@ -1453,7 +1499,7 @@ dependencies = [ [[package]] name = "cumulus-client-cli" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.38#9a2e23cf9a85b0fbe780d5b94999b088aea0d834" +source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.40#efefd824aa96cac25376085979ab2a9526c052f5" dependencies = [ "clap", "parity-scale-codec", @@ -1468,12 +1514,12 @@ dependencies = [ [[package]] name = "cumulus-client-collator" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.38#9a2e23cf9a85b0fbe780d5b94999b088aea0d834" +source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.40#efefd824aa96cac25376085979ab2a9526c052f5" dependencies = [ "cumulus-client-consensus-common", "cumulus-client-network", "cumulus-primitives-core", - "futures 0.3.25", + "futures 0.3.28", "parity-scale-codec", "parking_lot 0.12.1", "polkadot-node-primitives", @@ -1491,19 +1537,20 @@ dependencies = [ [[package]] name = "cumulus-client-consensus-common" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.38#9a2e23cf9a85b0fbe780d5b94999b088aea0d834" +source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.40#efefd824aa96cac25376085979ab2a9526c052f5" dependencies = [ "async-trait", "cumulus-client-pov-recovery", "cumulus-primitives-core", "cumulus-relay-chain-interface", "dyn-clone", - "futures 0.3.25", + "futures 0.3.28", "log", "parity-scale-codec", "polkadot-primitives", "sc-client-api", "sc-consensus", + "schnellru", "sp-blockchain", "sp-consensus", "sp-runtime", @@ -1514,13 +1561,13 @@ dependencies = [ [[package]] name = "cumulus-client-consensus-relay-chain" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.38#9a2e23cf9a85b0fbe780d5b94999b088aea0d834" +source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.40#efefd824aa96cac25376085979ab2a9526c052f5" dependencies = [ "async-trait", "cumulus-client-consensus-common", "cumulus-primitives-core", "cumulus-relay-chain-interface", - "futures 0.3.25", + "futures 0.3.28", "parking_lot 0.12.1", "sc-consensus", "sp-api", @@ -1537,11 +1584,11 @@ dependencies = [ [[package]] name = "cumulus-client-network" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.38#9a2e23cf9a85b0fbe780d5b94999b088aea0d834" +source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.40#efefd824aa96cac25376085979ab2a9526c052f5" dependencies = [ "async-trait", "cumulus-relay-chain-interface", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "parity-scale-codec", "parking_lot 0.12.1", @@ -1560,11 +1607,12 @@ dependencies = [ [[package]] name = "cumulus-client-pov-recovery" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.38#9a2e23cf9a85b0fbe780d5b94999b088aea0d834" +source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.40#efefd824aa96cac25376085979ab2a9526c052f5" dependencies = [ + "async-trait", "cumulus-primitives-core", "cumulus-relay-chain-interface", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "parity-scale-codec", "polkadot-node-primitives", @@ -1583,35 +1631,42 @@ dependencies = [ [[package]] name = "cumulus-client-service" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.38#9a2e23cf9a85b0fbe780d5b94999b088aea0d834" +source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.40#efefd824aa96cac25376085979ab2a9526c052f5" dependencies = [ "cumulus-client-cli", "cumulus-client-collator", "cumulus-client-consensus-common", + "cumulus-client-network", "cumulus-client-pov-recovery", "cumulus-primitives-core", "cumulus-relay-chain-inprocess-interface", "cumulus-relay-chain-interface", "cumulus-relay-chain-minimal-node", - "futures 0.3.25", - "parking_lot 0.12.1", + "futures 0.3.28", "polkadot-primitives", "sc-client-api", "sc-consensus", + "sc-network", + "sc-network-sync", + "sc-network-transactions", + "sc-rpc", "sc-service", "sc-sysinfo", "sc-telemetry", + "sc-transaction-pool", + "sc-utils", "sp-api", "sp-blockchain", "sp-consensus", "sp-core", "sp-runtime", + "sp-transaction-pool", ] [[package]] name = "cumulus-pallet-dmp-queue" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.38#9a2e23cf9a85b0fbe780d5b94999b088aea0d834" +source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.40#efefd824aa96cac25376085979ab2a9526c052f5" dependencies = [ "cumulus-primitives-core", "frame-support", @@ -1628,7 +1683,7 @@ dependencies = [ [[package]] name = "cumulus-pallet-parachain-system" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.38#9a2e23cf9a85b0fbe780d5b94999b088aea0d834" +source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.40#efefd824aa96cac25376085979ab2a9526c052f5" dependencies = [ "bytes", "cumulus-pallet-parachain-system-proc-macro", @@ -1657,18 +1712,18 @@ dependencies = [ [[package]] name = "cumulus-pallet-parachain-system-proc-macro" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.38#9a2e23cf9a85b0fbe780d5b94999b088aea0d834" +source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.40#efefd824aa96cac25376085979ab2a9526c052f5" dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] name = "cumulus-pallet-xcm" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.38#9a2e23cf9a85b0fbe780d5b94999b088aea0d834" +source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.40#efefd824aa96cac25376085979ab2a9526c052f5" dependencies = [ "cumulus-primitives-core", "frame-support", @@ -1684,7 +1739,7 @@ dependencies = [ [[package]] name = "cumulus-pallet-xcmp-queue" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.38#9a2e23cf9a85b0fbe780d5b94999b088aea0d834" +source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.40#efefd824aa96cac25376085979ab2a9526c052f5" dependencies = [ "cumulus-primitives-core", "frame-support", @@ -1704,7 +1759,7 @@ dependencies = [ [[package]] name = "cumulus-primitives-core" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.38#9a2e23cf9a85b0fbe780d5b94999b088aea0d834" +source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.40#efefd824aa96cac25376085979ab2a9526c052f5" dependencies = [ "parity-scale-codec", "polkadot-core-primitives", @@ -1720,7 +1775,7 @@ dependencies = [ [[package]] name = "cumulus-primitives-parachain-inherent" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.38#9a2e23cf9a85b0fbe780d5b94999b088aea0d834" +source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.40#efefd824aa96cac25376085979ab2a9526c052f5" dependencies = [ "async-trait", "cumulus-primitives-core", @@ -1743,10 +1798,10 @@ dependencies = [ [[package]] name = "cumulus-primitives-timestamp" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.38#9a2e23cf9a85b0fbe780d5b94999b088aea0d834" +source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.40#efefd824aa96cac25376085979ab2a9526c052f5" dependencies = [ "cumulus-primitives-core", - "futures 0.3.25", + "futures 0.3.28", "parity-scale-codec", "sp-inherents", "sp-std", @@ -1756,7 +1811,7 @@ dependencies = [ [[package]] name = "cumulus-primitives-utility" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.38#9a2e23cf9a85b0fbe780d5b94999b088aea0d834" +source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.40#efefd824aa96cac25376085979ab2a9526c052f5" dependencies = [ "cumulus-primitives-core", "frame-support", @@ -1774,12 +1829,12 @@ dependencies = [ [[package]] name = "cumulus-relay-chain-inprocess-interface" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.38#9a2e23cf9a85b0fbe780d5b94999b088aea0d834" +source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.40#efefd824aa96cac25376085979ab2a9526c052f5" dependencies = [ "async-trait", "cumulus-primitives-core", "cumulus-relay-chain-interface", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "polkadot-cli", "polkadot-client", @@ -1799,34 +1854,32 @@ dependencies = [ [[package]] name = "cumulus-relay-chain-interface" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.38#9a2e23cf9a85b0fbe780d5b94999b088aea0d834" +source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.40#efefd824aa96cac25376085979ab2a9526c052f5" dependencies = [ "async-trait", "cumulus-primitives-core", - "futures 0.3.25", + "futures 0.3.28", "jsonrpsee-core", "parity-scale-codec", "polkadot-overseer", - "polkadot-service", "sc-client-api", "sp-api", "sp-blockchain", "sp-state-machine", "thiserror", - "tokio", ] [[package]] name = "cumulus-relay-chain-minimal-node" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.38#9a2e23cf9a85b0fbe780d5b94999b088aea0d834" +source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.40#efefd824aa96cac25376085979ab2a9526c052f5" dependencies = [ "array-bytes 6.0.0", "async-trait", "cumulus-primitives-core", "cumulus-relay-chain-interface", "cumulus-relay-chain-rpc-interface", - "futures 0.3.25", + "futures 0.3.28", "lru 0.9.0", "polkadot-core-primitives", "polkadot-network-bridge", @@ -1837,15 +1890,10 @@ dependencies = [ "polkadot-service", "sc-authority-discovery", "sc-client-api", - "sc-consensus", - "sc-keystore", "sc-network", "sc-network-common", "sc-service", - "sc-telemetry", "sc-tracing", - "sc-transaction-pool", - "sc-transaction-pool-api", "sp-api", "sp-blockchain", "sp-consensus", @@ -1853,25 +1901,25 @@ dependencies = [ "sp-runtime", "tokio", "tracing", - "url", ] [[package]] name = "cumulus-relay-chain-rpc-interface" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.38#9a2e23cf9a85b0fbe780d5b94999b088aea0d834" +source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.40#efefd824aa96cac25376085979ab2a9526c052f5" dependencies = [ "async-trait", "cumulus-primitives-core", "cumulus-relay-chain-interface", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "jsonrpsee", "lru 0.9.0", "parity-scale-codec", - "polkadot-service", + "polkadot-overseer", "sc-client-api", "sc-rpc-api", + "sc-service", "serde", "serde_json", "sp-api", @@ -1888,7 +1936,7 @@ dependencies = [ [[package]] name = "cumulus-test-relay-sproof-builder" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.38#9a2e23cf9a85b0fbe780d5b94999b088aea0d834" +source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.40#efefd824aa96cac25376085979ab2a9526c052f5" dependencies = [ "cumulus-primitives-core", "parity-scale-codec", @@ -1961,7 +2009,7 @@ dependencies = [ "proc-macro2", "quote", "scratch", - "syn", + "syn 1.0.109", ] [[package]] @@ -1978,7 +2026,7 @@ checksum = "309e4fb93eed90e1e14bea0da16b209f81813ba9fc7830c20ed151dd7bc0a4d7" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -2002,7 +2050,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn", + "syn 1.0.109", ] [[package]] @@ -2013,7 +2061,7 @@ checksum = "7618812407e9402654622dd402b0a89dff9ba93badd6540781526117b92aab7e" dependencies = [ "darling_core", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -2039,7 +2087,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a5bbed42daaa95e780b60a50546aa345b8413a1e46f9a40a12907d3598f038db" dependencies = [ "data-encoding", - "syn", + "syn 1.0.109", ] [[package]] @@ -2089,7 +2137,7 @@ checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -2100,7 +2148,7 @@ checksum = "e79116f119dd1dba1abf1f3405f03b9b0e79a27a3883864bfebded8a3dc768cd" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -2121,7 +2169,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -2131,7 +2179,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8f0314b72bed045f3a68671b3c86328386762c93f82d98c65c3cb5e5f573dd68" dependencies = [ "derive_builder_core", - "syn", + "syn 1.0.109", ] [[package]] @@ -2144,7 +2192,7 @@ dependencies = [ "proc-macro2", "quote", "rustc_version", - "syn", + "syn 1.0.109", ] [[package]] @@ -2237,7 +2285,7 @@ checksum = "3bf95dc3f046b9da4f2d51833c0d3547d8564ef6910f5c1ed130306a75b92886" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -2282,14 +2330,14 @@ checksum = "558e40ea573c374cf53507fd240b7ee2f5477df7cfebdb97323ec61c719399c5" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] name = "dyn-clone" -version = "1.0.10" +version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9b0705efd4599c15a38151f4721f7bc388306f61084d3bfd50bd07fbca5cb60" +checksum = "68b0cf012f1230e43cd00ebb729c6bb58707ecfa8ad08b52ef3a4ccd2697fc30" [[package]] name = "ecdsa" @@ -2383,7 +2431,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -2403,7 +2451,7 @@ checksum = "f58dc3c5e468259f19f2d46304a6b28f1c3d034442e14b322d2b850e36f6d5ae" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -2414,7 +2462,7 @@ checksum = "038b1afa59052df211f9efd58f8b1d84c242935ede1c3dbaed26b018a9e06ae2" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -2447,6 +2495,17 @@ dependencies = [ "winapi", ] +[[package]] +name = "errno" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50d6a0976c999d473fe89ad888d5a284e55366d9dc9038b1ba2aa15128c4afa0" +dependencies = [ + "errno-dragonfly", + "libc", + "windows-sys 0.45.0", +] + [[package]] name = "errno-dragonfly" version = "0.1.2" @@ -2480,7 +2539,7 @@ checksum = "6a89fb87a9e103f71b903b80b670200b54cc67a07578f070681f1fffb7396fb7" dependencies = [ "bytes", "ethereum-types", - "hash-db", + "hash-db 0.15.2", "hash256-std-hasher", "parity-scale-codec", "rlp", @@ -2586,7 +2645,7 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e43f2f1833d64e33f15592464d6fdd70f349dda7b1a53088eb83cd94014008c5" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", ] [[package]] @@ -2611,7 +2670,20 @@ dependencies = [ "fs-err", "proc-macro2", "quote", - "syn", + "syn 1.0.109", +] + +[[package]] +name = "expander" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f360349150728553f92e4c997a16af8915f418d3a0f21b440d34c5632f16ed84" +dependencies = [ + "blake2", + "fs-err", + "proc-macro2", + "quote", + "syn 1.0.109", ] [[package]] @@ -2662,14 +2734,14 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn", + "syn 1.0.109", "thiserror", ] [[package]] name = "fc-consensus" version = "2.0.0-dev" -source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.38#df4e329ef9b1ef54d83114deff98124139f1dd6d" +source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.40#2d1791f34ba5d69d5ff9582ad1b0ea1302e6ad03" dependencies = [ "async-trait", "fc-db", @@ -2678,7 +2750,6 @@ dependencies = [ "sc-consensus", "sp-api", "sp-block-builder", - "sp-blockchain", "sp-consensus", "sp-runtime", "thiserror", @@ -2687,7 +2758,7 @@ dependencies = [ [[package]] name = "fc-db" version = "2.0.0-dev" -source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.38#df4e329ef9b1ef54d83114deff98124139f1dd6d" +source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.40#2d1791f34ba5d69d5ff9582ad1b0ea1302e6ad03" dependencies = [ "fp-storage", "kvdb-rocksdb", @@ -2706,12 +2777,13 @@ dependencies = [ [[package]] name = "fc-mapping-sync" version = "2.0.0-dev" -source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.38#df4e329ef9b1ef54d83114deff98124139f1dd6d" +source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.40#2d1791f34ba5d69d5ff9582ad1b0ea1302e6ad03" dependencies = [ "fc-db", + "fc-storage", "fp-consensus", "fp-rpc", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "log", "sc-client-api", @@ -2723,7 +2795,7 @@ dependencies = [ [[package]] name = "fc-rpc" version = "2.0.0-dev" -source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.38#df4e329ef9b1ef54d83114deff98124139f1dd6d" +source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.40#2d1791f34ba5d69d5ff9582ad1b0ea1302e6ad03" dependencies = [ "ethereum", "ethereum-types", @@ -2735,7 +2807,7 @@ dependencies = [ "fp-evm", "fp-rpc", "fp-storage", - "futures 0.3.25", + "futures 0.3.28", "hex", "jsonrpsee", "libsecp256k1", @@ -2749,6 +2821,7 @@ dependencies = [ "sc-client-api", "sc-network", "sc-network-common", + "sc-network-sync", "sc-rpc", "sc-service", "sc-transaction-pool", @@ -2769,7 +2842,7 @@ dependencies = [ [[package]] name = "fc-rpc-core" version = "1.1.0-dev" -source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.38#df4e329ef9b1ef54d83114deff98124139f1dd6d" +source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.40#2d1791f34ba5d69d5ff9582ad1b0ea1302e6ad03" dependencies = [ "ethereum", "ethereum-types", @@ -2782,7 +2855,7 @@ dependencies = [ [[package]] name = "fc-storage" version = "1.0.0-dev" -source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.38#df4e329ef9b1ef54d83114deff98124139f1dd6d" +source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.40#2d1791f34ba5d69d5ff9582ad1b0ea1302e6ad03" dependencies = [ "ethereum", "ethereum-types", @@ -2845,7 +2918,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e24e6c429951433ccb7c87fd528c60084834dcd14763182c1f83291bcde24c34" dependencies = [ "either", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "log", "num-traits", @@ -2914,7 +2987,7 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] name = "fork-tree" version = "3.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "parity-scale-codec", ] @@ -2928,10 +3001,28 @@ dependencies = [ "percent-encoding", ] +[[package]] +name = "fp-account" +version = "1.0.0-dev" +source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.40#2d1791f34ba5d69d5ff9582ad1b0ea1302e6ad03" +dependencies = [ + "hex", + "impl-serde 0.4.0", + "libsecp256k1", + "log", + "parity-scale-codec", + "scale-info", + "serde", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + [[package]] name = "fp-consensus" version = "2.0.0-dev" -source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.38#df4e329ef9b1ef54d83114deff98124139f1dd6d" +source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.40#2d1791f34ba5d69d5ff9582ad1b0ea1302e6ad03" dependencies = [ "ethereum", "parity-scale-codec", @@ -2943,7 +3034,7 @@ dependencies = [ [[package]] name = "fp-ethereum" version = "1.0.0-dev" -source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.38#df4e329ef9b1ef54d83114deff98124139f1dd6d" +source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.40#2d1791f34ba5d69d5ff9582ad1b0ea1302e6ad03" dependencies = [ "ethereum", "ethereum-types", @@ -2957,7 +3048,7 @@ dependencies = [ [[package]] name = "fp-evm" version = "3.0.0-dev" -source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.38#df4e329ef9b1ef54d83114deff98124139f1dd6d" +source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.40#2d1791f34ba5d69d5ff9582ad1b0ea1302e6ad03" dependencies = [ "evm", "frame-support", @@ -2971,7 +3062,7 @@ dependencies = [ [[package]] name = "fp-rpc" version = "3.0.0-dev" -source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.38#df4e329ef9b1ef54d83114deff98124139f1dd6d" +source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.40#2d1791f34ba5d69d5ff9582ad1b0ea1302e6ad03" dependencies = [ "ethereum", "ethereum-types", @@ -2988,7 +3079,7 @@ dependencies = [ [[package]] name = "fp-self-contained" version = "1.0.0-dev" -source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.38#df4e329ef9b1ef54d83114deff98124139f1dd6d" +source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.40#2d1791f34ba5d69d5ff9582ad1b0ea1302e6ad03" dependencies = [ "frame-support", "parity-scale-codec", @@ -3000,7 +3091,7 @@ dependencies = [ [[package]] name = "fp-storage" version = "2.0.0" -source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.38#df4e329ef9b1ef54d83114deff98124139f1dd6d" +source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.40#2d1791f34ba5d69d5ff9582ad1b0ea1302e6ad03" dependencies = [ "parity-scale-codec", "serde", @@ -3015,7 +3106,7 @@ checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa" [[package]] name = "frame-benchmarking" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-support", "frame-support-procedural", @@ -3040,7 +3131,7 @@ dependencies = [ [[package]] name = "frame-benchmarking-cli" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "Inflector", "array-bytes 4.1.0", @@ -3087,18 +3178,18 @@ dependencies = [ [[package]] name = "frame-election-provider-solution-type" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] name = "frame-election-provider-support" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-election-provider-solution-type", "frame-support", @@ -3115,7 +3206,7 @@ dependencies = [ [[package]] name = "frame-executive" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-support", "frame-system", @@ -3144,9 +3235,9 @@ dependencies = [ [[package]] name = "frame-remote-externalities" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "log", "parity-scale-codec", "serde", @@ -3160,9 +3251,10 @@ dependencies = [ [[package]] name = "frame-support" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "bitflags", + "environmental", "frame-metadata", "frame-support-procedural", "impl-trait-for-tuples", @@ -3192,7 +3284,7 @@ dependencies = [ [[package]] name = "frame-support-procedural" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "Inflector", "cfg-expr", @@ -3201,35 +3293,35 @@ dependencies = [ "itertools", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] name = "frame-support-procedural-tools" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-support-procedural-tools-derive", "proc-macro-crate", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] name = "frame-support-procedural-tools-derive" version = "3.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] name = "frame-system" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-support", "log", @@ -3247,7 +3339,7 @@ dependencies = [ [[package]] name = "frame-system-benchmarking" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -3262,7 +3354,7 @@ dependencies = [ [[package]] name = "frame-system-rpc-runtime-api" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "parity-scale-codec", "sp-api", @@ -3271,7 +3363,7 @@ dependencies = [ [[package]] name = "frame-try-runtime" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-support", "parity-scale-codec", @@ -3296,6 +3388,17 @@ dependencies = [ "winapi", ] +[[package]] +name = "fs4" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ea55201cc351fdb478217c0fb641b59813da9b4efe4c414a9d8f989a657d149" +dependencies = [ + "libc", + "rustix 0.35.13", + "winapi", +] + [[package]] name = "fs_extra" version = "1.2.0" @@ -3316,9 +3419,9 @@ checksum = "3a471a38ef8ed83cd6e40aa59c1ffe17db6855c18e3604d9c4ed8c08ebc28678" [[package]] name = "futures" -version = "0.3.25" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38390104763dc37a5145a53c29c63c1290b5d316d6086ec32c293f6736051bb0" +checksum = "23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40" dependencies = [ "futures-channel", "futures-core", @@ -3331,9 +3434,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.25" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52ba265a92256105f45b719605a571ffe2d1f0fea3807304b522c1d778f79eed" +checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2" dependencies = [ "futures-core", "futures-sink", @@ -3341,15 +3444,15 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.25" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04909a7a7e4633ae6c4a9ab280aeb86da1236243a77b694a49eacd659a4bd3ac" +checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c" [[package]] name = "futures-executor" -version = "0.3.25" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7acc85df6714c176ab5edf386123fafe217be88c0840ec11f199441134a074e2" +checksum = "ccecee823288125bd88b4d7f565c9e58e41858e47ab72e8ea2d64e93624386e0" dependencies = [ "futures-core", "futures-task", @@ -3359,9 +3462,9 @@ dependencies = [ [[package]] name = "futures-io" -version = "0.3.25" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00f5fb52a06bdcadeb54e8d3671f8888a39697dcb0b81b23b55174030427f4eb" +checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964" [[package]] name = "futures-lite" @@ -3380,13 +3483,13 @@ dependencies = [ [[package]] name = "futures-macro" -version = "0.3.25" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdfb8ce053d86b91919aad980c220b1fb8401a9394410e1c289ed7e66b61835d" +checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.12", ] [[package]] @@ -3402,15 +3505,15 @@ dependencies = [ [[package]] name = "futures-sink" -version = "0.3.25" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39c15cf1a4aa79df40f1bb462fb39676d0ad9e366c2a33b590d7c66f4f81fcf9" +checksum = "f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e" [[package]] name = "futures-task" -version = "0.3.25" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ffb393ac5d9a6eaa9d3fdf37ae2776656b706e200c8e16b1bdb227f5198e6ea" +checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65" [[package]] name = "futures-timer" @@ -3420,9 +3523,9 @@ checksum = "e64b03909df88034c26dc1547e8970b91f98bdb65165d6a4e9110d94263dbb2c" [[package]] name = "futures-util" -version = "0.3.25" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "197676987abd2f9cadff84926f410af1c183608d36641465df73ae8211dc65d6" +checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533" dependencies = [ "futures 0.1.31", "futures-channel", @@ -3607,6 +3710,12 @@ version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d23bd4e7b5eda0d0f3a307e8b381fdc8ba9000f26fbe912250c0a4cc3956364a" +[[package]] +name = "hash-db" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e7d7786361d7425ae2fe4f9e407eb0efaa0840f5212d109cc018c40c35c6ab4" + [[package]] name = "hash256-std-hasher" version = "0.15.2" @@ -3651,12 +3760,9 @@ dependencies = [ [[package]] name = "hermit-abi" -version = "0.2.6" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7" -dependencies = [ - "libc", -] +checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286" [[package]] name = "hex" @@ -3898,7 +4004,7 @@ dependencies = [ "async-io", "core-foundation", "fnv", - "futures 0.3.25", + "futures 0.3.28", "if-addrs", "ipnet", "log", @@ -3952,7 +4058,7 @@ checksum = "11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -4051,14 +4157,14 @@ checksum = "879d54834c8c76457ef4293a689b2a8c59b076067ad77b15efafbb05f92a592b" [[package]] name = "is-terminal" -version = "0.4.2" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28dfb6c8100ccc63462345b67d1bbc3679177c75ee4bf59bf29c8b1d110b8189" +checksum = "256017f749ab3117e93acb91063009e1f1bb56d03965b14c2c8df4eb02c524d8" dependencies = [ - "hermit-abi 0.2.6", + "hermit-abi 0.3.1", "io-lifetimes 1.0.4", - "rustix 0.36.7", - "windows-sys 0.42.0", + "rustix 0.37.6", + "windows-sys 0.45.0", ] [[package]] @@ -4167,7 +4273,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -4238,8 +4344,8 @@ checksum = "f9b7d56ba4a8344d6be9729995e6b06f928af29998cdf79fe390cbf6b1fee838" [[package]] name = "kusama-runtime" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "bitvec", "frame-benchmarking", @@ -4289,6 +4395,7 @@ dependencies = [ "pallet-session-benchmarking", "pallet-society", "pallet-staking", + "pallet-staking-runtime-api", "pallet-timestamp", "pallet-tips", "pallet-transaction-payment", @@ -4311,9 +4418,9 @@ dependencies = [ "sp-api", "sp-arithmetic", "sp-authority-discovery", - "sp-beefy", "sp-block-builder", "sp-consensus-babe", + "sp-consensus-beefy", "sp-core", "sp-inherents", "sp-io", @@ -4335,8 +4442,8 @@ dependencies = [ [[package]] name = "kusama-runtime-constants" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "frame-support", "polkadot-primitives", @@ -4397,9 +4504,9 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" [[package]] name = "libc" -version = "0.2.137" +version = "0.2.140" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc7fcc620a3bff7cdd7a365be3376c97191aeaccc2a603e600951e452615bf89" +checksum = "99227334921fae1a979cf0bfdfcc6b3e5ce376ef57e16fb6fb3ea2ed6095f80c" [[package]] name = "libloading" @@ -4424,7 +4531,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2e0a0d2f693675f49ded13c5d510c48b78069e23cbd9108d7ccd59f6dc568819" dependencies = [ "bytes", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "getrandom 0.2.8", "instant", @@ -4462,7 +4569,7 @@ dependencies = [ "ed25519-dalek", "either", "fnv", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "instant", "log", @@ -4491,7 +4598,7 @@ version = "0.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8e42a271c1b49f789b92f7fc87749fa79ce5c7bdc88cbdfacb818a4bca47fec5" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "libp2p-core", "log", "parking_lot 0.12.1", @@ -4506,7 +4613,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c052d0026f4817b44869bfb6810f4e1112f43aec8553f2cb38881c524b563abf" dependencies = [ "asynchronous-codec", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "libp2p-core", "libp2p-swarm", @@ -4531,7 +4638,7 @@ dependencies = [ "bytes", "either", "fnv", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "instant", "libp2p-core", @@ -4555,7 +4662,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "04f378264aade9872d6ccd315c0accc18be3a35d15fc1b9c36e5b6f983b62b5b" dependencies = [ "data-encoding", - "futures 0.3.25", + "futures 0.3.28", "if-watch", "libp2p-core", "libp2p-swarm", @@ -4590,7 +4697,7 @@ checksum = "03805b44107aa013e7cbbfa5627b31c36cbedfdfb00603c0311998882bc4bace" dependencies = [ "asynchronous-codec", "bytes", - "futures 0.3.25", + "futures 0.3.28", "libp2p-core", "log", "nohash-hasher", @@ -4608,7 +4715,7 @@ checksum = "a978cb57efe82e892ec6f348a536bfbd9fee677adbe5689d7a93ad3a9bffbf2e" dependencies = [ "bytes", "curve25519-dalek 3.2.0", - "futures 0.3.25", + "futures 0.3.28", "libp2p-core", "log", "once_cell", @@ -4629,7 +4736,7 @@ version = "0.41.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "929fcace45a112536e22b3dcfd4db538723ef9c3cb79f672b98be2cc8e25f37f" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "instant", "libp2p-core", @@ -4646,7 +4753,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "01e7c867e95c8130667b24409d236d37598270e6da69b3baf54213ba31ffca59" dependencies = [ "bytes", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "if-watch", "libp2p-core", @@ -4668,7 +4775,7 @@ checksum = "3236168796727bfcf4927f766393415361e2c644b08bedb6a6b13d957c9a4884" dependencies = [ "async-trait", "bytes", - "futures 0.3.25", + "futures 0.3.28", "instant", "libp2p-core", "libp2p-swarm", @@ -4686,7 +4793,7 @@ checksum = "b2a35472fe3276b3855c00f1c032ea8413615e030256429ad5349cdf67c6e1a0" dependencies = [ "either", "fnv", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "instant", "libp2p-core", @@ -4708,7 +4815,7 @@ checksum = "9d527d5827582abd44a6d80c07ff8b50b4ee238a8979e05998474179e79dc400" dependencies = [ "heck", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -4717,7 +4824,7 @@ version = "0.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b4b257baf6df8f2df39678b86c578961d48cc8b68642a12f0f763f56c8e5858d" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "if-watch", "libc", @@ -4733,7 +4840,7 @@ version = "0.1.0-alpha" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f7905ce0d040576634e8a3229a7587cc8beab83f79db6023800f1792895defa8" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "futures-rustls", "libp2p-core", "rcgen 0.10.0", @@ -4751,7 +4858,7 @@ version = "0.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1bb1a35299860e0d4b3c02a3e74e3b293ad35ae0cee8a056363b0c862d082069" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "js-sys", "libp2p-core", "parity-send-wrapper", @@ -4768,7 +4875,7 @@ dependencies = [ "async-trait", "asynchronous-codec", "bytes", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "hex", "if-watch", @@ -4797,7 +4904,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1d705506030d5c0aaf2882437c70dab437605f21c5f9811978f694e6917a3b54" dependencies = [ "either", - "futures 0.3.25", + "futures 0.3.28", "futures-rustls", "libp2p-core", "log", @@ -4815,7 +4922,7 @@ version = "0.42.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4f63594a0aa818642d9d4915c791945053877253f08a3626f13416b5cd928a29" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "libp2p-core", "log", "parking_lot 0.12.1", @@ -4923,12 +5030,11 @@ dependencies = [ [[package]] name = "linregress" -version = "0.4.4" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6c601a85f5ecd1aba625247bca0031585fb1c446461b142878a16f8245ddeb8" +checksum = "475015a7f8f017edb28d2e69813be23500ad4b32cfe3421c4148efc97324ee52" dependencies = [ "nalgebra", - "statrs", ] [[package]] @@ -4943,6 +5049,12 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4" +[[package]] +name = "linux-raw-sys" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d59d8c75012853d2e872fb56bc8a2e53718e2cafe1a4c823143141c6d90c322f" + [[package]] name = "lock_api" version = "0.4.9" @@ -5029,7 +5141,7 @@ dependencies = [ "prettyplease", "serde", "serde_json", - "syn", + "syn 1.0.109", "toml", ] @@ -5039,7 +5151,7 @@ version = "0.1.0" dependencies = [ "cumulus-primitives-core", "flume", - "futures 0.3.25", + "futures 0.3.28", "hex-literal", "jsonrpsee", "parity-scale-codec", @@ -5101,11 +5213,11 @@ checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" [[package]] name = "memfd" -version = "0.6.1" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "480b5a5de855d11ff13195950bdc8b98b5e942ef47afc447f6615cdcc4e15d80" +checksum = "ffc89ccdc6e10d6907450f753537ebc5c5d3460d2e4e62ea74bd571db62c0f9e" dependencies = [ - "rustix 0.35.13", + "rustix 0.37.6", ] [[package]] @@ -5126,23 +5238,13 @@ dependencies = [ "autocfg", ] -[[package]] -name = "memoffset" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4" -dependencies = [ - "autocfg", -] - [[package]] name = "memory-db" -version = "0.31.0" +version = "0.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e0c7cba9ce19ac7ffd2053ac9f49843bbd3f4318feedfd74e85c19d5fb0ba66" +checksum = "808b50db46293432a45e63bc15ea51e0ab4c0a1647b8eb114e31a3e698dd6fbe" dependencies = [ - "hash-db", - "hashbrown 0.12.3", + "hash-db 0.16.0", ] [[package]] @@ -5169,7 +5271,7 @@ version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "69672161530e8aeca1d1400fbf3f1a1747ff60ea604265a4e906c2442df20532" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "rand 0.8.5", "thrift", ] @@ -5213,17 +5315,17 @@ dependencies = [ [[package]] name = "mmr-gadget" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "log", "parity-scale-codec", "sc-client-api", "sc-offchain", "sp-api", - "sp-beefy", "sp-blockchain", "sp-consensus", + "sp-consensus-beefy", "sp-core", "sp-mmr-primitives", "sp-runtime", @@ -5232,7 +5334,7 @@ dependencies = [ [[package]] name = "mmr-rpc" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "anyhow", "jsonrpsee", @@ -5269,7 +5371,7 @@ dependencies = [ "cfg-if", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -5418,7 +5520,7 @@ name = "moonbeam" version = "0.12.3" dependencies = [ "assert_cmd", - "futures 0.3.25", + "futures 0.3.28", "hex", "moonbeam-cli", "moonbeam-service", @@ -5450,7 +5552,7 @@ dependencies = [ "polkadot-primitives", "polkadot-service", "sc-cli", - "sc-finality-grandpa", + "sc-consensus-grandpa", "sc-service", "sc-sysinfo", "sc-telemetry", @@ -5528,7 +5630,7 @@ version = "0.1.0" dependencies = [ "fc-db", "fc-rpc", - "futures 0.3.25", + "futures 0.3.28", "jsonrpsee", "parity-scale-codec", "sp-api", @@ -5578,7 +5680,7 @@ name = "moonbeam-rpc-core-debug" version = "0.1.0" dependencies = [ "ethereum-types", - "futures 0.3.25", + "futures 0.3.28", "jsonrpsee", "moonbeam-client-evm-tracing", "moonbeam-rpc-core-types", @@ -5592,7 +5694,7 @@ name = "moonbeam-rpc-core-trace" version = "0.6.0" dependencies = [ "ethereum-types", - "futures 0.3.25", + "futures 0.3.28", "jsonrpsee", "moonbeam-client-evm-tracing", "moonbeam-rpc-core-types", @@ -5632,7 +5734,7 @@ dependencies = [ "fc-rpc", "fc-storage", "fp-rpc", - "futures 0.3.25", + "futures 0.3.28", "hex-literal", "jsonrpsee", "moonbeam-client-evm-tracing", @@ -5690,7 +5792,7 @@ dependencies = [ "fc-rpc-core", "fc-storage", "fp-rpc", - "futures 0.3.25", + "futures 0.3.28", "jsonrpsee", "moonbeam-client-evm-tracing", "moonbeam-rpc-core-trace", @@ -5942,7 +6044,7 @@ dependencies = [ "frame-benchmarking", "frame-benchmarking-cli", "frame-system-rpc-runtime-api", - "futures 0.3.25", + "futures 0.3.28", "hex-literal", "jsonrpsee", "libsecp256k1", @@ -5988,12 +6090,13 @@ dependencies = [ "sc-client-api", "sc-client-db", "sc-consensus", + "sc-consensus-grandpa", "sc-consensus-manual-seal", "sc-executor", - "sc-finality-grandpa", "sc-informant", "sc-network", "sc-network-common", + "sc-network-sync", "sc-rpc", "sc-rpc-api", "sc-service", @@ -6027,6 +6130,7 @@ dependencies = [ "substrate-test-client", "substrate-test-runtime", "substrate-test-runtime-client", + "tempfile", "tiny-bip39 0.8.2", "tokio", "trie-root 0.15.2", @@ -6274,7 +6378,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn", + "syn 1.0.109", "synstructure", ] @@ -6291,7 +6395,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c8552ab875c1313b97b8d20cb857b9fd63e2d1d6a0a1b53ce9821e575405f27a" dependencies = [ "bytes", - "futures 0.3.25", + "futures 0.3.28", "log", "pin-project", "smallvec", @@ -6300,9 +6404,9 @@ dependencies = [ [[package]] name = "nalgebra" -version = "0.27.1" +version = "0.32.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "462fffe4002f4f2e1f6a9dcf12cc1a6fc0e15989014efc02a941d3e0f5dc2120" +checksum = "d68d47bba83f9e2006d117a9a33af1524e655516b8919caac694427a6fb1e511" dependencies = [ "approx", "matrixmultiply", @@ -6310,21 +6414,19 @@ dependencies = [ "num-complex", "num-rational", "num-traits", - "rand 0.8.5", - "rand_distr", "simba", "typenum 1.15.0", ] [[package]] name = "nalgebra-macros" -version = "0.1.0" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01fcc0b8149b4632adc89ac3b7b31a12fb6099a0317a4eb2ebff574ef7de7218" +checksum = "d232c68884c0c99810a5a4d333ef7e47689cfd0edc85efc9e54e1e6bf5212766" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -6390,7 +6492,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "65b4b14489ab424703c092062176d52ba55485a89c076b4f9db05092b7223aa6" dependencies = [ "bytes", - "futures 0.3.25", + "futures 0.3.28", "log", "netlink-packet-core", "netlink-sys", @@ -6405,7 +6507,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "92b654097027250401127914afb37cb1f311df6610a9891ff07a757e94199027" dependencies = [ "bytes", - "futures 0.3.25", + "futures 0.3.28", "libc", "log", "tokio", @@ -6414,18 +6516,17 @@ dependencies = [ [[package]] name = "nimbus-consensus" version = "0.9.0" -source = "git+https://github.com/purestake/nimbus?branch=moonbeam-polkadot-v0.9.38#c12f21d5ecbdf77def686a042b7d1410a6ca28b2" +source = "git+https://github.com/purestake/nimbus?branch=moonbeam-polkadot-v0.9.40#50cf433ded9327fea98d9ffa62dc543e81bf805d" dependencies = [ "async-trait", "cumulus-client-consensus-common", "cumulus-primitives-core", "cumulus-primitives-parachain-inherent", - "futures 0.3.25", + "futures 0.3.28", "log", "nimbus-primitives", "parity-scale-codec", "parking_lot 0.12.1", - "polkadot-client", "sc-client-api", "sc-consensus", "sc-consensus-manual-seal", @@ -6445,7 +6546,7 @@ dependencies = [ [[package]] name = "nimbus-primitives" version = "0.9.0" -source = "git+https://github.com/purestake/nimbus?branch=moonbeam-polkadot-v0.9.38#c12f21d5ecbdf77def686a042b7d1410a6ca28b2" +source = "git+https://github.com/purestake/nimbus?branch=moonbeam-polkadot-v0.9.40#50cf433ded9327fea98d9ffa62dc543e81bf805d" dependencies = [ "async-trait", "frame-benchmarking", @@ -6470,7 +6571,7 @@ dependencies = [ "cc", "cfg-if", "libc", - "memoffset 0.6.5", + "memoffset", ] [[package]] @@ -6482,26 +6583,12 @@ dependencies = [ "bitflags", "cfg-if", "libc", - "memoffset 0.6.5", + "memoffset", ] [[package]] -name = "nix" -version = "0.26.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfdda3d196821d6af13126e40375cdf7da646a96114af134d5f417a9a1dc8e1a" -dependencies = [ - "bitflags", - "cfg-if", - "libc", - "memoffset 0.7.1", - "pin-utils", - "static_assertions", -] - -[[package]] -name = "nodrop" -version = "0.1.14" +name = "nodrop" +version = "0.1.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb" @@ -6521,15 +6608,6 @@ dependencies = [ "minimal-lexical", ] -[[package]] -name = "nom8" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae01545c9c7fc4486ab7debaf2aad7003ac19431791868fb2e8066df97fad2f8" -dependencies = [ - "memchr", -] - [[package]] name = "normalize-line-endings" version = "0.3.0" @@ -6620,7 +6698,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd" dependencies = [ "autocfg", - "libm", ] [[package]] @@ -6651,7 +6728,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -6719,13 +6796,13 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" [[package]] name = "orchestra" -version = "0.0.4" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17e7d5b6bb115db09390bed8842c94180893dd83df3dfce7354f2a2aa090a4ee" +checksum = "2b0766f60d83cac01c6e3f3bc36aaa9056e48bea0deddb98a8c74de6021f3061" dependencies = [ "async-trait", "dyn-clonable", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "orchestra-proc-macro", "pin-project", @@ -6736,17 +6813,18 @@ dependencies = [ [[package]] name = "orchestra-proc-macro" -version = "0.0.4" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2af4dabb2286b0be0e9711d2d24e25f6217048b71210cffd3daddc3b5c84e1f" +checksum = "3c8e83dbd049009426b445424a1104c78e6172a4c13e3614e52a38262785a5d7" dependencies = [ - "expander 0.0.6", + "expander 1.0.0", + "indexmap", "itertools", "petgraph", "proc-macro-crate", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -6761,7 +6839,7 @@ dependencies = [ [[package]] name = "orml-traits" version = "0.4.1-dev" -source = "git+https://github.com/purestake/open-runtime-module-library?branch=moonbeam-polkadot-v0.9.38#fbf6c52dab120b1cbf756fa642d5fb1016378ae4" +source = "git+https://github.com/purestake/open-runtime-module-library?branch=moonbeam-polkadot-v0.9.40#26c76e0ab4dbf20b60ec92646f59751f054d97a0" dependencies = [ "frame-support", "impl-trait-for-tuples", @@ -6780,7 +6858,7 @@ dependencies = [ [[package]] name = "orml-utilities" version = "0.4.1-dev" -source = "git+https://github.com/purestake/open-runtime-module-library?branch=moonbeam-polkadot-v0.9.38#fbf6c52dab120b1cbf756fa642d5fb1016378ae4" +source = "git+https://github.com/purestake/open-runtime-module-library?branch=moonbeam-polkadot-v0.9.40#26c76e0ab4dbf20b60ec92646f59751f054d97a0" dependencies = [ "frame-support", "parity-scale-codec", @@ -6794,7 +6872,7 @@ dependencies = [ [[package]] name = "orml-xcm-support" version = "0.4.1-dev" -source = "git+https://github.com/purestake/open-runtime-module-library?branch=moonbeam-polkadot-v0.9.38#fbf6c52dab120b1cbf756fa642d5fb1016378ae4" +source = "git+https://github.com/purestake/open-runtime-module-library?branch=moonbeam-polkadot-v0.9.40#26c76e0ab4dbf20b60ec92646f59751f054d97a0" dependencies = [ "frame-support", "orml-traits", @@ -6808,7 +6886,7 @@ dependencies = [ [[package]] name = "orml-xtokens" version = "0.4.1-dev" -source = "git+https://github.com/purestake/open-runtime-module-library?branch=moonbeam-polkadot-v0.9.38#fbf6c52dab120b1cbf756fa642d5fb1016378ae4" +source = "git+https://github.com/purestake/open-runtime-module-library?branch=moonbeam-polkadot-v0.9.40#26c76e0ab4dbf20b60ec92646f59751f054d97a0" dependencies = [ "cumulus-primitives-core", "frame-support", @@ -6826,12 +6904,6 @@ dependencies = [ "xcm-executor", ] -[[package]] -name = "os_str_bytes" -version = "6.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3baf96e39c5359d2eb0dd6ccb42c62b91d9678aa68160d261b9e0ccbf9e9dea9" - [[package]] name = "p256" version = "0.11.1" @@ -6877,7 +6949,7 @@ dependencies = [ [[package]] name = "pallet-assets" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -6892,7 +6964,7 @@ dependencies = [ [[package]] name = "pallet-author-inherent" version = "0.9.0" -source = "git+https://github.com/purestake/nimbus?branch=moonbeam-polkadot-v0.9.38#c12f21d5ecbdf77def686a042b7d1410a6ca28b2" +source = "git+https://github.com/purestake/nimbus?branch=moonbeam-polkadot-v0.9.40#50cf433ded9327fea98d9ffa62dc543e81bf805d" dependencies = [ "frame-benchmarking", "frame-support", @@ -6931,7 +7003,7 @@ dependencies = [ [[package]] name = "pallet-author-slot-filter" version = "0.9.0" -source = "git+https://github.com/purestake/nimbus?branch=moonbeam-polkadot-v0.9.38#c12f21d5ecbdf77def686a042b7d1410a6ca28b2" +source = "git+https://github.com/purestake/nimbus?branch=moonbeam-polkadot-v0.9.40#50cf433ded9327fea98d9ffa62dc543e81bf805d" dependencies = [ "frame-benchmarking", "frame-support", @@ -6949,7 +7021,7 @@ dependencies = [ [[package]] name = "pallet-authority-discovery" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-support", "frame-system", @@ -6965,7 +7037,7 @@ dependencies = [ [[package]] name = "pallet-authorship" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-support", "frame-system", @@ -6979,7 +7051,7 @@ dependencies = [ [[package]] name = "pallet-babe" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -7003,7 +7075,7 @@ dependencies = [ [[package]] name = "pallet-bags-list" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -7023,7 +7095,7 @@ dependencies = [ [[package]] name = "pallet-balances" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -7038,7 +7110,7 @@ dependencies = [ [[package]] name = "pallet-base-fee" version = "1.0.0" -source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.38#df4e329ef9b1ef54d83114deff98124139f1dd6d" +source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.40#2d1791f34ba5d69d5ff9582ad1b0ea1302e6ad03" dependencies = [ "fp-evm", "frame-support", @@ -7052,26 +7124,29 @@ dependencies = [ [[package]] name = "pallet-beefy" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-support", "frame-system", + "pallet-authorship", "pallet-session", "parity-scale-codec", "scale-info", "serde", - "sp-beefy", + "sp-consensus-beefy", "sp-runtime", + "sp-session", + "sp-staking", "sp-std", ] [[package]] name = "pallet-beefy-mmr" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "array-bytes 4.1.0", - "beefy-merkle-tree", + "binary-merkle-tree", "frame-support", "frame-system", "log", @@ -7081,7 +7156,8 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", - "sp-beefy", + "sp-api", + "sp-consensus-beefy", "sp-core", "sp-io", "sp-runtime", @@ -7091,7 +7167,7 @@ dependencies = [ [[package]] name = "pallet-bounties" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -7109,7 +7185,7 @@ dependencies = [ [[package]] name = "pallet-child-bounties" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -7128,7 +7204,7 @@ dependencies = [ [[package]] name = "pallet-collective" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -7145,7 +7221,7 @@ dependencies = [ [[package]] name = "pallet-conviction-voting" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "assert_matches", "frame-benchmarking", @@ -7162,7 +7238,7 @@ dependencies = [ [[package]] name = "pallet-crowdloan-rewards" version = "0.6.0" -source = "git+https://github.com/purestake/crowdloan-rewards?branch=moonbeam-polkadot-v0.9.38#ef020ac94552977fe4e4f407dd9da045afd36b10" +source = "git+https://github.com/purestake/crowdloan-rewards?branch=moonbeam-polkadot-v0.9.40#9ae442ecb9796bbb02bf87c983650575bdaffb43" dependencies = [ "ed25519-dalek", "frame-benchmarking", @@ -7184,7 +7260,7 @@ dependencies = [ [[package]] name = "pallet-democracy" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -7202,7 +7278,7 @@ dependencies = [ [[package]] name = "pallet-election-provider-multi-phase" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -7225,7 +7301,7 @@ dependencies = [ [[package]] name = "pallet-election-provider-support-benchmarking" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -7238,7 +7314,7 @@ dependencies = [ [[package]] name = "pallet-elections-phragmen" version = "5.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -7276,7 +7352,7 @@ dependencies = [ [[package]] name = "pallet-ethereum" version = "4.0.0-dev" -source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.38#df4e329ef9b1ef54d83114deff98124139f1dd6d" +source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.40#2d1791f34ba5d69d5ff9582ad1b0ea1302e6ad03" dependencies = [ "environmental", "ethereum", @@ -7286,14 +7362,12 @@ dependencies = [ "fp-ethereum", "fp-evm", "fp-rpc", - "fp-self-contained", "fp-storage", "frame-support", "frame-system", "pallet-evm", "pallet-timestamp", "parity-scale-codec", - "rlp", "scale-info", "sp-io", "sp-runtime", @@ -7346,10 +7420,11 @@ dependencies = [ [[package]] name = "pallet-evm" version = "6.0.0-dev" -source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.38#df4e329ef9b1ef54d83114deff98124139f1dd6d" +source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.40#2d1791f34ba5d69d5ff9582ad1b0ea1302e6ad03" dependencies = [ "environmental", "evm", + "fp-account", "fp-evm", "frame-benchmarking", "frame-support", @@ -7453,7 +7528,7 @@ dependencies = [ [[package]] name = "pallet-evm-precompile-blake2" version = "2.0.0-dev" -source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.38#df4e329ef9b1ef54d83114deff98124139f1dd6d" +source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.40#2d1791f34ba5d69d5ff9582ad1b0ea1302e6ad03" dependencies = [ "fp-evm", ] @@ -7461,7 +7536,7 @@ dependencies = [ [[package]] name = "pallet-evm-precompile-bn128" version = "2.0.0-dev" -source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.38#df4e329ef9b1ef54d83114deff98124139f1dd6d" +source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.40#2d1791f34ba5d69d5ff9582ad1b0ea1302e6ad03" dependencies = [ "fp-evm", "sp-core", @@ -7617,7 +7692,7 @@ dependencies = [ [[package]] name = "pallet-evm-precompile-dispatch" version = "2.0.0-dev" -source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.38#df4e329ef9b1ef54d83114deff98124139f1dd6d" +source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.40#2d1791f34ba5d69d5ff9582ad1b0ea1302e6ad03" dependencies = [ "fp-evm", "frame-support", @@ -7664,7 +7739,7 @@ dependencies = [ [[package]] name = "pallet-evm-precompile-modexp" version = "2.0.0-dev" -source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.38#df4e329ef9b1ef54d83114deff98124139f1dd6d" +source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.40#2d1791f34ba5d69d5ff9582ad1b0ea1302e6ad03" dependencies = [ "fp-evm", "num", @@ -7867,7 +7942,7 @@ dependencies = [ [[package]] name = "pallet-evm-precompile-sha3fips" version = "2.0.0-dev" -source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.38#df4e329ef9b1ef54d83114deff98124139f1dd6d" +source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.40#2d1791f34ba5d69d5ff9582ad1b0ea1302e6ad03" dependencies = [ "fp-evm", "tiny-keccak", @@ -7876,7 +7951,7 @@ dependencies = [ [[package]] name = "pallet-evm-precompile-simple" version = "2.0.0-dev" -source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.38#df4e329ef9b1ef54d83114deff98124139f1dd6d" +source = "git+https://github.com/purestake/frontier?branch=moonbeam-polkadot-v0.9.40#2d1791f34ba5d69d5ff9582ad1b0ea1302e6ad03" dependencies = [ "fp-evm", "ripemd", @@ -8012,7 +8087,7 @@ dependencies = [ [[package]] name = "pallet-fast-unstake" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -8030,7 +8105,7 @@ dependencies = [ [[package]] name = "pallet-grandpa" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -8041,8 +8116,8 @@ dependencies = [ "parity-scale-codec", "scale-info", "sp-application-crypto", + "sp-consensus-grandpa", "sp-core", - "sp-finality-grandpa", "sp-io", "sp-runtime", "sp-session", @@ -8053,7 +8128,7 @@ dependencies = [ [[package]] name = "pallet-identity" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "enumflags2", "frame-benchmarking", @@ -8069,7 +8144,7 @@ dependencies = [ [[package]] name = "pallet-im-online" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -8089,7 +8164,7 @@ dependencies = [ [[package]] name = "pallet-indices" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -8123,7 +8198,7 @@ dependencies = [ [[package]] name = "pallet-membership" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -8163,7 +8238,7 @@ dependencies = [ [[package]] name = "pallet-mmr" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -8198,7 +8273,7 @@ dependencies = [ [[package]] name = "pallet-multisig" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -8214,7 +8289,7 @@ dependencies = [ [[package]] name = "pallet-nis" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -8230,7 +8305,7 @@ dependencies = [ [[package]] name = "pallet-nomination-pools" version = "1.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-support", "frame-system", @@ -8247,7 +8322,7 @@ dependencies = [ [[package]] name = "pallet-nomination-pools-benchmarking" version = "1.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -8267,8 +8342,9 @@ dependencies = [ [[package]] name = "pallet-nomination-pools-runtime-api" version = "1.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ + "pallet-nomination-pools", "parity-scale-codec", "sp-api", "sp-std", @@ -8277,7 +8353,7 @@ dependencies = [ [[package]] name = "pallet-offences" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-support", "frame-system", @@ -8294,7 +8370,7 @@ dependencies = [ [[package]] name = "pallet-offences-benchmarking" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -8339,7 +8415,7 @@ dependencies = [ [[package]] name = "pallet-preimage" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -8356,7 +8432,7 @@ dependencies = [ [[package]] name = "pallet-proxy" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -8413,7 +8489,7 @@ dependencies = [ [[package]] name = "pallet-ranked-collective" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -8431,7 +8507,7 @@ dependencies = [ [[package]] name = "pallet-recovery" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -8446,7 +8522,7 @@ dependencies = [ [[package]] name = "pallet-referenda" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "assert_matches", "frame-benchmarking", @@ -8465,7 +8541,7 @@ dependencies = [ [[package]] name = "pallet-root-testing" version = "1.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-support", "frame-system", @@ -8480,7 +8556,7 @@ dependencies = [ [[package]] name = "pallet-scheduler" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -8497,7 +8573,7 @@ dependencies = [ [[package]] name = "pallet-session" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-support", "frame-system", @@ -8518,7 +8594,7 @@ dependencies = [ [[package]] name = "pallet-session-benchmarking" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -8534,7 +8610,7 @@ dependencies = [ [[package]] name = "pallet-society" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-support", "frame-system", @@ -8548,7 +8624,7 @@ dependencies = [ [[package]] name = "pallet-staking" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -8571,27 +8647,36 @@ dependencies = [ [[package]] name = "pallet-staking-reward-curve" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] name = "pallet-staking-reward-fn" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "log", "sp-arithmetic", ] +[[package]] +name = "pallet-staking-runtime-api" +version = "4.0.0-dev" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" +dependencies = [ + "parity-scale-codec", + "sp-api", +] + [[package]] name = "pallet-state-trie-migration" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -8608,7 +8693,7 @@ dependencies = [ [[package]] name = "pallet-sudo" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-support", "frame-system", @@ -8622,7 +8707,7 @@ dependencies = [ [[package]] name = "pallet-timestamp" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -8640,7 +8725,7 @@ dependencies = [ [[package]] name = "pallet-tips" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -8659,7 +8744,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-support", "frame-system", @@ -8675,7 +8760,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "jsonrpsee", "pallet-transaction-payment-rpc-runtime-api", @@ -8691,7 +8776,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc-runtime-api" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "pallet-transaction-payment", "parity-scale-codec", @@ -8703,7 +8788,7 @@ dependencies = [ [[package]] name = "pallet-treasury" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -8720,7 +8805,7 @@ dependencies = [ [[package]] name = "pallet-utility" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -8736,7 +8821,7 @@ dependencies = [ [[package]] name = "pallet-vesting" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -8751,7 +8836,7 @@ dependencies = [ [[package]] name = "pallet-whitelist" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-benchmarking", "frame-support", @@ -8765,9 +8850,10 @@ dependencies = [ [[package]] name = "pallet-xcm" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ + "bounded-collections", "frame-benchmarking", "frame-support", "frame-system", @@ -8785,8 +8871,8 @@ dependencies = [ [[package]] name = "pallet-xcm-benchmarks" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "frame-benchmarking", "frame-support", @@ -8831,7 +8917,7 @@ dependencies = [ [[package]] name = "parachain-info" version = "0.1.0" -source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.38#9a2e23cf9a85b0fbe780d5b94999b088aea0d834" +source = "git+https://github.com/purestake/cumulus?branch=moonbeam-polkadot-v0.9.40#efefd824aa96cac25376085979ab2a9526c052f5" dependencies = [ "cumulus-primitives-core", "frame-support", @@ -8842,9 +8928,9 @@ dependencies = [ [[package]] name = "parity-db" -version = "0.4.3" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd684a725651d9588ef21f140a328b6b4f64e646b2e931f3e6f14f75eedf9980" +checksum = "00bfb81cf5c90a222db2fb7b3a7cbf8cc7f38dfb6647aca4d98edf8281f56ed5" dependencies = [ "blake2", "crc32fast", @@ -8856,6 +8942,7 @@ dependencies = [ "memmap2", "parking_lot 0.12.1", "rand 0.8.5", + "siphasher", "snap", ] @@ -8883,7 +8970,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -9045,7 +9132,7 @@ dependencies = [ "pest_meta", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -9086,7 +9173,7 @@ checksum = "069bdb1e05adc7a8990dce9cc75370895fbe4e3d58b9b73bf1aee56359344a55" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -9131,10 +9218,10 @@ checksum = "e8d0eef3571242013a0d5dc84861c3ae4a652e56e12adf8bdc26ff5f8cb34c94" [[package]] name = "polkadot-approval-distribution" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "polkadot-node-metrics", "polkadot-node-network-protocol", "polkadot-node-primitives", @@ -9146,10 +9233,10 @@ dependencies = [ [[package]] name = "polkadot-availability-bitfield-distribution" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "polkadot-node-network-protocol", "polkadot-node-subsystem", "polkadot-node-subsystem-util", @@ -9160,12 +9247,12 @@ dependencies = [ [[package]] name = "polkadot-availability-distribution" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "derive_more", "fatality", - "futures 0.3.25", + "futures 0.3.28", "lru 0.9.0", "parity-scale-codec", "polkadot-erasure-coding", @@ -9183,11 +9270,11 @@ dependencies = [ [[package]] name = "polkadot-availability-recovery" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "fatality", - "futures 0.3.25", + "futures 0.3.28", "lru 0.9.0", "parity-scale-codec", "polkadot-erasure-coding", @@ -9204,17 +9291,16 @@ dependencies = [ [[package]] name = "polkadot-cli" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "clap", "frame-benchmarking-cli", - "futures 0.3.25", + "futures 0.3.28", "log", "polkadot-client", "polkadot-node-core-pvf", "polkadot-node-metrics", - "polkadot-performance-test", "polkadot-service", "sc-cli", "sc-executor", @@ -9232,15 +9318,15 @@ dependencies = [ [[package]] name = "polkadot-client" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "async-trait", "frame-benchmarking", "frame-benchmarking-cli", "frame-system", "frame-system-rpc-runtime-api", - "futures 0.3.25", + "futures 0.3.28", "kusama-runtime", "pallet-transaction-payment", "pallet-transaction-payment-rpc-runtime-api", @@ -9256,13 +9342,13 @@ dependencies = [ "sc-service", "sp-api", "sp-authority-discovery", - "sp-beefy", "sp-block-builder", "sp-blockchain", "sp-consensus", "sp-consensus-babe", + "sp-consensus-beefy", + "sp-consensus-grandpa", "sp-core", - "sp-finality-grandpa", "sp-inherents", "sp-keyring", "sp-mmr-primitives", @@ -9277,13 +9363,13 @@ dependencies = [ [[package]] name = "polkadot-collator-protocol" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "always-assert", "bitvec", "fatality", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "polkadot-node-network-protocol", "polkadot-node-primitives", @@ -9299,8 +9385,8 @@ dependencies = [ [[package]] name = "polkadot-core-primitives" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "parity-scale-codec", "scale-info", @@ -9311,12 +9397,12 @@ dependencies = [ [[package]] name = "polkadot-dispute-distribution" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "derive_more", "fatality", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "indexmap", "lru 0.9.0", @@ -9336,8 +9422,8 @@ dependencies = [ [[package]] name = "polkadot-erasure-coding" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "parity-scale-codec", "polkadot-node-primitives", @@ -9350,10 +9436,10 @@ dependencies = [ [[package]] name = "polkadot-gossip-support" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "polkadot-node-network-protocol", "polkadot-node-subsystem", @@ -9370,14 +9456,14 @@ dependencies = [ [[package]] name = "polkadot-network-bridge" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "always-assert", "async-trait", "bytes", "fatality", - "futures 0.3.25", + "futures 0.3.28", "parity-scale-codec", "parking_lot 0.12.1", "polkadot-node-metrics", @@ -9386,7 +9472,6 @@ dependencies = [ "polkadot-overseer", "polkadot-primitives", "sc-network", - "sc-network-common", "sp-consensus", "thiserror", "tracing-gum", @@ -9394,10 +9479,10 @@ dependencies = [ [[package]] name = "polkadot-node-collation-generation" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "parity-scale-codec", "polkadot-erasure-coding", "polkadot-node-primitives", @@ -9412,12 +9497,12 @@ dependencies = [ [[package]] name = "polkadot-node-core-approval-voting" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "bitvec", "derive_more", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "kvdb", "lru 0.9.0", @@ -9441,11 +9526,11 @@ dependencies = [ [[package]] name = "polkadot-node-core-av-store" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "bitvec", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "kvdb", "parity-scale-codec", @@ -9455,18 +9540,19 @@ dependencies = [ "polkadot-node-subsystem-util", "polkadot-overseer", "polkadot-primitives", + "sp-consensus", "thiserror", "tracing-gum", ] [[package]] name = "polkadot-node-core-backing" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "bitvec", "fatality", - "futures 0.3.25", + "futures 0.3.28", "polkadot-erasure-coding", "polkadot-node-primitives", "polkadot-node-subsystem", @@ -9480,10 +9566,10 @@ dependencies = [ [[package]] name = "polkadot-node-core-bitfield-signing" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "polkadot-node-subsystem", "polkadot-node-subsystem-util", "polkadot-primitives", @@ -9495,17 +9581,18 @@ dependencies = [ [[package]] name = "polkadot-node-core-candidate-validation" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "async-trait", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "parity-scale-codec", "polkadot-node-core-pvf", "polkadot-node-metrics", "polkadot-node-primitives", "polkadot-node-subsystem", + "polkadot-node-subsystem-util", "polkadot-parachain", "polkadot-primitives", "sp-maybe-compressed-blob", @@ -9514,10 +9601,10 @@ dependencies = [ [[package]] name = "polkadot-node-core-chain-api" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "polkadot-node-metrics", "polkadot-node-subsystem", "polkadot-primitives", @@ -9529,10 +9616,10 @@ dependencies = [ [[package]] name = "polkadot-node-core-chain-selection" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "kvdb", "parity-scale-codec", @@ -9546,11 +9633,11 @@ dependencies = [ [[package]] name = "polkadot-node-core-dispute-coordinator" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "fatality", - "futures 0.3.25", + "futures 0.3.28", "kvdb", "lru 0.9.0", "parity-scale-codec", @@ -9565,11 +9652,11 @@ dependencies = [ [[package]] name = "polkadot-node-core-parachains-inherent" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "async-trait", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "polkadot-node-subsystem", "polkadot-overseer", @@ -9582,12 +9669,12 @@ dependencies = [ [[package]] name = "polkadot-node-core-provisioner" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "bitvec", "fatality", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "polkadot-node-primitives", "polkadot-node-subsystem", @@ -9600,19 +9687,22 @@ dependencies = [ [[package]] name = "polkadot-node-core-pvf" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "always-assert", "assert_matches", "cpu-time", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", + "libc", "parity-scale-codec", "pin-project", "polkadot-core-primitives", "polkadot-node-metrics", + "polkadot-node-primitives", "polkadot-parachain", + "polkadot-primitives", "rand 0.8.5", "rayon", "sc-executor", @@ -9626,16 +9716,17 @@ dependencies = [ "sp-tracing", "sp-wasm-interface", "tempfile", + "tikv-jemalloc-ctl", "tokio", "tracing-gum", ] [[package]] name = "polkadot-node-core-pvf-checker" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-node-subsystem-util", @@ -9648,10 +9739,10 @@ dependencies = [ [[package]] name = "polkadot-node-core-runtime-api" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "lru 0.9.0", "polkadot-node-metrics", "polkadot-node-subsystem", @@ -9663,8 +9754,8 @@ dependencies = [ [[package]] name = "polkadot-node-jaeger" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "lazy_static", "log", @@ -9681,11 +9772,11 @@ dependencies = [ [[package]] name = "polkadot-node-metrics" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "bs58", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "log", "parity-scale-codec", @@ -9700,13 +9791,13 @@ dependencies = [ [[package]] name = "polkadot-node-network-protocol" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "async-trait", "derive_more", "fatality", - "futures 0.3.25", + "futures 0.3.28", "hex", "parity-scale-codec", "polkadot-node-jaeger", @@ -9715,7 +9806,6 @@ dependencies = [ "rand 0.8.5", "sc-authority-discovery", "sc-network", - "sc-network-common", "strum", "thiserror", "tracing-gum", @@ -9723,11 +9813,11 @@ dependencies = [ [[package]] name = "polkadot-node-primitives" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "bounded-vec", - "futures 0.3.25", + "futures 0.3.28", "parity-scale-codec", "polkadot-parachain", "polkadot-primitives", @@ -9739,14 +9829,15 @@ dependencies = [ "sp-core", "sp-keystore", "sp-maybe-compressed-blob", + "sp-runtime", "thiserror", "zstd", ] [[package]] name = "polkadot-node-subsystem" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "polkadot-node-jaeger", "polkadot-node-subsystem-types", @@ -9755,12 +9846,12 @@ dependencies = [ [[package]] name = "polkadot-node-subsystem-types" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "async-trait", "derive_more", - "futures 0.3.25", + "futures 0.3.28", "orchestra", "polkadot-node-jaeger", "polkadot-node-network-protocol", @@ -9778,13 +9869,13 @@ dependencies = [ [[package]] name = "polkadot-node-subsystem-util" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "async-trait", "derive_more", "fatality", - "futures 0.3.25", + "futures 0.3.28", "futures-channel", "itertools", "kvdb", @@ -9811,11 +9902,11 @@ dependencies = [ [[package]] name = "polkadot-overseer" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "async-trait", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "lru 0.9.0", "orchestra", @@ -9834,9 +9925,10 @@ dependencies = [ [[package]] name = "polkadot-parachain" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ + "bounded-collections", "derive_more", "frame-support", "parity-scale-codec", @@ -9848,25 +9940,10 @@ dependencies = [ "sp-std", ] -[[package]] -name = "polkadot-performance-test" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" -dependencies = [ - "env_logger", - "kusama-runtime", - "log", - "polkadot-erasure-coding", - "polkadot-node-core-pvf", - "polkadot-node-primitives", - "quote", - "thiserror", -] - [[package]] name = "polkadot-primitives" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "bitvec", "hex-literal", @@ -9891,11 +9968,9 @@ dependencies = [ [[package]] name = "polkadot-rpc" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ - "beefy-gadget", - "beefy-gadget-rpc", "jsonrpsee", "mmr-rpc", "pallet-transaction-payment-rpc", @@ -9904,9 +9979,11 @@ dependencies = [ "sc-client-api", "sc-consensus-babe", "sc-consensus-babe-rpc", + "sc-consensus-beefy", + "sc-consensus-beefy-rpc", "sc-consensus-epochs", - "sc-finality-grandpa", - "sc-finality-grandpa-rpc", + "sc-consensus-grandpa", + "sc-consensus-grandpa-rpc", "sc-rpc", "sc-sync-state-rpc", "sc-transaction-pool-api", @@ -9923,8 +10000,8 @@ dependencies = [ [[package]] name = "polkadot-runtime" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "bitvec", "frame-benchmarking", @@ -9968,6 +10045,7 @@ dependencies = [ "pallet-session-benchmarking", "pallet-staking", "pallet-staking-reward-curve", + "pallet-staking-runtime-api", "pallet-timestamp", "pallet-tips", "pallet-transaction-payment", @@ -9988,9 +10066,9 @@ dependencies = [ "smallvec", "sp-api", "sp-authority-discovery", - "sp-beefy", "sp-block-builder", "sp-consensus-babe", + "sp-consensus-beefy", "sp-core", "sp-inherents", "sp-io", @@ -10012,8 +10090,8 @@ dependencies = [ [[package]] name = "polkadot-runtime-common" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "bitvec", "frame-benchmarking", @@ -10026,7 +10104,6 @@ dependencies = [ "pallet-authorship", "pallet-babe", "pallet-balances", - "pallet-beefy-mmr", "pallet-election-provider-multi-phase", "pallet-fast-unstake", "pallet-session", @@ -10045,7 +10122,6 @@ dependencies = [ "serde_derive", "slot-range-helper", "sp-api", - "sp-beefy", "sp-core", "sp-inherents", "sp-io", @@ -10060,8 +10136,8 @@ dependencies = [ [[package]] name = "polkadot-runtime-constants" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "frame-support", "polkadot-primitives", @@ -10074,8 +10150,8 @@ dependencies = [ [[package]] name = "polkadot-runtime-metrics" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "bs58", "parity-scale-codec", @@ -10086,8 +10162,8 @@ dependencies = [ [[package]] name = "polkadot-runtime-parachains" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "bitflags", "bitvec", @@ -10105,6 +10181,7 @@ dependencies = [ "pallet-timestamp", "pallet-vesting", "parity-scale-codec", + "polkadot-parachain", "polkadot-primitives", "polkadot-runtime-metrics", "rand 0.8.5", @@ -10129,15 +10206,14 @@ dependencies = [ [[package]] name = "polkadot-service" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "async-trait", - "beefy-gadget", "frame-benchmarking-cli", "frame-support", "frame-system-rpc-runtime-api", - "futures 0.3.25", + "futures 0.3.28", "hex-literal", "kusama-runtime", "kusama-runtime-constants", @@ -10196,12 +10272,14 @@ dependencies = [ "sc-client-db", "sc-consensus", "sc-consensus-babe", + "sc-consensus-beefy", + "sc-consensus-grandpa", "sc-consensus-slots", "sc-executor", - "sc-finality-grandpa", "sc-keystore", "sc-network", "sc-network-common", + "sc-network-sync", "sc-offchain", "sc-service", "sc-sync-state-rpc", @@ -10212,13 +10290,13 @@ dependencies = [ "serde_json", "sp-api", "sp-authority-discovery", - "sp-beefy", "sp-block-builder", "sp-blockchain", "sp-consensus", "sp-consensus-babe", + "sp-consensus-beefy", + "sp-consensus-grandpa", "sp-core", - "sp-finality-grandpa", "sp-inherents", "sp-io", "sp-keystore", @@ -10240,12 +10318,12 @@ dependencies = [ [[package]] name = "polkadot-statement-distribution" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "arrayvec 0.5.2", "fatality", - "futures 0.3.25", + "futures 0.3.28", "indexmap", "parity-scale-codec", "polkadot-node-network-protocol", @@ -10261,8 +10339,8 @@ dependencies = [ [[package]] name = "polkadot-statement-table" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "parity-scale-codec", "polkadot-primitives", @@ -10369,7 +10447,7 @@ dependencies = [ "sha3", "sp-core", "sp-std", - "syn", + "syn 1.0.109", "trybuild", ] @@ -10446,7 +10524,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c142c0e46b57171fe0c528bee8c5b7569e80f0c17e377cd0e30ea57dbc11bb51" dependencies = [ "proc-macro2", - "syn", + "syn 1.0.109", ] [[package]] @@ -10465,14 +10543,15 @@ dependencies = [ [[package]] name = "prioritized-metered-channel" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "382698e48a268c832d0b181ed438374a6bb708a82a8ca273bb0f61c74cf209c4" +checksum = "a3caef72a78ca8e77cbdfa87dd516ebb79d4cbe5b42e3b8435b463a8261339ff" dependencies = [ + "async-channel", "coarsetime", "crossbeam-queue", "derive_more", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "nanorand", "thiserror", @@ -10481,9 +10560,9 @@ dependencies = [ [[package]] name = "proc-macro-crate" -version = "1.3.0" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66618389e4ec1c7afe67d51a9bf34ff9236480f8d51e7489b7d5ab0303c13f34" +checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919" dependencies = [ "once_cell", "toml_edit", @@ -10498,7 +10577,7 @@ dependencies = [ "proc-macro-error-attr", "proc-macro2", "quote", - "syn", + "syn 1.0.109", "version_check", ] @@ -10515,9 +10594,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.50" +version = "1.0.54" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ef7d57beacfaf2d8aee5937dab7b7f28de3cb8b1828479bb5de2a7106f2bae2" +checksum = "e472a104799c74b514a57226160104aa483546de37e839ec50e3c2e41dd87534" dependencies = [ "unicode-ident", ] @@ -10556,7 +10635,7 @@ checksum = "66a455fbcb954c1a7decf3c586e860fd7889cddf4b8e164be736dbac95a953cd" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -10612,7 +10691,7 @@ dependencies = [ "itertools", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -10671,9 +10750,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.23" +version = "1.0.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b" +checksum = "4424af4bf778aae2051a77b60283332f386554255d722233d09fbfc7e30da2fc" dependencies = [ "proc-macro2", ] @@ -10746,16 +10825,6 @@ dependencies = [ "getrandom 0.2.8", ] -[[package]] -name = "rand_distr" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32cb0b9bc82b0a0876c2dd994a7e7a2683d3e7390ca40e6886785ef0c7e3ee31" -dependencies = [ - "num-traits", - "rand 0.8.5", -] - [[package]] name = "rand_hc" version = "0.2.0" @@ -10782,21 +10851,19 @@ checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3" [[package]] name = "rayon" -version = "1.5.3" +version = "1.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd99e5772ead8baa5215278c9b15bf92087709e9c1b2d1f97cdb5a183c933a7d" +checksum = "1d2df5196e37bcc87abebc0053e20787d73847bb33134a69841207dd0a47f03b" dependencies = [ - "autocfg", - "crossbeam-deque", "either", "rayon-core", ] [[package]] name = "rayon-core" -version = "1.9.3" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "258bcdb5ac6dad48491bb2992db6b7cf74878b0384908af124823d118c99683f" +checksum = "4b8f95bd6966f5c87776639160a66bd8ab9895d9d4ab01ddba9fc60661aebe8d" dependencies = [ "crossbeam-channel", "crossbeam-deque", @@ -10879,14 +10946,14 @@ checksum = "abfa8511e9e94fd3de6585a3d3cd00e01ed556dc9814829280af0e8dc72a8f36" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] name = "regalloc2" -version = "0.3.2" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d43a209257d978ef079f3d446331d0f1794f5e0fc19b306a199983857833a779" +checksum = "300d4fbfb40c1c66a78ba3ddd41c1110247cf52f97b87d0f2fc9209bd49b030c" dependencies = [ "fxhash", "log", @@ -10920,6 +10987,18 @@ version = "0.6.27" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a3f87b73ce11b1619a3c6332f45341e0047173771e8b8b73f87bfeefb7b56244" +[[package]] +name = "region" +version = "3.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76e189c2369884dce920945e2ddf79b3dff49e071a167dd1817fa9c4c00d512e" +dependencies = [ + "bitflags", + "libc", + "mach", + "winapi", +] + [[package]] name = "remove_dir_all" version = "0.5.3" @@ -10993,7 +11072,7 @@ checksum = "e33d7b2abe0c340d8797fe2907d3f20d3b5ea5908683618bfe80df7f621f672a" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -11008,10 +11087,10 @@ dependencies = [ [[package]] name = "rococo-runtime" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ - "beefy-merkle-tree", + "binary-merkle-tree", "frame-benchmarking", "frame-executive", "frame-support", @@ -11071,9 +11150,9 @@ dependencies = [ "smallvec", "sp-api", "sp-authority-discovery", - "sp-beefy", "sp-block-builder", "sp-consensus-babe", + "sp-consensus-beefy", "sp-core", "sp-inherents", "sp-io", @@ -11094,8 +11173,8 @@ dependencies = [ [[package]] name = "rococo-runtime-constants" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "frame-support", "polkadot-primitives", @@ -11133,7 +11212,7 @@ version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "322c53fd76a18698f1c27381d58091de3a043d356aa5bd0d510608b565f469a0" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "log", "netlink-packet-route", "netlink-proto", @@ -11199,7 +11278,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "727a1a6d65f786ec22df8a81ca3121107f235970dc1705ed681d3e6e8b9cd5f9" dependencies = [ "bitflags", - "errno", + "errno 0.2.8", "io-lifetimes 0.7.5", "libc", "linux-raw-sys 0.0.46", @@ -11213,13 +11292,27 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d4fdebc4b395b7fbb9ab11e462e20ed9051e7b16e42d24042c776eca0ac81b03" dependencies = [ "bitflags", - "errno", + "errno 0.2.8", "io-lifetimes 1.0.4", "libc", "linux-raw-sys 0.1.4", "windows-sys 0.42.0", ] +[[package]] +name = "rustix" +version = "0.37.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d097081ed288dfe45699b72f5b5d648e5f15d64d900c7080273baa20c16a6849" +dependencies = [ + "bitflags", + "errno 0.3.0", + "io-lifetimes 1.0.4", + "libc", + "linux-raw-sys 0.3.1", + "windows-sys 0.45.0", +] + [[package]] name = "rustls" version = "0.19.1" @@ -11278,7 +11371,7 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "26338f5e09bb721b85b135ea05af7767c90b52f6de4f087d4f4a3a9d64e7dc04" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "pin-project", "static_assertions", ] @@ -11289,6 +11382,15 @@ version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4501abdff3ae82a1c1b477a17252eb69cee9e66eb915c1abaa4f44d873df9f09" +[[package]] +name = "safe_arch" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "794821e4ccb0d9f979512f9c1973480123f9bd62a90d74ab0f9426fcf8f4a529" +dependencies = [ + "bytemuck", +] + [[package]] name = "same-file" version = "1.0.6" @@ -11301,7 +11403,7 @@ dependencies = [ [[package]] name = "sc-allocator" version = "4.1.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "log", "sp-core", @@ -11312,10 +11414,10 @@ dependencies = [ [[package]] name = "sc-authority-discovery" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "async-trait", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "ip_network", "libp2p", @@ -11325,6 +11427,7 @@ dependencies = [ "prost-build", "rand 0.8.5", "sc-client-api", + "sc-network", "sc-network-common", "sp-api", "sp-authority-discovery", @@ -11339,9 +11442,9 @@ dependencies = [ [[package]] name = "sc-basic-authorship" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "log", "parity-scale-codec", @@ -11362,7 +11465,7 @@ dependencies = [ [[package]] name = "sc-block-builder" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "parity-scale-codec", "sc-client-api", @@ -11372,45 +11475,48 @@ dependencies = [ "sp-core", "sp-inherents", "sp-runtime", - "sp-state-machine", ] [[package]] name = "sc-chain-spec" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "memmap2", "sc-chain-spec-derive", - "sc-network-common", + "sc-client-api", + "sc-executor", + "sc-network", "sc-telemetry", "serde", "serde_json", + "sp-blockchain", "sp-core", "sp-runtime", + "sp-state-machine", ] [[package]] name = "sc-chain-spec-derive" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] name = "sc-cli" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "array-bytes 4.1.0", "chrono", "clap", "fdlimit", - "futures 0.3.25", + "futures 0.3.28", "libp2p", "log", "names", @@ -11444,10 +11550,10 @@ dependencies = [ [[package]] name = "sc-client-api" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "fnv", - "futures 0.3.25", + "futures 0.3.28", "log", "parity-scale-codec", "parking_lot 0.12.1", @@ -11470,9 +11576,9 @@ dependencies = [ [[package]] name = "sc-client-db" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ - "hash-db", + "hash-db 0.16.0", "kvdb", "kvdb-memorydb", "kvdb-rocksdb", @@ -11496,10 +11602,10 @@ dependencies = [ [[package]] name = "sc-consensus" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "async-trait", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "libp2p", "log", @@ -11521,10 +11627,10 @@ dependencies = [ [[package]] name = "sc-consensus-aura" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "async-trait", - "futures 0.3.25", + "futures 0.3.28", "log", "parity-scale-codec", "sc-block-builder", @@ -11550,11 +11656,11 @@ dependencies = [ [[package]] name = "sc-consensus-babe" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "async-trait", "fork-tree", - "futures 0.3.25", + "futures 0.3.28", "log", "merlin", "num-bigint", @@ -11568,6 +11674,7 @@ dependencies = [ "sc-consensus-slots", "sc-keystore", "sc-telemetry", + "scale-info", "schnorrkel", "sp-api", "sp-application-crypto", @@ -11588,9 +11695,9 @@ dependencies = [ [[package]] name = "sc-consensus-babe-rpc" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "jsonrpsee", "sc-consensus-babe", "sc-consensus-epochs", @@ -11607,10 +11714,64 @@ dependencies = [ "thiserror", ] +[[package]] +name = "sc-consensus-beefy" +version = "4.0.0-dev" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" +dependencies = [ + "array-bytes 4.1.0", + "async-trait", + "fnv", + "futures 0.3.28", + "log", + "parity-scale-codec", + "parking_lot 0.12.1", + "sc-client-api", + "sc-consensus", + "sc-keystore", + "sc-network", + "sc-network-common", + "sc-network-gossip", + "sc-network-sync", + "sc-utils", + "sp-api", + "sp-application-crypto", + "sp-arithmetic", + "sp-blockchain", + "sp-consensus", + "sp-consensus-beefy", + "sp-core", + "sp-keystore", + "sp-mmr-primitives", + "sp-runtime", + "substrate-prometheus-endpoint", + "thiserror", + "wasm-timer", +] + +[[package]] +name = "sc-consensus-beefy-rpc" +version = "4.0.0-dev" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" +dependencies = [ + "futures 0.3.28", + "jsonrpsee", + "log", + "parity-scale-codec", + "parking_lot 0.12.1", + "sc-consensus-beefy", + "sc-rpc", + "serde", + "sp-consensus-beefy", + "sp-core", + "sp-runtime", + "thiserror", +] + [[package]] name = "sc-consensus-epochs" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "fork-tree", "parity-scale-codec", @@ -11620,14 +11781,74 @@ dependencies = [ "sp-runtime", ] +[[package]] +name = "sc-consensus-grandpa" +version = "0.10.0-dev" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" +dependencies = [ + "ahash 0.8.3", + "array-bytes 4.1.0", + "async-trait", + "dyn-clone", + "finality-grandpa", + "fork-tree", + "futures 0.3.28", + "futures-timer", + "log", + "parity-scale-codec", + "parking_lot 0.12.1", + "rand 0.8.5", + "sc-block-builder", + "sc-chain-spec", + "sc-client-api", + "sc-consensus", + "sc-network", + "sc-network-common", + "sc-network-gossip", + "sc-telemetry", + "sc-utils", + "serde_json", + "sp-api", + "sp-application-crypto", + "sp-arithmetic", + "sp-blockchain", + "sp-consensus", + "sp-consensus-grandpa", + "sp-core", + "sp-keystore", + "sp-runtime", + "substrate-prometheus-endpoint", + "thiserror", +] + +[[package]] +name = "sc-consensus-grandpa-rpc" +version = "0.10.0-dev" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" +dependencies = [ + "finality-grandpa", + "futures 0.3.28", + "jsonrpsee", + "log", + "parity-scale-codec", + "sc-client-api", + "sc-consensus-grandpa", + "sc-rpc", + "serde", + "sp-blockchain", + "sp-core", + "sp-runtime", + "thiserror", +] + [[package]] name = "sc-consensus-manual-seal" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "assert_matches", "async-trait", - "futures 0.3.25", + "futures 0.3.28", "jsonrpsee", "log", "parity-scale-codec", @@ -11657,10 +11878,10 @@ dependencies = [ [[package]] name = "sc-consensus-slots" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "async-trait", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "log", "parity-scale-codec", @@ -11680,7 +11901,7 @@ dependencies = [ [[package]] name = "sc-executor" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "lru 0.8.1", "parity-scale-codec", @@ -11704,7 +11925,7 @@ dependencies = [ [[package]] name = "sc-executor-common" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "sc-allocator", "sp-maybe-compressed-blob", @@ -11717,7 +11938,7 @@ dependencies = [ [[package]] name = "sc-executor-wasmi" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "log", "sc-allocator", @@ -11730,13 +11951,14 @@ dependencies = [ [[package]] name = "sc-executor-wasmtime" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ + "anyhow", "cfg-if", "libc", "log", "once_cell", - "rustix 0.35.13", + "rustix 0.36.7", "sc-allocator", "sc-executor-common", "sp-runtime-interface", @@ -11744,76 +11966,17 @@ dependencies = [ "wasmtime", ] -[[package]] -name = "sc-finality-grandpa" -version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" -dependencies = [ - "ahash 0.8.3", - "array-bytes 4.1.0", - "async-trait", - "dyn-clone", - "finality-grandpa", - "fork-tree", - "futures 0.3.25", - "futures-timer", - "log", - "parity-scale-codec", - "parking_lot 0.12.1", - "rand 0.8.5", - "sc-block-builder", - "sc-chain-spec", - "sc-client-api", - "sc-consensus", - "sc-network", - "sc-network-common", - "sc-network-gossip", - "sc-telemetry", - "sc-utils", - "serde_json", - "sp-api", - "sp-application-crypto", - "sp-arithmetic", - "sp-blockchain", - "sp-consensus", - "sp-core", - "sp-finality-grandpa", - "sp-keystore", - "sp-runtime", - "substrate-prometheus-endpoint", - "thiserror", -] - -[[package]] -name = "sc-finality-grandpa-rpc" -version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" -dependencies = [ - "finality-grandpa", - "futures 0.3.25", - "jsonrpsee", - "log", - "parity-scale-codec", - "sc-client-api", - "sc-finality-grandpa", - "sc-rpc", - "serde", - "sp-blockchain", - "sp-core", - "sp-runtime", - "thiserror", -] - [[package]] name = "sc-informant" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "ansi_term", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "log", "sc-client-api", + "sc-network", "sc-network-common", "sp-blockchain", "sp-runtime", @@ -11822,7 +11985,7 @@ dependencies = [ [[package]] name = "sc-keystore" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "array-bytes 4.1.0", "async-trait", @@ -11837,21 +12000,23 @@ dependencies = [ [[package]] name = "sc-network" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "array-bytes 4.1.0", + "async-channel", "async-trait", "asynchronous-codec", - "backtrace", "bytes", "either", "fnv", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "ip_network", "libp2p", + "linked_hash_set", "log", "lru 0.8.1", + "mockall", "parity-scale-codec", "parking_lot 0.12.1", "pin-project", @@ -11879,15 +12044,16 @@ dependencies = [ [[package]] name = "sc-network-bitswap" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "cid", - "futures 0.3.25", + "futures 0.3.28", "libp2p", "log", "prost", "prost-build", "sc-client-api", + "sc-network", "sc-network-common", "sp-blockchain", "sp-runtime", @@ -11898,40 +12064,43 @@ dependencies = [ [[package]] name = "sc-network-common" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ + "array-bytes 4.1.0", "async-trait", "bitflags", "bytes", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "libp2p", - "linked_hash_set", "parity-scale-codec", "prost-build", "sc-consensus", "sc-peerset", + "sc-utils", "serde", "smallvec", "sp-blockchain", "sp-consensus", - "sp-finality-grandpa", + "sp-consensus-grandpa", "sp-runtime", "substrate-prometheus-endpoint", "thiserror", + "zeroize", ] [[package]] name = "sc-network-gossip" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "ahash 0.8.3", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "libp2p", "log", "lru 0.8.1", + "sc-network", "sc-network-common", "sc-peerset", "sp-runtime", @@ -11942,16 +12111,17 @@ dependencies = [ [[package]] name = "sc-network-light" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "array-bytes 4.1.0", - "futures 0.3.25", + "futures 0.3.28", "libp2p", "log", "parity-scale-codec", "prost", "prost-build", "sc-client-api", + "sc-network", "sc-network-common", "sc-peerset", "sp-blockchain", @@ -11963,12 +12133,13 @@ dependencies = [ [[package]] name = "sc-network-sync" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "array-bytes 4.1.0", "async-trait", "fork-tree", - "futures 0.3.25", + "futures 0.3.28", + "futures-timer", "libp2p", "log", "lru 0.8.1", @@ -11978,6 +12149,7 @@ dependencies = [ "prost-build", "sc-client-api", "sc-consensus", + "sc-network", "sc-network-common", "sc-peerset", "sc-utils", @@ -11985,8 +12157,8 @@ dependencies = [ "sp-arithmetic", "sp-blockchain", "sp-consensus", + "sp-consensus-grandpa", "sp-core", - "sp-finality-grandpa", "sp-runtime", "substrate-prometheus-endpoint", "thiserror", @@ -11995,14 +12167,15 @@ dependencies = [ [[package]] name = "sc-network-transactions" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "array-bytes 4.1.0", - "futures 0.3.25", + "futures 0.3.28", "libp2p", "log", "parity-scale-codec", "pin-project", + "sc-network", "sc-network-common", "sc-peerset", "sc-utils", @@ -12014,12 +12187,12 @@ dependencies = [ [[package]] name = "sc-offchain" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "array-bytes 4.1.0", "bytes", "fnv", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "hyper", "hyper-rustls", @@ -12030,6 +12203,7 @@ dependencies = [ "parking_lot 0.12.1", "rand 0.8.5", "sc-client-api", + "sc-network", "sc-network-common", "sc-peerset", "sc-utils", @@ -12044,9 +12218,9 @@ dependencies = [ [[package]] name = "sc-peerset" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "libp2p", "log", "sc-utils", @@ -12057,7 +12231,7 @@ dependencies = [ [[package]] name = "sc-proposer-metrics" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "log", "substrate-prometheus-endpoint", @@ -12066,9 +12240,9 @@ dependencies = [ [[package]] name = "sc-rpc" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "jsonrpsee", "log", "parity-scale-codec", @@ -12096,7 +12270,7 @@ dependencies = [ [[package]] name = "sc-rpc-api" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "jsonrpsee", "parity-scale-codec", @@ -12115,7 +12289,7 @@ dependencies = [ [[package]] name = "sc-rpc-server" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "http", "jsonrpsee", @@ -12130,10 +12304,10 @@ dependencies = [ [[package]] name = "sc-rpc-spec-v2" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "array-bytes 4.1.0", - "futures 0.3.25", + "futures 0.3.28", "futures-util", "hex", "jsonrpsee", @@ -12156,12 +12330,12 @@ dependencies = [ [[package]] name = "sc-service" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "async-trait", "directories", "exit-future", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "jsonrpsee", "log", @@ -12222,7 +12396,7 @@ dependencies = [ [[package]] name = "sc-state-db" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "log", "parity-scale-codec", @@ -12233,12 +12407,12 @@ dependencies = [ [[package]] name = "sc-storage-monitor" version = "0.1.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "clap", - "futures 0.3.25", + "fs4", + "futures 0.3.28", "log", - "nix 0.26.2", "sc-client-db", "sc-utils", "sp-core", @@ -12249,7 +12423,7 @@ dependencies = [ [[package]] name = "sc-sync-state-rpc" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "jsonrpsee", "parity-scale-codec", @@ -12257,7 +12431,7 @@ dependencies = [ "sc-client-api", "sc-consensus-babe", "sc-consensus-epochs", - "sc-finality-grandpa", + "sc-consensus-grandpa", "serde", "serde_json", "sp-blockchain", @@ -12268,9 +12442,9 @@ dependencies = [ [[package]] name = "sc-sysinfo" version = "6.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "libc", "log", "rand 0.8.5", @@ -12287,10 +12461,10 @@ dependencies = [ [[package]] name = "sc-telemetry" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "chrono", - "futures 0.3.25", + "futures 0.3.28", "libp2p", "log", "parking_lot 0.12.1", @@ -12306,7 +12480,7 @@ dependencies = [ [[package]] name = "sc-tracing" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "ansi_term", "atty", @@ -12337,21 +12511,21 @@ dependencies = [ [[package]] name = "sc-tracing-proc-macro" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] name = "sc-transaction-pool" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "async-trait", - "futures 0.3.25", + "futures 0.3.28", "futures-timer", "linked-hash-map", "log", @@ -12375,10 +12549,10 @@ dependencies = [ [[package]] name = "sc-transaction-pool-api" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "async-trait", - "futures 0.3.25", + "futures 0.3.28", "log", "serde", "sp-blockchain", @@ -12389,15 +12563,16 @@ dependencies = [ [[package]] name = "sc-utils" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ - "backtrace", - "futures 0.3.25", + "async-channel", + "futures 0.3.28", "futures-timer", "lazy_static", "log", "parking_lot 0.12.1", "prometheus", + "sp-arithmetic", ] [[package]] @@ -12423,7 +12598,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -12614,14 +12789,14 @@ checksum = "af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] name = "serde_json" -version = "1.0.91" +version = "1.0.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "877c235533714907a8c2464236f5c4b2a17262ef1bd71f38f35ea592c8da6883" +checksum = "d721eca97ac802aa7777b701877c8004d950fc142651367300d21c1cc0194744" dependencies = [ "itoa", "ryu", @@ -12754,14 +12929,15 @@ dependencies = [ [[package]] name = "simba" -version = "0.5.1" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e82063457853d00243beda9952e910b82593e4b07ae9f721b9278a99a0d3d5c" +checksum = "50582927ed6f77e4ac020c057f37a268fc6aebc29225050365aacbb9deeeddc4" dependencies = [ "approx", "num-complex", "num-traits", "paste", + "wide", ] [[package]] @@ -12784,6 +12960,12 @@ dependencies = [ "similar", ] +[[package]] +name = "siphasher" +version = "0.3.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7bd3e3206899af3f8b12af284fafc038cc1dc2b41d1b89dd17297221c5d225de" + [[package]] name = "slab" version = "0.4.7" @@ -12808,13 +12990,13 @@ dependencies = [ "faster-hex", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] name = "slot-range-helper" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "enumn", "parity-scale-codec", @@ -12863,9 +13045,9 @@ dependencies = [ [[package]] name = "socket2" -version = "0.4.7" +version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02e2d2db9033d13a1567121ddd7a095ee144db4e1ca1b1bda3419bc0da294ebd" +checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662" dependencies = [ "libc", "winapi", @@ -12880,7 +13062,7 @@ dependencies = [ "base64", "bytes", "flate2", - "futures 0.3.25", + "futures 0.3.28", "http", "httparse", "log", @@ -12891,9 +13073,9 @@ dependencies = [ [[package]] name = "sp-api" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ - "hash-db", + "hash-db 0.16.0", "log", "parity-scale-codec", "sp-api-proc-macro", @@ -12909,19 +13091,21 @@ dependencies = [ [[package]] name = "sp-api-proc-macro" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ + "Inflector", "blake2", + "expander 1.0.0", "proc-macro-crate", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] name = "sp-application-crypto" version = "7.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "parity-scale-codec", "scale-info", @@ -12934,7 +13118,7 @@ dependencies = [ [[package]] name = "sp-arithmetic" version = "6.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "integer-sqrt", "num-traits", @@ -12948,7 +13132,7 @@ dependencies = [ [[package]] name = "sp-authority-discovery" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "parity-scale-codec", "scale-info", @@ -12958,27 +13142,10 @@ dependencies = [ "sp-std", ] -[[package]] -name = "sp-beefy" -version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" -dependencies = [ - "parity-scale-codec", - "scale-info", - "serde", - "sp-api", - "sp-application-crypto", - "sp-core", - "sp-io", - "sp-mmr-primitives", - "sp-runtime", - "sp-std", -] - [[package]] name = "sp-block-builder" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "parity-scale-codec", "sp-api", @@ -12990,9 +13157,9 @@ dependencies = [ [[package]] name = "sp-blockchain" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "log", "lru 0.8.1", "parity-scale-codec", @@ -13008,25 +13175,22 @@ dependencies = [ [[package]] name = "sp-consensus" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "async-trait", - "futures 0.3.25", + "futures 0.3.28", "log", - "parity-scale-codec", "sp-core", "sp-inherents", "sp-runtime", "sp-state-machine", - "sp-std", - "sp-version", "thiserror", ] [[package]] name = "sp-consensus-aura" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "async-trait", "parity-scale-codec", @@ -13044,7 +13208,7 @@ dependencies = [ [[package]] name = "sp-consensus-babe" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "async-trait", "merlin", @@ -13064,10 +13228,47 @@ dependencies = [ "sp-timestamp", ] +[[package]] +name = "sp-consensus-beefy" +version = "4.0.0-dev" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" +dependencies = [ + "lazy_static", + "parity-scale-codec", + "scale-info", + "serde", + "sp-api", + "sp-application-crypto", + "sp-core", + "sp-io", + "sp-mmr-primitives", + "sp-runtime", + "sp-std", + "strum", +] + +[[package]] +name = "sp-consensus-grandpa" +version = "4.0.0-dev" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" +dependencies = [ + "finality-grandpa", + "log", + "parity-scale-codec", + "scale-info", + "serde", + "sp-api", + "sp-application-crypto", + "sp-core", + "sp-keystore", + "sp-runtime", + "sp-std", +] + [[package]] name = "sp-consensus-slots" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "parity-scale-codec", "scale-info", @@ -13079,7 +13280,7 @@ dependencies = [ [[package]] name = "sp-consensus-vrf" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "parity-scale-codec", "scale-info", @@ -13092,16 +13293,17 @@ dependencies = [ [[package]] name = "sp-core" version = "7.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "array-bytes 4.1.0", "base58", "bitflags", "blake2", + "bounded-collections", "dyn-clonable", "ed25519-zebra", - "futures 0.3.25", - "hash-db", + "futures 0.3.28", + "hash-db 0.16.0", "hash256-std-hasher", "impl-serde 0.4.0", "lazy_static", @@ -13134,9 +13336,9 @@ dependencies = [ [[package]] name = "sp-core-hashing" version = "5.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ - "blake2", + "blake2b_simd", "byteorder", "digest 0.10.5", "sha2 0.10.6", @@ -13148,18 +13350,18 @@ dependencies = [ [[package]] name = "sp-core-hashing-proc-macro" version = "5.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "proc-macro2", "quote", "sp-core-hashing", - "syn", + "syn 1.0.109", ] [[package]] name = "sp-database" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "kvdb", "parking_lot 0.12.1", @@ -13168,17 +13370,17 @@ dependencies = [ [[package]] name = "sp-debug-derive" version = "5.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] name = "sp-externalities" version = "0.13.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "environmental", "parity-scale-codec", @@ -13186,32 +13388,15 @@ dependencies = [ "sp-storage", ] -[[package]] -name = "sp-finality-grandpa" -version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" -dependencies = [ - "finality-grandpa", - "log", - "parity-scale-codec", - "scale-info", - "serde", - "sp-api", - "sp-application-crypto", - "sp-core", - "sp-keystore", - "sp-runtime", - "sp-std", -] - [[package]] name = "sp-inherents" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "async-trait", "impl-trait-for-tuples", "parity-scale-codec", + "scale-info", "sp-core", "sp-runtime", "sp-std", @@ -13221,12 +13406,12 @@ dependencies = [ [[package]] name = "sp-io" version = "7.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "bytes", "ed25519", "ed25519-dalek", - "futures 0.3.25", + "futures 0.3.28", "libsecp256k1", "log", "parity-scale-codec", @@ -13247,7 +13432,7 @@ dependencies = [ [[package]] name = "sp-keyring" version = "7.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "lazy_static", "sp-core", @@ -13258,10 +13443,10 @@ dependencies = [ [[package]] name = "sp-keystore" version = "0.13.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "async-trait", - "futures 0.3.25", + "futures 0.3.28", "merlin", "parity-scale-codec", "parking_lot 0.12.1", @@ -13275,7 +13460,7 @@ dependencies = [ [[package]] name = "sp-maybe-compressed-blob" version = "4.1.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "thiserror", "zstd", @@ -13284,7 +13469,7 @@ dependencies = [ [[package]] name = "sp-mmr-primitives" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "ckb-merkle-mountain-range", "log", @@ -13302,7 +13487,7 @@ dependencies = [ [[package]] name = "sp-npos-elections" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "parity-scale-codec", "scale-info", @@ -13316,7 +13501,7 @@ dependencies = [ [[package]] name = "sp-offchain" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "sp-api", "sp-core", @@ -13326,7 +13511,7 @@ dependencies = [ [[package]] name = "sp-panic-handler" version = "5.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "backtrace", "lazy_static", @@ -13336,7 +13521,7 @@ dependencies = [ [[package]] name = "sp-rpc" version = "6.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "rustc-hash", "serde", @@ -13346,7 +13531,7 @@ dependencies = [ [[package]] name = "sp-runtime" version = "7.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "either", "hash256-std-hasher", @@ -13368,7 +13553,7 @@ dependencies = [ [[package]] name = "sp-runtime-interface" version = "7.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "bytes", "impl-trait-for-tuples", @@ -13386,19 +13571,19 @@ dependencies = [ [[package]] name = "sp-runtime-interface-proc-macro" version = "6.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "Inflector", "proc-macro-crate", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] name = "sp-session" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "parity-scale-codec", "scale-info", @@ -13412,7 +13597,7 @@ dependencies = [ [[package]] name = "sp-staking" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "parity-scale-codec", "scale-info", @@ -13424,9 +13609,9 @@ dependencies = [ [[package]] name = "sp-state-machine" version = "0.13.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ - "hash-db", + "hash-db 0.16.0", "log", "parity-scale-codec", "parking_lot 0.12.1", @@ -13444,12 +13629,12 @@ dependencies = [ [[package]] name = "sp-std" version = "5.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" [[package]] name = "sp-storage" version = "7.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "impl-serde 0.4.0", "parity-scale-codec", @@ -13462,7 +13647,7 @@ dependencies = [ [[package]] name = "sp-timestamp" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "async-trait", "futures-timer", @@ -13477,7 +13662,7 @@ dependencies = [ [[package]] name = "sp-tracing" version = "6.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "parity-scale-codec", "sp-std", @@ -13489,7 +13674,7 @@ dependencies = [ [[package]] name = "sp-transaction-pool" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "sp-api", "sp-runtime", @@ -13498,7 +13683,7 @@ dependencies = [ [[package]] name = "sp-transaction-storage-proof" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "async-trait", "log", @@ -13514,10 +13699,10 @@ dependencies = [ [[package]] name = "sp-trie" version = "7.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "ahash 0.8.3", - "hash-db", + "hash-db 0.16.0", "hashbrown 0.12.3", "lazy_static", "memory-db", @@ -13531,13 +13716,13 @@ dependencies = [ "thiserror", "tracing", "trie-db", - "trie-root 0.17.0", + "trie-root 0.18.0", ] [[package]] name = "sp-version" version = "5.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "impl-serde 0.4.0", "parity-scale-codec", @@ -13554,19 +13739,20 @@ dependencies = [ [[package]] name = "sp-version-proc-macro" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "parity-scale-codec", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] name = "sp-wasm-interface" version = "7.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ + "anyhow", "impl-trait-for-tuples", "log", "parity-scale-codec", @@ -13578,7 +13764,7 @@ dependencies = [ [[package]] name = "sp-weights" version = "4.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "parity-scale-codec", "scale-info", @@ -13679,7 +13865,7 @@ dependencies = [ "memchr", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -13692,20 +13878,7 @@ dependencies = [ "memchr", "proc-macro2", "quote", - "syn", -] - -[[package]] -name = "statrs" -version = "0.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05bdbb8e4e78216a85785a85d3ec3183144f98d0097b9281802c019bb07a6f05" -dependencies = [ - "approx", - "lazy_static", - "nalgebra", - "num-traits", - "rand 0.8.5", + "syn 1.0.109", ] [[package]] @@ -13733,7 +13906,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn", + "syn 1.0.109", ] [[package]] @@ -13784,7 +13957,7 @@ dependencies = [ [[package]] name = "substrate-build-script-utils" version = "3.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "platforms", ] @@ -13802,10 +13975,10 @@ dependencies = [ [[package]] name = "substrate-frame-rpc-system" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "frame-system-rpc-runtime-api", - "futures 0.3.25", + "futures 0.3.28", "jsonrpsee", "log", "parity-scale-codec", @@ -13821,7 +13994,7 @@ dependencies = [ [[package]] name = "substrate-prometheus-endpoint" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "hyper", "log", @@ -13833,7 +14006,7 @@ dependencies = [ [[package]] name = "substrate-rpc-client" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "async-trait", "jsonrpsee", @@ -13846,7 +14019,7 @@ dependencies = [ [[package]] name = "substrate-state-trie-migration-rpc" version = "4.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "jsonrpsee", "log", @@ -13865,11 +14038,11 @@ dependencies = [ [[package]] name = "substrate-test-client" version = "2.0.1" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "array-bytes 4.1.0", "async-trait", - "futures 0.3.25", + "futures 0.3.28", "parity-scale-codec", "sc-client-api", "sc-client-db", @@ -13891,9 +14064,8 @@ dependencies = [ [[package]] name = "substrate-test-runtime" version = "2.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ - "beefy-merkle-tree", "cfg-if", "frame-support", "frame-system", @@ -13901,6 +14073,7 @@ dependencies = [ "log", "memory-db", "pallet-babe", + "pallet-beefy-mmr", "pallet-timestamp", "parity-scale-codec", "sc-service", @@ -13908,13 +14081,13 @@ dependencies = [ "serde", "sp-api", "sp-application-crypto", - "sp-beefy", "sp-block-builder", "sp-consensus-aura", "sp-consensus-babe", + "sp-consensus-beefy", + "sp-consensus-grandpa", "sp-core", "sp-externalities", - "sp-finality-grandpa", "sp-inherents", "sp-io", "sp-keyring", @@ -13934,11 +14107,12 @@ dependencies = [ [[package]] name = "substrate-test-runtime-client" version = "2.0.0" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "parity-scale-codec", "sc-block-builder", + "sc-chain-spec", "sc-client-api", "sc-consensus", "sp-api", @@ -13953,7 +14127,7 @@ dependencies = [ [[package]] name = "substrate-wasm-builder" version = "5.0.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ "ansi_term", "build-helper", @@ -13996,9 +14170,20 @@ dependencies = [ [[package]] name = "syn" -version = "1.0.107" +version = "1.0.109" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f4064b5b16e03ae50984a5a8ed5d4f8803e6bc1fd170a3cda91a1be4b18e3f5" +checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "syn" +version = "2.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "79d9531f94112cfc3e4c8f5f02cb2b58f72c97b7efd85f70203cc6d8efda5927" dependencies = [ "proc-macro2", "quote", @@ -14013,7 +14198,7 @@ checksum = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", "unicode-xid", ] @@ -14106,7 +14291,7 @@ checksum = "1fb327af4685e4d03fa8cbcf1716380da910eeb2bb8be417e7f9fd3fb164f36f" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -14280,14 +14465,13 @@ checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" [[package]] name = "tokio" -version = "1.25.0" +version = "1.27.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8e00990ebabbe4c14c08aca901caed183ecd5c09562a12c824bb53d3c3fd3af" +checksum = "d0de47a4eecbe11f498978a9b29d792f0d2692d1dd003650c24c76510e3bc001" dependencies = [ "autocfg", "bytes", "libc", - "memchr", "mio", "num_cpus", "parking_lot 0.12.1", @@ -14295,18 +14479,18 @@ dependencies = [ "signal-hook-registry", "socket2", "tokio-macros", - "windows-sys 0.42.0", + "windows-sys 0.45.0", ] [[package]] name = "tokio-macros" -version = "1.8.0" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9724f9a975fb987ef7a3cd9be0350edcbe130698af5b8f7a631e23d42d052484" +checksum = "61a573bdc87985e9d6ddeed1b3d864e8a302c847e40d647746df2f1de209d1ce" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.12", ] [[package]] @@ -14358,19 +14542,19 @@ dependencies = [ [[package]] name = "toml_datetime" -version = "0.5.1" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4553f467ac8e3d374bc9a177a26801e5d0f9b211aa1673fb137a403afd1c9cf5" +checksum = "3ab8ed2edee10b50132aed5f331333428b011c99402b5a534154ed15746f9622" [[package]] name = "toml_edit" -version = "0.18.1" +version = "0.19.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56c59d8dd7d0dcbc6428bf7aa2f0e823e26e43b3c9aca15bbc9475d23e5fa12b" +checksum = "239410c8609e8125456927e6707163a3b1fdb40561e4b803bc041f466ccfdc13" dependencies = [ "indexmap", - "nom8", "toml_datetime", + "winnow", ] [[package]] @@ -14435,7 +14619,7 @@ checksum = "4017f8f45139870ca7e672686113917c71c7a6e02d4924eda67186083c03081a" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -14460,8 +14644,8 @@ dependencies = [ [[package]] name = "tracing-gum" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "polkadot-node-jaeger", "polkadot-primitives", @@ -14471,14 +14655,14 @@ dependencies = [ [[package]] name = "tracing-gum-proc-macro" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "expander 0.0.6", "proc-macro-crate", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -14527,12 +14711,12 @@ dependencies = [ [[package]] name = "trie-db" -version = "0.24.0" +version = "0.27.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "004e1e8f92535694b4cb1444dc5a8073ecf0815e3357f729638b9f8fc4062908" +checksum = "767abe6ffed88a1889671a102c2861ae742726f52e0a5a425b92c9fbfa7e9c85" dependencies = [ - "hash-db", - "hashbrown 0.12.3", + "hash-db 0.16.0", + "hashbrown 0.13.2", "log", "rustc-hex", "smallvec", @@ -14544,16 +14728,16 @@ version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b779f7c1c8fe9276365d9d5be5c4b5adeacf545117bb3f64c974305789c5c0b" dependencies = [ - "hash-db", + "hash-db 0.15.2", ] [[package]] name = "trie-root" -version = "0.17.0" +version = "0.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a36c5ca3911ed3c9a5416ee6c679042064b93fc637ded67e25f92e68d783891" +checksum = "d4ed310ef5ab98f5fa467900ed906cb9232dd5376597e00fd4cba2a449d06c0b" dependencies = [ - "hash-db", + "hash-db 0.16.0", ] [[package]] @@ -14562,7 +14746,7 @@ version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a1631b201eb031b563d2e85ca18ec8092508e262a3196ce9bd10a67ec87b9f5c" dependencies = [ - "hash-db", + "hash-db 0.15.2", "rlp", ] @@ -14621,8 +14805,9 @@ checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642" [[package]] name = "try-runtime-cli" version = "0.10.0-dev" -source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.38#3323a76917febd471a10f46a9374f366d995326a" +source = "git+https://github.com/purestake/substrate?branch=moonbeam-polkadot-v0.9.40#e7de77328d2b05ea4ed524f7fde7d4a9dbed7a62" dependencies = [ + "async-trait", "clap", "frame-remote-externalities", "frame-try-runtime", @@ -14635,14 +14820,19 @@ dependencies = [ "serde", "serde_json", "sp-api", + "sp-consensus-aura", + "sp-consensus-babe", "sp-core", "sp-debug-derive", "sp-externalities", + "sp-inherents", "sp-io", "sp-keystore", "sp-rpc", "sp-runtime", "sp-state-machine", + "sp-timestamp", + "sp-transaction-storage-proof", "sp-version", "sp-weights", "substrate-rpc-client", @@ -14678,7 +14868,7 @@ checksum = "4712ee30d123ec7ae26d1e1b218395a16c87cdbaf4b3925d170d684af62ea5e8" dependencies = [ "async-trait", "base64", - "futures 0.3.25", + "futures 0.3.28", "log", "md-5", "rand 0.8.5", @@ -14812,6 +15002,12 @@ dependencies = [ "percent-encoding", ] +[[package]] +name = "utf8parse" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" + [[package]] name = "uuid" version = "1.3.0" @@ -14929,7 +15125,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn", + "syn 1.0.109", "wasm-bindgen-shared", ] @@ -14963,7 +15159,7 @@ checksum = "07bc0c051dc5f23e307b13285f9d75df86bfdf816c5721e573dec1f9b8aa193c" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -15030,7 +15226,7 @@ version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "be0ecb0db480561e9a7642b5d3e4187c128914e58aa84330b9493e3eb68c5e7f" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "js-sys", "parking_lot 0.11.2", "pin-utils", @@ -15070,22 +15266,24 @@ dependencies = [ "memory_units", "num-rational", "num-traits", + "region", ] [[package]] name = "wasmparser" -version = "0.89.1" +version = "0.100.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab5d3e08b13876f96dd55608d03cd4883a0545884932d5adf11925876c96daef" +checksum = "64b20236ab624147dfbb62cf12a19aaf66af0e41b8398838b66e997d07d269d4" dependencies = [ "indexmap", + "url", ] [[package]] name = "wasmtime" -version = "1.0.2" +version = "6.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ad5af6ba38311282f2a21670d96e78266e8c8e2f38cbcd52c254df6ccbc7731" +checksum = "f6e89f9819523447330ffd70367ef4a18d8c832e24e8150fe054d1d912841632" dependencies = [ "anyhow", "bincode", @@ -15106,23 +15304,23 @@ dependencies = [ "wasmtime-environ", "wasmtime-jit", "wasmtime-runtime", - "windows-sys 0.36.1", + "windows-sys 0.42.0", ] [[package]] name = "wasmtime-asm-macros" -version = "1.0.2" +version = "6.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45de63ddfc8b9223d1adc8f7b2ee5f35d1f6d112833934ad7ea66e4f4339e597" +checksum = "9bd3a5e46c198032da934469f3a6e48649d1f9142438e4fd4617b68a35644b8a" dependencies = [ "cfg-if", ] [[package]] name = "wasmtime-cache" -version = "1.0.2" +version = "6.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bcd849399d17d2270141cfe47fa0d91ee52d5f8ea9b98cf7ddde0d53e5f79882" +checksum = "b389ae9b678b9c3851091a4804f4182d688d27aff7abc9aa37fa7be37d8ecffa" dependencies = [ "anyhow", "base64", @@ -15130,19 +15328,19 @@ dependencies = [ "directories-next", "file-per-thread-logger", "log", - "rustix 0.35.13", + "rustix 0.36.7", "serde", - "sha2 0.9.9", + "sha2 0.10.6", "toml", - "windows-sys 0.36.1", + "windows-sys 0.42.0", "zstd", ] [[package]] name = "wasmtime-cranelift" -version = "1.0.2" +version = "6.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bd91339b742ff20bfed4532a27b73c86b5bcbfedd6bea2dcdf2d64471e1b5c6" +checksum = "59b2c92a08c0db6efffd88fdc97d7aa9c7c63b03edb0971dbca745469f820e8c" dependencies = [ "anyhow", "cranelift-codegen", @@ -15161,9 +15359,9 @@ dependencies = [ [[package]] name = "wasmtime-environ" -version = "1.0.2" +version = "6.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebb881c61f4f627b5d45c54e629724974f8a8890d455bcbe634330cc27309644" +checksum = "9a6db9fc52985ba06ca601f2ff0ff1f526c5d724c7ac267b47326304b0c97883" dependencies = [ "anyhow", "cranelift-entity", @@ -15180,9 +15378,9 @@ dependencies = [ [[package]] name = "wasmtime-jit" -version = "1.0.2" +version = "6.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1985c628011fe26adf5e23a5301bdc79b245e0e338f14bb58b39e4e25e4d8681" +checksum = "b77e3a52cd84d0f7f18554afa8060cfe564ccac61e3b0802d3fd4084772fa5f6" dependencies = [ "addr2line 0.17.0", "anyhow", @@ -15193,32 +15391,42 @@ dependencies = [ "log", "object 0.29.0", "rustc-demangle", - "rustix 0.35.13", "serde", "target-lexicon", - "thiserror", "wasmtime-environ", "wasmtime-jit-debug", + "wasmtime-jit-icache-coherence", "wasmtime-runtime", - "windows-sys 0.36.1", + "windows-sys 0.42.0", ] [[package]] name = "wasmtime-jit-debug" -version = "1.0.2" +version = "6.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f671b588486f5ccec8c5a3dba6b4c07eac2e66ab8c60e6f4e53717c77f709731" +checksum = "d0245e8a9347017c7185a72e215218a802ff561545c242953c11ba00fccc930f" dependencies = [ "object 0.29.0", "once_cell", - "rustix 0.35.13", + "rustix 0.36.7", +] + +[[package]] +name = "wasmtime-jit-icache-coherence" +version = "6.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67d412e9340ab1c83867051d8d1d7c90aa8c9afc91da086088068e2734e25064" +dependencies = [ + "cfg-if", + "libc", + "windows-sys 0.42.0", ] [[package]] name = "wasmtime-runtime" -version = "1.0.2" +version = "6.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee8f92ad4b61736339c29361da85769ebc200f184361959d1792832e592a1afd" +checksum = "d594e791b5fdd4dbaf8cf7ae62f2e4ff85018ce90f483ca6f42947688e48827d" dependencies = [ "anyhow", "cc", @@ -15228,22 +15436,21 @@ dependencies = [ "log", "mach", "memfd", - "memoffset 0.6.5", + "memoffset", "paste", "rand 0.8.5", - "rustix 0.35.13", - "thiserror", + "rustix 0.36.7", "wasmtime-asm-macros", "wasmtime-environ", "wasmtime-jit-debug", - "windows-sys 0.36.1", + "windows-sys 0.42.0", ] [[package]] name = "wasmtime-types" -version = "1.0.2" +version = "6.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d23d61cb4c46e837b431196dd06abb11731541021916d03476a178b54dc07aeb" +checksum = "a6688d6f96d4dbc1f89fab626c56c1778936d122b5f4ae7a57c2eb42b8d982e2" dependencies = [ "cranelift-entity", "serde", @@ -15513,8 +15720,8 @@ dependencies = [ [[package]] name = "westend-runtime" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "bitvec", "frame-benchmarking", @@ -15558,6 +15765,7 @@ dependencies = [ "pallet-society", "pallet-staking", "pallet-staking-reward-curve", + "pallet-staking-runtime-api", "pallet-state-trie-migration", "pallet-sudo", "pallet-timestamp", @@ -15580,9 +15788,9 @@ dependencies = [ "smallvec", "sp-api", "sp-authority-discovery", - "sp-beefy", "sp-block-builder", "sp-consensus-babe", + "sp-consensus-beefy", "sp-core", "sp-inherents", "sp-io", @@ -15604,8 +15812,8 @@ dependencies = [ [[package]] name = "westend-runtime-constants" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "frame-support", "polkadot-primitives", @@ -15627,6 +15835,16 @@ dependencies = [ "once_cell", ] +[[package]] +name = "wide" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b689b6c49d6549434bf944e6b0f39238cf63693cb7a147e9d887507fffa3b223" +dependencies = [ + "bytemuck", + "safe_arch", +] + [[package]] name = "widestring" version = "0.5.1" @@ -15697,19 +15915,43 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" dependencies = [ "windows_aarch64_gnullvm", - "windows_aarch64_msvc 0.42.0", - "windows_i686_gnu 0.42.0", - "windows_i686_msvc 0.42.0", - "windows_x86_64_gnu 0.42.0", + "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", - "windows_x86_64_msvc 0.42.0", + "windows_x86_64_msvc 0.42.2", +] + +[[package]] +name = "windows-sys" +version = "0.45.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" +dependencies = [ + "windows-targets", +] + +[[package]] +name = "windows-targets" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" +dependencies = [ + "windows_aarch64_gnullvm", + "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", + "windows_x86_64_msvc 0.42.2", ] [[package]] name = "windows_aarch64_gnullvm" -version = "0.42.0" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41d2aa71f6f0cbe00ae5167d90ef3cfe66527d6f613ca78ac8024c3ccab9a19e" +checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" [[package]] name = "windows_aarch64_msvc" @@ -15725,9 +15967,9 @@ checksum = "9bb8c3fd39ade2d67e9874ac4f3db21f0d710bee00fe7cab16949ec184eeaa47" [[package]] name = "windows_aarch64_msvc" -version = "0.42.0" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd0f252f5a35cac83d6311b2e795981f5ee6e67eb1f9a7f64eb4500fbc4dcdb4" +checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" [[package]] name = "windows_i686_gnu" @@ -15743,9 +15985,9 @@ checksum = "180e6ccf01daf4c426b846dfc66db1fc518f074baa793aa7d9b9aaeffad6a3b6" [[package]] name = "windows_i686_gnu" -version = "0.42.0" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbeae19f6716841636c28d695375df17562ca208b2b7d0dc47635a50ae6c5de7" +checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" [[package]] name = "windows_i686_msvc" @@ -15761,9 +16003,9 @@ checksum = "e2e7917148b2812d1eeafaeb22a97e4813dfa60a3f8f78ebe204bcc88f12f024" [[package]] name = "windows_i686_msvc" -version = "0.42.0" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84c12f65daa39dd2babe6e442988fc329d6243fdce47d7d2d155b8d874862246" +checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" [[package]] name = "windows_x86_64_gnu" @@ -15779,15 +16021,15 @@ checksum = "4dcd171b8776c41b97521e5da127a2d86ad280114807d0b2ab1e462bc764d9e1" [[package]] name = "windows_x86_64_gnu" -version = "0.42.0" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf7b1b21b5362cbc318f686150e5bcea75ecedc74dd157d874d754a2ca44b0ed" +checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" [[package]] name = "windows_x86_64_gnullvm" -version = "0.42.0" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09d525d2ba30eeb3297665bd434a54297e4170c7f1a44cad4ef58095b4cd2028" +checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" [[package]] name = "windows_x86_64_msvc" @@ -15803,9 +16045,18 @@ checksum = "c811ca4a8c853ef420abd8592ba53ddbbac90410fab6903b3e79972a631f7680" [[package]] name = "windows_x86_64_msvc" -version = "0.42.0" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" + +[[package]] +name = "winnow" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f40009d85759725a34da6d89a94e63d7bdc50a862acf0dbc7c8e488f1edcb6f5" +checksum = "ae8970b36c66498d8ff1d66685dc86b91b29db0c7739899012f63a63814b4b28" +dependencies = [ + "memchr", +] [[package]] name = "winreg" @@ -15886,24 +16137,24 @@ dependencies = [ [[package]] name = "xcm" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ + "bounded-collections", "derivative", "impl-trait-for-tuples", "log", "parity-scale-codec", "scale-info", "serde", - "sp-core", "sp-weights", "xcm-procedural", ] [[package]] name = "xcm-builder" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "frame-support", "frame-system", @@ -15923,8 +16174,8 @@ dependencies = [ [[package]] name = "xcm-executor" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "environmental", "frame-benchmarking", @@ -15969,19 +16220,19 @@ dependencies = [ [[package]] name = "xcm-procedural" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "Inflector", "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] name = "xcm-simulator" -version = "0.9.38" -source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.38#41fe2d1785f75150e57ca5dbf85e097f39f29401" +version = "0.9.40" +source = "git+https://github.com/purestake/polkadot?branch=moonbeam-polkadot-v0.9.40#98ab8d6a996f90066bc38ce39737fd3bba75a6d8" dependencies = [ "frame-support", "parity-scale-codec", @@ -16001,7 +16252,7 @@ version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5d9ba232399af1783a58d8eb26f6b5006fbefe2dc9ef36bd283324792d03ea5" dependencies = [ - "futures 0.3.25", + "futures 0.3.28", "log", "nohash-hasher", "parking_lot 0.12.1", @@ -16035,7 +16286,7 @@ checksum = "3f8f187641dad4f680d25c4bfc4225b418165984179f26ca76ec4fb6441d3a17" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", "synstructure", ] diff --git a/Cargo.toml b/Cargo.toml index 1fce7af271..1ab59a00f4 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -102,7 +102,7 @@ precompile-utils = { path = "precompiles/utils", default-features = false } session-keys-primitives = { path = "primitives/session-keys", default-features = false } xcm-primitives = { path = "primitives/xcm", default-features = false } -pallet-crowdloan-rewards = { git = "https://github.com/purestake/crowdloan-rewards", branch = "moonbeam-polkadot-v0.9.38", default-features = false } +pallet-crowdloan-rewards = { git = "https://github.com/purestake/crowdloan-rewards", branch = "moonbeam-polkadot-v0.9.40", default-features = false } # Moonbeam (client) moonbeam-cli = { path = "node/cli", default-features = false } @@ -126,177 +126,192 @@ moonbeam-runtime = { path = "runtime/moonbeam" } moonriver-runtime = { path = "runtime/moonriver" } # Substrate (wasm) -frame-benchmarking = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -frame-executive = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -frame-support = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -frame-system = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -frame-system-benchmarking = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -frame-system-rpc-runtime-api = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -frame-try-runtime = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-assets = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-balances = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-collective = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-conviction-voting = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-democracy = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-identity = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-multisig = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-preimage = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-proxy = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-referenda = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-root-testing = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-scheduler = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-society = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-staking = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-sudo = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-timestamp = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-transaction-payment = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-treasury = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-utility = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-whitelist = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -parity-scale-codec = { version = "3.2.2", default-features = false, features = [ "derive" ] } -scale-info = { version = "2.0", default-features = false, features = [ "derive" ] } -sp-api = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -sp-application-crypto = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -sp-block-builder = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -sp-consensus-babe = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -sp-consensus-vrf = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -sp-core = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -sp-debug-derive = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -sp-externalities = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -sp-inherents = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -sp-io = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -sp-keystore = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -sp-offchain = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -sp-runtime = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -sp-runtime-interface = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -sp-session = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -sp-std = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -sp-transaction-pool = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -sp-version = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38", default-features = false } +frame-benchmarking = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +frame-executive = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +frame-support = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +frame-system = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +frame-system-benchmarking = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +frame-system-rpc-runtime-api = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +frame-try-runtime = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-assets = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-balances = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-collective = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-conviction-voting = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-democracy = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-identity = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-multisig = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-preimage = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-proxy = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-referenda = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-root-testing = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-scheduler = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-society = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-staking = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-sudo = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-timestamp = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-transaction-payment = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-treasury = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-utility = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-whitelist = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +parity-scale-codec = { version = "3.2.2", default-features = false, features = [ + "derive", +] } +scale-info = { version = "2.0", default-features = false, features = [ + "derive", +] } +sp-api = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +sp-application-crypto = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +sp-block-builder = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +sp-consensus-babe = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +sp-consensus-vrf = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +sp-core = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +sp-debug-derive = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +sp-externalities = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +sp-inherents = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +sp-io = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +sp-keystore = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +sp-offchain = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +sp-runtime = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +sp-runtime-interface = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +sp-session = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +sp-std = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +sp-transaction-pool = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +sp-version = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40", default-features = false } substrate-fixed = { git = "https://github.com/encointer/substrate-fixed", default-features = false } # Substrate (client) -frame-benchmarking-cli = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -pallet-transaction-payment-rpc = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sc-basic-authorship = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sc-block-builder = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sc-chain-spec = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sc-cli = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sc-client-api = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sc-client-db = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sc-consensus = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sc-consensus-manual-seal = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sc-executor = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sc-finality-grandpa = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sc-informant = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sc-network = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sc-network-common = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sc-rpc = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sc-rpc-api = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sc-service = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sc-sysinfo = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sc-telemetry = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sc-tracing = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sc-transaction-pool = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sc-transaction-pool-api = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sc-utils = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sp-blockchain = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sp-consensus = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sp-storage = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sp-timestamp = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sp-trie = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -sp-wasm-interface = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -substrate-build-script-utils = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -substrate-frame-rpc-system = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -substrate-prometheus-endpoint = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -substrate-test-client = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -substrate-test-runtime = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -substrate-test-runtime-client = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -substrate-wasm-builder = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } -try-runtime-cli = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.38" } +frame-benchmarking-cli = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +pallet-transaction-payment-rpc = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sc-basic-authorship = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sc-block-builder = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sc-chain-spec = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sc-cli = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sc-client-api = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sc-client-db = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sc-consensus = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sc-consensus-grandpa = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sc-consensus-manual-seal = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sc-executor = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sc-informant = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sc-network = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sc-network-common = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sc-network-sync = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sc-rpc = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sc-rpc-api = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sc-service = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sc-sysinfo = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sc-telemetry = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sc-tracing = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sc-transaction-pool = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sc-transaction-pool-api = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sc-utils = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sp-blockchain = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sp-consensus = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sp-storage = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sp-timestamp = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sp-trie = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +sp-wasm-interface = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +substrate-build-script-utils = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +substrate-frame-rpc-system = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +substrate-prometheus-endpoint = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +substrate-test-client = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +substrate-test-runtime = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +substrate-test-runtime-client = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +substrate-wasm-builder = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } +try-runtime-cli = { git = "https://github.com/purestake/substrate", branch = "moonbeam-polkadot-v0.9.40" } # Frontier (wasm) -ethereum = { version = "0.14.0", default-features = false, features = [ "with-codec" ] } +ethereum = { version = "0.14.0", default-features = false, features = [ + "with-codec", +] } ethereum-types = { version = "0.14", default-features = false } -evm = { version = "0.37.0", default-features = false, features = [ "with-codec" ] } +evm = { version = "0.37.0", default-features = false, features = [ + "with-codec", +] } evm-gasometer = { version = "0.37.0", default-features = false } evm-runtime = { version = "0.37.0", default-features = false } -fp-ethereum = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -fp-evm = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -fp-rpc = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -fp-self-contained = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-base-fee = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-ethereum = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.38", default-features = false, features = [ "forbid-evm-reentrancy" ] } -pallet-evm = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.38", default-features = false, features = [ "forbid-evm-reentrancy" ] } -pallet-evm-precompile-blake2 = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-evm-precompile-bn128 = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-evm-precompile-dispatch = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-evm-precompile-modexp = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-evm-precompile-sha3fips = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-evm-precompile-simple = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.38", default-features = false } +fp-ethereum = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +fp-evm = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +fp-rpc = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +fp-self-contained = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-base-fee = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-ethereum = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.40", default-features = false, features = [ + "forbid-evm-reentrancy", +] } +pallet-evm = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.40", default-features = false, features = [ + "forbid-evm-reentrancy", +] } +pallet-evm-precompile-blake2 = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-evm-precompile-bn128 = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-evm-precompile-dispatch = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-evm-precompile-modexp = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-evm-precompile-sha3fips = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-evm-precompile-simple = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.40", default-features = false } # Frontier (client) -fc-consensus = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.38" } -fc-db = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.38" } -fc-mapping-sync = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.38" } -fc-rpc = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.38", features = [ "rpc-binary-search-estimate" ] } -fc-rpc-core = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.38" } -fc-storage = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.38" } -fp-consensus = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.38" } -fp-storage = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.38" } +fc-consensus = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.40" } +fc-db = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.40" } +fc-mapping-sync = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.40" } +fc-rpc = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.40", features = [ + "rpc-binary-search-estimate", +] } +fc-rpc-core = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.40" } +fc-storage = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.40" } +fp-consensus = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.40" } +fp-storage = { git = "https://github.com/purestake/frontier", branch = "moonbeam-polkadot-v0.9.40" } # Cumulus / Nimbus (wasm) -cumulus-pallet-dmp-queue = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -cumulus-pallet-parachain-system = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -cumulus-pallet-xcm = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -cumulus-pallet-xcmp-queue = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -cumulus-primitives-core = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -cumulus-primitives-parachain-inherent = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -cumulus-primitives-timestamp = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -cumulus-primitives-utility = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -cumulus-test-relay-sproof-builder = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -nimbus-primitives = { git = "https://github.com/purestake/nimbus", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-author-inherent = { git = "https://github.com/purestake/nimbus", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-author-slot-filter = { git = "https://github.com/purestake/nimbus", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -parachain-info = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.38", default-features = false } +cumulus-pallet-dmp-queue = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +cumulus-pallet-parachain-system = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +cumulus-pallet-xcm = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +cumulus-pallet-xcmp-queue = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +cumulus-primitives-core = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +cumulus-primitives-parachain-inherent = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +cumulus-primitives-timestamp = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +cumulus-primitives-utility = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +cumulus-test-relay-sproof-builder = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +nimbus-primitives = { git = "https://github.com/purestake/nimbus", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-author-inherent = { git = "https://github.com/purestake/nimbus", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-author-slot-filter = { git = "https://github.com/purestake/nimbus", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +parachain-info = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.40", default-features = false } # Cumulus / Nimbus (client) -cumulus-client-cli = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.38" } -cumulus-client-collator = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.38" } -cumulus-client-consensus-common = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.38" } -cumulus-client-consensus-relay-chain = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.38" } -cumulus-client-network = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.38" } -cumulus-client-service = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.38" } -cumulus-relay-chain-inprocess-interface = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.38" } -cumulus-relay-chain-interface = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.38" } -cumulus-relay-chain-minimal-node = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.38" } -cumulus-relay-chain-rpc-interface = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.38" } -nimbus-consensus = { git = "https://github.com/purestake/nimbus", branch = "moonbeam-polkadot-v0.9.38" } +cumulus-client-cli = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.40" } +cumulus-client-collator = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.40" } +cumulus-client-consensus-common = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.40" } +cumulus-client-consensus-relay-chain = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.40" } +cumulus-client-network = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.40" } +cumulus-client-service = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.40" } +cumulus-relay-chain-inprocess-interface = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.40" } +cumulus-relay-chain-interface = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.40" } +cumulus-relay-chain-minimal-node = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.40" } +cumulus-relay-chain-rpc-interface = { git = "https://github.com/purestake/cumulus", branch = "moonbeam-polkadot-v0.9.40" } +nimbus-consensus = { git = "https://github.com/purestake/nimbus", branch = "moonbeam-polkadot-v0.9.40" } # Polkadot / XCM (wasm) -orml-traits = { git = "https://github.com/purestake/open-runtime-module-library", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -orml-xcm-support = { git = "https://github.com/purestake/open-runtime-module-library", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -orml-xtokens = { git = "https://github.com/purestake/open-runtime-module-library", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-xcm = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -pallet-xcm-benchmarks = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -polkadot-core-primitives = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -polkadot-parachain = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -xcm = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -xcm-builder = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.38", default-features = false } -xcm-executor = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.38", default-features = false } +orml-traits = { git = "https://github.com/purestake/open-runtime-module-library", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +orml-xcm-support = { git = "https://github.com/purestake/open-runtime-module-library", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +orml-xtokens = { git = "https://github.com/purestake/open-runtime-module-library", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-xcm = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +pallet-xcm-benchmarks = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +polkadot-core-primitives = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +polkadot-parachain = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +xcm = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +xcm-builder = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.40", default-features = false } +xcm-executor = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.40", default-features = false } # Polkadot / XCM (client) -kusama-runtime = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.38" } -polkadot-cli = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.38" } -polkadot-primitives = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.38" } -polkadot-runtime = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.38" } -polkadot-runtime-common = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.38" } -polkadot-runtime-parachains = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.38" } -polkadot-service = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.38" } -rococo-runtime = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.38" } -westend-runtime = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.38" } -xcm-simulator = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.38" } +kusama-runtime = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.40" } +polkadot-cli = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.40" } +polkadot-primitives = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.40" } +polkadot-runtime = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.40" } +polkadot-runtime-common = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.40" } +polkadot-runtime-parachains = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.40" } +polkadot-service = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.40" } +rococo-runtime = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.40" } +westend-runtime = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.40" } +xcm-simulator = { git = "https://github.com/purestake/polkadot", branch = "moonbeam-polkadot-v0.9.40" } # Other (wasm) affix = "0.1.2" @@ -325,11 +340,13 @@ strum_macros = "0.24" ansi_term = "0.12.1" assert_cmd = "2.0.10" async-io = "1.3" -bip32 = { git = "https://github.com/purestake/crates", branch = "bip32-v0.4.0-fix", default-features = false, features = [ "bip39" ] } +bip32 = { git = "https://github.com/purestake/crates", branch = "bip32-v0.4.0-fix", default-features = false, features = [ + "bip39", +] } clap = { version = "4.0.9", features = [ "derive" ] } exit-future = "0.2" flume = "0.10.9" -futures = { version = "0.3.1" } +futures = { version = "0.3.21" } jsonrpsee = { version = "0.16.2", default-features = false } maplit = "1.0.2" nix = "0.23" @@ -426,7 +443,7 @@ lto = true [profile.testnet] inherits = "release" -debug = 1 # debug symbols are useful for profilers +debug = 1 # debug symbols are useful for profilers debug-assertions = true overflow-checks = true diff --git a/benchmarking/frame-weight-template.hbs b/benchmarking/frame-weight-template.hbs index b8623b12ee..3ccc5642a8 100644 --- a/benchmarking/frame-weight-template.hbs +++ b/benchmarking/frame-weight-template.hbs @@ -14,30 +14,30 @@ // You should have received a copy of the GNU General Public License // along with Moonbeam. If not, see . +{{header}} //! Autogenerated weights for {{pallet}} //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION {{version}} -//! DATE: {{date}}, STEPS: `{{cmd.steps}}`, REPEAT: {{cmd.repeat}}, LOW RANGE: `{{cmd.lowest_range_values}}`, HIGH RANGE: `{{cmd.highest_range_values}}` +//! DATE: {{date}}, STEPS: `{{cmd.steps}}`, REPEAT: `{{cmd.repeat}}`, LOW RANGE: `{{cmd.lowest_range_values}}`, HIGH RANGE: `{{cmd.highest_range_values}}` +//! WORST CASE MAP SIZE: `{{cmd.worst_case_map_values}}` +//! HOSTNAME: `{{hostname}}`, CPU: `{{cpuname}}` //! EXECUTION: {{cmd.execution}}, WASM-EXECUTION: {{cmd.wasm_execution}}, CHAIN: {{cmd.chain}}, DB CACHE: {{cmd.db_cache}} // Executed Command: -{{#each args as |arg|~}} +{{#each args as |arg|}} // {{arg}} {{/each}} +#![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] -use frame_support::{ - traits::Get, - weights::{constants::RocksDbWeight, Weight}, -}; +use frame_support::{traits::Get, weights::{Weight, constants::RocksDbWeight}}; use sp_std::marker::PhantomData; /// Weight functions needed for {{pallet}}. pub trait WeightInfo { {{#each benchmarks as |benchmark|}} - #[rustfmt::skip] fn {{benchmark.name~}} ( {{~#each benchmark.components as |c| ~}} @@ -48,33 +48,46 @@ pub trait WeightInfo { /// Weights for {{pallet}} using the Substrate node and recommended hardware. pub struct SubstrateWeight(PhantomData); +{{#if (eq pallet "frame_system")}} +impl WeightInfo for SubstrateWeight { +{{else}} impl WeightInfo for SubstrateWeight { +{{/if}} {{#each benchmarks as |benchmark|}} {{#each benchmark.comments as |comment|}} - // {{comment}} + /// {{comment}} + {{/each}} + {{#each benchmark.component_ranges as |range|}} + /// The range of component `{{range.name}}` is `[{{range.min}}, {{range.max}}]`. {{/each}} - #[rustfmt::skip] fn {{benchmark.name~}} ( {{~#each benchmark.components as |c| ~}} {{~#if (not c.is_used)}}_{{/if}}{{c.name}}: u32, {{/each~}} ) -> Weight { - Weight::from_ref_time({{underscore benchmark.base_weight}} as u64) + // Proof Size summary in bytes: + // Measured: `{{benchmark.base_recorded_proof_size}}{{#each benchmark.component_recorded_proof_size as |cp|}} + {{cp.name}} * ({{cp.slope}} ±{{underscore cp.error}}){{/each}}` + // Estimated: `{{benchmark.base_calculated_proof_size}}{{#each benchmark.component_calculated_proof_size as |cp|}} + {{cp.name}} * ({{cp.slope}} ±{{underscore cp.error}}){{/each}}` + // Minimum execution time: {{underscore benchmark.min_execution_time}}_000 picoseconds. + Weight::from_parts({{underscore benchmark.base_weight}}, {{benchmark.base_calculated_proof_size}}) {{#each benchmark.component_weight as |cw|}} // Standard Error: {{underscore cw.error}} - .saturating_add(Weight::from_ref_time({{underscore cw.slope}} as u64).saturating_mul({{cw.name}} as u64)) + .saturating_add(Weight::from_parts({{underscore cw.slope}}, 0).saturating_mul({{cw.name}}.into())) {{/each}} {{#if (ne benchmark.base_reads "0")}} - .saturating_add(T::DbWeight::get().reads({{benchmark.base_reads}} as u64)) + .saturating_add(T::DbWeight::get().reads({{benchmark.base_reads}}_u64)) {{/if}} {{#each benchmark.component_reads as |cr|}} - .saturating_add(T::DbWeight::get().reads(({{cr.slope}} as u64).saturating_mul({{cr.name}} as u64))) + .saturating_add(T::DbWeight::get().reads(({{cr.slope}}_u64).saturating_mul({{cr.name}}.into()))) {{/each}} {{#if (ne benchmark.base_writes "0")}} - .saturating_add(T::DbWeight::get().writes({{benchmark.base_writes}} as u64)) + .saturating_add(T::DbWeight::get().writes({{benchmark.base_writes}}_u64)) {{/if}} {{#each benchmark.component_writes as |cw|}} - .saturating_add(T::DbWeight::get().writes(({{cw.slope}} as u64).saturating_mul({{cw.name}} as u64))) + .saturating_add(T::DbWeight::get().writes(({{cw.slope}}_u64).saturating_mul({{cw.name}}.into()))) + {{/each}} + {{#each benchmark.component_calculated_proof_size as |cp|}} + .saturating_add(Weight::from_parts(0, {{cp.slope}}).saturating_mul({{cp.name}}.into())) {{/each}} } {{/each}} @@ -84,31 +97,40 @@ impl WeightInfo for SubstrateWeight { impl WeightInfo for () { {{#each benchmarks as |benchmark|}} {{#each benchmark.comments as |comment|}} - // {{comment}} + /// {{comment}} + {{/each}} + {{#each benchmark.component_ranges as |range|}} + /// The range of component `{{range.name}}` is `[{{range.min}}, {{range.max}}]`. {{/each}} - #[rustfmt::skip] fn {{benchmark.name~}} ( {{~#each benchmark.components as |c| ~}} {{~#if (not c.is_used)}}_{{/if}}{{c.name}}: u32, {{/each~}} ) -> Weight { - Weight::from_ref_time({{underscore benchmark.base_weight}} as u64) + // Proof Size summary in bytes: + // Measured: `{{benchmark.base_recorded_proof_size}}{{#each benchmark.component_recorded_proof_size as |cp|}} + {{cp.name}} * ({{cp.slope}} ±{{underscore cp.error}}){{/each}}` + // Estimated: `{{benchmark.base_calculated_proof_size}}{{#each benchmark.component_calculated_proof_size as |cp|}} + {{cp.name}} * ({{cp.slope}} ±{{underscore cp.error}}){{/each}}` + // Minimum execution time: {{underscore benchmark.min_execution_time}}_000 picoseconds. + Weight::from_parts({{underscore benchmark.base_weight}}, {{benchmark.base_calculated_proof_size}}) {{#each benchmark.component_weight as |cw|}} // Standard Error: {{underscore cw.error}} - .saturating_add(Weight::from_ref_time({{underscore cw.slope}} as u64).saturating_mul({{cw.name}} as u64)) + .saturating_add(Weight::from_parts({{underscore cw.slope}}, 0).saturating_mul({{cw.name}}.into())) {{/each}} {{#if (ne benchmark.base_reads "0")}} - .saturating_add(RocksDbWeight::get().reads({{benchmark.base_reads}} as u64)) + .saturating_add(RocksDbWeight::get().reads({{benchmark.base_reads}}_u64)) {{/if}} {{#each benchmark.component_reads as |cr|}} - .saturating_add(RocksDbWeight::get().reads(({{cr.slope}} as u64).saturating_mul({{cr.name}} as u64))) + .saturating_add(RocksDbWeight::get().reads(({{cr.slope}}_u64).saturating_mul({{cr.name}}.into()))) {{/each}} {{#if (ne benchmark.base_writes "0")}} - .saturating_add(RocksDbWeight::get().writes({{benchmark.base_writes}} as u64)) + .saturating_add(RocksDbWeight::get().writes({{benchmark.base_writes}}_u64)) {{/if}} {{#each benchmark.component_writes as |cw|}} - .saturating_add(RocksDbWeight::get().writes(({{cw.slope}} as u64).saturating_mul({{cw.name}} as u64))) + .saturating_add(RocksDbWeight::get().writes(({{cw.slope}}_u64).saturating_mul({{cw.name}}.into()))) + {{/each}} + {{#each benchmark.component_calculated_proof_size as |cp|}} + .saturating_add(Weight::from_parts(0, {{cp.slope}}).saturating_mul({{cp.name}}.into())) {{/each}} } {{/each}} -} +} \ No newline at end of file diff --git a/client/rpc/debug/src/lib.rs b/client/rpc/debug/src/lib.rs index ca836ebe86..9e3a70a6b2 100644 --- a/client/rpc/debug/src/lib.rs +++ b/client/rpc/debug/src/lib.rs @@ -13,7 +13,7 @@ // You should have received a copy of the GNU General Public License // along with Moonbeam. If not, see . -use futures::{SinkExt, StreamExt}; +use futures::StreamExt; use jsonrpsee::core::{async_trait, RpcResult}; pub use moonbeam_rpc_core_debug::{DebugServer, TraceParams}; @@ -71,13 +71,12 @@ impl DebugServer for Debug { transaction_hash: H256, params: Option, ) -> RpcResult { - let mut requester = self.requester.clone(); + let requester = self.requester.clone(); let (tx, rx) = oneshot::channel(); // Send a message from the rpc handler to the service level task. requester - .send(((RequesterInput::Transaction(transaction_hash), params), tx)) - .await + .unbounded_send(((RequesterInput::Transaction(transaction_hash), params), tx)) .map_err(|err| { internal_err(format!( "failed to send request to debug service : {:?}", @@ -99,13 +98,12 @@ impl DebugServer for Debug { id: RequestBlockId, params: Option, ) -> RpcResult> { - let mut requester = self.requester.clone(); + let requester = self.requester.clone(); let (tx, rx) = oneshot::channel(); // Send a message from the rpc handler to the service level task. requester - .send(((RequesterInput::Block(id), params), tx)) - .await + .unbounded_send(((RequesterInput::Block(id), params), tx)) .map_err(|err| { internal_err(format!( "failed to send request to debug service : {:?}", @@ -329,7 +327,7 @@ where }; // Get parent blockid. - let parent_block_id = BlockId::Hash(*header.parent_hash()); + let parent_block_hash = *header.parent_hash(); let schema = fc_storage::onchain_storage_schema::(client.as_ref(), hash); @@ -363,11 +361,11 @@ where // Trace the block. let f = || -> RpcResult<_> { - api.initialize_block(&parent_block_id, &header) + api.initialize_block(parent_block_hash, &header) .map_err(|e| internal_err(format!("Runtime api access error: {:?}", e)))?; let _result = api - .trace_block(&parent_block_id, exts, eth_tx_hashes) + .trace_block(parent_block_hash, exts, eth_tx_hashes) .map_err(|e| { internal_err(format!( "Blockchain error when replaying block {} : {:?}", @@ -460,7 +458,7 @@ where _ => return Err(internal_err("Block header not found")), }; // Get parent blockid. - let parent_block_id = BlockId::Hash(*header.parent_hash()); + let parent_block_hash = *header.parent_hash(); // Get block extrinsics. let exts = blockchain @@ -470,7 +468,7 @@ where // Get DebugRuntimeApi version let trace_api_version = if let Ok(Some(api_version)) = - api.api_version::>(&parent_block_id) + api.api_version::>(parent_block_hash) { api_version } else { @@ -499,12 +497,12 @@ where let transactions = block.transactions; if let Some(transaction) = transactions.get(index) { let f = || -> RpcResult<_> { - api.initialize_block(&parent_block_id, &header) + api.initialize_block(parent_block_hash, &header) .map_err(|e| internal_err(format!("Runtime api access error: {:?}", e)))?; if trace_api_version >= 4 { let _result = api - .trace_transaction(&parent_block_id, exts, &transaction) + .trace_transaction(parent_block_hash, exts, &transaction) .map_err(|e| { internal_err(format!( "Runtime api access error (version {:?}): {:?}", @@ -518,7 +516,7 @@ where ethereum::TransactionV2::Legacy(tx) => { #[allow(deprecated)] - api.trace_transaction_before_version_4(&parent_block_id, exts, &tx) + api.trace_transaction_before_version_4(parent_block_hash, exts, &tx) .map_err(|e| { internal_err(format!( "Runtime api access error (legacy): {:?}", diff --git a/client/rpc/trace/src/lib.rs b/client/rpc/trace/src/lib.rs index e0f80d08e0..651d4f08f7 100644 --- a/client/rpc/trace/src/lib.rs +++ b/client/rpc/trace/src/lib.rs @@ -24,7 +24,7 @@ //! - For each traced block an async task responsible to wait for a permit, spawn a blocking //! task and waiting for the result, then send it to the main `CacheTask`. -use futures::{select, stream::FuturesUnordered, FutureExt, SinkExt, StreamExt}; +use futures::{select, stream::FuturesUnordered, FutureExt, StreamExt}; use std::{collections::BTreeMap, future::Future, marker::PhantomData, sync::Arc, time::Duration}; use tokio::{ sync::{mpsc, oneshot, Semaphore}, @@ -34,7 +34,7 @@ use tracing::{instrument, Instrument}; use sc_client_api::backend::{Backend, StateBackend, StorageProvider}; use sc_utils::mpsc::TracingUnboundedSender; -use sp_api::{ApiExt, BlockId, Core, HeaderT, ProvideRuntimeApi}; +use sp_api::{ApiExt, Core, HeaderT, ProvideRuntimeApi}; use sp_block_builder::BlockBuilder; use sp_blockchain::{ Backend as BlockchainBackend, Error as BlockChainError, HeaderBackend, HeaderMetadata, @@ -282,14 +282,13 @@ impl CacheRequester { #[instrument(skip(self))] pub async fn start_batch(&self, blocks: Vec) -> Result { let (response_tx, response_rx) = oneshot::channel(); - let mut sender = self.0.clone(); + let sender = self.0.clone(); sender - .send(CacheRequest::StartBatch { + .unbounded_send(CacheRequest::StartBatch { sender: response_tx, blocks, }) - .await .map_err(|e| { format!( "Failed to send request to the trace cache task. Error : {:?}", @@ -312,14 +311,13 @@ impl CacheRequester { #[instrument(skip(self))] pub async fn get_traces(&self, block: H256) -> TxsTraceRes { let (response_tx, response_rx) = oneshot::channel(); - let mut sender = self.0.clone(); + let sender = self.0.clone(); sender - .send(CacheRequest::GetTraces { + .unbounded_send(CacheRequest::GetTraces { sender: response_tx, block, }) - .await .map_err(|e| { format!( "Failed to send request to the trace cache task. Error : {:?}", @@ -342,13 +340,12 @@ impl CacheRequester { /// this batch and still in the waiting pool will be discarded. #[instrument(skip(self))] pub async fn stop_batch(&self, batch_id: CacheBatchId) { - let mut sender = self.0.clone(); + let sender = self.0.clone(); // Here we don't care if the request has been accepted or refused, the caller can't // do anything with it. let _ = sender - .send(CacheRequest::StopBatch { batch_id }) - .await + .unbounded_send(CacheRequest::StopBatch { batch_id }) .map_err(|e| { format!( "Failed to send request to the trace cache task. Error : {:?}", @@ -787,7 +784,7 @@ where .ok_or_else(|| format!("Subtrate block {} don't exist", substrate_hash))?; let height = *block_header.number(); - let substrate_parent_id = BlockId::::Hash(*block_header.parent_hash()); + let substrate_parent_hash = *block_header.parent_hash(); let schema = fc_storage::onchain_storage_schema::(client.as_ref(), substrate_hash); @@ -829,11 +826,11 @@ where // Trace the block. let f = || -> Result<_, String> { - api.initialize_block(&substrate_parent_id, &block_header) + api.initialize_block(substrate_parent_hash, &block_header) .map_err(|e| format!("Runtime api access error: {:?}", e))?; let _result = api - .trace_block(&substrate_parent_id, extrinsics, eth_tx_hashes) + .trace_block(substrate_parent_hash, extrinsics, eth_tx_hashes) .map_err(|e| format!("Blockchain error when replaying block {} : {:?}", height, e))? .map_err(|e| { tracing::warn!( diff --git a/client/rpc/txpool/src/lib.rs b/client/rpc/txpool/src/lib.rs index 65779c0254..25a1958e3d 100644 --- a/client/rpc/txpool/src/lib.rs +++ b/client/rpc/txpool/src/lib.rs @@ -24,7 +24,7 @@ use sc_transaction_pool::{ChainApi, Pool}; use sc_transaction_pool_api::InPoolTransaction; use serde::Serialize; use sha3::{Digest, Keccak256}; -use sp_api::{ApiExt, BlockId, ProvideRuntimeApi}; +use sp_api::{ApiExt, ProvideRuntimeApi}; use sp_blockchain::{Error as BlockChainError, HeaderBackend, HeaderMetadata}; use sp_runtime::traits::Block as BlockT; use std::collections::HashMap; @@ -73,20 +73,19 @@ where .collect(); // Use the runtime to match the (here) opaque extrinsics against ethereum transactions. - let best_block: BlockId = BlockId::Hash(self.client.info().best_hash); + let best_block = self.client.info().best_hash; let api = self.client.runtime_api(); - let api_version = if let Ok(Some(api_version)) = - api.api_version::>(&best_block) - { - api_version - } else { - return Err(internal_err( - "failed to retrieve Runtime Api version".to_string(), - )); - }; + let api_version = + if let Ok(Some(api_version)) = api.api_version::>(best_block) { + api_version + } else { + return Err(internal_err( + "failed to retrieve Runtime Api version".to_string(), + )); + }; let ethereum_txns: TxPoolResponse = if api_version == 1 { #[allow(deprecated)] - let res = api.extrinsic_filter_before_version_2(&best_block, txs_ready, txs_future) + let res = api.extrinsic_filter_before_version_2(best_block, txs_ready, txs_future) .map_err(|err| { internal_err(format!("fetch runtime extrinsic filter failed: {:?}", err)) })?; @@ -103,7 +102,7 @@ where .collect(), } } else { - api.extrinsic_filter(&best_block, txs_ready, txs_future) + api.extrinsic_filter(best_block, txs_ready, txs_future) .map_err(|err| { internal_err(format!("fetch runtime extrinsic filter failed: {:?}", err)) })? diff --git a/client/vrf/src/lib.rs b/client/vrf/src/lib.rs index 169e136604..e7e618d9cf 100644 --- a/client/vrf/src/lib.rs +++ b/client/vrf/src/lib.rs @@ -36,13 +36,12 @@ where C: sp_api::ProvideRuntimeApi, C::Api: VrfApi, { - let at = sp_api::BlockId::Hash(parent); let runtime_api = client.runtime_api(); // first ? for runtime API, second ? for if last vrf output is not available - let last_vrf_output = runtime_api.get_last_vrf_output(&at).ok()??; + let last_vrf_output = runtime_api.get_last_vrf_output(parent).ok()??; // first ? for runtime API, second ? for not VRF key associated with NimbusId - let key: VrfId = runtime_api.vrf_key_lookup(&at, nimbus_id).ok()??; + let key: VrfId = runtime_api.vrf_key_lookup(parent, nimbus_id).ok()??; let vrf_pre_digest = sign_vrf(last_vrf_output, key, &keystore)?; Some(session_keys_primitives::digest::CompatibleDigestItem::vrf_pre_digest(vrf_pre_digest)) } diff --git a/node/cli/Cargo.toml b/node/cli/Cargo.toml index 342cd1ada0..edfd9b09f3 100644 --- a/node/cli/Cargo.toml +++ b/node/cli/Cargo.toml @@ -16,7 +16,7 @@ moonbeam-service = { workspace = true } # Substrate frame-benchmarking-cli = { workspace = true } sc-cli = { workspace = true } -sc-finality-grandpa = { workspace = true } +sc-consensus-grandpa = { workspace = true } sc-service = { workspace = true } sc-sysinfo = { workspace = true } sc-telemetry = { workspace = true } @@ -44,7 +44,12 @@ polkadot-service = { workspace = true } substrate-build-script-utils = { workspace = true } [features] -default = [ "moonbase-native", "moonbeam-native", "moonriver-native", "westend-native" ] +default = [ + "moonbase-native", + "moonbeam-native", + "moonriver-native", + "westend-native", +] westend-native = [ "polkadot-service/westend-native" ] @@ -52,7 +57,10 @@ moonbase-native = [ "moonbeam-service/moonbase-native", "westend-native" ] moonbeam-native = [ "moonbeam-service/moonbeam-native" ] moonriver-native = [ "moonbeam-service/moonriver-native" ] -runtime-benchmarks = [ "moonbeam-service/runtime-benchmarks", "polkadot-service/runtime-benchmarks" ] +runtime-benchmarks = [ + "moonbeam-service/runtime-benchmarks", + "polkadot-service/runtime-benchmarks", +] try-runtime = [ "moonbeam-service/try-runtime", "try-runtime-cli/try-runtime", diff --git a/node/cli/src/command.rs b/node/cli/src/command.rs index 46ae2cd632..fe826cb80e 100644 --- a/node/cli/src/command.rs +++ b/node/cli/src/command.rs @@ -38,6 +38,11 @@ use sp_core::hexdisplay::HexDisplay; use sp_runtime::traits::{AccountIdConversion, Block as _}; use std::{io::Write, net::SocketAddr}; +#[cfg(feature = "try-runtime")] +use try_runtime_cli::block_building_info::substrate_info; +#[cfg(feature = "try-runtime")] +const SLOT_DURATION: u64 = 12; + fn load_spec( id: &str, para_id: ParaId, @@ -636,6 +641,7 @@ pub fn run() -> Result<()> { sc_cli::Error::Service(sc_service::Error::Prometheus(e)) })?; + let info_provider = substrate_info(SLOT_DURATION); Ok(( cmd.run::< moonbeam_service::moonriver_runtime::Block, @@ -643,7 +649,7 @@ pub fn run() -> Result<()> { sp_io::SubstrateHostFunctions, ::ExtendHostFunctions, - >>(), + >, _>(Some(info_provider)), task_manager, )) }), @@ -656,6 +662,7 @@ pub fn run() -> Result<()> { sc_cli::Error::Service(sc_service::Error::Prometheus(e)) })?; + let info_provider = substrate_info(SLOT_DURATION); Ok(( cmd.run::< moonbeam_service::moonbeam_runtime::Block, @@ -663,7 +670,7 @@ pub fn run() -> Result<()> { sp_io::SubstrateHostFunctions, ::ExtendHostFunctions, - >>(), + >, _>(Some(info_provider)), task_manager, )) }), @@ -679,6 +686,7 @@ pub fn run() -> Result<()> { sc_cli::Error::Service(sc_service::Error::Prometheus(e)) })?; + let info_provider = substrate_info(SLOT_DURATION); Ok(( cmd.run::< moonbeam_service::moonbase_runtime::Block, @@ -686,7 +694,7 @@ pub fn run() -> Result<()> { sp_io::SubstrateHostFunctions, ::ExtendHostFunctions, - >>(), + >, _>(Some(info_provider)), task_manager, )) }) @@ -743,7 +751,6 @@ pub fn run() -> Result<()> { // When running the dev service, just use Alice's author inherent //TODO maybe make the --alice etc flags work here, and consider bringing back // the author-id flag. For now, this will work. - let author_id = Some(chain_spec::get_from_seed::( "Alice", )); @@ -754,18 +761,21 @@ pub fn run() -> Result<()> { moonbeam_service::moonriver_runtime::RuntimeApi, moonbeam_service::MoonriverExecutor, >(config, author_id, cli.run.sealing, rpc_config, hwbench) + .await .map_err(Into::into), #[cfg(feature = "moonbeam-native")] spec if spec.is_moonbeam() => moonbeam_service::new_dev::< moonbeam_service::moonbeam_runtime::RuntimeApi, moonbeam_service::MoonbeamExecutor, >(config, author_id, cli.run.sealing, rpc_config, hwbench) + .await .map_err(Into::into), #[cfg(feature = "moonbase-native")] _ => moonbeam_service::new_dev::< moonbeam_service::moonbase_runtime::RuntimeApi, moonbeam_service::MoonbaseExecutor, >(config, author_id, cli.run.sealing, rpc_config, hwbench) + .await .map_err(Into::into), #[cfg(not(feature = "moonbase-native"))] _ => panic!("invalid chain spec"), diff --git a/node/service/Cargo.toml b/node/service/Cargo.toml index 49d853186c..ce06b8b03c 100644 --- a/node/service/Cargo.toml +++ b/node/service/Cargo.toml @@ -52,7 +52,9 @@ moonriver-runtime = { workspace = true, optional = true } frame-system-rpc-runtime-api = { workspace = true, features = [ "std" ] } pallet-transaction-payment = { workspace = true, features = [ "std" ] } pallet-transaction-payment-rpc = { workspace = true } -pallet-transaction-payment-rpc-runtime-api = { workspace = true, features = [ "std" ] } +pallet-transaction-payment-rpc-runtime-api = { workspace = true, features = [ + "std", +] } parity-scale-codec = { workspace = true } sc-basic-authorship = { workspace = true } sc-chain-spec = { workspace = true } @@ -60,12 +62,13 @@ sc-cli = { workspace = true } sc-client-api = { workspace = true } sc-client-db = { workspace = true } sc-consensus = { workspace = true } +sc-consensus-grandpa = { workspace = true } sc-consensus-manual-seal = { workspace = true } sc-executor = { workspace = true } -sc-finality-grandpa = { workspace = true } sc-informant = { workspace = true } sc-network = { workspace = true } sc-network-common = { workspace = true } +sc-network-sync = { workspace = true } sc-rpc = { workspace = true } sc-rpc-api = { workspace = true } sc-service = { workspace = true } @@ -101,7 +104,10 @@ fc-rpc-core = { workspace = true } fp-consensus = { workspace = true, features = [ "std" ] } fp-rpc = { workspace = true, features = [ "std" ] } fp-storage = { workspace = true, features = [ "std" ] } -pallet-ethereum = { workspace = true, features = [ "forbid-evm-reentrancy", "std" ] } +pallet-ethereum = { workspace = true, features = [ + "forbid-evm-reentrancy", + "std", +] } # Cumulus / Nimbus cumulus-client-cli = { workspace = true } @@ -138,6 +144,7 @@ nix = { workspace = true } prometheus = { workspace = true } rand = { workspace = true } sc-block-builder = { workspace = true } +tempfile = { workspace = true } # Polkadot dev-dependencies polkadot-runtime-common = { workspace = true } @@ -161,15 +168,24 @@ default = [ "westend-native", ] -kusama-native = [ "polkadot-cli/kusama-native", "polkadot-service/kusama-native" ] -rococo-native = [ "polkadot-cli/rococo-native", "polkadot-service/rococo-native" ] -westend-native = [ "polkadot-cli/westend-native", "polkadot-service/westend-native" ] +kusama-native = [ + "polkadot-cli/kusama-native", + "polkadot-service/kusama-native", +] +rococo-native = [ + "polkadot-cli/rococo-native", + "polkadot-service/rococo-native", +] +westend-native = [ + "polkadot-cli/westend-native", + "polkadot-service/westend-native", +] moonbase-native = [ "moonbase-runtime", "westend-native" ] moonbeam-native = [ "moonbeam-runtime" ] moonriver-native = [ "moonriver-runtime" ] -test-spec = [] +test-spec = [ ] runtime-benchmarks = [ "moonbase-native", @@ -181,10 +197,7 @@ runtime-benchmarks = [ "pallet-ethereum/runtime-benchmarks", ] -try-runtime = [ - "moonbase-runtime", - "moonbase-runtime/try-runtime", -] +try-runtime = [ "moonbase-runtime", "moonbase-runtime/try-runtime" ] moonbase-runtime-benchmarks = [ "moonbase-native", diff --git a/node/service/src/chain_spec/fake_spec.rs b/node/service/src/chain_spec/fake_spec.rs index edb9d03113..4c96a14b95 100644 --- a/node/service/src/chain_spec/fake_spec.rs +++ b/node/service/src/chain_spec/fake_spec.rs @@ -44,7 +44,7 @@ impl sc_service::ChainSpec for FakeSpec { todo!() } - fn boot_nodes(&self) -> &[sc_network_common::config::MultiaddrWithPeerId] { + fn boot_nodes(&self) -> &[sc_network::config::MultiaddrWithPeerId] { todo!() } @@ -72,7 +72,7 @@ impl sc_service::ChainSpec for FakeSpec { todo!() } - fn add_boot_node(&mut self, _addr: sc_network_common::config::MultiaddrWithPeerId) { + fn add_boot_node(&mut self, _addr: sc_network::config::MultiaddrWithPeerId) { todo!() } diff --git a/node/service/src/client.rs b/node/service/src/client.rs index ff138e5aae..3ed49af776 100644 --- a/node/service/src/client.rs +++ b/node/service/src/client.rs @@ -14,7 +14,7 @@ // You should have received a copy of the GNU General Public License // along with Moonbeam. If not, see . pub use moonbeam_core_primitives::{AccountId, Balance, Block, BlockNumber, Hash, Header, Index}; -use sc_client_api::{Backend as BackendT, BlockchainEvents, KeyIterator}; +use sc_client_api::{Backend as BackendT, BlockchainEvents, KeysIter, PairsIter}; use sp_api::{CallApiAt, NumberFor, ProvideRuntimeApi}; use sp_blockchain::HeaderBackend; use sp_consensus::BlockStatus; @@ -290,14 +290,6 @@ impl sc_client_api::StorageProvider for Client { match_client!(self, storage(hash, key)) } - fn storage_keys( - &self, - hash: ::Hash, - key_prefix: &StorageKey, - ) -> sp_blockchain::Result> { - match_client!(self, storage_keys(hash, key_prefix)) - } - fn storage_hash( &self, hash: ::Hash, @@ -306,23 +298,26 @@ impl sc_client_api::StorageProvider for Client { match_client!(self, storage_hash(hash, key)) } - fn storage_pairs( + fn storage_keys( &self, hash: ::Hash, - key_prefix: &StorageKey, - ) -> sp_blockchain::Result> { - match_client!(self, storage_pairs(hash, key_prefix)) + prefix: Option<&StorageKey>, + start_key: Option<&StorageKey>, + ) -> sp_blockchain::Result< + KeysIter<>::State, Block>, + > { + match_client!(self, storage_keys(hash, prefix, start_key)) } - fn storage_keys_iter<'a>( + fn storage_pairs( &self, hash: ::Hash, - prefix: Option<&'a StorageKey>, + key_prefix: Option<&StorageKey>, start_key: Option<&StorageKey>, ) -> sp_blockchain::Result< - KeyIterator<>::State, Block>, + PairsIter<>::State, Block>, > { - match_client!(self, storage_keys_iter(hash, prefix, start_key)) + match_client!(self, storage_pairs(hash, key_prefix, start_key)) } fn child_storage( @@ -335,26 +330,17 @@ impl sc_client_api::StorageProvider for Client { } fn child_storage_keys( - &self, - hash: ::Hash, - child_info: &ChildInfo, - key_prefix: &StorageKey, - ) -> sp_blockchain::Result> { - match_client!(self, child_storage_keys(hash, child_info, key_prefix)) - } - - fn child_storage_keys_iter<'a>( &self, hash: ::Hash, child_info: ChildInfo, - prefix: Option<&'a StorageKey>, + prefix: Option<&StorageKey>, start_key: Option<&StorageKey>, ) -> sp_blockchain::Result< - KeyIterator<>::State, Block>, + KeysIter<>::State, Block>, > { match_client!( self, - child_storage_keys_iter(hash, child_info, prefix, start_key) + child_storage_keys(hash, child_info, prefix, start_key) ) } diff --git a/node/service/src/lib.rs b/node/service/src/lib.rs index 142da2f2ef..5486750ca7 100644 --- a/node/service/src/lib.rs +++ b/node/service/src/lib.rs @@ -26,7 +26,6 @@ pub mod rpc; use cumulus_client_cli::CollatorOptions; use cumulus_client_consensus_common::ParachainConsensus; -use cumulus_client_network::BlockAnnounceValidator; use cumulus_client_service::{ prepare_node_config, start_collator, start_full_node, StartCollatorParams, StartFullNodeParams, }; @@ -36,7 +35,7 @@ use cumulus_primitives_parachain_inherent::{ MockValidationDataInherentDataProvider, MockXcmConfig, }; use cumulus_relay_chain_inprocess_interface::build_inprocess_relay_chain; -use cumulus_relay_chain_interface::{RelayChainError, RelayChainInterface, RelayChainResult}; +use cumulus_relay_chain_interface::{RelayChainInterface, RelayChainResult}; use cumulus_relay_chain_minimal_node::build_minimal_relay_chain_node; use fc_consensus::FrontierBlockImport; use fc_db::DatabaseSource; @@ -572,7 +571,7 @@ where let params = new_partial(&mut parachain_config, false)?; let ( - _block_import, + _frontier_block_import, filter_pool, mut telemetry, telemetry_worker_handle, @@ -593,30 +592,24 @@ where hwbench.clone(), ) .await - .map_err(|e| match e { - RelayChainError::ServiceError(polkadot_service::Error::Sub(x)) => x, - s => s.to_string().into(), - })?; - - let block_announce_validator = BlockAnnounceValidator::new(relay_chain_interface.clone(), id); + .map_err(|e| sc_service::Error::Application(Box::new(e) as Box<_>))?; let force_authoring = parachain_config.force_authoring; let collator = parachain_config.role.is_authority(); let prometheus_registry = parachain_config.prometheus_registry().cloned(); let transaction_pool = params.transaction_pool.clone(); let import_queue_service = params.import_queue.service(); - let (network, system_rpc_tx, tx_handler_controller, start_network) = - sc_service::build_network(sc_service::BuildNetworkParams { - config: ¶chain_config, + let (network, system_rpc_tx, tx_handler_controller, start_network, sync_service) = + cumulus_client_service::build_network(cumulus_client_service::BuildNetworkParams { + parachain_config: ¶chain_config, client: client.clone(), transaction_pool: transaction_pool.clone(), spawn_handle: task_manager.spawn_handle(), import_queue: params.import_queue, - block_announce_validator_builder: Some(Box::new(|_| { - Box::new(block_announce_validator) - })), - warp_sync: None, - })?; + para_id: id, + relay_chain_interface: relay_chain_interface.clone(), + }) + .await?; let overrides = crate::rpc::overrides_handle(client.clone()); let fee_history_limit = rpc_config.fee_history_limit; @@ -667,6 +660,7 @@ where let client = client.clone(); let pool = transaction_pool.clone(); let network = network.clone(); + let sync = sync_service.clone(); let filter_pool = filter_pool.clone(); let frontier_backend = frontier_backend.clone(); let backend = backend.clone(); @@ -692,6 +686,7 @@ where fee_history_limit, fee_history_cache: fee_history_cache.clone(), network: network.clone(), + sync: sync.clone(), xcm_senders: None, block_data_cache: block_data_cache.clone(), overrides: overrides.clone(), @@ -721,6 +716,7 @@ where keystore: params.keystore_container.sync_keystore(), backend: backend.clone(), network: network.clone(), + sync_service: sync_service.clone(), system_rpc_tx, tx_handler_controller, telemetry: telemetry.as_mut(), @@ -740,11 +736,14 @@ where } let announce_block = { - let network = network.clone(); - Arc::new(move |hash, data| network.announce_block(hash, data)) + let sync_service = sync_service.clone(); + Arc::new(move |hash, data| sync_service.announce_block(hash, data)) }; let relay_chain_slot_duration = Duration::from_secs(6); + let overseer_handle = relay_chain_interface + .overseer_handle() + .map_err(|e| sc_service::Error::Application(Box::new(e)))?; if collator { let parachain_consensus = build_consensus( @@ -772,6 +771,7 @@ where spawner, parachain_consensus, import_queue: import_queue_service, + recovery_handle: Box::new(overseer_handle), collator_key: collator_key.ok_or(sc_service::error::Error::Other( "Collator Key is None".to_string(), ))?, @@ -788,6 +788,7 @@ where relay_chain_interface, relay_chain_slot_duration, import_queue: import_queue_service, + recovery_handle: Box::new(overseer_handle), }; start_full_node(params)?; @@ -900,7 +901,7 @@ where /// Builds a new development service. This service uses manual seal, and mocks /// the parachain inherent. -pub fn new_dev( +pub async fn new_dev( mut config: Configuration, _author_id: Option, sealing: moonbeam_cli_opt::Sealing, @@ -938,7 +939,7 @@ where ), } = new_partial::(&mut config, true)?; - let (network, system_rpc_tx, tx_handler_controller, network_starter) = + let (network, system_rpc_tx, tx_handler_controller, network_starter, sync_service) = sc_service::build_network(sc_service::BuildNetworkParams { config: &config, client: client.clone(), @@ -946,7 +947,7 @@ where spawn_handle: task_manager.spawn_handle(), import_queue, block_announce_validator_builder: None, - warp_sync: None, + warp_sync_params: None, })?; if config.offchain_worker.enabled { @@ -1135,6 +1136,7 @@ where let pool = transaction_pool.clone(); let backend = backend.clone(); let network = network.clone(); + let sync = sync_service.clone(); let ethapi_cmd = ethapi_cmd.clone(); let max_past_logs = rpc_config.max_past_logs; let overrides = overrides.clone(); @@ -1157,6 +1159,7 @@ where fee_history_limit, fee_history_cache: fee_history_cache.clone(), network: network.clone(), + sync: sync.clone(), xcm_senders: xcm_senders.clone(), overrides: overrides.clone(), block_data_cache: block_data_cache.clone(), @@ -1187,6 +1190,7 @@ where rpc_builder: Box::new(rpc_builder), backend, system_rpc_tx, + sync_service: sync_service.clone(), config, tx_handler_controller, telemetry: None, @@ -1295,14 +1299,13 @@ mod tests { fn dalek_does_not_panic() { use futures::executor::block_on; use sc_block_builder::BlockBuilderProvider; + use sc_client_db::{Backend, BlocksPruning, DatabaseSettings, DatabaseSource, PruningMode}; use sp_api::ProvideRuntimeApi; use sp_consensus::BlockOrigin; - use sp_runtime::generic::BlockId; use substrate_test_runtime::TestAPI; use substrate_test_runtime_client::runtime::Block; use substrate_test_runtime_client::{ - ClientBlockImportExt, DefaultTestClientBuilderExt, TestClientBuilder, - TestClientBuilderExt, + ClientBlockImportExt, TestClientBuilder, TestClientBuilderExt, }; fn zero_ed_pub() -> sp_core::ed25519::Public { @@ -1320,7 +1323,23 @@ mod tests { sp_core::ed25519::Signature::from_raw(signature[0..64].try_into().unwrap()) } - let mut client = TestClientBuilder::new().build(); + let tmp = tempfile::tempdir().unwrap(); + let backend = Arc::new( + Backend::new( + DatabaseSettings { + trie_cache_maximum_size: Some(1 << 20), + state_pruning: Some(PruningMode::ArchiveAll), + blocks_pruning: BlocksPruning::KeepAll, + source: DatabaseSource::RocksDb { + path: tmp.path().into(), + cache_size: 1024, + }, + }, + u64::MAX, + ) + .unwrap(), + ); + let mut client = TestClientBuilder::with_backend(backend).build(); client .execution_extensions() @@ -1330,7 +1349,7 @@ mod tests { >::new(1)); let a1 = client - .new_block_at(&BlockId::Number(0), Default::default(), false) + .new_block_at(client.chain_info().genesis_hash, Default::default(), false) .unwrap() .build() .unwrap() @@ -1341,7 +1360,12 @@ mod tests { // shouldnt panic on importing invalid sig assert!(!client .runtime_api() - .verify_ed25519(&BlockId::Number(0), invalid_sig(), zero_ed_pub(), vec![]) + .verify_ed25519( + client.chain_info().genesis_hash, + invalid_sig(), + zero_ed_pub(), + vec![] + ) .unwrap()); } diff --git a/node/service/src/rpc.rs b/node/service/src/rpc.rs index 41fb0ade78..ba63e9b438 100644 --- a/node/service/src/rpc.rs +++ b/node/service/src/rpc.rs @@ -43,6 +43,7 @@ use sc_client_api::{ }; use sc_consensus_manual_seal::rpc::{EngineCommand, ManualSeal, ManualSealApiServer}; use sc_network::NetworkService; +use sc_network_sync::SyncingService; use sc_rpc::SubscriptionTaskExecutor; use sc_rpc_api::DenyUnsafe; use sc_service::TaskManager; @@ -104,6 +105,8 @@ pub struct FullDeps { pub is_authority: bool, /// Network service pub network: Arc>, + /// Chain syncing service + pub sync: Arc>, /// EthFilterApi pool. pub filter_pool: Option, /// The list of optional RPC extensions. @@ -200,6 +203,7 @@ where deny_unsafe, is_authority, network, + sync, filter_pool, ethapi_cmd, command_sink, @@ -236,7 +240,7 @@ where Arc::clone(&pool), graph.clone(), convert_transaction, - Arc::clone(&network), + Arc::clone(&sync), signers, Arc::clone(&overrides), Arc::clone(&frontier_backend), @@ -279,7 +283,7 @@ where EthPubSub::new( pool, Arc::clone(&client), - network, + sync.clone(), subscription_task_executor, overrides, ) @@ -364,6 +368,7 @@ where Duration::new(6, 0), params.client.clone(), params.substrate_backend.clone(), + params.overrides.clone(), params.frontier_backend.clone(), 3, 0, diff --git a/pallets/asset-manager/src/mock.rs b/pallets/asset-manager/src/mock.rs index bc9a895cfd..9aff8fc2ab 100644 --- a/pallets/asset-manager/src/mock.rs +++ b/pallets/asset-manager/src/mock.rs @@ -107,7 +107,7 @@ parameter_types! { pub const StatemineAssetsInstanceInfo: u8 = 50u8; } -pub type AssetId = u32; +pub type AssetId = u128; #[derive(Clone, Eq, PartialEq, Ord, PartialOrd, Encode, Decode, RuntimeDebug, TypeInfo)] pub enum MockAssetType { Xcm(MultiLocation), @@ -125,10 +125,10 @@ impl From for AssetId { match asset { MockAssetType::MockAsset(id) => id, MockAssetType::Xcm(id) => { - let mut result: [u8; 4] = [0u8; 4]; + let mut result: [u8; 16] = [0u8; 16]; let hash: H256 = id.using_encoded(::Hashing::hash); - result.copy_from_slice(&hash.as_fixed_bytes()[0..4]); - u32::from_le_bytes(result) + result.copy_from_slice(&hash.as_fixed_bytes()[0..16]); + u128::from_le_bytes(result) } } } @@ -153,7 +153,7 @@ pub struct MockAssetPalletRegistrar; impl AssetRegistrar for MockAssetPalletRegistrar { fn create_foreign_asset( - _asset: u32, + _asset: u128, _min_balance: u64, _metadata: u32, _is_sufficient: bool, @@ -162,7 +162,7 @@ impl AssetRegistrar for MockAssetPalletRegistrar { } fn create_local_asset( - _asset: u32, + _asset: u128, _account: u64, _min_balance: u64, _is_sufficient: bool, @@ -171,16 +171,16 @@ impl AssetRegistrar for MockAssetPalletRegistrar { Ok(()) } - fn destroy_foreign_asset(_asset: u32) -> Result<(), DispatchError> { + fn destroy_foreign_asset(_asset: u128) -> Result<(), DispatchError> { Ok(()) } - fn destroy_local_asset(_asset: u32) -> Result<(), DispatchError> { + fn destroy_local_asset(_asset: u128) -> Result<(), DispatchError> { Ok(()) } - fn destroy_asset_dispatch_info_weight(_asset: u32) -> Weight { - Weight::from_ref_time(0) + fn destroy_asset_dispatch_info_weight(_asset: u128) -> Weight { + Weight::from_parts(0, 0) } } @@ -189,10 +189,7 @@ impl pallet_asset_manager::LocalAssetIdCreator for MockLocalAssetIdCreator fn create_asset_id_from_metadata(local_asset_counter: u128) -> AssetId { // Our means of converting a creator to an assetId // We basically hash nonce+account - let mut result: [u8; 4] = [0u8; 4]; - let big_endian = local_asset_counter.to_le_bytes(); - result.copy_from_slice(&big_endian[0..4]); - u32::from_le_bytes(result) + local_asset_counter } } @@ -203,7 +200,7 @@ parameter_types! { impl Config for Test { type RuntimeEvent = RuntimeEvent; type Balance = u64; - type AssetId = u32; + type AssetId = u128; type AssetRegistrarMetadata = u32; type ForeignAssetType = MockAssetType; type AssetRegistrar = MockAssetPalletRegistrar; diff --git a/pallets/asset-manager/src/weights.rs b/pallets/asset-manager/src/weights.rs index 4446ffb42e..49bf7afdbd 100644 --- a/pallets/asset-manager/src/weights.rs +++ b/pallets/asset-manager/src/weights.rs @@ -14,10 +14,13 @@ // You should have received a copy of the GNU General Public License // along with Moonbeam. If not, see . + //! Autogenerated weights for pallet_asset_manager //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-19, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2023-04-28, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `benchmarker`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: None, DB CACHE: 1024 // Executed Command: @@ -38,170 +41,258 @@ // --json-file // raw.json // --output -// ./tmp/ +// weights/ +#![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] -use frame_support::{ - traits::Get, - weights::{constants::RocksDbWeight, Weight}, -}; +use frame_support::{traits::Get, weights::{Weight, constants::RocksDbWeight}}; use sp_std::marker::PhantomData; /// Weight functions needed for pallet_asset_manager. pub trait WeightInfo { - #[rustfmt::skip] fn register_foreign_asset() -> Weight; - #[rustfmt::skip] fn set_asset_units_per_second(x: u32, ) -> Weight; - #[rustfmt::skip] fn change_existing_asset_type(x: u32, ) -> Weight; - #[rustfmt::skip] fn remove_supported_asset(x: u32, ) -> Weight; - #[rustfmt::skip] fn register_local_asset() -> Weight; - #[rustfmt::skip] fn remove_existing_asset_type(x: u32, ) -> Weight; } /// Weights for pallet_asset_manager using the Substrate node and recommended hardware. pub struct SubstrateWeight(PhantomData); impl WeightInfo for SubstrateWeight { - // Storage: AssetManager AssetIdType (r:1 w:1) - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Metadata (r:1 w:1) - // Storage: AssetManager AssetTypeId (r:0 w:1) - #[rustfmt::skip] + /// Storage: AssetManager AssetIdType (r:1 w:1) + /// Proof Skipped: AssetManager AssetIdType (max_values: None, max_size: None, mode: Measured) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:1) + /// Proof: Assets Metadata (max_values: None, max_size: Some(152), added: 2627, mode: MaxEncodedLen) + /// Storage: AssetManager AssetTypeId (r:0 w:1) + /// Proof Skipped: AssetManager AssetTypeId (max_values: None, max_size: None, mode: Measured) fn register_foreign_asset() -> Weight { - Weight::from_ref_time(61_307_000 as u64) - .saturating_add(T::DbWeight::get().reads(3 as u64)) - .saturating_add(T::DbWeight::get().writes(4 as u64)) + // Proof Size summary in bytes: + // Measured: `82` + // Estimated: `10885` + // Minimum execution time: 51_631_000 picoseconds. + Weight::from_parts(52_681_000, 10885) + .saturating_add(T::DbWeight::get().reads(3_u64)) + .saturating_add(T::DbWeight::get().writes(4_u64)) } - // Storage: AssetManager AssetTypeId (r:1 w:0) - // Storage: AssetManager SupportedFeePaymentAssets (r:1 w:1) - // Storage: AssetManager AssetTypeUnitsPerSecond (r:0 w:1) - #[rustfmt::skip] + /// Storage: AssetManager AssetTypeId (r:1 w:0) + /// Proof Skipped: AssetManager AssetTypeId (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager SupportedFeePaymentAssets (r:1 w:1) + /// Proof Skipped: AssetManager SupportedFeePaymentAssets (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeUnitsPerSecond (r:0 w:1) + /// Proof Skipped: AssetManager AssetTypeUnitsPerSecond (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[5, 100]`. fn set_asset_units_per_second(x: u32, ) -> Weight { - Weight::from_ref_time(40_360_313 as u64) - // Standard Error: 1_882 - .saturating_add(Weight::from_ref_time(654_975 as u64).saturating_mul(x as u64)) - .saturating_add(T::DbWeight::get().reads(2 as u64)) - .saturating_add(T::DbWeight::get().writes(2 as u64)) + // Proof Size summary in bytes: + // Measured: `611 + x * (9 ±0)` + // Estimated: `6555 + x * (30 ±0)` + // Minimum execution time: 30_927_000 picoseconds. + Weight::from_parts(30_990_835, 6555) + // Standard Error: 2_254 + .saturating_add(Weight::from_parts(494_375, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(2_u64)) + .saturating_add(T::DbWeight::get().writes(2_u64)) + .saturating_add(Weight::from_parts(0, 30).saturating_mul(x.into())) } - // Storage: AssetManager SupportedFeePaymentAssets (r:1 w:1) - // Storage: AssetManager AssetIdType (r:1 w:1) - // Storage: AssetManager AssetTypeUnitsPerSecond (r:1 w:2) - // Storage: AssetManager AssetTypeId (r:0 w:2) - #[rustfmt::skip] + /// Storage: AssetManager SupportedFeePaymentAssets (r:1 w:1) + /// Proof Skipped: AssetManager SupportedFeePaymentAssets (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AssetManager AssetIdType (r:1 w:1) + /// Proof Skipped: AssetManager AssetIdType (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeUnitsPerSecond (r:1 w:2) + /// Proof Skipped: AssetManager AssetTypeUnitsPerSecond (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeId (r:0 w:2) + /// Proof Skipped: AssetManager AssetTypeId (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[5, 100]`. fn change_existing_asset_type(x: u32, ) -> Weight { - Weight::from_ref_time(54_186_594 as u64) - // Standard Error: 2_515 - .saturating_add(Weight::from_ref_time(701_870 as u64).saturating_mul(x as u64)) - .saturating_add(T::DbWeight::get().reads(3 as u64)) - .saturating_add(T::DbWeight::get().writes(6 as u64)) + // Proof Size summary in bytes: + // Measured: `926 + x * (13 ±0)` + // Estimated: `11791 + x * (60 ±0)` + // Minimum execution time: 42_959_000 picoseconds. + Weight::from_parts(43_255_055, 11791) + // Standard Error: 3_394 + .saturating_add(Weight::from_parts(543_897, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(3_u64)) + .saturating_add(T::DbWeight::get().writes(6_u64)) + .saturating_add(Weight::from_parts(0, 60).saturating_mul(x.into())) } - // Storage: AssetManager SupportedFeePaymentAssets (r:1 w:1) - // Storage: AssetManager AssetTypeUnitsPerSecond (r:0 w:1) - #[rustfmt::skip] + /// Storage: AssetManager SupportedFeePaymentAssets (r:1 w:1) + /// Proof Skipped: AssetManager SupportedFeePaymentAssets (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeUnitsPerSecond (r:0 w:1) + /// Proof Skipped: AssetManager AssetTypeUnitsPerSecond (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[5, 100]`. fn remove_supported_asset(x: u32, ) -> Weight { - Weight::from_ref_time(35_292_968 as u64) - // Standard Error: 2_092 - .saturating_add(Weight::from_ref_time(579_824 as u64).saturating_mul(x as u64)) - .saturating_add(T::DbWeight::get().reads(1 as u64)) - .saturating_add(T::DbWeight::get().writes(2 as u64)) + // Proof Size summary in bytes: + // Measured: `196 + x * (5 ±0)` + // Estimated: `1871 + x * (10 ±0)` + // Minimum execution time: 25_453_000 picoseconds. + Weight::from_parts(24_977_319, 1871) + // Standard Error: 2_109 + .saturating_add(Weight::from_parts(407_717, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(1_u64)) + .saturating_add(T::DbWeight::get().writes(2_u64)) + .saturating_add(Weight::from_parts(0, 10).saturating_mul(x.into())) } - // Storage: System Account (r:1 w:1) - // Storage: AssetManager LocalAssetCounter (r:1 w:1) - // Storage: LocalAssets Asset (r:1 w:1) - // Storage: EVM AccountCodes (r:0 w:1) - // Storage: AssetManager LocalAssetDeposit (r:0 w:1) - #[rustfmt::skip] + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: AssetManager LocalAssetCounter (r:1 w:1) + /// Proof Skipped: AssetManager LocalAssetCounter (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: LocalAssets Asset (r:1 w:1) + /// Proof: LocalAssets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: EVM AccountCodes (r:0 w:1) + /// Proof Skipped: EVM AccountCodes (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager LocalAssetDeposit (r:0 w:1) + /// Proof Skipped: AssetManager LocalAssetDeposit (max_values: None, max_size: None, mode: Measured) fn register_local_asset() -> Weight { - Weight::from_ref_time(73_565_000 as u64) - .saturating_add(T::DbWeight::get().reads(3 as u64)) - .saturating_add(T::DbWeight::get().writes(5 as u64)) + // Proof Size summary in bytes: + // Measured: `310` + // Estimated: `9635` + // Minimum execution time: 59_851_000 picoseconds. + Weight::from_parts(60_452_000, 9635) + .saturating_add(T::DbWeight::get().reads(3_u64)) + .saturating_add(T::DbWeight::get().writes(5_u64)) } - // Storage: AssetManager SupportedFeePaymentAssets (r:1 w:1) - // Storage: AssetManager AssetIdType (r:1 w:1) - // Storage: AssetManager AssetTypeUnitsPerSecond (r:0 w:1) - // Storage: AssetManager AssetTypeId (r:0 w:1) - #[rustfmt::skip] + /// Storage: AssetManager SupportedFeePaymentAssets (r:1 w:1) + /// Proof Skipped: AssetManager SupportedFeePaymentAssets (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AssetManager AssetIdType (r:1 w:1) + /// Proof Skipped: AssetManager AssetIdType (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeUnitsPerSecond (r:0 w:1) + /// Proof Skipped: AssetManager AssetTypeUnitsPerSecond (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeId (r:0 w:1) + /// Proof Skipped: AssetManager AssetTypeId (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[5, 100]`. fn remove_existing_asset_type(x: u32, ) -> Weight { - Weight::from_ref_time(42_086_299 as u64) - // Standard Error: 1_975 - .saturating_add(Weight::from_ref_time(590_049 as u64).saturating_mul(x as u64)) - .saturating_add(T::DbWeight::get().reads(2 as u64)) - .saturating_add(T::DbWeight::get().writes(4 as u64)) + // Proof Size summary in bytes: + // Measured: `482 + x * (10 ±0)` + // Estimated: `6910 + x * (40 ±0)` + // Minimum execution time: 32_960_000 picoseconds. + Weight::from_parts(33_257_599, 6910) + // Standard Error: 2_430 + .saturating_add(Weight::from_parts(421_651, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(2_u64)) + .saturating_add(T::DbWeight::get().writes(4_u64)) + .saturating_add(Weight::from_parts(0, 40).saturating_mul(x.into())) } } // For backwards compatibility and tests impl WeightInfo for () { - // Storage: AssetManager AssetIdType (r:1 w:1) - // Storage: Assets Asset (r:1 w:1) - // Storage: Assets Metadata (r:1 w:1) - // Storage: AssetManager AssetTypeId (r:0 w:1) - #[rustfmt::skip] + /// Storage: AssetManager AssetIdType (r:1 w:1) + /// Proof Skipped: AssetManager AssetIdType (max_values: None, max_size: None, mode: Measured) + /// Storage: Assets Asset (r:1 w:1) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: Assets Metadata (r:1 w:1) + /// Proof: Assets Metadata (max_values: None, max_size: Some(152), added: 2627, mode: MaxEncodedLen) + /// Storage: AssetManager AssetTypeId (r:0 w:1) + /// Proof Skipped: AssetManager AssetTypeId (max_values: None, max_size: None, mode: Measured) fn register_foreign_asset() -> Weight { - Weight::from_ref_time(61_307_000 as u64) - .saturating_add(RocksDbWeight::get().reads(3 as u64)) - .saturating_add(RocksDbWeight::get().writes(4 as u64)) + // Proof Size summary in bytes: + // Measured: `82` + // Estimated: `10885` + // Minimum execution time: 51_631_000 picoseconds. + Weight::from_parts(52_681_000, 10885) + .saturating_add(RocksDbWeight::get().reads(3_u64)) + .saturating_add(RocksDbWeight::get().writes(4_u64)) } - // Storage: AssetManager AssetTypeId (r:1 w:0) - // Storage: AssetManager SupportedFeePaymentAssets (r:1 w:1) - // Storage: AssetManager AssetTypeUnitsPerSecond (r:0 w:1) - #[rustfmt::skip] + /// Storage: AssetManager AssetTypeId (r:1 w:0) + /// Proof Skipped: AssetManager AssetTypeId (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager SupportedFeePaymentAssets (r:1 w:1) + /// Proof Skipped: AssetManager SupportedFeePaymentAssets (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeUnitsPerSecond (r:0 w:1) + /// Proof Skipped: AssetManager AssetTypeUnitsPerSecond (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[5, 100]`. fn set_asset_units_per_second(x: u32, ) -> Weight { - Weight::from_ref_time(40_360_313 as u64) - // Standard Error: 1_882 - .saturating_add(Weight::from_ref_time(654_975 as u64).saturating_mul(x as u64)) - .saturating_add(RocksDbWeight::get().reads(2 as u64)) - .saturating_add(RocksDbWeight::get().writes(2 as u64)) + // Proof Size summary in bytes: + // Measured: `611 + x * (9 ±0)` + // Estimated: `6555 + x * (30 ±0)` + // Minimum execution time: 30_927_000 picoseconds. + Weight::from_parts(30_990_835, 6555) + // Standard Error: 2_254 + .saturating_add(Weight::from_parts(494_375, 0).saturating_mul(x.into())) + .saturating_add(RocksDbWeight::get().reads(2_u64)) + .saturating_add(RocksDbWeight::get().writes(2_u64)) + .saturating_add(Weight::from_parts(0, 30).saturating_mul(x.into())) } - // Storage: AssetManager SupportedFeePaymentAssets (r:1 w:1) - // Storage: AssetManager AssetIdType (r:1 w:1) - // Storage: AssetManager AssetTypeUnitsPerSecond (r:1 w:2) - // Storage: AssetManager AssetTypeId (r:0 w:2) - #[rustfmt::skip] + /// Storage: AssetManager SupportedFeePaymentAssets (r:1 w:1) + /// Proof Skipped: AssetManager SupportedFeePaymentAssets (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AssetManager AssetIdType (r:1 w:1) + /// Proof Skipped: AssetManager AssetIdType (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeUnitsPerSecond (r:1 w:2) + /// Proof Skipped: AssetManager AssetTypeUnitsPerSecond (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeId (r:0 w:2) + /// Proof Skipped: AssetManager AssetTypeId (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[5, 100]`. fn change_existing_asset_type(x: u32, ) -> Weight { - Weight::from_ref_time(54_186_594 as u64) - // Standard Error: 2_515 - .saturating_add(Weight::from_ref_time(701_870 as u64).saturating_mul(x as u64)) - .saturating_add(RocksDbWeight::get().reads(3 as u64)) - .saturating_add(RocksDbWeight::get().writes(6 as u64)) + // Proof Size summary in bytes: + // Measured: `926 + x * (13 ±0)` + // Estimated: `11791 + x * (60 ±0)` + // Minimum execution time: 42_959_000 picoseconds. + Weight::from_parts(43_255_055, 11791) + // Standard Error: 3_394 + .saturating_add(Weight::from_parts(543_897, 0).saturating_mul(x.into())) + .saturating_add(RocksDbWeight::get().reads(3_u64)) + .saturating_add(RocksDbWeight::get().writes(6_u64)) + .saturating_add(Weight::from_parts(0, 60).saturating_mul(x.into())) } - // Storage: AssetManager SupportedFeePaymentAssets (r:1 w:1) - // Storage: AssetManager AssetTypeUnitsPerSecond (r:0 w:1) - #[rustfmt::skip] + /// Storage: AssetManager SupportedFeePaymentAssets (r:1 w:1) + /// Proof Skipped: AssetManager SupportedFeePaymentAssets (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeUnitsPerSecond (r:0 w:1) + /// Proof Skipped: AssetManager AssetTypeUnitsPerSecond (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[5, 100]`. fn remove_supported_asset(x: u32, ) -> Weight { - Weight::from_ref_time(35_292_968 as u64) - // Standard Error: 2_092 - .saturating_add(Weight::from_ref_time(579_824 as u64).saturating_mul(x as u64)) - .saturating_add(RocksDbWeight::get().reads(1 as u64)) - .saturating_add(RocksDbWeight::get().writes(2 as u64)) + // Proof Size summary in bytes: + // Measured: `196 + x * (5 ±0)` + // Estimated: `1871 + x * (10 ±0)` + // Minimum execution time: 25_453_000 picoseconds. + Weight::from_parts(24_977_319, 1871) + // Standard Error: 2_109 + .saturating_add(Weight::from_parts(407_717, 0).saturating_mul(x.into())) + .saturating_add(RocksDbWeight::get().reads(1_u64)) + .saturating_add(RocksDbWeight::get().writes(2_u64)) + .saturating_add(Weight::from_parts(0, 10).saturating_mul(x.into())) } - // Storage: System Account (r:1 w:1) - // Storage: AssetManager LocalAssetCounter (r:1 w:1) - // Storage: LocalAssets Asset (r:1 w:1) - // Storage: EVM AccountCodes (r:0 w:1) - // Storage: AssetManager LocalAssetDeposit (r:0 w:1) - #[rustfmt::skip] + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: AssetManager LocalAssetCounter (r:1 w:1) + /// Proof Skipped: AssetManager LocalAssetCounter (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: LocalAssets Asset (r:1 w:1) + /// Proof: LocalAssets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) + /// Storage: EVM AccountCodes (r:0 w:1) + /// Proof Skipped: EVM AccountCodes (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager LocalAssetDeposit (r:0 w:1) + /// Proof Skipped: AssetManager LocalAssetDeposit (max_values: None, max_size: None, mode: Measured) fn register_local_asset() -> Weight { - Weight::from_ref_time(73_565_000 as u64) - .saturating_add(RocksDbWeight::get().reads(3 as u64)) - .saturating_add(RocksDbWeight::get().writes(5 as u64)) + // Proof Size summary in bytes: + // Measured: `310` + // Estimated: `9635` + // Minimum execution time: 59_851_000 picoseconds. + Weight::from_parts(60_452_000, 9635) + .saturating_add(RocksDbWeight::get().reads(3_u64)) + .saturating_add(RocksDbWeight::get().writes(5_u64)) } - // Storage: AssetManager SupportedFeePaymentAssets (r:1 w:1) - // Storage: AssetManager AssetIdType (r:1 w:1) - // Storage: AssetManager AssetTypeUnitsPerSecond (r:0 w:1) - // Storage: AssetManager AssetTypeId (r:0 w:1) - #[rustfmt::skip] + /// Storage: AssetManager SupportedFeePaymentAssets (r:1 w:1) + /// Proof Skipped: AssetManager SupportedFeePaymentAssets (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AssetManager AssetIdType (r:1 w:1) + /// Proof Skipped: AssetManager AssetIdType (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeUnitsPerSecond (r:0 w:1) + /// Proof Skipped: AssetManager AssetTypeUnitsPerSecond (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeId (r:0 w:1) + /// Proof Skipped: AssetManager AssetTypeId (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[5, 100]`. fn remove_existing_asset_type(x: u32, ) -> Weight { - Weight::from_ref_time(42_086_299 as u64) - // Standard Error: 1_975 - .saturating_add(Weight::from_ref_time(590_049 as u64).saturating_mul(x as u64)) - .saturating_add(RocksDbWeight::get().reads(2 as u64)) - .saturating_add(RocksDbWeight::get().writes(4 as u64)) + // Proof Size summary in bytes: + // Measured: `482 + x * (10 ±0)` + // Estimated: `6910 + x * (40 ±0)` + // Minimum execution time: 32_960_000 picoseconds. + Weight::from_parts(33_257_599, 6910) + // Standard Error: 2_430 + .saturating_add(Weight::from_parts(421_651, 0).saturating_mul(x.into())) + .saturating_add(RocksDbWeight::get().reads(2_u64)) + .saturating_add(RocksDbWeight::get().writes(4_u64)) + .saturating_add(Weight::from_parts(0, 40).saturating_mul(x.into())) } -} +} \ No newline at end of file diff --git a/pallets/author-mapping/src/mock.rs b/pallets/author-mapping/src/mock.rs index 619567c2cb..931615bf3f 100644 --- a/pallets/author-mapping/src/mock.rs +++ b/pallets/author-mapping/src/mock.rs @@ -78,7 +78,7 @@ construct_runtime!( parameter_types! { pub const BlockHashCount: u32 = 250; - pub const MaximumBlockWeight: Weight = Weight::from_ref_time(1024); + pub const MaximumBlockWeight: Weight = Weight::from_parts(1024, 1); pub const MaximumBlockLength: u32 = 2 * 1024; pub const AvailableBlockRatio: Perbill = Perbill::one(); } diff --git a/pallets/author-mapping/src/weights.rs b/pallets/author-mapping/src/weights.rs index 30fd8b6a6e..bc38b7944c 100644 --- a/pallets/author-mapping/src/weights.rs +++ b/pallets/author-mapping/src/weights.rs @@ -14,10 +14,13 @@ // You should have received a copy of the GNU General Public License // along with Moonbeam. If not, see . + //! Autogenerated weights for pallet_author_mapping //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-19, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2023-04-28, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `benchmarker`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: None, DB CACHE: 1024 // Executed Command: @@ -38,122 +41,171 @@ // --json-file // raw.json // --output -// ./tmp/ +// weights/ +#![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] -use frame_support::{ - traits::Get, - weights::{constants::RocksDbWeight, Weight}, -}; +use frame_support::{traits::Get, weights::{Weight, constants::RocksDbWeight}}; use sp_std::marker::PhantomData; /// Weight functions needed for pallet_author_mapping. pub trait WeightInfo { - #[rustfmt::skip] fn add_association() -> Weight; - #[rustfmt::skip] fn update_association() -> Weight; - #[rustfmt::skip] fn clear_association() -> Weight; - #[rustfmt::skip] fn remove_keys() -> Weight; - #[rustfmt::skip] fn set_keys() -> Weight; } /// Weights for pallet_author_mapping using the Substrate node and recommended hardware. pub struct SubstrateWeight(PhantomData); impl WeightInfo for SubstrateWeight { - // Storage: AuthorMapping MappingWithDeposit (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: AuthorMapping NimbusLookup (r:0 w:1) - #[rustfmt::skip] + /// Storage: AuthorMapping MappingWithDeposit (r:1 w:1) + /// Proof Skipped: AuthorMapping MappingWithDeposit (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: AuthorMapping NimbusLookup (r:0 w:1) + /// Proof Skipped: AuthorMapping NimbusLookup (max_values: None, max_size: None, mode: Measured) fn add_association() -> Weight { - Weight::from_ref_time(50_753_000 as u64) - .saturating_add(T::DbWeight::get().reads(2 as u64)) - .saturating_add(T::DbWeight::get().writes(3 as u64)) + // Proof Size summary in bytes: + // Measured: `376` + // Estimated: `7798` + // Minimum execution time: 39_301_000 picoseconds. + Weight::from_parts(39_892_000, 7798) + .saturating_add(T::DbWeight::get().reads(2_u64)) + .saturating_add(T::DbWeight::get().writes(3_u64)) } - // Storage: AuthorMapping MappingWithDeposit (r:2 w:2) - // Storage: AuthorMapping NimbusLookup (r:0 w:1) - #[rustfmt::skip] + /// Storage: AuthorMapping MappingWithDeposit (r:2 w:2) + /// Proof Skipped: AuthorMapping MappingWithDeposit (max_values: None, max_size: None, mode: Measured) + /// Storage: AuthorMapping NimbusLookup (r:0 w:1) + /// Proof Skipped: AuthorMapping NimbusLookup (max_values: None, max_size: None, mode: Measured) fn update_association() -> Weight { - Weight::from_ref_time(41_499_000 as u64) - .saturating_add(T::DbWeight::get().reads(2 as u64)) - .saturating_add(T::DbWeight::get().writes(3 as u64)) + // Proof Size summary in bytes: + // Measured: `325` + // Estimated: `6590` + // Minimum execution time: 30_021_000 picoseconds. + Weight::from_parts(30_445_000, 6590) + .saturating_add(T::DbWeight::get().reads(2_u64)) + .saturating_add(T::DbWeight::get().writes(3_u64)) } - // Storage: AuthorMapping MappingWithDeposit (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: AuthorMapping NimbusLookup (r:0 w:1) - #[rustfmt::skip] + /// Storage: AuthorMapping MappingWithDeposit (r:1 w:1) + /// Proof Skipped: AuthorMapping MappingWithDeposit (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: AuthorMapping NimbusLookup (r:0 w:1) + /// Proof Skipped: AuthorMapping NimbusLookup (max_values: None, max_size: None, mode: Measured) fn clear_association() -> Weight { - Weight::from_ref_time(55_398_000 as u64) - .saturating_add(T::DbWeight::get().reads(2 as u64)) - .saturating_add(T::DbWeight::get().writes(3 as u64)) + // Proof Size summary in bytes: + // Measured: `453` + // Estimated: `7952` + // Minimum execution time: 40_393_000 picoseconds. + Weight::from_parts(40_798_000, 7952) + .saturating_add(T::DbWeight::get().reads(2_u64)) + .saturating_add(T::DbWeight::get().writes(3_u64)) } - // Storage: AuthorMapping NimbusLookup (r:1 w:1) - // Storage: AuthorMapping MappingWithDeposit (r:1 w:1) - // Storage: System Account (r:1 w:1) - #[rustfmt::skip] + /// Storage: AuthorMapping NimbusLookup (r:1 w:1) + /// Proof Skipped: AuthorMapping NimbusLookup (max_values: None, max_size: None, mode: Measured) + /// Storage: AuthorMapping MappingWithDeposit (r:1 w:1) + /// Proof Skipped: AuthorMapping MappingWithDeposit (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) fn remove_keys() -> Weight { - Weight::from_ref_time(60_757_000 as u64) - .saturating_add(T::DbWeight::get().reads(3 as u64)) - .saturating_add(T::DbWeight::get().writes(3 as u64)) + // Proof Size summary in bytes: + // Measured: `547` + // Estimated: `11605` + // Minimum execution time: 44_302_000 picoseconds. + Weight::from_parts(44_830_000, 11605) + .saturating_add(T::DbWeight::get().reads(3_u64)) + .saturating_add(T::DbWeight::get().writes(3_u64)) } - // Storage: AuthorMapping NimbusLookup (r:1 w:1) - // Storage: AuthorMapping MappingWithDeposit (r:2 w:2) - #[rustfmt::skip] + /// Storage: AuthorMapping NimbusLookup (r:1 w:1) + /// Proof Skipped: AuthorMapping NimbusLookup (max_values: None, max_size: None, mode: Measured) + /// Storage: AuthorMapping MappingWithDeposit (r:2 w:2) + /// Proof Skipped: AuthorMapping MappingWithDeposit (max_values: None, max_size: None, mode: Measured) fn set_keys() -> Weight { - Weight::from_ref_time(45_388_000 as u64) - .saturating_add(T::DbWeight::get().reads(3 as u64)) - .saturating_add(T::DbWeight::get().writes(3 as u64)) + // Proof Size summary in bytes: + // Measured: `419` + // Estimated: `10243` + // Minimum execution time: 33_636_000 picoseconds. + Weight::from_parts(34_125_000, 10243) + .saturating_add(T::DbWeight::get().reads(3_u64)) + .saturating_add(T::DbWeight::get().writes(3_u64)) } } // For backwards compatibility and tests impl WeightInfo for () { - // Storage: AuthorMapping MappingWithDeposit (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: AuthorMapping NimbusLookup (r:0 w:1) - #[rustfmt::skip] + /// Storage: AuthorMapping MappingWithDeposit (r:1 w:1) + /// Proof Skipped: AuthorMapping MappingWithDeposit (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: AuthorMapping NimbusLookup (r:0 w:1) + /// Proof Skipped: AuthorMapping NimbusLookup (max_values: None, max_size: None, mode: Measured) fn add_association() -> Weight { - Weight::from_ref_time(50_753_000 as u64) - .saturating_add(RocksDbWeight::get().reads(2 as u64)) - .saturating_add(RocksDbWeight::get().writes(3 as u64)) + // Proof Size summary in bytes: + // Measured: `376` + // Estimated: `7798` + // Minimum execution time: 39_301_000 picoseconds. + Weight::from_parts(39_892_000, 7798) + .saturating_add(RocksDbWeight::get().reads(2_u64)) + .saturating_add(RocksDbWeight::get().writes(3_u64)) } - // Storage: AuthorMapping MappingWithDeposit (r:2 w:2) - // Storage: AuthorMapping NimbusLookup (r:0 w:1) - #[rustfmt::skip] + /// Storage: AuthorMapping MappingWithDeposit (r:2 w:2) + /// Proof Skipped: AuthorMapping MappingWithDeposit (max_values: None, max_size: None, mode: Measured) + /// Storage: AuthorMapping NimbusLookup (r:0 w:1) + /// Proof Skipped: AuthorMapping NimbusLookup (max_values: None, max_size: None, mode: Measured) fn update_association() -> Weight { - Weight::from_ref_time(41_499_000 as u64) - .saturating_add(RocksDbWeight::get().reads(2 as u64)) - .saturating_add(RocksDbWeight::get().writes(3 as u64)) + // Proof Size summary in bytes: + // Measured: `325` + // Estimated: `6590` + // Minimum execution time: 30_021_000 picoseconds. + Weight::from_parts(30_445_000, 6590) + .saturating_add(RocksDbWeight::get().reads(2_u64)) + .saturating_add(RocksDbWeight::get().writes(3_u64)) } - // Storage: AuthorMapping MappingWithDeposit (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: AuthorMapping NimbusLookup (r:0 w:1) - #[rustfmt::skip] + /// Storage: AuthorMapping MappingWithDeposit (r:1 w:1) + /// Proof Skipped: AuthorMapping MappingWithDeposit (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: AuthorMapping NimbusLookup (r:0 w:1) + /// Proof Skipped: AuthorMapping NimbusLookup (max_values: None, max_size: None, mode: Measured) fn clear_association() -> Weight { - Weight::from_ref_time(55_398_000 as u64) - .saturating_add(RocksDbWeight::get().reads(2 as u64)) - .saturating_add(RocksDbWeight::get().writes(3 as u64)) + // Proof Size summary in bytes: + // Measured: `453` + // Estimated: `7952` + // Minimum execution time: 40_393_000 picoseconds. + Weight::from_parts(40_798_000, 7952) + .saturating_add(RocksDbWeight::get().reads(2_u64)) + .saturating_add(RocksDbWeight::get().writes(3_u64)) } - // Storage: AuthorMapping NimbusLookup (r:1 w:1) - // Storage: AuthorMapping MappingWithDeposit (r:1 w:1) - // Storage: System Account (r:1 w:1) - #[rustfmt::skip] + /// Storage: AuthorMapping NimbusLookup (r:1 w:1) + /// Proof Skipped: AuthorMapping NimbusLookup (max_values: None, max_size: None, mode: Measured) + /// Storage: AuthorMapping MappingWithDeposit (r:1 w:1) + /// Proof Skipped: AuthorMapping MappingWithDeposit (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) fn remove_keys() -> Weight { - Weight::from_ref_time(60_757_000 as u64) - .saturating_add(RocksDbWeight::get().reads(3 as u64)) - .saturating_add(RocksDbWeight::get().writes(3 as u64)) + // Proof Size summary in bytes: + // Measured: `547` + // Estimated: `11605` + // Minimum execution time: 44_302_000 picoseconds. + Weight::from_parts(44_830_000, 11605) + .saturating_add(RocksDbWeight::get().reads(3_u64)) + .saturating_add(RocksDbWeight::get().writes(3_u64)) } - // Storage: AuthorMapping NimbusLookup (r:1 w:1) - // Storage: AuthorMapping MappingWithDeposit (r:2 w:2) - #[rustfmt::skip] + /// Storage: AuthorMapping NimbusLookup (r:1 w:1) + /// Proof Skipped: AuthorMapping NimbusLookup (max_values: None, max_size: None, mode: Measured) + /// Storage: AuthorMapping MappingWithDeposit (r:2 w:2) + /// Proof Skipped: AuthorMapping MappingWithDeposit (max_values: None, max_size: None, mode: Measured) fn set_keys() -> Weight { - Weight::from_ref_time(45_388_000 as u64) - .saturating_add(RocksDbWeight::get().reads(3 as u64)) - .saturating_add(RocksDbWeight::get().writes(3 as u64)) + // Proof Size summary in bytes: + // Measured: `419` + // Estimated: `10243` + // Minimum execution time: 33_636_000 picoseconds. + Weight::from_parts(34_125_000, 10243) + .saturating_add(RocksDbWeight::get().reads(3_u64)) + .saturating_add(RocksDbWeight::get().writes(3_u64)) } -} +} \ No newline at end of file diff --git a/pallets/erc20-xcm-bridge/src/erc20_matcher.rs b/pallets/erc20-xcm-bridge/src/erc20_matcher.rs index 56ed736282..6bdb26eeb2 100644 --- a/pallets/erc20-xcm-bridge/src/erc20_matcher.rs +++ b/pallets/erc20-xcm-bridge/src/erc20_matcher.rs @@ -31,7 +31,7 @@ impl> MatchesFungibles fn matches_fungibles(multiasset: &MultiAsset) -> Result<(H160, U256), MatchError> { let (amount, id) = match (&multiasset.fun, &multiasset.id) { (Fungible(ref amount), Concrete(ref id)) => (amount, id), - _ => return Err(MatchError::AssetNotFound), + _ => return Err(MatchError::AssetNotHandled), }; let contract_address = Self::matches_erc20_multilocation(id) .map_err(|_| MatchError::AssetIdConversionFailed)?; diff --git a/pallets/erc20-xcm-bridge/src/lib.rs b/pallets/erc20-xcm-bridge/src/lib.rs index 69114e98d2..e15d06e045 100644 --- a/pallets/erc20-xcm-bridge/src/lib.rs +++ b/pallets/erc20-xcm-bridge/src/lib.rs @@ -66,8 +66,9 @@ pub mod pallet { Erc20Matcher::::is_erc20_asset(asset) } pub fn weight_of_erc20_transfer() -> Weight { - Weight::from_ref_time( + Weight::from_parts( T::Erc20TransferGasLimit::get().saturating_mul(T::WeightPerGas::get().ref_time()), + 0, ) } fn erc20_transfer( diff --git a/pallets/ethereum-xcm/src/mock.rs b/pallets/ethereum-xcm/src/mock.rs index 1330ab79bf..ac9c528d8c 100644 --- a/pallets/ethereum-xcm/src/mock.rs +++ b/pallets/ethereum-xcm/src/mock.rs @@ -33,7 +33,7 @@ use sp_runtime::{ }; use super::*; -use pallet_ethereum::IntermediateStateRoot; +use pallet_ethereum::{IntermediateStateRoot, PostLogContent}; use sp_runtime::{ traits::DispatchInfoOf, transaction_validity::{TransactionValidity, TransactionValidityError}, @@ -64,7 +64,7 @@ frame_support::construct_runtime! { parameter_types! { pub const BlockHashCount: u32 = 250; pub BlockWeights: frame_system::limits::BlockWeights = - frame_system::limits::BlockWeights::simple_max(Weight::from_ref_time(1024)); + frame_system::limits::BlockWeights::simple_max(Weight::from_parts(1024, 1)); } impl frame_system::Config for Test { @@ -146,7 +146,7 @@ parameter_types! { pub const ChainId: u64 = 42; pub const EVMModuleId: PalletId = PalletId(*b"py/evmpa"); pub const BlockGasLimit: U256 = U256::MAX; - pub WeightPerGas: Weight = Weight::from_ref_time(1); + pub WeightPerGas: Weight = Weight::from_parts(1, 0); } pub struct HashedAddressMapping; @@ -179,13 +179,18 @@ impl pallet_evm::Config for Test { type OnCreate = (); } +parameter_types! { + pub const PostBlockAndTxnHashes: PostLogContent = PostLogContent::BlockAndTxnHashes; +} + impl pallet_ethereum::Config for Test { type RuntimeEvent = RuntimeEvent; type StateRoot = IntermediateStateRoot; + type PostLogContent = PostBlockAndTxnHashes; } parameter_types! { - pub ReservedXcmpWeight: Weight = Weight::from_ref_time(u64::max_value()); + pub ReservedXcmpWeight: Weight = Weight::from_parts(u64::max_value(), 1); } #[derive( diff --git a/pallets/maintenance-mode/src/mock.rs b/pallets/maintenance-mode/src/mock.rs index d1834e5542..2fe1093dd1 100644 --- a/pallets/maintenance-mode/src/mock.rs +++ b/pallets/maintenance-mode/src/mock.rs @@ -55,7 +55,7 @@ construct_runtime!( parameter_types! { pub const BlockHashCount: u32 = 250; - pub const MaximumBlockWeight: Weight = Weight::from_ref_time(1024); + pub const MaximumBlockWeight: Weight = Weight::from_parts(1024, 1); pub const MaximumBlockLength: u32 = 2 * 1024; pub const AvailableBlockRatio: Perbill = Perbill::one(); pub const SS58Prefix: u8 = 42; @@ -104,7 +104,7 @@ impl DmpMessageHandler for MaintenanceDmpHandler { _iter: impl Iterator)>, _limit: Weight, ) -> Weight { - return Weight::from_ref_time(1); + return Weight::from_parts(1, 0); } } @@ -136,7 +136,6 @@ pub mod mock_pallet_maintenance_hooks { } #[pallet::pallet] - #[pallet::generate_store(pub(super) trait Store)] pub struct Pallet(_); #[pallet::call] @@ -165,7 +164,7 @@ impl OnInitialize for MaintenanceHooks { MockPalletMaintenanceHooks::deposit_event( mock_pallet_maintenance_hooks::Event::MaintenanceOnInitialize, ); - Weight::from_ref_time(1) + Weight::from_parts(1, 0) } } @@ -174,7 +173,7 @@ impl OnIdle for MaintenanceHooks { MockPalletMaintenanceHooks::deposit_event( mock_pallet_maintenance_hooks::Event::MaintenanceOnIdle, ); - Weight::from_ref_time(1) + Weight::from_parts(1, 0) } } @@ -183,7 +182,7 @@ impl OnRuntimeUpgrade for MaintenanceHooks { MockPalletMaintenanceHooks::deposit_event( mock_pallet_maintenance_hooks::Event::MaintenanceOnRuntimeUpgrade, ); - Weight::from_ref_time(1) + Weight::from_parts(1, 0) } } diff --git a/pallets/maintenance-mode/src/tests.rs b/pallets/maintenance-mode/src/tests.rs index 592f176018..b1021f3dff 100644 --- a/pallets/maintenance-mode/src/tests.rs +++ b/pallets/maintenance-mode/src/tests.rs @@ -133,7 +133,7 @@ fn normal_dmp_in_non_maintenance() { .build() .execute_with(|| { assert_eq!( - MaintenanceMode::handle_dmp_messages(vec![].into_iter(), Weight::from_ref_time(1)), + MaintenanceMode::handle_dmp_messages(vec![].into_iter(), Weight::from_parts(1, 0)), Weight::zero() ); }) @@ -147,8 +147,8 @@ fn maintenance_dmp_in_maintenance() { .build() .execute_with(|| { assert_eq!( - MaintenanceMode::handle_dmp_messages(vec![].into_iter(), Weight::from_ref_time(1)), - Weight::from_ref_time(1) + MaintenanceMode::handle_dmp_messages(vec![].into_iter(), Weight::from_parts(1, 0)), + Weight::from_parts(1, 0) ); }) } @@ -189,15 +189,15 @@ fn maintenance_hooks_in_maintenance() { .execute_with(|| { assert_eq!( ExecutiveHooks::::on_idle(0, Weight::zero()), - Weight::from_ref_time(1) + Weight::from_parts(1, 0) ); assert_eq!( ExecutiveHooks::::on_initialize(0), - Weight::from_ref_time(1) + Weight::from_parts(1, 0) ); assert_eq!( ExecutiveHooks::::on_runtime_upgrade(), - Weight::from_ref_time(1) + Weight::from_parts(1, 0) ); ExecutiveHooks::::on_finalize(0); diff --git a/pallets/migrations/src/mock.rs b/pallets/migrations/src/mock.rs index a4f7500d0d..948f9a5904 100644 --- a/pallets/migrations/src/mock.rs +++ b/pallets/migrations/src/mock.rs @@ -58,7 +58,7 @@ construct_runtime!( parameter_types! { pub const BlockHashCount: u32 = 250; - pub const MaximumBlockWeight: Weight = Weight::from_ref_time(1024); + pub const MaximumBlockWeight: Weight = Weight::from_parts(1024, 1); pub const MaximumBlockLength: u32 = 2 * 1024; pub const AvailableBlockRatio: Perbill = Perbill::one(); pub const SS58Prefix: u8 = 42; @@ -148,6 +148,7 @@ impl pallet_democracy::Config for Runtime { type Preimages = Preimage; type MaxDeposits = ConstU32<1000>; type MaxBlacklisted = ConstU32<5>; + type SubmitOrigin = EnsureSigned; } impl pallet_scheduler::Config for Runtime { type RuntimeEvent = RuntimeEvent; diff --git a/pallets/migrations/src/tests.rs b/pallets/migrations/src/tests.rs index 4c8e9280fa..cf3a2d5e05 100644 --- a/pallets/migrations/src/tests.rs +++ b/pallets/migrations/src/tests.rs @@ -113,7 +113,7 @@ fn on_runtime_upgrade_emits_events() { let expected = vec![ Event::RuntimeUpgradeStarted(), Event::RuntimeUpgradeCompleted { - weight: Weight::from_ref_time(100000000u64), + weight: Weight::from_parts(100000000u64, 0), }, ]; assert_eq!(events(), expected); @@ -139,7 +139,7 @@ fn migration_should_only_be_invoked_once() { move |_| -> Weight { let mut num_step_fn_calls = num_step_fn_calls.lock().unwrap(); *num_step_fn_calls += 1; - Weight::from_ref_time(1) + Weight::from_parts(1, 0) }, ); }, @@ -170,10 +170,10 @@ fn migration_should_only_be_invoked_once() { }, Event::MigrationCompleted { migration_name: "migration1".into(), - consumed_weight: Weight::from_ref_time(1), + consumed_weight: Weight::from_parts(1, 0), }, Event::RuntimeUpgradeCompleted { - weight: Weight::from_ref_time(100000001u64), + weight: Weight::from_parts(100000001u64, 0), }, // includes reads/writes ]; assert_eq!(events(), expected); @@ -197,7 +197,7 @@ fn migration_should_only_be_invoked_once() { expected.append(&mut vec![ Event::RuntimeUpgradeStarted(), Event::RuntimeUpgradeCompleted { - weight: Weight::from_ref_time(100000000u64), + weight: Weight::from_parts(100000000u64, 0), }, ]); assert_eq!(events(), expected); @@ -258,7 +258,7 @@ fn overweight_migrations_tolerated() { *num_migration1_calls.lock().unwrap() += 1; // TODO: this is brittle because it assumes it is larger than the value used at // the top of process_runtime_upgrades() - Weight::from_ref_time(1_000_000_000_000u64) + Weight::from_parts(1_000_000_000_000u64, 0) }, ); @@ -266,7 +266,7 @@ fn overweight_migrations_tolerated() { move || "migration2", move |_| -> Weight { *num_migration2_calls.lock().unwrap() += 1; - Weight::from_ref_time(1_000_000_000_000u64) + Weight::from_parts(1_000_000_000_000u64, 0) }, ); @@ -274,7 +274,7 @@ fn overweight_migrations_tolerated() { move || "migration3", move |_| -> Weight { *num_migration3_calls.lock().unwrap() += 1; - Weight::from_ref_time(1_000_000_000_000u64) + Weight::from_parts(1_000_000_000_000u64, 0) }, ); }, diff --git a/pallets/migrations/src/weights.rs b/pallets/migrations/src/weights.rs index dae53de718..ac60c2e090 100644 --- a/pallets/migrations/src/weights.rs +++ b/pallets/migrations/src/weights.rs @@ -14,10 +14,13 @@ // You should have received a copy of the GNU General Public License // along with Moonbeam. If not, see . + //! Autogenerated weights for pallet_migrations //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-19, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2023-04-28, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `benchmarker`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: None, DB CACHE: 1024 // Executed Command: @@ -27,9 +30,9 @@ // --execution=wasm // --wasm-execution=compiled // --pallet -// pallet_migrations +// * // --extrinsic -// migrate_democracy_preimage +// * // --steps // 50 // --repeat @@ -38,50 +41,63 @@ // --json-file // raw.json // --output -// weights.rs +// weights/ +#![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] -use frame_support::{ - traits::Get, - weights::{constants::RocksDbWeight, Weight}, -}; +use frame_support::{traits::Get, weights::{Weight, constants::RocksDbWeight}}; use sp_std::marker::PhantomData; /// Weight functions needed for pallet_migrations. pub trait WeightInfo { - #[rustfmt::skip] fn migrate_democracy_preimage(x: u32, ) -> Weight; } /// Weights for pallet_migrations using the Substrate node and recommended hardware. pub struct SubstrateWeight(PhantomData); impl WeightInfo for SubstrateWeight { - // Storage: Preimage StatusFor (r:1 w:1) - // Storage: unknown [0xf2794c22e353e9a839f12faab03a911bf68967d635641a7087e53f2bff1ecad3] (r:1 w:1) - // Storage: Preimage PreimageFor (r:0 w:1) - #[rustfmt::skip] + /// Storage: Preimage StatusFor (r:1 w:1) + /// Proof: Preimage StatusFor (max_values: None, max_size: Some(79), added: 2554, mode: MaxEncodedLen) + /// Storage: unknown `0xf2794c22e353e9a839f12faab03a911bf68967d635641a7087e53f2bff1ecad3` (r:1 w:1) + /// Proof Skipped: unknown `0xf2794c22e353e9a839f12faab03a911bf68967d635641a7087e53f2bff1ecad3` (r:1 w:1) + /// Storage: Preimage PreimageFor (r:0 w:1) + /// Proof: Preimage PreimageFor (max_values: None, max_size: Some(4194344), added: 4196819, mode: MaxEncodedLen) + /// The range of component `x` is `[5, 100]`. fn migrate_democracy_preimage(x: u32, ) -> Weight { - Weight::from_ref_time(29_108_490 as u64) - // Standard Error: 994 - .saturating_add(Weight::from_ref_time(14_013 as u64).saturating_mul(x as u64)) - .saturating_add(T::DbWeight::get().reads(2 as u64)) - .saturating_add(T::DbWeight::get().writes(3 as u64)) + // Proof Size summary in bytes: + // Measured: `256 + x * (1 ±0)` + // Estimated: `7265 + x * (1 ±0)` + // Minimum execution time: 24_147_000 picoseconds. + Weight::from_parts(25_275_713, 7265) + // Standard Error: 467 + .saturating_add(Weight::from_parts(11, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(2_u64)) + .saturating_add(T::DbWeight::get().writes(3_u64)) + .saturating_add(Weight::from_parts(0, 1).saturating_mul(x.into())) } } // For backwards compatibility and tests impl WeightInfo for () { - // Storage: Preimage StatusFor (r:1 w:1) - // Storage: unknown [0xf2794c22e353e9a839f12faab03a911bf68967d635641a7087e53f2bff1ecad3] (r:1 w:1) - // Storage: Preimage PreimageFor (r:0 w:1) - #[rustfmt::skip] + /// Storage: Preimage StatusFor (r:1 w:1) + /// Proof: Preimage StatusFor (max_values: None, max_size: Some(79), added: 2554, mode: MaxEncodedLen) + /// Storage: unknown `0xf2794c22e353e9a839f12faab03a911bf68967d635641a7087e53f2bff1ecad3` (r:1 w:1) + /// Proof Skipped: unknown `0xf2794c22e353e9a839f12faab03a911bf68967d635641a7087e53f2bff1ecad3` (r:1 w:1) + /// Storage: Preimage PreimageFor (r:0 w:1) + /// Proof: Preimage PreimageFor (max_values: None, max_size: Some(4194344), added: 4196819, mode: MaxEncodedLen) + /// The range of component `x` is `[5, 100]`. fn migrate_democracy_preimage(x: u32, ) -> Weight { - Weight::from_ref_time(29_108_490 as u64) - // Standard Error: 994 - .saturating_add(Weight::from_ref_time(14_013 as u64).saturating_mul(x as u64)) - .saturating_add(RocksDbWeight::get().reads(2 as u64)) - .saturating_add(RocksDbWeight::get().writes(3 as u64)) + // Proof Size summary in bytes: + // Measured: `256 + x * (1 ±0)` + // Estimated: `7265 + x * (1 ±0)` + // Minimum execution time: 24_147_000 picoseconds. + Weight::from_parts(25_275_713, 7265) + // Standard Error: 467 + .saturating_add(Weight::from_parts(11, 0).saturating_mul(x.into())) + .saturating_add(RocksDbWeight::get().reads(2_u64)) + .saturating_add(RocksDbWeight::get().writes(3_u64)) + .saturating_add(Weight::from_parts(0, 1).saturating_mul(x.into())) } -} +} \ No newline at end of file diff --git a/pallets/moonbeam-orbiters/src/mock.rs b/pallets/moonbeam-orbiters/src/mock.rs index 2ab84cfc19..62c9fb3f3b 100644 --- a/pallets/moonbeam-orbiters/src/mock.rs +++ b/pallets/moonbeam-orbiters/src/mock.rs @@ -52,7 +52,7 @@ construct_runtime!( parameter_types! { pub const BlockHashCount: u32 = 250; - pub const MaximumBlockWeight: Weight = Weight::from_ref_time(1024); + pub const MaximumBlockWeight: Weight = Weight::from_parts(1024, 1); pub const MaximumBlockLength: u32 = 2 * 1024; pub const AvailableBlockRatio: Perbill = Perbill::one(); pub const SS58Prefix: u8 = 42; diff --git a/pallets/moonbeam-orbiters/src/weights.rs b/pallets/moonbeam-orbiters/src/weights.rs index a1af586866..34486db746 100644 --- a/pallets/moonbeam-orbiters/src/weights.rs +++ b/pallets/moonbeam-orbiters/src/weights.rs @@ -14,10 +14,13 @@ // You should have received a copy of the GNU General Public License // along with Moonbeam. If not, see . + //! Autogenerated weights for pallet_moonbeam_orbiters //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-19, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2023-04-28, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `benchmarker`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: None, DB CACHE: 1024 // Executed Command: @@ -38,230 +41,342 @@ // --json-file // raw.json // --output -// ./tmp/ +// weights/ +#![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] -use frame_support::{ - traits::Get, - weights::{constants::RocksDbWeight, Weight}, -}; +use frame_support::{traits::Get, weights::{Weight, constants::RocksDbWeight}}; use sp_std::marker::PhantomData; /// Weight functions needed for pallet_moonbeam_orbiters. pub trait WeightInfo { - #[rustfmt::skip] fn collator_add_orbiter() -> Weight; - #[rustfmt::skip] fn collator_remove_orbiter() -> Weight; - #[rustfmt::skip] fn orbiter_leave_collator_pool() -> Weight; - #[rustfmt::skip] fn orbiter_register() -> Weight; - #[rustfmt::skip] fn orbiter_unregister(n: u32, ) -> Weight; - #[rustfmt::skip] fn add_collator() -> Weight; - #[rustfmt::skip] fn remove_collator() -> Weight; - #[rustfmt::skip] fn on_initialize(x: u32, ) -> Weight; - #[rustfmt::skip] fn distribute_rewards() -> Weight; - #[rustfmt::skip] fn on_new_round() -> Weight; } /// Weights for pallet_moonbeam_orbiters using the Substrate node and recommended hardware. pub struct SubstrateWeight(PhantomData); impl WeightInfo for SubstrateWeight { - // Storage: MoonbeamOrbiters CollatorsPool (r:1 w:1) - // Storage: Balances Reserves (r:1 w:0) - #[rustfmt::skip] + /// Storage: MoonbeamOrbiters CollatorsPool (r:1 w:1) + /// Proof Skipped: MoonbeamOrbiters CollatorsPool (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Reserves (r:1 w:0) + /// Proof: Balances Reserves (max_values: None, max_size: Some(1037), added: 3512, mode: MaxEncodedLen) fn collator_add_orbiter() -> Weight { - Weight::from_ref_time(47_129_000 as u64) - .saturating_add(T::DbWeight::get().reads(2 as u64)) - .saturating_add(T::DbWeight::get().writes(1 as u64)) + // Proof Size summary in bytes: + // Measured: `524` + // Estimated: `8491` + // Minimum execution time: 31_294_000 picoseconds. + Weight::from_parts(31_664_000, 8491) + .saturating_add(T::DbWeight::get().reads(2_u64)) + .saturating_add(T::DbWeight::get().writes(1_u64)) } - // Storage: MoonbeamOrbiters CollatorsPool (r:1 w:1) - #[rustfmt::skip] + /// Storage: MoonbeamOrbiters CollatorsPool (r:1 w:1) + /// Proof Skipped: MoonbeamOrbiters CollatorsPool (max_values: None, max_size: None, mode: Measured) fn collator_remove_orbiter() -> Weight { - Weight::from_ref_time(40_774_000 as u64) - .saturating_add(T::DbWeight::get().reads(1 as u64)) - .saturating_add(T::DbWeight::get().writes(1 as u64)) + // Proof Size summary in bytes: + // Measured: `328` + // Estimated: `3793` + // Minimum execution time: 25_918_000 picoseconds. + Weight::from_parts(26_844_000, 3793) + .saturating_add(T::DbWeight::get().reads(1_u64)) + .saturating_add(T::DbWeight::get().writes(1_u64)) } - // Storage: MoonbeamOrbiters CollatorsPool (r:1 w:1) - #[rustfmt::skip] + /// Storage: MoonbeamOrbiters CollatorsPool (r:1 w:1) + /// Proof Skipped: MoonbeamOrbiters CollatorsPool (max_values: None, max_size: None, mode: Measured) fn orbiter_leave_collator_pool() -> Weight { - Weight::from_ref_time(39_782_000 as u64) - .saturating_add(T::DbWeight::get().reads(1 as u64)) - .saturating_add(T::DbWeight::get().writes(1 as u64)) + // Proof Size summary in bytes: + // Measured: `328` + // Estimated: `3793` + // Minimum execution time: 26_301_000 picoseconds. + Weight::from_parts(26_924_000, 3793) + .saturating_add(T::DbWeight::get().reads(1_u64)) + .saturating_add(T::DbWeight::get().writes(1_u64)) } - // Storage: MoonbeamOrbiters MinOrbiterDeposit (r:1 w:0) - // Storage: Balances Reserves (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: MoonbeamOrbiters RegisteredOrbiter (r:0 w:1) - #[rustfmt::skip] + /// Storage: MoonbeamOrbiters MinOrbiterDeposit (r:1 w:0) + /// Proof Skipped: MoonbeamOrbiters MinOrbiterDeposit (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Balances Reserves (r:1 w:1) + /// Proof: Balances Reserves (max_values: None, max_size: Some(1037), added: 3512, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: MoonbeamOrbiters RegisteredOrbiter (r:0 w:1) + /// Proof Skipped: MoonbeamOrbiters RegisteredOrbiter (max_values: None, max_size: None, mode: Measured) fn orbiter_register() -> Weight { - Weight::from_ref_time(57_964_000 as u64) - .saturating_add(T::DbWeight::get().reads(3 as u64)) - .saturating_add(T::DbWeight::get().writes(3 as u64)) + // Proof Size summary in bytes: + // Measured: `244` + // Estimated: `10056` + // Minimum execution time: 40_518_000 picoseconds. + Weight::from_parts(40_919_000, 10056) + .saturating_add(T::DbWeight::get().reads(3_u64)) + .saturating_add(T::DbWeight::get().writes(3_u64)) } - // Storage: MoonbeamOrbiters CounterForCollatorsPool (r:1 w:0) - // Storage: MoonbeamOrbiters CollatorsPool (r:1 w:0) - // Storage: Balances Reserves (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: MoonbeamOrbiters RegisteredOrbiter (r:0 w:1) - #[rustfmt::skip] + /// Storage: MoonbeamOrbiters CounterForCollatorsPool (r:1 w:0) + /// Proof: MoonbeamOrbiters CounterForCollatorsPool (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: MoonbeamOrbiters CollatorsPool (r:101 w:0) + /// Proof Skipped: MoonbeamOrbiters CollatorsPool (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Reserves (r:1 w:1) + /// Proof: Balances Reserves (max_values: None, max_size: Some(1037), added: 3512, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: MoonbeamOrbiters RegisteredOrbiter (r:0 w:1) + /// Proof Skipped: MoonbeamOrbiters RegisteredOrbiter (max_values: None, max_size: None, mode: Measured) + /// The range of component `n` is `[0, 100]`. fn orbiter_unregister(n: u32, ) -> Weight { - Weight::from_ref_time(62_482_870 as u64) - // Standard Error: 8_132 - .saturating_add(Weight::from_ref_time(6_912_586 as u64).saturating_mul(n as u64)) - .saturating_add(T::DbWeight::get().reads(4 as u64)) - .saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(n as u64))) - .saturating_add(T::DbWeight::get().writes(3 as u64)) + // Proof Size summary in bytes: + // Measured: `353 + n * (48 ±0)` + // Estimated: `13741 + n * (2573 ±0)` + // Minimum execution time: 47_306_000 picoseconds. + Weight::from_parts(54_887_856, 13741) + // Standard Error: 4_642 + .saturating_add(Weight::from_parts(3_748_717, 0).saturating_mul(n.into())) + .saturating_add(T::DbWeight::get().reads(4_u64)) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(n.into()))) + .saturating_add(T::DbWeight::get().writes(3_u64)) + .saturating_add(Weight::from_parts(0, 2573).saturating_mul(n.into())) } - // Storage: MoonbeamOrbiters CollatorsPool (r:1 w:1) - // Storage: MoonbeamOrbiters CounterForCollatorsPool (r:1 w:1) - #[rustfmt::skip] + /// Storage: MoonbeamOrbiters CollatorsPool (r:1 w:1) + /// Proof Skipped: MoonbeamOrbiters CollatorsPool (max_values: None, max_size: None, mode: Measured) + /// Storage: MoonbeamOrbiters CounterForCollatorsPool (r:1 w:1) + /// Proof: MoonbeamOrbiters CounterForCollatorsPool (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) fn add_collator() -> Weight { - Weight::from_ref_time(24_099_000 as u64) - .saturating_add(T::DbWeight::get().reads(2 as u64)) - .saturating_add(T::DbWeight::get().writes(2 as u64)) + // Proof Size summary in bytes: + // Measured: `44` + // Estimated: `4998` + // Minimum execution time: 16_308_000 picoseconds. + Weight::from_parts(16_486_000, 4998) + .saturating_add(T::DbWeight::get().reads(2_u64)) + .saturating_add(T::DbWeight::get().writes(2_u64)) } - // Storage: MoonbeamOrbiters CollatorsPool (r:1 w:1) - // Storage: MoonbeamOrbiters CounterForCollatorsPool (r:1 w:1) - // Storage: MoonbeamOrbiters AccountLookupOverride (r:0 w:9) - #[rustfmt::skip] + /// Storage: MoonbeamOrbiters CollatorsPool (r:1 w:1) + /// Proof Skipped: MoonbeamOrbiters CollatorsPool (max_values: None, max_size: None, mode: Measured) + /// Storage: MoonbeamOrbiters CounterForCollatorsPool (r:1 w:1) + /// Proof: MoonbeamOrbiters CounterForCollatorsPool (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: MoonbeamOrbiters AccountLookupOverride (r:0 w:9) + /// Proof Skipped: MoonbeamOrbiters AccountLookupOverride (max_values: None, max_size: None, mode: Measured) fn remove_collator() -> Weight { - Weight::from_ref_time(39_193_000 as u64) - .saturating_add(T::DbWeight::get().reads(2 as u64)) - .saturating_add(T::DbWeight::get().writes(11 as u64)) + // Proof Size summary in bytes: + // Measured: `328` + // Estimated: `5610` + // Minimum execution time: 31_542_000 picoseconds. + Weight::from_parts(31_858_000, 5610) + .saturating_add(T::DbWeight::get().reads(2_u64)) + .saturating_add(T::DbWeight::get().writes(11_u64)) } - // Storage: MoonbeamOrbiters CurrentRound (r:1 w:0) - // Storage: MoonbeamOrbiters OrbiterPerRound (r:0 w:2) - #[rustfmt::skip] + /// Storage: MoonbeamOrbiters CurrentRound (r:1 w:0) + /// Proof Skipped: MoonbeamOrbiters CurrentRound (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: MoonbeamOrbiters OrbiterPerRound (r:100 w:100) + /// Proof Skipped: MoonbeamOrbiters OrbiterPerRound (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[0, 100]`. fn on_initialize(x: u32, ) -> Weight { - Weight::from_ref_time(20_040_331 as u64) - // Standard Error: 1_234 - .saturating_add(Weight::from_ref_time(1_018_554 as u64).saturating_mul(x as u64)) - .saturating_add(T::DbWeight::get().reads(1 as u64)) - .saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(x as u64))) + // Proof Size summary in bytes: + // Measured: `102 + x * (61 ±0)` + // Estimated: `2680 + x * (2599 ±0)` + // Minimum execution time: 9_606_000 picoseconds. + Weight::from_parts(11_256_743, 2680) + // Standard Error: 1_440 + .saturating_add(Weight::from_parts(900_084, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(1_u64)) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(x.into()))) + .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(x.into()))) + .saturating_add(Weight::from_parts(0, 2599).saturating_mul(x.into())) } - // Storage: MoonbeamOrbiters OrbiterPerRound (r:1 w:1) - // Storage: System Account (r:1 w:1) - #[rustfmt::skip] + /// Storage: MoonbeamOrbiters OrbiterPerRound (r:1 w:1) + /// Proof Skipped: MoonbeamOrbiters OrbiterPerRound (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) fn distribute_rewards() -> Weight { - Weight::from_ref_time(43_995_000 as u64) - .saturating_add(T::DbWeight::get().reads(2 as u64)) - .saturating_add(T::DbWeight::get().writes(2 as u64)) + // Proof Size summary in bytes: + // Measured: `260` + // Estimated: `7306` + // Minimum execution time: 30_886_000 picoseconds. + Weight::from_parts(31_289_000, 7306) + .saturating_add(T::DbWeight::get().reads(2_u64)) + .saturating_add(T::DbWeight::get().writes(2_u64)) } - // Storage: MoonbeamOrbiters ForceRotation (r:1 w:1) - // Storage: MoonbeamOrbiters CollatorsPool (r:2 w:1) - // Storage: MoonbeamOrbiters OrbiterPerRound (r:0 w:3) - // Storage: MoonbeamOrbiters AccountLookupOverride (r:0 w:3) - // Storage: MoonbeamOrbiters CurrentRound (r:0 w:1) - #[rustfmt::skip] + /// Storage: MoonbeamOrbiters ForceRotation (r:1 w:1) + /// Proof Skipped: MoonbeamOrbiters ForceRotation (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: MoonbeamOrbiters CollatorsPool (r:2 w:1) + /// Proof Skipped: MoonbeamOrbiters CollatorsPool (max_values: None, max_size: None, mode: Measured) + /// Storage: MoonbeamOrbiters OrbiterPerRound (r:0 w:3) + /// Proof Skipped: MoonbeamOrbiters OrbiterPerRound (max_values: None, max_size: None, mode: Measured) + /// Storage: MoonbeamOrbiters AccountLookupOverride (r:0 w:3) + /// Proof Skipped: MoonbeamOrbiters AccountLookupOverride (max_values: None, max_size: None, mode: Measured) + /// Storage: MoonbeamOrbiters CurrentRound (r:0 w:1) + /// Proof Skipped: MoonbeamOrbiters CurrentRound (max_values: Some(1), max_size: None, mode: Measured) fn on_new_round() -> Weight { - Weight::from_ref_time(52_427_000 as u64) - .saturating_add(T::DbWeight::get().reads(3 as u64)) - .saturating_add(T::DbWeight::get().writes(9 as u64)) + // Proof Size summary in bytes: + // Measured: `218` + // Estimated: `8515` + // Minimum execution time: 40_065_000 picoseconds. + Weight::from_parts(40_509_000, 8515) + .saturating_add(T::DbWeight::get().reads(3_u64)) + .saturating_add(T::DbWeight::get().writes(9_u64)) } } // For backwards compatibility and tests impl WeightInfo for () { - // Storage: MoonbeamOrbiters CollatorsPool (r:1 w:1) - // Storage: Balances Reserves (r:1 w:0) - #[rustfmt::skip] + /// Storage: MoonbeamOrbiters CollatorsPool (r:1 w:1) + /// Proof Skipped: MoonbeamOrbiters CollatorsPool (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Reserves (r:1 w:0) + /// Proof: Balances Reserves (max_values: None, max_size: Some(1037), added: 3512, mode: MaxEncodedLen) fn collator_add_orbiter() -> Weight { - Weight::from_ref_time(47_129_000 as u64) - .saturating_add(RocksDbWeight::get().reads(2 as u64)) - .saturating_add(RocksDbWeight::get().writes(1 as u64)) + // Proof Size summary in bytes: + // Measured: `524` + // Estimated: `8491` + // Minimum execution time: 31_294_000 picoseconds. + Weight::from_parts(31_664_000, 8491) + .saturating_add(RocksDbWeight::get().reads(2_u64)) + .saturating_add(RocksDbWeight::get().writes(1_u64)) } - // Storage: MoonbeamOrbiters CollatorsPool (r:1 w:1) - #[rustfmt::skip] + /// Storage: MoonbeamOrbiters CollatorsPool (r:1 w:1) + /// Proof Skipped: MoonbeamOrbiters CollatorsPool (max_values: None, max_size: None, mode: Measured) fn collator_remove_orbiter() -> Weight { - Weight::from_ref_time(40_774_000 as u64) - .saturating_add(RocksDbWeight::get().reads(1 as u64)) - .saturating_add(RocksDbWeight::get().writes(1 as u64)) + // Proof Size summary in bytes: + // Measured: `328` + // Estimated: `3793` + // Minimum execution time: 25_918_000 picoseconds. + Weight::from_parts(26_844_000, 3793) + .saturating_add(RocksDbWeight::get().reads(1_u64)) + .saturating_add(RocksDbWeight::get().writes(1_u64)) } - // Storage: MoonbeamOrbiters CollatorsPool (r:1 w:1) - #[rustfmt::skip] + /// Storage: MoonbeamOrbiters CollatorsPool (r:1 w:1) + /// Proof Skipped: MoonbeamOrbiters CollatorsPool (max_values: None, max_size: None, mode: Measured) fn orbiter_leave_collator_pool() -> Weight { - Weight::from_ref_time(39_782_000 as u64) - .saturating_add(RocksDbWeight::get().reads(1 as u64)) - .saturating_add(RocksDbWeight::get().writes(1 as u64)) + // Proof Size summary in bytes: + // Measured: `328` + // Estimated: `3793` + // Minimum execution time: 26_301_000 picoseconds. + Weight::from_parts(26_924_000, 3793) + .saturating_add(RocksDbWeight::get().reads(1_u64)) + .saturating_add(RocksDbWeight::get().writes(1_u64)) } - // Storage: MoonbeamOrbiters MinOrbiterDeposit (r:1 w:0) - // Storage: Balances Reserves (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: MoonbeamOrbiters RegisteredOrbiter (r:0 w:1) - #[rustfmt::skip] + /// Storage: MoonbeamOrbiters MinOrbiterDeposit (r:1 w:0) + /// Proof Skipped: MoonbeamOrbiters MinOrbiterDeposit (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Balances Reserves (r:1 w:1) + /// Proof: Balances Reserves (max_values: None, max_size: Some(1037), added: 3512, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: MoonbeamOrbiters RegisteredOrbiter (r:0 w:1) + /// Proof Skipped: MoonbeamOrbiters RegisteredOrbiter (max_values: None, max_size: None, mode: Measured) fn orbiter_register() -> Weight { - Weight::from_ref_time(57_964_000 as u64) - .saturating_add(RocksDbWeight::get().reads(3 as u64)) - .saturating_add(RocksDbWeight::get().writes(3 as u64)) + // Proof Size summary in bytes: + // Measured: `244` + // Estimated: `10056` + // Minimum execution time: 40_518_000 picoseconds. + Weight::from_parts(40_919_000, 10056) + .saturating_add(RocksDbWeight::get().reads(3_u64)) + .saturating_add(RocksDbWeight::get().writes(3_u64)) } - // Storage: MoonbeamOrbiters CounterForCollatorsPool (r:1 w:0) - // Storage: MoonbeamOrbiters CollatorsPool (r:1 w:0) - // Storage: Balances Reserves (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: MoonbeamOrbiters RegisteredOrbiter (r:0 w:1) - #[rustfmt::skip] + /// Storage: MoonbeamOrbiters CounterForCollatorsPool (r:1 w:0) + /// Proof: MoonbeamOrbiters CounterForCollatorsPool (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: MoonbeamOrbiters CollatorsPool (r:101 w:0) + /// Proof Skipped: MoonbeamOrbiters CollatorsPool (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Reserves (r:1 w:1) + /// Proof: Balances Reserves (max_values: None, max_size: Some(1037), added: 3512, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: MoonbeamOrbiters RegisteredOrbiter (r:0 w:1) + /// Proof Skipped: MoonbeamOrbiters RegisteredOrbiter (max_values: None, max_size: None, mode: Measured) + /// The range of component `n` is `[0, 100]`. fn orbiter_unregister(n: u32, ) -> Weight { - Weight::from_ref_time(62_482_870 as u64) - // Standard Error: 8_132 - .saturating_add(Weight::from_ref_time(6_912_586 as u64).saturating_mul(n as u64)) - .saturating_add(RocksDbWeight::get().reads(4 as u64)) - .saturating_add(RocksDbWeight::get().reads((1 as u64).saturating_mul(n as u64))) - .saturating_add(RocksDbWeight::get().writes(3 as u64)) + // Proof Size summary in bytes: + // Measured: `353 + n * (48 ±0)` + // Estimated: `13741 + n * (2573 ±0)` + // Minimum execution time: 47_306_000 picoseconds. + Weight::from_parts(54_887_856, 13741) + // Standard Error: 4_642 + .saturating_add(Weight::from_parts(3_748_717, 0).saturating_mul(n.into())) + .saturating_add(RocksDbWeight::get().reads(4_u64)) + .saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(n.into()))) + .saturating_add(RocksDbWeight::get().writes(3_u64)) + .saturating_add(Weight::from_parts(0, 2573).saturating_mul(n.into())) } - // Storage: MoonbeamOrbiters CollatorsPool (r:1 w:1) - // Storage: MoonbeamOrbiters CounterForCollatorsPool (r:1 w:1) - #[rustfmt::skip] + /// Storage: MoonbeamOrbiters CollatorsPool (r:1 w:1) + /// Proof Skipped: MoonbeamOrbiters CollatorsPool (max_values: None, max_size: None, mode: Measured) + /// Storage: MoonbeamOrbiters CounterForCollatorsPool (r:1 w:1) + /// Proof: MoonbeamOrbiters CounterForCollatorsPool (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) fn add_collator() -> Weight { - Weight::from_ref_time(24_099_000 as u64) - .saturating_add(RocksDbWeight::get().reads(2 as u64)) - .saturating_add(RocksDbWeight::get().writes(2 as u64)) + // Proof Size summary in bytes: + // Measured: `44` + // Estimated: `4998` + // Minimum execution time: 16_308_000 picoseconds. + Weight::from_parts(16_486_000, 4998) + .saturating_add(RocksDbWeight::get().reads(2_u64)) + .saturating_add(RocksDbWeight::get().writes(2_u64)) } - // Storage: MoonbeamOrbiters CollatorsPool (r:1 w:1) - // Storage: MoonbeamOrbiters CounterForCollatorsPool (r:1 w:1) - // Storage: MoonbeamOrbiters AccountLookupOverride (r:0 w:9) - #[rustfmt::skip] + /// Storage: MoonbeamOrbiters CollatorsPool (r:1 w:1) + /// Proof Skipped: MoonbeamOrbiters CollatorsPool (max_values: None, max_size: None, mode: Measured) + /// Storage: MoonbeamOrbiters CounterForCollatorsPool (r:1 w:1) + /// Proof: MoonbeamOrbiters CounterForCollatorsPool (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: MoonbeamOrbiters AccountLookupOverride (r:0 w:9) + /// Proof Skipped: MoonbeamOrbiters AccountLookupOverride (max_values: None, max_size: None, mode: Measured) fn remove_collator() -> Weight { - Weight::from_ref_time(39_193_000 as u64) - .saturating_add(RocksDbWeight::get().reads(2 as u64)) - .saturating_add(RocksDbWeight::get().writes(11 as u64)) + // Proof Size summary in bytes: + // Measured: `328` + // Estimated: `5610` + // Minimum execution time: 31_542_000 picoseconds. + Weight::from_parts(31_858_000, 5610) + .saturating_add(RocksDbWeight::get().reads(2_u64)) + .saturating_add(RocksDbWeight::get().writes(11_u64)) } - // Storage: MoonbeamOrbiters CurrentRound (r:1 w:0) - // Storage: MoonbeamOrbiters OrbiterPerRound (r:0 w:2) - #[rustfmt::skip] + /// Storage: MoonbeamOrbiters CurrentRound (r:1 w:0) + /// Proof Skipped: MoonbeamOrbiters CurrentRound (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: MoonbeamOrbiters OrbiterPerRound (r:100 w:100) + /// Proof Skipped: MoonbeamOrbiters OrbiterPerRound (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[0, 100]`. fn on_initialize(x: u32, ) -> Weight { - Weight::from_ref_time(20_040_331 as u64) - // Standard Error: 1_234 - .saturating_add(Weight::from_ref_time(1_018_554 as u64).saturating_mul(x as u64)) - .saturating_add(RocksDbWeight::get().reads(1 as u64)) - .saturating_add(RocksDbWeight::get().writes((1 as u64).saturating_mul(x as u64))) + // Proof Size summary in bytes: + // Measured: `102 + x * (61 ±0)` + // Estimated: `2680 + x * (2599 ±0)` + // Minimum execution time: 9_606_000 picoseconds. + Weight::from_parts(11_256_743, 2680) + // Standard Error: 1_440 + .saturating_add(Weight::from_parts(900_084, 0).saturating_mul(x.into())) + .saturating_add(RocksDbWeight::get().reads(1_u64)) + .saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(x.into()))) + .saturating_add(RocksDbWeight::get().writes((1_u64).saturating_mul(x.into()))) + .saturating_add(Weight::from_parts(0, 2599).saturating_mul(x.into())) } - // Storage: MoonbeamOrbiters OrbiterPerRound (r:1 w:1) - // Storage: System Account (r:1 w:1) - #[rustfmt::skip] + /// Storage: MoonbeamOrbiters OrbiterPerRound (r:1 w:1) + /// Proof Skipped: MoonbeamOrbiters OrbiterPerRound (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) fn distribute_rewards() -> Weight { - Weight::from_ref_time(43_995_000 as u64) - .saturating_add(RocksDbWeight::get().reads(2 as u64)) - .saturating_add(RocksDbWeight::get().writes(2 as u64)) + // Proof Size summary in bytes: + // Measured: `260` + // Estimated: `7306` + // Minimum execution time: 30_886_000 picoseconds. + Weight::from_parts(31_289_000, 7306) + .saturating_add(RocksDbWeight::get().reads(2_u64)) + .saturating_add(RocksDbWeight::get().writes(2_u64)) } - // Storage: MoonbeamOrbiters ForceRotation (r:1 w:1) - // Storage: MoonbeamOrbiters CollatorsPool (r:2 w:1) - // Storage: MoonbeamOrbiters OrbiterPerRound (r:0 w:3) - // Storage: MoonbeamOrbiters AccountLookupOverride (r:0 w:3) - // Storage: MoonbeamOrbiters CurrentRound (r:0 w:1) - #[rustfmt::skip] + /// Storage: MoonbeamOrbiters ForceRotation (r:1 w:1) + /// Proof Skipped: MoonbeamOrbiters ForceRotation (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: MoonbeamOrbiters CollatorsPool (r:2 w:1) + /// Proof Skipped: MoonbeamOrbiters CollatorsPool (max_values: None, max_size: None, mode: Measured) + /// Storage: MoonbeamOrbiters OrbiterPerRound (r:0 w:3) + /// Proof Skipped: MoonbeamOrbiters OrbiterPerRound (max_values: None, max_size: None, mode: Measured) + /// Storage: MoonbeamOrbiters AccountLookupOverride (r:0 w:3) + /// Proof Skipped: MoonbeamOrbiters AccountLookupOverride (max_values: None, max_size: None, mode: Measured) + /// Storage: MoonbeamOrbiters CurrentRound (r:0 w:1) + /// Proof Skipped: MoonbeamOrbiters CurrentRound (max_values: Some(1), max_size: None, mode: Measured) fn on_new_round() -> Weight { - Weight::from_ref_time(52_427_000 as u64) - .saturating_add(RocksDbWeight::get().reads(3 as u64)) - .saturating_add(RocksDbWeight::get().writes(9 as u64)) + // Proof Size summary in bytes: + // Measured: `218` + // Estimated: `8515` + // Minimum execution time: 40_065_000 picoseconds. + Weight::from_parts(40_509_000, 8515) + .saturating_add(RocksDbWeight::get().reads(3_u64)) + .saturating_add(RocksDbWeight::get().writes(9_u64)) } -} +} \ No newline at end of file diff --git a/pallets/moonbeam-xcm-benchmarks/src/weights/moonbeam_xcm_benchmarks_fungible.rs b/pallets/moonbeam-xcm-benchmarks/src/weights/moonbeam_xcm_benchmarks_fungible.rs index 2cc12631cc..279cab859c 100644 --- a/pallets/moonbeam-xcm-benchmarks/src/weights/moonbeam_xcm_benchmarks_fungible.rs +++ b/pallets/moonbeam-xcm-benchmarks/src/weights/moonbeam_xcm_benchmarks_fungible.rs @@ -22,6 +22,11 @@ use frame_support::{traits::Get, weights::Weight}; use sp_std::marker::PhantomData; use xcm::latest::MultiAsset; +// Values copied from statemint benchmarks +const ASSET_BURN_MAX_PROOF_SIZE: u64 = 7242; +const ASSET_MINT_MAX_PROOF_SIZE: u64 = 7242; +const ASSET_TRANSFER_MAX_PROOF_SIZE: u64 = 13412; + /// Weights for `pallet_xcm_benchmarks::fungible`. pub struct WeightInfo(PhantomData); impl WeightInfo { @@ -29,36 +34,39 @@ impl WeightInfo { if pallet_erc20_xcm_bridge::Pallet::::is_erc20_asset(asset) { pallet_erc20_xcm_bridge::Pallet::::weight_of_erc20_transfer() } else { - Weight::from_ref_time(200_000_000 as u64) + Weight::from_parts(200_000_000 as u64, ASSET_BURN_MAX_PROOF_SIZE) } } pub(crate) fn transfer_asset(asset: &MultiAsset) -> Weight { if pallet_erc20_xcm_bridge::Pallet::::is_erc20_asset(asset) { pallet_erc20_xcm_bridge::Pallet::::weight_of_erc20_transfer() } else { - Weight::from_ref_time(200_000_000 as u64) + Weight::from_parts(200_000_000 as u64, ASSET_TRANSFER_MAX_PROOF_SIZE) } } pub(crate) fn transfer_reserve_asset(asset: &MultiAsset) -> Weight { if pallet_erc20_xcm_bridge::Pallet::::is_erc20_asset(asset) { pallet_erc20_xcm_bridge::Pallet::::weight_of_erc20_transfer() } else { - Weight::from_ref_time(200_000_000 as u64) + Weight::from_parts(200_000_000 as u64, ASSET_TRANSFER_MAX_PROOF_SIZE) } } pub(crate) fn receive_teleported_asset() -> Weight { - Weight::from_ref_time(200_000_000 as u64) + // Instruction disabled + Weight::MAX } pub(crate) fn deposit_asset() -> Weight { - Weight::from_ref_time(200_000_000 as u64) + Weight::from_parts(200_000_000 as u64, ASSET_MINT_MAX_PROOF_SIZE) } pub(crate) fn deposit_reserve_asset() -> Weight { - Weight::from_ref_time(200_000_000 as u64) + Weight::from_parts(200_000_000 as u64, ASSET_MINT_MAX_PROOF_SIZE) } pub(crate) fn initiate_teleport() -> Weight { - Weight::from_ref_time(200_000_000 as u64) + // Instruction disabled + Weight::MAX } pub(crate) fn reserve_asset_deposited() -> Weight { - Weight::from_ref_time(200_000_000 as u64) + // This instruction is a no-op for PoV (no storage access) + Weight::from_parts(200_000_000 as u64, 0) } -} \ No newline at end of file +} diff --git a/pallets/moonbeam-xcm-benchmarks/src/weights/moonbeam_xcm_benchmarks_generic.rs b/pallets/moonbeam-xcm-benchmarks/src/weights/moonbeam_xcm_benchmarks_generic.rs index d8be8d9cdc..a82f3ffad0 100644 --- a/pallets/moonbeam-xcm-benchmarks/src/weights/moonbeam_xcm_benchmarks_generic.rs +++ b/pallets/moonbeam-xcm-benchmarks/src/weights/moonbeam_xcm_benchmarks_generic.rs @@ -14,10 +14,13 @@ // You should have received a copy of the GNU General Public License // along with Moonbeam. If not, see . + //! Autogenerated weights for moonbeam_xcm_benchmarks_generic //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-19, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2023-04-28, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `benchmarker`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: None, DB CACHE: 1024 // Executed Command: @@ -27,7 +30,7 @@ // --execution=wasm // --wasm-execution=compiled // --pallet -// moonbeam_xcm_benchmarks_generic +// * // --extrinsic // * // --steps @@ -38,502 +41,765 @@ // --json-file // raw.json // --output -// weights.rs +// weights/ +#![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] -use frame_support::{ - traits::Get, - weights::{constants::RocksDbWeight, Weight}, -}; +use frame_support::{traits::Get, weights::{Weight, constants::RocksDbWeight}}; use sp_std::marker::PhantomData; /// Weight functions needed for moonbeam_xcm_benchmarks_generic. pub trait WeightInfo { - #[rustfmt::skip] + fn report_holding() -> Weight; fn buy_execution() -> Weight; - #[rustfmt::skip] fn query_response() -> Weight; - #[rustfmt::skip] fn transact() -> Weight; - #[rustfmt::skip] fn refund_surplus() -> Weight; - #[rustfmt::skip] fn set_error_handler() -> Weight; - #[rustfmt::skip] fn set_appendix() -> Weight; - #[rustfmt::skip] fn clear_error() -> Weight; - #[rustfmt::skip] fn descend_origin() -> Weight; - #[rustfmt::skip] fn clear_origin() -> Weight; - #[rustfmt::skip] fn report_error() -> Weight; - #[rustfmt::skip] fn claim_asset() -> Weight; - #[rustfmt::skip] fn trap() -> Weight; - #[rustfmt::skip] fn subscribe_version() -> Weight; - #[rustfmt::skip] fn unsubscribe_version() -> Weight; - #[rustfmt::skip] fn initiate_reserve_withdraw() -> Weight; - #[rustfmt::skip] - fn report_holding() -> Weight; - #[rustfmt::skip] fn burn_asset() -> Weight; - #[rustfmt::skip] fn expect_asset() -> Weight; - #[rustfmt::skip] fn expect_origin() -> Weight; - #[rustfmt::skip] fn expect_error() -> Weight; - #[rustfmt::skip] fn expect_transact_status() -> Weight; - #[rustfmt::skip] fn query_pallet() -> Weight; - #[rustfmt::skip] fn expect_pallet() -> Weight; - #[rustfmt::skip] fn report_transact_status() -> Weight; - #[rustfmt::skip] fn clear_transact_status() -> Weight; - #[rustfmt::skip] + fn set_topic() -> Weight; + fn clear_topic() -> Weight; + fn exchange_asset() -> Weight; fn universal_origin() -> Weight; - #[rustfmt::skip] - fn export_message() -> Weight; - #[rustfmt::skip] + fn set_fees_mode() -> Weight; fn lock_asset() -> Weight; - #[rustfmt::skip] fn unlock_asset() -> Weight; - #[rustfmt::skip] fn note_unlockable() -> Weight; - #[rustfmt::skip] fn request_unlock() -> Weight; - #[rustfmt::skip] - fn set_fees_mode() -> Weight; - #[rustfmt::skip] - fn set_topic() -> Weight; - #[rustfmt::skip] - fn clear_topic() -> Weight; - #[rustfmt::skip] - fn alias_origin() -> Weight; - #[rustfmt::skip] fn unpaid_execution() -> Weight; } /// Weights for moonbeam_xcm_benchmarks_generic using the Substrate node and recommended hardware. pub struct SubstrateWeight(PhantomData); impl WeightInfo for SubstrateWeight { - // Storage: AssetManager SupportedFeePaymentAssets (r:1 w:0) - // Storage: AssetManager AssetTypeUnitsPerSecond (r:1 w:0) - // Storage: AssetManager AssetTypeId (r:1 w:0) - // Storage: Assets Asset (r:1 w:0) - #[rustfmt::skip] + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + fn report_holding() -> Weight { + // Proof Size summary in bytes: + // Measured: `145` + // Estimated: `10130` + // Minimum execution time: 613_728_000 picoseconds. + Weight::from_parts(616_143_000, 10130) + .saturating_add(T::DbWeight::get().reads(5_u64)) + .saturating_add(T::DbWeight::get().writes(2_u64)) + } + /// Storage: AssetManager SupportedFeePaymentAssets (r:1 w:0) + /// Proof Skipped: AssetManager SupportedFeePaymentAssets (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeUnitsPerSecond (r:1 w:0) + /// Proof Skipped: AssetManager AssetTypeUnitsPerSecond (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeId (r:1 w:0) + /// Proof Skipped: AssetManager AssetTypeId (max_values: None, max_size: None, mode: Measured) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) fn buy_execution() -> Weight { - Weight::from_ref_time(158_702_000 as u64) - .saturating_add(T::DbWeight::get().reads(4 as u64)) - } - // Storage: PolkadotXcm Queries (r:1 w:0) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `2334` + // Estimated: `19056` + // Minimum execution time: 180_427_000 picoseconds. + Weight::from_parts(181_080_000, 19056) + .saturating_add(T::DbWeight::get().reads(4_u64)) + } + /// Storage: PolkadotXcm Queries (r:1 w:0) + /// Proof Skipped: PolkadotXcm Queries (max_values: None, max_size: None, mode: Measured) fn query_response() -> Weight { - Weight::from_ref_time(25_944_000 as u64) - .saturating_add(T::DbWeight::get().reads(1 as u64)) - } - // Storage: MaintenanceMode MaintenanceMode (r:1 w:0) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `69` + // Estimated: `3534` + // Minimum execution time: 17_147_000 picoseconds. + Weight::from_parts(17_428_000, 3534) + .saturating_add(T::DbWeight::get().reads(1_u64)) + } + /// Storage: MaintenanceMode MaintenanceMode (r:1 w:0) + /// Proof Skipped: MaintenanceMode MaintenanceMode (max_values: Some(1), max_size: None, mode: Measured) fn transact() -> Weight { - Weight::from_ref_time(34_785_000 as u64) - .saturating_add(T::DbWeight::get().reads(1 as u64)) + // Proof Size summary in bytes: + // Measured: `42` + // Estimated: `1527` + // Minimum execution time: 24_018_000 picoseconds. + Weight::from_parts(24_375_000, 1527) + .saturating_add(T::DbWeight::get().reads(1_u64)) } - #[rustfmt::skip] fn refund_surplus() -> Weight { - Weight::from_ref_time(27_919_000 as u64) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 7_851_000 picoseconds. + Weight::from_parts(7_975_000, 0) } - #[rustfmt::skip] fn set_error_handler() -> Weight { - Weight::from_ref_time(8_670_000 as u64) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_072_000 picoseconds. + Weight::from_parts(5_182_000, 0) } - #[rustfmt::skip] fn set_appendix() -> Weight { - Weight::from_ref_time(8_550_000 as u64) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 4_983_000 picoseconds. + Weight::from_parts(5_123_000, 0) } - #[rustfmt::skip] fn clear_error() -> Weight { - Weight::from_ref_time(8_497_000 as u64) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_017_000 picoseconds. + Weight::from_parts(5_147_000, 0) } - #[rustfmt::skip] fn descend_origin() -> Weight { - Weight::from_ref_time(10_084_000 as u64) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_870_000 picoseconds. + Weight::from_parts(5_992_000, 0) } - #[rustfmt::skip] fn clear_origin() -> Weight { - Weight::from_ref_time(8_514_000 as u64) - } - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_059_000 picoseconds. + Weight::from_parts(5_194_000, 0) + } + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn report_error() -> Weight { - Weight::from_ref_time(26_411_000 as u64) - .saturating_add(T::DbWeight::get().reads(5 as u64)) - .saturating_add(T::DbWeight::get().writes(2 as u64)) - } - // Storage: PolkadotXcm AssetTraps (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `145` + // Estimated: `10130` + // Minimum execution time: 35_671_000 picoseconds. + Weight::from_parts(36_231_000, 10130) + .saturating_add(T::DbWeight::get().reads(5_u64)) + .saturating_add(T::DbWeight::get().writes(2_u64)) + } + /// Storage: PolkadotXcm AssetTraps (r:1 w:1) + /// Proof Skipped: PolkadotXcm AssetTraps (max_values: None, max_size: None, mode: Measured) fn claim_asset() -> Weight { - Weight::from_ref_time(35_553_000 as u64) - .saturating_add(T::DbWeight::get().reads(1 as u64)) - .saturating_add(T::DbWeight::get().writes(1 as u64)) + // Proof Size summary in bytes: + // Measured: `126` + // Estimated: `3591` + // Minimum execution time: 23_093_000 picoseconds. + Weight::from_parts(23_438_000, 3591) + .saturating_add(T::DbWeight::get().reads(1_u64)) + .saturating_add(T::DbWeight::get().writes(1_u64)) } - #[rustfmt::skip] fn trap() -> Weight { - Weight::from_ref_time(8_518_000 as u64) - } - // Storage: PolkadotXcm VersionNotifyTargets (r:1 w:1) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_182_000 picoseconds. + Weight::from_parts(5_281_000, 0) + } + /// Storage: PolkadotXcm VersionNotifyTargets (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn subscribe_version() -> Weight { - Weight::from_ref_time(31_742_000 as u64) - .saturating_add(T::DbWeight::get().reads(6 as u64)) - .saturating_add(T::DbWeight::get().writes(3 as u64)) - } - // Storage: PolkadotXcm VersionNotifyTargets (r:0 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `145` + // Estimated: `13740` + // Minimum execution time: 42_060_000 picoseconds. + Weight::from_parts(42_607_000, 13740) + .saturating_add(T::DbWeight::get().reads(6_u64)) + .saturating_add(T::DbWeight::get().writes(3_u64)) + } + /// Storage: PolkadotXcm VersionNotifyTargets (r:0 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) fn unsubscribe_version() -> Weight { - Weight::from_ref_time(14_391_000 as u64) - .saturating_add(T::DbWeight::get().writes(1 as u64)) - } - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 8_521_000 picoseconds. + Weight::from_parts(8_689_000, 0) + .saturating_add(T::DbWeight::get().writes(1_u64)) + } + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn initiate_reserve_withdraw() -> Weight { - Weight::from_ref_time(579_258_000 as u64) - .saturating_add(T::DbWeight::get().reads(5 as u64)) - .saturating_add(T::DbWeight::get().writes(2 as u64)) - } - - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - #[rustfmt::skip] - fn report_holding() -> Weight { - Weight::from_ref_time(810_463_000 as u64) - .saturating_add(T::DbWeight::get().reads(5 as u64)) - .saturating_add(T::DbWeight::get().writes(2 as u64)) + // Proof Size summary in bytes: + // Measured: `145` + // Estimated: `10130` + // Minimum execution time: 713_056_000 picoseconds. + Weight::from_parts(715_975_000, 10130) + .saturating_add(T::DbWeight::get().reads(5_u64)) + .saturating_add(T::DbWeight::get().writes(2_u64)) } - #[rustfmt::skip] fn burn_asset() -> Weight { - Weight::from_ref_time(285_885_000 as u64) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 226_643_000 picoseconds. + Weight::from_parts(227_558_000, 0) } - #[rustfmt::skip] fn expect_asset() -> Weight { - Weight::from_ref_time(19_742_000 as u64) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 19_959_000 picoseconds. + Weight::from_parts(20_434_000, 0) } - #[rustfmt::skip] fn expect_origin() -> Weight { - Weight::from_ref_time(5_580_000 as u64) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_047_000 picoseconds. + Weight::from_parts(5_211_000, 0) } - #[rustfmt::skip] fn expect_error() -> Weight { - Weight::from_ref_time(5_405_000 as u64) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_051_000 picoseconds. + Weight::from_parts(5_141_000, 0) } - #[rustfmt::skip] fn expect_transact_status() -> Weight { - Weight::from_ref_time(6_156_000 as u64) - } - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_189_000 picoseconds. + Weight::from_parts(5_381_000, 0) + } + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn query_pallet() -> Weight { - Weight::from_ref_time(48_848_000 as u64) - .saturating_add(T::DbWeight::get().reads(5 as u64)) - .saturating_add(T::DbWeight::get().writes(2 as u64)) + // Proof Size summary in bytes: + // Measured: `145` + // Estimated: `10130` + // Minimum execution time: 50_026_000 picoseconds. + Weight::from_parts(50_578_000, 10130) + .saturating_add(T::DbWeight::get().reads(5_u64)) + .saturating_add(T::DbWeight::get().writes(2_u64)) } - #[rustfmt::skip] fn expect_pallet() -> Weight { - Weight::from_ref_time(15_537_000 as u64) - } - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 17_409_000 picoseconds. + Weight::from_parts(17_794_000, 0) + } + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn report_transact_status() -> Weight { - Weight::from_ref_time(36_149_000 as u64) - .saturating_add(RocksDbWeight::get().reads(5 as u64)) - .saturating_add(RocksDbWeight::get().writes(2 as u64)) + // Proof Size summary in bytes: + // Measured: `145` + // Estimated: `10130` + // Minimum execution time: 35_835_000 picoseconds. + Weight::from_parts(36_090_000, 10130) + .saturating_add(T::DbWeight::get().reads(5_u64)) + .saturating_add(T::DbWeight::get().writes(2_u64)) } - #[rustfmt::skip] fn clear_transact_status() -> Weight { - Weight::from_ref_time(5_479_000 as u64) - } - #[rustfmt::skip] - fn universal_origin() -> Weight{ - Weight::MAX - } - #[rustfmt::skip] - fn export_message() -> Weight{ - Weight::MAX - } - #[rustfmt::skip] - fn lock_asset() -> Weight{ - Weight::MAX - } - #[rustfmt::skip] - fn unlock_asset() -> Weight{ - Weight::MAX - } - #[rustfmt::skip] - fn note_unlockable() -> Weight{ - Weight::MAX + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_132_000 picoseconds. + Weight::from_parts(5_280_000, 0) } - #[rustfmt::skip] - fn request_unlock() -> Weight{ - Weight::MAX - } - #[rustfmt::skip] - fn set_fees_mode() -> Weight { - Weight::from_ref_time(5_457_000 as u64) - } - #[rustfmt::skip] fn set_topic() -> Weight { - Weight::from_ref_time(5_314_000 as u64) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_095_000 picoseconds. + Weight::from_parts(5_215_000, 0) } - #[rustfmt::skip] fn clear_topic() -> Weight { - Weight::from_ref_time(5_500_000 as u64) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_099_000 picoseconds. + Weight::from_parts(5_214_000, 0) + } + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) + fn exchange_asset() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 500_000_000_000 picoseconds. + Weight::from_parts(500_000_000_000, 0) + } + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) + fn universal_origin() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 500_000_000_000 picoseconds. + Weight::from_parts(500_000_000_000, 0) } - #[rustfmt::skip] - fn alias_origin() -> Weight{ - Weight::MAX + fn set_fees_mode() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_066_000 picoseconds. + Weight::from_parts(5_215_000, 0) + } + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) + fn lock_asset() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 500_000_000_000 picoseconds. + Weight::from_parts(500_000_000_000, 0) + } + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) + fn unlock_asset() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 500_000_000_000 picoseconds. + Weight::from_parts(500_000_000_000, 0) + } + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) + fn note_unlockable() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 500_000_000_000 picoseconds. + Weight::from_parts(500_000_000_000, 0) + } + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) + fn request_unlock() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 500_000_000_000 picoseconds. + Weight::from_parts(500_000_000_000, 0) } - #[rustfmt::skip] fn unpaid_execution() -> Weight { - Weight::from_ref_time(5_664_000 as u64) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_249_000 picoseconds. + Weight::from_parts(5_371_000, 0) } } // For backwards compatibility and tests impl WeightInfo for () { - // Storage: AssetManager SupportedFeePaymentAssets (r:1 w:0) - // Storage: AssetManager AssetTypeUnitsPerSecond (r:1 w:0) - // Storage: AssetManager AssetTypeId (r:1 w:0) - // Storage: Assets Asset (r:1 w:0) - #[rustfmt::skip] + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) + fn report_holding() -> Weight { + // Proof Size summary in bytes: + // Measured: `145` + // Estimated: `10130` + // Minimum execution time: 613_728_000 picoseconds. + Weight::from_parts(616_143_000, 10130) + .saturating_add(RocksDbWeight::get().reads(5_u64)) + .saturating_add(RocksDbWeight::get().writes(2_u64)) + } + /// Storage: AssetManager SupportedFeePaymentAssets (r:1 w:0) + /// Proof Skipped: AssetManager SupportedFeePaymentAssets (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeUnitsPerSecond (r:1 w:0) + /// Proof Skipped: AssetManager AssetTypeUnitsPerSecond (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeId (r:1 w:0) + /// Proof Skipped: AssetManager AssetTypeId (max_values: None, max_size: None, mode: Measured) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) fn buy_execution() -> Weight { - Weight::from_ref_time(158_702_000 as u64) - .saturating_add(RocksDbWeight::get().reads(4 as u64)) - } - // Storage: PolkadotXcm Queries (r:1 w:0) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `2334` + // Estimated: `19056` + // Minimum execution time: 180_427_000 picoseconds. + Weight::from_parts(181_080_000, 19056) + .saturating_add(RocksDbWeight::get().reads(4_u64)) + } + /// Storage: PolkadotXcm Queries (r:1 w:0) + /// Proof Skipped: PolkadotXcm Queries (max_values: None, max_size: None, mode: Measured) fn query_response() -> Weight { - Weight::from_ref_time(25_944_000 as u64) - .saturating_add(RocksDbWeight::get().reads(1 as u64)) - } - // Storage: MaintenanceMode MaintenanceMode (r:1 w:0) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `69` + // Estimated: `3534` + // Minimum execution time: 17_147_000 picoseconds. + Weight::from_parts(17_428_000, 3534) + .saturating_add(RocksDbWeight::get().reads(1_u64)) + } + /// Storage: MaintenanceMode MaintenanceMode (r:1 w:0) + /// Proof Skipped: MaintenanceMode MaintenanceMode (max_values: Some(1), max_size: None, mode: Measured) fn transact() -> Weight { - Weight::from_ref_time(34_785_000 as u64) - .saturating_add(RocksDbWeight::get().reads(1 as u64)) + // Proof Size summary in bytes: + // Measured: `42` + // Estimated: `1527` + // Minimum execution time: 24_018_000 picoseconds. + Weight::from_parts(24_375_000, 1527) + .saturating_add(RocksDbWeight::get().reads(1_u64)) } - #[rustfmt::skip] fn refund_surplus() -> Weight { - Weight::from_ref_time(27_919_000 as u64) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 7_851_000 picoseconds. + Weight::from_parts(7_975_000, 0) } - #[rustfmt::skip] fn set_error_handler() -> Weight { - Weight::from_ref_time(8_670_000 as u64) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_072_000 picoseconds. + Weight::from_parts(5_182_000, 0) } - #[rustfmt::skip] fn set_appendix() -> Weight { - Weight::from_ref_time(8_550_000 as u64) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 4_983_000 picoseconds. + Weight::from_parts(5_123_000, 0) } - #[rustfmt::skip] fn clear_error() -> Weight { - Weight::from_ref_time(8_497_000 as u64) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_017_000 picoseconds. + Weight::from_parts(5_147_000, 0) } - #[rustfmt::skip] fn descend_origin() -> Weight { - Weight::from_ref_time(10_084_000 as u64) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_870_000 picoseconds. + Weight::from_parts(5_992_000, 0) } - #[rustfmt::skip] fn clear_origin() -> Weight { - Weight::from_ref_time(8_514_000 as u64) - } - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_059_000 picoseconds. + Weight::from_parts(5_194_000, 0) + } + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn report_error() -> Weight { - Weight::from_ref_time(26_411_000 as u64) - .saturating_add(RocksDbWeight::get().reads(5 as u64)) - .saturating_add(RocksDbWeight::get().writes(2 as u64)) - } - // Storage: PolkadotXcm AssetTraps (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `145` + // Estimated: `10130` + // Minimum execution time: 35_671_000 picoseconds. + Weight::from_parts(36_231_000, 10130) + .saturating_add(RocksDbWeight::get().reads(5_u64)) + .saturating_add(RocksDbWeight::get().writes(2_u64)) + } + /// Storage: PolkadotXcm AssetTraps (r:1 w:1) + /// Proof Skipped: PolkadotXcm AssetTraps (max_values: None, max_size: None, mode: Measured) fn claim_asset() -> Weight { - Weight::from_ref_time(35_553_000 as u64) - .saturating_add(RocksDbWeight::get().reads(1 as u64)) - .saturating_add(RocksDbWeight::get().writes(1 as u64)) + // Proof Size summary in bytes: + // Measured: `126` + // Estimated: `3591` + // Minimum execution time: 23_093_000 picoseconds. + Weight::from_parts(23_438_000, 3591) + .saturating_add(RocksDbWeight::get().reads(1_u64)) + .saturating_add(RocksDbWeight::get().writes(1_u64)) } - #[rustfmt::skip] fn trap() -> Weight { - Weight::from_ref_time(8_518_000 as u64) - } - // Storage: PolkadotXcm VersionNotifyTargets (r:1 w:1) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_182_000 picoseconds. + Weight::from_parts(5_281_000, 0) + } + /// Storage: PolkadotXcm VersionNotifyTargets (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn subscribe_version() -> Weight { - Weight::from_ref_time(31_742_000 as u64) - .saturating_add(RocksDbWeight::get().reads(6 as u64)) - .saturating_add(RocksDbWeight::get().writes(3 as u64)) - } - // Storage: PolkadotXcm VersionNotifyTargets (r:0 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `145` + // Estimated: `13740` + // Minimum execution time: 42_060_000 picoseconds. + Weight::from_parts(42_607_000, 13740) + .saturating_add(RocksDbWeight::get().reads(6_u64)) + .saturating_add(RocksDbWeight::get().writes(3_u64)) + } + /// Storage: PolkadotXcm VersionNotifyTargets (r:0 w:1) + /// Proof Skipped: PolkadotXcm VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) fn unsubscribe_version() -> Weight { - Weight::from_ref_time(14_391_000 as u64) - .saturating_add(RocksDbWeight::get().writes(1 as u64)) - } - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 8_521_000 picoseconds. + Weight::from_parts(8_689_000, 0) + .saturating_add(RocksDbWeight::get().writes(1_u64)) + } + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn initiate_reserve_withdraw() -> Weight { - Weight::from_ref_time(579_258_000 as u64) - .saturating_add(RocksDbWeight::get().reads(5 as u64)) - .saturating_add(RocksDbWeight::get().writes(2 as u64)) - } - - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - #[rustfmt::skip] - fn report_holding() -> Weight { - Weight::from_ref_time(810_463_000 as u64) - .saturating_add(RocksDbWeight::get().reads(5 as u64)) - .saturating_add(RocksDbWeight::get().writes(2 as u64)) + // Proof Size summary in bytes: + // Measured: `145` + // Estimated: `10130` + // Minimum execution time: 713_056_000 picoseconds. + Weight::from_parts(715_975_000, 10130) + .saturating_add(RocksDbWeight::get().reads(5_u64)) + .saturating_add(RocksDbWeight::get().writes(2_u64)) } - #[rustfmt::skip] fn burn_asset() -> Weight { - Weight::from_ref_time(285_885_000 as u64) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 226_643_000 picoseconds. + Weight::from_parts(227_558_000, 0) } - #[rustfmt::skip] fn expect_asset() -> Weight { - Weight::from_ref_time(19_742_000 as u64) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 19_959_000 picoseconds. + Weight::from_parts(20_434_000, 0) } - #[rustfmt::skip] fn expect_origin() -> Weight { - Weight::from_ref_time(5_580_000 as u64) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_047_000 picoseconds. + Weight::from_parts(5_211_000, 0) } - #[rustfmt::skip] fn expect_error() -> Weight { - Weight::from_ref_time(5_405_000 as u64) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_051_000 picoseconds. + Weight::from_parts(5_141_000, 0) } - #[rustfmt::skip] fn expect_transact_status() -> Weight { - Weight::from_ref_time(6_156_000 as u64) - } - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_189_000 picoseconds. + Weight::from_parts(5_381_000, 0) + } + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn query_pallet() -> Weight { - Weight::from_ref_time(48_848_000 as u64) - .saturating_add(RocksDbWeight::get().reads(5 as u64)) - .saturating_add(RocksDbWeight::get().writes(2 as u64)) + // Proof Size summary in bytes: + // Measured: `145` + // Estimated: `10130` + // Minimum execution time: 50_026_000 picoseconds. + Weight::from_parts(50_578_000, 10130) + .saturating_add(RocksDbWeight::get().reads(5_u64)) + .saturating_add(RocksDbWeight::get().writes(2_u64)) } - #[rustfmt::skip] fn expect_pallet() -> Weight { - Weight::from_ref_time(15_537_000 as u64) - } - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 17_409_000 picoseconds. + Weight::from_parts(17_794_000, 0) + } + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn report_transact_status() -> Weight { - Weight::from_ref_time(36_149_000 as u64) - .saturating_add(RocksDbWeight::get().reads(5 as u64)) - .saturating_add(RocksDbWeight::get().writes(2 as u64)) + // Proof Size summary in bytes: + // Measured: `145` + // Estimated: `10130` + // Minimum execution time: 35_835_000 picoseconds. + Weight::from_parts(36_090_000, 10130) + .saturating_add(RocksDbWeight::get().reads(5_u64)) + .saturating_add(RocksDbWeight::get().writes(2_u64)) } - #[rustfmt::skip] fn clear_transact_status() -> Weight { - Weight::from_ref_time(5_479_000 as u64) - } - #[rustfmt::skip] - fn universal_origin() -> Weight{ - Weight::MAX - } - #[rustfmt::skip] - fn export_message() -> Weight{ - Weight::MAX - } - #[rustfmt::skip] - fn lock_asset() -> Weight{ - Weight::MAX - } - #[rustfmt::skip] - fn unlock_asset() -> Weight{ - Weight::MAX - } - #[rustfmt::skip] - fn note_unlockable() -> Weight{ - Weight::MAX + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_132_000 picoseconds. + Weight::from_parts(5_280_000, 0) } - #[rustfmt::skip] - fn request_unlock() -> Weight{ - Weight::MAX - } - #[rustfmt::skip] - fn set_fees_mode() -> Weight { - Weight::from_ref_time(5_457_000 as u64) - } - #[rustfmt::skip] fn set_topic() -> Weight { - Weight::from_ref_time(5_314_000 as u64) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_095_000 picoseconds. + Weight::from_parts(5_215_000, 0) } - #[rustfmt::skip] fn clear_topic() -> Weight { - Weight::from_ref_time(5_500_000 as u64) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_099_000 picoseconds. + Weight::from_parts(5_214_000, 0) + } + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) + fn exchange_asset() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 500_000_000_000 picoseconds. + Weight::from_parts(500_000_000_000, 0) + } + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) + fn universal_origin() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 500_000_000_000 picoseconds. + Weight::from_parts(500_000_000_000, 0) } - #[rustfmt::skip] - fn alias_origin() -> Weight{ - Weight::MAX + fn set_fees_mode() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_066_000 picoseconds. + Weight::from_parts(5_215_000, 0) + } + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) + fn lock_asset() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 500_000_000_000 picoseconds. + Weight::from_parts(500_000_000_000, 0) + } + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) + fn unlock_asset() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 500_000_000_000 picoseconds. + Weight::from_parts(500_000_000_000, 0) + } + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) + fn note_unlockable() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 500_000_000_000 picoseconds. + Weight::from_parts(500_000_000_000, 0) + } + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) + fn request_unlock() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 500_000_000_000 picoseconds. + Weight::from_parts(500_000_000_000, 0) } - #[rustfmt::skip] fn unpaid_execution() -> Weight { - Weight::from_ref_time(5_664_000 as u64) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_249_000 picoseconds. + Weight::from_parts(5_371_000, 0) } -} +} \ No newline at end of file diff --git a/pallets/parachain-staking/src/auto_compound.rs b/pallets/parachain-staking/src/auto_compound.rs index 653c96ff96..86a1e128ae 100644 --- a/pallets/parachain-staking/src/auto_compound.rs +++ b/pallets/parachain-staking/src/auto_compound.rs @@ -17,8 +17,8 @@ //! Auto-compounding functionality for staking rewards use crate::pallet::{ - AutoCompoundingDelegations as AutoCompoundingDelegationsStorage, BalanceOf, CandidateInfo, - Config, DelegatorState, Error, Event, Pallet, Total, + AddGet, AutoCompoundingDelegations as AutoCompoundingDelegationsStorage, BalanceOf, + CandidateInfo, Config, DelegatorState, Error, Event, Pallet, Total, }; use crate::types::{Bond, BondAdjust, Delegator}; use frame_support::ensure; @@ -27,9 +27,9 @@ use frame_support::{dispatch::DispatchResultWithPostInfo, RuntimeDebug}; use parity_scale_codec::{Decode, Encode}; use scale_info::TypeInfo; use sp_runtime::traits::Saturating; +use sp_runtime::BoundedVec; use sp_runtime::Percent; use sp_std::prelude::*; -use sp_std::vec::Vec; /// Represents the auto-compounding amount for a delegation. #[derive(Clone, Eq, PartialEq, Encode, Decode, RuntimeDebug, TypeInfo, PartialOrd, Ord)] @@ -40,7 +40,12 @@ pub struct AutoCompoundConfig { /// Represents the auto-compounding [Delegations] for `T: Config` #[derive(Clone, Eq, PartialEq, RuntimeDebug)] -pub struct AutoCompoundDelegations(Vec>); +pub struct AutoCompoundDelegations( + BoundedVec< + AutoCompoundConfig, + AddGet, + >, +); impl AutoCompoundDelegations where @@ -49,7 +54,12 @@ where /// Creates a new instance of [AutoCompoundingDelegations] from a vector of sorted_delegations. /// This is used for testing purposes only. #[cfg(test)] - pub fn new(sorted_delegations: Vec>) -> Self { + pub fn new( + sorted_delegations: BoundedVec< + AutoCompoundConfig, + AddGet, + >, + ) -> Self { Self(sorted_delegations) } @@ -74,20 +84,25 @@ where /// Sets the auto-compounding value for a delegation. The `delegations_config` must be a sorted /// vector for binary_search to work. - pub fn set_for_delegator(&mut self, delegator: T::AccountId, value: Percent) -> bool { + pub fn set_for_delegator( + &mut self, + delegator: T::AccountId, + value: Percent, + ) -> Result> { match self.0.binary_search_by(|d| d.delegator.cmp(&delegator)) { Ok(index) => { if self.0[index].value == value { - false + Ok(false) } else { self.0[index].value = value; - true + Ok(true) } } Err(index) => { self.0 - .insert(index, AutoCompoundConfig { delegator, value }); - true + .try_insert(index, AutoCompoundConfig { delegator, value }) + .map_err(|_| Error::::ExceedMaxDelegationsPerDelegator)?; + Ok(true) } } } @@ -112,13 +127,23 @@ where /// Returns a reference to the inner vector. #[cfg(test)] - pub fn inner(&self) -> &Vec> { + pub fn inner( + &self, + ) -> &BoundedVec< + AutoCompoundConfig, + AddGet, + > { &self.0 } /// Converts the [AutoCompoundDelegations] into the inner vector. #[cfg(test)] - pub fn into_inner(self) -> Vec> { + pub fn into_inner( + self, + ) -> BoundedVec< + AutoCompoundConfig, + AddGet, + > { self.0 } @@ -216,7 +241,7 @@ where // maybe set auto-compound config, state is Some if the percent is non-zero if let Some(mut state) = auto_compounding_state { - state.set_for_delegator(delegator.clone(), auto_compound.clone()); + state.set_for_delegator(delegator.clone(), auto_compound.clone())?; state.set_storage(&candidate); } @@ -265,7 +290,7 @@ where let state_updated = if value.is_zero() { auto_compounding_state.remove_for_delegator(&delegator) } else { - auto_compounding_state.set_for_delegator(delegator.clone(), value) + auto_compounding_state.set_for_delegator(delegator.clone(), value)? }; if state_updated { auto_compounding_state.set_storage(&candidate); @@ -305,73 +330,90 @@ mod tests { #[test] fn test_set_for_delegator_inserts_config_and_returns_true_if_entry_missing() { - let mut delegations_config = AutoCompoundDelegations::::new(vec![]); + let mut delegations_config = + AutoCompoundDelegations::::new(vec![].try_into().expect("must succeed")); assert_eq!( true, - delegations_config.set_for_delegator(1, Percent::from_percent(50)) + delegations_config + .set_for_delegator(1, Percent::from_percent(50)) + .expect("must succeed") ); assert_eq!( vec![AutoCompoundConfig { delegator: 1, value: Percent::from_percent(50), }], - delegations_config.into_inner(), + delegations_config.into_inner().into_inner(), ); } #[test] fn test_set_for_delegator_updates_config_and_returns_true_if_entry_changed() { - let mut delegations_config = - AutoCompoundDelegations::::new(vec![AutoCompoundConfig { + let mut delegations_config = AutoCompoundDelegations::::new( + vec![AutoCompoundConfig { delegator: 1, value: Percent::from_percent(10), - }]); + }] + .try_into() + .expect("must succeed"), + ); assert_eq!( true, - delegations_config.set_for_delegator(1, Percent::from_percent(50)) + delegations_config + .set_for_delegator(1, Percent::from_percent(50)) + .expect("must succeed") ); assert_eq!( vec![AutoCompoundConfig { delegator: 1, value: Percent::from_percent(50), }], - delegations_config.into_inner(), + delegations_config.into_inner().into_inner(), ); } #[test] fn test_set_for_delegator_updates_config_and_returns_false_if_entry_unchanged() { - let mut delegations_config = - AutoCompoundDelegations::::new(vec![AutoCompoundConfig { + let mut delegations_config = AutoCompoundDelegations::::new( + vec![AutoCompoundConfig { delegator: 1, value: Percent::from_percent(10), - }]); + }] + .try_into() + .expect("must succeed"), + ); assert_eq!( false, - delegations_config.set_for_delegator(1, Percent::from_percent(10)) + delegations_config + .set_for_delegator(1, Percent::from_percent(10)) + .expect("must succeed") ); assert_eq!( vec![AutoCompoundConfig { delegator: 1, value: Percent::from_percent(10), }], - delegations_config.into_inner(), + delegations_config.into_inner().into_inner(), ); } #[test] fn test_remove_for_delegator_returns_false_if_entry_was_missing() { - let mut delegations_config = AutoCompoundDelegations::::new(vec![]); + let mut delegations_config = + AutoCompoundDelegations::::new(vec![].try_into().expect("must succeed")); assert_eq!(false, delegations_config.remove_for_delegator(&1),); } #[test] fn test_remove_delegation_config_returns_true_if_entry_existed() { - let mut delegations_config = - AutoCompoundDelegations::::new(vec![AutoCompoundConfig { + let mut delegations_config = AutoCompoundDelegations::::new( + vec![AutoCompoundConfig { delegator: 1, value: Percent::from_percent(10), - }]); + }] + .try_into() + .expect("must succeed"), + ); assert_eq!(true, delegations_config.remove_for_delegator(&1)); } } diff --git a/pallets/parachain-staking/src/benchmarks.rs b/pallets/parachain-staking/src/benchmarks.rs index 78563dd257..7e1b3b7f39 100644 --- a/pallets/parachain-staking/src/benchmarks.rs +++ b/pallets/parachain-staking/src/benchmarks.rs @@ -1123,7 +1123,7 @@ benchmarks! { auto_compounding_state.set_for_delegator( delegator, Percent::from_percent(100), - ); + ).expect("must succeed"); } auto_compounding_state.set_storage(&prime_candidate); diff --git a/pallets/parachain-staking/src/lib.rs b/pallets/parachain-staking/src/lib.rs index acb0f75945..42c38e2f5a 100644 --- a/pallets/parachain-staking/src/lib.rs +++ b/pallets/parachain-staking/src/lib.rs @@ -515,6 +515,19 @@ pub mod pallet { ValueQuery, >; + pub struct AddGet { + _phantom: PhantomData<(T, R)>, + } + impl Get for AddGet + where + T: Get, + R: Get, + { + fn get() -> u32 { + T::get() + R::get() + } + } + /// Stores auto-compounding configuration per collator. #[pallet::storage] #[pallet::getter(fn auto_compounding_delegations)] @@ -522,7 +535,10 @@ pub mod pallet { _, Blake2_128Concat, T::AccountId, - Vec>, + BoundedVec< + AutoCompoundConfig, + AddGet, + >, ValueQuery, >; @@ -1578,7 +1594,7 @@ pub mod pallet { // don't underflow uint if now < delay { - return Weight::from_ref_time(0u64); + return Weight::from_parts(0u64, 0); } let paid_for_round = now.saturating_sub(delay); @@ -1593,7 +1609,7 @@ pub mod pallet { } result.1 // weight consumed by pay_one_collator_reward } else { - Weight::from_ref_time(0u64) + Weight::from_parts(0u64, 0) } } @@ -1708,7 +1724,7 @@ pub mod pallet { } else { // Note that we don't clean up storage here; it is cleaned up in // handle_delayed_payouts() - (RewardPayment::Finished, Weight::from_ref_time(0u64.into())) + (RewardPayment::Finished, Weight::from_parts(0u64, 0)) } } diff --git a/pallets/parachain-staking/src/mock.rs b/pallets/parachain-staking/src/mock.rs index cfee758433..7a07f9d2a3 100644 --- a/pallets/parachain-staking/src/mock.rs +++ b/pallets/parachain-staking/src/mock.rs @@ -55,7 +55,7 @@ construct_runtime!( parameter_types! { pub const BlockHashCount: u32 = 250; - pub const MaximumBlockWeight: Weight = Weight::from_ref_time(1024); + pub const MaximumBlockWeight: Weight = Weight::from_parts(1024, 1); pub const MaximumBlockLength: u32 = 2 * 1024; pub const AvailableBlockRatio: Perbill = Perbill::one(); pub const SS58Prefix: u8 = 42; @@ -636,7 +636,6 @@ pub mod block_author { pub trait Config: frame_system::Config {} #[pallet::pallet] - #[pallet::generate_store(pub(super) trait Store)] pub struct Pallet(_); #[pallet::storage] diff --git a/pallets/parachain-staking/src/tests.rs b/pallets/parachain-staking/src/tests.rs index 62d21d6078..f43f108cac 100644 --- a/pallets/parachain-staking/src/tests.rs +++ b/pallets/parachain-staking/src/tests.rs @@ -7944,10 +7944,14 @@ fn test_set_auto_compound_fails_if_invalid_candidate_auto_compounding_hint() { .with_delegations(vec![(2, 1, 10)]) .build() .execute_with(|| { - >::new(vec![AutoCompoundConfig { - delegator: 2, - value: Percent::from_percent(10), - }]) + >::new( + vec![AutoCompoundConfig { + delegator: 2, + value: Percent::from_percent(10), + }] + .try_into() + .expect("must succeed"), + ) .set_storage(&1); let candidate_auto_compounding_delegation_count_hint = 0; // is however, 1 let delegation_hint = 1; @@ -7990,7 +7994,7 @@ fn test_set_auto_compound_inserts_if_not_exists() { delegator: 2, value: Percent::from_percent(50), }], - ParachainStaking::auto_compounding_delegations(&1), + ParachainStaking::auto_compounding_delegations(&1).into_inner(), ); }); } @@ -8003,10 +8007,14 @@ fn test_set_auto_compound_updates_if_existing() { .with_delegations(vec![(2, 1, 10)]) .build() .execute_with(|| { - >::new(vec![AutoCompoundConfig { - delegator: 2, - value: Percent::from_percent(10), - }]) + >::new( + vec![AutoCompoundConfig { + delegator: 2, + value: Percent::from_percent(10), + }] + .try_into() + .expect("must succeed"), + ) .set_storage(&1); assert_ok!(ParachainStaking::set_auto_compound( @@ -8026,7 +8034,7 @@ fn test_set_auto_compound_updates_if_existing() { delegator: 2, value: Percent::from_percent(50), }], - ParachainStaking::auto_compounding_delegations(&1), + ParachainStaking::auto_compounding_delegations(&1).into_inner(), ); }); } @@ -8039,10 +8047,14 @@ fn test_set_auto_compound_removes_if_auto_compound_zero_percent() { .with_delegations(vec![(2, 1, 10)]) .build() .execute_with(|| { - >::new(vec![AutoCompoundConfig { - delegator: 2, - value: Percent::from_percent(10), - }]) + >::new( + vec![AutoCompoundConfig { + delegator: 2, + value: Percent::from_percent(10), + }] + .try_into() + .expect("must succeed"), + ) .set_storage(&1); assert_ok!(ParachainStaking::set_auto_compound( @@ -8578,7 +8590,7 @@ fn test_delegate_with_auto_compound_sets_auto_compound_config() { delegator: 2, value: Percent::from_percent(50), }], - ParachainStaking::auto_compounding_delegations(&1), + ParachainStaking::auto_compounding_delegations(&1).into_inner(), ); }); } @@ -8984,7 +8996,7 @@ fn test_on_initialize_weights() { let weight = ParachainStaking::on_initialize(1); // TODO: build this with proper db reads/writes - assert_eq!(Weight::from_ref_time(285_890_000), weight); + assert_eq!(Weight::from_parts(277065000, 0), weight); // roll to the end of the round, then run on_init again, we should see round change... roll_to_round_end(3); @@ -8998,8 +9010,8 @@ fn test_on_initialize_weights() { // // following this assertion, we add individual weights together to show that we can // derive this number independently. - let expected_on_init = 2_537_230_483; - assert_eq!(Weight::from_ref_time(expected_on_init), weight); + let expected_on_init = 2479994997; + assert_eq!(Weight::from_parts(expected_on_init, 186592), weight); // assemble weight manually to ensure it is well understood let mut expected_weight = 0u64; @@ -9019,7 +9031,7 @@ fn test_on_initialize_weights() { // more reads/writes manually accounted for for on_finalize expected_weight += RocksDbWeight::get().reads_writes(3, 2).ref_time(); - assert_eq!(Weight::from_ref_time(expected_weight), weight); + assert_eq!(Weight::from_parts(expected_weight, 186592), weight); assert_eq!(expected_on_init, expected_weight); // magic number == independent accounting }); } diff --git a/pallets/parachain-staking/src/weights.rs b/pallets/parachain-staking/src/weights.rs index 01c070a185..ac72c2bb68 100644 --- a/pallets/parachain-staking/src/weights.rs +++ b/pallets/parachain-staking/src/weights.rs @@ -14,10 +14,13 @@ // You should have received a copy of the GNU General Public License // along with Moonbeam. If not, see . + //! Autogenerated weights for parachain_staking //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-19, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2023-04-28, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `benchmarker`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: None, DB CACHE: 1024 // Executed Command: @@ -27,7 +30,7 @@ // --execution=wasm // --wasm-execution=compiled // --pallet -// parachain_staking +// * // --extrinsic // * // --steps @@ -38,866 +41,1378 @@ // --json-file // raw.json // --output -// weights.rs +// weights/ +#![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] -use frame_support::{ - traits::Get, - weights::{constants::RocksDbWeight, Weight}, -}; +use frame_support::{traits::Get, weights::{Weight, constants::RocksDbWeight}}; use sp_std::marker::PhantomData; /// Weight functions needed for parachain_staking. pub trait WeightInfo { - #[rustfmt::skip] fn set_staking_expectations() -> Weight; - #[rustfmt::skip] fn set_inflation() -> Weight; - #[rustfmt::skip] fn set_parachain_bond_account() -> Weight; - #[rustfmt::skip] fn set_parachain_bond_reserve_percent() -> Weight; - #[rustfmt::skip] fn set_total_selected() -> Weight; - #[rustfmt::skip] fn set_collator_commission() -> Weight; - #[rustfmt::skip] fn set_blocks_per_round() -> Weight; - #[rustfmt::skip] fn join_candidates(x: u32, ) -> Weight; - #[rustfmt::skip] fn schedule_leave_candidates(x: u32, ) -> Weight; - #[rustfmt::skip] fn execute_leave_candidates(x: u32, ) -> Weight; - #[rustfmt::skip] fn cancel_leave_candidates(x: u32, ) -> Weight; - #[rustfmt::skip] fn go_offline() -> Weight; - #[rustfmt::skip] fn go_online() -> Weight; - #[rustfmt::skip] fn candidate_bond_more() -> Weight; - #[rustfmt::skip] fn schedule_candidate_bond_less() -> Weight; - #[rustfmt::skip] fn execute_candidate_bond_less() -> Weight; - #[rustfmt::skip] fn cancel_candidate_bond_less() -> Weight; - #[rustfmt::skip] fn delegate(x: u32, y: u32, ) -> Weight; - #[rustfmt::skip] fn schedule_leave_delegators() -> Weight; - #[rustfmt::skip] fn execute_leave_delegators(x: u32, ) -> Weight; - #[rustfmt::skip] fn cancel_leave_delegators() -> Weight; - #[rustfmt::skip] fn schedule_revoke_delegation() -> Weight; - #[rustfmt::skip] fn delegator_bond_more() -> Weight; - #[rustfmt::skip] fn schedule_delegator_bond_less() -> Weight; - #[rustfmt::skip] fn execute_revoke_delegation() -> Weight; - #[rustfmt::skip] fn execute_delegator_bond_less() -> Weight; - #[rustfmt::skip] fn cancel_revoke_delegation() -> Weight; - #[rustfmt::skip] fn cancel_delegator_bond_less() -> Weight; - #[rustfmt::skip] fn prepare_staking_payouts() -> Weight; - #[rustfmt::skip] fn get_rewardable_delegators(y: u32, ) -> Weight; - #[rustfmt::skip] fn select_top_candidates(x: u32, y: u32, ) -> Weight; - #[rustfmt::skip] fn pay_one_collator_reward(y: u32, ) -> Weight; - #[rustfmt::skip] fn base_on_initialize() -> Weight; - #[rustfmt::skip] fn set_auto_compound(x: u32, y: u32, ) -> Weight; - #[rustfmt::skip] fn delegate_with_auto_compound(x: u32, y: u32, z: u32, ) -> Weight; - #[rustfmt::skip] fn mint_collator_reward() -> Weight; } /// Weights for parachain_staking using the Substrate node and recommended hardware. pub struct SubstrateWeight(PhantomData); impl WeightInfo for SubstrateWeight { - // Storage: ParachainStaking InflationConfig (r:1 w:1) - #[rustfmt::skip] + /// Storage: ParachainStaking InflationConfig (r:1 w:1) + /// Proof Skipped: ParachainStaking InflationConfig (max_values: Some(1), max_size: None, mode: Measured) fn set_staking_expectations() -> Weight { - Weight::from_ref_time(48_225_000 as u64) - .saturating_add(T::DbWeight::get().reads(1 as u64)) - .saturating_add(T::DbWeight::get().writes(1 as u64)) - } - // Storage: ParachainStaking InflationConfig (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `88` + // Estimated: `1573` + // Minimum execution time: 18_070_000 picoseconds. + Weight::from_parts(18_325_000, 1573) + .saturating_add(T::DbWeight::get().reads(1_u64)) + .saturating_add(T::DbWeight::get().writes(1_u64)) + } + /// Storage: ParachainStaking InflationConfig (r:1 w:1) + /// Proof Skipped: ParachainStaking InflationConfig (max_values: Some(1), max_size: None, mode: Measured) fn set_inflation() -> Weight { - Weight::from_ref_time(61_063_000 as u64) - .saturating_add(T::DbWeight::get().reads(1 as u64)) - .saturating_add(T::DbWeight::get().writes(1 as u64)) - } - // Storage: ParachainStaking ParachainBondInfo (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `88` + // Estimated: `1573` + // Minimum execution time: 47_600_000 picoseconds. + Weight::from_parts(48_094_000, 1573) + .saturating_add(T::DbWeight::get().reads(1_u64)) + .saturating_add(T::DbWeight::get().writes(1_u64)) + } + /// Storage: ParachainStaking ParachainBondInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking ParachainBondInfo (max_values: Some(1), max_size: None, mode: Measured) fn set_parachain_bond_account() -> Weight { - Weight::from_ref_time(27_645_000 as u64) - .saturating_add(T::DbWeight::get().reads(1 as u64)) - .saturating_add(T::DbWeight::get().writes(1 as u64)) - } - // Storage: ParachainStaking ParachainBondInfo (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `6` + // Estimated: `1491` + // Minimum execution time: 15_818_000 picoseconds. + Weight::from_parts(16_256_000, 1491) + .saturating_add(T::DbWeight::get().reads(1_u64)) + .saturating_add(T::DbWeight::get().writes(1_u64)) + } + /// Storage: ParachainStaking ParachainBondInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking ParachainBondInfo (max_values: Some(1), max_size: None, mode: Measured) fn set_parachain_bond_reserve_percent() -> Weight { - Weight::from_ref_time(26_922_000 as u64) - .saturating_add(T::DbWeight::get().reads(1 as u64)) - .saturating_add(T::DbWeight::get().writes(1 as u64)) - } - // Storage: ParachainStaking TotalSelected (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `6` + // Estimated: `1491` + // Minimum execution time: 15_327_000 picoseconds. + Weight::from_parts(15_488_000, 1491) + .saturating_add(T::DbWeight::get().reads(1_u64)) + .saturating_add(T::DbWeight::get().writes(1_u64)) + } + /// Storage: ParachainStaking TotalSelected (r:1 w:1) + /// Proof Skipped: ParachainStaking TotalSelected (max_values: Some(1), max_size: None, mode: Measured) fn set_total_selected() -> Weight { - Weight::from_ref_time(29_263_000 as u64) - .saturating_add(T::DbWeight::get().reads(1 as u64)) - .saturating_add(T::DbWeight::get().writes(1 as u64)) - } - // Storage: ParachainStaking CollatorCommission (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `28` + // Estimated: `1513` + // Minimum execution time: 16_629_000 picoseconds. + Weight::from_parts(17_245_000, 1513) + .saturating_add(T::DbWeight::get().reads(1_u64)) + .saturating_add(T::DbWeight::get().writes(1_u64)) + } + /// Storage: ParachainStaking CollatorCommission (r:1 w:1) + /// Proof Skipped: ParachainStaking CollatorCommission (max_values: Some(1), max_size: None, mode: Measured) fn set_collator_commission() -> Weight { - Weight::from_ref_time(25_867_000 as u64) - .saturating_add(T::DbWeight::get().reads(1 as u64)) - .saturating_add(T::DbWeight::get().writes(1 as u64)) - } - // Storage: ParachainStaking TotalSelected (r:1 w:0) - // Storage: ParachainStaking InflationConfig (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `27` + // Estimated: `1512` + // Minimum execution time: 15_586_000 picoseconds. + Weight::from_parts(16_060_000, 1512) + .saturating_add(T::DbWeight::get().reads(1_u64)) + .saturating_add(T::DbWeight::get().writes(1_u64)) + } + /// Storage: ParachainStaking TotalSelected (r:1 w:0) + /// Proof Skipped: ParachainStaking TotalSelected (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking InflationConfig (r:1 w:1) + /// Proof Skipped: ParachainStaking InflationConfig (max_values: Some(1), max_size: None, mode: Measured) fn set_blocks_per_round() -> Weight { - Weight::from_ref_time(66_047_000 as u64) - .saturating_add(T::DbWeight::get().reads(2 as u64)) - .saturating_add(T::DbWeight::get().writes(1 as u64)) - } - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: ParachainStaking DelegatorState (r:1 w:0) - // Storage: ParachainStaking CandidatePool (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: Balances Locks (r:1 w:1) - // Storage: ParachainStaking Total (r:1 w:1) - // Storage: ParachainStaking TopDelegations (r:0 w:1) - // Storage: ParachainStaking BottomDelegations (r:0 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `116` + // Estimated: `3202` + // Minimum execution time: 52_085_000 picoseconds. + Weight::from_parts(52_439_000, 3202) + .saturating_add(T::DbWeight::get().reads(2_u64)) + .saturating_add(T::DbWeight::get().writes(1_u64)) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegatorState (r:1 w:0) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:0 w:1) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking BottomDelegations (r:0 w:1) + /// Proof Skipped: ParachainStaking BottomDelegations (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[3, 1000]`. fn join_candidates(x: u32, ) -> Weight { - Weight::from_ref_time(93_609_702 as u64) - // Standard Error: 1_049 - .saturating_add(Weight::from_ref_time(156_227 as u64).saturating_mul(x as u64)) - .saturating_add(T::DbWeight::get().reads(6 as u64)) - .saturating_add(T::DbWeight::get().writes(7 as u64)) - } - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: ParachainStaking CandidatePool (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `1821 + x * (37 ±0)` + // Estimated: `27743 + x * (228 ±0)` + // Minimum execution time: 62_721_000 picoseconds. + Weight::from_parts(59_951_661, 27743) + // Standard Error: 1_080 + .saturating_add(Weight::from_parts(83_856, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(6_u64)) + .saturating_add(T::DbWeight::get().writes(7_u64)) + .saturating_add(Weight::from_parts(0, 228).saturating_mul(x.into())) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `x` is `[3, 1000]`. fn schedule_leave_candidates(x: u32, ) -> Weight { - Weight::from_ref_time(74_938_974 as u64) - // Standard Error: 1_813 - .saturating_add(Weight::from_ref_time(136_560 as u64).saturating_mul(x as u64)) - .saturating_add(T::DbWeight::get().reads(2 as u64)) - .saturating_add(T::DbWeight::get().writes(2 as u64)) - } - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: ParachainStaking TopDelegations (r:1 w:1) - // Storage: ParachainStaking DelegatorState (r:1 w:1) - // Storage: Balances Locks (r:2 w:2) - // Storage: System Account (r:2 w:2) - // Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) - // Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:1) - // Storage: ParachainStaking BottomDelegations (r:1 w:1) - // Storage: ParachainStaking Total (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `865 + x * (36 ±0)` + // Estimated: `6542 + x * (74 ±0)` + // Minimum execution time: 29_088_000 picoseconds. + Weight::from_parts(23_948_090, 6542) + // Standard Error: 1_107 + .saturating_add(Weight::from_parts(72_705, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(2_u64)) + .saturating_add(T::DbWeight::get().writes(2_u64)) + .saturating_add(Weight::from_parts(0, 74).saturating_mul(x.into())) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegatorState (r:349 w:349) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Locks (r:350 w:350) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: System Account (r:350 w:350) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking AutoCompoundingDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking BottomDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking BottomDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `x` is `[2, 350]`. fn execute_leave_candidates(x: u32, ) -> Weight { - Weight::from_ref_time(120_885_000 as u64) - // Standard Error: 73_687 - .saturating_add(Weight::from_ref_time(31_457_020 as u64).saturating_mul(x as u64)) - .saturating_add(T::DbWeight::get().reads(5 as u64)) - .saturating_add(T::DbWeight::get().reads((3 as u64).saturating_mul(x as u64))) - .saturating_add(T::DbWeight::get().writes(5 as u64)) - .saturating_add(T::DbWeight::get().writes((3 as u64).saturating_mul(x as u64))) - } - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: ParachainStaking CandidatePool (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `979 + x * (431 ±0)` + // Estimated: `30725 + x * (11823 ±0)` + // Minimum execution time: 102_273_000 picoseconds. + Weight::from_parts(102_546_000, 30725) + // Standard Error: 76_720 + .saturating_add(Weight::from_parts(33_831_394, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(5_u64)) + .saturating_add(T::DbWeight::get().reads((3_u64).saturating_mul(x.into()))) + .saturating_add(T::DbWeight::get().writes(5_u64)) + .saturating_add(T::DbWeight::get().writes((3_u64).saturating_mul(x.into()))) + .saturating_add(Weight::from_parts(0, 11823).saturating_mul(x.into())) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `x` is `[3, 1000]`. fn cancel_leave_candidates(x: u32, ) -> Weight { - Weight::from_ref_time(70_048_572 as u64) - // Standard Error: 1_524 - .saturating_add(Weight::from_ref_time(145_661 as u64).saturating_mul(x as u64)) - .saturating_add(T::DbWeight::get().reads(2 as u64)) - .saturating_add(T::DbWeight::get().writes(2 as u64)) - } - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: ParachainStaking CandidatePool (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `833 + x * (36 ±0)` + // Estimated: `6478 + x * (74 ±0)` + // Minimum execution time: 28_142_000 picoseconds. + Weight::from_parts(22_767_262, 6478) + // Standard Error: 1_102 + .saturating_add(Weight::from_parts(73_806, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(2_u64)) + .saturating_add(T::DbWeight::get().writes(2_u64)) + .saturating_add(Weight::from_parts(0, 74).saturating_mul(x.into())) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) fn go_offline() -> Weight { - Weight::from_ref_time(42_412_000 as u64) - .saturating_add(T::DbWeight::get().reads(2 as u64)) - .saturating_add(T::DbWeight::get().writes(2 as u64)) - } - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: ParachainStaking CandidatePool (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `271` + // Estimated: `5492` + // Minimum execution time: 27_523_000 picoseconds. + Weight::from_parts(27_792_000, 5492) + .saturating_add(T::DbWeight::get().reads(2_u64)) + .saturating_add(T::DbWeight::get().writes(2_u64)) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) fn go_online() -> Weight { - Weight::from_ref_time(41_744_000 as u64) - .saturating_add(T::DbWeight::get().reads(2 as u64)) - .saturating_add(T::DbWeight::get().writes(2 as u64)) - } - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: ParachainStaking Total (r:1 w:1) - // Storage: Balances Locks (r:1 w:1) - // Storage: ParachainStaking CandidatePool (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `234` + // Estimated: `5418` + // Minimum execution time: 27_667_000 picoseconds. + Weight::from_parts(27_972_000, 5418) + .saturating_add(T::DbWeight::get().reads(2_u64)) + .saturating_add(T::DbWeight::get().writes(2_u64)) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) fn candidate_bond_more() -> Weight { - Weight::from_ref_time(68_900_000 as u64) - .saturating_add(T::DbWeight::get().reads(5 as u64)) - .saturating_add(T::DbWeight::get().writes(5 as u64)) - } - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `527` + // Estimated: `16349` + // Minimum execution time: 56_424_000 picoseconds. + Weight::from_parts(57_028_000, 16349) + .saturating_add(T::DbWeight::get().reads(5_u64)) + .saturating_add(T::DbWeight::get().writes(5_u64)) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) fn schedule_candidate_bond_less() -> Weight { - Weight::from_ref_time(38_239_000 as u64) - .saturating_add(T::DbWeight::get().reads(1 as u64)) - .saturating_add(T::DbWeight::get().writes(1 as u64)) - } - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: ParachainStaking Total (r:1 w:1) - // Storage: Balances Locks (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: ParachainStaking CandidatePool (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `171` + // Estimated: `3636` + // Minimum execution time: 22_764_000 picoseconds. + Weight::from_parts(23_511_000, 3636) + .saturating_add(T::DbWeight::get().reads(1_u64)) + .saturating_add(T::DbWeight::get().writes(1_u64)) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) fn execute_candidate_bond_less() -> Weight { - Weight::from_ref_time(76_166_000 as u64) - .saturating_add(T::DbWeight::get().reads(5 as u64)) - .saturating_add(T::DbWeight::get().writes(5 as u64)) - } - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `547` + // Estimated: `16409` + // Minimum execution time: 55_133_000 picoseconds. + Weight::from_parts(55_704_000, 16409) + .saturating_add(T::DbWeight::get().reads(5_u64)) + .saturating_add(T::DbWeight::get().writes(5_u64)) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) fn cancel_candidate_bond_less() -> Weight { - Weight::from_ref_time(35_581_000 as u64) - .saturating_add(T::DbWeight::get().reads(1 as u64)) - .saturating_add(T::DbWeight::get().writes(1 as u64)) - } - // Storage: System Account (r:1 w:1) - // Storage: ParachainStaking DelegatorState (r:1 w:1) - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: ParachainStaking TopDelegations (r:1 w:1) - // Storage: ParachainStaking CandidatePool (r:1 w:1) - // Storage: Balances Locks (r:1 w:1) - // Storage: ParachainStaking Total (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `191` + // Estimated: `3656` + // Minimum execution time: 20_773_000 picoseconds. + Weight::from_parts(21_485_000, 3656) + .saturating_add(T::DbWeight::get().reads(1_u64)) + .saturating_add(T::DbWeight::get().writes(1_u64)) + } + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `x` is `[3, 100]`. + /// The range of component `y` is `[2, 300]`. fn delegate(x: u32, y: u32, ) -> Weight { - Weight::from_ref_time(131_245_351 as u64) - // Standard Error: 19_323 - .saturating_add(Weight::from_ref_time(239_400 as u64).saturating_mul(x as u64)) - // Standard Error: 6_339 - .saturating_add(Weight::from_ref_time(261_836 as u64).saturating_mul(y as u64)) - .saturating_add(T::DbWeight::get().reads(7 as u64)) - .saturating_add(T::DbWeight::get().writes(7 as u64)) - } - // Storage: ParachainStaking DelegatorState (r:1 w:1) - // Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `2479 + x * (79 ±0) + y * (38 ±0)` + // Estimated: `32988 + x * (405 ±0) + y * (195 ±0)` + // Minimum execution time: 94_976_000 picoseconds. + Weight::from_parts(83_764_148, 32988) + // Standard Error: 1_433 + .saturating_add(Weight::from_parts(154_670, 0).saturating_mul(x.into())) + // Standard Error: 470 + .saturating_add(Weight::from_parts(48_242, 0).saturating_mul(y.into())) + .saturating_add(T::DbWeight::get().reads(7_u64)) + .saturating_add(T::DbWeight::get().writes(7_u64)) + .saturating_add(Weight::from_parts(0, 405).saturating_mul(x.into())) + .saturating_add(Weight::from_parts(0, 195).saturating_mul(y.into())) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) fn schedule_leave_delegators() -> Weight { - Weight::from_ref_time(44_609_000 as u64) - .saturating_add(T::DbWeight::get().reads(2 as u64)) - .saturating_add(T::DbWeight::get().writes(2 as u64)) - } - // Storage: ParachainStaking DelegatorState (r:1 w:1) - // Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: ParachainStaking TopDelegations (r:1 w:1) - // Storage: ParachainStaking CandidatePool (r:1 w:1) - // Storage: ParachainStaking Total (r:1 w:1) - // Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:0) - // Storage: Balances Locks (r:1 w:1) - // Storage: System Account (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `107` + // Estimated: `7144` + // Minimum execution time: 28_255_000 picoseconds. + Weight::from_parts(28_539_000, 7144) + .saturating_add(T::DbWeight::get().reads(2_u64)) + .saturating_add(T::DbWeight::get().writes(2_u64)) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:99 w:99) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidateInfo (r:99 w:99) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:99 w:99) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking AutoCompoundingDelegations (r:99 w:0) + /// Proof Skipped: ParachainStaking AutoCompoundingDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// The range of component `x` is `[2, 100]`. fn execute_leave_delegators(x: u32, ) -> Weight { - Weight::from_ref_time(14_022_061 as u64) - // Standard Error: 30_972 - .saturating_add(Weight::from_ref_time(29_549_278 as u64).saturating_mul(x as u64)) - .saturating_add(T::DbWeight::get().reads(1 as u64)) - .saturating_add(T::DbWeight::get().reads((4 as u64).saturating_mul(x as u64))) - .saturating_add(T::DbWeight::get().writes(2 as u64)) - .saturating_add(T::DbWeight::get().writes((3 as u64).saturating_mul(x as u64))) - } - // Storage: ParachainStaking DelegatorState (r:1 w:1) - // Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `824 + x * (376 ±0)` + // Estimated: `34626 + x * (12238 ±1)` + // Minimum execution time: 88_582_000 picoseconds. + Weight::from_parts(88_972_000, 34626) + // Standard Error: 40_214 + .saturating_add(Weight::from_parts(30_393_572, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(1_u64)) + .saturating_add(T::DbWeight::get().reads((4_u64).saturating_mul(x.into()))) + .saturating_add(T::DbWeight::get().writes(2_u64)) + .saturating_add(T::DbWeight::get().writes((3_u64).saturating_mul(x.into()))) + .saturating_add(Weight::from_parts(0, 12238).saturating_mul(x.into())) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) fn cancel_leave_delegators() -> Weight { - Weight::from_ref_time(44_825_000 as u64) - .saturating_add(T::DbWeight::get().reads(2 as u64)) - .saturating_add(T::DbWeight::get().writes(2 as u64)) - } - // Storage: ParachainStaking DelegatorState (r:1 w:1) - // Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `173` + // Estimated: `7276` + // Minimum execution time: 30_396_000 picoseconds. + Weight::from_parts(30_758_000, 7276) + .saturating_add(T::DbWeight::get().reads(2_u64)) + .saturating_add(T::DbWeight::get().writes(2_u64)) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) fn schedule_revoke_delegation() -> Weight { - Weight::from_ref_time(43_131_000 as u64) - .saturating_add(T::DbWeight::get().reads(2 as u64)) - .saturating_add(T::DbWeight::get().writes(2 as u64)) - } - // Storage: ParachainStaking DelegationScheduledRequests (r:1 w:0) - // Storage: ParachainStaking DelegatorState (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: Balances Locks (r:1 w:1) - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: ParachainStaking TopDelegations (r:1 w:1) - // Storage: ParachainStaking CandidatePool (r:1 w:1) - // Storage: ParachainStaking Total (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `107` + // Estimated: `7144` + // Minimum execution time: 27_434_000 picoseconds. + Weight::from_parts(27_725_000, 7144) + .saturating_add(T::DbWeight::get().reads(2_u64)) + .saturating_add(T::DbWeight::get().writes(2_u64)) + } + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:0) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) fn delegator_bond_more() -> Weight { - Weight::from_ref_time(90_452_000 as u64) - .saturating_add(T::DbWeight::get().reads(8 as u64)) - .saturating_add(T::DbWeight::get().writes(7 as u64)) - } - // Storage: ParachainStaking DelegatorState (r:1 w:1) - // Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `843` + // Estimated: `30221` + // Minimum execution time: 76_944_000 picoseconds. + Weight::from_parts(77_695_000, 30221) + .saturating_add(T::DbWeight::get().reads(8_u64)) + .saturating_add(T::DbWeight::get().writes(7_u64)) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) fn schedule_delegator_bond_less() -> Weight { - Weight::from_ref_time(43_388_000 as u64) - .saturating_add(T::DbWeight::get().reads(2 as u64)) - .saturating_add(T::DbWeight::get().writes(2 as u64)) - } - // Storage: ParachainStaking DelegatorState (r:1 w:1) - // Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) - // Storage: Balances Locks (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:0) - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: ParachainStaking TopDelegations (r:1 w:1) - // Storage: ParachainStaking CandidatePool (r:1 w:1) - // Storage: ParachainStaking Total (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `107` + // Estimated: `7144` + // Minimum execution time: 27_633_000 picoseconds. + Weight::from_parts(27_950_000, 7144) + .saturating_add(T::DbWeight::get().reads(2_u64)) + .saturating_add(T::DbWeight::get().writes(2_u64)) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:0) + /// Proof Skipped: ParachainStaking AutoCompoundingDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) fn execute_revoke_delegation() -> Weight { - Weight::from_ref_time(112_401_000 as u64) - .saturating_add(T::DbWeight::get().reads(9 as u64)) - .saturating_add(T::DbWeight::get().writes(8 as u64)) - } - // Storage: ParachainStaking DelegatorState (r:1 w:1) - // Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: Balances Locks (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: ParachainStaking TopDelegations (r:1 w:1) - // Storage: ParachainStaking CandidatePool (r:1 w:1) - // Storage: ParachainStaking Total (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `964` + // Estimated: `35376` + // Minimum execution time: 92_054_000 picoseconds. + Weight::from_parts(93_161_000, 35376) + .saturating_add(T::DbWeight::get().reads(9_u64)) + .saturating_add(T::DbWeight::get().writes(8_u64)) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking TopDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) fn execute_delegator_bond_less() -> Weight { - Weight::from_ref_time(97_377_000 as u64) - .saturating_add(T::DbWeight::get().reads(8 as u64)) - .saturating_add(T::DbWeight::get().writes(8 as u64)) - } - // Storage: ParachainStaking DelegatorState (r:1 w:1) - // Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `909` + // Estimated: `30617` + // Minimum execution time: 77_509_000 picoseconds. + Weight::from_parts(78_070_000, 30617) + .saturating_add(T::DbWeight::get().reads(8_u64)) + .saturating_add(T::DbWeight::get().writes(8_u64)) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) fn cancel_revoke_delegation() -> Weight { - Weight::from_ref_time(43_406_000 as u64) - .saturating_add(T::DbWeight::get().reads(2 as u64)) - .saturating_add(T::DbWeight::get().writes(2 as u64)) - } - // Storage: ParachainStaking DelegatorState (r:1 w:1) - // Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `173` + // Estimated: `7276` + // Minimum execution time: 27_469_000 picoseconds. + Weight::from_parts(28_047_000, 7276) + .saturating_add(T::DbWeight::get().reads(2_u64)) + .saturating_add(T::DbWeight::get().writes(2_u64)) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) fn cancel_delegator_bond_less() -> Weight { - Weight::from_ref_time(49_020_000 as u64) - .saturating_add(T::DbWeight::get().reads(2 as u64)) - .saturating_add(T::DbWeight::get().writes(2 as u64)) - } - // Storage: ParachainStaking Points (r:1 w:0) - // Storage: ParachainStaking Staked (r:1 w:1) - // Storage: ParachainStaking InflationConfig (r:1 w:0) - // Storage: ParachainStaking ParachainBondInfo (r:1 w:0) - // Storage: System Account (r:1 w:1) - // Storage: ParachainStaking CollatorCommission (r:1 w:0) - // Storage: ParachainStaking DelayedPayouts (r:0 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `173` + // Estimated: `7276` + // Minimum execution time: 28_572_000 picoseconds. + Weight::from_parts(28_806_000, 7276) + .saturating_add(T::DbWeight::get().reads(2_u64)) + .saturating_add(T::DbWeight::get().writes(2_u64)) + } + /// Storage: ParachainStaking Points (r:1 w:0) + /// Proof Skipped: ParachainStaking Points (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking Staked (r:1 w:1) + /// Proof Skipped: ParachainStaking Staked (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking InflationConfig (r:1 w:0) + /// Proof Skipped: ParachainStaking InflationConfig (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking ParachainBondInfo (r:1 w:0) + /// Proof Skipped: ParachainStaking ParachainBondInfo (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking CollatorCommission (r:1 w:0) + /// Proof Skipped: ParachainStaking CollatorCommission (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking DelayedPayouts (r:0 w:1) + /// Proof Skipped: ParachainStaking DelayedPayouts (max_values: None, max_size: None, mode: Measured) fn prepare_staking_payouts() -> Weight { - Weight::from_ref_time(59_628_000 as u64) - .saturating_add(T::DbWeight::get().reads(6 as u64)) - .saturating_add(T::DbWeight::get().writes(3 as u64)) - } - // Storage: ParachainStaking DelegationScheduledRequests (r:1 w:0) - // Storage: ParachainStaking TopDelegations (r:1 w:0) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `380` + // Estimated: `17246` + // Minimum execution time: 43_338_000 picoseconds. + Weight::from_parts(43_786_000, 17246) + .saturating_add(T::DbWeight::get().reads(6_u64)) + .saturating_add(T::DbWeight::get().writes(3_u64)) + } + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:0) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:1 w:0) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// The range of component `y` is `[0, 100]`. fn get_rewardable_delegators(y: u32, ) -> Weight { - Weight::from_ref_time(16_322_694 as u64) - // Standard Error: 1_133 - .saturating_add(Weight::from_ref_time(233_812 as u64).saturating_mul(y as u64)) - .saturating_add(T::DbWeight::get().reads(2 as u64)) - } - // Storage: ParachainStaking CandidatePool (r:1 w:0) - // Storage: ParachainStaking TotalSelected (r:1 w:0) - // Storage: ParachainStaking CandidateInfo (r:1 w:0) - // Storage: ParachainStaking DelegationScheduledRequests (r:1 w:0) - // Storage: ParachainStaking TopDelegations (r:1 w:0) - // Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:0) - // Storage: ParachainStaking SelectedCandidates (r:0 w:1) - // Storage: ParachainStaking AtStake (r:0 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `73 + y * (36 ±0)` + // Estimated: `7074 + y * (72 ±0)` + // Minimum execution time: 8_392_000 picoseconds. + Weight::from_parts(9_785_180, 7074) + // Standard Error: 388 + .saturating_add(Weight::from_parts(24_123, 0).saturating_mul(y.into())) + .saturating_add(T::DbWeight::get().reads(2_u64)) + .saturating_add(Weight::from_parts(0, 72).saturating_mul(y.into())) + } + /// Storage: ParachainStaking TotalSelected (r:1 w:0) + /// Proof Skipped: ParachainStaking TotalSelected (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:0) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidateInfo (r:51 w:0) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:51 w:0) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:51 w:0) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking AutoCompoundingDelegations (r:51 w:0) + /// Proof Skipped: ParachainStaking AutoCompoundingDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking SelectedCandidates (r:0 w:1) + /// Proof Skipped: ParachainStaking SelectedCandidates (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking AtStake (r:0 w:51) + /// Proof Skipped: ParachainStaking AtStake (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[0, 50]`. + /// The range of component `y` is `[0, 100]`. fn select_top_candidates(x: u32, y: u32, ) -> Weight { - Weight::from_ref_time(44_110_000 as u64) - // Standard Error: 237_049 - .saturating_add(Weight::from_ref_time(24_788_127 as u64).saturating_mul(x as u64)) - // Standard Error: 118_210 - .saturating_add(Weight::from_ref_time(2_957_731 as u64).saturating_mul(y as u64)) - .saturating_add(T::DbWeight::get().reads(6 as u64)) - .saturating_add(T::DbWeight::get().reads((4 as u64).saturating_mul(x as u64))) - .saturating_add(T::DbWeight::get().writes(2 as u64)) - .saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(x as u64))) - } - // Storage: ParachainStaking DelayedPayouts (r:1 w:0) - // Storage: ParachainStaking Points (r:1 w:0) - // Storage: ParachainStaking AtStake (r:2 w:1) - // Storage: ParachainStaking AwardedPts (r:1 w:1) - // Storage: MoonbeamOrbiters OrbiterPerRound (r:1 w:0) - // Storage: System Account (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `0 + x * (3816 ±0) + y * (1800 ±0)` + // Estimated: `18950 + x * (21900 ±39) + y * (5112 ±19)` + // Minimum execution time: 32_303_000 picoseconds. + Weight::from_parts(32_680_000, 18950) + // Standard Error: 82_316 + .saturating_add(Weight::from_parts(23_158_353, 0).saturating_mul(x.into())) + // Standard Error: 41_048 + .saturating_add(Weight::from_parts(1_334_029, 0).saturating_mul(y.into())) + .saturating_add(T::DbWeight::get().reads(6_u64)) + .saturating_add(T::DbWeight::get().reads((4_u64).saturating_mul(x.into()))) + .saturating_add(T::DbWeight::get().writes(2_u64)) + .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(x.into()))) + .saturating_add(Weight::from_parts(0, 21900).saturating_mul(x.into())) + .saturating_add(Weight::from_parts(0, 5112).saturating_mul(y.into())) + } + /// Storage: ParachainStaking DelayedPayouts (r:1 w:0) + /// Proof Skipped: ParachainStaking DelayedPayouts (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking Points (r:1 w:0) + /// Proof Skipped: ParachainStaking Points (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking AtStake (r:2 w:1) + /// Proof Skipped: ParachainStaking AtStake (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking AwardedPts (r:1 w:1) + /// Proof Skipped: ParachainStaking AwardedPts (max_values: None, max_size: None, mode: Measured) + /// Storage: MoonbeamOrbiters OrbiterPerRound (r:1 w:0) + /// Proof Skipped: MoonbeamOrbiters OrbiterPerRound (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:301 w:301) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// The range of component `y` is `[0, 300]`. fn pay_one_collator_reward(y: u32, ) -> Weight { - Weight::from_ref_time(65_307_432 as u64) - // Standard Error: 9_596 - .saturating_add(Weight::from_ref_time(17_073_916 as u64).saturating_mul(y as u64)) - .saturating_add(T::DbWeight::get().reads(7 as u64)) - .saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(y as u64))) - .saturating_add(T::DbWeight::get().writes(3 as u64)) - .saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(y as u64))) - } - #[rustfmt::skip] - fn base_on_initialize() -> Weight { - Weight::from_ref_time(10_890_000 as u64) + // Proof Size summary in bytes: + // Measured: `1132 + y * (160 ±0)` + // Estimated: `28331 + y * (3396 ±0)` + // Minimum execution time: 58_105_000 picoseconds. + Weight::from_parts(53_052_308, 28331) + // Standard Error: 6_526 + .saturating_add(Weight::from_parts(19_017_961, 0).saturating_mul(y.into())) + .saturating_add(T::DbWeight::get().reads(7_u64)) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(y.into()))) + .saturating_add(T::DbWeight::get().writes(3_u64)) + .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(y.into()))) + .saturating_add(Weight::from_parts(0, 3396).saturating_mul(y.into())) } - // Storage: ParachainStaking DelegatorState (r:1 w:0) - // Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:1) - #[rustfmt::skip] + fn base_on_initialize() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_008_000 picoseconds. + Weight::from_parts(2_065_000, 0) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:0) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking AutoCompoundingDelegations (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[0, 300]`. + /// The range of component `y` is `[0, 100]`. fn set_auto_compound(x: u32, y: u32, ) -> Weight { - Weight::from_ref_time(64_797_700 as u64) - // Standard Error: 5_810 - .saturating_add(Weight::from_ref_time(292_809 as u64).saturating_mul(x as u64)) - // Standard Error: 17_394 - .saturating_add(Weight::from_ref_time(258_382 as u64).saturating_mul(y as u64)) - .saturating_add(T::DbWeight::get().reads(2 as u64)) - .saturating_add(T::DbWeight::get().writes(1 as u64)) - } - // Storage: System Account (r:1 w:1) - // Storage: ParachainStaking DelegatorState (r:1 w:1) - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:1) - // Storage: ParachainStaking TopDelegations (r:1 w:1) - // Storage: ParachainStaking CandidatePool (r:1 w:1) - // Storage: Balances Locks (r:1 w:1) - // Storage: ParachainStaking Total (r:1 w:1) - // Storage: ParachainStaking BottomDelegations (r:1 w:1) - #[rustfmt::skip] - fn delegate_with_auto_compound(x: u32, y: u32, _z: u32, ) -> Weight { - Weight::from_ref_time(181_911_542 as u64) - // Standard Error: 5_811 - .saturating_add(Weight::from_ref_time(120_473 as u64).saturating_mul(x as u64)) - // Standard Error: 5_811 - .saturating_add(Weight::from_ref_time(80_638 as u64).saturating_mul(y as u64)) - .saturating_add(T::DbWeight::get().reads(8 as u64)) - .saturating_add(T::DbWeight::get().writes(8 as u64)) - } - // Storage: System Account (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `671 + x * (22 ±0) + y * (36 ±0)` + // Estimated: `8054 + x * (46 ±0) + y * (72 ±0)` + // Minimum execution time: 29_102_000 picoseconds. + Weight::from_parts(26_155_259, 8054) + // Standard Error: 278 + .saturating_add(Weight::from_parts(49_717, 0).saturating_mul(x.into())) + // Standard Error: 833 + .saturating_add(Weight::from_parts(48_123, 0).saturating_mul(y.into())) + .saturating_add(T::DbWeight::get().reads(2_u64)) + .saturating_add(T::DbWeight::get().writes(1_u64)) + .saturating_add(Weight::from_parts(0, 46).saturating_mul(x.into())) + .saturating_add(Weight::from_parts(0, 72).saturating_mul(y.into())) + } + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking AutoCompoundingDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking BottomDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking BottomDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `x` is `[0, 350]`. + /// The range of component `y` is `[0, 350]`. + /// The range of component `z` is `[0, 100]`. + fn delegate_with_auto_compound(x: u32, y: u32, z: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0 + x * (58 ±0) + y * (21 ±0) + z * (41 ±0)` + // Estimated: `59323 + x * (145 ±0) + y * (132 ±0) + z * (873144491150315 ±3)` + // Minimum execution time: 100_647_000 picoseconds. + Weight::from_parts(84_809_337, 59323) + // Standard Error: 1_211 + .saturating_add(Weight::from_parts(15_186, 0).saturating_mul(x.into())) + // Standard Error: 1_211 + .saturating_add(Weight::from_parts(30_270, 0).saturating_mul(y.into())) + // Standard Error: 4_227 + .saturating_add(Weight::from_parts(173_069, 0).saturating_mul(z.into())) + .saturating_add(T::DbWeight::get().reads(8_u64)) + .saturating_add(T::DbWeight::get().writes(8_u64)) + .saturating_add(Weight::from_parts(0, 145).saturating_mul(x.into())) + .saturating_add(Weight::from_parts(0, 132).saturating_mul(y.into())) + .saturating_add(Weight::from_parts(0, 307).saturating_mul(z.into())) + } + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) fn mint_collator_reward() -> Weight { - Weight::from_ref_time(40_146_000 as u64) - .saturating_add(T::DbWeight::get().reads(1 as u64)) - .saturating_add(T::DbWeight::get().writes(1 as u64)) + // Proof Size summary in bytes: + // Measured: `128` + // Estimated: `3581` + // Minimum execution time: 24_224_000 picoseconds. + Weight::from_parts(24_514_000, 3581) + .saturating_add(T::DbWeight::get().reads(1_u64)) + .saturating_add(T::DbWeight::get().writes(1_u64)) } } // For backwards compatibility and tests impl WeightInfo for () { - // Storage: ParachainStaking InflationConfig (r:1 w:1) - #[rustfmt::skip] + /// Storage: ParachainStaking InflationConfig (r:1 w:1) + /// Proof Skipped: ParachainStaking InflationConfig (max_values: Some(1), max_size: None, mode: Measured) fn set_staking_expectations() -> Weight { - Weight::from_ref_time(48_225_000 as u64) - .saturating_add(RocksDbWeight::get().reads(1 as u64)) - .saturating_add(RocksDbWeight::get().writes(1 as u64)) - } - // Storage: ParachainStaking InflationConfig (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `88` + // Estimated: `1573` + // Minimum execution time: 18_070_000 picoseconds. + Weight::from_parts(18_325_000, 1573) + .saturating_add(RocksDbWeight::get().reads(1_u64)) + .saturating_add(RocksDbWeight::get().writes(1_u64)) + } + /// Storage: ParachainStaking InflationConfig (r:1 w:1) + /// Proof Skipped: ParachainStaking InflationConfig (max_values: Some(1), max_size: None, mode: Measured) fn set_inflation() -> Weight { - Weight::from_ref_time(61_063_000 as u64) - .saturating_add(RocksDbWeight::get().reads(1 as u64)) - .saturating_add(RocksDbWeight::get().writes(1 as u64)) - } - // Storage: ParachainStaking ParachainBondInfo (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `88` + // Estimated: `1573` + // Minimum execution time: 47_600_000 picoseconds. + Weight::from_parts(48_094_000, 1573) + .saturating_add(RocksDbWeight::get().reads(1_u64)) + .saturating_add(RocksDbWeight::get().writes(1_u64)) + } + /// Storage: ParachainStaking ParachainBondInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking ParachainBondInfo (max_values: Some(1), max_size: None, mode: Measured) fn set_parachain_bond_account() -> Weight { - Weight::from_ref_time(27_645_000 as u64) - .saturating_add(RocksDbWeight::get().reads(1 as u64)) - .saturating_add(RocksDbWeight::get().writes(1 as u64)) - } - // Storage: ParachainStaking ParachainBondInfo (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `6` + // Estimated: `1491` + // Minimum execution time: 15_818_000 picoseconds. + Weight::from_parts(16_256_000, 1491) + .saturating_add(RocksDbWeight::get().reads(1_u64)) + .saturating_add(RocksDbWeight::get().writes(1_u64)) + } + /// Storage: ParachainStaking ParachainBondInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking ParachainBondInfo (max_values: Some(1), max_size: None, mode: Measured) fn set_parachain_bond_reserve_percent() -> Weight { - Weight::from_ref_time(26_922_000 as u64) - .saturating_add(RocksDbWeight::get().reads(1 as u64)) - .saturating_add(RocksDbWeight::get().writes(1 as u64)) - } - // Storage: ParachainStaking TotalSelected (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `6` + // Estimated: `1491` + // Minimum execution time: 15_327_000 picoseconds. + Weight::from_parts(15_488_000, 1491) + .saturating_add(RocksDbWeight::get().reads(1_u64)) + .saturating_add(RocksDbWeight::get().writes(1_u64)) + } + /// Storage: ParachainStaking TotalSelected (r:1 w:1) + /// Proof Skipped: ParachainStaking TotalSelected (max_values: Some(1), max_size: None, mode: Measured) fn set_total_selected() -> Weight { - Weight::from_ref_time(29_263_000 as u64) - .saturating_add(RocksDbWeight::get().reads(1 as u64)) - .saturating_add(RocksDbWeight::get().writes(1 as u64)) - } - // Storage: ParachainStaking CollatorCommission (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `28` + // Estimated: `1513` + // Minimum execution time: 16_629_000 picoseconds. + Weight::from_parts(17_245_000, 1513) + .saturating_add(RocksDbWeight::get().reads(1_u64)) + .saturating_add(RocksDbWeight::get().writes(1_u64)) + } + /// Storage: ParachainStaking CollatorCommission (r:1 w:1) + /// Proof Skipped: ParachainStaking CollatorCommission (max_values: Some(1), max_size: None, mode: Measured) fn set_collator_commission() -> Weight { - Weight::from_ref_time(25_867_000 as u64) - .saturating_add(RocksDbWeight::get().reads(1 as u64)) - .saturating_add(RocksDbWeight::get().writes(1 as u64)) - } - // Storage: ParachainStaking TotalSelected (r:1 w:0) - // Storage: ParachainStaking InflationConfig (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `27` + // Estimated: `1512` + // Minimum execution time: 15_586_000 picoseconds. + Weight::from_parts(16_060_000, 1512) + .saturating_add(RocksDbWeight::get().reads(1_u64)) + .saturating_add(RocksDbWeight::get().writes(1_u64)) + } + /// Storage: ParachainStaking TotalSelected (r:1 w:0) + /// Proof Skipped: ParachainStaking TotalSelected (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking InflationConfig (r:1 w:1) + /// Proof Skipped: ParachainStaking InflationConfig (max_values: Some(1), max_size: None, mode: Measured) fn set_blocks_per_round() -> Weight { - Weight::from_ref_time(66_047_000 as u64) - .saturating_add(RocksDbWeight::get().reads(2 as u64)) - .saturating_add(RocksDbWeight::get().writes(1 as u64)) - } - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: ParachainStaking DelegatorState (r:1 w:0) - // Storage: ParachainStaking CandidatePool (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: Balances Locks (r:1 w:1) - // Storage: ParachainStaking Total (r:1 w:1) - // Storage: ParachainStaking TopDelegations (r:0 w:1) - // Storage: ParachainStaking BottomDelegations (r:0 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `116` + // Estimated: `3202` + // Minimum execution time: 52_085_000 picoseconds. + Weight::from_parts(52_439_000, 3202) + .saturating_add(RocksDbWeight::get().reads(2_u64)) + .saturating_add(RocksDbWeight::get().writes(1_u64)) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegatorState (r:1 w:0) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:0 w:1) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking BottomDelegations (r:0 w:1) + /// Proof Skipped: ParachainStaking BottomDelegations (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[3, 1000]`. fn join_candidates(x: u32, ) -> Weight { - Weight::from_ref_time(93_609_702 as u64) - // Standard Error: 1_049 - .saturating_add(Weight::from_ref_time(156_227 as u64).saturating_mul(x as u64)) - .saturating_add(RocksDbWeight::get().reads(6 as u64)) - .saturating_add(RocksDbWeight::get().writes(7 as u64)) - } - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: ParachainStaking CandidatePool (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `1821 + x * (37 ±0)` + // Estimated: `27743 + x * (228 ±0)` + // Minimum execution time: 62_721_000 picoseconds. + Weight::from_parts(59_951_661, 27743) + // Standard Error: 1_080 + .saturating_add(Weight::from_parts(83_856, 0).saturating_mul(x.into())) + .saturating_add(RocksDbWeight::get().reads(6_u64)) + .saturating_add(RocksDbWeight::get().writes(7_u64)) + .saturating_add(Weight::from_parts(0, 228).saturating_mul(x.into())) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `x` is `[3, 1000]`. fn schedule_leave_candidates(x: u32, ) -> Weight { - Weight::from_ref_time(74_938_974 as u64) - // Standard Error: 1_813 - .saturating_add(Weight::from_ref_time(136_560 as u64).saturating_mul(x as u64)) - .saturating_add(RocksDbWeight::get().reads(2 as u64)) - .saturating_add(RocksDbWeight::get().writes(2 as u64)) - } - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: ParachainStaking TopDelegations (r:1 w:1) - // Storage: ParachainStaking DelegatorState (r:1 w:1) - // Storage: Balances Locks (r:2 w:2) - // Storage: System Account (r:2 w:2) - // Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) - // Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:1) - // Storage: ParachainStaking BottomDelegations (r:1 w:1) - // Storage: ParachainStaking Total (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `865 + x * (36 ±0)` + // Estimated: `6542 + x * (74 ±0)` + // Minimum execution time: 29_088_000 picoseconds. + Weight::from_parts(23_948_090, 6542) + // Standard Error: 1_107 + .saturating_add(Weight::from_parts(72_705, 0).saturating_mul(x.into())) + .saturating_add(RocksDbWeight::get().reads(2_u64)) + .saturating_add(RocksDbWeight::get().writes(2_u64)) + .saturating_add(Weight::from_parts(0, 74).saturating_mul(x.into())) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegatorState (r:349 w:349) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Locks (r:350 w:350) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: System Account (r:350 w:350) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking AutoCompoundingDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking BottomDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking BottomDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `x` is `[2, 350]`. fn execute_leave_candidates(x: u32, ) -> Weight { - Weight::from_ref_time(120_885_000 as u64) - // Standard Error: 73_687 - .saturating_add(Weight::from_ref_time(31_457_020 as u64).saturating_mul(x as u64)) - .saturating_add(RocksDbWeight::get().reads(5 as u64)) - .saturating_add(RocksDbWeight::get().reads((3 as u64).saturating_mul(x as u64))) - .saturating_add(RocksDbWeight::get().writes(5 as u64)) - .saturating_add(RocksDbWeight::get().writes((3 as u64).saturating_mul(x as u64))) - } - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: ParachainStaking CandidatePool (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `979 + x * (431 ±0)` + // Estimated: `30725 + x * (11823 ±0)` + // Minimum execution time: 102_273_000 picoseconds. + Weight::from_parts(102_546_000, 30725) + // Standard Error: 76_720 + .saturating_add(Weight::from_parts(33_831_394, 0).saturating_mul(x.into())) + .saturating_add(RocksDbWeight::get().reads(5_u64)) + .saturating_add(RocksDbWeight::get().reads((3_u64).saturating_mul(x.into()))) + .saturating_add(RocksDbWeight::get().writes(5_u64)) + .saturating_add(RocksDbWeight::get().writes((3_u64).saturating_mul(x.into()))) + .saturating_add(Weight::from_parts(0, 11823).saturating_mul(x.into())) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `x` is `[3, 1000]`. fn cancel_leave_candidates(x: u32, ) -> Weight { - Weight::from_ref_time(70_048_572 as u64) - // Standard Error: 1_524 - .saturating_add(Weight::from_ref_time(145_661 as u64).saturating_mul(x as u64)) - .saturating_add(RocksDbWeight::get().reads(2 as u64)) - .saturating_add(RocksDbWeight::get().writes(2 as u64)) - } - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: ParachainStaking CandidatePool (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `833 + x * (36 ±0)` + // Estimated: `6478 + x * (74 ±0)` + // Minimum execution time: 28_142_000 picoseconds. + Weight::from_parts(22_767_262, 6478) + // Standard Error: 1_102 + .saturating_add(Weight::from_parts(73_806, 0).saturating_mul(x.into())) + .saturating_add(RocksDbWeight::get().reads(2_u64)) + .saturating_add(RocksDbWeight::get().writes(2_u64)) + .saturating_add(Weight::from_parts(0, 74).saturating_mul(x.into())) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) fn go_offline() -> Weight { - Weight::from_ref_time(42_412_000 as u64) - .saturating_add(RocksDbWeight::get().reads(2 as u64)) - .saturating_add(RocksDbWeight::get().writes(2 as u64)) - } - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: ParachainStaking CandidatePool (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `271` + // Estimated: `5492` + // Minimum execution time: 27_523_000 picoseconds. + Weight::from_parts(27_792_000, 5492) + .saturating_add(RocksDbWeight::get().reads(2_u64)) + .saturating_add(RocksDbWeight::get().writes(2_u64)) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) fn go_online() -> Weight { - Weight::from_ref_time(41_744_000 as u64) - .saturating_add(RocksDbWeight::get().reads(2 as u64)) - .saturating_add(RocksDbWeight::get().writes(2 as u64)) - } - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: ParachainStaking Total (r:1 w:1) - // Storage: Balances Locks (r:1 w:1) - // Storage: ParachainStaking CandidatePool (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `234` + // Estimated: `5418` + // Minimum execution time: 27_667_000 picoseconds. + Weight::from_parts(27_972_000, 5418) + .saturating_add(RocksDbWeight::get().reads(2_u64)) + .saturating_add(RocksDbWeight::get().writes(2_u64)) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) fn candidate_bond_more() -> Weight { - Weight::from_ref_time(68_900_000 as u64) - .saturating_add(RocksDbWeight::get().reads(5 as u64)) - .saturating_add(RocksDbWeight::get().writes(5 as u64)) - } - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `527` + // Estimated: `16349` + // Minimum execution time: 56_424_000 picoseconds. + Weight::from_parts(57_028_000, 16349) + .saturating_add(RocksDbWeight::get().reads(5_u64)) + .saturating_add(RocksDbWeight::get().writes(5_u64)) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) fn schedule_candidate_bond_less() -> Weight { - Weight::from_ref_time(38_239_000 as u64) - .saturating_add(RocksDbWeight::get().reads(1 as u64)) - .saturating_add(RocksDbWeight::get().writes(1 as u64)) - } - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: ParachainStaking Total (r:1 w:1) - // Storage: Balances Locks (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: ParachainStaking CandidatePool (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `171` + // Estimated: `3636` + // Minimum execution time: 22_764_000 picoseconds. + Weight::from_parts(23_511_000, 3636) + .saturating_add(RocksDbWeight::get().reads(1_u64)) + .saturating_add(RocksDbWeight::get().writes(1_u64)) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) fn execute_candidate_bond_less() -> Weight { - Weight::from_ref_time(76_166_000 as u64) - .saturating_add(RocksDbWeight::get().reads(5 as u64)) - .saturating_add(RocksDbWeight::get().writes(5 as u64)) - } - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `547` + // Estimated: `16409` + // Minimum execution time: 55_133_000 picoseconds. + Weight::from_parts(55_704_000, 16409) + .saturating_add(RocksDbWeight::get().reads(5_u64)) + .saturating_add(RocksDbWeight::get().writes(5_u64)) + } + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) fn cancel_candidate_bond_less() -> Weight { - Weight::from_ref_time(35_581_000 as u64) - .saturating_add(RocksDbWeight::get().reads(1 as u64)) - .saturating_add(RocksDbWeight::get().writes(1 as u64)) - } - // Storage: System Account (r:1 w:1) - // Storage: ParachainStaking DelegatorState (r:1 w:1) - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: ParachainStaking TopDelegations (r:1 w:1) - // Storage: ParachainStaking CandidatePool (r:1 w:1) - // Storage: Balances Locks (r:1 w:1) - // Storage: ParachainStaking Total (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `191` + // Estimated: `3656` + // Minimum execution time: 20_773_000 picoseconds. + Weight::from_parts(21_485_000, 3656) + .saturating_add(RocksDbWeight::get().reads(1_u64)) + .saturating_add(RocksDbWeight::get().writes(1_u64)) + } + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `x` is `[3, 100]`. + /// The range of component `y` is `[2, 300]`. fn delegate(x: u32, y: u32, ) -> Weight { - Weight::from_ref_time(131_245_351 as u64) - // Standard Error: 19_323 - .saturating_add(Weight::from_ref_time(239_400 as u64).saturating_mul(x as u64)) - // Standard Error: 6_339 - .saturating_add(Weight::from_ref_time(261_836 as u64).saturating_mul(y as u64)) - .saturating_add(RocksDbWeight::get().reads(7 as u64)) - .saturating_add(RocksDbWeight::get().writes(7 as u64)) - } - // Storage: ParachainStaking DelegatorState (r:1 w:1) - // Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `2479 + x * (79 ±0) + y * (38 ±0)` + // Estimated: `32988 + x * (405 ±0) + y * (195 ±0)` + // Minimum execution time: 94_976_000 picoseconds. + Weight::from_parts(83_764_148, 32988) + // Standard Error: 1_433 + .saturating_add(Weight::from_parts(154_670, 0).saturating_mul(x.into())) + // Standard Error: 470 + .saturating_add(Weight::from_parts(48_242, 0).saturating_mul(y.into())) + .saturating_add(RocksDbWeight::get().reads(7_u64)) + .saturating_add(RocksDbWeight::get().writes(7_u64)) + .saturating_add(Weight::from_parts(0, 405).saturating_mul(x.into())) + .saturating_add(Weight::from_parts(0, 195).saturating_mul(y.into())) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) fn schedule_leave_delegators() -> Weight { - Weight::from_ref_time(44_609_000 as u64) - .saturating_add(RocksDbWeight::get().reads(2 as u64)) - .saturating_add(RocksDbWeight::get().writes(2 as u64)) - } - // Storage: ParachainStaking DelegatorState (r:1 w:1) - // Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: ParachainStaking TopDelegations (r:1 w:1) - // Storage: ParachainStaking CandidatePool (r:1 w:1) - // Storage: ParachainStaking Total (r:1 w:1) - // Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:0) - // Storage: Balances Locks (r:1 w:1) - // Storage: System Account (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `107` + // Estimated: `7144` + // Minimum execution time: 28_255_000 picoseconds. + Weight::from_parts(28_539_000, 7144) + .saturating_add(RocksDbWeight::get().reads(2_u64)) + .saturating_add(RocksDbWeight::get().writes(2_u64)) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:99 w:99) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidateInfo (r:99 w:99) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:99 w:99) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking AutoCompoundingDelegations (r:99 w:0) + /// Proof Skipped: ParachainStaking AutoCompoundingDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// The range of component `x` is `[2, 100]`. fn execute_leave_delegators(x: u32, ) -> Weight { - Weight::from_ref_time(14_022_061 as u64) - // Standard Error: 30_972 - .saturating_add(Weight::from_ref_time(29_549_278 as u64).saturating_mul(x as u64)) - .saturating_add(RocksDbWeight::get().reads(1 as u64)) - .saturating_add(RocksDbWeight::get().reads((4 as u64).saturating_mul(x as u64))) - .saturating_add(RocksDbWeight::get().writes(2 as u64)) - .saturating_add(RocksDbWeight::get().writes((3 as u64).saturating_mul(x as u64))) - } - // Storage: ParachainStaking DelegatorState (r:1 w:1) - // Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `824 + x * (376 ±0)` + // Estimated: `34626 + x * (12238 ±1)` + // Minimum execution time: 88_582_000 picoseconds. + Weight::from_parts(88_972_000, 34626) + // Standard Error: 40_214 + .saturating_add(Weight::from_parts(30_393_572, 0).saturating_mul(x.into())) + .saturating_add(RocksDbWeight::get().reads(1_u64)) + .saturating_add(RocksDbWeight::get().reads((4_u64).saturating_mul(x.into()))) + .saturating_add(RocksDbWeight::get().writes(2_u64)) + .saturating_add(RocksDbWeight::get().writes((3_u64).saturating_mul(x.into()))) + .saturating_add(Weight::from_parts(0, 12238).saturating_mul(x.into())) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) fn cancel_leave_delegators() -> Weight { - Weight::from_ref_time(44_825_000 as u64) - .saturating_add(RocksDbWeight::get().reads(2 as u64)) - .saturating_add(RocksDbWeight::get().writes(2 as u64)) - } - // Storage: ParachainStaking DelegatorState (r:1 w:1) - // Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `173` + // Estimated: `7276` + // Minimum execution time: 30_396_000 picoseconds. + Weight::from_parts(30_758_000, 7276) + .saturating_add(RocksDbWeight::get().reads(2_u64)) + .saturating_add(RocksDbWeight::get().writes(2_u64)) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) fn schedule_revoke_delegation() -> Weight { - Weight::from_ref_time(43_131_000 as u64) - .saturating_add(RocksDbWeight::get().reads(2 as u64)) - .saturating_add(RocksDbWeight::get().writes(2 as u64)) - } - // Storage: ParachainStaking DelegationScheduledRequests (r:1 w:0) - // Storage: ParachainStaking DelegatorState (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: Balances Locks (r:1 w:1) - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: ParachainStaking TopDelegations (r:1 w:1) - // Storage: ParachainStaking CandidatePool (r:1 w:1) - // Storage: ParachainStaking Total (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `107` + // Estimated: `7144` + // Minimum execution time: 27_434_000 picoseconds. + Weight::from_parts(27_725_000, 7144) + .saturating_add(RocksDbWeight::get().reads(2_u64)) + .saturating_add(RocksDbWeight::get().writes(2_u64)) + } + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:0) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) fn delegator_bond_more() -> Weight { - Weight::from_ref_time(90_452_000 as u64) - .saturating_add(RocksDbWeight::get().reads(8 as u64)) - .saturating_add(RocksDbWeight::get().writes(7 as u64)) - } - // Storage: ParachainStaking DelegatorState (r:1 w:1) - // Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `843` + // Estimated: `30221` + // Minimum execution time: 76_944_000 picoseconds. + Weight::from_parts(77_695_000, 30221) + .saturating_add(RocksDbWeight::get().reads(8_u64)) + .saturating_add(RocksDbWeight::get().writes(7_u64)) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) fn schedule_delegator_bond_less() -> Weight { - Weight::from_ref_time(43_388_000 as u64) - .saturating_add(RocksDbWeight::get().reads(2 as u64)) - .saturating_add(RocksDbWeight::get().writes(2 as u64)) - } - // Storage: ParachainStaking DelegatorState (r:1 w:1) - // Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) - // Storage: Balances Locks (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:0) - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: ParachainStaking TopDelegations (r:1 w:1) - // Storage: ParachainStaking CandidatePool (r:1 w:1) - // Storage: ParachainStaking Total (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `107` + // Estimated: `7144` + // Minimum execution time: 27_633_000 picoseconds. + Weight::from_parts(27_950_000, 7144) + .saturating_add(RocksDbWeight::get().reads(2_u64)) + .saturating_add(RocksDbWeight::get().writes(2_u64)) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:0) + /// Proof Skipped: ParachainStaking AutoCompoundingDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) fn execute_revoke_delegation() -> Weight { - Weight::from_ref_time(112_401_000 as u64) - .saturating_add(RocksDbWeight::get().reads(9 as u64)) - .saturating_add(RocksDbWeight::get().writes(8 as u64)) - } - // Storage: ParachainStaking DelegatorState (r:1 w:1) - // Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: Balances Locks (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: ParachainStaking TopDelegations (r:1 w:1) - // Storage: ParachainStaking CandidatePool (r:1 w:1) - // Storage: ParachainStaking Total (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `964` + // Estimated: `35376` + // Minimum execution time: 92_054_000 picoseconds. + Weight::from_parts(93_161_000, 35376) + .saturating_add(RocksDbWeight::get().reads(9_u64)) + .saturating_add(RocksDbWeight::get().writes(8_u64)) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking TopDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) fn execute_delegator_bond_less() -> Weight { - Weight::from_ref_time(97_377_000 as u64) - .saturating_add(RocksDbWeight::get().reads(8 as u64)) - .saturating_add(RocksDbWeight::get().writes(8 as u64)) - } - // Storage: ParachainStaking DelegatorState (r:1 w:1) - // Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `909` + // Estimated: `30617` + // Minimum execution time: 77_509_000 picoseconds. + Weight::from_parts(78_070_000, 30617) + .saturating_add(RocksDbWeight::get().reads(8_u64)) + .saturating_add(RocksDbWeight::get().writes(8_u64)) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) fn cancel_revoke_delegation() -> Weight { - Weight::from_ref_time(43_406_000 as u64) - .saturating_add(RocksDbWeight::get().reads(2 as u64)) - .saturating_add(RocksDbWeight::get().writes(2 as u64)) - } - // Storage: ParachainStaking DelegatorState (r:1 w:1) - // Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `173` + // Estimated: `7276` + // Minimum execution time: 27_469_000 picoseconds. + Weight::from_parts(28_047_000, 7276) + .saturating_add(RocksDbWeight::get().reads(2_u64)) + .saturating_add(RocksDbWeight::get().writes(2_u64)) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) fn cancel_delegator_bond_less() -> Weight { - Weight::from_ref_time(49_020_000 as u64) - .saturating_add(RocksDbWeight::get().reads(2 as u64)) - .saturating_add(RocksDbWeight::get().writes(2 as u64)) - } - // Storage: ParachainStaking Points (r:1 w:0) - // Storage: ParachainStaking Staked (r:1 w:1) - // Storage: ParachainStaking InflationConfig (r:1 w:0) - // Storage: ParachainStaking ParachainBondInfo (r:1 w:0) - // Storage: System Account (r:1 w:1) - // Storage: ParachainStaking CollatorCommission (r:1 w:0) - // Storage: ParachainStaking DelayedPayouts (r:0 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `173` + // Estimated: `7276` + // Minimum execution time: 28_572_000 picoseconds. + Weight::from_parts(28_806_000, 7276) + .saturating_add(RocksDbWeight::get().reads(2_u64)) + .saturating_add(RocksDbWeight::get().writes(2_u64)) + } + /// Storage: ParachainStaking Points (r:1 w:0) + /// Proof Skipped: ParachainStaking Points (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking Staked (r:1 w:1) + /// Proof Skipped: ParachainStaking Staked (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking InflationConfig (r:1 w:0) + /// Proof Skipped: ParachainStaking InflationConfig (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking ParachainBondInfo (r:1 w:0) + /// Proof Skipped: ParachainStaking ParachainBondInfo (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking CollatorCommission (r:1 w:0) + /// Proof Skipped: ParachainStaking CollatorCommission (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking DelayedPayouts (r:0 w:1) + /// Proof Skipped: ParachainStaking DelayedPayouts (max_values: None, max_size: None, mode: Measured) fn prepare_staking_payouts() -> Weight { - Weight::from_ref_time(59_628_000 as u64) - .saturating_add(RocksDbWeight::get().reads(6 as u64)) - .saturating_add(RocksDbWeight::get().writes(3 as u64)) - } - // Storage: ParachainStaking DelegationScheduledRequests (r:1 w:0) - // Storage: ParachainStaking TopDelegations (r:1 w:0) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `380` + // Estimated: `17246` + // Minimum execution time: 43_338_000 picoseconds. + Weight::from_parts(43_786_000, 17246) + .saturating_add(RocksDbWeight::get().reads(6_u64)) + .saturating_add(RocksDbWeight::get().writes(3_u64)) + } + /// Storage: ParachainStaking DelegationScheduledRequests (r:1 w:0) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:1 w:0) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// The range of component `y` is `[0, 100]`. fn get_rewardable_delegators(y: u32, ) -> Weight { - Weight::from_ref_time(16_322_694 as u64) - // Standard Error: 1_133 - .saturating_add(Weight::from_ref_time(233_812 as u64).saturating_mul(y as u64)) - .saturating_add(RocksDbWeight::get().reads(2 as u64)) - } - // Storage: ParachainStaking CandidatePool (r:1 w:0) - // Storage: ParachainStaking TotalSelected (r:1 w:0) - // Storage: ParachainStaking CandidateInfo (r:1 w:0) - // Storage: ParachainStaking DelegationScheduledRequests (r:1 w:0) - // Storage: ParachainStaking TopDelegations (r:1 w:0) - // Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:0) - // Storage: ParachainStaking SelectedCandidates (r:0 w:1) - // Storage: ParachainStaking AtStake (r:0 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `73 + y * (36 ±0)` + // Estimated: `7074 + y * (72 ±0)` + // Minimum execution time: 8_392_000 picoseconds. + Weight::from_parts(9_785_180, 7074) + // Standard Error: 388 + .saturating_add(Weight::from_parts(24_123, 0).saturating_mul(y.into())) + .saturating_add(RocksDbWeight::get().reads(2_u64)) + .saturating_add(Weight::from_parts(0, 72).saturating_mul(y.into())) + } + /// Storage: ParachainStaking TotalSelected (r:1 w:0) + /// Proof Skipped: ParachainStaking TotalSelected (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:0) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidateInfo (r:51 w:0) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking DelegationScheduledRequests (r:51 w:0) + /// Proof Skipped: ParachainStaking DelegationScheduledRequests (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:51 w:0) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking AutoCompoundingDelegations (r:51 w:0) + /// Proof Skipped: ParachainStaking AutoCompoundingDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking SelectedCandidates (r:0 w:1) + /// Proof Skipped: ParachainStaking SelectedCandidates (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking AtStake (r:0 w:51) + /// Proof Skipped: ParachainStaking AtStake (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[0, 50]`. + /// The range of component `y` is `[0, 100]`. fn select_top_candidates(x: u32, y: u32, ) -> Weight { - Weight::from_ref_time(44_110_000 as u64) - // Standard Error: 237_049 - .saturating_add(Weight::from_ref_time(24_788_127 as u64).saturating_mul(x as u64)) - // Standard Error: 118_210 - .saturating_add(Weight::from_ref_time(2_957_731 as u64).saturating_mul(y as u64)) - .saturating_add(RocksDbWeight::get().reads(6 as u64)) - .saturating_add(RocksDbWeight::get().reads((4 as u64).saturating_mul(x as u64))) - .saturating_add(RocksDbWeight::get().writes(2 as u64)) - .saturating_add(RocksDbWeight::get().writes((1 as u64).saturating_mul(x as u64))) - } - // Storage: ParachainStaking DelayedPayouts (r:1 w:0) - // Storage: ParachainStaking Points (r:1 w:0) - // Storage: ParachainStaking AtStake (r:2 w:1) - // Storage: ParachainStaking AwardedPts (r:1 w:1) - // Storage: MoonbeamOrbiters OrbiterPerRound (r:1 w:0) - // Storage: System Account (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `0 + x * (3816 ±0) + y * (1800 ±0)` + // Estimated: `18950 + x * (21900 ±39) + y * (5112 ±19)` + // Minimum execution time: 32_303_000 picoseconds. + Weight::from_parts(32_680_000, 18950) + // Standard Error: 82_316 + .saturating_add(Weight::from_parts(23_158_353, 0).saturating_mul(x.into())) + // Standard Error: 41_048 + .saturating_add(Weight::from_parts(1_334_029, 0).saturating_mul(y.into())) + .saturating_add(RocksDbWeight::get().reads(6_u64)) + .saturating_add(RocksDbWeight::get().reads((4_u64).saturating_mul(x.into()))) + .saturating_add(RocksDbWeight::get().writes(2_u64)) + .saturating_add(RocksDbWeight::get().writes((1_u64).saturating_mul(x.into()))) + .saturating_add(Weight::from_parts(0, 21900).saturating_mul(x.into())) + .saturating_add(Weight::from_parts(0, 5112).saturating_mul(y.into())) + } + /// Storage: ParachainStaking DelayedPayouts (r:1 w:0) + /// Proof Skipped: ParachainStaking DelayedPayouts (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking Points (r:1 w:0) + /// Proof Skipped: ParachainStaking Points (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking AtStake (r:2 w:1) + /// Proof Skipped: ParachainStaking AtStake (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking AwardedPts (r:1 w:1) + /// Proof Skipped: ParachainStaking AwardedPts (max_values: None, max_size: None, mode: Measured) + /// Storage: MoonbeamOrbiters OrbiterPerRound (r:1 w:0) + /// Proof Skipped: MoonbeamOrbiters OrbiterPerRound (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:301 w:301) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// The range of component `y` is `[0, 300]`. fn pay_one_collator_reward(y: u32, ) -> Weight { - Weight::from_ref_time(65_307_432 as u64) - // Standard Error: 9_596 - .saturating_add(Weight::from_ref_time(17_073_916 as u64).saturating_mul(y as u64)) - .saturating_add(RocksDbWeight::get().reads(7 as u64)) - .saturating_add(RocksDbWeight::get().reads((1 as u64).saturating_mul(y as u64))) - .saturating_add(RocksDbWeight::get().writes(3 as u64)) - .saturating_add(RocksDbWeight::get().writes((1 as u64).saturating_mul(y as u64))) - } - #[rustfmt::skip] - fn base_on_initialize() -> Weight { - Weight::from_ref_time(10_890_000 as u64) + // Proof Size summary in bytes: + // Measured: `1132 + y * (160 ±0)` + // Estimated: `28331 + y * (3396 ±0)` + // Minimum execution time: 58_105_000 picoseconds. + Weight::from_parts(53_052_308, 28331) + // Standard Error: 6_526 + .saturating_add(Weight::from_parts(19_017_961, 0).saturating_mul(y.into())) + .saturating_add(RocksDbWeight::get().reads(7_u64)) + .saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(y.into()))) + .saturating_add(RocksDbWeight::get().writes(3_u64)) + .saturating_add(RocksDbWeight::get().writes((1_u64).saturating_mul(y.into()))) + .saturating_add(Weight::from_parts(0, 3396).saturating_mul(y.into())) } - // Storage: ParachainStaking DelegatorState (r:1 w:0) - // Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:1) - #[rustfmt::skip] + fn base_on_initialize() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_008_000 picoseconds. + Weight::from_parts(2_065_000, 0) + } + /// Storage: ParachainStaking DelegatorState (r:1 w:0) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking AutoCompoundingDelegations (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[0, 300]`. + /// The range of component `y` is `[0, 100]`. fn set_auto_compound(x: u32, y: u32, ) -> Weight { - Weight::from_ref_time(64_797_700 as u64) - // Standard Error: 5_810 - .saturating_add(Weight::from_ref_time(292_809 as u64).saturating_mul(x as u64)) - // Standard Error: 17_394 - .saturating_add(Weight::from_ref_time(258_382 as u64).saturating_mul(y as u64)) - .saturating_add(RocksDbWeight::get().reads(2 as u64)) - .saturating_add(RocksDbWeight::get().writes(1 as u64)) - } - // Storage: System Account (r:1 w:1) - // Storage: ParachainStaking DelegatorState (r:1 w:1) - // Storage: ParachainStaking CandidateInfo (r:1 w:1) - // Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:1) - // Storage: ParachainStaking TopDelegations (r:1 w:1) - // Storage: ParachainStaking CandidatePool (r:1 w:1) - // Storage: Balances Locks (r:1 w:1) - // Storage: ParachainStaking Total (r:1 w:1) - // Storage: ParachainStaking BottomDelegations (r:1 w:1) - #[rustfmt::skip] - fn delegate_with_auto_compound(x: u32, y: u32, _z: u32, ) -> Weight { - Weight::from_ref_time(181_911_542 as u64) - // Standard Error: 5_811 - .saturating_add(Weight::from_ref_time(120_473 as u64).saturating_mul(x as u64)) - // Standard Error: 5_811 - .saturating_add(Weight::from_ref_time(80_638 as u64).saturating_mul(y as u64)) - .saturating_add(RocksDbWeight::get().reads(8 as u64)) - .saturating_add(RocksDbWeight::get().writes(8 as u64)) - } - // Storage: System Account (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `671 + x * (22 ±0) + y * (36 ±0)` + // Estimated: `8054 + x * (46 ±0) + y * (72 ±0)` + // Minimum execution time: 29_102_000 picoseconds. + Weight::from_parts(26_155_259, 8054) + // Standard Error: 278 + .saturating_add(Weight::from_parts(49_717, 0).saturating_mul(x.into())) + // Standard Error: 833 + .saturating_add(Weight::from_parts(48_123, 0).saturating_mul(y.into())) + .saturating_add(RocksDbWeight::get().reads(2_u64)) + .saturating_add(RocksDbWeight::get().writes(1_u64)) + .saturating_add(Weight::from_parts(0, 46).saturating_mul(x.into())) + .saturating_add(Weight::from_parts(0, 72).saturating_mul(y.into())) + } + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: ParachainStaking DelegatorState (r:1 w:1) + /// Proof Skipped: ParachainStaking DelegatorState (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidateInfo (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidateInfo (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking AutoCompoundingDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking AutoCompoundingDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking BottomDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking BottomDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1287), added: 3762, mode: MaxEncodedLen) + /// Storage: ParachainStaking Total (r:1 w:1) + /// Proof Skipped: ParachainStaking Total (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainStaking TopDelegations (r:1 w:1) + /// Proof Skipped: ParachainStaking TopDelegations (max_values: None, max_size: None, mode: Measured) + /// Storage: ParachainStaking CandidatePool (r:1 w:1) + /// Proof Skipped: ParachainStaking CandidatePool (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `x` is `[0, 350]`. + /// The range of component `y` is `[0, 350]`. + /// The range of component `z` is `[0, 100]`. + fn delegate_with_auto_compound(x: u32, y: u32, z: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0 + x * (58 ±0) + y * (21 ±0) + z * (41 ±0)` + // Estimated: `59323 + x * (145 ±0) + y * (132 ±0) + z * (873144491150315 ±3)` + // Minimum execution time: 100_647_000 picoseconds. + Weight::from_parts(84_809_337, 59323) + // Standard Error: 1_211 + .saturating_add(Weight::from_parts(15_186, 0).saturating_mul(x.into())) + // Standard Error: 1_211 + .saturating_add(Weight::from_parts(30_270, 0).saturating_mul(y.into())) + // Standard Error: 4_227 + .saturating_add(Weight::from_parts(173_069, 0).saturating_mul(z.into())) + .saturating_add(RocksDbWeight::get().reads(8_u64)) + .saturating_add(RocksDbWeight::get().writes(8_u64)) + .saturating_add(Weight::from_parts(0, 145).saturating_mul(x.into())) + .saturating_add(Weight::from_parts(0, 132).saturating_mul(y.into())) + .saturating_add(Weight::from_parts(0, 307).saturating_mul(z.into())) + } + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) fn mint_collator_reward() -> Weight { - Weight::from_ref_time(40_146_000 as u64) - .saturating_add(RocksDbWeight::get().reads(1 as u64)) - .saturating_add(RocksDbWeight::get().writes(1 as u64)) - } -} + // Proof Size summary in bytes: + // Measured: `128` + // Estimated: `3581` + // Minimum execution time: 24_224_000 picoseconds. + Weight::from_parts(24_514_000, 3581) + .saturating_add(RocksDbWeight::get().reads(1_u64)) + .saturating_add(RocksDbWeight::get().writes(1_u64)) + } +} \ No newline at end of file diff --git a/pallets/proxy-genesis-companion/src/mock.rs b/pallets/proxy-genesis-companion/src/mock.rs index e0b43d36c7..7b423a02ad 100644 --- a/pallets/proxy-genesis-companion/src/mock.rs +++ b/pallets/proxy-genesis-companion/src/mock.rs @@ -53,7 +53,7 @@ construct_runtime!( parameter_types! { pub const BlockHashCount: u32 = 250; - pub const MaximumBlockWeight: Weight = Weight::from_ref_time(1024); + pub const MaximumBlockWeight: Weight = Weight::from_parts(1024, 1); pub const MaximumBlockLength: u32 = 2 * 1024; pub const AvailableBlockRatio: Perbill = Perbill::one(); pub const SS58Prefix: u8 = 42; diff --git a/pallets/randomness/src/mock.rs b/pallets/randomness/src/mock.rs index c72b125df4..aeaa64196b 100644 --- a/pallets/randomness/src/mock.rs +++ b/pallets/randomness/src/mock.rs @@ -55,7 +55,7 @@ construct_runtime!( parameter_types! { pub const BlockHashCount: u32 = 250; - pub const MaximumBlockWeight: Weight = Weight::from_ref_time(1024); + pub const MaximumBlockWeight: Weight = Weight::from_parts(1024, 1); pub const MaximumBlockLength: u32 = 2 * 1024; pub const AvailableBlockRatio: Perbill = Perbill::one(); pub const SS58Prefix: u8 = 42; diff --git a/pallets/randomness/src/weights.rs b/pallets/randomness/src/weights.rs index aaeb7103aa..e58c8d36bd 100644 --- a/pallets/randomness/src/weights.rs +++ b/pallets/randomness/src/weights.rs @@ -14,10 +14,13 @@ // You should have received a copy of the GNU General Public License // along with Moonbeam. If not, see . + //! Autogenerated weights for pallet_randomness //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-19, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2023-04-28, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `benchmarker`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: None, DB CACHE: 1024 // Executed Command: @@ -38,174 +41,257 @@ // --json-file // raw.json // --output -// ./tmp/ +// weights/ +#![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] -use frame_support::{ - traits::Get, - weights::{constants::RocksDbWeight, Weight}, -}; +use frame_support::{traits::Get, weights::{Weight, constants::RocksDbWeight}}; use sp_std::marker::PhantomData; /// Weight functions needed for pallet_randomness. pub trait WeightInfo { - #[rustfmt::skip] fn set_babe_randomness_results() -> Weight; - #[rustfmt::skip] fn on_initialize() -> Weight; - #[rustfmt::skip] fn request_randomness() -> Weight; - #[rustfmt::skip] fn prepare_fulfillment(x: u32, ) -> Weight; - #[rustfmt::skip] fn finish_fulfillment() -> Weight; - #[rustfmt::skip] fn increase_fee() -> Weight; - #[rustfmt::skip] fn execute_request_expiration() -> Weight; } /// Weights for pallet_randomness using the Substrate node and recommended hardware. pub struct SubstrateWeight(PhantomData); impl WeightInfo for SubstrateWeight { - // Storage: Randomness RelayEpoch (r:1 w:1) - // Storage: ParachainSystem ValidationData (r:1 w:0) - // Storage: ParachainSystem RelayStateProof (r:1 w:0) - // Storage: Randomness RandomnessResults (r:1 w:1) - // Storage: Randomness InherentIncluded (r:0 w:1) - #[rustfmt::skip] + /// Storage: Randomness RelayEpoch (r:1 w:1) + /// Proof Skipped: Randomness RelayEpoch (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem ValidationData (r:1 w:0) + /// Proof Skipped: ParachainSystem ValidationData (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem RelayStateProof (r:1 w:0) + /// Proof Skipped: ParachainSystem RelayStateProof (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Randomness RandomnessResults (r:1 w:1) + /// Proof Skipped: Randomness RandomnessResults (max_values: None, max_size: None, mode: Measured) + /// Storage: Randomness InherentIncluded (r:0 w:1) + /// Proof Skipped: Randomness InherentIncluded (max_values: Some(1), max_size: None, mode: Measured) fn set_babe_randomness_results() -> Weight { - Weight::from_ref_time(28_446_000 as u64) - .saturating_add(T::DbWeight::get().reads(4 as u64)) - .saturating_add(T::DbWeight::get().writes(3 as u64)) + // Proof Size summary in bytes: + // Measured: `297` + // Estimated: `9405` + // Minimum execution time: 22_271_000 picoseconds. + Weight::from_parts(22_704_000, 9405) + .saturating_add(T::DbWeight::get().reads(4_u64)) + .saturating_add(T::DbWeight::get().writes(3_u64)) } - // Storage: Randomness NotFirstBlock (r:1 w:0) - // Storage: System Digest (r:1 w:0) - // Storage: AuthorMapping MappingWithDeposit (r:1 w:0) - // Storage: Randomness LocalVrfOutput (r:1 w:1) - // Storage: Randomness RandomnessResults (r:1 w:1) - #[rustfmt::skip] + /// Storage: Randomness NotFirstBlock (r:1 w:0) + /// Proof Skipped: Randomness NotFirstBlock (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: System Digest (r:1 w:0) + /// Proof Skipped: System Digest (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AuthorMapping MappingWithDeposit (r:1 w:0) + /// Proof Skipped: AuthorMapping MappingWithDeposit (max_values: None, max_size: None, mode: Measured) + /// Storage: Randomness LocalVrfOutput (r:1 w:1) + /// Proof Skipped: Randomness LocalVrfOutput (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Randomness RandomnessResults (r:1 w:1) + /// Proof Skipped: Randomness RandomnessResults (max_values: None, max_size: None, mode: Measured) fn on_initialize() -> Weight { - Weight::from_ref_time(1_253_008_000 as u64) - .saturating_add(T::DbWeight::get().reads(5 as u64)) - .saturating_add(T::DbWeight::get().writes(2 as u64)) + // Proof Size summary in bytes: + // Measured: `719` + // Estimated: `14980` + // Minimum execution time: 1_190_265_000 picoseconds. + Weight::from_parts(1_191_969_000, 14980) + .saturating_add(T::DbWeight::get().reads(5_u64)) + .saturating_add(T::DbWeight::get().writes(2_u64)) } - // Storage: Randomness RequestCount (r:1 w:1) - // Storage: System Account (r:2 w:2) - // Storage: Randomness RandomnessResults (r:1 w:1) - // Storage: Randomness Requests (r:0 w:1) - #[rustfmt::skip] + /// Storage: Randomness RequestCount (r:1 w:1) + /// Proof Skipped: Randomness RequestCount (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: Randomness RandomnessResults (r:1 w:1) + /// Proof Skipped: Randomness RandomnessResults (max_values: None, max_size: None, mode: Measured) + /// Storage: Randomness Requests (r:0 w:1) + /// Proof Skipped: Randomness Requests (max_values: None, max_size: None, mode: Measured) fn request_randomness() -> Weight { - Weight::from_ref_time(64_039_000 as u64) - .saturating_add(T::DbWeight::get().reads(4 as u64)) - .saturating_add(T::DbWeight::get().writes(5 as u64)) + // Proof Size summary in bytes: + // Measured: `442` + // Estimated: `12448` + // Minimum execution time: 56_924_000 picoseconds. + Weight::from_parts(57_236_000, 12448) + .saturating_add(T::DbWeight::get().reads(4_u64)) + .saturating_add(T::DbWeight::get().writes(5_u64)) } - // Storage: Randomness Requests (r:1 w:0) - // Storage: Randomness RandomnessResults (r:1 w:0) - #[rustfmt::skip] + /// Storage: Randomness Requests (r:1 w:0) + /// Proof Skipped: Randomness Requests (max_values: None, max_size: None, mode: Measured) + /// Storage: Randomness RandomnessResults (r:1 w:0) + /// Proof Skipped: Randomness RandomnessResults (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[1, 100]`. fn prepare_fulfillment(x: u32, ) -> Weight { - Weight::from_ref_time(20_967_051 as u64) - // Standard Error: 850 - .saturating_add(Weight::from_ref_time(307_186 as u64).saturating_mul(x as u64)) - .saturating_add(T::DbWeight::get().reads(2 as u64)) + // Proof Size summary in bytes: + // Measured: `412` + // Estimated: `7754` + // Minimum execution time: 13_365_000 picoseconds. + Weight::from_parts(13_619_602, 7754) + // Standard Error: 1_129 + .saturating_add(Weight::from_parts(301_030, 0).saturating_mul(x.into())) + .saturating_add(T::DbWeight::get().reads(2_u64)) } - // Storage: System Account (r:2 w:2) - // Storage: Randomness RandomnessResults (r:1 w:1) - // Storage: Randomness Requests (r:0 w:1) - #[rustfmt::skip] + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: Randomness RandomnessResults (r:1 w:1) + /// Proof Skipped: Randomness RandomnessResults (max_values: None, max_size: None, mode: Measured) + /// Storage: Randomness Requests (r:0 w:1) + /// Proof Skipped: Randomness Requests (max_values: None, max_size: None, mode: Measured) fn finish_fulfillment() -> Weight { - Weight::from_ref_time(52_125_000 as u64) - .saturating_add(T::DbWeight::get().reads(3 as u64)) - .saturating_add(T::DbWeight::get().writes(4 as u64)) + // Proof Size summary in bytes: + // Measured: `706` + // Estimated: `11049` + // Minimum execution time: 42_894_000 picoseconds. + Weight::from_parts(43_277_000, 11049) + .saturating_add(T::DbWeight::get().reads(3_u64)) + .saturating_add(T::DbWeight::get().writes(4_u64)) } - // Storage: Randomness Requests (r:1 w:1) - // Storage: System Account (r:2 w:2) - #[rustfmt::skip] + /// Storage: Randomness Requests (r:1 w:1) + /// Proof Skipped: Randomness Requests (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) fn increase_fee() -> Weight { - Weight::from_ref_time(49_984_000 as u64) - .saturating_add(T::DbWeight::get().reads(3 as u64)) - .saturating_add(T::DbWeight::get().writes(3 as u64)) + // Proof Size summary in bytes: + // Measured: `792` + // Estimated: `10429` + // Minimum execution time: 40_040_000 picoseconds. + Weight::from_parts(40_462_000, 10429) + .saturating_add(T::DbWeight::get().reads(3_u64)) + .saturating_add(T::DbWeight::get().writes(3_u64)) } - // Storage: Randomness Requests (r:1 w:1) - // Storage: System Account (r:2 w:2) - // Storage: Randomness RandomnessResults (r:1 w:1) - #[rustfmt::skip] + /// Storage: Randomness Requests (r:1 w:1) + /// Proof Skipped: Randomness Requests (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: Randomness RandomnessResults (r:1 w:1) + /// Proof Skipped: Randomness RandomnessResults (max_values: None, max_size: None, mode: Measured) fn execute_request_expiration() -> Weight { - Weight::from_ref_time(57_500_000 as u64) - .saturating_add(T::DbWeight::get().reads(4 as u64)) - .saturating_add(T::DbWeight::get().writes(4 as u64)) + // Proof Size summary in bytes: + // Measured: `801` + // Estimated: `14704` + // Minimum execution time: 45_278_000 picoseconds. + Weight::from_parts(45_761_000, 14704) + .saturating_add(T::DbWeight::get().reads(4_u64)) + .saturating_add(T::DbWeight::get().writes(4_u64)) } } // For backwards compatibility and tests impl WeightInfo for () { - // Storage: Randomness RelayEpoch (r:1 w:1) - // Storage: ParachainSystem ValidationData (r:1 w:0) - // Storage: ParachainSystem RelayStateProof (r:1 w:0) - // Storage: Randomness RandomnessResults (r:1 w:1) - // Storage: Randomness InherentIncluded (r:0 w:1) - #[rustfmt::skip] + /// Storage: Randomness RelayEpoch (r:1 w:1) + /// Proof Skipped: Randomness RelayEpoch (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem ValidationData (r:1 w:0) + /// Proof Skipped: ParachainSystem ValidationData (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem RelayStateProof (r:1 w:0) + /// Proof Skipped: ParachainSystem RelayStateProof (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Randomness RandomnessResults (r:1 w:1) + /// Proof Skipped: Randomness RandomnessResults (max_values: None, max_size: None, mode: Measured) + /// Storage: Randomness InherentIncluded (r:0 w:1) + /// Proof Skipped: Randomness InherentIncluded (max_values: Some(1), max_size: None, mode: Measured) fn set_babe_randomness_results() -> Weight { - Weight::from_ref_time(28_446_000 as u64) - .saturating_add(RocksDbWeight::get().reads(4 as u64)) - .saturating_add(RocksDbWeight::get().writes(3 as u64)) + // Proof Size summary in bytes: + // Measured: `297` + // Estimated: `9405` + // Minimum execution time: 22_271_000 picoseconds. + Weight::from_parts(22_704_000, 9405) + .saturating_add(RocksDbWeight::get().reads(4_u64)) + .saturating_add(RocksDbWeight::get().writes(3_u64)) } - // Storage: Randomness NotFirstBlock (r:1 w:0) - // Storage: System Digest (r:1 w:0) - // Storage: AuthorMapping MappingWithDeposit (r:1 w:0) - // Storage: Randomness LocalVrfOutput (r:1 w:1) - // Storage: Randomness RandomnessResults (r:1 w:1) - #[rustfmt::skip] + /// Storage: Randomness NotFirstBlock (r:1 w:0) + /// Proof Skipped: Randomness NotFirstBlock (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: System Digest (r:1 w:0) + /// Proof Skipped: System Digest (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: AuthorMapping MappingWithDeposit (r:1 w:0) + /// Proof Skipped: AuthorMapping MappingWithDeposit (max_values: None, max_size: None, mode: Measured) + /// Storage: Randomness LocalVrfOutput (r:1 w:1) + /// Proof Skipped: Randomness LocalVrfOutput (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Randomness RandomnessResults (r:1 w:1) + /// Proof Skipped: Randomness RandomnessResults (max_values: None, max_size: None, mode: Measured) fn on_initialize() -> Weight { - Weight::from_ref_time(1_253_008_000 as u64) - .saturating_add(RocksDbWeight::get().reads(5 as u64)) - .saturating_add(RocksDbWeight::get().writes(2 as u64)) + // Proof Size summary in bytes: + // Measured: `719` + // Estimated: `14980` + // Minimum execution time: 1_190_265_000 picoseconds. + Weight::from_parts(1_191_969_000, 14980) + .saturating_add(RocksDbWeight::get().reads(5_u64)) + .saturating_add(RocksDbWeight::get().writes(2_u64)) } - // Storage: Randomness RequestCount (r:1 w:1) - // Storage: System Account (r:2 w:2) - // Storage: Randomness RandomnessResults (r:1 w:1) - // Storage: Randomness Requests (r:0 w:1) - #[rustfmt::skip] + /// Storage: Randomness RequestCount (r:1 w:1) + /// Proof Skipped: Randomness RequestCount (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: Randomness RandomnessResults (r:1 w:1) + /// Proof Skipped: Randomness RandomnessResults (max_values: None, max_size: None, mode: Measured) + /// Storage: Randomness Requests (r:0 w:1) + /// Proof Skipped: Randomness Requests (max_values: None, max_size: None, mode: Measured) fn request_randomness() -> Weight { - Weight::from_ref_time(64_039_000 as u64) - .saturating_add(RocksDbWeight::get().reads(4 as u64)) - .saturating_add(RocksDbWeight::get().writes(5 as u64)) + // Proof Size summary in bytes: + // Measured: `442` + // Estimated: `12448` + // Minimum execution time: 56_924_000 picoseconds. + Weight::from_parts(57_236_000, 12448) + .saturating_add(RocksDbWeight::get().reads(4_u64)) + .saturating_add(RocksDbWeight::get().writes(5_u64)) } - // Storage: Randomness Requests (r:1 w:0) - // Storage: Randomness RandomnessResults (r:1 w:0) - #[rustfmt::skip] + /// Storage: Randomness Requests (r:1 w:0) + /// Proof Skipped: Randomness Requests (max_values: None, max_size: None, mode: Measured) + /// Storage: Randomness RandomnessResults (r:1 w:0) + /// Proof Skipped: Randomness RandomnessResults (max_values: None, max_size: None, mode: Measured) + /// The range of component `x` is `[1, 100]`. fn prepare_fulfillment(x: u32, ) -> Weight { - Weight::from_ref_time(20_967_051 as u64) - // Standard Error: 850 - .saturating_add(Weight::from_ref_time(307_186 as u64).saturating_mul(x as u64)) - .saturating_add(RocksDbWeight::get().reads(2 as u64)) + // Proof Size summary in bytes: + // Measured: `412` + // Estimated: `7754` + // Minimum execution time: 13_365_000 picoseconds. + Weight::from_parts(13_619_602, 7754) + // Standard Error: 1_129 + .saturating_add(Weight::from_parts(301_030, 0).saturating_mul(x.into())) + .saturating_add(RocksDbWeight::get().reads(2_u64)) } - // Storage: System Account (r:2 w:2) - // Storage: Randomness RandomnessResults (r:1 w:1) - // Storage: Randomness Requests (r:0 w:1) - #[rustfmt::skip] + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: Randomness RandomnessResults (r:1 w:1) + /// Proof Skipped: Randomness RandomnessResults (max_values: None, max_size: None, mode: Measured) + /// Storage: Randomness Requests (r:0 w:1) + /// Proof Skipped: Randomness Requests (max_values: None, max_size: None, mode: Measured) fn finish_fulfillment() -> Weight { - Weight::from_ref_time(52_125_000 as u64) - .saturating_add(RocksDbWeight::get().reads(3 as u64)) - .saturating_add(RocksDbWeight::get().writes(4 as u64)) + // Proof Size summary in bytes: + // Measured: `706` + // Estimated: `11049` + // Minimum execution time: 42_894_000 picoseconds. + Weight::from_parts(43_277_000, 11049) + .saturating_add(RocksDbWeight::get().reads(3_u64)) + .saturating_add(RocksDbWeight::get().writes(4_u64)) } - // Storage: Randomness Requests (r:1 w:1) - // Storage: System Account (r:2 w:2) - #[rustfmt::skip] + /// Storage: Randomness Requests (r:1 w:1) + /// Proof Skipped: Randomness Requests (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) fn increase_fee() -> Weight { - Weight::from_ref_time(49_984_000 as u64) - .saturating_add(RocksDbWeight::get().reads(3 as u64)) - .saturating_add(RocksDbWeight::get().writes(3 as u64)) + // Proof Size summary in bytes: + // Measured: `792` + // Estimated: `10429` + // Minimum execution time: 40_040_000 picoseconds. + Weight::from_parts(40_462_000, 10429) + .saturating_add(RocksDbWeight::get().reads(3_u64)) + .saturating_add(RocksDbWeight::get().writes(3_u64)) } - // Storage: Randomness Requests (r:1 w:1) - // Storage: System Account (r:2 w:2) - // Storage: Randomness RandomnessResults (r:1 w:1) - #[rustfmt::skip] + /// Storage: Randomness Requests (r:1 w:1) + /// Proof Skipped: Randomness Requests (max_values: None, max_size: None, mode: Measured) + /// Storage: System Account (r:2 w:2) + /// Proof: System Account (max_values: None, max_size: Some(116), added: 2591, mode: MaxEncodedLen) + /// Storage: Randomness RandomnessResults (r:1 w:1) + /// Proof Skipped: Randomness RandomnessResults (max_values: None, max_size: None, mode: Measured) fn execute_request_expiration() -> Weight { - Weight::from_ref_time(57_500_000 as u64) - .saturating_add(RocksDbWeight::get().reads(4 as u64)) - .saturating_add(RocksDbWeight::get().writes(4 as u64)) + // Proof Size summary in bytes: + // Measured: `801` + // Estimated: `14704` + // Minimum execution time: 45_278_000 picoseconds. + Weight::from_parts(45_761_000, 14704) + .saturating_add(RocksDbWeight::get().reads(4_u64)) + .saturating_add(RocksDbWeight::get().writes(4_u64)) } -} +} \ No newline at end of file diff --git a/pallets/xcm-transactor/src/benchmarks.rs b/pallets/xcm-transactor/src/benchmarks.rs index 84ef2bed6d..5ae4547c81 100644 --- a/pallets/xcm-transactor/src/benchmarks.rs +++ b/pallets/xcm-transactor/src/benchmarks.rs @@ -45,9 +45,9 @@ benchmarks! { } set_transact_info { - let extra_weight: Weight = Weight::from_ref_time(300000000u64); + let extra_weight: Weight = Weight::from_parts(300000000u64, 0); let fee_per_second = 1; - let max_weight: Weight = Weight::from_ref_time(20000000000u64); + let max_weight: Weight = Weight::from_parts(20000000000u64, 0); let location = MultiLocation::parent(); }: _( RawOrigin::Root, @@ -65,8 +65,8 @@ benchmarks! { } remove_transact_info { - let extra_weight: Weight = Weight::from_ref_time(300000000u64); - let max_weight: Weight = Weight::from_ref_time(20000000000u64); + let extra_weight: Weight = Weight::from_parts(300000000u64, 0); + let max_weight: Weight = Weight::from_parts(20000000000u64, u64::MAX); let location = MultiLocation::parent(); Pallet::::set_transact_info( RawOrigin::Root.into(), @@ -96,11 +96,11 @@ benchmarks! { // Worst Case: transacInfo db reads transact_through_derivative { let fee_per_second = 1; - let extra_weight: Weight = Weight::from_ref_time(300000000u64); - let max_weight: Weight = Weight::from_ref_time(20000000000u64); + let extra_weight: Weight = Weight::from_parts(300000000u64, 0); + let max_weight: Weight = Weight::from_parts(20000000000u64, u64::MAX); let location = MultiLocation::parent(); let call = vec![1u8]; - let dest_weight: Weight = Weight::from_ref_time(100u64); + let dest_weight: Weight = Weight::from_parts(100u64, 0); let currency: T::CurrencyId = location.clone().into(); let user: T::AccountId = account("account id", 0u32, 0u32); Pallet::::set_transact_info( @@ -152,12 +152,12 @@ benchmarks! { transact_through_sovereign { let fee_per_second = 1; - let extra_weight: Weight = Weight::from_ref_time(300000000u64); - let max_weight: Weight = Weight::from_ref_time(20000000000u64); + let extra_weight: Weight = Weight::from_parts(300000000u64, 0); + let max_weight: Weight = Weight::from_parts(20000000000u64, u64::MAX); let location = MultiLocation::parent(); let currency: T::CurrencyId = location.clone().into(); let call = vec![1u8]; - let dest_weight: Weight = Weight::from_ref_time(100u64); + let dest_weight: Weight = Weight::from_parts(100u64, 0); let user: T::AccountId = account("account id", 0u32, 0u32); Pallet::::set_transact_info( RawOrigin::Root.into(), @@ -204,12 +204,12 @@ benchmarks! { transact_through_signed { let fee_per_second = 1; - let extra_weight: Weight = Weight::from_ref_time(300000000u64); - let max_weight: Weight = Weight::from_ref_time(20000000000u64); + let extra_weight: Weight = Weight::from_parts(300000000u64, 0); + let max_weight: Weight = Weight::from_parts(20000000000u64, u64::MAX); let location = MultiLocation::parent(); let currency: T::CurrencyId = location.clone().into(); let call = vec![1u8]; - let dest_weight: Weight = Weight::from_ref_time(100u64); + let dest_weight: Weight = Weight::from_parts(100u64, 0); let user: T::AccountId = account("account id", 0u32, 0u32); Pallet::::set_transact_info( RawOrigin::Root.into(), @@ -242,12 +242,12 @@ benchmarks! { hrmp_manage { let fee_per_second = 1; - let extra_weight: Weight = Weight::from_ref_time(300000000u64); - let max_weight: Weight = Weight::from_ref_time(20000000000u64); + let extra_weight: Weight = Weight::from_parts(300000000u64, 0); + let max_weight: Weight = Weight::from_parts(20000000000u64, u64::MAX); let location = MultiLocation::parent(); let currency: T::CurrencyId = location.clone().into(); let call = vec![1u8]; - let dest_weight: Weight = Weight::from_ref_time(100u64); + let dest_weight: Weight = Weight::from_parts(100u64, 0); let user: T::AccountId = account("account id", 0u32, 0u32); Pallet::::set_transact_info( RawOrigin::Root.into(), diff --git a/pallets/xcm-transactor/src/mock.rs b/pallets/xcm-transactor/src/mock.rs index 67bb600d1a..55f62225c7 100644 --- a/pallets/xcm-transactor/src/mock.rs +++ b/pallets/xcm-transactor/src/mock.rs @@ -70,7 +70,7 @@ parameter_types! { parameter_types! { pub const BlockHashCount: u32 = 250; pub BlockWeights: frame_system::limits::BlockWeights = - frame_system::limits::BlockWeights::simple_max(Weight::from_ref_time(1024)); + frame_system::limits::BlockWeights::simple_max(Weight::from_parts(1024, 1)); } impl frame_system::Config for Test { diff --git a/pallets/xcm-transactor/src/weights.rs b/pallets/xcm-transactor/src/weights.rs index 933f18e28f..5d459c0f31 100644 --- a/pallets/xcm-transactor/src/weights.rs +++ b/pallets/xcm-transactor/src/weights.rs @@ -14,10 +14,13 @@ // You should have received a copy of the GNU General Public License // along with Moonbeam. If not, see . + //! Autogenerated weights for xcm_transactor //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-01-19, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2023-04-28, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `benchmarker`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: None, DB CACHE: 1024 // Executed Command: @@ -38,204 +41,311 @@ // --json-file // raw.json // --output -// ./tmp/ +// weights/ +#![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] -use frame_support::{ - traits::Get, - weights::{constants::RocksDbWeight, Weight}, -}; +use frame_support::{traits::Get, weights::{Weight, constants::RocksDbWeight}}; use sp_std::marker::PhantomData; /// Weight functions needed for xcm_transactor. pub trait WeightInfo { - #[rustfmt::skip] fn register() -> Weight; - #[rustfmt::skip] fn deregister() -> Weight; - #[rustfmt::skip] fn set_transact_info() -> Weight; - #[rustfmt::skip] fn remove_transact_info() -> Weight; - #[rustfmt::skip] fn set_fee_per_second() -> Weight; - #[rustfmt::skip] fn transact_through_derivative() -> Weight; - #[rustfmt::skip] fn transact_through_sovereign() -> Weight; - #[rustfmt::skip] fn transact_through_signed() -> Weight; - #[rustfmt::skip] fn hrmp_manage() -> Weight; } /// Weights for xcm_transactor using the Substrate node and recommended hardware. pub struct SubstrateWeight(PhantomData); impl WeightInfo for SubstrateWeight { - // Storage: XcmTransactor IndexToAccount (r:1 w:1) - #[rustfmt::skip] + /// Storage: XcmTransactor IndexToAccount (r:1 w:1) + /// Proof Skipped: XcmTransactor IndexToAccount (max_values: None, max_size: None, mode: Measured) fn register() -> Weight { - Weight::from_ref_time(27_464_000 as u64) - .saturating_add(T::DbWeight::get().reads(1 as u64)) - .saturating_add(T::DbWeight::get().writes(1 as u64)) + // Proof Size summary in bytes: + // Measured: `76` + // Estimated: `3541` + // Minimum execution time: 17_609_000 picoseconds. + Weight::from_parts(18_079_000, 3541) + .saturating_add(T::DbWeight::get().reads(1_u64)) + .saturating_add(T::DbWeight::get().writes(1_u64)) } - // Storage: XcmTransactor IndexToAccount (r:0 w:1) - #[rustfmt::skip] + /// Storage: XcmTransactor IndexToAccount (r:0 w:1) + /// Proof Skipped: XcmTransactor IndexToAccount (max_values: None, max_size: None, mode: Measured) fn deregister() -> Weight { - Weight::from_ref_time(23_913_000 as u64) - .saturating_add(T::DbWeight::get().writes(1 as u64)) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 12_958_000 picoseconds. + Weight::from_parts(13_219_000, 0) + .saturating_add(T::DbWeight::get().writes(1_u64)) } - // Storage: XcmTransactor TransactInfoWithWeightLimit (r:0 w:1) - #[rustfmt::skip] + /// Storage: XcmTransactor TransactInfoWithWeightLimit (r:0 w:1) + /// Proof Skipped: XcmTransactor TransactInfoWithWeightLimit (max_values: None, max_size: None, mode: Measured) fn set_transact_info() -> Weight { - Weight::from_ref_time(24_533_000 as u64) - .saturating_add(T::DbWeight::get().writes(1 as u64)) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 16_396_000 picoseconds. + Weight::from_parts(16_967_000, 0) + .saturating_add(T::DbWeight::get().writes(1_u64)) } - // Storage: XcmTransactor TransactInfoWithWeightLimit (r:0 w:1) - #[rustfmt::skip] + /// Storage: XcmTransactor TransactInfoWithWeightLimit (r:0 w:1) + /// Proof Skipped: XcmTransactor TransactInfoWithWeightLimit (max_values: None, max_size: None, mode: Measured) fn remove_transact_info() -> Weight { - Weight::from_ref_time(25_676_000 as u64) - .saturating_add(T::DbWeight::get().writes(1 as u64)) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 15_457_000 picoseconds. + Weight::from_parts(15_752_000, 0) + .saturating_add(T::DbWeight::get().writes(1_u64)) } - // Storage: XcmTransactor DestinationAssetFeePerSecond (r:0 w:1) - #[rustfmt::skip] + /// Storage: XcmTransactor DestinationAssetFeePerSecond (r:0 w:1) + /// Proof Skipped: XcmTransactor DestinationAssetFeePerSecond (max_values: None, max_size: None, mode: Measured) fn set_fee_per_second() -> Weight { - Weight::from_ref_time(23_568_000 as u64) - .saturating_add(T::DbWeight::get().writes(1 as u64)) - } - // Storage: AssetManager AssetIdType (r:1 w:0) - // Storage: XcmTransactor IndexToAccount (r:1 w:0) - // Storage: XcmTransactor TransactInfoWithWeightLimit (r:1 w:0) - // Storage: XcmTransactor DestinationAssetFeePerSecond (r:1 w:0) - // Storage: AssetManager AssetTypeId (r:1 w:0) - // Storage: Assets Asset (r:1 w:0) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 16_164_000 picoseconds. + Weight::from_parts(16_519_000, 0) + .saturating_add(T::DbWeight::get().writes(1_u64)) + } + /// Storage: AssetManager AssetIdType (r:1 w:0) + /// Proof Skipped: AssetManager AssetIdType (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor IndexToAccount (r:1 w:0) + /// Proof Skipped: XcmTransactor IndexToAccount (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor TransactInfoWithWeightLimit (r:1 w:0) + /// Proof Skipped: XcmTransactor TransactInfoWithWeightLimit (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor DestinationAssetFeePerSecond (r:1 w:0) + /// Proof Skipped: XcmTransactor DestinationAssetFeePerSecond (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeId (r:1 w:0) + /// Proof Skipped: AssetManager AssetTypeId (max_values: None, max_size: None, mode: Measured) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) fn transact_through_derivative() -> Weight { - Weight::from_ref_time(46_889_000 as u64) - .saturating_add(T::DbWeight::get().reads(6 as u64)) - } - // Storage: AssetManager AssetIdType (r:1 w:0) - // Storage: XcmTransactor TransactInfoWithWeightLimit (r:1 w:0) - // Storage: XcmTransactor DestinationAssetFeePerSecond (r:1 w:0) - // Storage: AssetManager AssetTypeId (r:1 w:0) - // Storage: Assets Asset (r:1 w:0) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `443` + // Estimated: `23179` + // Minimum execution time: 37_628_000 picoseconds. + Weight::from_parts(38_250_000, 23179) + .saturating_add(T::DbWeight::get().reads(6_u64)) + } + /// Storage: AssetManager AssetIdType (r:1 w:0) + /// Proof Skipped: AssetManager AssetIdType (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor TransactInfoWithWeightLimit (r:1 w:0) + /// Proof Skipped: XcmTransactor TransactInfoWithWeightLimit (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor DestinationAssetFeePerSecond (r:1 w:0) + /// Proof Skipped: XcmTransactor DestinationAssetFeePerSecond (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeId (r:1 w:0) + /// Proof Skipped: AssetManager AssetTypeId (max_values: None, max_size: None, mode: Measured) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) fn transact_through_sovereign() -> Weight { - Weight::from_ref_time(39_590_000 as u64) - .saturating_add(T::DbWeight::get().reads(5 as u64)) - } - // Storage: AssetManager AssetIdType (r:1 w:0) - // Storage: XcmTransactor TransactInfoWithWeightLimit (r:1 w:0) - // Storage: XcmTransactor DestinationAssetFeePerSecond (r:1 w:0) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `381` + // Estimated: `19023` + // Minimum execution time: 31_621_000 picoseconds. + Weight::from_parts(32_023_000, 19023) + .saturating_add(T::DbWeight::get().reads(5_u64)) + } + /// Storage: AssetManager AssetIdType (r:1 w:0) + /// Proof Skipped: AssetManager AssetIdType (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor TransactInfoWithWeightLimit (r:1 w:0) + /// Proof Skipped: XcmTransactor TransactInfoWithWeightLimit (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor DestinationAssetFeePerSecond (r:1 w:0) + /// Proof Skipped: XcmTransactor DestinationAssetFeePerSecond (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn transact_through_signed() -> Weight { - Weight::from_ref_time(76_974_000 as u64) - .saturating_add(T::DbWeight::get().reads(8 as u64)) - .saturating_add(T::DbWeight::get().writes(2 as u64)) - } - // Storage: AssetManager AssetIdType (r:1 w:0) - // Storage: XcmTransactor TransactInfoWithWeightLimit (r:1 w:0) - // Storage: XcmTransactor DestinationAssetFeePerSecond (r:1 w:0) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `425` + // Estimated: `23200` + // Minimum execution time: 67_658_000 picoseconds. + Weight::from_parts(68_448_000, 23200) + .saturating_add(T::DbWeight::get().reads(8_u64)) + .saturating_add(T::DbWeight::get().writes(2_u64)) + } + /// Storage: AssetManager AssetIdType (r:1 w:0) + /// Proof Skipped: AssetManager AssetIdType (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor TransactInfoWithWeightLimit (r:1 w:0) + /// Proof Skipped: XcmTransactor TransactInfoWithWeightLimit (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor DestinationAssetFeePerSecond (r:1 w:0) + /// Proof Skipped: XcmTransactor DestinationAssetFeePerSecond (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn hrmp_manage() -> Weight { - Weight::from_ref_time(78_107_000 as u64) - .saturating_add(T::DbWeight::get().reads(8 as u64)) - .saturating_add(T::DbWeight::get().writes(2 as u64)) + // Proof Size summary in bytes: + // Measured: `425` + // Estimated: `23200` + // Minimum execution time: 69_320_000 picoseconds. + Weight::from_parts(69_951_000, 23200) + .saturating_add(T::DbWeight::get().reads(8_u64)) + .saturating_add(T::DbWeight::get().writes(2_u64)) } } // For backwards compatibility and tests impl WeightInfo for () { - // Storage: XcmTransactor IndexToAccount (r:1 w:1) - #[rustfmt::skip] + /// Storage: XcmTransactor IndexToAccount (r:1 w:1) + /// Proof Skipped: XcmTransactor IndexToAccount (max_values: None, max_size: None, mode: Measured) fn register() -> Weight { - Weight::from_ref_time(27_464_000 as u64) - .saturating_add(RocksDbWeight::get().reads(1 as u64)) - .saturating_add(RocksDbWeight::get().writes(1 as u64)) + // Proof Size summary in bytes: + // Measured: `76` + // Estimated: `3541` + // Minimum execution time: 17_609_000 picoseconds. + Weight::from_parts(18_079_000, 3541) + .saturating_add(RocksDbWeight::get().reads(1_u64)) + .saturating_add(RocksDbWeight::get().writes(1_u64)) } - // Storage: XcmTransactor IndexToAccount (r:0 w:1) - #[rustfmt::skip] + /// Storage: XcmTransactor IndexToAccount (r:0 w:1) + /// Proof Skipped: XcmTransactor IndexToAccount (max_values: None, max_size: None, mode: Measured) fn deregister() -> Weight { - Weight::from_ref_time(23_913_000 as u64) - .saturating_add(RocksDbWeight::get().writes(1 as u64)) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 12_958_000 picoseconds. + Weight::from_parts(13_219_000, 0) + .saturating_add(RocksDbWeight::get().writes(1_u64)) } - // Storage: XcmTransactor TransactInfoWithWeightLimit (r:0 w:1) - #[rustfmt::skip] + /// Storage: XcmTransactor TransactInfoWithWeightLimit (r:0 w:1) + /// Proof Skipped: XcmTransactor TransactInfoWithWeightLimit (max_values: None, max_size: None, mode: Measured) fn set_transact_info() -> Weight { - Weight::from_ref_time(24_533_000 as u64) - .saturating_add(RocksDbWeight::get().writes(1 as u64)) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 16_396_000 picoseconds. + Weight::from_parts(16_967_000, 0) + .saturating_add(RocksDbWeight::get().writes(1_u64)) } - // Storage: XcmTransactor TransactInfoWithWeightLimit (r:0 w:1) - #[rustfmt::skip] + /// Storage: XcmTransactor TransactInfoWithWeightLimit (r:0 w:1) + /// Proof Skipped: XcmTransactor TransactInfoWithWeightLimit (max_values: None, max_size: None, mode: Measured) fn remove_transact_info() -> Weight { - Weight::from_ref_time(25_676_000 as u64) - .saturating_add(RocksDbWeight::get().writes(1 as u64)) + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 15_457_000 picoseconds. + Weight::from_parts(15_752_000, 0) + .saturating_add(RocksDbWeight::get().writes(1_u64)) } - // Storage: XcmTransactor DestinationAssetFeePerSecond (r:0 w:1) - #[rustfmt::skip] + /// Storage: XcmTransactor DestinationAssetFeePerSecond (r:0 w:1) + /// Proof Skipped: XcmTransactor DestinationAssetFeePerSecond (max_values: None, max_size: None, mode: Measured) fn set_fee_per_second() -> Weight { - Weight::from_ref_time(23_568_000 as u64) - .saturating_add(RocksDbWeight::get().writes(1 as u64)) - } - // Storage: AssetManager AssetIdType (r:1 w:0) - // Storage: XcmTransactor IndexToAccount (r:1 w:0) - // Storage: XcmTransactor TransactInfoWithWeightLimit (r:1 w:0) - // Storage: XcmTransactor DestinationAssetFeePerSecond (r:1 w:0) - // Storage: AssetManager AssetTypeId (r:1 w:0) - // Storage: Assets Asset (r:1 w:0) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 16_164_000 picoseconds. + Weight::from_parts(16_519_000, 0) + .saturating_add(RocksDbWeight::get().writes(1_u64)) + } + /// Storage: AssetManager AssetIdType (r:1 w:0) + /// Proof Skipped: AssetManager AssetIdType (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor IndexToAccount (r:1 w:0) + /// Proof Skipped: XcmTransactor IndexToAccount (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor TransactInfoWithWeightLimit (r:1 w:0) + /// Proof Skipped: XcmTransactor TransactInfoWithWeightLimit (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor DestinationAssetFeePerSecond (r:1 w:0) + /// Proof Skipped: XcmTransactor DestinationAssetFeePerSecond (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeId (r:1 w:0) + /// Proof Skipped: AssetManager AssetTypeId (max_values: None, max_size: None, mode: Measured) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) fn transact_through_derivative() -> Weight { - Weight::from_ref_time(46_889_000 as u64) - .saturating_add(RocksDbWeight::get().reads(6 as u64)) - } - // Storage: AssetManager AssetIdType (r:1 w:0) - // Storage: XcmTransactor TransactInfoWithWeightLimit (r:1 w:0) - // Storage: XcmTransactor DestinationAssetFeePerSecond (r:1 w:0) - // Storage: AssetManager AssetTypeId (r:1 w:0) - // Storage: Assets Asset (r:1 w:0) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `443` + // Estimated: `23179` + // Minimum execution time: 37_628_000 picoseconds. + Weight::from_parts(38_250_000, 23179) + .saturating_add(RocksDbWeight::get().reads(6_u64)) + } + /// Storage: AssetManager AssetIdType (r:1 w:0) + /// Proof Skipped: AssetManager AssetIdType (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor TransactInfoWithWeightLimit (r:1 w:0) + /// Proof Skipped: XcmTransactor TransactInfoWithWeightLimit (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor DestinationAssetFeePerSecond (r:1 w:0) + /// Proof Skipped: XcmTransactor DestinationAssetFeePerSecond (max_values: None, max_size: None, mode: Measured) + /// Storage: AssetManager AssetTypeId (r:1 w:0) + /// Proof Skipped: AssetManager AssetTypeId (max_values: None, max_size: None, mode: Measured) + /// Storage: Assets Asset (r:1 w:0) + /// Proof: Assets Asset (max_values: None, max_size: Some(174), added: 2649, mode: MaxEncodedLen) fn transact_through_sovereign() -> Weight { - Weight::from_ref_time(39_590_000 as u64) - .saturating_add(RocksDbWeight::get().reads(5 as u64)) - } - // Storage: AssetManager AssetIdType (r:1 w:0) - // Storage: XcmTransactor TransactInfoWithWeightLimit (r:1 w:0) - // Storage: XcmTransactor DestinationAssetFeePerSecond (r:1 w:0) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `381` + // Estimated: `19023` + // Minimum execution time: 31_621_000 picoseconds. + Weight::from_parts(32_023_000, 19023) + .saturating_add(RocksDbWeight::get().reads(5_u64)) + } + /// Storage: AssetManager AssetIdType (r:1 w:0) + /// Proof Skipped: AssetManager AssetIdType (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor TransactInfoWithWeightLimit (r:1 w:0) + /// Proof Skipped: XcmTransactor TransactInfoWithWeightLimit (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor DestinationAssetFeePerSecond (r:1 w:0) + /// Proof Skipped: XcmTransactor DestinationAssetFeePerSecond (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn transact_through_signed() -> Weight { - Weight::from_ref_time(76_974_000 as u64) - .saturating_add(RocksDbWeight::get().reads(8 as u64)) - .saturating_add(RocksDbWeight::get().writes(2 as u64)) - } - // Storage: AssetManager AssetIdType (r:1 w:0) - // Storage: XcmTransactor TransactInfoWithWeightLimit (r:1 w:0) - // Storage: XcmTransactor DestinationAssetFeePerSecond (r:1 w:0) - // Storage: PolkadotXcm SupportedVersion (r:1 w:0) - // Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) - // Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) - // Storage: ParachainSystem HostConfiguration (r:1 w:0) - // Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) - #[rustfmt::skip] + // Proof Size summary in bytes: + // Measured: `425` + // Estimated: `23200` + // Minimum execution time: 67_658_000 picoseconds. + Weight::from_parts(68_448_000, 23200) + .saturating_add(RocksDbWeight::get().reads(8_u64)) + .saturating_add(RocksDbWeight::get().writes(2_u64)) + } + /// Storage: AssetManager AssetIdType (r:1 w:0) + /// Proof Skipped: AssetManager AssetIdType (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor TransactInfoWithWeightLimit (r:1 w:0) + /// Proof Skipped: XcmTransactor TransactInfoWithWeightLimit (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmTransactor DestinationAssetFeePerSecond (r:1 w:0) + /// Proof Skipped: XcmTransactor DestinationAssetFeePerSecond (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm SupportedVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: PolkadotXcm VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: PolkadotXcm VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PolkadotXcm SafeXcmVersion (r:1 w:0) + /// Proof Skipped: PolkadotXcm SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem HostConfiguration (r:1 w:0) + /// Proof Skipped: ParachainSystem HostConfiguration (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: ParachainSystem PendingUpwardMessages (r:1 w:1) + /// Proof Skipped: ParachainSystem PendingUpwardMessages (max_values: Some(1), max_size: None, mode: Measured) fn hrmp_manage() -> Weight { - Weight::from_ref_time(78_107_000 as u64) - .saturating_add(RocksDbWeight::get().reads(8 as u64)) - .saturating_add(RocksDbWeight::get().writes(2 as u64)) + // Proof Size summary in bytes: + // Measured: `425` + // Estimated: `23200` + // Minimum execution time: 69_320_000 picoseconds. + Weight::from_parts(69_951_000, 23200) + .saturating_add(RocksDbWeight::get().reads(8_u64)) + .saturating_add(RocksDbWeight::get().writes(2_u64)) } -} +} \ No newline at end of file diff --git a/precompiles/assets-erc20/src/mock.rs b/precompiles/assets-erc20/src/mock.rs index 6189470317..f7c4d267fd 100644 --- a/precompiles/assets-erc20/src/mock.rs +++ b/precompiles/assets-erc20/src/mock.rs @@ -178,7 +178,7 @@ pub type ForeignPCall = Erc20AssetsPrecompileSetCall = Precompiles::new(); - pub WeightPerGas: Weight = Weight::from_ref_time(1); + pub WeightPerGas: Weight = Weight::from_parts(1, 0); } impl pallet_evm::Config for Runtime { diff --git a/precompiles/assets-erc20/src/tests.rs b/precompiles/assets-erc20/src/tests.rs index 916b8a0276..1414c9edfa 100644 --- a/precompiles/assets-erc20/src/tests.rs +++ b/precompiles/assets-erc20/src/tests.rs @@ -267,7 +267,7 @@ fn approve() { value: 500.into(), }, ) - .expect_cost(27666756) + .expect_cost(32317756) .expect_log(log3( ForeignAssetId(0u128), SELECTOR_LOG_APPROVAL, @@ -308,7 +308,7 @@ fn approve_saturating() { value: U256::MAX, }, ) - .expect_cost(27666756) + .expect_cost(32317756) .expect_log(log3( ForeignAssetId(0u128), SELECTOR_LOG_APPROVAL, @@ -437,7 +437,7 @@ fn transfer() { value: 400.into(), }, ) - .expect_cost(43534756) // 1 weight => 1 gas in mock + .expect_cost(50484756) // 1 weight => 1 gas in mock .expect_log(log3( ForeignAssetId(0u128), SELECTOR_LOG_TRANSFER, @@ -564,7 +564,7 @@ fn transfer_from() { value: 400.into(), }, ) - .expect_cost(56637756) // 1 weight => 1 gas in mock + .expect_cost(109743756) // 1 weight => 1 gas in mock .expect_log(log3( ForeignAssetId(0u128), SELECTOR_LOG_TRANSFER, @@ -642,7 +642,7 @@ fn transfer_from_non_incremental_approval() { value: 500.into(), }, ) - .expect_cost(27666756) + .expect_cost(32317756) .expect_log(log3( ForeignAssetId(0u128), SELECTOR_LOG_APPROVAL, @@ -665,7 +665,7 @@ fn transfer_from_non_incremental_approval() { value: 300.into(), }, ) - .expect_cost(56991756) + .expect_cost(66141756) .expect_log(log3( ForeignAssetId(0u128), SELECTOR_LOG_APPROVAL, @@ -773,7 +773,7 @@ fn transfer_from_self() { value: 400.into(), }, ) - .expect_cost(43534756) // 1 weight => 1 gas in mock + .expect_cost(50484756) // 1 weight => 1 gas in mock .expect_log(log3( ForeignAssetId(0u128), SELECTOR_LOG_TRANSFER, @@ -932,7 +932,7 @@ fn mint_local_assets() { value: 400.into(), }, ) - .expect_cost(25785756) // 1 weight => 1 gas in mock + .expect_cost(29408756) // 1 weight => 1 gas in mock .expect_log(log3( LocalAssetId(0u128), SELECTOR_LOG_TRANSFER, @@ -993,7 +993,7 @@ fn burn_local_assets() { value: 400.into(), }, ) - .expect_cost(31512756) // 1 weight => 1 gas in mock + .expect_cost(35403756) // 1 weight => 1 gas in mock .expect_log(log3( LocalAssetId(0u128), SELECTOR_LOG_TRANSFER, @@ -1053,7 +1053,7 @@ fn freeze_local_assets() { account: Address(Bob.into()), }, ) - .expect_cost(17498000) // 1 weight => 1 gas in mock + .expect_cost(19585000) // 1 weight => 1 gas in mock .expect_no_logs() .execute_returns(true); @@ -1111,7 +1111,7 @@ fn thaw_local_assets() { account: Address(Bob.into()), }, ) - .expect_cost(17498000) // 1 weight => 1 gas in mock + .expect_cost(19585000) // 1 weight => 1 gas in mock .expect_no_logs() .execute_returns(true); @@ -1123,7 +1123,7 @@ fn thaw_local_assets() { account: Address(Bob.into()), }, ) - .expect_cost(17842000) // 1 weight => 1 gas in mock + .expect_cost(20079000) // 1 weight => 1 gas in mock .expect_no_logs() .execute_returns(true); @@ -1136,7 +1136,7 @@ fn thaw_local_assets() { value: 400.into(), }, ) - .expect_cost(43534756) // 1 weight => 1 gas in mock + .expect_cost(50484756) // 1 weight => 1 gas in mock .expect_log(log3( LocalAssetId(0u128), SELECTOR_LOG_TRANSFER, @@ -1182,7 +1182,7 @@ fn freeze_asset_local_asset() { LocalAssetId(0u128), LocalPCall::freeze_asset {}, ) - .expect_cost(13719000) // 1 weight => 1 gas in mock + .expect_cost(15594000) // 1 weight => 1 gas in mock .expect_no_logs() .execute_returns(true); @@ -1238,13 +1238,13 @@ fn thaw_asset_local_assets() { LocalAssetId(0u128), LocalPCall::freeze_asset {}, ) - .expect_cost(13719000) // 1 weight => 1 gas in mock + .expect_cost(15594000) // 1 weight => 1 gas in mock .expect_no_logs() .execute_returns(true); precompiles() .prepare_test(CryptoAlith, LocalAssetId(0u128), LocalPCall::thaw_asset {}) - .expect_cost(13764000) // 1 weight => 1 gas in mock + .expect_cost(15862000) // 1 weight => 1 gas in mock .expect_no_logs() .execute_returns(true); @@ -1257,7 +1257,7 @@ fn thaw_asset_local_assets() { value: 400.into(), }, ) - .expect_cost(43534756) // 1 weight => 1 gas in mock + .expect_cost(50484756) // 1 weight => 1 gas in mock .expect_log(log3( LocalAssetId(0u128), SELECTOR_LOG_TRANSFER, @@ -1299,7 +1299,7 @@ fn transfer_ownership_local_assets() { owner: Address(Bob.into()), }, ) - .expect_cost(15366000) // 1 weight => 1 gas in mock + .expect_cost(17656000) // 1 weight => 1 gas in mock .expect_no_logs() .execute_returns(true); @@ -1327,7 +1327,7 @@ fn transfer_ownership_local_assets() { owner: Address(CryptoAlith.into()), }, ) - .expect_cost(15366000) // 1 weight => 1 gas in mock + .expect_cost(17656000) // 1 weight => 1 gas in mock .expect_no_logs() .execute_returns(true); }); @@ -1365,7 +1365,7 @@ fn set_team_local_assets() { freezer: Address(Bob.into()), }, ) - .expect_cost(14437000) // 1 weight => 1 gas in mock + .expect_cost(16439000) // 1 weight => 1 gas in mock .expect_no_logs() .execute_returns(true); @@ -1395,7 +1395,7 @@ fn set_team_local_assets() { value: 400.into(), }, ) - .expect_cost(25785756) // 1 weight => 1 gas in mock + .expect_cost(29408756) // 1 weight => 1 gas in mock .expect_log(log3( LocalAssetId(0u128), SELECTOR_LOG_TRANSFER, @@ -1451,7 +1451,7 @@ fn set_metadata() { decimals: 12, }, ) - .expect_cost(24489304) // 1 weight => 1 gas in mock + .expect_cost(29151657) // 1 weight => 1 gas in mock .expect_no_logs() .execute_returns(true); @@ -1507,7 +1507,7 @@ fn clear_metadata() { decimals: 12, }, ) - .expect_cost(24489304) // 1 weight => 1 gas in mock + .expect_cost(29151657) // 1 weight => 1 gas in mock .expect_no_logs() .execute_returns(true); @@ -1517,7 +1517,7 @@ fn clear_metadata() { LocalAssetId(0u128), LocalPCall::clear_metadata {}, ) - .expect_cost(24812000) // 1 weight => 1 gas in mock + .expect_cost(28289000) // 1 weight => 1 gas in mock .expect_no_logs() .execute_returns(true); @@ -1606,7 +1606,7 @@ fn permit_valid() { s: H256::from(rs.s.b32()), }, ) - .expect_cost(27665000) + .expect_cost(32316000) .expect_log(log3( ForeignAssetId(0u128), SELECTOR_LOG_APPROVAL, @@ -1715,7 +1715,7 @@ fn permit_valid_named_asset() { s: H256::from(rs.s.b32()), }, ) - .expect_cost(27665000) + .expect_cost(32316000) .expect_log(log3( ForeignAssetId(0u128), SELECTOR_LOG_APPROVAL, @@ -2193,7 +2193,7 @@ fn permit_valid_with_metamask_signed_data() { s: H256::from(s_real), }, ) - .expect_cost(27665000) + .expect_cost(32316000) .expect_log(log3( ForeignAssetId(1u128), SELECTOR_LOG_APPROVAL, diff --git a/precompiles/author-mapping/src/mock.rs b/precompiles/author-mapping/src/mock.rs index b38fe26392..5b626fb6c5 100644 --- a/precompiles/author-mapping/src/mock.rs +++ b/precompiles/author-mapping/src/mock.rs @@ -106,7 +106,7 @@ mock_account!(AuthorMappingAccount, |_| MockAccount::from_u64(1)); parameter_types! { pub BlockGasLimit: U256 = U256::max_value(); pub PrecompilesValue: Precompiles = Precompiles::new(); - pub const WeightPerGas: Weight = Weight::from_ref_time(1); + pub const WeightPerGas: Weight = Weight::from_parts(1, 0); } impl pallet_evm::Config for Runtime { diff --git a/precompiles/balances-erc20/src/mock.rs b/precompiles/balances-erc20/src/mock.rs index febb60342a..f5694ba60e 100644 --- a/precompiles/balances-erc20/src/mock.rs +++ b/precompiles/balances-erc20/src/mock.rs @@ -99,7 +99,7 @@ pub type PCall = Erc20BalancesPrecompileCall; parameter_types! { pub BlockGasLimit: U256 = U256::max_value(); pub PrecompilesValue: Precompiles = Precompiles::new(); - pub const WeightPerGas: Weight = Weight::from_ref_time(1); + pub const WeightPerGas: Weight = Weight::from_parts(1, 0); } impl pallet_evm::Config for Runtime { diff --git a/precompiles/balances-erc20/src/tests.rs b/precompiles/balances-erc20/src/tests.rs index 54ae95fcd5..5a1c4fde54 100644 --- a/precompiles/balances-erc20/src/tests.rs +++ b/precompiles/balances-erc20/src/tests.rs @@ -280,7 +280,7 @@ fn transfer() { value: 400.into(), }, ) - .expect_cost(173315756) // 1 weight => 1 gas in mock + .expect_cost(163110756) // 1 weight => 1 gas in mock .expect_log(log3( Precompile1, SELECTOR_LOG_TRANSFER, @@ -367,7 +367,7 @@ fn transfer_from() { value: 400.into(), }, ) - .expect_cost(173315756) // 1 weight => 1 gas in mock + .expect_cost(163110756) // 1 weight => 1 gas in mock .expect_log(log3( Precompile1, SELECTOR_LOG_TRANSFER, @@ -463,7 +463,7 @@ fn transfer_from_self() { value: 400.into(), }, ) - .expect_cost(173315756) // 1 weight => 1 gas in mock + .expect_cost(163110756) // 1 weight => 1 gas in mock .expect_log(log3( Precompile1, SELECTOR_LOG_TRANSFER, diff --git a/precompiles/batch/src/mock.rs b/precompiles/batch/src/mock.rs index 2a48db7d7e..324397198e 100644 --- a/precompiles/batch/src/mock.rs +++ b/precompiles/batch/src/mock.rs @@ -49,7 +49,7 @@ construct_runtime!( parameter_types! { pub const BlockHashCount: u32 = 250; - pub const MaximumBlockWeight: Weight = Weight::from_ref_time(1024); + pub const MaximumBlockWeight: Weight = Weight::from_parts(1024, 1); pub const MaximumBlockLength: u32 = 2 * 1024; pub const AvailableBlockRatio: Perbill = Perbill::one(); pub const SS58Prefix: u8 = 42; @@ -120,7 +120,7 @@ mock_account!(Revert, |_| MockAccount::from_u64(2)); parameter_types! { pub BlockGasLimit: U256 = U256::max_value(); pub PrecompilesValue: Precompiles = Precompiles::new(); - pub const WeightPerGas: Weight = Weight::from_ref_time(1); + pub const WeightPerGas: Weight = Weight::from_parts(1, 0); } impl pallet_evm::Config for Runtime { diff --git a/precompiles/call-permit/src/mock.rs b/precompiles/call-permit/src/mock.rs index ab037c580b..0e1575f170 100644 --- a/precompiles/call-permit/src/mock.rs +++ b/precompiles/call-permit/src/mock.rs @@ -49,7 +49,7 @@ construct_runtime!( parameter_types! { pub const BlockHashCount: u32 = 250; - pub const MaximumBlockWeight: Weight = Weight::from_ref_time(1024); + pub const MaximumBlockWeight: Weight = Weight::from_parts(1024, 1); pub const MaximumBlockLength: u32 = 2 * 1024; pub const AvailableBlockRatio: Perbill = Perbill::one(); pub const SS58Prefix: u8 = 42; @@ -111,7 +111,7 @@ pub type PCall = CallPermitPrecompileCall; parameter_types! { pub PrecompilesValue: Precompiles = Precompiles::new(); - pub const WeightPerGas: Weight = Weight::from_ref_time(1); + pub const WeightPerGas: Weight = Weight::from_parts(1, 0); } impl pallet_evm::Config for Runtime { diff --git a/precompiles/collective/src/mock.rs b/precompiles/collective/src/mock.rs index c54882d235..91e03a76d2 100644 --- a/precompiles/collective/src/mock.rs +++ b/precompiles/collective/src/mock.rs @@ -114,7 +114,7 @@ pub type PCall = CollectivePrecompileCall parameter_types! { pub BlockGasLimit: U256 = U256::max_value(); pub PrecompilesValue: Precompiles = Precompiles::new(); - pub const WeightPerGas: Weight = Weight::from_ref_time(1); + pub const WeightPerGas: Weight = Weight::from_parts(1, 0); } impl pallet_evm::Config for Runtime { diff --git a/precompiles/conviction-voting/src/mock.rs b/precompiles/conviction-voting/src/mock.rs index d3775cc696..99bb0b0836 100644 --- a/precompiles/conviction-voting/src/mock.rs +++ b/precompiles/conviction-voting/src/mock.rs @@ -54,7 +54,7 @@ construct_runtime!( parameter_types! { pub const BlockHashCount: u32 = 250; - pub const MaximumBlockWeight: Weight = Weight::from_ref_time(1024); + pub const MaximumBlockWeight: Weight = Weight::from_parts(1024, 1); pub const MaximumBlockLength: u32 = 2 * 1024; pub const AvailableBlockRatio: Perbill = Perbill::one(); pub const SS58Prefix: u8 = 42; @@ -104,7 +104,7 @@ impl pallet_balances::Config for Runtime { parameter_types! { pub BlockGasLimit: U256 = U256::max_value(); pub PrecompilesValue: Precompiles = Precompiles::new(); - pub const WeightPerGas: Weight = Weight::from_ref_time(1); + pub const WeightPerGas: Weight = Weight::from_parts(1, 0); } pub type Precompiles = diff --git a/precompiles/crowdloan-rewards/src/mock.rs b/precompiles/crowdloan-rewards/src/mock.rs index bf2850c7db..d99f0b0bb5 100644 --- a/precompiles/crowdloan-rewards/src/mock.rs +++ b/precompiles/crowdloan-rewards/src/mock.rs @@ -131,7 +131,7 @@ pub type PCall = CrowdloanRewardsPrecompileCall; parameter_types! { pub BlockGasLimit: U256 = U256::max_value(); pub PrecompilesValue: Precompiles = Precompiles::new(); - pub const WeightPerGas: Weight = Weight::from_ref_time(1); + pub const WeightPerGas: Weight = Weight::from_parts(1, 0); } impl pallet_evm::Config for Runtime { @@ -187,8 +187,7 @@ impl pallet_crowdloan_rewards::Config for Runtime { type SignatureNetworkIdentifier = TestSignatureNetworkIdentifier; type VestingBlockNumber = cumulus_primitives_core::relay_chain::BlockNumber; - type VestingBlockProvider = - cumulus_pallet_parachain_system::RelaychainBlockNumberProvider; + type VestingBlockProvider = cumulus_pallet_parachain_system::RelaychainDataProvider; type WeightInfo = (); } pub(crate) struct ExtBuilder { diff --git a/precompiles/gmp/src/mock.rs b/precompiles/gmp/src/mock.rs index 7788aa058e..e352747020 100644 --- a/precompiles/gmp/src/mock.rs +++ b/precompiles/gmp/src/mock.rs @@ -70,7 +70,7 @@ parameter_types! { parameter_types! { pub const BlockHashCount: u32 = 250; - pub const MaximumBlockWeight: Weight = Weight::from_ref_time(1024); + pub const MaximumBlockWeight: Weight = Weight::from_parts(1024, 1); pub const MaximumBlockLength: u32 = 2 * 1024; pub const AvailableBlockRatio: Perbill = Perbill::one(); pub const SS58Prefix: u8 = 42; @@ -192,6 +192,7 @@ impl xcm_executor::Config for XcmConfig { type MessageExporter = (); type UniversalAliases = Nothing; type SafeCallFilter = Everything; + type AssetIsBurnable = Everything; } pub type Precompiles = PrecompileSetBuilder< @@ -238,7 +239,7 @@ mock_account!(Revert, |_| MockAccount::from_u64(2)); parameter_types! { pub BlockGasLimit: U256 = U256::max_value(); pub PrecompilesValue: Precompiles = Precompiles::new(); - pub const WeightPerGas: Weight = Weight::from_ref_time(1); + pub const WeightPerGas: Weight = Weight::from_parts(1, 0); } impl pallet_evm::Config for Runtime { diff --git a/precompiles/pallet-democracy/src/mock.rs b/precompiles/pallet-democracy/src/mock.rs index fd3f590987..2b2c34220c 100644 --- a/precompiles/pallet-democracy/src/mock.rs +++ b/precompiles/pallet-democracy/src/mock.rs @@ -100,7 +100,7 @@ impl pallet_balances::Config for Runtime { parameter_types! { pub BlockGasLimit: U256 = U256::max_value(); pub PrecompilesValue: Precompiles = Precompiles::new(); - pub const WeightPerGas: Weight = Weight::from_ref_time(1); + pub const WeightPerGas: Weight = Weight::from_parts(1, 0); } pub type Precompiles = @@ -181,6 +181,7 @@ impl pallet_democracy::Config for Runtime { type Preimages = Preimage; type MaxDeposits = ConstU32<1000>; type MaxBlacklisted = ConstU32<5>; + type SubmitOrigin = EnsureSigned; } impl pallet_scheduler::Config for Runtime { type RuntimeEvent = RuntimeEvent; diff --git a/precompiles/parachain-staking/src/mock.rs b/precompiles/parachain-staking/src/mock.rs index 28f2e2d982..d51fdec148 100644 --- a/precompiles/parachain-staking/src/mock.rs +++ b/precompiles/parachain-staking/src/mock.rs @@ -57,7 +57,7 @@ construct_runtime!( parameter_types! { pub const BlockHashCount: u32 = 250; - pub const MaximumBlockWeight: Weight = Weight::from_ref_time(1024); + pub const MaximumBlockWeight: Weight = Weight::from_parts(1024, 1); pub const MaximumBlockLength: u32 = 2 * 1024; pub const AvailableBlockRatio: Perbill = Perbill::one(); pub const SS58Prefix: u8 = 42; @@ -107,7 +107,7 @@ impl pallet_balances::Config for Runtime { parameter_types! { pub BlockGasLimit: U256 = U256::max_value(); pub PrecompilesValue: Precompiles = Precompiles::new(); - pub const WeightPerGas: Weight = Weight::from_ref_time(1); + pub const WeightPerGas: Weight = Weight::from_parts(1, 0); } pub type Precompiles = diff --git a/precompiles/parachain-staking/src/tests.rs b/precompiles/parachain-staking/src/tests.rs index aacc5db5da..f5ea24a3b5 100644 --- a/precompiles/parachain-staking/src/tests.rs +++ b/precompiles/parachain-staking/src/tests.rs @@ -690,7 +690,7 @@ fn delegation_request_is_pending_works() { candidate: Address(Alice.into()), }, ) - .expect_cost(293131000) + .expect_cost(277725000) .expect_no_logs() .execute_returns(()); @@ -758,7 +758,7 @@ fn candidate_exit_is_pending_works() { candidate_count: 1.into(), }, ) - .expect_cost(325075534) + .expect_cost(274020795) .expect_no_logs() .execute_returns(()); @@ -822,7 +822,7 @@ fn candidate_request_is_pending_works() { Precompile1, PCall::schedule_candidate_bond_less { less: 0.into() }, ) - .expect_cost(163239000) + .expect_cost(148511000) .expect_no_logs() .execute_returns(()); diff --git a/precompiles/precompile-registry/src/mock.rs b/precompiles/precompile-registry/src/mock.rs index 6f2133f621..0bfbd973d9 100644 --- a/precompiles/precompile-registry/src/mock.rs +++ b/precompiles/precompile-registry/src/mock.rs @@ -49,7 +49,7 @@ construct_runtime!( parameter_types! { pub const BlockHashCount: u32 = 250; - pub const MaximumBlockWeight: Weight = Weight::from_ref_time(1024); + pub const MaximumBlockWeight: Weight = Weight::from_parts(1024, 1); pub const MaximumBlockLength: u32 = 2 * 1024; pub const AvailableBlockRatio: Perbill = Perbill::one(); pub const SS58Prefix: u8 = 42; @@ -112,7 +112,7 @@ pub type PCall = PrecompileRegistryCall; parameter_types! { pub PrecompilesValue: Precompiles = Precompiles::new(); - pub const WeightPerGas: Weight = Weight::from_ref_time(1); + pub const WeightPerGas: Weight = Weight::from_parts(1, 0); } impl pallet_evm::Config for Runtime { diff --git a/precompiles/preimage/src/mock.rs b/precompiles/preimage/src/mock.rs index 2fd2bd9773..627a76f719 100644 --- a/precompiles/preimage/src/mock.rs +++ b/precompiles/preimage/src/mock.rs @@ -49,7 +49,7 @@ construct_runtime!( parameter_types! { pub const BlockHashCount: u32 = 250; - pub const MaximumBlockWeight: Weight = Weight::from_ref_time(1024); + pub const MaximumBlockWeight: Weight = Weight::from_parts(1024, 1); pub const MaximumBlockLength: u32 = 2 * 1024; pub const AvailableBlockRatio: Perbill = Perbill::one(); pub const SS58Prefix: u8 = 42; @@ -99,7 +99,7 @@ impl pallet_balances::Config for Runtime { parameter_types! { pub BlockGasLimit: U256 = U256::max_value(); pub PrecompilesValue: Precompiles = Precompiles::new(); - pub const WeightPerGas: Weight = Weight::from_ref_time(1); + pub const WeightPerGas: Weight = Weight::from_parts(1, 0); } pub type Precompiles = diff --git a/precompiles/proxy/src/mock.rs b/precompiles/proxy/src/mock.rs index 87946c4fa7..78a5195cfd 100644 --- a/precompiles/proxy/src/mock.rs +++ b/precompiles/proxy/src/mock.rs @@ -142,7 +142,7 @@ impl EnsureAddressOrigin for EnsureAddressAlways { parameter_types! { pub BlockGasLimit: U256 = U256::max_value(); pub PrecompilesValue: Precompiles = Precompiles::new(); - pub const WeightPerGas: Weight = Weight::from_ref_time(1); + pub const WeightPerGas: Weight = Weight::from_parts(1, 0); } impl pallet_evm::Config for Runtime { type FeeCalculator = (); diff --git a/precompiles/randomness/src/lib.rs b/precompiles/randomness/src/lib.rs index 85c3014651..570ad94a2a 100644 --- a/precompiles/randomness/src/lib.rs +++ b/precompiles/randomness/src/lib.rs @@ -39,9 +39,9 @@ mod tests; use solidity_types::*; // Tests to verify equal to weight_to_gas(weight) in runtime integration tests -pub const REQUEST_RANDOMNESS_ESTIMATED_COST: u64 = 26561; -pub const INCREASE_REQUEST_FEE_ESTIMATED_COST: u64 = 16999; -pub const EXECUTE_EXPIRATION_ESTIMATED_COST: u64 = 22300; +pub const REQUEST_RANDOMNESS_ESTIMATED_COST: u64 = 26289; +pub const INCREASE_REQUEST_FEE_ESTIMATED_COST: u64 = 16618; +pub const EXECUTE_EXPIRATION_ESTIMATED_COST: u64 = 21830; /// Fulfillment overhead cost, which takes input weight hint -> weight -> return gas pub fn prepare_and_finish_fulfillment_gas_cost(num_words: u8) -> u64 { diff --git a/precompiles/randomness/src/mock.rs b/precompiles/randomness/src/mock.rs index 75f7aa9e64..3db6685ea6 100644 --- a/precompiles/randomness/src/mock.rs +++ b/precompiles/randomness/src/mock.rs @@ -57,7 +57,7 @@ construct_runtime!( parameter_types! { pub const BlockHashCount: u32 = 250; - pub const MaximumBlockWeight: Weight = Weight::from_ref_time(1024); + pub const MaximumBlockWeight: Weight = Weight::from_parts(1024, 1); pub const MaximumBlockLength: u32 = 2 * 1024; pub const AvailableBlockRatio: Perbill = Perbill::one(); pub const SS58Prefix: u8 = 42; @@ -120,7 +120,7 @@ pub type PCall = RandomnessPrecompileCall; parameter_types! { pub PrecompilesValue: TestPrecompiles = TestPrecompiles::new(); - pub const WeightPerGas: Weight = Weight::from_ref_time(1); + pub const WeightPerGas: Weight = Weight::from_parts(1, 0); } impl pallet_evm::Config for Runtime { diff --git a/precompiles/referenda/src/mock.rs b/precompiles/referenda/src/mock.rs index 9c0114ffd7..37131f4607 100644 --- a/precompiles/referenda/src/mock.rs +++ b/precompiles/referenda/src/mock.rs @@ -60,7 +60,7 @@ construct_runtime!( parameter_types! { pub const BlockHashCount: u32 = 250; - pub const MaximumBlockWeight: Weight = Weight::from_ref_time(1024); + pub const MaximumBlockWeight: Weight = Weight::from_parts(1024, 1); pub const MaximumBlockLength: u32 = 2 * 1024; pub const AvailableBlockRatio: Perbill = Perbill::one(); pub const SS58Prefix: u8 = 42; @@ -120,7 +120,7 @@ pub type PCall = ReferendaPrecompileCall; parameter_types! { pub BlockGasLimit: U256 = U256::max_value(); pub PrecompilesValue: TestPrecompiles = TestPrecompiles::new(); - pub const WeightPerGas: Weight = Weight::from_ref_time(1); + pub const WeightPerGas: Weight = Weight::from_parts(1, 0); } impl pallet_evm::Config for Runtime { diff --git a/precompiles/relay-encoder/src/mock.rs b/precompiles/relay-encoder/src/mock.rs index a8008f3299..7fcdce4f48 100644 --- a/precompiles/relay-encoder/src/mock.rs +++ b/precompiles/relay-encoder/src/mock.rs @@ -120,7 +120,7 @@ pub type PCall = RelayEncoderPrecompileCall = Precompiles::new(); - pub const WeightPerGas: Weight = Weight::from_ref_time(1); + pub const WeightPerGas: Weight = Weight::from_parts(1, 0); } impl pallet_evm::Config for Runtime { diff --git a/precompiles/utils/tests-external/lib.rs b/precompiles/utils/tests-external/lib.rs index 1f2ff158be..30d34135cf 100644 --- a/precompiles/utils/tests-external/lib.rs +++ b/precompiles/utils/tests-external/lib.rs @@ -59,7 +59,7 @@ mod tests { parameter_types! { pub const BlockHashCount: u32 = 250; - pub const MaximumBlockWeight: Weight = Weight::from_ref_time(1024); + pub const MaximumBlockWeight: Weight = Weight::from_parts(1024, 1); pub const MaximumBlockLength: u32 = 2 * 1024; pub const AvailableBlockRatio: Perbill = Perbill::one(); pub const SS58Prefix: u8 = 42; @@ -158,7 +158,7 @@ mod tests { parameter_types! { pub BlockGasLimit: U256 = U256::max_value(); pub PrecompilesValue: Precompiles = Precompiles::new(); - pub const WeightPerGas: Weight = Weight::from_ref_time(1); + pub const WeightPerGas: Weight = Weight::from_parts(1, 0); } impl pallet_evm::Config for Runtime { diff --git a/precompiles/xcm-transactor/src/mock.rs b/precompiles/xcm-transactor/src/mock.rs index 03c5e6b14c..c3ea2ac026 100644 --- a/precompiles/xcm-transactor/src/mock.rs +++ b/precompiles/xcm-transactor/src/mock.rs @@ -163,7 +163,7 @@ pub type PCallV2 = XcmTransactorPrecompileV2Call; parameter_types! { pub BlockGasLimit: U256 = U256::max_value(); pub PrecompilesValue: Precompiles = Precompiles::new(); - pub const WeightPerGas: Weight = Weight::from_ref_time(1); + pub const WeightPerGas: Weight = Weight::from_parts(1, 0); } /// A mapping function that converts Ethereum gas to Substrate weight @@ -171,7 +171,7 @@ parameter_types! { pub struct MockGasWeightMapping; impl GasWeightMapping for MockGasWeightMapping { fn gas_to_weight(gas: u64, _without_base_weight: bool) -> Weight { - Weight::from_ref_time(gas) + Weight::from_parts(gas, 1) } fn weight_to_gas(weight: Weight) -> u64 { weight.ref_time().into() diff --git a/precompiles/xcm-transactor/src/tests.rs b/precompiles/xcm-transactor/src/tests.rs index c5641efc27..0c1272b72e 100644 --- a/precompiles/xcm-transactor/src/tests.rs +++ b/precompiles/xcm-transactor/src/tests.rs @@ -266,7 +266,7 @@ fn test_transact_derivative_multilocation_v2() { overall_weight: total_weight, }, ) - .expect_cost(196892000) + .expect_cost(188253000) .expect_no_logs() .execute_returns(()); }); @@ -319,7 +319,7 @@ fn test_transact_derivative_multilocation() { inner_call: bytes.into(), }, ) - .expect_cost(196892000) + .expect_cost(188253000) .expect_no_logs() .execute_returns(()); }); @@ -369,7 +369,7 @@ fn test_transact_derivative() { inner_call: bytes.into(), }, ) - .expect_cost(196892001) + .expect_cost(188253001) .expect_no_logs() .execute_returns(()); }); @@ -407,7 +407,7 @@ fn test_transact_derivative_v2() { overall_weight: total_weight, }, ) - .expect_cost(196892001) + .expect_cost(188253001) .expect_no_logs() .execute_returns(()); }); @@ -452,7 +452,7 @@ fn test_transact_signed() { call: bytes.into(), }, ) - .expect_cost(476974001) + .expect_cost(468448001) .expect_no_logs() .execute_returns(()); }); @@ -485,7 +485,7 @@ fn test_transact_signed_v2() { overall_weight: total_weight, }, ) - .expect_cost(476974001) + .expect_cost(468448001) .expect_no_logs() .execute_returns(()); }); @@ -532,7 +532,7 @@ fn test_transact_signed_multilocation() { call: bytes.into(), }, ) - .expect_cost(476974000) + .expect_cost(468448000) .expect_no_logs() .execute_returns(()); }); @@ -567,7 +567,7 @@ fn test_transact_signed_multilocation_v2() { overall_weight: total_weight, }, ) - .expect_cost(476974000) + .expect_cost(468448000) .expect_no_logs() .execute_returns(()); }); diff --git a/precompiles/xcm-utils/src/mock.rs b/precompiles/xcm-utils/src/mock.rs index fa2c7bf349..ad70931d99 100644 --- a/precompiles/xcm-utils/src/mock.rs +++ b/precompiles/xcm-utils/src/mock.rs @@ -261,7 +261,7 @@ pub type PCall = XcmUtilsPrecompileCall; parameter_types! { pub BlockGasLimit: U256 = U256::max_value(); pub PrecompilesValue: Precompiles = Precompiles::new(); - pub const WeightPerGas: Weight = Weight::from_ref_time(1); + pub const WeightPerGas: Weight = Weight::from_parts(1, 0); } /// A mapping function that converts Ethereum gas to Substrate weight @@ -269,7 +269,7 @@ parameter_types! { pub struct MockGasWeightMapping; impl GasWeightMapping for MockGasWeightMapping { fn gas_to_weight(gas: u64, _without_base_weight: bool) -> Weight { - Weight::from_ref_time(gas) + Weight::from_parts(gas, 1) } fn weight_to_gas(weight: Weight) -> u64 { weight.ref_time().into() @@ -435,6 +435,7 @@ impl xcm_executor::Config for XcmConfig { type MessageExporter = (); type UniversalAliases = Nothing; type SafeCallFilter = Everything; + type AssetIsBurnable = Everything; } pub(crate) struct ExtBuilder { diff --git a/precompiles/xcm-utils/src/tests.rs b/precompiles/xcm-utils/src/tests.rs index 4a8d9d4829..082bc15887 100644 --- a/precompiles/xcm-utils/src/tests.rs +++ b/precompiles/xcm-utils/src/tests.rs @@ -186,7 +186,7 @@ fn test_executor_transact() { encoded.append(&mut call_bytes); let xcm_to_execute = VersionedXcm::<()>::V3(Xcm(vec![Transact { origin_kind: OriginKind::SovereignAccount, - require_weight_at_most: Weight::from_parts(1_000_000_000u64, 2603u64), + require_weight_at_most: Weight::from_parts(1_000_000_000u64, 5206u64), call: encoded.into(), }])) .encode(); diff --git a/precompiles/xtokens/src/mock.rs b/precompiles/xtokens/src/mock.rs index 21ea6e11c2..7eaeae1401 100644 --- a/precompiles/xtokens/src/mock.rs +++ b/precompiles/xtokens/src/mock.rs @@ -136,7 +136,7 @@ pub type PCall = XtokensPrecompileCall; parameter_types! { pub BlockGasLimit: U256 = U256::max_value(); pub PrecompilesValue: Precompiles = Precompiles::new(); - pub const WeightPerGas: Weight = Weight::from_ref_time(1); + pub const WeightPerGas: Weight = Weight::from_parts(1, 0); } impl pallet_evm::Config for Runtime { @@ -283,6 +283,7 @@ impl xcm_executor::Config for XcmConfig { type MessageExporter = (); type UniversalAliases = Nothing; type SafeCallFilter = Everything; + type AssetIsBurnable = Everything; } #[derive(Clone, Eq, Debug, PartialEq, Ord, PartialOrd, Encode, Decode, TypeInfo)] diff --git a/primitives/xcm/src/barriers.rs b/primitives/xcm/src/barriers.rs index 1059536e83..4c54ade8d4 100644 --- a/primitives/xcm/src/barriers.rs +++ b/primitives/xcm/src/barriers.rs @@ -14,7 +14,11 @@ // You should have received a copy of the GNU General Public License // along with Moonbeam. If not, see . -use frame_support::{ensure, pallet_prelude::Weight, traits::Contains}; +use frame_support::{ + ensure, + pallet_prelude::Weight, + traits::{Contains, ProcessMessageError}, +}; /// Allows execution from `origin` if it is contained in `T` (i.e. `T::Contains(origin)`) taking /// payments into account and if it starts with DescendOrigin. /// @@ -36,27 +40,27 @@ impl> ShouldExecute for AllowTopLevelPaidExecutionDes message: &mut [Instruction], max_weight: Weight, _weight_credit: &mut Weight, - ) -> Result<(), ()> { + ) -> Result<(), ProcessMessageError> { log::trace!( target: "xcm::barriers", "AllowTopLevelPaidExecutionDescendOriginFirst origin: {:?}, message: {:?}, max_weight: {:?}, weight_credit: {:?}", origin, message, max_weight, _weight_credit, ); - ensure!(T::contains(origin), ()); + ensure!(T::contains(origin), ProcessMessageError::Unsupported); let mut iter = message.iter_mut(); // Make sure the first instruction is DescendOrigin iter.next() .filter(|instruction| matches!(instruction, DescendOrigin(_))) - .ok_or(())?; + .ok_or(ProcessMessageError::BadFormat)?; // Then WithdrawAsset iter.next() .filter(|instruction| matches!(instruction, WithdrawAsset(_))) - .ok_or(())?; + .ok_or(ProcessMessageError::BadFormat)?; // Then BuyExecution - let i = iter.next().ok_or(())?; + let i = iter.next().ok_or(ProcessMessageError::BadFormat)?; match i { BuyExecution { weight_limit: Limited(ref mut weight), @@ -73,7 +77,7 @@ impl> ShouldExecute for AllowTopLevelPaidExecutionDes *weight_limit = Limited(max_weight); Ok(()) } - _ => Err(()), + _ => Err(ProcessMessageError::Overweight(max_weight)), } } } diff --git a/runtime/moonbase/src/asset_config.rs b/runtime/moonbase/src/asset_config.rs index 901cec9afd..84a5d038e9 100644 --- a/runtime/moonbase/src/asset_config.rs +++ b/runtime/moonbase/src/asset_config.rs @@ -77,6 +77,19 @@ pub type AssetsForceOrigin = EitherOfDiverse< >, >; +// Required for runtime benchmarks +pallet_assets::runtime_benchmarks_enabled! { + pub struct BenchmarkHelper; + impl pallet_assets::BenchmarkHelper for BenchmarkHelper + where + AssetIdParameter: From, + { + fn create_asset_id_parameter(id: u32) -> AssetIdParameter { + (id as u128).into() + } + } +} + // Foreign assets impl pallet_assets::Config for Runtime { type RuntimeEvent = RuntimeEvent; @@ -97,6 +110,9 @@ impl pallet_assets::Config for Runtime { type AssetIdParameter = Compact; type CreateOrigin = AsEnsureOriginWithArg>; type CallbackHandle = (); + pallet_assets::runtime_benchmarks_enabled! { + type BenchmarkHelper = BenchmarkHelper; + } } // Local assets @@ -119,6 +135,9 @@ impl pallet_assets::Config for Runtime { type AssetIdParameter = Compact; type CreateOrigin = AsEnsureOriginWithArg>; type CallbackHandle = (); + pallet_assets::runtime_benchmarks_enabled! { + type BenchmarkHelper = BenchmarkHelper; + } } // We instruct how to register the Assets diff --git a/runtime/moonbase/src/governance/democracy.rs b/runtime/moonbase/src/governance/democracy.rs index 36d98154d2..6f58287c0b 100644 --- a/runtime/moonbase/src/governance/democracy.rs +++ b/runtime/moonbase/src/governance/democracy.rs @@ -72,4 +72,5 @@ impl pallet_democracy::Config for Runtime { type Preimages = Preimage; type MaxDeposits = ConstU32<100>; type MaxBlacklisted = ConstU32<100>; + type SubmitOrigin = EnsureSigned; } diff --git a/runtime/moonbase/src/lib.rs b/runtime/moonbase/src/lib.rs index 3a4d2cb7d0..1ab3312037 100644 --- a/runtime/moonbase/src/lib.rs +++ b/runtime/moonbase/src/lib.rs @@ -28,7 +28,7 @@ #[cfg(feature = "std")] include!(concat!(env!("OUT_DIR"), "/wasm_binary.rs")); -use cumulus_pallet_parachain_system::{RelayChainStateProof, RelaychainBlockNumberProvider}; +use cumulus_pallet_parachain_system::{RelayChainStateProof, RelaychainDataProvider}; use cumulus_primitives_core::relay_chain; use fp_rpc::TransactionStatus; @@ -67,7 +67,7 @@ use moonbeam_rpc_primitives_txpool::TxPoolResponse; pub use pallet_author_slot_filter::EligibilityValue; use pallet_balances::NegativeImbalance; use pallet_ethereum::Call::transact; -use pallet_ethereum::Transaction as EthereumTransaction; +use pallet_ethereum::{PostLogContent, Transaction as EthereumTransaction}; use pallet_evm::{ Account as EVMAccount, EVMCurrencyAdapter, EnsureAddressNever, EnsureAddressRoot, FeeCalculator, GasWeightMapping, OnChargeEVMTransaction as OnChargeEVMTransactionT, Runner, @@ -143,7 +143,7 @@ pub mod currency { } /// Maximum weight per block -pub const MAXIMUM_BLOCK_WEIGHT: Weight = Weight::from_ref_time(WEIGHT_REF_TIME_PER_SECOND) +pub const MAXIMUM_BLOCK_WEIGHT: Weight = Weight::from_parts(WEIGHT_REF_TIME_PER_SECOND, u64::MAX) .saturating_div(2) .set_proof_size(cumulus_primitives_core::relay_chain::MAX_POV_SIZE as u64); @@ -201,7 +201,7 @@ pub const NORMAL_WEIGHT: Weight = MAXIMUM_BLOCK_WEIGHT.saturating_mul(3).saturat // subtract roughly the cost of a balance transfer from it (about 1/3 the cost) // and some cost to account for per-byte-fee. // TODO: we should use benchmarking's overhead feature to measure this -pub const EXTRINSIC_BASE_WEIGHT: Weight = Weight::from_ref_time(10000 * WEIGHT_PER_GAS); +pub const EXTRINSIC_BASE_WEIGHT: Weight = Weight::from_parts(10000 * WEIGHT_PER_GAS, 0); pub struct RuntimeBlockWeights; impl Get for RuntimeBlockWeights { @@ -403,7 +403,7 @@ parameter_types! { /// as a safety net. pub MaximumMultiplier: Multiplier = Multiplier::from(100_000u128); pub PrecompilesValue: MoonbasePrecompiles = MoonbasePrecompiles::<_>::new(); - pub WeightPerGas: Weight = Weight::from_ref_time(WEIGHT_PER_GAS); + pub WeightPerGas: Weight = Weight::from_parts(WEIGHT_PER_GAS, 0); } pub struct TransactionPaymentAsGasPrice; @@ -610,9 +610,14 @@ impl fp_rpc::ConvertTransaction for TransactionConve } } +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; } pub struct EthereumXcmEnsureProxy; @@ -728,7 +733,7 @@ impl pallet_parachain_staking::Config for Runtime { } impl pallet_author_inherent::Config for Runtime { - type SlotBeacon = RelaychainBlockNumberProvider; + type SlotBeacon = RelaychainDataProvider; type AccountLookup = MoonbeamOrbiters; type CanAuthor = AuthorFilter; type WeightInfo = pallet_author_inherent::weights::SubstrateWeight; @@ -762,8 +767,7 @@ impl pallet_crowdloan_rewards::Config for Runtime { type RewardAddressRelayVoteThreshold = RelaySignaturesThreshold; type SignatureNetworkIdentifier = SignatureNetworkIdentifier; type VestingBlockNumber = cumulus_primitives_core::relay_chain::BlockNumber; - type VestingBlockProvider = - cumulus_pallet_parachain_system::RelaychainBlockNumberProvider; + type VestingBlockProvider = RelaychainDataProvider; type WeightInfo = pallet_crowdloan_rewards::weights::SubstrateWeight; } diff --git a/runtime/moonbase/src/xcm_config.rs b/runtime/moonbase/src/xcm_config.rs index 953301d6a5..91418ae988 100644 --- a/runtime/moonbase/src/xcm_config.rs +++ b/runtime/moonbase/src/xcm_config.rs @@ -336,6 +336,7 @@ impl xcm_executor::Config for XcmExecutorConfig { type MessageExporter = (); type UniversalAliases = Nothing; type SafeCallFilter = SafeCallFilter; + type AssetIsBurnable = Everything; } // Converts a Signed Local Origin into a MultiLocation diff --git a/runtime/moonbase/tests/evm_tracing.rs b/runtime/moonbase/tests/evm_tracing.rs index 3cf480f8f0..b0f967d574 100644 --- a/runtime/moonbase/tests/evm_tracing.rs +++ b/runtime/moonbase/tests/evm_tracing.rs @@ -26,7 +26,7 @@ mod tests { use pallet_evm::AddressMapping; use sp_core::H160; - use moonbeam_rpc_primitives_debug::runtime_decl_for_DebugRuntimeApi::DebugRuntimeApi; + use moonbeam_rpc_primitives_debug::runtime_decl_for_debug_runtime_api::DebugRuntimeApi; use std::str::FromStr; #[test] diff --git a/runtime/moonbase/tests/integration_test.rs b/runtime/moonbase/tests/integration_test.rs index cf7ddca953..da516b71b6 100644 --- a/runtime/moonbase/tests/integration_test.rs +++ b/runtime/moonbase/tests/integration_test.rs @@ -1435,7 +1435,7 @@ fn asset_erc20_precompiles_transfer() { value: { 400 * UNIT }.into(), }, ) - .expect_cost(23497) + .expect_cost(23775) .expect_log(log3( asset_precompile_address, SELECTOR_LOG_TRANSFER, @@ -1487,7 +1487,7 @@ fn asset_erc20_precompiles_approve() { value: { 400 * UNIT }.into(), }, ) - .expect_cost(13862) + .expect_cost(14048) .expect_log(log3( asset_precompile_address, SELECTOR_LOG_APPROVAL, @@ -1508,7 +1508,7 @@ fn asset_erc20_precompiles_approve() { value: { 400 * UNIT }.into(), }, ) - .expect_cost(29021) + .expect_cost(31145) .expect_log(log3( asset_precompile_address, SELECTOR_LOG_TRANSFER, @@ -1560,7 +1560,7 @@ fn asset_erc20_precompiles_mint_burn() { value: { 1000 * UNIT }.into(), }, ) - .expect_cost(12787) + .expect_cost(12932) .expect_log(log3( asset_precompile_address, SELECTOR_LOG_TRANSFER, @@ -1587,7 +1587,7 @@ fn asset_erc20_precompiles_mint_burn() { value: { 500 * UNIT }.into(), }, ) - .expect_cost(13016) + .expect_cost(13172) .expect_log(log3( asset_precompile_address, SELECTOR_LOG_TRANSFER, @@ -1632,7 +1632,7 @@ fn asset_erc20_precompiles_freeze_thaw_account() { account: Address(ALICE.into()), }, ) - .expect_cost(6699) + .expect_cost(6783) .expect_no_logs() .execute_returns(true); @@ -1651,7 +1651,7 @@ fn asset_erc20_precompiles_freeze_thaw_account() { account: Address(ALICE.into()), }, ) - .expect_cost(6713) + .expect_cost(6803) .expect_no_logs() .execute_returns(true); @@ -1686,7 +1686,7 @@ fn asset_erc20_precompiles_freeze_thaw_asset() { asset_precompile_address, LocalAssetsPCall::freeze_asset {}, ) - .expect_cost(5548) + .expect_cost(5623) .expect_no_logs() .execute_returns(true); @@ -1703,7 +1703,7 @@ fn asset_erc20_precompiles_freeze_thaw_asset() { asset_precompile_address, LocalAssetsPCall::thaw_asset {}, ) - .expect_cost(5550) + .expect_cost(5634) .expect_no_logs() .execute_returns(true); }); @@ -1735,7 +1735,7 @@ fn asset_erc20_precompiles_freeze_transfer_ownership() { owner: Address(BOB.into()), }, ) - .expect_cost(6614) + .expect_cost(6706) .expect_no_logs() .execute_returns(true); }); @@ -1769,7 +1769,7 @@ fn asset_erc20_precompiles_freeze_set_team() { freezer: Address(BOB.into()), }, ) - .expect_cost(5577) + .expect_cost(5657) .expect_no_logs() .execute_returns(true); @@ -1890,7 +1890,7 @@ fn xcm_asset_erc20_precompiles_transfer() { value: { 400 * UNIT }.into(), }, ) - .expect_cost(23497) + .expect_cost(23775) .expect_log(log3( asset_precompile_address, SELECTOR_LOG_TRANSFER, @@ -1954,7 +1954,7 @@ fn xcm_asset_erc20_precompiles_approve() { value: { 400 * UNIT }.into(), }, ) - .expect_cost(13862) + .expect_cost(14048) .expect_log(log3( asset_precompile_address, SELECTOR_LOG_APPROVAL, @@ -1975,7 +1975,7 @@ fn xcm_asset_erc20_precompiles_approve() { value: { 400 * UNIT }.into(), }, ) - .expect_cost(29021) + .expect_cost(31145) .expect_log(log3( asset_precompile_address, SELECTOR_LOG_TRANSFER, @@ -2053,7 +2053,7 @@ fn xtokens_precompiles_transfer() { weight: 4_000_000, }, ) - .expect_cost(52170) + .expect_cost(57639) .expect_no_logs() .execute_returns(()) }) @@ -2105,7 +2105,7 @@ fn xtokens_precompiles_transfer_multiasset() { weight: 4_000_000, }, ) - .expect_cost(52170) + .expect_cost(57639) .expect_no_logs() .execute_returns(()); }) @@ -2321,7 +2321,7 @@ fn initial_gas_fee_is_correct() { TransactionPaymentAsGasPrice::min_gas_price(), ( 10_000_000_000u128.into(), - Weight::from_ref_time(25_000_000u64) + Weight::from_parts(25_000_000u64, 0) ) ); }); @@ -2725,7 +2725,7 @@ fn transact_through_signed_precompile_works_v1() { call: bytes.into(), }, ) - .expect_cost(19078) + .expect_cost(18737) .expect_no_logs() .execute_returns(()); }); @@ -2765,7 +2765,7 @@ fn transact_through_signed_precompile_works_v2() { overall_weight: total_weight, }, ) - .expect_cost(19078) + .expect_cost(18737) .expect_no_logs() .execute_returns(()); }); @@ -2847,7 +2847,7 @@ fn author_mapping_precompile_associate_update_and_clear() { nimbus_id: [1u8; 32].into(), }, ) - .expect_cost(16030) + .expect_cost(15595) .expect_no_logs() .execute_returns(()); @@ -2869,7 +2869,7 @@ fn author_mapping_precompile_associate_update_and_clear() { new_nimbus_id: [2u8; 32].into(), }, ) - .expect_cost(15659) + .expect_cost(15217) .expect_no_logs() .execute_returns(()); @@ -2890,7 +2890,7 @@ fn author_mapping_precompile_associate_update_and_clear() { nimbus_id: [2u8; 32].into(), }, ) - .expect_cost(16215) + .expect_cost(15631) .expect_no_logs() .execute_returns(()); @@ -2933,7 +2933,7 @@ fn author_mapping_register_and_set_keys() { .into(), }, ) - .expect_cost(16815) + .expect_cost(16365) .expect_no_logs() .execute_returns(()); @@ -2958,7 +2958,7 @@ fn author_mapping_register_and_set_keys() { .into(), }, ) - .expect_cost(16815) + .expect_cost(16365) .expect_no_logs() .execute_returns(()); @@ -3315,7 +3315,7 @@ fn validate_transaction_fails_on_filtered_call() { use sp_runtime::transaction_validity::{ InvalidTransaction, TransactionSource, TransactionValidityError, }; - use sp_transaction_pool::runtime_api::runtime_decl_for_TaggedTransactionQueue::TaggedTransactionQueueV3; // editorconfig-checker-disable-line + use sp_transaction_pool::runtime_api::runtime_decl_for_tagged_transaction_queue::TaggedTransactionQueueV3; // editorconfig-checker-disable-line ExtBuilder::default().build().execute_with(|| { let xt = UncheckedExtrinsic::new_unsigned( @@ -3403,12 +3403,12 @@ mod fee_tests { type LengthToFeeImpl = LengthToFee; // base_fee + (multiplier * extrinsic_weight_fee) + extrinsic_length_fee + tip - let expected_fee = WeightToFeeImpl::weight_to_fee(&base_extrinsic) - + multiplier.saturating_mul_int(WeightToFeeImpl::weight_to_fee( - &Weight::from_ref_time(extrinsic_weight), - )) + LengthToFeeImpl::weight_to_fee(&Weight::from_ref_time( - extrinsic_len as u64, - )) + tip; + let expected_fee = + WeightToFeeImpl::weight_to_fee(&base_extrinsic) + + multiplier.saturating_mul_int(WeightToFeeImpl::weight_to_fee( + &Weight::from_parts(extrinsic_weight, 1), + )) + LengthToFeeImpl::weight_to_fee(&Weight::from_parts(extrinsic_len as u64, 1)) + + tip; let mut t: sp_io::TestExternalities = frame_system::GenesisConfig::default() .build_storage::() @@ -3421,7 +3421,7 @@ mod fee_tests { &frame_support::dispatch::DispatchInfo { class: DispatchClass::Normal, pays_fee: frame_support::dispatch::Pays::Yes, - weight: Weight::from_ref_time(extrinsic_weight), + weight: Weight::from_parts(extrinsic_weight, 1), }, tip, ); diff --git a/runtime/moonbase/tests/runtime_apis.rs b/runtime/moonbase/tests/runtime_apis.rs index d6d39aff05..86c21d00b8 100644 --- a/runtime/moonbase/tests/runtime_apis.rs +++ b/runtime/moonbase/tests/runtime_apis.rs @@ -25,9 +25,9 @@ use nimbus_primitives::NimbusId; use pallet_evm::{Account as EVMAccount, AddressMapping, FeeCalculator}; use sp_core::{ByteArray, H160, H256, U256}; -use fp_rpc::runtime_decl_for_EthereumRuntimeRPCApi::EthereumRuntimeRPCApi; -use moonbeam_rpc_primitives_txpool::runtime_decl_for_TxPoolRuntimeApi::TxPoolRuntimeApi; -use nimbus_primitives::runtime_decl_for_NimbusApi::NimbusApi; +use fp_rpc::runtime_decl_for_ethereum_runtime_rpc_api::EthereumRuntimeRPCApi; +use moonbeam_rpc_primitives_txpool::runtime_decl_for_tx_pool_runtime_api::TxPoolRuntimeApi; +use nimbus_primitives::runtime_decl_for_nimbus_api::NimbusApi; use std::{collections::BTreeMap, str::FromStr}; #[test] diff --git a/runtime/moonbase/tests/xcm_mock/parachain.rs b/runtime/moonbase/tests/xcm_mock/parachain.rs index da3f2ae784..d2fb01a1fb 100644 --- a/runtime/moonbase/tests/xcm_mock/parachain.rs +++ b/runtime/moonbase/tests/xcm_mock/parachain.rs @@ -40,6 +40,7 @@ use xcm::{latest::prelude::*, Version as XcmVersion, VersionedXcm}; use cumulus_primitives_core::relay_chain::HrmpChannelId; use orml_traits::parameter_type_with_key; +use pallet_ethereum::PostLogContent; use polkadot_core_primitives::BlockNumber as RelayBlockNumber; use polkadot_parachain::primitives::{Id as ParaId, Sibling}; use xcm::latest::{ @@ -390,6 +391,7 @@ impl Config for XcmConfig { type MessageExporter = (); type UniversalAliases = Nothing; type SafeCallFilter = Everything; + type AssetIsBurnable = Everything; } impl cumulus_pallet_xcm::Config for Runtime { @@ -512,7 +514,6 @@ pub mod mock_msg_queue { impl Pallet {} #[pallet::pallet] - #[pallet::generate_store(pub(super) trait Store)] pub struct Pallet(_); #[pallet::storage] @@ -652,7 +653,6 @@ pub mod mock_version_changer { impl Pallet {} #[pallet::pallet] - #[pallet::generate_store(pub(super) trait Store)] pub struct Pallet(_); #[pallet::storage] @@ -918,7 +918,7 @@ use sp_core::U256; parameter_types! { pub BlockGasLimit: U256 = U256::max_value(); - pub WeightPerGas: Weight = Weight::from_ref_time(1); + pub WeightPerGas: Weight = Weight::from_parts(1, 0); } impl pallet_evm::Config for Runtime { @@ -1034,13 +1034,17 @@ impl xcm_primitives::HrmpEncodeCall for MockHrmpEncoder { } } +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; } - parameter_types! { - pub ReservedXcmpWeight: Weight = Weight::from_ref_time(u64::max_value()); + pub ReservedXcmpWeight: Weight = Weight::from_parts(u64::max_value(), 0); } #[derive( diff --git a/runtime/moonbase/tests/xcm_mock/relay_chain.rs b/runtime/moonbase/tests/xcm_mock/relay_chain.rs index 9d70b61992..6f83328364 100644 --- a/runtime/moonbase/tests/xcm_mock/relay_chain.rs +++ b/runtime/moonbase/tests/xcm_mock/relay_chain.rs @@ -175,6 +175,7 @@ impl Config for XcmConfig { type MessageExporter = (); type UniversalAliases = Nothing; type SafeCallFilter = Everything; + type AssetIsBurnable = Everything; } pub type LocalOriginToLocation = SignedToAccountId32; @@ -311,30 +312,30 @@ pub struct TestHrmpWeightInfo; impl hrmp::WeightInfo for TestHrmpWeightInfo { fn hrmp_accept_open_channel() -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } fn force_clean_hrmp(_: u32, _: u32) -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } fn force_process_hrmp_close(_: u32) -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } fn force_process_hrmp_open(_: u32) -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } fn hrmp_cancel_open_request(_: u32) -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } fn hrmp_close_channel() -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } fn hrmp_init_open_channel() -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } fn clean_open_channel_requests(_: u32) -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } fn force_open_hrmp_channel() -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } } diff --git a/runtime/moonbase/tests/xcm_mock/statemint_like.rs b/runtime/moonbase/tests/xcm_mock/statemint_like.rs index c0e1f320d7..9a6afdee5a 100644 --- a/runtime/moonbase/tests/xcm_mock/statemint_like.rs +++ b/runtime/moonbase/tests/xcm_mock/statemint_like.rs @@ -283,6 +283,7 @@ impl Config for XcmConfig { type MessageExporter = (); type UniversalAliases = Nothing; type SafeCallFilter = Everything; + type AssetIsBurnable = Everything; } /// No local origins on this chain are allowed to dispatch XCM sends/executions. @@ -333,7 +334,6 @@ pub mod mock_msg_queue { impl Pallet {} #[pallet::pallet] - #[pallet::generate_store(pub(super) trait Store)] pub struct Pallet(_); #[pallet::storage] @@ -477,7 +477,6 @@ pub mod mock_statemint_prefix { impl Pallet {} #[pallet::pallet] - #[pallet::generate_store(pub(super) trait Store)] #[pallet::without_storage_info] pub struct Pallet(_); diff --git a/runtime/moonbeam/src/asset_config.rs b/runtime/moonbeam/src/asset_config.rs index e72ab5cfd4..06426b78ee 100644 --- a/runtime/moonbeam/src/asset_config.rs +++ b/runtime/moonbeam/src/asset_config.rs @@ -77,6 +77,19 @@ pub type AssetsForceOrigin = EitherOfDiverse< >, >; +// Required for runtime benchmarks +pallet_assets::runtime_benchmarks_enabled! { + pub struct BenchmarkHelper; + impl pallet_assets::BenchmarkHelper for BenchmarkHelper + where + AssetIdParameter: From, + { + fn create_asset_id_parameter(id: u32) -> AssetIdParameter { + (id as u128).into() + } + } +} + // Foreign assets impl pallet_assets::Config for Runtime { type RuntimeEvent = RuntimeEvent; @@ -97,6 +110,9 @@ impl pallet_assets::Config for Runtime { type AssetIdParameter = Compact; type CreateOrigin = AsEnsureOriginWithArg>; type CallbackHandle = (); + pallet_assets::runtime_benchmarks_enabled! { + type BenchmarkHelper = BenchmarkHelper; + } } // Local assets @@ -119,6 +135,9 @@ impl pallet_assets::Config for Runtime { type AssetIdParameter = Compact; type CreateOrigin = AsEnsureOriginWithArg>; type CallbackHandle = (); + pallet_assets::runtime_benchmarks_enabled! { + type BenchmarkHelper = BenchmarkHelper; + } } // We instruct how to register the Assets diff --git a/runtime/moonbeam/src/governance/democracy.rs b/runtime/moonbeam/src/governance/democracy.rs index 162b80e1a3..f382075d1a 100644 --- a/runtime/moonbeam/src/governance/democracy.rs +++ b/runtime/moonbeam/src/governance/democracy.rs @@ -73,4 +73,5 @@ impl pallet_democracy::Config for Runtime { type Preimages = Preimage; type MaxDeposits = ConstU32<100>; type MaxBlacklisted = ConstU32<100>; + type SubmitOrigin = EnsureSigned; } diff --git a/runtime/moonbeam/src/lib.rs b/runtime/moonbeam/src/lib.rs index ea5772bcfe..26dddc9d24 100644 --- a/runtime/moonbeam/src/lib.rs +++ b/runtime/moonbeam/src/lib.rs @@ -29,7 +29,7 @@ include!(concat!(env!("OUT_DIR"), "/wasm_binary.rs")); use account::AccountId20; -use cumulus_pallet_parachain_system::{RelayChainStateProof, RelaychainBlockNumberProvider}; +use cumulus_pallet_parachain_system::{RelayChainStateProof, RelaychainDataProvider}; use cumulus_primitives_core::relay_chain; use fp_rpc::TransactionStatus; @@ -63,7 +63,7 @@ pub use moonbeam_core_primitives::{ use moonbeam_rpc_primitives_txpool::TxPoolResponse; use pallet_balances::NegativeImbalance; use pallet_ethereum::Call::transact; -use pallet_ethereum::Transaction as EthereumTransaction; +use pallet_ethereum::{PostLogContent, Transaction as EthereumTransaction}; use pallet_evm::{ Account as EVMAccount, EVMCurrencyAdapter, EnsureAddressNever, EnsureAddressRoot, FeeCalculator, GasWeightMapping, OnChargeEVMTransaction as OnChargeEVMTransactionT, Runner, @@ -136,7 +136,7 @@ pub mod currency { } /// Maximum weight per block -pub const MAXIMUM_BLOCK_WEIGHT: Weight = Weight::from_ref_time(WEIGHT_REF_TIME_PER_SECOND) +pub const MAXIMUM_BLOCK_WEIGHT: Weight = Weight::from_parts(WEIGHT_REF_TIME_PER_SECOND, u64::MAX) .saturating_div(2) .set_proof_size(cumulus_primitives_core::relay_chain::MAX_POV_SIZE as u64); @@ -195,7 +195,7 @@ const NORMAL_WEIGHT: Weight = MAXIMUM_BLOCK_WEIGHT.saturating_mul(3).saturating_ // subtract roughly the cost of a balance transfer from it (about 1/3 the cost) // and some cost to account for per-byte-fee. // TODO: we should use benchmarking's overhead feature to measure this -pub const EXTRINSIC_BASE_WEIGHT: Weight = Weight::from_ref_time(10000 * WEIGHT_PER_GAS); +pub const EXTRINSIC_BASE_WEIGHT: Weight = Weight::from_parts(10000 * WEIGHT_PER_GAS, 0); pub struct RuntimeBlockWeights; impl Get for RuntimeBlockWeights { @@ -389,7 +389,7 @@ parameter_types! { /// as a safety net. pub MaximumMultiplier: Multiplier = Multiplier::from(100_000u128); pub PrecompilesValue: MoonbeamPrecompiles = MoonbeamPrecompiles::<_>::new(); - pub WeightPerGas: Weight = Weight::from_ref_time(WEIGHT_PER_GAS); + pub WeightPerGas: Weight = Weight::from_parts(WEIGHT_PER_GAS, 0); } pub struct TransactionPaymentAsGasPrice; @@ -598,9 +598,14 @@ impl fp_rpc::ConvertTransaction for TransactionConve } } +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; } impl cumulus_pallet_parachain_system::Config for Runtime { @@ -690,7 +695,7 @@ impl pallet_parachain_staking::Config for Runtime { } impl pallet_author_inherent::Config for Runtime { - type SlotBeacon = RelaychainBlockNumberProvider; + type SlotBeacon = RelaychainDataProvider; type AccountLookup = MoonbeamOrbiters; type CanAuthor = AuthorFilter; type WeightInfo = pallet_author_inherent::weights::SubstrateWeight; @@ -722,7 +727,7 @@ impl pallet_crowdloan_rewards::Config for Runtime { type RewardAddressRelayVoteThreshold = RelaySignaturesThreshold; type SignatureNetworkIdentifier = SignatureNetworkIdentifier; type VestingBlockNumber = relay_chain::BlockNumber; - type VestingBlockProvider = RelaychainBlockNumberProvider; + type VestingBlockProvider = RelaychainDataProvider; type WeightInfo = pallet_crowdloan_rewards::weights::SubstrateWeight; } diff --git a/runtime/moonbeam/src/xcm_config.rs b/runtime/moonbeam/src/xcm_config.rs index 8f1c99a546..483d7f2c4a 100644 --- a/runtime/moonbeam/src/xcm_config.rs +++ b/runtime/moonbeam/src/xcm_config.rs @@ -297,6 +297,7 @@ impl xcm_executor::Config for XcmExecutorConfig { type MessageExporter = (); type UniversalAliases = Nothing; type SafeCallFilter = SafeCallFilter; + type AssetIsBurnable = Everything; } type XcmExecutor = xcm_executor::XcmExecutor; diff --git a/runtime/moonbeam/tests/evm_tracing.rs b/runtime/moonbeam/tests/evm_tracing.rs index 8d597067c5..b023e94725 100644 --- a/runtime/moonbeam/tests/evm_tracing.rs +++ b/runtime/moonbeam/tests/evm_tracing.rs @@ -26,7 +26,7 @@ mod tests { use pallet_evm::AddressMapping; use sp_core::H160; - use moonbeam_rpc_primitives_debug::runtime_decl_for_DebugRuntimeApi::DebugRuntimeApi; + use moonbeam_rpc_primitives_debug::runtime_decl_for_debug_runtime_api::DebugRuntimeApi; use std::str::FromStr; #[test] diff --git a/runtime/moonbeam/tests/integration_test.rs b/runtime/moonbeam/tests/integration_test.rs index 2bf1d1d92e..e1ce0e33a0 100644 --- a/runtime/moonbeam/tests/integration_test.rs +++ b/runtime/moonbeam/tests/integration_test.rs @@ -1407,7 +1407,7 @@ fn initial_gas_fee_is_correct() { TransactionPaymentAsGasPrice::min_gas_price(), ( 125_000_000_000u128.into(), - Weight::from_ref_time(25_000_000u64) + Weight::from_parts(25_000_000u64, 0) ) ); }); @@ -1429,7 +1429,7 @@ fn min_gas_fee_is_correct() { TransactionPaymentAsGasPrice::min_gas_price(), ( 125_000_000_000u128.into(), - Weight::from_ref_time(25_000_000u64) + Weight::from_parts(25_000_000u64, 0) ) ); }); @@ -1800,7 +1800,7 @@ fn asset_erc20_precompiles_transfer() { value: { 400 * GLMR }.into(), }, ) - .expect_cost(23497) + .expect_cost(23775) .expect_log(log3( asset_precompile_address, SELECTOR_LOG_TRANSFER, @@ -1852,7 +1852,7 @@ fn asset_erc20_precompiles_approve() { value: { 400 * GLMR }.into(), }, ) - .expect_cost(13862) + .expect_cost(14048) .expect_log(log3( asset_precompile_address, SELECTOR_LOG_APPROVAL, @@ -1873,7 +1873,7 @@ fn asset_erc20_precompiles_approve() { value: { 400 * GLMR }.into(), }, ) - .expect_cost(29021) + .expect_cost(31145) .expect_log(log3( asset_precompile_address, SELECTOR_LOG_TRANSFER, @@ -1925,7 +1925,7 @@ fn asset_erc20_precompiles_mint_burn() { value: { 1000 * GLMR }.into(), }, ) - .expect_cost(12787) + .expect_cost(12932) .expect_log(log3( asset_precompile_address, SELECTOR_LOG_TRANSFER, @@ -1952,7 +1952,7 @@ fn asset_erc20_precompiles_mint_burn() { value: { 500 * GLMR }.into(), }, ) - .expect_cost(13016) + .expect_cost(13172) .expect_log(log3( asset_precompile_address, SELECTOR_LOG_TRANSFER, @@ -1997,7 +1997,7 @@ fn asset_erc20_precompiles_freeze_thaw_account() { account: Address(ALICE.into()), }, ) - .expect_cost(6699) + .expect_cost(6783) .expect_no_logs() .execute_returns(true); @@ -2016,7 +2016,7 @@ fn asset_erc20_precompiles_freeze_thaw_account() { account: Address(ALICE.into()), }, ) - .expect_cost(6713) + .expect_cost(6803) .expect_no_logs() .execute_returns(true); @@ -2051,7 +2051,7 @@ fn asset_erc20_precompiles_freeze_thaw_asset() { asset_precompile_address, LocalAssetsPCall::freeze_asset {}, ) - .expect_cost(5548) + .expect_cost(5623) .expect_no_logs() .execute_returns(true); @@ -2068,7 +2068,7 @@ fn asset_erc20_precompiles_freeze_thaw_asset() { asset_precompile_address, LocalAssetsPCall::thaw_asset {}, ) - .expect_cost(5550) + .expect_cost(5634) .expect_no_logs() .execute_returns(true); @@ -2105,7 +2105,7 @@ fn asset_erc20_precompiles_freeze_transfer_ownership() { owner: Address(BOB.into()), }, ) - .expect_cost(6614) + .expect_cost(6706) .expect_no_logs() .execute_returns(true); @@ -2147,7 +2147,7 @@ fn asset_erc20_precompiles_freeze_set_team() { issuer: Address(BOB.into()), }, ) - .expect_cost(5577) + .expect_cost(5657) .expect_no_logs() .execute_returns(true); @@ -2270,7 +2270,7 @@ fn xcm_asset_erc20_precompiles_transfer() { value: { 400 * GLMR }.into(), }, ) - .expect_cost(23497) + .expect_cost(23775) .expect_log(log3( asset_precompile_address, SELECTOR_LOG_TRANSFER, @@ -2335,7 +2335,7 @@ fn xcm_asset_erc20_precompiles_approve() { value: { 400 * GLMR }.into(), }, ) - .expect_cost(13862) + .expect_cost(14048) .expect_log(log3( asset_precompile_address, SELECTOR_LOG_APPROVAL, @@ -2356,7 +2356,7 @@ fn xcm_asset_erc20_precompiles_approve() { value: { 400 * GLMR }.into(), }, ) - .expect_cost(29021) + .expect_cost(31145) .expect_log(log3( asset_precompile_address, SELECTOR_LOG_TRANSFER, @@ -2635,7 +2635,7 @@ fn transact_through_signed_precompile_works_v2() { overall_weight: total_weight, }, ) - .expect_cost(19078) + .expect_cost(18737) .expect_no_logs() .execute_returns(()); }); @@ -3196,12 +3196,12 @@ mod fee_tests { type LengthToFeeImpl = LengthToFee; // base_fee + (multiplier * extrinsic_weight_fee) + extrinsic_length_fee + tip - let expected_fee = WeightToFeeImpl::weight_to_fee(&base_extrinsic) - + multiplier.saturating_mul_int(WeightToFeeImpl::weight_to_fee( - &Weight::from_ref_time(extrinsic_weight), - )) + LengthToFeeImpl::weight_to_fee(&Weight::from_ref_time( - extrinsic_len as u64, - )) + tip; + let expected_fee = + WeightToFeeImpl::weight_to_fee(&base_extrinsic) + + multiplier.saturating_mul_int(WeightToFeeImpl::weight_to_fee( + &Weight::from_parts(extrinsic_weight, 1), + )) + LengthToFeeImpl::weight_to_fee(&Weight::from_parts(extrinsic_len as u64, 1)) + + tip; let mut t: sp_io::TestExternalities = frame_system::GenesisConfig::default() .build_storage::() @@ -3214,7 +3214,7 @@ mod fee_tests { &frame_support::dispatch::DispatchInfo { class: DispatchClass::Normal, pays_fee: frame_support::dispatch::Pays::Yes, - weight: Weight::from_ref_time(extrinsic_weight), + weight: Weight::from_parts(extrinsic_weight, 1), }, tip, ); diff --git a/runtime/moonbeam/tests/runtime_apis.rs b/runtime/moonbeam/tests/runtime_apis.rs index 4fab6804f0..ba8eb937f4 100644 --- a/runtime/moonbeam/tests/runtime_apis.rs +++ b/runtime/moonbeam/tests/runtime_apis.rs @@ -25,9 +25,9 @@ use nimbus_primitives::NimbusId; use pallet_evm::{Account as EVMAccount, AddressMapping, FeeCalculator}; use sp_core::{ByteArray, H160, H256, U256}; -use fp_rpc::runtime_decl_for_EthereumRuntimeRPCApi::EthereumRuntimeRPCApi; -use moonbeam_rpc_primitives_txpool::runtime_decl_for_TxPoolRuntimeApi::TxPoolRuntimeApi; -use nimbus_primitives::runtime_decl_for_NimbusApi::NimbusApi; +use fp_rpc::runtime_decl_for_ethereum_runtime_rpc_api::EthereumRuntimeRPCApi; +use moonbeam_rpc_primitives_txpool::runtime_decl_for_tx_pool_runtime_api::TxPoolRuntimeApi; +use nimbus_primitives::runtime_decl_for_nimbus_api::NimbusApi; use std::{collections::BTreeMap, str::FromStr}; #[test] diff --git a/runtime/moonbeam/tests/xcm_mock/parachain.rs b/runtime/moonbeam/tests/xcm_mock/parachain.rs index 3d4affe3e5..12e6fbab9d 100644 --- a/runtime/moonbeam/tests/xcm_mock/parachain.rs +++ b/runtime/moonbeam/tests/xcm_mock/parachain.rs @@ -37,6 +37,7 @@ use sp_runtime::{ use sp_std::{convert::TryFrom, prelude::*}; use xcm::{latest::prelude::*, Version as XcmVersion, VersionedXcm}; +use pallet_ethereum::PostLogContent; use polkadot_core_primitives::BlockNumber as RelayBlockNumber; use polkadot_parachain::primitives::{Id as ParaId, Sibling}; use xcm::latest::{ @@ -364,6 +365,7 @@ impl Config for XcmConfig { type MessageExporter = (); type UniversalAliases = Nothing; type SafeCallFilter = Everything; + type AssetIsBurnable = Everything; } impl cumulus_pallet_xcm::Config for Runtime { @@ -481,7 +483,6 @@ pub mod mock_msg_queue { impl Pallet {} #[pallet::pallet] - #[pallet::generate_store(pub(super) trait Store)] pub struct Pallet(_); #[pallet::storage] @@ -620,7 +621,6 @@ pub mod mock_version_changer { impl Pallet {} #[pallet::pallet] - #[pallet::generate_store(pub(super) trait Store)] pub struct Pallet(_); #[pallet::storage] @@ -887,7 +887,7 @@ use sp_core::U256; parameter_types! { pub BlockGasLimit: U256 = U256::max_value(); - pub WeightPerGas: Weight = Weight::from_ref_time(1); + pub WeightPerGas: Weight = Weight::from_parts(1, 0); } impl pallet_evm::Config for Runtime { @@ -1003,9 +1003,14 @@ impl xcm_primitives::HrmpEncodeCall for MockHrmpEncoder { } } +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 UncheckedExtrinsic = frame_system::mocking::MockUncheckedExtrinsic; diff --git a/runtime/moonbeam/tests/xcm_mock/relay_chain.rs b/runtime/moonbeam/tests/xcm_mock/relay_chain.rs index 0a68dd74f0..955d5f97e3 100644 --- a/runtime/moonbeam/tests/xcm_mock/relay_chain.rs +++ b/runtime/moonbeam/tests/xcm_mock/relay_chain.rs @@ -140,7 +140,7 @@ parameter_types! { } use frame_support::ensure; -use frame_support::traits::Contains; +use frame_support::traits::{Contains, ProcessMessageError}; use sp_std::marker::PhantomData; use xcm_executor::traits::ShouldExecute; /// Allows execution from `origin` if it is contained in `T` (i.e. `T::Contains(origin)`) taking @@ -154,28 +154,28 @@ impl> ShouldExecute for AllowTopLevelPaidExecutionDes message: &mut [Instruction], max_weight: Weight, _weight_credit: &mut Weight, - ) -> Result<(), ()> { + ) -> Result<(), ProcessMessageError> { log::trace!( target: "xcm::barriers", "AllowTopLevelPaidExecutionFromLocal origin: {:?}, message: {:?}, max_weight: {:?}, weight_credit: {:?}", origin, message, max_weight, _weight_credit, ); - ensure!(T::contains(origin), ()); + ensure!(T::contains(origin), ProcessMessageError::Unsupported); let mut iter = message.iter_mut(); - let mut i = iter.next().ok_or(())?; + let mut i = iter.next().ok_or(ProcessMessageError::BadFormat)?; match i { DescendOrigin(..) => (), - _ => return Err(()), + _ => return Err(ProcessMessageError::BadFormat), } - i = iter.next().ok_or(())?; + i = iter.next().ok_or(ProcessMessageError::BadFormat)?; match i { WithdrawAsset(..) => (), - _ => return Err(()), + _ => return Err(ProcessMessageError::BadFormat), } - i = iter.next().ok_or(())?; + i = iter.next().ok_or(ProcessMessageError::BadFormat)?; match i { BuyExecution { weight_limit: Limited(ref mut weight), @@ -191,7 +191,7 @@ impl> ShouldExecute for AllowTopLevelPaidExecutionDes *weight_limit = Limited(max_weight); Ok(()) } - _ => Err(()), + _ => Err(ProcessMessageError::Overweight(max_weight)), } } } @@ -232,6 +232,7 @@ impl Config for XcmConfig { type MessageExporter = (); type UniversalAliases = Nothing; type SafeCallFilter = Everything; + type AssetIsBurnable = Everything; } pub type LocalOriginToLocation = SignedToAccountId32; @@ -368,30 +369,30 @@ pub struct TestHrmpWeightInfo; impl hrmp::WeightInfo for TestHrmpWeightInfo { fn hrmp_accept_open_channel() -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } fn force_clean_hrmp(_: u32, _: u32) -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } fn force_process_hrmp_close(_: u32) -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } fn force_process_hrmp_open(_: u32) -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } fn hrmp_cancel_open_request(_: u32) -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } fn hrmp_close_channel() -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } fn hrmp_init_open_channel() -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } fn clean_open_channel_requests(_: u32) -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } fn force_open_hrmp_channel() -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } } diff --git a/runtime/moonbeam/tests/xcm_mock/statemint_like.rs b/runtime/moonbeam/tests/xcm_mock/statemint_like.rs index 4e7bfd02bd..b27c2b2fa9 100644 --- a/runtime/moonbeam/tests/xcm_mock/statemint_like.rs +++ b/runtime/moonbeam/tests/xcm_mock/statemint_like.rs @@ -283,6 +283,7 @@ impl Config for XcmConfig { type MessageExporter = (); type UniversalAliases = Nothing; type SafeCallFilter = Everything; + type AssetIsBurnable = Everything; } /// No local origins on this chain are allowed to dispatch XCM sends/executions. @@ -333,7 +334,6 @@ pub mod mock_msg_queue { impl Pallet {} #[pallet::pallet] - #[pallet::generate_store(pub(super) trait Store)] pub struct Pallet(_); #[pallet::storage] @@ -476,7 +476,6 @@ pub mod mock_statemint_prefix { impl Pallet {} #[pallet::pallet] - #[pallet::generate_store(pub(super) trait Store)] #[pallet::without_storage_info] pub struct Pallet(_); diff --git a/runtime/moonriver/src/asset_config.rs b/runtime/moonriver/src/asset_config.rs index 61a7c3517a..e95767b78b 100644 --- a/runtime/moonriver/src/asset_config.rs +++ b/runtime/moonriver/src/asset_config.rs @@ -77,6 +77,19 @@ pub type AssetsForceOrigin = EitherOfDiverse< >, >; +// Required for runtime benchmarks +pallet_assets::runtime_benchmarks_enabled! { + pub struct BenchmarkHelper; + impl pallet_assets::BenchmarkHelper for BenchmarkHelper + where + AssetIdParameter: From, + { + fn create_asset_id_parameter(id: u32) -> AssetIdParameter { + (id as u128).into() + } + } +} + // Foreign assets impl pallet_assets::Config for Runtime { type RuntimeEvent = RuntimeEvent; @@ -97,6 +110,9 @@ impl pallet_assets::Config for Runtime { type AssetIdParameter = Compact; type CreateOrigin = AsEnsureOriginWithArg>; type CallbackHandle = (); + pallet_assets::runtime_benchmarks_enabled! { + type BenchmarkHelper = BenchmarkHelper; + } } // Local assets @@ -119,6 +135,9 @@ impl pallet_assets::Config for Runtime { type AssetIdParameter = Compact; type CreateOrigin = AsEnsureOriginWithArg>; type CallbackHandle = (); + pallet_assets::runtime_benchmarks_enabled! { + type BenchmarkHelper = BenchmarkHelper; + } } // We instruct how to register the Assets diff --git a/runtime/moonriver/src/governance/democracy.rs b/runtime/moonriver/src/governance/democracy.rs index d27fedaf12..6984d61040 100644 --- a/runtime/moonriver/src/governance/democracy.rs +++ b/runtime/moonriver/src/governance/democracy.rs @@ -73,4 +73,5 @@ impl pallet_democracy::Config for Runtime { type Preimages = Preimage; type MaxDeposits = ConstU32<100>; type MaxBlacklisted = ConstU32<100>; + type SubmitOrigin = EnsureSigned; } diff --git a/runtime/moonriver/src/lib.rs b/runtime/moonriver/src/lib.rs index 7c6fdbee94..eaf06dae96 100644 --- a/runtime/moonriver/src/lib.rs +++ b/runtime/moonriver/src/lib.rs @@ -29,7 +29,7 @@ include!(concat!(env!("OUT_DIR"), "/wasm_binary.rs")); use account::AccountId20; -use cumulus_pallet_parachain_system::{RelayChainStateProof, RelaychainBlockNumberProvider}; +use cumulus_pallet_parachain_system::{RelayChainStateProof, RelaychainDataProvider}; use cumulus_primitives_core::relay_chain; use fp_rpc::TransactionStatus; @@ -62,7 +62,7 @@ pub use moonbeam_core_primitives::{ use moonbeam_rpc_primitives_txpool::TxPoolResponse; use pallet_balances::NegativeImbalance; use pallet_ethereum::Call::transact; -use pallet_ethereum::Transaction as EthereumTransaction; +use pallet_ethereum::{PostLogContent, Transaction as EthereumTransaction}; use pallet_evm::{ Account as EVMAccount, EVMCurrencyAdapter, EnsureAddressNever, EnsureAddressRoot, FeeCalculator, GasWeightMapping, OnChargeEVMTransaction as OnChargeEVMTransactionT, Runner, @@ -138,7 +138,7 @@ pub mod currency { } /// Maximum weight per block -pub const MAXIMUM_BLOCK_WEIGHT: Weight = Weight::from_ref_time(WEIGHT_REF_TIME_PER_SECOND) +pub const MAXIMUM_BLOCK_WEIGHT: Weight = Weight::from_parts(WEIGHT_REF_TIME_PER_SECOND, u64::MAX) .saturating_div(2) .set_proof_size(cumulus_primitives_core::relay_chain::MAX_POV_SIZE as u64); @@ -196,7 +196,7 @@ pub const NORMAL_WEIGHT: Weight = MAXIMUM_BLOCK_WEIGHT.saturating_mul(3).saturat // subtract roughly the cost of a balance transfer from it (about 1/3 the cost) // and some cost to account for per-byte-fee. // TODO: we should use benchmarking's overhead feature to measure this -pub const EXTRINSIC_BASE_WEIGHT: Weight = Weight::from_ref_time(10000 * WEIGHT_PER_GAS); +pub const EXTRINSIC_BASE_WEIGHT: Weight = Weight::from_parts(10000 * WEIGHT_PER_GAS, 0); pub struct RuntimeBlockWeights; impl Get for RuntimeBlockWeights { @@ -390,7 +390,7 @@ parameter_types! { /// as a safety net. pub MaximumMultiplier: Multiplier = Multiplier::from(100_000u128); pub PrecompilesValue: MoonriverPrecompiles = MoonriverPrecompiles::<_>::new(); - pub WeightPerGas: Weight = Weight::from_ref_time(WEIGHT_PER_GAS); + pub WeightPerGas: Weight = Weight::from_parts(WEIGHT_PER_GAS, 0); } pub struct TransactionPaymentAsGasPrice; @@ -599,9 +599,14 @@ impl fp_rpc::ConvertTransaction for TransactionConve } } +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; } parameter_types! { @@ -691,7 +696,7 @@ impl pallet_parachain_staking::Config for Runtime { } impl pallet_author_inherent::Config for Runtime { - type SlotBeacon = RelaychainBlockNumberProvider; + type SlotBeacon = RelaychainDataProvider; type AccountLookup = MoonbeamOrbiters; type CanAuthor = AuthorFilter; type WeightInfo = pallet_author_inherent::weights::SubstrateWeight; @@ -724,7 +729,7 @@ impl pallet_crowdloan_rewards::Config for Runtime { type RewardAddressRelayVoteThreshold = RelaySignaturesThreshold; type SignatureNetworkIdentifier = SignatureNetworkIdentifier; type VestingBlockNumber = relay_chain::BlockNumber; - type VestingBlockProvider = RelaychainBlockNumberProvider; + type VestingBlockProvider = RelaychainDataProvider; type WeightInfo = pallet_crowdloan_rewards::weights::SubstrateWeight; } diff --git a/runtime/moonriver/src/xcm_config.rs b/runtime/moonriver/src/xcm_config.rs index bae213c980..beddf30ca2 100644 --- a/runtime/moonriver/src/xcm_config.rs +++ b/runtime/moonriver/src/xcm_config.rs @@ -305,6 +305,7 @@ impl xcm_executor::Config for XcmExecutorConfig { type MessageExporter = (); type UniversalAliases = Nothing; type SafeCallFilter = SafeCallFilter; + type AssetIsBurnable = Everything; } type XcmExecutor = xcm_executor::XcmExecutor; diff --git a/runtime/moonriver/tests/evm_tracing.rs b/runtime/moonriver/tests/evm_tracing.rs index 165c9f6067..12fab58124 100644 --- a/runtime/moonriver/tests/evm_tracing.rs +++ b/runtime/moonriver/tests/evm_tracing.rs @@ -26,7 +26,7 @@ mod tests { use pallet_evm::AddressMapping; use sp_core::H160; - use moonbeam_rpc_primitives_debug::runtime_decl_for_DebugRuntimeApi::DebugRuntimeApi; + use moonbeam_rpc_primitives_debug::runtime_decl_for_debug_runtime_api::DebugRuntimeApi; use std::str::FromStr; #[test] diff --git a/runtime/moonriver/tests/integration_test.rs b/runtime/moonriver/tests/integration_test.rs index 53d9c6345b..26b3ff754c 100644 --- a/runtime/moonriver/tests/integration_test.rs +++ b/runtime/moonriver/tests/integration_test.rs @@ -1383,7 +1383,7 @@ fn initial_gas_fee_is_correct() { TransactionPaymentAsGasPrice::min_gas_price(), ( 12_500_000_000u128.into(), - Weight::from_ref_time(25_000_000u64) + Weight::from_parts(25_000_000u64, 0) ) ); }); @@ -1405,7 +1405,7 @@ fn min_gas_fee_is_correct() { TransactionPaymentAsGasPrice::min_gas_price(), ( 1_250_000_000u128.into(), - Weight::from_ref_time(25_000_000u64) + Weight::from_parts(25_000_000u64, 0) ) ); }); @@ -1777,7 +1777,7 @@ fn asset_erc20_precompiles_transfer() { value: { 400 * MOVR }.into(), }, ) - .expect_cost(23497) + .expect_cost(23775) .expect_log(log3( asset_precompile_address, SELECTOR_LOG_TRANSFER, @@ -1829,7 +1829,7 @@ fn asset_erc20_precompiles_approve() { value: { 400 * MOVR }.into(), }, ) - .expect_cost(13862) + .expect_cost(14048) .expect_log(log3( asset_precompile_address, SELECTOR_LOG_APPROVAL, @@ -1850,7 +1850,7 @@ fn asset_erc20_precompiles_approve() { value: { 400 * MOVR }.into(), }, ) - .expect_cost(29021) + .expect_cost(31145) .expect_log(log3( asset_precompile_address, SELECTOR_LOG_TRANSFER, @@ -1902,7 +1902,7 @@ fn asset_erc20_precompiles_mint_burn() { value: { 1000 * MOVR }.into(), }, ) - .expect_cost(12787) + .expect_cost(12932) .expect_log(log3( asset_precompile_address, SELECTOR_LOG_TRANSFER, @@ -1929,7 +1929,7 @@ fn asset_erc20_precompiles_mint_burn() { value: { 500 * MOVR }.into(), }, ) - .expect_cost(13016) + .expect_cost(13172) .expect_log(log3( asset_precompile_address, SELECTOR_LOG_TRANSFER, @@ -1974,7 +1974,7 @@ fn asset_erc20_precompiles_freeze_thaw_account() { account: Address(ALICE.into()), }, ) - .expect_cost(6699) + .expect_cost(6783) .expect_no_logs() .execute_returns(true); @@ -1993,7 +1993,7 @@ fn asset_erc20_precompiles_freeze_thaw_account() { account: Address(ALICE.into()), }, ) - .expect_cost(6713) + .expect_cost(6803) .expect_no_logs() .execute_returns(true); @@ -2028,7 +2028,7 @@ fn asset_erc20_precompiles_freeze_thaw_asset() { asset_precompile_address, LocalAssetsPCall::freeze_asset {}, ) - .expect_cost(5548) + .expect_cost(5623) .expect_no_logs() .execute_returns(true); @@ -2045,7 +2045,7 @@ fn asset_erc20_precompiles_freeze_thaw_asset() { asset_precompile_address, LocalAssetsPCall::thaw_asset {}, ) - .expect_cost(5550) + .expect_cost(5634) .expect_no_logs() .execute_returns(true); @@ -2082,7 +2082,7 @@ fn asset_erc20_precompiles_freeze_transfer_ownership() { owner: Address(BOB.into()), }, ) - .expect_cost(6614) + .expect_cost(6706) .expect_no_logs() .execute_returns(true); @@ -2124,7 +2124,7 @@ fn asset_erc20_precompiles_freeze_set_team() { freezer: Address(BOB.into()), }, ) - .expect_cost(5577) + .expect_cost(5657) .expect_no_logs() .execute_returns(true); @@ -2245,7 +2245,7 @@ fn xcm_asset_erc20_precompiles_transfer() { value: { 400 * MOVR }.into(), }, ) - .expect_cost(23497) + .expect_cost(23775) .expect_log(log3( asset_precompile_address, SELECTOR_LOG_TRANSFER, @@ -2309,7 +2309,7 @@ fn xcm_asset_erc20_precompiles_approve() { value: { 400 * MOVR }.into(), }, ) - .expect_cost(13862) + .expect_cost(14048) .expect_log(log3( asset_precompile_address, SELECTOR_LOG_APPROVAL, @@ -2330,7 +2330,7 @@ fn xcm_asset_erc20_precompiles_approve() { value: { 400 * MOVR }.into(), }, ) - .expect_cost(29021) + .expect_cost(31145) .expect_log(log3( asset_precompile_address, SELECTOR_LOG_TRANSFER, @@ -2629,7 +2629,7 @@ fn transact_through_signed_precompile_works_v2() { overall_weight: total_weight, }, ) - .expect_cost(19078) + .expect_cost(18737) .expect_no_logs() .execute_returns(()); }); @@ -3097,7 +3097,7 @@ mod fee_tests { .base_extrinsic; let multiplier = sp_runtime::FixedU128::from_float(0.999000000000000000); let extrinsic_len = 100u32; - let extrinsic_weight = Weight::from_ref_time(5_000u64); + let extrinsic_weight = Weight::from_parts(5_000u64, 1); let tip = 42u128; type WeightToFeeImpl = ConstantMultiplier>; type LengthToFeeImpl = LengthToFee; @@ -3105,7 +3105,7 @@ mod fee_tests { // base_fee + (multiplier * extrinsic_weight_fee) + extrinsic_length_fee + tip let expected_fee = WeightToFeeImpl::weight_to_fee(&base_extrinsic) + multiplier.saturating_mul_int(WeightToFeeImpl::weight_to_fee(&extrinsic_weight)) - + LengthToFeeImpl::weight_to_fee(&(Weight::from_ref_time(extrinsic_len as u64))) + + LengthToFeeImpl::weight_to_fee(&(Weight::from_parts(extrinsic_len as u64, 1))) + tip; let mut t: sp_io::TestExternalities = frame_system::GenesisConfig::default() diff --git a/runtime/moonriver/tests/runtime_apis.rs b/runtime/moonriver/tests/runtime_apis.rs index 052597434a..13819c10c3 100644 --- a/runtime/moonriver/tests/runtime_apis.rs +++ b/runtime/moonriver/tests/runtime_apis.rs @@ -25,9 +25,9 @@ use nimbus_primitives::NimbusId; use pallet_evm::{Account as EVMAccount, AddressMapping, FeeCalculator}; use sp_core::{ByteArray, H160, H256, U256}; -use fp_rpc::runtime_decl_for_EthereumRuntimeRPCApi::EthereumRuntimeRPCApi; -use moonbeam_rpc_primitives_txpool::runtime_decl_for_TxPoolRuntimeApi::TxPoolRuntimeApi; -use nimbus_primitives::runtime_decl_for_NimbusApi::NimbusApi; +use fp_rpc::runtime_decl_for_ethereum_runtime_rpc_api::EthereumRuntimeRPCApi; +use moonbeam_rpc_primitives_txpool::runtime_decl_for_tx_pool_runtime_api::TxPoolRuntimeApi; +use nimbus_primitives::runtime_decl_for_nimbus_api::NimbusApi; use std::{collections::BTreeMap, str::FromStr}; #[test] diff --git a/runtime/moonriver/tests/xcm_mock/parachain.rs b/runtime/moonriver/tests/xcm_mock/parachain.rs index 4884316644..d69bd6b890 100644 --- a/runtime/moonriver/tests/xcm_mock/parachain.rs +++ b/runtime/moonriver/tests/xcm_mock/parachain.rs @@ -36,6 +36,7 @@ use xcm::{latest::prelude::*, Version as XcmVersion, VersionedXcm}; use cumulus_primitives_core::relay_chain::HrmpChannelId; use orml_traits::parameter_type_with_key; +use pallet_ethereum::PostLogContent; use polkadot_core_primitives::BlockNumber as RelayBlockNumber; use polkadot_parachain::primitives::{Id as ParaId, Sibling}; use xcm::latest::{ @@ -372,6 +373,7 @@ impl Config for XcmConfig { type MessageExporter = (); type UniversalAliases = Nothing; type SafeCallFilter = Everything; + type AssetIsBurnable = Everything; } impl cumulus_pallet_xcm::Config for Runtime { @@ -494,7 +496,6 @@ pub mod mock_msg_queue { impl Pallet {} #[pallet::pallet] - #[pallet::generate_store(pub(super) trait Store)] pub struct Pallet(_); #[pallet::storage] @@ -634,7 +635,6 @@ pub mod mock_version_changer { impl Pallet {} #[pallet::pallet] - #[pallet::generate_store(pub(super) trait Store)] pub struct Pallet(_); #[pallet::storage] @@ -897,7 +897,7 @@ use sp_core::U256; parameter_types! { pub BlockGasLimit: U256 = U256::max_value(); - pub WeightPerGas: Weight = Weight::from_ref_time(1); + pub WeightPerGas: Weight = Weight::from_parts(1, 0); } impl pallet_evm::Config for Runtime { @@ -1013,9 +1013,14 @@ impl xcm_primitives::HrmpEncodeCall for MockHrmpEncoder { } } +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 UncheckedExtrinsic = frame_system::mocking::MockUncheckedExtrinsic; diff --git a/runtime/moonriver/tests/xcm_mock/relay_chain.rs b/runtime/moonriver/tests/xcm_mock/relay_chain.rs index 0a68dd74f0..955d5f97e3 100644 --- a/runtime/moonriver/tests/xcm_mock/relay_chain.rs +++ b/runtime/moonriver/tests/xcm_mock/relay_chain.rs @@ -140,7 +140,7 @@ parameter_types! { } use frame_support::ensure; -use frame_support::traits::Contains; +use frame_support::traits::{Contains, ProcessMessageError}; use sp_std::marker::PhantomData; use xcm_executor::traits::ShouldExecute; /// Allows execution from `origin` if it is contained in `T` (i.e. `T::Contains(origin)`) taking @@ -154,28 +154,28 @@ impl> ShouldExecute for AllowTopLevelPaidExecutionDes message: &mut [Instruction], max_weight: Weight, _weight_credit: &mut Weight, - ) -> Result<(), ()> { + ) -> Result<(), ProcessMessageError> { log::trace!( target: "xcm::barriers", "AllowTopLevelPaidExecutionFromLocal origin: {:?}, message: {:?}, max_weight: {:?}, weight_credit: {:?}", origin, message, max_weight, _weight_credit, ); - ensure!(T::contains(origin), ()); + ensure!(T::contains(origin), ProcessMessageError::Unsupported); let mut iter = message.iter_mut(); - let mut i = iter.next().ok_or(())?; + let mut i = iter.next().ok_or(ProcessMessageError::BadFormat)?; match i { DescendOrigin(..) => (), - _ => return Err(()), + _ => return Err(ProcessMessageError::BadFormat), } - i = iter.next().ok_or(())?; + i = iter.next().ok_or(ProcessMessageError::BadFormat)?; match i { WithdrawAsset(..) => (), - _ => return Err(()), + _ => return Err(ProcessMessageError::BadFormat), } - i = iter.next().ok_or(())?; + i = iter.next().ok_or(ProcessMessageError::BadFormat)?; match i { BuyExecution { weight_limit: Limited(ref mut weight), @@ -191,7 +191,7 @@ impl> ShouldExecute for AllowTopLevelPaidExecutionDes *weight_limit = Limited(max_weight); Ok(()) } - _ => Err(()), + _ => Err(ProcessMessageError::Overweight(max_weight)), } } } @@ -232,6 +232,7 @@ impl Config for XcmConfig { type MessageExporter = (); type UniversalAliases = Nothing; type SafeCallFilter = Everything; + type AssetIsBurnable = Everything; } pub type LocalOriginToLocation = SignedToAccountId32; @@ -368,30 +369,30 @@ pub struct TestHrmpWeightInfo; impl hrmp::WeightInfo for TestHrmpWeightInfo { fn hrmp_accept_open_channel() -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } fn force_clean_hrmp(_: u32, _: u32) -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } fn force_process_hrmp_close(_: u32) -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } fn force_process_hrmp_open(_: u32) -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } fn hrmp_cancel_open_request(_: u32) -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } fn hrmp_close_channel() -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } fn hrmp_init_open_channel() -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } fn clean_open_channel_requests(_: u32) -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } fn force_open_hrmp_channel() -> Weight { - Weight::from_ref_time(1 as u64) + Weight::from_parts(1, 0) } } diff --git a/runtime/moonriver/tests/xcm_mock/statemine_like.rs b/runtime/moonriver/tests/xcm_mock/statemine_like.rs index 722557f5c8..268d0ec340 100644 --- a/runtime/moonriver/tests/xcm_mock/statemine_like.rs +++ b/runtime/moonriver/tests/xcm_mock/statemine_like.rs @@ -283,6 +283,7 @@ impl Config for XcmConfig { type MessageExporter = (); type UniversalAliases = Nothing; type SafeCallFilter = Everything; + type AssetIsBurnable = Everything; } /// No local origins on this chain are allowed to dispatch XCM sends/executions. @@ -333,7 +334,6 @@ pub mod mock_msg_queue { impl Pallet {} #[pallet::pallet] - #[pallet::generate_store(pub(super) trait Store)] pub struct Pallet(_); #[pallet::storage] @@ -477,7 +477,6 @@ pub mod mock_statemine_prefix { impl Pallet {} #[pallet::pallet] - #[pallet::generate_store(pub(super) trait Store)] #[pallet::without_storage_info] pub struct Pallet(_); diff --git a/tests/tests/test-fees/test-length-fees.ts b/tests/tests/test-fees/test-length-fees.ts index d204f27908..7cb0ca58ab 100644 --- a/tests/tests/test-fees/test-length-fees.ts +++ b/tests/tests/test-fees/test-length-fees.ts @@ -12,7 +12,7 @@ describeDevMoonbeam( (context) => { it("should have low balance transfer fees", async () => { const fee = await testBalanceTransfer(context); - expect(fee).to.equal(81940601520875n); + expect(fee).to.equal(77858601520875n); }); }, "Legacy", @@ -36,7 +36,7 @@ describeDevMoonbeam( (context) => { it("should have low balance transfer fees", async () => { const fee = await testBalanceTransfer(context); - expect(fee).to.equal(99272001520875n); + expect(fee).to.equal(94169501520875n); }); }, "Legacy", @@ -60,7 +60,7 @@ describeDevMoonbeam( (context) => { it("should have low balance transfer fees", async () => { const fee = await testBalanceTransfer(context); - expect(fee).to.equal(8194060152087500n); + expect(fee).to.equal(7785860152087500n); }); }, "Legacy", @@ -171,14 +171,15 @@ describeDevMoonbeam("Substrate Length Fees - Ethereum txn Interaction", (context // // conclusion: the LengthToFee modifier is NOT involved - const expected = 33908; + // was 33908 before Wei added the extra gas modexp cost to solve slow computation + const expected = 37708; expect(receipt.gasUsed).to.equal(expected); // furthermore, we can account for the entire fee: const non_zero_byte_fee = 3 * 16; const zero_byte_fee = 3165 * 4; const base_ethereum_fee = 21000; - const modexp_min_cost = 200; // see MIN_GAS_COST in frontier's modexp precompile + const modexp_min_cost = 200 * 20; // see MIN_GAS_COST in frontier's modexp precompile const entire_fee = non_zero_byte_fee + zero_byte_fee + base_ethereum_fee + modexp_min_cost; expect(entire_fee).to.equal(expected); }); diff --git a/tests/tests/test-precompile/test-precompile-modexp.ts b/tests/tests/test-precompile/test-precompile-modexp.ts index c917ef0e71..b620af6902 100644 --- a/tests/tests/test-precompile/test-precompile-modexp.ts +++ b/tests/tests/test-precompile/test-precompile-modexp.ts @@ -666,7 +666,9 @@ describeDevMoonbeam("Precompiles - modexp", (context) => { }); it("Exponent > 32", async function () { - const expectedModExpGasCost = 7104; + // We multiply by a factor of 20 for an even mod. + // See https://github.com/paritytech/frontier/pull/1017 + const expectedModExpGasCost = 7104 * 20; const byteArray = new Uint8Array([ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, diff --git a/tests/tests/test-precompile/test-precompile-xcm-utils.ts b/tests/tests/test-precompile/test-precompile-xcm-utils.ts index a74be19913..5541853ee3 100644 --- a/tests/tests/test-precompile/test-precompile-xcm-utils.ts +++ b/tests/tests/test-precompile/test-precompile-xcm-utils.ts @@ -14,7 +14,7 @@ import { descendOriginFromAddress } from "../../util/xcm"; import { ALITH_TRANSACTION_TEMPLATE, createTransaction } from "../../util/transactions"; import { expectEVMResult, extractRevertReason } from "../../util/eth-transactions"; -export const CLEAR_ORIGIN_WEIGHT = 8_514_000n; +export const CLEAR_ORIGIN_WEIGHT = 5_194_000n; const XCM_UTILS_CONTRACT = getCompiled("precompiles/xcm-utils/XcmUtils"); const XCM_UTILSTRANSACTOR_INTERFACE = new ethers.utils.Interface(XCM_UTILS_CONTRACT.contract.abi); diff --git a/tests/tests/test-staking/test-rewards-auto-compound.ts b/tests/tests/test-staking/test-rewards-auto-compound.ts index 5575ba384e..db62234425 100644 --- a/tests/tests/test-staking/test-rewards-auto-compound.ts +++ b/tests/tests/test-staking/test-rewards-auto-compound.ts @@ -7,7 +7,7 @@ import { alith, baltathar, ethan, generateKeyringPair } from "../../util/account import { expectOk } from "../../util/expect"; import { jumpRounds } from "../../util/block"; import { BN, BN_ZERO } from "@polkadot/util"; -import { Percent } from "../../util/common"; +import { Percent, chunk } from "../../util/common"; import { FrameSystemEventRecord } from "@polkadot/types/lookup"; import { KeyringPair } from "@polkadot/keyring/types"; @@ -387,33 +387,21 @@ describeDevMoonbeam("Staking - Rewards Auto-Compound - bottom delegation kick", ]) ); - // fill all delegations, we split this into two blocks as it will not fit into one. + // fill all delegations, we split this into multiple blocks as it will not fit into one. // we use a maxDelegationCount here, since the transactions can come out of order. - await expectOk( - context.createBlock([ + const txns = [ + context.polkadotApi.tx.parachainStaking + .delegate(baltathar.address, MIN_GLMR_DELEGATOR, 0, 1) + .signAsync(ethan), + ...otherDelegators.map((d) => context.polkadotApi.tx.parachainStaking - .delegate(baltathar.address, MIN_GLMR_DELEGATOR, 0, 1) - .signAsync(ethan), - ...otherDelegators - .slice(0, 150) - .map((d) => - context.polkadotApi.tx.parachainStaking - .delegate(alith.address, MIN_GLMR_DELEGATOR + 10n * GLMR, maxDelegationCount, 1) - .signAsync(d) - ), - ]) - ); - await expectOk( - context.createBlock([ - ...otherDelegators - .slice(150) - .map((d) => - context.polkadotApi.tx.parachainStaking - .delegate(alith.address, MIN_GLMR_DELEGATOR + 10n * GLMR, maxDelegationCount, 1) - .signAsync(d) - ), - ]) - ); + .delegate(alith.address, MIN_GLMR_DELEGATOR + 10n * GLMR, maxDelegationCount, 1) + .signAsync(d) + ), + ]; + for (const txnsChunk of chunk(txns, 20)) { + await expectOk(context.createBlock(txnsChunk)); + } await expectOk( context.createBlock( diff --git a/tests/tests/test-staking/test-staking-consts.ts b/tests/tests/test-staking/test-staking-consts.ts index 4b900c8278..5d5a42a193 100644 --- a/tests/tests/test-staking/test-staking-consts.ts +++ b/tests/tests/test-staking/test-staking-consts.ts @@ -7,6 +7,7 @@ import { GLMR, MIN_GLMR_DELEGATOR, MIN_GLMR_STAKING } from "../../util/constants import { describeDevMoonbeam } from "../../util/setup-dev-tests"; import { KeyringPair } from "@polkadot/keyring/types"; import { expectOk } from "../../util/expect"; +import { chunk } from "../../util/common"; describeDevMoonbeam("Staking - Consts - MaxDelegationsPerDelegator", (context) => { const randomAccount = generateKeyringPair(); @@ -34,15 +35,17 @@ describeDevMoonbeam("Staking - Consts - MaxDelegationsPerDelegator", (context) = ]) ); - await expectOk( - context.createBlock( - randomCandidates.map((randomCandidate) => - context.polkadotApi.tx.parachainStaking - .joinCandidates(MIN_GLMR_STAKING, maxDelegationsPerDelegator) - .signAsync(randomCandidate) + for (const randomCandidatesChunk of chunk(randomCandidates, 50)) { + await expectOk( + context.createBlock( + randomCandidatesChunk.map((randomCandidate) => + context.polkadotApi.tx.parachainStaking + .joinCandidates(MIN_GLMR_STAKING, maxDelegationsPerDelegator) + .signAsync(randomCandidate) + ) ) - ) - ); + ); + } const candidates = await context.polkadotApi.query.parachainStaking.candidateInfo.entries(); expect(candidates.length).to.be.equal( @@ -51,15 +54,17 @@ describeDevMoonbeam("Staking - Consts - MaxDelegationsPerDelegator", (context) = ); let nonce = await context.web3.eth.getTransactionCount(randomAccount.address); - await expectOk( - context.createBlock( - randomCandidates.map((randomCandidate) => - context.polkadotApi.tx.parachainStaking - .delegate(randomCandidate.address, MIN_GLMR_DELEGATOR, 1, maxDelegationsPerDelegator) - .signAsync(randomAccount, { nonce: nonce++ }) + for (const randomCandidatesChunk of chunk(randomCandidates, 20)) { + await expectOk( + context.createBlock( + randomCandidatesChunk.map((randomCandidate) => + context.polkadotApi.tx.parachainStaking + .delegate(randomCandidate.address, MIN_GLMR_DELEGATOR, 1, maxDelegationsPerDelegator) + .signAsync(randomAccount, { nonce: nonce++ }) + ) ) - ) - ); + ); + } }); it("should fail delegation request", async function () { diff --git a/tests/tests/test-staking/test-staking-locks.ts b/tests/tests/test-staking/test-staking-locks.ts index 39ab34d674..69e3b354ab 100644 --- a/tests/tests/test-staking/test-staking-locks.ts +++ b/tests/tests/test-staking/test-staking-locks.ts @@ -20,6 +20,7 @@ import { KeyringPair } from "@polkadot/keyring/types"; import { expectOk } from "../../util/expect"; import { jumpRounds } from "../../util/block"; import { ExtrinsicCreation } from "../../util/substrate-rpc"; +import { chunk } from "../../util/common"; describeDevMoonbeam("Staking - Locks - join delegators", (context) => { const randomAccount = generateKeyringPair(); @@ -346,15 +347,18 @@ describeDevMoonbeam("Staking - Locks - max delegations", (context) => { ]) ); - await expectOk( - context.createBlock( - randomCandidates.map((randomCandidate) => - context.polkadotApi.tx.parachainStaking - .joinCandidates(MIN_GLMR_STAKING, maxDelegationsPerDelegator) - .signAsync(randomCandidate) + // We split the candidates since they won't fit in a single block + for (const randomCandidatesChunk of chunk(randomCandidates, 50)) { + await expectOk( + context.createBlock( + randomCandidatesChunk.map((randomCandidate) => + context.polkadotApi.tx.parachainStaking + .joinCandidates(MIN_GLMR_STAKING, maxDelegationsPerDelegator) + .signAsync(randomCandidate) + ) ) - ) - ); + ); + } const candidates = await context.polkadotApi.query.parachainStaking.candidateInfo.entries(); expect(candidates.length).to.be.equal( @@ -363,20 +367,22 @@ describeDevMoonbeam("Staking - Locks - max delegations", (context) => { ); let nonce = await context.web3.eth.getTransactionCount(randomAccount.address); - await expectOk( - context.createBlock( - randomCandidates.map((randomCandidate) => - context.polkadotApi.tx.parachainStaking - .delegate( - randomCandidate.address, - MIN_GLMR_DELEGATOR, - 1, - maxDelegationsPerDelegator + 1n - ) - .signAsync(randomAccount, { nonce: nonce++ }) + for (const randomCandidatesChunk of chunk(randomCandidates, 50)) { + await expectOk( + context.createBlock( + randomCandidatesChunk.map((randomCandidate) => + context.polkadotApi.tx.parachainStaking + .delegate( + randomCandidate.address, + MIN_GLMR_DELEGATOR, + 1, + maxDelegationsPerDelegator + 1n + ) + .signAsync(randomAccount, { nonce: nonce++ }) + ) ) - ) - ); + ); + } }); it("should support 100 delegations", async function () { @@ -490,9 +496,8 @@ describeDevMoonbeam("Staking - Locks - bottom delegator removed", (context) => { ); // this can no longer fit in one block - const batchSize = 100; - for (let i = 0; i < txns.length; i += batchSize) { - await expectOk(context.createBlock(txns.slice(i, i + batchSize))); + for (const txnChunk of chunk(txns, 20)) { + await expectOk(context.createBlock(txnChunk)); } const alithCandidateInfo = ( @@ -517,10 +522,10 @@ describeDevMoonbeam("Staking - Locks - bottom and top delegations", (context) => before("setup candidate & delegations", async function () { this.timeout(20000); const numBottomDelegations = - await context.polkadotApi.consts.parachainStaking.maxBottomDelegationsPerCandidate.toNumber(); + context.polkadotApi.consts.parachainStaking.maxBottomDelegationsPerCandidate.toNumber(); const numTopDelegations = - await context.polkadotApi.consts.parachainStaking.maxTopDelegationsPerCandidate.toNumber(); + context.polkadotApi.consts.parachainStaking.maxTopDelegationsPerCandidate.toNumber(); // Create the delegators to fill the lists bottomDelegators = new Array( @@ -546,18 +551,22 @@ describeDevMoonbeam("Staking - Locks - bottom and top delegations", (context) => }); it("should be set for bottom and top list delegators", async function () { - await expectOk( - context.createBlock( - [...topDelegators].map((account, i) => { - // add a tip such that the delegation ordering will be preserved, e.g. the first txns sent - // will have the highest tip - let tip = BigInt(topDelegators.length - i + 1) * MILLIGLMR; - return context.polkadotApi.tx.parachainStaking - .delegate(alith.address, MIN_GLMR_DELEGATOR + 1n * GLMR, i + 1, 1) - .signAsync(account, { tip }); - }) - ) - ); + let tipOrdering = topDelegators.length + 1; + let numDelegations = 0; + for (const topDelegatorsChunk of chunk(topDelegators, 20)) { + await expectOk( + context.createBlock( + [...topDelegatorsChunk].map((account, i) => { + // add a tip such that the delegation ordering will be preserved, + // e.g. the first txns sent will have the highest tip + let tip = BigInt(tipOrdering--) * MILLIGLMR; + return context.polkadotApi.tx.parachainStaking + .delegate(alith.address, MIN_GLMR_DELEGATOR + 1n * GLMR, numDelegations++, 1) + .signAsync(account, { tip }); + }) + ) + ); + } // allow more block(s) for txns to be processed... // note: this only seems necessary when a tip is added, otherwise all 300 txns make it into a @@ -588,18 +597,22 @@ describeDevMoonbeam("Staking - Locks - bottom and top delegations", (context) => } } - await expectOk( - context.createBlock( - [...bottomDelegators].map((account, i) => { - // add a tip such that the delegation ordering will be preserved, e.g. the first txns sent - // will have the highest tip - let tip = BigInt(topDelegators.length + (bottomDelegators.length - i) + 1) * MILLIGLMR; - return context.polkadotApi.tx.parachainStaking - .delegate(alith.address, MIN_GLMR_DELEGATOR, topDelegators.length + i + 1, 1) - .signAsync(account, { tip }); - }) - ) - ); + tipOrdering = bottomDelegators.length + 1; + numDelegations = topDelegators.length; + for (const bottomDelegatorsChunk of chunk(bottomDelegators, 20)) { + await expectOk( + context.createBlock( + [...bottomDelegatorsChunk].map((account) => { + // add a tip such that the delegation ordering will be preserved, + // e.g. the first txns sent will have the highest tip + let tip = BigInt(tipOrdering--) * MILLIGLMR; + return context.polkadotApi.tx.parachainStaking + .delegate(alith.address, MIN_GLMR_DELEGATOR, numDelegations++, 1) + .signAsync(account, { tip }); + }) + ) + ); + } // note that we don't need to wait for further blocks here because bottom delegations is much // smaller than top delegations, so all txns reliably fit within one block. diff --git a/tests/tests/test-xcm/test-mock-dmp-queue.ts b/tests/tests/test-xcm/test-mock-dmp-queue.ts index 1342ce390c..6a2606dd22 100644 --- a/tests/tests/test-xcm/test-mock-dmp-queue.ts +++ b/tests/tests/test-xcm/test-mock-dmp-queue.ts @@ -70,12 +70,24 @@ describeDevMoonbeam("Mock XCMP - test XCMP execution", (context) => { ) ); - const unlimitedBuyExecutionsPerMessage = - (weightPerMessage - withdrawWeight) / buyExecutionWeight; + // How much does the refundSurplus weight? + // We use refund surplus because it has 0 pov + // it's easier to focus on reftime + const refundSurplusWeight = await weightMessage( + context, + context.polkadotApi.createType( + "XcmVersionedXcm", + new XcmFragment(config).refund_surplus().as_v2() + ) + ); + + const refundSurplusPerMessage = + (weightPerMessage - withdrawWeight - buyExecutionWeight) / refundSurplusWeight; const xcmMessage = new XcmFragment(config) .withdraw_asset() - .buy_execution(0, unlimitedBuyExecutionsPerMessage) + .buy_execution(0) + .refund_surplus(refundSurplusPerMessage) .as_v2(); const receivedMessage: XcmVersionedXcm = context.polkadotApi.createType( diff --git a/tests/tests/test-xcm/test-mock-hrmp-queue.ts b/tests/tests/test-xcm/test-mock-hrmp-queue.ts index 014244c976..126ea4e207 100644 --- a/tests/tests/test-xcm/test-mock-hrmp-queue.ts +++ b/tests/tests/test-xcm/test-mock-hrmp-queue.ts @@ -108,7 +108,10 @@ describeDevMoonbeam("Mock XCMP - test XCMP execution", (context) => { await expectOk( context.createBlock( context.polkadotApi.tx.sudo.sudo( - context.polkadotApi.tx.xcmpQueue.updateWeightRestrictDecay({ refTime: 0, proofSize: 0 }) + context.polkadotApi.tx.xcmpQueue.updateWeightRestrictDecay({ + refTime: 0, + proofSize: 0, + } as any) ) ) ); @@ -155,20 +158,49 @@ describeDevMoonbeam("Mock XCMP - test XCMP execution", (context) => { ) ); + // How much does a base Transact weight? + const transactBaseWeight = await weightMessage( + context, + context.polkadotApi.createType( + "XcmVersionedXcm", + new XcmFragment(config) + .push_any({ + Transact: { + originType: "SovereignAccount", + requireWeightAtMost: new BN(0), + call: { + encoded: "0x11", + }, + }, + }) + .as_v2() + ) + ); + // Now we need to construct the message. This needs to: // - pass barrier (withdraw + buyExecution + n*unLimitedbuyExecution) // - does not fail, so all weight is counted // we know at least 2 instructions are needed per message (withdrawAsset + buyExecution) - // how many unlimited buy executions do we need to append? + // We will append a custom and single Transact, to match the weight needed // In this case we want to never reach the thresholdLimit, to make sure we execute every // single messages - const unlimitedBuyExecutionsPerMessage = - (weightPerMessage - withdrawWeight) / buyExecutionWeight; + + const requireWeightAtMostParemeter = + weightPerMessage - withdrawWeight - buyExecutionWeight - transactBaseWeight; const xcmMessage = new XcmFragment(config) .withdraw_asset() - .buy_execution(0, unlimitedBuyExecutionsPerMessage) + .buy_execution(0) + .push_any({ + Transact: { + originType: "SovereignAccount", + requireWeightAtMost: requireWeightAtMostParemeter, + call: { + encoded: "0x11", + }, + }, + }) .as_v2(); // The way we will prove that the message executed is checking balances. @@ -198,9 +230,9 @@ describeDevMoonbeam("Mock XCMP - test XCMP execution", (context) => { await context.createBlock(); - // all the withdraws + `buyExecutions + // withdrawAsset + BuyExecution + Transact const weightUsePerMessage = - unlimitedBuyExecutionsPerMessage * buyExecutionWeight + withdrawWeight; + requireWeightAtMostParemeter + transactBaseWeight + buyExecutionWeight + withdrawWeight; const result = await calculateShufflingAndExecution( context, @@ -287,7 +319,7 @@ describeDevMoonbeam("Mock XCMP - test XCMP execution", (context) => { ); // How much does the transact weight with 0 required? - const transactWeight = await weightMessage( + const transactBaseWeight = await weightMessage( context, context.polkadotApi.createType( "XcmVersionedXcm", @@ -305,36 +337,17 @@ describeDevMoonbeam("Mock XCMP - test XCMP execution", (context) => { ) ); - let unlimitedBuyExecutionsPerMessage = (weightPerMessage - withdrawWeight) / buyExecutionWeight; - - // we want to reach EXACTLY weightPerMessage - // We know we cant reach it with buyExecutions, but we can fill the remaining with a TRANSACT - // In Transact, we can control specifically how much our message is gonna weight - // Specifically, it will weight the base Transact weight - // plus whatever we put in requireWeightAtMost - let weightUsePerMessageWithoutTransact = - unlimitedBuyExecutionsPerMessage * buyExecutionWeight + withdrawWeight; - - let transactRequireWeight; - if (weightPerMessage - weightUsePerMessageWithoutTransact > transactWeight) { - transactRequireWeight = - weightPerMessage - weightUsePerMessageWithoutTransact - transactWeight; - } else { - // we substract if not a buyExecution, which is always bigger - unlimitedBuyExecutionsPerMessage = unlimitedBuyExecutionsPerMessage - 1n; - weightUsePerMessageWithoutTransact = weightUsePerMessageWithoutTransact - buyExecutionWeight; - transactRequireWeight = - weightPerMessage - weightUsePerMessageWithoutTransact - transactWeight; - } + let requireWeightAtMostParemeter = + weightPerMessage - withdrawWeight - buyExecutionWeight - transactBaseWeight; const xcmMessage = new XcmFragment(config) .withdraw_asset() - .buy_execution(0, unlimitedBuyExecutionsPerMessage) + .buy_execution(0) // Does not reallly matter, wont be executed, we want it to fail .push_any({ Transact: { originType: "SovereignAccount", - requireWeightAtMost: new BN(transactRequireWeight.toString()), + requireWeightAtMost: new BN(requireWeightAtMostParemeter.toString()), call: { encoded: 0x01, }, @@ -342,7 +355,7 @@ describeDevMoonbeam("Mock XCMP - test XCMP execution", (context) => { }) .as_v2(); - // We want these isntructions to fail in BuyExecution. That means + // We want these isntructions to fail in Transact. That means // WithdrawAsset needs to work. The only way for this to work // is to fund each sovereign account for (let i = 0; i < numParaMsgs; i++) { diff --git a/tests/tracing-tests/test-trace.ts b/tests/tracing-tests/test-trace.ts index 5b9a1dfcb0..d463c66d47 100644 --- a/tests/tracing-tests/test-trace.ts +++ b/tests/tracing-tests/test-trace.ts @@ -736,9 +736,7 @@ describeDevMoonbeam("Raw trace limits", (context) => { expect(trace.error).to.deep.eq({ code: -32603, - message: - "replayed transaction generated too much data. \ -try disabling memory or storage?", + message: "replayed transaction generated too much data. try disabling memory or storage?", }); }); }); diff --git a/tests/util/common.ts b/tests/util/common.ts index a3662eb247..ccd18197d1 100644 --- a/tests/util/common.ts +++ b/tests/util/common.ts @@ -1,6 +1,15 @@ import { BN } from "@polkadot/util"; import Bottleneck from "bottleneck"; +export function chunk(array: Array, size: number): Array> { + const chunks = []; + for (let i = 0; i < array.length; i += size) { + chunks.push(array.slice(i, i + size)); + } + + return chunks; +} + export function rateLimiter() { const settings = process.env.SKIP_RATE_LIMITER === "true" ? {} : { maxConcurrent: 10, minTime: 150 }; diff --git a/tests/util/xcm.ts b/tests/util/xcm.ts index 04c6d81a85..c7053a0bb1 100644 --- a/tests/util/xcm.ts +++ b/tests/util/xcm.ts @@ -318,6 +318,17 @@ export class XcmFragment { return this; } + // Add one or more `BuyExecution` instruction + // if weight_limit is not set in config, then we put unlimited + refund_surplus(repeat: bigint = 1n): this { + for (var i = 0; i < repeat; i++) { + this.instructions.push({ + RefundSurplus: null, + }); + } + return this; + } + // Add a `ClaimAsset` instruction claim_asset(index: number = 0): this { this.instructions.push({