From 8df27a586b598d2f783b53cd62b127b8f8ac846a Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Fri, 3 Nov 2023 11:38:51 +0300 Subject: [PATCH 01/68] cargo upgrade --pinned --incompatible --- Cargo.lock | 1745 ++++++++++------- relay/kusama/Cargo.toml | 202 +- relay/kusama/constants/Cargo.toml | 14 +- relay/polkadot/Cargo.toml | 186 +- relay/polkadot/constants/Cargo.toml | 14 +- .../asset-hubs/asset-hub-kusama/Cargo.toml | 128 +- .../asset-hubs/asset-hub-polkadot/Cargo.toml | 120 +- .../bridge-hubs/bridge-hub-kusama/Cargo.toml | 108 +- .../bridge-hub-polkadot/Cargo.toml | 108 +- .../collectives-polkadot/Cargo.toml | 122 +- .../gluttons/glutton-kusama/Cargo.toml | 62 +- 11 files changed, 1572 insertions(+), 1237 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index c9865981cf..bf4e8addc6 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -110,7 +110,7 @@ dependencies = [ "cipher 0.3.0", "ctr 0.8.0", "ghash 0.4.4", - "subtle", + "subtle 2.4.1", ] [[package]] @@ -124,7 +124,7 @@ dependencies = [ "cipher 0.4.4", "ctr 0.9.2", "ghash 0.5.0", - "subtle", + "subtle 2.4.1", ] [[package]] @@ -179,6 +179,12 @@ dependencies = [ "memchr", ] +[[package]] +name = "allocator-api2" +version = "0.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5" + [[package]] name = "android-tzdata" version = "0.1.1" @@ -205,9 +211,9 @@ dependencies = [ [[package]] name = "anstream" -version = "0.5.0" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1f58811cfac344940f1a400b6e6231ce35171f614f26439e80f8c1465c5cc0c" +checksum = "2ab91ebe16eb252986481c5b62f6098f3b698a45e34b5b98200cf20dd2484a44" dependencies = [ "anstyle", "anstyle-parse", @@ -243,9 +249,9 @@ dependencies = [ [[package]] name = "anstyle-wincon" -version = "2.1.0" +version = "3.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58f54d10c6dfa51283a066ceab3ec1ab78d13fae00aa49243a45e4571fb79dfd" +checksum = "f0699d10d2f4d628a98ee7b57b289abbc98ff3bad977cb3152709d4bf2330628" dependencies = [ "anstyle", "windows-sys 0.48.0", @@ -273,7 +279,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "df752953c49ce90719c7bf1fc587bc8227aed04732ea0c0f85e5397d7fdbd1a1" dependencies = [ "include_dir", - "itertools", + "itertools 0.10.5", "proc-macro-error", "proc-macro2", "quote", @@ -286,6 +292,141 @@ version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bddcadddf5e9015d310179a59bb28c4d4b9920ad0f11e8e14dbadf654890c9a6" +[[package]] +name = "ark-bls12-377" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb00293ba84f51ce3bd026bd0de55899c4e68f0a39a5728cebae3a73ffdc0a4f" +dependencies = [ + "ark-ec", + "ark-ff", + "ark-std", +] + +[[package]] +name = "ark-bls12-381" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c775f0d12169cba7aae4caeb547bb6a50781c7449a8aa53793827c9ec4abf488" +dependencies = [ + "ark-ec", + "ark-ff", + "ark-serialize", + "ark-std", +] + +[[package]] +name = "ark-ec" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "defd9a439d56ac24968cca0571f598a61bc8c55f71d50a89cda591cb750670ba" +dependencies = [ + "ark-ff", + "ark-poly", + "ark-serialize", + "ark-std", + "derivative", + "hashbrown 0.13.2", + "itertools 0.10.5", + "num-traits", + "zeroize", +] + +[[package]] +name = "ark-ff" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec847af850f44ad29048935519032c33da8aa03340876d351dfab5660d2966ba" +dependencies = [ + "ark-ff-asm", + "ark-ff-macros", + "ark-serialize", + "ark-std", + "derivative", + "digest 0.10.7", + "itertools 0.10.5", + "num-bigint", + "num-traits", + "paste", + "rustc_version", + "zeroize", +] + +[[package]] +name = "ark-ff-asm" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ed4aa4fe255d0bc6d79373f7e31d2ea147bcf486cba1be5ba7ea85abdb92348" +dependencies = [ + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ark-ff-macros" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7abe79b0e4288889c4574159ab790824d0033b9fdcb2a112a3182fac2e514565" +dependencies = [ + "num-bigint", + "num-traits", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ark-poly" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d320bfc44ee185d899ccbadfa8bc31aab923ce1558716e1997a1e74057fe86bf" +dependencies = [ + "ark-ff", + "ark-serialize", + "ark-std", + "derivative", + "hashbrown 0.13.2", +] + +[[package]] +name = "ark-serialize" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adb7b85a02b83d2f22f89bd5cac66c9c89474240cb6207cb1efc16d098e822a5" +dependencies = [ + "ark-serialize-derive", + "ark-std", + "digest 0.10.7", + "num-bigint", +] + +[[package]] +name = "ark-serialize-derive" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae3281bc6d0fd7e549af32b52511e1302185bd688fd3359fa36423346ff682ea" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ark-std" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" +dependencies = [ + "num-traits", + "rand 0.8.5", +] + +[[package]] +name = "array-bytes" +version = "4.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f52f63c5c1316a16a4b35eaac8b76a98248961a533f061684cb2a7cb0eafb6c6" + [[package]] name = "array-bytes" version = "6.1.0" @@ -405,7 +546,7 @@ dependencies = [ "frame-system-rpc-runtime-api", "frame-try-runtime", "hex-literal", - "kusama-runtime-constants 1.0.0", + "kusama-runtime-constants", "log", "pallet-asset-conversion", "pallet-asset-conversion-tx-payment", @@ -502,7 +643,7 @@ dependencies = [ "polkadot-core-primitives", "polkadot-parachain-primitives", "polkadot-runtime-common", - "polkadot-runtime-constants 1.0.0", + "polkadot-runtime-constants", "scale-info", "smallvec", "sp-api", @@ -527,9 +668,9 @@ dependencies = [ [[package]] name = "asset-test-utils" -version = "2.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d8c54a703225defe6b87f7b715bf72723342ef1ecf9a5e96d02c55a5bc31959" +checksum = "de674aa0b8f0c31a00fd99a4003751c788c7023ed62527097a1286dd530fbe60" dependencies = [ "assets-common", "cumulus-pallet-dmp-queue", @@ -545,6 +686,7 @@ dependencies = [ "pallet-collator-selection", "pallet-session", "pallet-xcm", + "pallet-xcm-bridge-hub-router", "parachains-common", "parachains-runtimes-test-utils", "parity-scale-codec", @@ -556,15 +698,16 @@ dependencies = [ "sp-std", "staging-parachain-info", "staging-xcm", + "staging-xcm-builder", "staging-xcm-executor", "substrate-wasm-builder", ] [[package]] name = "assets-common" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29b1f6400a746207ff6e077b13103427c646914d49cc459977090a966908ff91" +checksum = "f8b8aa1c485e12af4a0a2b48402fa85d382ab4962731e71f5edc0f85c4cba28c" dependencies = [ "cumulus-primitives-core", "frame-support", @@ -625,17 +768,6 @@ dependencies = [ "event-listener", ] -[[package]] -name = "async-recursion" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e97ce7de6cf12de5d7226c73f5ba9811622f4db3a5b91b55c53e987e5f91cba" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.31", -] - [[package]] name = "async-trait" version = "0.1.73" @@ -644,7 +776,7 @@ checksum = "bc00ceb34980c03614e35a3a4e218276a0a824e911d07651cd0d858a51e8c0f0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] @@ -745,9 +877,9 @@ dependencies = [ [[package]] name = "binary-merkle-tree" -version = "8.0.0" +version = "10.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc86c4514675732c8bdc8a8bfc78b2e1b50dcce1a4aa5baea3338c9f2c3c1790" +checksum = "a399848a68a5196a04c19db5bfc4dca3cd0989a3165150f06c1ad1bc8882aa34" dependencies = [ "hash-db", "log", @@ -780,7 +912,7 @@ dependencies = [ "regex", "rustc-hash", "shlex", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] @@ -807,6 +939,18 @@ dependencies = [ "wyz", ] +[[package]] +name = "blake2" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94cb07b0da6a73955f8fb85d24c466778e70cda767a568229b104f0264089330" +dependencies = [ + "byte-tools", + "crypto-mac 0.7.0", + "digest 0.8.1", + "opaque-debug 0.2.3", +] + [[package]] name = "blake2" version = "0.10.6" @@ -930,9 +1074,9 @@ dependencies = [ [[package]] name = "bp-bridge-hub-cumulus" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75f657204b8e931d9c9b78139e661b7b58b005f627f0caf5c98257df0b81a97b" +checksum = "9b18aaf9ed9ecffade4d56bb1a63cd70b9e61ea4ef69023f2dcd0fd54d18f280" dependencies = [ "bp-messages", "bp-polkadot-core", @@ -946,9 +1090,9 @@ dependencies = [ [[package]] name = "bp-bridge-hub-rococo" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6819a3f7a5c6c48ca4796ba70a586b5736baeb2e7542907f1c675d986141b20" +checksum = "7dcb3425030c446f51c0d9bc71605b42dc96acff94b2feff51cd09a5e58dc0dd" dependencies = [ "bp-bridge-hub-cumulus", "bp-messages", @@ -961,9 +1105,9 @@ dependencies = [ [[package]] name = "bp-bridge-hub-wococo" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5145dec4dbeb78e65f44b0f2a4953d5f276f8db140906b9831aee1434c9988e" +checksum = "0ecd2e53fcb7b489a544e27474839586b662bd0c5eea0a9bd21d5eaeae8e6b0b" dependencies = [ "bp-bridge-hub-cumulus", "bp-messages", @@ -976,9 +1120,9 @@ dependencies = [ [[package]] name = "bp-header-chain" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "842dd43f5229669efb74cdc909c0e9315a7cdbe4513b6225dc0ab0ec21e4a1b8" +checksum = "fb057324305f7cacce9d87a82d0e6e8de8ec2ff40fd2df707f97f74ddd0631f9" dependencies = [ "bp-runtime", "finality-grandpa", @@ -994,9 +1138,9 @@ dependencies = [ [[package]] name = "bp-messages" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "deb9128928257331dfb41c4c283549a7795447ca5dc5bc5b6753ee6118912651" +checksum = "c4df7b23c2c5cdfb7260c0c88835e554f857b0a80e4c1cfa48dd1194e6fb6c6d" dependencies = [ "bp-header-chain", "bp-runtime", @@ -1010,9 +1154,9 @@ dependencies = [ [[package]] name = "bp-parachains" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6a2ffaab775e6e0295d52bd9b768862e522823ef8ecb1a0f05f87953b496239" +checksum = "16a644c3fa5ac2233dd2de94ebe2a4aa98c7cca36b34d96e6604f4d34b0758b4" dependencies = [ "bp-header-chain", "bp-polkadot-core", @@ -1028,9 +1172,9 @@ dependencies = [ [[package]] name = "bp-polkadot-core" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "953c2ec80269860053085ac259da9ed7b1ad3b8985435255f7635000dbd3c440" +checksum = "34f0342d051a3b07fecbcabc7efca35880865ede7ef5b2b49ca323c94bdb6d53" dependencies = [ "bp-messages", "bp-runtime", @@ -1047,9 +1191,9 @@ dependencies = [ [[package]] name = "bp-relayers" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d4c6316868f49602c4a011d850444181d2f1b837a238214f1e287a0e6d74710" +checksum = "e11ea832eedd3bb19a13f77474b4eced1782914527fc54404a423d6259095bdb" dependencies = [ "bp-messages", "bp-runtime", @@ -1062,9 +1206,9 @@ dependencies = [ [[package]] name = "bp-runtime" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6356e28b2d80b622e95914d130db0a4a9d2deb27863930228eb53b29bc6f28a5" +checksum = "8c4fd30d6814b73c245c40c760ffbadec3f834865ddd681161ef33672a766e50" dependencies = [ "frame-support", "frame-system", @@ -1086,15 +1230,15 @@ dependencies = [ [[package]] name = "bp-test-utils" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4eb045c0076d4f12de4ada37b5a30df377eb69988b577c98fe2c311da34b531" +checksum = "e625f0def0740566ca053a7b7076c301992eed132b3821a07e835bb8062fb79a" dependencies = [ "bp-header-chain", "bp-parachains", "bp-polkadot-core", "bp-runtime", - "ed25519-dalek 1.0.1", + "ed25519-dalek", "finality-grandpa", "parity-scale-codec", "sp-application-crypto", @@ -1107,9 +1251,9 @@ dependencies = [ [[package]] name = "bp-xcm-bridge-hub-router" -version = "0.1.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07e48a83f01c1469df3803773535052444c25ac050b070b1c18b48a378d913c8" +checksum = "be3b4fafc31f17da1b4ea403c4118e4f4f1d9a5a696729b374551d582e48633b" dependencies = [ "parity-scale-codec", "scale-info", @@ -1138,7 +1282,7 @@ dependencies = [ "frame-system-rpc-runtime-api", "frame-try-runtime", "hex-literal", - "kusama-runtime-constants 1.0.0", + "kusama-runtime-constants", "log", "pallet-aura", "pallet-authorship", @@ -1219,7 +1363,7 @@ dependencies = [ "polkadot-core-primitives", "polkadot-parachain-primitives", "polkadot-runtime-common", - "polkadot-runtime-constants 1.0.0", + "polkadot-runtime-constants", "scale-info", "serde", "smallvec", @@ -1245,11 +1389,10 @@ dependencies = [ [[package]] name = "bridge-hub-test-utils" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3840cd4df9976e371b178033469cdcf1f68ab34f5e5fa43675bc1c5374d97786" +checksum = "a3598ffa3d0c5f5651dee8aea016b69c5a3be48ab01fb83f773c93af0cf77c68" dependencies = [ - "assert_matches", "asset-test-utils", "bp-bridge-hub-rococo", "bp-bridge-hub-wococo", @@ -1286,6 +1429,7 @@ dependencies = [ "sp-io", "sp-keyring", "sp-runtime", + "sp-tracing", "staging-parachain-info", "staging-xcm", "staging-xcm-builder", @@ -1294,9 +1438,9 @@ dependencies = [ [[package]] name = "bridge-runtime-common" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87df6d2289a3ab0699d97b40ac3ef83f944b0db738e326327c267fdeca92b3a6" +checksum = "a585d0a58356e3a6131a2cb77a69af5580af278075cac46a85d54e5f6ea1b982" dependencies = [ "bp-header-chain", "bp-messages", @@ -1408,6 +1552,16 @@ dependencies = [ "pkg-config", ] +[[package]] +name = "c2-chacha" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d27dae93fe7b1e0424dc57179ac396908c26b035a87234809f5c4dfd1b47dc80" +dependencies = [ + "cipher 0.2.5", + "ppv-lite86", +] + [[package]] name = "camino" version = "1.1.6" @@ -1458,7 +1612,7 @@ checksum = "5aca1a8fbc20b50ac9673ff014abfb2b5f4085ee1a850d408f14a159c5853ac7" dependencies = [ "aead 0.3.2", "cipher 0.2.5", - "subtle", + "subtle 2.4.1", ] [[package]] @@ -1472,9 +1626,9 @@ dependencies = [ [[package]] name = "cfg-expr" -version = "0.15.4" +version = "0.15.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b40ccee03b5175c18cde8f37e7d2a33bcef6f8ec8f7cc0d81090d1bb380949c9" +checksum = "03915af431787e6ffdcc74c645077518c6b6e01f80b761e0fbbfa288536311b3" dependencies = [ "smallvec", ] @@ -1491,6 +1645,16 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e" +[[package]] +name = "chacha" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ddf3c081b5fba1e5615640aae998e0fbd10c24cbd897ee39ed754a77601a4862" +dependencies = [ + "byteorder", + "keystream", +] + [[package]] name = "chacha20" version = "0.8.2" @@ -1594,9 +1758,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.4.2" +version = "4.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a13b88d2c62ff462f88e4a121f17a82c1af05693a2f192b5c38d14de73c19f6" +checksum = "ac495e00dcec98c83465d5ad66c5c4fabd652fd6686e7c6269b117e729a6f17b" dependencies = [ "clap_builder", "clap_derive", @@ -1604,9 +1768,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.4.2" +version = "4.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2bb9faaa7c2ef94b2743a21f5a29e6f0010dff4caa69ac8e9d6cf8b6fa74da08" +checksum = "c77ed9a32a62e6ca27175d00d29d05ca32e396ea1eb5fb01d8256b669cec7663" dependencies = [ "anstream", "anstyle", @@ -1616,21 +1780,21 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.4.2" +version = "4.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0862016ff20d69b84ef8247369fabf5c008a7417002411897d40ee1f4532b873" +checksum = "cf9804afaaf59a91e75b022a30fb7229a7901f60c755489cc61c9b423b836442" dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] name = "clap_lex" -version = "0.5.1" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd7cc57abe963c6d3b9d8be5b06ba7c8957a930305ca90304f24ef040aa6f961" +checksum = "702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1" [[package]] name = "coarsetime" @@ -1700,7 +1864,7 @@ dependencies = [ "polkadot-core-primitives", "polkadot-parachain-primitives", "polkadot-runtime-common", - "polkadot-runtime-constants 1.0.0", + "polkadot-runtime-constants", "scale-info", "smallvec", "sp-api", @@ -1798,6 +1962,12 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f7144d30dcf0fafbce74250a3963025d8d52177934239851c917d29f1df280c2" +[[package]] +name = "constcat" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd7e35aee659887cbfb97aaf227ac12cad1a9d7c71e55ff3376839ed4e282d08" + [[package]] name = "convert_case" version = "0.4.0" @@ -1938,7 +2108,7 @@ dependencies = [ "cranelift-codegen", "cranelift-entity", "cranelift-frontend", - "itertools", + "itertools 0.10.5", "log", "smallvec", "wasmparser", @@ -2036,7 +2206,7 @@ checksum = "ef2b4b23cddf68b89b8f8069890e8c270d54e2d5fe1b143820234805e4cb17ef" dependencies = [ "generic-array 0.14.7", "rand_core 0.6.4", - "subtle", + "subtle 2.4.1", "zeroize", ] @@ -2048,7 +2218,7 @@ checksum = "cf4c2f4e1afd912bc40bfd6fed5d9dc1f288e0ba01bfcc835cc5bc3eb13efe15" dependencies = [ "generic-array 0.14.7", "rand_core 0.6.4", - "subtle", + "subtle 2.4.1", "zeroize", ] @@ -2063,6 +2233,16 @@ dependencies = [ "typenum", ] +[[package]] +name = "crypto-mac" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4434400df11d95d556bac068ddfedd482915eb18fe8bea89bc80b6e4b1c179e5" +dependencies = [ + "generic-array 0.12.4", + "subtle 1.0.0", +] + [[package]] name = "crypto-mac" version = "0.8.0" @@ -2070,7 +2250,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b584a330336237c1eecd3e94266efb216c56ed91225d634cb2991c5f3fd1aeab" dependencies = [ "generic-array 0.14.7", - "subtle", + "subtle 2.4.1", ] [[package]] @@ -2080,7 +2260,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b1d1a86f49236c215f271d40892d5fc950490551400b02ef360692c29815c714" dependencies = [ "generic-array 0.14.7", - "subtle", + "subtle 2.4.1", ] [[package]] @@ -2103,9 +2283,9 @@ dependencies = [ [[package]] name = "cumulus-pallet-aura-ext" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffc007c63cdec6ce1f8e51cb98cce4631889881b9b9b763823164d362621afa0" +checksum = "071cdddd31e2b0d47a74249675de828857f61eb5f6afa36cfcf63ea6ee2b60f2" dependencies = [ "cumulus-pallet-parachain-system", "frame-support", @@ -2122,9 +2302,9 @@ dependencies = [ [[package]] name = "cumulus-pallet-dmp-queue" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "320bbaf34d68a20f48c20b751df15aad015d43f8089994761ff0234cdfc40e9a" +checksum = "5d1cb9d43cdfeedea19b4f6b8386e5b6264a97938b29f5c711a84e9dc7105ff7" dependencies = [ "cumulus-primitives-core", "frame-support", @@ -2140,9 +2320,9 @@ dependencies = [ [[package]] name = "cumulus-pallet-parachain-system" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0328425da88d976f122d28fdf23b094b6171b3c33adda8789495bb84ff0cece" +checksum = "1eef33ef1ff3b1f3c4b078d6ee92d7473457c169606583f503d5ba89092a933f" dependencies = [ "bytes", "cumulus-pallet-parachain-system-proc-macro", @@ -2155,6 +2335,7 @@ dependencies = [ "log", "parity-scale-codec", "polkadot-parachain-primitives", + "polkadot-runtime-parachains", "scale-info", "sp-core", "sp-externalities", @@ -2171,21 +2352,21 @@ dependencies = [ [[package]] name = "cumulus-pallet-parachain-system-proc-macro" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd7dde6ab318d17f36551556bed0f525cb7c823ab8da06ecd7b65140932da3a4" +checksum = "84baea20d10325b2501b6fa06d4a7902a43d6a6c62c71b5309e75c3ad8ae1441" dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] name = "cumulus-pallet-session-benchmarking" -version = "4.0.0" +version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c5345c0370ae667404209f674b0d1e40c6a476ba4d8fce2cd645fa224394d35" +checksum = "0bf9aaa60ed60ee9cbfc55535a6e2a01353c8308135e24d6c50ba989e518f17d" dependencies = [ "frame-benchmarking", "frame-support", @@ -2198,9 +2379,9 @@ dependencies = [ [[package]] name = "cumulus-pallet-xcm" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45dc968dcf8a41f72b1035f1ba1dc43d3577192e612bf4f19bbc6c34b73c8a1a" +checksum = "4ff03e14a0f5847bdee67a673ee945d3acd5c1d7238d46993208dcbfb774e27f" dependencies = [ "cumulus-primitives-core", "frame-support", @@ -2215,10 +2396,11 @@ dependencies = [ [[package]] name = "cumulus-pallet-xcmp-queue" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4c6c8e354bcfc7ca04f316e1d4ef8e33b17efaae8f15af3ed8d360fb2bf0589" +checksum = "b6af9816dd6564149729ba133c2c984c88fb15c4a2cb66f57be06b9147744e51" dependencies = [ + "bp-xcm-bridge-hub-router", "cumulus-primitives-core", "frame-benchmarking", "frame-support", @@ -2226,8 +2408,10 @@ dependencies = [ "log", "parity-scale-codec", "polkadot-runtime-common", + "polkadot-runtime-parachains", "rand_chacha 0.3.1", "scale-info", + "sp-core", "sp-io", "sp-runtime", "sp-std", @@ -2237,9 +2421,9 @@ dependencies = [ [[package]] name = "cumulus-primitives-core" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63861b6bfd937c5eaf60058147c036caf07c4462d3f5098af24a4a757b64fe29" +checksum = "d40f62add2352287be4cb58b0017a91f61d953e2c6d2777c20d93185558196e1" dependencies = [ "parity-scale-codec", "polkadot-core-primitives", @@ -2255,9 +2439,9 @@ dependencies = [ [[package]] name = "cumulus-primitives-parachain-inherent" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffef2e14f1dc33bd098050209d75c9ab12512498bb498bc8f252f05e3b425853" +checksum = "9d0b1e0e6dcf393dbf05b31122a8c4739acf407a96ec8fd707886f36ee95c355" dependencies = [ "async-trait", "cumulus-primitives-core", @@ -2279,15 +2463,17 @@ dependencies = [ [[package]] name = "cumulus-primitives-utility" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e444b76437537a1e045b3d5e20b10117389eb865c60ce044c88dfd59261bff2" +checksum = "6b4ef704f5a346711d0448f82e57dc5784b186f4bf5e3efbbca0df814b203539" dependencies = [ "cumulus-primitives-core", "frame-support", "log", + "pallet-xcm-benchmarks", "parity-scale-codec", "polkadot-runtime-common", + "polkadot-runtime-parachains", "sp-io", "sp-runtime", "sp-std", @@ -2298,9 +2484,9 @@ dependencies = [ [[package]] name = "cumulus-relay-chain-interface" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67e11d8ee7a514ba2bc309f5b52da520c719250a9622189f40256268db38c9db" +checksum = "af081ef8885042e7ae96e9d1cf32ec6f0616fe4cb78f0325ed7c5accded687fb" dependencies = [ "async-trait", "cumulus-primitives-core", @@ -2317,9 +2503,9 @@ dependencies = [ [[package]] name = "cumulus-test-relay-sproof-builder" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0100a89d8a8924934f861c427cc0e6ec8e5255f79ee8aab5faa87888e2d5b91" +checksum = "59b921a9cb6758faa1c739f135fd87aa1e10a4e86a1c1db3119b396a62287cf2" dependencies = [ "cumulus-primitives-core", "parity-scale-codec", @@ -2339,7 +2525,7 @@ dependencies = [ "byteorder", "digest 0.8.1", "rand_core 0.5.1", - "subtle", + "subtle 2.4.1", "zeroize", ] @@ -2352,7 +2538,7 @@ dependencies = [ "byteorder", "digest 0.9.0", "rand_core 0.5.1", - "subtle", + "subtle 2.4.1", "zeroize", ] @@ -2369,7 +2555,7 @@ dependencies = [ "fiat-crypto", "platforms", "rustc_version", - "subtle", + "subtle 2.4.1", "zeroize", ] @@ -2381,7 +2567,7 @@ checksum = "83fdaf97f4804dcebfa5862639bc9ce4121e82140bec2a987ac5140294865b5b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] @@ -2408,7 +2594,7 @@ dependencies = [ "proc-macro2", "quote", "scratch", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] @@ -2425,7 +2611,7 @@ checksum = "50c49547d73ba8dcfd4ad7325d64c6d5391ff4224d498fc39a6f3f49825a530d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] @@ -2643,14 +2829,14 @@ dependencies = [ "block-buffer 0.10.4", "const-oid", "crypto-common", - "subtle", + "subtle 2.4.1", ] [[package]] name = "directories" -version = "4.0.1" +version = "5.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f51c5d4ddabd36886dd3e1438cb358cdcb0d7c499cb99cb4ac2e38e18b5cb210" +checksum = "9a49173b84e034382284f27f1af4dcbbd231ffa358c0fe316541a7337f376a35" dependencies = [ "dirs-sys", ] @@ -2667,13 +2853,14 @@ dependencies = [ [[package]] name = "dirs-sys" -version = "0.3.7" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6" +checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c" dependencies = [ "libc", + "option-ext", "redox_users", - "winapi", + "windows-sys 0.48.0", ] [[package]] @@ -2695,23 +2882,23 @@ checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] name = "docify" -version = "0.2.1" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "029de870d175d11969524d91a3fb2cbf6d488b853bff99d41cf65e533ac7d9d2" +checksum = "4235e9b248e2ba4b92007fe9c646f3adf0ffde16dc74713eacc92b8bc58d8d2f" dependencies = [ "docify_macros", ] [[package]] name = "docify_macros" -version = "0.2.1" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cac43324656a1b05eb0186deb51f27d2d891c704c37f34de281ef6297ba193e5" +checksum = "47020e12d7c7505670d1363dd53d6c23724f71a90a3ae32ff8eba40de8404626" dependencies = [ "common-path", "derive-syn-parse", @@ -2719,7 +2906,7 @@ dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.31", + "syn 2.0.38", "termcolor", "toml 0.7.6", "walkdir", @@ -2790,15 +2977,6 @@ dependencies = [ "spki 0.7.2", ] -[[package]] -name = "ed25519" -version = "1.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91cff35c70bba8a626e3185d8cd48cc11b5437e1a5bcd15b9b5fa3c64b6dfee7" -dependencies = [ - "signature 1.6.4", -] - [[package]] name = "ed25519" version = "2.2.2" @@ -2809,20 +2987,6 @@ dependencies = [ "signature 2.1.0", ] -[[package]] -name = "ed25519-dalek" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c762bae6dcaf24c4c84667b8579785430908723d5c889f469d76a41d59cc7a9d" -dependencies = [ - "curve25519-dalek 3.2.0", - "ed25519 1.5.3", - "rand 0.7.3", - "serde", - "sha2 0.9.9", - "zeroize", -] - [[package]] name = "ed25519-dalek" version = "2.0.0" @@ -2830,7 +2994,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7277392b266383ef8396db7fdeb1e77b6c52fed775f5df15bb24f35b72156980" dependencies = [ "curve25519-dalek 4.0.0", - "ed25519 2.2.2", + "ed25519", "rand_core 0.6.4", "serde", "sha2 0.10.7", @@ -2875,7 +3039,7 @@ dependencies = [ "pkcs8 0.9.0", "rand_core 0.6.4", "sec1 0.3.0", - "subtle", + "subtle 2.4.1", "zeroize", ] @@ -2894,7 +3058,7 @@ dependencies = [ "pkcs8 0.10.2", "rand_core 0.6.4", "sec1 0.7.3", - "subtle", + "subtle 2.4.1", "zeroize", ] @@ -2933,7 +3097,7 @@ checksum = "5e9a1f9f7d83e59740248a6e14ecf93929ade55027844dfcea78beafccc15745" dependencies = [ "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] @@ -2944,7 +3108,7 @@ checksum = "c2ad8cef1d801a4686bfd8919f0b30eac4c8e48968c437a6405ded4fb5272d2b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] @@ -3047,29 +3211,17 @@ dependencies = [ "quote", ] -[[package]] -name = "expander" -version = "0.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3774182a5df13c3d1690311ad32fbe913feef26baba609fa2dd5f72042bd2ab6" -dependencies = [ - "blake2", - "fs-err", - "proc-macro2", - "quote", -] - [[package]] name = "expander" version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5f86a749cf851891866c10515ef6c299b5c69661465e9c3bbe7e07a2b77fb0f7" dependencies = [ - "blake2", + "blake2 0.10.6", "fs-err", "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] @@ -3140,7 +3292,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d013fc25338cc558c5c2cfbad646908fb23591e2404481826742b651c9af7160" dependencies = [ "rand_core 0.6.4", - "subtle", + "subtle 2.4.1", ] [[package]] @@ -3150,7 +3302,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" dependencies = [ "rand_core 0.6.4", - "subtle", + "subtle 2.4.1", ] [[package]] @@ -3243,9 +3395,9 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] name = "fork-tree" -version = "9.0.0" +version = "11.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4797e9270d3315a1724880ca63eaaab8f11cccbd76943a0f5c6ace9621016b47" +checksum = "1c2d0a4310dcf0e5cce78e35e60dc2fda80ef61c8f8fc382e685dfc24fcf5db9" dependencies = [ "parity-scale-codec", ] @@ -3267,9 +3419,9 @@ checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa" [[package]] name = "frame-benchmarking" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "949ba5b5c9d552c37d7ad39bd837394c1d21727281ef32882539bc2ec6687b2d" +checksum = "3dd4946d63eab00d899f08a7e74e965cc6785c2298efaea6a2752905f4810407" dependencies = [ "frame-support", "frame-support-procedural", @@ -3293,21 +3445,21 @@ dependencies = [ [[package]] name = "frame-election-provider-solution-type" -version = "10.0.0" +version = "12.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ad4e68676c4d0160a7d9134f2376c29fd927844bff2aee1b35dd10d295d2856" +checksum = "03911cf3675af64252a6de7b4f383eafa80d5ea5830184e7a0739aeb0b95272d" dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] name = "frame-election-provider-support" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e605b5c5ce6abeba8db09dda9ad74a6d781e5c5e722670096df48917f0a33d26" +checksum = "ebad507fb038db2f7ce982d30bd9828a59785c9a4780348d59cd6cceaee80d1a" dependencies = [ "frame-election-provider-solution-type", "frame-support", @@ -3323,9 +3475,9 @@ dependencies = [ [[package]] name = "frame-executive" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "382016f6286f2b05a1f65dd97509bc70afd59e26dc8c7ab0126e4220c19abb58" +checksum = "2dda2c20ea3267ee20c9a5482f320236510c4ade6aec1dd930cb57dc5651c64f" dependencies = [ "frame-support", "frame-system", @@ -3354,11 +3506,10 @@ dependencies = [ [[package]] name = "frame-remote-externalities" -version = "0.30.0" +version = "0.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58e4661884c0ac3f2391cfaf4b210af3fdf89216e8e245c843798de23d182a62" +checksum = "a30013df51f4d4e58472c4fecdbfeb141234ece5f6355e5b3a3e51d3f87d452d" dependencies = [ - "async-recursion", "futures", "indicatif", "jsonrpsee", @@ -3377,9 +3528,9 @@ dependencies = [ [[package]] name = "frame-support" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "609125451f5ffb1675998e07e64e05e4b3dad330b1537952ace5897d6ed24f0a" +checksum = "023504bbdd0e8d1ebe3d9d289b009337cdb9a24c5e74615ffd7b188aa1664c2d" dependencies = [ "aquamarine", "bitflags 1.3.2", @@ -3418,52 +3569,53 @@ dependencies = [ [[package]] name = "frame-support-procedural" -version = "18.0.0" +version = "20.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd22a1ed96e765ec763bbaef2089ed8bb5f8539df40181ddac57be7be74685c7" +checksum = "1d6bc383298353ff2790ac1a301262c21ac196dbc26ef67a2213c46524a06dd1" dependencies = [ "Inflector", "cfg-expr", "derive-syn-parse", "expander 2.0.0", "frame-support-procedural-tools", - "itertools", + "itertools 0.10.5", "macro_magic", "proc-macro-warning", "proc-macro2", "quote", - "syn 2.0.31", + "sp-core-hashing", + "syn 2.0.38", ] [[package]] name = "frame-support-procedural-tools" -version = "7.0.0" +version = "9.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82858452d9332de312f5ff411fd8aecee2323a344b241078f565b8c3c2e47d38" +checksum = "b3ac1266522a8c9a2d2d26d205ec3028b88582d5f3cd5cbc75d0ec8271d197b7" dependencies = [ "frame-support-procedural-tools-derive", "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] name = "frame-support-procedural-tools-derive" -version = "8.0.0" +version = "10.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4c7a09be6bd676fc01c5dd5ba057ba1f7e492e071d4a5fd7c579d99a96093d6" +checksum = "d9c078db2242ea7265faa486004e7fd8daaf1a577cfcac0070ce55d926922883" dependencies = [ "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] name = "frame-system" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40dc2f4182ad4c05275b0d3f38e3e74bd1cd17231f28ce1e879177fd9829887c" +checksum = "57e316407c45a5093c833966a906301aa0dcbd05048061cd9cde2548d017bfd9" dependencies = [ "cfg-if", "frame-support", @@ -3481,9 +3633,9 @@ dependencies = [ [[package]] name = "frame-system-benchmarking" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "097cc1f91dc52a648c6b983ebf7aa75bf395b038354772b47e190ecd4caac9a8" +checksum = "b5b1388055d29a7a1c4d41b1623d3fcbc9d7f31d17abe04500b270b26901d926" dependencies = [ "frame-benchmarking", "frame-support", @@ -3497,9 +3649,9 @@ dependencies = [ [[package]] name = "frame-system-rpc-runtime-api" -version = "21.0.0" +version = "23.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27a0f4c5811e962938b8f93787ae907eacf8312f6797d5efd53fd9d1f4590562" +checksum = "17572a34fd866ad6cab6977a2c30b38645e0a499b3486de00ae9103f7002d6d3" dependencies = [ "parity-scale-codec", "sp-api", @@ -3507,9 +3659,9 @@ dependencies = [ [[package]] name = "frame-try-runtime" -version = "0.29.0" +version = "0.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6becaab3f4648f9c5eeb8eb270614b7e4b5fd7d1deccab1d4a86cb41f8fb06d4" +checksum = "f082e770275f9b46ddf46b09bc7a993f84db691c39d9e4d038ac07443cb17a18" dependencies = [ "frame-support", "parity-scale-codec", @@ -3612,7 +3764,7 @@ checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" dependencies = [ "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] @@ -3814,7 +3966,7 @@ checksum = "5dfbfb3a6cfbd390d5c9564ab283a0349b9b9fcd46a706c1eb10e0db70bfbac7" dependencies = [ "ff 0.12.1", "rand_core 0.6.4", - "subtle", + "subtle 2.4.1", ] [[package]] @@ -3825,7 +3977,7 @@ checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" dependencies = [ "ff 0.13.0", "rand_core 0.6.4", - "subtle", + "subtle 2.4.1", ] [[package]] @@ -3885,6 +4037,19 @@ name = "hashbrown" version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a" +dependencies = [ + "ahash 0.8.3", + "allocator-api2", +] + +[[package]] +name = "hashlink" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8094feaf31ff591f651a2664fb9cfd92bba7a60ce3197265e9482ebe753c8f7" +dependencies = [ + "hashbrown 0.14.0", +] [[package]] name = "heck" @@ -4354,6 +4519,15 @@ dependencies = [ "either", ] +[[package]] +name = "itertools" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" +dependencies = [ + "either", +] + [[package]] name = "itoa" version = "1.0.9" @@ -4545,23 +4719,14 @@ dependencies = [ ] [[package]] -name = "kusama-runtime-constants" +name = "keystream" version = "1.0.0" -dependencies = [ - "frame-support", - "polkadot-primitives", - "polkadot-runtime-common", - "smallvec", - "sp-core", - "sp-runtime", - "sp-weights", -] +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c33070833c9ee02266356de0c43f723152bd38bd96ddf52c82b3af10c9138b28" [[package]] name = "kusama-runtime-constants" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a87fa26eba25489f17e493dd50a8b8f49448432bfd98ec06f730c83034a154e" +version = "1.0.0" dependencies = [ "frame-support", "polkadot-primitives", @@ -4633,6 +4798,12 @@ dependencies = [ "winapi", ] +[[package]] +name = "libm" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" + [[package]] name = "libp2p" version = "0.51.3" @@ -4762,7 +4933,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "276bb57e7af15d8f100d3c11cbdd32c6752b7eef4ba7a18ecf464972c07abcce" dependencies = [ "bs58 0.4.0", - "ed25519-dalek 2.0.0", + "ed25519-dalek", "log", "multiaddr", "multihash", @@ -5100,7 +5271,7 @@ checksum = "5be9b9bb642d8522a44d533eab56c16c738301965504753b03ad1de3425d5451" dependencies = [ "crunchy", "digest 0.9.0", - "subtle", + "subtle 2.4.1", ] [[package]] @@ -5183,6 +5354,18 @@ version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "57bcfdad1b858c2db7c38303a6d2ad4dfaf5eb53dfeb0910128b2c26d6158503" +[[package]] +name = "lioness" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ae926706ba42c425c9457121178330d75e273df2e82e28b758faf3de3a9acb9" +dependencies = [ + "arrayref", + "blake2 0.8.1", + "chacha", + "keystream", +] + [[package]] name = "lock_api" version = "0.4.10" @@ -5257,50 +5440,50 @@ dependencies = [ [[package]] name = "macro_magic" -version = "0.4.2" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aee866bfee30d2d7e83835a4574aad5b45adba4cc807f2a3bbba974e5d4383c9" +checksum = "e03844fc635e92f3a0067e25fa4bf3e3dbf3f2927bf3aa01bb7bc8f1c428949d" dependencies = [ "macro_magic_core", "macro_magic_macros", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] name = "macro_magic_core" -version = "0.4.2" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e766a20fd9c72bab3e1e64ed63f36bd08410e75803813df210d1ce297d7ad00" +checksum = "468155613a44cfd825f1fb0ffa532b018253920d404e6fca1e8d43155198a46d" dependencies = [ "const-random", "derive-syn-parse", "macro_magic_core_macros", "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] name = "macro_magic_core_macros" -version = "0.4.2" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c12469fc165526520dff2807c2975310ab47cf7190a45b99b49a7dc8befab17b" +checksum = "9ea73aa640dc01d62a590d48c0c3521ed739d53b27f919b25c3551e233481654" dependencies = [ "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] name = "macro_magic_macros" -version = "0.4.2" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8fb85ec1620619edf2984a7693497d4ec88a9665d8b87e942856884c92dbf2a" +checksum = "ef9d79ae96aaba821963320eb2b6e34d17df1e5a83d8a1985c29cc5be59577b3" dependencies = [ "macro_magic_core", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] @@ -5458,6 +5641,31 @@ dependencies = [ "windows-sys 0.48.0", ] +[[package]] +name = "mixnet" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "daa3eb39495d8e2e2947a1d862852c90cc6a4a8845f8b41c8829cb9fcc047f4a" +dependencies = [ + "arrayref", + "arrayvec 0.7.4", + "bitflags 1.3.2", + "blake2 0.10.6", + "c2-chacha", + "curve25519-dalek 4.0.0", + "either", + "hashlink", + "lioness", + "log", + "parking_lot 0.12.1", + "rand 0.8.5", + "rand_chacha 0.3.1", + "rand_distr", + "subtle 2.4.1", + "thiserror", + "zeroize", +] + [[package]] name = "mockall" version = "0.11.4" @@ -5766,6 +5974,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f30b0abd723be7e2ffca1272140fac1a2f084c77ec3e123c192b66af1ee9e6c2" dependencies = [ "autocfg", + "libm", ] [[package]] @@ -5847,11 +6056,17 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" +[[package]] +name = "option-ext" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" + [[package]] name = "orchestra" -version = "0.0.5" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "227585216d05ba65c7ab0a0450a3cf2cbd81a98862a54c4df8e14d5ac6adb015" +checksum = "46d78e1deb2a8d54fc1f063a544130db4da31dfe4d5d3b493186424910222a76" dependencies = [ "async-trait", "dyn-clonable", @@ -5866,12 +6081,13 @@ dependencies = [ [[package]] name = "orchestra-proc-macro" -version = "0.0.5" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2871aadd82a2c216ee68a69837a526dfe788ecbe74c4c5038a6acdbff6653066" +checksum = "d035b1f968d91a826f2e34a9d6d02cb2af5aa7ca39ebd27922d850ab4b2dd2c6" dependencies = [ - "expander 0.0.6", - "itertools", + "expander 2.0.0", + "indexmap 2.0.0", + "itertools 0.11.0", "petgraph", "proc-macro-crate", "proc-macro2", @@ -5912,11 +6128,11 @@ dependencies = [ [[package]] name = "pallet-alliance" -version = "22.0.0" +version = "24.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e332ac5e332a88494488e502425aab59fbb8aaa96068c5ec75020b0ddd5eecc8" +checksum = "a3526a94a8aca9d98f06eb8ee76e1bf65f80fd23c278b25e6537a23b51392a85" dependencies = [ - "array-bytes", + "array-bytes 6.1.0", "frame-benchmarking", "frame-support", "frame-system", @@ -5934,9 +6150,9 @@ dependencies = [ [[package]] name = "pallet-asset-conversion" -version = "5.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1661ad646244fd155fae26799b9f12246aac8a18ed785550ceea6e4ac25cfbdc" +checksum = "dd7f0ae643c877d9a36d7335bcda6614861b846a60f448da8cf3276d4042ef33" dependencies = [ "frame-benchmarking", "frame-support", @@ -5953,9 +6169,9 @@ dependencies = [ [[package]] name = "pallet-asset-conversion-tx-payment" -version = "5.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e47e76551d0029aa4e8d28d0108c4575fae812ff2c9e7a7fd79890a4c7a8223f" +checksum = "64952179a5a409dead964a387c86a29d16d40a34cf54bf88e4d74ffdcdddf7a6" dependencies = [ "frame-support", "frame-system", @@ -5967,11 +6183,27 @@ dependencies = [ "sp-std", ] +[[package]] +name = "pallet-asset-rate" +version = "4.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "740aebbcfefe8528f56ff8a339f810520a28df3ec159d016ef719aaa9f131af4" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-runtime", + "sp-std", +] + [[package]] name = "pallet-asset-tx-payment" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64b0aea073ae2b627ddb7e775abb7872df8efb7fabd7c50dd05d3ca6ef0c72a4" +checksum = "028e30633114612160fc4e7add46504790abb3780db79eae1efae98c034dca0b" dependencies = [ "frame-benchmarking", "frame-support", @@ -5988,9 +6220,9 @@ dependencies = [ [[package]] name = "pallet-assets" -version = "24.0.0" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2efdbd9727983844e1b82da41870829c0fd5d47ccb700fb27d734b3823d44ae" +checksum = "09b91035c82dc9e64eaf52f3f6a39f4674bcb56333553882d6ff5d12500a9182" dependencies = [ "frame-benchmarking", "frame-support", @@ -6005,9 +6237,9 @@ dependencies = [ [[package]] name = "pallet-aura" -version = "22.0.0" +version = "24.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d2cf20aa88b42b71e70d254db752673e0a67f4cefd070b33c1e42d8b7d25d9a" +checksum = "04fbef67cf62445b7fd8e68241e6b71d9fb8c77abb3d52259eebf525a4cd5586" dependencies = [ "frame-support", "frame-system", @@ -6023,9 +6255,9 @@ dependencies = [ [[package]] name = "pallet-authority-discovery" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a335fdce40d450adf27def590d1f1c1f42a49f6f91420063ae2391b9eb88b4d4" +checksum = "fda272a66bbf1602579efcede67606ac43cda6d462ad551c527d8cadc871813d" dependencies = [ "frame-support", "frame-system", @@ -6040,9 +6272,9 @@ dependencies = [ [[package]] name = "pallet-authorship" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8cda9086337d01cdb509422cbe7290aa17edab7bf5677218faae30dab23205a6" +checksum = "2d38eab59f7d15fe43c81fc3cd92f4c1f895ca6d0efb74fc2a6d6d7d3d34d413" dependencies = [ "frame-support", "frame-system", @@ -6055,9 +6287,9 @@ dependencies = [ [[package]] name = "pallet-babe" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37d7e474e0f5e9987b315dabe11269520cec98b44131e51a342e6a9d3a3d3f36" +checksum = "6b12430ca4b79b27231acb1ff3f99d33d6503fbeba40bfc8380e42d59b6d52b0" dependencies = [ "frame-benchmarking", "frame-support", @@ -6080,9 +6312,9 @@ dependencies = [ [[package]] name = "pallet-bags-list" -version = "22.0.0" +version = "24.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd87d03bd1aee46275df25838fc5ba8c01fdb8df8a6860daa3d0f0b973a74ace" +checksum = "5d49c4448e51a5c64d63a4263aebeb2dfb90dabb48746e178b337fb7f533d45f" dependencies = [ "aquamarine", "docify", @@ -6103,9 +6335,9 @@ dependencies = [ [[package]] name = "pallet-balances" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0486a52507072bd738dc851acf7b42def3645db10777f93dccdaa5933e41269b" +checksum = "9de2915b425ae77d63ba25c194780599b7be25307454a138cfb316c16d001e68" dependencies = [ "frame-benchmarking", "frame-support", @@ -6119,9 +6351,9 @@ dependencies = [ [[package]] name = "pallet-beefy" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0a7b81cbf5d642ee2881f7860390e70a290e1f94afbc3b27d59f137e8fdeb69" +checksum = "8563fce9fdb0e557015c0b58ed7ea7d5c1a4a1ddb1d27bf56e040d6bbf5c79e9" dependencies = [ "frame-support", "frame-system", @@ -6140,11 +6372,11 @@ dependencies = [ [[package]] name = "pallet-beefy-mmr" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60cca2fe7df196e41e2d43fcb97a76f68ff76dae38861b60e837d1a86ea9aa1a" +checksum = "ee3ed75c348ba23064cea40dab623719ef348bfe67ea39f195f82e2e7a7d0115" dependencies = [ - "array-bytes", + "array-bytes 6.1.0", "binary-merkle-tree", "frame-support", "frame-system", @@ -6166,9 +6398,9 @@ dependencies = [ [[package]] name = "pallet-bounties" -version = "22.0.0" +version = "24.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf8df1ab55bac70ea7a99794d7bace2a311cc3049654aef3965516b181654b88" +checksum = "74c0fb83c88f217e5bfe07a69a6d8a6c32d01241159ab81705ba5d4c3e24aaab" dependencies = [ "frame-benchmarking", "frame-support", @@ -6185,9 +6417,9 @@ dependencies = [ [[package]] name = "pallet-bridge-grandpa" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a15ac3a6a500cf11ec838450054d26c330ea9dc792a5a7c2fc469d69e31e8816" +checksum = "1fc5083b92333f5ad64eb97d7e54978bd53c9ac8de8ac3c4056585fd236254d0" dependencies = [ "bp-header-chain", "bp-runtime", @@ -6207,9 +6439,9 @@ dependencies = [ [[package]] name = "pallet-bridge-messages" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6c4b5a64fd5ea73836f03c04c290ec66b53aca8f5c714bd805508a6e84ef904" +checksum = "c8e61922a3b67f17508e27ab2bba9dd03d4b2e6878d8c0819f7e155544443cfd" dependencies = [ "bp-messages", "bp-runtime", @@ -6227,9 +6459,9 @@ dependencies = [ [[package]] name = "pallet-bridge-parachains" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3c179f0b5b698b0f643c7eac740a9e3bdea6561a3539aa45930f074f1bc1c8c" +checksum = "88703f22433e3bc5ba69f89b6002fd28c74753a1ab425117f103e91fec05696a" dependencies = [ "bp-header-chain", "bp-parachains", @@ -6249,9 +6481,9 @@ dependencies = [ [[package]] name = "pallet-bridge-relayers" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81ec236d325f1d9c5d24023088181449ca9f41e9351a2be25b2f82796be16450" +checksum = "04af803c4fb3e48a83325bb4781505fc5268e364f488116cf6718ddbbe57937d" dependencies = [ "bp-messages", "bp-relayers", @@ -6270,9 +6502,9 @@ dependencies = [ [[package]] name = "pallet-child-bounties" -version = "22.0.0" +version = "24.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03417c311cb707b1f0994397856e9a3611dd358f0caf67ccff91ac4ae45a005b" +checksum = "2246ce705aee37f9b6ad818e3646910d31ef4191e1c234bff054a710ef8d8a38" dependencies = [ "frame-benchmarking", "frame-support", @@ -6290,9 +6522,9 @@ dependencies = [ [[package]] name = "pallet-collator-selection" -version = "4.0.0" +version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2716f12bd4d379080b8d6de82c8293f6ba2a4b4268fdf690dd71e68d52ad4ab9" +checksum = "66c093c8867dbdb540da33076566605320b2eda78da5062d3d954f05862db18d" dependencies = [ "frame-benchmarking", "frame-support", @@ -6310,9 +6542,9 @@ dependencies = [ [[package]] name = "pallet-collective" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2afbe5f8793d4d01e88e39ad02c656333bafabd86f87e5699f2b4022d8057eaa" +checksum = "dddb120b5ee520146617a8c49b4d4c980ba9188918d43085539bf78815e7ec1d" dependencies = [ "frame-benchmarking", "frame-support", @@ -6328,9 +6560,9 @@ dependencies = [ [[package]] name = "pallet-conviction-voting" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "520968f141a44b3dfd73ce4be80de07010c3847460bfbc5fb726d329f765f903" +checksum = "1c8ff7512a377b708f71772e5169550cebc8f74bc8c26553015698eaa0975356" dependencies = [ "assert_matches", "frame-benchmarking", @@ -6346,9 +6578,9 @@ dependencies = [ [[package]] name = "pallet-core-fellowship" -version = "7.0.0" +version = "9.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13aeaa8fe18020ff64792b883e1be6cadf695556e44279893216cb48bc0d7270" +checksum = "0c52f9f5ce35127f55972845c49604309e8df81facbc34560abc680df5515383" dependencies = [ "frame-benchmarking", "frame-support", @@ -6365,9 +6597,9 @@ dependencies = [ [[package]] name = "pallet-democracy" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99d44914750d93d466020b7d90c1170ce3e3b1fe3876df428749f4896a37bb5a" +checksum = "ed9f24ad18db2eeae0f03ba1743a82aaf300e0bbd6cdcb1119b0da93eef3d77f" dependencies = [ "frame-benchmarking", "frame-support", @@ -6384,9 +6616,9 @@ dependencies = [ [[package]] name = "pallet-election-provider-multi-phase" -version = "22.0.0" +version = "24.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ed40f39a03e6734c60d760e6b7ad5f1e115ac1d36f02a3111e60421b9ba0d2e" +checksum = "481178ef558a9409d9c12fc01279b517e3a0a7797664e89761447dba3a182ce6" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -6408,9 +6640,9 @@ dependencies = [ [[package]] name = "pallet-election-provider-support-benchmarking" -version = "22.0.0" +version = "24.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56b31f394ea662fa9199c89c5712046fbd18e52211937332016b359ac81aef69" +checksum = "b5ab6413ec88b64acf849a202795c67940dc3bcc846ce03bd0893b90e2119ecf" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -6423,9 +6655,9 @@ dependencies = [ [[package]] name = "pallet-elections-phragmen" -version = "24.0.0" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1373439465e6110ed0ab60905660d097df2d05736e008d6bc1d415b5fdb2386a" +checksum = "021da1d28b604b3654f895987dcb1ccb47d73102b31bc84c8f784bed261f01d8" dependencies = [ "frame-benchmarking", "frame-support", @@ -6443,9 +6675,9 @@ dependencies = [ [[package]] name = "pallet-fast-unstake" -version = "22.0.0" +version = "24.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87789ed95833afcface11a8048708dafa35951308d7de5e9aed666e8044b3cc6" +checksum = "05634a197738c999a3032393916182fedccce13cb063fc330ee9bf810cd53b49" dependencies = [ "docify", "frame-benchmarking", @@ -6463,11 +6695,11 @@ dependencies = [ [[package]] name = "pallet-glutton" -version = "9.0.0" +version = "11.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06e705170005c5ebf054dae6252aea11082231e1d45ef4f54794313183b71bbc" +checksum = "9c3686506ac15f9b0442f5dffe496b68fca391116acfb6baef65524bb08c94f4" dependencies = [ - "blake2", + "blake2 0.10.6", "frame-benchmarking", "frame-support", "frame-system", @@ -6482,9 +6714,9 @@ dependencies = [ [[package]] name = "pallet-grandpa" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b77a81a40b8f2cf6dcd49eaa69b882c1ebb651a381e959a62a875d782cac856a" +checksum = "b87c7f4cd94a526054dfebf7a84fbcaf6385033defa246ad83e321e71f8c5a92" dependencies = [ "frame-benchmarking", "frame-support", @@ -6506,9 +6738,9 @@ dependencies = [ [[package]] name = "pallet-identity" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7c9a8b0a02ae7650a8fd188b26fa0852152021fafb5da6d69e1d17f9d03e714" +checksum = "735bf6c19d30299e2d448797170a67d41c6a8ba593fb3a71ce4e11d3b85c60e9" dependencies = [ "enumflags2", "frame-benchmarking", @@ -6523,9 +6755,9 @@ dependencies = [ [[package]] name = "pallet-im-online" -version = "22.0.0" +version = "24.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70314914e290dbdb52adea50bf3e15965ca7b72c5a02d35dd6b9ded60bfb4877" +checksum = "59eb1c68cc6b4700ad1d2a81ba847ff7b37406aa0326b7716825155d3f985762" dependencies = [ "frame-benchmarking", "frame-support", @@ -6544,9 +6776,9 @@ dependencies = [ [[package]] name = "pallet-indices" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b23c5b95f9ef2fd17c01cc6948c88aa9e263a49a90e1a5665798d744e5f8956" +checksum = "0893ae7f2211010e92bf57fe31f18e2223a2f97f6d6393aa7192e283ec520beb" dependencies = [ "frame-benchmarking", "frame-support", @@ -6562,9 +6794,9 @@ dependencies = [ [[package]] name = "pallet-membership" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0a055f189d360aca0919b65b91ab0b701e6bac2143ac46a285a9faf9ec7208e" +checksum = "2e1504034588eb733f8ce98b77757e9a7390662313aa133ef1e3b9fbb94359c7" dependencies = [ "frame-benchmarking", "frame-support", @@ -6580,9 +6812,9 @@ dependencies = [ [[package]] name = "pallet-message-queue" -version = "26.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "faa98dc8e920cf04f55c8d5ee878477a5be826952b99fe106e72c847c3391d0e" +checksum = "0776bf51d03bd746159063fa1357234feb85114273d40ef3aa3efba65d091eb4" dependencies = [ "frame-benchmarking", "frame-support", @@ -6600,9 +6832,9 @@ dependencies = [ [[package]] name = "pallet-mmr" -version = "22.0.0" +version = "24.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7596f59b17e1ee05040d4fc0070d3ae781de34e847be95423d7f5310c3a9d63" +checksum = "e2b9789cac80b48e9427724d0b400f984fb844fc711fc2dd2d0cdccdedda7169" dependencies = [ "frame-benchmarking", "frame-support", @@ -6619,9 +6851,9 @@ dependencies = [ [[package]] name = "pallet-multisig" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e44176821dc2c2caface4303cfac8e8aa18ecf2bb15504f4a460abd2cb52dcd" +checksum = "fea2785a0bfb1884a8283bf65010bb7189c8fce958ced9947a8c71c148ef199f" dependencies = [ "frame-benchmarking", "frame-support", @@ -6636,9 +6868,9 @@ dependencies = [ [[package]] name = "pallet-nft-fractionalization" -version = "5.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3160a1cbdc2a28363bd2ff4cba72ccb96a98cbb86a81ab694b4e99b79a62fcee" +checksum = "959fb2e68e4421650538d9b64a3243f0a0cdc8962f35f749af18bf9b70f7253d" dependencies = [ "frame-benchmarking", "frame-support", @@ -6654,9 +6886,9 @@ dependencies = [ [[package]] name = "pallet-nfts" -version = "17.0.0" +version = "19.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f3650227e8678336e93b679e9eeafdb1e0ff04bffcca148c00e3fb906ff5b08" +checksum = "999a30c5861a83a6ab38a564df99f976f0bc6bf54b03620abc568bba5f7b4834" dependencies = [ "enumflags2", "frame-benchmarking", @@ -6673,9 +6905,9 @@ dependencies = [ [[package]] name = "pallet-nfts-runtime-api" -version = "9.0.0" +version = "11.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4de7f6a1613d3391121afd73548f4f37bea22cd7d5ce269db83a497ccc286c86" +checksum = "f1a64c725e28fdf7d2512c1ce8eab8ba05fc7211fb864ee6c3d2300a2b3bd381" dependencies = [ "pallet-nfts", "parity-scale-codec", @@ -6684,9 +6916,9 @@ dependencies = [ [[package]] name = "pallet-nis" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "422715b4239456d73a78bae69a7411836c54bda35f69753524eff601ca910102" +checksum = "7aa7ec891b7f1801a405095a2ad2c70eef94d2abe86792eee54794de23cbd035" dependencies = [ "frame-benchmarking", "frame-support", @@ -6701,9 +6933,9 @@ dependencies = [ [[package]] name = "pallet-nomination-pools" -version = "20.0.0" +version = "22.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69ab7e472a983273ad52af65ac431769fda82a272e54631e451a47ea99c24b15" +checksum = "1896f33fff0c41934532fb492078d78b784f301ddd81e5041dd8e8279e652c49" dependencies = [ "frame-support", "frame-system", @@ -6721,9 +6953,9 @@ dependencies = [ [[package]] name = "pallet-nomination-pools-benchmarking" -version = "21.0.0" +version = "23.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61f6f692dd7cab2ab8aeafe3a9dce645afe818712df62ac3ae432696731bb509" +checksum = "b27cbf4a47cc79862d254f16b38c68fd2dda087ce58e7c0021859d89718e865a" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -6742,9 +6974,9 @@ dependencies = [ [[package]] name = "pallet-nomination-pools-runtime-api" -version = "18.0.0" +version = "20.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48f5eb57e511e2d084b4d3b00b70cb36d0b8474222a86b2195da6b61503ac6f8" +checksum = "65c256cc530a19ff614f2af9b5c95ae9aa777a2bf1542aa455ae65e842f8c924" dependencies = [ "pallet-nomination-pools", "parity-scale-codec", @@ -6754,9 +6986,9 @@ dependencies = [ [[package]] name = "pallet-offences" -version = "22.0.0" +version = "24.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa80a36a4d7d42d2aab354242dbd37c1d253f30255be2b3edc357dc9f2ad7916" +checksum = "f3fd14c02ed4b689652826aa93284aada5a2cf859df3cc34ad88b2fd410a8c50" dependencies = [ "frame-support", "frame-system", @@ -6772,9 +7004,9 @@ dependencies = [ [[package]] name = "pallet-offences-benchmarking" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07b4aabb1ea386486bd4a42ab3a067fdffae6716876d59c0e3fa1cf3e1040201" +checksum = "b1b3ae77cfb16f0495372853d42a44e34ab7b183bd8996a8cee91715f783ff49" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -6797,9 +7029,9 @@ dependencies = [ [[package]] name = "pallet-preimage" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e00ea296ac3f7f543a409e177b771459b14c76b33145d1374eabf984ebc34f14" +checksum = "a1ed40405c758b52375cfc75aac74f10ff9bb9480569e5cfca42682e2db6c387" dependencies = [ "frame-benchmarking", "frame-support", @@ -6815,9 +7047,9 @@ dependencies = [ [[package]] name = "pallet-proxy" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "186b0aa4c542217f8c6e0afaa1f5d9aea257019af6d426f591c2764e7b71d3c8" +checksum = "0fbc0b550f5cbbad51f9daf795cc7046d40bbff256dae8d6072fd710ab40fd3a" dependencies = [ "frame-benchmarking", "frame-support", @@ -6831,9 +7063,9 @@ dependencies = [ [[package]] name = "pallet-ranked-collective" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c8cf8915fcdb60a6dffd6cc20eb4bf2f95bd1f9424f598d1e99d47be0d84fa0" +checksum = "8181da7fd6b9adf4f8641c5bcb156cd209e3226eea87ee9f9b1ac41f8e37c714" dependencies = [ "frame-benchmarking", "frame-support", @@ -6850,9 +7082,9 @@ dependencies = [ [[package]] name = "pallet-recovery" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8c78735503c504465acf94b6ea3174f1a046bbbd8246d357fee0ed422e8a26b" +checksum = "889fddd16cfdea09c2ae4dc8e9f67a1ec4b8ac680412cffb772fa572489ec687" dependencies = [ "frame-benchmarking", "frame-support", @@ -6866,9 +7098,9 @@ dependencies = [ [[package]] name = "pallet-referenda" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99bdb6d7fcdda9c4a85efbbc5ea5499e07e339491d25ac913649c196a78b6d31" +checksum = "592ff9873af379bf55e835072afd787cd6435204213ac484e86345b026f4ae4e" dependencies = [ "assert_matches", "frame-benchmarking", @@ -6886,9 +7118,9 @@ dependencies = [ [[package]] name = "pallet-salary" -version = "8.0.0" +version = "10.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "477ba8329b1984377cd94d62b869ce976de2176c3126f58aa6efdcec808b236c" +checksum = "22ac035a8cccd7297ad03ad8ebe372b01f451aaafa9b243f5ce59b061d0806b1" dependencies = [ "frame-benchmarking", "frame-support", @@ -6905,9 +7137,9 @@ dependencies = [ [[package]] name = "pallet-scheduler" -version = "24.0.0" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0cfdb4f02689fb9c4f22190f60be1acc5e6553d1c89b44272509bea2ebd1855a" +checksum = "3508a51d359c6640577feead9dc00667f38cec385baad77b636c61ff746ffe24" dependencies = [ "docify", "frame-benchmarking", @@ -6924,9 +7156,9 @@ dependencies = [ [[package]] name = "pallet-session" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4f6f04ae97b311aa20a91a8b0bf92f7e231cff993547d3e874c3e60020cfa96" +checksum = "768a6fb5333efc2bd2a3538c1d6ffa4178398660d4e3be89f2eb82d4e9088ae6" dependencies = [ "frame-support", "frame-system", @@ -6947,9 +7179,9 @@ dependencies = [ [[package]] name = "pallet-session-benchmarking" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a370a07dbfaa94bcc5e01f4e9cda1ad6fbca019bcb0a172a2ee26f61e736dbab" +checksum = "5401cee669394e86a15851ace4ad60ef1b4d656f11ff22c83d8004051279ea59" dependencies = [ "frame-benchmarking", "frame-support", @@ -6965,9 +7197,9 @@ dependencies = [ [[package]] name = "pallet-society" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "548b95cf82dd9caa346469a679cdef63a34d7105a009e33eb3930f41a70b2b64" +checksum = "36959be2c7f810ba6b8ece8cfe2ee515774c1c776f1ed0bebf3b9e8068f6a435" dependencies = [ "frame-benchmarking", "frame-support", @@ -6984,9 +7216,9 @@ dependencies = [ [[package]] name = "pallet-staking" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66b9b137b78565e4012edf20a3c9fd10fa03e3b857dd3999239454da5d4d2431" +checksum = "bed335abd32d357dd9750dae7fb87b01dfd8fe69faadcb94a6e0e0a43057d923" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -7008,21 +7240,21 @@ dependencies = [ [[package]] name = "pallet-staking-reward-curve" -version = "8.0.0" +version = "10.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75b1438535c3430a1c3de1d4c92d9a2c0cb664deb8433c8bf4c5298012ab50c3" +checksum = "df8878e29f3d001ac1b1b714621f462e41a9d1fa8f385657f955e8a1ec0684d7" dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] name = "pallet-staking-reward-fn" -version = "14.0.0" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7d48988f4264ff9a8088d40e4f4bfdee9606a9abef1e432987f6e40aec76da6" +checksum = "45b6f832653badb5f70bdfecc1ded64b02b8159b27f18515af03f8b80f1b023b" dependencies = [ "log", "sp-arithmetic", @@ -7030,9 +7262,9 @@ dependencies = [ [[package]] name = "pallet-staking-runtime-api" -version = "9.0.0" +version = "11.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a3b908034f3c688deacd672a0c838826edb5a3c980c04faf8f5b84edabbc8a6" +checksum = "773c0d24ad4da4b505e47b43e91c8c0af4e835f16104bc770732a4796c174748" dependencies = [ "parity-scale-codec", "sp-api", @@ -7040,9 +7272,9 @@ dependencies = [ [[package]] name = "pallet-state-trie-migration" -version = "24.0.0" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb8084d2091a88147c1caad25bc03b15f3f7320c18087cfe037b8e21b13bd068" +checksum = "550292d79f281fd1bfbbf2643f10cef3d67068075d46374295f2efe7f7113da0" dependencies = [ "frame-benchmarking", "frame-support", @@ -7058,10 +7290,11 @@ dependencies = [ [[package]] name = "pallet-sudo" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f10e6b5329062c8d78a9d845ebd1201b9b505e2a4b5aa6b4fdceeeccde0c323c" +checksum = "fcec9f73ecb8d0439a13043a253a9fd90aa6bf5aece6470194bbfc7f79256d88" dependencies = [ + "docify", "frame-benchmarking", "frame-support", "frame-system", @@ -7074,10 +7307,11 @@ dependencies = [ [[package]] name = "pallet-timestamp" -version = "22.0.0" +version = "24.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "924bc62e043df933e6067a2a70a71a16823253e46765e36800f0dc60a0a59018" +checksum = "b25ec8749cf3f481b5e5199be701bac0dea835851b83fc7c455192762711858d" dependencies = [ + "docify", "frame-benchmarking", "frame-support", "frame-system", @@ -7094,9 +7328,9 @@ dependencies = [ [[package]] name = "pallet-tips" -version = "22.0.0" +version = "24.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8874f39912e560ea6de9c1e51d50dcd8e9fe7a68f2f9b89e5bf42bfc637cdf36" +checksum = "81b17cf8b964e5533f1f5ac1f087f3f69adfead754cb5dd25abe395ec1e7abc9" dependencies = [ "frame-benchmarking", "frame-support", @@ -7114,9 +7348,9 @@ dependencies = [ [[package]] name = "pallet-transaction-payment" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8eeaaeaf89f80fe3d19ff9ed60430423a7ea70ca91747b04be830499334d55d3" +checksum = "87ef7ceaac786e41613731e3bc48284f1aa3ec260934abda2daed949de6e5ada" dependencies = [ "frame-support", "frame-system", @@ -7131,9 +7365,9 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc-runtime-api" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c8ee4c219399d7353548641d31aea760007f88223d6de72048fd9d13a9a6601" +checksum = "07d87fdc4028155367c6ea98143054a6c00b38bfd77ec08681e289e429e35505" dependencies = [ "pallet-transaction-payment", "parity-scale-codec", @@ -7144,10 +7378,11 @@ dependencies = [ [[package]] name = "pallet-treasury" -version = "22.0.0" +version = "24.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14f099cd65be6adbd3602e5b3df680a5ab868b79c990c5c7b3977e849728632e" +checksum = "8dd462af11574485864023849e0622916b611dbc88111192fb39b1e6d7e666ba" dependencies = [ + "docify", "frame-benchmarking", "frame-support", "frame-system", @@ -7156,15 +7391,16 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", + "sp-core", "sp-runtime", "sp-std", ] [[package]] name = "pallet-uniques" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6615e1af20293b33ec6c2bb30b9e1a9b4e0420c78b5f2aeed8afe244d9cdc6a" +checksum = "8010c79bac1b78fb35b3ee17b40469dec3fcf2eaa6fd863c5be5d96f2ad46bfd" dependencies = [ "frame-benchmarking", "frame-support", @@ -7178,9 +7414,9 @@ dependencies = [ [[package]] name = "pallet-utility" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d78c463bcdbe9b5f84b816ea4095d1aea776acd7bae0e9f6fe074acd84094ace" +checksum = "85a8a6941da32837e4297e0d8abe0a5c94f348a119cccbf27b0f99ee01246c0e" dependencies = [ "frame-benchmarking", "frame-support", @@ -7195,9 +7431,9 @@ dependencies = [ [[package]] name = "pallet-vesting" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9fdc85285a6ced9b1ce722d4e7681b6b97ccf3a9ee439eeaf6bfc33c2022cbb" +checksum = "fd29411ef24eb6a856adf1bc33b37ead4835a25dafb1c4c8c95b13fa5247748f" dependencies = [ "frame-benchmarking", "frame-support", @@ -7211,9 +7447,9 @@ dependencies = [ [[package]] name = "pallet-whitelist" -version = "22.0.0" +version = "24.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a09403cca331027032f2ba9a992e8b6bcd27d95255dfc30f1f6da5fd32ef57bc" +checksum = "d37304829099cfec7d17df70cfe11ccf6cb7bd624eab80e8e79e895859454540" dependencies = [ "frame-benchmarking", "frame-support", @@ -7227,9 +7463,9 @@ dependencies = [ [[package]] name = "pallet-xcm" -version = "2.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b913e408dfd2e3b1a1834aa03965b1616bf2d4c24c635a1cdd3ae10335c97e48" +checksum = "04d5e5404d9dadb39390949aadc2c641c16ce4cb0f47ed7a7ff584ab914c2984" dependencies = [ "bounded-collections", "frame-benchmarking", @@ -7249,9 +7485,9 @@ dependencies = [ [[package]] name = "pallet-xcm-benchmarks" -version = "2.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e49d6f43940cf0146a59ce21a495f32edb746ec16ec67f41d8a4ad4ada79afe1" +checksum = "e6bfdc94e39541b111db7d2c2a95a18a3c3bb42dd37c20b8705727e617ce00c9" dependencies = [ "frame-benchmarking", "frame-support", @@ -7267,17 +7503,36 @@ dependencies = [ "staging-xcm-executor", ] +[[package]] +name = "pallet-xcm-bridge-hub-router" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e2d8a783510d2fb4c0e81f591baad76fa8ebbed0f77852bf23720b299539b61" +dependencies = [ + "bp-xcm-bridge-hub-router", + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-runtime", + "sp-std", + "staging-xcm", + "staging-xcm-builder", +] + [[package]] name = "parachains-common" -version = "2.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75f61ccf16fd574bc10480b1a106bb8536b5dddd38a44de0ce20e6f44b0cb4e1" +checksum = "c7ab598917585ae55b892dbfb6fa5073eb40454c47504a0d0db2634505538632" dependencies = [ "cumulus-primitives-core", "cumulus-primitives-utility", "frame-support", "frame-system", - "kusama-runtime-constants 2.0.0", "log", "num-traits", "pallet-asset-tx-payment", @@ -7288,7 +7543,6 @@ dependencies = [ "parity-scale-codec", "polkadot-core-primitives", "polkadot-primitives", - "polkadot-runtime-constants 2.0.0", "rococo-runtime-constants", "scale-info", "smallvec", @@ -7297,18 +7551,18 @@ dependencies = [ "sp-io", "sp-runtime", "sp-std", + "staging-parachain-info", "staging-xcm", "staging-xcm-builder", - "staging-xcm-executor", "substrate-wasm-builder", "westend-runtime-constants", ] [[package]] name = "parachains-runtimes-test-utils" -version = "2.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5f653770c9ad5b9209e76bee456c2979a46a2a0245a8488b70311e005b68d80" +checksum = "4473cc6319cada74f52b4c0b35a7a8b248e0db661aed4e65bd3a4cf676c9d4ff" dependencies = [ "assets-common", "cumulus-pallet-dmp-queue", @@ -7345,7 +7599,7 @@ version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "78f19d20a0d2cc52327a88d131fa1c4ea81ea4a04714aedcfeca2dd410049cf8" dependencies = [ - "blake2", + "blake2 0.10.6", "crc32fast", "fs2", "hex", @@ -7361,9 +7615,9 @@ dependencies = [ [[package]] name = "parity-scale-codec" -version = "3.6.4" +version = "3.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd8e946cc0cc711189c0b0249fb8b599cbeeab9784d83c415719368bb8d4ac64" +checksum = "0dec8a8073036902368c2cdc0387e85ff9a37054d7e7c98e592145e0c92cd4fb" dependencies = [ "arrayvec 0.7.4", "bitvec", @@ -7376,9 +7630,9 @@ dependencies = [ [[package]] name = "parity-scale-codec-derive" -version = "3.6.4" +version = "3.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a296c3079b5fefbc499e1de58dc26c09b1b9a5952d26694ee89f04a43ebbb3e" +checksum = "312270ee71e1cd70289dacf597cab7b207aa107d2f28191c2ae45b2ece18a260" dependencies = [ "proc-macro-crate", "proc-macro2", @@ -7568,7 +7822,7 @@ checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405" dependencies = [ "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] @@ -7623,9 +7877,9 @@ checksum = "e3d7ddaed09e0eb771a79ab0fd64609ba0afb0a8366421957936ad14cbd13630" [[package]] name = "polkadot-core-primitives" -version = "2.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "960aeac8618063cd9eca2a3551a92234a4c9007a970df7bf61d6fc2f9b4b85ff" +checksum = "b08d1d6ca24e1b13f8069e015cfab794344212dd7436aadd61de8086a82664ef" dependencies = [ "parity-scale-codec", "scale-info", @@ -7636,9 +7890,9 @@ dependencies = [ [[package]] name = "polkadot-node-jaeger" -version = "2.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edffd01480c2a68452ea585cd5316447b236eb9c02bc95dba5c9654f8f4a15b1" +checksum = "2cfe6d4769181dce55b1b8fc53f0bd85bb4aa20473702fbce95a94abafa19379" dependencies = [ "lazy_static", "log", @@ -7655,9 +7909,9 @@ dependencies = [ [[package]] name = "polkadot-node-metrics" -version = "2.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b08e1c66cc711d6f5c04be591021c6dedaad1e074f66f3b8bd06553c7f8e5ba2" +checksum = "c51a586fc3ef87c685588a650c18882b4cf069d8adc0d7d9bd2670749cb4e82b" dependencies = [ "bs58 0.5.0", "futures", @@ -7675,9 +7929,9 @@ dependencies = [ [[package]] name = "polkadot-node-network-protocol" -version = "2.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7f269984611861c4a5297234b4b649a483a5428194790dbea8b711b6e16ea93" +checksum = "f6de513655bf71400299cda1ccaebfa612fd3965e7ce5a9120b4ff37bfc80931" dependencies = [ "async-channel", "async-trait", @@ -7700,9 +7954,9 @@ dependencies = [ [[package]] name = "polkadot-node-primitives" -version = "2.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "883c5f3b51182a2f2f560230bd8e395bafa231dbc50335a4cc7eb3049860fcb4" +checksum = "3e82ee5edac871310bd1ce16a035ad2fc901d6ddd69ea0bbabc7f0a70a02770a" dependencies = [ "bounded-vec", "futures", @@ -7723,9 +7977,9 @@ dependencies = [ [[package]] name = "polkadot-node-subsystem-types" -version = "2.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f07bd4e5a7e83b15fea91d92767e5c2a6a3e280a55d21f9bed9e96c25019cfb" +checksum = "8e1013b3bac6e9b76bbd71433c3eba36b5c0fa9306bfc473ec02e3a104e156d2" dependencies = [ "async-trait", "derive_more", @@ -7736,6 +7990,7 @@ dependencies = [ "polkadot-node-primitives", "polkadot-primitives", "polkadot-statement-table", + "sc-client-api", "sc-network", "sc-transaction-pool-api", "smallvec", @@ -7748,9 +8003,9 @@ dependencies = [ [[package]] name = "polkadot-overseer" -version = "2.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2012254af68764032245239030ffdfca0c2b0d126de84c0abb3f62a02dba3b68" +checksum = "e2f547e981cbd72357ba30952193844d30de5063e9d304c117c9b941f12b5f84" dependencies = [ "async-trait", "futures", @@ -7763,7 +8018,6 @@ dependencies = [ "polkadot-node-subsystem-types", "polkadot-primitives", "sc-client-api", - "schnellru", "sp-api", "sp-core", "tikv-jemalloc-ctl", @@ -7772,9 +8026,9 @@ dependencies = [ [[package]] name = "polkadot-parachain-primitives" -version = "1.0.0" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8be23c13fd44bab7ed83eea35e1b68bcd21d61cbc6bb15451a8b0a00e627f0ab" +checksum = "42265630c0c48e25d7ee5a9f4bdcafd003be65c0a44deeb6541620ca169fa519" dependencies = [ "bounded-collections", "derive_more", @@ -7790,9 +8044,9 @@ dependencies = [ [[package]] name = "polkadot-primitives" -version = "2.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce2c1568c0e0e40b24e8aa149c9194f692c9f9d1f999ab2024974bf47b9323bb" +checksum = "ee4508ff6b035edc08c54bb61238500179963f6f1eb8266dce6a5625509124bc" dependencies = [ "bitvec", "hex-literal", @@ -7880,7 +8134,7 @@ dependencies = [ "parity-scale-codec", "polkadot-primitives", "polkadot-runtime-common", - "polkadot-runtime-constants 1.0.0", + "polkadot-runtime-constants", "polkadot-runtime-parachains", "rustc-hex", "scale-info", @@ -7922,9 +8176,9 @@ dependencies = [ [[package]] name = "polkadot-runtime-common" -version = "2.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a92ab9a0a68d66e0541a150e00e90480e94992d5d7e0494248a4661b1f355ee8" +checksum = "a788f8ed8b33262c33f72d78e3416c5991e40d333178ae43000a92181ee44bca" dependencies = [ "bitvec", "frame-benchmarking", @@ -7934,6 +8188,7 @@ dependencies = [ "impl-trait-for-tuples", "libsecp256k1", "log", + "pallet-asset-rate", "pallet-authorship", "pallet-babe", "pallet-balances", @@ -7946,6 +8201,7 @@ dependencies = [ "pallet-transaction-payment", "pallet-treasury", "pallet-vesting", + "pallet-xcm-benchmarks", "parity-scale-codec", "polkadot-primitives", "polkadot-runtime-parachains", @@ -7964,6 +8220,8 @@ dependencies = [ "sp-staking", "sp-std", "staging-xcm", + "staging-xcm-builder", + "staging-xcm-executor", "static_assertions", ] @@ -7980,26 +8238,11 @@ dependencies = [ "sp-weights", ] -[[package]] -name = "polkadot-runtime-constants" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9006804184f3f06e5c513d125aebb7764ab8116a340d71ff07ea266c2ae5b159" -dependencies = [ - "frame-support", - "polkadot-primitives", - "polkadot-runtime-common", - "smallvec", - "sp-core", - "sp-runtime", - "sp-weights", -] - [[package]] name = "polkadot-runtime-metrics" -version = "2.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f4bb4e450cc3683d3e583067549c292db2c153a80da0af9717e41549a0a9979" +checksum = "bfe45b01d9d621174c9c0eef0871aeead5986393838206fe58df3ae414bcb8d2" dependencies = [ "bs58 0.5.0", "frame-benchmarking", @@ -8011,9 +8254,9 @@ dependencies = [ [[package]] name = "polkadot-runtime-parachains" -version = "2.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56b7d429eda889f6511ff5d1a1a86765978e59f4dc9b9b692d5d5dfa22a7436b" +checksum = "936dbae8a7a88dba07da726d779126716e05364d8475ced1c313f32755050a02" dependencies = [ "bitflags 1.3.2", "bitvec", @@ -8033,6 +8276,7 @@ dependencies = [ "pallet-timestamp", "pallet-vesting", "parity-scale-codec", + "polkadot-core-primitives", "polkadot-parachain-primitives", "polkadot-primitives", "polkadot-runtime-metrics", @@ -8059,9 +8303,9 @@ dependencies = [ [[package]] name = "polkadot-statement-table" -version = "2.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b55bf808133addad3d826c344681cf6272acba60a2b9a007f4e4076c2e77eda" +checksum = "22b2a11cb8871f7e30a8f5e455c92d19a186065644ee00f9acda550ff89dacce" dependencies = [ "parity-scale-codec", "polkadot-primitives", @@ -8139,7 +8383,7 @@ checksum = "59230a63c37f3e18569bdb90e4a89cbf5bf8b06fea0b84e65ea10cc4df47addd" dependencies = [ "difflib", "float-cmp", - "itertools", + "itertools 0.10.5", "normalize-line-endings", "predicates-core", "regex", @@ -8178,14 +8422,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c64d9ba0963cdcea2e1b2230fbae2bab30eb25a174be395c41e764bfb65dd62" dependencies = [ "proc-macro2", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] name = "primitive-types" -version = "0.12.1" +version = "0.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f3486ccba82358b11a77516035647c34ba167dfa53312630de83b12bd4f3d66" +checksum = "0b34d9fd68ae0b74a41b21c03c2f62847aa0ffea044eee893b4c140b37e244e2" dependencies = [ "fixed-hash", "impl-codec", @@ -8198,9 +8442,9 @@ dependencies = [ [[package]] name = "prioritized-metered-channel" -version = "0.2.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "382698e48a268c832d0b181ed438374a6bb708a82a8ca273bb0f61c74cf209c4" +checksum = "e99f0c89bd88f393aab44a4ab949351f7bc7e7e1179d11ecbfe50cbe4c47e342" dependencies = [ "coarsetime", "crossbeam-queue", @@ -8254,20 +8498,20 @@ checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068" [[package]] name = "proc-macro-warning" -version = "0.4.2" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d1eaa7fa0aa1929ffdf7eeb6eac234dde6268914a14ad44d23521ab6a9b258e" +checksum = "9b698b0b09d40e9b7c1a47b132d66a8b54bcd20583d9b6d06e4535e383b4405c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] name = "proc-macro2" -version = "1.0.66" +version = "1.0.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9" +checksum = "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da" dependencies = [ "unicode-ident", ] @@ -8306,7 +8550,7 @@ checksum = "440f724eba9f6996b75d63681b0a92b06947f1457076d503a4d2e2c8f56442b8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] @@ -8327,7 +8571,7 @@ checksum = "119533552c9a7ffacc21e099c24a0ac8bb19c2a2a3f363de84cd9b844feab270" dependencies = [ "bytes", "heck", - "itertools", + "itertools 0.10.5", "lazy_static", "log", "multimap", @@ -8348,7 +8592,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5d2d8d10f3c6ded6da8b05b5fb3b8a5082514344d56c9f871412d29b4e075b4" dependencies = [ "anyhow", - "itertools", + "itertools 0.10.5", "proc-macro2", "quote", "syn 1.0.109", @@ -8506,6 +8750,16 @@ dependencies = [ "getrandom 0.2.10", ] +[[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" @@ -8623,7 +8877,7 @@ checksum = "7f7473c2cfcf90008193dd0e3e16599455cb601a9fce322b5bb55de799664925" dependencies = [ "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] @@ -8710,7 +8964,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2" dependencies = [ "hmac 0.12.1", - "subtle", + "subtle 2.4.1", ] [[package]] @@ -8750,9 +9004,9 @@ dependencies = [ [[package]] name = "rococo-runtime-constants" -version = "2.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26f5a684888cc4995b2916f22014e0356f0a81fd8086079b4c1c11aaf62a8965" +checksum = "272eaa4f1b4b5357d89d1f8f504cb5ee81a105bf7e5c295f053c6e521f2a199b" dependencies = [ "frame-support", "polkadot-primitives", @@ -8761,6 +9015,7 @@ dependencies = [ "sp-core", "sp-runtime", "sp-weights", + "staging-xcm", ] [[package]] @@ -9022,9 +9277,9 @@ dependencies = [ [[package]] name = "sc-allocator" -version = "18.0.0" +version = "20.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f75d11155f65cf4e548b916a95fd3c1193d3fa89cbece489e3627cb5cd93e77c" +checksum = "66b4c5976a9cff7fcf24c946276a62ea7837862b6f3bf9f8011f08faf4f08474" dependencies = [ "log", "sp-core", @@ -9034,9 +9289,9 @@ dependencies = [ [[package]] name = "sc-authority-discovery" -version = "0.29.0" +version = "0.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1903c35451b28ef27e5fd7cd07f4cb906fa368626e733b6b7315c285d8c3079f" +checksum = "fb7e0e8a4ea5304b65d49c0085a458ed2e43394f95457689875d3e0c6e118dee" dependencies = [ "async-trait", "futures", @@ -9063,9 +9318,9 @@ dependencies = [ [[package]] name = "sc-block-builder" -version = "0.28.0" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d5dc368497d940a5744cf427253a4b2f8d2a2cad9b2fbb897a270a939e54b5f" +checksum = "9d3999b9b758c09a6c1155e481b683ee87712f071cc5a0679f9ee4906a14a404" dependencies = [ "parity-scale-codec", "sc-client-api", @@ -9079,9 +9334,9 @@ dependencies = [ [[package]] name = "sc-chain-spec" -version = "22.0.0" +version = "24.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26e51780635e06b9ff2c41a953c57dcc83d86c9459ee432f24775a44b61f2bd3" +checksum = "ec7e711ea9870d3fb8e2a3ea5b601a9e20c63d0d2f457f40146407721e246a77" dependencies = [ "memmap2", "sc-chain-spec-derive", @@ -9099,23 +9354,23 @@ dependencies = [ [[package]] name = "sc-chain-spec-derive" -version = "8.0.0" +version = "10.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b01ae962b09bc4c95661eed1d6c4996cf72b54f522d0e41d81ae1da65d7bd3c" +checksum = "1f25158f791eb48715da9322375598b541cadd1f193674e8a4d77c79ffa3d95d" dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] name = "sc-cli" -version = "0.31.0" +version = "0.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0e347f8c3fe530de1e8e3f735cc826d46fb9b53bd41604f1b82159a2186c6af" +checksum = "22c61058223f80c1f961b03f7737529609a3283eef91129e971a1966101c18ea" dependencies = [ - "array-bytes", + "array-bytes 6.1.0", "chrono", "clap", "fdlimit", @@ -9130,6 +9385,7 @@ dependencies = [ "sc-client-api", "sc-client-db", "sc-keystore", + "sc-mixnet", "sc-network", "sc-service", "sc-telemetry", @@ -9151,9 +9407,9 @@ dependencies = [ [[package]] name = "sc-client-api" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0c17ac3b6dcc569998527e9228f6370d22ba84136f4c1753f6ba4d07c41a3f1" +checksum = "c7d32101f415f4d7ddbe8b5de1c1387a78d6dce070e26407ec605fe9f3fc9e23" dependencies = [ "fnv", "futures", @@ -9173,14 +9429,15 @@ dependencies = [ "sp-state-machine", "sp-statement-store", "sp-storage", + "sp-trie", "substrate-prometheus-endpoint", ] [[package]] name = "sc-client-db" -version = "0.30.0" +version = "0.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02c292bad8f2f55772953fc6d0b6970089eb3b1782862799828413b0db847473" +checksum = "d4ced79f609a44782874d856cf39d256838957195ef34f4fb8ced90bf4b725d0" dependencies = [ "hash-db", "kvdb", @@ -9205,9 +9462,9 @@ dependencies = [ [[package]] name = "sc-consensus" -version = "0.28.0" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fc2effbf5b5be7e7b5a0d448d6b83f446cd2425b9be0ab55b97bde8f60a8f46" +checksum = "86e4100cc8fb3876708e1ec5a7c63af3baa75febd5051beb9ddd1e4835fdfc27" dependencies = [ "async-trait", "futures", @@ -9231,9 +9488,9 @@ dependencies = [ [[package]] name = "sc-executor" -version = "0.27.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e6b38c64210870649f89b476295ccd7c078ed7c2b9a3c82f413ad2c9396b63a" +checksum = "225f2ad733bc7234a6638d5203624194824b2f78ab631bc911223f536a66b9c8" dependencies = [ "parity-scale-codec", "parking_lot 0.12.1", @@ -9254,9 +9511,9 @@ dependencies = [ [[package]] name = "sc-executor-common" -version = "0.24.0" +version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7023e1d9c86b817995a72e294b98f196cc3eb9c162f0b69ba95c3b0bd841ef32" +checksum = "169c1cfe81ba0e0d44ab4ada1600e30b6a9de588c792db73e32a854a6e3e1a87" dependencies = [ "sc-allocator", "sp-maybe-compressed-blob", @@ -9267,14 +9524,15 @@ dependencies = [ [[package]] name = "sc-executor-wasmtime" -version = "0.24.0" +version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e61689d40f3840a20d8987cb2a86d3841f2c3ab851a5cea0c6f466a062abbcd" +checksum = "f9167d733e928c528273be63b905ec750cfda85d740453071463da69f7d633bc" dependencies = [ "anyhow", "cfg-if", "libc", "log", + "parking_lot 0.12.1", "rustix 0.36.15", "sc-allocator", "sc-executor-common", @@ -9285,9 +9543,9 @@ dependencies = [ [[package]] name = "sc-informant" -version = "0.28.0" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da26c939c308d9bad95a7489a64c84863149451f6b6f5d77be1f8acbba0aa9e8" +checksum = "7189a0b95fe5d79895a107c6c057bc9351cd9c867552200815199cde25bcdb9d" dependencies = [ "ansi_term", "futures", @@ -9302,11 +9560,11 @@ dependencies = [ [[package]] name = "sc-keystore" -version = "20.0.0" +version = "22.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0a26be641a4d25ec382a340f90c26f5422644269422d2f6e8390073a26d9023" +checksum = "abecdf9778fccc254c0b5e227ea8b90fd59247044a30ad293a068b180427d244" dependencies = [ - "array-bytes", + "array-bytes 6.1.0", "parking_lot 0.12.1", "serde_json", "sp-application-crypto", @@ -9315,13 +9573,42 @@ dependencies = [ "thiserror", ] +[[package]] +name = "sc-mixnet" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d53ea71ec60601c18d6adcaf7a62698fc2e886c16dc8fdf8d61b3b76244dea38" +dependencies = [ + "array-bytes 4.2.0", + "arrayvec 0.7.4", + "blake2 0.10.6", + "futures", + "futures-timer", + "libp2p-identity", + "log", + "mixnet", + "multiaddr", + "parity-scale-codec", + "parking_lot 0.12.1", + "sc-client-api", + "sc-network", + "sc-transaction-pool-api", + "sp-api", + "sp-consensus", + "sp-core", + "sp-keystore", + "sp-mixnet", + "sp-runtime", + "thiserror", +] + [[package]] name = "sc-network" -version = "0.29.0" +version = "0.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df0d414c9e17d563a0c0dce01c6b6f10aa50d9ba0e904c2fe5e6b2aaf845f5de" +checksum = "01f519592a971199c486d412dbf38ba54096857080bf4b9d29c9ffabcfee3745" dependencies = [ - "array-bytes", + "array-bytes 6.1.0", "async-channel", "async-trait", "asynchronous-codec", @@ -9359,9 +9646,9 @@ dependencies = [ [[package]] name = "sc-network-bitswap" -version = "0.28.0" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d188183e28b77d7cdfbd07cc251d9e6c6b1c9960405d92943cfc642be1758ef" +checksum = "8fe63a55e03d8bc796ff1e94e7fb62a62acfd7a80a47865a97b55c13371c3e05" dependencies = [ "async-channel", "cid", @@ -9380,9 +9667,9 @@ dependencies = [ [[package]] name = "sc-network-common" -version = "0.28.0" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91d09f99d3845d5bb325641a3de1db8049bccca29e8272e65b8ea415c1153b01" +checksum = "8d236686d15275e4aa49ca929a06fb6fac28aa70e35ee185b981036c149f9e9d" dependencies = [ "async-trait", "bitflags 1.3.2", @@ -9398,11 +9685,11 @@ dependencies = [ [[package]] name = "sc-network-light" -version = "0.28.0" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9f0d6072d48cc9ae8ce06ee8790eccb5268c9af083a9029ff8d38d0e3eb541d" +checksum = "aac888fd720ef8bb2ff7d2b7f7b2e54d17bb85a417cf1e1b6f0f64f7e644936d" dependencies = [ - "array-bytes", + "array-bytes 6.1.0", "async-channel", "futures", "libp2p-identity", @@ -9420,11 +9707,11 @@ dependencies = [ [[package]] name = "sc-network-sync" -version = "0.28.0" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58b26c047661612e72321a1df53d76e79aad99b0846d795ea3807d9b25baf6d1" +checksum = "10c697aa8f52cf194b9f00113a7d0d3ce5d1456bedd6169a9caae10737f02907" dependencies = [ - "array-bytes", + "array-bytes 6.1.0", "async-channel", "async-trait", "fork-tree", @@ -9451,15 +9738,16 @@ dependencies = [ "sp-runtime", "substrate-prometheus-endpoint", "thiserror", + "tokio-stream", ] [[package]] name = "sc-network-transactions" -version = "0.28.0" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "940233816ec996869ca47c2153d4e66c9df376cf32e62b6c78630f418705fd62" +checksum = "bb7c9bfc7b58ce229d1512158b8f13dc849ec24857d1c29a41a867fb8afb5c09" dependencies = [ - "array-bytes", + "array-bytes 6.1.0", "futures", "libp2p", "log", @@ -9474,9 +9762,9 @@ dependencies = [ [[package]] name = "sc-rpc" -version = "24.0.0" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f86ce48d8c8c6b4ebaf4775955cc79985732db5407e4893e0976be8f6b28eb5b" +checksum = "eb277280b6b3519e4a2e693b75d4ca516ebb4a928162e6a1791b217b2be60c9f" dependencies = [ "futures", "jsonrpsee", @@ -9486,6 +9774,7 @@ dependencies = [ "sc-block-builder", "sc-chain-spec", "sc-client-api", + "sc-mixnet", "sc-rpc-api", "sc-tracing", "sc-transaction-pool-api", @@ -9506,13 +9795,14 @@ dependencies = [ [[package]] name = "sc-rpc-api" -version = "0.28.0" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60585da26d11aefb112d3a6925cc75fd76bee1961b2de615e6207df2b86a459c" +checksum = "def499ac717db8442fe18543e52330d5f105027b666df73c0b38e81e9105078b" dependencies = [ "jsonrpsee", "parity-scale-codec", "sc-chain-spec", + "sc-mixnet", "sc-transaction-pool-api", "scale-info", "serde", @@ -9526,9 +9816,9 @@ dependencies = [ [[package]] name = "sc-rpc-server" -version = "8.0.0" +version = "10.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fc99b691cc6a88afc9c64b40e50cdef64920f7b3c3e2d752aa8dfe192a4c2f0" +checksum = "9e8083e1b026dcf397f8c1122b3fba6cc744c6962996df6a30e0fb75223f7637" dependencies = [ "http", "jsonrpsee", @@ -9542,11 +9832,11 @@ dependencies = [ [[package]] name = "sc-rpc-spec-v2" -version = "0.29.0" +version = "0.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d4a55644ca962d4a094b54bb0e2a30bcbe12c17385096650c771c14f7318c8e" +checksum = "198ea9287111b4060ce1d70dce99804b99d1a92b5fb23a79d94bf0cb460ca3ce" dependencies = [ - "array-bytes", + "array-bytes 6.1.0", "futures", "futures-util", "hex", @@ -9571,9 +9861,9 @@ dependencies = [ [[package]] name = "sc-service" -version = "0.30.0" +version = "0.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e58550b3ee0bba7beec7d2ce5612b712a34d3326ff68fa95799f6c328f5bb8dd" +checksum = "3623ae5bd7b089da9796a3f1edd974c94f34dd4b4b527146662ef409ae9cd38c" dependencies = [ "async-trait", "directories", @@ -9636,9 +9926,9 @@ dependencies = [ [[package]] name = "sc-state-db" -version = "0.25.0" +version = "0.27.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34b72de87b85342d40852e2dd8b17c07a47406ffe8f1ce97acb2605769df7ed7" +checksum = "3635fe572adfe796886e18910c8b94f7ce67f9ae3e2c161176e122ddf0baa7e4" dependencies = [ "log", "parity-scale-codec", @@ -9648,9 +9938,9 @@ dependencies = [ [[package]] name = "sc-sysinfo" -version = "22.0.0" +version = "24.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca1dc4ea7ab8b96f0c948d26b2af7e540a8d182ba13f7b81930c119dc50f7087" +checksum = "60967710b85e650652832df73915b64c315f7b437e53c4635bd26106d6d05c21" dependencies = [ "futures", "libc", @@ -9668,9 +9958,9 @@ dependencies = [ [[package]] name = "sc-telemetry" -version = "10.0.0" +version = "12.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba96178e1d0286ecc4a37fbf39a4660d8d10640baedffb58ff18de7162d117cb" +checksum = "28e214e4d46cac02321bc3dc6fd72f019ac10819d1ac8f24f6935a4ae74ef273" dependencies = [ "chrono", "futures", @@ -9688,9 +9978,9 @@ dependencies = [ [[package]] name = "sc-tracing" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e86aa30a30596a5ca9e0492474d907edff1e5e569a121bb4eb178f4a262b8d1" +checksum = "83bcd745ea216ba0c0a344cff2c41b12e27846d5fca4b28f56ff77e1d3ff3634" dependencies = [ "ansi_term", "atty", @@ -9718,21 +10008,21 @@ dependencies = [ [[package]] name = "sc-tracing-proc-macro" -version = "8.0.0" +version = "10.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f602d1fa418385ed0e25be1305c9b03f68ff7ccb3b5df88a2145e7e1fb9117e" +checksum = "9c4ae9e4f957d7274ac6b59d667b66262caf6482dbb1b63f1c370528626b1272" dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] name = "sc-transaction-pool" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1787f18283fa7714203a705ff3b7bcb288eb85149e3679db0197f09319503f9" +checksum = "6f6db45a057a619670e07deefb4e69aab83386f076363db424907da2b2e82590" dependencies = [ "async-trait", "futures", @@ -9757,9 +10047,9 @@ dependencies = [ [[package]] name = "sc-transaction-pool-api" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "792c4841d8fba48d4a61e03db45854d8273dee31ae0d4ffb98af5176d0e31a03" +checksum = "1491607f296bb8cce09a5eb3a03320c60ad52bb8120127b26f69c32bcaccd8f2" dependencies = [ "async-trait", "futures", @@ -9774,9 +10064,9 @@ dependencies = [ [[package]] name = "sc-utils" -version = "9.0.0" +version = "11.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "563bde62fa4681746c8960d434fa65e7ea40c7fab46692b26998132f43e1e100" +checksum = "81a4769c82dde62b9243dcc166be52e0c5d2d61cf2599923271118d9c8b997b1" dependencies = [ "async-channel", "futures", @@ -9848,7 +10138,7 @@ dependencies = [ "rand 0.7.3", "rand_core 0.5.1", "sha2 0.8.2", - "subtle", + "subtle 2.4.1", "zeroize", ] @@ -9906,7 +10196,7 @@ dependencies = [ "der 0.6.1", "generic-array 0.14.7", "pkcs8 0.9.0", - "subtle", + "subtle 2.4.1", "zeroize", ] @@ -9920,7 +10210,7 @@ dependencies = [ "der 0.7.8", "generic-array 0.14.7", "pkcs8 0.10.2", - "subtle", + "subtle 2.4.1", "zeroize", ] @@ -10006,29 +10296,29 @@ checksum = "f97841a747eef040fcd2e7b3b9a220a7205926e60488e673d9e4926d27772ce5" [[package]] name = "serde" -version = "1.0.188" +version = "1.0.190" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf9e0fcba69a370eed61bcf2b728575f726b50b55cba78064753d708ddc7549e" +checksum = "91d3c334ca1ee894a2c6f6ad698fe8c435b76d504b13d436f0685d648d6d96f7" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.188" +version = "1.0.190" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4eca7ac642d82aa35b60049a6eccb4be6be75e599bd2e9adb5f875a737654af2" +checksum = "67c5609f394e5c2bd7fc51efda478004ea80ef42fee983d5c67a65e34f32c0e3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] name = "serde_json" -version = "1.0.105" +version = "1.0.108" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "693151e1ac27563d6dbcec9dee9fbd5da8539b20fa14ad3752b2e6d363ace360" +checksum = "3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b" dependencies = [ "itoa", "ryu", @@ -10194,9 +10484,9 @@ checksum = "826167069c09b99d56f31e9ae5c99049e932a98c9dc2dac47645b08dbbf76ba7" [[package]] name = "slot-range-helper" -version = "2.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25d332388412dc3ccbd1c4332876984736ee46b8f4a0ae6ea626d8ebf24ac312" +checksum = "1e902c6b7e8f86718aee7989d6c8ea851d9772cb54a3389f2d729d8df41167ec" dependencies = [ "enumn", "parity-scale-codec", @@ -10207,9 +10497,9 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.11.0" +version = "1.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62bb4feee49fdd9f707ef802e22365a35de4b7b299de4763d44bfea899442ff9" +checksum = "942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a" [[package]] name = "snap" @@ -10224,14 +10514,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0c9d1425eb528a21de2755c75af4c9b5d57f50a0d4c3b7f1828a4cd03f8ba155" dependencies = [ "aes-gcm 0.9.4", - "blake2", + "blake2 0.10.6", "chacha20poly1305", "curve25519-dalek 4.0.0", "rand_core 0.6.4", "ring", "rustc_version", "sha2 0.10.7", - "subtle", + "subtle 2.4.1", ] [[package]] @@ -10273,9 +10563,9 @@ dependencies = [ [[package]] name = "sp-api" -version = "21.0.0" +version = "23.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86901915aaf9c73f9a8588fae10072c6082e7bf169edae175950410b77ad8103" +checksum = "f582f92ce47c86e4ffffe81fdd5120fea7c850dc0800653a7fa203bcc1532335" dependencies = [ "hash-db", "log", @@ -10295,24 +10585,24 @@ dependencies = [ [[package]] name = "sp-api-proc-macro" -version = "10.0.0" +version = "12.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "972809a3e3a583423bca2ee6d08eb5397814ef6b265abf43e888c4ed9916ff83" +checksum = "a896941b2d27365a6f937ebce11e36d55132dc32104f6a48b4cd765b55efd252" dependencies = [ "Inflector", - "blake2", + "blake2 0.10.6", "expander 2.0.0", "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] name = "sp-application-crypto" -version = "25.0.0" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fa730e4f3a2aec3f4ee777410599a86eb17067ee5410c58ab496e88d7bb840c" +checksum = "a93da025616ab59639f8e378df579c5aaa2c8b9999f328a0239156a57c991b53" dependencies = [ "parity-scale-codec", "scale-info", @@ -10324,9 +10614,9 @@ dependencies = [ [[package]] name = "sp-arithmetic" -version = "18.0.0" +version = "20.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d3d3ff6d6d717d7563659e9e47e958d33ebd2d0b3d8b1a9961cf9832944375e" +checksum = "f80b5c16afb61dde1037a469d570adcc686440036429e50abe2301ba9d61aad5" dependencies = [ "integer-sqrt", "num-traits", @@ -10339,9 +10629,9 @@ dependencies = [ [[package]] name = "sp-authority-discovery" -version = "21.0.0" +version = "23.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06a92d2af502f53c11c4656f58a1f49856b633f455433c6e0c94e59039f560f0" +checksum = "e204d85bad6f02a5ae8fbba83c365e20459e979fd69db5575ba4b3ea1025ab3c" dependencies = [ "parity-scale-codec", "scale-info", @@ -10353,9 +10643,9 @@ dependencies = [ [[package]] name = "sp-block-builder" -version = "21.0.0" +version = "23.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "149acca1cfe20a2fc888e2e04b2811f7fd04a5bc47630a5d6191664f4ed7b224" +checksum = "6cd16df3d1cdad862d3e764f10f7675876b011e032907423fdfa377ae2ec8575" dependencies = [ "sp-api", "sp-inherents", @@ -10365,9 +10655,9 @@ dependencies = [ [[package]] name = "sp-blockchain" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee4d1f97e0cb623f919b6c6dbcd1d6438b8d8c456df4d045fb2778251d9d7803" +checksum = "4932b97cde61874f395bab9b02443e3bd2046943abb280b63f83da9d0b623ea7" dependencies = [ "futures", "log", @@ -10384,9 +10674,9 @@ dependencies = [ [[package]] name = "sp-consensus" -version = "0.27.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e74272780c5c6ea026b3e66cdd7b369b90e1e94c17d91c41e2359224f2439ea" +checksum = "2c5d7170fb7cfb18024ef7eeb40d272d22b9c3587d85cde2d091e8463b397f06" dependencies = [ "async-trait", "futures", @@ -10400,9 +10690,9 @@ dependencies = [ [[package]] name = "sp-consensus-aura" -version = "0.27.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9564b98aa33315f542ba0ace2bb5f94a1a0503608b125edbd6537420fcf03a47" +checksum = "643a7c486a645f398d219d1fbcc8a416cad5018164a212fefde5c2ef00a182e4" dependencies = [ "async-trait", "parity-scale-codec", @@ -10418,9 +10708,9 @@ dependencies = [ [[package]] name = "sp-consensus-babe" -version = "0.27.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53de79497a7ac68e7f414c2fea712b255b129991fbf6cbd63002fab9314437fe" +checksum = "268f9b2e36d4e136c09ad87876cdcfd7ff734cb5917f333fefebff248f95a24f" dependencies = [ "async-trait", "parity-scale-codec", @@ -10438,9 +10728,9 @@ dependencies = [ [[package]] name = "sp-consensus-beefy" -version = "8.0.0" +version = "10.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cd87757ce886d92502d11b84022ee42d268ba3a63703c273c1f31f536b01b7b" +checksum = "90e18fe984ea745727e645c43d6a955bc471b3bcd36aa8d260c3bd0deeada0c5" dependencies = [ "lazy_static", "parity-scale-codec", @@ -10458,9 +10748,9 @@ dependencies = [ [[package]] name = "sp-consensus-grandpa" -version = "8.0.0" +version = "10.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c750af0e64f19a5c364748c49339900e12f6ecd577f71879052604fd7f9312c4" +checksum = "28bbee685900110419913f281ce0f29457fbc17418f00d15f0212c8043aba167" dependencies = [ "finality-grandpa", "log", @@ -10477,9 +10767,9 @@ dependencies = [ [[package]] name = "sp-consensus-slots" -version = "0.27.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9edd2b6ac697a55075e3a4c5697f1142cd59de015f93aaf0aa843d1194ae268" +checksum = "895b0c176d4eead833ddee5251d3cccbaeb0191ca3f33f84b11d347bebc6e21f" dependencies = [ "parity-scale-codec", "scale-info", @@ -10490,14 +10780,13 @@ dependencies = [ [[package]] name = "sp-core" -version = "23.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "412e2ec53b1bc63778e2d70c347224e6cd2e25c4bacb509585db85f0788747b7" +checksum = "f9ebb090ead698a6df04347c86a31ba91a387edb8a58534ec70c4f977d1e1e87" dependencies = [ - "array-bytes", - "arrayvec 0.7.4", + "array-bytes 6.1.0", "bitflags 1.3.2", - "blake2", + "blake2 0.10.6", "bounded-collections", "bs58 0.5.0", "dyn-clonable", @@ -10532,14 +10821,15 @@ dependencies = [ "thiserror", "tiny-bip39", "tracing", + "w3f-bls", "zeroize", ] [[package]] name = "sp-core-hashing" -version = "11.0.0" +version = "13.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "558116d02341b6f28b033c19a2a5fa555afa3c52628639170087e7685d51e743" +checksum = "cb8524f01591ee58b46cd83c9dbc0fcffd2fd730dabec4f59326cd58a00f17e2" dependencies = [ "blake2b_simd", "byteorder", @@ -10551,20 +10841,20 @@ dependencies = [ [[package]] name = "sp-core-hashing-proc-macro" -version = "11.0.0" +version = "13.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d8681fa136cf504ba2b722fcb10d78df147c15d201b997e06c4c8c72258001a" +checksum = "42ce3e6931303769197da81facefa86159fa1085dcd96ecb7e7407b5b93582a0" dependencies = [ "quote", "sp-core-hashing", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] name = "sp-database" -version = "7.0.0" +version = "9.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac16ca1b4f309dd51a7a06b1843b73e6e81ff70a05dac17d3c8f9c86e4fba5da" +checksum = "9c6e8c710d6a71512af6f42d9dba9c3d1f6ad793846480babf459bbde3d60a94" dependencies = [ "kvdb", "parking_lot 0.12.1", @@ -10572,20 +10862,20 @@ dependencies = [ [[package]] name = "sp-debug-derive" -version = "10.0.0" +version = "12.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4b235a0ad7124d58e6f0a728c8354da5b185b77bcf18b131b3a480cdaa23d95" +checksum = "50535e1a5708d3ba5c1195b59ebefac61cc8679c2c24716b87a86e8b7ed2e4a1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] name = "sp-externalities" -version = "0.21.0" +version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "588cf40c36de918f545d712ad1a70631ae71653e4a321506dfcd8fa6fd26453c" +checksum = "884d05160bc89d0943d1c9fb8006c3d44b80f37f8af607aeff8d4d9cc82e279a" dependencies = [ "environmental", "parity-scale-codec", @@ -10595,9 +10885,9 @@ dependencies = [ [[package]] name = "sp-genesis-builder" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ae51f8a24e1be6593be94581f3465a10d7c86ce403cbf9dcf703d14f35309d1" +checksum = "a0cb71d40ad47e40bdcce5ae5531c7d7ba579cd495a0e0413642fb063fa66f84" dependencies = [ "serde_json", "sp-api", @@ -10607,9 +10897,9 @@ dependencies = [ [[package]] name = "sp-inherents" -version = "21.0.0" +version = "23.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4355b6a68001ff5308a09fe069c778c184030ee3b95271dd44841d056ecadf13" +checksum = "604229aa145be0cff853b47ffed8bc2c62eb08ec6974d6307b9a559c378e6dc5" dependencies = [ "async-trait", "impl-trait-for-tuples", @@ -10622,12 +10912,12 @@ dependencies = [ [[package]] name = "sp-io" -version = "25.0.0" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9926dba7d67d87e40f49e18ff6cfc01373d5be13e3d373f02182bb5ec8ab37b" +checksum = "0ced350da15e8ba3a106206840acc42a6d3eb0d7e8bf7aa43ab00eac0bdf956f" dependencies = [ "bytes", - "ed25519-dalek 2.0.0", + "ed25519-dalek", "libsecp256k1", "log", "parity-scale-codec", @@ -10647,9 +10937,9 @@ dependencies = [ [[package]] name = "sp-keyring" -version = "26.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9dfcca2fad349d5fd197a56b4deef229b872c9172a8267d77c81a9f45a38f18a" +checksum = "655ec0b35cb9cb9029fb323aa676b07d58deb872cecc7566e50278409a00ee95" dependencies = [ "lazy_static", "sp-core", @@ -10659,9 +10949,9 @@ dependencies = [ [[package]] name = "sp-keystore" -version = "0.29.0" +version = "0.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44f0f9546dd151881c60e75355806f1cbbc893f64aa465fc5bf87a47de59467b" +checksum = "8b8ec5ebbba70bee83d79c3fe5e49f12df0a4bb6029858ddf9a15eea7539a592" dependencies = [ "parity-scale-codec", "parking_lot 0.12.1", @@ -10672,9 +10962,9 @@ dependencies = [ [[package]] name = "sp-maybe-compressed-blob" -version = "7.0.0" +version = "9.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cb1a26782e618f26b43ec8c6ecd799657134cd12af1902ceddaf1fad8031a1b" +checksum = "8846768f036429227e49f6ab523fbee4bc6edfee278a361bf27999590fe020d4" dependencies = [ "thiserror", "zstd 0.12.4", @@ -10682,9 +10972,9 @@ dependencies = [ [[package]] name = "sp-metadata-ir" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d493f8324241f20d80cbc920fa0ab7a173907d0bf1a10812098a924cdff48d7" +checksum = "7ca9ff0e522a74725ac92f009d38deeb12e880f5296afbd78a6c6b970b773278" dependencies = [ "frame-metadata", "parity-scale-codec", @@ -10692,11 +10982,24 @@ dependencies = [ "sp-std", ] +[[package]] +name = "sp-mixnet" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bdf61f28ca97aab6c21a3c6e0ed496e60d505e5de1f43fd4ba748c9afaa4fc85" +dependencies = [ + "parity-scale-codec", + "scale-info", + "sp-api", + "sp-application-crypto", + "sp-std", +] + [[package]] name = "sp-mmr-primitives" -version = "21.0.0" +version = "23.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74488c6296d65190b67a3945ef2f5cc8ac0f8b92023dcfc6e88164380654b6a0" +checksum = "0c3b33c20a4b1dd5a0069ced6997078a2af5d625f2c53d1b69bef9e131f42d77" dependencies = [ "ckb-merkle-mountain-range", "log", @@ -10713,9 +11016,9 @@ dependencies = [ [[package]] name = "sp-npos-elections" -version = "21.0.0" +version = "23.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "234e5bf197f5232cd00aeab2dc0b4c69b9fc2179d4ea67abd11fdea00a54bddf" +checksum = "9ee3536d7fd990c30864ca545d7bdbee02dc66a92ac2a7a66ab4e21521992a7b" dependencies = [ "parity-scale-codec", "scale-info", @@ -10728,9 +11031,9 @@ dependencies = [ [[package]] name = "sp-offchain" -version = "21.0.0" +version = "23.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1e1b9996004e6a39c06e6d66bd7684c8a07e73dd9137a2b6f2bbfde675d636a" +checksum = "9310227f043ed99877b0449a683025a7461431a00995dcd6ef423a273d0fd85d" dependencies = [ "sp-api", "sp-core", @@ -10739,9 +11042,9 @@ dependencies = [ [[package]] name = "sp-panic-handler" -version = "10.0.0" +version = "12.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "261572cc0db4b41cf7587b4f7bdc15b8f83f748f17ae1c3c2f56a3e8e62ee913" +checksum = "b00e40857ed3e0187f145b037c733545c5633859f1bd1d1b09deb52805fa696a" dependencies = [ "backtrace", "lazy_static", @@ -10750,9 +11053,9 @@ dependencies = [ [[package]] name = "sp-rpc" -version = "21.0.0" +version = "23.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5828020dd51228aeee12a571720f3354deb95bc159f5edf4b7f2ffb3e023a12e" +checksum = "51867fea921f54bbaa2bf505f373559b5f3b80e8d7f38ecb9677f0d3795a3e6a" dependencies = [ "rustc-hash", "serde", @@ -10761,9 +11064,9 @@ dependencies = [ [[package]] name = "sp-runtime" -version = "26.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f645e9e2c82d052ea48ed987a8789daca1c03f9b5ed1aa49cd080092eda85330" +checksum = "6d9c40ff7303e62219b55635e5245d963358cb77d6916250991ebcb82c0be2c6" dependencies = [ "either", "hash256-std-hasher", @@ -10784,9 +11087,9 @@ dependencies = [ [[package]] name = "sp-runtime-interface" -version = "19.0.0" +version = "21.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ef767d6e400ee54a420bcbc570030741420c2d938a6e379d21cab9875a339c5" +checksum = "4f365332922a8cfa98ab00c6d08b1b0f24e159e730dd554e720d950ff3371b1f" dependencies = [ "bytes", "impl-trait-for-tuples", @@ -10803,22 +11106,22 @@ dependencies = [ [[package]] name = "sp-runtime-interface-proc-macro" -version = "13.0.0" +version = "15.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdd795a4a2205b64d95da897f85b7c83a0044f30df22b0ea282f8387dc6ca428" +checksum = "9b2afcbd1bd18d323371111b66b7ac2870bdc1c86c3d7b0dae67b112ca52b4d8" dependencies = [ "Inflector", "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] name = "sp-session" -version = "22.0.0" +version = "24.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff5d53ba296b793574fc12b6ebf49d6755d24439979290682ca58d759db5bb73" +checksum = "248dd8f49aa96b56bf0a7d513691ddb4194f9359fdb93e94397eabdef1036085" dependencies = [ "parity-scale-codec", "scale-info", @@ -10832,9 +11135,9 @@ dependencies = [ [[package]] name = "sp-staking" -version = "21.0.0" +version = "23.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8acb11c6a7765d2df277110fe25bba075f697aba999b29a6c9b55eb2b95401b0" +checksum = "ee0feed0137234598bd1f76d0b468c585ea16619ea9ed1acbba82dd24ac79788" dependencies = [ "impl-trait-for-tuples", "parity-scale-codec", @@ -10847,9 +11150,9 @@ dependencies = [ [[package]] name = "sp-state-machine" -version = "0.30.0" +version = "0.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "771dce7d78335718ab8475984b6dbc1f374777049ed1c308186679e611333be2" +checksum = "96e087fa4430befd2047b61d912c9d6fa4eaed408c4b58b46c6e9acd7965f2d3" dependencies = [ "hash-db", "log", @@ -10869,13 +11172,13 @@ dependencies = [ [[package]] name = "sp-statement-store" -version = "5.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49c431b349889565a6b7f13eaa8216af8f826b015cbe1c9ef21999a44edd61d7" +checksum = "4b8654bcd37602b1811414050d34d14f543873bd4e64e50d210a0116b660c600" dependencies = [ "aes-gcm 0.10.2", "curve25519-dalek 4.0.0", - "ed25519-dalek 2.0.0", + "ed25519-dalek", "hkdf", "parity-scale-codec", "rand 0.8.5", @@ -10894,15 +11197,15 @@ dependencies = [ [[package]] name = "sp-std" -version = "10.0.0" +version = "12.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ed09ef1760e8be9b64b7f739f1cf9a94528130be475d8e4f2d1be1e690c9f9c" +checksum = "54c78c5a66682568cc7b153603c5d01a2cc8f5c221c7b1e921517a0eef18ae05" [[package]] name = "sp-storage" -version = "15.0.0" +version = "17.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c20f503280c004d94033a32cb84274ede30ef0b4b634770b1e7d595f8245bda4" +checksum = "016f20812cc51bd479cc88d048c35d44cd3adde4accdb159d49d6050f2953595" dependencies = [ "impl-serde", "parity-scale-codec", @@ -10914,9 +11217,9 @@ dependencies = [ [[package]] name = "sp-timestamp" -version = "21.0.0" +version = "23.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00d60953f7fc9b4f51bbcbac8f0cd8d6e6266a7cc18f661330308bbcec1eb053" +checksum = "004a7f453240db80b2967c0e1c6411836efc7daa7afae98fd16202caa51460e0" dependencies = [ "async-trait", "parity-scale-codec", @@ -10928,9 +11231,9 @@ dependencies = [ [[package]] name = "sp-tracing" -version = "12.0.0" +version = "14.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebabec43485ebdb2fdb5c6f9b388590d4797a3888024d74724ada2f16b2113b8" +checksum = "0d727cb5265641ffbb7d4e42c18b63e29f6cfdbd240aae3bcf093c3d6eb29a19" dependencies = [ "parity-scale-codec", "sp-std", @@ -10941,9 +11244,9 @@ dependencies = [ [[package]] name = "sp-transaction-pool" -version = "21.0.0" +version = "23.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa16493e2b8f84b03167c901f4ef7af8fe3e58c4c3426d41cc48dc10597d255d" +checksum = "c7cd2afe89c474339d15d06e73639171ebe4d280be6904d9349072103da21427" dependencies = [ "sp-api", "sp-runtime", @@ -10951,9 +11254,9 @@ dependencies = [ [[package]] name = "sp-transaction-storage-proof" -version = "21.0.0" +version = "23.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42a926dbe30a0af60eae24ff01c532e545b9093eda36f520f2a744e40112e62b" +checksum = "39ae7c4954431b8479f7b2b6b82f0551cc360a1ee59b6a5276eef86a1099eaed" dependencies = [ "async-trait", "parity-scale-codec", @@ -10967,9 +11270,9 @@ dependencies = [ [[package]] name = "sp-trie" -version = "24.0.0" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e78585a84d02d1c71e8eb8c00ed586c22a46ad4e773d9ff65c8ed3b8e98b9f51" +checksum = "1e359b358263cc322c3f678c272a3a519621d9853dcfa1374dfcbdb5f54c6f85" dependencies = [ "ahash 0.8.3", "hash-db", @@ -10979,6 +11282,7 @@ dependencies = [ "nohash-hasher", "parity-scale-codec", "parking_lot 0.12.1", + "rand 0.8.5", "scale-info", "schnellru", "sp-core", @@ -10991,9 +11295,9 @@ dependencies = [ [[package]] name = "sp-version" -version = "24.0.0" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68a8d11b816cd2c68467c697aecca868ab5828af02ef093681a88554d045b878" +checksum = "3e93da332eba3cb59a65f128da5edd5c70e1475692b45470104e7465b1278471" dependencies = [ "impl-serde", "parity-scale-codec", @@ -11009,21 +11313,21 @@ dependencies = [ [[package]] name = "sp-version-proc-macro" -version = "10.0.0" +version = "12.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6de7bbf860de93bb9b0ccd8e4a74e0dc40089e7192c397bac2b357d4da74e20c" +checksum = "49535d8c7184dab46d15639c68374a30cbb1534e392fa09a1ebb059a993ad436" dependencies = [ "parity-scale-codec", "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] name = "sp-wasm-interface" -version = "16.0.0" +version = "18.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee009ac79098027f5990984e0c5ee2fd4883b16bbd6ab97931f28c2148aaa3ea" +checksum = "d5d85813d46a22484cdf5e5afddbbe85442dd1b4d84d67a8c7792f92f9f93607" dependencies = [ "anyhow", "impl-trait-for-tuples", @@ -11035,9 +11339,9 @@ dependencies = [ [[package]] name = "sp-weights" -version = "22.0.0" +version = "24.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86566cae93412e40bea0db9e6b110a7379105412a9aed1af73b5d2fb69cb7000" +checksum = "751676c1263e7f3600af16bad26a7978a816bc532676fe05eafa23b862c05b9e" dependencies = [ "parity-scale-codec", "scale-info", @@ -11123,7 +11427,7 @@ dependencies = [ "frame-system-rpc-runtime-api", "frame-try-runtime", "hex-literal", - "kusama-runtime-constants 1.0.0", + "kusama-runtime-constants", "log", "pallet-authority-discovery", "pallet-authorship", @@ -11222,9 +11526,9 @@ dependencies = [ [[package]] name = "staging-parachain-info" -version = "0.2.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd1938a5d4938701c5a1ffd9c6cac6e906e219d85557f061f55f9f41e8d886c6" +checksum = "3a1bcf863664ca5708d92894fc30d2c6606c7dbb7d7cfcf43b9ae69d5b83f4fb" dependencies = [ "cumulus-primitives-core", "frame-support", @@ -11237,9 +11541,9 @@ dependencies = [ [[package]] name = "staging-xcm" -version = "2.0.1" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eec456fd5fcbc4dffe9c6042b452c1930eb1d5af5534d6ef36b8238b4517c9b7" +checksum = "7abd0c2e401a1e264379131c27676bc65c9631aaa508044bc04d8ce60a7d8524" dependencies = [ "bounded-collections", "derivative", @@ -11255,9 +11559,9 @@ dependencies = [ [[package]] name = "staging-xcm-builder" -version = "2.0.1" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07c1ca6d8f2b7fcbfe8866c1a1cb8105b62c72a74e727dd8c9943e8ac0c410eb" +checksum = "aa3b14246daaf0301dd35d698bac570d82ba0c6c6c1d3e149b93bcf377b2fc6b" dependencies = [ "frame-support", "frame-system", @@ -11278,9 +11582,9 @@ dependencies = [ [[package]] name = "staging-xcm-executor" -version = "2.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23b2ab1d434de75fb698d07d863ebede9745bd500d0284c659055201024627ca" +checksum = "3a85a421053f810f3ed988ba3cc39d926c95f70f1ae73282aa8cd5c50072173b" dependencies = [ "environmental", "frame-benchmarking", @@ -11371,7 +11675,7 @@ dependencies = [ "md-5", "rand 0.8.5", "ring", - "subtle", + "subtle 2.4.1", "thiserror", "tokio", "url", @@ -11393,9 +11697,9 @@ dependencies = [ [[package]] name = "substrate-prometheus-endpoint" -version = "0.14.0" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "055e4661d7d20f68388a26419216035df64a06f34506b947c8a6e2db49d85461" +checksum = "ededbe617291db8a47d6e5155486ff1e5425f0bbf5dcb7f752730466a62bd293" dependencies = [ "hyper", "log", @@ -11406,9 +11710,9 @@ dependencies = [ [[package]] name = "substrate-rpc-client" -version = "0.28.0" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c3d8512f21a03e4eda6b3bb6da45c6840266c66f82a31b57eb183b33d67c7f2" +checksum = "5575c2bef89385e5406565b8fe5620856d414e3846c60927a78f0788cb288c8c" dependencies = [ "async-trait", "jsonrpsee", @@ -11420,9 +11724,9 @@ dependencies = [ [[package]] name = "substrate-wasm-builder" -version = "12.0.0" +version = "14.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87e792ccae135d69e0bc0eaeafc649e356cc9844017502496364d6b13db09e18" +checksum = "12ab1707dbbd129622b771a9b80b25f0ebf1c04854b907bc44b51ec96fb4005b" dependencies = [ "ansi_term", "build-helper", @@ -11446,6 +11750,12 @@ dependencies = [ "autocfg", ] +[[package]] +name = "subtle" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee" + [[package]] name = "subtle" version = "2.4.1" @@ -11465,9 +11775,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.31" +version = "2.0.38" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "718fa2415bcb8d8bd775917a1bf12a7931b6dfa890753378538118181e0cb398" +checksum = "e96b79aaa137db8f61e26363a0c9b47d8b4ec75da28b7d1d614c2303e232408b" dependencies = [ "proc-macro2", "quote", @@ -11564,7 +11874,7 @@ checksum = "49922ecae66cc8a249b77e68d1d0623c1b2c514f0060c27cdc68bd62a1219d35" dependencies = [ "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] @@ -11714,9 +12024,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.32.0" +version = "1.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17ed6077ed6cd6c74735e21f37eb16dc3935f96878b1fe961074089cc80893f9" +checksum = "4f38200e3ef7995e5ef13baec2f432a6da0aa9ac495b2c0e8f3b7eec2c92d653" dependencies = [ "backtrace", "bytes", @@ -11739,7 +12049,7 @@ checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] @@ -11895,7 +12205,7 @@ checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab" dependencies = [ "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] @@ -11920,9 +12230,9 @@ dependencies = [ [[package]] name = "tracing-gum" -version = "2.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3d0644282db9729b5e373c01e8c8ba6d239e18989749c8aead177fe293eb5ca" +checksum = "32c0555bd635d9adbf8dec0bf45f7c2aef7541121d648ba37f5f792a211077b6" dependencies = [ "coarsetime", "polkadot-node-jaeger", @@ -11933,15 +12243,15 @@ dependencies = [ [[package]] name = "tracing-gum-proc-macro" -version = "2.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "599cd79d4843008763dd613a19ca7d28e12e6c43ab69fc5089b7ce587dd8e021" +checksum = "35756d8c1a227ec525853a1080bf890d03d939deb2bc50d4d43c96516c795d0d" dependencies = [ "expander 2.0.0", "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] @@ -11990,9 +12300,9 @@ dependencies = [ [[package]] name = "trie-db" -version = "0.27.1" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "767abe6ffed88a1889671a102c2861ae742726f52e0a5a425b92c9fbfa7e9c85" +checksum = "ff28e0f815c2fea41ebddf148e008b077d2faddb026c9555b29696114d602642" dependencies = [ "hash-db", "hashbrown 0.13.2", @@ -12157,7 +12467,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9f214e8f697e925001e66ec2c6e37a4ef93f0f78c2eed7814394e10c62025b05" dependencies = [ "generic-array 0.14.7", - "subtle", + "subtle 2.4.1", ] [[package]] @@ -12167,7 +12477,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc1de2c688dc15305988b563c3854064043356019f97a4b46276fe734c4f07ea" dependencies = [ "crypto-common", - "subtle", + "subtle 2.4.1", ] [[package]] @@ -12238,6 +12548,30 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" +[[package]] +name = "w3f-bls" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7335e4c132c28cc43caef6adb339789e599e39adbe78da0c4d547fad48cbc331" +dependencies = [ + "ark-bls12-377", + "ark-bls12-381", + "ark-ec", + "ark-ff", + "ark-serialize", + "ark-serialize-derive", + "arrayref", + "constcat", + "digest 0.10.7", + "rand 0.8.5", + "rand_chacha 0.3.1", + "rand_core 0.6.4", + "sha2 0.10.7", + "sha3", + "thiserror", + "zeroize", +] + [[package]] name = "waitgroup" version = "0.1.2" @@ -12311,7 +12645,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", "wasm-bindgen-shared", ] @@ -12345,7 +12679,7 @@ checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -12367,9 +12701,9 @@ dependencies = [ [[package]] name = "wasm-opt" -version = "0.114.1" +version = "0.116.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d005a95f934878a1fb446a816d51c3601a0120ff929005ba3bab3c749cfd1c7" +checksum = "fc942673e7684671f0c5708fc18993569d184265fd5223bb51fc8e5b9b6cfd52" dependencies = [ "anyhow", "libc", @@ -12383,9 +12717,9 @@ dependencies = [ [[package]] name = "wasm-opt-cxx-sys" -version = "0.114.1" +version = "0.116.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d04e240598162810fad3b2e96fa0dec6dba1eb65a03f3bd99a9248ab8b56caa" +checksum = "8c57b28207aa724318fcec6575fe74803c23f6f266fce10cbc9f3f116762f12e" dependencies = [ "anyhow", "cxx", @@ -12395,9 +12729,9 @@ dependencies = [ [[package]] name = "wasm-opt-sys" -version = "0.114.1" +version = "0.116.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2efd2aaca519d64098c4faefc8b7433a97ed511caf4c9e516384eb6aef1ff4f9" +checksum = "8a1cce564dc768dacbdb718fc29df2dba80bd21cb47d8f77ae7e3d95ceb98cbe" dependencies = [ "anyhow", "cc", @@ -12766,7 +13100,7 @@ dependencies = [ "sha1", "sha2 0.10.7", "signature 1.6.4", - "subtle", + "subtle 2.4.1", "thiserror", "tokio", "webpki 0.21.4", @@ -12860,7 +13194,7 @@ dependencies = [ "rtcp", "rtp", "sha-1", - "subtle", + "subtle 2.4.1", "thiserror", "tokio", "webrtc-util", @@ -12889,9 +13223,9 @@ dependencies = [ [[package]] name = "westend-runtime-constants" -version = "2.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75c4085403f25dda1eb8ce8859a118f9681c35687e893a8a2511179f7436643a" +checksum = "682c32c5f5e6d51c431bf66c33fc502c66e7b25488c0bd92f5ee020c329f2beb" dependencies = [ "frame-support", "polkadot-primitives", @@ -12900,6 +13234,7 @@ dependencies = [ "sp-core", "sp-runtime", "sp-weights", + "staging-xcm", ] [[package]] @@ -13234,14 +13569,14 @@ dependencies = [ [[package]] name = "xcm-procedural" -version = "2.0.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9bde452a547dd6926f94539b113171419b10d2b642a59cad296754259733bca6" +checksum = "401e2b62628da9246dececb06fe58118196557dd8deb9ce12d95cc4aaf56003f" dependencies = [ "Inflector", "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] @@ -13284,7 +13619,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.31", + "syn 2.0.38", ] [[package]] diff --git a/relay/kusama/Cargo.toml b/relay/kusama/Cargo.toml index 7911a54974..a6e14fb2e9 100644 --- a/relay/kusama/Cargo.toml +++ b/relay/kusama/Cargo.toml @@ -9,122 +9,122 @@ repository.workspace = true version.workspace = true [dependencies] -bitvec = { version = "1.0.0", default-features = false, features = ["alloc"] } -parity-scale-codec = { version = "3.6.1", default-features = false, features = ["derive", "max-encoded-len"] } -scale-info = { version = "2.5.0", default-features = false, features = ["derive"] } -log = { version = "0.4.17", default-features = false } +bitvec = { version = "1.0.1", default-features = false, features = ["alloc"] } +parity-scale-codec = { version = "3.6.5", default-features = false, features = ["derive", "max-encoded-len"] } +scale-info = { version = "2.10.0", default-features = false, features = ["derive"] } +log = { version = "0.4.20", default-features = false } rustc-hex = { version = "2.1.0", default-features = false } -serde = { version = "1.0.188", default-features = false } -serde_derive = { version = "1.0.117", optional = true } +serde = { version = "1.0.190", default-features = false } +serde_derive = { version = "1.0.190", optional = true } static_assertions = "1.1.0" -smallvec = "1.8.0" +smallvec = "1.11.1" -authority-discovery-primitives = { package = "sp-authority-discovery", default-features = false , version = "21.0.0" } -babe-primitives = { package = "sp-consensus-babe", default-features = false , version = "0.27.0" } -beefy-primitives = { package = "sp-consensus-beefy", default-features = false , version = "8.0.0" } -binary-merkle-tree = { default-features = false , version = "8.0.0" } +authority-discovery-primitives = { package = "sp-authority-discovery", default-features = false , version = "23.0.0" } +babe-primitives = { package = "sp-consensus-babe", default-features = false , version = "0.29.0" } +beefy-primitives = { package = "sp-consensus-beefy", default-features = false , version = "10.0.0" } +binary-merkle-tree = { default-features = false , version = "10.0.0" } kusama-runtime-constants = { package = "kusama-runtime-constants", path = "constants", default-features = false } -sp-api = { default-features = false , version = "21.0.0" } -inherents = { package = "sp-inherents", default-features = false , version = "21.0.0" } -offchain-primitives = { package = "sp-offchain", default-features = false , version = "21.0.0" } -sp-std = { package = "sp-std", default-features = false , version = "10.0.0" } -sp-application-crypto = { default-features = false , version = "25.0.0" } -sp-arithmetic = { default-features = false , version = "18.0.0" } -sp-io = { default-features = false , version = "25.0.0" } -sp-mmr-primitives = { default-features = false , version = "21.0.0" } -sp-runtime = { default-features = false , version = "26.0.0" } -sp-staking = { default-features = false , version = "21.0.0" } -sp-core = { default-features = false , version = "23.0.0" } -sp-session = { default-features = false , version = "22.0.0" } -sp-storage = { default-features = false , version = "15.0.0" } -sp-version = { default-features = false , version = "24.0.0" } -tx-pool-api = { package = "sp-transaction-pool", default-features = false , version = "21.0.0" } -block-builder-api = { package = "sp-block-builder", default-features = false , version = "21.0.0" } -sp-npos-elections = { default-features = false , version = "21.0.0" } +sp-api = { default-features = false , version = "23.0.0" } +inherents = { package = "sp-inherents", default-features = false , version = "23.0.0" } +offchain-primitives = { package = "sp-offchain", default-features = false , version = "23.0.0" } +sp-std = { package = "sp-std", default-features = false , version = "12.0.0" } +sp-application-crypto = { default-features = false , version = "27.0.0" } +sp-arithmetic = { default-features = false , version = "20.0.0" } +sp-io = { default-features = false , version = "27.0.0" } +sp-mmr-primitives = { default-features = false , version = "23.0.0" } +sp-runtime = { default-features = false , version = "28.0.0" } +sp-staking = { default-features = false , version = "23.0.0" } +sp-core = { default-features = false , version = "25.0.0" } +sp-session = { default-features = false , version = "24.0.0" } +sp-storage = { default-features = false , version = "17.0.0" } +sp-version = { default-features = false , version = "26.0.0" } +tx-pool-api = { package = "sp-transaction-pool", default-features = false , version = "23.0.0" } +block-builder-api = { package = "sp-block-builder", default-features = false , version = "23.0.0" } +sp-npos-elections = { default-features = false , version = "23.0.0" } -pallet-authority-discovery = { default-features = false , version = "23.0.0" } -pallet-authorship = { default-features = false , version = "23.0.0" } -pallet-babe = { default-features = false , version = "23.0.0" } -pallet-bags-list = { default-features = false , version = "22.0.0" } -pallet-balances = { default-features = false , version = "23.0.0" } -pallet-beefy = { default-features = false , version = "23.0.0" } -pallet-beefy-mmr = { default-features = false , version = "23.0.0" } -pallet-bounties = { default-features = false , version = "22.0.0" } -pallet-child-bounties = { default-features = false , version = "22.0.0" } -pallet-transaction-payment = { default-features = false , version = "23.0.0" } -pallet-transaction-payment-rpc-runtime-api = { default-features = false , version = "23.0.0" } -pallet-nomination-pools-runtime-api = { default-features = false , version = "18.0.0" } -pallet-collective = { default-features = false , version = "23.0.0" } -pallet-conviction-voting = { default-features = false , version = "23.0.0" } -pallet-democracy = { default-features = false , version = "23.0.0" } -pallet-elections-phragmen = { default-features = false , version = "24.0.0" } -pallet-election-provider-multi-phase = { default-features = false , version = "22.0.0" } -pallet-fast-unstake = { default-features = false , version = "22.0.0" } -frame-executive = { default-features = false , version = "23.0.0" } -pallet-grandpa = { default-features = false , version = "23.0.0" } -pallet-nis = { default-features = false , version = "23.0.0" } -pallet-identity = { default-features = false , version = "23.0.0" } -pallet-im-online = { default-features = false , version = "22.0.0" } -pallet-indices = { default-features = false , version = "23.0.0" } -pallet-membership = { default-features = false , version = "23.0.0" } -pallet-message-queue = { default-features = false , version = "26.0.0" } -pallet-mmr = { default-features = false , version = "22.0.0" } -pallet-multisig = { default-features = false , version = "23.0.0" } -pallet-nomination-pools = { default-features = false , version = "20.0.0" } -pallet-offences = { default-features = false , version = "22.0.0" } -pallet-preimage = { default-features = false , version = "23.0.0" } -pallet-proxy = { default-features = false , version = "23.0.0" } -pallet-ranked-collective = { default-features = false , version = "23.0.0" } -pallet-recovery = { default-features = false , version = "23.0.0" } -pallet-referenda = { default-features = false , version = "23.0.0" } -pallet-scheduler = { default-features = false , version = "24.0.0" } -pallet-session = { default-features = false , version = "23.0.0" } -pallet-society = { default-features = false, features = ["experimental"] , version = "23.0.0" } -frame-support = { default-features = false , version = "23.0.0" } -pallet-staking = { default-features = false , version = "23.0.0" } -pallet-state-trie-migration = { default-features = false , version = "24.0.0" } -pallet-staking-runtime-api = { default-features = false , version = "9.0.0" } -frame-system = { default-features = false , version = "23.0.0" } -frame-system-rpc-runtime-api = { default-features = false , version = "21.0.0" } -pallet-timestamp = { default-features = false , version = "22.0.0" } -pallet-tips = { default-features = false , version = "22.0.0" } -pallet-treasury = { default-features = false , version = "22.0.0" } -pallet-utility = { default-features = false , version = "23.0.0" } -pallet-vesting = { default-features = false , version = "23.0.0" } -pallet-whitelist = { default-features = false , version = "22.0.0" } -pallet-xcm = { default-features = false , version = "2.0.0" } -pallet-xcm-benchmarks = { default-features = false, optional = true , version = "2.0.0" } -frame-election-provider-support = { default-features = false , version = "23.0.0" } +pallet-authority-discovery = { default-features = false , version = "25.0.0" } +pallet-authorship = { default-features = false , version = "25.0.0" } +pallet-babe = { default-features = false , version = "25.0.0" } +pallet-bags-list = { default-features = false , version = "24.0.0" } +pallet-balances = { default-features = false , version = "25.0.0" } +pallet-beefy = { default-features = false , version = "25.0.0" } +pallet-beefy-mmr = { default-features = false , version = "25.0.0" } +pallet-bounties = { default-features = false , version = "24.0.0" } +pallet-child-bounties = { default-features = false , version = "24.0.0" } +pallet-transaction-payment = { default-features = false , version = "25.0.0" } +pallet-transaction-payment-rpc-runtime-api = { default-features = false , version = "25.0.0" } +pallet-nomination-pools-runtime-api = { default-features = false , version = "20.0.0" } +pallet-collective = { default-features = false , version = "25.0.0" } +pallet-conviction-voting = { default-features = false , version = "25.0.0" } +pallet-democracy = { default-features = false , version = "25.0.0" } +pallet-elections-phragmen = { default-features = false , version = "26.0.0" } +pallet-election-provider-multi-phase = { default-features = false , version = "24.0.0" } +pallet-fast-unstake = { default-features = false , version = "24.0.0" } +frame-executive = { default-features = false , version = "25.0.0" } +pallet-grandpa = { default-features = false , version = "25.0.0" } +pallet-nis = { default-features = false , version = "25.0.0" } +pallet-identity = { default-features = false , version = "25.0.0" } +pallet-im-online = { default-features = false , version = "24.0.0" } +pallet-indices = { default-features = false , version = "25.0.0" } +pallet-membership = { default-features = false , version = "25.0.0" } +pallet-message-queue = { default-features = false , version = "28.0.0" } +pallet-mmr = { default-features = false , version = "24.0.0" } +pallet-multisig = { default-features = false , version = "25.0.0" } +pallet-nomination-pools = { default-features = false , version = "22.0.0" } +pallet-offences = { default-features = false , version = "24.0.0" } +pallet-preimage = { default-features = false , version = "25.0.0" } +pallet-proxy = { default-features = false , version = "25.0.0" } +pallet-ranked-collective = { default-features = false , version = "25.0.0" } +pallet-recovery = { default-features = false , version = "25.0.0" } +pallet-referenda = { default-features = false , version = "25.0.0" } +pallet-scheduler = { default-features = false , version = "26.0.0" } +pallet-session = { default-features = false , version = "25.0.0" } +pallet-society = { default-features = false, version = "25.0.0" } +frame-support = { default-features = false , version = "25.0.0" } +pallet-staking = { default-features = false , version = "25.0.0" } +pallet-state-trie-migration = { default-features = false , version = "26.0.0" } +pallet-staking-runtime-api = { default-features = false , version = "11.0.0" } +frame-system = { default-features = false , version = "25.0.0" } +frame-system-rpc-runtime-api = { default-features = false , version = "23.0.0" } +pallet-timestamp = { default-features = false , version = "24.0.0" } +pallet-tips = { default-features = false , version = "24.0.0" } +pallet-treasury = { default-features = false , version = "24.0.0" } +pallet-utility = { default-features = false , version = "25.0.0" } +pallet-vesting = { default-features = false , version = "25.0.0" } +pallet-whitelist = { default-features = false , version = "24.0.0" } +pallet-xcm = { default-features = false , version = "4.0.0" } +pallet-xcm-benchmarks = { default-features = false, optional = true , version = "4.0.0" } +frame-election-provider-support = { default-features = false , version = "25.0.0" } -frame-benchmarking = { default-features = false, optional = true , version = "23.0.0" } -frame-try-runtime = { default-features = false, optional = true , version = "0.29.0" } -pallet-offences-benchmarking = { default-features = false, optional = true , version = "23.0.0" } -pallet-session-benchmarking = { default-features = false, optional = true , version = "23.0.0" } -pallet-nomination-pools-benchmarking = { default-features = false, optional = true , version = "21.0.0" } -frame-system-benchmarking = { default-features = false, optional = true , version = "23.0.0" } -pallet-election-provider-support-benchmarking = { default-features = false, optional = true , version = "22.0.0" } +frame-benchmarking = { default-features = false, optional = true , version = "25.0.0" } +frame-try-runtime = { default-features = false, optional = true , version = "0.31.0" } +pallet-offences-benchmarking = { default-features = false, optional = true , version = "25.0.0" } +pallet-session-benchmarking = { default-features = false, optional = true , version = "25.0.0" } +pallet-nomination-pools-benchmarking = { default-features = false, optional = true , version = "23.0.0" } +frame-system-benchmarking = { default-features = false, optional = true , version = "25.0.0" } +pallet-election-provider-support-benchmarking = { default-features = false, optional = true , version = "24.0.0" } hex-literal = "0.4.1" -runtime-common = { package = "polkadot-runtime-common", default-features = false, features = ["experimental"] , version = "2.0.0" } -runtime-parachains = { package = "polkadot-runtime-parachains", default-features = false , version = "2.0.0" } -primitives = { package = "polkadot-primitives", default-features = false , version = "2.0.0" } +runtime-common = { package = "polkadot-runtime-common", default-features = false, version = "4.0.0" } +runtime-parachains = { package = "polkadot-runtime-parachains", default-features = false , version = "4.0.0" } +primitives = { package = "polkadot-primitives", default-features = false , version = "4.0.0" } -xcm = { package = "staging-xcm", default-features = false , version = "2.0.1" } -xcm-executor = { package = "staging-xcm-executor", default-features = false , version = "2.0.0" } -xcm-builder = { package = "staging-xcm-builder", default-features = false , version = "2.0.1" } +xcm = { package = "staging-xcm", default-features = false , version = "4.0.0" } +xcm-executor = { package = "staging-xcm-executor", default-features = false , version = "4.0.0" } +xcm-builder = { package = "staging-xcm-builder", default-features = false , version = "4.0.0" } [dev-dependencies] tiny-keccak = { version = "2.0.2", features = ["keccak"] } -keyring = { package = "sp-keyring", version = "26.0.0" } -sp-trie = { version = "24.0.0" } +keyring = { package = "sp-keyring", version = "28.0.0" } +sp-trie = { version = "26.0.0" } separator = "0.4.1" -serde_json = "1.0.96" -remote-externalities = { package = "frame-remote-externalities" , version = "0.30.0" } -tokio = { version = "1.24.2", features = ["macros"] } -sp-tracing = { default-features = false , version = "12.0.0" } +serde_json = "1.0.108" +remote-externalities = { package = "frame-remote-externalities" , version = "0.32.0" } +tokio = { version = "1.33.0", features = ["macros"] } +sp-tracing = { default-features = false , version = "14.0.0" } [build-dependencies] -substrate-wasm-builder = { version = "12.0.0" } +substrate-wasm-builder = { version = "14.0.0" } [features] default = [ "std" ] diff --git a/relay/kusama/constants/Cargo.toml b/relay/kusama/constants/Cargo.toml index d2f32861a1..f1061bba33 100644 --- a/relay/kusama/constants/Cargo.toml +++ b/relay/kusama/constants/Cargo.toml @@ -7,14 +7,14 @@ edition.workspace = true license.workspace = true [dependencies] -smallvec = "1.8.0" +smallvec = "1.11.1" -frame-support = { default-features = false , version = "23.0.0" } -primitives = { package = "polkadot-primitives", default-features = false , version = "2.0.0" } -runtime-common = { package = "polkadot-runtime-common", default-features = false , version = "2.0.0" } -sp-runtime = { default-features = false , version = "26.0.0" } -sp-weights = { default-features = false , version = "22.0.0" } -sp-core = { default-features = false , version = "23.0.0" } +frame-support = { default-features = false , version = "25.0.0" } +primitives = { package = "polkadot-primitives", default-features = false , version = "4.0.0" } +runtime-common = { package = "polkadot-runtime-common", default-features = false , version = "4.0.0" } +sp-runtime = { default-features = false , version = "28.0.0" } +sp-weights = { default-features = false , version = "24.0.0" } +sp-core = { default-features = false , version = "25.0.0" } [features] default = [ "std" ] diff --git a/relay/polkadot/Cargo.toml b/relay/polkadot/Cargo.toml index 3c72f30e09..fb5869e44a 100644 --- a/relay/polkadot/Cargo.toml +++ b/relay/polkadot/Cargo.toml @@ -8,115 +8,115 @@ edition.workspace = true license.workspace = true [dependencies] -bitvec = { version = "1.0.0", default-features = false, features = ["alloc"] } -parity-scale-codec = { version = "3.6.1", default-features = false, features = ["derive", "max-encoded-len"] } -scale-info = { version = "2.5.0", default-features = false, features = ["derive"] } -log = { version = "0.4.17", default-features = false } +bitvec = { version = "1.0.1", default-features = false, features = ["alloc"] } +parity-scale-codec = { version = "3.6.5", default-features = false, features = ["derive", "max-encoded-len"] } +scale-info = { version = "2.10.0", default-features = false, features = ["derive"] } +log = { version = "0.4.20", default-features = false } rustc-hex = { version = "2.1.0", default-features = false } -serde = { version = "1.0.188", default-features = false } -serde_derive = { version = "1.0.117", optional = true } +serde = { version = "1.0.190", default-features = false } +serde_derive = { version = "1.0.190", optional = true } static_assertions = "1.1.0" -smallvec = "1.8.0" +smallvec = "1.11.1" -authority-discovery-primitives = { package = "sp-authority-discovery", default-features = false , version = "21.0.0" } -babe-primitives = { package = "sp-consensus-babe", default-features = false , version = "0.27.0" } -beefy-primitives = { package = "sp-consensus-beefy", default-features = false , version = "8.0.0" } -block-builder-api = { package = "sp-block-builder", default-features = false , version = "21.0.0" } -inherents = { package = "sp-inherents", default-features = false , version = "21.0.0" } -offchain-primitives = { package = "sp-offchain", default-features = false , version = "21.0.0" } -tx-pool-api = { package = "sp-transaction-pool", default-features = false , version = "21.0.0" } -sp-arithmetic = { default-features = false , version = "18.0.0" } -sp-api = { default-features = false , version = "21.0.0" } -sp-std = { default-features = false , version = "10.0.0" } -sp-io = { default-features = false , version = "25.0.0" } -sp-mmr-primitives = { default-features = false , version = "21.0.0" } -sp-runtime = { default-features = false , version = "26.0.0" } -sp-staking = { default-features = false , version = "21.0.0" } -sp-core = { default-features = false , version = "23.0.0" } -sp-session = { default-features = false , version = "22.0.0" } -sp-storage = { default-features = false , version = "15.0.0" } -sp-version = { default-features = false , version = "24.0.0" } -sp-npos-elections = { default-features = false , version = "21.0.0" } +authority-discovery-primitives = { package = "sp-authority-discovery", default-features = false , version = "23.0.0" } +babe-primitives = { package = "sp-consensus-babe", default-features = false , version = "0.29.0" } +beefy-primitives = { package = "sp-consensus-beefy", default-features = false , version = "10.0.0" } +block-builder-api = { package = "sp-block-builder", default-features = false , version = "23.0.0" } +inherents = { package = "sp-inherents", default-features = false , version = "23.0.0" } +offchain-primitives = { package = "sp-offchain", default-features = false , version = "23.0.0" } +tx-pool-api = { package = "sp-transaction-pool", default-features = false , version = "23.0.0" } +sp-arithmetic = { default-features = false , version = "20.0.0" } +sp-api = { default-features = false , version = "23.0.0" } +sp-std = { default-features = false , version = "12.0.0" } +sp-io = { default-features = false , version = "27.0.0" } +sp-mmr-primitives = { default-features = false , version = "23.0.0" } +sp-runtime = { default-features = false , version = "28.0.0" } +sp-staking = { default-features = false , version = "23.0.0" } +sp-core = { default-features = false , version = "25.0.0" } +sp-session = { default-features = false , version = "24.0.0" } +sp-storage = { default-features = false , version = "17.0.0" } +sp-version = { default-features = false , version = "26.0.0" } +sp-npos-elections = { default-features = false , version = "23.0.0" } -pallet-authority-discovery = { default-features = false , version = "23.0.0" } -pallet-authorship = { default-features = false , version = "23.0.0" } -pallet-babe = { default-features = false , version = "23.0.0" } -pallet-bags-list = { default-features = false , version = "22.0.0" } -pallet-balances = { default-features = false , version = "23.0.0" } -pallet-bounties = { default-features = false , version = "22.0.0" } -pallet-child-bounties = { default-features = false , version = "22.0.0" } -pallet-transaction-payment = { default-features = false , version = "23.0.0" } -pallet-transaction-payment-rpc-runtime-api = { default-features = false , version = "23.0.0" } -pallet-collective = { default-features = false , version = "23.0.0" } -pallet-conviction-voting = { default-features = false , version = "23.0.0" } -pallet-democracy = { default-features = false , version = "23.0.0" } -pallet-elections-phragmen = { default-features = false , version = "24.0.0" } -pallet-election-provider-multi-phase = { default-features = false , version = "22.0.0" } -pallet-fast-unstake = { default-features = false , version = "22.0.0" } -frame-executive = { default-features = false , version = "23.0.0" } -pallet-grandpa = { default-features = false , version = "23.0.0" } -pallet-identity = { default-features = false , version = "23.0.0" } -pallet-im-online = { default-features = false , version = "22.0.0" } -pallet-indices = { default-features = false , version = "23.0.0" } -pallet-membership = { default-features = false , version = "23.0.0" } -pallet-message-queue = { default-features = false , version = "26.0.0" } -pallet-multisig = { default-features = false , version = "23.0.0" } -pallet-nomination-pools = { default-features = false , version = "20.0.0" } -pallet-nomination-pools-runtime-api = { default-features = false , version = "18.0.0" } -pallet-offences = { default-features = false , version = "22.0.0" } -pallet-preimage = { default-features = false , version = "23.0.0" } -pallet-proxy = { default-features = false , version = "23.0.0" } -pallet-referenda = { default-features = false , version = "23.0.0" } -pallet-scheduler = { default-features = false , version = "24.0.0" } -pallet-session = { default-features = false , version = "23.0.0" } -frame-support = { default-features = false , version = "23.0.0" } -pallet-staking = { default-features = false , version = "23.0.0" } -pallet-staking-reward-fn = { default-features = false, version = "14.0.0" } -pallet-staking-reward-curve = { version = "8.0.0" } -pallet-staking-runtime-api = { default-features = false , version = "9.0.0" } -frame-system = { default-features = false , version = "23.0.0" } -frame-system-rpc-runtime-api = { default-features = false , version = "21.0.0" } +pallet-authority-discovery = { default-features = false , version = "25.0.0" } +pallet-authorship = { default-features = false , version = "25.0.0" } +pallet-babe = { default-features = false , version = "25.0.0" } +pallet-bags-list = { default-features = false , version = "24.0.0" } +pallet-balances = { default-features = false , version = "25.0.0" } +pallet-bounties = { default-features = false , version = "24.0.0" } +pallet-child-bounties = { default-features = false , version = "24.0.0" } +pallet-transaction-payment = { default-features = false , version = "25.0.0" } +pallet-transaction-payment-rpc-runtime-api = { default-features = false , version = "25.0.0" } +pallet-collective = { default-features = false , version = "25.0.0" } +pallet-conviction-voting = { default-features = false , version = "25.0.0" } +pallet-democracy = { default-features = false , version = "25.0.0" } +pallet-elections-phragmen = { default-features = false , version = "26.0.0" } +pallet-election-provider-multi-phase = { default-features = false , version = "24.0.0" } +pallet-fast-unstake = { default-features = false , version = "24.0.0" } +frame-executive = { default-features = false , version = "25.0.0" } +pallet-grandpa = { default-features = false , version = "25.0.0" } +pallet-identity = { default-features = false , version = "25.0.0" } +pallet-im-online = { default-features = false , version = "24.0.0" } +pallet-indices = { default-features = false , version = "25.0.0" } +pallet-membership = { default-features = false , version = "25.0.0" } +pallet-message-queue = { default-features = false , version = "28.0.0" } +pallet-multisig = { default-features = false , version = "25.0.0" } +pallet-nomination-pools = { default-features = false , version = "22.0.0" } +pallet-nomination-pools-runtime-api = { default-features = false , version = "20.0.0" } +pallet-offences = { default-features = false , version = "24.0.0" } +pallet-preimage = { default-features = false , version = "25.0.0" } +pallet-proxy = { default-features = false , version = "25.0.0" } +pallet-referenda = { default-features = false , version = "25.0.0" } +pallet-scheduler = { default-features = false , version = "26.0.0" } +pallet-session = { default-features = false , version = "25.0.0" } +frame-support = { default-features = false , version = "25.0.0" } +pallet-staking = { default-features = false , version = "25.0.0" } +pallet-staking-reward-fn = { default-features = false, version = "16.0.0" } +pallet-staking-reward-curve = { version = "10.0.0" } +pallet-staking-runtime-api = { default-features = false , version = "11.0.0" } +frame-system = { default-features = false , version = "25.0.0" } +frame-system-rpc-runtime-api = { default-features = false , version = "23.0.0" } polkadot-runtime-constants = { package = "polkadot-runtime-constants", path = "constants", default-features = false } -pallet-timestamp = { default-features = false , version = "22.0.0" } -pallet-tips = { default-features = false , version = "22.0.0" } -pallet-treasury = { default-features = false , version = "22.0.0" } -pallet-whitelist = { default-features = false , version = "22.0.0" } -pallet-vesting = { default-features = false , version = "23.0.0" } -pallet-utility = { default-features = false , version = "23.0.0" } -frame-election-provider-support = { default-features = false , version = "23.0.0" } -pallet-xcm = { default-features = false, features=["experimental"] , version = "2.0.0" } -pallet-xcm-benchmarks = { default-features = false, optional = true , version = "2.0.0" } +pallet-timestamp = { default-features = false , version = "24.0.0" } +pallet-tips = { default-features = false , version = "24.0.0" } +pallet-treasury = { default-features = false , version = "24.0.0" } +pallet-whitelist = { default-features = false , version = "24.0.0" } +pallet-vesting = { default-features = false , version = "25.0.0" } +pallet-utility = { default-features = false , version = "25.0.0" } +frame-election-provider-support = { default-features = false , version = "25.0.0" } +pallet-xcm = { default-features = false, version = "4.0.0" } +pallet-xcm-benchmarks = { default-features = false, optional = true , version = "4.0.0" } -frame-benchmarking = { default-features = false, optional = true , version = "23.0.0" } -frame-try-runtime = { default-features = false, optional = true , version = "0.29.0" } -frame-system-benchmarking = { default-features = false, optional = true , version = "23.0.0" } -pallet-election-provider-support-benchmarking = { default-features = false, optional = true , version = "22.0.0" } -pallet-offences-benchmarking = { default-features = false, optional = true , version = "23.0.0" } -pallet-session-benchmarking = { default-features = false, optional = true , version = "23.0.0" } -pallet-nomination-pools-benchmarking = { default-features = false, optional = true , version = "21.0.0" } +frame-benchmarking = { default-features = false, optional = true , version = "25.0.0" } +frame-try-runtime = { default-features = false, optional = true , version = "0.31.0" } +frame-system-benchmarking = { default-features = false, optional = true , version = "25.0.0" } +pallet-election-provider-support-benchmarking = { default-features = false, optional = true , version = "24.0.0" } +pallet-offences-benchmarking = { default-features = false, optional = true , version = "25.0.0" } +pallet-session-benchmarking = { default-features = false, optional = true , version = "25.0.0" } +pallet-nomination-pools-benchmarking = { default-features = false, optional = true , version = "23.0.0" } hex-literal = { version = "0.4.1", optional = true } -runtime-common = { package = "polkadot-runtime-common", default-features = false, features = ["experimental"] , version = "2.0.0" } -runtime-parachains = { package = "polkadot-runtime-parachains", default-features = false , version = "2.0.0" } -primitives = { package = "polkadot-primitives", default-features = false , version = "2.0.0" } +runtime-common = { package = "polkadot-runtime-common", default-features = false, version = "4.0.0" } +runtime-parachains = { package = "polkadot-runtime-parachains", default-features = false , version = "4.0.0" } +primitives = { package = "polkadot-primitives", default-features = false , version = "4.0.0" } -xcm = { package = "staging-xcm", default-features = false , version = "2.0.1" } -xcm-executor = { package = "staging-xcm-executor", default-features = false , version = "2.0.0" } -xcm-builder = { package = "staging-xcm-builder", default-features = false , version = "2.0.1" } +xcm = { package = "staging-xcm", default-features = false , version = "4.0.0" } +xcm-executor = { package = "staging-xcm-executor", default-features = false , version = "4.0.0" } +xcm-builder = { package = "staging-xcm-builder", default-features = false , version = "4.0.0" } [dev-dependencies] hex-literal = "0.4.1" tiny-keccak = { version = "2.0.2", features = ["keccak"] } -keyring = { package = "sp-keyring", version = "26.0.0" } -sp-trie = { version = "24.0.0" } -serde_json = "1.0.96" +keyring = { package = "sp-keyring", version = "28.0.0" } +sp-trie = { version = "26.0.0" } +serde_json = "1.0.108" separator = "0.4.1" -remote-externalities = { package = "frame-remote-externalities" , version = "0.30.0" } -tokio = { version = "1.24.2", features = ["macros"] } -sp-tracing = { default-features = false , version = "12.0.0" } +remote-externalities = { package = "frame-remote-externalities" , version = "0.32.0" } +tokio = { version = "1.33.0", features = ["macros"] } +sp-tracing = { default-features = false , version = "14.0.0" } [build-dependencies] -substrate-wasm-builder = { version = "12.0.0" } +substrate-wasm-builder = { version = "14.0.0" } [features] default = [ "std" ] diff --git a/relay/polkadot/constants/Cargo.toml b/relay/polkadot/constants/Cargo.toml index d5d580cf3d..39d7addbcc 100644 --- a/relay/polkadot/constants/Cargo.toml +++ b/relay/polkadot/constants/Cargo.toml @@ -7,14 +7,14 @@ edition.workspace = true license.workspace = true [dependencies] -smallvec = "1.8.0" +smallvec = "1.11.1" -frame-support = { default-features = false , version = "23.0.0" } -primitives = { package = "polkadot-primitives", default-features = false , version = "2.0.0" } -runtime-common = { package = "polkadot-runtime-common", default-features = false , version = "2.0.0" } -sp-runtime = { default-features = false , version = "26.0.0" } -sp-weights = { default-features = false , version = "22.0.0" } -sp-core = { default-features = false , version = "23.0.0" } +frame-support = { default-features = false , version = "25.0.0" } +primitives = { package = "polkadot-primitives", default-features = false , version = "4.0.0" } +runtime-common = { package = "polkadot-runtime-common", default-features = false , version = "4.0.0" } +sp-runtime = { default-features = false , version = "28.0.0" } +sp-weights = { default-features = false , version = "24.0.0" } +sp-core = { default-features = false , version = "25.0.0" } [features] default = [ "std" ] diff --git a/system-parachains/asset-hubs/asset-hub-kusama/Cargo.toml b/system-parachains/asset-hubs/asset-hub-kusama/Cargo.toml index 13d150bc87..5434783aa7 100644 --- a/system-parachains/asset-hubs/asset-hub-kusama/Cargo.toml +++ b/system-parachains/asset-hubs/asset-hub-kusama/Cargo.toml @@ -9,84 +9,84 @@ repository.workspace = true version.workspace = true [dependencies] -codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false, features = ["derive", "max-encoded-len"] } +codec = { package = "parity-scale-codec", version = "3.6.5", default-features = false, features = ["derive", "max-encoded-len"] } hex-literal = { version = "0.4.1" } log = { version = "0.4.20", default-features = false } -scale-info = { version = "2.9.0", default-features = false, features = ["derive"] } -smallvec = "1.11.0" +scale-info = { version = "2.10.0", default-features = false, features = ["derive"] } +smallvec = "1.11.1" # Substrate -frame-benchmarking = { default-features = false, optional = true, version = "23.0.0" } -frame-executive = { default-features = false, version = "23.0.0" } -frame-support = { default-features = false, version = "23.0.0" } -frame-system = { default-features = false, version = "23.0.0" } -frame-system-benchmarking = { default-features = false, optional = true, version = "23.0.0" } -frame-system-rpc-runtime-api = { default-features = false, version = "21.0.0" } -frame-try-runtime = { default-features = false, optional = true, version = "0.29.0" } -pallet-asset-conversion-tx-payment = { default-features = false, version = "5.0.0" } -pallet-assets = { default-features = false, version = "24.0.0" } -pallet-asset-conversion = { default-features = false, version = "5.0.0" } -pallet-aura = { default-features = false, version = "22.0.0" } -pallet-authorship = { default-features = false, version = "23.0.0" } -pallet-balances = { default-features = false, version = "23.0.0" } -pallet-multisig = { default-features = false, version = "23.0.0" } -pallet-nft-fractionalization = { default-features = false, version = "5.0.0" } -pallet-nfts = { default-features = false, version = "17.0.0" } -pallet-nfts-runtime-api = { default-features = false, version = "9.0.0" } -pallet-proxy = { default-features = false, version = "23.0.0" } -pallet-session = { default-features = false, version = "23.0.0" } -pallet-state-trie-migration = { default-features = false, optional = true , version = "24.0.0" } -pallet-timestamp = { default-features = false, version = "22.0.0" } -pallet-transaction-payment = { default-features = false, version = "23.0.0" } -pallet-transaction-payment-rpc-runtime-api = { default-features = false, version = "23.0.0" } -pallet-uniques = { default-features = false, version = "23.0.0" } -pallet-utility = { default-features = false, version = "23.0.0" } -sp-api = { default-features = false, version = "21.0.0" } -sp-block-builder = { default-features = false, version = "21.0.0" } -sp-consensus-aura = { default-features = false, version = "0.27.0" } -sp-core = { default-features = false, version = "23.0.0" } -sp-inherents = { default-features = false, version = "21.0.0" } -sp-offchain = { default-features = false, version = "21.0.0" } -sp-runtime = { default-features = false, version = "26.0.0" } -sp-session = { default-features = false, version = "22.0.0" } -sp-std = { default-features = false, version = "10.0.0" } -sp-storage = { default-features = false, version = "15.0.0" } -sp-transaction-pool = { default-features = false, version = "21.0.0" } -sp-version = { default-features = false, version = "24.0.0" } -sp-weights = { default-features = false, version = "22.0.0" } +frame-benchmarking = { default-features = false, optional = true, version = "25.0.0" } +frame-executive = { default-features = false, version = "25.0.0" } +frame-support = { default-features = false, version = "25.0.0" } +frame-system = { default-features = false, version = "25.0.0" } +frame-system-benchmarking = { default-features = false, optional = true, version = "25.0.0" } +frame-system-rpc-runtime-api = { default-features = false, version = "23.0.0" } +frame-try-runtime = { default-features = false, optional = true, version = "0.31.0" } +pallet-asset-conversion-tx-payment = { default-features = false, version = "7.0.0" } +pallet-assets = { default-features = false, version = "26.0.0" } +pallet-asset-conversion = { default-features = false, version = "7.0.0" } +pallet-aura = { default-features = false, version = "24.0.0" } +pallet-authorship = { default-features = false, version = "25.0.0" } +pallet-balances = { default-features = false, version = "25.0.0" } +pallet-multisig = { default-features = false, version = "25.0.0" } +pallet-nft-fractionalization = { default-features = false, version = "7.0.0" } +pallet-nfts = { default-features = false, version = "19.0.0" } +pallet-nfts-runtime-api = { default-features = false, version = "11.0.0" } +pallet-proxy = { default-features = false, version = "25.0.0" } +pallet-session = { default-features = false, version = "25.0.0" } +pallet-state-trie-migration = { default-features = false, optional = true , version = "26.0.0" } +pallet-timestamp = { default-features = false, version = "24.0.0" } +pallet-transaction-payment = { default-features = false, version = "25.0.0" } +pallet-transaction-payment-rpc-runtime-api = { default-features = false, version = "25.0.0" } +pallet-uniques = { default-features = false, version = "25.0.0" } +pallet-utility = { default-features = false, version = "25.0.0" } +sp-api = { default-features = false, version = "23.0.0" } +sp-block-builder = { default-features = false, version = "23.0.0" } +sp-consensus-aura = { default-features = false, version = "0.29.0" } +sp-core = { default-features = false, version = "25.0.0" } +sp-inherents = { default-features = false, version = "23.0.0" } +sp-offchain = { default-features = false, version = "23.0.0" } +sp-runtime = { default-features = false, version = "28.0.0" } +sp-session = { default-features = false, version = "24.0.0" } +sp-std = { default-features = false, version = "12.0.0" } +sp-storage = { default-features = false, version = "17.0.0" } +sp-transaction-pool = { default-features = false, version = "23.0.0" } +sp-version = { default-features = false, version = "26.0.0" } +sp-weights = { default-features = false, version = "24.0.0" } # num-traits feature needed for dex integer sq root: -primitive-types = { version = "0.12.1", default-features = false, features = ["codec", "scale-info", "num-traits"] } +primitive-types = { version = "0.12.2", default-features = false, features = ["codec", "scale-info", "num-traits"] } # Polkadot kusama-runtime-constants = { path = "../../../relay/kusama/constants", default-features = false} -pallet-xcm = { default-features = false, version = "2.0.0" } -pallet-xcm-benchmarks = { default-features = false, optional = true , version = "2.0.0" } -polkadot-core-primitives = { default-features = false, version = "2.0.0" } -polkadot-parachain-primitives = { default-features = false, version = "1.0.0" } -polkadot-runtime-common = { default-features = false, version = "2.0.0" } -xcm = { package = "staging-xcm", default-features = false, version = "2.0.1" } -xcm-builder = { package = "staging-xcm-builder", default-features = false, version = "2.0.1" } -xcm-executor = { package = "staging-xcm-executor", default-features = false, version = "2.0.0" } +pallet-xcm = { default-features = false, version = "4.0.0" } +pallet-xcm-benchmarks = { default-features = false, optional = true , version = "4.0.0" } +polkadot-core-primitives = { default-features = false, version = "4.0.0" } +polkadot-parachain-primitives = { default-features = false, version = "3.0.0" } +polkadot-runtime-common = { default-features = false, version = "4.0.0" } +xcm = { package = "staging-xcm", default-features = false, version = "4.0.0" } +xcm-builder = { package = "staging-xcm-builder", default-features = false, version = "4.0.0" } +xcm-executor = { package = "staging-xcm-executor", default-features = false, version = "4.0.0" } # Cumulus -cumulus-pallet-aura-ext = { default-features = false , version = "0.2.0" } -cumulus-pallet-dmp-queue = { default-features = false , version = "0.2.0" } -cumulus-pallet-parachain-system = { default-features = false, features = ["parameterized-consensus-hook",] , version = "0.2.0" } -cumulus-pallet-session-benchmarking = { default-features = false, version = "4.0.0" } -cumulus-pallet-xcm = { default-features = false , version = "0.2.0" } -cumulus-pallet-xcmp-queue = { default-features = false , version = "0.2.0" } -cumulus-primitives-core = { default-features = false , version = "0.2.0" } -cumulus-primitives-utility = { default-features = false , version = "0.2.0" } -pallet-collator-selection = { default-features = false , version = "4.0.0" } -parachain-info = { package = "staging-parachain-info", default-features = false , version = "0.2.0" } -parachains-common = { default-features = false , version = "2.0.0" } -assets-common = { default-features = false , version = "0.2.0" } +cumulus-pallet-aura-ext = { default-features = false , version = "0.4.0" } +cumulus-pallet-dmp-queue = { default-features = false , version = "0.4.0" } +cumulus-pallet-parachain-system = { default-features = false, features = ["parameterized-consensus-hook",] , version = "0.4.0" } +cumulus-pallet-session-benchmarking = { default-features = false, version = "6.0.0" } +cumulus-pallet-xcm = { default-features = false , version = "0.4.0" } +cumulus-pallet-xcmp-queue = { default-features = false , version = "0.4.0" } +cumulus-primitives-core = { default-features = false , version = "0.4.0" } +cumulus-primitives-utility = { default-features = false , version = "0.4.0" } +pallet-collator-selection = { default-features = false , version = "6.0.0" } +parachain-info = { package = "staging-parachain-info", default-features = false , version = "0.4.0" } +parachains-common = { default-features = false , version = "4.0.0" } +assets-common = { default-features = false , version = "0.4.0" } [dev-dependencies] -asset-test-utils = { version = "2.0.0" } +asset-test-utils = { version = "4.0.0" } [build-dependencies] -substrate-wasm-builder = { optional = true , version = "12.0.0" } +substrate-wasm-builder = { optional = true , version = "14.0.0" } [features] default = [ "std" ] diff --git a/system-parachains/asset-hubs/asset-hub-polkadot/Cargo.toml b/system-parachains/asset-hubs/asset-hub-polkadot/Cargo.toml index 973f527540..2e69902304 100644 --- a/system-parachains/asset-hubs/asset-hub-polkadot/Cargo.toml +++ b/system-parachains/asset-hubs/asset-hub-polkadot/Cargo.toml @@ -9,80 +9,80 @@ repository.workspace = true version.workspace = true [dependencies] -codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false, features = ["derive", "max-encoded-len"] } +codec = { package = "parity-scale-codec", version = "3.6.5", default-features = false, features = ["derive", "max-encoded-len"] } hex-literal = { version = "0.4.1", optional = true } log = { version = "0.4.20", default-features = false } -scale-info = { version = "2.9.0", default-features = false, features = ["derive"] } -smallvec = "1.11.0" +scale-info = { version = "2.10.0", default-features = false, features = ["derive"] } +smallvec = "1.11.1" # Substrate -frame-benchmarking = { default-features = false, optional = true, version = "23.0.0" } -frame-executive = { default-features = false, version = "23.0.0" } -frame-support = { default-features = false, version = "23.0.0" } -frame-system = { default-features = false, version = "23.0.0" } -frame-system-benchmarking = { default-features = false, optional = true, version = "23.0.0" } -frame-system-rpc-runtime-api = { default-features = false, version = "21.0.0" } -frame-try-runtime = { default-features = false, optional = true, version = "0.29.0" } -pallet-asset-tx-payment = { default-features = false , version = "23.0.0" } -pallet-assets = { default-features = false, version = "24.0.0" } -pallet-aura = { default-features = false, version = "22.0.0" } -pallet-authorship = { default-features = false, version = "23.0.0" } -pallet-balances = { default-features = false, version = "23.0.0" } -pallet-multisig = { default-features = false, version = "23.0.0" } -pallet-nfts = { default-features = false, version = "17.0.0" } -pallet-nfts-runtime-api = { default-features = false, version = "9.0.0" } -pallet-proxy = { default-features = false, version = "23.0.0" } -pallet-session = { default-features = false, version = "23.0.0" } -pallet-timestamp = { default-features = false, version = "22.0.0" } -pallet-transaction-payment = { default-features = false, version = "23.0.0" } -pallet-transaction-payment-rpc-runtime-api = { default-features = false, version = "23.0.0" } -pallet-uniques = { default-features = false, version = "23.0.0" } -pallet-utility = { default-features = false, version = "23.0.0" } -sp-api = { default-features = false, version = "21.0.0" } -sp-block-builder = { default-features = false, version = "21.0.0" } -sp-consensus-aura = { default-features = false, version = "0.27.0" } -sp-core = { default-features = false, version = "23.0.0" } -sp-inherents = { default-features = false, version = "21.0.0" } -sp-offchain = { default-features = false, version = "21.0.0" } -sp-runtime = { default-features = false, version = "26.0.0" } -sp-session = { default-features = false, version = "22.0.0" } -sp-std = { default-features = false, version = "10.0.0" } -sp-storage = { default-features = false, version = "15.0.0" } -sp-transaction-pool = { default-features = false, version = "21.0.0" } -sp-version = { default-features = false, version = "24.0.0" } -sp-weights = { default-features = false, version = "22.0.0" } +frame-benchmarking = { default-features = false, optional = true, version = "25.0.0" } +frame-executive = { default-features = false, version = "25.0.0" } +frame-support = { default-features = false, version = "25.0.0" } +frame-system = { default-features = false, version = "25.0.0" } +frame-system-benchmarking = { default-features = false, optional = true, version = "25.0.0" } +frame-system-rpc-runtime-api = { default-features = false, version = "23.0.0" } +frame-try-runtime = { default-features = false, optional = true, version = "0.31.0" } +pallet-asset-tx-payment = { default-features = false , version = "25.0.0" } +pallet-assets = { default-features = false, version = "26.0.0" } +pallet-aura = { default-features = false, version = "24.0.0" } +pallet-authorship = { default-features = false, version = "25.0.0" } +pallet-balances = { default-features = false, version = "25.0.0" } +pallet-multisig = { default-features = false, version = "25.0.0" } +pallet-nfts = { default-features = false, version = "19.0.0" } +pallet-nfts-runtime-api = { default-features = false, version = "11.0.0" } +pallet-proxy = { default-features = false, version = "25.0.0" } +pallet-session = { default-features = false, version = "25.0.0" } +pallet-timestamp = { default-features = false, version = "24.0.0" } +pallet-transaction-payment = { default-features = false, version = "25.0.0" } +pallet-transaction-payment-rpc-runtime-api = { default-features = false, version = "25.0.0" } +pallet-uniques = { default-features = false, version = "25.0.0" } +pallet-utility = { default-features = false, version = "25.0.0" } +sp-api = { default-features = false, version = "23.0.0" } +sp-block-builder = { default-features = false, version = "23.0.0" } +sp-consensus-aura = { default-features = false, version = "0.29.0" } +sp-core = { default-features = false, version = "25.0.0" } +sp-inherents = { default-features = false, version = "23.0.0" } +sp-offchain = { default-features = false, version = "23.0.0" } +sp-runtime = { default-features = false, version = "28.0.0" } +sp-session = { default-features = false, version = "24.0.0" } +sp-std = { default-features = false, version = "12.0.0" } +sp-storage = { default-features = false, version = "17.0.0" } +sp-transaction-pool = { default-features = false, version = "23.0.0" } +sp-version = { default-features = false, version = "26.0.0" } +sp-weights = { default-features = false, version = "24.0.0" } # Polkadot -pallet-xcm = { default-features = false, version = "2.0.0" } -pallet-xcm-benchmarks = { default-features = false, optional = true , version = "2.0.0" } -polkadot-core-primitives = { default-features = false, version = "2.0.0" } -polkadot-parachain-primitives = { default-features = false, version = "1.0.0" } -polkadot-runtime-common = { default-features = false, version = "2.0.0" } +pallet-xcm = { default-features = false, version = "4.0.0" } +pallet-xcm-benchmarks = { default-features = false, optional = true , version = "4.0.0" } +polkadot-core-primitives = { default-features = false, version = "4.0.0" } +polkadot-parachain-primitives = { default-features = false, version = "3.0.0" } +polkadot-runtime-common = { default-features = false, version = "4.0.0" } polkadot-runtime-constants = { path = "../../../relay/polkadot/constants", default-features = false} -xcm = { package = "staging-xcm", default-features = false, version = "2.0.1" } -xcm-builder = { package = "staging-xcm-builder", default-features = false, version = "2.0.1" } -xcm-executor = { package = "staging-xcm-executor", default-features = false, version = "2.0.0" } +xcm = { package = "staging-xcm", default-features = false, version = "4.0.0" } +xcm-builder = { package = "staging-xcm-builder", default-features = false, version = "4.0.0" } +xcm-executor = { package = "staging-xcm-executor", default-features = false, version = "4.0.0" } # Cumulus -cumulus-pallet-aura-ext = { default-features = false , version = "0.2.0" } -cumulus-pallet-dmp-queue = { default-features = false , version = "0.2.0" } -cumulus-pallet-parachain-system = { default-features = false, features = ["parameterized-consensus-hook",] , version = "0.2.0" } -cumulus-pallet-session-benchmarking = { default-features = false, version = "4.0.0" } -cumulus-pallet-xcm = { default-features = false , version = "0.2.0" } -cumulus-pallet-xcmp-queue = { default-features = false , version = "0.2.0" } -cumulus-primitives-core = { default-features = false , version = "0.2.0" } -cumulus-primitives-utility = { default-features = false , version = "0.2.0" } -pallet-collator-selection = { default-features = false , version = "4.0.0" } -parachain-info = { package = "staging-parachain-info", default-features = false , version = "0.2.0" } -parachains-common = { default-features = false , version = "2.0.0" } -assets-common = { default-features = false , version = "0.2.0" } +cumulus-pallet-aura-ext = { default-features = false , version = "0.4.0" } +cumulus-pallet-dmp-queue = { default-features = false , version = "0.4.0" } +cumulus-pallet-parachain-system = { default-features = false, features = ["parameterized-consensus-hook",] , version = "0.4.0" } +cumulus-pallet-session-benchmarking = { default-features = false, version = "6.0.0" } +cumulus-pallet-xcm = { default-features = false , version = "0.4.0" } +cumulus-pallet-xcmp-queue = { default-features = false , version = "0.4.0" } +cumulus-primitives-core = { default-features = false , version = "0.4.0" } +cumulus-primitives-utility = { default-features = false , version = "0.4.0" } +pallet-collator-selection = { default-features = false , version = "6.0.0" } +parachain-info = { package = "staging-parachain-info", default-features = false , version = "0.4.0" } +parachains-common = { default-features = false , version = "4.0.0" } +assets-common = { default-features = false , version = "0.4.0" } [dev-dependencies] hex-literal = "0.4.1" -asset-test-utils = { version = "2.0.0" } +asset-test-utils = { version = "4.0.0" } [build-dependencies] -substrate-wasm-builder = { optional = true , version = "12.0.0" } +substrate-wasm-builder = { optional = true , version = "14.0.0" } [features] default = [ "std" ] diff --git a/system-parachains/bridge-hubs/bridge-hub-kusama/Cargo.toml b/system-parachains/bridge-hubs/bridge-hub-kusama/Cargo.toml index 11225c620b..f5f658fea2 100644 --- a/system-parachains/bridge-hubs/bridge-hub-kusama/Cargo.toml +++ b/system-parachains/bridge-hubs/bridge-hub-kusama/Cargo.toml @@ -9,73 +9,73 @@ repository.workspace = true version.workspace = true [build-dependencies] -substrate-wasm-builder = { optional = true , version = "12.0.0" } +substrate-wasm-builder = { optional = true , version = "14.0.0" } [dependencies] -codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false, features = ["derive"] } +codec = { package = "parity-scale-codec", version = "3.6.5", default-features = false, features = ["derive"] } hex-literal = { version = "0.4.1" } log = { version = "0.4.20", default-features = false } -scale-info = { version = "2.9.0", default-features = false, features = ["derive"] } -serde = { version = "1.0.188", optional = true, features = ["derive"] } -smallvec = "1.11.0" +scale-info = { version = "2.10.0", default-features = false, features = ["derive"] } +serde = { version = "1.0.190", optional = true, features = ["derive"] } +smallvec = "1.11.1" # Substrate -frame-benchmarking = { default-features = false, optional = true, version = "23.0.0" } -frame-executive = { default-features = false, version = "23.0.0" } -frame-support = { default-features = false, version = "23.0.0" } -frame-system = { default-features = false, version = "23.0.0" } -frame-system-benchmarking = { default-features = false, optional = true, version = "23.0.0" } -frame-system-rpc-runtime-api = { default-features = false, version = "21.0.0" } -frame-try-runtime = { default-features = false, optional = true, version = "0.29.0" } -pallet-aura = { default-features = false, version = "22.0.0" } -pallet-authorship = { default-features = false, version = "23.0.0" } -pallet-balances = { default-features = false, version = "23.0.0" } -pallet-multisig = { default-features = false, version = "23.0.0" } -pallet-session = { default-features = false, version = "23.0.0" } -pallet-timestamp = { default-features = false, version = "22.0.0" } -pallet-transaction-payment = { default-features = false, version = "23.0.0" } -pallet-transaction-payment-rpc-runtime-api = { default-features = false, version = "23.0.0" } -pallet-utility = { default-features = false, version = "23.0.0" } -sp-api = { default-features = false, version = "21.0.0" } -sp-block-builder = { default-features = false, version = "21.0.0" } -sp-consensus-aura = { default-features = false, version = "0.27.0" } -sp-core = { default-features = false, version = "23.0.0" } -sp-inherents = { default-features = false, version = "21.0.0" } -sp-io = { default-features = false, version = "25.0.0" } -sp-offchain = { default-features = false, version = "21.0.0" } -sp-runtime = { default-features = false, version = "26.0.0" } -sp-session = { default-features = false, version = "22.0.0" } -sp-std = { default-features = false, version = "10.0.0" } -sp-storage = { default-features = false, version = "15.0.0" } -sp-transaction-pool = { default-features = false, version = "21.0.0" } -sp-version = { default-features = false, version = "24.0.0" } +frame-benchmarking = { default-features = false, optional = true, version = "25.0.0" } +frame-executive = { default-features = false, version = "25.0.0" } +frame-support = { default-features = false, version = "25.0.0" } +frame-system = { default-features = false, version = "25.0.0" } +frame-system-benchmarking = { default-features = false, optional = true, version = "25.0.0" } +frame-system-rpc-runtime-api = { default-features = false, version = "23.0.0" } +frame-try-runtime = { default-features = false, optional = true, version = "0.31.0" } +pallet-aura = { default-features = false, version = "24.0.0" } +pallet-authorship = { default-features = false, version = "25.0.0" } +pallet-balances = { default-features = false, version = "25.0.0" } +pallet-multisig = { default-features = false, version = "25.0.0" } +pallet-session = { default-features = false, version = "25.0.0" } +pallet-timestamp = { default-features = false, version = "24.0.0" } +pallet-transaction-payment = { default-features = false, version = "25.0.0" } +pallet-transaction-payment-rpc-runtime-api = { default-features = false, version = "25.0.0" } +pallet-utility = { default-features = false, version = "25.0.0" } +sp-api = { default-features = false, version = "23.0.0" } +sp-block-builder = { default-features = false, version = "23.0.0" } +sp-consensus-aura = { default-features = false, version = "0.29.0" } +sp-core = { default-features = false, version = "25.0.0" } +sp-inherents = { default-features = false, version = "23.0.0" } +sp-io = { default-features = false, version = "27.0.0" } +sp-offchain = { default-features = false, version = "23.0.0" } +sp-runtime = { default-features = false, version = "28.0.0" } +sp-session = { default-features = false, version = "24.0.0" } +sp-std = { default-features = false, version = "12.0.0" } +sp-storage = { default-features = false, version = "17.0.0" } +sp-transaction-pool = { default-features = false, version = "23.0.0" } +sp-version = { default-features = false, version = "26.0.0" } # Polkadot kusama-runtime-constants = { path = "../../../relay/kusama/constants", default-features = false} -pallet-xcm = { default-features = false, version = "2.0.0" } -pallet-xcm-benchmarks = { default-features = false, optional = true , version = "2.0.0" } -polkadot-core-primitives = { default-features = false, version = "2.0.0" } -polkadot-parachain-primitives = { default-features = false, version = "1.0.0" } -polkadot-runtime-common = { default-features = false, version = "2.0.0" } -xcm = { package = "staging-xcm", default-features = false, version = "2.0.1" } -xcm-builder = { package = "staging-xcm-builder", default-features = false, version = "2.0.1" } -xcm-executor = { package = "staging-xcm-executor", default-features = false, version = "2.0.0" } +pallet-xcm = { default-features = false, version = "4.0.0" } +pallet-xcm-benchmarks = { default-features = false, optional = true , version = "4.0.0" } +polkadot-core-primitives = { default-features = false, version = "4.0.0" } +polkadot-parachain-primitives = { default-features = false, version = "3.0.0" } +polkadot-runtime-common = { default-features = false, version = "4.0.0" } +xcm = { package = "staging-xcm", default-features = false, version = "4.0.0" } +xcm-builder = { package = "staging-xcm-builder", default-features = false, version = "4.0.0" } +xcm-executor = { package = "staging-xcm-executor", default-features = false, version = "4.0.0" } # Cumulus -cumulus-pallet-aura-ext = { default-features = false , version = "0.2.0" } -cumulus-pallet-dmp-queue = { default-features = false , version = "0.2.0" } -cumulus-pallet-parachain-system = { default-features = false, features = ["parameterized-consensus-hook",] , version = "0.2.0" } -cumulus-pallet-session-benchmarking = { default-features = false, version = "4.0.0" } -cumulus-pallet-xcm = { default-features = false , version = "0.2.0" } -cumulus-pallet-xcmp-queue = { default-features = false , version = "0.2.0" } -cumulus-primitives-core = { default-features = false , version = "0.2.0" } -cumulus-primitives-utility = { default-features = false , version = "0.2.0" } -pallet-collator-selection = { default-features = false , version = "4.0.0" } -parachain-info = { package = "staging-parachain-info", default-features = false , version = "0.2.0" } -parachains-common = { default-features = false , version = "2.0.0" } +cumulus-pallet-aura-ext = { default-features = false , version = "0.4.0" } +cumulus-pallet-dmp-queue = { default-features = false , version = "0.4.0" } +cumulus-pallet-parachain-system = { default-features = false, features = ["parameterized-consensus-hook",] , version = "0.4.0" } +cumulus-pallet-session-benchmarking = { default-features = false, version = "6.0.0" } +cumulus-pallet-xcm = { default-features = false , version = "0.4.0" } +cumulus-pallet-xcmp-queue = { default-features = false , version = "0.4.0" } +cumulus-primitives-core = { default-features = false , version = "0.4.0" } +cumulus-primitives-utility = { default-features = false , version = "0.4.0" } +pallet-collator-selection = { default-features = false , version = "6.0.0" } +parachain-info = { package = "staging-parachain-info", default-features = false , version = "0.4.0" } +parachains-common = { default-features = false , version = "4.0.0" } [dev-dependencies] -bridge-hub-test-utils = { version = "0.2.0" } +bridge-hub-test-utils = { version = "0.4.0" } [features] default = [ "std" ] diff --git a/system-parachains/bridge-hubs/bridge-hub-polkadot/Cargo.toml b/system-parachains/bridge-hubs/bridge-hub-polkadot/Cargo.toml index cac2fcc358..c28039fa3e 100644 --- a/system-parachains/bridge-hubs/bridge-hub-polkadot/Cargo.toml +++ b/system-parachains/bridge-hubs/bridge-hub-polkadot/Cargo.toml @@ -9,73 +9,73 @@ repository.workspace = true version.workspace = true [build-dependencies] -substrate-wasm-builder = { optional = true , version = "12.0.0" } +substrate-wasm-builder = { optional = true , version = "14.0.0" } [dependencies] -codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false, features = ["derive"] } +codec = { package = "parity-scale-codec", version = "3.6.5", default-features = false, features = ["derive"] } hex-literal = { version = "0.4.1" } log = { version = "0.4.20", default-features = false } -scale-info = { version = "2.9.0", default-features = false, features = ["derive"] } -serde = { version = "1.0.188", optional = true, features = ["derive"] } -smallvec = "1.11.0" +scale-info = { version = "2.10.0", default-features = false, features = ["derive"] } +serde = { version = "1.0.190", optional = true, features = ["derive"] } +smallvec = "1.11.1" # Substrate -frame-benchmarking = { default-features = false, optional = true, version = "23.0.0" } -frame-executive = { default-features = false, version = "23.0.0" } -frame-support = { default-features = false, version = "23.0.0" } -frame-system = { default-features = false, version = "23.0.0" } -frame-system-benchmarking = { default-features = false, optional = true, version = "23.0.0" } -frame-system-rpc-runtime-api = { default-features = false, version = "21.0.0" } -frame-try-runtime = { default-features = false, optional = true, version = "0.29.0" } -pallet-aura = { default-features = false, version = "22.0.0" } -pallet-authorship = { default-features = false, version = "23.0.0" } -pallet-balances = { default-features = false, version = "23.0.0" } -pallet-multisig = { default-features = false, version = "23.0.0" } -pallet-session = { default-features = false, version = "23.0.0" } -pallet-timestamp = { default-features = false, version = "22.0.0" } -pallet-transaction-payment = { default-features = false, version = "23.0.0" } -pallet-transaction-payment-rpc-runtime-api = { default-features = false, version = "23.0.0" } -pallet-utility = { default-features = false, version = "23.0.0" } -sp-api = { default-features = false, version = "21.0.0" } -sp-block-builder = { default-features = false, version = "21.0.0" } -sp-consensus-aura = { default-features = false, version = "0.27.0" } -sp-core = { default-features = false, version = "23.0.0" } -sp-inherents = { default-features = false, version = "21.0.0" } -sp-io = { default-features = false, version = "25.0.0" } -sp-offchain = { default-features = false, version = "21.0.0" } -sp-runtime = { default-features = false, version = "26.0.0" } -sp-session = { default-features = false, version = "22.0.0" } -sp-std = { default-features = false, version = "10.0.0" } -sp-storage = { default-features = false, version = "15.0.0" } -sp-transaction-pool = { default-features = false, version = "21.0.0" } -sp-version = { default-features = false, version = "24.0.0" } +frame-benchmarking = { default-features = false, optional = true, version = "25.0.0" } +frame-executive = { default-features = false, version = "25.0.0" } +frame-support = { default-features = false, version = "25.0.0" } +frame-system = { default-features = false, version = "25.0.0" } +frame-system-benchmarking = { default-features = false, optional = true, version = "25.0.0" } +frame-system-rpc-runtime-api = { default-features = false, version = "23.0.0" } +frame-try-runtime = { default-features = false, optional = true, version = "0.31.0" } +pallet-aura = { default-features = false, version = "24.0.0" } +pallet-authorship = { default-features = false, version = "25.0.0" } +pallet-balances = { default-features = false, version = "25.0.0" } +pallet-multisig = { default-features = false, version = "25.0.0" } +pallet-session = { default-features = false, version = "25.0.0" } +pallet-timestamp = { default-features = false, version = "24.0.0" } +pallet-transaction-payment = { default-features = false, version = "25.0.0" } +pallet-transaction-payment-rpc-runtime-api = { default-features = false, version = "25.0.0" } +pallet-utility = { default-features = false, version = "25.0.0" } +sp-api = { default-features = false, version = "23.0.0" } +sp-block-builder = { default-features = false, version = "23.0.0" } +sp-consensus-aura = { default-features = false, version = "0.29.0" } +sp-core = { default-features = false, version = "25.0.0" } +sp-inherents = { default-features = false, version = "23.0.0" } +sp-io = { default-features = false, version = "27.0.0" } +sp-offchain = { default-features = false, version = "23.0.0" } +sp-runtime = { default-features = false, version = "28.0.0" } +sp-session = { default-features = false, version = "24.0.0" } +sp-std = { default-features = false, version = "12.0.0" } +sp-storage = { default-features = false, version = "17.0.0" } +sp-transaction-pool = { default-features = false, version = "23.0.0" } +sp-version = { default-features = false, version = "26.0.0" } # Polkadot polkadot-runtime-constants = { path = "../../../relay/polkadot/constants", default-features = false} -pallet-xcm = { default-features = false, version = "2.0.0" } -pallet-xcm-benchmarks = { default-features = false, optional = true , version = "2.0.0" } -polkadot-core-primitives = { default-features = false, version = "2.0.0" } -polkadot-parachain-primitives = { default-features = false, version = "1.0.0" } -polkadot-runtime-common = { default-features = false, version = "2.0.0" } -xcm = { package = "staging-xcm", default-features = false, version = "2.0.1" } -xcm-builder = { package = "staging-xcm-builder", default-features = false, version = "2.0.1" } -xcm-executor = { package = "staging-xcm-executor", default-features = false, version = "2.0.0" } +pallet-xcm = { default-features = false, version = "4.0.0" } +pallet-xcm-benchmarks = { default-features = false, optional = true , version = "4.0.0" } +polkadot-core-primitives = { default-features = false, version = "4.0.0" } +polkadot-parachain-primitives = { default-features = false, version = "3.0.0" } +polkadot-runtime-common = { default-features = false, version = "4.0.0" } +xcm = { package = "staging-xcm", default-features = false, version = "4.0.0" } +xcm-builder = { package = "staging-xcm-builder", default-features = false, version = "4.0.0" } +xcm-executor = { package = "staging-xcm-executor", default-features = false, version = "4.0.0" } # Cumulus -cumulus-pallet-aura-ext = { default-features = false , version = "0.2.0" } -cumulus-pallet-dmp-queue = { default-features = false , version = "0.2.0" } -cumulus-pallet-parachain-system = { default-features = false, features = ["parameterized-consensus-hook",] , version = "0.2.0" } -cumulus-pallet-session-benchmarking = { default-features = false, version = "4.0.0" } -cumulus-pallet-xcm = { default-features = false , version = "0.2.0" } -cumulus-pallet-xcmp-queue = { default-features = false , version = "0.2.0" } -cumulus-primitives-core = { default-features = false , version = "0.2.0" } -cumulus-primitives-utility = { default-features = false , version = "0.2.0" } -pallet-collator-selection = { default-features = false , version = "4.0.0" } -parachain-info = { package = "staging-parachain-info", default-features = false , version = "0.2.0" } -parachains-common = { default-features = false , version = "2.0.0" } +cumulus-pallet-aura-ext = { default-features = false , version = "0.4.0" } +cumulus-pallet-dmp-queue = { default-features = false , version = "0.4.0" } +cumulus-pallet-parachain-system = { default-features = false, features = ["parameterized-consensus-hook",] , version = "0.4.0" } +cumulus-pallet-session-benchmarking = { default-features = false, version = "6.0.0" } +cumulus-pallet-xcm = { default-features = false , version = "0.4.0" } +cumulus-pallet-xcmp-queue = { default-features = false , version = "0.4.0" } +cumulus-primitives-core = { default-features = false , version = "0.4.0" } +cumulus-primitives-utility = { default-features = false , version = "0.4.0" } +pallet-collator-selection = { default-features = false , version = "6.0.0" } +parachain-info = { package = "staging-parachain-info", default-features = false , version = "0.4.0" } +parachains-common = { default-features = false , version = "4.0.0" } [dev-dependencies] -bridge-hub-test-utils = { version = "0.2.0" } +bridge-hub-test-utils = { version = "0.4.0" } [features] default = [ "std" ] diff --git a/system-parachains/collectives/collectives-polkadot/Cargo.toml b/system-parachains/collectives/collectives-polkadot/Cargo.toml index 5af3c75bed..54a5f94f10 100644 --- a/system-parachains/collectives/collectives-polkadot/Cargo.toml +++ b/system-parachains/collectives/collectives-polkadot/Cargo.toml @@ -9,80 +9,80 @@ repository.workspace = true version.workspace = true [dependencies] -codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false, features = ["derive", "max-encoded-len"] } +codec = { package = "parity-scale-codec", version = "3.6.5", default-features = false, features = ["derive", "max-encoded-len"] } hex-literal = { version = "0.4.1" } log = { version = "0.4.20", default-features = false } -scale-info = { version = "2.9.0", default-features = false, features = ["derive"] } -smallvec = "1.11.0" +scale-info = { version = "2.10.0", default-features = false, features = ["derive"] } +smallvec = "1.11.1" # Substrate -frame-benchmarking = { default-features = false, optional = true, version = "23.0.0" } -frame-executive = { default-features = false, version = "23.0.0" } -frame-support = { default-features = false, version = "23.0.0" } -frame-system = { default-features = false, version = "23.0.0" } -frame-system-benchmarking = { default-features = false, optional = true, version = "23.0.0" } -frame-system-rpc-runtime-api = { default-features = false, version = "21.0.0" } -frame-try-runtime = { default-features = false, optional = true, version = "0.29.0" } -pallet-alliance = { default-features = false, version = "22.0.0" } -pallet-aura = { default-features = false, version = "22.0.0" } -pallet-authorship = { default-features = false, version = "23.0.0" } -pallet-balances = { default-features = false, version = "23.0.0" } -pallet-collective = { default-features = false, version = "23.0.0" } -pallet-multisig = { default-features = false, version = "23.0.0" } -pallet-preimage = { default-features = false , version = "23.0.0" } -pallet-proxy = { default-features = false, version = "23.0.0" } -pallet-scheduler = { default-features = false , version = "24.0.0" } -pallet-session = { default-features = false, version = "23.0.0" } -pallet-timestamp = { default-features = false, version = "22.0.0" } -pallet-transaction-payment = { default-features = false, version = "23.0.0" } -pallet-transaction-payment-rpc-runtime-api = { default-features = false, version = "23.0.0" } -pallet-utility = { default-features = false, version = "23.0.0" } -pallet-referenda = { default-features = false, version = "23.0.0" } -pallet-ranked-collective = { default-features = false, version = "23.0.0" } -pallet-core-fellowship = { default-features = false, version = "7.0.0" } -pallet-salary = { default-features = false, version = "8.0.0" } -sp-api = { default-features = false, version = "21.0.0" } -sp-arithmetic = { default-features = false , version = "18.0.0" } -sp-block-builder = { default-features = false, version = "21.0.0" } -sp-consensus-aura = { default-features = false, version = "0.27.0" } -sp-core = { default-features = false, version = "23.0.0" } -sp-inherents = { default-features = false, version = "21.0.0" } -sp-offchain = { default-features = false, version = "21.0.0" } -sp-runtime = { default-features = false, version = "26.0.0" } -sp-session = { default-features = false, version = "22.0.0" } -sp-std = { default-features = false, version = "10.0.0" } -sp-storage = { default-features = false, version = "15.0.0" } -sp-transaction-pool = { default-features = false, version = "21.0.0" } -sp-version = { default-features = false, version = "24.0.0" } +frame-benchmarking = { default-features = false, optional = true, version = "25.0.0" } +frame-executive = { default-features = false, version = "25.0.0" } +frame-support = { default-features = false, version = "25.0.0" } +frame-system = { default-features = false, version = "25.0.0" } +frame-system-benchmarking = { default-features = false, optional = true, version = "25.0.0" } +frame-system-rpc-runtime-api = { default-features = false, version = "23.0.0" } +frame-try-runtime = { default-features = false, optional = true, version = "0.31.0" } +pallet-alliance = { default-features = false, version = "24.0.0" } +pallet-aura = { default-features = false, version = "24.0.0" } +pallet-authorship = { default-features = false, version = "25.0.0" } +pallet-balances = { default-features = false, version = "25.0.0" } +pallet-collective = { default-features = false, version = "25.0.0" } +pallet-multisig = { default-features = false, version = "25.0.0" } +pallet-preimage = { default-features = false , version = "25.0.0" } +pallet-proxy = { default-features = false, version = "25.0.0" } +pallet-scheduler = { default-features = false , version = "26.0.0" } +pallet-session = { default-features = false, version = "25.0.0" } +pallet-timestamp = { default-features = false, version = "24.0.0" } +pallet-transaction-payment = { default-features = false, version = "25.0.0" } +pallet-transaction-payment-rpc-runtime-api = { default-features = false, version = "25.0.0" } +pallet-utility = { default-features = false, version = "25.0.0" } +pallet-referenda = { default-features = false, version = "25.0.0" } +pallet-ranked-collective = { default-features = false, version = "25.0.0" } +pallet-core-fellowship = { default-features = false, version = "9.0.0" } +pallet-salary = { default-features = false, version = "10.0.0" } +sp-api = { default-features = false, version = "23.0.0" } +sp-arithmetic = { default-features = false , version = "20.0.0" } +sp-block-builder = { default-features = false, version = "23.0.0" } +sp-consensus-aura = { default-features = false, version = "0.29.0" } +sp-core = { default-features = false, version = "25.0.0" } +sp-inherents = { default-features = false, version = "23.0.0" } +sp-offchain = { default-features = false, version = "23.0.0" } +sp-runtime = { default-features = false, version = "28.0.0" } +sp-session = { default-features = false, version = "24.0.0" } +sp-std = { default-features = false, version = "12.0.0" } +sp-storage = { default-features = false, version = "17.0.0" } +sp-transaction-pool = { default-features = false, version = "23.0.0" } +sp-version = { default-features = false, version = "26.0.0" } # Polkadot -pallet-xcm = { default-features = false, version = "2.0.0" } -polkadot-core-primitives = { default-features = false, version = "2.0.0" } -polkadot-parachain-primitives = { default-features = false, version = "1.0.0" } -polkadot-runtime-common = { default-features = false, version = "2.0.0" } +pallet-xcm = { default-features = false, version = "4.0.0" } +polkadot-core-primitives = { default-features = false, version = "4.0.0" } +polkadot-parachain-primitives = { default-features = false, version = "3.0.0" } +polkadot-runtime-common = { default-features = false, version = "4.0.0" } polkadot-runtime-constants = { path = "../../../relay/polkadot/constants", default-features = false} -xcm = { package = "staging-xcm", default-features = false, version = "2.0.1" } -xcm-builder = { package = "staging-xcm-builder", default-features = false, version = "2.0.1" } -xcm-executor = { package = "staging-xcm-executor", default-features = false, version = "2.0.0" } +xcm = { package = "staging-xcm", default-features = false, version = "4.0.0" } +xcm-builder = { package = "staging-xcm-builder", default-features = false, version = "4.0.0" } +xcm-executor = { package = "staging-xcm-executor", default-features = false, version = "4.0.0" } # Cumulus -cumulus-pallet-aura-ext = { default-features = false , version = "0.2.0" } -cumulus-pallet-dmp-queue = { default-features = false , version = "0.2.0" } -cumulus-pallet-parachain-system = { default-features = false, features = ["parameterized-consensus-hook",] , version = "0.2.0" } -cumulus-pallet-session-benchmarking = { default-features = false, version = "4.0.0" } -cumulus-pallet-xcm = { default-features = false , version = "0.2.0" } -cumulus-pallet-xcmp-queue = { default-features = false , version = "0.2.0" } -cumulus-primitives-core = { default-features = false , version = "0.2.0" } -cumulus-primitives-utility = { default-features = false , version = "0.2.0" } -pallet-collator-selection = { default-features = false , version = "4.0.0" } -parachain-info = { package = "staging-parachain-info", default-features = false , version = "0.2.0" } -parachains-common = { default-features = false , version = "2.0.0" } +cumulus-pallet-aura-ext = { default-features = false , version = "0.4.0" } +cumulus-pallet-dmp-queue = { default-features = false , version = "0.4.0" } +cumulus-pallet-parachain-system = { default-features = false, features = ["parameterized-consensus-hook",] , version = "0.4.0" } +cumulus-pallet-session-benchmarking = { default-features = false, version = "6.0.0" } +cumulus-pallet-xcm = { default-features = false , version = "0.4.0" } +cumulus-pallet-xcmp-queue = { default-features = false , version = "0.4.0" } +cumulus-primitives-core = { default-features = false , version = "0.4.0" } +cumulus-primitives-utility = { default-features = false , version = "0.4.0" } +pallet-collator-selection = { default-features = false , version = "6.0.0" } +parachain-info = { package = "staging-parachain-info", default-features = false , version = "0.4.0" } +parachains-common = { default-features = false , version = "4.0.0" } [build-dependencies] -substrate-wasm-builder = { optional = true , version = "12.0.0" } +substrate-wasm-builder = { optional = true , version = "14.0.0" } [dev-dependencies] -sp-io = { default-features = false, version = "25.0.0" } +sp-io = { default-features = false, version = "27.0.0" } [features] default = [ "std" ] diff --git a/system-parachains/gluttons/glutton-kusama/Cargo.toml b/system-parachains/gluttons/glutton-kusama/Cargo.toml index c7552d0e2c..30be665295 100644 --- a/system-parachains/gluttons/glutton-kusama/Cargo.toml +++ b/system-parachains/gluttons/glutton-kusama/Cargo.toml @@ -9,45 +9,45 @@ repository.workspace = true version.workspace = true [dependencies] -codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false, features = ["derive"] } -scale-info = { version = "2.9.0", default-features = false, features = ["derive"] } +codec = { package = "parity-scale-codec", version = "3.6.5", default-features = false, features = ["derive"] } +scale-info = { version = "2.10.0", default-features = false, features = ["derive"] } # Substrate -frame-benchmarking = { default-features = false, optional = true, version = "23.0.0" } -frame-executive = { default-features = false, version = "23.0.0" } -frame-support = { default-features = false, version = "23.0.0" } -frame-system = { default-features = false, version = "23.0.0" } -frame-system-rpc-runtime-api = { default-features = false, version = "21.0.0" } -frame-system-benchmarking = { default-features = false, optional = true, version = "23.0.0" } -frame-try-runtime = { default-features = false, optional = true, version = "0.29.0" } -pallet-glutton = { default-features = false, optional = true, version = "9.0.0" } -pallet-sudo = { default-features = false, optional = true, version = "23.0.0" } -sp-api = { default-features = false, version = "21.0.0" } -sp-block-builder = { default-features = false, version = "21.0.0" } -sp-core = { default-features = false, version = "23.0.0" } -sp-inherents = { default-features = false, version = "21.0.0" } -sp-offchain = { default-features = false, version = "21.0.0" } -sp-runtime = { default-features = false, version = "26.0.0" } -sp-session = { default-features = false, version = "22.0.0" } -sp-std = { default-features = false, version = "10.0.0" } -sp-storage = { default-features = false, version = "15.0.0" } -sp-transaction-pool = { default-features = false, version = "21.0.0" } -sp-version = { default-features = false, version = "24.0.0" } +frame-benchmarking = { default-features = false, optional = true, version = "25.0.0" } +frame-executive = { default-features = false, version = "25.0.0" } +frame-support = { default-features = false, version = "25.0.0" } +frame-system = { default-features = false, version = "25.0.0" } +frame-system-rpc-runtime-api = { default-features = false, version = "23.0.0" } +frame-system-benchmarking = { default-features = false, optional = true, version = "25.0.0" } +frame-try-runtime = { default-features = false, optional = true, version = "0.31.0" } +pallet-glutton = { default-features = false, optional = true, version = "11.0.0" } +pallet-sudo = { default-features = false, optional = true, version = "25.0.0" } +sp-api = { default-features = false, version = "23.0.0" } +sp-block-builder = { default-features = false, version = "23.0.0" } +sp-core = { default-features = false, version = "25.0.0" } +sp-inherents = { default-features = false, version = "23.0.0" } +sp-offchain = { default-features = false, version = "23.0.0" } +sp-runtime = { default-features = false, version = "28.0.0" } +sp-session = { default-features = false, version = "24.0.0" } +sp-std = { default-features = false, version = "12.0.0" } +sp-storage = { default-features = false, version = "17.0.0" } +sp-transaction-pool = { default-features = false, version = "23.0.0" } +sp-version = { default-features = false, version = "26.0.0" } # Polkadot -xcm = { package = "staging-xcm", default-features = false, version = "2.0.1" } -xcm-builder = { package = "staging-xcm-builder", default-features = false, version = "2.0.1" } -xcm-executor = { package = "staging-xcm-executor", default-features = false, version = "2.0.0" } +xcm = { package = "staging-xcm", default-features = false, version = "4.0.0" } +xcm-builder = { package = "staging-xcm-builder", default-features = false, version = "4.0.0" } +xcm-executor = { package = "staging-xcm-executor", default-features = false, version = "4.0.0" } # Cumulus -cumulus-pallet-parachain-system = { default-features = false, features = ["parameterized-consensus-hook",] , version = "0.2.0" } -cumulus-pallet-xcm = { default-features = false , version = "0.2.0" } -cumulus-primitives-core = { default-features = false , version = "0.2.0" } -parachain-info = { package = "staging-parachain-info", default-features = false , version = "0.2.0" } -parachains-common = { default-features = false , version = "2.0.0" } +cumulus-pallet-parachain-system = { default-features = false, features = ["parameterized-consensus-hook",] , version = "0.4.0" } +cumulus-pallet-xcm = { default-features = false , version = "0.4.0" } +cumulus-primitives-core = { default-features = false , version = "0.4.0" } +parachain-info = { package = "staging-parachain-info", default-features = false , version = "0.4.0" } +parachains-common = { default-features = false , version = "4.0.0" } [build-dependencies] -substrate-wasm-builder = { version = "12.0.0" } +substrate-wasm-builder = { version = "14.0.0" } [features] default = [ "std" ] From a012d3255569d92348a579bf2516e9e52f8d4f33 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Fri, 3 Nov 2023 11:39:18 +0300 Subject: [PATCH 02/68] adapt https://github.com/paritytech/polkadot-sdk/issues/1900 --- relay/kusama/src/lib.rs | 1 + relay/polkadot/src/lib.rs | 1 + system-parachains/asset-hubs/asset-hub-kusama/src/lib.rs | 1 + system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs | 1 + system-parachains/bridge-hubs/bridge-hub-kusama/src/lib.rs | 1 + system-parachains/bridge-hubs/bridge-hub-polkadot/src/lib.rs | 1 + system-parachains/collectives/collectives-polkadot/src/lib.rs | 1 + 7 files changed, 7 insertions(+) diff --git a/relay/kusama/src/lib.rs b/relay/kusama/src/lib.rs index 8900d60d0b..97e6fd5eda 100644 --- a/relay/kusama/src/lib.rs +++ b/relay/kusama/src/lib.rs @@ -315,6 +315,7 @@ impl pallet_balances::Config for Runtime { type FreezeIdentifier = (); type MaxFreezes = (); type RuntimeHoldReason = RuntimeHoldReason; + type RuntimeFreezeReason = RuntimeFreezeReason; type MaxHolds = ConstU32<1>; } diff --git a/relay/polkadot/src/lib.rs b/relay/polkadot/src/lib.rs index 97ceedb0cd..5ce9a5dd9c 100644 --- a/relay/polkadot/src/lib.rs +++ b/relay/polkadot/src/lib.rs @@ -300,6 +300,7 @@ impl pallet_balances::Config for Runtime { type ReserveIdentifier = [u8; 8]; type WeightInfo = weights::pallet_balances::WeightInfo; type RuntimeHoldReason = RuntimeHoldReason; + type RuntimeFreezeReason = RuntimeFreezeReason; type FreezeIdentifier = (); type MaxHolds = ConstU32<0>; type MaxFreezes = ConstU32<0>; diff --git a/system-parachains/asset-hubs/asset-hub-kusama/src/lib.rs b/system-parachains/asset-hubs/asset-hub-kusama/src/lib.rs index 7d2fafbafa..e590b88087 100644 --- a/system-parachains/asset-hubs/asset-hub-kusama/src/lib.rs +++ b/system-parachains/asset-hubs/asset-hub-kusama/src/lib.rs @@ -222,6 +222,7 @@ impl pallet_balances::Config for Runtime { type MaxReserves = ConstU32<50>; type ReserveIdentifier = [u8; 8]; type RuntimeHoldReason = RuntimeHoldReason; + type RuntimeFreezeReason = RuntimeFreezeReason; type FreezeIdentifier = (); // We allow each account to have holds on it from: // - `NftFractionalization`: 1 diff --git a/system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs b/system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs index 2498ce7cc4..51cdf3aed5 100644 --- a/system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs +++ b/system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs @@ -232,6 +232,7 @@ impl pallet_balances::Config for Runtime { type MaxReserves = ConstU32<50>; type ReserveIdentifier = [u8; 8]; type RuntimeHoldReason = RuntimeHoldReason; + type RuntimeFreezeReason = RuntimeFreezeReason; type FreezeIdentifier = (); type MaxHolds = ConstU32<0>; type MaxFreezes = ConstU32<0>; diff --git a/system-parachains/bridge-hubs/bridge-hub-kusama/src/lib.rs b/system-parachains/bridge-hubs/bridge-hub-kusama/src/lib.rs index 206f306843..d4d9cc6cd3 100644 --- a/system-parachains/bridge-hubs/bridge-hub-kusama/src/lib.rs +++ b/system-parachains/bridge-hubs/bridge-hub-kusama/src/lib.rs @@ -271,6 +271,7 @@ impl pallet_balances::Config for Runtime { type MaxReserves = ConstU32<50>; type ReserveIdentifier = [u8; 8]; type RuntimeHoldReason = RuntimeHoldReason; + type RuntimeFreezeReason = RuntimeFreezeReason; type FreezeIdentifier = (); type MaxHolds = ConstU32<0>; type MaxFreezes = ConstU32<0>; diff --git a/system-parachains/bridge-hubs/bridge-hub-polkadot/src/lib.rs b/system-parachains/bridge-hubs/bridge-hub-polkadot/src/lib.rs index 48d0744ff0..dd2d414353 100644 --- a/system-parachains/bridge-hubs/bridge-hub-polkadot/src/lib.rs +++ b/system-parachains/bridge-hubs/bridge-hub-polkadot/src/lib.rs @@ -246,6 +246,7 @@ impl pallet_balances::Config for Runtime { type MaxReserves = ConstU32<50>; type ReserveIdentifier = [u8; 8]; type RuntimeHoldReason = RuntimeHoldReason; + type RuntimeFreezeReason = RuntimeFreezeReason; type FreezeIdentifier = (); type MaxHolds = ConstU32<0>; type MaxFreezes = ConstU32<0>; diff --git a/system-parachains/collectives/collectives-polkadot/src/lib.rs b/system-parachains/collectives/collectives-polkadot/src/lib.rs index 31c6923e85..98fbbacb9b 100644 --- a/system-parachains/collectives/collectives-polkadot/src/lib.rs +++ b/system-parachains/collectives/collectives-polkadot/src/lib.rs @@ -205,6 +205,7 @@ impl pallet_balances::Config for Runtime { type MaxReserves = ConstU32<50>; type ReserveIdentifier = [u8; 8]; type RuntimeHoldReason = RuntimeHoldReason; + type RuntimeFreezeReason = RuntimeFreezeReason; type FreezeIdentifier = (); type MaxHolds = ConstU32<0>; type MaxFreezes = ConstU32<0>; From b8f7a8d6615a917ce4635ba803a1f46e78023b95 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Fri, 3 Nov 2023 11:52:04 +0300 Subject: [PATCH 03/68] adapt https://github.com/paritytech/polkadot-sdk/pull/1363 [requires migration. onchain or offchain?] --- relay/kusama/src/lib.rs | 16 +++++++++++----- relay/kusama/src/weights/pallet_preimage.rs | 4 ++++ relay/polkadot/src/lib.rs | 16 +++++++++++----- relay/polkadot/src/weights/pallet_preimage.rs | 4 ++++ .../collectives-polkadot/src/lib.rs | 18 +++++++++++++----- .../src/weights/pallet_preimage.rs | 4 ++++ 6 files changed, 47 insertions(+), 15 deletions(-) diff --git a/relay/kusama/src/lib.rs b/relay/kusama/src/lib.rs index 97e6fd5eda..9ec8984cee 100644 --- a/relay/kusama/src/lib.rs +++ b/relay/kusama/src/lib.rs @@ -63,8 +63,9 @@ use frame_election_provider_support::{ use frame_support::{ construct_runtime, parameter_types, traits::{ - ConstU32, Contains, EitherOf, EitherOfDiverse, InstanceFilter, KeyOwnerProofSystem, - PrivilegeCmp, ProcessMessage, ProcessMessageError, StorageMapShim, WithdrawReasons, + fungible::HoldConsideration, ConstU32, Contains, EitherOf, EitherOfDiverse, InstanceFilter, + KeyOwnerProofSystem, LinearStoragePrice, PrivilegeCmp, ProcessMessage, ProcessMessageError, + StorageMapShim, WithdrawReasons, }, weights::{ConstantMultiplier, WeightMeter}, PalletId, @@ -241,6 +242,7 @@ impl pallet_scheduler::Config for Runtime { parameter_types! { pub const PreimageBaseDeposit: Balance = deposit(2, 64); pub const PreimageByteDeposit: Balance = deposit(0, 1); + pub const PreimageHoldReason: RuntimeHoldReason = RuntimeHoldReason::Preimage(pallet_preimage::HoldReason::Preimage); } impl pallet_preimage::Config for Runtime { @@ -248,8 +250,12 @@ impl pallet_preimage::Config for Runtime { type RuntimeEvent = RuntimeEvent; type Currency = Balances; type ManagerOrigin = EnsureRoot; - type BaseDeposit = PreimageBaseDeposit; - type ByteDeposit = PreimageByteDeposit; + type Consideration = HoldConsideration< + AccountId, + Balances, + PreimageHoldReason, + LinearStoragePrice, + >; } parameter_types! { @@ -1563,7 +1569,7 @@ construct_runtime! { Multisig: pallet_multisig::{Pallet, Call, Storage, Event} = 31, // Preimage registrar. - Preimage: pallet_preimage::{Pallet, Call, Storage, Event} = 32, + Preimage: pallet_preimage::{Pallet, Call, Storage, Event, HoldReason} = 32, // Bounties modules. Bounties: pallet_bounties::{Pallet, Call, Storage, Event} = 35, diff --git a/relay/kusama/src/weights/pallet_preimage.rs b/relay/kusama/src/weights/pallet_preimage.rs index ddb39cc858..6cf1d0f3d7 100644 --- a/relay/kusama/src/weights/pallet_preimage.rs +++ b/relay/kusama/src/weights/pallet_preimage.rs @@ -210,4 +210,8 @@ impl pallet_preimage::WeightInfo for WeightInfo { .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } + + fn ensure_updated(n: u32, ) -> Weight { + Weight::zero() + } } diff --git a/relay/polkadot/src/lib.rs b/relay/polkadot/src/lib.rs index 5ce9a5dd9c..4c5650618b 100644 --- a/relay/polkadot/src/lib.rs +++ b/relay/polkadot/src/lib.rs @@ -47,8 +47,9 @@ use frame_election_provider_support::{ use frame_support::{ construct_runtime, parameter_types, traits::{ - ConstU32, Contains, EitherOf, EitherOfDiverse, InstanceFilter, KeyOwnerProofSystem, - PrivilegeCmp, ProcessMessage, ProcessMessageError, WithdrawReasons, + fungible::HoldConsideration, ConstU32, Contains, EitherOf, EitherOfDiverse, InstanceFilter, + KeyOwnerProofSystem, LinearStoragePrice, PrivilegeCmp, ProcessMessage, ProcessMessageError, + WithdrawReasons, }, weights::{ConstantMultiplier, WeightMeter}, PalletId, @@ -228,6 +229,7 @@ parameter_types! { pub const PreimageMaxSize: u32 = 4096 * 1024; pub const PreimageBaseDeposit: Balance = deposit(2, 64); pub const PreimageByteDeposit: Balance = deposit(0, 1); + pub const PreimageHoldReason: RuntimeHoldReason = RuntimeHoldReason::Preimage(pallet_preimage::HoldReason::Preimage); } impl pallet_preimage::Config for Runtime { @@ -235,8 +237,12 @@ impl pallet_preimage::Config for Runtime { type RuntimeEvent = RuntimeEvent; type Currency = Balances; type ManagerOrigin = EnsureRoot; - type BaseDeposit = PreimageBaseDeposit; - type ByteDeposit = PreimageByteDeposit; + type Consideration = HoldConsideration< + AccountId, + Balances, + PreimageHoldReason, + LinearStoragePrice, + >; } parameter_types! { @@ -1379,7 +1385,7 @@ construct_runtime! { // Basic stuff; balances is uncallable initially. System: frame_system::{Pallet, Call, Storage, Config, Event} = 0, Scheduler: pallet_scheduler::{Pallet, Call, Storage, Event} = 1, - Preimage: pallet_preimage::{Pallet, Call, Storage, Event} = 10, + Preimage: pallet_preimage::{Pallet, Call, Storage, Event, HoldReason} = 10, // Babe must be before session. Babe: pallet_babe::{Pallet, Call, Storage, Config, ValidateUnsigned} = 2, diff --git a/relay/polkadot/src/weights/pallet_preimage.rs b/relay/polkadot/src/weights/pallet_preimage.rs index 3e95c87cb5..636bdbde02 100644 --- a/relay/polkadot/src/weights/pallet_preimage.rs +++ b/relay/polkadot/src/weights/pallet_preimage.rs @@ -210,4 +210,8 @@ impl pallet_preimage::WeightInfo for WeightInfo { .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } + + fn ensure_updated(n: u32, ) -> Weight { + Weight::zero() + } } diff --git a/system-parachains/collectives/collectives-polkadot/src/lib.rs b/system-parachains/collectives/collectives-polkadot/src/lib.rs index 98fbbacb9b..a675e7c83f 100644 --- a/system-parachains/collectives/collectives-polkadot/src/lib.rs +++ b/system-parachains/collectives/collectives-polkadot/src/lib.rs @@ -64,7 +64,10 @@ use frame_support::{ construct_runtime, dispatch::DispatchClass, parameter_types, - traits::{ConstBool, ConstU16, ConstU32, ConstU64, ConstU8, EitherOfDiverse, InstanceFilter}, + traits::{ + fungible::HoldConsideration, ConstBool, ConstU16, ConstU32, ConstU64, ConstU8, + EitherOfDiverse, InstanceFilter, LinearStoragePrice, + }, weights::{ConstantMultiplier, Weight}, PalletId, }; @@ -207,7 +210,7 @@ impl pallet_balances::Config for Runtime { type RuntimeHoldReason = RuntimeHoldReason; type RuntimeFreezeReason = RuntimeFreezeReason; type FreezeIdentifier = (); - type MaxHolds = ConstU32<0>; + type MaxHolds = ConstU32<1>; type MaxFreezes = ConstU32<0>; } @@ -543,6 +546,7 @@ impl pallet_scheduler::Config for Runtime { parameter_types! { pub const PreimageBaseDeposit: Balance = deposit(2, 64); pub const PreimageByteDeposit: Balance = deposit(0, 1); + pub const PreimageHoldReason: RuntimeHoldReason = RuntimeHoldReason::Preimage(pallet_preimage::HoldReason::Preimage); } impl pallet_preimage::Config for Runtime { @@ -550,8 +554,12 @@ impl pallet_preimage::Config for Runtime { type RuntimeEvent = RuntimeEvent; type Currency = Balances; type ManagerOrigin = EnsureRoot; - type BaseDeposit = PreimageBaseDeposit; - type ByteDeposit = PreimageByteDeposit; + type Consideration = HoldConsideration< + AccountId, + Balances, + PreimageHoldReason, + LinearStoragePrice, + >; } // Create the runtime by composing the FRAME pallets that were previously configured. @@ -587,7 +595,7 @@ construct_runtime!( Utility: pallet_utility::{Pallet, Call, Event} = 40, Multisig: pallet_multisig::{Pallet, Call, Storage, Event} = 41, Proxy: pallet_proxy::{Pallet, Call, Storage, Event} = 42, - Preimage: pallet_preimage::{Pallet, Call, Storage, Event} = 43, + Preimage: pallet_preimage::{Pallet, Call, Storage, Event, HoldReason} = 43, Scheduler: pallet_scheduler::{Pallet, Call, Storage, Event} = 44, // The main stage. diff --git a/system-parachains/collectives/collectives-polkadot/src/weights/pallet_preimage.rs b/system-parachains/collectives/collectives-polkadot/src/weights/pallet_preimage.rs index 71e91699fd..93996f61e8 100644 --- a/system-parachains/collectives/collectives-polkadot/src/weights/pallet_preimage.rs +++ b/system-parachains/collectives/collectives-polkadot/src/weights/pallet_preimage.rs @@ -210,4 +210,8 @@ impl pallet_preimage::WeightInfo for WeightInfo { .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } + + fn ensure_updated(n: u32, ) -> Weight { + Weight::zero() + } } From f8fd5c78b1a87b726c8dbaf0f6547f094c6542f7 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Fri, 3 Nov 2023 11:56:40 +0300 Subject: [PATCH 04/68] adapt https://github.com/paritytech/polkadot-sdk/pull/1848 --- .../asset-hubs/asset-hub-kusama/src/xcm_config.rs | 8 +++----- .../asset-hubs/asset-hub-polkadot/src/xcm_config.rs | 8 +++----- 2 files changed, 6 insertions(+), 10 deletions(-) diff --git a/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs b/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs index 0c197598f8..cd63472083 100644 --- a/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs +++ b/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs @@ -21,9 +21,7 @@ use super::{ use crate::ForeignAssets; use assets_common::{ local_and_foreign_assets::MatchesLocalAndForeignAssetsMultiLocation, - matching::{ - FromSiblingParachain, IsForeignConcreteAsset, StartsWith, StartsWithExplicitGlobalConsensus, - }, + matching::{FromSiblingParachain, IsForeignConcreteAsset}, }; use frame_support::{ match_types, parameter_types, @@ -42,8 +40,8 @@ use xcm_builder::{ EnsureXcmOrigin, FungiblesAdapter, HashedDescription, IsConcrete, LocalMint, NativeAsset, NoChecking, ParentAsSuperuser, ParentIsPreset, RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia, SignedAccountId32AsNative, SignedToAccountId32, - SovereignSignedViaLocation, TakeWeightCredit, TrailingSetTopicAsId, UsingComponents, - WeightInfoBounds, WithComputedOrigin, WithUniqueTopic, + SovereignSignedViaLocation, StartsWith, StartsWithExplicitGlobalConsensus, TakeWeightCredit, + TrailingSetTopicAsId, UsingComponents, WeightInfoBounds, WithComputedOrigin, WithUniqueTopic, }; use xcm_executor::{traits::WithOriginFilter, XcmExecutor}; diff --git a/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs b/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs index d59507e4bd..373768a700 100644 --- a/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs +++ b/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs @@ -18,9 +18,7 @@ use super::{ ParachainInfo, ParachainSystem, PolkadotXcm, Runtime, RuntimeCall, RuntimeEvent, RuntimeOrigin, TrustBackedAssetsInstance, WeightToFee, XcmpQueue, }; -use assets_common::matching::{ - FromSiblingParachain, IsForeignConcreteAsset, StartsWith, StartsWithExplicitGlobalConsensus, -}; +use assets_common::matching::{FromSiblingParachain, IsForeignConcreteAsset}; use frame_support::{ match_types, parameter_types, traits::{ConstU32, Contains, Everything, Nothing, PalletInfoAccess}, @@ -38,8 +36,8 @@ use xcm_builder::{ EnsureXcmOrigin, FungiblesAdapter, HashedDescription, IsConcrete, LocalMint, NativeAsset, NoChecking, ParentAsSuperuser, ParentIsPreset, RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia, SignedAccountId32AsNative, SignedToAccountId32, - SovereignSignedViaLocation, TakeWeightCredit, TrailingSetTopicAsId, UsingComponents, - WeightInfoBounds, WithComputedOrigin, WithUniqueTopic, + SovereignSignedViaLocation, StartsWith, StartsWithExplicitGlobalConsensus, TakeWeightCredit, + TrailingSetTopicAsId, UsingComponents, WeightInfoBounds, WithComputedOrigin, WithUniqueTopic, }; use xcm_executor::{traits::WithOriginFilter, XcmExecutor}; From 1674ba775af1b5856e874c2e9f03283c47ed447a Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Fri, 3 Nov 2023 12:09:23 +0300 Subject: [PATCH 05/68] adapt https://github.com/paritytech/polkadot-sdk/pull/1234 --- .../asset-hubs/asset-hub-kusama/src/lib.rs | 15 +++++++++++++-- .../asset-hubs/asset-hub-polkadot/src/lib.rs | 15 +++++++++++++-- .../bridge-hubs/bridge-hub-kusama/src/lib.rs | 15 +++++++++++++-- .../bridge-hubs/bridge-hub-polkadot/src/lib.rs | 15 +++++++++++++-- .../collectives-polkadot/src/lib.rs | 18 ++++++++++++++++-- 5 files changed, 68 insertions(+), 10 deletions(-) diff --git a/system-parachains/asset-hubs/asset-hub-kusama/src/lib.rs b/system-parachains/asset-hubs/asset-hub-kusama/src/lib.rs index e590b88087..d16441ef25 100644 --- a/system-parachains/asset-hubs/asset-hub-kusama/src/lib.rs +++ b/system-parachains/asset-hubs/asset-hub-kusama/src/lib.rs @@ -87,7 +87,7 @@ pub use sp_runtime::BuildStorage; // Polkadot imports use pallet_xcm::{EnsureXcm, IsVoiceOfBody}; use polkadot_runtime_common::{BlockHashCount, SlowAdjustingFeeUpdate}; -use xcm::latest::BodyId; +use xcm::prelude::*; use xcm_executor::XcmExecutor; use crate::xcm_config::{ @@ -631,8 +631,19 @@ impl cumulus_pallet_aura_ext::Config for Runtime {} parameter_types! { // Fellows pluralistic body. pub const FellowsBodyId: BodyId = BodyId::Technical; + /// The asset ID for the asset that we use to pay for message delivery fees. + pub FeeAssetId: AssetId = Concrete(xcm_config::KsmLocation::get()); + /// The base fee for the message delivery fees. + pub const BaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price } +pub type PriceForSiblingParachainDelivery = polkadot_runtime_common::xcm_sender::ExponentialPrice< + FeeAssetId, + BaseDeliveryFee, + TransactionByteFee, + XcmpQueue, +>; + impl cumulus_pallet_xcmp_queue::Config for Runtime { type RuntimeEvent = RuntimeEvent; type XcmExecutor = XcmExecutor; @@ -645,7 +656,7 @@ impl cumulus_pallet_xcmp_queue::Config for Runtime { >; type ControllerOriginConverter = xcm_config::XcmOriginToTransactDispatchOrigin; type WeightInfo = weights::cumulus_pallet_xcmp_queue::WeightInfo; - type PriceForSiblingDelivery = (); + type PriceForSiblingDelivery = PriceForSiblingParachainDelivery; } impl cumulus_pallet_dmp_queue::Config for Runtime { diff --git a/system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs b/system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs index 51cdf3aed5..df1d00075c 100644 --- a/system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs +++ b/system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs @@ -117,7 +117,7 @@ pub use sp_runtime::BuildStorage; // Polkadot imports use pallet_xcm::{EnsureXcm, IsVoiceOfBody}; use polkadot_runtime_common::{BlockHashCount, SlowAdjustingFeeUpdate}; -use xcm::latest::BodyId; +use xcm::prelude::*; use xcm_executor::XcmExecutor; use crate::xcm_config::ForeignCreatorsSovereignAccountOf; @@ -567,8 +567,19 @@ impl cumulus_pallet_aura_ext::Config for Runtime {} parameter_types! { // Fellows pluralistic body. pub const FellowsBodyId: BodyId = BodyId::Technical; + /// The asset ID for the asset that we use to pay for message delivery fees. + pub FeeAssetId: AssetId = Concrete(xcm_config::DotLocation::get()); + /// The base fee for the message delivery fees. + pub const BaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price } +pub type PriceForSiblingParachainDelivery = polkadot_runtime_common::xcm_sender::ExponentialPrice< + FeeAssetId, + BaseDeliveryFee, + TransactionByteFee, + XcmpQueue, +>; + impl cumulus_pallet_xcmp_queue::Config for Runtime { type WeightInfo = weights::cumulus_pallet_xcmp_queue::WeightInfo; type RuntimeEvent = RuntimeEvent; @@ -581,7 +592,7 @@ impl cumulus_pallet_xcmp_queue::Config for Runtime { EnsureXcm>, >; type ControllerOriginConverter = XcmOriginToTransactDispatchOrigin; - type PriceForSiblingDelivery = (); + type PriceForSiblingDelivery = PriceForSiblingParachainDelivery; } impl cumulus_pallet_dmp_queue::Config for Runtime { diff --git a/system-parachains/bridge-hubs/bridge-hub-kusama/src/lib.rs b/system-parachains/bridge-hubs/bridge-hub-kusama/src/lib.rs index d4d9cc6cd3..937e44a0f6 100644 --- a/system-parachains/bridge-hubs/bridge-hub-kusama/src/lib.rs +++ b/system-parachains/bridge-hubs/bridge-hub-kusama/src/lib.rs @@ -74,7 +74,7 @@ use parachains_common::{ }; // XCM Imports -use xcm::latest::prelude::BodyId; +use xcm::prelude::*; use xcm_executor::XcmExecutor; /// The address format for describing accounts. @@ -322,6 +322,10 @@ impl cumulus_pallet_aura_ext::Config for Runtime {} parameter_types! { // Fellows pluralistic body. pub const FellowsBodyId: BodyId = BodyId::Technical; + /// The asset ID for the asset that we use to pay for message delivery fees. + pub FeeAssetId: AssetId = Concrete(xcm_config::KsmRelayLocation::get()); + /// The base fee for the message delivery fees. + pub const BaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price } /// Privileged origin that represents Root or Fellows pluralistic body. @@ -330,6 +334,13 @@ pub type RootOrFellows = EitherOfDiverse< EnsureXcm>, >; +pub type PriceForSiblingParachainDelivery = polkadot_runtime_common::xcm_sender::ExponentialPrice< + FeeAssetId, + BaseDeliveryFee, + TransactionByteFee, + XcmpQueue, +>; + impl cumulus_pallet_xcmp_queue::Config for Runtime { type RuntimeEvent = RuntimeEvent; type XcmExecutor = XcmExecutor; @@ -339,7 +350,7 @@ impl cumulus_pallet_xcmp_queue::Config for Runtime { type ControllerOrigin = RootOrFellows; type ControllerOriginConverter = XcmOriginToTransactDispatchOrigin; type WeightInfo = weights::cumulus_pallet_xcmp_queue::WeightInfo; - type PriceForSiblingDelivery = (); + type PriceForSiblingDelivery = PriceForSiblingParachainDelivery; } impl cumulus_pallet_dmp_queue::Config for Runtime { diff --git a/system-parachains/bridge-hubs/bridge-hub-polkadot/src/lib.rs b/system-parachains/bridge-hubs/bridge-hub-polkadot/src/lib.rs index dd2d414353..3133a43e65 100644 --- a/system-parachains/bridge-hubs/bridge-hub-polkadot/src/lib.rs +++ b/system-parachains/bridge-hubs/bridge-hub-polkadot/src/lib.rs @@ -74,7 +74,7 @@ use parachains_common::{ HOURS, MAXIMUM_BLOCK_WEIGHT, NORMAL_DISPATCH_RATIO, SLOT_DURATION, }; // XCM Imports -use xcm::latest::prelude::BodyId; +use xcm::prelude::*; use xcm_executor::XcmExecutor; /// The address format for describing accounts. @@ -297,6 +297,10 @@ impl cumulus_pallet_aura_ext::Config for Runtime {} parameter_types! { // Fellows pluralistic body. pub const FellowsBodyId: BodyId = BodyId::Technical; + /// The asset ID for the asset that we use to pay for message delivery fees. + pub FeeAssetId: AssetId = Concrete(xcm_config::DotRelayLocation::get()); + /// The base fee for the message delivery fees. + pub const BaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price } /// Privileged origin that represents Root or Fellows. @@ -305,6 +309,13 @@ pub type RootOrFellows = EitherOfDiverse< EnsureXcm>, >; +pub type PriceForSiblingParachainDelivery = polkadot_runtime_common::xcm_sender::ExponentialPrice< + FeeAssetId, + BaseDeliveryFee, + TransactionByteFee, + XcmpQueue, +>; + impl cumulus_pallet_xcmp_queue::Config for Runtime { type RuntimeEvent = RuntimeEvent; type XcmExecutor = XcmExecutor; @@ -314,7 +325,7 @@ impl cumulus_pallet_xcmp_queue::Config for Runtime { type ControllerOrigin = RootOrFellows; type ControllerOriginConverter = XcmOriginToTransactDispatchOrigin; type WeightInfo = weights::cumulus_pallet_xcmp_queue::WeightInfo; - type PriceForSiblingDelivery = (); + type PriceForSiblingDelivery = PriceForSiblingParachainDelivery; } impl cumulus_pallet_dmp_queue::Config for Runtime { diff --git a/system-parachains/collectives/collectives-polkadot/src/lib.rs b/system-parachains/collectives/collectives-polkadot/src/lib.rs index a675e7c83f..63bdd240c8 100644 --- a/system-parachains/collectives/collectives-polkadot/src/lib.rs +++ b/system-parachains/collectives/collectives-polkadot/src/lib.rs @@ -92,7 +92,7 @@ pub use sp_runtime::BuildStorage; // Polkadot imports use pallet_xcm::{EnsureXcm, IsVoiceOfBody}; use polkadot_runtime_common::{BlockHashCount, SlowAdjustingFeeUpdate}; -use xcm::latest::BodyId; +use xcm::prelude::*; use xcm_executor::XcmExecutor; use weights::{BlockExecutionWeight, ExtrinsicBaseWeight, RocksDbWeight}; @@ -382,6 +382,20 @@ impl parachain_info::Config for Runtime {} impl cumulus_pallet_aura_ext::Config for Runtime {} +parameter_types! { + /// The asset ID for the asset that we use to pay for message delivery fees. + pub FeeAssetId: AssetId = Concrete(xcm_config::DotLocation::get()); + /// The base fee for the message delivery fees. + pub const BaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price +} + +pub type PriceForSiblingParachainDelivery = polkadot_runtime_common::xcm_sender::ExponentialPrice< + FeeAssetId, + BaseDeliveryFee, + TransactionByteFee, + XcmpQueue, +>; + impl cumulus_pallet_xcmp_queue::Config for Runtime { type RuntimeEvent = RuntimeEvent; type XcmExecutor = XcmExecutor; @@ -391,7 +405,7 @@ impl cumulus_pallet_xcmp_queue::Config for Runtime { type ControllerOrigin = EitherOfDiverse, Fellows>; type ControllerOriginConverter = XcmOriginToTransactDispatchOrigin; type WeightInfo = weights::cumulus_pallet_xcmp_queue::WeightInfo; - type PriceForSiblingDelivery = (); + type PriceForSiblingDelivery = PriceForSiblingParachainDelivery; } impl cumulus_pallet_dmp_queue::Config for Runtime { From 70d30ef72a51ebca6bc9a54e8f7dbd0f825f6a7a Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Fri, 3 Nov 2023 12:28:32 +0300 Subject: [PATCH 06/68] https://github.com/paritytech/polkadot-sdk/pull/1543 [do we need to upgrade?] --- relay/kusama/src/lib.rs | 6 +++--- relay/polkadot/src/lib.rs | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/relay/kusama/src/lib.rs b/relay/kusama/src/lib.rs index 9ec8984cee..a16fbbf285 100644 --- a/relay/kusama/src/lib.rs +++ b/relay/kusama/src/lib.rs @@ -46,7 +46,7 @@ use runtime_parachains::{ inclusion::{AggregateMessageOrigin, UmpQueueId}, initializer as parachains_initializer, origin as parachains_origin, paras as parachains_paras, paras_inherent as parachains_paras_inherent, reward_points as parachains_reward_points, - runtime_api_impl::v5 as parachains_runtime_api_impl, + runtime_api_impl::v7 as parachains_runtime_api_impl, scheduler as parachains_scheduler, session_info as parachains_session_info, shared as parachains_shared, }; @@ -110,7 +110,7 @@ mod weights; // Voter bag threshold definitions. mod bag_thresholds; -mod paras_scheduler_migration; +// mod paras_scheduler_migration; // TODO: has it happened? // Historical information of society finances. mod past_payouts; @@ -1743,7 +1743,7 @@ pub mod migrations { >, pallet_im_online::migration::v1::Migration, parachains_configuration::migration::v7::MigrateToV7, - paras_scheduler_migration::v1::MigrateToV1, + // paras_scheduler_migration::v1::MigrateToV1, TODO: has it happened? parachains_configuration::migration::v8::MigrateToV8, // Unlock/unreserve balances from Gov v1 pallets that hold them diff --git a/relay/polkadot/src/lib.rs b/relay/polkadot/src/lib.rs index 4c5650618b..872afc1f81 100644 --- a/relay/polkadot/src/lib.rs +++ b/relay/polkadot/src/lib.rs @@ -34,7 +34,7 @@ use runtime_parachains::{ inclusion::{AggregateMessageOrigin, UmpQueueId}, initializer as parachains_initializer, origin as parachains_origin, paras as parachains_paras, paras_inherent as parachains_paras_inherent, reward_points as parachains_reward_points, - runtime_api_impl::v5 as parachains_runtime_api_impl, + runtime_api_impl::v7 as parachains_runtime_api_impl, scheduler as parachains_scheduler, session_info as parachains_session_info, shared as parachains_shared, }; @@ -107,7 +107,7 @@ mod weights; mod bag_thresholds; -mod paras_scheduler_migration; +// mod paras_scheduler_migration; // TODO: has it happened? // Governance configurations. pub mod governance; @@ -1580,7 +1580,7 @@ pub mod migrations { pub type Unreleased = ( pallet_im_online::migration::v1::Migration, parachains_configuration::migration::v7::MigrateToV7, - crate::paras_scheduler_migration::v1::MigrateToV1, + // crate::paras_scheduler_migration::v1::MigrateToV1, // TODO: has it happened? parachains_configuration::migration::v8::MigrateToV8, // Gov v1 storage migrations From 64680f91dc83ecbf5c1a7b74a186a049474d5239 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Fri, 3 Nov 2023 12:57:14 +0300 Subject: [PATCH 07/68] adapt https://github.com/paritytech/polkadot-sdk/pull/1547 --- relay/kusama/src/lib.rs | 10 ++++++---- relay/polkadot/src/lib.rs | 11 ++++++----- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/relay/kusama/src/lib.rs b/relay/kusama/src/lib.rs index a16fbbf285..174e49a19a 100644 --- a/relay/kusama/src/lib.rs +++ b/relay/kusama/src/lib.rs @@ -93,7 +93,7 @@ use xcm::latest::Junction; pub use frame_system::Call as SystemCall; pub use pallet_balances::Call as BalancesCall; -pub use pallet_election_provider_multi_phase::Call as EPMCall; +pub use pallet_election_provider_multi_phase::{Call as EPMCall, GeometricDepositBase}; #[cfg(feature = "std")] pub use pallet_staking::StakerStatus; use pallet_staking::UseValidatorsMap; @@ -514,7 +514,8 @@ parameter_types! { // signed config pub const SignedMaxSubmissions: u32 = 16; pub const SignedMaxRefunds: u32 = 16 / 4; - pub const SignedDepositBase: Balance = deposit(2, 0); + pub const SignedFixedDeposit: Balance = deposit(2, 0); + pub const SignedDepositIncreaseFactor: Percent = Percent::from_percent(10); pub const SignedDepositByte: Balance = deposit(0, 10) / 1024; // Each good submission will get 1/10 KSM as reward pub SignedRewardBase: Balance = UNITS / 10; @@ -587,7 +588,8 @@ impl pallet_election_provider_multi_phase::Config for Runtime { type SignedMaxSubmissions = SignedMaxSubmissions; type SignedMaxRefunds = SignedMaxRefunds; type SignedRewardBase = SignedRewardBase; - type SignedDepositBase = SignedDepositBase; + type SignedDepositBase = + GeometricDepositBase; type SignedDepositByte = SignedDepositByte; type SignedDepositWeight = (); type SignedMaxWeight = @@ -2487,7 +2489,7 @@ mod fees_tests { fn signed_deposit_is_sensible() { // ensure this number does not change, or that it is checked after each change. // a 1 MB solution should need around 0.16 KSM deposit - let deposit = SignedDepositBase::get() + (SignedDepositByte::get() * 1024 * 1024); + let deposit = SignedFixedDeposit::get() + (SignedDepositByte::get() * 1024 * 1024); assert_eq_error_rate!(deposit, UNITS * 167 / 100, UNITS / 100); } } diff --git a/relay/polkadot/src/lib.rs b/relay/polkadot/src/lib.rs index 872afc1f81..2f4c8e5db0 100644 --- a/relay/polkadot/src/lib.rs +++ b/relay/polkadot/src/lib.rs @@ -90,7 +90,7 @@ use xcm::latest::Junction; pub use frame_system::Call as SystemCall; pub use pallet_balances::Call as BalancesCall; -pub use pallet_election_provider_multi_phase::Call as EPMCall; +pub use pallet_election_provider_multi_phase::{Call as EPMCall, GeometricDepositBase}; #[cfg(feature = "std")] pub use pallet_staking::StakerStatus; use pallet_staking::UseValidatorsMap; @@ -388,8 +388,8 @@ parameter_types! { // signed config pub const SignedMaxSubmissions: u32 = 16; pub const SignedMaxRefunds: u32 = 16 / 4; - // 40 DOTs fixed deposit.. - pub const SignedDepositBase: Balance = deposit(2, 0); + pub const SignedFixedDeposit: Balance = deposit(2, 0); + pub const SignedDepositIncreaseFactor: Percent = Percent::from_percent(10); // 0.01 DOT per KB of solution data. pub const SignedDepositByte: Balance = deposit(0, 10) / 1024; // Each good submission will get 1 DOT as reward @@ -462,7 +462,8 @@ impl pallet_election_provider_multi_phase::Config for Runtime { type SignedMaxSubmissions = SignedMaxSubmissions; type SignedMaxRefunds = SignedMaxRefunds; type SignedRewardBase = SignedRewardBase; - type SignedDepositBase = SignedDepositBase; + type SignedDepositBase = + GeometricDepositBase; type SignedDepositByte = SignedDepositByte; type SignedDepositWeight = (); type SignedMaxWeight = @@ -2406,7 +2407,7 @@ mod test_fees { fn signed_deposit_is_sensible() { // ensure this number does not change, or that it is checked after each change. // a 1 MB solution should take (40 + 10) DOTs of deposit. - let deposit = SignedDepositBase::get() + (SignedDepositByte::get() * 1024 * 1024); + let deposit = SignedFixedDeposit::get() + (SignedDepositByte::get() * 1024 * 1024); assert_eq_error_rate!(deposit, 50 * DOLLARS, DOLLARS); } } From 14d948233da66c81fa9c791cfdf98d51e5cda5e1 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Fri, 3 Nov 2023 13:03:58 +0300 Subject: [PATCH 08/68] adapt https://github.com/paritytech/polkadot-sdk/pull/1661 [upgrade required?] --- relay/kusama/src/lib.rs | 2 ++ relay/polkadot/src/lib.rs | 2 ++ 2 files changed, 4 insertions(+) diff --git a/relay/kusama/src/lib.rs b/relay/kusama/src/lib.rs index 174e49a19a..0ce8c91f40 100644 --- a/relay/kusama/src/lib.rs +++ b/relay/kusama/src/lib.rs @@ -72,6 +72,7 @@ use frame_support::{ }; use frame_system::EnsureRoot; use pallet_grandpa::{fg_primitives, AuthorityId as GrandpaId}; +use pallet_identity::simple::IdentityInfo; use pallet_im_online::sr25519::AuthorityId as ImOnlineId; use pallet_session::historical as session_historical; use pallet_transaction_payment::{CurrencyAdapter, FeeDetails, RuntimeDispatchInfo}; @@ -941,6 +942,7 @@ impl pallet_identity::Config for Runtime { type SubAccountDeposit = SubAccountDeposit; type MaxSubAccounts = MaxSubAccounts; type MaxAdditionalFields = MaxAdditionalFields; + type IdentityInformation = IdentityInfo; type MaxRegistrars = MaxRegistrars; type Slashed = Treasury; type ForceOrigin = EitherOf, GeneralAdmin>; diff --git a/relay/polkadot/src/lib.rs b/relay/polkadot/src/lib.rs index 2f4c8e5db0..549baf5b1c 100644 --- a/relay/polkadot/src/lib.rs +++ b/relay/polkadot/src/lib.rs @@ -56,6 +56,7 @@ use frame_support::{ }; use frame_system::EnsureRoot; use pallet_grandpa::{fg_primitives, AuthorityId as GrandpaId}; +use pallet_identity::simple::IdentityInfo; use pallet_im_online::sr25519::AuthorityId as ImOnlineId; use pallet_session::historical as session_historical; use pallet_transaction_payment::{FeeDetails, RuntimeDispatchInfo}; @@ -686,6 +687,7 @@ impl pallet_identity::Config for Runtime { type SubAccountDeposit = SubAccountDeposit; type MaxSubAccounts = MaxSubAccounts; type MaxAdditionalFields = MaxAdditionalFields; + type IdentityInformation = IdentityInfo; type MaxRegistrars = MaxRegistrars; type Slashed = Treasury; type ForceOrigin = EitherOf, GeneralAdmin>; From 93126f6cf0180758a1ebe548d1aedb9b18fc3297 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Fri, 3 Nov 2023 13:21:56 +0300 Subject: [PATCH 09/68] https://github.com/paritytech/polkadot-sdk/pull/1333 [have no idea - Polkadot, Kusama, ...?] --- Cargo.lock | 2 + relay/kusama/Cargo.toml | 4 ++ relay/kusama/src/lib.rs | 54 +++++++++++++++++-- relay/kusama/src/weights/pallet_treasury.rs | 17 ++++++ relay/polkadot/Cargo.toml | 4 ++ relay/polkadot/src/lib.rs | 53 ++++++++++++++++-- relay/polkadot/src/weights/pallet_treasury.rs | 17 ++++++ 7 files changed, 142 insertions(+), 9 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index bf4e8addc6..9fdca71f21 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -8085,6 +8085,7 @@ dependencies = [ "frame-try-runtime", "hex-literal", "log", + "pallet-asset-rate", "pallet-authority-discovery", "pallet-authorship", "pallet-babe", @@ -11429,6 +11430,7 @@ dependencies = [ "hex-literal", "kusama-runtime-constants", "log", + "pallet-asset-rate", "pallet-authority-discovery", "pallet-authorship", "pallet-babe", diff --git a/relay/kusama/Cargo.toml b/relay/kusama/Cargo.toml index a6e14fb2e9..f7dc6b505d 100644 --- a/relay/kusama/Cargo.toml +++ b/relay/kusama/Cargo.toml @@ -42,6 +42,7 @@ tx-pool-api = { package = "sp-transaction-pool", default-features = false , vers block-builder-api = { package = "sp-block-builder", default-features = false , version = "23.0.0" } sp-npos-elections = { default-features = false , version = "23.0.0" } +pallet-asset-rate = { default-features = false , version = "4.0.0" } pallet-authority-discovery = { default-features = false , version = "25.0.0" } pallet-authorship = { default-features = false , version = "25.0.0" } pallet-babe = { default-features = false , version = "25.0.0" } @@ -148,6 +149,7 @@ std = [ "inherents/std", "kusama-runtime-constants/std", "log/std", + "pallet-asset-rate/std", "offchain-primitives/std", "pallet-authority-discovery/std", "pallet-authorship/std", @@ -234,6 +236,7 @@ runtime-benchmarks = [ "frame-support/runtime-benchmarks", "frame-system-benchmarking/runtime-benchmarks", "frame-system/runtime-benchmarks", + "pallet-asset-rate/runtime-benchmarks", "pallet-babe/runtime-benchmarks", "pallet-bags-list/runtime-benchmarks", "pallet-balances/runtime-benchmarks", @@ -292,6 +295,7 @@ try-runtime = [ "frame-system/try-runtime", "frame-try-runtime", "frame-try-runtime/try-runtime", + "pallet-asset-rate/try-runtime", "pallet-authority-discovery/try-runtime", "pallet-authorship/try-runtime", "pallet-babe/try-runtime", diff --git a/relay/kusama/src/lib.rs b/relay/kusama/src/lib.rs index 0ce8c91f40..25e048d029 100644 --- a/relay/kusama/src/lib.rs +++ b/relay/kusama/src/lib.rs @@ -31,9 +31,13 @@ use primitives::{ PARACHAIN_KEY_TYPE_ID, }; use runtime_common::{ - auctions, claims, crowdloan, impl_runtime_weights, impls::DealWithFees, paras_registrar, - prod_or_fast, slots, BalanceToU256, BlockHashCount, BlockLength, CurrencyToVote, - SlowAdjustingFeeUpdate, U256ToBalance, + auctions, claims, crowdloan, impl_runtime_weights, + impls::{ + DealWithFees, LocatableAssetConverter, VersionedLocatableAsset, + VersionedMultiLocationConverter, + }, + paras_registrar, prod_or_fast, slots, BalanceToU256, BlockHashCount, BlockLength, + CurrencyToVote, SlowAdjustingFeeUpdate, U256ToBalance, }; use scale_info::TypeInfo; use sp_std::{cmp::Ordering, collections::btree_map::BTreeMap, prelude::*}; @@ -81,7 +85,7 @@ use sp_runtime::{ create_runtime_str, generic, impl_opaque_keys, traits::{ AccountIdLookup, BlakeTwo256, Block as BlockT, ConvertInto, Extrinsic as ExtrinsicT, - Keccak256, OpaqueKeys, SaturatedConversion, Verify, + IdentityLookup, Keccak256, OpaqueKeys, SaturatedConversion, Verify, }, transaction_validity::{TransactionPriority, TransactionSource, TransactionValidity}, ApplyExtrinsicResult, FixedU128, KeyTypeId, Perbill, Percent, Permill, RuntimeDebug, @@ -90,7 +94,11 @@ use sp_staking::SessionIndex; #[cfg(any(feature = "std", test))] use sp_version::NativeVersion; use sp_version::RuntimeVersion; -use xcm::latest::Junction; +use xcm::{ + latest::{InteriorMultiLocation, Junction, Junction::PalletInstance}, + VersionedMultiLocation, +}; +use xcm_builder::PayOverXcm; pub use frame_system::Call as SystemCall; pub use pallet_balances::Call as BalancesCall; @@ -739,6 +747,10 @@ parameter_types! { pub const SpendPeriod: BlockNumber = 6 * DAYS; pub const Burn: Permill = Permill::from_perthousand(2); pub const TreasuryPalletId: PalletId = PalletId(*b"py/trsry"); + pub const PayoutSpendPeriod: BlockNumber = 30 * DAYS; + // The asset's interior location for the paying account. This is the Treasury + // pallet instance (which sits at index 19). + pub TreasuryInteriorLocation: InteriorMultiLocation = PalletInstance(18).into(); pub const TipCountdown: BlockNumber = 1 * DAYS; pub const TipFindersFee: Percent = Percent::from_percent(20); @@ -767,6 +779,23 @@ impl pallet_treasury::Config for Runtime { type WeightInfo = weights::pallet_treasury::WeightInfo; type SpendFunds = Bounties; type SpendOrigin = TreasurySpender; + type AssetKind = VersionedLocatableAsset; + type Beneficiary = VersionedMultiLocation; + type BeneficiaryLookup = IdentityLookup; + type Paymaster = PayOverXcm< + TreasuryInteriorLocation, + crate::xcm_config::XcmRouter, + crate::XcmPallet, + ConstU32<{ 6 * HOURS }>, + Self::Beneficiary, + Self::AssetKind, + LocatableAssetConverter, + VersionedMultiLocationConverter, + >; + type BalanceConverter = AssetRate; + type PayoutPeriod = PayoutSpendPeriod; + #[cfg(feature = "runtime-benchmarks")] + type BenchmarkHelper = runtime_common::impls::benchmarks::TreasuryArguments; } parameter_types! { @@ -1496,6 +1525,18 @@ impl pallet_state_trie_migration::Config for Runtime { type MaxKeyLen = MigrationMaxKeyLen; } +impl pallet_asset_rate::Config for Runtime { + type WeightInfo = (); // TODO + type RuntimeEvent = RuntimeEvent; + type CreateOrigin = EnsureRoot; + type RemoveOrigin = EnsureRoot; + type UpdateOrigin = EnsureRoot; + type Currency = Balances; + type AssetKind = ::AssetKind; + #[cfg(feature = "runtime-benchmarks")] + type BenchmarkHelper = runtime_common::impls::benchmarks::AssetRateArguments; +} + construct_runtime! { pub enum Runtime { @@ -1626,6 +1667,9 @@ construct_runtime! { // Generalized message queue MessageQueue: pallet_message_queue::{Pallet, Call, Storage, Event} = 100, + + // Asset rate. + AssetRate: pallet_asset_rate::{Pallet, Call, Storage, Event} = 101, } } diff --git a/relay/kusama/src/weights/pallet_treasury.rs b/relay/kusama/src/weights/pallet_treasury.rs index 5ca8eb50b7..f211d5aca7 100644 --- a/relay/kusama/src/weights/pallet_treasury.rs +++ b/relay/kusama/src/weights/pallet_treasury.rs @@ -45,6 +45,10 @@ use core::marker::PhantomData; /// Weight functions for `pallet_treasury`. pub struct WeightInfo(PhantomData); impl pallet_treasury::WeightInfo for WeightInfo { + fn spend_local() -> Weight { + Weight::zero() + } + /// Storage: `Treasury::ProposalCount` (r:1 w:1) /// Proof: `Treasury::ProposalCount` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) /// Storage: `Treasury::Approvals` (r:1 w:1) @@ -61,6 +65,11 @@ impl pallet_treasury::WeightInfo for WeightInfo { .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(3)) } + + fn payout() -> Weight { + Weight::zero() + } + /// Storage: `Treasury::ProposalCount` (r:1 w:1) /// Proof: `Treasury::ProposalCount` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) /// Storage: `Treasury::Proposals` (r:0 w:1) @@ -144,4 +153,12 @@ impl pallet_treasury::WeightInfo for WeightInfo { .saturating_add(T::DbWeight::get().writes((3_u64).saturating_mul(p.into()))) .saturating_add(Weight::from_parts(0, 5206).saturating_mul(p.into())) } + + fn check_status() -> Weight { + Weight::zero() + } + + fn void_spend() -> Weight { + Weight::zero() + } } diff --git a/relay/polkadot/Cargo.toml b/relay/polkadot/Cargo.toml index fb5869e44a..9fdb31aa8d 100644 --- a/relay/polkadot/Cargo.toml +++ b/relay/polkadot/Cargo.toml @@ -38,6 +38,7 @@ sp-storage = { default-features = false , version = "17.0.0" } sp-version = { default-features = false , version = "26.0.0" } sp-npos-elections = { default-features = false , version = "23.0.0" } +pallet-asset-rate = { default-features = false , version = "4.0.0" } pallet-authority-discovery = { default-features = false , version = "25.0.0" } pallet-authorship = { default-features = false , version = "25.0.0" } pallet-babe = { default-features = false , version = "25.0.0" } @@ -139,6 +140,7 @@ std = [ "inherents/std", "log/std", "offchain-primitives/std", + "pallet-asset-rate/std", "pallet-authority-discovery/std", "pallet-authorship/std", "pallet-babe/std", @@ -218,6 +220,7 @@ runtime-benchmarks = [ "frame-system-benchmarking/runtime-benchmarks", "frame-system/runtime-benchmarks", "hex-literal", + "pallet-asset-rate/runtime-benchmarks", "pallet-babe/runtime-benchmarks", "pallet-bags-list/runtime-benchmarks", "pallet-balances/runtime-benchmarks", @@ -270,6 +273,7 @@ try-runtime = [ "frame-system/try-runtime", "frame-try-runtime", "frame-try-runtime/try-runtime", + "pallet-asset-rate/try-runtime", "pallet-authority-discovery/try-runtime", "pallet-authorship/try-runtime", "pallet-babe/try-runtime", diff --git a/relay/polkadot/src/lib.rs b/relay/polkadot/src/lib.rs index 549baf5b1c..e8cdeb8328 100644 --- a/relay/polkadot/src/lib.rs +++ b/relay/polkadot/src/lib.rs @@ -22,8 +22,13 @@ use pallet_transaction_payment::CurrencyAdapter; use runtime_common::{ - auctions, claims, crowdloan, impl_runtime_weights, impls::DealWithFees, paras_registrar, - prod_or_fast, slots, BlockHashCount, BlockLength, CurrencyToVote, SlowAdjustingFeeUpdate, + auctions, claims, crowdloan, impl_runtime_weights, + impls::{ + DealWithFees, LocatableAssetConverter, VersionedLocatableAsset, + VersionedMultiLocationConverter, + }, + paras_registrar, prod_or_fast, slots, BlockHashCount, BlockLength, CurrencyToVote, + SlowAdjustingFeeUpdate, }; use runtime_parachains::{ @@ -77,7 +82,7 @@ use sp_runtime::{ generic, impl_opaque_keys, traits::{ AccountIdLookup, BlakeTwo256, Block as BlockT, ConvertInto, Extrinsic as ExtrinsicT, - OpaqueKeys, SaturatedConversion, Verify, + IdentityLookup, OpaqueKeys, SaturatedConversion, Verify, }, transaction_validity::{TransactionPriority, TransactionSource, TransactionValidity}, ApplyExtrinsicResult, FixedU128, KeyTypeId, Perbill, Percent, Permill, RuntimeDebug, @@ -87,7 +92,11 @@ use sp_std::{cmp::Ordering, collections::btree_map::BTreeMap, prelude::*}; #[cfg(any(feature = "std", test))] use sp_version::NativeVersion; use sp_version::RuntimeVersion; -use xcm::latest::Junction; +use xcm::{ + latest::{InteriorMultiLocation, Junction, Junction::PalletInstance}, + VersionedMultiLocation, +}; +use xcm_builder::PayOverXcm; pub use frame_system::Call as SystemCall; pub use pallet_balances::Call as BalancesCall; @@ -702,6 +711,10 @@ parameter_types! { pub const SpendPeriod: BlockNumber = 24 * DAYS; pub const Burn: Permill = Permill::from_percent(1); pub const TreasuryPalletId: PalletId = PalletId(*b"py/trsry"); + pub const PayoutSpendPeriod: BlockNumber = 30 * DAYS; + // The asset's interior location for the paying account. This is the Treasury + // pallet instance (which sits at index 19). + pub TreasuryInteriorLocation: InteriorMultiLocation = PalletInstance(19).into(); pub const TipCountdown: BlockNumber = 1 * DAYS; pub const TipFindersFee: Percent = Percent::from_percent(20); @@ -732,6 +745,23 @@ impl pallet_treasury::Config for Runtime { type MaxApprovals = MaxApprovals; type WeightInfo = weights::pallet_treasury::WeightInfo; type SpendOrigin = TreasurySpender; + type AssetKind = VersionedLocatableAsset; + type Beneficiary = VersionedMultiLocation; + type BeneficiaryLookup = IdentityLookup; + type Paymaster = PayOverXcm< + TreasuryInteriorLocation, + crate::xcm_config::XcmRouter, + crate::XcmPallet, + ConstU32<{ 6 * HOURS }>, + Self::Beneficiary, + Self::AssetKind, + LocatableAssetConverter, + VersionedMultiLocationConverter, + >; + type BalanceConverter = AssetRate; + type PayoutPeriod = PayoutSpendPeriod; + #[cfg(feature = "runtime-benchmarks")] + type BenchmarkHelper = runtime_common::impls::benchmarks::TreasuryArguments; } parameter_types! { @@ -1382,6 +1412,18 @@ impl frame_support::traits::OnRuntimeUpgrade for InitiateNominationPools { } } +impl pallet_asset_rate::Config for Runtime { + type WeightInfo = (); // TODO + type RuntimeEvent = RuntimeEvent; + type CreateOrigin = EnsureRoot; + type RemoveOrigin = EnsureRoot; + type UpdateOrigin = EnsureRoot; + type Currency = Balances; + type AssetKind = ::AssetKind; + #[cfg(feature = "runtime-benchmarks")] + type BenchmarkHelper = runtime_common::impls::benchmarks::AssetRateArguments; +} + construct_runtime! { pub enum Runtime { @@ -1477,6 +1519,9 @@ construct_runtime! { // Generalized message queue MessageQueue: pallet_message_queue::{Pallet, Call, Storage, Event} = 100, + + // Asset rate. + AssetRate: pallet_asset_rate::{Pallet, Call, Storage, Event} = 101, } } diff --git a/relay/polkadot/src/weights/pallet_treasury.rs b/relay/polkadot/src/weights/pallet_treasury.rs index 9fd089ec3f..a9af012747 100644 --- a/relay/polkadot/src/weights/pallet_treasury.rs +++ b/relay/polkadot/src/weights/pallet_treasury.rs @@ -45,6 +45,10 @@ use core::marker::PhantomData; /// Weight functions for `pallet_treasury`. pub struct WeightInfo(PhantomData); impl pallet_treasury::WeightInfo for WeightInfo { + fn spend_local() -> Weight { + Weight::zero() + } + /// Storage: `Treasury::ProposalCount` (r:1 w:1) /// Proof: `Treasury::ProposalCount` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) /// Storage: `Treasury::Approvals` (r:1 w:1) @@ -61,6 +65,11 @@ impl pallet_treasury::WeightInfo for WeightInfo { .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(3)) } + + fn payout() -> Weight { + Weight::zero() + } + /// Storage: `Treasury::ProposalCount` (r:1 w:1) /// Proof: `Treasury::ProposalCount` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) /// Storage: `Treasury::Proposals` (r:0 w:1) @@ -144,4 +153,12 @@ impl pallet_treasury::WeightInfo for WeightInfo { .saturating_add(T::DbWeight::get().writes((3_u64).saturating_mul(p.into()))) .saturating_add(Weight::from_parts(0, 5206).saturating_mul(p.into())) } + + fn check_status() -> Weight { + Weight::zero() + } + + fn void_spend() -> Weight { + Weight::zero() + } } From 722f04a5e4faa8dc4c105ebbeb6c52e7df9552b4 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Fri, 3 Nov 2023 14:15:12 +0300 Subject: [PATCH 10/68] adapt https://github.com/paritytech/polkadot-sdk/pull/1255 --- relay/kusama/src/lib.rs | 14 ++++++++------ .../kusama/src/weights/pallet_nomination_pools.rs | 4 ++++ relay/polkadot/src/lib.rs | 9 +++++---- .../src/weights/pallet_nomination_pools.rs | 4 ++++ 4 files changed, 21 insertions(+), 10 deletions(-) diff --git a/relay/kusama/src/lib.rs b/relay/kusama/src/lib.rs index 25e048d029..afa508d781 100644 --- a/relay/kusama/src/lib.rs +++ b/relay/kusama/src/lib.rs @@ -327,11 +327,11 @@ impl pallet_balances::Config for Runtime { type MaxReserves = MaxReserves; type ReserveIdentifier = [u8; 8]; type WeightInfo = weights::pallet_balances::WeightInfo; - type FreezeIdentifier = (); - type MaxFreezes = (); + type FreezeIdentifier = RuntimeFreezeReason; + type MaxFreezes = ConstU32<1>; type RuntimeHoldReason = RuntimeHoldReason; type RuntimeFreezeReason = RuntimeFreezeReason; - type MaxHolds = ConstU32<1>; + type MaxHolds = ConstU32<2>; } parameter_types! { @@ -1444,9 +1444,10 @@ impl pallet_balances::Config for Runtime { type ReserveIdentifier = [u8; 8]; type WeightInfo = weights::pallet_balances_nis_counterpart_balances::WeightInfo; type RuntimeHoldReason = RuntimeHoldReason; + type RuntimeFreezeReason = RuntimeFreezeReason; type FreezeIdentifier = (); - type MaxHolds = ConstU32<0>; - type MaxFreezes = ConstU32<0>; + type MaxHolds = ConstU32<2>; + type MaxFreezes = ConstU32<1>; } parameter_types! { @@ -1493,6 +1494,7 @@ impl pallet_nomination_pools::Config for Runtime { type RuntimeEvent = RuntimeEvent; type WeightInfo = weights::pallet_nomination_pools::WeightInfo; type Currency = Balances; + type RuntimeFreezeReason = RuntimeFreezeReason; type RewardCounter = FixedU128; type BalanceToU256 = BalanceToU256; type U256ToBalance = U256ToBalance; @@ -1632,7 +1634,7 @@ construct_runtime! { VoterList: pallet_bags_list::::{Pallet, Call, Storage, Event} = 39, // nomination pools: extension to staking. - NominationPools: pallet_nomination_pools::{Pallet, Call, Storage, Event, Config} = 41, + NominationPools: pallet_nomination_pools::{Pallet, Call, Storage, Event, Config, FreezeReason} = 41, // Fast unstake pallet: extension to staking. FastUnstake: pallet_fast_unstake = 42, diff --git a/relay/kusama/src/weights/pallet_nomination_pools.rs b/relay/kusama/src/weights/pallet_nomination_pools.rs index 3320520cd7..f0ffbf0d00 100644 --- a/relay/kusama/src/weights/pallet_nomination_pools.rs +++ b/relay/kusama/src/weights/pallet_nomination_pools.rs @@ -597,4 +597,8 @@ impl pallet_nomination_pools::WeightInfo for WeightInfo .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } + + fn adjust_pool_deposit() -> Weight { + Weight::zero() + } } diff --git a/relay/polkadot/src/lib.rs b/relay/polkadot/src/lib.rs index e8cdeb8328..889364e380 100644 --- a/relay/polkadot/src/lib.rs +++ b/relay/polkadot/src/lib.rs @@ -317,9 +317,9 @@ impl pallet_balances::Config for Runtime { type WeightInfo = weights::pallet_balances::WeightInfo; type RuntimeHoldReason = RuntimeHoldReason; type RuntimeFreezeReason = RuntimeFreezeReason; - type FreezeIdentifier = (); - type MaxHolds = ConstU32<0>; - type MaxFreezes = ConstU32<0>; + type FreezeIdentifier = RuntimeFreezeReason; + type MaxHolds = ConstU32<1>; + type MaxFreezes = ConstU32<1>; } parameter_types! { @@ -1375,6 +1375,7 @@ parameter_types! { impl pallet_nomination_pools::Config for Runtime { type RuntimeEvent = RuntimeEvent; type Currency = Balances; + type RuntimeFreezeReason = RuntimeFreezeReason; type RewardCounter = FixedU128; type BalanceToU256 = runtime_common::BalanceToU256; type U256ToBalance = runtime_common::U256ToBalance; @@ -1486,7 +1487,7 @@ construct_runtime! { VoterList: pallet_bags_list::::{Pallet, Call, Storage, Event} = 37, // Nomination pools: extension to staking. - NominationPools: pallet_nomination_pools::{Pallet, Call, Storage, Event, Config} = 39, + NominationPools: pallet_nomination_pools::{Pallet, Call, Storage, Event, Config, FreezeReason} = 39, // Fast unstake pallet: extension to staking. FastUnstake: pallet_fast_unstake = 40, diff --git a/relay/polkadot/src/weights/pallet_nomination_pools.rs b/relay/polkadot/src/weights/pallet_nomination_pools.rs index 095fa7fcc4..5a492b0cd7 100644 --- a/relay/polkadot/src/weights/pallet_nomination_pools.rs +++ b/relay/polkadot/src/weights/pallet_nomination_pools.rs @@ -597,4 +597,8 @@ impl pallet_nomination_pools::WeightInfo for WeightInfo .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } + + fn adjust_pool_deposit() -> Weight { + Weight::zero() + } } From b75b51c41871097a843460b5fd9e52ea40b4159c Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Fri, 3 Nov 2023 14:28:31 +0300 Subject: [PATCH 11/68] adapt https://github.com/paritytech/polkadot-sdk/issues/1473 --- relay/kusama/src/weights/runtime_parachains_hrmp.rs | 8 ++++++++ relay/polkadot/src/weights/runtime_parachains_hrmp.rs | 8 ++++++++ 2 files changed, 16 insertions(+) diff --git a/relay/kusama/src/weights/runtime_parachains_hrmp.rs b/relay/kusama/src/weights/runtime_parachains_hrmp.rs index a8853e8a55..b7ff2b9d1b 100644 --- a/relay/kusama/src/weights/runtime_parachains_hrmp.rs +++ b/relay/kusama/src/weights/runtime_parachains_hrmp.rs @@ -275,4 +275,12 @@ impl runtime_parachains::hrmp::WeightInfo for WeightInf .saturating_add(T::DbWeight::get().reads(12)) .saturating_add(T::DbWeight::get().writes(8)) } + + fn establish_system_channel() -> Weight { + Weight::zero() + } + + fn poke_channel_deposits() -> Weight { + Weight::zero() + } } diff --git a/relay/polkadot/src/weights/runtime_parachains_hrmp.rs b/relay/polkadot/src/weights/runtime_parachains_hrmp.rs index e0af408e88..72b0ad2e24 100644 --- a/relay/polkadot/src/weights/runtime_parachains_hrmp.rs +++ b/relay/polkadot/src/weights/runtime_parachains_hrmp.rs @@ -275,4 +275,12 @@ impl runtime_parachains::hrmp::WeightInfo for WeightInf .saturating_add(T::DbWeight::get().reads(12)) .saturating_add(T::DbWeight::get().writes(8)) } + + fn establish_system_channel() -> Weight { + Weight::zero() + } + + fn poke_channel_deposits() -> Weight { + Weight::zero() + } } From 7104fcdfe9191c641dd37e416acec203be42bfcf Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Tue, 7 Nov 2023 09:47:23 +0300 Subject: [PATCH 12/68] adapt https://github.com/paritytech/polkadot-sdk/issues/1492 --- Cargo.lock | 8 ++++++++ relay/kusama/Cargo.toml | 2 ++ relay/kusama/src/lib.rs | 14 +++++++++++++- relay/polkadot/Cargo.toml | 2 ++ relay/polkadot/src/lib.rs | 14 +++++++++++++- .../asset-hubs/asset-hub-kusama/Cargo.toml | 2 ++ .../asset-hubs/asset-hub-kusama/src/lib.rs | 11 +++++++++++ .../asset-hubs/asset-hub-polkadot/Cargo.toml | 2 ++ .../asset-hubs/asset-hub-polkadot/src/lib.rs | 11 +++++++++++ .../bridge-hubs/bridge-hub-kusama/Cargo.toml | 2 ++ .../bridge-hubs/bridge-hub-kusama/src/lib.rs | 11 +++++++++++ .../bridge-hubs/bridge-hub-polkadot/Cargo.toml | 2 ++ .../bridge-hubs/bridge-hub-polkadot/src/lib.rs | 11 +++++++++++ .../collectives/collectives-polkadot/Cargo.toml | 2 ++ .../collectives/collectives-polkadot/src/lib.rs | 10 ++++++++++ .../gluttons/glutton-kusama/Cargo.toml | 2 ++ .../gluttons/glutton-kusama/src/lib.rs | 12 +++++++++++- 17 files changed, 115 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 9fdca71f21..42a5e74a68 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -581,6 +581,7 @@ dependencies = [ "sp-block-builder", "sp-consensus-aura", "sp-core", + "sp-genesis-builder", "sp-inherents", "sp-offchain", "sp-runtime", @@ -650,6 +651,7 @@ dependencies = [ "sp-block-builder", "sp-consensus-aura", "sp-core", + "sp-genesis-builder", "sp-inherents", "sp-offchain", "sp-runtime", @@ -1308,6 +1310,7 @@ dependencies = [ "sp-block-builder", "sp-consensus-aura", "sp-core", + "sp-genesis-builder", "sp-inherents", "sp-io", "sp-offchain", @@ -1371,6 +1374,7 @@ dependencies = [ "sp-block-builder", "sp-consensus-aura", "sp-core", + "sp-genesis-builder", "sp-inherents", "sp-io", "sp-offchain", @@ -1872,6 +1876,7 @@ dependencies = [ "sp-block-builder", "sp-consensus-aura", "sp-core", + "sp-genesis-builder", "sp-inherents", "sp-io", "sp-offchain", @@ -3943,6 +3948,7 @@ dependencies = [ "sp-api", "sp-block-builder", "sp-core", + "sp-genesis-builder", "sp-inherents", "sp-offchain", "sp-runtime", @@ -8151,6 +8157,7 @@ dependencies = [ "sp-consensus-babe", "sp-consensus-beefy", "sp-core", + "sp-genesis-builder", "sp-inherents", "sp-io", "sp-keyring", @@ -11502,6 +11509,7 @@ dependencies = [ "sp-consensus-babe", "sp-consensus-beefy", "sp-core", + "sp-genesis-builder", "sp-inherents", "sp-io", "sp-keyring", diff --git a/relay/kusama/Cargo.toml b/relay/kusama/Cargo.toml index f7dc6b505d..6c9ab41da1 100644 --- a/relay/kusama/Cargo.toml +++ b/relay/kusama/Cargo.toml @@ -30,6 +30,7 @@ offchain-primitives = { package = "sp-offchain", default-features = false , vers sp-std = { package = "sp-std", default-features = false , version = "12.0.0" } sp-application-crypto = { default-features = false , version = "27.0.0" } sp-arithmetic = { default-features = false , version = "20.0.0" } +sp-genesis-builder = { default-features = false , version = "0.4.0" } sp-io = { default-features = false , version = "27.0.0" } sp-mmr-primitives = { default-features = false , version = "23.0.0" } sp-runtime = { default-features = false , version = "28.0.0" } @@ -215,6 +216,7 @@ std = [ "sp-application-crypto/std", "sp-arithmetic/std", "sp-core/std", + "sp-genesis-builder/std", "sp-io/std", "sp-mmr-primitives/std", "sp-npos-elections/std", diff --git a/relay/kusama/src/lib.rs b/relay/kusama/src/lib.rs index afa508d781..39b88294ea 100644 --- a/relay/kusama/src/lib.rs +++ b/relay/kusama/src/lib.rs @@ -65,7 +65,9 @@ use frame_election_provider_support::{ SequentialPhragmen, }; use frame_support::{ - construct_runtime, parameter_types, + construct_runtime, + genesis_builder_helper::{build_config, create_default_config}, + parameter_types, traits::{ fungible::HoldConsideration, ConstU32, Contains, EitherOf, EitherOfDiverse, InstanceFilter, KeyOwnerProofSystem, LinearStoragePrice, PrivilegeCmp, ProcessMessage, ProcessMessageError, @@ -2354,6 +2356,16 @@ sp_api::impl_runtime_apis! { } } + impl sp_genesis_builder::GenesisBuilder for Runtime { + fn create_default_config() -> Vec { + create_default_config::() + } + + fn build_config(config: Vec) -> sp_genesis_builder::Result { + build_config::(config) + } + } + #[cfg(feature = "try-runtime")] impl frame_try_runtime::TryRuntime for Runtime { fn on_runtime_upgrade(checks: frame_try_runtime::UpgradeCheckSelect) -> (Weight, Weight) { diff --git a/relay/polkadot/Cargo.toml b/relay/polkadot/Cargo.toml index 9fdb31aa8d..dccbf65a83 100644 --- a/relay/polkadot/Cargo.toml +++ b/relay/polkadot/Cargo.toml @@ -27,6 +27,7 @@ offchain-primitives = { package = "sp-offchain", default-features = false , vers tx-pool-api = { package = "sp-transaction-pool", default-features = false , version = "23.0.0" } sp-arithmetic = { default-features = false , version = "20.0.0" } sp-api = { default-features = false , version = "23.0.0" } +sp-genesis-builder = { default-features = false , version = "0.4.0" } sp-std = { default-features = false , version = "12.0.0" } sp-io = { default-features = false , version = "27.0.0" } sp-mmr-primitives = { default-features = false , version = "23.0.0" } @@ -198,6 +199,7 @@ std = [ "sp-api/std", "sp-arithmetic/std", "sp-core/std", + "sp-genesis-builder/std", "sp-io/std", "sp-mmr-primitives/std", "sp-npos-elections/std", diff --git a/relay/polkadot/src/lib.rs b/relay/polkadot/src/lib.rs index 889364e380..c2fe989738 100644 --- a/relay/polkadot/src/lib.rs +++ b/relay/polkadot/src/lib.rs @@ -50,7 +50,9 @@ use frame_election_provider_support::{ bounds::ElectionBoundsBuilder, generate_solution_type, onchain, SequentialPhragmen, }; use frame_support::{ - construct_runtime, parameter_types, + construct_runtime, + genesis_builder_helper::{build_config, create_default_config}, + parameter_types, traits::{ fungible::HoldConsideration, ConstU32, Contains, EitherOf, EitherOfDiverse, InstanceFilter, KeyOwnerProofSystem, LinearStoragePrice, PrivilegeCmp, ProcessMessage, ProcessMessageError, @@ -2150,6 +2152,16 @@ sp_api::impl_runtime_apis! { } } + impl sp_genesis_builder::GenesisBuilder for Runtime { + fn create_default_config() -> Vec { + create_default_config::() + } + + fn build_config(config: Vec) -> sp_genesis_builder::Result { + build_config::(config) + } + } + #[cfg(feature = "try-runtime")] impl frame_try_runtime::TryRuntime for Runtime { fn on_runtime_upgrade(checks: frame_try_runtime::UpgradeCheckSelect) -> (Weight, Weight) { diff --git a/system-parachains/asset-hubs/asset-hub-kusama/Cargo.toml b/system-parachains/asset-hubs/asset-hub-kusama/Cargo.toml index 5434783aa7..eb8291f397 100644 --- a/system-parachains/asset-hubs/asset-hub-kusama/Cargo.toml +++ b/system-parachains/asset-hubs/asset-hub-kusama/Cargo.toml @@ -45,6 +45,7 @@ sp-api = { default-features = false, version = "23.0.0" } sp-block-builder = { default-features = false, version = "23.0.0" } sp-consensus-aura = { default-features = false, version = "0.29.0" } sp-core = { default-features = false, version = "25.0.0" } +sp-genesis-builder = { default-features = false , version = "0.4.0" } sp-inherents = { default-features = false, version = "23.0.0" } sp-offchain = { default-features = false, version = "23.0.0" } sp-runtime = { default-features = false, version = "28.0.0" } @@ -210,6 +211,7 @@ std = [ "sp-block-builder/std", "sp-consensus-aura/std", "sp-core/std", + "sp-genesis-builder/std", "sp-inherents/std", "sp-offchain/std", "sp-runtime/std", diff --git a/system-parachains/asset-hubs/asset-hub-kusama/src/lib.rs b/system-parachains/asset-hubs/asset-hub-kusama/src/lib.rs index d16441ef25..9f4cbbad99 100644 --- a/system-parachains/asset-hubs/asset-hub-kusama/src/lib.rs +++ b/system-parachains/asset-hubs/asset-hub-kusama/src/lib.rs @@ -52,6 +52,7 @@ use codec::{Decode, Encode, MaxEncodedLen}; use frame_support::{ construct_runtime, dispatch::DispatchClass, + genesis_builder_helper::{build_config, create_default_config}, ord_parameter_types, parameter_types, traits::{ AsEnsureOriginWithArg, ConstBool, ConstU128, ConstU32, ConstU64, ConstU8, EitherOfDiverse, @@ -1189,6 +1190,16 @@ impl_runtime_apis! { } } + impl sp_genesis_builder::GenesisBuilder for Runtime { + fn create_default_config() -> Vec { + create_default_config::() + } + + fn build_config(config: Vec) -> sp_genesis_builder::Result { + build_config::(config) + } + } + #[cfg(feature = "try-runtime")] impl frame_try_runtime::TryRuntime for Runtime { fn on_runtime_upgrade(checks: frame_try_runtime::UpgradeCheckSelect) -> (Weight, Weight) { diff --git a/system-parachains/asset-hubs/asset-hub-polkadot/Cargo.toml b/system-parachains/asset-hubs/asset-hub-polkadot/Cargo.toml index 2e69902304..cf3c803c97 100644 --- a/system-parachains/asset-hubs/asset-hub-polkadot/Cargo.toml +++ b/system-parachains/asset-hubs/asset-hub-polkadot/Cargo.toml @@ -42,6 +42,7 @@ sp-api = { default-features = false, version = "23.0.0" } sp-block-builder = { default-features = false, version = "23.0.0" } sp-consensus-aura = { default-features = false, version = "0.29.0" } sp-core = { default-features = false, version = "25.0.0" } +sp-genesis-builder = { default-features = false , version = "0.4.0" } sp-inherents = { default-features = false, version = "23.0.0" } sp-offchain = { default-features = false, version = "23.0.0" } sp-runtime = { default-features = false, version = "28.0.0" } @@ -191,6 +192,7 @@ std = [ "sp-block-builder/std", "sp-consensus-aura/std", "sp-core/std", + "sp-genesis-builder/std", "sp-inherents/std", "sp-offchain/std", "sp-runtime/std", diff --git a/system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs b/system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs index df1d00075c..bd5787f15b 100644 --- a/system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs +++ b/system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs @@ -84,6 +84,7 @@ use codec::{Decode, Encode, MaxEncodedLen}; use frame_support::{ construct_runtime, dispatch::DispatchClass, + genesis_builder_helper::{build_config, create_default_config}, parameter_types, traits::{ AsEnsureOriginWithArg, ConstBool, ConstU32, ConstU64, ConstU8, EitherOfDiverse, @@ -1066,6 +1067,16 @@ impl_runtime_apis! { } } + impl sp_genesis_builder::GenesisBuilder for Runtime { + fn create_default_config() -> Vec { + create_default_config::() + } + + fn build_config(config: Vec) -> sp_genesis_builder::Result { + build_config::(config) + } + } + #[cfg(feature = "try-runtime")] impl frame_try_runtime::TryRuntime for Runtime { fn on_runtime_upgrade(checks: frame_try_runtime::UpgradeCheckSelect) -> (Weight, Weight) { diff --git a/system-parachains/bridge-hubs/bridge-hub-kusama/Cargo.toml b/system-parachains/bridge-hubs/bridge-hub-kusama/Cargo.toml index f5f658fea2..2b8f3cfc89 100644 --- a/system-parachains/bridge-hubs/bridge-hub-kusama/Cargo.toml +++ b/system-parachains/bridge-hubs/bridge-hub-kusama/Cargo.toml @@ -40,6 +40,7 @@ sp-api = { default-features = false, version = "23.0.0" } sp-block-builder = { default-features = false, version = "23.0.0" } sp-consensus-aura = { default-features = false, version = "0.29.0" } sp-core = { default-features = false, version = "25.0.0" } +sp-genesis-builder = { default-features = false , version = "0.4.0" } sp-inherents = { default-features = false, version = "23.0.0" } sp-io = { default-features = false, version = "27.0.0" } sp-offchain = { default-features = false, version = "23.0.0" } @@ -121,6 +122,7 @@ std = [ "sp-block-builder/std", "sp-consensus-aura/std", "sp-core/std", + "sp-genesis-builder/std", "sp-inherents/std", "sp-io/std", "sp-offchain/std", diff --git a/system-parachains/bridge-hubs/bridge-hub-kusama/src/lib.rs b/system-parachains/bridge-hubs/bridge-hub-kusama/src/lib.rs index 937e44a0f6..1a1268da8e 100644 --- a/system-parachains/bridge-hubs/bridge-hub-kusama/src/lib.rs +++ b/system-parachains/bridge-hubs/bridge-hub-kusama/src/lib.rs @@ -43,6 +43,7 @@ use sp_version::RuntimeVersion; use frame_support::{ construct_runtime, dispatch::DispatchClass, + genesis_builder_helper::{build_config, create_default_config}, parameter_types, traits::{ConstBool, ConstU32, ConstU64, ConstU8, EitherOfDiverse, Everything}, weights::{ConstantMultiplier, Weight}, @@ -640,6 +641,16 @@ impl_runtime_apis! { } } + impl sp_genesis_builder::GenesisBuilder for Runtime { + fn create_default_config() -> Vec { + create_default_config::() + } + + fn build_config(config: Vec) -> sp_genesis_builder::Result { + build_config::(config) + } + } + #[cfg(feature = "try-runtime")] impl frame_try_runtime::TryRuntime for Runtime { fn on_runtime_upgrade(checks: frame_try_runtime::UpgradeCheckSelect) -> (Weight, Weight) { diff --git a/system-parachains/bridge-hubs/bridge-hub-polkadot/Cargo.toml b/system-parachains/bridge-hubs/bridge-hub-polkadot/Cargo.toml index c28039fa3e..aad6871f51 100644 --- a/system-parachains/bridge-hubs/bridge-hub-polkadot/Cargo.toml +++ b/system-parachains/bridge-hubs/bridge-hub-polkadot/Cargo.toml @@ -40,6 +40,7 @@ sp-api = { default-features = false, version = "23.0.0" } sp-block-builder = { default-features = false, version = "23.0.0" } sp-consensus-aura = { default-features = false, version = "0.29.0" } sp-core = { default-features = false, version = "25.0.0" } +sp-genesis-builder = { default-features = false , version = "0.4.0" } sp-inherents = { default-features = false, version = "23.0.0" } sp-io = { default-features = false, version = "27.0.0" } sp-offchain = { default-features = false, version = "23.0.0" } @@ -121,6 +122,7 @@ std = [ "sp-block-builder/std", "sp-consensus-aura/std", "sp-core/std", + "sp-genesis-builder/std", "sp-inherents/std", "sp-io/std", "sp-offchain/std", diff --git a/system-parachains/bridge-hubs/bridge-hub-polkadot/src/lib.rs b/system-parachains/bridge-hubs/bridge-hub-polkadot/src/lib.rs index 3133a43e65..f5d97ab45e 100644 --- a/system-parachains/bridge-hubs/bridge-hub-polkadot/src/lib.rs +++ b/system-parachains/bridge-hubs/bridge-hub-polkadot/src/lib.rs @@ -43,6 +43,7 @@ use sp_version::RuntimeVersion; use frame_support::{ construct_runtime, dispatch::DispatchClass, + genesis_builder_helper::{build_config, create_default_config}, parameter_types, traits::{ConstBool, ConstU32, ConstU64, ConstU8, EitherOfDiverse, Everything}, weights::{ConstantMultiplier, Weight}, @@ -615,6 +616,16 @@ impl_runtime_apis! { } } + impl sp_genesis_builder::GenesisBuilder for Runtime { + fn create_default_config() -> Vec { + create_default_config::() + } + + fn build_config(config: Vec) -> sp_genesis_builder::Result { + build_config::(config) + } + } + #[cfg(feature = "try-runtime")] impl frame_try_runtime::TryRuntime for Runtime { fn on_runtime_upgrade(checks: frame_try_runtime::UpgradeCheckSelect) -> (Weight, Weight) { diff --git a/system-parachains/collectives/collectives-polkadot/Cargo.toml b/system-parachains/collectives/collectives-polkadot/Cargo.toml index 54a5f94f10..57156c5ec2 100644 --- a/system-parachains/collectives/collectives-polkadot/Cargo.toml +++ b/system-parachains/collectives/collectives-polkadot/Cargo.toml @@ -46,6 +46,7 @@ sp-arithmetic = { default-features = false , version = "20.0.0" } sp-block-builder = { default-features = false, version = "23.0.0" } sp-consensus-aura = { default-features = false, version = "0.29.0" } sp-core = { default-features = false, version = "25.0.0" } +sp-genesis-builder = { default-features = false , version = "0.4.0" } sp-inherents = { default-features = false, version = "23.0.0" } sp-offchain = { default-features = false, version = "23.0.0" } sp-runtime = { default-features = false, version = "28.0.0" } @@ -198,6 +199,7 @@ std = [ "sp-block-builder/std", "sp-consensus-aura/std", "sp-core/std", + "sp-genesis-builder/std", "sp-inherents/std", "sp-io/std", "sp-offchain/std", diff --git a/system-parachains/collectives/collectives-polkadot/src/lib.rs b/system-parachains/collectives/collectives-polkadot/src/lib.rs index 63bdd240c8..2b04fe9421 100644 --- a/system-parachains/collectives/collectives-polkadot/src/lib.rs +++ b/system-parachains/collectives/collectives-polkadot/src/lib.rs @@ -886,6 +886,16 @@ impl_runtime_apis! { } } + impl sp_genesis_builder::GenesisBuilder for Runtime { + fn create_default_config() -> Vec { + create_default_config::() + } + + fn build_config(config: Vec) -> sp_genesis_builder::Result { + build_config::(config) + } + } + #[cfg(feature = "try-runtime")] impl frame_try_runtime::TryRuntime for Runtime { fn on_runtime_upgrade(checks: frame_try_runtime::UpgradeCheckSelect) -> (Weight, Weight) { diff --git a/system-parachains/gluttons/glutton-kusama/Cargo.toml b/system-parachains/gluttons/glutton-kusama/Cargo.toml index 30be665295..b037ddbc21 100644 --- a/system-parachains/gluttons/glutton-kusama/Cargo.toml +++ b/system-parachains/gluttons/glutton-kusama/Cargo.toml @@ -25,6 +25,7 @@ pallet-sudo = { default-features = false, optional = true, version = "25.0.0" } sp-api = { default-features = false, version = "23.0.0" } sp-block-builder = { default-features = false, version = "23.0.0" } sp-core = { default-features = false, version = "25.0.0" } +sp-genesis-builder = { default-features = false , version = "0.4.0" } sp-inherents = { default-features = false, version = "23.0.0" } sp-offchain = { default-features = false, version = "23.0.0" } sp-runtime = { default-features = false, version = "28.0.0" } @@ -83,6 +84,7 @@ std = [ "sp-api/std", "sp-block-builder/std", "sp-core/std", + "sp-genesis-builder/std", "sp-inherents/std", "sp-offchain/std", "sp-runtime/std", diff --git a/system-parachains/gluttons/glutton-kusama/src/lib.rs b/system-parachains/gluttons/glutton-kusama/src/lib.rs index a6153952de..db98c4fa23 100644 --- a/system-parachains/gluttons/glutton-kusama/src/lib.rs +++ b/system-parachains/gluttons/glutton-kusama/src/lib.rs @@ -347,12 +347,22 @@ impl_runtime_apis! { } } - impl frame_system_rpc_runtime_api::AccountNonceApi for Runtime { + impl frame_system_rpc_runtime_api::AccountNonceApi for Runtime { fn account_nonce(account: AccountId) -> Nonce { System::account_nonce(account) } } + impl sp_genesis_builder::GenesisBuilder for Runtime { + fn create_default_config() -> Vec { + create_default_config::() + } + + fn build_config(config: Vec) -> sp_genesis_builder::Result { + build_config::(config) + } + } + #[cfg(feature = "runtime-benchmarks")] impl frame_benchmarking::Benchmark for Runtime { fn benchmark_metadata(extra: bool) -> ( From d9025ad527a41ed351f2882475efbf9bf8a9511a Mon Sep 17 00:00:00 2001 From: Branislav Kontur Date: Wed, 8 Nov 2023 13:39:25 +0100 Subject: [PATCH 13/68] adapt https://github.com/paritytech/polkadot-sdk/pull/1234 (UMP price for delivery + benchmarks compilation?) --- .../asset-hubs/asset-hub-kusama/src/lib.rs | 24 +++++++++++++++++-- .../asset-hub-kusama/src/xcm_config.rs | 6 ++--- .../asset-hubs/asset-hub-polkadot/src/lib.rs | 24 +++++++++++++++++-- .../asset-hub-polkadot/src/xcm_config.rs | 6 ++--- .../bridge-hubs/bridge-hub-kusama/src/lib.rs | 24 +++++++++++++++++-- .../bridge-hub-kusama/src/xcm_config.rs | 5 ++-- .../bridge-hub-polkadot/src/lib.rs | 24 +++++++++++++++++-- .../bridge-hub-polkadot/src/xcm_config.rs | 5 ++-- 8 files changed, 100 insertions(+), 18 deletions(-) diff --git a/system-parachains/asset-hubs/asset-hub-kusama/src/lib.rs b/system-parachains/asset-hubs/asset-hub-kusama/src/lib.rs index 9f4cbbad99..197bf2fe3c 100644 --- a/system-parachains/asset-hubs/asset-hub-kusama/src/lib.rs +++ b/system-parachains/asset-hubs/asset-hub-kusama/src/lib.rs @@ -635,15 +635,22 @@ parameter_types! { /// The asset ID for the asset that we use to pay for message delivery fees. pub FeeAssetId: AssetId = Concrete(xcm_config::KsmLocation::get()); /// The base fee for the message delivery fees. - pub const BaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price + pub const ToSiblingBaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price + pub const ToParentBaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price } pub type PriceForSiblingParachainDelivery = polkadot_runtime_common::xcm_sender::ExponentialPrice< FeeAssetId, - BaseDeliveryFee, + ToSiblingBaseDeliveryFee, TransactionByteFee, XcmpQueue, >; +pub type PriceForParentDelivery = polkadot_runtime_common::xcm_sender::ExponentialPrice< + FeeAssetId, + ToParentBaseDeliveryFee, + TransactionByteFee, + ParachainSystem, +>; impl cumulus_pallet_xcmp_queue::Config for Runtime { type RuntimeEvent = RuntimeEvent; @@ -1276,9 +1283,21 @@ impl_runtime_apis! { use xcm_config::{KsmLocation, MaxAssetsIntoHolding}; use pallet_xcm_benchmarks::asset_instance_from; + parameter_types! { + pub ExistentialDepositMultiAsset: Option = Some(( + KsmLocation::get(), + ExistentialDeposit::get() + ).into()); + } + impl pallet_xcm_benchmarks::Config for Runtime { type XcmConfig = xcm_config::XcmConfig; type AccountIdConverter = xcm_config::LocationToAccountId; + type DeliveryHelper = cumulus_primitives_utility::ToParentDeliveryHelper< + xcm_config::XcmConfig, + ExistentialDepositMultiAsset, + PriceForParentDelivery, + >; fn valid_destination() -> Result { Ok(KsmLocation::get()) } @@ -1334,6 +1353,7 @@ impl_runtime_apis! { } impl pallet_xcm_benchmarks::generic::Config for Runtime { + type TransactAsset = Balances; type RuntimeCall = RuntimeCall; fn worst_case_response() -> (u64, Response) { diff --git a/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs b/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs index cd63472083..983dc0470c 100644 --- a/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs +++ b/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs @@ -15,8 +15,8 @@ use super::{ AccountId, AllPalletsWithSystem, Assets, Authorship, Balance, Balances, ParachainInfo, - ParachainSystem, PolkadotXcm, PoolAssets, Runtime, RuntimeCall, RuntimeEvent, RuntimeOrigin, - TrustBackedAssetsInstance, WeightToFee, XcmpQueue, + ParachainSystem, PolkadotXcm, PoolAssets, PriceForParentDelivery, Runtime, RuntimeCall, + RuntimeEvent, RuntimeOrigin, TrustBackedAssetsInstance, WeightToFee, XcmpQueue, }; use crate::ForeignAssets; use assets_common::{ @@ -530,7 +530,7 @@ pub type LocalOriginToLocation = SignedToAccountId32, + cumulus_primitives_utility::ParentAsUmp, // ..and XCMP to communicate with the sibling chains. XcmpQueue, )>; diff --git a/system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs b/system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs index bd5787f15b..32780b64f9 100644 --- a/system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs +++ b/system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs @@ -571,15 +571,22 @@ parameter_types! { /// The asset ID for the asset that we use to pay for message delivery fees. pub FeeAssetId: AssetId = Concrete(xcm_config::DotLocation::get()); /// The base fee for the message delivery fees. - pub const BaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price + pub const ToSiblingBaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price + pub const ToParentBaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price } pub type PriceForSiblingParachainDelivery = polkadot_runtime_common::xcm_sender::ExponentialPrice< FeeAssetId, - BaseDeliveryFee, + ToSiblingBaseDeliveryFee, TransactionByteFee, XcmpQueue, >; +pub type PriceForParentDelivery = polkadot_runtime_common::xcm_sender::ExponentialPrice< + FeeAssetId, + ToParentBaseDeliveryFee, + TransactionByteFee, + ParachainSystem, +>; impl cumulus_pallet_xcmp_queue::Config for Runtime { type WeightInfo = weights::cumulus_pallet_xcmp_queue::WeightInfo; @@ -1152,9 +1159,21 @@ impl_runtime_apis! { use xcm_config::{DotLocation, MaxAssetsIntoHolding}; use pallet_xcm_benchmarks::asset_instance_from; + parameter_types! { + pub ExistentialDepositMultiAsset: Option = Some(( + DotLocation::get(), + ExistentialDeposit::get() + ).into()); + } + impl pallet_xcm_benchmarks::Config for Runtime { type XcmConfig = xcm_config::XcmConfig; type AccountIdConverter = xcm_config::LocationToAccountId; + type DeliveryHelper = cumulus_primitives_utility::ToParentDeliveryHelper< + xcm_config::XcmConfig, + ExistentialDepositMultiAsset, + PriceForParentDelivery, + >; fn valid_destination() -> Result { Ok(DotLocation::get()) } @@ -1210,6 +1229,7 @@ impl_runtime_apis! { } impl pallet_xcm_benchmarks::generic::Config for Runtime { + type TransactAsset = Balances; type RuntimeCall = RuntimeCall; fn worst_case_response() -> (u64, Response) { diff --git a/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs b/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs index 373768a700..d9f0a5b853 100644 --- a/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs +++ b/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs @@ -15,8 +15,8 @@ use super::{ AccountId, AllPalletsWithSystem, Assets, Authorship, Balance, Balances, ForeignAssets, - ParachainInfo, ParachainSystem, PolkadotXcm, Runtime, RuntimeCall, RuntimeEvent, RuntimeOrigin, - TrustBackedAssetsInstance, WeightToFee, XcmpQueue, + ParachainInfo, ParachainSystem, PolkadotXcm, PriceForParentDelivery, Runtime, RuntimeCall, + RuntimeEvent, RuntimeOrigin, TrustBackedAssetsInstance, WeightToFee, XcmpQueue, }; use assets_common::matching::{FromSiblingParachain, IsForeignConcreteAsset}; use frame_support::{ @@ -450,7 +450,7 @@ pub type LocalOriginToLocation = SignedToAccountId32, + cumulus_primitives_utility::ParentAsUmp, // ..and XCMP to communicate with the sibling chains. XcmpQueue, )>; diff --git a/system-parachains/bridge-hubs/bridge-hub-kusama/src/lib.rs b/system-parachains/bridge-hubs/bridge-hub-kusama/src/lib.rs index 1a1268da8e..8f91a20d06 100644 --- a/system-parachains/bridge-hubs/bridge-hub-kusama/src/lib.rs +++ b/system-parachains/bridge-hubs/bridge-hub-kusama/src/lib.rs @@ -326,7 +326,8 @@ parameter_types! { /// The asset ID for the asset that we use to pay for message delivery fees. pub FeeAssetId: AssetId = Concrete(xcm_config::KsmRelayLocation::get()); /// The base fee for the message delivery fees. - pub const BaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price + pub const ToSiblingBaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price + pub const ToParentBaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price } /// Privileged origin that represents Root or Fellows pluralistic body. @@ -337,10 +338,16 @@ pub type RootOrFellows = EitherOfDiverse< pub type PriceForSiblingParachainDelivery = polkadot_runtime_common::xcm_sender::ExponentialPrice< FeeAssetId, - BaseDeliveryFee, + ToSiblingBaseDeliveryFee, TransactionByteFee, XcmpQueue, >; +pub type PriceForParentDelivery = polkadot_runtime_common::xcm_sender::ExponentialPrice< + FeeAssetId, + ToParentBaseDeliveryFee, + TransactionByteFee, + ParachainSystem, +>; impl cumulus_pallet_xcmp_queue::Config for Runtime { type RuntimeEvent = RuntimeEvent; @@ -718,9 +725,21 @@ impl_runtime_apis! { use xcm::latest::prelude::*; use xcm_config::KsmRelayLocation; + parameter_types! { + pub ExistentialDepositMultiAsset: Option = Some(( + KsmRelayLocation::get(), + ExistentialDeposit::get() + ).into()); + } + impl pallet_xcm_benchmarks::Config for Runtime { type XcmConfig = xcm_config::XcmConfig; type AccountIdConverter = xcm_config::LocationToAccountId; + type DeliveryHelper = cumulus_primitives_utility::ToParentDeliveryHelper< + xcm_config::XcmConfig, + ExistentialDepositMultiAsset, + PriceForParentDelivery, + >; fn valid_destination() -> Result { Ok(KsmRelayLocation::get()) } @@ -761,6 +780,7 @@ impl_runtime_apis! { } impl pallet_xcm_benchmarks::generic::Config for Runtime { + type TransactAsset = Balances; type RuntimeCall = RuntimeCall; fn worst_case_response() -> (u64, Response) { diff --git a/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs b/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs index 696462be9c..e54625e8d5 100644 --- a/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs +++ b/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs @@ -16,7 +16,8 @@ use super::{ AccountId, AllPalletsWithSystem, Balances, ParachainInfo, ParachainSystem, PolkadotXcm, - Runtime, RuntimeCall, RuntimeEvent, RuntimeOrigin, WeightToFee, XcmpQueue, + PriceForParentDelivery, Runtime, RuntimeCall, RuntimeEvent, RuntimeOrigin, WeightToFee, + XcmpQueue, }; use frame_support::{ match_types, parameter_types, @@ -221,7 +222,7 @@ pub type LocalOriginToLocation = SignedToAccountId32, + cumulus_primitives_utility::ParentAsUmp, // ..and XCMP to communicate with the sibling chains. XcmpQueue, )>; diff --git a/system-parachains/bridge-hubs/bridge-hub-polkadot/src/lib.rs b/system-parachains/bridge-hubs/bridge-hub-polkadot/src/lib.rs index f5d97ab45e..d9bf550307 100644 --- a/system-parachains/bridge-hubs/bridge-hub-polkadot/src/lib.rs +++ b/system-parachains/bridge-hubs/bridge-hub-polkadot/src/lib.rs @@ -301,7 +301,8 @@ parameter_types! { /// The asset ID for the asset that we use to pay for message delivery fees. pub FeeAssetId: AssetId = Concrete(xcm_config::DotRelayLocation::get()); /// The base fee for the message delivery fees. - pub const BaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price + pub const ToSiblingBaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price + pub const ToParentBaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price } /// Privileged origin that represents Root or Fellows. @@ -312,10 +313,16 @@ pub type RootOrFellows = EitherOfDiverse< pub type PriceForSiblingParachainDelivery = polkadot_runtime_common::xcm_sender::ExponentialPrice< FeeAssetId, - BaseDeliveryFee, + ToSiblingBaseDeliveryFee, TransactionByteFee, XcmpQueue, >; +pub type PriceForParentDelivery = polkadot_runtime_common::xcm_sender::ExponentialPrice< + FeeAssetId, + ToParentBaseDeliveryFee, + TransactionByteFee, + ParachainSystem, +>; impl cumulus_pallet_xcmp_queue::Config for Runtime { type RuntimeEvent = RuntimeEvent; @@ -693,9 +700,21 @@ impl_runtime_apis! { use xcm::latest::prelude::*; use xcm_config::DotRelayLocation; + parameter_types! { + pub ExistentialDepositMultiAsset: Option = Some(( + DotRelayLocation::get(), + ExistentialDeposit::get() + ).into()); + } + impl pallet_xcm_benchmarks::Config for Runtime { type XcmConfig = xcm_config::XcmConfig; type AccountIdConverter = xcm_config::LocationToAccountId; + type DeliveryHelper = cumulus_primitives_utility::ToParentDeliveryHelper< + xcm_config::XcmConfig, + ExistentialDepositMultiAsset, + PriceForParentDelivery, + >; fn valid_destination() -> Result { Ok(DotRelayLocation::get()) } @@ -736,6 +755,7 @@ impl_runtime_apis! { } impl pallet_xcm_benchmarks::generic::Config for Runtime { + type TransactAsset = Balances; type RuntimeCall = RuntimeCall; fn worst_case_response() -> (u64, Response) { diff --git a/system-parachains/bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs b/system-parachains/bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs index 0965600c24..f67deab209 100644 --- a/system-parachains/bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs +++ b/system-parachains/bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs @@ -16,7 +16,8 @@ use super::{ AccountId, AllPalletsWithSystem, Balances, ParachainInfo, ParachainSystem, PolkadotXcm, - Runtime, RuntimeCall, RuntimeEvent, RuntimeOrigin, WeightToFee, XcmpQueue, + PriceForParentDelivery, Runtime, RuntimeCall, RuntimeEvent, RuntimeOrigin, WeightToFee, + XcmpQueue, }; use frame_support::{ match_types, parameter_types, @@ -225,7 +226,7 @@ pub type LocalOriginToLocation = SignedToAccountId32, + cumulus_primitives_utility::ParentAsUmp, // ..and XCMP to communicate with the sibling chains. XcmpQueue, )>; From bb5cfbcd4f82f88020cd793b0d07ba3011203e4e Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Wed, 8 Nov 2023 16:07:52 +0300 Subject: [PATCH 14/68] https://github.com/paritytech/polkadot-sdk/issues/1543 --- relay/kusama/src/lib.rs | 13 +++++++++++++ relay/polkadot/src/lib.rs | 13 +++++++++++++ 2 files changed, 26 insertions(+) diff --git a/relay/kusama/src/lib.rs b/relay/kusama/src/lib.rs index 39b88294ea..e493459d32 100644 --- a/relay/kusama/src/lib.rs +++ b/relay/kusama/src/lib.rs @@ -1963,6 +1963,7 @@ sp_api::impl_runtime_apis! { } } + #[api_version(7)] impl primitives::runtime_api::ParachainHost for Runtime { fn validators() -> Vec { parachains_runtime_api_impl::validators::() @@ -2093,6 +2094,18 @@ sp_api::impl_runtime_apis! { key_ownership_proof, ) } + + fn minimum_backing_votes() -> u32 { + parachains_runtime_api_impl::minimum_backing_votes::() + } + + fn para_backing_state(para_id: ParaId) -> Option { + parachains_runtime_api_impl::backing_state::(para_id) + } + + fn async_backing_params() -> primitives::AsyncBackingParams { + parachains_runtime_api_impl::async_backing_params::() + } } impl beefy_primitives::BeefyApi for Runtime { diff --git a/relay/polkadot/src/lib.rs b/relay/polkadot/src/lib.rs index c2fe989738..79ffd486d4 100644 --- a/relay/polkadot/src/lib.rs +++ b/relay/polkadot/src/lib.rs @@ -1815,6 +1815,7 @@ sp_api::impl_runtime_apis! { } } + #[api_version(7)] impl primitives::runtime_api::ParachainHost for Runtime { fn validators() -> Vec { parachains_runtime_api_impl::validators::() @@ -1945,6 +1946,18 @@ sp_api::impl_runtime_apis! { key_ownership_proof, ) } + + fn minimum_backing_votes() -> u32 { + parachains_runtime_api_impl::minimum_backing_votes::() + } + + fn para_backing_state(para_id: ParaId) -> Option { + parachains_runtime_api_impl::backing_state::(para_id) + } + + fn async_backing_params() -> primitives::AsyncBackingParams { + parachains_runtime_api_impl::async_backing_params::() + } } impl beefy_primitives::BeefyApi for Runtime { From a8166ffac2550c1695f60daa8dd5e31608bc38d0 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Thu, 9 Nov 2023 15:39:11 +0300 Subject: [PATCH 15/68] added migration for https://github.com/paritytech/polkadot-sdk/pull/1255 --- relay/kusama/src/lib.rs | 2 ++ relay/polkadot/src/lib.rs | 2 ++ 2 files changed, 4 insertions(+) diff --git a/relay/kusama/src/lib.rs b/relay/kusama/src/lib.rs index e493459d32..b8694e9285 100644 --- a/relay/kusama/src/lib.rs +++ b/relay/kusama/src/lib.rs @@ -1818,6 +1818,8 @@ pub mod migrations { parachains_configuration::migration::v9::MigrateToV9, // Migrate parachain info format paras_registrar::migration::VersionCheckedMigrateToV1, + + pallet_nomination_pools::migration::versioned_migrations::V5toV6, ); } diff --git a/relay/polkadot/src/lib.rs b/relay/polkadot/src/lib.rs index 79ffd486d4..6b3c50ed4b 100644 --- a/relay/polkadot/src/lib.rs +++ b/relay/polkadot/src/lib.rs @@ -1651,6 +1651,8 @@ pub mod migrations { parachains_configuration::migration::v9::MigrateToV9, // Migrate parachain info format paras_registrar::migration::VersionCheckedMigrateToV1, + + pallet_nomination_pools::migration::versioned_migrations::V5toV6, ); } From c30a2e4f907ccff9f95627bbe26f91e7ff8a3ebd Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Thu, 9 Nov 2023 15:44:58 +0300 Subject: [PATCH 16/68] added migration for https://github.com/paritytech/polkadot-sdk/pull/1322 --- relay/kusama/src/lib.rs | 1 + relay/polkadot/src/lib.rs | 1 + 2 files changed, 2 insertions(+) diff --git a/relay/kusama/src/lib.rs b/relay/kusama/src/lib.rs index b8694e9285..c6ce02efe4 100644 --- a/relay/kusama/src/lib.rs +++ b/relay/kusama/src/lib.rs @@ -1820,6 +1820,7 @@ pub mod migrations { paras_registrar::migration::VersionCheckedMigrateToV1, pallet_nomination_pools::migration::versioned_migrations::V5toV6, + pallet_nomination_pools::migration::versioned_migrations::V6ToV7, ); } diff --git a/relay/polkadot/src/lib.rs b/relay/polkadot/src/lib.rs index 6b3c50ed4b..92d753313f 100644 --- a/relay/polkadot/src/lib.rs +++ b/relay/polkadot/src/lib.rs @@ -1653,6 +1653,7 @@ pub mod migrations { paras_registrar::migration::VersionCheckedMigrateToV1, pallet_nomination_pools::migration::versioned_migrations::V5toV6, + pallet_nomination_pools::migration::versioned_migrations::V6ToV7, ); } From e681609ebbc4ebdc6692d6bbd47b9bbb53136bcc Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Thu, 9 Nov 2023 16:35:01 +0300 Subject: [PATCH 17/68] adapt https://github.com/paritytech/polkadot-sdk/pull/1726 --- .../asset-hub-kusama/src/weights/xcm/mod.rs | 15 ++------------ .../asset-hub-polkadot/src/weights/xcm/mod.rs | 15 ++------------ .../bridge-hub-kusama/src/weights/xcm/mod.rs | 15 ++------------ .../src/weights/xcm/mod.rs | 20 +++---------------- 4 files changed, 9 insertions(+), 56 deletions(-) diff --git a/system-parachains/asset-hubs/asset-hub-kusama/src/weights/xcm/mod.rs b/system-parachains/asset-hubs/asset-hub-kusama/src/weights/xcm/mod.rs index 9aff4902d1..c163259c61 100644 --- a/system-parachains/asset-hubs/asset-hub-kusama/src/weights/xcm/mod.rs +++ b/system-parachains/asset-hubs/asset-hub-kusama/src/weights/xcm/mod.rs @@ -61,16 +61,8 @@ impl XcmWeightInfo for AssetHubKusamaXcmWeight { fn withdraw_asset(assets: &MultiAssets) -> Weight { assets.weigh_multi_assets(XcmFungibleWeight::::withdraw_asset()) } - // Currently there is no trusted reserve (`IsReserve = ()`), - // but we need this hack for `pallet_xcm::reserve_transfer_assets` - // (TODO) fix https://github.com/paritytech/polkadot/pull/7424 - // (TODO) fix https://github.com/paritytech/polkadot/pull/7546 fn reserve_asset_deposited(_assets: &MultiAssets) -> Weight { - // TODO: if we change `IsReserve = ...` then use this line... - // TODO: or if remote weight estimation is fixed, then remove - // TODO: hardcoded - fix https://github.com/paritytech/cumulus/issues/1974 - let hardcoded_weight = Weight::from_parts(1_000_000_000_u64, 0); - hardcoded_weight.min(XcmFungibleWeight::::reserve_asset_deposited()) + assets.weigh_multi_assets(XcmFungibleWeight::::reserve_asset_deposited()) } fn receive_teleported_asset(assets: &MultiAssets) -> Weight { assets.weigh_multi_assets(XcmFungibleWeight::::receive_teleported_asset()) @@ -127,10 +119,7 @@ impl XcmWeightInfo for AssetHubKusamaXcmWeight { } fn deposit_asset(assets: &MultiAssetFilter, _dest: &MultiLocation) -> Weight { - // Hardcoded till the XCM pallet is fixed - let hardcoded_weight = Weight::from_parts(1_000_000_000_u64, 0); - let weight = assets.weigh_multi_assets(XcmFungibleWeight::::deposit_asset()); - hardcoded_weight.min(weight) + assets.weigh_multi_assets(XcmFungibleWeight::::deposit_asset()) } fn deposit_reserve_asset( assets: &MultiAssetFilter, diff --git a/system-parachains/asset-hubs/asset-hub-polkadot/src/weights/xcm/mod.rs b/system-parachains/asset-hubs/asset-hub-polkadot/src/weights/xcm/mod.rs index 55fed809e2..ff710254ac 100644 --- a/system-parachains/asset-hubs/asset-hub-polkadot/src/weights/xcm/mod.rs +++ b/system-parachains/asset-hubs/asset-hub-polkadot/src/weights/xcm/mod.rs @@ -61,16 +61,8 @@ impl XcmWeightInfo for AssetHubPolkadotXcmWeight { fn withdraw_asset(assets: &MultiAssets) -> Weight { assets.weigh_multi_assets(XcmFungibleWeight::::withdraw_asset()) } - // Currently there is no trusted reserve (`IsReserve = ()`), - // but we need this hack for `pallet_xcm::reserve_transfer_assets` - // (TODO) fix https://github.com/paritytech/polkadot/pull/7424 - // (TODO) fix https://github.com/paritytech/polkadot/pull/7546 fn reserve_asset_deposited(_assets: &MultiAssets) -> Weight { - // TODO: if we change `IsReserve = ...` then use this line... - // TODO: or if remote weight estimation is fixed, then remove - // TODO: hardcoded - fix https://github.com/paritytech/cumulus/issues/1974 - let hardcoded_weight = Weight::from_parts(1_000_000_000_u64, 0); - hardcoded_weight.min(XcmFungibleWeight::::reserve_asset_deposited()) + assets.weigh_multi_assets(XcmFungibleWeight::::reserve_asset_deposited()) } fn receive_teleported_asset(assets: &MultiAssets) -> Weight { assets.weigh_multi_assets(XcmFungibleWeight::::receive_teleported_asset()) @@ -127,10 +119,7 @@ impl XcmWeightInfo for AssetHubPolkadotXcmWeight { } fn deposit_asset(assets: &MultiAssetFilter, _dest: &MultiLocation) -> Weight { - // Hardcoded till the XCM pallet is fixed - let hardcoded_weight = Weight::from_parts(1_000_000_000_u64, 0); - let weight = assets.weigh_multi_assets(XcmFungibleWeight::::deposit_asset()); - hardcoded_weight.min(weight) + assets.weigh_multi_assets(XcmFungibleWeight::::deposit_asset()) } fn deposit_reserve_asset( assets: &MultiAssetFilter, diff --git a/system-parachains/bridge-hubs/bridge-hub-kusama/src/weights/xcm/mod.rs b/system-parachains/bridge-hubs/bridge-hub-kusama/src/weights/xcm/mod.rs index 0e740922f3..42cd6eddab 100644 --- a/system-parachains/bridge-hubs/bridge-hub-kusama/src/weights/xcm/mod.rs +++ b/system-parachains/bridge-hubs/bridge-hub-kusama/src/weights/xcm/mod.rs @@ -61,16 +61,8 @@ impl XcmWeightInfo for BridgeHubKusamaXcmWeight { fn withdraw_asset(assets: &MultiAssets) -> Weight { assets.weigh_multi_assets(XcmFungibleWeight::::withdraw_asset()) } - // Currently there is no trusted reserve (`IsReserve = ()`), - // but we need this hack for `pallet_xcm::reserve_transfer_assets` - // (TODO) fix https://github.com/paritytech/polkadot/pull/7424 - // (TODO) fix https://github.com/paritytech/polkadot/pull/7546 fn reserve_asset_deposited(_assets: &MultiAssets) -> Weight { - // TODO: if we change `IsReserve = ...` then use this line... - // TODO: or if remote weight estimation is fixed, then remove - // TODO: hardcoded - fix https://github.com/paritytech/cumulus/issues/1974 - let hardcoded_weight = Weight::from_parts(1_000_000_000_u64, 0); - hardcoded_weight.min(XcmFungibleWeight::::reserve_asset_deposited()) + assets.weigh_multi_assets(XcmFungibleWeight::::reserve_asset_deposited()) } fn receive_teleported_asset(assets: &MultiAssets) -> Weight { assets.weigh_multi_assets(XcmFungibleWeight::::receive_teleported_asset()) @@ -127,10 +119,7 @@ impl XcmWeightInfo for BridgeHubKusamaXcmWeight { } fn deposit_asset(assets: &MultiAssetFilter, _dest: &MultiLocation) -> Weight { - // Hardcoded till the XCM pallet is fixed - let hardcoded_weight = Weight::from_parts(1_000_000_000_u64, 0); - let weight = assets.weigh_multi_assets(XcmFungibleWeight::::deposit_asset()); - hardcoded_weight.min(weight) + assets.weigh_multi_assets(XcmFungibleWeight::::deposit_asset()) } fn deposit_reserve_asset( assets: &MultiAssetFilter, diff --git a/system-parachains/bridge-hubs/bridge-hub-polkadot/src/weights/xcm/mod.rs b/system-parachains/bridge-hubs/bridge-hub-polkadot/src/weights/xcm/mod.rs index 4f8c2dec7a..0694a7101c 100644 --- a/system-parachains/bridge-hubs/bridge-hub-polkadot/src/weights/xcm/mod.rs +++ b/system-parachains/bridge-hubs/bridge-hub-polkadot/src/weights/xcm/mod.rs @@ -61,16 +61,8 @@ impl XcmWeightInfo for BridgeHubPolkadotXcmWeight { fn withdraw_asset(assets: &MultiAssets) -> Weight { assets.weigh_multi_assets(XcmFungibleWeight::::withdraw_asset()) } - // Currently there is no trusted reserve (`IsReserve = ()`), - // but we need this hack for `pallet_xcm::reserve_transfer_assets` - // (TODO) fix https://github.com/paritytech/polkadot/pull/7424 - // (TODO) fix https://github.com/paritytech/polkadot/pull/7546 fn reserve_asset_deposited(_assets: &MultiAssets) -> Weight { - // TODO: if we change `IsReserve = ...` then use this line... - // TODO: or if remote weight estimation is fixed, then remove - // TODO: hardcoded - fix https://github.com/paritytech/cumulus/issues/1974 - let hardcoded_weight = Weight::from_parts(1_000_000_000_u64, 0); - hardcoded_weight.min(XcmFungibleWeight::::reserve_asset_deposited()) + assets.weigh_multi_assets(XcmFungibleWeight::::reserve_asset_deposited()) } fn receive_teleported_asset(assets: &MultiAssets) -> Weight { assets.weigh_multi_assets(XcmFungibleWeight::::receive_teleported_asset()) @@ -127,10 +119,7 @@ impl XcmWeightInfo for BridgeHubPolkadotXcmWeight { } fn deposit_asset(assets: &MultiAssetFilter, _dest: &MultiLocation) -> Weight { - // Hardcoded till the XCM pallet is fixed - let hardcoded_weight = Weight::from_parts(1_000_000_000_u64, 0); - let weight = assets.weigh_multi_assets(XcmFungibleWeight::::deposit_asset()); - hardcoded_weight.min(weight) + assets.weigh_multi_assets(XcmFungibleWeight::::deposit_asset()) } fn deposit_reserve_asset( assets: &MultiAssetFilter, @@ -154,10 +143,7 @@ impl XcmWeightInfo for BridgeHubPolkadotXcmWeight { _dest: &MultiLocation, _xcm: &Xcm<()>, ) -> Weight { - // Hardcoded till the XCM pallet is fixed - let hardcoded_weight = Weight::from_parts(200_000_000_u64, 0); - let weight = assets.weigh_multi_assets(XcmFungibleWeight::::initiate_teleport()); - hardcoded_weight.min(weight) + assets.weigh_multi_assets(XcmFungibleWeight::::initiate_teleport()) } fn report_holding(_response_info: &QueryResponseInfo, _assets: &MultiAssetFilter) -> Weight { XcmGeneric::::report_holding() From 3f6c2c7900dcc04d075ca1752fe042ed5a4923ad Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Thu, 9 Nov 2023 17:45:05 +0300 Subject: [PATCH 18/68] more of https://github.com/paritytech/polkadot-sdk/issues/1234 --- Cargo.lock | 2 ++ relay/kusama/constants/Cargo.toml | 3 +++ relay/kusama/constants/src/lib.rs | 21 +++++++++++++++ relay/kusama/src/xcm_config.rs | 12 +++++---- relay/polkadot/constants/Cargo.toml | 3 +++ relay/polkadot/constants/src/lib.rs | 17 ++++++++++-- relay/polkadot/src/xcm_config.rs | 14 ++++++---- .../asset-hub-kusama/src/weights/xcm/mod.rs | 2 +- .../asset-hub-kusama/src/xcm_config.rs | 26 ++++++++++++++++--- .../asset-hub-polkadot/src/weights/xcm/mod.rs | 2 +- .../asset-hub-polkadot/src/xcm_config.rs | 26 ++++++++++++++++--- .../bridge-hub-kusama/src/xcm_config.rs | 25 +++++++++++++++--- .../bridge-hub-polkadot/src/xcm_config.rs | 25 +++++++++++++++--- 13 files changed, 150 insertions(+), 28 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 42a5e74a68..85661ae3a8 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4741,6 +4741,7 @@ dependencies = [ "sp-core", "sp-runtime", "sp-weights", + "staging-xcm", ] [[package]] @@ -8244,6 +8245,7 @@ dependencies = [ "sp-core", "sp-runtime", "sp-weights", + "staging-xcm", ] [[package]] diff --git a/relay/kusama/constants/Cargo.toml b/relay/kusama/constants/Cargo.toml index f1061bba33..a53bda10d7 100644 --- a/relay/kusama/constants/Cargo.toml +++ b/relay/kusama/constants/Cargo.toml @@ -16,6 +16,8 @@ sp-runtime = { default-features = false , version = "28.0.0" } sp-weights = { default-features = false , version = "24.0.0" } sp-core = { default-features = false , version = "25.0.0" } +xcm = { package = "staging-xcm", default-features = false , version = "4.0.0" } + [features] default = [ "std" ] std = [ @@ -25,4 +27,5 @@ std = [ "sp-core/std", "sp-runtime/std", "sp-weights/std", + "xcm/std" ] diff --git a/relay/kusama/constants/src/lib.rs b/relay/kusama/constants/src/lib.rs index 78f96b3510..08878f235e 100644 --- a/relay/kusama/constants/src/lib.rs +++ b/relay/kusama/constants/src/lib.rs @@ -97,6 +97,27 @@ pub mod fee { } } +/// System Parachains. +pub mod system_parachain { + use xcm::latest::prelude::*; + + /// Asset Hub parachain ID. + pub const ASSET_HUB_ID: u32 = 1000; + /// Encointer parachain ID. + pub const ENCOINTER_ID: u32 = 1001; + /// Bridge Hub parachain ID. + pub const BRIDGE_HUB_ID: u32 = 1002; + + frame_support::match_types! { + pub type SystemParachains: impl Contains = { + MultiLocation { parents: 0, interior: X1(Parachain(ASSET_HUB_ID | ENCOINTER_ID | BRIDGE_HUB_ID)) } + }; + } +} + +/// Kusama Treasury pallet instance. +pub const TREASURY_PALLET_ID: u8 = 18; + #[cfg(test)] mod tests { use super::{ diff --git a/relay/kusama/src/xcm_config.rs b/relay/kusama/src/xcm_config.rs index c90e6c55a9..5341011cba 100644 --- a/relay/kusama/src/xcm_config.rs +++ b/relay/kusama/src/xcm_config.rs @@ -18,8 +18,8 @@ use super::{ parachains_origin, AccountId, AllPalletsWithSystem, Balances, Dmp, Fellows, ParaId, Runtime, - RuntimeCall, RuntimeEvent, RuntimeOrigin, StakingAdmin, TransactionByteFee, WeightToFee, - XcmPallet, + RuntimeCall, RuntimeEvent, RuntimeOrigin, StakingAdmin, TransactionByteFee, Treasury, + WeightToFee, XcmPallet, }; use frame_support::{ match_types, parameter_types, @@ -27,7 +27,7 @@ use frame_support::{ weights::Weight, }; use frame_system::EnsureRoot; -use kusama_runtime_constants::currency::CENTS; +use kusama_runtime_constants::{currency::CENTS, system_parachain::SystemParachains}; use runtime_common::{ crowdloan, paras_registrar, xcm_sender::{ChildParachainRouter, ExponentialPrice}, @@ -42,7 +42,7 @@ use xcm_builder::{ CurrencyAdapter as XcmCurrencyAdapter, IsChildSystemParachain, IsConcrete, MintLocation, OriginToPluralityVoice, SignedAccountId32AsNative, SignedToAccountId32, SovereignSignedViaLocation, TakeWeightCredit, TrailingSetTopicAsId, UsingComponents, - WeightInfoBounds, WithComputedOrigin, WithUniqueTopic, + WeightInfoBounds, WithComputedOrigin, WithUniqueTopic, XcmFeesToAccount, }; use xcm_executor::traits::WithOriginFilter; @@ -61,6 +61,8 @@ parameter_types! { pub CheckAccount: AccountId = XcmPallet::check_account(); /// The check account that is allowed to mint assets locally. pub LocalCheckAccount: (AccountId, MintLocation) = (CheckAccount::get(), MintLocation::Local); + /// Account of the treasury pallet. + pub TreasuryAccount: Option = Some(Treasury::account_id()); } /// The canonical means of converting a `MultiLocation` into an `AccountId`, used when we want to @@ -339,7 +341,7 @@ impl xcm_executor::Config for XcmConfig { type SubscriptionService = XcmPallet; type PalletInstancesInfo = AllPalletsWithSystem; type MaxAssetsIntoHolding = MaxAssetsIntoHolding; - type FeeManager = (); + type FeeManager = XcmFeesToAccount; // No bridges yet... type MessageExporter = (); type UniversalAliases = Nothing; diff --git a/relay/polkadot/constants/Cargo.toml b/relay/polkadot/constants/Cargo.toml index 39d7addbcc..3d52f018a6 100644 --- a/relay/polkadot/constants/Cargo.toml +++ b/relay/polkadot/constants/Cargo.toml @@ -16,6 +16,8 @@ sp-runtime = { default-features = false , version = "28.0.0" } sp-weights = { default-features = false , version = "24.0.0" } sp-core = { default-features = false , version = "25.0.0" } +xcm = { package = "staging-xcm", default-features = false , version = "4.0.0" } + [features] default = [ "std" ] std = [ @@ -25,4 +27,5 @@ std = [ "sp-core/std", "sp-runtime/std", "sp-weights/std", + "xcm/std" ] diff --git a/relay/polkadot/constants/src/lib.rs b/relay/polkadot/constants/src/lib.rs index 304d86d1dd..ba33f3a2ce 100644 --- a/relay/polkadot/constants/src/lib.rs +++ b/relay/polkadot/constants/src/lib.rs @@ -113,12 +113,25 @@ pub mod xcm { /// System Parachains. pub mod system_parachain { - /// Statemint parachain ID. - pub const STATEMINT_ID: u32 = 1000; + use xcm::latest::prelude::*; + + /// Asset Hub parachain ID. + pub const ASSET_HUB_ID: u32 = 1000; /// Collectives parachain ID. pub const COLLECTIVES_ID: u32 = 1001; + /// Bridge Hub parachain ID. + pub const BRIDGE_HUB_ID: u32 = 1002; + + frame_support::match_types! { + pub type SystemParachains: impl Contains = { + MultiLocation { parents: 0, interior: X1(Parachain(ASSET_HUB_ID | COLLECTIVES_ID | BRIDGE_HUB_ID)) } + }; + } } +/// Polkadot Treasury pallet instance. +pub const TREASURY_PALLET_ID: u8 = 19; + #[cfg(test)] mod tests { use super::{ diff --git a/relay/polkadot/src/xcm_config.rs b/relay/polkadot/src/xcm_config.rs index 6c45f1cec4..89ffe8f312 100644 --- a/relay/polkadot/src/xcm_config.rs +++ b/relay/polkadot/src/xcm_config.rs @@ -19,7 +19,7 @@ use super::{ parachains_origin, AccountId, AllPalletsWithSystem, Balances, Dmp, FellowshipAdmin, GeneralAdmin, ParaId, Runtime, RuntimeCall, RuntimeEvent, RuntimeOrigin, StakingAdmin, - TransactionByteFee, WeightToFee, XcmPallet, + TransactionByteFee, Treasury, WeightToFee, XcmPallet, }; use frame_support::{ match_types, parameter_types, @@ -29,7 +29,9 @@ use frame_support::{ use frame_system::EnsureRoot; use pallet_xcm::XcmPassthrough; use polkadot_runtime_constants::{ - currency::CENTS, system_parachain::*, xcm::body::FELLOWSHIP_ADMIN_INDEX, + currency::CENTS, + system_parachain::{SystemParachains, *}, + xcm::body::FELLOWSHIP_ADMIN_INDEX, }; use runtime_common::{ crowdloan, paras_registrar, @@ -44,7 +46,7 @@ use xcm_builder::{ ChildParachainConvertsVia, CurrencyAdapter as XcmCurrencyAdapter, IsConcrete, MintLocation, OriginToPluralityVoice, SignedAccountId32AsNative, SignedToAccountId32, SovereignSignedViaLocation, TakeWeightCredit, TrailingSetTopicAsId, UsingComponents, - WeightInfoBounds, WithComputedOrigin, WithUniqueTopic, + WeightInfoBounds, WithComputedOrigin, WithUniqueTopic, XcmFeesToAccount, }; use xcm_executor::traits::WithOriginFilter; @@ -61,6 +63,8 @@ parameter_types! { pub CheckAccount: AccountId = XcmPallet::check_account(); /// The Checking Account along with the indication that the local chain is able to mint tokens. pub LocalCheckAccount: (AccountId, MintLocation) = (CheckAccount::get(), MintLocation::Local); + /// Account of the treasury pallet. + pub TreasuryAccount: Option = Some(Treasury::account_id()); } /// The canonical means of converting a `MultiLocation` into an `AccountId`, used when we want to @@ -131,7 +135,7 @@ pub type XcmRouter = WithUniqueTopic<( parameter_types! { pub const Dot: MultiAssetFilter = Wild(AllOf { fun: WildFungible, id: Concrete(TokenLocation::get()) }); - pub const StatemintLocation: MultiLocation = Parachain(STATEMINT_ID).into_location(); + pub const StatemintLocation: MultiLocation = Parachain(ASSET_HUB_ID).into_location(); pub const DotForStatemint: (MultiAssetFilter, MultiLocation) = (Dot::get(), StatemintLocation::get()); pub const CollectivesLocation: MultiLocation = Parachain(COLLECTIVES_ID).into_location(); pub const DotForCollectives: (MultiAssetFilter, MultiLocation) = (Dot::get(), CollectivesLocation::get()); @@ -340,7 +344,7 @@ impl xcm_executor::Config for XcmConfig { type SubscriptionService = XcmPallet; type PalletInstancesInfo = AllPalletsWithSystem; type MaxAssetsIntoHolding = MaxAssetsIntoHolding; - type FeeManager = (); + type FeeManager = XcmFeesToAccount; // No bridges yet... type MessageExporter = (); type UniversalAliases = Nothing; diff --git a/system-parachains/asset-hubs/asset-hub-kusama/src/weights/xcm/mod.rs b/system-parachains/asset-hubs/asset-hub-kusama/src/weights/xcm/mod.rs index c163259c61..ce6e920651 100644 --- a/system-parachains/asset-hubs/asset-hub-kusama/src/weights/xcm/mod.rs +++ b/system-parachains/asset-hubs/asset-hub-kusama/src/weights/xcm/mod.rs @@ -61,7 +61,7 @@ impl XcmWeightInfo for AssetHubKusamaXcmWeight { fn withdraw_asset(assets: &MultiAssets) -> Weight { assets.weigh_multi_assets(XcmFungibleWeight::::withdraw_asset()) } - fn reserve_asset_deposited(_assets: &MultiAssets) -> Weight { + fn reserve_asset_deposited(assets: &MultiAssets) -> Weight { assets.weigh_multi_assets(XcmFungibleWeight::::reserve_asset_deposited()) } fn receive_teleported_asset(assets: &MultiAssets) -> Weight { diff --git a/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs b/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs index 983dc0470c..675fb35bf4 100644 --- a/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs +++ b/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs @@ -25,13 +25,17 @@ use assets_common::{ }; use frame_support::{ match_types, parameter_types, - traits::{ConstU32, Contains, Everything, Nothing, PalletInfoAccess}, + traits::{ConstU32, Contains, Equals, Everything, Nothing, PalletInfoAccess}, }; use frame_system::EnsureRoot; use pallet_xcm::XcmPassthrough; -use parachains_common::{impls::ToStakingPot, xcm_config::AssetFeeAsExistentialDepositMultiplier}; +use parachains_common::{ + impls::ToStakingPot, + xcm_config::{AssetFeeAsExistentialDepositMultiplier, RelayOrOtherSystemParachains}, + TREASURY_PALLET_ID, +}; use polkadot_parachain_primitives::primitives::Sibling; -use sp_runtime::traits::ConvertInto; +use sp_runtime::traits::{AccountIdConversion, ConvertInto}; use xcm::latest::prelude::*; use xcm_builder::{ AccountId32Aliases, AllowExplicitUnpaidExecutionFrom, AllowKnownQueryResponses, @@ -42,6 +46,7 @@ use xcm_builder::{ SiblingParachainConvertsVia, SignedAccountId32AsNative, SignedToAccountId32, SovereignSignedViaLocation, StartsWith, StartsWithExplicitGlobalConsensus, TakeWeightCredit, TrailingSetTopicAsId, UsingComponents, WeightInfoBounds, WithComputedOrigin, WithUniqueTopic, + XcmFeesToAccount, }; use xcm_executor::{traits::WithOriginFilter, XcmExecutor}; @@ -64,6 +69,8 @@ parameter_types! { pub CheckingAccount: AccountId = PolkadotXcm::check_account(); pub const GovernanceLocation: MultiLocation = MultiLocation::parent(); pub const FellowshipLocation: MultiLocation = MultiLocation::parent(); + pub RelayTreasuryLocation: MultiLocation = (Parent, PalletInstance(kusama_runtime_constants::TREASURY_PALLET_ID)).into(); + pub TreasuryAccount: Option = Some(TREASURY_PALLET_ID.into_account_truncating()); } /// Type for specifying how a `MultiLocation` can be converted into an `AccountId`. This is used @@ -468,6 +475,17 @@ pub type AssetFeeAsExistentialDepositMultiplierFeeCharger = AssetFeeAsExistentia TrustBackedAssetsInstance, >; +/// Locations that will not be charged fees in the executor, +/// either execution or delivery. +/// We only waive fees for system functions, which these locations represent. +pub type WaivedLocations = ( + RelayOrOtherSystemParachains< + kusama_runtime_constants::system_parachain::SystemParachains, + Runtime, + >, + Equals, +); + pub struct XcmConfig; impl xcm_executor::Config for XcmConfig { type RuntimeCall = RuntimeCall; @@ -514,7 +532,7 @@ impl xcm_executor::Config for XcmConfig { type MaxAssetsIntoHolding = MaxAssetsIntoHolding; type AssetLocker = (); type AssetExchanger = (); - type FeeManager = (); + type FeeManager = XcmFeesToAccount; type MessageExporter = (); type UniversalAliases = Nothing; type CallDispatcher = WithOriginFilter; diff --git a/system-parachains/asset-hubs/asset-hub-polkadot/src/weights/xcm/mod.rs b/system-parachains/asset-hubs/asset-hub-polkadot/src/weights/xcm/mod.rs index ff710254ac..eb140c4bf3 100644 --- a/system-parachains/asset-hubs/asset-hub-polkadot/src/weights/xcm/mod.rs +++ b/system-parachains/asset-hubs/asset-hub-polkadot/src/weights/xcm/mod.rs @@ -61,7 +61,7 @@ impl XcmWeightInfo for AssetHubPolkadotXcmWeight { fn withdraw_asset(assets: &MultiAssets) -> Weight { assets.weigh_multi_assets(XcmFungibleWeight::::withdraw_asset()) } - fn reserve_asset_deposited(_assets: &MultiAssets) -> Weight { + fn reserve_asset_deposited(assets: &MultiAssets) -> Weight { assets.weigh_multi_assets(XcmFungibleWeight::::reserve_asset_deposited()) } fn receive_teleported_asset(assets: &MultiAssets) -> Weight { diff --git a/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs b/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs index d9f0a5b853..a72690bd16 100644 --- a/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs +++ b/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs @@ -21,13 +21,17 @@ use super::{ use assets_common::matching::{FromSiblingParachain, IsForeignConcreteAsset}; use frame_support::{ match_types, parameter_types, - traits::{ConstU32, Contains, Everything, Nothing, PalletInfoAccess}, + traits::{ConstU32, Contains, Equals, Everything, Nothing, PalletInfoAccess}, }; use frame_system::EnsureRoot; use pallet_xcm::XcmPassthrough; -use parachains_common::{impls::ToStakingPot, xcm_config::AssetFeeAsExistentialDepositMultiplier}; +use parachains_common::{ + impls::ToStakingPot, + xcm_config::{AssetFeeAsExistentialDepositMultiplier, RelayOrOtherSystemParachains}, + TREASURY_PALLET_ID, +}; use polkadot_parachain_primitives::primitives::Sibling; -use sp_runtime::traits::ConvertInto; +use sp_runtime::traits::{AccountIdConversion, ConvertInto}; use xcm::latest::prelude::*; use xcm_builder::{ AccountId32Aliases, AllowExplicitUnpaidExecutionFrom, AllowKnownQueryResponses, @@ -38,6 +42,7 @@ use xcm_builder::{ SiblingParachainConvertsVia, SignedAccountId32AsNative, SignedToAccountId32, SovereignSignedViaLocation, StartsWith, StartsWithExplicitGlobalConsensus, TakeWeightCredit, TrailingSetTopicAsId, UsingComponents, WeightInfoBounds, WithComputedOrigin, WithUniqueTopic, + XcmFeesToAccount, }; use xcm_executor::{traits::WithOriginFilter, XcmExecutor}; @@ -53,6 +58,8 @@ parameter_types! { pub CheckingAccount: AccountId = PolkadotXcm::check_account(); pub FellowshipLocation: MultiLocation = MultiLocation::new(1, Parachain(1001)); pub const GovernanceLocation: MultiLocation = MultiLocation::parent(); + pub RelayTreasuryLocation: MultiLocation = (Parent, PalletInstance(polkadot_runtime_constants::TREASURY_PALLET_ID)).into(); + pub TreasuryAccount: Option = Some(TREASURY_PALLET_ID.into_account_truncating()); } /// Type for specifying how a `MultiLocation` can be converted into an `AccountId`. This is used @@ -388,6 +395,17 @@ pub type AssetFeeAsExistentialDepositMultiplierFeeCharger = AssetFeeAsExistentia TrustBackedAssetsInstance, >; +/// Locations that will not be charged fees in the executor, +/// either execution or delivery. +/// We only waive fees for system functions, which these locations represent. +pub type WaivedLocations = ( + RelayOrOtherSystemParachains< + polkadot_runtime_constants::system_parachain::SystemParachains, + Runtime, + >, + Equals, +); + pub struct XcmConfig; impl xcm_executor::Config for XcmConfig { type RuntimeCall = RuntimeCall; @@ -434,7 +452,7 @@ impl xcm_executor::Config for XcmConfig { type MaxAssetsIntoHolding = MaxAssetsIntoHolding; type AssetLocker = (); type AssetExchanger = (); - type FeeManager = (); + type FeeManager = XcmFeesToAccount; type MessageExporter = (); type UniversalAliases = Nothing; type CallDispatcher = WithOriginFilter; diff --git a/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs b/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs index e54625e8d5..8efbdbcf2e 100644 --- a/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs +++ b/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs @@ -21,12 +21,17 @@ use super::{ }; use frame_support::{ match_types, parameter_types, - traits::{ConstU32, Contains, Everything, Nothing}, + traits::{ConstU32, Contains, Equals, Everything, Nothing}, }; use frame_system::EnsureRoot; use pallet_xcm::XcmPassthrough; -use parachains_common::{impls::ToStakingPot, xcm_config::ConcreteNativeAssetFrom}; +use parachains_common::{ + impls::ToStakingPot, + xcm_config::{ConcreteNativeAssetFrom, RelayOrOtherSystemParachains}, + TREASURY_PALLET_ID, +}; use polkadot_parachain_primitives::primitives::Sibling; +use sp_runtime::traits::AccountIdConversion; use xcm::latest::prelude::*; use xcm_builder::{ AccountId32Aliases, AllowExplicitUnpaidExecutionFrom, AllowKnownQueryResponses, @@ -35,6 +40,7 @@ use xcm_builder::{ ParentIsPreset, RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia, SignedAccountId32AsNative, SignedToAccountId32, SovereignSignedViaLocation, TakeWeightCredit, TrailingSetTopicAsId, UsingComponents, WeightInfoBounds, WithComputedOrigin, WithUniqueTopic, + XcmFeesToAccount, }; use xcm_executor::{traits::WithOriginFilter, XcmExecutor}; @@ -48,6 +54,8 @@ parameter_types! { pub const MaxAssetsIntoHolding: u32 = 64; pub const GovernanceLocation: MultiLocation = MultiLocation::parent(); pub const FellowshipLocation: MultiLocation = MultiLocation::parent(); + pub RelayTreasuryLocation: MultiLocation = (Parent, PalletInstance(kusama_runtime_constants::TREASURY_PALLET_ID)).into(); + pub TreasuryAccount: Option = Some(TREASURY_PALLET_ID.into_account_truncating()); } /// Type for specifying how a `MultiLocation` can be converted into an `AccountId`. This is used @@ -178,6 +186,17 @@ pub type Barrier = TrailingSetTopicAsId< >, >; +/// Locations that will not be charged fees in the executor, +/// either execution or delivery. +/// We only waive fees for system functions, which these locations represent. +pub type WaivedLocations = ( + RelayOrOtherSystemParachains< + kusama_runtime_constants::system_parachain::SystemParachains, + Runtime, + >, + Equals, +); + pub struct XcmConfig; impl xcm_executor::Config for XcmConfig { type RuntimeCall = RuntimeCall; @@ -206,7 +225,7 @@ impl xcm_executor::Config for XcmConfig { type MaxAssetsIntoHolding = MaxAssetsIntoHolding; type AssetLocker = (); type AssetExchanger = (); - type FeeManager = (); + type FeeManager = XcmFeesToAccount; type MessageExporter = (); type UniversalAliases = Nothing; type CallDispatcher = WithOriginFilter; diff --git a/system-parachains/bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs b/system-parachains/bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs index f67deab209..f23b2d3dd2 100644 --- a/system-parachains/bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs +++ b/system-parachains/bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs @@ -21,12 +21,17 @@ use super::{ }; use frame_support::{ match_types, parameter_types, - traits::{ConstU32, Contains, Everything, Nothing}, + traits::{ConstU32, Contains, Equals, Everything, Nothing}, }; use frame_system::EnsureRoot; use pallet_xcm::XcmPassthrough; -use parachains_common::{impls::ToStakingPot, xcm_config::ConcreteNativeAssetFrom}; +use parachains_common::{ + impls::ToStakingPot, + xcm_config::{ConcreteNativeAssetFrom, RelayOrOtherSystemParachains}, + TREASURY_PALLET_ID, +}; use polkadot_parachain_primitives::primitives::Sibling; +use sp_runtime::traits::AccountIdConversion; use xcm::latest::prelude::*; use xcm_builder::{ AccountId32Aliases, AllowExplicitUnpaidExecutionFrom, AllowKnownQueryResponses, @@ -35,6 +40,7 @@ use xcm_builder::{ ParentIsPreset, RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia, SignedAccountId32AsNative, SignedToAccountId32, SovereignSignedViaLocation, TakeWeightCredit, TrailingSetTopicAsId, UsingComponents, WeightInfoBounds, WithComputedOrigin, WithUniqueTopic, + XcmFeesToAccount, }; use xcm_executor::{traits::WithOriginFilter, XcmExecutor}; @@ -48,6 +54,8 @@ parameter_types! { pub const MaxAssetsIntoHolding: u32 = 64; pub FellowshipLocation: MultiLocation = MultiLocation::new(1, Parachain(1001)); pub const GovernanceLocation: MultiLocation = MultiLocation::parent(); + pub RelayTreasuryLocation: MultiLocation = (Parent, PalletInstance(polkadot_runtime_constants::TREASURY_PALLET_ID)).into(); + pub TreasuryAccount: Option = Some(TREASURY_PALLET_ID.into_account_truncating()); } /// Type for specifying how a `MultiLocation` can be converted into an `AccountId`. This is used @@ -182,6 +190,17 @@ pub type Barrier = TrailingSetTopicAsId< >, >; +/// Locations that will not be charged fees in the executor, +/// either execution or delivery. +/// We only waive fees for system functions, which these locations represent. +pub type WaivedLocations = ( + RelayOrOtherSystemParachains< + polkadot_runtime_constants::system_parachain::SystemParachains, + Runtime, + >, + Equals, +); + pub struct XcmConfig; impl xcm_executor::Config for XcmConfig { type RuntimeCall = RuntimeCall; @@ -210,7 +229,7 @@ impl xcm_executor::Config for XcmConfig { type MaxAssetsIntoHolding = MaxAssetsIntoHolding; type AssetLocker = (); type AssetExchanger = (); - type FeeManager = (); + type FeeManager = XcmFeesToAccount; type MessageExporter = (); type UniversalAliases = Nothing; type CallDispatcher = WithOriginFilter; From 24395d790bcc5b9a7549de720bdd4c178a81d0ce Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Fri, 10 Nov 2023 09:57:31 +0300 Subject: [PATCH 19/68] adapt https://github.com/paritytech/polkadot-sdk/pull/1368 --- .../asset-hub-kusama/src/xcm_config.rs | 26 ++++++++++++------- .../asset-hub-polkadot/src/xcm_config.rs | 26 ++++++++++++------- .../bridge-hub-kusama/src/xcm_config.rs | 9 ++++--- .../bridge-hub-polkadot/src/xcm_config.rs | 9 ++++--- 4 files changed, 44 insertions(+), 26 deletions(-) diff --git a/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs b/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs index 675fb35bf4..3f119a5aef 100644 --- a/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs +++ b/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs @@ -31,7 +31,10 @@ use frame_system::EnsureRoot; use pallet_xcm::XcmPassthrough; use parachains_common::{ impls::ToStakingPot, - xcm_config::{AssetFeeAsExistentialDepositMultiplier, RelayOrOtherSystemParachains}, + xcm_config::{ + AssetFeeAsExistentialDepositMultiplier, ConcreteAssetFromSystem, + RelayOrOtherSystemParachains, + }, TREASURY_PALLET_ID, }; use polkadot_parachain_primitives::primitives::Sibling; @@ -41,8 +44,8 @@ use xcm_builder::{ AccountId32Aliases, AllowExplicitUnpaidExecutionFrom, AllowKnownQueryResponses, AllowSubscriptionsFrom, AllowTopLevelPaidExecutionFrom, CurrencyAdapter, DenyReserveTransferToRelayChain, DenyThenTry, DescribeAllTerminal, DescribeFamily, - EnsureXcmOrigin, FungiblesAdapter, HashedDescription, IsConcrete, LocalMint, NativeAsset, - NoChecking, ParentAsSuperuser, ParentIsPreset, RelayChainAsNative, SiblingParachainAsNative, + EnsureXcmOrigin, FungiblesAdapter, HashedDescription, IsConcrete, LocalMint, NoChecking, + ParentAsSuperuser, ParentIsPreset, RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia, SignedAccountId32AsNative, SignedToAccountId32, SovereignSignedViaLocation, StartsWith, StartsWithExplicitGlobalConsensus, TakeWeightCredit, TrailingSetTopicAsId, UsingComponents, WeightInfoBounds, WithComputedOrigin, WithUniqueTopic, @@ -486,6 +489,15 @@ pub type WaivedLocations = ( Equals, ); +/// Cases where a remote origin is accepted as trusted Teleporter for a given asset: +/// +/// - KSM with the parent Relay Chain and sibling system parachains; and +/// - Sibling parachains' assets from where they originate (as `ForeignCreators`). +pub type TrustedTeleporters = ( + ConcreteAssetFromSystem, + IsForeignConcreteAsset>>, +); + pub struct XcmConfig; impl xcm_executor::Config for XcmConfig { type RuntimeCall = RuntimeCall; @@ -496,13 +508,7 @@ impl xcm_executor::Config for XcmConfig { // Asset Hub acting _as_ a reserve location for KSM and assets created under `pallet-assets`. // For KSM, users must use teleport where allowed (e.g. with the Relay Chain). type IsReserve = (); - // We allow: - // - teleportation of KSM - // - teleportation of sibling parachain's assets (as ForeignCreators) - type IsTeleporter = ( - NativeAsset, - IsForeignConcreteAsset>>, - ); + type IsTeleporter = TrustedTeleporters; type UniversalLocation = UniversalLocation; type Barrier = Barrier; type Weigher = WeightInfoBounds< diff --git a/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs b/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs index a72690bd16..f84945907a 100644 --- a/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs +++ b/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs @@ -27,7 +27,10 @@ use frame_system::EnsureRoot; use pallet_xcm::XcmPassthrough; use parachains_common::{ impls::ToStakingPot, - xcm_config::{AssetFeeAsExistentialDepositMultiplier, RelayOrOtherSystemParachains}, + xcm_config::{ + AssetFeeAsExistentialDepositMultiplier, ConcreteAssetFromSystem, + RelayOrOtherSystemParachains, + }, TREASURY_PALLET_ID, }; use polkadot_parachain_primitives::primitives::Sibling; @@ -37,8 +40,8 @@ use xcm_builder::{ AccountId32Aliases, AllowExplicitUnpaidExecutionFrom, AllowKnownQueryResponses, AllowSubscriptionsFrom, AllowTopLevelPaidExecutionFrom, CurrencyAdapter, DenyReserveTransferToRelayChain, DenyThenTry, DescribeFamily, DescribePalletTerminal, - EnsureXcmOrigin, FungiblesAdapter, HashedDescription, IsConcrete, LocalMint, NativeAsset, - NoChecking, ParentAsSuperuser, ParentIsPreset, RelayChainAsNative, SiblingParachainAsNative, + EnsureXcmOrigin, FungiblesAdapter, HashedDescription, IsConcrete, LocalMint, NoChecking, + ParentAsSuperuser, ParentIsPreset, RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia, SignedAccountId32AsNative, SignedToAccountId32, SovereignSignedViaLocation, StartsWith, StartsWithExplicitGlobalConsensus, TakeWeightCredit, TrailingSetTopicAsId, UsingComponents, WeightInfoBounds, WithComputedOrigin, WithUniqueTopic, @@ -406,6 +409,15 @@ pub type WaivedLocations = ( Equals, ); +/// Cases where a remote origin is accepted as trusted Teleporter for a given asset: +/// +/// - DOT with the parent Relay Chain and sibling system parachains; and +/// - Sibling parachains' assets from where they originate (as `ForeignCreators`). +pub type TrustedTeleporters = ( + ConcreteAssetFromSystem, + IsForeignConcreteAsset>>, +); + pub struct XcmConfig; impl xcm_executor::Config for XcmConfig { type RuntimeCall = RuntimeCall; @@ -416,13 +428,7 @@ impl xcm_executor::Config for XcmConfig { // Asset Hub acting _as_ a reserve location for DOT and assets created under `pallet-assets`. // For DOT, users must use teleport where allowed (e.g. with the Relay Chain). type IsReserve = (); - // We allow: - // - teleportation of DOT - // - teleportation of sibling parachain's assets (as ForeignCreators) - type IsTeleporter = ( - NativeAsset, - IsForeignConcreteAsset>>, - ); + type IsTeleporter = TrustedTeleporters; type UniversalLocation = UniversalLocation; type Barrier = Barrier; type Weigher = WeightInfoBounds< diff --git a/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs b/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs index 8efbdbcf2e..7e4f269580 100644 --- a/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs +++ b/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs @@ -27,7 +27,7 @@ use frame_system::EnsureRoot; use pallet_xcm::XcmPassthrough; use parachains_common::{ impls::ToStakingPot, - xcm_config::{ConcreteNativeAssetFrom, RelayOrOtherSystemParachains}, + xcm_config::{ConcreteAssetFromSystem, RelayOrOtherSystemParachains}, TREASURY_PALLET_ID, }; use polkadot_parachain_primitives::primitives::Sibling; @@ -197,6 +197,10 @@ pub type WaivedLocations = ( Equals, ); +/// Cases where a remote origin is accepted as trusted Teleporter for a given asset: +/// - KSM with the parent Relay Chain and sibling parachains. +pub type TrustedTeleporters = ConcreteAssetFromSystem; + pub struct XcmConfig; impl xcm_executor::Config for XcmConfig { type RuntimeCall = RuntimeCall; @@ -206,8 +210,7 @@ impl xcm_executor::Config for XcmConfig { // BridgeHub does not recognize a reserve location for any asset. Users must teleport KSM // where allowed (e.g. with the Relay Chain). type IsReserve = (); - /// Only allow teleportation of KSM. - type IsTeleporter = ConcreteNativeAssetFrom; + type IsTeleporter = TrustedTeleporters; type UniversalLocation = UniversalLocation; type Barrier = Barrier; type Weigher = WeightInfoBounds< diff --git a/system-parachains/bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs b/system-parachains/bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs index f23b2d3dd2..3b7f5fc526 100644 --- a/system-parachains/bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs +++ b/system-parachains/bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs @@ -27,7 +27,7 @@ use frame_system::EnsureRoot; use pallet_xcm::XcmPassthrough; use parachains_common::{ impls::ToStakingPot, - xcm_config::{ConcreteNativeAssetFrom, RelayOrOtherSystemParachains}, + xcm_config::{ConcreteAssetFromSystem, RelayOrOtherSystemParachains}, TREASURY_PALLET_ID, }; use polkadot_parachain_primitives::primitives::Sibling; @@ -201,6 +201,10 @@ pub type WaivedLocations = ( Equals, ); +/// Cases where a remote origin is accepted as trusted Teleporter for a given asset: +/// - DOT with the parent Relay Chain and sibling parachains. +pub type TrustedTeleporters = ConcreteAssetFromSystem; + pub struct XcmConfig; impl xcm_executor::Config for XcmConfig { type RuntimeCall = RuntimeCall; @@ -210,8 +214,7 @@ impl xcm_executor::Config for XcmConfig { // BridgeHub does not recognize a reserve location for any asset. Users must teleport DOT // where allowed (e.g. with the Relay Chain). type IsReserve = (); - /// Only allow teleportation of DOT. - type IsTeleporter = ConcreteNativeAssetFrom; + type IsTeleporter = TrustedTeleporters; type UniversalLocation = UniversalLocation; type Barrier = Barrier; type Weigher = WeightInfoBounds< From 058baf86dd3795f133f4e85dcba98152c2a31823 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Fri, 10 Nov 2023 09:57:37 +0300 Subject: [PATCH 20/68] fix compilation --- .../bridge-hubs/bridge-hub-kusama/src/weights/xcm/mod.rs | 2 +- .../bridge-hubs/bridge-hub-polkadot/src/weights/xcm/mod.rs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/system-parachains/bridge-hubs/bridge-hub-kusama/src/weights/xcm/mod.rs b/system-parachains/bridge-hubs/bridge-hub-kusama/src/weights/xcm/mod.rs index 42cd6eddab..ded5dc6702 100644 --- a/system-parachains/bridge-hubs/bridge-hub-kusama/src/weights/xcm/mod.rs +++ b/system-parachains/bridge-hubs/bridge-hub-kusama/src/weights/xcm/mod.rs @@ -61,7 +61,7 @@ impl XcmWeightInfo for BridgeHubKusamaXcmWeight { fn withdraw_asset(assets: &MultiAssets) -> Weight { assets.weigh_multi_assets(XcmFungibleWeight::::withdraw_asset()) } - fn reserve_asset_deposited(_assets: &MultiAssets) -> Weight { + fn reserve_asset_deposited(assets: &MultiAssets) -> Weight { assets.weigh_multi_assets(XcmFungibleWeight::::reserve_asset_deposited()) } fn receive_teleported_asset(assets: &MultiAssets) -> Weight { diff --git a/system-parachains/bridge-hubs/bridge-hub-polkadot/src/weights/xcm/mod.rs b/system-parachains/bridge-hubs/bridge-hub-polkadot/src/weights/xcm/mod.rs index 0694a7101c..7e9f218427 100644 --- a/system-parachains/bridge-hubs/bridge-hub-polkadot/src/weights/xcm/mod.rs +++ b/system-parachains/bridge-hubs/bridge-hub-polkadot/src/weights/xcm/mod.rs @@ -61,7 +61,7 @@ impl XcmWeightInfo for BridgeHubPolkadotXcmWeight { fn withdraw_asset(assets: &MultiAssets) -> Weight { assets.weigh_multi_assets(XcmFungibleWeight::::withdraw_asset()) } - fn reserve_asset_deposited(_assets: &MultiAssets) -> Weight { + fn reserve_asset_deposited(assets: &MultiAssets) -> Weight { assets.weigh_multi_assets(XcmFungibleWeight::::reserve_asset_deposited()) } fn receive_teleported_asset(assets: &MultiAssets) -> Weight { From 5e5ee8d9f23b5ef3832782f431ae816d5054eb64 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Fri, 10 Nov 2023 10:15:49 +0300 Subject: [PATCH 21/68] changelog (personal notes) --- CHANGELOG.md | 126 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 126 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 52211be6e2..6091c648aa 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,132 @@ Changelog for the runtimes governed by the Polkadot Fellowship. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). +########################################### + +### Node & Polkadot + +TODO for bridging: port https://github.com/paritytech/polkadot-sdk/pull/2023/files + +- [x] (NODE) runtime-api: cleanup after v7 stabilization (#1729 @ordian) [Node] +- [x] (NODE) PVF: more filesystem sandboxing (#1373 @mrcnski) [Node] +- [x] (ROCOCO) rococo-runtime: RococoGenesisExt removed (#1490 michalkucharczyk) [Node] +- [x] (NODE) ix subkey inspect output text padding (#1744 @btwiuse) [Node] +- [x] (NODE) Use Extensions to register offchain worker custom extensions (#1719 @skunert) [Node] +- [x] (NODE) Remove kusama and polkadot runtime crates (#1731 @bkchr) [Node, Polkadot] +- [x] (NODE) PVF: Add back socket path parameter, use tmp socket path (#1780 @mrcnski) [Node] +- [x] (NODE) Delete full db directory with purge-chain subcommand (#1786 @skunert) [Node] +- [x] (NODE) Mixnet integration (#1346 @zdave-parity) [Node] +- [x] (NODE) Update testnet bootnode dns name (#1712 @BulatSaif) [Node] +- [x] (NODE) remote-ext: fix state download stall on slow connections and reduce memory usage (#1295 @liamaharon) [Node] +- [x] (NODE) PVF worker: bump landlock, update ABI docs (#1850 @mrcnski) [Node] +- [x] (NODE) sc-consensus-beefy: improve gossip logic (#1852 @acatangiu) [Node] +- [x] (NODE) Include polkadot version in artifact path (#1828 @eagr) [Node] +- [x] (NODE) Paired-key Crypto Scheme (#1705 @drskalman) [Node] +- [x] (POLKADOT) fix: GoAhead signal only set when runtime upgrade is enacted from parachain side (#1176 @Daanvdplas) [Polkadot] +- [x] (NODE) Arkworks Elliptic Curve utils overhaul (#1870 @davxy) [Node] +- [x] (ROCOCO) Adding migrations to clean Rococo Gov 1 storage & reserved funds (#1849 @al3mart) [Polkadot] +- [x] (NODE) Update the alerts to use a new metric substrate_unbounded_channel_size (#1568 @BulatSaif) [Node] +- [x] (NODE) sc-consensus-beefy: fix initialization when state is unavailable (#1888 @acatangiu ) [Node] +- [x] (NODE) Start BEEFY client by default for Polkadot nodes (#1913 @serban300) [Node] +- [x] (NODE) Do not force collators to update after enabling async backing (#1920 @bkchr) [Node] +- [x] (NODE) sc-executor: Increase maximum instance count (#1856 @bkchr) [Node] +- [x] (ROCOCO) Re-enable Identity on Westend and Rococo (#1901 @joepetrowski) [Polkadot] +- [x] (NODE) polkadot: eradicate LeafStatus (#1565 @ordian) [Node, Polakdot] +- [x] (NODE) polkadot: enable tikv-jemallocator/unprefixed_malloc_on_supported_platforms (#2002 @andresilva) [Polkadot] +- [x] (NODE) PVF: Add worker check during tests and benches (#1771 @mrcnski) [Node] +- [x] (NODE) Application Crypto and BEEFY Support for paired (ECDSA,BLS) crypto (#1815 @drskalman) [Node] +- [x] (NODE) basic-authorship: Improve time recording and logging (#2010 @bkchr) [Node] + + +### Frame & Pallets + +- [x] (NO MIGRATION REQUIRED) **Breaking Change** Ensure correct variant count in Runtime[Hold/Freeze]Reason (#1900 @kianenigma) [Frame] +- [x] (PALLET IS NOT USED) **Breaking Change** Add MaxTipAmount for pallet-tips (#1709 @AurevoirXavier) [Frame] +- [x] (INTERNAL) Associated type Hasher for QueryPreimage, StorePreimage and Bounded (#1720 @muraca) [Frame] +- [x] (INTERNAL) Add custom error message for StorageNoopGuard (#1727 @seadanda) [Frame] +- [x] (INTERNAL) Add event field names to HRMP Event variants (#1695 @seadanda) [Pallets] +- [x] (INTERNAL) add some events for pallet-bounties (#1706 @xlc) [Pallets] +- [x] **ADDED MIGRATION** [NPoS] Fix for Reward Deficit in the pool (#1255 @Ank4n) [Pallets] +- [x] (INTERNAL) frame-support: RuntimeDebug\Eq\PartialEq impls for Imbalance (#1717 @muharem) [Frame] +- [x] **ADDED MIGRATION** Tvl pool staking (#1322 @PieWol) [Frame] +- [ ] **TODO: do the same for fellowship SP?** Init System Parachain storage versions and add migration check jobs to CI (#1344 @liamaharon) [Frame] +- [x] (INTERNAL) expose the last relay chain block number as an API from parachain-system (#1761 @rphmeier) [Pallets] +- [x] (INTERNAL) feat: compute pallet/storage prefix hash at compile time (#1539 @yjhmelody) [Frame] +- [ ] **TODO: do the same for fellowship SP?** Treasury spends various asset kinds (#1333 @muharem) [Frame] +- [x] (INTERNAL) Make CheckNonce refuse transactions signed by accounts with no providers (#1578 @zdave-parity) [Frame] +- [x] (INTERNAL) Warn on unchecked weight witness (#1818 @ggwpez) [Frame] +- [x] (INTERNAL) frame: use derive-impl for beefy and mmr pallets (#1867 @acatangiu) [Pallets] +- [x] (INTERNAL) Macros to use path instead of ident (#1474 @juangirini) [Frame] +- [ ] **TODO: no migration required?** Refactor staking ledger (#1484 @gpestana) [Frame, Pallets] +- [x] (INTERNAL) extract amount method for fungible/s Imbalance (#1847 @muharem) [Frame] +- [x] (INTERNAL) Allow Locks/Holds/Reserves/Freezes by default when using pallet_balances TestDefaultConfig (#1880 @liamaharon) [Frame, Pallets] +- [x] (INTERNAL) nit: use traits::tokens::fungible => use traits::fungible (#1753 @gilescope) [Pallets] +- [ ] **TODO: fix of migration that has happened or not?** Fix para-scheduler migration on Rococo (#1921 @ggwpez) [Pallets] +- [x] (INTERNAL) Trading trait and deal with metadata in Mutate trait for nonfungibles_v2 (#1561 @AlexD10S) [Pallets] +- [x] (INTERNAL) Message Queue use proper overweight limit (#1873 @ggwpez) [Frame] +- [ ] **TODO: fix of migration that has happened or not?** paras-scheduler: Fix migration to V1 (#1969 @bkchr) [Pallets] +- [x] (INTERNAL) Resolve Credit to Account impls of OnUnbalanced trait (#1876 @muharem) [Frame] +- [x] (INTERNAL) CheckWeight: Add more logging (#1996 @bkchr) [Frame] +- [x] (NO MIGRATION REQUIRED) Make IdentityInfo generic in pallet-identity (#1661 @georgepisaltu) [Pallets] +- [x] (INTERNAL) Small optimisation to --profile dev wasm builds (#1851 @liamaharon) [Frame] + + +### Tests, Benchmarks & Documentation + +- [X] Point documentation links to monorepo (#1741 @skunert) [Documentation] +- [X] Revive Substrate Crate (#1477 @ggwpez) [Documentation] +- [X] Adding try_state hook for Treasury pallet (#1820 @wentelteefje) [Tests] +- [X] Fix links to implementers' guide (#1865 @antonva) [Documentation] +- [X] frame: use derive-impl for beefy and mmr pallets (#1867 @acatangiu) [Tests] +- [X] Remove clippy clone-double-ref lint noise (#1860 @seadanda) [Tests] +- [X] Publish xcm-emulator crate (#1881 @NachoPal) [Tests] +- [X] bridges: add missing crate descriptions (#1919 @acatangiu) [Documentation] +- [X] Publish penpal-runtime crate (#1904 @NachoPal) [Tests] +- [X] Use prebuilt try-runtime binary in CI (#1898 @liamaharon) [Tests] +- [X] Start BEEFY gadget by default for Polkadot nodes (#1945 @serban300) [Documentation] +- [X] Refactor candidates test in paras_inherent (#2004 @tdimitrov) [Tests] + + +### XCM, Bridges & Misc + +- [x] (RPC) archive: Implement height, hashByHeight and call (#1582 lexnv) [RPC API] +- [X] (INTERNAL) Enable mocking contracts (#1331 @pmikolajczyk41) [Smart Contracts] +- [ ] **TODO: Updated formulae, but still need to run benchmarks** Use Weight::MAX for reserve_asset_deposited, receive_teleported_asset benchmarks (#1726 @bkontur) [XCM] +- [X] (INTERNAL) allow treasury to do reserve asset transfers (#1447 @samelamin) [XCM] +- [ ] **TODO: We do not need v8, right?** Disabled validators runtime API (#1257 @tdimitrov) [Runtime API] +- [X] (INTERNAL) Small enhancements for NetworkExportTable and xcm-builder (#1848 @bkontur) [XCM] +- [X] (INTERNAL) increase MAX_ASSETS_FOR_BUY_EXECUTION (#1733 @xlc) [XCM] +- [X] (NO MIGRATION REQUIRED) Introduce XcmFeesToAccount fee manager (#1234 @KiChjang) [XCM] +- [X] (INTERNAL) Update bridges subtree (#1944 @bkontur) [Bridges] +- [X] (INTERNAL) XCM MultiAssets: sort after reanchoring (#2129 @serban300) [XCM] +- [X] **for Snowfork guys - no need for us** Direct XCM ExportMessage fees for different bridges to different receiver accounts (#2021 @serban300) [Bridges] + + +### Parachains & Cumulus + +- [X] (INTERNAL) Add event field names to HRMP Event variants (#1695 @seadanda) [System-Parachains] +- [ ] **TODO: do the same for fellowship SP?** Init System Parachain storage versions and add migration check jobs to CI (#1344 @liamaharon) [System-Parachains] +- [X] (INTERNAL) [xcm-emulator] Decouple the AccountId type from AccountId32 (#1458 @NachoPal) [System-Parachains] +- [X] (NODE) Fix Asset Hub collator crashing when starting from genesis (#1788 @georgepisaltu) [Cumulus] +- [ ] **TODO: Updated formulae, but still need to run benchmarks** Use Weight::MAX for reserve_asset_deposited, receive_teleported_asset benchmarks (#1726 @bkontur) [System-Parachains] +- [X] (INTERNAL) Xcm emulator nits (#1649 @bkontur) [Cumulus, System-Parachains] +- [ ] **changed, but shall we make relay trust to BH** Make System Parachains trusted Teleporters (#1368 @NachoPal) [System-Parachains] +- [X] (ROCOCO) cumulus: add asset-hub-rococo runtime based on asset-hub-kusama and add asset-bridging support to it #(1215 @acatangiu) [Cumulus] +- [X] (NODE) Cumulus: Allow aura to use initialized collation request receiver (#1911 @skunert) [Cumulus] +- [X] (NODE) Expose prometheus metrics for minimal-relay-chain node in collators (#1942 @skunert) [Cumulus] +- [X] (ROCOCO) [testnet] AssetHubRococo nits (#1954 @bkontur) [Cumulus] +- [X] (ROCOCO) Remove (rococo/westend)-runtime deps from testnet AssetHubs (#1979 @bkontur) [Cumulus] +- [X] (ROCOCO) [testnet] BridgeHubRococo nits (#1972 @bkontur) [Cumulus] +- [X] (TESTS) Removed TODO from test-case for hard-coded delivery fee estimation (#2042 @bkontur) [Cumulus] +- [X] (ROCOCO) [testnet] Align testnet system parachain runtimes using RelayTreasuryLocation and SystemParachains in the same way (#2023 @bkontur) [Cumulus] +- [X] (ROCOCO) [testnet] Add AssetHubRococo <-> AssetHubWestend asset bridging support (#1967 @bkontur) [Cumulus] +########################################### + + +## [1.0.3] XX.XX.XXXX + +### Changed + ## [1.0.0] 22.10.2023 ### Changed From 02887a308e996b07033d507632cff77009657f3d Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Fri, 10 Nov 2023 11:04:58 +0300 Subject: [PATCH 22/68] add missing configuration stuff to polkadot collectives --- .../collectives-polkadot/src/lib.rs | 13 ++++++- .../collectives-polkadot/src/xcm_config.rs | 38 +++++++++++++++---- .../gluttons/glutton-kusama/src/lib.rs | 1 + 3 files changed, 42 insertions(+), 10 deletions(-) diff --git a/system-parachains/collectives/collectives-polkadot/src/lib.rs b/system-parachains/collectives/collectives-polkadot/src/lib.rs index 2b04fe9421..f9967cf020 100644 --- a/system-parachains/collectives/collectives-polkadot/src/lib.rs +++ b/system-parachains/collectives/collectives-polkadot/src/lib.rs @@ -63,6 +63,7 @@ use codec::{Decode, Encode, MaxEncodedLen}; use frame_support::{ construct_runtime, dispatch::DispatchClass, + genesis_builder_helper::{build_config, create_default_config}, parameter_types, traits::{ fungible::HoldConsideration, ConstBool, ConstU16, ConstU32, ConstU64, ConstU8, @@ -386,16 +387,24 @@ parameter_types! { /// The asset ID for the asset that we use to pay for message delivery fees. pub FeeAssetId: AssetId = Concrete(xcm_config::DotLocation::get()); /// The base fee for the message delivery fees. - pub const BaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price + pub const ToSiblingBaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price + pub const ToParentBaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price } pub type PriceForSiblingParachainDelivery = polkadot_runtime_common::xcm_sender::ExponentialPrice< FeeAssetId, - BaseDeliveryFee, + ToSiblingBaseDeliveryFee, TransactionByteFee, XcmpQueue, >; +pub type PriceForParentDelivery = polkadot_runtime_common::xcm_sender::ExponentialPrice< + FeeAssetId, + ToParentBaseDeliveryFee, + TransactionByteFee, + ParachainSystem, +>; + impl cumulus_pallet_xcmp_queue::Config for Runtime { type RuntimeEvent = RuntimeEvent; type XcmExecutor = XcmExecutor; diff --git a/system-parachains/collectives/collectives-polkadot/src/xcm_config.rs b/system-parachains/collectives/collectives-polkadot/src/xcm_config.rs index b4db73e3ab..472c9fd0bc 100644 --- a/system-parachains/collectives/collectives-polkadot/src/xcm_config.rs +++ b/system-parachains/collectives/collectives-polkadot/src/xcm_config.rs @@ -15,17 +15,23 @@ use super::{ AccountId, AllPalletsWithSystem, Balances, Fellows, ParachainInfo, ParachainSystem, - PolkadotXcm, Runtime, RuntimeCall, RuntimeEvent, RuntimeOrigin, WeightToFee, XcmpQueue, + PolkadotXcm, PriceForParentDelivery, Runtime, RuntimeCall, RuntimeEvent, RuntimeOrigin, + WeightToFee, XcmpQueue, }; use frame_support::{ match_types, parameter_types, - traits::{ConstU32, Contains, Everything, Nothing}, + traits::{ConstU32, Contains, Equals, Everything, Nothing}, weights::Weight, }; use frame_system::EnsureRoot; use pallet_xcm::XcmPassthrough; -use parachains_common::{impls::ToStakingPot, xcm_config::ConcreteNativeAssetFrom}; +use parachains_common::{ + impls::ToStakingPot, + xcm_config::{ConcreteAssetFromSystem, RelayOrOtherSystemParachains}, + TREASURY_PALLET_ID, +}; use polkadot_parachain_primitives::primitives::Sibling; +use sp_runtime::traits::AccountIdConversion; use xcm::latest::prelude::*; use xcm_builder::{ AccountId32Aliases, AllowExplicitUnpaidExecutionFrom, AllowKnownQueryResponses, @@ -34,7 +40,7 @@ use xcm_builder::{ OriginToPluralityVoice, ParentAsSuperuser, ParentIsPreset, RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia, SignedAccountId32AsNative, SignedToAccountId32, SovereignSignedViaLocation, TakeWeightCredit, TrailingSetTopicAsId, - UsingComponents, WithComputedOrigin, WithUniqueTopic, + UsingComponents, WithComputedOrigin, WithUniqueTopic, XcmFeesToAccount, }; use xcm_executor::{traits::WithOriginFilter, XcmExecutor}; @@ -46,6 +52,8 @@ parameter_types! { X2(GlobalConsensus(RelayNetwork::get().unwrap()), Parachain(ParachainInfo::parachain_id().into())); pub CheckingAccount: AccountId = PolkadotXcm::check_account(); pub const GovernanceLocation: MultiLocation = MultiLocation::parent(); + pub RelayTreasuryLocation: MultiLocation = (Parent, PalletInstance(polkadot_runtime_constants::TREASURY_PALLET_ID)).into(); + pub TreasuryAccount: Option = Some(TREASURY_PALLET_ID.into_account_truncating()); } /// Type for specifying how a `MultiLocation` can be converted into an `AccountId`. This is used @@ -227,6 +235,21 @@ pub type Barrier = TrailingSetTopicAsId< >, >; +/// Locations that will not be charged fees in the executor, +/// either execution or delivery. +/// We only waive fees for system functions, which these locations represent. +pub type WaivedLocations = ( + RelayOrOtherSystemParachains< + polkadot_runtime_constants::system_parachain::SystemParachains, + Runtime, + >, + Equals, +); + +/// Cases where a remote origin is accepted as trusted Teleporter for a given asset: +/// - DOT with the parent Relay Chain and sibling parachains. +pub type TrustedTeleporters = ConcreteAssetFromSystem; + pub struct XcmConfig; impl xcm_executor::Config for XcmConfig { type RuntimeCall = RuntimeCall; @@ -236,8 +259,7 @@ impl xcm_executor::Config for XcmConfig { // Collectives does not recognize a reserve location for any asset. Users must teleport DOT // where allowed (e.g. with the Relay Chain). type IsReserve = (); - /// Only allow teleportation of DOT. - type IsTeleporter = ConcreteNativeAssetFrom; + type IsTeleporter = TrustedTeleporters; type UniversalLocation = UniversalLocation; type Barrier = Barrier; type Weigher = FixedWeightBounds; @@ -251,7 +273,7 @@ impl xcm_executor::Config for XcmConfig { type MaxAssetsIntoHolding = MaxAssetsIntoHolding; type AssetLocker = (); type AssetExchanger = (); - type FeeManager = (); + type FeeManager = XcmFeesToAccount; type MessageExporter = (); type UniversalAliases = Nothing; type CallDispatcher = WithOriginFilter; @@ -267,7 +289,7 @@ pub type LocalOriginToLocation = SignedToAccountId32, + cumulus_primitives_utility::ParentAsUmp, // ..and XCMP to communicate with the sibling chains. XcmpQueue, )>; diff --git a/system-parachains/gluttons/glutton-kusama/src/lib.rs b/system-parachains/gluttons/glutton-kusama/src/lib.rs index db98c4fa23..050bf21f88 100644 --- a/system-parachains/gluttons/glutton-kusama/src/lib.rs +++ b/system-parachains/gluttons/glutton-kusama/src/lib.rs @@ -63,6 +63,7 @@ use sp_version::RuntimeVersion; pub use frame_support::{ construct_runtime, dispatch::DispatchClass, + genesis_builder_helper::{build_config, create_default_config}, parameter_types, traits::{Everything, IsInVec, Randomness}, weights::{ From ba5ccd5ff01266c0c8dfb48d6c0085946dc64690 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Fri, 10 Nov 2023 13:11:58 +0300 Subject: [PATCH 23/68] fixed porting issues --- relay/kusama/constants/src/lib.rs | 9 ++++++++- relay/kusama/src/weights/xcm/mod.rs | 1 - relay/polkadot/constants/src/lib.rs | 9 ++++++++- relay/polkadot/src/weights/xcm/mod.rs | 1 - 4 files changed, 16 insertions(+), 4 deletions(-) diff --git a/relay/kusama/constants/src/lib.rs b/relay/kusama/constants/src/lib.rs index 08878f235e..a73ab247ba 100644 --- a/relay/kusama/constants/src/lib.rs +++ b/relay/kusama/constants/src/lib.rs @@ -110,7 +110,14 @@ pub mod system_parachain { frame_support::match_types! { pub type SystemParachains: impl Contains = { - MultiLocation { parents: 0, interior: X1(Parachain(ASSET_HUB_ID | ENCOINTER_ID | BRIDGE_HUB_ID)) } + MultiLocation { + parents: 1, + interior: X1(Parachain( + ASSET_HUB_ID | + ENCOINTER_ID | + BRIDGE_HUB_ID + )), + } }; } } diff --git a/relay/kusama/src/weights/xcm/mod.rs b/relay/kusama/src/weights/xcm/mod.rs index 5958abe40d..ec73d891ec 100644 --- a/relay/kusama/src/weights/xcm/mod.rs +++ b/relay/kusama/src/weights/xcm/mod.rs @@ -91,7 +91,6 @@ impl XcmWeightInfo for KusamaXcmWeight { assets.weigh_multi_assets(XcmBalancesWeight::::withdraw_asset()) } fn reserve_asset_deposited(assets: &MultiAssets) -> Weight { - // Kusama doesn't support ReserveAssetDeposited, so this benchmark has a default weight assets.weigh_multi_assets(XcmBalancesWeight::::reserve_asset_deposited()) } fn receive_teleported_asset(assets: &MultiAssets) -> Weight { diff --git a/relay/polkadot/constants/src/lib.rs b/relay/polkadot/constants/src/lib.rs index ba33f3a2ce..44527cb9c4 100644 --- a/relay/polkadot/constants/src/lib.rs +++ b/relay/polkadot/constants/src/lib.rs @@ -124,7 +124,14 @@ pub mod system_parachain { frame_support::match_types! { pub type SystemParachains: impl Contains = { - MultiLocation { parents: 0, interior: X1(Parachain(ASSET_HUB_ID | COLLECTIVES_ID | BRIDGE_HUB_ID)) } + MultiLocation { + parents: 1, + interior: X1(Parachain( + ASSET_HUB_ID | + COLLECTIVES_ID | + BRIDGE_HUB_ID + )), + } }; } } diff --git a/relay/polkadot/src/weights/xcm/mod.rs b/relay/polkadot/src/weights/xcm/mod.rs index acef102b44..98c12fa7db 100644 --- a/relay/polkadot/src/weights/xcm/mod.rs +++ b/relay/polkadot/src/weights/xcm/mod.rs @@ -91,7 +91,6 @@ impl XcmWeightInfo for PolkadotXcmWeight assets.weigh_multi_assets(XcmBalancesWeight::::withdraw_asset()) } fn reserve_asset_deposited(assets: &MultiAssets) -> Weight { - // Polkadot doesn't support ReserveAssetDeposited, so this benchmark has a default weight assets.weigh_multi_assets(XcmBalancesWeight::::reserve_asset_deposited()) } fn receive_teleported_asset(assets: &MultiAssets) -> Weight { From fdec29097acbce56f1ba78d01889622423e7b96f Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Fri, 10 Nov 2023 13:52:34 +0300 Subject: [PATCH 24/68] removed unused Kusama weight files --- .../weights/frame_benchmarking_baseline.rs | 103 ---- relay/kusama/src/weights/mod.rs | 6 - .../src/weights/pallet_collective_council.rs | 322 ----------- .../pallet_collective_technical_committee.rs | 322 ----------- relay/kusama/src/weights/pallet_democracy.rs | 513 ------------------ .../src/weights/pallet_elections_phragmen.rs | 303 ----------- relay/kusama/src/weights/pallet_membership.rs | 202 ------- relay/kusama/src/weights/pallet_offences.rs | 217 -------- relay/kusama/src/weights/pallet_recovery.rs | 181 ------ relay/kusama/src/weights/pallet_tips.rs | 159 ------ .../weights/pallet_xcm_benchmarks_fungible.rs | 184 ------- .../weights/pallet_xcm_benchmarks_generic.rs | 393 -------------- 12 files changed, 2905 deletions(-) delete mode 100644 relay/kusama/src/weights/frame_benchmarking_baseline.rs delete mode 100644 relay/kusama/src/weights/pallet_collective_council.rs delete mode 100644 relay/kusama/src/weights/pallet_collective_technical_committee.rs delete mode 100644 relay/kusama/src/weights/pallet_democracy.rs delete mode 100644 relay/kusama/src/weights/pallet_elections_phragmen.rs delete mode 100644 relay/kusama/src/weights/pallet_membership.rs delete mode 100644 relay/kusama/src/weights/pallet_offences.rs delete mode 100644 relay/kusama/src/weights/pallet_recovery.rs delete mode 100644 relay/kusama/src/weights/pallet_tips.rs delete mode 100644 relay/kusama/src/weights/pallet_xcm_benchmarks_fungible.rs delete mode 100644 relay/kusama/src/weights/pallet_xcm_benchmarks_generic.rs diff --git a/relay/kusama/src/weights/frame_benchmarking_baseline.rs b/relay/kusama/src/weights/frame_benchmarking_baseline.rs deleted file mode 100644 index 7cd564d7ed..0000000000 --- a/relay/kusama/src/weights/frame_benchmarking_baseline.rs +++ /dev/null @@ -1,103 +0,0 @@ -// Copyright (C) Parity Technologies (UK) Ltd. -// This file is part of Polkadot. - -// Polkadot is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// Polkadot is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with Polkadot. If not, see . - -//! Autogenerated weights for `frame_benchmarking::baseline` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-09-21, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `a3dce7bd4066`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` -//! WASM-EXECUTION: `Compiled`, CHAIN: `Some("spec-kusama.json")`, DB CACHE: 1024 - -// Executed Command: -// /builds/polkadot-sdk/target/production/polkadot -// benchmark -// pallet -// --chain=spec-kusama.json -// --pallet=frame_benchmarking::baseline -// --extrinsic= -// --output=/builds/runtimes/relay/kusama/src/weights -// --header=/builds/bench/header.txt -// --no-median-slopes -// --no-min-squares - -#![cfg_attr(rustfmt, rustfmt_skip)] -#![allow(unused_parens)] -#![allow(unused_imports)] -#![allow(missing_docs)] - -use frame_support::{traits::Get, weights::Weight}; -use core::marker::PhantomData; - -/// Weight functions for `frame_benchmarking::baseline`. -pub struct WeightInfo(PhantomData); -impl frame_benchmarking::baseline::WeightInfo for WeightInfo { - /// The range of component `i` is `[0, 1000000]`. - fn addition(_i: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 141_000 picoseconds. - Weight::from_parts(182_446, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - /// The range of component `i` is `[0, 1000000]`. - fn subtraction(_i: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 140_000 picoseconds. - Weight::from_parts(181_688, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - /// The range of component `i` is `[0, 1000000]`. - fn multiplication(_i: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 140_000 picoseconds. - Weight::from_parts(178_127, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - /// The range of component `i` is `[0, 1000000]`. - fn division(_i: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 135_000 picoseconds. - Weight::from_parts(175_786, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - fn hashing() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 21_633_308_000 picoseconds. - Weight::from_parts(21_658_241_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - /// The range of component `i` is `[0, 100]`. - fn sr25519_verification(i: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 176_000 picoseconds. - Weight::from_parts(2_627_074, 0) - .saturating_add(Weight::from_parts(0, 0)) - // Standard Error: 6_117 - .saturating_add(Weight::from_parts(55_299_711, 0).saturating_mul(i.into())) - } -} diff --git a/relay/kusama/src/weights/mod.rs b/relay/kusama/src/weights/mod.rs index b3642d49d4..b0d2061571 100644 --- a/relay/kusama/src/weights/mod.rs +++ b/relay/kusama/src/weights/mod.rs @@ -22,17 +22,12 @@ pub mod pallet_balances; pub mod pallet_balances_nis_counterpart_balances; pub mod pallet_bounties; pub mod pallet_child_bounties; -pub mod pallet_collective_council; -pub mod pallet_collective_technical_committee; pub mod pallet_conviction_voting; -pub mod pallet_democracy; pub mod pallet_election_provider_multi_phase; -pub mod pallet_elections_phragmen; pub mod pallet_fast_unstake; pub mod pallet_identity; pub mod pallet_im_online; pub mod pallet_indices; -pub mod pallet_membership; pub mod pallet_message_queue; pub mod pallet_multisig; pub mod pallet_nis; @@ -47,7 +42,6 @@ pub mod pallet_session; pub mod pallet_society; pub mod pallet_staking; pub mod pallet_timestamp; -pub mod pallet_tips; pub mod pallet_treasury; pub mod pallet_utility; pub mod pallet_vesting; diff --git a/relay/kusama/src/weights/pallet_collective_council.rs b/relay/kusama/src/weights/pallet_collective_council.rs deleted file mode 100644 index 84157595f7..0000000000 --- a/relay/kusama/src/weights/pallet_collective_council.rs +++ /dev/null @@ -1,322 +0,0 @@ -// Copyright (C) Parity Technologies (UK) Ltd. -// This file is part of Polkadot. - -// Polkadot is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// Polkadot is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with Polkadot. If not, see . -//! Autogenerated weights for `pallet_collective` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-03-15, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `bm5`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("kusama-dev"), DB CACHE: 1024 - -// Executed Command: -// ./target/production/polkadot -// benchmark -// pallet -// --chain=kusama-dev -// --steps=50 -// --repeat=20 -// --pallet=pallet_collective -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --header=./file_header.txt -// --output=./runtime/kusama/src/weights/ - -#![cfg_attr(rustfmt, rustfmt_skip)] -#![allow(unused_parens)] -#![allow(unused_imports)] - -use frame_support::{traits::Get, weights::Weight}; -use sp_std::marker::PhantomData; - -/// Weight functions for `pallet_collective`. -pub struct WeightInfo(PhantomData); -impl pallet_collective::WeightInfo for WeightInfo { - /// Storage: Council Members (r:1 w:1) - /// Proof Skipped: Council Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Council Proposals (r:1 w:0) - /// Proof Skipped: Council Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Council Voting (r:100 w:100) - /// Proof Skipped: Council Voting (max_values: None, max_size: None, mode: Measured) - /// Storage: Council Prime (r:0 w:1) - /// Proof Skipped: Council Prime (max_values: Some(1), max_size: None, mode: Measured) - /// The range of component `m` is `[0, 100]`. - /// The range of component `n` is `[0, 100]`. - /// The range of component `p` is `[0, 100]`. - /// The range of component `m` is `[0, 100]`. - /// The range of component `n` is `[0, 100]`. - /// The range of component `p` is `[0, 100]`. - fn set_members(m: u32, _n: u32, p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `0 + m * (3232 ±0) + p * (3190 ±0)` - // Estimated: `19164 + m * (7799 ±17) + p * (10110 ±17)` - // Minimum execution time: 17_032_000 picoseconds. - Weight::from_parts(17_263_000, 0) - .saturating_add(Weight::from_parts(0, 19164)) - // Standard Error: 51_363 - .saturating_add(Weight::from_parts(5_779_193, 0).saturating_mul(m.into())) - // Standard Error: 51_363 - .saturating_add(Weight::from_parts(8_434_866, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(p.into()))) - .saturating_add(T::DbWeight::get().writes(2)) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(p.into()))) - .saturating_add(Weight::from_parts(0, 7799).saturating_mul(m.into())) - .saturating_add(Weight::from_parts(0, 10110).saturating_mul(p.into())) - } - /// Storage: Council Members (r:1 w:0) - /// Proof Skipped: Council Members (max_values: Some(1), max_size: None, mode: Measured) - /// The range of component `b` is `[2, 1024]`. - /// The range of component `m` is `[1, 100]`. - /// The range of component `b` is `[2, 1024]`. - /// The range of component `m` is `[1, 100]`. - fn execute(b: u32, m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `136 + m * (32 ±0)` - // Estimated: `1622 + m * (32 ±0)` - // Minimum execution time: 15_686_000 picoseconds. - Weight::from_parts(15_185_500, 0) - .saturating_add(Weight::from_parts(0, 1622)) - // Standard Error: 26 - .saturating_add(Weight::from_parts(1_363, 0).saturating_mul(b.into())) - // Standard Error: 277 - .saturating_add(Weight::from_parts(15_720, 0).saturating_mul(m.into())) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(Weight::from_parts(0, 32).saturating_mul(m.into())) - } - /// Storage: Council Members (r:1 w:0) - /// Proof Skipped: Council Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Council ProposalOf (r:1 w:0) - /// Proof Skipped: Council ProposalOf (max_values: None, max_size: None, mode: Measured) - /// The range of component `b` is `[2, 1024]`. - /// The range of component `m` is `[1, 100]`. - /// The range of component `b` is `[2, 1024]`. - /// The range of component `m` is `[1, 100]`. - fn propose_execute(b: u32, m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `136 + m * (32 ±0)` - // Estimated: `5224 + m * (64 ±0)` - // Minimum execution time: 18_314_000 picoseconds. - Weight::from_parts(17_659_522, 0) - .saturating_add(Weight::from_parts(0, 5224)) - // Standard Error: 22 - .saturating_add(Weight::from_parts(1_153, 0).saturating_mul(b.into())) - // Standard Error: 237 - .saturating_add(Weight::from_parts(25_439, 0).saturating_mul(m.into())) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(Weight::from_parts(0, 64).saturating_mul(m.into())) - } - /// Storage: Council Members (r:1 w:0) - /// Proof Skipped: Council Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Council ProposalOf (r:1 w:1) - /// Proof Skipped: Council ProposalOf (max_values: None, max_size: None, mode: Measured) - /// Storage: Council Proposals (r:1 w:1) - /// Proof Skipped: Council Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Council ProposalCount (r:1 w:1) - /// Proof Skipped: Council ProposalCount (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Council Voting (r:0 w:1) - /// Proof Skipped: Council Voting (max_values: None, max_size: None, mode: Measured) - /// The range of component `b` is `[2, 1024]`. - /// The range of component `m` is `[2, 100]`. - /// The range of component `p` is `[1, 100]`. - /// The range of component `b` is `[2, 1024]`. - /// The range of component `m` is `[2, 100]`. - /// The range of component `p` is `[1, 100]`. - fn propose_proposed(b: u32, m: u32, p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `426 + m * (32 ±0) + p * (36 ±0)` - // Estimated: `9685 + m * (165 ±0) + p * (180 ±0)` - // Minimum execution time: 23_916_000 picoseconds. - Weight::from_parts(25_192_989, 0) - .saturating_add(Weight::from_parts(0, 9685)) - // Standard Error: 50 - .saturating_add(Weight::from_parts(2_327, 0).saturating_mul(b.into())) - // Standard Error: 528 - .saturating_add(Weight::from_parts(17_763, 0).saturating_mul(m.into())) - // Standard Error: 522 - .saturating_add(Weight::from_parts(116_903, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(4)) - .saturating_add(T::DbWeight::get().writes(4)) - .saturating_add(Weight::from_parts(0, 165).saturating_mul(m.into())) - .saturating_add(Weight::from_parts(0, 180).saturating_mul(p.into())) - } - /// Storage: Council Members (r:1 w:0) - /// Proof Skipped: Council Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Council Voting (r:1 w:1) - /// Proof Skipped: Council Voting (max_values: None, max_size: None, mode: Measured) - /// The range of component `m` is `[5, 100]`. - /// The range of component `m` is `[5, 100]`. - fn vote(m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `875 + m * (64 ±0)` - // Estimated: `6698 + m * (128 ±0)` - // Minimum execution time: 21_641_000 picoseconds. - Weight::from_parts(22_373_888, 0) - .saturating_add(Weight::from_parts(0, 6698)) - // Standard Error: 299 - .saturating_add(Weight::from_parts(41_168, 0).saturating_mul(m.into())) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(1)) - .saturating_add(Weight::from_parts(0, 128).saturating_mul(m.into())) - } - /// Storage: Council Voting (r:1 w:1) - /// Proof Skipped: Council Voting (max_values: None, max_size: None, mode: Measured) - /// Storage: Council Members (r:1 w:0) - /// Proof Skipped: Council Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Council Proposals (r:1 w:1) - /// Proof Skipped: Council Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Council ProposalOf (r:0 w:1) - /// Proof Skipped: Council ProposalOf (max_values: None, max_size: None, mode: Measured) - /// The range of component `m` is `[4, 100]`. - /// The range of component `p` is `[1, 100]`. - /// The range of component `m` is `[4, 100]`. - /// The range of component `p` is `[1, 100]`. - fn close_early_disapproved(m: u32, p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `464 + m * (64 ±0) + p * (36 ±0)` - // Estimated: `8211 + m * (260 ±0) + p * (144 ±0)` - // Minimum execution time: 26_158_000 picoseconds. - Weight::from_parts(27_675_242, 0) - .saturating_add(Weight::from_parts(0, 8211)) - // Standard Error: 845 - .saturating_add(Weight::from_parts(10_799, 0).saturating_mul(m.into())) - // Standard Error: 824 - .saturating_add(Weight::from_parts(141_199, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(3)) - .saturating_add(Weight::from_parts(0, 260).saturating_mul(m.into())) - .saturating_add(Weight::from_parts(0, 144).saturating_mul(p.into())) - } - /// Storage: Council Voting (r:1 w:1) - /// Proof Skipped: Council Voting (max_values: None, max_size: None, mode: Measured) - /// Storage: Council Members (r:1 w:0) - /// Proof Skipped: Council Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Council ProposalOf (r:1 w:1) - /// Proof Skipped: Council ProposalOf (max_values: None, max_size: None, mode: Measured) - /// Storage: Council Proposals (r:1 w:1) - /// Proof Skipped: Council Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// The range of component `b` is `[2, 1024]`. - /// The range of component `m` is `[4, 100]`. - /// The range of component `p` is `[1, 100]`. - /// The range of component `b` is `[2, 1024]`. - /// The range of component `m` is `[4, 100]`. - /// The range of component `p` is `[1, 100]`. - fn close_early_approved(b: u32, m: u32, p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `766 + b * (1 ±0) + m * (64 ±0) + p * (40 ±0)` - // Estimated: `12372 + b * (4 ±0) + m * (264 ±0) + p * (160 ±0)` - // Minimum execution time: 37_601_000 picoseconds. - Weight::from_parts(41_302_278, 0) - .saturating_add(Weight::from_parts(0, 12372)) - // Standard Error: 67 - .saturating_add(Weight::from_parts(1_608, 0).saturating_mul(b.into())) - // Standard Error: 716 - .saturating_add(Weight::from_parts(14_628, 0).saturating_mul(m.into())) - // Standard Error: 698 - .saturating_add(Weight::from_parts(129_997, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(4)) - .saturating_add(T::DbWeight::get().writes(3)) - .saturating_add(Weight::from_parts(0, 4).saturating_mul(b.into())) - .saturating_add(Weight::from_parts(0, 264).saturating_mul(m.into())) - .saturating_add(Weight::from_parts(0, 160).saturating_mul(p.into())) - } - /// Storage: Council Voting (r:1 w:1) - /// Proof Skipped: Council Voting (max_values: None, max_size: None, mode: Measured) - /// Storage: Council Members (r:1 w:0) - /// Proof Skipped: Council Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Council Prime (r:1 w:0) - /// Proof Skipped: Council Prime (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Council Proposals (r:1 w:1) - /// Proof Skipped: Council Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Council ProposalOf (r:0 w:1) - /// Proof Skipped: Council ProposalOf (max_values: None, max_size: None, mode: Measured) - /// The range of component `m` is `[4, 100]`. - /// The range of component `p` is `[1, 100]`. - /// The range of component `m` is `[4, 100]`. - /// The range of component `p` is `[1, 100]`. - fn close_disapproved(m: u32, p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `484 + m * (64 ±0) + p * (36 ±0)` - // Estimated: `10240 + m * (325 ±0) + p * (180 ±0)` - // Minimum execution time: 29_185_000 picoseconds. - Weight::from_parts(30_594_183, 0) - .saturating_add(Weight::from_parts(0, 10240)) - // Standard Error: 865 - .saturating_add(Weight::from_parts(30_165, 0).saturating_mul(m.into())) - // Standard Error: 844 - .saturating_add(Weight::from_parts(131_623, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(4)) - .saturating_add(T::DbWeight::get().writes(3)) - .saturating_add(Weight::from_parts(0, 325).saturating_mul(m.into())) - .saturating_add(Weight::from_parts(0, 180).saturating_mul(p.into())) - } - /// Storage: Council Voting (r:1 w:1) - /// Proof Skipped: Council Voting (max_values: None, max_size: None, mode: Measured) - /// Storage: Council Members (r:1 w:0) - /// Proof Skipped: Council Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Council Prime (r:1 w:0) - /// Proof Skipped: Council Prime (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Council ProposalOf (r:1 w:1) - /// Proof Skipped: Council ProposalOf (max_values: None, max_size: None, mode: Measured) - /// Storage: Council Proposals (r:1 w:1) - /// Proof Skipped: Council Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// The range of component `b` is `[2, 1024]`. - /// The range of component `m` is `[4, 100]`. - /// The range of component `p` is `[1, 100]`. - /// The range of component `b` is `[2, 1024]`. - /// The range of component `m` is `[4, 100]`. - /// The range of component `p` is `[1, 100]`. - fn close_approved(b: u32, m: u32, p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `786 + b * (1 ±0) + m * (64 ±0) + p * (40 ±0)` - // Estimated: `14575 + b * (5 ±0) + m * (330 ±0) + p * (200 ±0)` - // Minimum execution time: 43_157_000 picoseconds. - Weight::from_parts(43_691_874, 0) - .saturating_add(Weight::from_parts(0, 14575)) - // Standard Error: 61 - .saturating_add(Weight::from_parts(1_862, 0).saturating_mul(b.into())) - // Standard Error: 654 - .saturating_add(Weight::from_parts(17_183, 0).saturating_mul(m.into())) - // Standard Error: 638 - .saturating_add(Weight::from_parts(133_193, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(5)) - .saturating_add(T::DbWeight::get().writes(3)) - .saturating_add(Weight::from_parts(0, 5).saturating_mul(b.into())) - .saturating_add(Weight::from_parts(0, 330).saturating_mul(m.into())) - .saturating_add(Weight::from_parts(0, 200).saturating_mul(p.into())) - } - /// Storage: Council Proposals (r:1 w:1) - /// Proof Skipped: Council Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Council Voting (r:0 w:1) - /// Proof Skipped: Council Voting (max_values: None, max_size: None, mode: Measured) - /// Storage: Council ProposalOf (r:0 w:1) - /// Proof Skipped: Council ProposalOf (max_values: None, max_size: None, mode: Measured) - /// The range of component `p` is `[1, 100]`. - /// The range of component `p` is `[1, 100]`. - fn disapprove_proposal(p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `293 + p * (32 ±0)` - // Estimated: `2364 + p * (96 ±0)` - // Minimum execution time: 14_666_000 picoseconds. - Weight::from_parts(16_623_386, 0) - .saturating_add(Weight::from_parts(0, 2364)) - // Standard Error: 430 - .saturating_add(Weight::from_parts(111_461, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(3)) - .saturating_add(Weight::from_parts(0, 96).saturating_mul(p.into())) - } -} diff --git a/relay/kusama/src/weights/pallet_collective_technical_committee.rs b/relay/kusama/src/weights/pallet_collective_technical_committee.rs deleted file mode 100644 index 0bf5d2839b..0000000000 --- a/relay/kusama/src/weights/pallet_collective_technical_committee.rs +++ /dev/null @@ -1,322 +0,0 @@ -// Copyright (C) Parity Technologies (UK) Ltd. -// This file is part of Polkadot. - -// Polkadot is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// Polkadot is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with Polkadot. If not, see . -//! Autogenerated weights for `pallet_collective` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-03-15, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `bm5`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("kusama-dev"), DB CACHE: 1024 - -// Executed Command: -// ./target/production/polkadot -// benchmark -// pallet -// --chain=kusama-dev -// --steps=50 -// --repeat=20 -// --pallet=pallet_collective -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --header=./file_header.txt -// --output=./runtime/kusama/src/weights/ - -#![cfg_attr(rustfmt, rustfmt_skip)] -#![allow(unused_parens)] -#![allow(unused_imports)] - -use frame_support::{traits::Get, weights::Weight}; -use sp_std::marker::PhantomData; - -/// Weight functions for `pallet_collective`. -pub struct WeightInfo(PhantomData); -impl pallet_collective::WeightInfo for WeightInfo { - /// Storage: TechnicalCommittee Members (r:1 w:1) - /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: TechnicalCommittee Proposals (r:1 w:0) - /// Proof Skipped: TechnicalCommittee Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: TechnicalCommittee Voting (r:100 w:100) - /// Proof Skipped: TechnicalCommittee Voting (max_values: None, max_size: None, mode: Measured) - /// Storage: TechnicalCommittee Prime (r:0 w:1) - /// Proof Skipped: TechnicalCommittee Prime (max_values: Some(1), max_size: None, mode: Measured) - /// The range of component `m` is `[0, 100]`. - /// The range of component `n` is `[0, 100]`. - /// The range of component `p` is `[0, 100]`. - /// The range of component `m` is `[0, 100]`. - /// The range of component `n` is `[0, 100]`. - /// The range of component `p` is `[0, 100]`. - fn set_members(m: u32, _n: u32, p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `0 + m * (3232 ±0) + p * (3190 ±0)` - // Estimated: `19320 + m * (7799 ±16) + p * (10110 ±16)` - // Minimum execution time: 17_755_000 picoseconds. - Weight::from_parts(18_022_000, 0) - .saturating_add(Weight::from_parts(0, 19320)) - // Standard Error: 48_475 - .saturating_add(Weight::from_parts(5_505_299, 0).saturating_mul(m.into())) - // Standard Error: 48_475 - .saturating_add(Weight::from_parts(8_260_850, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(p.into()))) - .saturating_add(T::DbWeight::get().writes(2)) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(p.into()))) - .saturating_add(Weight::from_parts(0, 7799).saturating_mul(m.into())) - .saturating_add(Weight::from_parts(0, 10110).saturating_mul(p.into())) - } - /// Storage: TechnicalCommittee Members (r:1 w:0) - /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) - /// The range of component `b` is `[2, 1024]`. - /// The range of component `m` is `[1, 100]`. - /// The range of component `b` is `[2, 1024]`. - /// The range of component `m` is `[1, 100]`. - fn execute(b: u32, m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `175 + m * (32 ±0)` - // Estimated: `1661 + m * (32 ±0)` - // Minimum execution time: 16_765_000 picoseconds. - Weight::from_parts(15_653_912, 0) - .saturating_add(Weight::from_parts(0, 1661)) - // Standard Error: 25 - .saturating_add(Weight::from_parts(1_539, 0).saturating_mul(b.into())) - // Standard Error: 261 - .saturating_add(Weight::from_parts(17_896, 0).saturating_mul(m.into())) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(Weight::from_parts(0, 32).saturating_mul(m.into())) - } - /// Storage: TechnicalCommittee Members (r:1 w:0) - /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: TechnicalCommittee ProposalOf (r:1 w:0) - /// Proof Skipped: TechnicalCommittee ProposalOf (max_values: None, max_size: None, mode: Measured) - /// The range of component `b` is `[2, 1024]`. - /// The range of component `m` is `[1, 100]`. - /// The range of component `b` is `[2, 1024]`. - /// The range of component `m` is `[1, 100]`. - fn propose_execute(b: u32, m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `175 + m * (32 ±0)` - // Estimated: `5302 + m * (64 ±0)` - // Minimum execution time: 19_194_000 picoseconds. - Weight::from_parts(18_366_867, 0) - .saturating_add(Weight::from_parts(0, 5302)) - // Standard Error: 19 - .saturating_add(Weight::from_parts(1_342, 0).saturating_mul(b.into())) - // Standard Error: 200 - .saturating_add(Weight::from_parts(22_738, 0).saturating_mul(m.into())) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(Weight::from_parts(0, 64).saturating_mul(m.into())) - } - /// Storage: TechnicalCommittee Members (r:1 w:0) - /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: TechnicalCommittee ProposalOf (r:1 w:1) - /// Proof Skipped: TechnicalCommittee ProposalOf (max_values: None, max_size: None, mode: Measured) - /// Storage: TechnicalCommittee Proposals (r:1 w:1) - /// Proof Skipped: TechnicalCommittee Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: TechnicalCommittee ProposalCount (r:1 w:1) - /// Proof Skipped: TechnicalCommittee ProposalCount (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: TechnicalCommittee Voting (r:0 w:1) - /// Proof Skipped: TechnicalCommittee Voting (max_values: None, max_size: None, mode: Measured) - /// The range of component `b` is `[2, 1024]`. - /// The range of component `m` is `[2, 100]`. - /// The range of component `p` is `[1, 100]`. - /// The range of component `b` is `[2, 1024]`. - /// The range of component `m` is `[2, 100]`. - /// The range of component `p` is `[1, 100]`. - fn propose_proposed(b: u32, m: u32, p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `465 + m * (32 ±0) + p * (36 ±0)` - // Estimated: `9880 + m * (165 ±0) + p * (180 ±0)` - // Minimum execution time: 24_958_000 picoseconds. - Weight::from_parts(25_925_520, 0) - .saturating_add(Weight::from_parts(0, 9880)) - // Standard Error: 54 - .saturating_add(Weight::from_parts(2_430, 0).saturating_mul(b.into())) - // Standard Error: 570 - .saturating_add(Weight::from_parts(17_303, 0).saturating_mul(m.into())) - // Standard Error: 563 - .saturating_add(Weight::from_parts(119_736, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(4)) - .saturating_add(T::DbWeight::get().writes(4)) - .saturating_add(Weight::from_parts(0, 165).saturating_mul(m.into())) - .saturating_add(Weight::from_parts(0, 180).saturating_mul(p.into())) - } - /// Storage: TechnicalCommittee Members (r:1 w:0) - /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: TechnicalCommittee Voting (r:1 w:1) - /// Proof Skipped: TechnicalCommittee Voting (max_values: None, max_size: None, mode: Measured) - /// The range of component `m` is `[5, 100]`. - /// The range of component `m` is `[5, 100]`. - fn vote(m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `914 + m * (64 ±0)` - // Estimated: `6776 + m * (128 ±0)` - // Minimum execution time: 22_620_000 picoseconds. - Weight::from_parts(23_356_968, 0) - .saturating_add(Weight::from_parts(0, 6776)) - // Standard Error: 273 - .saturating_add(Weight::from_parts(40_919, 0).saturating_mul(m.into())) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(1)) - .saturating_add(Weight::from_parts(0, 128).saturating_mul(m.into())) - } - /// Storage: TechnicalCommittee Voting (r:1 w:1) - /// Proof Skipped: TechnicalCommittee Voting (max_values: None, max_size: None, mode: Measured) - /// Storage: TechnicalCommittee Members (r:1 w:0) - /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: TechnicalCommittee Proposals (r:1 w:1) - /// Proof Skipped: TechnicalCommittee Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: TechnicalCommittee ProposalOf (r:0 w:1) - /// Proof Skipped: TechnicalCommittee ProposalOf (max_values: None, max_size: None, mode: Measured) - /// The range of component `m` is `[4, 100]`. - /// The range of component `p` is `[1, 100]`. - /// The range of component `m` is `[4, 100]`. - /// The range of component `p` is `[1, 100]`. - fn close_early_disapproved(m: u32, p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `503 + m * (64 ±0) + p * (36 ±0)` - // Estimated: `8367 + m * (260 ±0) + p * (144 ±0)` - // Minimum execution time: 27_667_000 picoseconds. - Weight::from_parts(29_094_490, 0) - .saturating_add(Weight::from_parts(0, 8367)) - // Standard Error: 842 - .saturating_add(Weight::from_parts(25_691, 0).saturating_mul(m.into())) - // Standard Error: 821 - .saturating_add(Weight::from_parts(133_244, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(3)) - .saturating_add(Weight::from_parts(0, 260).saturating_mul(m.into())) - .saturating_add(Weight::from_parts(0, 144).saturating_mul(p.into())) - } - /// Storage: TechnicalCommittee Voting (r:1 w:1) - /// Proof Skipped: TechnicalCommittee Voting (max_values: None, max_size: None, mode: Measured) - /// Storage: TechnicalCommittee Members (r:1 w:0) - /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: TechnicalCommittee ProposalOf (r:1 w:1) - /// Proof Skipped: TechnicalCommittee ProposalOf (max_values: None, max_size: None, mode: Measured) - /// Storage: TechnicalCommittee Proposals (r:1 w:1) - /// Proof Skipped: TechnicalCommittee Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// The range of component `b` is `[2, 1024]`. - /// The range of component `m` is `[4, 100]`. - /// The range of component `p` is `[1, 100]`. - /// The range of component `b` is `[2, 1024]`. - /// The range of component `m` is `[4, 100]`. - /// The range of component `p` is `[1, 100]`. - fn close_early_approved(b: u32, m: u32, p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `805 + b * (1 ±0) + m * (64 ±0) + p * (40 ±0)` - // Estimated: `12528 + b * (4 ±0) + m * (264 ±0) + p * (160 ±0)` - // Minimum execution time: 41_678_000 picoseconds. - Weight::from_parts(42_218_269, 0) - .saturating_add(Weight::from_parts(0, 12528)) - // Standard Error: 59 - .saturating_add(Weight::from_parts(1_661, 0).saturating_mul(b.into())) - // Standard Error: 624 - .saturating_add(Weight::from_parts(16_946, 0).saturating_mul(m.into())) - // Standard Error: 608 - .saturating_add(Weight::from_parts(129_170, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(4)) - .saturating_add(T::DbWeight::get().writes(3)) - .saturating_add(Weight::from_parts(0, 4).saturating_mul(b.into())) - .saturating_add(Weight::from_parts(0, 264).saturating_mul(m.into())) - .saturating_add(Weight::from_parts(0, 160).saturating_mul(p.into())) - } - /// Storage: TechnicalCommittee Voting (r:1 w:1) - /// Proof Skipped: TechnicalCommittee Voting (max_values: None, max_size: None, mode: Measured) - /// Storage: TechnicalCommittee Members (r:1 w:0) - /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: TechnicalCommittee Prime (r:1 w:0) - /// Proof Skipped: TechnicalCommittee Prime (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: TechnicalCommittee Proposals (r:1 w:1) - /// Proof Skipped: TechnicalCommittee Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: TechnicalCommittee ProposalOf (r:0 w:1) - /// Proof Skipped: TechnicalCommittee ProposalOf (max_values: None, max_size: None, mode: Measured) - /// The range of component `m` is `[4, 100]`. - /// The range of component `p` is `[1, 100]`. - /// The range of component `m` is `[4, 100]`. - /// The range of component `p` is `[1, 100]`. - fn close_disapproved(m: u32, p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `523 + m * (64 ±0) + p * (36 ±0)` - // Estimated: `10435 + m * (325 ±0) + p * (180 ±0)` - // Minimum execution time: 30_447_000 picoseconds. - Weight::from_parts(32_661_910, 0) - .saturating_add(Weight::from_parts(0, 10435)) - // Standard Error: 531 - .saturating_add(Weight::from_parts(29_960, 0).saturating_mul(m.into())) - // Standard Error: 517 - .saturating_add(Weight::from_parts(120_475, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(4)) - .saturating_add(T::DbWeight::get().writes(3)) - .saturating_add(Weight::from_parts(0, 325).saturating_mul(m.into())) - .saturating_add(Weight::from_parts(0, 180).saturating_mul(p.into())) - } - /// Storage: TechnicalCommittee Voting (r:1 w:1) - /// Proof Skipped: TechnicalCommittee Voting (max_values: None, max_size: None, mode: Measured) - /// Storage: TechnicalCommittee Members (r:1 w:0) - /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: TechnicalCommittee Prime (r:1 w:0) - /// Proof Skipped: TechnicalCommittee Prime (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: TechnicalCommittee ProposalOf (r:1 w:1) - /// Proof Skipped: TechnicalCommittee ProposalOf (max_values: None, max_size: None, mode: Measured) - /// Storage: TechnicalCommittee Proposals (r:1 w:1) - /// Proof Skipped: TechnicalCommittee Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// The range of component `b` is `[2, 1024]`. - /// The range of component `m` is `[4, 100]`. - /// The range of component `p` is `[1, 100]`. - /// The range of component `b` is `[2, 1024]`. - /// The range of component `m` is `[4, 100]`. - /// The range of component `p` is `[1, 100]`. - fn close_approved(b: u32, m: u32, p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `825 + b * (1 ±0) + m * (64 ±0) + p * (40 ±0)` - // Estimated: `14770 + b * (5 ±0) + m * (330 ±0) + p * (200 ±0)` - // Minimum execution time: 44_068_000 picoseconds. - Weight::from_parts(44_673_420, 0) - .saturating_add(Weight::from_parts(0, 14770)) - // Standard Error: 59 - .saturating_add(Weight::from_parts(1_779, 0).saturating_mul(b.into())) - // Standard Error: 625 - .saturating_add(Weight::from_parts(17_794, 0).saturating_mul(m.into())) - // Standard Error: 609 - .saturating_add(Weight::from_parts(134_062, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(5)) - .saturating_add(T::DbWeight::get().writes(3)) - .saturating_add(Weight::from_parts(0, 5).saturating_mul(b.into())) - .saturating_add(Weight::from_parts(0, 330).saturating_mul(m.into())) - .saturating_add(Weight::from_parts(0, 200).saturating_mul(p.into())) - } - /// Storage: TechnicalCommittee Proposals (r:1 w:1) - /// Proof Skipped: TechnicalCommittee Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: TechnicalCommittee Voting (r:0 w:1) - /// Proof Skipped: TechnicalCommittee Voting (max_values: None, max_size: None, mode: Measured) - /// Storage: TechnicalCommittee ProposalOf (r:0 w:1) - /// Proof Skipped: TechnicalCommittee ProposalOf (max_values: None, max_size: None, mode: Measured) - /// The range of component `p` is `[1, 100]`. - /// The range of component `p` is `[1, 100]`. - fn disapprove_proposal(p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `332 + p * (32 ±0)` - // Estimated: `2481 + p * (96 ±0)` - // Minimum execution time: 15_528_000 picoseconds. - Weight::from_parts(17_434_864, 0) - .saturating_add(Weight::from_parts(0, 2481)) - // Standard Error: 405 - .saturating_add(Weight::from_parts(111_909, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(3)) - .saturating_add(Weight::from_parts(0, 96).saturating_mul(p.into())) - } -} diff --git a/relay/kusama/src/weights/pallet_democracy.rs b/relay/kusama/src/weights/pallet_democracy.rs deleted file mode 100644 index 794c8c8159..0000000000 --- a/relay/kusama/src/weights/pallet_democracy.rs +++ /dev/null @@ -1,513 +0,0 @@ -// Copyright (C) Parity Technologies (UK) Ltd. -// This file is part of Polkadot. - -// Polkadot is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// Polkadot is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with Polkadot. If not, see . -//! Autogenerated weights for `pallet_democracy` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-03-15, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `bm5`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("kusama-dev"), DB CACHE: 1024 - -// Executed Command: -// ./target/production/polkadot -// benchmark -// pallet -// --chain=kusama-dev -// --steps=50 -// --repeat=20 -// --pallet=pallet_democracy -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --header=./file_header.txt -// --output=./runtime/kusama/src/weights/ - -#![cfg_attr(rustfmt, rustfmt_skip)] -#![allow(unused_parens)] -#![allow(unused_imports)] - -use frame_support::{traits::Get, weights::Weight}; -use sp_std::marker::PhantomData; - -/// Weight functions for `pallet_democracy`. -pub struct WeightInfo(PhantomData); -impl pallet_democracy::WeightInfo for WeightInfo { - /// Storage: Democracy PublicPropCount (r:1 w:1) - /// Proof: Democracy PublicPropCount (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: Democracy PublicProps (r:1 w:1) - /// Proof: Democracy PublicProps (max_values: Some(1), max_size: Some(16702), added: 17197, mode: MaxEncodedLen) - /// Storage: Democracy Blacklist (r:1 w:0) - /// Proof: Democracy Blacklist (max_values: None, max_size: Some(3238), added: 5713, mode: MaxEncodedLen) - /// Storage: Democracy DepositOf (r:0 w:1) - /// Proof: Democracy DepositOf (max_values: None, max_size: Some(3230), added: 5705, mode: MaxEncodedLen) - fn propose() -> Weight { - // Proof Size summary in bytes: - // Measured: `4768` - // Estimated: `26379` - // Minimum execution time: 35_098_000 picoseconds. - Weight::from_parts(35_696_000, 0) - .saturating_add(Weight::from_parts(0, 26379)) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(3)) - } - /// Storage: Democracy DepositOf (r:1 w:1) - /// Proof: Democracy DepositOf (max_values: None, max_size: Some(3230), added: 5705, mode: MaxEncodedLen) - fn second() -> Weight { - // Proof Size summary in bytes: - // Measured: `3523` - // Estimated: `6695` - // Minimum execution time: 32_218_000 picoseconds. - Weight::from_parts(32_458_000, 0) - .saturating_add(Weight::from_parts(0, 6695)) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: Democracy ReferendumInfoOf (r:1 w:1) - /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) - /// Storage: Democracy VotingOf (r:1 w:1) - /// Proof: Democracy VotingOf (max_values: None, max_size: Some(3795), added: 6270, mode: MaxEncodedLen) - /// Storage: Balances Locks (r:1 w:1) - /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) - fn vote_new() -> Weight { - // Proof Size summary in bytes: - // Measured: `3437` - // Estimated: `15690` - // Minimum execution time: 46_641_000 picoseconds. - Weight::from_parts(47_324_000, 0) - .saturating_add(Weight::from_parts(0, 15690)) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(3)) - } - /// Storage: Democracy ReferendumInfoOf (r:1 w:1) - /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) - /// Storage: Democracy VotingOf (r:1 w:1) - /// Proof: Democracy VotingOf (max_values: None, max_size: Some(3795), added: 6270, mode: MaxEncodedLen) - /// Storage: Balances Locks (r:1 w:1) - /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) - fn vote_existing() -> Weight { - // Proof Size summary in bytes: - // Measured: `3459` - // Estimated: `15690` - // Minimum execution time: 47_172_000 picoseconds. - Weight::from_parts(47_732_000, 0) - .saturating_add(Weight::from_parts(0, 15690)) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(3)) - } - /// Storage: Democracy ReferendumInfoOf (r:1 w:1) - /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) - /// Storage: Democracy Cancellations (r:1 w:1) - /// Proof: Democracy Cancellations (max_values: None, max_size: Some(33), added: 2508, mode: MaxEncodedLen) - /// Storage: Democracy MetadataOf (r:1 w:1) - /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) - fn emergency_cancel() -> Weight { - // Proof Size summary in bytes: - // Measured: `333` - // Estimated: `10682` - // Minimum execution time: 25_744_000 picoseconds. - Weight::from_parts(26_226_000, 0) - .saturating_add(Weight::from_parts(0, 10682)) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(3)) - } - /// Storage: Democracy PublicProps (r:1 w:1) - /// Proof: Democracy PublicProps (max_values: Some(1), max_size: Some(16702), added: 17197, mode: MaxEncodedLen) - /// Storage: Democracy DepositOf (r:1 w:1) - /// Proof: Democracy DepositOf (max_values: None, max_size: Some(3230), added: 5705, mode: MaxEncodedLen) - /// Storage: System Account (r:1 w:1) - /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) - /// Storage: Democracy MetadataOf (r:3 w:1) - /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) - /// Storage: Democracy NextExternal (r:1 w:1) - /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) - /// Storage: Democracy ReferendumInfoOf (r:1 w:1) - /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) - /// Storage: Democracy Blacklist (r:0 w:1) - /// Proof: Democracy Blacklist (max_values: None, max_size: Some(3238), added: 5713, mode: MaxEncodedLen) - fn blacklist() -> Weight { - // Proof Size summary in bytes: - // Measured: `5877` - // Estimated: `42332` - // Minimum execution time: 88_365_000 picoseconds. - Weight::from_parts(90_080_000, 0) - .saturating_add(Weight::from_parts(0, 42332)) - .saturating_add(T::DbWeight::get().reads(8)) - .saturating_add(T::DbWeight::get().writes(7)) - } - /// Storage: Democracy NextExternal (r:1 w:1) - /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) - /// Storage: Democracy Blacklist (r:1 w:0) - /// Proof: Democracy Blacklist (max_values: None, max_size: Some(3238), added: 5713, mode: MaxEncodedLen) - fn external_propose() -> Weight { - // Proof Size summary in bytes: - // Measured: `3383` - // Estimated: `8320` - // Minimum execution time: 12_868_000 picoseconds. - Weight::from_parts(13_178_000, 0) - .saturating_add(Weight::from_parts(0, 8320)) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: Democracy NextExternal (r:0 w:1) - /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) - fn external_propose_majority() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 3_714_000 picoseconds. - Weight::from_parts(3_895_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: Democracy NextExternal (r:0 w:1) - /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) - fn external_propose_default() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 3_565_000 picoseconds. - Weight::from_parts(3_831_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: Democracy NextExternal (r:1 w:1) - /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) - /// Storage: Democracy ReferendumCount (r:1 w:1) - /// Proof: Democracy ReferendumCount (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: Democracy MetadataOf (r:1 w:2) - /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) - /// Storage: Democracy ReferendumInfoOf (r:0 w:1) - /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) - fn fast_track() -> Weight { - // Proof Size summary in bytes: - // Measured: `253` - // Estimated: `6624` - // Minimum execution time: 26_453_000 picoseconds. - Weight::from_parts(26_938_000, 0) - .saturating_add(Weight::from_parts(0, 6624)) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(5)) - } - /// Storage: Democracy NextExternal (r:1 w:1) - /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) - /// Storage: Democracy Blacklist (r:1 w:1) - /// Proof: Democracy Blacklist (max_values: None, max_size: Some(3238), added: 5713, mode: MaxEncodedLen) - /// Storage: Democracy MetadataOf (r:1 w:1) - /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) - fn veto_external() -> Weight { - // Proof Size summary in bytes: - // Measured: `3486` - // Estimated: `11838` - // Minimum execution time: 30_869_000 picoseconds. - Weight::from_parts(31_397_000, 0) - .saturating_add(Weight::from_parts(0, 11838)) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(3)) - } - /// Storage: Democracy PublicProps (r:1 w:1) - /// Proof: Democracy PublicProps (max_values: Some(1), max_size: Some(16702), added: 17197, mode: MaxEncodedLen) - /// Storage: Democracy DepositOf (r:1 w:1) - /// Proof: Democracy DepositOf (max_values: None, max_size: Some(3230), added: 5705, mode: MaxEncodedLen) - /// Storage: System Account (r:1 w:1) - /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) - /// Storage: Democracy MetadataOf (r:1 w:1) - /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) - fn cancel_proposal() -> Weight { - // Proof Size summary in bytes: - // Measured: `5788` - // Estimated: `31993` - // Minimum execution time: 72_692_000 picoseconds. - Weight::from_parts(73_692_000, 0) - .saturating_add(Weight::from_parts(0, 31993)) - .saturating_add(T::DbWeight::get().reads(4)) - .saturating_add(T::DbWeight::get().writes(4)) - } - /// Storage: Democracy MetadataOf (r:1 w:1) - /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) - /// Storage: Democracy ReferendumInfoOf (r:0 w:1) - /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) - fn cancel_referendum() -> Weight { - // Proof Size summary in bytes: - // Measured: `238` - // Estimated: `3518` - // Minimum execution time: 19_506_000 picoseconds. - Weight::from_parts(19_823_000, 0) - .saturating_add(Weight::from_parts(0, 3518)) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(2)) - } - /// Storage: Democracy LowestUnbaked (r:1 w:1) - /// Proof: Democracy LowestUnbaked (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: Democracy ReferendumCount (r:1 w:0) - /// Proof: Democracy ReferendumCount (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: Democracy ReferendumInfoOf (r:99 w:0) - /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) - /// The range of component `r` is `[0, 99]`. - fn on_initialize_base(r: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `211 + r * (86 ±0)` - // Estimated: `3968 + r * (2676 ±0)` - // Minimum execution time: 6_019_000 picoseconds. - Weight::from_parts(9_632_674, 0) - .saturating_add(Weight::from_parts(0, 3968)) - // Standard Error: 6_651 - .saturating_add(Weight::from_parts(2_769_264, 0).saturating_mul(r.into())) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r.into()))) - .saturating_add(T::DbWeight::get().writes(1)) - .saturating_add(Weight::from_parts(0, 2676).saturating_mul(r.into())) - } - /// Storage: Democracy LowestUnbaked (r:1 w:1) - /// Proof: Democracy LowestUnbaked (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: Democracy ReferendumCount (r:1 w:0) - /// Proof: Democracy ReferendumCount (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: Democracy LastTabledWasExternal (r:1 w:0) - /// Proof: Democracy LastTabledWasExternal (max_values: Some(1), max_size: Some(1), added: 496, mode: MaxEncodedLen) - /// Storage: Democracy NextExternal (r:1 w:0) - /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) - /// Storage: Democracy PublicProps (r:1 w:0) - /// Proof: Democracy PublicProps (max_values: Some(1), max_size: Some(16702), added: 17197, mode: MaxEncodedLen) - /// Storage: Democracy ReferendumInfoOf (r:99 w:0) - /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) - /// The range of component `r` is `[0, 99]`. - fn on_initialize_base_with_launch_period(r: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `211 + r * (86 ±0)` - // Estimated: `25258 + r * (2676 ±0)` - // Minimum execution time: 9_143_000 picoseconds. - Weight::from_parts(12_247_629, 0) - .saturating_add(Weight::from_parts(0, 25258)) - // Standard Error: 6_077 - .saturating_add(Weight::from_parts(2_764_547, 0).saturating_mul(r.into())) - .saturating_add(T::DbWeight::get().reads(5)) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r.into()))) - .saturating_add(T::DbWeight::get().writes(1)) - .saturating_add(Weight::from_parts(0, 2676).saturating_mul(r.into())) - } - /// Storage: Democracy VotingOf (r:3 w:3) - /// Proof: Democracy VotingOf (max_values: None, max_size: Some(3795), added: 6270, mode: MaxEncodedLen) - /// Storage: Democracy ReferendumInfoOf (r:99 w:99) - /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) - /// Storage: Balances Locks (r:1 w:1) - /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) - /// The range of component `r` is `[0, 99]`. - fn delegate(r: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `797 + r * (108 ±0)` - // Estimated: `25554 + r * (2676 ±0)` - // Minimum execution time: 41_153_000 picoseconds. - Weight::from_parts(42_787_487, 0) - .saturating_add(Weight::from_parts(0, 25554)) - // Standard Error: 7_883 - .saturating_add(Weight::from_parts(3_862_521, 0).saturating_mul(r.into())) - .saturating_add(T::DbWeight::get().reads(4)) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r.into()))) - .saturating_add(T::DbWeight::get().writes(4)) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(r.into()))) - .saturating_add(Weight::from_parts(0, 2676).saturating_mul(r.into())) - } - /// Storage: Democracy VotingOf (r:2 w:2) - /// Proof: Democracy VotingOf (max_values: None, max_size: Some(3795), added: 6270, mode: MaxEncodedLen) - /// Storage: Democracy ReferendumInfoOf (r:99 w:99) - /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) - /// The range of component `r` is `[0, 99]`. - fn undelegate(r: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `460 + r * (108 ±0)` - // Estimated: `14520 + r * (2676 ±0)` - // Minimum execution time: 20_767_000 picoseconds. - Weight::from_parts(21_768_239, 0) - .saturating_add(Weight::from_parts(0, 14520)) - // Standard Error: 9_791 - .saturating_add(Weight::from_parts(3_862_103, 0).saturating_mul(r.into())) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r.into()))) - .saturating_add(T::DbWeight::get().writes(2)) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(r.into()))) - .saturating_add(Weight::from_parts(0, 2676).saturating_mul(r.into())) - } - /// Storage: Democracy PublicProps (r:0 w:1) - /// Proof: Democracy PublicProps (max_values: Some(1), max_size: Some(16702), added: 17197, mode: MaxEncodedLen) - fn clear_public_proposals() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 3_663_000 picoseconds. - Weight::from_parts(3_798_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: Democracy VotingOf (r:1 w:1) - /// Proof: Democracy VotingOf (max_values: None, max_size: Some(3795), added: 6270, mode: MaxEncodedLen) - /// Storage: Balances Locks (r:1 w:1) - /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) - /// Storage: System Account (r:1 w:1) - /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) - /// The range of component `r` is `[0, 99]`. - fn unlock_remove(r: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `530` - // Estimated: `15617` - // Minimum execution time: 19_923_000 picoseconds. - Weight::from_parts(25_945_279, 0) - .saturating_add(Weight::from_parts(0, 15617)) - // Standard Error: 1_366 - .saturating_add(Weight::from_parts(22_003, 0).saturating_mul(r.into())) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(3)) - } - /// Storage: Democracy VotingOf (r:1 w:1) - /// Proof: Democracy VotingOf (max_values: None, max_size: Some(3795), added: 6270, mode: MaxEncodedLen) - /// Storage: Balances Locks (r:1 w:1) - /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) - /// Storage: System Account (r:1 w:1) - /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) - /// The range of component `r` is `[0, 99]`. - fn unlock_set(r: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `531 + r * (22 ±0)` - // Estimated: `15617` - // Minimum execution time: 24_393_000 picoseconds. - Weight::from_parts(25_690_593, 0) - .saturating_add(Weight::from_parts(0, 15617)) - // Standard Error: 553 - .saturating_add(Weight::from_parts(59_042, 0).saturating_mul(r.into())) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(3)) - } - /// Storage: Democracy ReferendumInfoOf (r:1 w:1) - /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) - /// Storage: Democracy VotingOf (r:1 w:1) - /// Proof: Democracy VotingOf (max_values: None, max_size: Some(3795), added: 6270, mode: MaxEncodedLen) - /// The range of component `r` is `[1, 100]`. - fn remove_vote(r: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `695 + r * (26 ±0)` - // Estimated: `10926` - // Minimum execution time: 15_551_000 picoseconds. - Weight::from_parts(17_809_948, 0) - .saturating_add(Weight::from_parts(0, 10926)) - // Standard Error: 1_907 - .saturating_add(Weight::from_parts(86_496, 0).saturating_mul(r.into())) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(2)) - } - /// Storage: Democracy ReferendumInfoOf (r:1 w:1) - /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) - /// Storage: Democracy VotingOf (r:1 w:1) - /// Proof: Democracy VotingOf (max_values: None, max_size: Some(3795), added: 6270, mode: MaxEncodedLen) - /// The range of component `r` is `[1, 100]`. - fn remove_other_vote(r: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `695 + r * (26 ±0)` - // Estimated: `10926` - // Minimum execution time: 16_027_000 picoseconds. - Weight::from_parts(17_860_077, 0) - .saturating_add(Weight::from_parts(0, 10926)) - // Standard Error: 1_950 - .saturating_add(Weight::from_parts(87_722, 0).saturating_mul(r.into())) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(2)) - } - /// Storage: Democracy NextExternal (r:1 w:0) - /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) - /// Storage: Preimage StatusFor (r:1 w:0) - /// Proof: Preimage StatusFor (max_values: None, max_size: Some(91), added: 2566, mode: MaxEncodedLen) - /// Storage: Democracy MetadataOf (r:0 w:1) - /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) - fn set_external_metadata() -> Weight { - // Proof Size summary in bytes: - // Measured: `323` - // Estimated: `5173` - // Minimum execution time: 17_551_000 picoseconds. - Weight::from_parts(17_776_000, 0) - .saturating_add(Weight::from_parts(0, 5173)) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: Democracy NextExternal (r:1 w:0) - /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) - /// Storage: Democracy MetadataOf (r:1 w:1) - /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) - fn clear_external_metadata() -> Weight { - // Proof Size summary in bytes: - // Measured: `253` - // Estimated: `5135` - // Minimum execution time: 16_020_000 picoseconds. - Weight::from_parts(16_477_000, 0) - .saturating_add(Weight::from_parts(0, 5135)) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: Democracy PublicProps (r:1 w:0) - /// Proof: Democracy PublicProps (max_values: Some(1), max_size: Some(16702), added: 17197, mode: MaxEncodedLen) - /// Storage: Preimage StatusFor (r:1 w:0) - /// Proof: Preimage StatusFor (max_values: None, max_size: Some(91), added: 2566, mode: MaxEncodedLen) - /// Storage: Democracy MetadataOf (r:0 w:1) - /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) - fn set_proposal_metadata() -> Weight { - // Proof Size summary in bytes: - // Measured: `4855` - // Estimated: `21743` - // Minimum execution time: 33_144_000 picoseconds. - Weight::from_parts(33_457_000, 0) - .saturating_add(Weight::from_parts(0, 21743)) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: Democracy PublicProps (r:1 w:0) - /// Proof: Democracy PublicProps (max_values: Some(1), max_size: Some(16702), added: 17197, mode: MaxEncodedLen) - /// Storage: Democracy MetadataOf (r:1 w:1) - /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) - fn clear_proposal_metadata() -> Weight { - // Proof Size summary in bytes: - // Measured: `4789` - // Estimated: `21705` - // Minimum execution time: 31_022_000 picoseconds. - Weight::from_parts(31_534_000, 0) - .saturating_add(Weight::from_parts(0, 21705)) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: Preimage StatusFor (r:1 w:0) - /// Proof: Preimage StatusFor (max_values: None, max_size: Some(91), added: 2566, mode: MaxEncodedLen) - /// Storage: Democracy MetadataOf (r:0 w:1) - /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) - fn set_referendum_metadata() -> Weight { - // Proof Size summary in bytes: - // Measured: `144` - // Estimated: `3556` - // Minimum execution time: 14_512_000 picoseconds. - Weight::from_parts(14_769_000, 0) - .saturating_add(Weight::from_parts(0, 3556)) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: Democracy ReferendumInfoOf (r:1 w:0) - /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) - /// Storage: Democracy MetadataOf (r:1 w:1) - /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) - fn clear_referendum_metadata() -> Weight { - // Proof Size summary in bytes: - // Measured: `269` - // Estimated: `7184` - // Minimum execution time: 17_966_000 picoseconds. - Weight::from_parts(18_270_000, 0) - .saturating_add(Weight::from_parts(0, 7184)) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(1)) - } -} diff --git a/relay/kusama/src/weights/pallet_elections_phragmen.rs b/relay/kusama/src/weights/pallet_elections_phragmen.rs deleted file mode 100644 index a5c1c4dfd3..0000000000 --- a/relay/kusama/src/weights/pallet_elections_phragmen.rs +++ /dev/null @@ -1,303 +0,0 @@ -// Copyright (C) Parity Technologies (UK) Ltd. -// This file is part of Polkadot. - -// Polkadot is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// Polkadot is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with Polkadot. If not, see . -//! Autogenerated weights for `pallet_elections_phragmen` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-03-16, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `bm5`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("kusama-dev"), DB CACHE: 1024 - -// Executed Command: -// ./target/production/polkadot -// benchmark -// pallet -// --chain=kusama-dev -// --steps=50 -// --repeat=20 -// --pallet=pallet_elections_phragmen -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --header=./file_header.txt -// --output=./runtime/kusama/src/weights/ - -#![cfg_attr(rustfmt, rustfmt_skip)] -#![allow(unused_parens)] -#![allow(unused_imports)] - -use frame_support::{traits::Get, weights::Weight}; -use sp_std::marker::PhantomData; - -/// Weight functions for `pallet_elections_phragmen`. -pub struct WeightInfo(PhantomData); -impl pallet_elections_phragmen::WeightInfo for WeightInfo { - /// Storage: PhragmenElection Candidates (r:1 w:0) - /// Proof Skipped: PhragmenElection Candidates (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: PhragmenElection Members (r:1 w:0) - /// Proof Skipped: PhragmenElection Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: PhragmenElection RunnersUp (r:1 w:0) - /// Proof Skipped: PhragmenElection RunnersUp (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: PhragmenElection Voting (r:1 w:1) - /// Proof Skipped: PhragmenElection Voting (max_values: None, max_size: None, mode: Measured) - /// Storage: Balances Locks (r:1 w:1) - /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) - /// The range of component `v` is `[1, 16]`. - fn vote_equal(v: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `403 + v * (80 ±0)` - // Estimated: `14292 + v * (320 ±0)` - // Minimum execution time: 27_353_000 picoseconds. - Weight::from_parts(28_103_445, 0) - .saturating_add(Weight::from_parts(0, 14292)) - // Standard Error: 4_556 - .saturating_add(Weight::from_parts(117_766, 0).saturating_mul(v.into())) - .saturating_add(T::DbWeight::get().reads(5)) - .saturating_add(T::DbWeight::get().writes(2)) - .saturating_add(Weight::from_parts(0, 320).saturating_mul(v.into())) - } - /// Storage: PhragmenElection Candidates (r:1 w:0) - /// Proof Skipped: PhragmenElection Candidates (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: PhragmenElection Members (r:1 w:0) - /// Proof Skipped: PhragmenElection Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: PhragmenElection RunnersUp (r:1 w:0) - /// Proof Skipped: PhragmenElection RunnersUp (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: PhragmenElection Voting (r:1 w:1) - /// Proof Skipped: PhragmenElection Voting (max_values: None, max_size: None, mode: Measured) - /// Storage: Balances Locks (r:1 w:1) - /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) - /// The range of component `v` is `[2, 16]`. - fn vote_more(v: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `371 + v * (80 ±0)` - // Estimated: `14164 + v * (320 ±0)` - // Minimum execution time: 36_885_000 picoseconds. - Weight::from_parts(37_769_975, 0) - .saturating_add(Weight::from_parts(0, 14164)) - // Standard Error: 6_586 - .saturating_add(Weight::from_parts(123_567, 0).saturating_mul(v.into())) - .saturating_add(T::DbWeight::get().reads(5)) - .saturating_add(T::DbWeight::get().writes(2)) - .saturating_add(Weight::from_parts(0, 320).saturating_mul(v.into())) - } - /// Storage: PhragmenElection Candidates (r:1 w:0) - /// Proof Skipped: PhragmenElection Candidates (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: PhragmenElection Members (r:1 w:0) - /// Proof Skipped: PhragmenElection Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: PhragmenElection RunnersUp (r:1 w:0) - /// Proof Skipped: PhragmenElection RunnersUp (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: PhragmenElection Voting (r:1 w:1) - /// Proof Skipped: PhragmenElection Voting (max_values: None, max_size: None, mode: Measured) - /// Storage: Balances Locks (r:1 w:1) - /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) - /// The range of component `v` is `[2, 16]`. - fn vote_less(v: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `403 + v * (80 ±0)` - // Estimated: `14292 + v * (320 ±0)` - // Minimum execution time: 36_610_000 picoseconds. - Weight::from_parts(37_524_808, 0) - .saturating_add(Weight::from_parts(0, 14292)) - // Standard Error: 6_164 - .saturating_add(Weight::from_parts(147_944, 0).saturating_mul(v.into())) - .saturating_add(T::DbWeight::get().reads(5)) - .saturating_add(T::DbWeight::get().writes(2)) - .saturating_add(Weight::from_parts(0, 320).saturating_mul(v.into())) - } - /// Storage: PhragmenElection Voting (r:1 w:1) - /// Proof Skipped: PhragmenElection Voting (max_values: None, max_size: None, mode: Measured) - /// Storage: Balances Locks (r:1 w:1) - /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) - fn remove_voter() -> Weight { - // Proof Size summary in bytes: - // Measured: `925` - // Estimated: `9154` - // Minimum execution time: 33_052_000 picoseconds. - Weight::from_parts(33_677_000, 0) - .saturating_add(Weight::from_parts(0, 9154)) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(2)) - } - /// Storage: PhragmenElection Candidates (r:1 w:1) - /// Proof Skipped: PhragmenElection Candidates (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: PhragmenElection Members (r:1 w:0) - /// Proof Skipped: PhragmenElection Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: PhragmenElection RunnersUp (r:1 w:0) - /// Proof Skipped: PhragmenElection RunnersUp (max_values: Some(1), max_size: None, mode: Measured) - /// The range of component `c` is `[1, 1000]`. - fn submit_candidacy(c: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `2712 + c * (48 ±0)` - // Estimated: `12585 + c * (144 ±0)` - // Minimum execution time: 32_163_000 picoseconds. - Weight::from_parts(24_757_419, 0) - .saturating_add(Weight::from_parts(0, 12585)) - // Standard Error: 902 - .saturating_add(Weight::from_parts(79_765, 0).saturating_mul(c.into())) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(1)) - .saturating_add(Weight::from_parts(0, 144).saturating_mul(c.into())) - } - /// Storage: PhragmenElection Candidates (r:1 w:1) - /// Proof Skipped: PhragmenElection Candidates (max_values: Some(1), max_size: None, mode: Measured) - /// The range of component `c` is `[1, 1000]`. - fn renounce_candidacy_candidate(c: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `284 + c * (48 ±0)` - // Estimated: `1756 + c * (48 ±0)` - // Minimum execution time: 24_805_000 picoseconds. - Weight::from_parts(17_940_635, 0) - .saturating_add(Weight::from_parts(0, 1756)) - // Standard Error: 888 - .saturating_add(Weight::from_parts(59_369, 0).saturating_mul(c.into())) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - .saturating_add(Weight::from_parts(0, 48).saturating_mul(c.into())) - } - /// Storage: PhragmenElection Members (r:1 w:1) - /// Proof Skipped: PhragmenElection Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: PhragmenElection RunnersUp (r:1 w:1) - /// Proof Skipped: PhragmenElection RunnersUp (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Council Prime (r:1 w:1) - /// Proof Skipped: Council Prime (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Council Proposals (r:1 w:0) - /// Proof Skipped: Council Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Council Members (r:0 w:1) - /// Proof Skipped: Council Members (max_values: Some(1), max_size: None, mode: Measured) - fn renounce_candidacy_members() -> Weight { - // Proof Size summary in bytes: - // Measured: `2986` - // Estimated: `20870` - // Minimum execution time: 42_908_000 picoseconds. - Weight::from_parts(43_409_000, 0) - .saturating_add(Weight::from_parts(0, 20870)) - .saturating_add(T::DbWeight::get().reads(4)) - .saturating_add(T::DbWeight::get().writes(4)) - } - /// Storage: PhragmenElection RunnersUp (r:1 w:1) - /// Proof Skipped: PhragmenElection RunnersUp (max_values: Some(1), max_size: None, mode: Measured) - fn renounce_candidacy_runners_up() -> Weight { - // Proof Size summary in bytes: - // Measured: `1681` - // Estimated: `3166` - // Minimum execution time: 27_419_000 picoseconds. - Weight::from_parts(27_912_000, 0) - .saturating_add(Weight::from_parts(0, 3166)) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: Benchmark Override (r:0 w:0) - /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) - fn remove_member_without_replacement() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 2_000_000_000_000 picoseconds. - Weight::from_parts(2_000_000_000_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - /// Storage: PhragmenElection Members (r:1 w:1) - /// Proof Skipped: PhragmenElection Members (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(128), added: 2603, mode: MaxEncodedLen) - /// Storage: PhragmenElection RunnersUp (r:1 w:1) - /// Proof Skipped: PhragmenElection RunnersUp (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Council Prime (r:1 w:1) - /// Proof Skipped: Council Prime (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Council Proposals (r:1 w:0) - /// Proof Skipped: Council Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Council Members (r:0 w:1) - /// Proof Skipped: Council Members (max_values: Some(1), max_size: None, mode: Measured) - fn remove_member_with_replacement() -> Weight { - // Proof Size summary in bytes: - // Measured: `2986` - // Estimated: `24463` - // Minimum execution time: 57_465_000 picoseconds. - Weight::from_parts(58_107_000, 0) - .saturating_add(Weight::from_parts(0, 24463)) - .saturating_add(T::DbWeight::get().reads(5)) - .saturating_add(T::DbWeight::get().writes(5)) - } - /// Storage: PhragmenElection Voting (r:10001 w:10000) - /// Proof Skipped: PhragmenElection Voting (max_values: None, max_size: None, mode: Measured) - /// Storage: PhragmenElection Members (r:1 w:0) - /// Proof Skipped: PhragmenElection Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: PhragmenElection RunnersUp (r:1 w:0) - /// Proof Skipped: PhragmenElection RunnersUp (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: PhragmenElection Candidates (r:1 w:0) - /// Proof Skipped: PhragmenElection Candidates (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Balances Locks (r:10000 w:10000) - /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) - /// Storage: System Account (r:10000 w:10000) - /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) - /// The range of component `v` is `[5000, 10000]`. - /// The range of component `d` is `[0, 5000]`. - fn clean_defunct_voters(v: u32, _d: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `35989 + v * (808 ±0)` - // Estimated: `154956 + v * (12084 ±0)` - // Minimum execution time: 319_677_473_000 picoseconds. - Weight::from_parts(320_382_361_000, 0) - .saturating_add(Weight::from_parts(0, 154956)) - // Standard Error: 270_292 - .saturating_add(Weight::from_parts(38_671_603, 0).saturating_mul(v.into())) - .saturating_add(T::DbWeight::get().reads(4)) - .saturating_add(T::DbWeight::get().reads((3_u64).saturating_mul(v.into()))) - .saturating_add(T::DbWeight::get().writes((3_u64).saturating_mul(v.into()))) - .saturating_add(Weight::from_parts(0, 12084).saturating_mul(v.into())) - } - /// Storage: PhragmenElection Candidates (r:1 w:1) - /// Proof Skipped: PhragmenElection Candidates (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: PhragmenElection Members (r:1 w:1) - /// Proof Skipped: PhragmenElection Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: PhragmenElection RunnersUp (r:1 w:1) - /// Proof Skipped: PhragmenElection RunnersUp (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: PhragmenElection Voting (r:10001 w:0) - /// Proof Skipped: PhragmenElection Voting (max_values: None, max_size: None, mode: Measured) - /// Storage: Council Proposals (r:1 w:0) - /// Proof Skipped: Council Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: System Account (r:962 w:962) - /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) - /// Storage: PhragmenElection ElectionRounds (r:1 w:1) - /// Proof Skipped: PhragmenElection ElectionRounds (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Council Members (r:0 w:1) - /// Proof Skipped: Council Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Council Prime (r:0 w:1) - /// Proof Skipped: Council Prime (max_values: Some(1), max_size: None, mode: Measured) - /// The range of component `c` is `[1, 1000]`. - /// The range of component `v` is `[1, 10000]`. - /// The range of component `e` is `[10000, 160000]`. - fn election_phragmen(c: u32, v: u32, e: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `0 + v * (607 ±0) + e * (28 ±0)` - // Estimated: `4839313 + v * (5481 ±4) + e * (123 ±0) + c * (2560 ±0)` - // Minimum execution time: 30_795_431_000 picoseconds. - Weight::from_parts(30_861_700_000, 0) - .saturating_add(Weight::from_parts(0, 4839313)) - // Standard Error: 482_348 - .saturating_add(Weight::from_parts(37_626_560, 0).saturating_mul(v.into())) - // Standard Error: 30_954 - .saturating_add(Weight::from_parts(2_016_889, 0).saturating_mul(e.into())) - .saturating_add(T::DbWeight::get().reads(265)) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(c.into()))) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(v.into()))) - .saturating_add(T::DbWeight::get().writes(6)) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(c.into()))) - .saturating_add(Weight::from_parts(0, 5481).saturating_mul(v.into())) - .saturating_add(Weight::from_parts(0, 123).saturating_mul(e.into())) - .saturating_add(Weight::from_parts(0, 2560).saturating_mul(c.into())) - } -} diff --git a/relay/kusama/src/weights/pallet_membership.rs b/relay/kusama/src/weights/pallet_membership.rs deleted file mode 100644 index 6b144bc879..0000000000 --- a/relay/kusama/src/weights/pallet_membership.rs +++ /dev/null @@ -1,202 +0,0 @@ -// Copyright (C) Parity Technologies (UK) Ltd. -// This file is part of Polkadot. - -// Polkadot is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// Polkadot is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with Polkadot. If not, see . -//! Autogenerated weights for `pallet_membership` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-03-16, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `bm5`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("kusama-dev"), DB CACHE: 1024 - -// Executed Command: -// ./target/production/polkadot -// benchmark -// pallet -// --chain=kusama-dev -// --steps=50 -// --repeat=20 -// --pallet=pallet_membership -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --header=./file_header.txt -// --output=./runtime/kusama/src/weights/ - -#![cfg_attr(rustfmt, rustfmt_skip)] -#![allow(unused_parens)] -#![allow(unused_imports)] - -use frame_support::{traits::Get, weights::Weight}; -use sp_std::marker::PhantomData; - -/// Weight functions for `pallet_membership`. -pub struct WeightInfo(PhantomData); -impl pallet_membership::WeightInfo for WeightInfo { - /// Storage: TechnicalMembership Members (r:1 w:1) - /// Proof: TechnicalMembership Members (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) - /// Storage: TechnicalCommittee Proposals (r:1 w:0) - /// Proof Skipped: TechnicalCommittee Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: TechnicalCommittee Members (r:0 w:1) - /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: TechnicalCommittee Prime (r:0 w:1) - /// Proof Skipped: TechnicalCommittee Prime (max_values: Some(1), max_size: None, mode: Measured) - /// The range of component `m` is `[1, 99]`. - fn add_member(m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `208 + m * (64 ±0)` - // Estimated: `6793 + m * (192 ±0)` - // Minimum execution time: 15_847_000 picoseconds. - Weight::from_parts(16_597_325, 0) - .saturating_add(Weight::from_parts(0, 6793)) - // Standard Error: 411 - .saturating_add(Weight::from_parts(35_801, 0).saturating_mul(m.into())) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(3)) - .saturating_add(Weight::from_parts(0, 192).saturating_mul(m.into())) - } - /// Storage: TechnicalMembership Members (r:1 w:1) - /// Proof: TechnicalMembership Members (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) - /// Storage: TechnicalCommittee Proposals (r:1 w:0) - /// Proof Skipped: TechnicalCommittee Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: TechnicalMembership Prime (r:1 w:0) - /// Proof: TechnicalMembership Prime (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) - /// Storage: TechnicalCommittee Members (r:0 w:1) - /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: TechnicalCommittee Prime (r:0 w:1) - /// Proof Skipped: TechnicalCommittee Prime (max_values: Some(1), max_size: None, mode: Measured) - /// The range of component `m` is `[2, 100]`. - fn remove_member(m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `312 + m * (64 ±0)` - // Estimated: `8622 + m * (192 ±0)` - // Minimum execution time: 18_412_000 picoseconds. - Weight::from_parts(19_251_698, 0) - .saturating_add(Weight::from_parts(0, 8622)) - // Standard Error: 474 - .saturating_add(Weight::from_parts(32_206, 0).saturating_mul(m.into())) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(3)) - .saturating_add(Weight::from_parts(0, 192).saturating_mul(m.into())) - } - /// Storage: TechnicalMembership Members (r:1 w:1) - /// Proof: TechnicalMembership Members (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) - /// Storage: TechnicalCommittee Proposals (r:1 w:0) - /// Proof Skipped: TechnicalCommittee Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: TechnicalMembership Prime (r:1 w:0) - /// Proof: TechnicalMembership Prime (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) - /// Storage: TechnicalCommittee Members (r:0 w:1) - /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: TechnicalCommittee Prime (r:0 w:1) - /// Proof Skipped: TechnicalCommittee Prime (max_values: Some(1), max_size: None, mode: Measured) - /// The range of component `m` is `[2, 100]`. - fn swap_member(m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `312 + m * (64 ±0)` - // Estimated: `8622 + m * (192 ±0)` - // Minimum execution time: 18_502_000 picoseconds. - Weight::from_parts(19_583_888, 0) - .saturating_add(Weight::from_parts(0, 8622)) - // Standard Error: 619 - .saturating_add(Weight::from_parts(44_408, 0).saturating_mul(m.into())) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(3)) - .saturating_add(Weight::from_parts(0, 192).saturating_mul(m.into())) - } - /// Storage: TechnicalMembership Members (r:1 w:1) - /// Proof: TechnicalMembership Members (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) - /// Storage: TechnicalCommittee Proposals (r:1 w:0) - /// Proof Skipped: TechnicalCommittee Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: TechnicalMembership Prime (r:1 w:0) - /// Proof: TechnicalMembership Prime (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) - /// Storage: TechnicalCommittee Members (r:0 w:1) - /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: TechnicalCommittee Prime (r:0 w:1) - /// Proof Skipped: TechnicalCommittee Prime (max_values: Some(1), max_size: None, mode: Measured) - /// The range of component `m` is `[1, 100]`. - fn reset_member(m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `312 + m * (64 ±0)` - // Estimated: `8622 + m * (192 ±0)` - // Minimum execution time: 18_088_000 picoseconds. - Weight::from_parts(19_292_324, 0) - .saturating_add(Weight::from_parts(0, 8622)) - // Standard Error: 759 - .saturating_add(Weight::from_parts(162_348, 0).saturating_mul(m.into())) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(3)) - .saturating_add(Weight::from_parts(0, 192).saturating_mul(m.into())) - } - /// Storage: TechnicalMembership Members (r:1 w:1) - /// Proof: TechnicalMembership Members (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) - /// Storage: TechnicalCommittee Proposals (r:1 w:0) - /// Proof Skipped: TechnicalCommittee Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: TechnicalMembership Prime (r:1 w:1) - /// Proof: TechnicalMembership Prime (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) - /// Storage: TechnicalCommittee Members (r:0 w:1) - /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: TechnicalCommittee Prime (r:0 w:1) - /// Proof Skipped: TechnicalCommittee Prime (max_values: Some(1), max_size: None, mode: Measured) - /// The range of component `m` is `[1, 100]`. - fn change_key(m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `312 + m * (64 ±0)` - // Estimated: `8622 + m * (192 ±0)` - // Minimum execution time: 19_134_000 picoseconds. - Weight::from_parts(20_242_466, 0) - .saturating_add(Weight::from_parts(0, 8622)) - // Standard Error: 962 - .saturating_add(Weight::from_parts(47_779, 0).saturating_mul(m.into())) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(4)) - .saturating_add(Weight::from_parts(0, 192).saturating_mul(m.into())) - } - /// Storage: TechnicalMembership Members (r:1 w:0) - /// Proof: TechnicalMembership Members (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) - /// Storage: TechnicalMembership Prime (r:0 w:1) - /// Proof: TechnicalMembership Prime (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) - /// Storage: TechnicalCommittee Prime (r:0 w:1) - /// Proof Skipped: TechnicalCommittee Prime (max_values: Some(1), max_size: None, mode: Measured) - /// The range of component `m` is `[1, 100]`. - fn set_prime(m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `32 + m * (32 ±0)` - // Estimated: `4719 + m * (32 ±0)` - // Minimum execution time: 6_726_000 picoseconds. - Weight::from_parts(6_966_055, 0) - .saturating_add(Weight::from_parts(0, 4719)) - // Standard Error: 255 - .saturating_add(Weight::from_parts(13_950, 0).saturating_mul(m.into())) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(2)) - .saturating_add(Weight::from_parts(0, 32).saturating_mul(m.into())) - } - /// Storage: TechnicalMembership Prime (r:0 w:1) - /// Proof: TechnicalMembership Prime (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) - /// Storage: TechnicalCommittee Prime (r:0 w:1) - /// Proof Skipped: TechnicalCommittee Prime (max_values: Some(1), max_size: None, mode: Measured) - /// The range of component `m` is `[1, 100]`. - fn clear_prime(m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 3_010_000 picoseconds. - Weight::from_parts(3_196_429, 0) - .saturating_add(Weight::from_parts(0, 0)) - // Standard Error: 78 - .saturating_add(Weight::from_parts(471, 0).saturating_mul(m.into())) - .saturating_add(T::DbWeight::get().writes(2)) - } -} diff --git a/relay/kusama/src/weights/pallet_offences.rs b/relay/kusama/src/weights/pallet_offences.rs deleted file mode 100644 index cbffaeb124..0000000000 --- a/relay/kusama/src/weights/pallet_offences.rs +++ /dev/null @@ -1,217 +0,0 @@ -// Copyright (C) Parity Technologies (UK) Ltd. -// This file is part of Polkadot. - -// Polkadot is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// Polkadot is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with Polkadot. If not, see . - -//! Autogenerated weights for `pallet_offences` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-09-22, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `a3dce7bd4066`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` -//! WASM-EXECUTION: `Compiled`, CHAIN: `Some("spec-kusama.json")`, DB CACHE: 1024 - -// Executed Command: -// /builds/polkadot-sdk/target/production/polkadot -// benchmark -// pallet -// --chain=spec-kusama.json -// --pallet=pallet_offences -// --extrinsic= -// --output=/builds/runtimes/relay/kusama/src/weights -// --header=/builds/bench/header.txt -// --no-median-slopes -// --no-min-squares - -#![cfg_attr(rustfmt, rustfmt_skip)] -#![allow(unused_parens)] -#![allow(unused_imports)] -#![allow(missing_docs)] - -use frame_support::{traits::Get, weights::Weight}; -use core::marker::PhantomData; - -/// Weight functions for `pallet_offences`. -pub struct WeightInfo(PhantomData); -impl pallet_offences::WeightInfo for WeightInfo { - /// Storage: `Offences::ConcurrentReportsIndex` (r:1 w:1) - /// Proof: `Offences::ConcurrentReportsIndex` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// Storage: `Offences::Reports` (r:100 w:100) - /// Proof: `Offences::Reports` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// Storage: `Staking::SlashRewardFraction` (r:1 w:0) - /// Proof: `Staking::SlashRewardFraction` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `Staking::ActiveEra` (r:1 w:0) - /// Proof: `Staking::ActiveEra` (`max_values`: Some(1), `max_size`: Some(13), added: 508, mode: `MaxEncodedLen`) - /// Storage: `Staking::ErasStartSessionIndex` (r:1 w:0) - /// Proof: `Staking::ErasStartSessionIndex` (`max_values`: None, `max_size`: Some(16), added: 2491, mode: `MaxEncodedLen`) - /// Storage: `Staking::Invulnerables` (r:1 w:0) - /// Proof: `Staking::Invulnerables` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) - /// Storage: `Staking::ValidatorSlashInEra` (r:100 w:100) - /// Proof: `Staking::ValidatorSlashInEra` (`max_values`: None, `max_size`: Some(72), added: 2547, mode: `MaxEncodedLen`) - /// Storage: `Staking::SlashingSpans` (r:2500 w:2500) - /// Proof: `Staking::SlashingSpans` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// Storage: `Staking::SpanSlash` (r:2500 w:2500) - /// Proof: `Staking::SpanSlash` (`max_values`: None, `max_size`: Some(76), added: 2551, mode: `MaxEncodedLen`) - /// Storage: `Staking::Validators` (r:100 w:100) - /// Proof: `Staking::Validators` (`max_values`: None, `max_size`: Some(45), added: 2520, mode: `MaxEncodedLen`) - /// Storage: `Staking::CounterForValidators` (r:1 w:1) - /// Proof: `Staking::CounterForValidators` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `VoterList::ListNodes` (r:299 w:299) - /// Proof: `VoterList::ListNodes` (`max_values`: None, `max_size`: Some(154), added: 2629, mode: `MaxEncodedLen`) - /// Storage: `VoterList::ListBags` (r:1 w:1) - /// Proof: `VoterList::ListBags` (`max_values`: None, `max_size`: Some(82), added: 2557, mode: `MaxEncodedLen`) - /// Storage: `VoterList::CounterForListNodes` (r:1 w:1) - /// Proof: `VoterList::CounterForListNodes` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `Staking::Nominators` (r:100 w:0) - /// Proof: `Staking::Nominators` (`max_values`: None, `max_size`: Some(814), added: 3289, mode: `MaxEncodedLen`) - /// Storage: `Staking::OffendingValidators` (r:1 w:1) - /// Proof: `Staking::OffendingValidators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) - /// Storage: `Session::Validators` (r:1 w:0) - /// Proof: `Session::Validators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) - /// Storage: `Staking::NominatorSlashInEra` (r:2400 w:2400) - /// Proof: `Staking::NominatorSlashInEra` (`max_values`: None, `max_size`: Some(68), added: 2543, mode: `MaxEncodedLen`) - /// Storage: `Staking::UnappliedSlashes` (r:1 w:1) - /// Proof: `Staking::UnappliedSlashes` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// The range of component `r` is `[1, 100]`. - /// The range of component `o` is `[2, 100]`. - /// The range of component `n` is `[0, 24]`. - fn report_offence_im_online(_r: u32, o: u32, n: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `0 + n * (2863 ±0) + o * (1226 ±0)` - // Estimated: `128540 + n * (156186 ±1_870) + o * (38402 ±459)` - // Minimum execution time: 613_723_000 picoseconds. - Weight::from_parts(623_808_000, 0) - .saturating_add(Weight::from_parts(0, 128540)) - // Standard Error: 4_282_562 - .saturating_add(Weight::from_parts(420_546_464, 0).saturating_mul(o.into())) - // Standard Error: 17_446_831 - .saturating_add(Weight::from_parts(480_750_986, 0).saturating_mul(n.into())) - .saturating_add(T::DbWeight::get().reads(172)) - .saturating_add(T::DbWeight::get().reads((51_u64).saturating_mul(o.into()))) - .saturating_add(T::DbWeight::get().reads((185_u64).saturating_mul(n.into()))) - .saturating_add(T::DbWeight::get().writes(165)) - .saturating_add(T::DbWeight::get().writes((50_u64).saturating_mul(o.into()))) - .saturating_add(T::DbWeight::get().writes((185_u64).saturating_mul(n.into()))) - .saturating_add(Weight::from_parts(0, 156186).saturating_mul(n.into())) - .saturating_add(Weight::from_parts(0, 38402).saturating_mul(o.into())) - } - /// Storage: `Offences::ConcurrentReportsIndex` (r:1 w:1) - /// Proof: `Offences::ConcurrentReportsIndex` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// Storage: `Offences::Reports` (r:1 w:1) - /// Proof: `Offences::Reports` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// Storage: `Staking::SlashRewardFraction` (r:1 w:0) - /// Proof: `Staking::SlashRewardFraction` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `Staking::ActiveEra` (r:1 w:0) - /// Proof: `Staking::ActiveEra` (`max_values`: Some(1), `max_size`: Some(13), added: 508, mode: `MaxEncodedLen`) - /// Storage: `Staking::ErasStartSessionIndex` (r:1 w:0) - /// Proof: `Staking::ErasStartSessionIndex` (`max_values`: None, `max_size`: Some(16), added: 2491, mode: `MaxEncodedLen`) - /// Storage: `Staking::Invulnerables` (r:1 w:0) - /// Proof: `Staking::Invulnerables` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) - /// Storage: `Staking::ValidatorSlashInEra` (r:1 w:1) - /// Proof: `Staking::ValidatorSlashInEra` (`max_values`: None, `max_size`: Some(72), added: 2547, mode: `MaxEncodedLen`) - /// Storage: `Staking::SlashingSpans` (r:25 w:25) - /// Proof: `Staking::SlashingSpans` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// Storage: `Staking::SpanSlash` (r:25 w:25) - /// Proof: `Staking::SpanSlash` (`max_values`: None, `max_size`: Some(76), added: 2551, mode: `MaxEncodedLen`) - /// Storage: `Staking::Validators` (r:1 w:1) - /// Proof: `Staking::Validators` (`max_values`: None, `max_size`: Some(45), added: 2520, mode: `MaxEncodedLen`) - /// Storage: `Staking::CounterForValidators` (r:1 w:1) - /// Proof: `Staking::CounterForValidators` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `VoterList::ListNodes` (r:2 w:2) - /// Proof: `VoterList::ListNodes` (`max_values`: None, `max_size`: Some(154), added: 2629, mode: `MaxEncodedLen`) - /// Storage: `VoterList::ListBags` (r:1 w:1) - /// Proof: `VoterList::ListBags` (`max_values`: None, `max_size`: Some(82), added: 2557, mode: `MaxEncodedLen`) - /// Storage: `VoterList::CounterForListNodes` (r:1 w:1) - /// Proof: `VoterList::CounterForListNodes` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `Staking::Nominators` (r:1 w:0) - /// Proof: `Staking::Nominators` (`max_values`: None, `max_size`: Some(814), added: 3289, mode: `MaxEncodedLen`) - /// Storage: `Staking::OffendingValidators` (r:1 w:1) - /// Proof: `Staking::OffendingValidators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) - /// Storage: `Session::Validators` (r:1 w:0) - /// Proof: `Session::Validators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) - /// Storage: `Staking::NominatorSlashInEra` (r:24 w:24) - /// Proof: `Staking::NominatorSlashInEra` (`max_values`: None, `max_size`: Some(68), added: 2543, mode: `MaxEncodedLen`) - /// Storage: `Staking::UnappliedSlashes` (r:1 w:1) - /// Proof: `Staking::UnappliedSlashes` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// The range of component `n` is `[0, 24]`. - fn report_offence_grandpa(n: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `1831 + n * (48 ±0)` - // Estimated: `5686 + n * (2551 ±0)` - // Minimum execution time: 85_661_000 picoseconds. - Weight::from_parts(101_183_633, 0) - .saturating_add(Weight::from_parts(0, 5686)) - // Standard Error: 26_365 - .saturating_add(Weight::from_parts(9_828_019, 0).saturating_mul(n.into())) - .saturating_add(T::DbWeight::get().reads(19)) - .saturating_add(T::DbWeight::get().reads((3_u64).saturating_mul(n.into()))) - .saturating_add(T::DbWeight::get().writes(13)) - .saturating_add(T::DbWeight::get().writes((3_u64).saturating_mul(n.into()))) - .saturating_add(Weight::from_parts(0, 2551).saturating_mul(n.into())) - } - /// Storage: `Offences::ConcurrentReportsIndex` (r:1 w:1) - /// Proof: `Offences::ConcurrentReportsIndex` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// Storage: `Offences::Reports` (r:1 w:1) - /// Proof: `Offences::Reports` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// Storage: `Staking::SlashRewardFraction` (r:1 w:0) - /// Proof: `Staking::SlashRewardFraction` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `Staking::ActiveEra` (r:1 w:0) - /// Proof: `Staking::ActiveEra` (`max_values`: Some(1), `max_size`: Some(13), added: 508, mode: `MaxEncodedLen`) - /// Storage: `Staking::ErasStartSessionIndex` (r:1 w:0) - /// Proof: `Staking::ErasStartSessionIndex` (`max_values`: None, `max_size`: Some(16), added: 2491, mode: `MaxEncodedLen`) - /// Storage: `Staking::Invulnerables` (r:1 w:0) - /// Proof: `Staking::Invulnerables` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) - /// Storage: `Staking::ValidatorSlashInEra` (r:1 w:1) - /// Proof: `Staking::ValidatorSlashInEra` (`max_values`: None, `max_size`: Some(72), added: 2547, mode: `MaxEncodedLen`) - /// Storage: `Staking::SlashingSpans` (r:25 w:25) - /// Proof: `Staking::SlashingSpans` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// Storage: `Staking::SpanSlash` (r:25 w:25) - /// Proof: `Staking::SpanSlash` (`max_values`: None, `max_size`: Some(76), added: 2551, mode: `MaxEncodedLen`) - /// Storage: `Staking::Validators` (r:1 w:1) - /// Proof: `Staking::Validators` (`max_values`: None, `max_size`: Some(45), added: 2520, mode: `MaxEncodedLen`) - /// Storage: `Staking::CounterForValidators` (r:1 w:1) - /// Proof: `Staking::CounterForValidators` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `VoterList::ListNodes` (r:2 w:2) - /// Proof: `VoterList::ListNodes` (`max_values`: None, `max_size`: Some(154), added: 2629, mode: `MaxEncodedLen`) - /// Storage: `VoterList::ListBags` (r:1 w:1) - /// Proof: `VoterList::ListBags` (`max_values`: None, `max_size`: Some(82), added: 2557, mode: `MaxEncodedLen`) - /// Storage: `VoterList::CounterForListNodes` (r:1 w:1) - /// Proof: `VoterList::CounterForListNodes` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) - /// Storage: `Staking::Nominators` (r:1 w:0) - /// Proof: `Staking::Nominators` (`max_values`: None, `max_size`: Some(814), added: 3289, mode: `MaxEncodedLen`) - /// Storage: `Staking::OffendingValidators` (r:1 w:1) - /// Proof: `Staking::OffendingValidators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) - /// Storage: `Session::Validators` (r:1 w:0) - /// Proof: `Session::Validators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) - /// Storage: `Staking::NominatorSlashInEra` (r:24 w:24) - /// Proof: `Staking::NominatorSlashInEra` (`max_values`: None, `max_size`: Some(68), added: 2543, mode: `MaxEncodedLen`) - /// Storage: `Staking::UnappliedSlashes` (r:1 w:1) - /// Proof: `Staking::UnappliedSlashes` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// The range of component `n` is `[0, 24]`. - fn report_offence_babe(n: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `1831 + n * (48 ±0)` - // Estimated: `5686 + n * (2551 ±0)` - // Minimum execution time: 85_422_000 picoseconds. - Weight::from_parts(101_060_303, 0) - .saturating_add(Weight::from_parts(0, 5686)) - // Standard Error: 27_913 - .saturating_add(Weight::from_parts(9_804_093, 0).saturating_mul(n.into())) - .saturating_add(T::DbWeight::get().reads(19)) - .saturating_add(T::DbWeight::get().reads((3_u64).saturating_mul(n.into()))) - .saturating_add(T::DbWeight::get().writes(13)) - .saturating_add(T::DbWeight::get().writes((3_u64).saturating_mul(n.into()))) - .saturating_add(Weight::from_parts(0, 2551).saturating_mul(n.into())) - } -} diff --git a/relay/kusama/src/weights/pallet_recovery.rs b/relay/kusama/src/weights/pallet_recovery.rs deleted file mode 100644 index 02200bb0ed..0000000000 --- a/relay/kusama/src/weights/pallet_recovery.rs +++ /dev/null @@ -1,181 +0,0 @@ -// Copyright (C) Parity Technologies (UK) Ltd. -// This file is part of Polkadot. - -// Polkadot is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// Polkadot is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with Polkadot. If not, see . - -//! Autogenerated weights for `pallet_recovery` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-09-22, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `a3dce7bd4066`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` -//! WASM-EXECUTION: `Compiled`, CHAIN: `Some("spec-kusama.json")`, DB CACHE: 1024 - -// Executed Command: -// /builds/polkadot-sdk/target/production/polkadot -// benchmark -// pallet -// --chain=spec-kusama.json -// --pallet=pallet_recovery -// --extrinsic= -// --output=/builds/runtimes/relay/kusama/src/weights -// --header=/builds/bench/header.txt -// --no-median-slopes -// --no-min-squares - -#![cfg_attr(rustfmt, rustfmt_skip)] -#![allow(unused_parens)] -#![allow(unused_imports)] -#![allow(missing_docs)] - -use frame_support::{traits::Get, weights::Weight}; -use core::marker::PhantomData; - -/// Weight functions for `pallet_recovery`. -pub struct WeightInfo(PhantomData); -impl pallet_recovery::WeightInfo for WeightInfo { - /// Storage: `Recovery::Proxy` (r:1 w:0) - /// Proof: `Recovery::Proxy` (`max_values`: None, `max_size`: Some(80), added: 2555, mode: `MaxEncodedLen`) - fn as_recovered() -> Weight { - // Proof Size summary in bytes: - // Measured: `215` - // Estimated: `3545` - // Minimum execution time: 8_014_000 picoseconds. - Weight::from_parts(8_613_000, 0) - .saturating_add(Weight::from_parts(0, 3545)) - .saturating_add(T::DbWeight::get().reads(1)) - } - /// Storage: `Recovery::Proxy` (r:0 w:1) - /// Proof: `Recovery::Proxy` (`max_values`: None, `max_size`: Some(80), added: 2555, mode: `MaxEncodedLen`) - fn set_recovered() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 7_723_000 picoseconds. - Weight::from_parts(8_112_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: `Recovery::Recoverable` (r:1 w:1) - /// Proof: `Recovery::Recoverable` (`max_values`: None, `max_size`: Some(351), added: 2826, mode: `MaxEncodedLen`) - /// The range of component `n` is `[1, 9]`. - fn create_recovery(n: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `109` - // Estimated: `3816` - // Minimum execution time: 22_346_000 picoseconds. - Weight::from_parts(23_296_973, 0) - .saturating_add(Weight::from_parts(0, 3816)) - // Standard Error: 4_221 - .saturating_add(Weight::from_parts(120_994, 0).saturating_mul(n.into())) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: `Recovery::Recoverable` (r:1 w:0) - /// Proof: `Recovery::Recoverable` (`max_values`: None, `max_size`: Some(351), added: 2826, mode: `MaxEncodedLen`) - /// Storage: `Recovery::ActiveRecoveries` (r:1 w:1) - /// Proof: `Recovery::ActiveRecoveries` (`max_values`: None, `max_size`: Some(389), added: 2864, mode: `MaxEncodedLen`) - fn initiate_recovery() -> Weight { - // Proof Size summary in bytes: - // Measured: `206` - // Estimated: `3854` - // Minimum execution time: 28_705_000 picoseconds. - Weight::from_parts(29_807_000, 0) - .saturating_add(Weight::from_parts(0, 3854)) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: `Recovery::Recoverable` (r:1 w:0) - /// Proof: `Recovery::Recoverable` (`max_values`: None, `max_size`: Some(351), added: 2826, mode: `MaxEncodedLen`) - /// Storage: `Recovery::ActiveRecoveries` (r:1 w:1) - /// Proof: `Recovery::ActiveRecoveries` (`max_values`: None, `max_size`: Some(389), added: 2864, mode: `MaxEncodedLen`) - /// The range of component `n` is `[1, 9]`. - fn vouch_recovery(n: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `294 + n * (64 ±0)` - // Estimated: `3854` - // Minimum execution time: 19_388_000 picoseconds. - Weight::from_parts(20_216_738, 0) - .saturating_add(Weight::from_parts(0, 3854)) - // Standard Error: 4_884 - .saturating_add(Weight::from_parts(122_431, 0).saturating_mul(n.into())) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: `Recovery::Recoverable` (r:1 w:0) - /// Proof: `Recovery::Recoverable` (`max_values`: None, `max_size`: Some(351), added: 2826, mode: `MaxEncodedLen`) - /// Storage: `Recovery::ActiveRecoveries` (r:1 w:0) - /// Proof: `Recovery::ActiveRecoveries` (`max_values`: None, `max_size`: Some(389), added: 2864, mode: `MaxEncodedLen`) - /// Storage: `Recovery::Proxy` (r:1 w:1) - /// Proof: `Recovery::Proxy` (`max_values`: None, `max_size`: Some(80), added: 2555, mode: `MaxEncodedLen`) - /// The range of component `n` is `[1, 9]`. - fn claim_recovery(n: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `326 + n * (64 ±0)` - // Estimated: `3854` - // Minimum execution time: 23_438_000 picoseconds. - Weight::from_parts(24_326_305, 0) - .saturating_add(Weight::from_parts(0, 3854)) - // Standard Error: 4_836 - .saturating_add(Weight::from_parts(114_962, 0).saturating_mul(n.into())) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: `Recovery::ActiveRecoveries` (r:1 w:1) - /// Proof: `Recovery::ActiveRecoveries` (`max_values`: None, `max_size`: Some(389), added: 2864, mode: `MaxEncodedLen`) - /// Storage: `System::Account` (r:1 w:1) - /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) - /// The range of component `n` is `[1, 9]`. - fn close_recovery(n: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `447 + n * (32 ±0)` - // Estimated: `3854` - // Minimum execution time: 32_497_000 picoseconds. - Weight::from_parts(34_118_633, 0) - .saturating_add(Weight::from_parts(0, 3854)) - // Standard Error: 5_544 - .saturating_add(Weight::from_parts(163_938, 0).saturating_mul(n.into())) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(2)) - } - /// Storage: `Recovery::ActiveRecoveries` (r:1 w:0) - /// Proof: `Recovery::ActiveRecoveries` (`max_values`: None, `max_size`: Some(389), added: 2864, mode: `MaxEncodedLen`) - /// Storage: `Recovery::Recoverable` (r:1 w:1) - /// Proof: `Recovery::Recoverable` (`max_values`: None, `max_size`: Some(351), added: 2826, mode: `MaxEncodedLen`) - /// The range of component `n` is `[1, 9]`. - fn remove_recovery(n: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `204 + n * (32 ±0)` - // Estimated: `3854` - // Minimum execution time: 29_820_000 picoseconds. - Weight::from_parts(31_104_084, 0) - .saturating_add(Weight::from_parts(0, 3854)) - // Standard Error: 6_895 - .saturating_add(Weight::from_parts(118_999, 0).saturating_mul(n.into())) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: `Recovery::Proxy` (r:1 w:1) - /// Proof: `Recovery::Proxy` (`max_values`: None, `max_size`: Some(80), added: 2555, mode: `MaxEncodedLen`) - fn cancel_recovered() -> Weight { - // Proof Size summary in bytes: - // Measured: `215` - // Estimated: `3545` - // Minimum execution time: 9_732_000 picoseconds. - Weight::from_parts(10_081_000, 0) - .saturating_add(Weight::from_parts(0, 3545)) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } -} diff --git a/relay/kusama/src/weights/pallet_tips.rs b/relay/kusama/src/weights/pallet_tips.rs deleted file mode 100644 index 64729ed630..0000000000 --- a/relay/kusama/src/weights/pallet_tips.rs +++ /dev/null @@ -1,159 +0,0 @@ -// Copyright (C) Parity Technologies (UK) Ltd. -// This file is part of Polkadot. - -// Polkadot is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// Polkadot is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with Polkadot. If not, see . -//! Autogenerated weights for `pallet_tips` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-03-16, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `bm5`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("kusama-dev"), DB CACHE: 1024 - -// Executed Command: -// ./target/production/polkadot -// benchmark -// pallet -// --chain=kusama-dev -// --steps=50 -// --repeat=20 -// --pallet=pallet_tips -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --header=./file_header.txt -// --output=./runtime/kusama/src/weights/ - -#![cfg_attr(rustfmt, rustfmt_skip)] -#![allow(unused_parens)] -#![allow(unused_imports)] - -use frame_support::{traits::Get, weights::Weight}; -use sp_std::marker::PhantomData; - -/// Weight functions for `pallet_tips`. -pub struct WeightInfo(PhantomData); -impl pallet_tips::WeightInfo for WeightInfo { - /// Storage: Tips Reasons (r:1 w:1) - /// Proof Skipped: Tips Reasons (max_values: None, max_size: None, mode: Measured) - /// Storage: Tips Tips (r:1 w:1) - /// Proof Skipped: Tips Tips (max_values: None, max_size: None, mode: Measured) - /// The range of component `r` is `[0, 16384]`. - fn report_awesome(r: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `4` - // Estimated: `6938` - // Minimum execution time: 23_689_000 picoseconds. - Weight::from_parts(24_837_709, 0) - .saturating_add(Weight::from_parts(0, 6938)) - // Standard Error: 6 - .saturating_add(Weight::from_parts(1_449, 0).saturating_mul(r.into())) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(2)) - } - /// Storage: Tips Tips (r:1 w:1) - /// Proof Skipped: Tips Tips (max_values: None, max_size: None, mode: Measured) - /// Storage: Tips Reasons (r:0 w:1) - /// Proof Skipped: Tips Reasons (max_values: None, max_size: None, mode: Measured) - fn retract_tip() -> Weight { - // Proof Size summary in bytes: - // Measured: `221` - // Estimated: `3907` - // Minimum execution time: 23_163_000 picoseconds. - Weight::from_parts(23_386_000, 0) - .saturating_add(Weight::from_parts(0, 3907)) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(2)) - } - /// Storage: PhragmenElection Members (r:1 w:0) - /// Proof Skipped: PhragmenElection Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Tips Reasons (r:1 w:1) - /// Proof Skipped: Tips Reasons (max_values: None, max_size: None, mode: Measured) - /// Storage: Tips Tips (r:0 w:1) - /// Proof Skipped: Tips Tips (max_values: None, max_size: None, mode: Measured) - /// The range of component `r` is `[0, 16384]`. - /// The range of component `t` is `[1, 19]`. - fn tip_new(r: u32, t: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `108 + t * (64 ±0)` - // Estimated: `5274 + t * (192 ±0)` - // Minimum execution time: 18_945_000 picoseconds. - Weight::from_parts(17_578_665, 0) - .saturating_add(Weight::from_parts(0, 5274)) - // Standard Error: 6 - .saturating_add(Weight::from_parts(1_320, 0).saturating_mul(r.into())) - // Standard Error: 5_480 - .saturating_add(Weight::from_parts(154_765, 0).saturating_mul(t.into())) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(2)) - .saturating_add(Weight::from_parts(0, 192).saturating_mul(t.into())) - } - /// Storage: PhragmenElection Members (r:1 w:0) - /// Proof Skipped: PhragmenElection Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Tips Tips (r:1 w:1) - /// Proof Skipped: Tips Tips (max_values: None, max_size: None, mode: Measured) - /// The range of component `t` is `[1, 19]`. - fn tip(t: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `329 + t * (112 ±0)` - // Estimated: `5608 + t * (224 ±0)` - // Minimum execution time: 14_212_000 picoseconds. - Weight::from_parts(14_717_871, 0) - .saturating_add(Weight::from_parts(0, 5608)) - // Standard Error: 1_305 - .saturating_add(Weight::from_parts(135_786, 0).saturating_mul(t.into())) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(1)) - .saturating_add(Weight::from_parts(0, 224).saturating_mul(t.into())) - } - /// Storage: Tips Tips (r:1 w:1) - /// Proof Skipped: Tips Tips (max_values: None, max_size: None, mode: Measured) - /// Storage: PhragmenElection Members (r:1 w:0) - /// Proof Skipped: PhragmenElection Members (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(128), added: 2603, mode: MaxEncodedLen) - /// Storage: Tips Reasons (r:0 w:1) - /// Proof Skipped: Tips Reasons (max_values: None, max_size: None, mode: Measured) - /// The range of component `t` is `[1, 19]`. - fn close_tip(t: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `368 + t * (112 ±0)` - // Estimated: `9620 + t * (336 ±0)` - // Minimum execution time: 41_550_000 picoseconds. - Weight::from_parts(43_011_989, 0) - .saturating_add(Weight::from_parts(0, 9620)) - // Standard Error: 5_482 - .saturating_add(Weight::from_parts(120_085, 0).saturating_mul(t.into())) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(3)) - .saturating_add(Weight::from_parts(0, 336).saturating_mul(t.into())) - } - /// Storage: Tips Tips (r:1 w:1) - /// Proof Skipped: Tips Tips (max_values: None, max_size: None, mode: Measured) - /// Storage: Tips Reasons (r:0 w:1) - /// Proof Skipped: Tips Reasons (max_values: None, max_size: None, mode: Measured) - /// The range of component `t` is `[1, 19]`. - fn slash_tip(t: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `269` - // Estimated: `4003` - // Minimum execution time: 13_897_000 picoseconds. - Weight::from_parts(14_435_129, 0) - .saturating_add(Weight::from_parts(0, 4003)) - // Standard Error: 1_409 - .saturating_add(Weight::from_parts(9_959, 0).saturating_mul(t.into())) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(2)) - } -} diff --git a/relay/kusama/src/weights/pallet_xcm_benchmarks_fungible.rs b/relay/kusama/src/weights/pallet_xcm_benchmarks_fungible.rs deleted file mode 100644 index f1a6d3b068..0000000000 --- a/relay/kusama/src/weights/pallet_xcm_benchmarks_fungible.rs +++ /dev/null @@ -1,184 +0,0 @@ -// Copyright (C) Parity Technologies (UK) Ltd. -// This file is part of Polkadot. - -// Polkadot is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// Polkadot is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with Polkadot. If not, see . - -//! Autogenerated weights for `pallet_xcm_benchmarks::fungible` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-09-22, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `a3dce7bd4066`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` -//! WASM-EXECUTION: `Compiled`, CHAIN: `Some("spec-kusama.json")`, DB CACHE: 1024 - -// Executed Command: -// /builds/polkadot-sdk/target/production/polkadot -// benchmark -// pallet -// --chain=spec-kusama.json -// --pallet=pallet_xcm_benchmarks::fungible -// --extrinsic= -// --output=/builds/runtimes/relay/kusama/src/weights -// --header=/builds/bench/header.txt -// --no-median-slopes -// --no-min-squares - -#![cfg_attr(rustfmt, rustfmt_skip)] -#![allow(unused_parens)] -#![allow(unused_imports)] -#![allow(missing_docs)] - -use frame_support::{traits::Get, weights::Weight}; -use core::marker::PhantomData; - -/// Weight functions for `pallet_xcm_benchmarks::fungible`. -pub struct WeightInfo(PhantomData); -impl pallet_xcm_benchmarks::fungible::WeightInfo for WeightInfo { - /// Storage: `System::Account` (r:1 w:1) - /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) - fn withdraw_asset() -> Weight { - // Proof Size summary in bytes: - // Measured: `101` - // Estimated: `3593` - // Minimum execution time: 22_244_000 picoseconds. - Weight::from_parts(22_867_000, 0) - .saturating_add(Weight::from_parts(0, 3593)) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: `System::Account` (r:2 w:2) - /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) - fn transfer_asset() -> Weight { - // Proof Size summary in bytes: - // Measured: `101` - // Estimated: `6196` - // Minimum execution time: 46_292_000 picoseconds. - Weight::from_parts(48_776_000, 0) - .saturating_add(Weight::from_parts(0, 6196)) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(2)) - } - /// Storage: `System::Account` (r:2 w:2) - /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) - /// Storage: `Dmp::DeliveryFeeFactor` (r:1 w:0) - /// Proof: `Dmp::DeliveryFeeFactor` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// Storage: `XcmPallet::SupportedVersion` (r:1 w:0) - /// Proof: `XcmPallet::SupportedVersion` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// Storage: `Dmp::DownwardMessageQueues` (r:1 w:1) - /// Proof: `Dmp::DownwardMessageQueues` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// Storage: `Dmp::DownwardMessageQueueHeads` (r:1 w:1) - /// Proof: `Dmp::DownwardMessageQueueHeads` (`max_values`: None, `max_size`: None, mode: `Measured`) - fn transfer_reserve_asset() -> Weight { - // Proof Size summary in bytes: - // Measured: `210` - // Estimated: `6196` - // Minimum execution time: 67_983_000 picoseconds. - Weight::from_parts(69_926_000, 0) - .saturating_add(Weight::from_parts(0, 6196)) - .saturating_add(T::DbWeight::get().reads(6)) - .saturating_add(T::DbWeight::get().writes(4)) - } - /// Storage: `Benchmark::Override` (r:0 w:0) - /// Proof: `Benchmark::Override` (`max_values`: None, `max_size`: None, mode: `Measured`) - fn reserve_asset_deposited() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 2_000_000_000_000 picoseconds. - Weight::from_parts(2_000_000_000_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - /// Storage: `Dmp::DeliveryFeeFactor` (r:1 w:0) - /// Proof: `Dmp::DeliveryFeeFactor` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// Storage: `XcmPallet::SupportedVersion` (r:1 w:0) - /// Proof: `XcmPallet::SupportedVersion` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// Storage: `Dmp::DownwardMessageQueues` (r:1 w:1) - /// Proof: `Dmp::DownwardMessageQueues` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// Storage: `Dmp::DownwardMessageQueueHeads` (r:1 w:1) - /// Proof: `Dmp::DownwardMessageQueueHeads` (`max_values`: None, `max_size`: None, mode: `Measured`) - fn initiate_reserve_withdraw() -> Weight { - // Proof Size summary in bytes: - // Measured: `109` - // Estimated: `3574` - // Minimum execution time: 25_770_000 picoseconds. - Weight::from_parts(26_448_000, 0) - .saturating_add(Weight::from_parts(0, 3574)) - .saturating_add(T::DbWeight::get().reads(4)) - .saturating_add(T::DbWeight::get().writes(2)) - } - /// Storage: `System::Account` (r:1 w:1) - /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) - fn receive_teleported_asset() -> Weight { - // Proof Size summary in bytes: - // Measured: `103` - // Estimated: `3593` - // Minimum execution time: 20_397_000 picoseconds. - Weight::from_parts(21_277_000, 0) - .saturating_add(Weight::from_parts(0, 3593)) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: `System::Account` (r:1 w:1) - /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) - fn deposit_asset() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `3593` - // Minimum execution time: 22_391_000 picoseconds. - Weight::from_parts(23_166_000, 0) - .saturating_add(Weight::from_parts(0, 3593)) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: `System::Account` (r:1 w:1) - /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) - /// Storage: `Dmp::DeliveryFeeFactor` (r:1 w:0) - /// Proof: `Dmp::DeliveryFeeFactor` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// Storage: `XcmPallet::SupportedVersion` (r:1 w:0) - /// Proof: `XcmPallet::SupportedVersion` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// Storage: `Dmp::DownwardMessageQueues` (r:1 w:1) - /// Proof: `Dmp::DownwardMessageQueues` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// Storage: `Dmp::DownwardMessageQueueHeads` (r:1 w:1) - /// Proof: `Dmp::DownwardMessageQueueHeads` (`max_values`: None, `max_size`: None, mode: `Measured`) - fn deposit_reserve_asset() -> Weight { - // Proof Size summary in bytes: - // Measured: `109` - // Estimated: `3593` - // Minimum execution time: 45_906_000 picoseconds. - Weight::from_parts(47_158_000, 0) - .saturating_add(Weight::from_parts(0, 3593)) - .saturating_add(T::DbWeight::get().reads(5)) - .saturating_add(T::DbWeight::get().writes(3)) - } - /// Storage: `System::Account` (r:1 w:1) - /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) - /// Storage: `Dmp::DeliveryFeeFactor` (r:1 w:0) - /// Proof: `Dmp::DeliveryFeeFactor` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// Storage: `XcmPallet::SupportedVersion` (r:1 w:0) - /// Proof: `XcmPallet::SupportedVersion` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// Storage: `Dmp::DownwardMessageQueues` (r:1 w:1) - /// Proof: `Dmp::DownwardMessageQueues` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// Storage: `Dmp::DownwardMessageQueueHeads` (r:1 w:1) - /// Proof: `Dmp::DownwardMessageQueueHeads` (`max_values`: None, `max_size`: None, mode: `Measured`) - fn initiate_teleport() -> Weight { - // Proof Size summary in bytes: - // Measured: `109` - // Estimated: `3593` - // Minimum execution time: 47_858_000 picoseconds. - Weight::from_parts(49_100_000, 0) - .saturating_add(Weight::from_parts(0, 3593)) - .saturating_add(T::DbWeight::get().reads(5)) - .saturating_add(T::DbWeight::get().writes(3)) - } -} diff --git a/relay/kusama/src/weights/pallet_xcm_benchmarks_generic.rs b/relay/kusama/src/weights/pallet_xcm_benchmarks_generic.rs deleted file mode 100644 index 7b5d81343d..0000000000 --- a/relay/kusama/src/weights/pallet_xcm_benchmarks_generic.rs +++ /dev/null @@ -1,393 +0,0 @@ -// Copyright (C) Parity Technologies (UK) Ltd. -// This file is part of Polkadot. - -// Polkadot is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// Polkadot is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with Polkadot. If not, see . - -//! Autogenerated weights for `pallet_xcm_benchmarks::generic` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-06-19, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `runner-e8ezs4ez-project-163-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("kusama-dev"), DB CACHE: 1024 - -// Executed Command: -// ./target/production/polkadot -// benchmark -// pallet -// --chain=kusama-dev -// --steps=50 -// --repeat=20 -// --no-storage-info -// --no-median-slopes -// --no-min-squares -// --pallet=pallet_xcm_benchmarks::generic -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --header=./file_header.txt -// --output=./runtime/kusama/src/weights/pallet_xcm_benchmarks_generic.rs - -#![cfg_attr(rustfmt, rustfmt_skip)] -#![allow(unused_parens)] -#![allow(unused_imports)] -#![allow(missing_docs)] - -use frame_support::{traits::Get, weights::Weight}; -use core::marker::PhantomData; - -/// Weight functions for `pallet_xcm_benchmarks::generic`. -pub struct WeightInfo(PhantomData); -impl pallet_xcm_benchmarks::generic::WeightInfo for WeightInfo { - /// Storage: unknown `0x3a696e747261626c6f636b5f656e74726f7079` (r:1 w:1) - /// Proof Skipped: unknown `0x3a696e747261626c6f636b5f656e74726f7079` (r:1 w:1) - /// Storage: Dmp DeliveryFeeFactor (r:1 w:0) - /// Proof Skipped: Dmp DeliveryFeeFactor (max_values: None, max_size: None, mode: Measured) - /// Storage: XcmPallet SupportedVersion (r:1 w:0) - /// Proof Skipped: XcmPallet SupportedVersion (max_values: None, max_size: None, mode: Measured) - /// Storage: XcmPallet VersionDiscoveryQueue (r:1 w:1) - /// Proof Skipped: XcmPallet VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: XcmPallet SafeXcmVersion (r:1 w:0) - /// Proof Skipped: XcmPallet SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Dmp DownwardMessageQueues (r:1 w:1) - /// Proof Skipped: Dmp DownwardMessageQueues (max_values: None, max_size: None, mode: Measured) - /// Storage: Dmp DownwardMessageQueueHeads (r:1 w:1) - /// Proof Skipped: Dmp DownwardMessageQueueHeads (max_values: None, max_size: None, mode: Measured) - fn report_holding() -> Weight { - // Proof Size summary in bytes: - // Measured: `211` - // Estimated: `3676` - // Minimum execution time: 34_471_000 picoseconds. - Weight::from_parts(35_000_000, 0) - .saturating_add(Weight::from_parts(0, 3676)) - .saturating_add(T::DbWeight::get().reads(7)) - .saturating_add(T::DbWeight::get().writes(4)) - } - fn buy_execution() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 3_115_000 picoseconds. - Weight::from_parts(3_227_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - /// Storage: XcmPallet Queries (r:1 w:0) - /// Proof Skipped: XcmPallet Queries (max_values: None, max_size: None, mode: Measured) - fn query_response() -> Weight { - // Proof Size summary in bytes: - // Measured: `169` - // Estimated: `3634` - // Minimum execution time: 11_905_000 picoseconds. - Weight::from_parts(12_199_000, 0) - .saturating_add(Weight::from_parts(0, 3634)) - .saturating_add(T::DbWeight::get().reads(1)) - } - fn transact() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 12_426_000 picoseconds. - Weight::from_parts(12_740_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - fn refund_surplus() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 3_099_000 picoseconds. - Weight::from_parts(3_200_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - fn set_error_handler() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 2_960_000 picoseconds. - Weight::from_parts(3_060_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - fn set_appendix() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 2_947_000 picoseconds. - Weight::from_parts(3_048_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - fn clear_error() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 2_861_000 picoseconds. - Weight::from_parts(2_990_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - fn descend_origin() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 3_843_000 picoseconds. - Weight::from_parts(4_005_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - fn clear_origin() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 2_915_000 picoseconds. - Weight::from_parts(3_037_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - /// Storage: unknown `0x3a696e747261626c6f636b5f656e74726f7079` (r:1 w:1) - /// Proof Skipped: unknown `0x3a696e747261626c6f636b5f656e74726f7079` (r:1 w:1) - /// Storage: Dmp DeliveryFeeFactor (r:1 w:0) - /// Proof Skipped: Dmp DeliveryFeeFactor (max_values: None, max_size: None, mode: Measured) - /// Storage: XcmPallet SupportedVersion (r:1 w:0) - /// Proof Skipped: XcmPallet SupportedVersion (max_values: None, max_size: None, mode: Measured) - /// Storage: XcmPallet VersionDiscoveryQueue (r:1 w:1) - /// Proof Skipped: XcmPallet VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: XcmPallet SafeXcmVersion (r:1 w:0) - /// Proof Skipped: XcmPallet SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Dmp DownwardMessageQueues (r:1 w:1) - /// Proof Skipped: Dmp DownwardMessageQueues (max_values: None, max_size: None, mode: Measured) - /// Storage: Dmp DownwardMessageQueueHeads (r:1 w:1) - /// Proof Skipped: Dmp DownwardMessageQueueHeads (max_values: None, max_size: None, mode: Measured) - fn report_error() -> Weight { - // Proof Size summary in bytes: - // Measured: `211` - // Estimated: `3676` - // Minimum execution time: 29_177_000 picoseconds. - Weight::from_parts(29_561_000, 0) - .saturating_add(Weight::from_parts(0, 3676)) - .saturating_add(T::DbWeight::get().reads(7)) - .saturating_add(T::DbWeight::get().writes(4)) - } - /// Storage: XcmPallet AssetTraps (r:1 w:1) - /// Proof Skipped: XcmPallet AssetTraps (max_values: None, max_size: None, mode: Measured) - fn claim_asset() -> Weight { - // Proof Size summary in bytes: - // Measured: `226` - // Estimated: `3691` - // Minimum execution time: 16_170_000 picoseconds. - Weight::from_parts(16_629_000, 0) - .saturating_add(Weight::from_parts(0, 3691)) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - fn trap() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 2_881_000 picoseconds. - Weight::from_parts(3_014_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - /// Storage: XcmPallet VersionNotifyTargets (r:1 w:1) - /// Proof Skipped: XcmPallet VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) - /// Storage: unknown `0x3a696e747261626c6f636b5f656e74726f7079` (r:1 w:1) - /// Proof Skipped: unknown `0x3a696e747261626c6f636b5f656e74726f7079` (r:1 w:1) - /// Storage: Dmp DeliveryFeeFactor (r:1 w:0) - /// Proof Skipped: Dmp DeliveryFeeFactor (max_values: None, max_size: None, mode: Measured) - /// Storage: XcmPallet SupportedVersion (r:1 w:0) - /// Proof Skipped: XcmPallet SupportedVersion (max_values: None, max_size: None, mode: Measured) - /// Storage: XcmPallet VersionDiscoveryQueue (r:1 w:1) - /// Proof Skipped: XcmPallet VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: XcmPallet SafeXcmVersion (r:1 w:0) - /// Proof Skipped: XcmPallet SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Dmp DownwardMessageQueues (r:1 w:1) - /// Proof Skipped: Dmp DownwardMessageQueues (max_values: None, max_size: None, mode: Measured) - /// Storage: Dmp DownwardMessageQueueHeads (r:1 w:1) - /// Proof Skipped: Dmp DownwardMessageQueueHeads (max_values: None, max_size: None, mode: Measured) - fn subscribe_version() -> Weight { - // Proof Size summary in bytes: - // Measured: `211` - // Estimated: `3676` - // Minimum execution time: 35_499_000 picoseconds. - Weight::from_parts(36_678_000, 0) - .saturating_add(Weight::from_parts(0, 3676)) - .saturating_add(T::DbWeight::get().reads(8)) - .saturating_add(T::DbWeight::get().writes(5)) - } - /// Storage: XcmPallet VersionNotifyTargets (r:0 w:1) - /// Proof Skipped: XcmPallet VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) - fn unsubscribe_version() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 5_005_000 picoseconds. - Weight::from_parts(5_176_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: unknown `0x3a696e747261626c6f636b5f656e74726f7079` (r:1 w:1) - /// Proof Skipped: unknown `0x3a696e747261626c6f636b5f656e74726f7079` (r:1 w:1) - /// Storage: Dmp DeliveryFeeFactor (r:1 w:0) - /// Proof Skipped: Dmp DeliveryFeeFactor (max_values: None, max_size: None, mode: Measured) - /// Storage: XcmPallet SupportedVersion (r:1 w:0) - /// Proof Skipped: XcmPallet SupportedVersion (max_values: None, max_size: None, mode: Measured) - /// Storage: XcmPallet VersionDiscoveryQueue (r:1 w:1) - /// Proof Skipped: XcmPallet VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: XcmPallet SafeXcmVersion (r:1 w:0) - /// Proof Skipped: XcmPallet SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Dmp DownwardMessageQueues (r:1 w:1) - /// Proof Skipped: Dmp DownwardMessageQueues (max_values: None, max_size: None, mode: Measured) - /// Storage: Dmp DownwardMessageQueueHeads (r:1 w:1) - /// Proof Skipped: Dmp DownwardMessageQueueHeads (max_values: None, max_size: None, mode: Measured) - fn initiate_reserve_withdraw() -> Weight { - // Proof Size summary in bytes: - // Measured: `211` - // Estimated: `3676` - // Minimum execution time: 33_017_000 picoseconds. - Weight::from_parts(33_514_000, 0) - .saturating_add(Weight::from_parts(0, 3676)) - .saturating_add(T::DbWeight::get().reads(7)) - .saturating_add(T::DbWeight::get().writes(4)) - } - fn burn_asset() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 4_645_000 picoseconds. - Weight::from_parts(4_827_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - fn expect_asset() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 3_116_000 picoseconds. - Weight::from_parts(3_239_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - fn expect_origin() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 2_930_000 picoseconds. - Weight::from_parts(3_118_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - fn expect_error() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 2_871_000 picoseconds. - Weight::from_parts(2_990_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - fn expect_transact_status() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 3_136_000 picoseconds. - Weight::from_parts(3_240_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - /// Storage: unknown `0x3a696e747261626c6f636b5f656e74726f7079` (r:1 w:1) - /// Proof Skipped: unknown `0x3a696e747261626c6f636b5f656e74726f7079` (r:1 w:1) - /// Storage: Dmp DeliveryFeeFactor (r:1 w:0) - /// Proof Skipped: Dmp DeliveryFeeFactor (max_values: None, max_size: None, mode: Measured) - /// Storage: XcmPallet SupportedVersion (r:1 w:0) - /// Proof Skipped: XcmPallet SupportedVersion (max_values: None, max_size: None, mode: Measured) - /// Storage: XcmPallet VersionDiscoveryQueue (r:1 w:1) - /// Proof Skipped: XcmPallet VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: XcmPallet SafeXcmVersion (r:1 w:0) - /// Proof Skipped: XcmPallet SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Dmp DownwardMessageQueues (r:1 w:1) - /// Proof Skipped: Dmp DownwardMessageQueues (max_values: None, max_size: None, mode: Measured) - /// Storage: Dmp DownwardMessageQueueHeads (r:1 w:1) - /// Proof Skipped: Dmp DownwardMessageQueueHeads (max_values: None, max_size: None, mode: Measured) - fn query_pallet() -> Weight { - // Proof Size summary in bytes: - // Measured: `211` - // Estimated: `3676` - // Minimum execution time: 36_940_000 picoseconds. - Weight::from_parts(37_766_000, 0) - .saturating_add(Weight::from_parts(0, 3676)) - .saturating_add(T::DbWeight::get().reads(7)) - .saturating_add(T::DbWeight::get().writes(4)) - } - fn expect_pallet() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 8_735_000 picoseconds. - Weight::from_parts(8_957_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - /// Storage: unknown `0x3a696e747261626c6f636b5f656e74726f7079` (r:1 w:1) - /// Proof Skipped: unknown `0x3a696e747261626c6f636b5f656e74726f7079` (r:1 w:1) - /// Storage: Dmp DeliveryFeeFactor (r:1 w:0) - /// Proof Skipped: Dmp DeliveryFeeFactor (max_values: None, max_size: None, mode: Measured) - /// Storage: XcmPallet SupportedVersion (r:1 w:0) - /// Proof Skipped: XcmPallet SupportedVersion (max_values: None, max_size: None, mode: Measured) - /// Storage: XcmPallet VersionDiscoveryQueue (r:1 w:1) - /// Proof Skipped: XcmPallet VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: XcmPallet SafeXcmVersion (r:1 w:0) - /// Proof Skipped: XcmPallet SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Dmp DownwardMessageQueues (r:1 w:1) - /// Proof Skipped: Dmp DownwardMessageQueues (max_values: None, max_size: None, mode: Measured) - /// Storage: Dmp DownwardMessageQueueHeads (r:1 w:1) - /// Proof Skipped: Dmp DownwardMessageQueueHeads (max_values: None, max_size: None, mode: Measured) - fn report_transact_status() -> Weight { - // Proof Size summary in bytes: - // Measured: `211` - // Estimated: `3676` - // Minimum execution time: 28_967_000 picoseconds. - Weight::from_parts(29_937_000, 0) - .saturating_add(Weight::from_parts(0, 3676)) - .saturating_add(T::DbWeight::get().reads(7)) - .saturating_add(T::DbWeight::get().writes(4)) - } - fn clear_transact_status() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 2_907_000 picoseconds. - Weight::from_parts(3_023_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - fn set_topic() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 2_866_000 picoseconds. - Weight::from_parts(2_960_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - fn clear_topic() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 2_872_000 picoseconds. - Weight::from_parts(3_022_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - fn set_fees_mode() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 2_936_000 picoseconds. - Weight::from_parts(3_021_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - fn unpaid_execution() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 3_063_000 picoseconds. - Weight::from_parts(3_153_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } -} From 10b2664910b54ab10e76b20a093924d41ab14457 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Fri, 10 Nov 2023 14:44:31 +0300 Subject: [PATCH 25/68] properly fix the SystemParachains matcher --- relay/kusama/constants/src/lib.rs | 3 ++- relay/polkadot/constants/src/lib.rs | 3 ++- .../asset-hub-kusama/src/xcm_config.rs | 23 +++++++++++++------ .../asset-hub-polkadot/src/xcm_config.rs | 23 +++++++++++++------ .../bridge-hub-kusama/src/xcm_config.rs | 23 +++++++++++++------ .../bridge-hub-polkadot/src/xcm_config.rs | 23 +++++++++++++------ .../collectives-polkadot/src/xcm_config.rs | 23 +++++++++++++------ 7 files changed, 84 insertions(+), 37 deletions(-) diff --git a/relay/kusama/constants/src/lib.rs b/relay/kusama/constants/src/lib.rs index a73ab247ba..342359608b 100644 --- a/relay/kusama/constants/src/lib.rs +++ b/relay/kusama/constants/src/lib.rs @@ -109,9 +109,10 @@ pub mod system_parachain { pub const BRIDGE_HUB_ID: u32 = 1002; frame_support::match_types! { + // System parachains from Kusama point of view. pub type SystemParachains: impl Contains = { MultiLocation { - parents: 1, + parents: 0, interior: X1(Parachain( ASSET_HUB_ID | ENCOINTER_ID | diff --git a/relay/polkadot/constants/src/lib.rs b/relay/polkadot/constants/src/lib.rs index 44527cb9c4..dde8bd8ee5 100644 --- a/relay/polkadot/constants/src/lib.rs +++ b/relay/polkadot/constants/src/lib.rs @@ -123,9 +123,10 @@ pub mod system_parachain { pub const BRIDGE_HUB_ID: u32 = 1002; frame_support::match_types! { + // System parachains from Polkadot point of view. pub type SystemParachains: impl Contains = { MultiLocation { - parents: 1, + parents: 0, interior: X1(Parachain( ASSET_HUB_ID | COLLECTIVES_ID | diff --git a/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs b/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs index 3f119a5aef..8342c428e2 100644 --- a/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs +++ b/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs @@ -28,6 +28,7 @@ use frame_support::{ traits::{ConstU32, Contains, Equals, Everything, Nothing, PalletInfoAccess}, }; use frame_system::EnsureRoot; +use kusama_runtime_constants::system_parachain; use pallet_xcm::XcmPassthrough; use parachains_common::{ impls::ToStakingPot, @@ -478,16 +479,24 @@ pub type AssetFeeAsExistentialDepositMultiplierFeeCharger = AssetFeeAsExistentia TrustBackedAssetsInstance, >; +match_types! { + pub type SystemParachains: impl Contains = { + MultiLocation { + parents: 1, + interior: X1(Parachain( + system_parachain::ASSET_HUB_ID | + system_parachain::ENCOINTER_ID | + system_parachain::BRIDGE_HUB_ID + )), + } + }; +} + /// Locations that will not be charged fees in the executor, /// either execution or delivery. /// We only waive fees for system functions, which these locations represent. -pub type WaivedLocations = ( - RelayOrOtherSystemParachains< - kusama_runtime_constants::system_parachain::SystemParachains, - Runtime, - >, - Equals, -); +pub type WaivedLocations = + (RelayOrOtherSystemParachains, Equals); /// Cases where a remote origin is accepted as trusted Teleporter for a given asset: /// diff --git a/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs b/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs index f84945907a..e377c24702 100644 --- a/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs +++ b/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs @@ -34,6 +34,7 @@ use parachains_common::{ TREASURY_PALLET_ID, }; use polkadot_parachain_primitives::primitives::Sibling; +use polkadot_runtime_constants::system_parachain; use sp_runtime::traits::{AccountIdConversion, ConvertInto}; use xcm::latest::prelude::*; use xcm_builder::{ @@ -398,16 +399,24 @@ pub type AssetFeeAsExistentialDepositMultiplierFeeCharger = AssetFeeAsExistentia TrustBackedAssetsInstance, >; +match_types! { + pub type SystemParachains: impl Contains = { + MultiLocation { + parents: 1, + interior: X1(Parachain( + system_parachain::ASSET_HUB_ID | + system_parachain::COLLECTIVES_ID | + system_parachain::BRIDGE_HUB_ID + )), + } + }; +} + /// Locations that will not be charged fees in the executor, /// either execution or delivery. /// We only waive fees for system functions, which these locations represent. -pub type WaivedLocations = ( - RelayOrOtherSystemParachains< - polkadot_runtime_constants::system_parachain::SystemParachains, - Runtime, - >, - Equals, -); +pub type WaivedLocations = + (RelayOrOtherSystemParachains, Equals); /// Cases where a remote origin is accepted as trusted Teleporter for a given asset: /// diff --git a/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs b/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs index 7e4f269580..e3dca86c55 100644 --- a/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs +++ b/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs @@ -24,6 +24,7 @@ use frame_support::{ traits::{ConstU32, Contains, Equals, Everything, Nothing}, }; use frame_system::EnsureRoot; +use kusama_runtime_constants::system_parachain; use pallet_xcm::XcmPassthrough; use parachains_common::{ impls::ToStakingPot, @@ -186,16 +187,24 @@ pub type Barrier = TrailingSetTopicAsId< >, >; +match_types! { + pub type SystemParachains: impl Contains = { + MultiLocation { + parents: 1, + interior: X1(Parachain( + system_parachain::ASSET_HUB_ID | + system_parachain::ENCOINTER_ID | + system_parachain::BRIDGE_HUB_ID + )), + } + }; +} + /// Locations that will not be charged fees in the executor, /// either execution or delivery. /// We only waive fees for system functions, which these locations represent. -pub type WaivedLocations = ( - RelayOrOtherSystemParachains< - kusama_runtime_constants::system_parachain::SystemParachains, - Runtime, - >, - Equals, -); +pub type WaivedLocations = + (RelayOrOtherSystemParachains, Equals); /// Cases where a remote origin is accepted as trusted Teleporter for a given asset: /// - KSM with the parent Relay Chain and sibling parachains. diff --git a/system-parachains/bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs b/system-parachains/bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs index 3b7f5fc526..1b8aa89637 100644 --- a/system-parachains/bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs +++ b/system-parachains/bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs @@ -31,6 +31,7 @@ use parachains_common::{ TREASURY_PALLET_ID, }; use polkadot_parachain_primitives::primitives::Sibling; +use polkadot_runtime_constants::system_parachain; use sp_runtime::traits::AccountIdConversion; use xcm::latest::prelude::*; use xcm_builder::{ @@ -190,16 +191,24 @@ pub type Barrier = TrailingSetTopicAsId< >, >; +match_types! { + pub type SystemParachains: impl Contains = { + MultiLocation { + parents: 1, + interior: X1(Parachain( + system_parachain::ASSET_HUB_ID | + system_parachain::COLLECTIVES_ID | + system_parachain::BRIDGE_HUB_ID + )), + } + }; +} + /// Locations that will not be charged fees in the executor, /// either execution or delivery. /// We only waive fees for system functions, which these locations represent. -pub type WaivedLocations = ( - RelayOrOtherSystemParachains< - polkadot_runtime_constants::system_parachain::SystemParachains, - Runtime, - >, - Equals, -); +pub type WaivedLocations = + (RelayOrOtherSystemParachains, Equals); /// Cases where a remote origin is accepted as trusted Teleporter for a given asset: /// - DOT with the parent Relay Chain and sibling parachains. diff --git a/system-parachains/collectives/collectives-polkadot/src/xcm_config.rs b/system-parachains/collectives/collectives-polkadot/src/xcm_config.rs index 472c9fd0bc..96ffd14137 100644 --- a/system-parachains/collectives/collectives-polkadot/src/xcm_config.rs +++ b/system-parachains/collectives/collectives-polkadot/src/xcm_config.rs @@ -31,6 +31,7 @@ use parachains_common::{ TREASURY_PALLET_ID, }; use polkadot_parachain_primitives::primitives::Sibling; +use polkadot_runtime_constants::system_parachain; use sp_runtime::traits::AccountIdConversion; use xcm::latest::prelude::*; use xcm_builder::{ @@ -235,16 +236,24 @@ pub type Barrier = TrailingSetTopicAsId< >, >; +match_types! { + pub type SystemParachains: impl Contains = { + MultiLocation { + parents: 1, + interior: X1(Parachain( + system_parachain::ASSET_HUB_ID | + system_parachain::COLLECTIVES_ID | + system_parachain::BRIDGE_HUB_ID + )), + } + }; +} + /// Locations that will not be charged fees in the executor, /// either execution or delivery. /// We only waive fees for system functions, which these locations represent. -pub type WaivedLocations = ( - RelayOrOtherSystemParachains< - polkadot_runtime_constants::system_parachain::SystemParachains, - Runtime, - >, - Equals, -); +pub type WaivedLocations = + (RelayOrOtherSystemParachains, Equals); /// Cases where a remote origin is accepted as trusted Teleporter for a given asset: /// - DOT with the parent Relay Chain and sibling parachains. From 4420a47f91421fcc41871385f58f71ffb959f3b1 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Fri, 10 Nov 2023 15:19:19 +0300 Subject: [PATCH 26/68] tests for TREASURY_PALLET_ID --- relay/kusama/src/lib.rs | 13 +++++++++---- relay/polkadot/src/lib.rs | 9 +++++++-- 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/relay/kusama/src/lib.rs b/relay/kusama/src/lib.rs index c6ce02efe4..8acdc53327 100644 --- a/relay/kusama/src/lib.rs +++ b/relay/kusama/src/lib.rs @@ -113,7 +113,7 @@ use sp_runtime::traits::Get; pub use sp_runtime::BuildStorage; /// Constant values used within the runtime. -use kusama_runtime_constants::{currency::*, fee::*, time::*}; +use kusama_runtime_constants::{currency::*, fee::*, time::*, TREASURY_PALLET_ID}; // Weights used in the runtime. mod weights; @@ -751,8 +751,8 @@ parameter_types! { pub const TreasuryPalletId: PalletId = PalletId(*b"py/trsry"); pub const PayoutSpendPeriod: BlockNumber = 30 * DAYS; // The asset's interior location for the paying account. This is the Treasury - // pallet instance (which sits at index 19). - pub TreasuryInteriorLocation: InteriorMultiLocation = PalletInstance(18).into(); + // pallet instance (which sits at index 18). + pub TreasuryInteriorLocation: InteriorMultiLocation = PalletInstance(TREASURY_PALLET_ID).into(); pub const TipCountdown: BlockNumber = 1 * DAYS; pub const TipFindersFee: Percent = Percent::from_percent(20); @@ -2573,7 +2573,7 @@ mod fees_tests { #[cfg(test)] mod multiplier_tests { use super::*; - use frame_support::{dispatch::DispatchInfo, traits::OnFinalize}; + use frame_support::{dispatch::DispatchInfo, traits::{OnFinalize, PalletInfoAccess}}; use runtime_common::{MinimumMultiplier, TargetBlockFullness}; use separator::Separatable; use sp_runtime::traits::Convert; @@ -2618,6 +2618,11 @@ mod multiplier_tests { assert!(on_idle / block_time <= 0.5f32) } + #[test] + fn treasury_pallet_index_is_correct() { + assert_eq!(TREASURY_PALLET_ID, ::index() as u8); + } + #[test] #[ignore] fn multiplier_growth_simulator() { diff --git a/relay/polkadot/src/lib.rs b/relay/polkadot/src/lib.rs index 92d753313f..8371a18bd1 100644 --- a/relay/polkadot/src/lib.rs +++ b/relay/polkadot/src/lib.rs @@ -112,7 +112,7 @@ use sp_runtime::traits::Get; pub use sp_runtime::BuildStorage; /// Constant values used within the runtime. -use polkadot_runtime_constants::{currency::*, fee::*, time::*}; +use polkadot_runtime_constants::{currency::*, fee::*, time::*, TREASURY_PALLET_ID}; // Weights used in the runtime. mod weights; @@ -716,7 +716,7 @@ parameter_types! { pub const PayoutSpendPeriod: BlockNumber = 30 * DAYS; // The asset's interior location for the paying account. This is the Treasury // pallet instance (which sits at index 19). - pub TreasuryInteriorLocation: InteriorMultiLocation = PalletInstance(19).into(); + pub TreasuryInteriorLocation: InteriorMultiLocation = PalletInstance(TREASURY_PALLET_ID).into(); pub const TipCountdown: BlockNumber = 1 * DAYS; pub const TipFindersFee: Percent = Percent::from_percent(20); @@ -2588,6 +2588,11 @@ mod multiplier_tests { assert!(on_idle / block_time <= 0.5f32) } + #[test] + fn treasury_pallet_index_is_correct() { + assert_eq!(TREASURY_PALLET_ID, ::index() as u8); + } + #[test] #[ignore] fn multiplier_growth_simulator() { From 4171d8b39ab99f78ca26bbadb691f3e6b80322de Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Mon, 13 Nov 2023 10:36:55 +0300 Subject: [PATCH 27/68] fix migration (https://github.com/paritytech/polkadot-sdk/pull/1969) --- CHANGELOG.md | 6 +- relay/kusama/src/lib.rs | 9 +- relay/kusama/src/paras_scheduler_migration.rs | 218 ------------------ relay/polkadot/src/lib.rs | 9 +- .../polkadot/src/paras_scheduler_migration.rs | 218 ------------------ 5 files changed, 13 insertions(+), 447 deletions(-) delete mode 100644 relay/kusama/src/paras_scheduler_migration.rs delete mode 100644 relay/polkadot/src/paras_scheduler_migration.rs diff --git a/CHANGELOG.md b/CHANGELOG.md index 6091c648aa..48a94c62a7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -52,15 +52,15 @@ TODO for bridging: port https://github.com/paritytech/polkadot-sdk/pull/2023/fil - [x] **ADDED MIGRATION** [NPoS] Fix for Reward Deficit in the pool (#1255 @Ank4n) [Pallets] - [x] (INTERNAL) frame-support: RuntimeDebug\Eq\PartialEq impls for Imbalance (#1717 @muharem) [Frame] - [x] **ADDED MIGRATION** Tvl pool staking (#1322 @PieWol) [Frame] -- [ ] **TODO: do the same for fellowship SP?** Init System Parachain storage versions and add migration check jobs to CI (#1344 @liamaharon) [Frame] +- [X] **Could be added later (ping author)** Init System Parachain storage versions and add migration check jobs to CI (#1344 @liamaharon) [Frame] - [x] (INTERNAL) expose the last relay chain block number as an API from parachain-system (#1761 @rphmeier) [Pallets] - [x] (INTERNAL) feat: compute pallet/storage prefix hash at compile time (#1539 @yjhmelody) [Frame] -- [ ] **TODO: do the same for fellowship SP?** Treasury spends various asset kinds (#1333 @muharem) [Frame] +- [ ] **Could be added later (ping author)** Treasury spends various asset kinds (#1333 @muharem) [Frame] - [x] (INTERNAL) Make CheckNonce refuse transactions signed by accounts with no providers (#1578 @zdave-parity) [Frame] - [x] (INTERNAL) Warn on unchecked weight witness (#1818 @ggwpez) [Frame] - [x] (INTERNAL) frame: use derive-impl for beefy and mmr pallets (#1867 @acatangiu) [Pallets] - [x] (INTERNAL) Macros to use path instead of ident (#1474 @juangirini) [Frame] -- [ ] **TODO: no migration required?** Refactor staking ledger (#1484 @gpestana) [Frame, Pallets] +- [X] **descr saids that no migration required** Refactor staking ledger (#1484 @gpestana) [Frame, Pallets] - [x] (INTERNAL) extract amount method for fungible/s Imbalance (#1847 @muharem) [Frame] - [x] (INTERNAL) Allow Locks/Holds/Reserves/Freezes by default when using pallet_balances TestDefaultConfig (#1880 @liamaharon) [Frame, Pallets] - [x] (INTERNAL) nit: use traits::tokens::fungible => use traits::fungible (#1753 @gilescope) [Pallets] diff --git a/relay/kusama/src/lib.rs b/relay/kusama/src/lib.rs index 8acdc53327..524293e2d5 100644 --- a/relay/kusama/src/lib.rs +++ b/relay/kusama/src/lib.rs @@ -121,8 +121,6 @@ mod weights; // Voter bag threshold definitions. mod bag_thresholds; -// mod paras_scheduler_migration; // TODO: has it happened? - // Historical information of society finances. mod past_payouts; @@ -1795,7 +1793,7 @@ pub mod migrations { >, pallet_im_online::migration::v1::Migration, parachains_configuration::migration::v7::MigrateToV7, - // paras_scheduler_migration::v1::MigrateToV1, TODO: has it happened? + runtime_parachains::scheduler::migration::v1::MigrateToV1, parachains_configuration::migration::v8::MigrateToV8, // Unlock/unreserve balances from Gov v1 pallets that hold them @@ -2573,7 +2571,10 @@ mod fees_tests { #[cfg(test)] mod multiplier_tests { use super::*; - use frame_support::{dispatch::DispatchInfo, traits::{OnFinalize, PalletInfoAccess}}; + use frame_support::{ + dispatch::DispatchInfo, + traits::{OnFinalize, PalletInfoAccess}, + }; use runtime_common::{MinimumMultiplier, TargetBlockFullness}; use separator::Separatable; use sp_runtime::traits::Convert; diff --git a/relay/kusama/src/paras_scheduler_migration.rs b/relay/kusama/src/paras_scheduler_migration.rs deleted file mode 100644 index d294861843..0000000000 --- a/relay/kusama/src/paras_scheduler_migration.rs +++ /dev/null @@ -1,218 +0,0 @@ -//! A copy of the migration found in the polkadot sdk repo. -//! -//! It is copied as the version of the migration found in the crate used by this runtime is broken. - -use frame_support::{ - migrations::VersionedMigration, pallet_prelude::ValueQuery, storage_alias, - traits::OnRuntimeUpgrade, weights::Weight, -}; -use frame_system::pallet_prelude::BlockNumberFor; -use parity_scale_codec::{Decode, Encode}; -use primitives::{ - v5::{Assignment, ParasEntry}, - CoreIndex, CoreOccupied, GroupIndex, Id as ParaId, -}; -use runtime_parachains::scheduler::*; -use scale_info::TypeInfo; -use sp_core::{Get, RuntimeDebug}; -use sp_std::{ - collections::{btree_map::BTreeMap, vec_deque::VecDeque}, - prelude::*, -}; - -const LOG_TARGET: &str = "runtime::parachains::scheduler"; - -mod v0 { - use super::*; - - use primitives::{CollatorId, Id}; - - #[storage_alias] - pub(super) type Scheduled = StorageValue, Vec, ValueQuery>; - - #[derive(Clone, Encode, Decode)] - #[cfg_attr(feature = "std", derive(PartialEq))] - pub struct ParathreadClaim(pub Id, pub CollatorId); - - #[derive(Clone, Encode, Decode)] - #[cfg_attr(feature = "std", derive(PartialEq))] - pub struct ParathreadEntry { - /// The claim. - pub claim: ParathreadClaim, - /// Number of retries. - pub retries: u32, - } - - /// What is occupying a specific availability core. - #[derive(Clone, Encode, Decode)] - #[cfg_attr(feature = "std", derive(PartialEq))] - pub enum CoreOccupied { - /// A parathread. - Parathread(ParathreadEntry), - /// A parachain. - Parachain, - } - - /// The actual type isn't important, as we only delete the key in the state. - #[storage_alias] - pub(crate) type AvailabilityCores = - StorageValue, Vec>, ValueQuery>; - - /// The actual type isn't important, as we only delete the key in the state. - #[storage_alias] - pub(super) type ParathreadQueue = StorageValue, (), ValueQuery>; - - #[storage_alias] - pub(super) type ParathreadClaimIndex = StorageValue, (), ValueQuery>; - - /// The assignment type. - #[derive(Clone, Encode, Decode, TypeInfo, RuntimeDebug)] - #[cfg_attr(feature = "std", derive(PartialEq))] - pub enum AssignmentKind { - /// A parachain. - Parachain, - /// A parathread. - Parathread(CollatorId, u32), - } - - /// How a free core is scheduled to be assigned. - #[derive(Clone, Encode, Decode, TypeInfo, RuntimeDebug)] - #[cfg_attr(feature = "std", derive(PartialEq))] - pub struct CoreAssignment { - /// The core that is assigned. - pub core: CoreIndex, - /// The unique ID of the para that is assigned to the core. - pub para_id: ParaId, - /// The kind of the assignment. - pub kind: AssignmentKind, - /// The index of the validator group assigned to the core. - pub group_idx: GroupIndex, - } -} - -pub mod v1 { - use super::*; - - #[storage_alias] - pub(crate) type AvailabilityCores = - StorageValue, Vec>>, ValueQuery>; - - #[storage_alias] - pub(crate) type ClaimQueue = StorageValue< - Pallet, - BTreeMap>>>>, - ValueQuery, - >; - - #[allow(deprecated)] - pub type MigrateToV1 = VersionedMigration< - 0, - 1, - UncheckedMigrateToV1, - Pallet, - ::DbWeight, - >; - - #[deprecated(note = "Use MigrateToV1 instead")] - pub struct UncheckedMigrateToV1(sp_std::marker::PhantomData); - #[allow(deprecated)] - impl OnRuntimeUpgrade for UncheckedMigrateToV1 { - fn on_runtime_upgrade() -> Weight { - let weight_consumed = migrate_to_v1::(); - - log::info!(target: LOG_TARGET, "Migrating para scheduler storage to v1"); - - weight_consumed - } - - #[cfg(feature = "try-runtime")] - fn pre_upgrade() -> Result, sp_runtime::DispatchError> { - let n: u32 = v0::Scheduled::::get().len() as u32 + - v0::AvailabilityCores::::get().iter().filter(|c| c.is_some()).count() as u32; - - log::info!( - target: LOG_TARGET, - "Number of scheduled and waiting for availability before: {n}", - ); - - Ok(n.encode()) - } - - #[cfg(feature = "try-runtime")] - fn post_upgrade(state: Vec) -> Result<(), sp_runtime::DispatchError> { - log::info!(target: LOG_TARGET, "Running post_upgrade()"); - - frame_support::ensure!( - v0::Scheduled::::get().is_empty(), - "Scheduled should be empty after the migration" - ); - - let expected_len = u32::decode(&mut &state[..]).unwrap(); - let availability_cores_waiting = AvailabilityCores::::get() - .iter() - .filter(|c| !matches!(c, CoreOccupied::Free)) - .count(); - - frame_support::ensure!( - ClaimQueue::::get().iter().map(|la_vec| la_vec.1.len()).sum::() as u32 + - availability_cores_waiting as u32 == - expected_len, - "ClaimQueue and AvailabilityCores should have the correct length", - ); - - Ok(()) - } - } -} - -pub fn migrate_to_v1() -> Weight { - let mut weight: Weight = Weight::zero(); - - v0::ParathreadQueue::::kill(); - v0::ParathreadClaimIndex::::kill(); - - let now = >::block_number(); - let scheduled = v0::Scheduled::::take(); - let sched_len = scheduled.len() as u64; - for core_assignment in scheduled { - let core_idx = core_assignment.core; - let assignment = Assignment::new(core_assignment.para_id); - let pe = ParasEntry::new(assignment, now); - - v1::ClaimQueue::::mutate(|la| { - la.entry(core_idx).or_default().push_back(Some(pe)); - }); - } - - let parachains = runtime_parachains::paras::Pallet::::parachains(); - let availability_cores = v0::AvailabilityCores::::take(); - let mut new_availability_cores = Vec::new(); - - for (core_index, core) in availability_cores.into_iter().enumerate() { - let new_core = if let Some(core) = core { - match core { - v0::CoreOccupied::Parachain => CoreOccupied::Paras(ParasEntry::new( - Assignment::new(parachains[core_index]), - now, - )), - v0::CoreOccupied::Parathread(entry) => - CoreOccupied::Paras(ParasEntry::new(Assignment::new(entry.claim.0), now)), - } - } else { - CoreOccupied::Free - }; - - new_availability_cores.push(new_core); - } - - v1::AvailabilityCores::::set(new_availability_cores); - - // 2x as once for Scheduled and once for Claimqueue - weight = weight.saturating_add(T::DbWeight::get().reads_writes(2 * sched_len, 2 * sched_len)); - // reading parachains + availability_cores, writing AvailabilityCores - weight = weight.saturating_add(T::DbWeight::get().reads_writes(2, 1)); - // 2x kill - weight = weight.saturating_add(T::DbWeight::get().writes(2)); - - weight -} diff --git a/relay/polkadot/src/lib.rs b/relay/polkadot/src/lib.rs index 8371a18bd1..49f1d21b3d 100644 --- a/relay/polkadot/src/lib.rs +++ b/relay/polkadot/src/lib.rs @@ -119,8 +119,6 @@ mod weights; mod bag_thresholds; -// mod paras_scheduler_migration; // TODO: has it happened? - // Governance configurations. pub mod governance; use governance::{ @@ -1631,7 +1629,7 @@ pub mod migrations { pub type Unreleased = ( pallet_im_online::migration::v1::Migration, parachains_configuration::migration::v7::MigrateToV7, - // crate::paras_scheduler_migration::v1::MigrateToV1, // TODO: has it happened? + runtime_parachains::scheduler::migration::v1::MigrateToV1, parachains_configuration::migration::v8::MigrateToV8, // Gov v1 storage migrations @@ -2542,7 +2540,10 @@ mod test { #[cfg(test)] mod multiplier_tests { use super::*; - use frame_support::{dispatch::DispatchInfo, traits::OnFinalize}; + use frame_support::{ + dispatch::DispatchInfo, + traits::{OnFinalize, PalletInfoAccess}, + }; use runtime_common::{MinimumMultiplier, TargetBlockFullness}; use scale_info::TypeInfo; use separator::Separatable; diff --git a/relay/polkadot/src/paras_scheduler_migration.rs b/relay/polkadot/src/paras_scheduler_migration.rs deleted file mode 100644 index d294861843..0000000000 --- a/relay/polkadot/src/paras_scheduler_migration.rs +++ /dev/null @@ -1,218 +0,0 @@ -//! A copy of the migration found in the polkadot sdk repo. -//! -//! It is copied as the version of the migration found in the crate used by this runtime is broken. - -use frame_support::{ - migrations::VersionedMigration, pallet_prelude::ValueQuery, storage_alias, - traits::OnRuntimeUpgrade, weights::Weight, -}; -use frame_system::pallet_prelude::BlockNumberFor; -use parity_scale_codec::{Decode, Encode}; -use primitives::{ - v5::{Assignment, ParasEntry}, - CoreIndex, CoreOccupied, GroupIndex, Id as ParaId, -}; -use runtime_parachains::scheduler::*; -use scale_info::TypeInfo; -use sp_core::{Get, RuntimeDebug}; -use sp_std::{ - collections::{btree_map::BTreeMap, vec_deque::VecDeque}, - prelude::*, -}; - -const LOG_TARGET: &str = "runtime::parachains::scheduler"; - -mod v0 { - use super::*; - - use primitives::{CollatorId, Id}; - - #[storage_alias] - pub(super) type Scheduled = StorageValue, Vec, ValueQuery>; - - #[derive(Clone, Encode, Decode)] - #[cfg_attr(feature = "std", derive(PartialEq))] - pub struct ParathreadClaim(pub Id, pub CollatorId); - - #[derive(Clone, Encode, Decode)] - #[cfg_attr(feature = "std", derive(PartialEq))] - pub struct ParathreadEntry { - /// The claim. - pub claim: ParathreadClaim, - /// Number of retries. - pub retries: u32, - } - - /// What is occupying a specific availability core. - #[derive(Clone, Encode, Decode)] - #[cfg_attr(feature = "std", derive(PartialEq))] - pub enum CoreOccupied { - /// A parathread. - Parathread(ParathreadEntry), - /// A parachain. - Parachain, - } - - /// The actual type isn't important, as we only delete the key in the state. - #[storage_alias] - pub(crate) type AvailabilityCores = - StorageValue, Vec>, ValueQuery>; - - /// The actual type isn't important, as we only delete the key in the state. - #[storage_alias] - pub(super) type ParathreadQueue = StorageValue, (), ValueQuery>; - - #[storage_alias] - pub(super) type ParathreadClaimIndex = StorageValue, (), ValueQuery>; - - /// The assignment type. - #[derive(Clone, Encode, Decode, TypeInfo, RuntimeDebug)] - #[cfg_attr(feature = "std", derive(PartialEq))] - pub enum AssignmentKind { - /// A parachain. - Parachain, - /// A parathread. - Parathread(CollatorId, u32), - } - - /// How a free core is scheduled to be assigned. - #[derive(Clone, Encode, Decode, TypeInfo, RuntimeDebug)] - #[cfg_attr(feature = "std", derive(PartialEq))] - pub struct CoreAssignment { - /// The core that is assigned. - pub core: CoreIndex, - /// The unique ID of the para that is assigned to the core. - pub para_id: ParaId, - /// The kind of the assignment. - pub kind: AssignmentKind, - /// The index of the validator group assigned to the core. - pub group_idx: GroupIndex, - } -} - -pub mod v1 { - use super::*; - - #[storage_alias] - pub(crate) type AvailabilityCores = - StorageValue, Vec>>, ValueQuery>; - - #[storage_alias] - pub(crate) type ClaimQueue = StorageValue< - Pallet, - BTreeMap>>>>, - ValueQuery, - >; - - #[allow(deprecated)] - pub type MigrateToV1 = VersionedMigration< - 0, - 1, - UncheckedMigrateToV1, - Pallet, - ::DbWeight, - >; - - #[deprecated(note = "Use MigrateToV1 instead")] - pub struct UncheckedMigrateToV1(sp_std::marker::PhantomData); - #[allow(deprecated)] - impl OnRuntimeUpgrade for UncheckedMigrateToV1 { - fn on_runtime_upgrade() -> Weight { - let weight_consumed = migrate_to_v1::(); - - log::info!(target: LOG_TARGET, "Migrating para scheduler storage to v1"); - - weight_consumed - } - - #[cfg(feature = "try-runtime")] - fn pre_upgrade() -> Result, sp_runtime::DispatchError> { - let n: u32 = v0::Scheduled::::get().len() as u32 + - v0::AvailabilityCores::::get().iter().filter(|c| c.is_some()).count() as u32; - - log::info!( - target: LOG_TARGET, - "Number of scheduled and waiting for availability before: {n}", - ); - - Ok(n.encode()) - } - - #[cfg(feature = "try-runtime")] - fn post_upgrade(state: Vec) -> Result<(), sp_runtime::DispatchError> { - log::info!(target: LOG_TARGET, "Running post_upgrade()"); - - frame_support::ensure!( - v0::Scheduled::::get().is_empty(), - "Scheduled should be empty after the migration" - ); - - let expected_len = u32::decode(&mut &state[..]).unwrap(); - let availability_cores_waiting = AvailabilityCores::::get() - .iter() - .filter(|c| !matches!(c, CoreOccupied::Free)) - .count(); - - frame_support::ensure!( - ClaimQueue::::get().iter().map(|la_vec| la_vec.1.len()).sum::() as u32 + - availability_cores_waiting as u32 == - expected_len, - "ClaimQueue and AvailabilityCores should have the correct length", - ); - - Ok(()) - } - } -} - -pub fn migrate_to_v1() -> Weight { - let mut weight: Weight = Weight::zero(); - - v0::ParathreadQueue::::kill(); - v0::ParathreadClaimIndex::::kill(); - - let now = >::block_number(); - let scheduled = v0::Scheduled::::take(); - let sched_len = scheduled.len() as u64; - for core_assignment in scheduled { - let core_idx = core_assignment.core; - let assignment = Assignment::new(core_assignment.para_id); - let pe = ParasEntry::new(assignment, now); - - v1::ClaimQueue::::mutate(|la| { - la.entry(core_idx).or_default().push_back(Some(pe)); - }); - } - - let parachains = runtime_parachains::paras::Pallet::::parachains(); - let availability_cores = v0::AvailabilityCores::::take(); - let mut new_availability_cores = Vec::new(); - - for (core_index, core) in availability_cores.into_iter().enumerate() { - let new_core = if let Some(core) = core { - match core { - v0::CoreOccupied::Parachain => CoreOccupied::Paras(ParasEntry::new( - Assignment::new(parachains[core_index]), - now, - )), - v0::CoreOccupied::Parathread(entry) => - CoreOccupied::Paras(ParasEntry::new(Assignment::new(entry.claim.0), now)), - } - } else { - CoreOccupied::Free - }; - - new_availability_cores.push(new_core); - } - - v1::AvailabilityCores::::set(new_availability_cores); - - // 2x as once for Scheduled and once for Claimqueue - weight = weight.saturating_add(T::DbWeight::get().reads_writes(2 * sched_len, 2 * sched_len)); - // reading parachains + availability_cores, writing AvailabilityCores - weight = weight.saturating_add(T::DbWeight::get().reads_writes(2, 1)); - // 2x kill - weight = weight.saturating_add(T::DbWeight::get().writes(2)); - - weight -} From f3f3aa029e2e716c517f96db8a410cc738d1248f Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Mon, 13 Nov 2023 10:39:26 +0300 Subject: [PATCH 28/68] upd internal changelog --- CHANGELOG.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 48a94c62a7..b8ea14c0ab 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -64,10 +64,10 @@ TODO for bridging: port https://github.com/paritytech/polkadot-sdk/pull/2023/fil - [x] (INTERNAL) extract amount method for fungible/s Imbalance (#1847 @muharem) [Frame] - [x] (INTERNAL) Allow Locks/Holds/Reserves/Freezes by default when using pallet_balances TestDefaultConfig (#1880 @liamaharon) [Frame, Pallets] - [x] (INTERNAL) nit: use traits::tokens::fungible => use traits::fungible (#1753 @gilescope) [Pallets] -- [ ] **TODO: fix of migration that has happened or not?** Fix para-scheduler migration on Rococo (#1921 @ggwpez) [Pallets] +- [X] **ported** Fix para-scheduler migration on Rococo (#1921 @ggwpez) [Pallets] - [x] (INTERNAL) Trading trait and deal with metadata in Mutate trait for nonfungibles_v2 (#1561 @AlexD10S) [Pallets] - [x] (INTERNAL) Message Queue use proper overweight limit (#1873 @ggwpez) [Frame] -- [ ] **TODO: fix of migration that has happened or not?** paras-scheduler: Fix migration to V1 (#1969 @bkchr) [Pallets] +- [x] **ported** paras-scheduler: Fix migration to V1 (#1969 @bkchr) [Pallets] - [x] (INTERNAL) Resolve Credit to Account impls of OnUnbalanced trait (#1876 @muharem) [Frame] - [x] (INTERNAL) CheckWeight: Add more logging (#1996 @bkchr) [Frame] - [x] (NO MIGRATION REQUIRED) Make IdentityInfo generic in pallet-identity (#1661 @georgepisaltu) [Pallets] @@ -108,12 +108,12 @@ TODO for bridging: port https://github.com/paritytech/polkadot-sdk/pull/2023/fil ### Parachains & Cumulus - [X] (INTERNAL) Add event field names to HRMP Event variants (#1695 @seadanda) [System-Parachains] -- [ ] **TODO: do the same for fellowship SP?** Init System Parachain storage versions and add migration check jobs to CI (#1344 @liamaharon) [System-Parachains] +- [X] **Could be added later (ping author)** Init System Parachain storage versions and add migration check jobs to CI (#1344 @liamaharon) [System-Parachains] - [X] (INTERNAL) [xcm-emulator] Decouple the AccountId type from AccountId32 (#1458 @NachoPal) [System-Parachains] - [X] (NODE) Fix Asset Hub collator crashing when starting from genesis (#1788 @georgepisaltu) [Cumulus] - [ ] **TODO: Updated formulae, but still need to run benchmarks** Use Weight::MAX for reserve_asset_deposited, receive_teleported_asset benchmarks (#1726 @bkontur) [System-Parachains] - [X] (INTERNAL) Xcm emulator nits (#1649 @bkontur) [Cumulus, System-Parachains] -- [ ] **changed, but shall we make relay trust to BH** Make System Parachains trusted Teleporters (#1368 @NachoPal) [System-Parachains] +- [X] **https://github.com/polkadot-fellows/runtimes/pull/62** Make System Parachains trusted Teleporters (#1368 @NachoPal) [System-Parachains] - [X] (ROCOCO) cumulus: add asset-hub-rococo runtime based on asset-hub-kusama and add asset-bridging support to it #(1215 @acatangiu) [Cumulus] - [X] (NODE) Cumulus: Allow aura to use initialized collation request receiver (#1911 @skunert) [Cumulus] - [X] (NODE) Expose prometheus metrics for minimal-relay-chain node in collators (#1942 @skunert) [Cumulus] From 52d82f3eb90c460e2b70bed9125f38583b476e9d Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Mon, 13 Nov 2023 10:42:01 +0300 Subject: [PATCH 29/68] reverted personal notes from CHANGELOG --- CHANGELOG.md | 126 --------------------------------------------------- 1 file changed, 126 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b8ea14c0ab..52211be6e2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,132 +4,6 @@ Changelog for the runtimes governed by the Polkadot Fellowship. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). -########################################### - -### Node & Polkadot - -TODO for bridging: port https://github.com/paritytech/polkadot-sdk/pull/2023/files - -- [x] (NODE) runtime-api: cleanup after v7 stabilization (#1729 @ordian) [Node] -- [x] (NODE) PVF: more filesystem sandboxing (#1373 @mrcnski) [Node] -- [x] (ROCOCO) rococo-runtime: RococoGenesisExt removed (#1490 michalkucharczyk) [Node] -- [x] (NODE) ix subkey inspect output text padding (#1744 @btwiuse) [Node] -- [x] (NODE) Use Extensions to register offchain worker custom extensions (#1719 @skunert) [Node] -- [x] (NODE) Remove kusama and polkadot runtime crates (#1731 @bkchr) [Node, Polkadot] -- [x] (NODE) PVF: Add back socket path parameter, use tmp socket path (#1780 @mrcnski) [Node] -- [x] (NODE) Delete full db directory with purge-chain subcommand (#1786 @skunert) [Node] -- [x] (NODE) Mixnet integration (#1346 @zdave-parity) [Node] -- [x] (NODE) Update testnet bootnode dns name (#1712 @BulatSaif) [Node] -- [x] (NODE) remote-ext: fix state download stall on slow connections and reduce memory usage (#1295 @liamaharon) [Node] -- [x] (NODE) PVF worker: bump landlock, update ABI docs (#1850 @mrcnski) [Node] -- [x] (NODE) sc-consensus-beefy: improve gossip logic (#1852 @acatangiu) [Node] -- [x] (NODE) Include polkadot version in artifact path (#1828 @eagr) [Node] -- [x] (NODE) Paired-key Crypto Scheme (#1705 @drskalman) [Node] -- [x] (POLKADOT) fix: GoAhead signal only set when runtime upgrade is enacted from parachain side (#1176 @Daanvdplas) [Polkadot] -- [x] (NODE) Arkworks Elliptic Curve utils overhaul (#1870 @davxy) [Node] -- [x] (ROCOCO) Adding migrations to clean Rococo Gov 1 storage & reserved funds (#1849 @al3mart) [Polkadot] -- [x] (NODE) Update the alerts to use a new metric substrate_unbounded_channel_size (#1568 @BulatSaif) [Node] -- [x] (NODE) sc-consensus-beefy: fix initialization when state is unavailable (#1888 @acatangiu ) [Node] -- [x] (NODE) Start BEEFY client by default for Polkadot nodes (#1913 @serban300) [Node] -- [x] (NODE) Do not force collators to update after enabling async backing (#1920 @bkchr) [Node] -- [x] (NODE) sc-executor: Increase maximum instance count (#1856 @bkchr) [Node] -- [x] (ROCOCO) Re-enable Identity on Westend and Rococo (#1901 @joepetrowski) [Polkadot] -- [x] (NODE) polkadot: eradicate LeafStatus (#1565 @ordian) [Node, Polakdot] -- [x] (NODE) polkadot: enable tikv-jemallocator/unprefixed_malloc_on_supported_platforms (#2002 @andresilva) [Polkadot] -- [x] (NODE) PVF: Add worker check during tests and benches (#1771 @mrcnski) [Node] -- [x] (NODE) Application Crypto and BEEFY Support for paired (ECDSA,BLS) crypto (#1815 @drskalman) [Node] -- [x] (NODE) basic-authorship: Improve time recording and logging (#2010 @bkchr) [Node] - - -### Frame & Pallets - -- [x] (NO MIGRATION REQUIRED) **Breaking Change** Ensure correct variant count in Runtime[Hold/Freeze]Reason (#1900 @kianenigma) [Frame] -- [x] (PALLET IS NOT USED) **Breaking Change** Add MaxTipAmount for pallet-tips (#1709 @AurevoirXavier) [Frame] -- [x] (INTERNAL) Associated type Hasher for QueryPreimage, StorePreimage and Bounded (#1720 @muraca) [Frame] -- [x] (INTERNAL) Add custom error message for StorageNoopGuard (#1727 @seadanda) [Frame] -- [x] (INTERNAL) Add event field names to HRMP Event variants (#1695 @seadanda) [Pallets] -- [x] (INTERNAL) add some events for pallet-bounties (#1706 @xlc) [Pallets] -- [x] **ADDED MIGRATION** [NPoS] Fix for Reward Deficit in the pool (#1255 @Ank4n) [Pallets] -- [x] (INTERNAL) frame-support: RuntimeDebug\Eq\PartialEq impls for Imbalance (#1717 @muharem) [Frame] -- [x] **ADDED MIGRATION** Tvl pool staking (#1322 @PieWol) [Frame] -- [X] **Could be added later (ping author)** Init System Parachain storage versions and add migration check jobs to CI (#1344 @liamaharon) [Frame] -- [x] (INTERNAL) expose the last relay chain block number as an API from parachain-system (#1761 @rphmeier) [Pallets] -- [x] (INTERNAL) feat: compute pallet/storage prefix hash at compile time (#1539 @yjhmelody) [Frame] -- [ ] **Could be added later (ping author)** Treasury spends various asset kinds (#1333 @muharem) [Frame] -- [x] (INTERNAL) Make CheckNonce refuse transactions signed by accounts with no providers (#1578 @zdave-parity) [Frame] -- [x] (INTERNAL) Warn on unchecked weight witness (#1818 @ggwpez) [Frame] -- [x] (INTERNAL) frame: use derive-impl for beefy and mmr pallets (#1867 @acatangiu) [Pallets] -- [x] (INTERNAL) Macros to use path instead of ident (#1474 @juangirini) [Frame] -- [X] **descr saids that no migration required** Refactor staking ledger (#1484 @gpestana) [Frame, Pallets] -- [x] (INTERNAL) extract amount method for fungible/s Imbalance (#1847 @muharem) [Frame] -- [x] (INTERNAL) Allow Locks/Holds/Reserves/Freezes by default when using pallet_balances TestDefaultConfig (#1880 @liamaharon) [Frame, Pallets] -- [x] (INTERNAL) nit: use traits::tokens::fungible => use traits::fungible (#1753 @gilescope) [Pallets] -- [X] **ported** Fix para-scheduler migration on Rococo (#1921 @ggwpez) [Pallets] -- [x] (INTERNAL) Trading trait and deal with metadata in Mutate trait for nonfungibles_v2 (#1561 @AlexD10S) [Pallets] -- [x] (INTERNAL) Message Queue use proper overweight limit (#1873 @ggwpez) [Frame] -- [x] **ported** paras-scheduler: Fix migration to V1 (#1969 @bkchr) [Pallets] -- [x] (INTERNAL) Resolve Credit to Account impls of OnUnbalanced trait (#1876 @muharem) [Frame] -- [x] (INTERNAL) CheckWeight: Add more logging (#1996 @bkchr) [Frame] -- [x] (NO MIGRATION REQUIRED) Make IdentityInfo generic in pallet-identity (#1661 @georgepisaltu) [Pallets] -- [x] (INTERNAL) Small optimisation to --profile dev wasm builds (#1851 @liamaharon) [Frame] - - -### Tests, Benchmarks & Documentation - -- [X] Point documentation links to monorepo (#1741 @skunert) [Documentation] -- [X] Revive Substrate Crate (#1477 @ggwpez) [Documentation] -- [X] Adding try_state hook for Treasury pallet (#1820 @wentelteefje) [Tests] -- [X] Fix links to implementers' guide (#1865 @antonva) [Documentation] -- [X] frame: use derive-impl for beefy and mmr pallets (#1867 @acatangiu) [Tests] -- [X] Remove clippy clone-double-ref lint noise (#1860 @seadanda) [Tests] -- [X] Publish xcm-emulator crate (#1881 @NachoPal) [Tests] -- [X] bridges: add missing crate descriptions (#1919 @acatangiu) [Documentation] -- [X] Publish penpal-runtime crate (#1904 @NachoPal) [Tests] -- [X] Use prebuilt try-runtime binary in CI (#1898 @liamaharon) [Tests] -- [X] Start BEEFY gadget by default for Polkadot nodes (#1945 @serban300) [Documentation] -- [X] Refactor candidates test in paras_inherent (#2004 @tdimitrov) [Tests] - - -### XCM, Bridges & Misc - -- [x] (RPC) archive: Implement height, hashByHeight and call (#1582 lexnv) [RPC API] -- [X] (INTERNAL) Enable mocking contracts (#1331 @pmikolajczyk41) [Smart Contracts] -- [ ] **TODO: Updated formulae, but still need to run benchmarks** Use Weight::MAX for reserve_asset_deposited, receive_teleported_asset benchmarks (#1726 @bkontur) [XCM] -- [X] (INTERNAL) allow treasury to do reserve asset transfers (#1447 @samelamin) [XCM] -- [ ] **TODO: We do not need v8, right?** Disabled validators runtime API (#1257 @tdimitrov) [Runtime API] -- [X] (INTERNAL) Small enhancements for NetworkExportTable and xcm-builder (#1848 @bkontur) [XCM] -- [X] (INTERNAL) increase MAX_ASSETS_FOR_BUY_EXECUTION (#1733 @xlc) [XCM] -- [X] (NO MIGRATION REQUIRED) Introduce XcmFeesToAccount fee manager (#1234 @KiChjang) [XCM] -- [X] (INTERNAL) Update bridges subtree (#1944 @bkontur) [Bridges] -- [X] (INTERNAL) XCM MultiAssets: sort after reanchoring (#2129 @serban300) [XCM] -- [X] **for Snowfork guys - no need for us** Direct XCM ExportMessage fees for different bridges to different receiver accounts (#2021 @serban300) [Bridges] - - -### Parachains & Cumulus - -- [X] (INTERNAL) Add event field names to HRMP Event variants (#1695 @seadanda) [System-Parachains] -- [X] **Could be added later (ping author)** Init System Parachain storage versions and add migration check jobs to CI (#1344 @liamaharon) [System-Parachains] -- [X] (INTERNAL) [xcm-emulator] Decouple the AccountId type from AccountId32 (#1458 @NachoPal) [System-Parachains] -- [X] (NODE) Fix Asset Hub collator crashing when starting from genesis (#1788 @georgepisaltu) [Cumulus] -- [ ] **TODO: Updated formulae, but still need to run benchmarks** Use Weight::MAX for reserve_asset_deposited, receive_teleported_asset benchmarks (#1726 @bkontur) [System-Parachains] -- [X] (INTERNAL) Xcm emulator nits (#1649 @bkontur) [Cumulus, System-Parachains] -- [X] **https://github.com/polkadot-fellows/runtimes/pull/62** Make System Parachains trusted Teleporters (#1368 @NachoPal) [System-Parachains] -- [X] (ROCOCO) cumulus: add asset-hub-rococo runtime based on asset-hub-kusama and add asset-bridging support to it #(1215 @acatangiu) [Cumulus] -- [X] (NODE) Cumulus: Allow aura to use initialized collation request receiver (#1911 @skunert) [Cumulus] -- [X] (NODE) Expose prometheus metrics for minimal-relay-chain node in collators (#1942 @skunert) [Cumulus] -- [X] (ROCOCO) [testnet] AssetHubRococo nits (#1954 @bkontur) [Cumulus] -- [X] (ROCOCO) Remove (rococo/westend)-runtime deps from testnet AssetHubs (#1979 @bkontur) [Cumulus] -- [X] (ROCOCO) [testnet] BridgeHubRococo nits (#1972 @bkontur) [Cumulus] -- [X] (TESTS) Removed TODO from test-case for hard-coded delivery fee estimation (#2042 @bkontur) [Cumulus] -- [X] (ROCOCO) [testnet] Align testnet system parachain runtimes using RelayTreasuryLocation and SystemParachains in the same way (#2023 @bkontur) [Cumulus] -- [X] (ROCOCO) [testnet] Add AssetHubRococo <-> AssetHubWestend asset bridging support (#1967 @bkontur) [Cumulus] -########################################### - - -## [1.0.3] XX.XX.XXXX - -### Changed - ## [1.0.0] 22.10.2023 ### Changed From 5c7d71fdb76a094fd5aca1da727bd3103af73413 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Tue, 21 Nov 2023 10:13:46 +0300 Subject: [PATCH 30/68] revert non-sdk version updates --- Cargo.lock | 28 +++++++++---------- relay/kusama/Cargo.toml | 18 ++++++------ relay/kusama/constants/Cargo.toml | 2 +- relay/polkadot/Cargo.toml | 18 ++++++------ relay/polkadot/constants/Cargo.toml | 2 +- .../asset-hubs/asset-hub-kusama/Cargo.toml | 6 ++-- .../asset-hubs/asset-hub-polkadot/Cargo.toml | 6 ++-- .../bridge-hubs/bridge-hub-kusama/Cargo.toml | 8 +++--- .../bridge-hub-polkadot/Cargo.toml | 8 +++--- .../collectives-polkadot/Cargo.toml | 6 ++-- .../gluttons/glutton-kusama/Cargo.toml | 4 +-- 11 files changed, 53 insertions(+), 53 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 85661ae3a8..e3e9eb7890 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2325,9 +2325,9 @@ dependencies = [ [[package]] name = "cumulus-pallet-parachain-system" -version = "0.4.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1eef33ef1ff3b1f3c4b078d6ee92d7473457c169606583f503d5ba89092a933f" +checksum = "d20d2280051998fcf113f04d25d4b39f27b449570b6350fdfb7e92541cb0aae7" dependencies = [ "bytes", "cumulus-pallet-parachain-system-proc-macro", @@ -7622,9 +7622,9 @@ dependencies = [ [[package]] name = "parity-scale-codec" -version = "3.6.5" +version = "3.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dec8a8073036902368c2cdc0387e85ff9a37054d7e7c98e592145e0c92cd4fb" +checksum = "dd8e946cc0cc711189c0b0249fb8b599cbeeab9784d83c415719368bb8d4ac64" dependencies = [ "arrayvec 0.7.4", "bitvec", @@ -7637,9 +7637,9 @@ dependencies = [ [[package]] name = "parity-scale-codec-derive" -version = "3.6.5" +version = "3.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "312270ee71e1cd70289dacf597cab7b207aa107d2f28191c2ae45b2ece18a260" +checksum = "2a296c3079b5fefbc499e1de58dc26c09b1b9a5952d26694ee89f04a43ebbb3e" dependencies = [ "proc-macro-crate", "proc-macro2", @@ -10306,18 +10306,18 @@ checksum = "f97841a747eef040fcd2e7b3b9a220a7205926e60488e673d9e4926d27772ce5" [[package]] name = "serde" -version = "1.0.190" +version = "1.0.188" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91d3c334ca1ee894a2c6f6ad698fe8c435b76d504b13d436f0685d648d6d96f7" +checksum = "cf9e0fcba69a370eed61bcf2b728575f726b50b55cba78064753d708ddc7549e" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.190" +version = "1.0.188" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67c5609f394e5c2bd7fc51efda478004ea80ef42fee983d5c67a65e34f32c0e3" +checksum = "4eca7ac642d82aa35b60049a6eccb4be6be75e599bd2e9adb5f875a737654af2" dependencies = [ "proc-macro2", "quote", @@ -10507,9 +10507,9 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.11.1" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a" +checksum = "62bb4feee49fdd9f707ef802e22365a35de4b7b299de4763d44bfea899442ff9" [[package]] name = "snap" @@ -12036,9 +12036,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.33.0" +version = "1.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f38200e3ef7995e5ef13baec2f432a6da0aa9ac495b2c0e8f3b7eec2c92d653" +checksum = "17ed6077ed6cd6c74735e21f37eb16dc3935f96878b1fe961074089cc80893f9" dependencies = [ "backtrace", "bytes", diff --git a/relay/kusama/Cargo.toml b/relay/kusama/Cargo.toml index 6c9ab41da1..f81e9e18e6 100644 --- a/relay/kusama/Cargo.toml +++ b/relay/kusama/Cargo.toml @@ -9,15 +9,15 @@ repository.workspace = true version.workspace = true [dependencies] -bitvec = { version = "1.0.1", default-features = false, features = ["alloc"] } -parity-scale-codec = { version = "3.6.5", default-features = false, features = ["derive", "max-encoded-len"] } -scale-info = { version = "2.10.0", default-features = false, features = ["derive"] } -log = { version = "0.4.20", default-features = false } +bitvec = { version = "1.0.0", default-features = false, features = ["alloc"] } +parity-scale-codec = { version = "3.6.1", default-features = false, features = ["derive", "max-encoded-len"] } +scale-info = { version = "2.5.0", default-features = false, features = ["derive"] } +log = { version = "0.4.17", default-features = false } rustc-hex = { version = "2.1.0", default-features = false } -serde = { version = "1.0.190", default-features = false } -serde_derive = { version = "1.0.190", optional = true } +serde = { version = "1.0.188", default-features = false } +serde_derive = { version = "1.0.117", optional = true } static_assertions = "1.1.0" -smallvec = "1.11.1" +smallvec = "1.8.0" authority-discovery-primitives = { package = "sp-authority-discovery", default-features = false , version = "23.0.0" } babe-primitives = { package = "sp-consensus-babe", default-features = false , version = "0.29.0" } @@ -120,9 +120,9 @@ tiny-keccak = { version = "2.0.2", features = ["keccak"] } keyring = { package = "sp-keyring", version = "28.0.0" } sp-trie = { version = "26.0.0" } separator = "0.4.1" -serde_json = "1.0.108" +serde_json = "1.0.96" remote-externalities = { package = "frame-remote-externalities" , version = "0.32.0" } -tokio = { version = "1.33.0", features = ["macros"] } +tokio = { version = "1.24.2", features = ["macros"] } sp-tracing = { default-features = false , version = "14.0.0" } [build-dependencies] diff --git a/relay/kusama/constants/Cargo.toml b/relay/kusama/constants/Cargo.toml index a53bda10d7..9127334bdc 100644 --- a/relay/kusama/constants/Cargo.toml +++ b/relay/kusama/constants/Cargo.toml @@ -7,7 +7,7 @@ edition.workspace = true license.workspace = true [dependencies] -smallvec = "1.11.1" +smallvec = "1.8.0" frame-support = { default-features = false , version = "25.0.0" } primitives = { package = "polkadot-primitives", default-features = false , version = "4.0.0" } diff --git a/relay/polkadot/Cargo.toml b/relay/polkadot/Cargo.toml index dccbf65a83..787617a72e 100644 --- a/relay/polkadot/Cargo.toml +++ b/relay/polkadot/Cargo.toml @@ -8,15 +8,15 @@ edition.workspace = true license.workspace = true [dependencies] -bitvec = { version = "1.0.1", default-features = false, features = ["alloc"] } -parity-scale-codec = { version = "3.6.5", default-features = false, features = ["derive", "max-encoded-len"] } -scale-info = { version = "2.10.0", default-features = false, features = ["derive"] } -log = { version = "0.4.20", default-features = false } +bitvec = { version = "1.0.0", default-features = false, features = ["alloc"] } +parity-scale-codec = { version = "3.6.1", default-features = false, features = ["derive", "max-encoded-len"] } +scale-info = { version = "2.5.0", default-features = false, features = ["derive"] } +log = { version = "0.4.17", default-features = false } rustc-hex = { version = "2.1.0", default-features = false } -serde = { version = "1.0.190", default-features = false } -serde_derive = { version = "1.0.190", optional = true } +serde = { version = "1.0.188", default-features = false } +serde_derive = { version = "1.0.117", optional = true } static_assertions = "1.1.0" -smallvec = "1.11.1" +smallvec = "1.8.0" authority-discovery-primitives = { package = "sp-authority-discovery", default-features = false , version = "23.0.0" } babe-primitives = { package = "sp-consensus-babe", default-features = false , version = "0.29.0" } @@ -111,10 +111,10 @@ hex-literal = "0.4.1" tiny-keccak = { version = "2.0.2", features = ["keccak"] } keyring = { package = "sp-keyring", version = "28.0.0" } sp-trie = { version = "26.0.0" } -serde_json = "1.0.108" +serde_json = "1.0.96" separator = "0.4.1" remote-externalities = { package = "frame-remote-externalities" , version = "0.32.0" } -tokio = { version = "1.33.0", features = ["macros"] } +tokio = { version = "1.24.2", features = ["macros"] } sp-tracing = { default-features = false , version = "14.0.0" } [build-dependencies] diff --git a/relay/polkadot/constants/Cargo.toml b/relay/polkadot/constants/Cargo.toml index 3d52f018a6..706b43261e 100644 --- a/relay/polkadot/constants/Cargo.toml +++ b/relay/polkadot/constants/Cargo.toml @@ -7,7 +7,7 @@ edition.workspace = true license.workspace = true [dependencies] -smallvec = "1.11.1" +smallvec = "1.8.0" frame-support = { default-features = false , version = "25.0.0" } primitives = { package = "polkadot-primitives", default-features = false , version = "4.0.0" } diff --git a/system-parachains/asset-hubs/asset-hub-kusama/Cargo.toml b/system-parachains/asset-hubs/asset-hub-kusama/Cargo.toml index eb8291f397..b843e90543 100644 --- a/system-parachains/asset-hubs/asset-hub-kusama/Cargo.toml +++ b/system-parachains/asset-hubs/asset-hub-kusama/Cargo.toml @@ -9,11 +9,11 @@ repository.workspace = true version.workspace = true [dependencies] -codec = { package = "parity-scale-codec", version = "3.6.5", default-features = false, features = ["derive", "max-encoded-len"] } +codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false, features = ["derive", "max-encoded-len"] } hex-literal = { version = "0.4.1" } log = { version = "0.4.20", default-features = false } -scale-info = { version = "2.10.0", default-features = false, features = ["derive"] } -smallvec = "1.11.1" +scale-info = { version = "2.9.0", default-features = false, features = ["derive"] } +smallvec = "1.11.0" # Substrate frame-benchmarking = { default-features = false, optional = true, version = "25.0.0" } diff --git a/system-parachains/asset-hubs/asset-hub-polkadot/Cargo.toml b/system-parachains/asset-hubs/asset-hub-polkadot/Cargo.toml index cf3c803c97..1271646050 100644 --- a/system-parachains/asset-hubs/asset-hub-polkadot/Cargo.toml +++ b/system-parachains/asset-hubs/asset-hub-polkadot/Cargo.toml @@ -9,11 +9,11 @@ repository.workspace = true version.workspace = true [dependencies] -codec = { package = "parity-scale-codec", version = "3.6.5", default-features = false, features = ["derive", "max-encoded-len"] } +codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false, features = ["derive", "max-encoded-len"] } hex-literal = { version = "0.4.1", optional = true } log = { version = "0.4.20", default-features = false } -scale-info = { version = "2.10.0", default-features = false, features = ["derive"] } -smallvec = "1.11.1" +scale-info = { version = "2.9.0", default-features = false, features = ["derive"] } +smallvec = "1.11.0" # Substrate frame-benchmarking = { default-features = false, optional = true, version = "25.0.0" } diff --git a/system-parachains/bridge-hubs/bridge-hub-kusama/Cargo.toml b/system-parachains/bridge-hubs/bridge-hub-kusama/Cargo.toml index 2b8f3cfc89..33e997535d 100644 --- a/system-parachains/bridge-hubs/bridge-hub-kusama/Cargo.toml +++ b/system-parachains/bridge-hubs/bridge-hub-kusama/Cargo.toml @@ -12,12 +12,12 @@ version.workspace = true substrate-wasm-builder = { optional = true , version = "14.0.0" } [dependencies] -codec = { package = "parity-scale-codec", version = "3.6.5", default-features = false, features = ["derive"] } +codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false, features = ["derive"] } hex-literal = { version = "0.4.1" } log = { version = "0.4.20", default-features = false } -scale-info = { version = "2.10.0", default-features = false, features = ["derive"] } -serde = { version = "1.0.190", optional = true, features = ["derive"] } -smallvec = "1.11.1" +scale-info = { version = "2.9.0", default-features = false, features = ["derive"] } +serde = { version = "1.0.188", optional = true, features = ["derive"] } +smallvec = "1.11.0" # Substrate frame-benchmarking = { default-features = false, optional = true, version = "25.0.0" } diff --git a/system-parachains/bridge-hubs/bridge-hub-polkadot/Cargo.toml b/system-parachains/bridge-hubs/bridge-hub-polkadot/Cargo.toml index aad6871f51..5d2f084447 100644 --- a/system-parachains/bridge-hubs/bridge-hub-polkadot/Cargo.toml +++ b/system-parachains/bridge-hubs/bridge-hub-polkadot/Cargo.toml @@ -12,12 +12,12 @@ version.workspace = true substrate-wasm-builder = { optional = true , version = "14.0.0" } [dependencies] -codec = { package = "parity-scale-codec", version = "3.6.5", default-features = false, features = ["derive"] } +codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false, features = ["derive"] } hex-literal = { version = "0.4.1" } log = { version = "0.4.20", default-features = false } -scale-info = { version = "2.10.0", default-features = false, features = ["derive"] } -serde = { version = "1.0.190", optional = true, features = ["derive"] } -smallvec = "1.11.1" +scale-info = { version = "2.9.0", default-features = false, features = ["derive"] } +serde = { version = "1.0.188", optional = true, features = ["derive"] } +smallvec = "1.11.0" # Substrate frame-benchmarking = { default-features = false, optional = true, version = "25.0.0" } diff --git a/system-parachains/collectives/collectives-polkadot/Cargo.toml b/system-parachains/collectives/collectives-polkadot/Cargo.toml index 57156c5ec2..aeffdeb52f 100644 --- a/system-parachains/collectives/collectives-polkadot/Cargo.toml +++ b/system-parachains/collectives/collectives-polkadot/Cargo.toml @@ -9,11 +9,11 @@ repository.workspace = true version.workspace = true [dependencies] -codec = { package = "parity-scale-codec", version = "3.6.5", default-features = false, features = ["derive", "max-encoded-len"] } +codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false, features = ["derive", "max-encoded-len"] } hex-literal = { version = "0.4.1" } log = { version = "0.4.20", default-features = false } -scale-info = { version = "2.10.0", default-features = false, features = ["derive"] } -smallvec = "1.11.1" +scale-info = { version = "2.9.0", default-features = false, features = ["derive"] } +smallvec = "1.11.0" # Substrate frame-benchmarking = { default-features = false, optional = true, version = "25.0.0" } diff --git a/system-parachains/gluttons/glutton-kusama/Cargo.toml b/system-parachains/gluttons/glutton-kusama/Cargo.toml index b037ddbc21..95adc050a6 100644 --- a/system-parachains/gluttons/glutton-kusama/Cargo.toml +++ b/system-parachains/gluttons/glutton-kusama/Cargo.toml @@ -9,8 +9,8 @@ repository.workspace = true version.workspace = true [dependencies] -codec = { package = "parity-scale-codec", version = "3.6.5", default-features = false, features = ["derive"] } -scale-info = { version = "2.10.0", default-features = false, features = ["derive"] } +codec = { package = "parity-scale-codec", version = "3.0.0", default-features = false, features = ["derive"] } +scale-info = { version = "2.9.0", default-features = false, features = ["derive"] } # Substrate frame-benchmarking = { default-features = false, optional = true, version = "25.0.0" } From e1026574f8140362dd680cb98d5f8c88636ec932 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Tue, 21 Nov 2023 10:54:42 +0300 Subject: [PATCH 31/68] fixed benchmarks compilation for relay chains --- relay/kusama/src/lib.rs | 16 ++++++++++++++++ relay/kusama/src/xcm_config.rs | 9 ++++----- relay/polkadot/src/lib.rs | 16 ++++++++++++++++ relay/polkadot/src/xcm_config.rs | 9 ++++----- 4 files changed, 40 insertions(+), 10 deletions(-) diff --git a/relay/kusama/src/lib.rs b/relay/kusama/src/lib.rs index 62244d7817..c459718116 100644 --- a/relay/kusama/src/lib.rs +++ b/relay/kusama/src/lib.rs @@ -2454,9 +2454,24 @@ sp_api::impl_runtime_apis! { impl pallet_nomination_pools_benchmarking::Config for Runtime {} impl runtime_parachains::disputes::slashing::benchmarking::Config for Runtime {} + parameter_types! { + pub ExistentialDepositMultiAsset: Option = Some(( + TokenLocation::get(), + ExistentialDeposit::get() + ).into()); + pub ToParachain: ParaId = kusama_runtime_constants::system_parachain::ASSET_HUB_ID.into(); + } + impl pallet_xcm_benchmarks::Config for Runtime { type XcmConfig = XcmConfig; type AccountIdConverter = SovereignAccountOf; + type DeliveryHelper = runtime_common::xcm_sender::ToParachainDeliveryHelper< + XcmConfig, + ExistentialDepositMultiAsset, + xcm_config::PriceForChildParachainDelivery, + ToParachain, + (), + >; fn valid_destination() -> Result { Ok(Statemine::get()) } @@ -2493,6 +2508,7 @@ sp_api::impl_runtime_apis! { } impl pallet_xcm_benchmarks::generic::Config for Runtime { + type TransactAsset = Balances; type RuntimeCall = RuntimeCall; fn worst_case_response() -> (u64, Response) { diff --git a/relay/kusama/src/xcm_config.rs b/relay/kusama/src/xcm_config.rs index 5341011cba..cd8ba8bd43 100644 --- a/relay/kusama/src/xcm_config.rs +++ b/relay/kusama/src/xcm_config.rs @@ -115,15 +115,14 @@ parameter_types! { pub const BaseDeliveryFee: u128 = CENTS.saturating_mul(3); } +pub type PriceForChildParachainDelivery = + ExponentialPrice; + /// The XCM router. When we want to send an XCM message, we use this type. It amalgamates all of our /// individual routers. pub type XcmRouter = WithUniqueTopic<( // Only one router so far - use DMP to communicate with child parachains. - ChildParachainRouter< - Runtime, - XcmPallet, - ExponentialPrice, - >, + ChildParachainRouter, )>; parameter_types! { diff --git a/relay/polkadot/src/lib.rs b/relay/polkadot/src/lib.rs index c3608f4d87..8b32866183 100644 --- a/relay/polkadot/src/lib.rs +++ b/relay/polkadot/src/lib.rs @@ -2251,9 +2251,24 @@ sp_api::impl_runtime_apis! { let treasury_key = frame_system::Account::::hashed_key_for(Treasury::account_id()); whitelist.push(treasury_key.to_vec().into()); + parameter_types! { + pub ExistentialDepositMultiAsset: Option = Some(( + TokenLocation::get(), + ExistentialDeposit::get() + ).into()); + pub ToParachain: ParaId = polkadot_runtime_constants::system_parachain::ASSET_HUB_ID.into(); + } + impl pallet_xcm_benchmarks::Config for Runtime { type XcmConfig = XcmConfig; type AccountIdConverter = SovereignAccountOf; + type DeliveryHelper = runtime_common::xcm_sender::ToParachainDeliveryHelper< + XcmConfig, + ExistentialDepositMultiAsset, + xcm_config::PriceForChildParachainDelivery, + ToParachain, + (), + >; fn valid_destination() -> Result { Ok(StatemintLocation::get()) } @@ -2287,6 +2302,7 @@ sp_api::impl_runtime_apis! { } impl pallet_xcm_benchmarks::generic::Config for Runtime { + type TransactAsset = Balances; type RuntimeCall = RuntimeCall; fn worst_case_response() -> (u64, Response) { diff --git a/relay/polkadot/src/xcm_config.rs b/relay/polkadot/src/xcm_config.rs index 89ffe8f312..750ca0b637 100644 --- a/relay/polkadot/src/xcm_config.rs +++ b/relay/polkadot/src/xcm_config.rs @@ -122,15 +122,14 @@ parameter_types! { pub const BaseDeliveryFee: u128 = CENTS.saturating_mul(3); } +pub type PriceForChildParachainDelivery = + ExponentialPrice; + /// The XCM router. When we want to send an XCM message, we use this type. It amalgamates all of our /// individual routers. pub type XcmRouter = WithUniqueTopic<( // Only one router so far - use DMP to communicate with child parachains. - ChildParachainRouter< - Runtime, - XcmPallet, - ExponentialPrice, - >, + ChildParachainRouter, )>; parameter_types! { From ec9e6da1cde39ea7c68d8a767a45183359e6036b Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Tue, 21 Nov 2023 10:55:15 +0300 Subject: [PATCH 32/68] Revert "removed unused Kusama weight files" This reverts commit fdec29097acbce56f1ba78d01889622423e7b96f. --- .../weights/frame_benchmarking_baseline.rs | 103 ++++ relay/kusama/src/weights/mod.rs | 6 + .../src/weights/pallet_collective_council.rs | 322 +++++++++++ .../pallet_collective_technical_committee.rs | 322 +++++++++++ relay/kusama/src/weights/pallet_democracy.rs | 513 ++++++++++++++++++ .../src/weights/pallet_elections_phragmen.rs | 303 +++++++++++ relay/kusama/src/weights/pallet_membership.rs | 202 +++++++ relay/kusama/src/weights/pallet_offences.rs | 217 ++++++++ relay/kusama/src/weights/pallet_recovery.rs | 181 ++++++ relay/kusama/src/weights/pallet_tips.rs | 159 ++++++ .../weights/pallet_xcm_benchmarks_fungible.rs | 184 +++++++ .../weights/pallet_xcm_benchmarks_generic.rs | 393 ++++++++++++++ 12 files changed, 2905 insertions(+) create mode 100644 relay/kusama/src/weights/frame_benchmarking_baseline.rs create mode 100644 relay/kusama/src/weights/pallet_collective_council.rs create mode 100644 relay/kusama/src/weights/pallet_collective_technical_committee.rs create mode 100644 relay/kusama/src/weights/pallet_democracy.rs create mode 100644 relay/kusama/src/weights/pallet_elections_phragmen.rs create mode 100644 relay/kusama/src/weights/pallet_membership.rs create mode 100644 relay/kusama/src/weights/pallet_offences.rs create mode 100644 relay/kusama/src/weights/pallet_recovery.rs create mode 100644 relay/kusama/src/weights/pallet_tips.rs create mode 100644 relay/kusama/src/weights/pallet_xcm_benchmarks_fungible.rs create mode 100644 relay/kusama/src/weights/pallet_xcm_benchmarks_generic.rs diff --git a/relay/kusama/src/weights/frame_benchmarking_baseline.rs b/relay/kusama/src/weights/frame_benchmarking_baseline.rs new file mode 100644 index 0000000000..7cd564d7ed --- /dev/null +++ b/relay/kusama/src/weights/frame_benchmarking_baseline.rs @@ -0,0 +1,103 @@ +// Copyright (C) Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . + +//! Autogenerated weights for `frame_benchmarking::baseline` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-09-21, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `a3dce7bd4066`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! WASM-EXECUTION: `Compiled`, CHAIN: `Some("spec-kusama.json")`, DB CACHE: 1024 + +// Executed Command: +// /builds/polkadot-sdk/target/production/polkadot +// benchmark +// pallet +// --chain=spec-kusama.json +// --pallet=frame_benchmarking::baseline +// --extrinsic= +// --output=/builds/runtimes/relay/kusama/src/weights +// --header=/builds/bench/header.txt +// --no-median-slopes +// --no-min-squares + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `frame_benchmarking::baseline`. +pub struct WeightInfo(PhantomData); +impl frame_benchmarking::baseline::WeightInfo for WeightInfo { + /// The range of component `i` is `[0, 1000000]`. + fn addition(_i: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 141_000 picoseconds. + Weight::from_parts(182_446, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// The range of component `i` is `[0, 1000000]`. + fn subtraction(_i: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 140_000 picoseconds. + Weight::from_parts(181_688, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// The range of component `i` is `[0, 1000000]`. + fn multiplication(_i: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 140_000 picoseconds. + Weight::from_parts(178_127, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// The range of component `i` is `[0, 1000000]`. + fn division(_i: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 135_000 picoseconds. + Weight::from_parts(175_786, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn hashing() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 21_633_308_000 picoseconds. + Weight::from_parts(21_658_241_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// The range of component `i` is `[0, 100]`. + fn sr25519_verification(i: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 176_000 picoseconds. + Weight::from_parts(2_627_074, 0) + .saturating_add(Weight::from_parts(0, 0)) + // Standard Error: 6_117 + .saturating_add(Weight::from_parts(55_299_711, 0).saturating_mul(i.into())) + } +} diff --git a/relay/kusama/src/weights/mod.rs b/relay/kusama/src/weights/mod.rs index b0d2061571..b3642d49d4 100644 --- a/relay/kusama/src/weights/mod.rs +++ b/relay/kusama/src/weights/mod.rs @@ -22,12 +22,17 @@ pub mod pallet_balances; pub mod pallet_balances_nis_counterpart_balances; pub mod pallet_bounties; pub mod pallet_child_bounties; +pub mod pallet_collective_council; +pub mod pallet_collective_technical_committee; pub mod pallet_conviction_voting; +pub mod pallet_democracy; pub mod pallet_election_provider_multi_phase; +pub mod pallet_elections_phragmen; pub mod pallet_fast_unstake; pub mod pallet_identity; pub mod pallet_im_online; pub mod pallet_indices; +pub mod pallet_membership; pub mod pallet_message_queue; pub mod pallet_multisig; pub mod pallet_nis; @@ -42,6 +47,7 @@ pub mod pallet_session; pub mod pallet_society; pub mod pallet_staking; pub mod pallet_timestamp; +pub mod pallet_tips; pub mod pallet_treasury; pub mod pallet_utility; pub mod pallet_vesting; diff --git a/relay/kusama/src/weights/pallet_collective_council.rs b/relay/kusama/src/weights/pallet_collective_council.rs new file mode 100644 index 0000000000..84157595f7 --- /dev/null +++ b/relay/kusama/src/weights/pallet_collective_council.rs @@ -0,0 +1,322 @@ +// Copyright (C) Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . +//! Autogenerated weights for `pallet_collective` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-03-15, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm5`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("kusama-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/production/polkadot +// benchmark +// pallet +// --chain=kusama-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_collective +// --extrinsic=* +// --execution=wasm +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/kusama/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] + +use frame_support::{traits::Get, weights::Weight}; +use sp_std::marker::PhantomData; + +/// Weight functions for `pallet_collective`. +pub struct WeightInfo(PhantomData); +impl pallet_collective::WeightInfo for WeightInfo { + /// Storage: Council Members (r:1 w:1) + /// Proof Skipped: Council Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Council Proposals (r:1 w:0) + /// Proof Skipped: Council Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Council Voting (r:100 w:100) + /// Proof Skipped: Council Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: Council Prime (r:0 w:1) + /// Proof Skipped: Council Prime (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `m` is `[0, 100]`. + /// The range of component `n` is `[0, 100]`. + /// The range of component `p` is `[0, 100]`. + /// The range of component `m` is `[0, 100]`. + /// The range of component `n` is `[0, 100]`. + /// The range of component `p` is `[0, 100]`. + fn set_members(m: u32, _n: u32, p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0 + m * (3232 ±0) + p * (3190 ±0)` + // Estimated: `19164 + m * (7799 ±17) + p * (10110 ±17)` + // Minimum execution time: 17_032_000 picoseconds. + Weight::from_parts(17_263_000, 0) + .saturating_add(Weight::from_parts(0, 19164)) + // Standard Error: 51_363 + .saturating_add(Weight::from_parts(5_779_193, 0).saturating_mul(m.into())) + // Standard Error: 51_363 + .saturating_add(Weight::from_parts(8_434_866, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(p.into()))) + .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(p.into()))) + .saturating_add(Weight::from_parts(0, 7799).saturating_mul(m.into())) + .saturating_add(Weight::from_parts(0, 10110).saturating_mul(p.into())) + } + /// Storage: Council Members (r:1 w:0) + /// Proof Skipped: Council Members (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `b` is `[2, 1024]`. + /// The range of component `m` is `[1, 100]`. + /// The range of component `b` is `[2, 1024]`. + /// The range of component `m` is `[1, 100]`. + fn execute(b: u32, m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `136 + m * (32 ±0)` + // Estimated: `1622 + m * (32 ±0)` + // Minimum execution time: 15_686_000 picoseconds. + Weight::from_parts(15_185_500, 0) + .saturating_add(Weight::from_parts(0, 1622)) + // Standard Error: 26 + .saturating_add(Weight::from_parts(1_363, 0).saturating_mul(b.into())) + // Standard Error: 277 + .saturating_add(Weight::from_parts(15_720, 0).saturating_mul(m.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(Weight::from_parts(0, 32).saturating_mul(m.into())) + } + /// Storage: Council Members (r:1 w:0) + /// Proof Skipped: Council Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Council ProposalOf (r:1 w:0) + /// Proof Skipped: Council ProposalOf (max_values: None, max_size: None, mode: Measured) + /// The range of component `b` is `[2, 1024]`. + /// The range of component `m` is `[1, 100]`. + /// The range of component `b` is `[2, 1024]`. + /// The range of component `m` is `[1, 100]`. + fn propose_execute(b: u32, m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `136 + m * (32 ±0)` + // Estimated: `5224 + m * (64 ±0)` + // Minimum execution time: 18_314_000 picoseconds. + Weight::from_parts(17_659_522, 0) + .saturating_add(Weight::from_parts(0, 5224)) + // Standard Error: 22 + .saturating_add(Weight::from_parts(1_153, 0).saturating_mul(b.into())) + // Standard Error: 237 + .saturating_add(Weight::from_parts(25_439, 0).saturating_mul(m.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(Weight::from_parts(0, 64).saturating_mul(m.into())) + } + /// Storage: Council Members (r:1 w:0) + /// Proof Skipped: Council Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Council ProposalOf (r:1 w:1) + /// Proof Skipped: Council ProposalOf (max_values: None, max_size: None, mode: Measured) + /// Storage: Council Proposals (r:1 w:1) + /// Proof Skipped: Council Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Council ProposalCount (r:1 w:1) + /// Proof Skipped: Council ProposalCount (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Council Voting (r:0 w:1) + /// Proof Skipped: Council Voting (max_values: None, max_size: None, mode: Measured) + /// The range of component `b` is `[2, 1024]`. + /// The range of component `m` is `[2, 100]`. + /// The range of component `p` is `[1, 100]`. + /// The range of component `b` is `[2, 1024]`. + /// The range of component `m` is `[2, 100]`. + /// The range of component `p` is `[1, 100]`. + fn propose_proposed(b: u32, m: u32, p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `426 + m * (32 ±0) + p * (36 ±0)` + // Estimated: `9685 + m * (165 ±0) + p * (180 ±0)` + // Minimum execution time: 23_916_000 picoseconds. + Weight::from_parts(25_192_989, 0) + .saturating_add(Weight::from_parts(0, 9685)) + // Standard Error: 50 + .saturating_add(Weight::from_parts(2_327, 0).saturating_mul(b.into())) + // Standard Error: 528 + .saturating_add(Weight::from_parts(17_763, 0).saturating_mul(m.into())) + // Standard Error: 522 + .saturating_add(Weight::from_parts(116_903, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(4)) + .saturating_add(Weight::from_parts(0, 165).saturating_mul(m.into())) + .saturating_add(Weight::from_parts(0, 180).saturating_mul(p.into())) + } + /// Storage: Council Members (r:1 w:0) + /// Proof Skipped: Council Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Council Voting (r:1 w:1) + /// Proof Skipped: Council Voting (max_values: None, max_size: None, mode: Measured) + /// The range of component `m` is `[5, 100]`. + /// The range of component `m` is `[5, 100]`. + fn vote(m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `875 + m * (64 ±0)` + // Estimated: `6698 + m * (128 ±0)` + // Minimum execution time: 21_641_000 picoseconds. + Weight::from_parts(22_373_888, 0) + .saturating_add(Weight::from_parts(0, 6698)) + // Standard Error: 299 + .saturating_add(Weight::from_parts(41_168, 0).saturating_mul(m.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + .saturating_add(Weight::from_parts(0, 128).saturating_mul(m.into())) + } + /// Storage: Council Voting (r:1 w:1) + /// Proof Skipped: Council Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: Council Members (r:1 w:0) + /// Proof Skipped: Council Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Council Proposals (r:1 w:1) + /// Proof Skipped: Council Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Council ProposalOf (r:0 w:1) + /// Proof Skipped: Council ProposalOf (max_values: None, max_size: None, mode: Measured) + /// The range of component `m` is `[4, 100]`. + /// The range of component `p` is `[1, 100]`. + /// The range of component `m` is `[4, 100]`. + /// The range of component `p` is `[1, 100]`. + fn close_early_disapproved(m: u32, p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `464 + m * (64 ±0) + p * (36 ±0)` + // Estimated: `8211 + m * (260 ±0) + p * (144 ±0)` + // Minimum execution time: 26_158_000 picoseconds. + Weight::from_parts(27_675_242, 0) + .saturating_add(Weight::from_parts(0, 8211)) + // Standard Error: 845 + .saturating_add(Weight::from_parts(10_799, 0).saturating_mul(m.into())) + // Standard Error: 824 + .saturating_add(Weight::from_parts(141_199, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_parts(0, 260).saturating_mul(m.into())) + .saturating_add(Weight::from_parts(0, 144).saturating_mul(p.into())) + } + /// Storage: Council Voting (r:1 w:1) + /// Proof Skipped: Council Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: Council Members (r:1 w:0) + /// Proof Skipped: Council Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Council ProposalOf (r:1 w:1) + /// Proof Skipped: Council ProposalOf (max_values: None, max_size: None, mode: Measured) + /// Storage: Council Proposals (r:1 w:1) + /// Proof Skipped: Council Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `b` is `[2, 1024]`. + /// The range of component `m` is `[4, 100]`. + /// The range of component `p` is `[1, 100]`. + /// The range of component `b` is `[2, 1024]`. + /// The range of component `m` is `[4, 100]`. + /// The range of component `p` is `[1, 100]`. + fn close_early_approved(b: u32, m: u32, p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `766 + b * (1 ±0) + m * (64 ±0) + p * (40 ±0)` + // Estimated: `12372 + b * (4 ±0) + m * (264 ±0) + p * (160 ±0)` + // Minimum execution time: 37_601_000 picoseconds. + Weight::from_parts(41_302_278, 0) + .saturating_add(Weight::from_parts(0, 12372)) + // Standard Error: 67 + .saturating_add(Weight::from_parts(1_608, 0).saturating_mul(b.into())) + // Standard Error: 716 + .saturating_add(Weight::from_parts(14_628, 0).saturating_mul(m.into())) + // Standard Error: 698 + .saturating_add(Weight::from_parts(129_997, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_parts(0, 4).saturating_mul(b.into())) + .saturating_add(Weight::from_parts(0, 264).saturating_mul(m.into())) + .saturating_add(Weight::from_parts(0, 160).saturating_mul(p.into())) + } + /// Storage: Council Voting (r:1 w:1) + /// Proof Skipped: Council Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: Council Members (r:1 w:0) + /// Proof Skipped: Council Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Council Prime (r:1 w:0) + /// Proof Skipped: Council Prime (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Council Proposals (r:1 w:1) + /// Proof Skipped: Council Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Council ProposalOf (r:0 w:1) + /// Proof Skipped: Council ProposalOf (max_values: None, max_size: None, mode: Measured) + /// The range of component `m` is `[4, 100]`. + /// The range of component `p` is `[1, 100]`. + /// The range of component `m` is `[4, 100]`. + /// The range of component `p` is `[1, 100]`. + fn close_disapproved(m: u32, p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `484 + m * (64 ±0) + p * (36 ±0)` + // Estimated: `10240 + m * (325 ±0) + p * (180 ±0)` + // Minimum execution time: 29_185_000 picoseconds. + Weight::from_parts(30_594_183, 0) + .saturating_add(Weight::from_parts(0, 10240)) + // Standard Error: 865 + .saturating_add(Weight::from_parts(30_165, 0).saturating_mul(m.into())) + // Standard Error: 844 + .saturating_add(Weight::from_parts(131_623, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_parts(0, 325).saturating_mul(m.into())) + .saturating_add(Weight::from_parts(0, 180).saturating_mul(p.into())) + } + /// Storage: Council Voting (r:1 w:1) + /// Proof Skipped: Council Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: Council Members (r:1 w:0) + /// Proof Skipped: Council Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Council Prime (r:1 w:0) + /// Proof Skipped: Council Prime (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Council ProposalOf (r:1 w:1) + /// Proof Skipped: Council ProposalOf (max_values: None, max_size: None, mode: Measured) + /// Storage: Council Proposals (r:1 w:1) + /// Proof Skipped: Council Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `b` is `[2, 1024]`. + /// The range of component `m` is `[4, 100]`. + /// The range of component `p` is `[1, 100]`. + /// The range of component `b` is `[2, 1024]`. + /// The range of component `m` is `[4, 100]`. + /// The range of component `p` is `[1, 100]`. + fn close_approved(b: u32, m: u32, p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `786 + b * (1 ±0) + m * (64 ±0) + p * (40 ±0)` + // Estimated: `14575 + b * (5 ±0) + m * (330 ±0) + p * (200 ±0)` + // Minimum execution time: 43_157_000 picoseconds. + Weight::from_parts(43_691_874, 0) + .saturating_add(Weight::from_parts(0, 14575)) + // Standard Error: 61 + .saturating_add(Weight::from_parts(1_862, 0).saturating_mul(b.into())) + // Standard Error: 654 + .saturating_add(Weight::from_parts(17_183, 0).saturating_mul(m.into())) + // Standard Error: 638 + .saturating_add(Weight::from_parts(133_193, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_parts(0, 5).saturating_mul(b.into())) + .saturating_add(Weight::from_parts(0, 330).saturating_mul(m.into())) + .saturating_add(Weight::from_parts(0, 200).saturating_mul(p.into())) + } + /// Storage: Council Proposals (r:1 w:1) + /// Proof Skipped: Council Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Council Voting (r:0 w:1) + /// Proof Skipped: Council Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: Council ProposalOf (r:0 w:1) + /// Proof Skipped: Council ProposalOf (max_values: None, max_size: None, mode: Measured) + /// The range of component `p` is `[1, 100]`. + /// The range of component `p` is `[1, 100]`. + fn disapprove_proposal(p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `293 + p * (32 ±0)` + // Estimated: `2364 + p * (96 ±0)` + // Minimum execution time: 14_666_000 picoseconds. + Weight::from_parts(16_623_386, 0) + .saturating_add(Weight::from_parts(0, 2364)) + // Standard Error: 430 + .saturating_add(Weight::from_parts(111_461, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_parts(0, 96).saturating_mul(p.into())) + } +} diff --git a/relay/kusama/src/weights/pallet_collective_technical_committee.rs b/relay/kusama/src/weights/pallet_collective_technical_committee.rs new file mode 100644 index 0000000000..0bf5d2839b --- /dev/null +++ b/relay/kusama/src/weights/pallet_collective_technical_committee.rs @@ -0,0 +1,322 @@ +// Copyright (C) Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . +//! Autogenerated weights for `pallet_collective` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-03-15, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm5`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("kusama-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/production/polkadot +// benchmark +// pallet +// --chain=kusama-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_collective +// --extrinsic=* +// --execution=wasm +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/kusama/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] + +use frame_support::{traits::Get, weights::Weight}; +use sp_std::marker::PhantomData; + +/// Weight functions for `pallet_collective`. +pub struct WeightInfo(PhantomData); +impl pallet_collective::WeightInfo for WeightInfo { + /// Storage: TechnicalCommittee Members (r:1 w:1) + /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: TechnicalCommittee Proposals (r:1 w:0) + /// Proof Skipped: TechnicalCommittee Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: TechnicalCommittee Voting (r:100 w:100) + /// Proof Skipped: TechnicalCommittee Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: TechnicalCommittee Prime (r:0 w:1) + /// Proof Skipped: TechnicalCommittee Prime (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `m` is `[0, 100]`. + /// The range of component `n` is `[0, 100]`. + /// The range of component `p` is `[0, 100]`. + /// The range of component `m` is `[0, 100]`. + /// The range of component `n` is `[0, 100]`. + /// The range of component `p` is `[0, 100]`. + fn set_members(m: u32, _n: u32, p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0 + m * (3232 ±0) + p * (3190 ±0)` + // Estimated: `19320 + m * (7799 ±16) + p * (10110 ±16)` + // Minimum execution time: 17_755_000 picoseconds. + Weight::from_parts(18_022_000, 0) + .saturating_add(Weight::from_parts(0, 19320)) + // Standard Error: 48_475 + .saturating_add(Weight::from_parts(5_505_299, 0).saturating_mul(m.into())) + // Standard Error: 48_475 + .saturating_add(Weight::from_parts(8_260_850, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(p.into()))) + .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(p.into()))) + .saturating_add(Weight::from_parts(0, 7799).saturating_mul(m.into())) + .saturating_add(Weight::from_parts(0, 10110).saturating_mul(p.into())) + } + /// Storage: TechnicalCommittee Members (r:1 w:0) + /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `b` is `[2, 1024]`. + /// The range of component `m` is `[1, 100]`. + /// The range of component `b` is `[2, 1024]`. + /// The range of component `m` is `[1, 100]`. + fn execute(b: u32, m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `175 + m * (32 ±0)` + // Estimated: `1661 + m * (32 ±0)` + // Minimum execution time: 16_765_000 picoseconds. + Weight::from_parts(15_653_912, 0) + .saturating_add(Weight::from_parts(0, 1661)) + // Standard Error: 25 + .saturating_add(Weight::from_parts(1_539, 0).saturating_mul(b.into())) + // Standard Error: 261 + .saturating_add(Weight::from_parts(17_896, 0).saturating_mul(m.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(Weight::from_parts(0, 32).saturating_mul(m.into())) + } + /// Storage: TechnicalCommittee Members (r:1 w:0) + /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: TechnicalCommittee ProposalOf (r:1 w:0) + /// Proof Skipped: TechnicalCommittee ProposalOf (max_values: None, max_size: None, mode: Measured) + /// The range of component `b` is `[2, 1024]`. + /// The range of component `m` is `[1, 100]`. + /// The range of component `b` is `[2, 1024]`. + /// The range of component `m` is `[1, 100]`. + fn propose_execute(b: u32, m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `175 + m * (32 ±0)` + // Estimated: `5302 + m * (64 ±0)` + // Minimum execution time: 19_194_000 picoseconds. + Weight::from_parts(18_366_867, 0) + .saturating_add(Weight::from_parts(0, 5302)) + // Standard Error: 19 + .saturating_add(Weight::from_parts(1_342, 0).saturating_mul(b.into())) + // Standard Error: 200 + .saturating_add(Weight::from_parts(22_738, 0).saturating_mul(m.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(Weight::from_parts(0, 64).saturating_mul(m.into())) + } + /// Storage: TechnicalCommittee Members (r:1 w:0) + /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: TechnicalCommittee ProposalOf (r:1 w:1) + /// Proof Skipped: TechnicalCommittee ProposalOf (max_values: None, max_size: None, mode: Measured) + /// Storage: TechnicalCommittee Proposals (r:1 w:1) + /// Proof Skipped: TechnicalCommittee Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: TechnicalCommittee ProposalCount (r:1 w:1) + /// Proof Skipped: TechnicalCommittee ProposalCount (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: TechnicalCommittee Voting (r:0 w:1) + /// Proof Skipped: TechnicalCommittee Voting (max_values: None, max_size: None, mode: Measured) + /// The range of component `b` is `[2, 1024]`. + /// The range of component `m` is `[2, 100]`. + /// The range of component `p` is `[1, 100]`. + /// The range of component `b` is `[2, 1024]`. + /// The range of component `m` is `[2, 100]`. + /// The range of component `p` is `[1, 100]`. + fn propose_proposed(b: u32, m: u32, p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `465 + m * (32 ±0) + p * (36 ±0)` + // Estimated: `9880 + m * (165 ±0) + p * (180 ±0)` + // Minimum execution time: 24_958_000 picoseconds. + Weight::from_parts(25_925_520, 0) + .saturating_add(Weight::from_parts(0, 9880)) + // Standard Error: 54 + .saturating_add(Weight::from_parts(2_430, 0).saturating_mul(b.into())) + // Standard Error: 570 + .saturating_add(Weight::from_parts(17_303, 0).saturating_mul(m.into())) + // Standard Error: 563 + .saturating_add(Weight::from_parts(119_736, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(4)) + .saturating_add(Weight::from_parts(0, 165).saturating_mul(m.into())) + .saturating_add(Weight::from_parts(0, 180).saturating_mul(p.into())) + } + /// Storage: TechnicalCommittee Members (r:1 w:0) + /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: TechnicalCommittee Voting (r:1 w:1) + /// Proof Skipped: TechnicalCommittee Voting (max_values: None, max_size: None, mode: Measured) + /// The range of component `m` is `[5, 100]`. + /// The range of component `m` is `[5, 100]`. + fn vote(m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `914 + m * (64 ±0)` + // Estimated: `6776 + m * (128 ±0)` + // Minimum execution time: 22_620_000 picoseconds. + Weight::from_parts(23_356_968, 0) + .saturating_add(Weight::from_parts(0, 6776)) + // Standard Error: 273 + .saturating_add(Weight::from_parts(40_919, 0).saturating_mul(m.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + .saturating_add(Weight::from_parts(0, 128).saturating_mul(m.into())) + } + /// Storage: TechnicalCommittee Voting (r:1 w:1) + /// Proof Skipped: TechnicalCommittee Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: TechnicalCommittee Members (r:1 w:0) + /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: TechnicalCommittee Proposals (r:1 w:1) + /// Proof Skipped: TechnicalCommittee Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: TechnicalCommittee ProposalOf (r:0 w:1) + /// Proof Skipped: TechnicalCommittee ProposalOf (max_values: None, max_size: None, mode: Measured) + /// The range of component `m` is `[4, 100]`. + /// The range of component `p` is `[1, 100]`. + /// The range of component `m` is `[4, 100]`. + /// The range of component `p` is `[1, 100]`. + fn close_early_disapproved(m: u32, p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `503 + m * (64 ±0) + p * (36 ±0)` + // Estimated: `8367 + m * (260 ±0) + p * (144 ±0)` + // Minimum execution time: 27_667_000 picoseconds. + Weight::from_parts(29_094_490, 0) + .saturating_add(Weight::from_parts(0, 8367)) + // Standard Error: 842 + .saturating_add(Weight::from_parts(25_691, 0).saturating_mul(m.into())) + // Standard Error: 821 + .saturating_add(Weight::from_parts(133_244, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_parts(0, 260).saturating_mul(m.into())) + .saturating_add(Weight::from_parts(0, 144).saturating_mul(p.into())) + } + /// Storage: TechnicalCommittee Voting (r:1 w:1) + /// Proof Skipped: TechnicalCommittee Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: TechnicalCommittee Members (r:1 w:0) + /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: TechnicalCommittee ProposalOf (r:1 w:1) + /// Proof Skipped: TechnicalCommittee ProposalOf (max_values: None, max_size: None, mode: Measured) + /// Storage: TechnicalCommittee Proposals (r:1 w:1) + /// Proof Skipped: TechnicalCommittee Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `b` is `[2, 1024]`. + /// The range of component `m` is `[4, 100]`. + /// The range of component `p` is `[1, 100]`. + /// The range of component `b` is `[2, 1024]`. + /// The range of component `m` is `[4, 100]`. + /// The range of component `p` is `[1, 100]`. + fn close_early_approved(b: u32, m: u32, p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `805 + b * (1 ±0) + m * (64 ±0) + p * (40 ±0)` + // Estimated: `12528 + b * (4 ±0) + m * (264 ±0) + p * (160 ±0)` + // Minimum execution time: 41_678_000 picoseconds. + Weight::from_parts(42_218_269, 0) + .saturating_add(Weight::from_parts(0, 12528)) + // Standard Error: 59 + .saturating_add(Weight::from_parts(1_661, 0).saturating_mul(b.into())) + // Standard Error: 624 + .saturating_add(Weight::from_parts(16_946, 0).saturating_mul(m.into())) + // Standard Error: 608 + .saturating_add(Weight::from_parts(129_170, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_parts(0, 4).saturating_mul(b.into())) + .saturating_add(Weight::from_parts(0, 264).saturating_mul(m.into())) + .saturating_add(Weight::from_parts(0, 160).saturating_mul(p.into())) + } + /// Storage: TechnicalCommittee Voting (r:1 w:1) + /// Proof Skipped: TechnicalCommittee Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: TechnicalCommittee Members (r:1 w:0) + /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: TechnicalCommittee Prime (r:1 w:0) + /// Proof Skipped: TechnicalCommittee Prime (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: TechnicalCommittee Proposals (r:1 w:1) + /// Proof Skipped: TechnicalCommittee Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: TechnicalCommittee ProposalOf (r:0 w:1) + /// Proof Skipped: TechnicalCommittee ProposalOf (max_values: None, max_size: None, mode: Measured) + /// The range of component `m` is `[4, 100]`. + /// The range of component `p` is `[1, 100]`. + /// The range of component `m` is `[4, 100]`. + /// The range of component `p` is `[1, 100]`. + fn close_disapproved(m: u32, p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `523 + m * (64 ±0) + p * (36 ±0)` + // Estimated: `10435 + m * (325 ±0) + p * (180 ±0)` + // Minimum execution time: 30_447_000 picoseconds. + Weight::from_parts(32_661_910, 0) + .saturating_add(Weight::from_parts(0, 10435)) + // Standard Error: 531 + .saturating_add(Weight::from_parts(29_960, 0).saturating_mul(m.into())) + // Standard Error: 517 + .saturating_add(Weight::from_parts(120_475, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_parts(0, 325).saturating_mul(m.into())) + .saturating_add(Weight::from_parts(0, 180).saturating_mul(p.into())) + } + /// Storage: TechnicalCommittee Voting (r:1 w:1) + /// Proof Skipped: TechnicalCommittee Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: TechnicalCommittee Members (r:1 w:0) + /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: TechnicalCommittee Prime (r:1 w:0) + /// Proof Skipped: TechnicalCommittee Prime (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: TechnicalCommittee ProposalOf (r:1 w:1) + /// Proof Skipped: TechnicalCommittee ProposalOf (max_values: None, max_size: None, mode: Measured) + /// Storage: TechnicalCommittee Proposals (r:1 w:1) + /// Proof Skipped: TechnicalCommittee Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `b` is `[2, 1024]`. + /// The range of component `m` is `[4, 100]`. + /// The range of component `p` is `[1, 100]`. + /// The range of component `b` is `[2, 1024]`. + /// The range of component `m` is `[4, 100]`. + /// The range of component `p` is `[1, 100]`. + fn close_approved(b: u32, m: u32, p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `825 + b * (1 ±0) + m * (64 ±0) + p * (40 ±0)` + // Estimated: `14770 + b * (5 ±0) + m * (330 ±0) + p * (200 ±0)` + // Minimum execution time: 44_068_000 picoseconds. + Weight::from_parts(44_673_420, 0) + .saturating_add(Weight::from_parts(0, 14770)) + // Standard Error: 59 + .saturating_add(Weight::from_parts(1_779, 0).saturating_mul(b.into())) + // Standard Error: 625 + .saturating_add(Weight::from_parts(17_794, 0).saturating_mul(m.into())) + // Standard Error: 609 + .saturating_add(Weight::from_parts(134_062, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_parts(0, 5).saturating_mul(b.into())) + .saturating_add(Weight::from_parts(0, 330).saturating_mul(m.into())) + .saturating_add(Weight::from_parts(0, 200).saturating_mul(p.into())) + } + /// Storage: TechnicalCommittee Proposals (r:1 w:1) + /// Proof Skipped: TechnicalCommittee Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: TechnicalCommittee Voting (r:0 w:1) + /// Proof Skipped: TechnicalCommittee Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: TechnicalCommittee ProposalOf (r:0 w:1) + /// Proof Skipped: TechnicalCommittee ProposalOf (max_values: None, max_size: None, mode: Measured) + /// The range of component `p` is `[1, 100]`. + /// The range of component `p` is `[1, 100]`. + fn disapprove_proposal(p: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `332 + p * (32 ±0)` + // Estimated: `2481 + p * (96 ±0)` + // Minimum execution time: 15_528_000 picoseconds. + Weight::from_parts(17_434_864, 0) + .saturating_add(Weight::from_parts(0, 2481)) + // Standard Error: 405 + .saturating_add(Weight::from_parts(111_909, 0).saturating_mul(p.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_parts(0, 96).saturating_mul(p.into())) + } +} diff --git a/relay/kusama/src/weights/pallet_democracy.rs b/relay/kusama/src/weights/pallet_democracy.rs new file mode 100644 index 0000000000..794c8c8159 --- /dev/null +++ b/relay/kusama/src/weights/pallet_democracy.rs @@ -0,0 +1,513 @@ +// Copyright (C) Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . +//! Autogenerated weights for `pallet_democracy` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-03-15, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm5`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("kusama-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/production/polkadot +// benchmark +// pallet +// --chain=kusama-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_democracy +// --extrinsic=* +// --execution=wasm +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/kusama/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] + +use frame_support::{traits::Get, weights::Weight}; +use sp_std::marker::PhantomData; + +/// Weight functions for `pallet_democracy`. +pub struct WeightInfo(PhantomData); +impl pallet_democracy::WeightInfo for WeightInfo { + /// Storage: Democracy PublicPropCount (r:1 w:1) + /// Proof: Democracy PublicPropCount (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: Democracy PublicProps (r:1 w:1) + /// Proof: Democracy PublicProps (max_values: Some(1), max_size: Some(16702), added: 17197, mode: MaxEncodedLen) + /// Storage: Democracy Blacklist (r:1 w:0) + /// Proof: Democracy Blacklist (max_values: None, max_size: Some(3238), added: 5713, mode: MaxEncodedLen) + /// Storage: Democracy DepositOf (r:0 w:1) + /// Proof: Democracy DepositOf (max_values: None, max_size: Some(3230), added: 5705, mode: MaxEncodedLen) + fn propose() -> Weight { + // Proof Size summary in bytes: + // Measured: `4768` + // Estimated: `26379` + // Minimum execution time: 35_098_000 picoseconds. + Weight::from_parts(35_696_000, 0) + .saturating_add(Weight::from_parts(0, 26379)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Democracy DepositOf (r:1 w:1) + /// Proof: Democracy DepositOf (max_values: None, max_size: Some(3230), added: 5705, mode: MaxEncodedLen) + fn second() -> Weight { + // Proof Size summary in bytes: + // Measured: `3523` + // Estimated: `6695` + // Minimum execution time: 32_218_000 picoseconds. + Weight::from_parts(32_458_000, 0) + .saturating_add(Weight::from_parts(0, 6695)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Democracy ReferendumInfoOf (r:1 w:1) + /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) + /// Storage: Democracy VotingOf (r:1 w:1) + /// Proof: Democracy VotingOf (max_values: None, max_size: Some(3795), added: 6270, mode: MaxEncodedLen) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) + fn vote_new() -> Weight { + // Proof Size summary in bytes: + // Measured: `3437` + // Estimated: `15690` + // Minimum execution time: 46_641_000 picoseconds. + Weight::from_parts(47_324_000, 0) + .saturating_add(Weight::from_parts(0, 15690)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Democracy ReferendumInfoOf (r:1 w:1) + /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) + /// Storage: Democracy VotingOf (r:1 w:1) + /// Proof: Democracy VotingOf (max_values: None, max_size: Some(3795), added: 6270, mode: MaxEncodedLen) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) + fn vote_existing() -> Weight { + // Proof Size summary in bytes: + // Measured: `3459` + // Estimated: `15690` + // Minimum execution time: 47_172_000 picoseconds. + Weight::from_parts(47_732_000, 0) + .saturating_add(Weight::from_parts(0, 15690)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Democracy ReferendumInfoOf (r:1 w:1) + /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) + /// Storage: Democracy Cancellations (r:1 w:1) + /// Proof: Democracy Cancellations (max_values: None, max_size: Some(33), added: 2508, mode: MaxEncodedLen) + /// Storage: Democracy MetadataOf (r:1 w:1) + /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) + fn emergency_cancel() -> Weight { + // Proof Size summary in bytes: + // Measured: `333` + // Estimated: `10682` + // Minimum execution time: 25_744_000 picoseconds. + Weight::from_parts(26_226_000, 0) + .saturating_add(Weight::from_parts(0, 10682)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Democracy PublicProps (r:1 w:1) + /// Proof: Democracy PublicProps (max_values: Some(1), max_size: Some(16702), added: 17197, mode: MaxEncodedLen) + /// Storage: Democracy DepositOf (r:1 w:1) + /// Proof: Democracy DepositOf (max_values: None, max_size: Some(3230), added: 5705, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// Storage: Democracy MetadataOf (r:3 w:1) + /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) + /// Storage: Democracy NextExternal (r:1 w:1) + /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) + /// Storage: Democracy ReferendumInfoOf (r:1 w:1) + /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) + /// Storage: Democracy Blacklist (r:0 w:1) + /// Proof: Democracy Blacklist (max_values: None, max_size: Some(3238), added: 5713, mode: MaxEncodedLen) + fn blacklist() -> Weight { + // Proof Size summary in bytes: + // Measured: `5877` + // Estimated: `42332` + // Minimum execution time: 88_365_000 picoseconds. + Weight::from_parts(90_080_000, 0) + .saturating_add(Weight::from_parts(0, 42332)) + .saturating_add(T::DbWeight::get().reads(8)) + .saturating_add(T::DbWeight::get().writes(7)) + } + /// Storage: Democracy NextExternal (r:1 w:1) + /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) + /// Storage: Democracy Blacklist (r:1 w:0) + /// Proof: Democracy Blacklist (max_values: None, max_size: Some(3238), added: 5713, mode: MaxEncodedLen) + fn external_propose() -> Weight { + // Proof Size summary in bytes: + // Measured: `3383` + // Estimated: `8320` + // Minimum execution time: 12_868_000 picoseconds. + Weight::from_parts(13_178_000, 0) + .saturating_add(Weight::from_parts(0, 8320)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Democracy NextExternal (r:0 w:1) + /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) + fn external_propose_majority() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 3_714_000 picoseconds. + Weight::from_parts(3_895_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Democracy NextExternal (r:0 w:1) + /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) + fn external_propose_default() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 3_565_000 picoseconds. + Weight::from_parts(3_831_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Democracy NextExternal (r:1 w:1) + /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) + /// Storage: Democracy ReferendumCount (r:1 w:1) + /// Proof: Democracy ReferendumCount (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: Democracy MetadataOf (r:1 w:2) + /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) + /// Storage: Democracy ReferendumInfoOf (r:0 w:1) + /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) + fn fast_track() -> Weight { + // Proof Size summary in bytes: + // Measured: `253` + // Estimated: `6624` + // Minimum execution time: 26_453_000 picoseconds. + Weight::from_parts(26_938_000, 0) + .saturating_add(Weight::from_parts(0, 6624)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(5)) + } + /// Storage: Democracy NextExternal (r:1 w:1) + /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) + /// Storage: Democracy Blacklist (r:1 w:1) + /// Proof: Democracy Blacklist (max_values: None, max_size: Some(3238), added: 5713, mode: MaxEncodedLen) + /// Storage: Democracy MetadataOf (r:1 w:1) + /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) + fn veto_external() -> Weight { + // Proof Size summary in bytes: + // Measured: `3486` + // Estimated: `11838` + // Minimum execution time: 30_869_000 picoseconds. + Weight::from_parts(31_397_000, 0) + .saturating_add(Weight::from_parts(0, 11838)) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Democracy PublicProps (r:1 w:1) + /// Proof: Democracy PublicProps (max_values: Some(1), max_size: Some(16702), added: 17197, mode: MaxEncodedLen) + /// Storage: Democracy DepositOf (r:1 w:1) + /// Proof: Democracy DepositOf (max_values: None, max_size: Some(3230), added: 5705, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// Storage: Democracy MetadataOf (r:1 w:1) + /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) + fn cancel_proposal() -> Weight { + // Proof Size summary in bytes: + // Measured: `5788` + // Estimated: `31993` + // Minimum execution time: 72_692_000 picoseconds. + Weight::from_parts(73_692_000, 0) + .saturating_add(Weight::from_parts(0, 31993)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(4)) + } + /// Storage: Democracy MetadataOf (r:1 w:1) + /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) + /// Storage: Democracy ReferendumInfoOf (r:0 w:1) + /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) + fn cancel_referendum() -> Weight { + // Proof Size summary in bytes: + // Measured: `238` + // Estimated: `3518` + // Minimum execution time: 19_506_000 picoseconds. + Weight::from_parts(19_823_000, 0) + .saturating_add(Weight::from_parts(0, 3518)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Democracy LowestUnbaked (r:1 w:1) + /// Proof: Democracy LowestUnbaked (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: Democracy ReferendumCount (r:1 w:0) + /// Proof: Democracy ReferendumCount (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: Democracy ReferendumInfoOf (r:99 w:0) + /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) + /// The range of component `r` is `[0, 99]`. + fn on_initialize_base(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `211 + r * (86 ±0)` + // Estimated: `3968 + r * (2676 ±0)` + // Minimum execution time: 6_019_000 picoseconds. + Weight::from_parts(9_632_674, 0) + .saturating_add(Weight::from_parts(0, 3968)) + // Standard Error: 6_651 + .saturating_add(Weight::from_parts(2_769_264, 0).saturating_mul(r.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r.into()))) + .saturating_add(T::DbWeight::get().writes(1)) + .saturating_add(Weight::from_parts(0, 2676).saturating_mul(r.into())) + } + /// Storage: Democracy LowestUnbaked (r:1 w:1) + /// Proof: Democracy LowestUnbaked (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: Democracy ReferendumCount (r:1 w:0) + /// Proof: Democracy ReferendumCount (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) + /// Storage: Democracy LastTabledWasExternal (r:1 w:0) + /// Proof: Democracy LastTabledWasExternal (max_values: Some(1), max_size: Some(1), added: 496, mode: MaxEncodedLen) + /// Storage: Democracy NextExternal (r:1 w:0) + /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) + /// Storage: Democracy PublicProps (r:1 w:0) + /// Proof: Democracy PublicProps (max_values: Some(1), max_size: Some(16702), added: 17197, mode: MaxEncodedLen) + /// Storage: Democracy ReferendumInfoOf (r:99 w:0) + /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) + /// The range of component `r` is `[0, 99]`. + fn on_initialize_base_with_launch_period(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `211 + r * (86 ±0)` + // Estimated: `25258 + r * (2676 ±0)` + // Minimum execution time: 9_143_000 picoseconds. + Weight::from_parts(12_247_629, 0) + .saturating_add(Weight::from_parts(0, 25258)) + // Standard Error: 6_077 + .saturating_add(Weight::from_parts(2_764_547, 0).saturating_mul(r.into())) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r.into()))) + .saturating_add(T::DbWeight::get().writes(1)) + .saturating_add(Weight::from_parts(0, 2676).saturating_mul(r.into())) + } + /// Storage: Democracy VotingOf (r:3 w:3) + /// Proof: Democracy VotingOf (max_values: None, max_size: Some(3795), added: 6270, mode: MaxEncodedLen) + /// Storage: Democracy ReferendumInfoOf (r:99 w:99) + /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) + /// The range of component `r` is `[0, 99]`. + fn delegate(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `797 + r * (108 ±0)` + // Estimated: `25554 + r * (2676 ±0)` + // Minimum execution time: 41_153_000 picoseconds. + Weight::from_parts(42_787_487, 0) + .saturating_add(Weight::from_parts(0, 25554)) + // Standard Error: 7_883 + .saturating_add(Weight::from_parts(3_862_521, 0).saturating_mul(r.into())) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r.into()))) + .saturating_add(T::DbWeight::get().writes(4)) + .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(r.into()))) + .saturating_add(Weight::from_parts(0, 2676).saturating_mul(r.into())) + } + /// Storage: Democracy VotingOf (r:2 w:2) + /// Proof: Democracy VotingOf (max_values: None, max_size: Some(3795), added: 6270, mode: MaxEncodedLen) + /// Storage: Democracy ReferendumInfoOf (r:99 w:99) + /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) + /// The range of component `r` is `[0, 99]`. + fn undelegate(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `460 + r * (108 ±0)` + // Estimated: `14520 + r * (2676 ±0)` + // Minimum execution time: 20_767_000 picoseconds. + Weight::from_parts(21_768_239, 0) + .saturating_add(Weight::from_parts(0, 14520)) + // Standard Error: 9_791 + .saturating_add(Weight::from_parts(3_862_103, 0).saturating_mul(r.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r.into()))) + .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(r.into()))) + .saturating_add(Weight::from_parts(0, 2676).saturating_mul(r.into())) + } + /// Storage: Democracy PublicProps (r:0 w:1) + /// Proof: Democracy PublicProps (max_values: Some(1), max_size: Some(16702), added: 17197, mode: MaxEncodedLen) + fn clear_public_proposals() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 3_663_000 picoseconds. + Weight::from_parts(3_798_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Democracy VotingOf (r:1 w:1) + /// Proof: Democracy VotingOf (max_values: None, max_size: Some(3795), added: 6270, mode: MaxEncodedLen) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// The range of component `r` is `[0, 99]`. + fn unlock_remove(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `530` + // Estimated: `15617` + // Minimum execution time: 19_923_000 picoseconds. + Weight::from_parts(25_945_279, 0) + .saturating_add(Weight::from_parts(0, 15617)) + // Standard Error: 1_366 + .saturating_add(Weight::from_parts(22_003, 0).saturating_mul(r.into())) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Democracy VotingOf (r:1 w:1) + /// Proof: Democracy VotingOf (max_values: None, max_size: Some(3795), added: 6270, mode: MaxEncodedLen) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) + /// Storage: System Account (r:1 w:1) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// The range of component `r` is `[0, 99]`. + fn unlock_set(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `531 + r * (22 ±0)` + // Estimated: `15617` + // Minimum execution time: 24_393_000 picoseconds. + Weight::from_parts(25_690_593, 0) + .saturating_add(Weight::from_parts(0, 15617)) + // Standard Error: 553 + .saturating_add(Weight::from_parts(59_042, 0).saturating_mul(r.into())) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: Democracy ReferendumInfoOf (r:1 w:1) + /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) + /// Storage: Democracy VotingOf (r:1 w:1) + /// Proof: Democracy VotingOf (max_values: None, max_size: Some(3795), added: 6270, mode: MaxEncodedLen) + /// The range of component `r` is `[1, 100]`. + fn remove_vote(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `695 + r * (26 ±0)` + // Estimated: `10926` + // Minimum execution time: 15_551_000 picoseconds. + Weight::from_parts(17_809_948, 0) + .saturating_add(Weight::from_parts(0, 10926)) + // Standard Error: 1_907 + .saturating_add(Weight::from_parts(86_496, 0).saturating_mul(r.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Democracy ReferendumInfoOf (r:1 w:1) + /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) + /// Storage: Democracy VotingOf (r:1 w:1) + /// Proof: Democracy VotingOf (max_values: None, max_size: Some(3795), added: 6270, mode: MaxEncodedLen) + /// The range of component `r` is `[1, 100]`. + fn remove_other_vote(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `695 + r * (26 ±0)` + // Estimated: `10926` + // Minimum execution time: 16_027_000 picoseconds. + Weight::from_parts(17_860_077, 0) + .saturating_add(Weight::from_parts(0, 10926)) + // Standard Error: 1_950 + .saturating_add(Weight::from_parts(87_722, 0).saturating_mul(r.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Democracy NextExternal (r:1 w:0) + /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) + /// Storage: Preimage StatusFor (r:1 w:0) + /// Proof: Preimage StatusFor (max_values: None, max_size: Some(91), added: 2566, mode: MaxEncodedLen) + /// Storage: Democracy MetadataOf (r:0 w:1) + /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) + fn set_external_metadata() -> Weight { + // Proof Size summary in bytes: + // Measured: `323` + // Estimated: `5173` + // Minimum execution time: 17_551_000 picoseconds. + Weight::from_parts(17_776_000, 0) + .saturating_add(Weight::from_parts(0, 5173)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Democracy NextExternal (r:1 w:0) + /// Proof: Democracy NextExternal (max_values: Some(1), max_size: Some(132), added: 627, mode: MaxEncodedLen) + /// Storage: Democracy MetadataOf (r:1 w:1) + /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) + fn clear_external_metadata() -> Weight { + // Proof Size summary in bytes: + // Measured: `253` + // Estimated: `5135` + // Minimum execution time: 16_020_000 picoseconds. + Weight::from_parts(16_477_000, 0) + .saturating_add(Weight::from_parts(0, 5135)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Democracy PublicProps (r:1 w:0) + /// Proof: Democracy PublicProps (max_values: Some(1), max_size: Some(16702), added: 17197, mode: MaxEncodedLen) + /// Storage: Preimage StatusFor (r:1 w:0) + /// Proof: Preimage StatusFor (max_values: None, max_size: Some(91), added: 2566, mode: MaxEncodedLen) + /// Storage: Democracy MetadataOf (r:0 w:1) + /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) + fn set_proposal_metadata() -> Weight { + // Proof Size summary in bytes: + // Measured: `4855` + // Estimated: `21743` + // Minimum execution time: 33_144_000 picoseconds. + Weight::from_parts(33_457_000, 0) + .saturating_add(Weight::from_parts(0, 21743)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Democracy PublicProps (r:1 w:0) + /// Proof: Democracy PublicProps (max_values: Some(1), max_size: Some(16702), added: 17197, mode: MaxEncodedLen) + /// Storage: Democracy MetadataOf (r:1 w:1) + /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) + fn clear_proposal_metadata() -> Weight { + // Proof Size summary in bytes: + // Measured: `4789` + // Estimated: `21705` + // Minimum execution time: 31_022_000 picoseconds. + Weight::from_parts(31_534_000, 0) + .saturating_add(Weight::from_parts(0, 21705)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Preimage StatusFor (r:1 w:0) + /// Proof: Preimage StatusFor (max_values: None, max_size: Some(91), added: 2566, mode: MaxEncodedLen) + /// Storage: Democracy MetadataOf (r:0 w:1) + /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) + fn set_referendum_metadata() -> Weight { + // Proof Size summary in bytes: + // Measured: `144` + // Estimated: `3556` + // Minimum execution time: 14_512_000 picoseconds. + Weight::from_parts(14_769_000, 0) + .saturating_add(Weight::from_parts(0, 3556)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Democracy ReferendumInfoOf (r:1 w:0) + /// Proof: Democracy ReferendumInfoOf (max_values: None, max_size: Some(201), added: 2676, mode: MaxEncodedLen) + /// Storage: Democracy MetadataOf (r:1 w:1) + /// Proof: Democracy MetadataOf (max_values: None, max_size: Some(53), added: 2528, mode: MaxEncodedLen) + fn clear_referendum_metadata() -> Weight { + // Proof Size summary in bytes: + // Measured: `269` + // Estimated: `7184` + // Minimum execution time: 17_966_000 picoseconds. + Weight::from_parts(18_270_000, 0) + .saturating_add(Weight::from_parts(0, 7184)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } +} diff --git a/relay/kusama/src/weights/pallet_elections_phragmen.rs b/relay/kusama/src/weights/pallet_elections_phragmen.rs new file mode 100644 index 0000000000..a5c1c4dfd3 --- /dev/null +++ b/relay/kusama/src/weights/pallet_elections_phragmen.rs @@ -0,0 +1,303 @@ +// Copyright (C) Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . +//! Autogenerated weights for `pallet_elections_phragmen` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-03-16, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm5`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("kusama-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/production/polkadot +// benchmark +// pallet +// --chain=kusama-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_elections_phragmen +// --extrinsic=* +// --execution=wasm +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/kusama/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] + +use frame_support::{traits::Get, weights::Weight}; +use sp_std::marker::PhantomData; + +/// Weight functions for `pallet_elections_phragmen`. +pub struct WeightInfo(PhantomData); +impl pallet_elections_phragmen::WeightInfo for WeightInfo { + /// Storage: PhragmenElection Candidates (r:1 w:0) + /// Proof Skipped: PhragmenElection Candidates (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PhragmenElection Members (r:1 w:0) + /// Proof Skipped: PhragmenElection Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PhragmenElection RunnersUp (r:1 w:0) + /// Proof Skipped: PhragmenElection RunnersUp (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PhragmenElection Voting (r:1 w:1) + /// Proof Skipped: PhragmenElection Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) + /// The range of component `v` is `[1, 16]`. + fn vote_equal(v: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `403 + v * (80 ±0)` + // Estimated: `14292 + v * (320 ±0)` + // Minimum execution time: 27_353_000 picoseconds. + Weight::from_parts(28_103_445, 0) + .saturating_add(Weight::from_parts(0, 14292)) + // Standard Error: 4_556 + .saturating_add(Weight::from_parts(117_766, 0).saturating_mul(v.into())) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(Weight::from_parts(0, 320).saturating_mul(v.into())) + } + /// Storage: PhragmenElection Candidates (r:1 w:0) + /// Proof Skipped: PhragmenElection Candidates (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PhragmenElection Members (r:1 w:0) + /// Proof Skipped: PhragmenElection Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PhragmenElection RunnersUp (r:1 w:0) + /// Proof Skipped: PhragmenElection RunnersUp (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PhragmenElection Voting (r:1 w:1) + /// Proof Skipped: PhragmenElection Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) + /// The range of component `v` is `[2, 16]`. + fn vote_more(v: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `371 + v * (80 ±0)` + // Estimated: `14164 + v * (320 ±0)` + // Minimum execution time: 36_885_000 picoseconds. + Weight::from_parts(37_769_975, 0) + .saturating_add(Weight::from_parts(0, 14164)) + // Standard Error: 6_586 + .saturating_add(Weight::from_parts(123_567, 0).saturating_mul(v.into())) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(Weight::from_parts(0, 320).saturating_mul(v.into())) + } + /// Storage: PhragmenElection Candidates (r:1 w:0) + /// Proof Skipped: PhragmenElection Candidates (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PhragmenElection Members (r:1 w:0) + /// Proof Skipped: PhragmenElection Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PhragmenElection RunnersUp (r:1 w:0) + /// Proof Skipped: PhragmenElection RunnersUp (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PhragmenElection Voting (r:1 w:1) + /// Proof Skipped: PhragmenElection Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) + /// The range of component `v` is `[2, 16]`. + fn vote_less(v: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `403 + v * (80 ±0)` + // Estimated: `14292 + v * (320 ±0)` + // Minimum execution time: 36_610_000 picoseconds. + Weight::from_parts(37_524_808, 0) + .saturating_add(Weight::from_parts(0, 14292)) + // Standard Error: 6_164 + .saturating_add(Weight::from_parts(147_944, 0).saturating_mul(v.into())) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(Weight::from_parts(0, 320).saturating_mul(v.into())) + } + /// Storage: PhragmenElection Voting (r:1 w:1) + /// Proof Skipped: PhragmenElection Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: Balances Locks (r:1 w:1) + /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) + fn remove_voter() -> Weight { + // Proof Size summary in bytes: + // Measured: `925` + // Estimated: `9154` + // Minimum execution time: 33_052_000 picoseconds. + Weight::from_parts(33_677_000, 0) + .saturating_add(Weight::from_parts(0, 9154)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: PhragmenElection Candidates (r:1 w:1) + /// Proof Skipped: PhragmenElection Candidates (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PhragmenElection Members (r:1 w:0) + /// Proof Skipped: PhragmenElection Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PhragmenElection RunnersUp (r:1 w:0) + /// Proof Skipped: PhragmenElection RunnersUp (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `c` is `[1, 1000]`. + fn submit_candidacy(c: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `2712 + c * (48 ±0)` + // Estimated: `12585 + c * (144 ±0)` + // Minimum execution time: 32_163_000 picoseconds. + Weight::from_parts(24_757_419, 0) + .saturating_add(Weight::from_parts(0, 12585)) + // Standard Error: 902 + .saturating_add(Weight::from_parts(79_765, 0).saturating_mul(c.into())) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(1)) + .saturating_add(Weight::from_parts(0, 144).saturating_mul(c.into())) + } + /// Storage: PhragmenElection Candidates (r:1 w:1) + /// Proof Skipped: PhragmenElection Candidates (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `c` is `[1, 1000]`. + fn renounce_candidacy_candidate(c: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `284 + c * (48 ±0)` + // Estimated: `1756 + c * (48 ±0)` + // Minimum execution time: 24_805_000 picoseconds. + Weight::from_parts(17_940_635, 0) + .saturating_add(Weight::from_parts(0, 1756)) + // Standard Error: 888 + .saturating_add(Weight::from_parts(59_369, 0).saturating_mul(c.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + .saturating_add(Weight::from_parts(0, 48).saturating_mul(c.into())) + } + /// Storage: PhragmenElection Members (r:1 w:1) + /// Proof Skipped: PhragmenElection Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PhragmenElection RunnersUp (r:1 w:1) + /// Proof Skipped: PhragmenElection RunnersUp (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Council Prime (r:1 w:1) + /// Proof Skipped: Council Prime (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Council Proposals (r:1 w:0) + /// Proof Skipped: Council Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Council Members (r:0 w:1) + /// Proof Skipped: Council Members (max_values: Some(1), max_size: None, mode: Measured) + fn renounce_candidacy_members() -> Weight { + // Proof Size summary in bytes: + // Measured: `2986` + // Estimated: `20870` + // Minimum execution time: 42_908_000 picoseconds. + Weight::from_parts(43_409_000, 0) + .saturating_add(Weight::from_parts(0, 20870)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(4)) + } + /// Storage: PhragmenElection RunnersUp (r:1 w:1) + /// Proof Skipped: PhragmenElection RunnersUp (max_values: Some(1), max_size: None, mode: Measured) + fn renounce_candidacy_runners_up() -> Weight { + // Proof Size summary in bytes: + // Measured: `1681` + // Estimated: `3166` + // Minimum execution time: 27_419_000 picoseconds. + Weight::from_parts(27_912_000, 0) + .saturating_add(Weight::from_parts(0, 3166)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: Benchmark Override (r:0 w:0) + /// Proof Skipped: Benchmark Override (max_values: None, max_size: None, mode: Measured) + fn remove_member_without_replacement() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_000_000_000_000 picoseconds. + Weight::from_parts(2_000_000_000_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: PhragmenElection Members (r:1 w:1) + /// Proof Skipped: PhragmenElection Members (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(128), added: 2603, mode: MaxEncodedLen) + /// Storage: PhragmenElection RunnersUp (r:1 w:1) + /// Proof Skipped: PhragmenElection RunnersUp (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Council Prime (r:1 w:1) + /// Proof Skipped: Council Prime (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Council Proposals (r:1 w:0) + /// Proof Skipped: Council Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Council Members (r:0 w:1) + /// Proof Skipped: Council Members (max_values: Some(1), max_size: None, mode: Measured) + fn remove_member_with_replacement() -> Weight { + // Proof Size summary in bytes: + // Measured: `2986` + // Estimated: `24463` + // Minimum execution time: 57_465_000 picoseconds. + Weight::from_parts(58_107_000, 0) + .saturating_add(Weight::from_parts(0, 24463)) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().writes(5)) + } + /// Storage: PhragmenElection Voting (r:10001 w:10000) + /// Proof Skipped: PhragmenElection Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: PhragmenElection Members (r:1 w:0) + /// Proof Skipped: PhragmenElection Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PhragmenElection RunnersUp (r:1 w:0) + /// Proof Skipped: PhragmenElection RunnersUp (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PhragmenElection Candidates (r:1 w:0) + /// Proof Skipped: PhragmenElection Candidates (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Balances Locks (r:10000 w:10000) + /// Proof: Balances Locks (max_values: None, max_size: Some(1299), added: 3774, mode: MaxEncodedLen) + /// Storage: System Account (r:10000 w:10000) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// The range of component `v` is `[5000, 10000]`. + /// The range of component `d` is `[0, 5000]`. + fn clean_defunct_voters(v: u32, _d: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `35989 + v * (808 ±0)` + // Estimated: `154956 + v * (12084 ±0)` + // Minimum execution time: 319_677_473_000 picoseconds. + Weight::from_parts(320_382_361_000, 0) + .saturating_add(Weight::from_parts(0, 154956)) + // Standard Error: 270_292 + .saturating_add(Weight::from_parts(38_671_603, 0).saturating_mul(v.into())) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().reads((3_u64).saturating_mul(v.into()))) + .saturating_add(T::DbWeight::get().writes((3_u64).saturating_mul(v.into()))) + .saturating_add(Weight::from_parts(0, 12084).saturating_mul(v.into())) + } + /// Storage: PhragmenElection Candidates (r:1 w:1) + /// Proof Skipped: PhragmenElection Candidates (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PhragmenElection Members (r:1 w:1) + /// Proof Skipped: PhragmenElection Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PhragmenElection RunnersUp (r:1 w:1) + /// Proof Skipped: PhragmenElection RunnersUp (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: PhragmenElection Voting (r:10001 w:0) + /// Proof Skipped: PhragmenElection Voting (max_values: None, max_size: None, mode: Measured) + /// Storage: Council Proposals (r:1 w:0) + /// Proof Skipped: Council Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: System Account (r:962 w:962) + /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) + /// Storage: PhragmenElection ElectionRounds (r:1 w:1) + /// Proof Skipped: PhragmenElection ElectionRounds (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Council Members (r:0 w:1) + /// Proof Skipped: Council Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Council Prime (r:0 w:1) + /// Proof Skipped: Council Prime (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `c` is `[1, 1000]`. + /// The range of component `v` is `[1, 10000]`. + /// The range of component `e` is `[10000, 160000]`. + fn election_phragmen(c: u32, v: u32, e: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0 + v * (607 ±0) + e * (28 ±0)` + // Estimated: `4839313 + v * (5481 ±4) + e * (123 ±0) + c * (2560 ±0)` + // Minimum execution time: 30_795_431_000 picoseconds. + Weight::from_parts(30_861_700_000, 0) + .saturating_add(Weight::from_parts(0, 4839313)) + // Standard Error: 482_348 + .saturating_add(Weight::from_parts(37_626_560, 0).saturating_mul(v.into())) + // Standard Error: 30_954 + .saturating_add(Weight::from_parts(2_016_889, 0).saturating_mul(e.into())) + .saturating_add(T::DbWeight::get().reads(265)) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(c.into()))) + .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(v.into()))) + .saturating_add(T::DbWeight::get().writes(6)) + .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(c.into()))) + .saturating_add(Weight::from_parts(0, 5481).saturating_mul(v.into())) + .saturating_add(Weight::from_parts(0, 123).saturating_mul(e.into())) + .saturating_add(Weight::from_parts(0, 2560).saturating_mul(c.into())) + } +} diff --git a/relay/kusama/src/weights/pallet_membership.rs b/relay/kusama/src/weights/pallet_membership.rs new file mode 100644 index 0000000000..6b144bc879 --- /dev/null +++ b/relay/kusama/src/weights/pallet_membership.rs @@ -0,0 +1,202 @@ +// Copyright (C) Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . +//! Autogenerated weights for `pallet_membership` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-03-16, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm5`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("kusama-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/production/polkadot +// benchmark +// pallet +// --chain=kusama-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_membership +// --extrinsic=* +// --execution=wasm +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/kusama/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] + +use frame_support::{traits::Get, weights::Weight}; +use sp_std::marker::PhantomData; + +/// Weight functions for `pallet_membership`. +pub struct WeightInfo(PhantomData); +impl pallet_membership::WeightInfo for WeightInfo { + /// Storage: TechnicalMembership Members (r:1 w:1) + /// Proof: TechnicalMembership Members (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) + /// Storage: TechnicalCommittee Proposals (r:1 w:0) + /// Proof Skipped: TechnicalCommittee Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: TechnicalCommittee Members (r:0 w:1) + /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: TechnicalCommittee Prime (r:0 w:1) + /// Proof Skipped: TechnicalCommittee Prime (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `m` is `[1, 99]`. + fn add_member(m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `208 + m * (64 ±0)` + // Estimated: `6793 + m * (192 ±0)` + // Minimum execution time: 15_847_000 picoseconds. + Weight::from_parts(16_597_325, 0) + .saturating_add(Weight::from_parts(0, 6793)) + // Standard Error: 411 + .saturating_add(Weight::from_parts(35_801, 0).saturating_mul(m.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_parts(0, 192).saturating_mul(m.into())) + } + /// Storage: TechnicalMembership Members (r:1 w:1) + /// Proof: TechnicalMembership Members (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) + /// Storage: TechnicalCommittee Proposals (r:1 w:0) + /// Proof Skipped: TechnicalCommittee Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: TechnicalMembership Prime (r:1 w:0) + /// Proof: TechnicalMembership Prime (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) + /// Storage: TechnicalCommittee Members (r:0 w:1) + /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: TechnicalCommittee Prime (r:0 w:1) + /// Proof Skipped: TechnicalCommittee Prime (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `m` is `[2, 100]`. + fn remove_member(m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `312 + m * (64 ±0)` + // Estimated: `8622 + m * (192 ±0)` + // Minimum execution time: 18_412_000 picoseconds. + Weight::from_parts(19_251_698, 0) + .saturating_add(Weight::from_parts(0, 8622)) + // Standard Error: 474 + .saturating_add(Weight::from_parts(32_206, 0).saturating_mul(m.into())) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_parts(0, 192).saturating_mul(m.into())) + } + /// Storage: TechnicalMembership Members (r:1 w:1) + /// Proof: TechnicalMembership Members (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) + /// Storage: TechnicalCommittee Proposals (r:1 w:0) + /// Proof Skipped: TechnicalCommittee Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: TechnicalMembership Prime (r:1 w:0) + /// Proof: TechnicalMembership Prime (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) + /// Storage: TechnicalCommittee Members (r:0 w:1) + /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: TechnicalCommittee Prime (r:0 w:1) + /// Proof Skipped: TechnicalCommittee Prime (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `m` is `[2, 100]`. + fn swap_member(m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `312 + m * (64 ±0)` + // Estimated: `8622 + m * (192 ±0)` + // Minimum execution time: 18_502_000 picoseconds. + Weight::from_parts(19_583_888, 0) + .saturating_add(Weight::from_parts(0, 8622)) + // Standard Error: 619 + .saturating_add(Weight::from_parts(44_408, 0).saturating_mul(m.into())) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_parts(0, 192).saturating_mul(m.into())) + } + /// Storage: TechnicalMembership Members (r:1 w:1) + /// Proof: TechnicalMembership Members (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) + /// Storage: TechnicalCommittee Proposals (r:1 w:0) + /// Proof Skipped: TechnicalCommittee Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: TechnicalMembership Prime (r:1 w:0) + /// Proof: TechnicalMembership Prime (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) + /// Storage: TechnicalCommittee Members (r:0 w:1) + /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: TechnicalCommittee Prime (r:0 w:1) + /// Proof Skipped: TechnicalCommittee Prime (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `m` is `[1, 100]`. + fn reset_member(m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `312 + m * (64 ±0)` + // Estimated: `8622 + m * (192 ±0)` + // Minimum execution time: 18_088_000 picoseconds. + Weight::from_parts(19_292_324, 0) + .saturating_add(Weight::from_parts(0, 8622)) + // Standard Error: 759 + .saturating_add(Weight::from_parts(162_348, 0).saturating_mul(m.into())) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_parts(0, 192).saturating_mul(m.into())) + } + /// Storage: TechnicalMembership Members (r:1 w:1) + /// Proof: TechnicalMembership Members (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) + /// Storage: TechnicalCommittee Proposals (r:1 w:0) + /// Proof Skipped: TechnicalCommittee Proposals (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: TechnicalMembership Prime (r:1 w:1) + /// Proof: TechnicalMembership Prime (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) + /// Storage: TechnicalCommittee Members (r:0 w:1) + /// Proof Skipped: TechnicalCommittee Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: TechnicalCommittee Prime (r:0 w:1) + /// Proof Skipped: TechnicalCommittee Prime (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `m` is `[1, 100]`. + fn change_key(m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `312 + m * (64 ±0)` + // Estimated: `8622 + m * (192 ±0)` + // Minimum execution time: 19_134_000 picoseconds. + Weight::from_parts(20_242_466, 0) + .saturating_add(Weight::from_parts(0, 8622)) + // Standard Error: 962 + .saturating_add(Weight::from_parts(47_779, 0).saturating_mul(m.into())) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(4)) + .saturating_add(Weight::from_parts(0, 192).saturating_mul(m.into())) + } + /// Storage: TechnicalMembership Members (r:1 w:0) + /// Proof: TechnicalMembership Members (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) + /// Storage: TechnicalMembership Prime (r:0 w:1) + /// Proof: TechnicalMembership Prime (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) + /// Storage: TechnicalCommittee Prime (r:0 w:1) + /// Proof Skipped: TechnicalCommittee Prime (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `m` is `[1, 100]`. + fn set_prime(m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `32 + m * (32 ±0)` + // Estimated: `4719 + m * (32 ±0)` + // Minimum execution time: 6_726_000 picoseconds. + Weight::from_parts(6_966_055, 0) + .saturating_add(Weight::from_parts(0, 4719)) + // Standard Error: 255 + .saturating_add(Weight::from_parts(13_950, 0).saturating_mul(m.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(Weight::from_parts(0, 32).saturating_mul(m.into())) + } + /// Storage: TechnicalMembership Prime (r:0 w:1) + /// Proof: TechnicalMembership Prime (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) + /// Storage: TechnicalCommittee Prime (r:0 w:1) + /// Proof Skipped: TechnicalCommittee Prime (max_values: Some(1), max_size: None, mode: Measured) + /// The range of component `m` is `[1, 100]`. + fn clear_prime(m: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 3_010_000 picoseconds. + Weight::from_parts(3_196_429, 0) + .saturating_add(Weight::from_parts(0, 0)) + // Standard Error: 78 + .saturating_add(Weight::from_parts(471, 0).saturating_mul(m.into())) + .saturating_add(T::DbWeight::get().writes(2)) + } +} diff --git a/relay/kusama/src/weights/pallet_offences.rs b/relay/kusama/src/weights/pallet_offences.rs new file mode 100644 index 0000000000..cbffaeb124 --- /dev/null +++ b/relay/kusama/src/weights/pallet_offences.rs @@ -0,0 +1,217 @@ +// Copyright (C) Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . + +//! Autogenerated weights for `pallet_offences` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-09-22, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `a3dce7bd4066`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! WASM-EXECUTION: `Compiled`, CHAIN: `Some("spec-kusama.json")`, DB CACHE: 1024 + +// Executed Command: +// /builds/polkadot-sdk/target/production/polkadot +// benchmark +// pallet +// --chain=spec-kusama.json +// --pallet=pallet_offences +// --extrinsic= +// --output=/builds/runtimes/relay/kusama/src/weights +// --header=/builds/bench/header.txt +// --no-median-slopes +// --no-min-squares + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_offences`. +pub struct WeightInfo(PhantomData); +impl pallet_offences::WeightInfo for WeightInfo { + /// Storage: `Offences::ConcurrentReportsIndex` (r:1 w:1) + /// Proof: `Offences::ConcurrentReportsIndex` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `Offences::Reports` (r:100 w:100) + /// Proof: `Offences::Reports` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `Staking::SlashRewardFraction` (r:1 w:0) + /// Proof: `Staking::SlashRewardFraction` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `Staking::ActiveEra` (r:1 w:0) + /// Proof: `Staking::ActiveEra` (`max_values`: Some(1), `max_size`: Some(13), added: 508, mode: `MaxEncodedLen`) + /// Storage: `Staking::ErasStartSessionIndex` (r:1 w:0) + /// Proof: `Staking::ErasStartSessionIndex` (`max_values`: None, `max_size`: Some(16), added: 2491, mode: `MaxEncodedLen`) + /// Storage: `Staking::Invulnerables` (r:1 w:0) + /// Proof: `Staking::Invulnerables` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) + /// Storage: `Staking::ValidatorSlashInEra` (r:100 w:100) + /// Proof: `Staking::ValidatorSlashInEra` (`max_values`: None, `max_size`: Some(72), added: 2547, mode: `MaxEncodedLen`) + /// Storage: `Staking::SlashingSpans` (r:2500 w:2500) + /// Proof: `Staking::SlashingSpans` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `Staking::SpanSlash` (r:2500 w:2500) + /// Proof: `Staking::SpanSlash` (`max_values`: None, `max_size`: Some(76), added: 2551, mode: `MaxEncodedLen`) + /// Storage: `Staking::Validators` (r:100 w:100) + /// Proof: `Staking::Validators` (`max_values`: None, `max_size`: Some(45), added: 2520, mode: `MaxEncodedLen`) + /// Storage: `Staking::CounterForValidators` (r:1 w:1) + /// Proof: `Staking::CounterForValidators` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `VoterList::ListNodes` (r:299 w:299) + /// Proof: `VoterList::ListNodes` (`max_values`: None, `max_size`: Some(154), added: 2629, mode: `MaxEncodedLen`) + /// Storage: `VoterList::ListBags` (r:1 w:1) + /// Proof: `VoterList::ListBags` (`max_values`: None, `max_size`: Some(82), added: 2557, mode: `MaxEncodedLen`) + /// Storage: `VoterList::CounterForListNodes` (r:1 w:1) + /// Proof: `VoterList::CounterForListNodes` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `Staking::Nominators` (r:100 w:0) + /// Proof: `Staking::Nominators` (`max_values`: None, `max_size`: Some(814), added: 3289, mode: `MaxEncodedLen`) + /// Storage: `Staking::OffendingValidators` (r:1 w:1) + /// Proof: `Staking::OffendingValidators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) + /// Storage: `Session::Validators` (r:1 w:0) + /// Proof: `Session::Validators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) + /// Storage: `Staking::NominatorSlashInEra` (r:2400 w:2400) + /// Proof: `Staking::NominatorSlashInEra` (`max_values`: None, `max_size`: Some(68), added: 2543, mode: `MaxEncodedLen`) + /// Storage: `Staking::UnappliedSlashes` (r:1 w:1) + /// Proof: `Staking::UnappliedSlashes` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// The range of component `r` is `[1, 100]`. + /// The range of component `o` is `[2, 100]`. + /// The range of component `n` is `[0, 24]`. + fn report_offence_im_online(_r: u32, o: u32, n: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0 + n * (2863 ±0) + o * (1226 ±0)` + // Estimated: `128540 + n * (156186 ±1_870) + o * (38402 ±459)` + // Minimum execution time: 613_723_000 picoseconds. + Weight::from_parts(623_808_000, 0) + .saturating_add(Weight::from_parts(0, 128540)) + // Standard Error: 4_282_562 + .saturating_add(Weight::from_parts(420_546_464, 0).saturating_mul(o.into())) + // Standard Error: 17_446_831 + .saturating_add(Weight::from_parts(480_750_986, 0).saturating_mul(n.into())) + .saturating_add(T::DbWeight::get().reads(172)) + .saturating_add(T::DbWeight::get().reads((51_u64).saturating_mul(o.into()))) + .saturating_add(T::DbWeight::get().reads((185_u64).saturating_mul(n.into()))) + .saturating_add(T::DbWeight::get().writes(165)) + .saturating_add(T::DbWeight::get().writes((50_u64).saturating_mul(o.into()))) + .saturating_add(T::DbWeight::get().writes((185_u64).saturating_mul(n.into()))) + .saturating_add(Weight::from_parts(0, 156186).saturating_mul(n.into())) + .saturating_add(Weight::from_parts(0, 38402).saturating_mul(o.into())) + } + /// Storage: `Offences::ConcurrentReportsIndex` (r:1 w:1) + /// Proof: `Offences::ConcurrentReportsIndex` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `Offences::Reports` (r:1 w:1) + /// Proof: `Offences::Reports` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `Staking::SlashRewardFraction` (r:1 w:0) + /// Proof: `Staking::SlashRewardFraction` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `Staking::ActiveEra` (r:1 w:0) + /// Proof: `Staking::ActiveEra` (`max_values`: Some(1), `max_size`: Some(13), added: 508, mode: `MaxEncodedLen`) + /// Storage: `Staking::ErasStartSessionIndex` (r:1 w:0) + /// Proof: `Staking::ErasStartSessionIndex` (`max_values`: None, `max_size`: Some(16), added: 2491, mode: `MaxEncodedLen`) + /// Storage: `Staking::Invulnerables` (r:1 w:0) + /// Proof: `Staking::Invulnerables` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) + /// Storage: `Staking::ValidatorSlashInEra` (r:1 w:1) + /// Proof: `Staking::ValidatorSlashInEra` (`max_values`: None, `max_size`: Some(72), added: 2547, mode: `MaxEncodedLen`) + /// Storage: `Staking::SlashingSpans` (r:25 w:25) + /// Proof: `Staking::SlashingSpans` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `Staking::SpanSlash` (r:25 w:25) + /// Proof: `Staking::SpanSlash` (`max_values`: None, `max_size`: Some(76), added: 2551, mode: `MaxEncodedLen`) + /// Storage: `Staking::Validators` (r:1 w:1) + /// Proof: `Staking::Validators` (`max_values`: None, `max_size`: Some(45), added: 2520, mode: `MaxEncodedLen`) + /// Storage: `Staking::CounterForValidators` (r:1 w:1) + /// Proof: `Staking::CounterForValidators` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `VoterList::ListNodes` (r:2 w:2) + /// Proof: `VoterList::ListNodes` (`max_values`: None, `max_size`: Some(154), added: 2629, mode: `MaxEncodedLen`) + /// Storage: `VoterList::ListBags` (r:1 w:1) + /// Proof: `VoterList::ListBags` (`max_values`: None, `max_size`: Some(82), added: 2557, mode: `MaxEncodedLen`) + /// Storage: `VoterList::CounterForListNodes` (r:1 w:1) + /// Proof: `VoterList::CounterForListNodes` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `Staking::Nominators` (r:1 w:0) + /// Proof: `Staking::Nominators` (`max_values`: None, `max_size`: Some(814), added: 3289, mode: `MaxEncodedLen`) + /// Storage: `Staking::OffendingValidators` (r:1 w:1) + /// Proof: `Staking::OffendingValidators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) + /// Storage: `Session::Validators` (r:1 w:0) + /// Proof: `Session::Validators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) + /// Storage: `Staking::NominatorSlashInEra` (r:24 w:24) + /// Proof: `Staking::NominatorSlashInEra` (`max_values`: None, `max_size`: Some(68), added: 2543, mode: `MaxEncodedLen`) + /// Storage: `Staking::UnappliedSlashes` (r:1 w:1) + /// Proof: `Staking::UnappliedSlashes` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// The range of component `n` is `[0, 24]`. + fn report_offence_grandpa(n: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `1831 + n * (48 ±0)` + // Estimated: `5686 + n * (2551 ±0)` + // Minimum execution time: 85_661_000 picoseconds. + Weight::from_parts(101_183_633, 0) + .saturating_add(Weight::from_parts(0, 5686)) + // Standard Error: 26_365 + .saturating_add(Weight::from_parts(9_828_019, 0).saturating_mul(n.into())) + .saturating_add(T::DbWeight::get().reads(19)) + .saturating_add(T::DbWeight::get().reads((3_u64).saturating_mul(n.into()))) + .saturating_add(T::DbWeight::get().writes(13)) + .saturating_add(T::DbWeight::get().writes((3_u64).saturating_mul(n.into()))) + .saturating_add(Weight::from_parts(0, 2551).saturating_mul(n.into())) + } + /// Storage: `Offences::ConcurrentReportsIndex` (r:1 w:1) + /// Proof: `Offences::ConcurrentReportsIndex` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `Offences::Reports` (r:1 w:1) + /// Proof: `Offences::Reports` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `Staking::SlashRewardFraction` (r:1 w:0) + /// Proof: `Staking::SlashRewardFraction` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `Staking::ActiveEra` (r:1 w:0) + /// Proof: `Staking::ActiveEra` (`max_values`: Some(1), `max_size`: Some(13), added: 508, mode: `MaxEncodedLen`) + /// Storage: `Staking::ErasStartSessionIndex` (r:1 w:0) + /// Proof: `Staking::ErasStartSessionIndex` (`max_values`: None, `max_size`: Some(16), added: 2491, mode: `MaxEncodedLen`) + /// Storage: `Staking::Invulnerables` (r:1 w:0) + /// Proof: `Staking::Invulnerables` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) + /// Storage: `Staking::ValidatorSlashInEra` (r:1 w:1) + /// Proof: `Staking::ValidatorSlashInEra` (`max_values`: None, `max_size`: Some(72), added: 2547, mode: `MaxEncodedLen`) + /// Storage: `Staking::SlashingSpans` (r:25 w:25) + /// Proof: `Staking::SlashingSpans` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `Staking::SpanSlash` (r:25 w:25) + /// Proof: `Staking::SpanSlash` (`max_values`: None, `max_size`: Some(76), added: 2551, mode: `MaxEncodedLen`) + /// Storage: `Staking::Validators` (r:1 w:1) + /// Proof: `Staking::Validators` (`max_values`: None, `max_size`: Some(45), added: 2520, mode: `MaxEncodedLen`) + /// Storage: `Staking::CounterForValidators` (r:1 w:1) + /// Proof: `Staking::CounterForValidators` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `VoterList::ListNodes` (r:2 w:2) + /// Proof: `VoterList::ListNodes` (`max_values`: None, `max_size`: Some(154), added: 2629, mode: `MaxEncodedLen`) + /// Storage: `VoterList::ListBags` (r:1 w:1) + /// Proof: `VoterList::ListBags` (`max_values`: None, `max_size`: Some(82), added: 2557, mode: `MaxEncodedLen`) + /// Storage: `VoterList::CounterForListNodes` (r:1 w:1) + /// Proof: `VoterList::CounterForListNodes` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `Staking::Nominators` (r:1 w:0) + /// Proof: `Staking::Nominators` (`max_values`: None, `max_size`: Some(814), added: 3289, mode: `MaxEncodedLen`) + /// Storage: `Staking::OffendingValidators` (r:1 w:1) + /// Proof: `Staking::OffendingValidators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) + /// Storage: `Session::Validators` (r:1 w:0) + /// Proof: `Session::Validators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) + /// Storage: `Staking::NominatorSlashInEra` (r:24 w:24) + /// Proof: `Staking::NominatorSlashInEra` (`max_values`: None, `max_size`: Some(68), added: 2543, mode: `MaxEncodedLen`) + /// Storage: `Staking::UnappliedSlashes` (r:1 w:1) + /// Proof: `Staking::UnappliedSlashes` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// The range of component `n` is `[0, 24]`. + fn report_offence_babe(n: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `1831 + n * (48 ±0)` + // Estimated: `5686 + n * (2551 ±0)` + // Minimum execution time: 85_422_000 picoseconds. + Weight::from_parts(101_060_303, 0) + .saturating_add(Weight::from_parts(0, 5686)) + // Standard Error: 27_913 + .saturating_add(Weight::from_parts(9_804_093, 0).saturating_mul(n.into())) + .saturating_add(T::DbWeight::get().reads(19)) + .saturating_add(T::DbWeight::get().reads((3_u64).saturating_mul(n.into()))) + .saturating_add(T::DbWeight::get().writes(13)) + .saturating_add(T::DbWeight::get().writes((3_u64).saturating_mul(n.into()))) + .saturating_add(Weight::from_parts(0, 2551).saturating_mul(n.into())) + } +} diff --git a/relay/kusama/src/weights/pallet_recovery.rs b/relay/kusama/src/weights/pallet_recovery.rs new file mode 100644 index 0000000000..02200bb0ed --- /dev/null +++ b/relay/kusama/src/weights/pallet_recovery.rs @@ -0,0 +1,181 @@ +// Copyright (C) Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . + +//! Autogenerated weights for `pallet_recovery` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-09-22, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `a3dce7bd4066`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! WASM-EXECUTION: `Compiled`, CHAIN: `Some("spec-kusama.json")`, DB CACHE: 1024 + +// Executed Command: +// /builds/polkadot-sdk/target/production/polkadot +// benchmark +// pallet +// --chain=spec-kusama.json +// --pallet=pallet_recovery +// --extrinsic= +// --output=/builds/runtimes/relay/kusama/src/weights +// --header=/builds/bench/header.txt +// --no-median-slopes +// --no-min-squares + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_recovery`. +pub struct WeightInfo(PhantomData); +impl pallet_recovery::WeightInfo for WeightInfo { + /// Storage: `Recovery::Proxy` (r:1 w:0) + /// Proof: `Recovery::Proxy` (`max_values`: None, `max_size`: Some(80), added: 2555, mode: `MaxEncodedLen`) + fn as_recovered() -> Weight { + // Proof Size summary in bytes: + // Measured: `215` + // Estimated: `3545` + // Minimum execution time: 8_014_000 picoseconds. + Weight::from_parts(8_613_000, 0) + .saturating_add(Weight::from_parts(0, 3545)) + .saturating_add(T::DbWeight::get().reads(1)) + } + /// Storage: `Recovery::Proxy` (r:0 w:1) + /// Proof: `Recovery::Proxy` (`max_values`: None, `max_size`: Some(80), added: 2555, mode: `MaxEncodedLen`) + fn set_recovered() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 7_723_000 picoseconds. + Weight::from_parts(8_112_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: `Recovery::Recoverable` (r:1 w:1) + /// Proof: `Recovery::Recoverable` (`max_values`: None, `max_size`: Some(351), added: 2826, mode: `MaxEncodedLen`) + /// The range of component `n` is `[1, 9]`. + fn create_recovery(n: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `109` + // Estimated: `3816` + // Minimum execution time: 22_346_000 picoseconds. + Weight::from_parts(23_296_973, 0) + .saturating_add(Weight::from_parts(0, 3816)) + // Standard Error: 4_221 + .saturating_add(Weight::from_parts(120_994, 0).saturating_mul(n.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: `Recovery::Recoverable` (r:1 w:0) + /// Proof: `Recovery::Recoverable` (`max_values`: None, `max_size`: Some(351), added: 2826, mode: `MaxEncodedLen`) + /// Storage: `Recovery::ActiveRecoveries` (r:1 w:1) + /// Proof: `Recovery::ActiveRecoveries` (`max_values`: None, `max_size`: Some(389), added: 2864, mode: `MaxEncodedLen`) + fn initiate_recovery() -> Weight { + // Proof Size summary in bytes: + // Measured: `206` + // Estimated: `3854` + // Minimum execution time: 28_705_000 picoseconds. + Weight::from_parts(29_807_000, 0) + .saturating_add(Weight::from_parts(0, 3854)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: `Recovery::Recoverable` (r:1 w:0) + /// Proof: `Recovery::Recoverable` (`max_values`: None, `max_size`: Some(351), added: 2826, mode: `MaxEncodedLen`) + /// Storage: `Recovery::ActiveRecoveries` (r:1 w:1) + /// Proof: `Recovery::ActiveRecoveries` (`max_values`: None, `max_size`: Some(389), added: 2864, mode: `MaxEncodedLen`) + /// The range of component `n` is `[1, 9]`. + fn vouch_recovery(n: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `294 + n * (64 ±0)` + // Estimated: `3854` + // Minimum execution time: 19_388_000 picoseconds. + Weight::from_parts(20_216_738, 0) + .saturating_add(Weight::from_parts(0, 3854)) + // Standard Error: 4_884 + .saturating_add(Weight::from_parts(122_431, 0).saturating_mul(n.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: `Recovery::Recoverable` (r:1 w:0) + /// Proof: `Recovery::Recoverable` (`max_values`: None, `max_size`: Some(351), added: 2826, mode: `MaxEncodedLen`) + /// Storage: `Recovery::ActiveRecoveries` (r:1 w:0) + /// Proof: `Recovery::ActiveRecoveries` (`max_values`: None, `max_size`: Some(389), added: 2864, mode: `MaxEncodedLen`) + /// Storage: `Recovery::Proxy` (r:1 w:1) + /// Proof: `Recovery::Proxy` (`max_values`: None, `max_size`: Some(80), added: 2555, mode: `MaxEncodedLen`) + /// The range of component `n` is `[1, 9]`. + fn claim_recovery(n: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `326 + n * (64 ±0)` + // Estimated: `3854` + // Minimum execution time: 23_438_000 picoseconds. + Weight::from_parts(24_326_305, 0) + .saturating_add(Weight::from_parts(0, 3854)) + // Standard Error: 4_836 + .saturating_add(Weight::from_parts(114_962, 0).saturating_mul(n.into())) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: `Recovery::ActiveRecoveries` (r:1 w:1) + /// Proof: `Recovery::ActiveRecoveries` (`max_values`: None, `max_size`: Some(389), added: 2864, mode: `MaxEncodedLen`) + /// Storage: `System::Account` (r:1 w:1) + /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// The range of component `n` is `[1, 9]`. + fn close_recovery(n: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `447 + n * (32 ±0)` + // Estimated: `3854` + // Minimum execution time: 32_497_000 picoseconds. + Weight::from_parts(34_118_633, 0) + .saturating_add(Weight::from_parts(0, 3854)) + // Standard Error: 5_544 + .saturating_add(Weight::from_parts(163_938, 0).saturating_mul(n.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: `Recovery::ActiveRecoveries` (r:1 w:0) + /// Proof: `Recovery::ActiveRecoveries` (`max_values`: None, `max_size`: Some(389), added: 2864, mode: `MaxEncodedLen`) + /// Storage: `Recovery::Recoverable` (r:1 w:1) + /// Proof: `Recovery::Recoverable` (`max_values`: None, `max_size`: Some(351), added: 2826, mode: `MaxEncodedLen`) + /// The range of component `n` is `[1, 9]`. + fn remove_recovery(n: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `204 + n * (32 ±0)` + // Estimated: `3854` + // Minimum execution time: 29_820_000 picoseconds. + Weight::from_parts(31_104_084, 0) + .saturating_add(Weight::from_parts(0, 3854)) + // Standard Error: 6_895 + .saturating_add(Weight::from_parts(118_999, 0).saturating_mul(n.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: `Recovery::Proxy` (r:1 w:1) + /// Proof: `Recovery::Proxy` (`max_values`: None, `max_size`: Some(80), added: 2555, mode: `MaxEncodedLen`) + fn cancel_recovered() -> Weight { + // Proof Size summary in bytes: + // Measured: `215` + // Estimated: `3545` + // Minimum execution time: 9_732_000 picoseconds. + Weight::from_parts(10_081_000, 0) + .saturating_add(Weight::from_parts(0, 3545)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } +} diff --git a/relay/kusama/src/weights/pallet_tips.rs b/relay/kusama/src/weights/pallet_tips.rs new file mode 100644 index 0000000000..64729ed630 --- /dev/null +++ b/relay/kusama/src/weights/pallet_tips.rs @@ -0,0 +1,159 @@ +// Copyright (C) Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . +//! Autogenerated weights for `pallet_tips` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-03-16, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `bm5`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("kusama-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/production/polkadot +// benchmark +// pallet +// --chain=kusama-dev +// --steps=50 +// --repeat=20 +// --pallet=pallet_tips +// --extrinsic=* +// --execution=wasm +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/kusama/src/weights/ + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] + +use frame_support::{traits::Get, weights::Weight}; +use sp_std::marker::PhantomData; + +/// Weight functions for `pallet_tips`. +pub struct WeightInfo(PhantomData); +impl pallet_tips::WeightInfo for WeightInfo { + /// Storage: Tips Reasons (r:1 w:1) + /// Proof Skipped: Tips Reasons (max_values: None, max_size: None, mode: Measured) + /// Storage: Tips Tips (r:1 w:1) + /// Proof Skipped: Tips Tips (max_values: None, max_size: None, mode: Measured) + /// The range of component `r` is `[0, 16384]`. + fn report_awesome(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `4` + // Estimated: `6938` + // Minimum execution time: 23_689_000 picoseconds. + Weight::from_parts(24_837_709, 0) + .saturating_add(Weight::from_parts(0, 6938)) + // Standard Error: 6 + .saturating_add(Weight::from_parts(1_449, 0).saturating_mul(r.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: Tips Tips (r:1 w:1) + /// Proof Skipped: Tips Tips (max_values: None, max_size: None, mode: Measured) + /// Storage: Tips Reasons (r:0 w:1) + /// Proof Skipped: Tips Reasons (max_values: None, max_size: None, mode: Measured) + fn retract_tip() -> Weight { + // Proof Size summary in bytes: + // Measured: `221` + // Estimated: `3907` + // Minimum execution time: 23_163_000 picoseconds. + Weight::from_parts(23_386_000, 0) + .saturating_add(Weight::from_parts(0, 3907)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: PhragmenElection Members (r:1 w:0) + /// Proof Skipped: PhragmenElection Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Tips Reasons (r:1 w:1) + /// Proof Skipped: Tips Reasons (max_values: None, max_size: None, mode: Measured) + /// Storage: Tips Tips (r:0 w:1) + /// Proof Skipped: Tips Tips (max_values: None, max_size: None, mode: Measured) + /// The range of component `r` is `[0, 16384]`. + /// The range of component `t` is `[1, 19]`. + fn tip_new(r: u32, t: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `108 + t * (64 ±0)` + // Estimated: `5274 + t * (192 ±0)` + // Minimum execution time: 18_945_000 picoseconds. + Weight::from_parts(17_578_665, 0) + .saturating_add(Weight::from_parts(0, 5274)) + // Standard Error: 6 + .saturating_add(Weight::from_parts(1_320, 0).saturating_mul(r.into())) + // Standard Error: 5_480 + .saturating_add(Weight::from_parts(154_765, 0).saturating_mul(t.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + .saturating_add(Weight::from_parts(0, 192).saturating_mul(t.into())) + } + /// Storage: PhragmenElection Members (r:1 w:0) + /// Proof Skipped: PhragmenElection Members (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Tips Tips (r:1 w:1) + /// Proof Skipped: Tips Tips (max_values: None, max_size: None, mode: Measured) + /// The range of component `t` is `[1, 19]`. + fn tip(t: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `329 + t * (112 ±0)` + // Estimated: `5608 + t * (224 ±0)` + // Minimum execution time: 14_212_000 picoseconds. + Weight::from_parts(14_717_871, 0) + .saturating_add(Weight::from_parts(0, 5608)) + // Standard Error: 1_305 + .saturating_add(Weight::from_parts(135_786, 0).saturating_mul(t.into())) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(1)) + .saturating_add(Weight::from_parts(0, 224).saturating_mul(t.into())) + } + /// Storage: Tips Tips (r:1 w:1) + /// Proof Skipped: Tips Tips (max_values: None, max_size: None, mode: Measured) + /// Storage: PhragmenElection Members (r:1 w:0) + /// Proof Skipped: PhragmenElection Members (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(128), added: 2603, mode: MaxEncodedLen) + /// Storage: Tips Reasons (r:0 w:1) + /// Proof Skipped: Tips Reasons (max_values: None, max_size: None, mode: Measured) + /// The range of component `t` is `[1, 19]`. + fn close_tip(t: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `368 + t * (112 ±0)` + // Estimated: `9620 + t * (336 ±0)` + // Minimum execution time: 41_550_000 picoseconds. + Weight::from_parts(43_011_989, 0) + .saturating_add(Weight::from_parts(0, 9620)) + // Standard Error: 5_482 + .saturating_add(Weight::from_parts(120_085, 0).saturating_mul(t.into())) + .saturating_add(T::DbWeight::get().reads(3)) + .saturating_add(T::DbWeight::get().writes(3)) + .saturating_add(Weight::from_parts(0, 336).saturating_mul(t.into())) + } + /// Storage: Tips Tips (r:1 w:1) + /// Proof Skipped: Tips Tips (max_values: None, max_size: None, mode: Measured) + /// Storage: Tips Reasons (r:0 w:1) + /// Proof Skipped: Tips Reasons (max_values: None, max_size: None, mode: Measured) + /// The range of component `t` is `[1, 19]`. + fn slash_tip(t: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `269` + // Estimated: `4003` + // Minimum execution time: 13_897_000 picoseconds. + Weight::from_parts(14_435_129, 0) + .saturating_add(Weight::from_parts(0, 4003)) + // Standard Error: 1_409 + .saturating_add(Weight::from_parts(9_959, 0).saturating_mul(t.into())) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(2)) + } +} diff --git a/relay/kusama/src/weights/pallet_xcm_benchmarks_fungible.rs b/relay/kusama/src/weights/pallet_xcm_benchmarks_fungible.rs new file mode 100644 index 0000000000..f1a6d3b068 --- /dev/null +++ b/relay/kusama/src/weights/pallet_xcm_benchmarks_fungible.rs @@ -0,0 +1,184 @@ +// Copyright (C) Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . + +//! Autogenerated weights for `pallet_xcm_benchmarks::fungible` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-09-22, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `a3dce7bd4066`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! WASM-EXECUTION: `Compiled`, CHAIN: `Some("spec-kusama.json")`, DB CACHE: 1024 + +// Executed Command: +// /builds/polkadot-sdk/target/production/polkadot +// benchmark +// pallet +// --chain=spec-kusama.json +// --pallet=pallet_xcm_benchmarks::fungible +// --extrinsic= +// --output=/builds/runtimes/relay/kusama/src/weights +// --header=/builds/bench/header.txt +// --no-median-slopes +// --no-min-squares + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_xcm_benchmarks::fungible`. +pub struct WeightInfo(PhantomData); +impl pallet_xcm_benchmarks::fungible::WeightInfo for WeightInfo { + /// Storage: `System::Account` (r:1 w:1) + /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + fn withdraw_asset() -> Weight { + // Proof Size summary in bytes: + // Measured: `101` + // Estimated: `3593` + // Minimum execution time: 22_244_000 picoseconds. + Weight::from_parts(22_867_000, 0) + .saturating_add(Weight::from_parts(0, 3593)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: `System::Account` (r:2 w:2) + /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + fn transfer_asset() -> Weight { + // Proof Size summary in bytes: + // Measured: `101` + // Estimated: `6196` + // Minimum execution time: 46_292_000 picoseconds. + Weight::from_parts(48_776_000, 0) + .saturating_add(Weight::from_parts(0, 6196)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: `System::Account` (r:2 w:2) + /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `Dmp::DeliveryFeeFactor` (r:1 w:0) + /// Proof: `Dmp::DeliveryFeeFactor` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `XcmPallet::SupportedVersion` (r:1 w:0) + /// Proof: `XcmPallet::SupportedVersion` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `Dmp::DownwardMessageQueues` (r:1 w:1) + /// Proof: `Dmp::DownwardMessageQueues` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `Dmp::DownwardMessageQueueHeads` (r:1 w:1) + /// Proof: `Dmp::DownwardMessageQueueHeads` (`max_values`: None, `max_size`: None, mode: `Measured`) + fn transfer_reserve_asset() -> Weight { + // Proof Size summary in bytes: + // Measured: `210` + // Estimated: `6196` + // Minimum execution time: 67_983_000 picoseconds. + Weight::from_parts(69_926_000, 0) + .saturating_add(Weight::from_parts(0, 6196)) + .saturating_add(T::DbWeight::get().reads(6)) + .saturating_add(T::DbWeight::get().writes(4)) + } + /// Storage: `Benchmark::Override` (r:0 w:0) + /// Proof: `Benchmark::Override` (`max_values`: None, `max_size`: None, mode: `Measured`) + fn reserve_asset_deposited() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_000_000_000_000 picoseconds. + Weight::from_parts(2_000_000_000_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: `Dmp::DeliveryFeeFactor` (r:1 w:0) + /// Proof: `Dmp::DeliveryFeeFactor` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `XcmPallet::SupportedVersion` (r:1 w:0) + /// Proof: `XcmPallet::SupportedVersion` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `Dmp::DownwardMessageQueues` (r:1 w:1) + /// Proof: `Dmp::DownwardMessageQueues` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `Dmp::DownwardMessageQueueHeads` (r:1 w:1) + /// Proof: `Dmp::DownwardMessageQueueHeads` (`max_values`: None, `max_size`: None, mode: `Measured`) + fn initiate_reserve_withdraw() -> Weight { + // Proof Size summary in bytes: + // Measured: `109` + // Estimated: `3574` + // Minimum execution time: 25_770_000 picoseconds. + Weight::from_parts(26_448_000, 0) + .saturating_add(Weight::from_parts(0, 3574)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: `System::Account` (r:1 w:1) + /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + fn receive_teleported_asset() -> Weight { + // Proof Size summary in bytes: + // Measured: `103` + // Estimated: `3593` + // Minimum execution time: 20_397_000 picoseconds. + Weight::from_parts(21_277_000, 0) + .saturating_add(Weight::from_parts(0, 3593)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: `System::Account` (r:1 w:1) + /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + fn deposit_asset() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `3593` + // Minimum execution time: 22_391_000 picoseconds. + Weight::from_parts(23_166_000, 0) + .saturating_add(Weight::from_parts(0, 3593)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: `System::Account` (r:1 w:1) + /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `Dmp::DeliveryFeeFactor` (r:1 w:0) + /// Proof: `Dmp::DeliveryFeeFactor` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `XcmPallet::SupportedVersion` (r:1 w:0) + /// Proof: `XcmPallet::SupportedVersion` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `Dmp::DownwardMessageQueues` (r:1 w:1) + /// Proof: `Dmp::DownwardMessageQueues` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `Dmp::DownwardMessageQueueHeads` (r:1 w:1) + /// Proof: `Dmp::DownwardMessageQueueHeads` (`max_values`: None, `max_size`: None, mode: `Measured`) + fn deposit_reserve_asset() -> Weight { + // Proof Size summary in bytes: + // Measured: `109` + // Estimated: `3593` + // Minimum execution time: 45_906_000 picoseconds. + Weight::from_parts(47_158_000, 0) + .saturating_add(Weight::from_parts(0, 3593)) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().writes(3)) + } + /// Storage: `System::Account` (r:1 w:1) + /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `Dmp::DeliveryFeeFactor` (r:1 w:0) + /// Proof: `Dmp::DeliveryFeeFactor` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `XcmPallet::SupportedVersion` (r:1 w:0) + /// Proof: `XcmPallet::SupportedVersion` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `Dmp::DownwardMessageQueues` (r:1 w:1) + /// Proof: `Dmp::DownwardMessageQueues` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `Dmp::DownwardMessageQueueHeads` (r:1 w:1) + /// Proof: `Dmp::DownwardMessageQueueHeads` (`max_values`: None, `max_size`: None, mode: `Measured`) + fn initiate_teleport() -> Weight { + // Proof Size summary in bytes: + // Measured: `109` + // Estimated: `3593` + // Minimum execution time: 47_858_000 picoseconds. + Weight::from_parts(49_100_000, 0) + .saturating_add(Weight::from_parts(0, 3593)) + .saturating_add(T::DbWeight::get().reads(5)) + .saturating_add(T::DbWeight::get().writes(3)) + } +} diff --git a/relay/kusama/src/weights/pallet_xcm_benchmarks_generic.rs b/relay/kusama/src/weights/pallet_xcm_benchmarks_generic.rs new file mode 100644 index 0000000000..7b5d81343d --- /dev/null +++ b/relay/kusama/src/weights/pallet_xcm_benchmarks_generic.rs @@ -0,0 +1,393 @@ +// Copyright (C) Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . + +//! Autogenerated weights for `pallet_xcm_benchmarks::generic` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-06-19, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `runner-e8ezs4ez-project-163-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("kusama-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/production/polkadot +// benchmark +// pallet +// --chain=kusama-dev +// --steps=50 +// --repeat=20 +// --no-storage-info +// --no-median-slopes +// --no-min-squares +// --pallet=pallet_xcm_benchmarks::generic +// --extrinsic=* +// --execution=wasm +// --wasm-execution=compiled +// --header=./file_header.txt +// --output=./runtime/kusama/src/weights/pallet_xcm_benchmarks_generic.rs + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_xcm_benchmarks::generic`. +pub struct WeightInfo(PhantomData); +impl pallet_xcm_benchmarks::generic::WeightInfo for WeightInfo { + /// Storage: unknown `0x3a696e747261626c6f636b5f656e74726f7079` (r:1 w:1) + /// Proof Skipped: unknown `0x3a696e747261626c6f636b5f656e74726f7079` (r:1 w:1) + /// Storage: Dmp DeliveryFeeFactor (r:1 w:0) + /// Proof Skipped: Dmp DeliveryFeeFactor (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmPallet SupportedVersion (r:1 w:0) + /// Proof Skipped: XcmPallet SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmPallet VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: XcmPallet VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: XcmPallet SafeXcmVersion (r:1 w:0) + /// Proof Skipped: XcmPallet SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Dmp DownwardMessageQueues (r:1 w:1) + /// Proof Skipped: Dmp DownwardMessageQueues (max_values: None, max_size: None, mode: Measured) + /// Storage: Dmp DownwardMessageQueueHeads (r:1 w:1) + /// Proof Skipped: Dmp DownwardMessageQueueHeads (max_values: None, max_size: None, mode: Measured) + fn report_holding() -> Weight { + // Proof Size summary in bytes: + // Measured: `211` + // Estimated: `3676` + // Minimum execution time: 34_471_000 picoseconds. + Weight::from_parts(35_000_000, 0) + .saturating_add(Weight::from_parts(0, 3676)) + .saturating_add(T::DbWeight::get().reads(7)) + .saturating_add(T::DbWeight::get().writes(4)) + } + fn buy_execution() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 3_115_000 picoseconds. + Weight::from_parts(3_227_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: XcmPallet Queries (r:1 w:0) + /// Proof Skipped: XcmPallet Queries (max_values: None, max_size: None, mode: Measured) + fn query_response() -> Weight { + // Proof Size summary in bytes: + // Measured: `169` + // Estimated: `3634` + // Minimum execution time: 11_905_000 picoseconds. + Weight::from_parts(12_199_000, 0) + .saturating_add(Weight::from_parts(0, 3634)) + .saturating_add(T::DbWeight::get().reads(1)) + } + fn transact() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 12_426_000 picoseconds. + Weight::from_parts(12_740_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn refund_surplus() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 3_099_000 picoseconds. + Weight::from_parts(3_200_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn set_error_handler() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_960_000 picoseconds. + Weight::from_parts(3_060_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn set_appendix() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_947_000 picoseconds. + Weight::from_parts(3_048_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn clear_error() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_861_000 picoseconds. + Weight::from_parts(2_990_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn descend_origin() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 3_843_000 picoseconds. + Weight::from_parts(4_005_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn clear_origin() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_915_000 picoseconds. + Weight::from_parts(3_037_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: unknown `0x3a696e747261626c6f636b5f656e74726f7079` (r:1 w:1) + /// Proof Skipped: unknown `0x3a696e747261626c6f636b5f656e74726f7079` (r:1 w:1) + /// Storage: Dmp DeliveryFeeFactor (r:1 w:0) + /// Proof Skipped: Dmp DeliveryFeeFactor (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmPallet SupportedVersion (r:1 w:0) + /// Proof Skipped: XcmPallet SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmPallet VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: XcmPallet VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: XcmPallet SafeXcmVersion (r:1 w:0) + /// Proof Skipped: XcmPallet SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Dmp DownwardMessageQueues (r:1 w:1) + /// Proof Skipped: Dmp DownwardMessageQueues (max_values: None, max_size: None, mode: Measured) + /// Storage: Dmp DownwardMessageQueueHeads (r:1 w:1) + /// Proof Skipped: Dmp DownwardMessageQueueHeads (max_values: None, max_size: None, mode: Measured) + fn report_error() -> Weight { + // Proof Size summary in bytes: + // Measured: `211` + // Estimated: `3676` + // Minimum execution time: 29_177_000 picoseconds. + Weight::from_parts(29_561_000, 0) + .saturating_add(Weight::from_parts(0, 3676)) + .saturating_add(T::DbWeight::get().reads(7)) + .saturating_add(T::DbWeight::get().writes(4)) + } + /// Storage: XcmPallet AssetTraps (r:1 w:1) + /// Proof Skipped: XcmPallet AssetTraps (max_values: None, max_size: None, mode: Measured) + fn claim_asset() -> Weight { + // Proof Size summary in bytes: + // Measured: `226` + // Estimated: `3691` + // Minimum execution time: 16_170_000 picoseconds. + Weight::from_parts(16_629_000, 0) + .saturating_add(Weight::from_parts(0, 3691)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + fn trap() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_881_000 picoseconds. + Weight::from_parts(3_014_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: XcmPallet VersionNotifyTargets (r:1 w:1) + /// Proof Skipped: XcmPallet VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) + /// Storage: unknown `0x3a696e747261626c6f636b5f656e74726f7079` (r:1 w:1) + /// Proof Skipped: unknown `0x3a696e747261626c6f636b5f656e74726f7079` (r:1 w:1) + /// Storage: Dmp DeliveryFeeFactor (r:1 w:0) + /// Proof Skipped: Dmp DeliveryFeeFactor (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmPallet SupportedVersion (r:1 w:0) + /// Proof Skipped: XcmPallet SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmPallet VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: XcmPallet VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: XcmPallet SafeXcmVersion (r:1 w:0) + /// Proof Skipped: XcmPallet SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Dmp DownwardMessageQueues (r:1 w:1) + /// Proof Skipped: Dmp DownwardMessageQueues (max_values: None, max_size: None, mode: Measured) + /// Storage: Dmp DownwardMessageQueueHeads (r:1 w:1) + /// Proof Skipped: Dmp DownwardMessageQueueHeads (max_values: None, max_size: None, mode: Measured) + fn subscribe_version() -> Weight { + // Proof Size summary in bytes: + // Measured: `211` + // Estimated: `3676` + // Minimum execution time: 35_499_000 picoseconds. + Weight::from_parts(36_678_000, 0) + .saturating_add(Weight::from_parts(0, 3676)) + .saturating_add(T::DbWeight::get().reads(8)) + .saturating_add(T::DbWeight::get().writes(5)) + } + /// Storage: XcmPallet VersionNotifyTargets (r:0 w:1) + /// Proof Skipped: XcmPallet VersionNotifyTargets (max_values: None, max_size: None, mode: Measured) + fn unsubscribe_version() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 5_005_000 picoseconds. + Weight::from_parts(5_176_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: unknown `0x3a696e747261626c6f636b5f656e74726f7079` (r:1 w:1) + /// Proof Skipped: unknown `0x3a696e747261626c6f636b5f656e74726f7079` (r:1 w:1) + /// Storage: Dmp DeliveryFeeFactor (r:1 w:0) + /// Proof Skipped: Dmp DeliveryFeeFactor (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmPallet SupportedVersion (r:1 w:0) + /// Proof Skipped: XcmPallet SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmPallet VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: XcmPallet VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: XcmPallet SafeXcmVersion (r:1 w:0) + /// Proof Skipped: XcmPallet SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Dmp DownwardMessageQueues (r:1 w:1) + /// Proof Skipped: Dmp DownwardMessageQueues (max_values: None, max_size: None, mode: Measured) + /// Storage: Dmp DownwardMessageQueueHeads (r:1 w:1) + /// Proof Skipped: Dmp DownwardMessageQueueHeads (max_values: None, max_size: None, mode: Measured) + fn initiate_reserve_withdraw() -> Weight { + // Proof Size summary in bytes: + // Measured: `211` + // Estimated: `3676` + // Minimum execution time: 33_017_000 picoseconds. + Weight::from_parts(33_514_000, 0) + .saturating_add(Weight::from_parts(0, 3676)) + .saturating_add(T::DbWeight::get().reads(7)) + .saturating_add(T::DbWeight::get().writes(4)) + } + fn burn_asset() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 4_645_000 picoseconds. + Weight::from_parts(4_827_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn expect_asset() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 3_116_000 picoseconds. + Weight::from_parts(3_239_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn expect_origin() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_930_000 picoseconds. + Weight::from_parts(3_118_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn expect_error() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_871_000 picoseconds. + Weight::from_parts(2_990_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn expect_transact_status() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 3_136_000 picoseconds. + Weight::from_parts(3_240_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: unknown `0x3a696e747261626c6f636b5f656e74726f7079` (r:1 w:1) + /// Proof Skipped: unknown `0x3a696e747261626c6f636b5f656e74726f7079` (r:1 w:1) + /// Storage: Dmp DeliveryFeeFactor (r:1 w:0) + /// Proof Skipped: Dmp DeliveryFeeFactor (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmPallet SupportedVersion (r:1 w:0) + /// Proof Skipped: XcmPallet SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmPallet VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: XcmPallet VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: XcmPallet SafeXcmVersion (r:1 w:0) + /// Proof Skipped: XcmPallet SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Dmp DownwardMessageQueues (r:1 w:1) + /// Proof Skipped: Dmp DownwardMessageQueues (max_values: None, max_size: None, mode: Measured) + /// Storage: Dmp DownwardMessageQueueHeads (r:1 w:1) + /// Proof Skipped: Dmp DownwardMessageQueueHeads (max_values: None, max_size: None, mode: Measured) + fn query_pallet() -> Weight { + // Proof Size summary in bytes: + // Measured: `211` + // Estimated: `3676` + // Minimum execution time: 36_940_000 picoseconds. + Weight::from_parts(37_766_000, 0) + .saturating_add(Weight::from_parts(0, 3676)) + .saturating_add(T::DbWeight::get().reads(7)) + .saturating_add(T::DbWeight::get().writes(4)) + } + fn expect_pallet() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 8_735_000 picoseconds. + Weight::from_parts(8_957_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + /// Storage: unknown `0x3a696e747261626c6f636b5f656e74726f7079` (r:1 w:1) + /// Proof Skipped: unknown `0x3a696e747261626c6f636b5f656e74726f7079` (r:1 w:1) + /// Storage: Dmp DeliveryFeeFactor (r:1 w:0) + /// Proof Skipped: Dmp DeliveryFeeFactor (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmPallet SupportedVersion (r:1 w:0) + /// Proof Skipped: XcmPallet SupportedVersion (max_values: None, max_size: None, mode: Measured) + /// Storage: XcmPallet VersionDiscoveryQueue (r:1 w:1) + /// Proof Skipped: XcmPallet VersionDiscoveryQueue (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: XcmPallet SafeXcmVersion (r:1 w:0) + /// Proof Skipped: XcmPallet SafeXcmVersion (max_values: Some(1), max_size: None, mode: Measured) + /// Storage: Dmp DownwardMessageQueues (r:1 w:1) + /// Proof Skipped: Dmp DownwardMessageQueues (max_values: None, max_size: None, mode: Measured) + /// Storage: Dmp DownwardMessageQueueHeads (r:1 w:1) + /// Proof Skipped: Dmp DownwardMessageQueueHeads (max_values: None, max_size: None, mode: Measured) + fn report_transact_status() -> Weight { + // Proof Size summary in bytes: + // Measured: `211` + // Estimated: `3676` + // Minimum execution time: 28_967_000 picoseconds. + Weight::from_parts(29_937_000, 0) + .saturating_add(Weight::from_parts(0, 3676)) + .saturating_add(T::DbWeight::get().reads(7)) + .saturating_add(T::DbWeight::get().writes(4)) + } + fn clear_transact_status() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_907_000 picoseconds. + Weight::from_parts(3_023_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn set_topic() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_866_000 picoseconds. + Weight::from_parts(2_960_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn clear_topic() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_872_000 picoseconds. + Weight::from_parts(3_022_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn set_fees_mode() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 2_936_000 picoseconds. + Weight::from_parts(3_021_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } + fn unpaid_execution() -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 3_063_000 picoseconds. + Weight::from_parts(3_153_000, 0) + .saturating_add(Weight::from_parts(0, 0)) + } +} From 71e386c90712b8ad72d54c9cf8fa85b822d1e281 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Tue, 21 Nov 2023 11:04:25 +0300 Subject: [PATCH 33/68] reverted async backing for Polkadot (as per https://github.com/polkadot-fellows/runtimes/pull/87) --- relay/polkadot/src/lib.rs | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/relay/polkadot/src/lib.rs b/relay/polkadot/src/lib.rs index 8b32866183..df8c2a3b71 100644 --- a/relay/polkadot/src/lib.rs +++ b/relay/polkadot/src/lib.rs @@ -1816,7 +1816,6 @@ sp_api::impl_runtime_apis! { } } - #[api_version(7)] impl primitives::runtime_api::ParachainHost for Runtime { fn validators() -> Vec { parachains_runtime_api_impl::validators::() @@ -1947,18 +1946,6 @@ sp_api::impl_runtime_apis! { key_ownership_proof, ) } - - fn minimum_backing_votes() -> u32 { - parachains_runtime_api_impl::minimum_backing_votes::() - } - - fn para_backing_state(para_id: ParaId) -> Option { - parachains_runtime_api_impl::backing_state::(para_id) - } - - fn async_backing_params() -> primitives::AsyncBackingParams { - parachains_runtime_api_impl::async_backing_params::() - } } impl beefy_primitives::BeefyApi for Runtime { From ae8f553129a2a0fa6f2715629f8767f2ea084b84 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Tue, 21 Nov 2023 11:11:20 +0300 Subject: [PATCH 34/68] started changing CHANGELOG.md --- CHANGELOG.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 60daaed988..bb127d15ad 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,10 +12,19 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - Upgrade Preimage pallet's config implementations to adapt the new `Consideration` API ([polkadot-fellows/runtimes#56](https://github.com/polkadot-fellows/runtimes/pull/56)) - Remove `experimental` feature flag for `pallet-society`, `pallet-xcm`, and `runtime-common` crates imports ([polkadot-fellows/runtimes#56](https://github.com/polkadot-fellows/runtimes/pull/56)) - Election provider: use a geometric deposit base calculation for EPM signed submissions in Polkadot and Kusama ([polkadot-fellows/runtimes#56](https://github.com/polkadot-fellows/runtimes/pull/56)) +- Make IdentityInfo generic in pallet-identity ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) + +### Added + +- Treasury may spend various asset kinds ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) +- Enable async backing on Kusama ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) +- Implemented GenesisBuilder API for all runtimes ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) +- XCM transport fees are now exponential and are sent to a treasury account ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) ### Fixed - Add missing weight functions for `runtime_parachains_hrmp` and `preimage` pallets ([polkadot-fellows/runtimes#56](https://github.com/polkadot-fellows/runtimes/pull/56)) +- Fix for Reward Deficit in the pool ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) ## [1.0.1] 22.10.2023 From 842dc392f1a2cf4b899da853020d1136edf8c793 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Tue, 21 Nov 2023 12:01:54 +0300 Subject: [PATCH 35/68] removed para scheduler migration --- relay/kusama/src/lib.rs | 1 - relay/polkadot/src/lib.rs | 1 - 2 files changed, 2 deletions(-) diff --git a/relay/kusama/src/lib.rs b/relay/kusama/src/lib.rs index c459718116..0938b04e08 100644 --- a/relay/kusama/src/lib.rs +++ b/relay/kusama/src/lib.rs @@ -1794,7 +1794,6 @@ pub mod migrations { >, pallet_im_online::migration::v1::Migration, parachains_configuration::migration::v7::MigrateToV7, - runtime_parachains::scheduler::migration::v1::MigrateToV1, parachains_configuration::migration::v8::MigrateToV8, // Unlock/unreserve balances from Gov v1 pallets that hold them diff --git a/relay/polkadot/src/lib.rs b/relay/polkadot/src/lib.rs index df8c2a3b71..a32c020fe7 100644 --- a/relay/polkadot/src/lib.rs +++ b/relay/polkadot/src/lib.rs @@ -1629,7 +1629,6 @@ pub mod migrations { pub type Unreleased = ( pallet_im_online::migration::v1::Migration, parachains_configuration::migration::v7::MigrateToV7, - runtime_parachains::scheduler::migration::v1::MigrateToV1, parachains_configuration::migration::v8::MigrateToV8, // Gov v1 storage migrations From 5cfef32ef7525812d0522c376a43430cb9945abb Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Wed, 22 Nov 2023 10:14:03 +0300 Subject: [PATCH 36/68] temporary disable https://github.com/paritytech/polkadot-sdk/pull/1333, but still allow benchmarks to succeed --- Cargo.lock | 2 - relay/kusama/Cargo.toml | 4 - relay/kusama/src/lib.rs | 46 ++++--- relay/kusama/src/weights/pallet_treasury.rs | 115 ++++++++++++------ relay/kusama/src/xcm_config.rs | 2 +- relay/polkadot/Cargo.toml | 4 - relay/polkadot/src/lib.rs | 46 ++++--- relay/polkadot/src/weights/pallet_treasury.rs | 115 ++++++++++++------ relay/polkadot/src/xcm_config.rs | 2 +- .../asset-hubs/asset-hub-kusama/Cargo.toml | 1 + .../asset-hubs/asset-hub-polkadot/Cargo.toml | 1 + .../bridge-hubs/bridge-hub-kusama/Cargo.toml | 1 + .../bridge-hub-polkadot/Cargo.toml | 1 + 13 files changed, 224 insertions(+), 116 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index e3e9eb7890..0031c204c9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -8092,7 +8092,6 @@ dependencies = [ "frame-try-runtime", "hex-literal", "log", - "pallet-asset-rate", "pallet-authority-discovery", "pallet-authorship", "pallet-babe", @@ -11439,7 +11438,6 @@ dependencies = [ "hex-literal", "kusama-runtime-constants", "log", - "pallet-asset-rate", "pallet-authority-discovery", "pallet-authorship", "pallet-babe", diff --git a/relay/kusama/Cargo.toml b/relay/kusama/Cargo.toml index f81e9e18e6..34fa35d815 100644 --- a/relay/kusama/Cargo.toml +++ b/relay/kusama/Cargo.toml @@ -43,7 +43,6 @@ tx-pool-api = { package = "sp-transaction-pool", default-features = false , vers block-builder-api = { package = "sp-block-builder", default-features = false , version = "23.0.0" } sp-npos-elections = { default-features = false , version = "23.0.0" } -pallet-asset-rate = { default-features = false , version = "4.0.0" } pallet-authority-discovery = { default-features = false , version = "25.0.0" } pallet-authorship = { default-features = false , version = "25.0.0" } pallet-babe = { default-features = false , version = "25.0.0" } @@ -150,7 +149,6 @@ std = [ "inherents/std", "kusama-runtime-constants/std", "log/std", - "pallet-asset-rate/std", "offchain-primitives/std", "pallet-authority-discovery/std", "pallet-authorship/std", @@ -238,7 +236,6 @@ runtime-benchmarks = [ "frame-support/runtime-benchmarks", "frame-system-benchmarking/runtime-benchmarks", "frame-system/runtime-benchmarks", - "pallet-asset-rate/runtime-benchmarks", "pallet-babe/runtime-benchmarks", "pallet-bags-list/runtime-benchmarks", "pallet-balances/runtime-benchmarks", @@ -297,7 +294,6 @@ try-runtime = [ "frame-system/try-runtime", "frame-try-runtime", "frame-try-runtime/try-runtime", - "pallet-asset-rate/try-runtime", "pallet-authority-discovery/try-runtime", "pallet-authorship/try-runtime", "pallet-babe/try-runtime", diff --git a/relay/kusama/src/lib.rs b/relay/kusama/src/lib.rs index 0938b04e08..57b979ef7f 100644 --- a/relay/kusama/src/lib.rs +++ b/relay/kusama/src/lib.rs @@ -87,7 +87,7 @@ use sp_runtime::{ create_runtime_str, generic, impl_opaque_keys, traits::{ AccountIdLookup, BlakeTwo256, Block as BlockT, ConvertInto, Extrinsic as ExtrinsicT, - IdentityLookup, Keccak256, OpaqueKeys, SaturatedConversion, Verify, + Keccak256, OpaqueKeys, SaturatedConversion, Verify, }, transaction_validity::{TransactionPriority, TransactionSource, TransactionValidity}, ApplyExtrinsicResult, FixedU128, KeyTypeId, Perbill, Percent, Permill, RuntimeDebug, @@ -763,6 +763,28 @@ parameter_types! { pub const MaxPeerInHeartbeats: u32 = 10_000; } +#[cfg(not(feature = "runtime-benchmarks"))] +mod disable_new_treasury_functionality { + use super::*; + + /// Temporary workaround that disables new functionality from + /// https://github.com/paritytech/polkadot-sdk/pull/1333 + pub struct NeverLookup; + + impl sp_runtime::traits::StaticLookup for NeverLookup { + type Source = VersionedMultiLocation; + type Target = VersionedMultiLocation; + + fn lookup(_s: Self::Source) -> Result { + Err(frame_support::error::LookupError) + } + + fn unlookup(t: Self::Target) -> Self::Source { + t + } + } +} + impl pallet_treasury::Config for Runtime { type PalletId = TreasuryPalletId; type Currency = Balances; @@ -782,7 +804,10 @@ impl pallet_treasury::Config for Runtime { type SpendOrigin = TreasurySpender; type AssetKind = VersionedLocatableAsset; type Beneficiary = VersionedMultiLocation; - type BeneficiaryLookup = IdentityLookup; + #[cfg(not(feature = "runtime-benchmarks"))] + type BeneficiaryLookup = disable_new_treasury_functionality::NeverLookup; + #[cfg(feature = "runtime-benchmarks")] + type BeneficiaryLookup = sp_runtime::traits::IdentityLookup; type Paymaster = PayOverXcm< TreasuryInteriorLocation, crate::xcm_config::XcmRouter, @@ -793,7 +818,7 @@ impl pallet_treasury::Config for Runtime { LocatableAssetConverter, VersionedMultiLocationConverter, >; - type BalanceConverter = AssetRate; + type BalanceConverter = frame_support::traits::tokens::UnityAssetBalanceConversion; type PayoutPeriod = PayoutSpendPeriod; #[cfg(feature = "runtime-benchmarks")] type BenchmarkHelper = runtime_common::impls::benchmarks::TreasuryArguments; @@ -1528,18 +1553,6 @@ impl pallet_state_trie_migration::Config for Runtime { type MaxKeyLen = MigrationMaxKeyLen; } -impl pallet_asset_rate::Config for Runtime { - type WeightInfo = (); // TODO - type RuntimeEvent = RuntimeEvent; - type CreateOrigin = EnsureRoot; - type RemoveOrigin = EnsureRoot; - type UpdateOrigin = EnsureRoot; - type Currency = Balances; - type AssetKind = ::AssetKind; - #[cfg(feature = "runtime-benchmarks")] - type BenchmarkHelper = runtime_common::impls::benchmarks::AssetRateArguments; -} - construct_runtime! { pub enum Runtime { @@ -1670,9 +1683,6 @@ construct_runtime! { // Generalized message queue MessageQueue: pallet_message_queue::{Pallet, Call, Storage, Event} = 100, - - // Asset rate. - AssetRate: pallet_asset_rate::{Pallet, Call, Storage, Event} = 101, } } diff --git a/relay/kusama/src/weights/pallet_treasury.rs b/relay/kusama/src/weights/pallet_treasury.rs index f211d5aca7..52b59a25cd 100644 --- a/relay/kusama/src/weights/pallet_treasury.rs +++ b/relay/kusama/src/weights/pallet_treasury.rs @@ -45,31 +45,22 @@ use core::marker::PhantomData; /// Weight functions for `pallet_treasury`. pub struct WeightInfo(PhantomData); impl pallet_treasury::WeightInfo for WeightInfo { - fn spend_local() -> Weight { - Weight::zero() - } - /// Storage: `Treasury::ProposalCount` (r:1 w:1) /// Proof: `Treasury::ProposalCount` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) /// Storage: `Treasury::Approvals` (r:1 w:1) /// Proof: `Treasury::Approvals` (`max_values`: Some(1), `max_size`: Some(402), added: 897, mode: `MaxEncodedLen`) /// Storage: `Treasury::Proposals` (r:0 w:1) /// Proof: `Treasury::Proposals` (`max_values`: None, `max_size`: Some(108), added: 2583, mode: `MaxEncodedLen`) - fn spend() -> Weight { + fn spend_local() -> Weight { // Proof Size summary in bytes: // Measured: `6` // Estimated: `1887` - // Minimum execution time: 12_229_000 picoseconds. - Weight::from_parts(12_915_000, 0) + // Minimum execution time: 7_563_000 picoseconds. + Weight::from_parts(7_868_000, 0) .saturating_add(Weight::from_parts(0, 1887)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(3)) } - - fn payout() -> Weight { - Weight::zero() - } - /// Storage: `Treasury::ProposalCount` (r:1 w:1) /// Proof: `Treasury::ProposalCount` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) /// Storage: `Treasury::Proposals` (r:0 w:1) @@ -78,8 +69,8 @@ impl pallet_treasury::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `107` // Estimated: `1489` - // Minimum execution time: 23_903_000 picoseconds. - Weight::from_parts(24_930_000, 0) + // Minimum execution time: 16_827_000 picoseconds. + Weight::from_parts(17_262_000, 0) .saturating_add(Weight::from_parts(0, 1489)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) @@ -92,8 +83,8 @@ impl pallet_treasury::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `265` // Estimated: `3593` - // Minimum execution time: 36_120_000 picoseconds. - Weight::from_parts(37_341_000, 0) + // Minimum execution time: 25_789_000 picoseconds. + Weight::from_parts(26_398_000, 0) .saturating_add(Weight::from_parts(0, 3593)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -107,11 +98,11 @@ impl pallet_treasury::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `433 + p * (8 ±0)` // Estimated: `3573` - // Minimum execution time: 7_598_000 picoseconds. - Weight::from_parts(12_144_577, 0) + // Minimum execution time: 5_353_000 picoseconds. + Weight::from_parts(8_423_989, 0) .saturating_add(Weight::from_parts(0, 3573)) - // Standard Error: 1_737 - .saturating_add(Weight::from_parts(83_412, 0).saturating_mul(p.into())) + // Standard Error: 1_120 + .saturating_add(Weight::from_parts(45_883, 0).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -121,8 +112,8 @@ impl pallet_treasury::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `90` // Estimated: `1887` - // Minimum execution time: 5_895_000 picoseconds. - Weight::from_parts(6_191_000, 0) + // Minimum execution time: 4_075_000 picoseconds. + Weight::from_parts(4_286_000, 0) .saturating_add(Weight::from_parts(0, 1887)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -131,34 +122,90 @@ impl pallet_treasury::WeightInfo for WeightInfo { /// Proof: `Treasury::Deactivated` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`) /// Storage: `Treasury::Approvals` (r:1 w:1) /// Proof: `Treasury::Approvals` (`max_values`: Some(1), `max_size`: Some(402), added: 897, mode: `MaxEncodedLen`) - /// Storage: `Treasury::Proposals` (r:100 w:100) + /// Storage: `Treasury::Proposals` (r:99 w:99) /// Proof: `Treasury::Proposals` (`max_values`: None, `max_size`: Some(108), added: 2583, mode: `MaxEncodedLen`) - /// Storage: `System::Account` (r:201 w:201) + /// Storage: `System::Account` (r:199 w:199) /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) /// Storage: `Bounties::BountyApprovals` (r:1 w:1) /// Proof: `Bounties::BountyApprovals` (`max_values`: Some(1), `max_size`: Some(402), added: 897, mode: `MaxEncodedLen`) - /// The range of component `p` is `[0, 100]`. + /// The range of component `p` is `[0, 99]`. fn on_initialize_proposals(p: u32, ) -> Weight { // Proof Size summary in bytes: - // Measured: `297 + p * (251 ±0)` + // Measured: `294 + p * (251 ±0)` // Estimated: `3593 + p * (5206 ±0)` - // Minimum execution time: 59_368_000 picoseconds. - Weight::from_parts(55_754_002, 0) + // Minimum execution time: 34_895_000 picoseconds. + Weight::from_parts(40_046_318, 0) .saturating_add(Weight::from_parts(0, 3593)) - // Standard Error: 15_044 - .saturating_add(Weight::from_parts(37_890_085, 0).saturating_mul(p.into())) + // Standard Error: 6_188 + .saturating_add(Weight::from_parts(25_772_314, 0).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().reads((3_u64).saturating_mul(p.into()))) .saturating_add(T::DbWeight::get().writes(4)) .saturating_add(T::DbWeight::get().writes((3_u64).saturating_mul(p.into()))) .saturating_add(Weight::from_parts(0, 5206).saturating_mul(p.into())) } - + /// Storage: `Treasury::SpendCount` (r:1 w:1) + /// Proof: `Treasury::SpendCount` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `Treasury::Spends` (r:0 w:1) + /// Proof: `Treasury::Spends` (`max_values`: None, `max_size`: Some(1853), added: 4328, mode: `MaxEncodedLen`) + fn spend() -> Weight { + // Proof Size summary in bytes: + // Measured: `6` + // Estimated: `1489` + // Minimum execution time: 8_598_000 picoseconds. + Weight::from_parts(8_937_000, 0) + .saturating_add(Weight::from_parts(0, 1489)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: `Treasury::Spends` (r:1 w:1) + /// Proof: `Treasury::Spends` (`max_values`: None, `max_size`: Some(1853), added: 4328, mode: `MaxEncodedLen`) + /// Storage: `XcmPallet::QueryCounter` (r:1 w:1) + /// Proof: `XcmPallet::QueryCounter` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) + /// Storage: `Dmp::DeliveryFeeFactor` (r:1 w:0) + /// Proof: `Dmp::DeliveryFeeFactor` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `XcmPallet::SupportedVersion` (r:1 w:0) + /// Proof: `XcmPallet::SupportedVersion` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `Dmp::DownwardMessageQueues` (r:1 w:1) + /// Proof: `Dmp::DownwardMessageQueues` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `Dmp::DownwardMessageQueueHeads` (r:1 w:1) + /// Proof: `Dmp::DownwardMessageQueueHeads` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `XcmPallet::Queries` (r:0 w:1) + /// Proof: `XcmPallet::Queries` (`max_values`: None, `max_size`: None, mode: `Measured`) + fn payout() -> Weight { + // Proof Size summary in bytes: + // Measured: `251` + // Estimated: `5318` + // Minimum execution time: 29_981_000 picoseconds. + Weight::from_parts(30_787_000, 0) + .saturating_add(Weight::from_parts(0, 5318)) + .saturating_add(T::DbWeight::get().reads(6)) + .saturating_add(T::DbWeight::get().writes(5)) + } + /// Storage: `Treasury::Spends` (r:1 w:1) + /// Proof: `Treasury::Spends` (`max_values`: None, `max_size`: Some(1853), added: 4328, mode: `MaxEncodedLen`) + /// Storage: `XcmPallet::Queries` (r:1 w:1) + /// Proof: `XcmPallet::Queries` (`max_values`: None, `max_size`: None, mode: `Measured`) fn check_status() -> Weight { - Weight::zero() + // Proof Size summary in bytes: + // Measured: `170` + // Estimated: `5318` + // Minimum execution time: 15_985_000 picoseconds. + Weight::from_parts(16_431_000, 0) + .saturating_add(Weight::from_parts(0, 5318)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) } - + /// Storage: `Treasury::Spends` (r:1 w:1) + /// Proof: `Treasury::Spends` (`max_values`: None, `max_size`: Some(1853), added: 4328, mode: `MaxEncodedLen`) fn void_spend() -> Weight { - Weight::zero() + // Proof Size summary in bytes: + // Measured: `142` + // Estimated: `5318` + // Minimum execution time: 8_515_000 picoseconds. + Weight::from_parts(8_795_000, 0) + .saturating_add(Weight::from_parts(0, 5318)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) } } diff --git a/relay/kusama/src/xcm_config.rs b/relay/kusama/src/xcm_config.rs index cd8ba8bd43..837967486c 100644 --- a/relay/kusama/src/xcm_config.rs +++ b/relay/kusama/src/xcm_config.rs @@ -62,7 +62,7 @@ parameter_types! { /// The check account that is allowed to mint assets locally. pub LocalCheckAccount: (AccountId, MintLocation) = (CheckAccount::get(), MintLocation::Local); /// Account of the treasury pallet. - pub TreasuryAccount: Option = Some(Treasury::account_id()); + pub TreasuryAccount: AccountId = Treasury::account_id(); } /// The canonical means of converting a `MultiLocation` into an `AccountId`, used when we want to diff --git a/relay/polkadot/Cargo.toml b/relay/polkadot/Cargo.toml index 787617a72e..a2ab9af018 100644 --- a/relay/polkadot/Cargo.toml +++ b/relay/polkadot/Cargo.toml @@ -39,7 +39,6 @@ sp-storage = { default-features = false , version = "17.0.0" } sp-version = { default-features = false , version = "26.0.0" } sp-npos-elections = { default-features = false , version = "23.0.0" } -pallet-asset-rate = { default-features = false , version = "4.0.0" } pallet-authority-discovery = { default-features = false , version = "25.0.0" } pallet-authorship = { default-features = false , version = "25.0.0" } pallet-babe = { default-features = false , version = "25.0.0" } @@ -141,7 +140,6 @@ std = [ "inherents/std", "log/std", "offchain-primitives/std", - "pallet-asset-rate/std", "pallet-authority-discovery/std", "pallet-authorship/std", "pallet-babe/std", @@ -222,7 +220,6 @@ runtime-benchmarks = [ "frame-system-benchmarking/runtime-benchmarks", "frame-system/runtime-benchmarks", "hex-literal", - "pallet-asset-rate/runtime-benchmarks", "pallet-babe/runtime-benchmarks", "pallet-bags-list/runtime-benchmarks", "pallet-balances/runtime-benchmarks", @@ -275,7 +272,6 @@ try-runtime = [ "frame-system/try-runtime", "frame-try-runtime", "frame-try-runtime/try-runtime", - "pallet-asset-rate/try-runtime", "pallet-authority-discovery/try-runtime", "pallet-authorship/try-runtime", "pallet-babe/try-runtime", diff --git a/relay/polkadot/src/lib.rs b/relay/polkadot/src/lib.rs index a32c020fe7..42671dced5 100644 --- a/relay/polkadot/src/lib.rs +++ b/relay/polkadot/src/lib.rs @@ -84,7 +84,7 @@ use sp_runtime::{ generic, impl_opaque_keys, traits::{ AccountIdLookup, BlakeTwo256, Block as BlockT, ConvertInto, Extrinsic as ExtrinsicT, - IdentityLookup, OpaqueKeys, SaturatedConversion, Verify, + OpaqueKeys, SaturatedConversion, Verify, }, transaction_validity::{TransactionPriority, TransactionSource, TransactionValidity}, ApplyExtrinsicResult, FixedU128, KeyTypeId, Perbill, Percent, Permill, RuntimeDebug, @@ -728,6 +728,28 @@ parameter_types! { pub const CouncilSpendOriginMaxAmount: Balance = Balance::MAX; } +#[cfg(not(feature = "runtime-benchmarks"))] +mod disable_new_treasury_functionality { + use super::*; + + /// Temporary workaround that disables new functionality from + /// https://github.com/paritytech/polkadot-sdk/pull/1333 + pub struct NeverLookup; + + impl sp_runtime::traits::StaticLookup for NeverLookup { + type Source = VersionedMultiLocation; + type Target = VersionedMultiLocation; + + fn lookup(_s: Self::Source) -> Result { + Err(frame_support::error::LookupError) + } + + fn unlookup(t: Self::Target) -> Self::Source { + t + } + } +} + impl pallet_treasury::Config for Runtime { type PalletId = TreasuryPalletId; type Currency = Balances; @@ -747,7 +769,10 @@ impl pallet_treasury::Config for Runtime { type SpendOrigin = TreasurySpender; type AssetKind = VersionedLocatableAsset; type Beneficiary = VersionedMultiLocation; - type BeneficiaryLookup = IdentityLookup; + #[cfg(not(feature = "runtime-benchmarks"))] + type BeneficiaryLookup = disable_new_treasury_functionality::NeverLookup; + #[cfg(feature = "runtime-benchmarks")] + type BeneficiaryLookup = sp_runtime::traits::IdentityLookup; type Paymaster = PayOverXcm< TreasuryInteriorLocation, crate::xcm_config::XcmRouter, @@ -758,7 +783,7 @@ impl pallet_treasury::Config for Runtime { LocatableAssetConverter, VersionedMultiLocationConverter, >; - type BalanceConverter = AssetRate; + type BalanceConverter = frame_support::traits::tokens::UnityAssetBalanceConversion; type PayoutPeriod = PayoutSpendPeriod; #[cfg(feature = "runtime-benchmarks")] type BenchmarkHelper = runtime_common::impls::benchmarks::TreasuryArguments; @@ -1413,18 +1438,6 @@ impl frame_support::traits::OnRuntimeUpgrade for InitiateNominationPools { } } -impl pallet_asset_rate::Config for Runtime { - type WeightInfo = (); // TODO - type RuntimeEvent = RuntimeEvent; - type CreateOrigin = EnsureRoot; - type RemoveOrigin = EnsureRoot; - type UpdateOrigin = EnsureRoot; - type Currency = Balances; - type AssetKind = ::AssetKind; - #[cfg(feature = "runtime-benchmarks")] - type BenchmarkHelper = runtime_common::impls::benchmarks::AssetRateArguments; -} - construct_runtime! { pub enum Runtime { @@ -1520,9 +1533,6 @@ construct_runtime! { // Generalized message queue MessageQueue: pallet_message_queue::{Pallet, Call, Storage, Event} = 100, - - // Asset rate. - AssetRate: pallet_asset_rate::{Pallet, Call, Storage, Event} = 101, } } diff --git a/relay/polkadot/src/weights/pallet_treasury.rs b/relay/polkadot/src/weights/pallet_treasury.rs index a9af012747..fad730f4c1 100644 --- a/relay/polkadot/src/weights/pallet_treasury.rs +++ b/relay/polkadot/src/weights/pallet_treasury.rs @@ -45,31 +45,22 @@ use core::marker::PhantomData; /// Weight functions for `pallet_treasury`. pub struct WeightInfo(PhantomData); impl pallet_treasury::WeightInfo for WeightInfo { - fn spend_local() -> Weight { - Weight::zero() - } - /// Storage: `Treasury::ProposalCount` (r:1 w:1) /// Proof: `Treasury::ProposalCount` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) /// Storage: `Treasury::Approvals` (r:1 w:1) /// Proof: `Treasury::Approvals` (`max_values`: Some(1), `max_size`: Some(402), added: 897, mode: `MaxEncodedLen`) /// Storage: `Treasury::Proposals` (r:0 w:1) /// Proof: `Treasury::Proposals` (`max_values`: None, `max_size`: Some(108), added: 2583, mode: `MaxEncodedLen`) - fn spend() -> Weight { + fn spend_local() -> Weight { // Proof Size summary in bytes: // Measured: `6` // Estimated: `1887` - // Minimum execution time: 12_248_000 picoseconds. - Weight::from_parts(12_752_000, 0) + // Minimum execution time: 7_278_000 picoseconds. + Weight::from_parts(7_633_000, 0) .saturating_add(Weight::from_parts(0, 1887)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(3)) } - - fn payout() -> Weight { - Weight::zero() - } - /// Storage: `Treasury::ProposalCount` (r:1 w:1) /// Proof: `Treasury::ProposalCount` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) /// Storage: `Treasury::Proposals` (r:0 w:1) @@ -78,8 +69,8 @@ impl pallet_treasury::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `107` // Estimated: `1489` - // Minimum execution time: 23_447_000 picoseconds. - Weight::from_parts(24_267_000, 0) + // Minimum execution time: 16_116_000 picoseconds. + Weight::from_parts(16_811_000, 0) .saturating_add(Weight::from_parts(0, 1489)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) @@ -92,8 +83,8 @@ impl pallet_treasury::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `265` // Estimated: `3593` - // Minimum execution time: 36_221_000 picoseconds. - Weight::from_parts(37_350_000, 0) + // Minimum execution time: 25_554_000 picoseconds. + Weight::from_parts(26_473_000, 0) .saturating_add(Weight::from_parts(0, 3593)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -107,11 +98,11 @@ impl pallet_treasury::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `433 + p * (8 ±0)` // Estimated: `3573` - // Minimum execution time: 7_718_000 picoseconds. - Weight::from_parts(10_234_157, 0) + // Minimum execution time: 5_048_000 picoseconds. + Weight::from_parts(7_308_351, 0) .saturating_add(Weight::from_parts(0, 3573)) - // Standard Error: 1_357 - .saturating_add(Weight::from_parts(72_271, 0).saturating_mul(p.into())) + // Standard Error: 950 + .saturating_add(Weight::from_parts(40_390, 0).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -121,8 +112,8 @@ impl pallet_treasury::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `90` // Estimated: `1887` - // Minimum execution time: 5_896_000 picoseconds. - Weight::from_parts(6_149_000, 0) + // Minimum execution time: 4_029_000 picoseconds. + Weight::from_parts(4_175_000, 0) .saturating_add(Weight::from_parts(0, 1887)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) @@ -131,34 +122,90 @@ impl pallet_treasury::WeightInfo for WeightInfo { /// Proof: `Treasury::Deactivated` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`) /// Storage: `Treasury::Approvals` (r:1 w:1) /// Proof: `Treasury::Approvals` (`max_values`: Some(1), `max_size`: Some(402), added: 897, mode: `MaxEncodedLen`) - /// Storage: `Treasury::Proposals` (r:100 w:100) + /// Storage: `Treasury::Proposals` (r:99 w:99) /// Proof: `Treasury::Proposals` (`max_values`: None, `max_size`: Some(108), added: 2583, mode: `MaxEncodedLen`) - /// Storage: `System::Account` (r:200 w:200) + /// Storage: `System::Account` (r:198 w:198) /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) /// Storage: `Bounties::BountyApprovals` (r:1 w:1) /// Proof: `Bounties::BountyApprovals` (`max_values`: Some(1), `max_size`: Some(402), added: 897, mode: `MaxEncodedLen`) - /// The range of component `p` is `[0, 100]`. + /// The range of component `p` is `[0, 99]`. fn on_initialize_proposals(p: u32, ) -> Weight { // Proof Size summary in bytes: - // Measured: `217 + p * (251 ±0)` + // Measured: `214 + p * (251 ±0)` // Estimated: `1887 + p * (5206 ±0)` - // Minimum execution time: 38_724_000 picoseconds. - Weight::from_parts(36_590_852, 0) + // Minimum execution time: 21_953_000 picoseconds. + Weight::from_parts(26_546_487, 0) .saturating_add(Weight::from_parts(0, 1887)) - // Standard Error: 19_186 - .saturating_add(Weight::from_parts(37_703_755, 0).saturating_mul(p.into())) + // Standard Error: 9_168 + .saturating_add(Weight::from_parts(25_474_821, 0).saturating_mul(p.into())) .saturating_add(T::DbWeight::get().reads(3)) .saturating_add(T::DbWeight::get().reads((3_u64).saturating_mul(p.into()))) .saturating_add(T::DbWeight::get().writes(3)) .saturating_add(T::DbWeight::get().writes((3_u64).saturating_mul(p.into()))) .saturating_add(Weight::from_parts(0, 5206).saturating_mul(p.into())) } - + /// Storage: `Treasury::SpendCount` (r:1 w:1) + /// Proof: `Treasury::SpendCount` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`) + /// Storage: `Treasury::Spends` (r:0 w:1) + /// Proof: `Treasury::Spends` (`max_values`: None, `max_size`: Some(1853), added: 4328, mode: `MaxEncodedLen`) + fn spend() -> Weight { + // Proof Size summary in bytes: + // Measured: `6` + // Estimated: `1489` + // Minimum execution time: 8_354_000 picoseconds. + Weight::from_parts(8_786_000, 0) + .saturating_add(Weight::from_parts(0, 1489)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(2)) + } + /// Storage: `Treasury::Spends` (r:1 w:1) + /// Proof: `Treasury::Spends` (`max_values`: None, `max_size`: Some(1853), added: 4328, mode: `MaxEncodedLen`) + /// Storage: `XcmPallet::QueryCounter` (r:1 w:1) + /// Proof: `XcmPallet::QueryCounter` (`max_values`: Some(1), `max_size`: None, mode: `Measured`) + /// Storage: `Dmp::DeliveryFeeFactor` (r:1 w:0) + /// Proof: `Dmp::DeliveryFeeFactor` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `XcmPallet::SupportedVersion` (r:1 w:0) + /// Proof: `XcmPallet::SupportedVersion` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `Dmp::DownwardMessageQueues` (r:1 w:1) + /// Proof: `Dmp::DownwardMessageQueues` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `Dmp::DownwardMessageQueueHeads` (r:1 w:1) + /// Proof: `Dmp::DownwardMessageQueueHeads` (`max_values`: None, `max_size`: None, mode: `Measured`) + /// Storage: `XcmPallet::Queries` (r:0 w:1) + /// Proof: `XcmPallet::Queries` (`max_values`: None, `max_size`: None, mode: `Measured`) + fn payout() -> Weight { + // Proof Size summary in bytes: + // Measured: `218` + // Estimated: `5318` + // Minimum execution time: 29_975_000 picoseconds. + Weight::from_parts(30_430_000, 0) + .saturating_add(Weight::from_parts(0, 5318)) + .saturating_add(T::DbWeight::get().reads(6)) + .saturating_add(T::DbWeight::get().writes(5)) + } + /// Storage: `Treasury::Spends` (r:1 w:1) + /// Proof: `Treasury::Spends` (`max_values`: None, `max_size`: Some(1853), added: 4328, mode: `MaxEncodedLen`) + /// Storage: `XcmPallet::Queries` (r:1 w:1) + /// Proof: `XcmPallet::Queries` (`max_values`: None, `max_size`: None, mode: `Measured`) fn check_status() -> Weight { - Weight::zero() + // Proof Size summary in bytes: + // Measured: `170` + // Estimated: `5318` + // Minimum execution time: 14_485_000 picoseconds. + Weight::from_parts(14_964_000, 0) + .saturating_add(Weight::from_parts(0, 5318)) + .saturating_add(T::DbWeight::get().reads(2)) + .saturating_add(T::DbWeight::get().writes(2)) } - + /// Storage: `Treasury::Spends` (r:1 w:1) + /// Proof: `Treasury::Spends` (`max_values`: None, `max_size`: Some(1853), added: 4328, mode: `MaxEncodedLen`) fn void_spend() -> Weight { - Weight::zero() + // Proof Size summary in bytes: + // Measured: `142` + // Estimated: `5318` + // Minimum execution time: 8_322_000 picoseconds. + Weight::from_parts(8_580_000, 0) + .saturating_add(Weight::from_parts(0, 5318)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) } } diff --git a/relay/polkadot/src/xcm_config.rs b/relay/polkadot/src/xcm_config.rs index 750ca0b637..c55c427692 100644 --- a/relay/polkadot/src/xcm_config.rs +++ b/relay/polkadot/src/xcm_config.rs @@ -64,7 +64,7 @@ parameter_types! { /// The Checking Account along with the indication that the local chain is able to mint tokens. pub LocalCheckAccount: (AccountId, MintLocation) = (CheckAccount::get(), MintLocation::Local); /// Account of the treasury pallet. - pub TreasuryAccount: Option = Some(Treasury::account_id()); + pub TreasuryAccount: AccountId = Treasury::account_id(); } /// The canonical means of converting a `MultiLocation` into an `AccountId`, used when we want to diff --git a/system-parachains/asset-hubs/asset-hub-kusama/Cargo.toml b/system-parachains/asset-hubs/asset-hub-kusama/Cargo.toml index b843e90543..c7abca8d60 100644 --- a/system-parachains/asset-hubs/asset-hub-kusama/Cargo.toml +++ b/system-parachains/asset-hubs/asset-hub-kusama/Cargo.toml @@ -104,6 +104,7 @@ runtime-benchmarks = [ "cumulus-pallet-parachain-system/runtime-benchmarks", "cumulus-pallet-session-benchmarking/runtime-benchmarks", "cumulus-pallet-xcmp-queue/runtime-benchmarks", + "cumulus-primitives-utility/runtime-benchmarks", "frame-benchmarking/runtime-benchmarks", "frame-support/runtime-benchmarks", "frame-system-benchmarking/runtime-benchmarks", diff --git a/system-parachains/asset-hubs/asset-hub-polkadot/Cargo.toml b/system-parachains/asset-hubs/asset-hub-polkadot/Cargo.toml index 1271646050..a3125308b7 100644 --- a/system-parachains/asset-hubs/asset-hub-polkadot/Cargo.toml +++ b/system-parachains/asset-hubs/asset-hub-polkadot/Cargo.toml @@ -92,6 +92,7 @@ runtime-benchmarks = [ "cumulus-pallet-parachain-system/runtime-benchmarks", "cumulus-pallet-session-benchmarking/runtime-benchmarks", "cumulus-pallet-xcmp-queue/runtime-benchmarks", + "cumulus-primitives-utility/runtime-benchmarks", "frame-benchmarking/runtime-benchmarks", "frame-support/runtime-benchmarks", "frame-system-benchmarking/runtime-benchmarks", diff --git a/system-parachains/bridge-hubs/bridge-hub-kusama/Cargo.toml b/system-parachains/bridge-hubs/bridge-hub-kusama/Cargo.toml index 33e997535d..ed7d2bf1f1 100644 --- a/system-parachains/bridge-hubs/bridge-hub-kusama/Cargo.toml +++ b/system-parachains/bridge-hubs/bridge-hub-kusama/Cargo.toml @@ -142,6 +142,7 @@ runtime-benchmarks = [ "cumulus-pallet-parachain-system/runtime-benchmarks", "cumulus-pallet-session-benchmarking/runtime-benchmarks", "cumulus-pallet-xcmp-queue/runtime-benchmarks", + "cumulus-primitives-utility/runtime-benchmarks", "frame-benchmarking/runtime-benchmarks", "frame-support/runtime-benchmarks", "frame-system-benchmarking/runtime-benchmarks", diff --git a/system-parachains/bridge-hubs/bridge-hub-polkadot/Cargo.toml b/system-parachains/bridge-hubs/bridge-hub-polkadot/Cargo.toml index 5d2f084447..2e74c27c78 100644 --- a/system-parachains/bridge-hubs/bridge-hub-polkadot/Cargo.toml +++ b/system-parachains/bridge-hubs/bridge-hub-polkadot/Cargo.toml @@ -142,6 +142,7 @@ runtime-benchmarks = [ "cumulus-pallet-parachain-system/runtime-benchmarks", "cumulus-pallet-session-benchmarking/runtime-benchmarks", "cumulus-pallet-xcmp-queue/runtime-benchmarks", + "cumulus-primitives-utility/runtime-benchmarks", "frame-benchmarking/runtime-benchmarks", "frame-support/runtime-benchmarks", "frame-system-benchmarking/runtime-benchmarks", From a959f8cb36eec18af9d50dc440a26ed5883c6ad3 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Wed, 22 Nov 2023 10:25:42 +0300 Subject: [PATCH 37/68] also remove mention from changelog --- CHANGELOG.md | 1 - 1 file changed, 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index bb127d15ad..8c6f92282d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,7 +16,6 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). ### Added -- Treasury may spend various asset kinds ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) - Enable async backing on Kusama ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) - Implemented GenesisBuilder API for all runtimes ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) - XCM transport fees are now exponential and are sent to a treasury account ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) From 847efc80f60d077b293037478ab1780250db88f2 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Wed, 22 Nov 2023 10:45:28 +0300 Subject: [PATCH 38/68] also run benchmarks for pallet_nomination_pools/adjust_pool_deposit --- .../src/weights/pallet_nomination_pools.rs | 17 ++++++++++++++++- .../src/weights/pallet_nomination_pools.rs | 18 ++++++++++++++++-- 2 files changed, 32 insertions(+), 3 deletions(-) diff --git a/relay/kusama/src/weights/pallet_nomination_pools.rs b/relay/kusama/src/weights/pallet_nomination_pools.rs index f0ffbf0d00..3eae33b5b9 100644 --- a/relay/kusama/src/weights/pallet_nomination_pools.rs +++ b/relay/kusama/src/weights/pallet_nomination_pools.rs @@ -598,7 +598,22 @@ impl pallet_nomination_pools::WeightInfo for WeightInfo .saturating_add(T::DbWeight::get().writes(2)) } + /// Storage: `NominationPools::BondedPools` (r:1 w:0) + /// Proof: `NominationPools::BondedPools` (`max_values`: None, `max_size`: Some(220), added: 2695, mode: `MaxEncodedLen`) + /// Storage: `Balances::Freezes` (r:1 w:1) + /// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(67), added: 2542, mode: `MaxEncodedLen`) + /// Storage: `System::Account` (r:1 w:1) + /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `Balances::Locks` (r:1 w:0) + /// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`) fn adjust_pool_deposit() -> Weight { - Weight::zero() + // Proof Size summary in bytes: + // Measured: `980` + // Estimated: `4764` + // Minimum execution time: 54_057_000 picoseconds. + Weight::from_parts(54_855_000, 0) + .saturating_add(Weight::from_parts(0, 4764)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(2)) } } diff --git a/relay/polkadot/src/weights/pallet_nomination_pools.rs b/relay/polkadot/src/weights/pallet_nomination_pools.rs index 5a492b0cd7..32ff276f7f 100644 --- a/relay/polkadot/src/weights/pallet_nomination_pools.rs +++ b/relay/polkadot/src/weights/pallet_nomination_pools.rs @@ -597,8 +597,22 @@ impl pallet_nomination_pools::WeightInfo for WeightInfo .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(2)) } - + /// Storage: `NominationPools::BondedPools` (r:1 w:0) + /// Proof: `NominationPools::BondedPools` (`max_values`: None, `max_size`: Some(220), added: 2695, mode: `MaxEncodedLen`) + /// Storage: `Balances::Freezes` (r:1 w:1) + /// Proof: `Balances::Freezes` (`max_values`: None, `max_size`: Some(67), added: 2542, mode: `MaxEncodedLen`) + /// Storage: `System::Account` (r:1 w:1) + /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) + /// Storage: `Balances::Locks` (r:1 w:0) + /// Proof: `Balances::Locks` (`max_values`: None, `max_size`: Some(1299), added: 3774, mode: `MaxEncodedLen`) fn adjust_pool_deposit() -> Weight { - Weight::zero() + // Proof Size summary in bytes: + // Measured: `946` + // Estimated: `4764` + // Minimum execution time: 53_711_000 picoseconds. + Weight::from_parts(54_615_000, 0) + .saturating_add(Weight::from_parts(0, 4764)) + .saturating_add(T::DbWeight::get().reads(4)) + .saturating_add(T::DbWeight::get().writes(2)) } } From caf4fd253a069bdab2de397943c8d7df4b716db4 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Wed, 22 Nov 2023 13:17:00 +0300 Subject: [PATCH 39/68] add some details of https://github.com/paritytech/polkadot-sdk/pull/1255 side effects --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8c6f92282d..8b49781f2b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -23,7 +23,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). ### Fixed - Add missing weight functions for `runtime_parachains_hrmp` and `preimage` pallets ([polkadot-fellows/runtimes#56](https://github.com/polkadot-fellows/runtimes/pull/56)) -- Fix for Reward Deficit in the pool ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) +- Fix for Reward Deficit in the pool. As a side effect, nomination pools pallet (used by Kusama and Polkadot runtimes) now exposes the `FreezeReason`, used by balances pallet ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) ## [1.0.1] 22.10.2023 From 99edee1df2a7c673400cc0bf3ebbbd138481f793 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Wed, 22 Nov 2023 13:19:04 +0300 Subject: [PATCH 40/68] also mention https://github.com/paritytech/polkadot-sdk/pull/1368 in changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8b49781f2b..82adc75847 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -19,6 +19,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - Enable async backing on Kusama ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) - Implemented GenesisBuilder API for all runtimes ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) - XCM transport fees are now exponential and are sent to a treasury account ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) +- system pallets are now trusted teleporters of each other ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) ### Fixed From ae47ca8c74936baa93d80d625634a6254960e650 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Wed, 22 Nov 2023 13:20:03 +0300 Subject: [PATCH 41/68] typo --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 82adc75847..6f97a07a6a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -19,7 +19,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - Enable async backing on Kusama ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) - Implemented GenesisBuilder API for all runtimes ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) - XCM transport fees are now exponential and are sent to a treasury account ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) -- system pallets are now trusted teleporters of each other ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) +- System parachains are now trusted teleporters of each other ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) ### Fixed From 27f22e6b1a74e59413cb8e008d4d579e693d7373 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Wed, 22 Nov 2023 14:32:27 +0300 Subject: [PATCH 42/68] added context to CHANGELOG.md --- CHANGELOG.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6f97a07a6a..51d5e2eaf9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,19 +12,19 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - Upgrade Preimage pallet's config implementations to adapt the new `Consideration` API ([polkadot-fellows/runtimes#56](https://github.com/polkadot-fellows/runtimes/pull/56)) - Remove `experimental` feature flag for `pallet-society`, `pallet-xcm`, and `runtime-common` crates imports ([polkadot-fellows/runtimes#56](https://github.com/polkadot-fellows/runtimes/pull/56)) - Election provider: use a geometric deposit base calculation for EPM signed submissions in Polkadot and Kusama ([polkadot-fellows/runtimes#56](https://github.com/polkadot-fellows/runtimes/pull/56)) -- Make IdentityInfo generic in pallet-identity ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) +- Make IdentityInfo generic in pallet-identity ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)). Context: https://github.com/paritytech/polkadot-sdk/pull/1661 ### Added -- Enable async backing on Kusama ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) -- Implemented GenesisBuilder API for all runtimes ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) -- XCM transport fees are now exponential and are sent to a treasury account ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) -- System parachains are now trusted teleporters of each other ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) +- Enable async backing on Kusama ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)). Context: https://github.com/paritytech/polkadot-sdk/pull/1543 +- Implemented GenesisBuilder API for all runtimes ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)). Context: https://github.com/paritytech/polkadot-sdk/pull/1492 +- XCM transport fees are now exponential and are sent to a treasury account ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)). Context: https://github.com/paritytech/polkadot-sdk/pull/1234 +- System parachains are now trusted teleporters of each other ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)). Context: https://github.com/paritytech/polkadot-sdk/pull/1368 ### Fixed - Add missing weight functions for `runtime_parachains_hrmp` and `preimage` pallets ([polkadot-fellows/runtimes#56](https://github.com/polkadot-fellows/runtimes/pull/56)) -- Fix for Reward Deficit in the pool. As a side effect, nomination pools pallet (used by Kusama and Polkadot runtimes) now exposes the `FreezeReason`, used by balances pallet ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) +- Fix for Reward Deficit in the pool ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)). Context: https://github.com/paritytech/polkadot-sdk/pull/1255 ## [1.0.1] 22.10.2023 From 8970c3357b5051ee113336e11fac3c4745fe39aa Mon Sep 17 00:00:00 2001 From: muharem Date: Wed, 22 Nov 2023 12:43:10 +0100 Subject: [PATCH 43/68] enable treasury spend for polkadot and kusama --- CHANGELOG.md | 1 + Cargo.lock | 2 + relay/kusama/Cargo.toml | 4 + relay/kusama/src/lib.rs | 47 ++++------ relay/kusama/src/weights/mod.rs | 1 + relay/kusama/src/weights/pallet_asset_rate.rs | 86 +++++++++++++++++++ relay/polkadot/Cargo.toml | 6 +- relay/polkadot/src/lib.rs | 47 ++++------ relay/polkadot/src/weights/mod.rs | 1 + .../polkadot/src/weights/pallet_asset_rate.rs | 86 +++++++++++++++++++ .../asset-hub-kusama/src/xcm_config.rs | 8 +- .../asset-hub-polkadot/src/xcm_config.rs | 7 +- .../gluttons/glutton-kusama/Cargo.toml | 1 + 13 files changed, 236 insertions(+), 61 deletions(-) create mode 100644 relay/kusama/src/weights/pallet_asset_rate.rs create mode 100644 relay/polkadot/src/weights/pallet_asset_rate.rs diff --git a/CHANGELOG.md b/CHANGELOG.md index 51d5e2eaf9..1cc5e61197 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -20,6 +20,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - Implemented GenesisBuilder API for all runtimes ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)). Context: https://github.com/paritytech/polkadot-sdk/pull/1492 - XCM transport fees are now exponential and are sent to a treasury account ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)). Context: https://github.com/paritytech/polkadot-sdk/pull/1234 - System parachains are now trusted teleporters of each other ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)). Context: https://github.com/paritytech/polkadot-sdk/pull/1368 +- Treasury spends various asset kinds ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) ### Fixed diff --git a/Cargo.lock b/Cargo.lock index 0031c204c9..e3e9eb7890 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -8092,6 +8092,7 @@ dependencies = [ "frame-try-runtime", "hex-literal", "log", + "pallet-asset-rate", "pallet-authority-discovery", "pallet-authorship", "pallet-babe", @@ -11438,6 +11439,7 @@ dependencies = [ "hex-literal", "kusama-runtime-constants", "log", + "pallet-asset-rate", "pallet-authority-discovery", "pallet-authorship", "pallet-babe", diff --git a/relay/kusama/Cargo.toml b/relay/kusama/Cargo.toml index 34fa35d815..9c1c0f7af0 100644 --- a/relay/kusama/Cargo.toml +++ b/relay/kusama/Cargo.toml @@ -43,6 +43,7 @@ tx-pool-api = { package = "sp-transaction-pool", default-features = false , vers block-builder-api = { package = "sp-block-builder", default-features = false , version = "23.0.0" } sp-npos-elections = { default-features = false , version = "23.0.0" } +pallet-asset-rate = { default-features = false , version = "4.0.0" } pallet-authority-discovery = { default-features = false , version = "25.0.0" } pallet-authorship = { default-features = false , version = "25.0.0" } pallet-babe = { default-features = false , version = "25.0.0" } @@ -150,6 +151,7 @@ std = [ "kusama-runtime-constants/std", "log/std", "offchain-primitives/std", + "pallet-asset-rate/std", "pallet-authority-discovery/std", "pallet-authorship/std", "pallet-babe/std", @@ -236,6 +238,7 @@ runtime-benchmarks = [ "frame-support/runtime-benchmarks", "frame-system-benchmarking/runtime-benchmarks", "frame-system/runtime-benchmarks", + "pallet-asset-rate/runtime-benchmarks", "pallet-babe/runtime-benchmarks", "pallet-bags-list/runtime-benchmarks", "pallet-balances/runtime-benchmarks", @@ -294,6 +297,7 @@ try-runtime = [ "frame-system/try-runtime", "frame-try-runtime", "frame-try-runtime/try-runtime", + "pallet-asset-rate/try-runtime", "pallet-authority-discovery/try-runtime", "pallet-authorship/try-runtime", "pallet-babe/try-runtime", diff --git a/relay/kusama/src/lib.rs b/relay/kusama/src/lib.rs index 57b979ef7f..838ceab802 100644 --- a/relay/kusama/src/lib.rs +++ b/relay/kusama/src/lib.rs @@ -87,7 +87,7 @@ use sp_runtime::{ create_runtime_str, generic, impl_opaque_keys, traits::{ AccountIdLookup, BlakeTwo256, Block as BlockT, ConvertInto, Extrinsic as ExtrinsicT, - Keccak256, OpaqueKeys, SaturatedConversion, Verify, + IdentityLookup, Keccak256, OpaqueKeys, SaturatedConversion, Verify, }, transaction_validity::{TransactionPriority, TransactionSource, TransactionValidity}, ApplyExtrinsicResult, FixedU128, KeyTypeId, Perbill, Percent, Permill, RuntimeDebug, @@ -763,28 +763,6 @@ parameter_types! { pub const MaxPeerInHeartbeats: u32 = 10_000; } -#[cfg(not(feature = "runtime-benchmarks"))] -mod disable_new_treasury_functionality { - use super::*; - - /// Temporary workaround that disables new functionality from - /// https://github.com/paritytech/polkadot-sdk/pull/1333 - pub struct NeverLookup; - - impl sp_runtime::traits::StaticLookup for NeverLookup { - type Source = VersionedMultiLocation; - type Target = VersionedMultiLocation; - - fn lookup(_s: Self::Source) -> Result { - Err(frame_support::error::LookupError) - } - - fn unlookup(t: Self::Target) -> Self::Source { - t - } - } -} - impl pallet_treasury::Config for Runtime { type PalletId = TreasuryPalletId; type Currency = Balances; @@ -804,10 +782,7 @@ impl pallet_treasury::Config for Runtime { type SpendOrigin = TreasurySpender; type AssetKind = VersionedLocatableAsset; type Beneficiary = VersionedMultiLocation; - #[cfg(not(feature = "runtime-benchmarks"))] - type BeneficiaryLookup = disable_new_treasury_functionality::NeverLookup; - #[cfg(feature = "runtime-benchmarks")] - type BeneficiaryLookup = sp_runtime::traits::IdentityLookup; + type BeneficiaryLookup = IdentityLookup; type Paymaster = PayOverXcm< TreasuryInteriorLocation, crate::xcm_config::XcmRouter, @@ -818,7 +793,7 @@ impl pallet_treasury::Config for Runtime { LocatableAssetConverter, VersionedMultiLocationConverter, >; - type BalanceConverter = frame_support::traits::tokens::UnityAssetBalanceConversion; + type BalanceConverter = AssetRate; type PayoutPeriod = PayoutSpendPeriod; #[cfg(feature = "runtime-benchmarks")] type BenchmarkHelper = runtime_common::impls::benchmarks::TreasuryArguments; @@ -1553,6 +1528,18 @@ impl pallet_state_trie_migration::Config for Runtime { type MaxKeyLen = MigrationMaxKeyLen; } +impl pallet_asset_rate::Config for Runtime { + type WeightInfo = weights::pallet_asset_rate::WeightInfo; + type RuntimeEvent = RuntimeEvent; + type CreateOrigin = EitherOfDiverse, Treasurer>; + type RemoveOrigin = EitherOfDiverse, Treasurer>; + type UpdateOrigin = EitherOfDiverse, Treasurer>; + type Currency = Balances; + type AssetKind = ::AssetKind; + #[cfg(feature = "runtime-benchmarks")] + type BenchmarkHelper = runtime_common::impls::benchmarks::AssetRateArguments; +} + construct_runtime! { pub enum Runtime { @@ -1683,6 +1670,9 @@ construct_runtime! { // Generalized message queue MessageQueue: pallet_message_queue::{Pallet, Call, Storage, Event} = 100, + + // Asset rate. + AssetRate: pallet_asset_rate::{Pallet, Call, Storage, Event} = 101, } } @@ -1901,6 +1891,7 @@ mod benches { [pallet_utility, Utility] [pallet_vesting, Vesting] [pallet_whitelist, Whitelist] + [pallet_asset_rate, AssetRate] // XCM [pallet_xcm, XcmPallet] [pallet_xcm_benchmarks::fungible, pallet_xcm_benchmarks::fungible::Pallet::] diff --git a/relay/kusama/src/weights/mod.rs b/relay/kusama/src/weights/mod.rs index b3642d49d4..7c935b73e0 100644 --- a/relay/kusama/src/weights/mod.rs +++ b/relay/kusama/src/weights/mod.rs @@ -17,6 +17,7 @@ pub mod frame_election_provider_support; pub mod frame_system; +pub mod pallet_asset_rate; pub mod pallet_bags_list; pub mod pallet_balances; pub mod pallet_balances_nis_counterpart_balances; diff --git a/relay/kusama/src/weights/pallet_asset_rate.rs b/relay/kusama/src/weights/pallet_asset_rate.rs new file mode 100644 index 0000000000..e6fbff6374 --- /dev/null +++ b/relay/kusama/src/weights/pallet_asset_rate.rs @@ -0,0 +1,86 @@ +// Copyright (C) Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . + +//! Autogenerated weights for `pallet_asset_rate` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-07-03, STEPS: `50`, REPEAT: `2`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `cob`, CPU: `` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("kusama-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/debug/polkadot +// benchmark +// pallet +// --chain=kusama-dev +// --steps=50 +// --repeat=2 +// --pallet=pallet_asset_rate +// --extrinsic=* +// --wasm-execution=compiled +// --heap-pages=4096 +// --output=./runtime/kusama/src/weights/ +// --header=./file_header.txt + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_asset_rate`. +pub struct WeightInfo(PhantomData); +impl pallet_asset_rate::WeightInfo for WeightInfo { + /// Storage: AssetRate ConversionRateToNative (r:1 w:1) + /// Proof: AssetRate ConversionRateToNative (max_values: None, max_size: Some(1237), added: 3712, mode: MaxEncodedLen) + fn create() -> Weight { + // Proof Size summary in bytes: + // Measured: `42` + // Estimated: `4702` + // Minimum execution time: 53_000_000 picoseconds. + Weight::from_parts(55_000_000, 0) + .saturating_add(Weight::from_parts(0, 4702)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: AssetRate ConversionRateToNative (r:1 w:1) + /// Proof: AssetRate ConversionRateToNative (max_values: None, max_size: Some(1237), added: 3712, mode: MaxEncodedLen) + fn update() -> Weight { + // Proof Size summary in bytes: + // Measured: `110` + // Estimated: `4702` + // Minimum execution time: 60_000_000 picoseconds. + Weight::from_parts(60_000_000, 0) + .saturating_add(Weight::from_parts(0, 4702)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: AssetRate ConversionRateToNative (r:1 w:1) + /// Proof: AssetRate ConversionRateToNative (max_values: None, max_size: Some(1237), added: 3712, mode: MaxEncodedLen) + fn remove() -> Weight { + // Proof Size summary in bytes: + // Measured: `110` + // Estimated: `4702` + // Minimum execution time: 66_000_000 picoseconds. + Weight::from_parts(74_000_000, 0) + .saturating_add(Weight::from_parts(0, 4702)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } +} diff --git a/relay/polkadot/Cargo.toml b/relay/polkadot/Cargo.toml index a2ab9af018..0208c50c83 100644 --- a/relay/polkadot/Cargo.toml +++ b/relay/polkadot/Cargo.toml @@ -39,6 +39,7 @@ sp-storage = { default-features = false , version = "17.0.0" } sp-version = { default-features = false , version = "26.0.0" } sp-npos-elections = { default-features = false , version = "23.0.0" } +pallet-asset-rate = { default-features = false , version = "4.0.0" } pallet-authority-discovery = { default-features = false , version = "25.0.0" } pallet-authorship = { default-features = false , version = "25.0.0" } pallet-babe = { default-features = false , version = "25.0.0" } @@ -140,6 +141,7 @@ std = [ "inherents/std", "log/std", "offchain-primitives/std", + "pallet-asset-rate/std", "pallet-authority-discovery/std", "pallet-authorship/std", "pallet-babe/std", @@ -172,8 +174,8 @@ std = [ "pallet-scheduler/std", "pallet-session-benchmarking?/std", "pallet-session/std", - "pallet-staking-runtime-api/std", "pallet-staking-reward-fn/std", + "pallet-staking-runtime-api/std", "pallet-staking/std", "pallet-timestamp/std", "pallet-tips/std", @@ -220,6 +222,7 @@ runtime-benchmarks = [ "frame-system-benchmarking/runtime-benchmarks", "frame-system/runtime-benchmarks", "hex-literal", + "pallet-asset-rate/runtime-benchmarks", "pallet-babe/runtime-benchmarks", "pallet-bags-list/runtime-benchmarks", "pallet-balances/runtime-benchmarks", @@ -272,6 +275,7 @@ try-runtime = [ "frame-system/try-runtime", "frame-try-runtime", "frame-try-runtime/try-runtime", + "pallet-asset-rate/try-runtime", "pallet-authority-discovery/try-runtime", "pallet-authorship/try-runtime", "pallet-babe/try-runtime", diff --git a/relay/polkadot/src/lib.rs b/relay/polkadot/src/lib.rs index 42671dced5..cb7b1565c6 100644 --- a/relay/polkadot/src/lib.rs +++ b/relay/polkadot/src/lib.rs @@ -84,7 +84,7 @@ use sp_runtime::{ generic, impl_opaque_keys, traits::{ AccountIdLookup, BlakeTwo256, Block as BlockT, ConvertInto, Extrinsic as ExtrinsicT, - OpaqueKeys, SaturatedConversion, Verify, + IdentityLookup, OpaqueKeys, SaturatedConversion, Verify, }, transaction_validity::{TransactionPriority, TransactionSource, TransactionValidity}, ApplyExtrinsicResult, FixedU128, KeyTypeId, Perbill, Percent, Permill, RuntimeDebug, @@ -728,28 +728,6 @@ parameter_types! { pub const CouncilSpendOriginMaxAmount: Balance = Balance::MAX; } -#[cfg(not(feature = "runtime-benchmarks"))] -mod disable_new_treasury_functionality { - use super::*; - - /// Temporary workaround that disables new functionality from - /// https://github.com/paritytech/polkadot-sdk/pull/1333 - pub struct NeverLookup; - - impl sp_runtime::traits::StaticLookup for NeverLookup { - type Source = VersionedMultiLocation; - type Target = VersionedMultiLocation; - - fn lookup(_s: Self::Source) -> Result { - Err(frame_support::error::LookupError) - } - - fn unlookup(t: Self::Target) -> Self::Source { - t - } - } -} - impl pallet_treasury::Config for Runtime { type PalletId = TreasuryPalletId; type Currency = Balances; @@ -769,10 +747,7 @@ impl pallet_treasury::Config for Runtime { type SpendOrigin = TreasurySpender; type AssetKind = VersionedLocatableAsset; type Beneficiary = VersionedMultiLocation; - #[cfg(not(feature = "runtime-benchmarks"))] - type BeneficiaryLookup = disable_new_treasury_functionality::NeverLookup; - #[cfg(feature = "runtime-benchmarks")] - type BeneficiaryLookup = sp_runtime::traits::IdentityLookup; + type BeneficiaryLookup = IdentityLookup; type Paymaster = PayOverXcm< TreasuryInteriorLocation, crate::xcm_config::XcmRouter, @@ -783,7 +758,7 @@ impl pallet_treasury::Config for Runtime { LocatableAssetConverter, VersionedMultiLocationConverter, >; - type BalanceConverter = frame_support::traits::tokens::UnityAssetBalanceConversion; + type BalanceConverter = AssetRate; type PayoutPeriod = PayoutSpendPeriod; #[cfg(feature = "runtime-benchmarks")] type BenchmarkHelper = runtime_common::impls::benchmarks::TreasuryArguments; @@ -1438,6 +1413,18 @@ impl frame_support::traits::OnRuntimeUpgrade for InitiateNominationPools { } } +impl pallet_asset_rate::Config for Runtime { + type WeightInfo = weights::pallet_asset_rate::WeightInfo; + type RuntimeEvent = RuntimeEvent; + type CreateOrigin = EitherOfDiverse, Treasurer>; + type RemoveOrigin = EitherOfDiverse, Treasurer>; + type UpdateOrigin = EitherOfDiverse, Treasurer>; + type Currency = Balances; + type AssetKind = ::AssetKind; + #[cfg(feature = "runtime-benchmarks")] + type BenchmarkHelper = runtime_common::impls::benchmarks::AssetRateArguments; +} + construct_runtime! { pub enum Runtime { @@ -1533,6 +1520,9 @@ construct_runtime! { // Generalized message queue MessageQueue: pallet_message_queue::{Pallet, Call, Storage, Event} = 100, + + // Asset rate. + AssetRate: pallet_asset_rate::{Pallet, Call, Storage, Event} = 101, } } @@ -1728,6 +1718,7 @@ mod benches { [pallet_conviction_voting, ConvictionVoting] [pallet_referenda, Referenda] [pallet_whitelist, Whitelist] + [pallet_asset_rate, AssetRate] // XCM [pallet_xcm, XcmPallet] [pallet_xcm_benchmarks::fungible, pallet_xcm_benchmarks::fungible::Pallet::] diff --git a/relay/polkadot/src/weights/mod.rs b/relay/polkadot/src/weights/mod.rs index 596b594c93..7eca87034b 100644 --- a/relay/polkadot/src/weights/mod.rs +++ b/relay/polkadot/src/weights/mod.rs @@ -17,6 +17,7 @@ pub mod frame_election_provider_support; pub mod frame_system; +pub mod pallet_asset_rate; pub mod pallet_bags_list; pub mod pallet_balances; pub mod pallet_bounties; diff --git a/relay/polkadot/src/weights/pallet_asset_rate.rs b/relay/polkadot/src/weights/pallet_asset_rate.rs new file mode 100644 index 0000000000..e6fbff6374 --- /dev/null +++ b/relay/polkadot/src/weights/pallet_asset_rate.rs @@ -0,0 +1,86 @@ +// Copyright (C) Parity Technologies (UK) Ltd. +// This file is part of Polkadot. + +// Polkadot is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// Polkadot is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with Polkadot. If not, see . + +//! Autogenerated weights for `pallet_asset_rate` +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2023-07-03, STEPS: `50`, REPEAT: `2`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! WORST CASE MAP SIZE: `1000000` +//! HOSTNAME: `cob`, CPU: `` +//! EXECUTION: None, WASM-EXECUTION: Compiled, CHAIN: Some("kusama-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/debug/polkadot +// benchmark +// pallet +// --chain=kusama-dev +// --steps=50 +// --repeat=2 +// --pallet=pallet_asset_rate +// --extrinsic=* +// --wasm-execution=compiled +// --heap-pages=4096 +// --output=./runtime/kusama/src/weights/ +// --header=./file_header.txt + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(missing_docs)] + +use frame_support::{traits::Get, weights::Weight}; +use core::marker::PhantomData; + +/// Weight functions for `pallet_asset_rate`. +pub struct WeightInfo(PhantomData); +impl pallet_asset_rate::WeightInfo for WeightInfo { + /// Storage: AssetRate ConversionRateToNative (r:1 w:1) + /// Proof: AssetRate ConversionRateToNative (max_values: None, max_size: Some(1237), added: 3712, mode: MaxEncodedLen) + fn create() -> Weight { + // Proof Size summary in bytes: + // Measured: `42` + // Estimated: `4702` + // Minimum execution time: 53_000_000 picoseconds. + Weight::from_parts(55_000_000, 0) + .saturating_add(Weight::from_parts(0, 4702)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: AssetRate ConversionRateToNative (r:1 w:1) + /// Proof: AssetRate ConversionRateToNative (max_values: None, max_size: Some(1237), added: 3712, mode: MaxEncodedLen) + fn update() -> Weight { + // Proof Size summary in bytes: + // Measured: `110` + // Estimated: `4702` + // Minimum execution time: 60_000_000 picoseconds. + Weight::from_parts(60_000_000, 0) + .saturating_add(Weight::from_parts(0, 4702)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } + /// Storage: AssetRate ConversionRateToNative (r:1 w:1) + /// Proof: AssetRate ConversionRateToNative (max_values: None, max_size: Some(1237), added: 3712, mode: MaxEncodedLen) + fn remove() -> Weight { + // Proof Size summary in bytes: + // Measured: `110` + // Estimated: `4702` + // Minimum execution time: 66_000_000 picoseconds. + Weight::from_parts(74_000_000, 0) + .saturating_add(Weight::from_parts(0, 4702)) + .saturating_add(T::DbWeight::get().reads(1)) + .saturating_add(T::DbWeight::get().writes(1)) + } +} diff --git a/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs b/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs index 8342c428e2..ce60d1b3d4 100644 --- a/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs +++ b/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs @@ -239,6 +239,9 @@ match_types! { MultiLocation { parents: 1, interior: Here } | MultiLocation { parents: 1, interior: X1(_) } }; + pub type TreasuryPallet: impl Contains = { + MultiLocation { parents: 1, interior: X1(PalletInstance(kusama_runtime_constants::TREASURY_PALLET_ID)) } + }; } /// A call filter for the XCM Transact instruction. This is a temporary measure until we properly @@ -460,8 +463,9 @@ pub type Barrier = TrailingSetTopicAsId< // If the message is one that immediately attemps to pay for execution, then // allow it. AllowTopLevelPaidExecutionFrom, - // Parent and its pluralities (i.e. governance bodies) get free execution. - AllowExplicitUnpaidExecutionFrom, + // Parent, its pluralities (i.e. governance bodies) and parent's treasury + // pallet get free execution. + AllowExplicitUnpaidExecutionFrom<(ParentOrParentsPlurality, TreasuryPallet)>, // Subscriptions for version tracking are OK. AllowSubscriptionsFrom, ), diff --git a/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs b/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs index e377c24702..6b0a535b54 100644 --- a/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs +++ b/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs @@ -195,6 +195,9 @@ match_types! { pub type FellowshipSalaryPallet: impl Contains = { MultiLocation { parents: 1, interior: X2(Parachain(1001), PalletInstance(64)) } }; + pub type TreasuryPallet: impl Contains = { + MultiLocation { parents: 1, interior: X1(PalletInstance(polkadot_runtime_constants::TREASURY_PALLET_ID)) } + }; } /// A call filter for the XCM Transact instruction. This is a temporary measure until we properly @@ -375,12 +378,12 @@ pub type Barrier = TrailingSetTopicAsId< // If the message is one that immediately attemps to pay for execution, then // allow it. AllowTopLevelPaidExecutionFrom, - // Parent, its pluralities (i.e. governance bodies), and the Fellows plurality - // get free execution. + // The locations listed below get free execution. AllowExplicitUnpaidExecutionFrom<( ParentOrParentsPlurality, FellowsPlurality, FellowshipSalaryPallet, + TreasuryPallet, )>, // Subscriptions for version tracking are OK. AllowSubscriptionsFrom, diff --git a/system-parachains/gluttons/glutton-kusama/Cargo.toml b/system-parachains/gluttons/glutton-kusama/Cargo.toml index 95adc050a6..f86a9159d1 100644 --- a/system-parachains/gluttons/glutton-kusama/Cargo.toml +++ b/system-parachains/gluttons/glutton-kusama/Cargo.toml @@ -60,6 +60,7 @@ runtime-benchmarks = [ "frame-system/runtime-benchmarks", "pallet-glutton/runtime-benchmarks", "pallet-sudo?/runtime-benchmarks", + "parachains-common/runtime-benchmarks", "sp-runtime/runtime-benchmarks", "xcm-builder/runtime-benchmarks", "xcm-executor/runtime-benchmarks", From 853d4823579c18ab4d1e518ed34e5d5704f76050 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Thu, 23 Nov 2023 14:55:13 +0300 Subject: [PATCH 44/68] reverted blinking migration removal (unapplied yet) --- relay/polkadot/src/lib.rs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/relay/polkadot/src/lib.rs b/relay/polkadot/src/lib.rs index cb7b1565c6..9f952845ce 100644 --- a/relay/polkadot/src/lib.rs +++ b/relay/polkadot/src/lib.rs @@ -1651,6 +1651,8 @@ pub mod migrations { pallet_nomination_pools::migration::versioned_migrations::V5toV6, pallet_nomination_pools::migration::versioned_migrations::V6ToV7, + + runtime_parachains::scheduler::migration::v1::MigrateToV1 ); } From ad23b7766a1eacac55074e8fc4b478e7a6939bbb Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Thu, 23 Nov 2023 14:55:30 +0300 Subject: [PATCH 45/68] added uniques storage version initialization upgrade --- system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs b/system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs index 32780b64f9..b1015a6ac0 100644 --- a/system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs +++ b/system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs @@ -854,6 +854,11 @@ impl frame_support::traits::OnRuntimeUpgrade for InitStorageVersions { writes.saturating_inc(); } + if Uniques::on_chain_storage_version() == StorageVersion::new(0) { + Uniques::current_storage_version().put::(); + writes.saturating_inc(); + } + ::DbWeight::get().reads_writes(4, writes) } } From 2b7e91ac2d2c3eeff9a4ec5e1112b4c07a3b9075 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Fri, 24 Nov 2023 09:14:01 +0300 Subject: [PATCH 46/68] set base price of UMP/DMP/HRMP delivery to 3 cents --- system-parachains/asset-hubs/asset-hub-kusama/src/lib.rs | 4 ++-- system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs | 4 ++-- system-parachains/bridge-hubs/bridge-hub-kusama/src/lib.rs | 4 ++-- system-parachains/bridge-hubs/bridge-hub-polkadot/src/lib.rs | 4 ++-- system-parachains/collectives/collectives-polkadot/src/lib.rs | 4 ++-- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/system-parachains/asset-hubs/asset-hub-kusama/src/lib.rs b/system-parachains/asset-hubs/asset-hub-kusama/src/lib.rs index 197bf2fe3c..1d03f75a01 100644 --- a/system-parachains/asset-hubs/asset-hub-kusama/src/lib.rs +++ b/system-parachains/asset-hubs/asset-hub-kusama/src/lib.rs @@ -635,8 +635,8 @@ parameter_types! { /// The asset ID for the asset that we use to pay for message delivery fees. pub FeeAssetId: AssetId = Concrete(xcm_config::KsmLocation::get()); /// The base fee for the message delivery fees. - pub const ToSiblingBaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price - pub const ToParentBaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price + pub const ToSiblingBaseDeliveryFee: u128 = CENTS.saturating_mul(3); + pub const ToParentBaseDeliveryFee: u128 = CENTS.saturating_mul(3); } pub type PriceForSiblingParachainDelivery = polkadot_runtime_common::xcm_sender::ExponentialPrice< diff --git a/system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs b/system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs index b1015a6ac0..2c62e27069 100644 --- a/system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs +++ b/system-parachains/asset-hubs/asset-hub-polkadot/src/lib.rs @@ -571,8 +571,8 @@ parameter_types! { /// The asset ID for the asset that we use to pay for message delivery fees. pub FeeAssetId: AssetId = Concrete(xcm_config::DotLocation::get()); /// The base fee for the message delivery fees. - pub const ToSiblingBaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price - pub const ToParentBaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price + pub const ToSiblingBaseDeliveryFee: u128 = CENTS.saturating_mul(3); + pub const ToParentBaseDeliveryFee: u128 = CENTS.saturating_mul(3); } pub type PriceForSiblingParachainDelivery = polkadot_runtime_common::xcm_sender::ExponentialPrice< diff --git a/system-parachains/bridge-hubs/bridge-hub-kusama/src/lib.rs b/system-parachains/bridge-hubs/bridge-hub-kusama/src/lib.rs index 8f91a20d06..f0d5f8a3cb 100644 --- a/system-parachains/bridge-hubs/bridge-hub-kusama/src/lib.rs +++ b/system-parachains/bridge-hubs/bridge-hub-kusama/src/lib.rs @@ -326,8 +326,8 @@ parameter_types! { /// The asset ID for the asset that we use to pay for message delivery fees. pub FeeAssetId: AssetId = Concrete(xcm_config::KsmRelayLocation::get()); /// The base fee for the message delivery fees. - pub const ToSiblingBaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price - pub const ToParentBaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price + pub const ToSiblingBaseDeliveryFee: u128 = CENTS.saturating_mul(3); + pub const ToParentBaseDeliveryFee: u128 = CENTS.saturating_mul(3); } /// Privileged origin that represents Root or Fellows pluralistic body. diff --git a/system-parachains/bridge-hubs/bridge-hub-polkadot/src/lib.rs b/system-parachains/bridge-hubs/bridge-hub-polkadot/src/lib.rs index d9bf550307..a811d768bd 100644 --- a/system-parachains/bridge-hubs/bridge-hub-polkadot/src/lib.rs +++ b/system-parachains/bridge-hubs/bridge-hub-polkadot/src/lib.rs @@ -301,8 +301,8 @@ parameter_types! { /// The asset ID for the asset that we use to pay for message delivery fees. pub FeeAssetId: AssetId = Concrete(xcm_config::DotRelayLocation::get()); /// The base fee for the message delivery fees. - pub const ToSiblingBaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price - pub const ToParentBaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price + pub const ToSiblingBaseDeliveryFee: u128 = CENTS.saturating_mul(3); + pub const ToParentBaseDeliveryFee: u128 = CENTS.saturating_mul(3); } /// Privileged origin that represents Root or Fellows. diff --git a/system-parachains/collectives/collectives-polkadot/src/lib.rs b/system-parachains/collectives/collectives-polkadot/src/lib.rs index a2d83d0b60..c3d12985ef 100644 --- a/system-parachains/collectives/collectives-polkadot/src/lib.rs +++ b/system-parachains/collectives/collectives-polkadot/src/lib.rs @@ -387,8 +387,8 @@ parameter_types! { /// The asset ID for the asset that we use to pay for message delivery fees. pub FeeAssetId: AssetId = Concrete(xcm_config::DotLocation::get()); /// The base fee for the message delivery fees. - pub const ToSiblingBaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price - pub const ToParentBaseDeliveryFee: u128 = CENTS.saturating_mul(3); // TODO: proper price + pub const ToSiblingBaseDeliveryFee: u128 = CENTS.saturating_mul(3); + pub const ToParentBaseDeliveryFee: u128 = CENTS.saturating_mul(3); } pub type PriceForSiblingParachainDelivery = polkadot_runtime_common::xcm_sender::ExponentialPrice< From 87a4a10a872368a39df2fbd51a44833a7eb0dca2 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Mon, 27 Nov 2023 16:37:11 +0300 Subject: [PATCH 47/68] post-merge fix --- relay/kusama/src/lib.rs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/relay/kusama/src/lib.rs b/relay/kusama/src/lib.rs index bbb63ce695..fe631b127e 100644 --- a/relay/kusama/src/lib.rs +++ b/relay/kusama/src/lib.rs @@ -1677,6 +1677,8 @@ pub type Migrations = migrations::Unreleased; /// The runtime migrations per release. #[allow(deprecated, missing_docs)] pub mod migrations { + use super::Runtime; + /// Unreleased migrations. Add new ones here: pub type Unreleased = ( pallet_nomination_pools::migration::versioned_migrations::V5toV6, From a8a318ffe51d47367924189ab2df49724b4280e2 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Mon, 27 Nov 2023 16:37:57 +0300 Subject: [PATCH 48/68] Update relay/polkadot/src/xcm_config.rs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Bastian Köcher --- relay/polkadot/src/xcm_config.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/relay/polkadot/src/xcm_config.rs b/relay/polkadot/src/xcm_config.rs index c55c427692..3a5923366e 100644 --- a/relay/polkadot/src/xcm_config.rs +++ b/relay/polkadot/src/xcm_config.rs @@ -30,7 +30,7 @@ use frame_system::EnsureRoot; use pallet_xcm::XcmPassthrough; use polkadot_runtime_constants::{ currency::CENTS, - system_parachain::{SystemParachains, *}, + system_parachain::*, xcm::body::FELLOWSHIP_ADMIN_INDEX, }; use runtime_common::{ From 00f548aca903a920229cd49a796a0419918feb7d Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Mon, 27 Nov 2023 16:38:41 +0300 Subject: [PATCH 49/68] Update system-parachains/collectives/collectives-polkadot/src/xcm_config.rs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Bastian Köcher --- .../collectives/collectives-polkadot/src/xcm_config.rs | 1 - 1 file changed, 1 deletion(-) diff --git a/system-parachains/collectives/collectives-polkadot/src/xcm_config.rs b/system-parachains/collectives/collectives-polkadot/src/xcm_config.rs index 96ffd14137..2126ea7965 100644 --- a/system-parachains/collectives/collectives-polkadot/src/xcm_config.rs +++ b/system-parachains/collectives/collectives-polkadot/src/xcm_config.rs @@ -242,7 +242,6 @@ match_types! { parents: 1, interior: X1(Parachain( system_parachain::ASSET_HUB_ID | - system_parachain::COLLECTIVES_ID | system_parachain::BRIDGE_HUB_ID )), } From d34683ebbcea5369e5d96df0710c1905c446e945 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Mon, 27 Nov 2023 16:40:17 +0300 Subject: [PATCH 50/68] Update system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Bastian Köcher --- system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs | 1 - 1 file changed, 1 deletion(-) diff --git a/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs b/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs index ce60d1b3d4..549e7874ed 100644 --- a/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs +++ b/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs @@ -488,7 +488,6 @@ match_types! { MultiLocation { parents: 1, interior: X1(Parachain( - system_parachain::ASSET_HUB_ID | system_parachain::ENCOINTER_ID | system_parachain::BRIDGE_HUB_ID )), From ef1224a0cacbbdb823d706bcc2f8fb5004ff5b18 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Mon, 27 Nov 2023 16:40:27 +0300 Subject: [PATCH 51/68] Update system-parachains/bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Bastian Köcher --- .../bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/system-parachains/bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs b/system-parachains/bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs index 1b8aa89637..46420fe627 100644 --- a/system-parachains/bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs +++ b/system-parachains/bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs @@ -197,8 +197,7 @@ match_types! { parents: 1, interior: X1(Parachain( system_parachain::ASSET_HUB_ID | - system_parachain::COLLECTIVES_ID | - system_parachain::BRIDGE_HUB_ID + system_parachain::COLLECTIVES_ID )), } }; From 60b055e63681b4e90f44f60d569c934e37ddc37c Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Mon, 27 Nov 2023 16:40:41 +0300 Subject: [PATCH 52/68] Update system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Bastian Köcher --- .../bridge-hubs/bridge-hub-kusama/src/xcm_config.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs b/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs index e3dca86c55..f629733fc6 100644 --- a/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs +++ b/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs @@ -193,8 +193,7 @@ match_types! { parents: 1, interior: X1(Parachain( system_parachain::ASSET_HUB_ID | - system_parachain::ENCOINTER_ID | - system_parachain::BRIDGE_HUB_ID + system_parachain::ENCOINTER_ID )), } }; From 85c178691657c2c4b8edbcae5dc6a5a7b1e41e48 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Mon, 27 Nov 2023 16:41:04 +0300 Subject: [PATCH 53/68] Update system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Bastian Köcher --- .../asset-hubs/asset-hub-polkadot/src/xcm_config.rs | 1 - 1 file changed, 1 deletion(-) diff --git a/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs b/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs index 6b0a535b54..2badb447d4 100644 --- a/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs +++ b/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs @@ -407,7 +407,6 @@ match_types! { MultiLocation { parents: 1, interior: X1(Parachain( - system_parachain::ASSET_HUB_ID | system_parachain::COLLECTIVES_ID | system_parachain::BRIDGE_HUB_ID )), From 92acd93fbd0155e33697a196adb001338c12a564 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Mon, 27 Nov 2023 16:43:36 +0300 Subject: [PATCH 54/68] Statemint -> AssetHub --- relay/polkadot/src/lib.rs | 12 ++++++------ relay/polkadot/src/xcm_config.rs | 8 ++++---- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/relay/polkadot/src/lib.rs b/relay/polkadot/src/lib.rs index 9f952845ce..85a8ab6c62 100644 --- a/relay/polkadot/src/lib.rs +++ b/relay/polkadot/src/lib.rs @@ -2226,7 +2226,7 @@ sp_api::impl_runtime_apis! { use frame_system_benchmarking::Pallet as SystemBench; use frame_benchmarking::baseline::Pallet as Baseline; use xcm::latest::prelude::*; - use xcm_config::{XcmConfig, StatemintLocation, TokenLocation, LocalCheckAccount, SovereignAccountOf}; + use xcm_config::{XcmConfig, AssetHubLocation, TokenLocation, LocalCheckAccount, SovereignAccountOf}; impl pallet_session_benchmarking::Config for Runtime {} impl pallet_offences_benchmarking::Config for Runtime {} @@ -2259,7 +2259,7 @@ sp_api::impl_runtime_apis! { (), >; fn valid_destination() -> Result { - Ok(StatemintLocation::get()) + Ok(AssetHubLocation::get()) } fn worst_case_holding(_depositable_count: u32) -> MultiAssets { // Polkadot only knows about DOT @@ -2269,7 +2269,7 @@ sp_api::impl_runtime_apis! { parameter_types! { pub const TrustedTeleporter: Option<(MultiLocation, MultiAsset)> = Some(( - StatemintLocation::get(), + AssetHubLocation::get(), MultiAsset { id: Concrete(TokenLocation::get()), fun: Fungible(1 * UNITS) } )); pub const TrustedReserve: Option<(MultiLocation, MultiAsset)> = None; @@ -2309,15 +2309,15 @@ sp_api::impl_runtime_apis! { } fn transact_origin_and_runtime_call() -> Result<(MultiLocation, RuntimeCall), BenchmarkError> { - Ok((StatemintLocation::get(), frame_system::Call::remark_with_event { remark: vec![] }.into())) + Ok((AssetHubLocation::get(), frame_system::Call::remark_with_event { remark: vec![] }.into())) } fn subscribe_origin() -> Result { - Ok(StatemintLocation::get()) + Ok(AssetHubLocation::get()) } fn claimable_asset() -> Result<(MultiLocation, MultiLocation, MultiAssets), BenchmarkError> { - let origin = StatemintLocation::get(); + let origin = AssetHubLocation::get(); let assets: MultiAssets = (Concrete(TokenLocation::get()), 1_000 * UNITS).into(); let ticket = MultiLocation { parents: 0, interior: Here }; Ok((origin, ticket, assets)) diff --git a/relay/polkadot/src/xcm_config.rs b/relay/polkadot/src/xcm_config.rs index 3a5923366e..aa6a94af58 100644 --- a/relay/polkadot/src/xcm_config.rs +++ b/relay/polkadot/src/xcm_config.rs @@ -134,16 +134,16 @@ pub type XcmRouter = WithUniqueTopic<( parameter_types! { pub const Dot: MultiAssetFilter = Wild(AllOf { fun: WildFungible, id: Concrete(TokenLocation::get()) }); - pub const StatemintLocation: MultiLocation = Parachain(ASSET_HUB_ID).into_location(); - pub const DotForStatemint: (MultiAssetFilter, MultiLocation) = (Dot::get(), StatemintLocation::get()); + pub const AssetHubLocation: MultiLocation = Parachain(ASSET_HUB_ID).into_location(); + pub const DotForAssetHub: (MultiAssetFilter, MultiLocation) = (Dot::get(), AssetHubLocation::get()); pub const CollectivesLocation: MultiLocation = Parachain(COLLECTIVES_ID).into_location(); pub const DotForCollectives: (MultiAssetFilter, MultiLocation) = (Dot::get(), CollectivesLocation::get()); pub const MaxAssetsIntoHolding: u32 = 64; } -/// Polkadot Relay recognizes/respects the Statemint chain as a teleporter. +/// Polkadot Relay recognizes/respects the asset hub chain as a teleporter. pub type TrustedTeleporters = - (xcm_builder::Case, xcm_builder::Case); + (xcm_builder::Case, xcm_builder::Case); match_types! { pub type OnlyParachains: impl Contains = { From 0f22829e55ba1f17cd3fcb5fa4ac598c870ae0cc Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Mon, 27 Nov 2023 16:43:45 +0300 Subject: [PATCH 55/68] fmt --- relay/polkadot/src/xcm_config.rs | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/relay/polkadot/src/xcm_config.rs b/relay/polkadot/src/xcm_config.rs index aa6a94af58..f88c108245 100644 --- a/relay/polkadot/src/xcm_config.rs +++ b/relay/polkadot/src/xcm_config.rs @@ -29,9 +29,7 @@ use frame_support::{ use frame_system::EnsureRoot; use pallet_xcm::XcmPassthrough; use polkadot_runtime_constants::{ - currency::CENTS, - system_parachain::*, - xcm::body::FELLOWSHIP_ADMIN_INDEX, + currency::CENTS, system_parachain::*, xcm::body::FELLOWSHIP_ADMIN_INDEX, }; use runtime_common::{ crowdloan, paras_registrar, From fc60f084aa2f05aacb2fedbe2fd2aa8f4008349f Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Tue, 28 Nov 2023 12:36:50 +0300 Subject: [PATCH 56/68] increase MaxFreezes from 1 to 8 for Polkadot and Kusama runtimes --- relay/kusama/src/lib.rs | 2 +- relay/polkadot/src/lib.rs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/relay/kusama/src/lib.rs b/relay/kusama/src/lib.rs index fe631b127e..3ab7ba77e3 100644 --- a/relay/kusama/src/lib.rs +++ b/relay/kusama/src/lib.rs @@ -329,7 +329,7 @@ impl pallet_balances::Config for Runtime { type ReserveIdentifier = [u8; 8]; type WeightInfo = weights::pallet_balances::WeightInfo; type FreezeIdentifier = RuntimeFreezeReason; - type MaxFreezes = ConstU32<1>; + type MaxFreezes = ConstU32<8>; type RuntimeHoldReason = RuntimeHoldReason; type RuntimeFreezeReason = RuntimeFreezeReason; type MaxHolds = ConstU32<2>; diff --git a/relay/polkadot/src/lib.rs b/relay/polkadot/src/lib.rs index 85a8ab6c62..02ca53e6de 100644 --- a/relay/polkadot/src/lib.rs +++ b/relay/polkadot/src/lib.rs @@ -319,7 +319,7 @@ impl pallet_balances::Config for Runtime { type RuntimeFreezeReason = RuntimeFreezeReason; type FreezeIdentifier = RuntimeFreezeReason; type MaxHolds = ConstU32<1>; - type MaxFreezes = ConstU32<1>; + type MaxFreezes = ConstU32<8>; } parameter_types! { From 23d602600da3d7eb9c600b4a30d31dbe7e4ff92f Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Tue, 28 Nov 2023 15:47:24 +0300 Subject: [PATCH 57/68] Update CHANGELOG.md Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com> --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1cc5e61197..a12e027ac9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,7 +12,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - Upgrade Preimage pallet's config implementations to adapt the new `Consideration` API ([polkadot-fellows/runtimes#56](https://github.com/polkadot-fellows/runtimes/pull/56)) - Remove `experimental` feature flag for `pallet-society`, `pallet-xcm`, and `runtime-common` crates imports ([polkadot-fellows/runtimes#56](https://github.com/polkadot-fellows/runtimes/pull/56)) - Election provider: use a geometric deposit base calculation for EPM signed submissions in Polkadot and Kusama ([polkadot-fellows/runtimes#56](https://github.com/polkadot-fellows/runtimes/pull/56)) -- Make IdentityInfo generic in pallet-identity ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)). Context: https://github.com/paritytech/polkadot-sdk/pull/1661 +- Make `IdentityInfo` generic in `pallet-identity` ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)). Context: https://github.com/paritytech/polkadot-sdk/pull/1661 ### Added From c2d2816775bc5c132357ce614705f7390f73b143 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Tue, 28 Nov 2023 15:47:32 +0300 Subject: [PATCH 58/68] Update CHANGELOG.md Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com> --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a12e027ac9..2da14fedfa 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,7 +16,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). ### Added -- Enable async backing on Kusama ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)). Context: https://github.com/paritytech/polkadot-sdk/pull/1543 +- Enable async backing on Kusama ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)). Context: https://github.com/paritytech/polkadot-sdk/pull/1543 - Implemented GenesisBuilder API for all runtimes ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)). Context: https://github.com/paritytech/polkadot-sdk/pull/1492 - XCM transport fees are now exponential and are sent to a treasury account ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)). Context: https://github.com/paritytech/polkadot-sdk/pull/1234 - System parachains are now trusted teleporters of each other ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)). Context: https://github.com/paritytech/polkadot-sdk/pull/1368 From 71cf1040418e160be44f0e5626f3d3115dbaa50e Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Tue, 28 Nov 2023 15:47:39 +0300 Subject: [PATCH 59/68] Update CHANGELOG.md Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com> --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2da14fedfa..759067cc9f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -20,7 +20,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - Implemented GenesisBuilder API for all runtimes ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)). Context: https://github.com/paritytech/polkadot-sdk/pull/1492 - XCM transport fees are now exponential and are sent to a treasury account ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)). Context: https://github.com/paritytech/polkadot-sdk/pull/1234 - System parachains are now trusted teleporters of each other ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)). Context: https://github.com/paritytech/polkadot-sdk/pull/1368 -- Treasury spends various asset kinds ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) +- Treasury is able to spend various asset kinds ([polkadot-fellows/runtimes#87](https://github.com/polkadot-fellows/runtimes/pull/87)) ### Fixed From c7d761d187326c4daceba0f94d9f805f0e85b8b2 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Tue, 28 Nov 2023 16:00:00 +0300 Subject: [PATCH 60/68] also rename Statemine -> AssetHub --- relay/kusama/src/lib.rs | 12 ++++++------ relay/kusama/src/xcm_config.rs | 10 +++++----- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/relay/kusama/src/lib.rs b/relay/kusama/src/lib.rs index 3ab7ba77e3..a5dca2b45f 100644 --- a/relay/kusama/src/lib.rs +++ b/relay/kusama/src/lib.rs @@ -2307,7 +2307,7 @@ sp_api::impl_runtime_apis! { use frame_benchmarking::baseline::Pallet as Baseline; use xcm::latest::prelude::*; use xcm_config::{ - LocalCheckAccount, SovereignAccountOf, Statemine, TokenLocation, XcmConfig, + LocalCheckAccount, SovereignAccountOf, AssetHubLocation, TokenLocation, XcmConfig, }; impl pallet_session_benchmarking::Config for Runtime {} @@ -2337,7 +2337,7 @@ sp_api::impl_runtime_apis! { (), >; fn valid_destination() -> Result { - Ok(Statemine::get()) + Ok(AssetHubLocation::get()) } fn worst_case_holding(_depositable_count: u32) -> MultiAssets { // Kusama only knows about KSM. @@ -2350,7 +2350,7 @@ sp_api::impl_runtime_apis! { parameter_types! { pub const TrustedTeleporter: Option<(MultiLocation, MultiAsset)> = Some(( - Statemine::get(), + AssetHubLocation::get(), MultiAsset { fun: Fungible(1 * UNITS), id: Concrete(TokenLocation::get()) }, )); pub const TrustedReserve: Option<(MultiLocation, MultiAsset)> = None; @@ -2390,15 +2390,15 @@ sp_api::impl_runtime_apis! { } fn transact_origin_and_runtime_call() -> Result<(MultiLocation, RuntimeCall), BenchmarkError> { - Ok((Statemine::get(), frame_system::Call::remark_with_event { remark: vec![] }.into())) + Ok((AssetHubLocation::get(), frame_system::Call::remark_with_event { remark: vec![] }.into())) } fn subscribe_origin() -> Result { - Ok(Statemine::get()) + Ok(AssetHubLocation::get()) } fn claimable_asset() -> Result<(MultiLocation, MultiLocation, MultiAssets), BenchmarkError> { - let origin = Statemine::get(); + let origin = AssetHubLocation::get(); let assets: MultiAssets = (Concrete(TokenLocation::get()), 1_000 * UNITS).into(); let ticket = MultiLocation { parents: 0, interior: Here }; Ok((origin, ticket, assets)) diff --git a/relay/kusama/src/xcm_config.rs b/relay/kusama/src/xcm_config.rs index 837967486c..4015341191 100644 --- a/relay/kusama/src/xcm_config.rs +++ b/relay/kusama/src/xcm_config.rs @@ -27,7 +27,7 @@ use frame_support::{ weights::Weight, }; use frame_system::EnsureRoot; -use kusama_runtime_constants::{currency::CENTS, system_parachain::SystemParachains}; +use kusama_runtime_constants::{currency::CENTS, system_parachain::*}; use runtime_common::{ crowdloan, paras_registrar, xcm_sender::{ChildParachainRouter, ExponentialPrice}, @@ -127,14 +127,14 @@ pub type XcmRouter = WithUniqueTopic<( parameter_types! { pub const Ksm: MultiAssetFilter = Wild(AllOf { fun: WildFungible, id: Concrete(TokenLocation::get()) }); - pub const Statemine: MultiLocation = Parachain(1000).into_location(); - pub const Encointer: MultiLocation = Parachain(1001).into_location(); - pub const KsmForStatemine: (MultiAssetFilter, MultiLocation) = (Ksm::get(), Statemine::get()); + pub const AssetHubLocation: MultiLocation = Parachain(ASSET_HUB_ID).into_location(); + pub const Encointer: MultiLocation = Parachain(ENCOINTER_ID).into_location(); + pub const KsmForAssetHub: (MultiAssetFilter, MultiLocation) = (Ksm::get(), AssetHubLocation::get()); pub const KsmForEncointer: (MultiAssetFilter, MultiLocation) = (Ksm::get(), Encointer::get()); pub const MaxAssetsIntoHolding: u32 = 64; } pub type TrustedTeleporters = - (xcm_builder::Case, xcm_builder::Case); + (xcm_builder::Case, xcm_builder::Case); match_types! { pub type OnlyParachains: impl Contains = { From cb8881fe7baaa365b0adbef553311ca63b761465 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Tue, 28 Nov 2023 16:04:20 +0300 Subject: [PATCH 61/68] added bridge hub to trusted teleporters --- relay/kusama/src/xcm_config.rs | 6 ++++-- relay/polkadot/src/xcm_config.rs | 4 +++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/relay/kusama/src/xcm_config.rs b/relay/kusama/src/xcm_config.rs index 4015341191..76e7df7811 100644 --- a/relay/kusama/src/xcm_config.rs +++ b/relay/kusama/src/xcm_config.rs @@ -128,13 +128,15 @@ pub type XcmRouter = WithUniqueTopic<( parameter_types! { pub const Ksm: MultiAssetFilter = Wild(AllOf { fun: WildFungible, id: Concrete(TokenLocation::get()) }); pub const AssetHubLocation: MultiLocation = Parachain(ASSET_HUB_ID).into_location(); - pub const Encointer: MultiLocation = Parachain(ENCOINTER_ID).into_location(); pub const KsmForAssetHub: (MultiAssetFilter, MultiLocation) = (Ksm::get(), AssetHubLocation::get()); + pub const Encointer: MultiLocation = Parachain(ENCOINTER_ID).into_location(); pub const KsmForEncointer: (MultiAssetFilter, MultiLocation) = (Ksm::get(), Encointer::get()); + pub const BridgeHubLocation: MultiLocation = Parachain(BRIDGE_HUB_ID).into_location(); + pub const KsmForBridgeHub: (MultiAssetFilter, MultiLocation) = (Ksm::get(), BridgeHubLocation::get()); pub const MaxAssetsIntoHolding: u32 = 64; } pub type TrustedTeleporters = - (xcm_builder::Case, xcm_builder::Case); + (xcm_builder::Case, xcm_builder::Case, xcm_builder::Case); match_types! { pub type OnlyParachains: impl Contains = { diff --git a/relay/polkadot/src/xcm_config.rs b/relay/polkadot/src/xcm_config.rs index f88c108245..f53d793371 100644 --- a/relay/polkadot/src/xcm_config.rs +++ b/relay/polkadot/src/xcm_config.rs @@ -136,12 +136,14 @@ parameter_types! { pub const DotForAssetHub: (MultiAssetFilter, MultiLocation) = (Dot::get(), AssetHubLocation::get()); pub const CollectivesLocation: MultiLocation = Parachain(COLLECTIVES_ID).into_location(); pub const DotForCollectives: (MultiAssetFilter, MultiLocation) = (Dot::get(), CollectivesLocation::get()); + pub const BridgeHubLocation: MultiLocation = Parachain(BRIDGE_HUB_ID).into_location(); + pub const DotForBridgeHub: (MultiAssetFilter, MultiLocation) = (Dot::get(), BridgeHubLocation::get()); pub const MaxAssetsIntoHolding: u32 = 64; } /// Polkadot Relay recognizes/respects the asset hub chain as a teleporter. pub type TrustedTeleporters = - (xcm_builder::Case, xcm_builder::Case); + (xcm_builder::Case, xcm_builder::Case, xcm_builder::Case); match_types! { pub type OnlyParachains: impl Contains = { From 53755641ea1fe39eed1561950c46354ea665f9e9 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Tue, 28 Nov 2023 16:07:10 +0300 Subject: [PATCH 62/68] fmt --- relay/kusama/src/xcm_config.rs | 7 +++++-- relay/polkadot/src/xcm_config.rs | 7 +++++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/relay/kusama/src/xcm_config.rs b/relay/kusama/src/xcm_config.rs index 76e7df7811..fe0d1ae1b6 100644 --- a/relay/kusama/src/xcm_config.rs +++ b/relay/kusama/src/xcm_config.rs @@ -135,8 +135,11 @@ parameter_types! { pub const KsmForBridgeHub: (MultiAssetFilter, MultiLocation) = (Ksm::get(), BridgeHubLocation::get()); pub const MaxAssetsIntoHolding: u32 = 64; } -pub type TrustedTeleporters = - (xcm_builder::Case, xcm_builder::Case, xcm_builder::Case); +pub type TrustedTeleporters = ( + xcm_builder::Case, + xcm_builder::Case, + xcm_builder::Case, +); match_types! { pub type OnlyParachains: impl Contains = { diff --git a/relay/polkadot/src/xcm_config.rs b/relay/polkadot/src/xcm_config.rs index f53d793371..f6ce0d4fe8 100644 --- a/relay/polkadot/src/xcm_config.rs +++ b/relay/polkadot/src/xcm_config.rs @@ -142,8 +142,11 @@ parameter_types! { } /// Polkadot Relay recognizes/respects the asset hub chain as a teleporter. -pub type TrustedTeleporters = - (xcm_builder::Case, xcm_builder::Case, xcm_builder::Case); +pub type TrustedTeleporters = ( + xcm_builder::Case, + xcm_builder::Case, + xcm_builder::Case, +); match_types! { pub type OnlyParachains: impl Contains = { From 893bbb9bbc170feaf753d9faf5c1061f235be3e0 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Wed, 29 Nov 2023 12:48:18 +0300 Subject: [PATCH 63/68] Update system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs Co-authored-by: Branislav Kontur --- .../asset-hubs/asset-hub-kusama/src/xcm_config.rs | 3 --- 1 file changed, 3 deletions(-) diff --git a/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs b/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs index 549e7874ed..4c4d9c19d4 100644 --- a/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs +++ b/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs @@ -239,9 +239,6 @@ match_types! { MultiLocation { parents: 1, interior: Here } | MultiLocation { parents: 1, interior: X1(_) } }; - pub type TreasuryPallet: impl Contains = { - MultiLocation { parents: 1, interior: X1(PalletInstance(kusama_runtime_constants::TREASURY_PALLET_ID)) } - }; } /// A call filter for the XCM Transact instruction. This is a temporary measure until we properly From 5492a05f58ed634619634dfc3492f4d653a30c63 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Wed, 29 Nov 2023 12:48:27 +0300 Subject: [PATCH 64/68] Update system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs Co-authored-by: Branislav Kontur --- system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs b/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs index 4c4d9c19d4..802e7c5e9a 100644 --- a/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs +++ b/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs @@ -462,7 +462,7 @@ pub type Barrier = TrailingSetTopicAsId< AllowTopLevelPaidExecutionFrom, // Parent, its pluralities (i.e. governance bodies) and parent's treasury // pallet get free execution. - AllowExplicitUnpaidExecutionFrom<(ParentOrParentsPlurality, TreasuryPallet)>, + AllowExplicitUnpaidExecutionFrom<(ParentOrParentsPlurality, Equals)>, // Subscriptions for version tracking are OK. AllowSubscriptionsFrom, ), From e84787f1d47b48663511a42dec36a9ee8a69fee2 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Wed, 29 Nov 2023 12:48:36 +0300 Subject: [PATCH 65/68] Update system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs Co-authored-by: Branislav Kontur --- .../asset-hubs/asset-hub-polkadot/src/xcm_config.rs | 3 --- 1 file changed, 3 deletions(-) diff --git a/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs b/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs index 2badb447d4..d29563d9da 100644 --- a/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs +++ b/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs @@ -195,9 +195,6 @@ match_types! { pub type FellowshipSalaryPallet: impl Contains = { MultiLocation { parents: 1, interior: X2(Parachain(1001), PalletInstance(64)) } }; - pub type TreasuryPallet: impl Contains = { - MultiLocation { parents: 1, interior: X1(PalletInstance(polkadot_runtime_constants::TREASURY_PALLET_ID)) } - }; } /// A call filter for the XCM Transact instruction. This is a temporary measure until we properly From 75a6196e45bac510349fa107226cb4d5044b1d7d Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Wed, 29 Nov 2023 12:48:43 +0300 Subject: [PATCH 66/68] Update system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs Co-authored-by: Branislav Kontur --- .../asset-hubs/asset-hub-polkadot/src/xcm_config.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs b/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs index d29563d9da..664a2df5fd 100644 --- a/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs +++ b/system-parachains/asset-hubs/asset-hub-polkadot/src/xcm_config.rs @@ -380,7 +380,7 @@ pub type Barrier = TrailingSetTopicAsId< ParentOrParentsPlurality, FellowsPlurality, FellowshipSalaryPallet, - TreasuryPallet, + Equals, )>, // Subscriptions for version tracking are OK. AllowSubscriptionsFrom, From c5a2c7f4d4168d88d6de470ebeffb394b3102f51 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Wed, 29 Nov 2023 12:51:47 +0300 Subject: [PATCH 67/68] allow unpoaid execution from relay treasury for BH and Collectives --- .../bridge-hubs/bridge-hub-kusama/src/xcm_config.rs | 4 ++-- .../bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs | 10 +++++++--- .../collectives/collectives-polkadot/src/xcm_config.rs | 4 ++-- 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs b/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs index f629733fc6..f835ea9bd2 100644 --- a/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs +++ b/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs @@ -175,8 +175,8 @@ pub type Barrier = TrailingSetTopicAsId< // If the message is one that immediately attemps to pay for execution, then // allow it. AllowTopLevelPaidExecutionFrom, - // Parent and its pluralities (i.e. governance bodies) get free execution. - AllowExplicitUnpaidExecutionFrom, + // Parent and its pluralities (i.e. governance bodies) and relay treasury get free execution. + AllowExplicitUnpaidExecutionFrom<(ParentOrParentsPlurality, Equals)>, // Subscriptions for version tracking are OK. AllowSubscriptionsFrom, ), diff --git a/system-parachains/bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs b/system-parachains/bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs index 46420fe627..f92b9adbf0 100644 --- a/system-parachains/bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs +++ b/system-parachains/bridge-hubs/bridge-hub-polkadot/src/xcm_config.rs @@ -178,9 +178,13 @@ pub type Barrier = TrailingSetTopicAsId< // If the message is one that immediately attemps to pay for execution, then // allow it. AllowTopLevelPaidExecutionFrom, - // Parent, its pluralities (i.e. governance bodies), and the Fellows plurality - // get free execution. - AllowExplicitUnpaidExecutionFrom<(ParentOrParentsPlurality, FellowsPlurality)>, + // Parent, its pluralities (i.e. governance bodies), Fellows plurality + // and relay treasury get free execution. + AllowExplicitUnpaidExecutionFrom<( + ParentOrParentsPlurality, + FellowsPlurality, + Equals, + )>, // Subscriptions for version tracking are OK. AllowSubscriptionsFrom, ), diff --git a/system-parachains/collectives/collectives-polkadot/src/xcm_config.rs b/system-parachains/collectives/collectives-polkadot/src/xcm_config.rs index 2126ea7965..28c1e9510b 100644 --- a/system-parachains/collectives/collectives-polkadot/src/xcm_config.rs +++ b/system-parachains/collectives/collectives-polkadot/src/xcm_config.rs @@ -224,8 +224,8 @@ pub type Barrier = TrailingSetTopicAsId< // If the message is one that immediately attemps to pay for execution, then // allow it. AllowTopLevelPaidExecutionFrom, - // Parent and its pluralities (i.e. governance bodies) get free execution. - AllowExplicitUnpaidExecutionFrom, + // Parent and its pluralities (i.e. governance bodies) and relay treasury get free execution. + AllowExplicitUnpaidExecutionFrom<(ParentOrParentsPlurality, Equals)>, // Subscriptions for version tracking are OK. AllowSubscriptionsFrom, ), From 3448aa84ea56eae610deb5cac3bcaf2b2be040d7 Mon Sep 17 00:00:00 2001 From: Svyatoslav Nikolsky Date: Wed, 29 Nov 2023 12:51:55 +0300 Subject: [PATCH 68/68] fmt --- .../asset-hubs/asset-hub-kusama/src/xcm_config.rs | 5 ++++- .../bridge-hubs/bridge-hub-kusama/src/xcm_config.rs | 8 ++++++-- .../collectives/collectives-polkadot/src/xcm_config.rs | 8 ++++++-- 3 files changed, 16 insertions(+), 5 deletions(-) diff --git a/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs b/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs index 802e7c5e9a..13fb5bdd8c 100644 --- a/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs +++ b/system-parachains/asset-hubs/asset-hub-kusama/src/xcm_config.rs @@ -462,7 +462,10 @@ pub type Barrier = TrailingSetTopicAsId< AllowTopLevelPaidExecutionFrom, // Parent, its pluralities (i.e. governance bodies) and parent's treasury // pallet get free execution. - AllowExplicitUnpaidExecutionFrom<(ParentOrParentsPlurality, Equals)>, + AllowExplicitUnpaidExecutionFrom<( + ParentOrParentsPlurality, + Equals, + )>, // Subscriptions for version tracking are OK. AllowSubscriptionsFrom, ), diff --git a/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs b/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs index f835ea9bd2..3a1ac9c8b1 100644 --- a/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs +++ b/system-parachains/bridge-hubs/bridge-hub-kusama/src/xcm_config.rs @@ -175,8 +175,12 @@ pub type Barrier = TrailingSetTopicAsId< // If the message is one that immediately attemps to pay for execution, then // allow it. AllowTopLevelPaidExecutionFrom, - // Parent and its pluralities (i.e. governance bodies) and relay treasury get free execution. - AllowExplicitUnpaidExecutionFrom<(ParentOrParentsPlurality, Equals)>, + // Parent and its pluralities (i.e. governance bodies) and relay treasury get + // free execution. + AllowExplicitUnpaidExecutionFrom<( + ParentOrParentsPlurality, + Equals, + )>, // Subscriptions for version tracking are OK. AllowSubscriptionsFrom, ), diff --git a/system-parachains/collectives/collectives-polkadot/src/xcm_config.rs b/system-parachains/collectives/collectives-polkadot/src/xcm_config.rs index 28c1e9510b..c609b491d1 100644 --- a/system-parachains/collectives/collectives-polkadot/src/xcm_config.rs +++ b/system-parachains/collectives/collectives-polkadot/src/xcm_config.rs @@ -224,8 +224,12 @@ pub type Barrier = TrailingSetTopicAsId< // If the message is one that immediately attemps to pay for execution, then // allow it. AllowTopLevelPaidExecutionFrom, - // Parent and its pluralities (i.e. governance bodies) and relay treasury get free execution. - AllowExplicitUnpaidExecutionFrom<(ParentOrParentsPlurality, Equals)>, + // Parent and its pluralities (i.e. governance bodies) and relay treasury get + // free execution. + AllowExplicitUnpaidExecutionFrom<( + ParentOrParentsPlurality, + Equals, + )>, // Subscriptions for version tracking are OK. AllowSubscriptionsFrom, ),