diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a63fef43..e4ff6df2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -72,48 +72,6 @@ jobs: name: encointer-collator-${{ github.sha }} path: target/release/encointer-collator - build_try_runtime_and_benchmark_binaries: - name: extra flags build ${{ matrix.binary }} for ${{ matrix.rust-target }} on (${{ matrix.os }}) - runs-on: ${{ matrix.os }} - strategy: - matrix: - os: [ubuntu-20.04] - rust: [stable] - binary: [release] - env: - RUST_BACKTRACE: full - RUSTV: ${{ matrix.rust }} - TARGET: ${{ matrix.rust-target }} - RUST_BIN_DIR: target/${{ matrix.rust-target }}/debug - RELEASE_NAME: debug - steps: - - uses: actions/checkout@v3 - - name: Install protoc - run: sudo apt-get install protobuf-compiler - - - name: Print env - run: | - echo "RUST_BIN_DIR = ${{ env.RUST_BIN_DIR }} " - - # With rustup's nice new toml format, we just need to run rustup show to install the toolchain - # https://github.com/actions-rs/toolchain/issues/126#issuecomment-782989659 - - name: Setup Rust toolchain - run: rustup show - - - uses: Swatinem/rust-cache@v2 - with: - key: ${{ matrix.os }}-${{ env.RUST_BIN_DIR }}-${{ matrix.binary }} - - - name: Release - if: ${{ matrix.binary == 'release' }} - run: cargo build --locked --release --features try-runtime,runtime-benchmarks - - # Upload artifacts - - name: Upload encointer-collator - uses: actions/upload-artifact@v3 - with: - name: encointer-collator-benchmark-try-runtime-${{ github.sha }} - path: target/release/encointer-collator # Run all checks and unit test. This always run on debug mode check: @@ -165,214 +123,3 @@ jobs: if: failure() uses: andymckay/cancel-action@0.2 - build-runtimes: - name: Build Runtimes - runs-on: ubuntu-latest - strategy: - matrix: - runtime: ["encointer", "launch"] - steps: - - uses: actions/checkout@v3 - - - name: Install protoc - run: sudo apt-get install protobuf-compiler - - - name: Cache target dir - uses: actions/cache@v3 - with: - path: "${{ github.workspace }}/runtime/${{ matrix.runtime }}/target" - key: srtool-target-${{ matrix.runtime }}-${{ github.sha }} - restore-keys: | - srtool-target-${{ matrix.runtime }}- - srtool-target- - - - name: Srtool build - id: srtool_build - uses: chevdor/srtool-actions@v0.9.2 - with: - chain: ${{ matrix.runtime }} - # todo: remove this again as soon as srtool is released for latest stable - tag: 1.74.0 - runtime_dir: polkadot-parachains/${{ matrix.runtime }}-runtime - - - name: Summary - run: | - echo '${{ steps.srtool_build.outputs.json }}' | jq > ${{ matrix.runtime }}-srtool-digest.json - cat ${{ matrix.runtime }}-srtool-digest.json - echo "Compact Runtime: ${{ steps.srtool_build.outputs.wasm }}" - echo "Compressed Runtime: ${{ steps.srtool_build.outputs.wasm_compressed }}" - - # We now get extra information thanks to subwasm - - name: Install subwasm - run: | - wget https://github.com/chevdor/subwasm/releases/download/v${{ env.SUBWASM_VERSION }}/subwasm_linux_amd64_v${{ env.SUBWASM_VERSION }}.deb - sudo dpkg -i subwasm_linux_amd64_v${{ env.SUBWASM_VERSION }}.deb - subwasm --version - - - name: Show Runtime information - shell: bash - run: | - subwasm info ${{ steps.srtool_build.outputs.wasm }} - subwasm info ${{ steps.srtool_build.outputs.wasm_compressed }} - subwasm --json info ${{ steps.srtool_build.outputs.wasm }} > ${{ matrix.runtime }}-info.json - subwasm --json info ${{ steps.srtool_build.outputs.wasm_compressed }} > ${{ matrix.runtime }}-compressed-info.json - - - name: Extract the metadata - shell: bash - run: | - subwasm meta ${{ steps.srtool_build.outputs.wasm }} - subwasm --json meta ${{ steps.srtool_build.outputs.wasm }} > ${{ matrix.runtime }}-metadata.json - -# This is unsupported it wants to diff the metadata with a running chain. i.e. wss://kusama--rpc.parity.io -# - name: Check the metadata diff -# shell: bash -# run: | -# subwasm diff ${{ steps.srtool_build.outputs.wasm }} --chain-b ${{ matrix.chain }} > ${{ matrix.chain }}-diff.txt -# cat ${{ matrix.chain }}-diff.txt - - - name: Upload ${{ matrix.runtime }} srtool json - uses: actions/upload-artifact@v3 - with: - name: ${{ matrix.runtime }}-srtool-json-${{ github.sha }} - path: | - ${{ matrix.runtime }}-srtool-digest.json - ${{ matrix.runtime }}-info.json - ${{ matrix.runtime }}-compressed-info.json - ${{ matrix.runtime }}-metadata.json -# ${{ matrix.runtime }}-diff.txt - - - - name: Upload ${{ matrix.runtime }} runtime - uses: actions/upload-artifact@v3 - with: - name: ${{ matrix.runtime }}-runtime-${{ github.sha }} - path: | - ${{ steps.srtool_build.outputs.wasm }} - ${{ steps.srtool_build.outputs.wasm_compressed }} - - create_artifacts: - needs: [ build_primary_binaries, build-runtimes ] - runs-on: ubuntu-20.04 - env: - CHAIN_SPEC: ${{ matrix.chain }}-${{ matrix.config }} - strategy: - fail-fast: false - matrix: - chain: [encointer] - config: [rococo, westend, kusama] - steps: - - name: Checkout - uses: actions/checkout@v3 - - - uses: actions/download-artifact@v3 - with: - name: encointer-collator-${{ github.sha }} - - - name: 'Create binaries for artifacts' - # The build-spec cmd does not create a deterministic key order in the produced json. Hence, we sort the keys - # before we use it to deterministically create the state. - run: | - chmod +x ./encointer-collator - ./encointer-collator build-spec --chain ${{ env.CHAIN_SPEC }} --disable-default-bootnode --raw > ${{ env.CHAIN_SPEC }}-unsorted.json - jq --sort-keys . ${{ env.CHAIN_SPEC }}-unsorted.json > ${{ env.CHAIN_SPEC }}.json - ./encointer-collator export-genesis-state --chain ${{ env.CHAIN_SPEC }}.json > ${{ env.CHAIN_SPEC }}.json.state - ./encointer-collator export-genesis-state --chain ${{ env.CHAIN_SPEC }} > ${{ env.CHAIN_SPEC }}.state - - - name: Compute file metadata - id: vars - run: | - sha256sum ${{ env.CHAIN_SPEC }}.state >> checksums.txt - sha256sum ${{ env.CHAIN_SPEC }}.json >> checksums.txt - sha256sum ${{ env.CHAIN_SPEC }}.json.state >> checksums.txt - - - name: Upload ${{ env.CHAIN_SPEC }} Files - uses: actions/upload-artifact@v3 - with: - name: ${{ env.CHAIN_SPEC }}-genesis-spec-${{ github.sha }} - path: | - checksums.txt - ${{ env.CHAIN_SPEC }}.state - ${{ env.CHAIN_SPEC }}.json - ${{ env.CHAIN_SPEC }}.json.state - - release: - name: Draft Release - if: startsWith(github.ref, 'refs/tags/') - runs-on: ubuntu-latest - needs: [create_artifacts, build_primary_binaries, check] - outputs: - release_url: ${{ steps.create-release.outputs.html_url }} - asset_upload_url: ${{ steps.create-release.outputs.upload_url }} - steps: - - uses: actions/checkout@v3 - - - name: Download Integritee Collator - uses: actions/download-artifact@v3 - with: - name: encointer-collator-${{ github.sha }} - - - name: Create required package.json - run: test -f package.json || echo '{}' >package.json - - - name: Changelog - uses: scottbrenner/generate-changelog-action@master - id: Changelog - - - name: Display structure of downloaded files - run: ls -R - working-directory: . - - - name: Release - id: create-release - uses: softprops/action-gh-release@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - body: | - ${{ steps.Changelog.outputs.changelog }} - draft: true - files: | - encointer-collator - - publish-runtimes: - name: Publish Runtimes - runs-on: ubuntu-latest - needs: ["release"] - strategy: - matrix: - runtime: ["encointer", "launch"] - steps: - - uses: actions/checkout@v3 - - uses: actions/download-artifact@v3 - - name: Set up Ruby 3 - uses: ruby/setup-ruby@v1 - with: - ruby-version: '3.0' - - - name: Get runtime version - id: get-runtime-ver - run: | - ls - ls "${{ matrix.runtime }}-runtime-${{ github.sha }}" - runtime_ver="$(ruby -e 'require "./scripts/github/lib.rb"; puts get_runtime("${{ matrix.runtime }}")')" - echo "::set-output name=runtime_ver::$runtime_ver" - - - name: Upload compact ${{ matrix.runtime }} wasm - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ needs.release.outputs.asset_upload_url }} - asset_path: "${{ matrix.runtime }}-runtime-${{ github.sha }}/${{ matrix.runtime }}_runtime.compact.wasm" - asset_name: ${{ matrix.runtime }}_runtime-v${{ steps.get-runtime-ver.outputs.runtime_ver }}.compact.wasm - asset_content_type: application/wasm - - - name: Upload compressed ${{ matrix.runtime }} wasm - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ needs.release.outputs.asset_upload_url }} - asset_path: "${{ matrix.runtime }}-runtime-${{ github.sha }}/${{ matrix.runtime }}_runtime.compact.compressed.wasm" - asset_name: ${{ matrix.runtime }}_runtime-v${{ steps.get-runtime-ver.outputs.runtime_ver }}.compact.compressed.wasm - asset_content_type: application/wasm diff --git a/Cargo.lock b/Cargo.lock index f5f1d414..674dfa09 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -27,15 +27,6 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" -[[package]] -name = "aead" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fc95d1bdb8e6666b2b217308eeeb09f2d6728d104be3e31916cc74d15420331" -dependencies = [ - "generic-array 0.14.7", -] - [[package]] name = "aead" version = "0.4.3" @@ -43,7 +34,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b613b8e1e3cf911a086f53f03bf286f52fd7a7258e4fa606f0ef220d39d8877" dependencies = [ "generic-array 0.14.7", - "rand_core 0.6.4", ] [[package]] @@ -56,17 +46,6 @@ dependencies = [ "generic-array 0.14.7", ] -[[package]] -name = "aes" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "884391ef1066acaa41e766ba8f596341b96e93ce34f9a43e7d24bf0a0eaf0561" -dependencies = [ - "aes-soft", - "aesni", - "cipher 0.2.5", -] - [[package]] name = "aes" version = "0.7.5" @@ -101,7 +80,7 @@ dependencies = [ "cipher 0.3.0", "ctr 0.8.0", "ghash 0.4.4", - "subtle", + "subtle 2.4.1", ] [[package]] @@ -115,27 +94,7 @@ dependencies = [ "cipher 0.4.4", "ctr 0.9.2", "ghash 0.5.0", - "subtle", -] - -[[package]] -name = "aes-soft" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be14c7498ea50828a38d0e24a765ed2effe92a705885b57d029cd67d45744072" -dependencies = [ - "cipher 0.2.5", - "opaque-debug 0.3.0", -] - -[[package]] -name = "aesni" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea2e11f5e94c2f7d386164cc2aa1f97823fed6f259e486940a71c174dd01b0ce" -dependencies = [ - "cipher 0.2.5", - "opaque-debug 0.3.0", + "subtle 2.4.1", ] [[package]] @@ -217,9 +176,9 @@ dependencies = [ [[package]] name = "anstream" -version = "0.6.4" +version = "0.6.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ab91ebe16eb252986481c5b62f6098f3b698a45e34b5b98200cf20dd2484a44" +checksum = "96b09b5178381e0874812a9b157f7fe84982617e48f71f4e3235482775e5b540" dependencies = [ "anstyle", "anstyle-parse", @@ -280,23 +239,152 @@ dependencies = [ [[package]] name = "aquamarine" -version = "0.3.2" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df752953c49ce90719c7bf1fc587bc8227aed04732ea0c0f85e5397d7fdbd1a1" +checksum = "074b80d14d0240b6ce94d68f059a2d26a5d77280ae142662365a21ef6e2594ef" dependencies = [ "include_dir", "itertools 0.10.5", "proc-macro-error", "proc-macro2", + "quote", + "syn 2.0.50", +] + +[[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 0.4.0", + "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 = "arc-swap" -version = "1.6.0" +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 = "bddcadddf5e9015d310179a59bb28c4d4b9920ad0f11e8e14dbadf654890c9a6" +checksum = "f52f63c5c1316a16a4b35eaac8b76a98248961a533f061684cb2a7cb0eafb6c6" [[package]] name = "array-bytes" @@ -331,29 +419,13 @@ version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" -[[package]] -name = "asn1-rs" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30ff05a702273012438132f449575dbc804e27b2f3cbe3069aa237d26c98fa33" -dependencies = [ - "asn1-rs-derive 0.1.0", - "asn1-rs-impl", - "displaydoc", - "nom", - "num-traits", - "rusticata-macros", - "thiserror", - "time", -] - [[package]] name = "asn1-rs" version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f6fd5ddaf0351dff5b8da21b2fb4ff8e08ddd02857f0bf69c47639106c0fff0" dependencies = [ - "asn1-rs-derive 0.4.0", + "asn1-rs-derive", "asn1-rs-impl", "displaydoc", "nom", @@ -363,18 +435,6 @@ dependencies = [ "time", ] -[[package]] -name = "asn1-rs-derive" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db8b7511298d5b7784b40b092d9e9dcd3a627a5707e4b5e507931ab0d44eeebf" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", - "synstructure", -] - [[package]] name = "asn1-rs-derive" version = "0.4.0" @@ -413,6 +473,12 @@ dependencies = [ "wait-timeout", ] +[[package]] +name = "assert_matches" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b34d609dfbaf33d6889b2b7106d3ca345eacad44200913df5ba02bfd31d2ba9" + [[package]] name = "async-channel" version = "1.9.0" @@ -483,7 +549,7 @@ dependencies = [ "futures-lite", "parking", "polling 3.3.0", - "rustix 0.38.21", + "rustix 0.38.31", "slab", "tracing", "waker-fn", @@ -523,21 +589,10 @@ dependencies = [ "cfg-if", "event-listener 3.0.1", "futures-lite", - "rustix 0.38.21", + "rustix 0.38.31", "windows-sys 0.48.0", ] -[[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.38", -] - [[package]] name = "async-signal" version = "0.2.5" @@ -550,7 +605,7 @@ dependencies = [ "cfg-if", "futures-core", "futures-io", - "rustix 0.38.21", + "rustix 0.38.31", "signal-hook-registry", "slab", "windows-sys 0.48.0", @@ -570,7 +625,7 @@ checksum = "a66537f1bb974b254c98ed142ff995236e81b9d0fe4db0575f46612cb15eb0f9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] @@ -598,17 +653,6 @@ version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1181e1e0d1fce796a03db1ae795d67167da795f9cf4a39c37589e85ef57f26d3" -[[package]] -name = "atty" -version = "0.2.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" -dependencies = [ - "hermit-abi 0.1.19", - "libc", - "winapi", -] - [[package]] name = "autocfg" version = "1.1.0" @@ -636,12 +680,6 @@ version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4cbbc9d0964165b47557570cce6c952866c2678457aca742aafc9fb771d30270" -[[package]] -name = "base16ct" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349a06037c7bf932dd7e7d1f653678b2038b9ad46a74102f1fc7bd7872678cce" - [[package]] name = "base16ct" version = "0.2.0" @@ -677,9 +715,9 @@ dependencies = [ [[package]] name = "binary-merkle-tree" -version = "9.0.0" +version = "13.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef1ea0c49f8a41e530d4cbb7c81651d9d085d5f1470f4e4ea8c8c9c59b67a1bf" +checksum = "4bf2706ac2641485d35ed06ebfe0b3b2c43e19a7ad8a90215580a91dd1766114" dependencies = [ "hash-db", "log", @@ -712,7 +750,7 @@ dependencies = [ "regex", "rustc-hash", "shlex", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] @@ -722,6 +760,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "93f2635620bf0b9d4576eb7bb9a38a55df78bd1205d26fa994b25911a69f212f" dependencies = [ "bitcoin_hashes", + "rand 0.8.5", + "rand_core 0.6.4", + "serde", + "unicode-normalization", ] [[package]] @@ -750,10 +792,23 @@ checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" dependencies = [ "funty", "radium", + "serde", "tap", "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" @@ -797,16 +852,15 @@ dependencies = [ [[package]] name = "blake3" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "729b71f35bd3fa1a4c86b85d32c8b9069ea7fe14f7a53cfabb65f62d4265b888" +checksum = "0231f06152bf547e9c2b5194f247cd97aacf6dcd8b15d8e5ec0663f64580da87" dependencies = [ "arrayref", "arrayvec 0.7.4", "cc", "cfg-if", - "constant_time_eq 0.2.6", - "digest 0.10.7", + "constant_time_eq 0.3.0", ] [[package]] @@ -815,7 +869,7 @@ version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b" dependencies = [ - "block-padding 0.1.5", + "block-padding", "byte-tools", "byteorder", "generic-array 0.12.4", @@ -839,16 +893,6 @@ dependencies = [ "generic-array 0.14.7", ] -[[package]] -name = "block-modes" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57a0e8073e8baa88212fb5823574c02ebccb395136ba9a164ab89379ec6072f0" -dependencies = [ - "block-padding 0.2.1", - "cipher 0.2.5", -] - [[package]] name = "block-padding" version = "0.1.5" @@ -858,12 +902,6 @@ dependencies = [ "byte-tools", ] -[[package]] -name = "block-padding" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d696c370c750c948ada61c69a0ee2cbbb9c50b1019ddb86d9317157a99c2cae" - [[package]] name = "blocking" version = "1.4.1" @@ -882,9 +920,9 @@ dependencies = [ [[package]] name = "bounded-collections" -version = "0.1.8" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb5b05133427c07c4776906f673ccf36c21b102c9829c641a5b56bd151d44fd6" +checksum = "ca548b6163b872067dc5eb82fd130c56881435e30367d2073594a3d9744120dd" dependencies = [ "log", "parity-scale-codec", @@ -901,6 +939,18 @@ dependencies = [ "thiserror", ] +[[package]] +name = "bp-xcm-bridge-hub-router" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f58cd5d7880f4bc8fc569e5bb0174302cd3f7e18a322e0fec2a4733cced35cb" +dependencies = [ + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-runtime", +] + [[package]] name = "bs58" version = "0.4.0" @@ -984,6 +1034,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.4" @@ -1025,17 +1085,6 @@ dependencies = [ "jobserver", ] -[[package]] -name = "ccm" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aca1a8fbc20b50ac9673ff014abfb2b5f4085ee1a850d408f14a159c5853ac7" -dependencies = [ - "aead 0.3.2", - "cipher 0.2.5", - "subtle", -] - [[package]] name = "cexpr" version = "0.6.0" @@ -1066,6 +1115,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" @@ -1124,7 +1183,7 @@ checksum = "b9b68e3193982cd54187d71afdb2a271ad4cf8af157858e9cb911b91321de143" dependencies = [ "core2", "multibase", - "multihash", + "multihash 0.17.0", "serde", "unsigned-varint", ] @@ -1179,9 +1238,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.4.7" +version = "4.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac495e00dcec98c83465d5ad66c5c4fabd652fd6686e7c6269b117e729a6f17b" +checksum = "c918d541ef2913577a0f9566e9ce27cb35b6df072075769e0b26cb5a554520da" dependencies = [ "clap_builder", "clap_derive", @@ -1189,33 +1248,34 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.4.7" +version = "4.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c77ed9a32a62e6ca27175d00d29d05ca32e396ea1eb5fb01d8256b669cec7663" +checksum = "9f3e7391dad68afb0c2ede1bf619f579a3dc9c2ec67f089baa397123a2f3d1eb" dependencies = [ "anstream", "anstyle", "clap_lex", "strsim", + "terminal_size", ] [[package]] name = "clap_derive" -version = "4.4.7" +version = "4.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf9804afaaf59a91e75b022a30fb7229a7901f60c755489cc61c9b423b836442" +checksum = "307bc0538d5f0f83b8248db3087aa92fe504e4691294d0c96c0eabc33f47ba47" dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] name = "clap_lex" -version = "0.6.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1" +checksum = "98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce" [[package]] name = "coarsetime" @@ -1239,6 +1299,27 @@ dependencies = [ "unicode-width", ] +[[package]] +name = "color-print" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a858372ff14bab9b1b30ea504f2a4bc534582aee3e42ba2d41d2a7baba63d5d" +dependencies = [ + "color-print-proc-macro", +] + +[[package]] +name = "color-print-proc-macro" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57e37866456a721d0a404439a1adae37a31be4e0055590d053dfe6981e05003f" +dependencies = [ + "nom", + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "colorchoice" version = "1.0.0" @@ -1324,6 +1405,18 @@ version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "21a53c0a4d288377e7415b53dcfc3c04da5cdc2cc95c8d5ac178b58f0b861ad6" +[[package]] +name = "constant_time_eq" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "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" @@ -1487,16 +1580,7 @@ version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "49fc9a695bca7f35f5f4c15cddc84415f66a74ea78eef08e90c5024f2b540e23" dependencies = [ - "crc-catalog 1.1.1", -] - -[[package]] -name = "crc" -version = "3.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86ec7a15cbe22e59248fc7eadb1907dab5ba09372595da4d73dd805ed4417dfe" -dependencies = [ - "crc-catalog 2.2.0", + "crc-catalog", ] [[package]] @@ -1505,12 +1589,6 @@ version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ccaeedb56da03b09f598226e25e80088cb4cd25f316e6e4df7d695f0feeb1403" -[[package]] -name = "crc-catalog" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9cace84e55f07e7301bae1c519df89cdad8cc3cd868413d3fdbdeca9ff3db484" - [[package]] name = "crc32fast" version = "1.3.2" @@ -1579,18 +1657,6 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" -[[package]] -name = "crypto-bigint" -version = "0.4.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef2b4b23cddf68b89b8f8069890e8c270d54e2d5fe1b143820234805e4cb17ef" -dependencies = [ - "generic-array 0.14.7", - "rand_core 0.6.4", - "subtle", - "zeroize", -] - [[package]] name = "crypto-bigint" version = "0.5.2" @@ -1599,7 +1665,7 @@ checksum = "cf4c2f4e1afd912bc40bfd6fed5d9dc1f288e0ba01bfcc835cc5bc3eb13efe15" dependencies = [ "generic-array 0.14.7", "rand_core 0.6.4", - "subtle", + "subtle 2.4.1", "zeroize", ] @@ -1614,6 +1680,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" @@ -1621,7 +1697,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]] @@ -1631,7 +1707,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]] @@ -1654,9 +1730,9 @@ dependencies = [ [[package]] name = "cumulus-client-cli" -version = "0.3.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed29c6894204aa823332c312a3d948673f0a450cacdc0e12d9a8a0be6663c153" +checksum = "88972dcd58e7d411ebfd9d82d7399aad567afe737ba8ad0943abfaf1a8b3903b" dependencies = [ "clap", "parity-scale-codec", @@ -1664,6 +1740,7 @@ dependencies = [ "sc-cli", "sc-client-api", "sc-service", + "sp-blockchain", "sp-core", "sp-runtime", "url", @@ -1671,9 +1748,9 @@ dependencies = [ [[package]] name = "cumulus-client-collator" -version = "0.3.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "580cf46afbc23ad440c11e230f5a1e97527c93929bca29eb8018a6a7af3befc8" +checksum = "ab9d9114479da745e34b1a4529dca9e51a61860593b61681107249bc68024bd4" dependencies = [ "cumulus-client-consensus-common", "cumulus-client-network", @@ -1695,17 +1772,17 @@ dependencies = [ [[package]] name = "cumulus-client-consensus-aura" -version = "0.3.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7e30ab726e61a35b8543e586fc6b57a43c1944ba74180d2c28a1f80ec2d484a" +checksum = "00378c991116820c354713b3d3be2c9789f84bfb86d0a3c97676cc9e8a39c174" dependencies = [ "async-trait", "cumulus-client-collator", "cumulus-client-consensus-common", "cumulus-client-consensus-proposer", + "cumulus-client-parachain-inherent", "cumulus-primitives-aura", "cumulus-primitives-core", - "cumulus-primitives-parachain-inherent", "cumulus-relay-chain-interface", "futures 0.3.28", "parity-scale-codec", @@ -1738,9 +1815,9 @@ dependencies = [ [[package]] name = "cumulus-client-consensus-common" -version = "0.3.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49b0161d655374be6bb29bad93862afb84ae5c32adfc62b9d7819879d5e64773" +checksum = "385c403c208f654e276f6d7ae30316d3d64f0975c9e19a18ed5943a963cc48c6" dependencies = [ "async-trait", "cumulus-client-pov-recovery", @@ -1768,9 +1845,9 @@ dependencies = [ [[package]] name = "cumulus-client-consensus-proposer" -version = "0.3.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "918d544a7d7b57f9530380ede93255d42378eaa89096ad7e1c5e8adc3868dc42" +checksum = "614b239940f64843c65ec19e157ee769c556f74f084077dc2f0425f0a671e9ba" dependencies = [ "anyhow", "async-trait", @@ -1784,9 +1861,9 @@ dependencies = [ [[package]] name = "cumulus-client-consensus-relay-chain" -version = "0.3.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "095b1c0ac991fbd53b30b969cc9627b495755fc2591941df3f4114959e6ae4e8" +checksum = "8ad64cf7112d6a980ee69b58570cd1426c2a728082a5c42e13e82519f7acf4bf" dependencies = [ "async-trait", "cumulus-client-consensus-common", @@ -1808,9 +1885,9 @@ dependencies = [ [[package]] name = "cumulus-client-network" -version = "0.3.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0eb961e2c3e4a83b1707de04233110d4a2ee361f04c7b2ad5e9e5f15cf2ea3da" +checksum = "ee9b8802b76850237bbf2c1afb869a9673b49ef9545b31698e1bffbffcaa4254" dependencies = [ "async-trait", "cumulus-relay-chain-interface", @@ -1830,11 +1907,36 @@ dependencies = [ "tracing", ] +[[package]] +name = "cumulus-client-parachain-inherent" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bcc095540bb3ad848b1d5cd8708d8b493729370d4671df5a0c38ea53382e46b" +dependencies = [ + "async-trait", + "cumulus-primitives-core", + "cumulus-primitives-parachain-inherent", + "cumulus-relay-chain-interface", + "cumulus-test-relay-sproof-builder", + "parity-scale-codec", + "sc-client-api", + "scale-info", + "sp-api", + "sp-core", + "sp-inherents", + "sp-runtime", + "sp-state-machine", + "sp-std", + "sp-storage", + "sp-trie", + "tracing", +] + [[package]] name = "cumulus-client-pov-recovery" -version = "0.3.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc8f304c811d9cfba4b6497d4d033e0500547bb9f8bf29fd20f57de740e916f4" +checksum = "ddd12cbdd57209ffc68d167b0c22c90d5680185b57d03e4c2436aef7dfd918a2" dependencies = [ "async-trait", "cumulus-primitives-core", @@ -1857,9 +1959,9 @@ dependencies = [ [[package]] name = "cumulus-client-service" -version = "0.3.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "756bf1ea290c818c2f7fac0c0c51dc1419f243f89b733aeef3ea8b51e70109e6" +checksum = "a5be0615943319f8750eb54793f8ec8721b2081852c23ed450da54cfcf6aca97" dependencies = [ "cumulus-client-cli", "cumulus-client-collator", @@ -1867,6 +1969,7 @@ dependencies = [ "cumulus-client-network", "cumulus-client-pov-recovery", "cumulus-primitives-core", + "cumulus-primitives-proof-size-hostfunction", "cumulus-relay-chain-inprocess-interface", "cumulus-relay-chain-interface", "cumulus-relay-chain-minimal-node", @@ -1893,9 +1996,9 @@ dependencies = [ [[package]] name = "cumulus-pallet-aura-ext" -version = "0.3.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b220a1c3071a088217c0a23020b17baba60e2685f13ae08396e10b3c62e197a5" +checksum = "8100a3283be2c46905345141e9a063f092949c6630a1fb70993b04c97f309e55" dependencies = [ "cumulus-pallet-parachain-system", "frame-support", @@ -1912,11 +2015,12 @@ dependencies = [ [[package]] name = "cumulus-pallet-dmp-queue" -version = "0.3.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c63f5595db891c0b05c846a1fd7d0f49ad8b4b19e5f79f015e125853b6a519e1" +checksum = "f461956a4a85c053657fe64e73852940c8a52e7d8fc20ccb4f91688e73f0820b" dependencies = [ "cumulus-primitives-core", + "frame-benchmarking", "frame-support", "frame-system", "log", @@ -1930,21 +2034,25 @@ dependencies = [ [[package]] name = "cumulus-pallet-parachain-system" -version = "0.3.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8848c0ce4e55777b621703ef62224d5b8e2c250ccc03fb34c5372d995b86fa16" +checksum = "4a1a0e6800ea92447eab2c9170cc77d21987fd0e61ed79a6e1318f7b127b3e2c" dependencies = [ "bytes", "cumulus-pallet-parachain-system-proc-macro", "cumulus-primitives-core", "cumulus-primitives-parachain-inherent", + "cumulus-primitives-proof-size-hostfunction", "environmental", + "frame-benchmarking", "frame-support", "frame-system", "impl-trait-for-tuples", "log", + "pallet-message-queue", "parity-scale-codec", "polkadot-parachain-primitives", + "polkadot-runtime-parachains", "scale-info", "sp-core", "sp-externalities", @@ -1961,21 +2069,21 @@ dependencies = [ [[package]] name = "cumulus-pallet-parachain-system-proc-macro" -version = "0.3.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1235a0c8b242349a41d84c07774e17acf942e9fee383dda31c021ccaea9eedb" +checksum = "befbaf3a1ce23ac8476481484fef5f4d500cbd15b4dad6380ce1d28134b0c1f7" dependencies = [ - "proc-macro-crate 1.3.1", + "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] name = "cumulus-pallet-xcm" -version = "0.3.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9848582a0748e29ab06faf9b1448b7039da1f90f6400b384c391c5831cb5fd7c" +checksum = "d9e5e8dd3f9c98620e32cbb1783725a3e75a3147cb351b43de37663824311cd9" dependencies = [ "cumulus-primitives-core", "frame-support", @@ -1990,19 +2098,23 @@ dependencies = [ [[package]] name = "cumulus-pallet-xcmp-queue" -version = "0.3.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0ac74a0c55c7ed27a51ce618b864e9d4a7f39de8ea03a4bd65ccff55145b5fa" +checksum = "439cdba45813623e7f45374f160f3356d27fb1aaca2536dd7f60ef2a7e9b30cd" dependencies = [ + "bounded-collections", + "bp-xcm-bridge-hub-router", "cumulus-primitives-core", "frame-benchmarking", "frame-support", "frame-system", "log", + "pallet-message-queue", "parity-scale-codec", "polkadot-runtime-common", - "rand_chacha 0.3.1", + "polkadot-runtime-parachains", "scale-info", + "sp-core", "sp-io", "sp-runtime", "sp-std", @@ -2012,9 +2124,9 @@ dependencies = [ [[package]] name = "cumulus-primitives-aura" -version = "0.3.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e59e8e10f2ec522afde1363141be0d499fdbd8be9889bee9b29b92dd52c2935" +checksum = "05ad9d2b1454d6957a92b3f8755d7bfa2b5b70ab2fa7751215f6897de5ac4cf6" dependencies = [ "parity-scale-codec", "polkadot-core-primitives", @@ -2027,9 +2139,9 @@ dependencies = [ [[package]] name = "cumulus-primitives-core" -version = "0.3.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1aed2ae9917749ad77ca62acf65826a0f5e725a920ff1cab01d9bb020d59cdbf" +checksum = "036b64697b5fd04c8039ccf15b9891104c496afb6c418c2cea1234d4898d0a28" dependencies = [ "parity-scale-codec", "polkadot-core-primitives", @@ -2045,33 +2157,36 @@ dependencies = [ [[package]] name = "cumulus-primitives-parachain-inherent" -version = "0.3.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87d8d415d8748df234bf0415576648fa529fbffa9de802959db7851f5e43d4dc" +checksum = "9cb6fe06744fed6e84682c48816181ad63652003570c2135c425481440fcd2f2" dependencies = [ "async-trait", "cumulus-primitives-core", - "cumulus-relay-chain-interface", - "cumulus-test-relay-sproof-builder", "parity-scale-codec", - "sc-client-api", "scale-info", - "sp-api", "sp-core", "sp-inherents", - "sp-runtime", - "sp-state-machine", "sp-std", - "sp-storage", "sp-trie", - "tracing", +] + +[[package]] +name = "cumulus-primitives-proof-size-hostfunction" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a132e17ac2c79436bc5004b0d56cb35ca65b966434f14e5ff8a9bc1afcfca5a4" +dependencies = [ + "sp-externalities", + "sp-runtime-interface", + "sp-trie", ] [[package]] name = "cumulus-primitives-timestamp" -version = "0.3.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a980cec30854da16e3f40c8fc18f9ec8feb984da17f7d68d89c3206adaa4753" +checksum = "f6d1d900bd9e76607a4a0734cbb2b004d86177d2d6938b5d25eb812c6c1b7500" dependencies = [ "cumulus-primitives-core", "futures 0.3.28", @@ -2083,15 +2198,17 @@ dependencies = [ [[package]] name = "cumulus-primitives-utility" -version = "0.3.0" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "926a72124a351594cfdce41d7762e668d442e08c193d909d9f69fbe22e95414e" +checksum = "d2ece52eeb7e87faea0d374356571ebc13f279df3bf79a1dc8a0db6c49d6ba23" 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", @@ -2102,9 +2219,9 @@ dependencies = [ [[package]] name = "cumulus-relay-chain-inprocess-interface" -version = "0.3.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f822628210c50781adf6afc5b22df63deb2b073712d2109b3903731b81bada9" +checksum = "6801c53e543614ce1b9f87cfca8ed69aab5318ba51439c0db8a910c8c3d77a15" dependencies = [ "async-trait", "cumulus-primitives-core", @@ -2127,9 +2244,9 @@ dependencies = [ [[package]] name = "cumulus-relay-chain-interface" -version = "0.3.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "642e7e83e5b3162cb2bf5b160e11443f5aabf11c5fd3c1deaf116d907ae79716" +checksum = "bdf9bd710caacdee77f50f01a40f37f8c9af1040e895de3e0b421f2c4ad0a291" dependencies = [ "async-trait", "cumulus-primitives-core", @@ -2146,45 +2263,51 @@ dependencies = [ [[package]] name = "cumulus-relay-chain-minimal-node" -version = "0.3.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5394c833bd582e46eecbc6ce96c9065d9b2a6ff9861f4016e4db6ac41c505d91" +checksum = "2b1e0847e45d6a5090ee32b4dc3497cb0671b9a6a9259f9a263a769560c5b60e" dependencies = [ - "array-bytes", + "array-bytes 6.1.0", "async-trait", "cumulus-primitives-core", "cumulus-relay-chain-interface", "cumulus-relay-chain-rpc-interface", "futures 0.3.28", + "parking_lot 0.12.1", "polkadot-availability-recovery", "polkadot-collator-protocol", "polkadot-core-primitives", "polkadot-network-bridge", "polkadot-node-collation-generation", + "polkadot-node-core-chain-api", + "polkadot-node-core-prospective-parachains", "polkadot-node-core-runtime-api", "polkadot-node-network-protocol", "polkadot-node-subsystem-util", "polkadot-overseer", "polkadot-primitives", "sc-authority-discovery", + "sc-client-api", "sc-network", "sc-network-common", "sc-service", "sc-tracing", "sc-utils", - "schnellru", "sp-api", + "sp-blockchain", "sp-consensus", "sp-consensus-babe", "sp-runtime", + "substrate-prometheus-endpoint", + "tokio", "tracing", ] [[package]] name = "cumulus-relay-chain-rpc-interface" -version = "0.3.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97c3adbcef74c30a6f920083f7777c8bba81b16e9dfca90d6664caa8f20d2a3d" +checksum = "1cb8a4c98335aeac261bde9b21e7518c099bfacc96592a052750051cebda158c" dependencies = [ "async-trait", "cumulus-primitives-core", @@ -2212,6 +2335,7 @@ dependencies = [ "sp-runtime", "sp-state-machine", "sp-storage", + "sp-version", "thiserror", "tokio", "tokio-util", @@ -2221,9 +2345,9 @@ dependencies = [ [[package]] name = "cumulus-test-relay-sproof-builder" -version = "0.3.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fba4a4d5de5f68bde4aff857194efcaae44e874b6947d9aac9ea02bcda4382c" +checksum = "c0ec12490a40b00427119fd1e12a6d1fe0652d2df3e992dea1bc4f331effed12" dependencies = [ "cumulus-primitives-core", "parity-scale-codec", @@ -2243,7 +2367,7 @@ dependencies = [ "byteorder", "digest 0.8.1", "rand_core 0.5.1", - "subtle", + "subtle 2.4.1", "zeroize", ] @@ -2256,7 +2380,7 @@ dependencies = [ "byteorder", "digest 0.9.0", "rand_core 0.5.1", - "subtle", + "subtle 2.4.1", "zeroize", ] @@ -2273,7 +2397,7 @@ dependencies = [ "fiat-crypto", "platforms", "rustc_version 0.4.0", - "subtle", + "subtle 2.4.1", "zeroize", ] @@ -2285,7 +2409,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] @@ -2325,7 +2449,7 @@ dependencies = [ "proc-macro2", "quote", "scratch", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] @@ -2342,42 +2466,7 @@ checksum = "4a076022ece33e7686fb76513518e219cca4fce5750a8ae6d1ce6c0f48fd1af9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", -] - -[[package]] -name = "darling" -version = "0.14.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850" -dependencies = [ - "darling_core", - "darling_macro", -] - -[[package]] -name = "darling_core" -version = "0.14.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0" -dependencies = [ - "fnv", - "ident_case", - "proc-macro2", - "quote", - "strsim", - "syn 1.0.109", -] - -[[package]] -name = "darling_macro" -version = "0.14.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e" -dependencies = [ - "darling_core", - "quote", - "syn 1.0.109", + "syn 2.0.50", ] [[package]] @@ -2406,17 +2495,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "der" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1a467a65c5e759bce6e65eaf91cc29f466cdc57cb65777bd646872a8a1fd4de" -dependencies = [ - "const-oid", - "pem-rfc7468", - "zeroize", -] - [[package]] name = "der" version = "0.7.6" @@ -2427,27 +2505,13 @@ dependencies = [ "zeroize", ] -[[package]] -name = "der-parser" -version = "7.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe398ac75057914d7d07307bf67dc7f3f574a26783b4fc7805a20ffa9f506e82" -dependencies = [ - "asn1-rs 0.3.1", - "displaydoc", - "nom", - "num-bigint", - "num-traits", - "rusticata-macros", -] - [[package]] name = "der-parser" version = "8.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dbd676fbbab537128ef0278adb5576cf363cff6aa22a7b24effe97347cfab61e" dependencies = [ - "asn1-rs 0.5.2", + "asn1-rs", "displaydoc", "nom", "num-bigint", @@ -2477,37 +2541,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "derive_builder" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d07adf7be193b71cc36b193d0f5fe60b918a3a9db4dad0449f57bcfd519704a3" -dependencies = [ - "derive_builder_macro", -] - -[[package]] -name = "derive_builder_core" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f91d4cfa921f1c05904dc3c57b4a32c38aed3340cce209f3a6fd1478babafc4" -dependencies = [ - "darling", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "derive_builder_macro" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f0314b72bed045f3a68671b3c86328386762c93f82d98c65c3cb5e5f573dd68" -dependencies = [ - "derive_builder_core", - "syn 1.0.109", -] - [[package]] name = "derive_more" version = "0.99.17" @@ -2554,7 +2587,7 @@ dependencies = [ "block-buffer 0.10.4", "const-oid", "crypto-common", - "subtle", + "subtle 2.4.1", ] [[package]] @@ -2607,7 +2640,7 @@ checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] @@ -2637,7 +2670,7 @@ dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.38", + "syn 2.0.50", "termcolor", "toml 0.7.4", "walkdir", @@ -2684,21 +2717,9 @@ dependencies = [ [[package]] name = "dyn-clone" -version = "1.0.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23d2f3407d9a573d666de4b5bdf10569d73ca9478087346697dcbae6244bfbcd" - -[[package]] -name = "ecdsa" -version = "0.14.8" +version = "1.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "413301934810f597c1d19ca71c8710e99a3f1ba28a0d2ebc01551a2daeea3c5c" -dependencies = [ - "der 0.6.1", - "elliptic-curve 0.12.3", - "rfc6979 0.3.1", - "signature 1.6.4", -] +checksum = "545b22097d44f8a9581187cdf93de7a71e4722bf51200cfaba810865b49a495d" [[package]] name = "ecdsa" @@ -2706,12 +2727,12 @@ version = "0.16.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0997c976637b606099b9985693efa3581e84e41f5c11ba5255f88711058ad428" dependencies = [ - "der 0.7.6", + "der", "digest 0.10.7", - "elliptic-curve 0.13.5", - "rfc6979 0.4.0", - "signature 2.1.0", - "spki 0.7.2", + "elliptic-curve", + "rfc6979", + "signature", + "spki", ] [[package]] @@ -2720,21 +2741,22 @@ version = "2.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53" dependencies = [ - "pkcs8 0.10.2", - "signature 2.1.0", + "pkcs8", + "signature", ] [[package]] name = "ed25519-dalek" -version = "2.0.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7277392b266383ef8396db7fdeb1e77b6c52fed775f5df15bb24f35b72156980" +checksum = "4a3daa8e81a3963a60642bcc1f90a670680bd4a77535faa384e9d1c79d620871" dependencies = [ "curve25519-dalek 4.1.1", "ed25519", "rand_core 0.6.4", "serde", "sha2 0.10.8", + "subtle 2.4.1", "zeroize", ] @@ -2773,44 +2795,22 @@ version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07" -[[package]] -name = "elliptic-curve" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7bb888ab5300a19b8e5bceef25ac745ad065f3c9f7efc6de1b91958110891d3" -dependencies = [ - "base16ct 0.1.1", - "crypto-bigint 0.4.9", - "der 0.6.1", - "digest 0.10.7", - "ff 0.12.1", - "generic-array 0.14.7", - "group 0.12.1", - "hkdf", - "pem-rfc7468", - "pkcs8 0.9.0", - "rand_core 0.6.4", - "sec1 0.3.0", - "subtle", - "zeroize", -] - [[package]] name = "elliptic-curve" version = "0.13.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "968405c8fdc9b3bf4df0a6638858cc0b52462836ab6b1c87377785dd09cf1c0b" dependencies = [ - "base16ct 0.2.0", - "crypto-bigint 0.5.2", + "base16ct", + "crypto-bigint", "digest 0.10.7", - "ff 0.13.0", + "ff", "generic-array 0.14.7", - "group 0.13.0", - "pkcs8 0.10.2", + "group", + "pkcs8", "rand_core 0.6.4", - "sec1 0.7.2", - "subtle", + "sec1", + "subtle 2.4.1", "zeroize", ] @@ -2822,9 +2822,9 @@ checksum = "a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f" [[package]] name = "encointer-balances-tx-payment" -version = "2.0.0" +version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5e15dc284476fd182f185c9be8610eec27e1978d9e6cf1296403dd58a5a75f4" +checksum = "407d7faa8fd1d242602012e6b6d51a8edc99321ac5a20425efa64c7ec432f868" dependencies = [ "encointer-primitives", "frame-support", @@ -2839,9 +2839,9 @@ dependencies = [ [[package]] name = "encointer-balances-tx-payment-rpc-runtime-api" -version = "2.0.0" +version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8a0cd28bead8ebb25ce92835aff1a50717341385d6fdb0391d8cf0b6b15a00b" +checksum = "4eb7b235a2ecbec5b913ee30c4372a9bb01c27cbca1368662ad9629df788a1be" dependencies = [ "encointer-primitives", "frame-support", @@ -2853,9 +2853,9 @@ dependencies = [ [[package]] name = "encointer-ceremonies-assignment" -version = "2.0.0" +version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd9cf3b96fbe7dd9dd7b29182196d4e0c9acdbbcdf3fffb0c61acf810fd2b05f" +checksum = "3f5e534e5d624f17a34ae5c6cf61ddbfd68b6a2d3900d855760ebb551f9d4fdd" dependencies = [ "encointer-primitives", "sp-runtime", @@ -2864,11 +2864,12 @@ dependencies = [ [[package]] name = "encointer-collator" -version = "1.6.0" +version = "1.7.0" dependencies = [ "assert_cmd", "async-trait", "clap", + "color-print", "cumulus-client-cli", "cumulus-client-collator", "cumulus-client-consensus-aura", @@ -2883,13 +2884,12 @@ dependencies = [ "cumulus-relay-chain-interface", "cumulus-relay-chain-rpc-interface", "encointer-balances-tx-payment-rpc-runtime-api", - "encointer-runtime", + "encointer-kusama-runtime", "frame-benchmarking", "frame-benchmarking-cli", "futures 0.3.28", "hex-literal", "jsonrpsee", - "launch-runtime", "log", "nix", "pallet-encointer-bazaar-rpc", @@ -2914,6 +2914,7 @@ dependencies = [ "sc-network", "sc-network-common", "sc-network-sync", + "sc-offchain", "sc-rpc", "sc-service", "sc-sysinfo", @@ -2943,59 +2944,12 @@ dependencies = [ "substrate-frame-rpc-system", "substrate-prometheus-endpoint", "tempfile", - "try-runtime-cli", -] - -[[package]] -name = "encointer-meetup-validation" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ae604323850fdfc731e3302bd4cff915b82b7fe606b5b8402cfd9a0ac73cd53" -dependencies = [ - "encointer-primitives", - "parity-scale-codec", - "scale-info", - "serde", - "sp-runtime", - "sp-std", -] - -[[package]] -name = "encointer-primitives" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5653ff377fb09b28500d7bb042ca70e3252c6b6c614f16719cce5411919cc25f" -dependencies = [ - "bs58 0.4.0", - "crc 2.1.0", - "ep-core", - "frame-support", - "log", - "parity-scale-codec", - "scale-info", - "serde", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", - "substrate-geohash", ] [[package]] -name = "encointer-rpc" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7324c8e9ac7a94e24f62d59b47d20faca9773136a4794fc2c76a9d1f7a3b16e4" -dependencies = [ - "jsonrpsee", - "jsonrpsee-core", - "jsonrpsee-types", - "thiserror", -] - -[[package]] -name = "encointer-runtime" -version = "1.6.17" +name = "encointer-kusama-runtime" +version = "1.0.0" +source = "git+https://github.com/encointer/runtimes.git?branch=ab/upgrade-polkadot-v1.6.0#437115e766f49b884aa1b5633dc83893b4a76fd1" dependencies = [ "cumulus-pallet-aura-ext", "cumulus-pallet-dmp-queue", @@ -3033,6 +2987,7 @@ dependencies = [ "pallet-encointer-scheduler", "pallet-insecure-randomness-collective-flip", "pallet-membership", + "pallet-message-queue", "pallet-proxy", "pallet-scheduler", "pallet-timestamp", @@ -3043,16 +2998,18 @@ dependencies = [ "pallet-xcm", "parachains-common", "parity-scale-codec", + "polkadot-core-primitives", "polkadot-parachain-primitives", + "polkadot-primitives", "polkadot-runtime-common", "scale-info", - "serde", + "smallvec", "sp-api", "sp-block-builder", "sp-consensus-aura", "sp-core", + "sp-genesis-builder", "sp-inherents", - "sp-io", "sp-offchain", "sp-runtime", "sp-session", @@ -3064,7 +3021,54 @@ dependencies = [ "staging-xcm-builder", "staging-xcm-executor", "substrate-wasm-builder", - "try-runtime-cli", + "system-parachains-constants", +] + +[[package]] +name = "encointer-meetup-validation" +version = "5.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "01d27e886abe0f6fb716dcf7ee0b4e91ae624d96dce6e87c1d5bada9a4bf76d3" +dependencies = [ + "encointer-primitives", + "parity-scale-codec", + "scale-info", + "serde", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "encointer-primitives" +version = "5.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9db298e46082c2f9692d6e8d5365fde266ac09ed18dd1c72c109281acad1b2fb" +dependencies = [ + "bs58 0.4.0", + "crc", + "ep-core", + "frame-support", + "log", + "parity-scale-codec", + "scale-info", + "serde", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", + "substrate-geohash", +] + +[[package]] +name = "encointer-rpc" +version = "5.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c3c0dbaef44c825184b3031a01e9c3971f27a679c9d4ae86670e4a70ac80a2b" +dependencies = [ + "jsonrpsee", + "jsonrpsee-core", + "jsonrpsee-types", + "thiserror", ] [[package]] @@ -3096,7 +3100,7 @@ checksum = "5e9a1f9f7d83e59740248a6e14ecf93929ade55027844dfcea78beafccc15745" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] @@ -3107,7 +3111,7 @@ checksum = "c2ad8cef1d801a4686bfd8919f0b30eac4c8e48968c437a6405ded4fb5272d2b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] @@ -3131,11 +3135,11 @@ checksum = "e48c92028aaa870e83d51c64e5d4e0b6981b360c522198c23959f219a4e1b15b" [[package]] name = "ep-core" -version = "2.0.0" +version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb3bec686dd5452c7fc7987ff76ab39178c8bc10e2d555811385605c5d5a2e36" +checksum = "84eac7952f21e9d5a28e5e3074a2ed1e7d26bbc08da770e43ec538ba2ee0d124" dependencies = [ - "array-bytes", + "array-bytes 6.1.0", "impl-serde", "parity-scale-codec", "scale-info", @@ -3155,23 +3159,12 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] name = "errno" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a" -dependencies = [ - "errno-dragonfly", - "libc", - "windows-sys 0.48.0", -] - -[[package]] -name = "errno-dragonfly" -version = "0.1.2" +version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf" +checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" dependencies = [ - "cc", "libc", + "windows-sys 0.52.0", ] [[package]] @@ -3218,11 +3211,11 @@ 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.38", + "syn 2.0.50", ] [[package]] @@ -3279,21 +3272,12 @@ dependencies = [ [[package]] name = "fdlimit" -version = "0.2.1" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c4c9e43643f5a3be4ca5b67d26b98031ff9db6806c3440ae32e02e3ceac3f1b" +checksum = "e182f7dbc2ef73d9ef67351c5fbbea084729c48362d3ce9dd44c28e32e277fe5" dependencies = [ "libc", -] - -[[package]] -name = "ff" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d013fc25338cc558c5c2cfbad646908fb23591e2404481826742b651c9af7160" -dependencies = [ - "rand_core 0.6.4", - "subtle", + "thiserror", ] [[package]] @@ -3303,7 +3287,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]] @@ -3396,9 +3380,9 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] name = "fork-tree" -version = "10.0.0" +version = "12.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6d54d3a638f0279210c924f4a44e6548bf6345670f5af059a874a5006af4eca" +checksum = "e93d3f0315c2eccf23453609e0ab92fe7c6ad1ca8129bcaf80b9a08c8d7fc52b" dependencies = [ "parity-scale-codec", ] @@ -3420,9 +3404,9 @@ checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa" [[package]] name = "frame-benchmarking" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a01af5751a0e4492dc979c57586976403e7ab63641add1a9fd804cad4169f4f6" +checksum = "2b16f7f853f64ec6fbc981b3e224cc3400752662da140ec62c160b5b859bab68" dependencies = [ "frame-support", "frame-support-procedural", @@ -3446,12 +3430,12 @@ dependencies = [ [[package]] name = "frame-benchmarking-cli" -version = "28.0.0" +version = "32.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4493341076535acb0bdb591e0e97b32cfacb8515dd74e66156f199d187cec004" +checksum = "69fec078a73892cb5a7146671cf76e3abf23201fefe431a013399ac2e5b03b54" dependencies = [ "Inflector", - "array-bytes", + "array-bytes 6.1.0", "chrono", "clap", "comfy-table", @@ -3495,21 +3479,21 @@ dependencies = [ [[package]] name = "frame-election-provider-solution-type" -version = "11.0.0" +version = "13.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35d1461dc3a49bbd9bdf8955eca27f54cdcc6b38373bbd636e011a8594d23f3f" +checksum = "c5c3bff645e46577c69c272733c53fa3a77d1ee6e40dfb66157bc94b0740b8fc" dependencies = [ - "proc-macro-crate 1.3.1", + "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] name = "frame-election-provider-support" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9fe9b8322a08a8a52ed3a7a7f7ca90827aa3bace41dc060c5b32d2ff0cd25c3" +checksum = "c596d956c4eedaffbe2fd6f75562e63e3e60001222bc6f8cc45fa77f3ea51791" dependencies = [ "frame-election-provider-solution-type", "frame-support", @@ -3525,9 +3509,9 @@ dependencies = [ [[package]] name = "frame-executive" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da12a8c223d6991bd7f9aae542d3d7c9fadde3a81b6f16c2550b808f3b21ecd5" +checksum = "5a5247e367912fe95f813e96542921ab4edf671860fd557625b55f40155abf90" dependencies = [ "frame-support", "frame-system", @@ -3556,11 +3540,10 @@ dependencies = [ [[package]] name = "frame-remote-externalities" -version = "0.31.0" +version = "0.35.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8b26379217d223364e6715ed12cdfdc9f368c6afcb15fd8771e387ab7b0265f" +checksum = "26ac8b505de5aa10e9c9548a3642fc708fc47fe3843b840992e6e6ab139f39d0" dependencies = [ - "async-recursion", "futures 0.3.28", "indicatif", "jsonrpsee", @@ -3579,11 +3562,12 @@ dependencies = [ [[package]] name = "frame-support" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0dc5640279221fbd316a3a652963c1cb9d51630ea3f62a08a5ad7fa402f23a4" +checksum = "e48b00bb3e82c465a435b08827e7abe5144345bc1a998848bdd7ce72fa203bb5" dependencies = [ "aquamarine", + "array-bytes 6.1.0", "bitflags 1.3.2", "docify", "environmental", @@ -3620,9 +3604,9 @@ dependencies = [ [[package]] name = "frame-support-procedural" -version = "19.0.0" +version = "23.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f22719c65353a0010a084cb2040e2e6569aff34562e59119cb66ddd7ecfa588c" +checksum = "0be717139a0da9b31b559356db73f6ce48876d331e833ebdc32de3a9ad581e15" dependencies = [ "Inflector", "cfg-expr", @@ -3634,40 +3618,42 @@ dependencies = [ "proc-macro-warning", "proc-macro2", "quote", - "syn 2.0.38", + "sp-core-hashing", + "syn 2.0.50", ] [[package]] name = "frame-support-procedural-tools" -version = "8.0.0" +version = "10.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e046ecdc04dd66f17d760525631f553ddcbea6f09423f78fcf52b47c97656cd0" +checksum = "3363df38464c47a73eb521a4f648bfcc7537a82d70347ef8af3f73b6d019e910" dependencies = [ "frame-support-procedural-tools-derive", - "proc-macro-crate 1.3.1", + "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] name = "frame-support-procedural-tools-derive" -version = "9.0.0" +version = "11.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4034ebf9ca7497fa3893191fe3e81adcd3d7cd1c232e60ef41ef58ea0c445ae9" +checksum = "68672b9ec6fe72d259d3879dc212c5e42e977588cdac830c76f54d9f492aeb58" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] name = "frame-system" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc19d4d4037b695805385d56983da173bbb969f68e0e4e6a1240bb30118e87d7" +checksum = "983b3215c8d97775b90dc1db88f858c46401682bd2fb8572bdd102ff8c2ca2a6" dependencies = [ "cfg-if", + "docify", "frame-support", "log", "parity-scale-codec", @@ -3683,9 +3669,9 @@ dependencies = [ [[package]] name = "frame-system-benchmarking" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb79e630dc8fbed5601e58c1b8d84ec3900a511f105140b5bbb6c18c476488d2" +checksum = "f78a2fe203b01b596156b2514e0b890b4a628dbdb50925316e755aa623b6fe53" dependencies = [ "frame-benchmarking", "frame-support", @@ -3699,9 +3685,9 @@ dependencies = [ [[package]] name = "frame-system-rpc-runtime-api" -version = "22.0.0" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a13ed2be7e4ad2cf140d16b94194595d3b2fea0b60a46832945c497924c2d0d0" +checksum = "28d183819ea7df1d89acd61fe423ae6bec24a29d87db5c18182339a751c0837a" dependencies = [ "parity-scale-codec", "sp-api", @@ -3709,9 +3695,9 @@ dependencies = [ [[package]] name = "frame-try-runtime" -version = "0.30.0" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9eceb53c4efa82dd7dd08f0770abfaa9587c592a015b21dc29ce4c24422de13" +checksum = "c5b3dab79d14d2e8f6329d7e5cb49f2bdb81b9ef3019b1c405d94defa137a353" dependencies = [ "frame-support", "parity-scale-codec", @@ -3738,11 +3724,11 @@ dependencies = [ [[package]] name = "fs4" -version = "0.6.5" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7672706608ecb74ab2e055c68327ffc25ae4cac1e12349204fd5fb0f3487cce2" +checksum = "29f9df8a11882c4e3335eb2d18a0137c505d9ca927470b0cac9c6f0ae07d28f7" dependencies = [ - "rustix 0.37.20", + "rustix 0.38.31", "windows-sys 0.48.0", ] @@ -3830,7 +3816,7 @@ checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] @@ -3841,7 +3827,7 @@ checksum = "d2411eed028cdf8c8034eaf21f9915f956b6c3abec4d4c7949ee67f0721127bd" dependencies = [ "futures-io", "rustls 0.20.8", - "webpki 0.22.0", + "webpki", ] [[package]] @@ -3942,6 +3928,16 @@ dependencies = [ "wasi 0.11.0+wasi-snapshot-preview1", ] +[[package]] +name = "getrandom_or_panic" +version = "0.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ea1015b5a70616b688dc230cfe50c8af89d972cb132d5a622814d29773b10b9" +dependencies = [ + "rand 0.8.5", + "rand_core 0.6.4", +] + [[package]] name = "ghash" version = "0.4.4" @@ -3992,26 +3988,15 @@ dependencies = [ "regex", ] -[[package]] -name = "group" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5dfbfb3a6cfbd390d5c9564ab283a0349b9b9fcd46a706c1eb10e0db70bfbac7" -dependencies = [ - "ff 0.12.1", - "rand_core 0.6.4", - "subtle", -] - [[package]] name = "group" version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" dependencies = [ - "ff 0.13.0", + "ff", "rand_core 0.6.4", - "subtle", + "subtle 2.4.1", ] [[package]] @@ -4092,19 +4077,19 @@ dependencies = [ ] [[package]] -name = "heck" -version = "0.4.1" +name = "hashlink" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" +checksum = "e8094feaf31ff591f651a2664fb9cfd92bba7a60ce3197265e9482ebe753c8f7" +dependencies = [ + "hashbrown 0.14.2", +] [[package]] -name = "hermit-abi" -version = "0.1.19" +name = "heck" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33" -dependencies = [ - "libc", -] +checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" [[package]] name = "hermit-abi" @@ -4303,12 +4288,6 @@ dependencies = [ "cc", ] -[[package]] -name = "ident_case" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" - [[package]] name = "idna" version = "0.2.3" @@ -4480,25 +4459,6 @@ dependencies = [ "num-traits", ] -[[package]] -name = "interceptor" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e8a11ae2da61704edada656798b61c94b35ecac2c58eb955156987d5e6be90b" -dependencies = [ - "async-trait", - "bytes", - "log", - "rand 0.8.5", - "rtcp", - "rtp", - "thiserror", - "tokio", - "waitgroup", - "webrtc-srtp", - "webrtc-util", -] - [[package]] name = "io-lifetimes" version = "1.0.11" @@ -4536,14 +4496,13 @@ checksum = "12b6ee2129af8d4fb011108c73d99a1b83a85977f23b82460c0ae2e25bb4b57f" [[package]] name = "is-terminal" -version = "0.4.7" +version = "0.4.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adcf93614601c8129ddf72e2d5633df827ba6551541c6d8c59520a371475be1f" +checksum = "f23ff5ef2b80d608d61efee834934d862cd92461afc0560dedf493e4c033738b" dependencies = [ "hermit-abi 0.3.1", - "io-lifetimes", - "rustix 0.37.20", - "windows-sys 0.48.0", + "libc", + "windows-sys 0.52.0", ] [[package]] @@ -4748,8 +4707,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cadb76004ed8e97623117f3df85b17aaa6626ab0b0831e6573f104df16cd1bcc" dependencies = [ "cfg-if", - "ecdsa 0.16.7", - "elliptic-curve 0.13.5", + "ecdsa", + "elliptic-curve", "once_cell", "sha2 0.10.8", ] @@ -4764,10 +4723,15 @@ dependencies = [ ] [[package]] -name = "kusama-runtime-constants" -version = "3.0.0" +name = "keystream" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fd5fda44486f7b352e8199e091d80371b1b9fdd9b3c117e5e25ec28477220a5" +checksum = "c33070833c9ee02266356de0c43f723152bd38bd96ddf52c82b3af10c9138b28" + +[[package]] +name = "kusama-runtime-constants" +version = "1.0.0" +source = "git+https://github.com/encointer/runtimes.git?branch=ab/upgrade-polkadot-v1.6.0#437115e766f49b884aa1b5633dc83893b4a76fd1" dependencies = [ "frame-support", "polkadot-primitives", @@ -4776,6 +4740,7 @@ dependencies = [ "sp-core", "sp-runtime", "sp-weights", + "staging-xcm-builder", ] [[package]] @@ -4813,77 +4778,15 @@ dependencies = [ [[package]] name = "landlock" -version = "0.2.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "520baa32708c4e957d2fc3a186bc5bd8d26637c33137f399ddfc202adb240068" +checksum = "1530c5b973eeed4ac216af7e24baf5737645a6272e361f1fb95710678b67d9cc" dependencies = [ "enumflags2", "libc", "thiserror", ] -[[package]] -name = "launch-runtime" -version = "1.6.3" -dependencies = [ - "cumulus-pallet-aura-ext", - "cumulus-pallet-dmp-queue", - "cumulus-pallet-parachain-system", - "cumulus-pallet-xcm", - "cumulus-pallet-xcmp-queue", - "cumulus-primitives-core", - "cumulus-primitives-timestamp", - "cumulus-primitives-utility", - "frame-benchmarking", - "frame-executive", - "frame-support", - "frame-system", - "frame-system-benchmarking", - "frame-system-rpc-runtime-api", - "frame-try-runtime", - "hex-literal", - "log", - "pallet-asset-tx-payment", - "pallet-aura", - "pallet-balances", - "pallet-collective", - "pallet-insecure-randomness-collective-flip", - "pallet-membership", - "pallet-proxy", - "pallet-scheduler", - "pallet-timestamp", - "pallet-transaction-payment", - "pallet-transaction-payment-rpc-runtime-api", - "pallet-treasury", - "pallet-utility", - "pallet-xcm", - "parachains-common", - "parity-scale-codec", - "polkadot-parachain-primitives", - "polkadot-runtime-common", - "runtime-common", - "scale-info", - "serde", - "sp-api", - "sp-block-builder", - "sp-consensus-aura", - "sp-core", - "sp-inherents", - "sp-io", - "sp-offchain", - "sp-runtime", - "sp-session", - "sp-std", - "sp-transaction-pool", - "sp-version", - "staging-parachain-info", - "staging-xcm", - "staging-xcm-builder", - "staging-xcm-executor", - "substrate-wasm-builder", - "try-runtime-cli", -] - [[package]] name = "lazy_static" version = "1.4.0" @@ -4898,9 +4801,9 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" [[package]] name = "libc" -version = "0.2.149" +version = "0.2.153" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a08173bc88b7955d1b3145aa561539096c421ac8debde8cbc3612ec635fee29b" +checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" [[package]] name = "libloading" @@ -4920,9 +4823,9 @@ checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" [[package]] name = "libp2p" -version = "0.51.3" +version = "0.51.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f210d259724eae82005b5c48078619b7745edb7b76de370b03f8ba59ea103097" +checksum = "f35eae38201a993ece6bdc823292d6abd1bffed1c4d0f4a3517d2bd8e1d917fe" dependencies = [ "bytes", "futures 0.3.28", @@ -4945,7 +4848,6 @@ dependencies = [ "libp2p-swarm", "libp2p-tcp", "libp2p-wasm-ext", - "libp2p-webrtc", "libp2p-websocket", "libp2p-yamux", "multiaddr", @@ -4990,7 +4892,7 @@ dependencies = [ "libp2p-identity", "log", "multiaddr", - "multihash", + "multihash 0.17.0", "multistream-select", "once_cell", "parking_lot 0.12.1", @@ -5050,7 +4952,7 @@ dependencies = [ "ed25519-dalek", "log", "multiaddr", - "multihash", + "multihash 0.17.0", "quick-protobuf", "rand 0.8.5", "sha2 0.10.8", @@ -5257,12 +5159,12 @@ dependencies = [ "futures-rustls", "libp2p-core", "libp2p-identity", - "rcgen 0.10.0", + "rcgen", "ring 0.16.20", "rustls 0.20.8", "thiserror", - "webpki 0.22.0", - "x509-parser 0.14.0", + "webpki", + "x509-parser", "yasna", ] @@ -5280,37 +5182,6 @@ dependencies = [ "wasm-bindgen-futures", ] -[[package]] -name = "libp2p-webrtc" -version = "0.4.0-alpha.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dba48592edbc2f60b4bc7c10d65445b0c3964c07df26fdf493b6880d33be36f8" -dependencies = [ - "async-trait", - "asynchronous-codec", - "bytes", - "futures 0.3.28", - "futures-timer", - "hex", - "if-watch", - "libp2p-core", - "libp2p-identity", - "libp2p-noise", - "log", - "multihash", - "quick-protobuf", - "quick-protobuf-codec", - "rand 0.8.5", - "rcgen 0.9.3", - "serde", - "stun", - "thiserror", - "tinytemplate", - "tokio", - "tokio-util", - "webrtc", -] - [[package]] name = "libp2p-websocket" version = "0.41.0" @@ -5385,7 +5256,7 @@ checksum = "5be9b9bb642d8522a44d533eab56c16c738301965504753b03ad1de3425d5451" dependencies = [ "crunchy", "digest 0.9.0", - "subtle", + "subtle 2.4.1", ] [[package]] @@ -5464,9 +5335,21 @@ checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519" [[package]] name = "linux-raw-sys" -version = "0.4.10" +version = "0.4.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c" + +[[package]] +name = "lioness" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da2479e8c062e40bf0066ffa0bc823de0a9368974af99c9f6df941d2c231e03f" +checksum = "4ae926706ba42c425c9457121178330d75e273df2e82e28b758faf3de3a9acb9" +dependencies = [ + "arrayref", + "blake2 0.8.1", + "chacha", + "keystream", +] [[package]] name = "lock_api" @@ -5539,50 +5422,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.38", + "syn 2.0.50", ] [[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.38", + "syn 2.0.50", ] [[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.38", + "syn 2.0.50", ] [[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.38", + "syn 2.0.50", ] [[package]] @@ -5622,15 +5505,6 @@ dependencies = [ "rawpointer", ] -[[package]] -name = "md-5" -version = "0.10.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6365506850d44bff6e2fbcb5176cf63650e48bd45ef2fe2665ae1570e0f4b9ca" -dependencies = [ - "digest 0.10.7", -] - [[package]] name = "memchr" version = "2.5.0" @@ -5761,11 +5635,36 @@ 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.1.1", + "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 = "mmr-gadget" -version = "25.0.0" +version = "29.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30fa1f828c4c4bd71d182d8674b370857b5b6bd30648c6ba81e5652db0cdda1e" +checksum = "f9d0ba6676a84f182dabd7c3ec2c92f0e882fe4e4179ddf76f02ac132e6eb0ab" dependencies = [ "futures 0.3.28", "log", @@ -5783,9 +5682,9 @@ dependencies = [ [[package]] name = "mmr-rpc" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2335104821e8648e1406f04bbc26e57b4f3c0babacd846b82b0f3f5f2026fb35" +checksum = "19066d17147f6819ec25f5f6fc3b9fca2008ae745ac7fa2d55ddb1d207119eae" dependencies = [ "anyhow", "jsonrpsee", @@ -5836,7 +5735,7 @@ dependencies = [ "data-encoding", "log", "multibase", - "multihash", + "multihash 0.17.0", "percent-encoding", "serde", "static_assertions", @@ -5859,24 +5758,92 @@ dependencies = [ name = "multihash" version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "835d6ff01d610179fbce3de1694d007e500bf33a7f29689838941d6bf783ae40" +checksum = "835d6ff01d610179fbce3de1694d007e500bf33a7f29689838941d6bf783ae40" +dependencies = [ + "blake2b_simd", + "blake2s_simd", + "blake3", + "core2", + "digest 0.10.7", + "multihash-derive 0.8.0", + "sha2 0.10.8", + "sha3", + "unsigned-varint", +] + +[[package]] +name = "multihash" +version = "0.18.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfd8a792c1694c6da4f68db0a9d707c72bd260994da179e6030a5dcee00bb815" +dependencies = [ + "core2", + "digest 0.10.7", + "multihash-derive 0.8.0", + "sha2 0.10.8", + "unsigned-varint", +] + +[[package]] +name = "multihash" +version = "0.19.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "076d548d76a0e2a0d4ab471d0b1c36c577786dfc4471242035d97a12a735c492" +dependencies = [ + "core2", + "unsigned-varint", +] + +[[package]] +name = "multihash-codetable" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6d815ecb3c8238d00647f8630ede7060a642c9f704761cd6082cb4028af6935" +dependencies = [ + "blake2b_simd", + "blake2s_simd", + "blake3", + "core2", + "digest 0.10.7", + "multihash-derive 0.9.0", + "ripemd", + "serde", + "sha1", + "sha2 0.10.8", + "sha3", + "strobe-rs", +] + +[[package]] +name = "multihash-derive" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc076939022111618a5026d3be019fd8b366e76314538ff9a1b59ffbcbf98bcd" +dependencies = [ + "proc-macro-crate 1.3.1", + "proc-macro-error", + "proc-macro2", + "quote", + "syn 1.0.109", + "synstructure", +] + +[[package]] +name = "multihash-derive" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "890e72cb7396cb99ed98c1246a97b243cc16394470d94e0bc8b0c2c11d84290e" dependencies = [ - "blake2b_simd", - "blake2s_simd", - "blake3", "core2", - "digest 0.10.7", - "multihash-derive", - "sha2 0.10.8", - "sha3", - "unsigned-varint", + "multihash 0.19.1", + "multihash-derive-impl", ] [[package]] -name = "multihash-derive" -version = "0.8.0" +name = "multihash-derive-impl" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc076939022111618a5026d3be019fd8b366e76314538ff9a1b59ffbcbf98bcd" +checksum = "d38685e08adb338659871ecfc6ee47ba9b22dcc8abcf6975d379cc49145c3040" dependencies = [ "proc-macro-crate 1.3.1", "proc-macro-error", @@ -5935,9 +5902,9 @@ dependencies = [ [[package]] name = "names" -version = "0.13.0" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7d66043b25d4a6cccb23619d10c19c25304b355a7dccd4a8e11423dd2382146" +checksum = "7bddcd3bf5144b6392de80e04c347cd7fab2508f6df16a85fc496ecd5cec39bc" dependencies = [ "rand 0.8.5", ] @@ -6114,11 +6081,12 @@ dependencies = [ [[package]] name = "num-traits" -version = "0.2.15" +version = "0.2.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd" +checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a" dependencies = [ "autocfg", + "libm", ] [[package]] @@ -6149,22 +6117,13 @@ dependencies = [ "memchr", ] -[[package]] -name = "oid-registry" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38e20717fa0541f39bd146692035c37bedfa532b3e5071b35761082407546b2a" -dependencies = [ - "asn1-rs 0.3.1", -] - [[package]] name = "oid-registry" version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9bedf36ffb6ba96c2eb7144ef6270557b52e54b20c0a8e1eb2ff99a6c6959bff" dependencies = [ - "asn1-rs 0.5.2", + "asn1-rs", ] [[package]] @@ -6240,32 +6199,26 @@ dependencies = [ ] [[package]] -name = "p256" -version = "0.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51f44edd08f51e2ade572f141051021c5af22677e42b7dd28a88155151c33594" -dependencies = [ - "ecdsa 0.14.8", - "elliptic-curve 0.12.3", - "sha2 0.10.8", -] - -[[package]] -name = "p384" -version = "0.11.2" +name = "pallet-asset-rate" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfc8c5bf642dde52bb9e87c0ecd8ca5a76faac2eeed98dedb7c717997e1080aa" +checksum = "1e6f4917bc6c9ed6864813bbb828e94c63e1878a21af89d25dd0ff7da742f53e" dependencies = [ - "ecdsa 0.14.8", - "elliptic-curve 0.12.3", - "sha2 0.10.8", + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-runtime", + "sp-std", ] [[package]] name = "pallet-asset-tx-payment" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a7e58838852ea75ab55a57316d5a81344d8e7917da4490abffbb3a81ffb8872" +checksum = "e967664d86219ca9f7d33504e8d914225cdb92e9e793d35edaab1fd2574f162f" dependencies = [ "frame-benchmarking", "frame-support", @@ -6282,9 +6235,9 @@ dependencies = [ [[package]] name = "pallet-assets" -version = "25.0.0" +version = "29.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d704075c2b504c1f66263440cf97af860efd7e7919f25ccebdeeeb255313c261" +checksum = "aca79db2bc70c269170893604d8a56d0f32d52c75a23a3d887b6b4df132366b7" dependencies = [ "frame-benchmarking", "frame-support", @@ -6299,9 +6252,9 @@ dependencies = [ [[package]] name = "pallet-aura" -version = "23.0.0" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7e2b1cf20dbd9fe630c69b4b0d3bb0d5fa1223ee728b0fc0064ef65698918c2" +checksum = "10c6ecf016520a6883df14b2f1d469d98166377eba4b299af7b76eee0130e3a6" dependencies = [ "frame-support", "frame-system", @@ -6317,9 +6270,9 @@ dependencies = [ [[package]] name = "pallet-authority-discovery" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8bdc251538bcec9340337a1624372561e6d8e6ae4eeb1adb1d7b1af13b349cda" +checksum = "b9224b0a0bb4fa721d51f56947c73d4189710691b4cb40e7f7a8abf59795759a" dependencies = [ "frame-support", "frame-system", @@ -6334,9 +6287,9 @@ dependencies = [ [[package]] name = "pallet-authorship" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae682e78744224150298730dfa1e2c39220e600dce17e42d2c77e49af3d9c59f" +checksum = "817b0420f9c14bd9bfbaf9e2f769a7e8124ab4fe3da0d07c80485c0901947ab8" dependencies = [ "frame-support", "frame-system", @@ -6349,9 +6302,9 @@ dependencies = [ [[package]] name = "pallet-babe" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eebab5b1891cc12c13348509831703bea1f160eff60fa7b76b94097cf13b7dcc" +checksum = "4ba445228a941062d7c4d6295810a359df7757d6182c36ddb824f8c3bf350380" dependencies = [ "frame-benchmarking", "frame-support", @@ -6374,9 +6327,9 @@ dependencies = [ [[package]] name = "pallet-bags-list" -version = "23.0.0" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd175d6ac024054b5fb41ce899a656e2e3972b0c4a2cbbe030b8d79fe25dc892" +checksum = "00b0d7b6922a6bed960591efb49da6637312c034337faf4c85d8b35f2e2c611a" dependencies = [ "aquamarine", "docify", @@ -6397,9 +6350,9 @@ dependencies = [ [[package]] name = "pallet-balances" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c17ec19ad23b26866ad7d60cdf8b613f653db7f44232aa25009811441908e2b" +checksum = "8406b5616e468d80972b6365f3cd8211d0dbf4d107b379fac85fddcfdf0b5562" dependencies = [ "frame-benchmarking", "frame-support", @@ -6413,9 +6366,9 @@ dependencies = [ [[package]] name = "pallet-beefy" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6272fe91e3d0e5ea20dd82bc0ea8b0f104fe5eb10c66cadc19f7460586b94ff3" +checksum = "03f71d32d9681e9d78102dad00377629cac24b4bf43f6371c0dc7e5b25981eb4" dependencies = [ "frame-support", "frame-system", @@ -6434,11 +6387,11 @@ dependencies = [ [[package]] name = "pallet-beefy-mmr" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbf6226868b86de0cb2bc795223ff02f9955329409ac61b71cd193582800872b" +checksum = "d8b8eaa5c053d9cbf20faa397f21b80b9b5bafbe428890b0171fd1bba16f52ce" dependencies = [ - "array-bytes", + "array-bytes 6.1.0", "binary-merkle-tree", "frame-support", "frame-system", @@ -6460,9 +6413,9 @@ dependencies = [ [[package]] name = "pallet-bounties" -version = "23.0.0" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e99eb21766e941ca1d92350da602ca618959c0917f216e124f2838d0e50b6c03" +checksum = "b5d421e3228bc4e8170d817d657aa87761b77ee4675a9e16328e1ca070cb4c41" dependencies = [ "frame-benchmarking", "frame-support", @@ -6477,11 +6430,29 @@ dependencies = [ "sp-std", ] +[[package]] +name = "pallet-broker" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "904983f117ff92ee24b251f2a883ff01b6f8e9063649877f3892ecbb516e3cbd" +dependencies = [ + "bitvec", + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-arithmetic", + "sp-core", + "sp-runtime", + "sp-std", +] + [[package]] name = "pallet-child-bounties" -version = "23.0.0" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b29f699677ce3e509f12a61529286373534948097f139944ef390add34fece5" +checksum = "fb62c44d3ab8dcbf106b22acc138eaea6e51563d16a8d4a246303f2e20eeb9e5" dependencies = [ "frame-benchmarking", "frame-support", @@ -6499,9 +6470,9 @@ dependencies = [ [[package]] name = "pallet-collator-selection" -version = "5.0.0" +version = "9.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01abb1abe8297d0a7c571b609d923ada973999b63702049343612325eb29c622" +checksum = "f4199122c135e161d2e2f4cbc9339c54a11ac4b11e0beb67e53b49a3c90d566b" dependencies = [ "frame-benchmarking", "frame-support", @@ -6519,9 +6490,9 @@ dependencies = [ [[package]] name = "pallet-collective" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06d2dcd4a78c11068eafd20df2bf0cbbfda8743ec5434170644c7f0eec7d7615" +checksum = "1ed22cf9d91c120695063cfa95ae0ffabcadefdf2581657ddb5fd68555b3a2e0" dependencies = [ "frame-benchmarking", "frame-support", @@ -6535,11 +6506,29 @@ dependencies = [ "sp-std", ] +[[package]] +name = "pallet-conviction-voting" +version = "28.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a189b5fb4a473edc7b2d52109fe10d0017b9b56f7c0324018b5970125db3ce3" +dependencies = [ + "assert_matches", + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "serde", + "sp-io", + "sp-runtime", + "sp-std", +] + [[package]] name = "pallet-democracy" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "676fa85ebbe8ac31aef51c08cdf6422690f71d277c0369e630129b96d3ae9541" +checksum = "b687c8a22b37f9b8444a29959f9cd0cf0be2f8efb8cd9bf91860d5dbafdab8b3" dependencies = [ "frame-benchmarking", "frame-support", @@ -6556,9 +6545,9 @@ dependencies = [ [[package]] name = "pallet-election-provider-multi-phase" -version = "23.0.0" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "394d978de9611f3b23fc499369f86d5d82e64800959a5701d66907737e779406" +checksum = "dc5e1f80bb4ce08b27f5a8a733d5c2d72d083a7d48afa4bdbb1ef3594a31e353" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -6580,9 +6569,9 @@ dependencies = [ [[package]] name = "pallet-election-provider-support-benchmarking" -version = "23.0.0" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a23b0dec60fd7a0c98234a4b04ef5e1f682bdf7ff3266ca499d85e1aac7bbec" +checksum = "193a8592c5fd534d56d07b2abe14e830d23947fb66f31867083e4f3ef80c8caa" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -6595,9 +6584,9 @@ dependencies = [ [[package]] name = "pallet-elections-phragmen" -version = "25.0.0" +version = "29.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23776772408c7fd612ee11c17071b1f5d93cbd8d0e0aadc16d112aca2711028d" +checksum = "2dd2f70c57cbb3dcde39f141721dd34a8c852e0caaf61ae6b0bbd23138b6e1d3" dependencies = [ "frame-benchmarking", "frame-support", @@ -6615,9 +6604,9 @@ dependencies = [ [[package]] name = "pallet-encointer-balances" -version = "2.0.0" +version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d707f038d97dc7aff6f7f390b743644172a3d54ce8e2f6d0b54430fbe246023" +checksum = "3abd8385b727858b9eac996991bb6bc2967ee51a5f1bdfd178455f073b1985c5" dependencies = [ "approx", "encointer-primitives", @@ -6635,9 +6624,9 @@ dependencies = [ [[package]] name = "pallet-encointer-bazaar" -version = "2.0.0" +version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6ef5ef5c15a8efafaa02ac9471fe511dac5b23eccfcff1142875a3fe5626ebd" +checksum = "59c2f8fd0131a9e1c997e9f634c04e40af131a1c62c75ecd22d4f2fe25d6d1c0" dependencies = [ "encointer-primitives", "frame-benchmarking", @@ -6653,15 +6642,16 @@ dependencies = [ [[package]] name = "pallet-encointer-bazaar-rpc" -version = "2.0.0" +version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f08f73b91a02053c4d8a63ad5313d2da96fffdaf188f99cdf0130a7b1ae0928" +checksum = "3f5c3902312aa07bb6e79db3aae3ec9890845e5d74368fbdfc779e6468901cb6" dependencies = [ "encointer-primitives", "encointer-rpc", "jsonrpsee", "log", "pallet-encointer-bazaar-rpc-runtime-api", + "parity-scale-codec", "parking_lot 0.12.1", "sc-rpc", "sc-rpc-api", @@ -6673,21 +6663,22 @@ dependencies = [ [[package]] name = "pallet-encointer-bazaar-rpc-runtime-api" -version = "2.0.0" +version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14fd27a20f3ce1f4882e805168a02e96e4358878f385f073327efbf29bb3dda1" +checksum = "1ca4fe43766549ed1261113039bbe44bc4b429fdd32db2848213e1918587134d" dependencies = [ "encointer-primitives", "frame-support", + "parity-scale-codec", "sp-api", "sp-std", ] [[package]] name = "pallet-encointer-ceremonies" -version = "2.0.0" +version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "305f6f2b53103a626f2dd13edd70529f39ed055d1b9b5e36c95bb8f980f1b9b1" +checksum = "c4638e64ecc2823182d42fb3e26f280c4f5c7c15a03e76de5a4471509268ef7e" dependencies = [ "encointer-ceremonies-assignment", "encointer-meetup-validation", @@ -6711,15 +6702,16 @@ dependencies = [ [[package]] name = "pallet-encointer-ceremonies-rpc" -version = "2.0.0" +version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87f357ec86f4c5441e105bee1fa822fbaf57c69efe000f1f50dd860c05393fa1" +checksum = "62f4aa4c1afd27a6341d6e46c34acccd15c000c0a43376875c9d6734eab4ee5e" dependencies = [ "encointer-primitives", "encointer-rpc", "jsonrpsee", "log", "pallet-encointer-ceremonies-rpc-runtime-api", + "parity-scale-codec", "parking_lot 0.12.1", "sc-rpc", "sc-rpc-api", @@ -6731,21 +6723,22 @@ dependencies = [ [[package]] name = "pallet-encointer-ceremonies-rpc-runtime-api" -version = "2.0.0" +version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aad34239cded6e5e8546c16bb786f8daebc59babc7f96bbf40be1626ddcce125" +checksum = "9649454f58e1ce8019d33b733ef82098d8830d3e629d13a73e25013246e59ce2" dependencies = [ "encointer-primitives", "frame-support", + "parity-scale-codec", "sp-api", "sp-std", ] [[package]] name = "pallet-encointer-communities" -version = "2.0.0" +version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "975577a3e7009abd8b6af7c8f5ee496a0a3deef9a46367209c3a9a50637e10db" +checksum = "f07f8f9108f2527999c88a935e3e8a4dff693dc41fe03ae537e0654f06d1e76b" dependencies = [ "encointer-primitives", "frame-benchmarking", @@ -6763,40 +6756,43 @@ dependencies = [ [[package]] name = "pallet-encointer-communities-rpc" -version = "2.0.0" +version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9404e7699f881ac8a9e02ccef91457f6c690c1f6c93cb0800b1c4e70c8bd704" +checksum = "61da6038a8ee3ba5e5b820dd23d1c266c9d764244d90218b9506b9894d46c7e4" dependencies = [ "encointer-primitives", "encointer-rpc", "jsonrpsee", "log", "pallet-encointer-communities-rpc-runtime-api", + "parity-scale-codec", "parking_lot 0.12.1", "sc-rpc", "sc-rpc-api", "sp-api", "sp-blockchain", + "sp-core", "sp-runtime", "thiserror", ] [[package]] name = "pallet-encointer-communities-rpc-runtime-api" -version = "2.0.0" +version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "939aac07d9e102a8756d4db3b40fbb4209b9d8a02b2ad0c1d51d5c8741987436" +checksum = "49b6fc07a3baa660dd2522b00c8ca9959fd56145852c84700c83472c0328c061" dependencies = [ "encointer-primitives", + "parity-scale-codec", "sp-api", "sp-std", ] [[package]] name = "pallet-encointer-faucet" -version = "2.0.0" +version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b2ecf8210c53a75711fabdcdd01b732057512dcd83c8d945e9fd879e70e85a9" +checksum = "12f315745473e6572629cf27cf41f29994b945116b516b2fb6503ab7bb784f05" dependencies = [ "approx", "encointer-primitives", @@ -6816,9 +6812,9 @@ dependencies = [ [[package]] name = "pallet-encointer-reputation-commitments" -version = "2.0.0" +version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7615e394b4832f58ffebb0b0a558eaa630be61dbe47b884375792f6c8d600a7e" +checksum = "4f89a194a51ec7326ac10908ea4a8840270a9bc0c3a12ae80cea46995f49c73d" dependencies = [ "approx", "encointer-primitives", @@ -6839,9 +6835,9 @@ dependencies = [ [[package]] name = "pallet-encointer-scheduler" -version = "2.0.0" +version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "867deba7eafb2949215487f8342cece3fabc61eaa6773547031a17c748699d20" +checksum = "7d5804270f9ad33a67317bd52be71eca756d7307026ba399b096e1f3e330be4c" dependencies = [ "encointer-primitives", "frame-benchmarking", @@ -6858,9 +6854,9 @@ dependencies = [ [[package]] name = "pallet-fast-unstake" -version = "23.0.0" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c41338a9d75f9c4c656d5d5ff15d8154edd7de61a97361e2d0ddc552baf6e944" +checksum = "cd6e0b51b82075b046792cdde2d4a2f6c9301f3deba44c26d30ab152060b9028" dependencies = [ "docify", "frame-benchmarking", @@ -6878,9 +6874,9 @@ dependencies = [ [[package]] name = "pallet-grandpa" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "977d01d5ce3f06fa17adf2ffa55ebaea765efa23bc11a242773a28955ee1d02b" +checksum = "935e91fa8936381aff2b88d8a7dad38ac30a1c8d2310340d73ce1c07b5ae72ce" dependencies = [ "frame-benchmarking", "frame-support", @@ -6902,14 +6898,15 @@ dependencies = [ [[package]] name = "pallet-identity" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffae303f4ecd1da950d4e27417ee4e3bbe3b8eb33776ded6184c40ed97dc5430" +checksum = "f3259bb87d50529027fa40267c3662dc80c683f253f121f391c032b019c88fcb" dependencies = [ "enumflags2", "frame-benchmarking", "frame-support", "frame-system", + "log", "parity-scale-codec", "scale-info", "sp-io", @@ -6919,9 +6916,9 @@ dependencies = [ [[package]] name = "pallet-im-online" -version = "23.0.0" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c30d7b90763c186d63e3f3f7e102c34df17917f6aeb24c4b6503356a886c16e" +checksum = "e4be3f0165158828e4e77fae106a93bc1f48cc751755bdb012edb3ac0ef1d246" dependencies = [ "frame-benchmarking", "frame-support", @@ -6940,9 +6937,9 @@ dependencies = [ [[package]] name = "pallet-indices" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44159982fa42f9ec453d07bc9bbd41f0d51a710a58616b437700c87113e917cc" +checksum = "4ead239524e40e55d172f024ff6795998068a2ba1c0950e74c4db7f347cfa91e" dependencies = [ "frame-benchmarking", "frame-support", @@ -6958,9 +6955,9 @@ dependencies = [ [[package]] name = "pallet-insecure-randomness-collective-flip" -version = "12.0.0" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ceb34ce847fbbd8bec05538053bad0b4b3c08939d6d4fa8c5e034601ca67eff7" +checksum = "9e3812708354757694bf127a89ab043ce80b2016a3b4d1eda2f762fbc4da9904" dependencies = [ "frame-support", "frame-system", @@ -6973,9 +6970,9 @@ dependencies = [ [[package]] name = "pallet-membership" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f4ff96fb2e4e126c96933e7a38e765b0bc30c8de0a66e3680d6a0d38356638e" +checksum = "1bc2dfdff5a7e5b21355b34245312ba2ea687444d9003960e7b876e1df518dab" dependencies = [ "frame-benchmarking", "frame-support", @@ -6991,10 +6988,11 @@ dependencies = [ [[package]] name = "pallet-message-queue" -version = "27.0.0" +version = "31.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13771c5cba1de8dd9b0492ab8923a8dd6b76a657f6eed6265db65c169b5f9111" +checksum = "ab6302efb264a65fd175f3082b72004df125f646a3c68b72fd08e657a468c0d6" dependencies = [ + "environmental", "frame-benchmarking", "frame-support", "frame-system", @@ -7011,9 +7009,9 @@ dependencies = [ [[package]] name = "pallet-mmr" -version = "23.0.0" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "224a83531b4a748a06501e033b09a22d51c70b8a58ae03794e7d3df4865ea49a" +checksum = "ba6565b91d1d585047648793feece7c2c70080b37e1f55ab3a4fb50b4c1bec86" dependencies = [ "frame-benchmarking", "frame-support", @@ -7030,9 +7028,9 @@ dependencies = [ [[package]] name = "pallet-multisig" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f777e13b1d99233df1b4a6d7cf50d8c8214389be249467d8616983491ebdb537" +checksum = "14dbcdea9d3d7963aab57078a5bd6f3596186bfcf181d666db6ea2bfdc0184ec" dependencies = [ "frame-benchmarking", "frame-support", @@ -7047,9 +7045,9 @@ dependencies = [ [[package]] name = "pallet-nis" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0f288d37549f0cc09c719577b21dab288785e95f91ff69e8916f7f92f438f94" +checksum = "86c541b2785051ebe1ae378be4b086055fbb8b13ee18fd949dfcf68dbd1c3325" dependencies = [ "frame-benchmarking", "frame-support", @@ -7064,9 +7062,9 @@ dependencies = [ [[package]] name = "pallet-nomination-pools" -version = "21.0.0" +version = "25.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61cd64134f94f4ce7ff594d15ad6599d50abde54e94fd923366855b5bf0835c7" +checksum = "d5989ca1100694371c9951118d58e84e93b60c1919006e9d4ad0f7537952c388" dependencies = [ "frame-support", "frame-system", @@ -7084,9 +7082,9 @@ dependencies = [ [[package]] name = "pallet-nomination-pools-benchmarking" -version = "22.0.0" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "889d4929272cb67bdd444700a343f142816ebb5bbae65e771e70f52decb5931f" +checksum = "d01847415cd33a92c65e8d13cb0041a32b2f2523c84d9d944287ae5c0d920c82" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -7105,9 +7103,9 @@ dependencies = [ [[package]] name = "pallet-nomination-pools-runtime-api" -version = "19.0.0" +version = "23.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c3a6ba161ed6b04be29ce4b6f1e9a2b0d8ab8f3708a95c39e0e0f334aa0954a" +checksum = "a64b17d862b833ca07a375646ecc80e164e5618c3aed4e5631816aa7288bf9b1" dependencies = [ "pallet-nomination-pools", "parity-scale-codec", @@ -7117,9 +7115,9 @@ dependencies = [ [[package]] name = "pallet-offences" -version = "23.0.0" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6dee74e6484d9dc2787baa8687b0b27115167848d2f821ca4e57826af4af50c6" +checksum = "de7b17230f58ff6b1ec2a70b3c639c49f585841dacf63f30c78db6387a833e0b" dependencies = [ "frame-support", "frame-system", @@ -7135,9 +7133,9 @@ dependencies = [ [[package]] name = "pallet-offences-benchmarking" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e534be39e87f22945af557c5fcb3b4e22d57a881af4966a0ac15f6f3f9feb2c7" +checksum = "060483993358293d041e5173635082c68c7783a800c0874e8df87c324232f0d1" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -7160,9 +7158,9 @@ dependencies = [ [[package]] name = "pallet-preimage" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50fdee12172aeac7a8c3292c559cf59947c71e37630b43d4f27f5b0f7845725c" +checksum = "ce688c68f117b1916a844579aa5a945d786059b119a1cc80ace370afd1e50da4" dependencies = [ "frame-benchmarking", "frame-support", @@ -7178,15 +7176,34 @@ dependencies = [ [[package]] name = "pallet-proxy" -version = "24.0.0" +version = "28.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3162924576a70509136eb4d8513497fb640a8b3ea753883fe29bd454c511485" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-ranked-collective" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "092eaf774e2ddf8974137fa2970835e421280fb637ddb06ebdfe47fefe29419b" +checksum = "86c6d11592a6ba9039bd3486dba15f0cb045889b2746f4619f5ec78188fdd151" dependencies = [ "frame-benchmarking", "frame-support", "frame-system", + "log", "parity-scale-codec", "scale-info", + "sp-arithmetic", + "sp-core", "sp-io", "sp-runtime", "sp-std", @@ -7194,15 +7211,51 @@ dependencies = [ [[package]] name = "pallet-recovery" -version = "24.0.0" +version = "28.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8649310b8f00e3b2983331cdb7173d1e66e5eeb3a3d21479e7a65386244f883" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-referenda" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1ee085c026d20ce52d431b8ebe3283f6047fd411953c4cd003239154211c6e5" +checksum = "6c6645c0c09ff8484c6c7ac1546d908202ed555b18169ea956955e4e2d77b210" dependencies = [ + "assert_matches", "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "serde", + "sp-arithmetic", + "sp-io", + "sp-runtime", + "sp-std", +] + +[[package]] +name = "pallet-root-testing" +version = "4.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7bd13ad045bda70f0d2023333d36620bd7b48172646274572332dc9f62fd3c8" +dependencies = [ "frame-support", "frame-system", "parity-scale-codec", "scale-info", + "sp-core", "sp-io", "sp-runtime", "sp-std", @@ -7210,9 +7263,9 @@ dependencies = [ [[package]] name = "pallet-scheduler" -version = "25.0.0" +version = "29.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "148b54bb7364da5b95dd34a1ce5d2d89d6a4a28a07e46019cef27e0e3042605b" +checksum = "bc26a27b77170c18261af7be04a6569e3d0d58788255b9f283ccd089aac37887" dependencies = [ "docify", "frame-benchmarking", @@ -7229,9 +7282,9 @@ dependencies = [ [[package]] name = "pallet-session" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f8482f465a73688a7d58e20dea4b10c9a0425995975b2a43d9ce4fe9a21a491" +checksum = "e23ca2bfcffb5194de952050557bdd1fe9bce18b2bc81e8f8c01c8a3c3c3e5d8" dependencies = [ "frame-support", "frame-system", @@ -7252,9 +7305,9 @@ dependencies = [ [[package]] name = "pallet-session-benchmarking" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e688d5db25f47ede6cc0d6f8a76a08e07bf2d017935f2d9e7c78c40aac53089b" +checksum = "bc660786028d46e03fb0a419d6a15df3fa556db7ce74efebf5a35037b32b4bc4" dependencies = [ "frame-benchmarking", "frame-support", @@ -7270,9 +7323,9 @@ dependencies = [ [[package]] name = "pallet-society" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "587e0dfc3b03d940b1168ac9b0c0d9da26ad35ebe49b198d022d9f2f97ad26fb" +checksum = "33c19c1f5a410c0b03dc1e3245ffc0269e6c9085e6f6a64ee023f7515b6f8d9b" dependencies = [ "frame-benchmarking", "frame-support", @@ -7289,9 +7342,9 @@ dependencies = [ [[package]] name = "pallet-staking" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a1b649d9b95f842258b2e811960bf5e08285180e912303bee6b13c256a466c4" +checksum = "8883bbca2bd6ee41f81382418372ce44fd771ac53591ce9be4018ea43f8c5eda" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -7313,21 +7366,21 @@ dependencies = [ [[package]] name = "pallet-staking-reward-curve" -version = "9.0.0" +version = "11.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d99ab20edb6dec19370dbda0a627739dde9cdfea9b4310e28b8a0a0ea0e83fc" +checksum = "efca5a4a423427d2c83af5fe07ab648c16b91e3782c3cc23316fe0bd96b4c794" dependencies = [ - "proc-macro-crate 1.3.1", + "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] name = "pallet-staking-reward-fn" -version = "15.0.0" +version = "19.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a280ef9dfb602b5f39e448d1c7d5922c154b1aee20e42c0740ffef8e2a58f8d1" +checksum = "e23336e4da87101633f95f9932946564c926ca7f87499654b38923b1579c605e" dependencies = [ "log", "sp-arithmetic", @@ -7335,19 +7388,20 @@ dependencies = [ [[package]] name = "pallet-staking-runtime-api" -version = "10.0.0" +version = "14.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7eb64deb42c5725b257bd2d73fbe64f191e1e5378698f06c15951d43cddd13a5" +checksum = "e27156b772eccb539cb1a1ea1b1b6e98d9c6589e18b913a30f67913fcf67fe7e" dependencies = [ "parity-scale-codec", "sp-api", + "sp-staking", ] [[package]] name = "pallet-state-trie-migration" -version = "25.0.0" +version = "29.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "102e4426ca996a007026ac39eded61f62c4222fef8840d0a1617b5c41cb1c38b" +checksum = "2a48713905a318b0307e523fd3d3ca4b197ce74b2520203ded0d02e8a6c6bbd7" dependencies = [ "frame-benchmarking", "frame-support", @@ -7363,9 +7417,9 @@ dependencies = [ [[package]] name = "pallet-sudo" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "679c265de3a128714d43a7e2edf5ea29f2a39df65e4c44e216c04d6bb5dd5be7" +checksum = "053dae9119d2d828af80e8ac98f497dc27155d6b5d42264dab8fae40f2314c41" dependencies = [ "docify", "frame-benchmarking", @@ -7380,9 +7434,9 @@ dependencies = [ [[package]] name = "pallet-timestamp" -version = "23.0.0" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dac4e66316d53673471420fb887b6a74e2507df169ced62584507ff0fb065c6b" +checksum = "688b89bdd377609b592bd094b304ebca33f4767fe72935465e2fd7db0e797968" dependencies = [ "docify", "frame-benchmarking", @@ -7401,9 +7455,9 @@ dependencies = [ [[package]] name = "pallet-tips" -version = "23.0.0" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a540f30c552ab0dcf32bb378a5f19c9c98dec74647dff93cbe55186aaa6159c" +checksum = "facf64cab7f7a4762c57e5827597b2ca073755de4c9716444cf0847db34836df" dependencies = [ "frame-benchmarking", "frame-support", @@ -7421,9 +7475,9 @@ dependencies = [ [[package]] name = "pallet-transaction-payment" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4cbb78b8499af1d338072950e4aef6acf3cc630afdb8e19b00306e5252d0386" +checksum = "18b4ca7a1af9b1f091900a354a96319c7614d7a32106ba86cb7f0b6f90239065" dependencies = [ "frame-support", "frame-system", @@ -7438,9 +7492,9 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc" -version = "26.0.0" +version = "30.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30a7857973b918e71367acb7c284c829612aa9c91a6ba1fb2985d56fbe224545" +checksum = "ba1486d58f38892df779a7812f28ff962d0b0632b955ea3c348f605caa01ba6d" dependencies = [ "jsonrpsee", "pallet-transaction-payment-rpc-runtime-api", @@ -7455,9 +7509,9 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc-runtime-api" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "402155004abb33b7f2eedfa60ba77fb6f898e62db979a796e013714d18a1c9c2" +checksum = "acdfd7c882439b8198c99ece57b5bf785965545a6fa6d0bb7b56b264df1e437a" dependencies = [ "pallet-transaction-payment", "parity-scale-codec", @@ -7468,10 +7522,11 @@ dependencies = [ [[package]] name = "pallet-treasury" -version = "23.0.0" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9dd64a50b82946d4ccf2178b7f3927ebac562b2ef31cecda53d31f3ff53a57c4" +checksum = "a75cb7498228e1a150fa09ce64acafe7105ff39b75dae1c266ba58b7e3eb225e" dependencies = [ + "docify", "frame-benchmarking", "frame-support", "frame-system", @@ -7480,15 +7535,16 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", + "sp-core", "sp-runtime", "sp-std", ] [[package]] name = "pallet-utility" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06465e88266b5ed015fdb1ad7345f5008a96d8fa9e012e869b6eb49a8069e809" +checksum = "384c1d740c019410f6b40586cc387726c2e3c417c0e3e6f7e4774cd46bc6c1d0" dependencies = [ "frame-benchmarking", "frame-support", @@ -7503,9 +7559,9 @@ dependencies = [ [[package]] name = "pallet-vesting" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1da7d0e09ddc3decc4abe6adca41a24325a458040b1ecdd246143796af2d47b8" +checksum = "55f3ac517a10c14beee86a737b9ea5d592af9ab21cc5354474bc5f7019210358" dependencies = [ "frame-benchmarking", "frame-support", @@ -7517,17 +7573,34 @@ dependencies = [ "sp-std", ] +[[package]] +name = "pallet-whitelist" +version = "27.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de259e3329422bf3eb10b7e966f4b1c5caadcb29cd2d45af3a000cb2d184e60d" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-api", + "sp-runtime", + "sp-std", +] + [[package]] name = "pallet-xcm" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "430a62e82af99a697fabe583b85bf5797ef5d9996b8dec5bc2d195e94b4da3e3" +checksum = "cee3520e03ac679125e8dcaa00ce4afeeb106a9623e79b5acf970d72af7f5d02" dependencies = [ "bounded-collections", "frame-benchmarking", "frame-support", "frame-system", "log", + "pallet-balances", "parity-scale-codec", "scale-info", "serde", @@ -7536,14 +7609,15 @@ dependencies = [ "sp-runtime", "sp-std", "staging-xcm", + "staging-xcm-builder", "staging-xcm-executor", ] [[package]] name = "pallet-xcm-benchmarks" -version = "3.0.0" +version = "7.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23c7213029f113604b5799b6a126239d096427cdb678a377827eaf6928fde182" +checksum = "890bbad7a5752c8d4c3681457bac4e87fafc79cd9dd5b1a94e6f237f93a795a3" dependencies = [ "frame-benchmarking", "frame-support", @@ -7561,15 +7635,14 @@ dependencies = [ [[package]] name = "parachains-common" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63b13d76e1e40c002836b4f12cd771466440d92973f19cd093ff21b79eb12fc9" +checksum = "ceadd4f51620023871ece5eeda64734acd17d84d49b45473d335e900a012fdde" dependencies = [ "cumulus-primitives-core", "cumulus-primitives-utility", "frame-support", "frame-system", - "kusama-runtime-constants", "log", "num-traits", "pallet-asset-tx-payment", @@ -7577,10 +7650,11 @@ dependencies = [ "pallet-authorship", "pallet-balances", "pallet-collator-selection", + "pallet-message-queue", + "pallet-xcm", "parity-scale-codec", "polkadot-core-primitives", "polkadot-primitives", - "polkadot-runtime-constants", "rococo-runtime-constants", "scale-info", "smallvec", @@ -7589,6 +7663,7 @@ dependencies = [ "sp-io", "sp-runtime", "sp-std", + "staging-parachain-info", "staging-xcm", "staging-xcm-builder", "staging-xcm-executor", @@ -7598,11 +7673,11 @@ dependencies = [ [[package]] name = "parity-db" -version = "0.4.8" +version = "0.4.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4890dcb9556136a4ec2b0c51fa4a08c8b733b829506af8fff2e853f3a065985b" +checksum = "592a28a24b09c9dc20ac8afaa6839abc417c720afe42c12e1e4a9d6aa2508d2e" dependencies = [ - "blake2", + "blake2 0.10.6", "crc32fast", "fs2", "hex", @@ -7614,6 +7689,7 @@ dependencies = [ "rand 0.8.5", "siphasher", "snap", + "winapi", ] [[package]] @@ -7637,7 +7713,7 @@ version = "3.6.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "be30eaf4b0a9fba5336683b38de57bb86d179a35862ba6bfcf57625d006bde5b" dependencies = [ - "proc-macro-crate 2.0.2", + "proc-macro-crate 2.0.0", "proc-macro2", "quote", "syn 1.0.109", @@ -7730,15 +7806,6 @@ dependencies = [ "crypto-mac 0.11.1", ] -[[package]] -name = "pbkdf2" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83a0692ec44e4cf1ef28ca317f14f8f07da2d95ec3fa01f86e4467b725e60917" -dependencies = [ - "digest 0.10.7", -] - [[package]] name = "pbkdf2" version = "0.12.2" @@ -7763,15 +7830,6 @@ dependencies = [ "base64 0.13.1", ] -[[package]] -name = "pem-rfc7468" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24d159833a9105500e0398934e205e0773f0b27529557134ecfc51c27646adac" -dependencies = [ - "base64ct", -] - [[package]] name = "percent-encoding" version = "2.3.0" @@ -7808,7 +7866,7 @@ dependencies = [ "pest_meta", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] @@ -7849,7 +7907,7 @@ checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] @@ -7881,24 +7939,14 @@ dependencies = [ "futures-io", ] -[[package]] -name = "pkcs8" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9eca2c590a5f85da82668fa685c09ce2888b9430e83299debf1f34b65fd4a4ba" -dependencies = [ - "der 0.6.1", - "spki 0.6.0", -] - [[package]] name = "pkcs8" version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" dependencies = [ - "der 0.7.6", - "spki 0.7.2", + "der", + "spki", ] [[package]] @@ -7915,12 +7963,14 @@ checksum = "e3d7ddaed09e0eb771a79ab0fd64609ba0afb0a8366421957936ad14cbd13630" [[package]] name = "polkadot-approval-distribution" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea7bdfdad9271565de6ef4c28c4094df9d1da66f037cf9342ec2f7d7fe5fe2fd" +checksum = "98fd276eccca3ada04cb274f4b8c51f669087d8b334c775f1231a9194d5260d0" dependencies = [ + "bitvec", "futures 0.3.28", "futures-timer", + "itertools 0.10.5", "polkadot-node-jaeger", "polkadot-node-metrics", "polkadot-node-network-protocol", @@ -7934,9 +7984,9 @@ dependencies = [ [[package]] name = "polkadot-availability-bitfield-distribution" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "184e9c8cf8dfcb23c828642ee7060d43172425215adcba4e44a33751f1735f69" +checksum = "51c43e54e0cc47dfb4f7c3917a774ccc796524087515b212d9fe109bde71846e" dependencies = [ "always-assert", "futures 0.3.28", @@ -7951,9 +8001,9 @@ dependencies = [ [[package]] name = "polkadot-availability-distribution" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a0af00d0fc4c24b2632b34dc3d9157ef49277dda9e1e6c4b47f5a4efa2afd8e" +checksum = "121ded25722b8505335b05a77f1def84278802ed3f4774c7fe6ab7c961affe06" dependencies = [ "derive_more", "fatality", @@ -7975,9 +8025,9 @@ dependencies = [ [[package]] name = "polkadot-availability-recovery" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6419dffb08bf7b5348a38b569fd4707b4a491fd86326b817bd4d98bb5300e4c4" +checksum = "3902495dbba25e7526168c8f88b26cc0dbb96cfe10813238a650c67b34bf9f31" dependencies = [ "async-trait", "fatality", @@ -7993,20 +8043,23 @@ dependencies = [ "sc-network", "schnellru", "thiserror", + "tokio", "tracing-gum", ] [[package]] name = "polkadot-cli" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00dbc59d9643c82617a722e6fc072f099a613306b0132ec82a7ab31102e40f5b" +checksum = "93cafe0d136732ad69bce9cd82a34a7b1ff0cd2268d84309aeb673622d40a013" dependencies = [ + "cfg-if", "clap", "frame-benchmarking-cli", "futures 0.3.28", "log", "polkadot-node-metrics", + "polkadot-node-primitives", "polkadot-service", "sc-cli", "sc-executor", @@ -8025,9 +8078,9 @@ dependencies = [ [[package]] name = "polkadot-collator-protocol" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3206d593993819a9d74121cd6dbc8ef7c592b55dcd1c4c236fd824355473ee33" +checksum = "a70007b246c3679ee43f11123bda6d715f659f7b6d4134d0fcbe8980e049386b" dependencies = [ "bitvec", "fatality", @@ -8048,9 +8101,9 @@ dependencies = [ [[package]] name = "polkadot-core-primitives" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "209cc9c9f7ed951bb11a2ff2f592e6b5cd79d6f50311e4f702adce0fcc577152" +checksum = "bda2b0f0c580c38f12445a4af10e0a23acf48381b2a95653e0be48ba787e10e5" dependencies = [ "parity-scale-codec", "scale-info", @@ -8061,9 +8114,9 @@ dependencies = [ [[package]] name = "polkadot-dispute-distribution" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ab9353c3566e44664e7ed7dde1868348948663caa2d9cac44ce983fa66e99c6" +checksum = "84a9b173e02d1f600a422269b3b5a1db203d39f436f7db7d7e41ef6dda6f42e0" dependencies = [ "derive_more", "fatality", @@ -8087,9 +8140,9 @@ dependencies = [ [[package]] name = "polkadot-erasure-coding" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "041da63ce9403adc7e070ea47f92e6389013497814edfe7f6112791f052c936d" +checksum = "ff8347b3528fe94e47ec1b818b06bf821010a5f180d0ac5c89138da0d382debc" dependencies = [ "parity-scale-codec", "polkadot-node-primitives", @@ -8102,9 +8155,9 @@ dependencies = [ [[package]] name = "polkadot-gossip-support" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0be3347bce6a38dd689daa20e69d57d282b8a808a4f1c3887470324154194af6" +checksum = "f4de739371a4b5f036848de5c7185dfee88587016d2bb32af07f38fb909b80d8" dependencies = [ "futures 0.3.28", "futures-timer", @@ -8124,9 +8177,9 @@ dependencies = [ [[package]] name = "polkadot-network-bridge" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdd9b1482d62f3c1f7de02432a92dc59b041b9daf1787f5dc6e75f2bc7fa216a" +checksum = "4598c9d00dbc017c0f01e82a7c0740805cc500c3b8946ad0b7945ab4d68dd7ee" dependencies = [ "always-assert", "async-trait", @@ -8148,9 +8201,9 @@ dependencies = [ [[package]] name = "polkadot-node-collation-generation" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28056f91ded86cf2b1bbc1a0168fc62754d77dbb325c81bd3d70b1275917771e" +checksum = "ba987629ab789f529426d6187dbafaa8209f5ee479c645184e4c1e33a59e2135" dependencies = [ "futures 0.3.28", "parity-scale-codec", @@ -8167,16 +8220,17 @@ dependencies = [ [[package]] name = "polkadot-node-core-approval-voting" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "247831a071924a1a195fbb9ed1464d86b7a1d8abd490591dc16cb21dc888e561" +checksum = "b5910fa99def47accbb4505bef91f74614f62347bc0c53c11296d5ce70d8e255" dependencies = [ "bitvec", "derive_more", "futures 0.3.28", "futures-timer", + "itertools 0.10.5", "kvdb", - "merlin 2.0.1", + "merlin 3.0.0", "parity-scale-codec", "polkadot-node-jaeger", "polkadot-node-primitives", @@ -8184,9 +8238,12 @@ dependencies = [ "polkadot-node-subsystem-util", "polkadot-overseer", "polkadot-primitives", + "rand 0.8.5", + "rand_chacha 0.3.1", + "rand_core 0.6.4", "sc-keystore", "schnellru", - "schnorrkel 0.9.1", + "schnorrkel 0.11.4", "sp-application-crypto", "sp-consensus", "sp-consensus-slots", @@ -8197,9 +8254,9 @@ dependencies = [ [[package]] name = "polkadot-node-core-av-store" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa0ae80fb2eeefbffe5ccd39bfbda867cb650e094e6ef0b29aeb9a946d01cbc0" +checksum = "0ab1583533dc82a719607323432c013e01c2a8c971eb7e7703ff5eadd762f4e3" dependencies = [ "bitvec", "futures 0.3.28", @@ -8220,9 +8277,9 @@ dependencies = [ [[package]] name = "polkadot-node-core-backing" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a092859f2bbc5a19bbefda38967ab1843d33e3fd65565ed4e349e5f70bacd3d" +checksum = "d7b5468fa618ccbeb4611b073d2c28b9440b51f4012e69c117e43192f9de8b17" dependencies = [ "bitvec", "fatality", @@ -8240,9 +8297,9 @@ dependencies = [ [[package]] name = "polkadot-node-core-bitfield-signing" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cca2c96551dd71ccf9f29d4d13c2ecb532c50576b45dcf65035aaf7ebda2e029" +checksum = "4975e2ecc81d34605748781e9449a7b7ff956c385b46496005257a1a7dd56f0d" dependencies = [ "futures 0.3.28", "polkadot-node-subsystem", @@ -8256,9 +8313,9 @@ dependencies = [ [[package]] name = "polkadot-node-core-candidate-validation" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c66e65af80e7afa46b6a8b0bfe30f409e6126132df0a86db9f370eaa9f46591e" +checksum = "bcfd720b86c1ddf6616cf083a2cb273147687521c1d13a7f3c991b1d5ae03444" dependencies = [ "async-trait", "futures 0.3.28", @@ -8278,25 +8335,24 @@ dependencies = [ [[package]] name = "polkadot-node-core-chain-api" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "468c69dee4547381abbeb7fdf71be89d0e30381d20625fe3dffea7b3d3d898e2" +checksum = "4a9f00bd39f433a2e8281524529853a3be54970e799a451e2c14fc5b75cf226f" dependencies = [ "futures 0.3.28", "polkadot-node-metrics", "polkadot-node-subsystem", - "polkadot-primitives", + "polkadot-node-subsystem-types", "sc-client-api", "sc-consensus-babe", - "sp-blockchain", "tracing-gum", ] [[package]] name = "polkadot-node-core-chain-selection" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "580d3181d444ac8bde15df731eb564cb71fb103b624e6feebb737e4fcddbf27f" +checksum = "ea28475a96dfb6419432314d8021780e5c5b0f50a5525fd332e8b2a947a2deb5" dependencies = [ "futures 0.3.28", "futures-timer", @@ -8312,9 +8368,9 @@ dependencies = [ [[package]] name = "polkadot-node-core-dispute-coordinator" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6a97ead8c24602c20b760ef29ef5b4df2bad8c23824ddb7abee557d3437e230" +checksum = "5ad9cfb3e775dc4c611a79e294549fe4b244052ddaacf14133380e793c25a99f" dependencies = [ "fatality", "futures 0.3.28", @@ -8332,9 +8388,9 @@ dependencies = [ [[package]] name = "polkadot-node-core-parachains-inherent" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aac23ef33f961a51902e73c18cd6fd4732b194bee6e4da2ebd686d94a6f9a713" +checksum = "eb2535ef374a218b1e9d05b98a903edbdddf4eea47f9e137fcc09c8e1bc199dd" dependencies = [ "async-trait", "futures 0.3.28", @@ -8350,9 +8406,9 @@ dependencies = [ [[package]] name = "polkadot-node-core-prospective-parachains" -version = "2.0.0" +version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3d41303c2be017bc2d5c7cc03e9e08afca5981ed7b99b6a71b04052b43b2b13" +checksum = "15a8876cc0aa627190f1d41c01061a7acee9621703501d9a60118d35e81579f9" dependencies = [ "bitvec", "fatality", @@ -8368,9 +8424,9 @@ dependencies = [ [[package]] name = "polkadot-node-core-provisioner" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0da55e3e92dfd6807dc2b6beaca4152ea2b29e61690bedc2fba4270fd52c5a7b" +checksum = "25c88b17b93bf410a72bfb4543b1ae01bb0d33fd6cba9af1f0e74c4ef2b906ad" dependencies = [ "bitvec", "fatality", @@ -8386,13 +8442,17 @@ dependencies = [ [[package]] name = "polkadot-node-core-pvf" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "200ecf92906c3836c1b95cb0be92f30dc37b8186cdfe25dc6f0afc1c2d860a65" +checksum = "c80f2810b2eb843f3282b11e7ce1624866b6dd1ee6a95541b5882b5df3f36f25" dependencies = [ "always-assert", + "array-bytes 6.1.0", + "blake3", + "cfg-if", "futures 0.3.28", "futures-timer", + "is_executable", "libc", "parity-scale-codec", "pin-project", @@ -8400,6 +8460,7 @@ dependencies = [ "polkadot-node-core-pvf-common", "polkadot-node-metrics", "polkadot-node-primitives", + "polkadot-node-subsystem", "polkadot-parachain-primitives", "polkadot-primitives", "rand 0.8.5", @@ -8407,17 +8468,17 @@ dependencies = [ "sp-core", "sp-maybe-compressed-blob", "sp-wasm-interface", - "substrate-build-script-utils", "tempfile", + "thiserror", "tokio", "tracing-gum", ] [[package]] name = "polkadot-node-core-pvf-checker" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1372aee1962c37cc915a88ae8780bbdce50689db88afd9ce8369b2c394529a2b" +checksum = "14d8ddb21cb3ad1868967b116fbf289610880cb95313b2798762cdd8653d36b7" dependencies = [ "futures 0.3.28", "polkadot-node-primitives", @@ -8432,10 +8493,11 @@ dependencies = [ [[package]] name = "polkadot-node-core-pvf-common" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78c062659543cea9eb0ccb934e02f284dd71cbbc90fbbcde931795f9a1ff4489" +checksum = "80bbf311b112a8552e89e5be55b0305d86328ba04528e47d3203cd27751405bc" dependencies = [ + "cfg-if", "cpu-time", "futures 0.3.28", "landlock", @@ -8446,19 +8508,20 @@ dependencies = [ "sc-executor", "sc-executor-common", "sc-executor-wasmtime", + "seccompiler", "sp-core", "sp-externalities", "sp-io", "sp-tracing", - "tokio", + "thiserror", "tracing-gum", ] [[package]] name = "polkadot-node-core-runtime-api" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "436b785b8f5c988cd9eb6147ff60714df4e4604db77a41200fef554f970da4e3" +checksum = "17345f76b7ebcf2f1e1be5411a6420971ef60d69070f115e459b2f017f91bcb5" dependencies = [ "futures 0.3.28", "polkadot-node-metrics", @@ -8472,9 +8535,9 @@ dependencies = [ [[package]] name = "polkadot-node-jaeger" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e67dbaac90484bad44e91812f8bd698cc87587728e570e33ce77c90a7c3cce8" +checksum = "4b099624af4597bac5d1617a3cab057785ee47e657de7ad078957bfa397d82c4" dependencies = [ "lazy_static", "log", @@ -8491,9 +8554,9 @@ dependencies = [ [[package]] name = "polkadot-node-metrics" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b40316be4e77cc63d4fa95236ef4b188b4eb7304918ce6ca5e10aeb568a21bd" +checksum = "b2b5b00a9646875f22ab45e61ede04f623a3fbbc03bae52263b3d558c964bc32" dependencies = [ "bs58 0.5.0", "futures 0.3.28", @@ -8511,9 +8574,9 @@ dependencies = [ [[package]] name = "polkadot-node-network-protocol" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d872b0f84734ef355d73e4492fc59c3e755d7232cd465bf0ed68679fb3291868" +checksum = "e420ba9220abaa468a393ff2834b7c2b4d7d87b6d903d9046dfd682c97d35d4c" dependencies = [ "async-channel", "async-trait", @@ -8536,16 +8599,17 @@ dependencies = [ [[package]] name = "polkadot-node-primitives" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b18e1dfcc68fd13a87fb2e06d6c8ec3cb83d6914140b9de3e191cf495089d63e" +checksum = "366d18f1498426975c610246063149ad84788eb1e924cab6ee44a4d8958ecf61" dependencies = [ + "bitvec", "bounded-vec", "futures 0.3.28", "parity-scale-codec", "polkadot-parachain-primitives", "polkadot-primitives", - "schnorrkel 0.9.1", + "schnorrkel 0.11.4", "serde", "sp-application-crypto", "sp-consensus-babe", @@ -8559,9 +8623,9 @@ dependencies = [ [[package]] name = "polkadot-node-subsystem" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dcb0aa59a2574322416075f586779bdfe6d75044503b134fb553038a6444de78" +checksum = "831cf07bf6588d7d8ab872f8f214b4b24b2c4243faf8028534f8a11a3f03c466" dependencies = [ "polkadot-node-jaeger", "polkadot-node-subsystem-types", @@ -8570,11 +8634,12 @@ dependencies = [ [[package]] name = "polkadot-node-subsystem-types" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "306c61acfa9ba62eb36c238236321e2dc2ffe51698555b361a52e5f2f3c1470b" +checksum = "bd132afdfcdf2e30f7924c9561bbc1208b0838ab9c2275bf0ef32525f63b8bd0" dependencies = [ "async-trait", + "bitvec", "derive_more", "futures 0.3.28", "orchestra", @@ -8589,16 +8654,18 @@ dependencies = [ "smallvec", "sp-api", "sp-authority-discovery", + "sp-blockchain", "sp-consensus-babe", + "sp-runtime", "substrate-prometheus-endpoint", "thiserror", ] [[package]] name = "polkadot-node-subsystem-util" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f130f93ebf9e4536c1965b3db64d891665195cf17e848d6404a59159e81780b9" +checksum = "d32c2f2027689777bd61681d769ed5ec726144905c4e3cb16c5f8a4edb55250a" dependencies = [ "async-trait", "derive_more", @@ -8609,7 +8676,7 @@ dependencies = [ "kvdb", "parity-db", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.1", "pin-project", "polkadot-node-jaeger", "polkadot-node-metrics", @@ -8632,9 +8699,9 @@ dependencies = [ [[package]] name = "polkadot-overseer" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2a68991609f78f18243c24b53cbb895147e9001967ef64ab5dbdf60e1ec5aef" +checksum = "9aa0b71f50f0be1959bcb10a46105ca66b9c6868d549385a247750e5b7a45c77" dependencies = [ "async-trait", "futures 0.3.28", @@ -8647,7 +8714,6 @@ dependencies = [ "polkadot-node-subsystem-types", "polkadot-primitives", "sc-client-api", - "schnellru", "sp-api", "sp-core", "tikv-jemalloc-ctl", @@ -8656,13 +8722,12 @@ dependencies = [ [[package]] name = "polkadot-parachain-primitives" -version = "2.0.0" +version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "864de6d7b7ed9c955aa1da6c53585ad75c73618307b569447dd0559f8f9baef9" +checksum = "9b37c55955147479e7b2f3c2e5385db4846ac3e3b997cd4a4ad52344524b5447" dependencies = [ "bounded-collections", "derive_more", - "frame-support", "parity-scale-codec", "polkadot-core-primitives", "scale-info", @@ -8670,13 +8735,14 @@ dependencies = [ "sp-core", "sp-runtime", "sp-std", + "sp-weights", ] [[package]] name = "polkadot-primitives" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9de3d7ae1191401fe2476a69dece0853011d2c9fdcb7eb194cdead641f395abb" +checksum = "8aefd230a654f5b2aee18ebbd9c081835def0e1898ee6c018501dd77c18f5929" dependencies = [ "bitvec", "hex-literal", @@ -8701,9 +8767,9 @@ dependencies = [ [[package]] name = "polkadot-rpc" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2096e839cf2abebe41bfb4b13b63cc97b94f3d193cfa7d45a834c7c7b7bc9fe2" +checksum = "382eada9005c73375778e1dca58116e0660431cf90989fe0dde54ebe1f621a1e" dependencies = [ "jsonrpsee", "mmr-rpc", @@ -8719,6 +8785,7 @@ dependencies = [ "sc-consensus-grandpa", "sc-consensus-grandpa-rpc", "sc-rpc", + "sc-rpc-spec-v2", "sc-sync-state-rpc", "sc-transaction-pool-api", "sp-api", @@ -8734,9 +8801,9 @@ dependencies = [ [[package]] name = "polkadot-runtime-common" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac922a958e3e1435d7adffe49c1528b6396baf668ab45f635b79bff750053543" +checksum = "4641a850b7415a42e56bd262aba243ed77a9280cb2b825a427c425bdc8961d70" dependencies = [ "bitvec", "frame-benchmarking", @@ -8746,11 +8813,14 @@ dependencies = [ "impl-trait-for-tuples", "libsecp256k1", "log", + "pallet-asset-rate", "pallet-authorship", "pallet-babe", "pallet-balances", + "pallet-broker", "pallet-election-provider-multi-phase", "pallet-fast-unstake", + "pallet-identity", "pallet-session", "pallet-staking", "pallet-staking-reward-fn", @@ -8758,6 +8828,7 @@ dependencies = [ "pallet-transaction-payment", "pallet-treasury", "pallet-vesting", + "pallet-xcm-benchmarks", "parity-scale-codec", "polkadot-primitives", "polkadot-runtime-parachains", @@ -8776,14 +8847,15 @@ dependencies = [ "sp-staking", "sp-std", "staging-xcm", + "staging-xcm-builder", + "staging-xcm-executor", "static_assertions", ] [[package]] name = "polkadot-runtime-constants" -version = "3.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d4a7abfe0dff335456790ac8edc342737dffbd67013a38b7bec2f6b523cc175" +version = "1.0.0" +source = "git+https://github.com/encointer/runtimes.git?branch=ab/upgrade-polkadot-v1.6.0#437115e766f49b884aa1b5633dc83893b4a76fd1" dependencies = [ "frame-support", "polkadot-primitives", @@ -8792,13 +8864,14 @@ dependencies = [ "sp-core", "sp-runtime", "sp-weights", + "staging-xcm-builder", ] [[package]] name = "polkadot-runtime-metrics" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93dbff21f9ce253f4cd976a972c5b4b18150cecb6fdae195a975e51cf3c797df" +checksum = "4ac3c6ee03f38556274b26049c51c5c7095abfd4ebfd11cd492918a4344f2851" dependencies = [ "bs58 0.5.0", "frame-benchmarking", @@ -8810,9 +8883,9 @@ dependencies = [ [[package]] name = "polkadot-runtime-parachains" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ffa4bade116bef54be48bb1ead3917d84478f43184d5f9ae001ec333d7d7d66" +checksum = "6d253ef2952097398d98ed12729e47f9328bcd1baa92c3acc1524a4baca7d1ac" dependencies = [ "bitflags 1.3.2", "bitvec", @@ -8826,6 +8899,7 @@ dependencies = [ "pallet-authorship", "pallet-babe", "pallet-balances", + "pallet-broker", "pallet-message-queue", "pallet-session", "pallet-staking", @@ -8843,6 +8917,7 @@ dependencies = [ "serde", "sp-api", "sp-application-crypto", + "sp-arithmetic", "sp-core", "sp-inherents", "sp-io", @@ -8858,9 +8933,9 @@ dependencies = [ [[package]] name = "polkadot-service" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b9ddbc0f038905684bd60561307fdd366c26d8c322b015f17eadc3344771dd9" +checksum = "d75bf984471c2608905176b62726b3552bbfdc3e04ebdc7fe75e5179ff215588" dependencies = [ "async-trait", "frame-benchmarking", @@ -8882,6 +8957,7 @@ dependencies = [ "pallet-transaction-payment-rpc-runtime-api", "parity-db", "parity-scale-codec", + "parking_lot 0.12.1", "polkadot-approval-distribution", "polkadot-availability-bitfield-distribution", "polkadot-availability-distribution", @@ -8975,9 +9051,9 @@ dependencies = [ [[package]] name = "polkadot-statement-distribution" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a0b9b25860ce4f1ae4c6018835225287d87f63c77de9b525a79722d2f142d06" +checksum = "4b82b48ff9204ea663ccccde78aefa8a524958aadff5c84a4f1fd773c291057d" dependencies = [ "arrayvec 0.7.4", "bitvec", @@ -8989,7 +9065,6 @@ dependencies = [ "polkadot-node-network-protocol", "polkadot-node-primitives", "polkadot-node-subsystem", - "polkadot-node-subsystem-types", "polkadot-node-subsystem-util", "polkadot-primitives", "sp-keystore", @@ -9000,9 +9075,9 @@ dependencies = [ [[package]] name = "polkadot-statement-table" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "857b4c83022e353c48f38e4db15542e5da4d778e81058e533c44d559c72b5a51" +checksum = "478dea03265eb2465010dae149616e4f28fe858e103671b1a96dc19e9e388c8f" dependencies = [ "parity-scale-codec", "polkadot-primitives", @@ -9034,7 +9109,7 @@ dependencies = [ "cfg-if", "concurrent-queue", "pin-project-lite 0.2.13", - "rustix 0.38.21", + "rustix 0.38.31", "tracing", "windows-sys 0.48.0", ] @@ -9156,7 +9231,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c64d9ba0963cdcea2e1b2230fbae2bab30eb25a174be395c41e764bfb65dd62" dependencies = [ "proc-macro2", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] @@ -9200,14 +9275,22 @@ dependencies = [ [[package]] name = "proc-macro-crate" -version = "2.0.2" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b00f26d3400549137f92511a46ac1cd8ce37cb5598a96d382381458b992a5d24" +checksum = "7e8366a6159044a37876a2b9817124296703c586a5c92e2c53751fa06d8d43e8" dependencies = [ - "toml_datetime", "toml_edit 0.20.2", ] +[[package]] +name = "proc-macro-crate" +version = "3.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284" +dependencies = [ + "toml_edit 0.21.1", +] + [[package]] name = "proc-macro-error" version = "1.0.4" @@ -9240,13 +9323,13 @@ checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068" [[package]] name = "proc-macro-warning" -version = "0.4.2" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d1eaa7fa0aa1929ffdf7eeb6eac234dde6268914a14ad44d23521ab6a9b258e" +checksum = "834da187cfe638ae8abb0203f0b33e5ccdb02a28e7199f2f47b3e2754f50edca" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] @@ -9412,14 +9495,14 @@ dependencies = [ "thiserror", "tinyvec", "tracing", - "webpki 0.22.0", + "webpki", ] [[package]] name = "quote" -version = "1.0.33" +version = "1.0.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae" +checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef" dependencies = [ "proc-macro2", ] @@ -9492,6 +9575,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" @@ -9538,19 +9631,6 @@ dependencies = [ "num_cpus", ] -[[package]] -name = "rcgen" -version = "0.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6413f3de1edee53342e6138e75b56d32e7bc6e332b3bd62d497b1929d4cfbcdd" -dependencies = [ - "pem", - "ring 0.16.20", - "time", - "x509-parser 0.13.2", - "yasna", -] - [[package]] name = "rcgen" version = "0.10.0" @@ -9622,7 +9702,7 @@ checksum = "8d2275aab483050ab2a7364c1a46604865ee7d6906684e08db0f090acf74f9e7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] @@ -9679,17 +9759,6 @@ dependencies = [ "quick-error", ] -[[package]] -name = "rfc6979" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7743f17af12fa0b03b803ba12cd6a8d9483a587e89c69445e3909655c0b9fabb" -dependencies = [ - "crypto-bigint 0.4.9", - "hmac 0.12.1", - "zeroize", -] - [[package]] name = "rfc6979" version = "0.4.0" @@ -9697,7 +9766,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2" dependencies = [ "hmac 0.12.1", - "subtle", + "subtle 2.4.1", ] [[package]] @@ -9729,6 +9798,15 @@ dependencies = [ "windows-sys 0.48.0", ] +[[package]] +name = "ripemd" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd124222d17ad93a644ed9d011a40f4fb64aa54275c08cc216524a9ea82fb09f" +dependencies = [ + "digest 0.10.7", +] + [[package]] name = "rocksdb" version = "0.21.0" @@ -9741,9 +9819,9 @@ dependencies = [ [[package]] name = "rococo-runtime" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0715aaed64da03af8ce68af387dd02e65524351c212afd5384d46615662b3c2" +checksum = "0e5ae118c3f3189a376703a4ca8569eb51ce1b121bc6b571c051b68c31e10a16" dependencies = [ "binary-merkle-tree", "frame-benchmarking", @@ -9755,6 +9833,7 @@ dependencies = [ "frame-try-runtime", "hex-literal", "log", + "pallet-asset-rate", "pallet-authority-discovery", "pallet-authorship", "pallet-babe", @@ -9764,6 +9843,7 @@ dependencies = [ "pallet-bounties", "pallet-child-bounties", "pallet-collective", + "pallet-conviction-voting", "pallet-democracy", "pallet-elections-phragmen", "pallet-grandpa", @@ -9778,7 +9858,10 @@ dependencies = [ "pallet-offences", "pallet-preimage", "pallet-proxy", + "pallet-ranked-collective", "pallet-recovery", + "pallet-referenda", + "pallet-root-testing", "pallet-scheduler", "pallet-session", "pallet-society", @@ -9792,6 +9875,7 @@ dependencies = [ "pallet-treasury", "pallet-utility", "pallet-vesting", + "pallet-whitelist", "pallet-xcm", "pallet-xcm-benchmarks", "parity-scale-codec", @@ -9805,6 +9889,7 @@ dependencies = [ "serde_derive", "smallvec", "sp-api", + "sp-arithmetic", "sp-authority-discovery", "sp-block-builder", "sp-consensus-babe", @@ -9831,9 +9916,9 @@ dependencies = [ [[package]] name = "rococo-runtime-constants" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fef0b660c7a725559c6be97a47511be63561c137da105ee13b07d9c7a462e43" +checksum = "3b5b507493a19b5061eb2860c394847261216c7ea7f8f62ba2cb02e55c27d611" dependencies = [ "frame-support", "polkadot-primitives", @@ -9842,6 +9927,8 @@ dependencies = [ "sp-core", "sp-runtime", "sp-weights", + "staging-xcm", + "staging-xcm-builder", ] [[package]] @@ -9851,19 +9938,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6678cf63ab3491898c0d021b493c94c9b221d91295294a2a5746eacbe5928322" dependencies = [ "libc", - "rtoolbox", - "winapi", -] - -[[package]] -name = "rtcp" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1919efd6d4a6a85d13388f9487549bb8e359f17198cc03ffd72f79b553873691" -dependencies = [ - "bytes", - "thiserror", - "webrtc-util", + "rtoolbox", + "winapi", ] [[package]] @@ -9891,34 +9967,6 @@ dependencies = [ "winapi", ] -[[package]] -name = "rtp" -version = "0.6.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2a095411ff00eed7b12e4c6a118ba984d113e1079582570d56a5ee723f11f80" -dependencies = [ - "async-trait", - "bytes", - "rand 0.8.5", - "serde", - "thiserror", - "webrtc-util", -] - -[[package]] -name = "runtime-common" -version = "0.1.0" -dependencies = [ - "frame-support", - "frame-system", - "kusama-runtime-constants", - "pallet-balances", - "pallet-treasury", - "polkadot-core-primitives", - "smallvec", - "sp-runtime", -] - [[package]] name = "rustc-demangle" version = "0.1.23" @@ -9994,28 +10042,15 @@ dependencies = [ [[package]] name = "rustix" -version = "0.38.21" +version = "0.38.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b426b0506e5d50a7d8dafcf2e81471400deb602392c7dd110815afb4eaf02a3" +checksum = "6ea3e1a662af26cd7a3ba09c0297a31af215563ecf42817c98df621387f4e949" dependencies = [ "bitflags 2.4.1", "errno", "libc", - "linux-raw-sys 0.4.10", - "windows-sys 0.48.0", -] - -[[package]] -name = "rustls" -version = "0.19.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35edb675feee39aec9c99fa5ff985081995a06d594114ae14cbe797ad7b7a6d7" -dependencies = [ - "base64 0.13.1", - "log", - "ring 0.16.20", - "sct 0.6.1", - "webpki 0.21.4", + "linux-raw-sys 0.4.13", + "windows-sys 0.52.0", ] [[package]] @@ -10026,8 +10061,8 @@ checksum = "fff78fc74d175294f4e83b28343315ffcfb114b156f0185e9741cb5570f50e2f" dependencies = [ "log", "ring 0.16.20", - "sct 0.7.0", - "webpki 0.22.0", + "sct", + "webpki", ] [[package]] @@ -10039,7 +10074,7 @@ dependencies = [ "log", "ring 0.17.3", "rustls-webpki 0.101.7", - "sct 0.7.0", + "sct", ] [[package]] @@ -10146,9 +10181,9 @@ dependencies = [ [[package]] name = "sc-allocator" -version = "19.0.0" +version = "23.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2bd6e58990dcb1eae76db49c456ded9a7906ee194857cf1dfb00da8bbc8cf73d" +checksum = "43b05714bc70605d5f8983612d1643d875cd4782ef53a8720907a0eb75070cba" dependencies = [ "log", "sp-core", @@ -10158,9 +10193,9 @@ dependencies = [ [[package]] name = "sc-authority-discovery" -version = "0.30.0" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb85aa27916c2262aef532e6fc12d9654ce4717689cd25c75a88c5cc36609d18" +checksum = "a1c23040352415cdcc22203d3b18e56f3516e51865f106f8bbf7efa95b411a59" dependencies = [ "async-trait", "futures 0.3.28", @@ -10168,7 +10203,8 @@ dependencies = [ "ip_network", "libp2p", "log", - "multihash", + "multihash 0.18.1", + "multihash-codetable", "parity-scale-codec", "prost", "prost-build", @@ -10187,16 +10223,15 @@ dependencies = [ [[package]] name = "sc-basic-authorship" -version = "0.30.0" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0f802a95cece137daa3a0980f41a8e9265aa65d1b078f8d771f7d2f41e04266" +checksum = "c016e38155386e23649a4a995ea67c55a1fe25a54c7cc7509954d454ee75eb3b" dependencies = [ "futures 0.3.28", "futures-timer", "log", "parity-scale-codec", "sc-block-builder", - "sc-client-api", "sc-proposer-metrics", "sc-telemetry", "sc-transaction-pool-api", @@ -10211,27 +10246,31 @@ dependencies = [ [[package]] name = "sc-block-builder" -version = "0.29.0" +version = "0.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4653cc3665319f76451f651bc5e3eb84965802293daeaf2def5bfe9c1310171b" +checksum = "656b85de8aad8dd758f2e5f250f300e4711f294f238c9299064fbd624cb263f7" dependencies = [ "parity-scale-codec", - "sc-client-api", "sp-api", "sp-block-builder", "sp-blockchain", "sp-core", "sp-inherents", "sp-runtime", + "sp-trie", ] [[package]] name = "sc-chain-spec" -version = "23.0.0" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5fae1616d342e570fb4770c9f1a73ab8e1aecb9c5b71020404f8e45db458260" +checksum = "f7f6a6926973e084fe9b23ffee9784cd41d84ea0627c605891542661bd9ff958" dependencies = [ + "array-bytes 6.1.0", + "docify", + "log", "memmap2", + "parity-scale-codec", "sc-chain-spec-derive", "sc-client-api", "sc-executor", @@ -10241,33 +10280,37 @@ dependencies = [ "serde_json", "sp-blockchain", "sp-core", + "sp-genesis-builder", + "sp-io", "sp-runtime", "sp-state-machine", ] [[package]] name = "sc-chain-spec-derive" -version = "9.0.0" +version = "11.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88a074891d17c03c58b1314c9add361a5a7fb28d4d3addd7a32dca8b119bd877" +checksum = "f2e80fbdaea194762d4b4b0eec389037c25ad102676203b42d684774ae3019b8" dependencies = [ - "proc-macro-crate 1.3.1", + "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] name = "sc-cli" -version = "0.32.0" +version = "0.36.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc423e21a22adc4f6056ccb5e19fca9ddc6cce1a49cd9aa44c53d6b2338fbeb3" +checksum = "9819b656041094ca4e97402be145c2bcf3f47d00d854708b25ecd3211eafcd62" dependencies = [ - "array-bytes", + "array-bytes 6.1.0", + "bip39", "chrono", "clap", "fdlimit", "futures 0.3.28", + "itertools 0.10.5", "libp2p-identity", "log", "names", @@ -10278,6 +10321,7 @@ dependencies = [ "sc-client-api", "sc-client-db", "sc-keystore", + "sc-mixnet", "sc-network", "sc-service", "sc-telemetry", @@ -10293,15 +10337,14 @@ dependencies = [ "sp-runtime", "sp-version", "thiserror", - "tiny-bip39", "tokio", ] [[package]] name = "sc-client-api" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d49efb455b1b276557ba3cac01c2e42811148cc73149858296e4ae96707dc70e" +checksum = "af05565a0f6467ebe0b430f3a44524fecee9e4aff621647ea5eab8833f775b6f" dependencies = [ "fnv", "futures 0.3.28", @@ -10327,9 +10370,9 @@ dependencies = [ [[package]] name = "sc-client-db" -version = "0.31.0" +version = "0.35.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1062af3e43f09e0080714382ee3e7dd850037908938323eefdcd4f4b61bdd6b" +checksum = "6db9fbd18eb275120fdf2e9558a5006a69022405abb9c260c91d218ddb05db39" dependencies = [ "hash-db", "kvdb", @@ -10354,9 +10397,9 @@ dependencies = [ [[package]] name = "sc-consensus" -version = "0.29.0" +version = "0.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5f8da1ef0f036209b80d8bde5c8990ea1a86241532d84b5fd15f5e721da849c" +checksum = "3b0409758bb01f2e975b01c7cb2203aa27746e9796a483b18c57123e6e78fae5" dependencies = [ "async-trait", "futures 0.3.28", @@ -10380,9 +10423,9 @@ dependencies = [ [[package]] name = "sc-consensus-aura" -version = "0.30.0" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cbb98be43737b79517f2de34b5185a58238dc8f69e84ddf7e4730bc0e2e2e65" +checksum = "9cc4ebc06768af3e5457a5780aa6dbebeefe27131e70d11b62cfc8136e41747a" dependencies = [ "async-trait", "futures 0.3.28", @@ -10410,9 +10453,9 @@ dependencies = [ [[package]] name = "sc-consensus-babe" -version = "0.30.0" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e21750ec5f62320492d14c59cf47b4d84a1306e8e54e4674d5c6bc3b8059ed1" +checksum = "0a7d698d9d2bde7e0b80e7ada57ede9255a6382da79d2ad9a4e9e70805c40e74" dependencies = [ "async-trait", "fork-tree", @@ -10446,9 +10489,9 @@ dependencies = [ [[package]] name = "sc-consensus-babe-rpc" -version = "0.30.0" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba36543e3ec8fe5c03a2478f5f1382e5b63bfa4c86d8418631d2db7c94960a8b" +checksum = "f2f55379d0ce6f87026f896f03bce33862b57f77a46fbb4fb7e974182d20d458" dependencies = [ "futures 0.3.28", "jsonrpsee", @@ -10469,11 +10512,11 @@ dependencies = [ [[package]] name = "sc-consensus-beefy" -version = "9.0.0" +version = "13.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1be80ee14b37a706e7a8b701119cae4e367f07e19a0b8cd3a5e4b979b0bf04dd" +checksum = "3664a3cddc718187e058f67d9075ef9078c8f8347c0408304ead8565d4ba8164" dependencies = [ - "array-bytes", + "array-bytes 6.1.0", "async-channel", "async-trait", "fnv", @@ -10499,14 +10542,15 @@ dependencies = [ "sp-runtime", "substrate-prometheus-endpoint", "thiserror", + "tokio", "wasm-timer", ] [[package]] name = "sc-consensus-beefy-rpc" -version = "9.0.0" +version = "13.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0357a9c56f40f76f74b5f167f73984297d26d1cc9159474f8b16b8d3eacab2c" +checksum = "9b4e3602efe1e206032164772c24365642e3dab807c5f8db0af166f6ef63af3e" dependencies = [ "futures 0.3.28", "jsonrpsee", @@ -10524,9 +10568,9 @@ dependencies = [ [[package]] name = "sc-consensus-epochs" -version = "0.29.0" +version = "0.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06fee81cdd6b24f8423db4fc660d1cd97fa0d3503edbede59bf1d53635ac3815" +checksum = "0d0befddf2ca16d5f222968fceeab8625532f2d49303fafd17ae2e5d0e939da6" dependencies = [ "fork-tree", "parity-scale-codec", @@ -10538,12 +10582,12 @@ dependencies = [ [[package]] name = "sc-consensus-grandpa" -version = "0.15.0" +version = "0.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98285bbed76ba058f3c9f4111471208cd4c246d2ca7b52b7fbea15afdbb40ca5" +checksum = "a824457a3384e7bc19d7ee587dffa5b646deb81a2351be0dd075c2110a3d677a" dependencies = [ "ahash 0.8.3", - "array-bytes", + "array-bytes 6.1.0", "async-trait", "dyn-clone", "finality-grandpa", @@ -10561,6 +10605,7 @@ dependencies = [ "sc-network", "sc-network-common", "sc-network-gossip", + "sc-network-sync", "sc-telemetry", "sc-transaction-pool-api", "sc-utils", @@ -10580,9 +10625,9 @@ dependencies = [ [[package]] name = "sc-consensus-grandpa-rpc" -version = "0.15.0" +version = "0.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "451a6a65656ab70919b0bba167f03ae1c0605c442f04369bc159e7c08772f3a0" +checksum = "694328880bf11fce67f5e066d7884dbdf1f2a41c42a7dfce9b0a6bc6b90448a1" dependencies = [ "finality-grandpa", "futures 0.3.28", @@ -10601,9 +10646,9 @@ dependencies = [ [[package]] name = "sc-consensus-slots" -version = "0.29.0" +version = "0.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0a232d18eb53288775eaeb782cad70ca75815cd10e6212352e6e53cc3961931" +checksum = "6649665fcf91d89c16bfb08e9326baf6547e5fe719d6438197434e5b642d716b" dependencies = [ "async-trait", "futures 0.3.28", @@ -10625,9 +10670,9 @@ dependencies = [ [[package]] name = "sc-executor" -version = "0.28.0" +version = "0.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cfeaa8dc2a70ed5820667d3251266ed156f38d8062c2f976aa7c618411f1776" +checksum = "3129f8af1f8aa5b05829ffec942feff61163054a536704ba48fdcc2276f6042a" dependencies = [ "parity-scale-codec", "parking_lot 0.12.1", @@ -10648,9 +10693,9 @@ dependencies = [ [[package]] name = "sc-executor-common" -version = "0.25.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d404519f2a636d5977b1ac16c90aeb4129fe4609a5b284960a2dcb005c08da6" +checksum = "0285a4a14c0d2c1d04380ff83cddd79181ded510c605d36804cb9c6eb3bbf2ae" dependencies = [ "sc-allocator", "sp-maybe-compressed-blob", @@ -10661,14 +10706,15 @@ dependencies = [ [[package]] name = "sc-executor-wasmtime" -version = "0.25.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a82515a0cb74a2acb58f6ced20fae56eeb87ba4d813e60e46cf190a53d44c931" +checksum = "5c2ba6ea0e68400caf4847fbcfca6123952b05a817e06f024e9cbafa665ac9d8" dependencies = [ "anyhow", "cfg-if", "libc", "log", + "parking_lot 0.12.1", "rustix 0.36.14", "sc-allocator", "sc-executor-common", @@ -10679,9 +10725,9 @@ dependencies = [ [[package]] name = "sc-informant" -version = "0.29.0" +version = "0.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "233ece6736217208ffac94f84de2d15465f80f676f881dacd0a9b3411b476951" +checksum = "7e07d2dde727c30974767aed4cddd241447c0a800b702662b529dd2e32a10db1" dependencies = [ "ansi_term", "futures 0.3.28", @@ -10690,17 +10736,18 @@ dependencies = [ "sc-client-api", "sc-network", "sc-network-common", + "sc-network-sync", "sp-blockchain", "sp-runtime", ] [[package]] name = "sc-keystore" -version = "21.0.0" +version = "25.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c15cc8b79eb0832cac48fde41e9ecd011df5d57dad7608f2b89fe721e97012c" +checksum = "93acb7f7c6e5e4be067e78b782a35d1a6d34dafcd955975a1aec05cab9dbf8fe" dependencies = [ - "array-bytes", + "array-bytes 6.1.0", "parking_lot 0.12.1", "serde_json", "sp-application-crypto", @@ -10709,13 +10756,43 @@ dependencies = [ "thiserror", ] +[[package]] +name = "sc-mixnet" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cac7d7145c712c4a8b184b3979fe1a154c200ebb1b9f11f1e4e39db97a389f8" +dependencies = [ + "array-bytes 4.2.0", + "arrayvec 0.7.4", + "blake2 0.10.6", + "bytes", + "futures 0.3.28", + "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.30.0" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3edad0e7930c2572d6920dc257bc03af6f40ba272bc45602edd0a045d94e5e59" +checksum = "7f2f49eccabc1de61ff976a184f5380a230f07baa5cb075a31c8ec9459fcd076" dependencies = [ - "array-bytes", + "array-bytes 6.1.0", "async-channel", "async-trait", "asynchronous-codec", @@ -10746,6 +10823,8 @@ dependencies = [ "sp-runtime", "substrate-prometheus-endpoint", "thiserror", + "tokio", + "tokio-stream", "unsigned-varint", "wasm-timer", "zeroize", @@ -10753,9 +10832,9 @@ dependencies = [ [[package]] name = "sc-network-bitswap" -version = "0.29.0" +version = "0.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6a0d247f576989cb2fe49df0511cbbd826f1e47b444848971e2bddec8f18a65" +checksum = "2779d97eff742c1ebcce812bfd154a7273c2c2eb02e11fad76cf7eb583365834" dependencies = [ "async-channel", "cid", @@ -10774,9 +10853,9 @@ dependencies = [ [[package]] name = "sc-network-common" -version = "0.29.0" +version = "0.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b418c79cea8ab5b43f5bbe7ee95da7d6490bdfedbe92a9b07a714ca4f09a2426" +checksum = "9b798acc12d5b3120b2d5e8a078fcec39d6732089261136ac31c993235ade917" dependencies = [ "async-trait", "bitflags 1.3.2", @@ -10792,9 +10871,9 @@ dependencies = [ [[package]] name = "sc-network-gossip" -version = "0.30.0" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27a9e8b4e16ab5b67b1fe389349855a2946d3c9168df54afcafec5dd67cae4cd" +checksum = "cd92792f3a04fcb1f21018c9f8a5d6d438d705a2548ffcdc7730280c667b8386" dependencies = [ "ahash 0.8.3", "futures 0.3.28", @@ -10803,6 +10882,7 @@ dependencies = [ "log", "sc-network", "sc-network-common", + "sc-network-sync", "schnellru", "sp-runtime", "substrate-prometheus-endpoint", @@ -10811,11 +10891,11 @@ dependencies = [ [[package]] name = "sc-network-light" -version = "0.29.0" +version = "0.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e36fc98d43aa75eb0d0690af6a8c6a929318f6cb4bf1fc039410ece56c8bb5a9" +checksum = "34e7a126492850dbbd5cf0b77ec3ad350422c2822d165941ddbe618a76af0153" dependencies = [ - "array-bytes", + "array-bytes 6.1.0", "async-channel", "futures 0.3.28", "libp2p-identity", @@ -10833,11 +10913,11 @@ dependencies = [ [[package]] name = "sc-network-sync" -version = "0.29.0" +version = "0.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d049b008a7353fc46cb45a1f6f68e5e5128442b6726cfd82da09cb676443e73" +checksum = "c4c92fd35c49f748abf0bf420e1e99aa76b0f48ab43c183ea5dacef951116d7e" dependencies = [ - "array-bytes", + "array-bytes 6.1.0", "async-channel", "async-trait", "fork-tree", @@ -10864,21 +10944,24 @@ dependencies = [ "sp-runtime", "substrate-prometheus-endpoint", "thiserror", + "tokio", + "tokio-stream", ] [[package]] name = "sc-network-transactions" -version = "0.29.0" +version = "0.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ef6606f7705bc9c038c9e11715b7ddbdb2a5b43c12d8e3cc346e0b9927218e4" +checksum = "99a1af3b9e158fa91df0cd92916b3ee5d8b8a14a2b61eb5dd9e36e045808f644" dependencies = [ - "array-bytes", + "array-bytes 6.1.0", "futures 0.3.28", "libp2p", "log", "parity-scale-codec", "sc-network", "sc-network-common", + "sc-network-sync", "sc-utils", "sp-consensus", "sp-runtime", @@ -10887,11 +10970,11 @@ dependencies = [ [[package]] name = "sc-offchain" -version = "25.0.0" +version = "29.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b9d2458e033256bca62b01e89369bb9a7d74a460b74a5e3786afc5db3f55b1c" +checksum = "cd5408dbdc3fe345813e983bd2b7ecf8f20e996141fa39a36336f511ab1859bb" dependencies = [ - "array-bytes", + "array-bytes 6.1.0", "bytes", "fnv", "futures 0.3.28", @@ -10922,9 +11005,9 @@ dependencies = [ [[package]] name = "sc-proposer-metrics" -version = "0.15.0" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6fc35c74a42a49d4ea4df44f78ebbd5a744f9bdca3f4ea1d3d9e5e02b0e6ee7" +checksum = "fb8dadb2ae5a316e4d08cad6aacd5de1dec792f3bd94e3960795ff7ffd07211c" dependencies = [ "log", "substrate-prometheus-endpoint", @@ -10932,9 +11015,9 @@ dependencies = [ [[package]] name = "sc-rpc" -version = "25.0.0" +version = "29.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ede50e654b3e0c076bb9beb041612af80f07dfb883cc05d8aaae1c7a1bb72761" +checksum = "4ac0d83b9117c9c004e58331a593a28044eaf6414e5b3c605d1571b4a6981966" dependencies = [ "futures 0.3.28", "jsonrpsee", @@ -10944,6 +11027,7 @@ dependencies = [ "sc-block-builder", "sc-chain-spec", "sc-client-api", + "sc-mixnet", "sc-rpc-api", "sc-tracing", "sc-transaction-pool-api", @@ -10964,13 +11048,14 @@ dependencies = [ [[package]] name = "sc-rpc-api" -version = "0.29.0" +version = "0.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cac4149b7427beed423006c78e0b75c0193ac01d6e66ff0dd8a1909747cf593" +checksum = "630e81a436f32487452ae1a57ad0ba31f320ddf864bb7faefd7490fe16b3e139" dependencies = [ "jsonrpsee", "parity-scale-codec", "sc-chain-spec", + "sc-mixnet", "sc-transaction-pool-api", "scale-info", "serde", @@ -10984,9 +11069,9 @@ dependencies = [ [[package]] name = "sc-rpc-server" -version = "9.0.0" +version = "11.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a62b9c5bf359cd4923ce10d294532936aa68d0cd59e890a0414f6434397180b" +checksum = "2b623908525a2f22aafa079080aa7fbce8b58ca8de53b9f31e3cc8547e0ad8b2" dependencies = [ "http", "jsonrpsee", @@ -11000,11 +11085,11 @@ dependencies = [ [[package]] name = "sc-rpc-spec-v2" -version = "0.30.0" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e770646ab839fb33dfeb7cbde94d98cdaf78526c70b10aa59ec5810953ff2a5" +checksum = "a54150c808fa10364b73faedd97aff0977a911a521d1caa8bad2bdc7943ad579" dependencies = [ - "array-bytes", + "array-bytes 6.1.0", "futures 0.3.28", "futures-util", "hex", @@ -11020,6 +11105,7 @@ dependencies = [ "sp-api", "sp-blockchain", "sp-core", + "sp-rpc", "sp-runtime", "sp-version", "thiserror", @@ -11029,9 +11115,9 @@ dependencies = [ [[package]] name = "sc-service" -version = "0.31.0" +version = "0.35.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9c7fa14eaf48c44edff226ce9b18dc984c122e9deebbf825a8945be7c046ade" +checksum = "703bd8b1fc0a137185bfa0b654e04283a58a1d8a2751380e7a0eca919961f150" dependencies = [ "async-trait", "directories", @@ -11044,7 +11130,6 @@ dependencies = [ "parking_lot 0.12.1", "pin-project", "rand 0.8.5", - "sc-block-builder", "sc-chain-spec", "sc-client-api", "sc-client-db", @@ -11094,9 +11179,9 @@ dependencies = [ [[package]] name = "sc-state-db" -version = "0.26.0" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43bc9266fdec30b59857e794fc329aa600aaa6ed46799f9df859a7e30c0ec34b" +checksum = "fac20128b09ac6305aaf482a72c918b35400f3955d7032971df499b0661a5e76" dependencies = [ "log", "parity-scale-codec", @@ -11106,14 +11191,13 @@ dependencies = [ [[package]] name = "sc-storage-monitor" -version = "0.12.0" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a644660e0063cfa77a0609c4d37109050fb48cb0723562a0b87ec02214d907c2" +checksum = "838d31b4316424d1c2c3a2f06f4e76cd56b53f38d366fc9882444d4ce8faabec" dependencies = [ "clap", "fs4", "log", - "sc-client-db", "sp-core", "thiserror", "tokio", @@ -11121,9 +11205,9 @@ dependencies = [ [[package]] name = "sc-sync-state-rpc" -version = "0.30.0" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd0c77869b8cc2854143303118efa5aa042464e7d9f9dc7ccd93a4a628df2a5d" +checksum = "cb310dce9d2474a74152605dc0ca0f81a46f61ba4e7a39752f1203121f47c0c6" dependencies = [ "jsonrpsee", "parity-scale-codec", @@ -11141,10 +11225,11 @@ dependencies = [ [[package]] name = "sc-sysinfo" -version = "23.0.0" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ff97437e564c0e7483d7e32384e3f6571f656728ea03a6e1b07a6325e064a76" +checksum = "bfc9a5da78281735c6ff3b8d0287e95dcf32fc001415ac20cb2844c0ab4e6d05" dependencies = [ + "derive_more", "futures 0.3.28", "libc", "log", @@ -11161,9 +11246,9 @@ dependencies = [ [[package]] name = "sc-telemetry" -version = "11.0.0" +version = "15.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b46193a2979c86da75fc43276d222359757ea257b512fe6e4128e7a50b0bb22" +checksum = "96841bdc22e1ad5931e6cb7557b06ef33aeda7f5eef3864653359840f9fd025a" dependencies = [ "chrono", "futures 0.3.28", @@ -11181,16 +11266,17 @@ dependencies = [ [[package]] name = "sc-tracing" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fcb4398268e83957ebbc84e6290307198e817caa47386135d3de6ba3316203a" +checksum = "90864e5e042d1238bcb082b0fa73ce58b7eb4897127783dae1dd66eee59cdaef" dependencies = [ "ansi_term", - "atty", "chrono", + "is-terminal", "lazy_static", "libc", "log", + "parity-scale-codec", "parking_lot 0.12.1", "regex", "rustc-hash", @@ -11211,21 +11297,21 @@ dependencies = [ [[package]] name = "sc-tracing-proc-macro" -version = "9.0.0" +version = "11.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71bd05d3f24c0c2489c57b90a76db883c23c25577718ca05c9b0181fd427f501" +checksum = "151cdf86d79abf22cf2a240a7ca95041c908dbd96c2ae9a818073042aa210964" dependencies = [ - "proc-macro-crate 1.3.1", + "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] name = "sc-transaction-pool" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6af477c0e8a2698aabf442a3918313e8f096eb6695ceaaa7e12679c496d2826" +checksum = "f7985fab634814ee28fe3ecd2131fa2cb4c8eee88a7e60f1cd59dc0afa826fe2" dependencies = [ "async-trait", "futures 0.3.28", @@ -11250,9 +11336,9 @@ dependencies = [ [[package]] name = "sc-transaction-pool-api" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4f1b864d0ae8f1891eb310672c12fc160d24e37ef297d5ef0db257558fe13b1" +checksum = "3402336f81a52fd6b1fd5a16fa3f4279032de1e113fe4a973865bf0b0e28679c" dependencies = [ "async-trait", "futures 0.3.28", @@ -11267,9 +11353,9 @@ dependencies = [ [[package]] name = "sc-utils" -version = "10.0.0" +version = "14.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8b01c8eed623f999d402e44679d42ad42586afd4638aaed38708a307b59f4d7" +checksum = "0c4d5d1f106d670dd0c56fe540e8b0916aaeff6960bb39440ed8f3c80b52f8d4" dependencies = [ "async-channel", "futures 0.3.28", @@ -11341,7 +11427,7 @@ dependencies = [ "rand 0.7.3", "rand_core 0.5.1", "sha2 0.8.2", - "subtle", + "subtle 2.4.1", "zeroize", ] @@ -11361,6 +11447,25 @@ dependencies = [ "zeroize", ] +[[package]] +name = "schnorrkel" +version = "0.11.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8de18f6d8ba0aad7045f5feae07ec29899c1112584a38509a84ad7b04451eaa0" +dependencies = [ + "aead 0.5.2", + "arrayref", + "arrayvec 0.7.4", + "curve25519-dalek 4.1.1", + "getrandom_or_panic", + "merlin 3.0.0", + "rand_core 0.6.4", + "serde_bytes", + "sha2 0.10.8", + "subtle 2.4.1", + "zeroize", +] + [[package]] name = "scopeguard" version = "1.1.0" @@ -11373,16 +11478,6 @@ version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1792db035ce95be60c3f8853017b3999209281c24e2ba5bc8e59bf97a0c590c1" -[[package]] -name = "sct" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b362b83898e0e69f38515b82ee15aa80636befe47c3b6d3d89a911e78fc228ce" -dependencies = [ - "ring 0.16.20", - "untrusted 0.7.1", -] - [[package]] name = "sct" version = "0.7.0" @@ -11393,60 +11488,43 @@ dependencies = [ "untrusted 0.7.1", ] -[[package]] -name = "sdp" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d22a5ef407871893fd72b4562ee15e4742269b173959db4b8df6f538c414e13" -dependencies = [ - "rand 0.8.5", - "substring", - "thiserror", - "url", -] - [[package]] name = "sec1" -version = "0.3.0" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3be24c1842290c45df0a7bf069e0c268a747ad05a192f2fd7dcfdbc1cba40928" +checksum = "f0aec48e813d6b90b15f0b8948af3c63483992dee44c03e9930b3eebdabe046e" dependencies = [ - "base16ct 0.1.1", - "der 0.6.1", + "base16ct", + "der", "generic-array 0.14.7", - "pkcs8 0.9.0", - "subtle", + "pkcs8", + "subtle 2.4.1", "zeroize", ] [[package]] -name = "sec1" -version = "0.7.2" +name = "seccompiler" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0aec48e813d6b90b15f0b8948af3c63483992dee44c03e9930b3eebdabe046e" +checksum = "345a3e4dddf721a478089d4697b83c6c0a8f5bf16086f6c13397e4534eb6e2e5" dependencies = [ - "base16ct 0.2.0", - "der 0.7.6", - "generic-array 0.14.7", - "pkcs8 0.10.2", - "subtle", - "zeroize", + "libc", ] [[package]] name = "secp256k1" -version = "0.24.3" +version = "0.28.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b1629c9c557ef9b293568b338dddfc8208c98a18c59d722a9d53f859d9c9b62" +checksum = "d24b59d129cdadea20aea4fb2352fa053712e5d713eee47d700cd4b2bc002f10" dependencies = [ "secp256k1-sys", ] [[package]] name = "secp256k1-sys" -version = "0.6.1" +version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83080e2c2fc1006e625be82e5d1eb6a43b7fd9578b617fcc55814daf286bba4b" +checksum = "e5d1746aae42c19d583c3c1a8c646bfad910498e2051c551a7f2e3c0c9fbb7eb" dependencies = [ "cc", ] @@ -11518,29 +11596,38 @@ checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" [[package]] name = "serde" -version = "1.0.193" +version = "1.0.197" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25dd9975e68d0cb5aa1120c288333fc98731bd1dd12f561e468ea4728c042b89" +checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2" dependencies = [ "serde_derive", ] +[[package]] +name = "serde_bytes" +version = "0.11.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b8497c313fd43ab992087548117643f6fcd935cbf36f176ffda0aacf9591734" +dependencies = [ + "serde", +] + [[package]] name = "serde_derive" -version = "1.0.193" +version = "1.0.197" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43576ca501357b9b071ac53cdc7da8ef0cbd9493d8df094cd821777ea6e894d3" +checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] name = "serde_json" -version = "1.0.108" +version = "1.0.114" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b" +checksum = "c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0" dependencies = [ "itoa", "ryu", @@ -11549,9 +11636,9 @@ dependencies = [ [[package]] name = "serde_spanned" -version = "0.6.2" +version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93107647184f6027e3b7dcb2e11034cf95ffa1e3a682c67951963ac69c1c007d" +checksum = "eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1" dependencies = [ "serde", ] @@ -11650,16 +11737,6 @@ dependencies = [ "libc", ] -[[package]] -name = "signature" -version = "1.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c" -dependencies = [ - "digest 0.10.7", - "rand_core 0.6.4", -] - [[package]] name = "signature" version = "2.1.0" @@ -11683,6 +11760,12 @@ dependencies = [ "wide", ] +[[package]] +name = "simple-mermaid" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "620a1d43d70e142b1d46a929af51d44f383db9c7a2ec122de2cd992ccfcf3c18" + [[package]] name = "siphasher" version = "0.3.10" @@ -11706,9 +11789,9 @@ checksum = "826167069c09b99d56f31e9ae5c99049e932a98c9dc2dac47645b08dbbf76ba7" [[package]] name = "slot-range-helper" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5109eff24021551c130973a924318728720e6c74fc98d206b4f42b7763978fdc" +checksum = "5d9bb569dc58f1e139c20f532a2ad13d54795060c0000c2c49dc812b17684197" dependencies = [ "enumn", "parity-scale-codec", @@ -11728,9 +11811,9 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.11.1" +version = "1.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a" +checksum = "e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7" [[package]] name = "smol" @@ -11852,14 +11935,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.1.1", "rand_core 0.6.4", "ring 0.16.20", "rustc_version 0.4.0", "sha2 0.10.8", - "subtle", + "subtle 2.4.1", ] [[package]] @@ -11901,9 +11984,9 @@ dependencies = [ [[package]] name = "sp-api" -version = "22.0.0" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddc5213210472ba2becdc094fbb9d30c4455753b1a608962797e1e971c3e5ec4" +checksum = "6dea138c6dbf282ab57756492f0232ea0a08575ca9cbe2b7b1ead49000f238a7" dependencies = [ "hash-db", "log", @@ -11923,24 +12006,24 @@ dependencies = [ [[package]] name = "sp-api-proc-macro" -version = "11.0.0" +version = "15.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20e7f093302d30b9d35436db024376459bdc9da7530abcacf5d87c32a67d94fd" +checksum = "0694be2891593450916d6b53a274d234bccbc86bcbada36ba23fc356989070c7" dependencies = [ "Inflector", - "blake2", + "blake2 0.10.6", "expander 2.0.0", - "proc-macro-crate 1.3.1", + "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] name = "sp-application-crypto" -version = "26.0.0" +version = "30.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b74454c936a45ac55c8de95b9fd8b5e38f8b43d97df8f4274dd6777b20d95569" +checksum = "7e4fe7a9b7fa9da76272b201e2fb3c7900d97d32a46b66af9a04dad457f73c71" dependencies = [ "parity-scale-codec", "scale-info", @@ -11952,9 +12035,9 @@ dependencies = [ [[package]] name = "sp-arithmetic" -version = "19.0.0" +version = "23.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e41f710a77e9debd1c9b80f862709dce648e50f0904cde4117488e7d11d4796d" +checksum = "f42721f072b421f292a072e8f52a3b3c0fbc27428f0c9fe24067bc47046bad63" dependencies = [ "integer-sqrt", "num-traits", @@ -11967,9 +12050,9 @@ dependencies = [ [[package]] name = "sp-authority-discovery" -version = "22.0.0" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3259fe9bf2e48eba37067f464a3db79ef20e25f1297cbad310c11738757c5c6a" +checksum = "22a740c05e9096eb17e93b5ab6aa5fe8ce0c9b4243777826d92133b3dd682e14" dependencies = [ "parity-scale-codec", "scale-info", @@ -11981,9 +12064,9 @@ dependencies = [ [[package]] name = "sp-block-builder" -version = "22.0.0" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c6a066e310d4c0c240829d7bb5d6bd01dde55d03e15b665f0372b40952f37e6" +checksum = "e6d2aa0943101367b955f5806c3ecea2e23df7c90059708107470dbfb9d3d7ab" dependencies = [ "sp-api", "sp-inherents", @@ -11993,9 +12076,9 @@ dependencies = [ [[package]] name = "sp-blockchain" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f506119858f25a73ed9d61a2ead0d5b97b5141055b3b4a12b9b82e530b06c673" +checksum = "f9adee5ddcf0682d0302ed640a285b9f922d933a205b63c7819a74d6092b6f78" dependencies = [ "futures 0.3.28", "log", @@ -12012,9 +12095,9 @@ dependencies = [ [[package]] name = "sp-consensus" -version = "0.28.0" +version = "0.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04e142e27f140d50701e613d925f61482fafccb7d90933ee30d7bae54d293ea3" +checksum = "cfcac16e85f78db9c99c9424659bb25790be079a0b758a3674ee8e1e7ef635b0" dependencies = [ "async-trait", "futures 0.3.28", @@ -12028,9 +12111,9 @@ dependencies = [ [[package]] name = "sp-consensus-aura" -version = "0.28.0" +version = "0.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dcc6df7a006a55651d0e7bdf2d8d4583d5b917cb4b7b6a1331398e96307a883" +checksum = "3ab8e878a116b0885eaefd068235657737cb72fdce60a8c080dfd092f7d645cc" dependencies = [ "async-trait", "parity-scale-codec", @@ -12046,9 +12129,9 @@ dependencies = [ [[package]] name = "sp-consensus-babe" -version = "0.28.0" +version = "0.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "572374a1260687fa18481ccac58c4a64611df379fb1aa65389ce96c6661b3b05" +checksum = "ebfedfdea5b22fb3625cd664e72503dcbd1087373181d5be0d092b3e7b4c61f5" dependencies = [ "async-trait", "parity-scale-codec", @@ -12066,9 +12149,9 @@ dependencies = [ [[package]] name = "sp-consensus-beefy" -version = "9.0.0" +version = "13.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1969665f2c07bd7403810c3e1180ef03e388f74be04a1362fe4471d14a7cda14" +checksum = "e09a424196a673f0e6b5fe79e4ab97da416491cfecab7bc835fa595134ac1b5c" dependencies = [ "lazy_static", "parity-scale-codec", @@ -12086,9 +12169,9 @@ dependencies = [ [[package]] name = "sp-consensus-grandpa" -version = "9.0.0" +version = "13.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04d20516ed05a6a17f712050d6be385ca53c16b2d49938a29ca05e07f7aa5118" +checksum = "2a906b20409a5a69b1d9580848f502af20cf2c51a1ae028ba208375eb11f332b" dependencies = [ "finality-grandpa", "log", @@ -12105,9 +12188,9 @@ dependencies = [ [[package]] name = "sp-consensus-slots" -version = "0.28.0" +version = "0.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ebe1c46246a76af1105639c7434c1383d376fd45a8548fc18ed66dbf86f803c" +checksum = "fdc5c1620d81196391daa15e78ea20cc11c59f08c509381c276d5d6a3d4d36af" dependencies = [ "parity-scale-codec", "scale-info", @@ -12118,13 +12201,14 @@ dependencies = [ [[package]] name = "sp-core" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7921d278ed2aebbb21a644c96e09663dc49a6139d1e2e063c059dc9f866e149b" +checksum = "f230cb12575455070da0fc174815958423a0b9a641d5e304a9457113c7cb4007" dependencies = [ - "array-bytes", + "array-bytes 6.1.0", + "bip39", "bitflags 1.3.2", - "blake2", + "blake2 0.10.6", "bounded-collections", "bs58 0.5.0", "dyn-clonable", @@ -12133,18 +12217,17 @@ dependencies = [ "hash-db", "hash256-std-hasher", "impl-serde", - "lazy_static", + "itertools 0.10.5", "libsecp256k1", "log", - "merlin 2.0.1", + "merlin 3.0.0", "parity-scale-codec", "parking_lot 0.12.1", "paste", "primitive-types", "rand 0.8.5", - "regex", "scale-info", - "schnorrkel 0.9.1", + "schnorrkel 0.11.4", "secp256k1", "secrecy", "serde", @@ -12157,16 +12240,16 @@ dependencies = [ "ss58-registry", "substrate-bip39", "thiserror", - "tiny-bip39", "tracing", + "w3f-bls", "zeroize", ] [[package]] name = "sp-core-hashing" -version = "12.0.0" +version = "15.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7cb5c31aa385d6997a5b73fdc9837c1c0145559205198555c3000739a474767" +checksum = "1e0f4990add7b2cefdeca883c0efa99bb4d912cb2196120e1500c0cc099553b0" dependencies = [ "blake2b_simd", "byteorder", @@ -12178,20 +12261,20 @@ dependencies = [ [[package]] name = "sp-core-hashing-proc-macro" -version = "12.0.0" +version = "15.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a4327a220777a8d492ed3d0bcd4c769cbb030301e7d4a2d9e09513d690c313b" +checksum = "7527f8dda7667c41009b2cd0efaddcb81709b9741bd5ee6d17b11bad835cc698" dependencies = [ "quote", "sp-core-hashing", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] name = "sp-database" -version = "8.0.0" +version = "10.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab25f79468af89010a8eb84e6bf56068b59929a55291c03519f47208360f3ebe" +checksum = "722cbecdbf5b94578137dbd07feb51e95f7de221be0c1ff4dcfe0bb4cd986929" dependencies = [ "kvdb", "parking_lot 0.12.1", @@ -12199,20 +12282,20 @@ dependencies = [ [[package]] name = "sp-debug-derive" -version = "11.0.0" +version = "14.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16f7d375610590566e11882bf5b5a4b8d0666a96ba86808b2650bbbd9be50bf8" +checksum = "48d09fa0a5f7299fb81ee25ae3853d26200f7a348148aed6de76be905c007dbe" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] name = "sp-externalities" -version = "0.22.0" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ede074871514ca7c5d2eca9563515d858c6220b47ae815714ed4393a4e99db4a" +checksum = "63867ec85950ced90d4ab1bba902a47db1b1efdf2829f653945669b2bb470a9c" dependencies = [ "environmental", "parity-scale-codec", @@ -12222,9 +12305,9 @@ dependencies = [ [[package]] name = "sp-genesis-builder" -version = "0.3.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10b9f0251a09b578393f3297abe54a29abdb7e93c17e89a88dc1cabb8e2d5a2d" +checksum = "dfdc79df83221ec5a279cbbd08fd6f8be164b9b081c8e84593ce2c2ebd5d66c0" dependencies = [ "serde_json", "sp-api", @@ -12234,9 +12317,9 @@ dependencies = [ [[package]] name = "sp-inherents" -version = "22.0.0" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "439882da80e9bcfd1ba53df7ec5070d4d7f2a9a93f988aa3598f99ee5bfc76eb" +checksum = "9a3caf2d1288549d7e6c32b453f2d4855d498bb88600101011e35653e022a6f2" dependencies = [ "async-trait", "impl-trait-for-tuples", @@ -12249,9 +12332,9 @@ dependencies = [ [[package]] name = "sp-io" -version = "26.0.0" +version = "30.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88fb6e281de5054565f07a9f79504d21133e115db549993c99f1b21236c677a5" +checksum = "c55f26d89feedaf0faf81688b6e1e1e81329cd8b4c6a4fd6c5b97ed9dd068b8a" dependencies = [ "bytes", "ed25519-dalek", @@ -12274,11 +12357,10 @@ dependencies = [ [[package]] name = "sp-keyring" -version = "27.0.0" +version = "31.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05f09927534d2233e135e4b4a0c758554d0ff66178f6e9cfba2e151dfeac97b3" +checksum = "98165ce7c625a8cdb88d39c6bbd56fe8b32ada64ed0894032beba99795f557da" dependencies = [ - "lazy_static", "sp-core", "sp-runtime", "strum", @@ -12286,9 +12368,9 @@ dependencies = [ [[package]] name = "sp-keystore" -version = "0.30.0" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b9f19e773319d96223ce8dba960267e6cb977907537a8f738746ceb86592413" +checksum = "96806a28a62ed9ddecd0b28857b1344d029390f7c5c42a2ff9199cbf5638635c" dependencies = [ "parity-scale-codec", "parking_lot 0.12.1", @@ -12299,9 +12381,9 @@ dependencies = [ [[package]] name = "sp-maybe-compressed-blob" -version = "8.0.0" +version = "11.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "377a0e22a104a1a83804562fba6702537af6a36df9ee2049c89c3be9148b42b1" +checksum = "f0c768c11afbe698a090386876911da4236af199cd38a5866748df4d8628aeff" dependencies = [ "thiserror", "zstd 0.12.4", @@ -12309,9 +12391,9 @@ dependencies = [ [[package]] name = "sp-metadata-ir" -version = "0.3.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb0dec8af38c68358600da59cf14424e1230fe9ae1d4b4f64a098288145c0775" +checksum = "fa0b5e87e56c1bb26d9524d48dd127121d630f895bd5914a34f0b017489f7c1d" dependencies = [ "frame-metadata", "parity-scale-codec", @@ -12319,11 +12401,24 @@ dependencies = [ "sp-std", ] +[[package]] +name = "sp-mixnet" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85ed83d2f899484bde61c72cbae6edfb25708d43e6b19934e206f3c706df67df" +dependencies = [ + "parity-scale-codec", + "scale-info", + "sp-api", + "sp-application-crypto", + "sp-std", +] + [[package]] name = "sp-mmr-primitives" -version = "22.0.0" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f616a1e1f731d027808d06d6b10de8d1e401397571e8f8e4ba84c1e74afc334c" +checksum = "b7526a73d518c03fa2447588b1544019a194a4f113cf34d2610d3b5925c80c86" dependencies = [ "ckb-merkle-mountain-range", "log", @@ -12340,9 +12435,9 @@ dependencies = [ [[package]] name = "sp-npos-elections" -version = "22.0.0" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec60b253bf9097e8ffe103563c515ef80550556ab3b2ec5513ed17a4ad7de520" +checksum = "fa8efff28b504b4b928288976e5f72c00c7ece9d2348a7ca2496c77849dd4c8f" dependencies = [ "parity-scale-codec", "scale-info", @@ -12355,9 +12450,9 @@ dependencies = [ [[package]] name = "sp-offchain" -version = "22.0.0" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50b1501eb4ede6471162ff48c85ccabb21434b698c8b61e2651f85c00bc1656f" +checksum = "fb45b3e397dc9c7b81cb2d8d641d0bcb1f525b60e83835783413ba73b3f61ac9" dependencies = [ "sp-api", "sp-core", @@ -12366,9 +12461,9 @@ dependencies = [ [[package]] name = "sp-panic-handler" -version = "11.0.0" +version = "13.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd099ba2d6c1bfe5d0c79aa56e440fa3c9257eadfc0c782c09cdc2122b1e60ed" +checksum = "d8f5a17a0a11de029a8b811cb6e8b32ce7e02183cc04a3e965c383246798c416" dependencies = [ "backtrace", "lazy_static", @@ -12377,9 +12472,9 @@ dependencies = [ [[package]] name = "sp-rpc" -version = "22.0.0" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d8534ae0a6043f70a93054bf0d3da27436637a8134ed44667c360e7a955cb3d" +checksum = "8a55f2c7660b579627d22932ecfe2e5f001a7671d2fa77667387517c7f80e6fb" dependencies = [ "rustc-hash", "serde", @@ -12388,10 +12483,11 @@ dependencies = [ [[package]] name = "sp-runtime" -version = "27.0.0" +version = "31.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46c0641e1a9d340960b562bcceea1457680fd0e109fc1040f8f5364fd7bc2506" +checksum = "a3bb49a4475d390198dfd3d41bef4564ab569fbaf1b5e38ae69b35fc01199d91" dependencies = [ + "docify", "either", "hash256-std-hasher", "impl-trait-for-tuples", @@ -12401,6 +12497,7 @@ dependencies = [ "rand 0.8.5", "scale-info", "serde", + "simple-mermaid", "sp-application-crypto", "sp-arithmetic", "sp-core", @@ -12411,9 +12508,9 @@ dependencies = [ [[package]] name = "sp-runtime-interface" -version = "20.0.0" +version = "24.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17a4030ad93f05c93f2cc294c74bc5fea227f90fb3d1426d4a6f165e017fb7ea" +checksum = "f66b66d8cec3d785fa6289336c1d9cbd4305d5d84f7134378c4d79ed7983e6fb" dependencies = [ "bytes", "impl-trait-for-tuples", @@ -12430,22 +12527,23 @@ dependencies = [ [[package]] name = "sp-runtime-interface-proc-macro" -version = "14.0.0" +version = "17.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b232943ee7ca83a6d56face33b8af12e9fb470a15a53835f4e12a6e452a41c1c" +checksum = "cfaf6e85b2ec12a4b99cd6d8d57d083e30c94b7f1b0d8f93547121495aae6f0c" dependencies = [ "Inflector", - "proc-macro-crate 1.3.1", + "expander 2.0.0", + "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] name = "sp-session" -version = "23.0.0" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfd062688577cc54493ba6f58383bfed89c66d5ef7b7c3747293b0da06c7f795" +checksum = "8048981db53d4f5171e6003f5e11fbfc27a8c196b0827619907a4214746a623b" dependencies = [ "parity-scale-codec", "scale-info", @@ -12459,9 +12557,9 @@ dependencies = [ [[package]] name = "sp-staking" -version = "22.0.0" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d3b2a4a7aa67a9adb2a8f49ed516f6694b5fa70792ab9b0125934b1c8cdc2e3" +checksum = "c0e68be3fff84dd8ee552f9d13dd2e9eab3663e0bddfc6c6c88de02aaca1e311" dependencies = [ "impl-trait-for-tuples", "parity-scale-codec", @@ -12474,9 +12572,9 @@ dependencies = [ [[package]] name = "sp-state-machine" -version = "0.31.0" +version = "0.35.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2bf4c76bea1a9e4a2e79afe70f42f1d368a8a45308e58f19bfd755c5ddb2b4a3" +checksum = "718c779ad1d6fcc0be64c7ce030b33fa44b5c8914b3a1319ef63bb5f27fb98df" dependencies = [ "hash-db", "log", @@ -12496,9 +12594,9 @@ dependencies = [ [[package]] name = "sp-statement-store" -version = "6.0.0" +version = "10.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a11bbdc403457dd7a850078936aa7cc753c617b7bbeba5f5766ce5a55b2bf124" +checksum = "fee6d4ceb2513f180e6e017fd6d6f3c9a1a122dcedee5fc8e4254d8a7ecf793d" dependencies = [ "aes-gcm 0.10.2", "curve25519-dalek 4.1.1", @@ -12521,15 +12619,15 @@ dependencies = [ [[package]] name = "sp-std" -version = "11.0.0" +version = "14.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c91d32e165d08a14098ce5ec923eaec59d1d0583758a18a770beec1b780b0d0" +checksum = "12f8ee986414b0a9ad741776762f4083cd3a5128449b982a3919c4df36874834" [[package]] name = "sp-storage" -version = "16.0.0" +version = "19.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac9660ecd48314443e73ad0f44d58b76426666a1343d72f6f65664e174da9244" +checksum = "1fb92d7b24033a8a856d6e20dd980b653cbd7af7ec471cc988b1b7c1d2e3a32b" dependencies = [ "impl-serde", "parity-scale-codec", @@ -12541,9 +12639,9 @@ dependencies = [ [[package]] name = "sp-timestamp" -version = "22.0.0" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b0ab4b6b2d31db93e7da68894ccb7c5a305524cea051109820b958361d162be" +checksum = "347eaddd5b07856ccec69ac3300e72e392a5efc3aea5fb4b7230888a0b447b9e" dependencies = [ "async-trait", "parity-scale-codec", @@ -12555,9 +12653,9 @@ dependencies = [ [[package]] name = "sp-tracing" -version = "13.0.0" +version = "16.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69a61948986d2a9f8d67d60884ff0277d910df09ebe08d0e1f309da777516453" +checksum = "0351810b9d074df71c4514c5228ed05c250607cba131c1c9d1526760ab69c05c" dependencies = [ "parity-scale-codec", "sp-std", @@ -12568,9 +12666,9 @@ dependencies = [ [[package]] name = "sp-transaction-pool" -version = "22.0.0" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42ea9c85f85f52e0a49c3f2ec6cff952fdc3ffe8392bebe21ed30eddd8d059c5" +checksum = "97c4052e69eacdb7a411e050c56a838f460b8a879071125451e9bb2d4814df34" dependencies = [ "sp-api", "sp-runtime", @@ -12578,9 +12676,9 @@ dependencies = [ [[package]] name = "sp-transaction-storage-proof" -version = "22.0.0" +version = "26.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30a2d2d676a4c8e9ff18cb43782ed557d00de28ee9fb090842a8510e4a7ce0a7" +checksum = "0b2a2c693bc7ca363c9d2cd412276582aef10c794399aaffbd1fe2351099a1a5" dependencies = [ "async-trait", "parity-scale-codec", @@ -12594,21 +12692,22 @@ dependencies = [ [[package]] name = "sp-trie" -version = "25.0.0" +version = "29.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bb2d292eb90452dcb0909fb44e74bf04395e3ffa37a66c0f1635a00600382a4" +checksum = "2e4d24d84a0beb44a71dcac1b41980e1edf7fb722c7f3046710136a283cd479b" dependencies = [ "ahash 0.8.3", "hash-db", - "hashbrown 0.13.2", "lazy_static", "memory-db", "nohash-hasher", "parity-scale-codec", "parking_lot 0.12.1", + "rand 0.8.5", "scale-info", "schnellru", "sp-core", + "sp-externalities", "sp-std", "thiserror", "tracing", @@ -12618,9 +12717,9 @@ dependencies = [ [[package]] name = "sp-version" -version = "25.0.0" +version = "29.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "125da59ea46ecb23860e7d895f6f2882f596b71ffca0ae4887558aac541f4342" +checksum = "afd1b053394347e22f541696bca4a9ac3ec848b50d1b86f5018d2b771f39f11a" dependencies = [ "impl-serde", "parity-scale-codec", @@ -12636,21 +12735,21 @@ dependencies = [ [[package]] name = "sp-version-proc-macro" -version = "11.0.0" +version = "13.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92897ffa04436cbd100c49ea1f8b637cb68e2a9fe144115f4b545b5ace2f47e2" +checksum = "e9bc3fed32d6dacbbbfb28dd1fe0224affbb737cb6cbfca1d9149351c2b69a7d" dependencies = [ "parity-scale-codec", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] name = "sp-wasm-interface" -version = "17.0.0" +version = "20.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf43bb0c8eb76dc41057ce0fb6b744b94c9aec28b31dff53a1efc4f04ef25384" +checksum = "9ef97172c42eb4c6c26506f325f48463e9bc29b2034a587f1b9e48c751229bee" dependencies = [ "anyhow", "impl-trait-for-tuples", @@ -12662,16 +12761,16 @@ dependencies = [ [[package]] name = "sp-weights" -version = "23.0.0" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e1cef0aad13ed8a8522a6e86ace16fb97ab220c16d2357e628352b528582693" +checksum = "9e874bdf9dd3fd3242f5b7867a4eaedd545b02f29041a46d222a9d9d5caaaa5c" dependencies = [ + "bounded-collections", "parity-scale-codec", "scale-info", "serde", "smallvec", "sp-arithmetic", - "sp-core", "sp-debug-derive", "sp-std", ] @@ -12699,16 +12798,6 @@ dependencies = [ "strum", ] -[[package]] -name = "spki" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67cf02bbac7a337dc36e4f5a693db6c21e7863f45070f7064577eb4367a3212b" -dependencies = [ - "base64ct", - "der 0.6.1", -] - [[package]] name = "spki" version = "0.7.2" @@ -12716,7 +12805,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d1e996ef02c474957d681f1b05213dfb0abab947b446a62d37770b23500184a" dependencies = [ "base64ct", - "der 0.7.6", + "der", ] [[package]] @@ -12742,9 +12831,9 @@ checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" [[package]] name = "staging-parachain-info" -version = "0.3.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a5bab12d15197074042e4f63034a58a1fad1abca3c779b9623696e163f549b5" +checksum = "ad554ffd27fbcafd82e234d7e7188e458e51bfe2b3b5000dd236dce762e3e95f" dependencies = [ "cumulus-primitives-core", "frame-support", @@ -12757,10 +12846,11 @@ dependencies = [ [[package]] name = "staging-xcm" -version = "3.0.1" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b199be791bd630ec9edc78b3896826d802f59202739a73cca5d0cd4d95b6088" +checksum = "0df18af00766d22926916bb443f14742c65cc6b2f0fe997b8f26da0d0f9ee9ca" dependencies = [ + "array-bytes 6.1.0", "bounded-collections", "derivative", "environmental", @@ -12775,9 +12865,9 @@ dependencies = [ [[package]] name = "staging-xcm-builder" -version = "3.0.1" +version = "7.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "855a422587cd951cae29249a6011c18c55486e6f4ae44f1dad1e971413eac880" +checksum = "3ba4f214fe99d79ffcc266f431abbb32d3596788327b925d469c7bb6a3c84d3c" dependencies = [ "frame-support", "frame-system", @@ -12798,9 +12888,9 @@ dependencies = [ [[package]] name = "staging-xcm-executor" -version = "3.0.0" +version = "7.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a50ece4a1d0651af4ccb78170e8008a44cd119ee4fdf5190d997c78e24e46a03" +checksum = "5f1dea1e33eefee513c197c24255670951a2c515a6ce2c7049fe86385400074f" dependencies = [ "environmental", "frame-benchmarking", @@ -12808,6 +12898,7 @@ dependencies = [ "impl-trait-for-tuples", "log", "parity-scale-codec", + "scale-info", "sp-arithmetic", "sp-core", "sp-io", @@ -12876,11 +12967,24 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "strobe-rs" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fabb238a1cccccfa4c4fb703670c0d157e1256c1ba695abf1b93bd2bb14bab2d" +dependencies = [ + "bitflags 1.3.2", + "byteorder", + "keccak", + "subtle 2.4.1", + "zeroize", +] + [[package]] name = "strsim" -version = "0.10.0" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" +checksum = "5ee073c9e4cd00e28217186dbe12796d692868f432bf2e97ee73bed0c56dfa01" [[package]] name = "strum" @@ -12904,25 +13008,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "stun" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7e94b1ec00bad60e6410e058b52f1c66de3dc5fe4d62d09b3e52bb7d3b73e25" -dependencies = [ - "base64 0.13.1", - "crc 3.0.1", - "lazy_static", - "md-5", - "rand 0.8.5", - "ring 0.16.20", - "subtle", - "thiserror", - "tokio", - "url", - "webrtc-util", -] - [[package]] name = "substrate-bip39" version = "0.4.4" @@ -12938,9 +13023,9 @@ dependencies = [ [[package]] name = "substrate-build-script-utils" -version = "8.0.0" +version = "11.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78127cdb5849eed7399ff9c730faea57c2a4e148e3b46e565abe98248432feb9" +checksum = "b285e7d183a32732fdc119f3d81b7915790191fad602b7c709ef247073c77a2e" [[package]] name = "substrate-fixed" @@ -12956,9 +13041,9 @@ dependencies = [ [[package]] name = "substrate-frame-rpc-system" -version = "24.0.0" +version = "28.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5978d5bc95506e7770fe7de97610db13ee72dd1e242894d4843587dc5954102" +checksum = "fcee7812a1e1cec85e3095c5d1c1627ceb084c0c81e66c2f9df7cb7b3a5938f3" dependencies = [ "frame-system-rpc-runtime-api", "futures 0.3.28", @@ -12987,9 +13072,9 @@ dependencies = [ [[package]] name = "substrate-prometheus-endpoint" -version = "0.15.0" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e99fe4e955b8d7c25bd3a88a6907933867d11ef6194ef935e865a9e87c320ff" +checksum = "0d8fe06b03b8a291c09507c42f92a2c2c10dd3d62975d02c7f64a92d87bfe09b" dependencies = [ "hyper", "log", @@ -13000,9 +13085,9 @@ dependencies = [ [[package]] name = "substrate-rpc-client" -version = "0.29.0" +version = "0.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "624257055386482adba21684a4af2cebdbaf0a8dd0e1b7cd9eec05b564afa5db" +checksum = "9076480cc6f480429b081bf93607d32183bdac4d6f0d2969d5e08de08bea1701" dependencies = [ "async-trait", "jsonrpsee", @@ -13014,9 +13099,9 @@ dependencies = [ [[package]] name = "substrate-state-trie-migration-rpc" -version = "23.0.0" +version = "27.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7022de77deb109177d7897b57fa8148ee821a04d0aa9f685210974278c883b01" +checksum = "c92c25dcb3e4aee5559c2bd9b4d105786220cad116719d7ebb39e4f359865d44" dependencies = [ "jsonrpsee", "parity-scale-codec", @@ -13042,9 +13127,9 @@ dependencies = [ [[package]] name = "substrate-wasm-builder" -version = "13.0.0" +version = "17.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a23975404eca6d81818f3f3d4ecde9635dae3e616f366dbc1a0d510c86f02a2" +checksum = "ac08d23ff4da66fe6cb0300f249be010d78e5abeafef0390cae39736a374e6cd" dependencies = [ "ansi_term", "build-helper", @@ -13054,19 +13139,16 @@ dependencies = [ "sp-maybe-compressed-blob", "strum", "tempfile", - "toml 0.7.4", + "toml 0.8.10", "walkdir", "wasm-opt", ] [[package]] -name = "substring" -version = "1.4.5" +name = "subtle" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42ee6433ecef213b2e72f587ef64a2f5943e7cd16fbd82dbe8bc07486c534c86" -dependencies = [ - "autocfg", -] +checksum = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee" [[package]] name = "subtle" @@ -13093,9 +13175,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.38" +version = "2.0.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e96b79aaa137db8f61e26363a0c9b47d8b4ec75da28b7d1d614c2303e232408b" +checksum = "74f1bdc9872430ce9b75da68329d1c1746faf50ffac5f19e02b71e37ff881ffb" dependencies = [ "proc-macro2", "quote", @@ -13135,6 +13217,21 @@ dependencies = [ "libc", ] +[[package]] +name = "system-parachains-constants" +version = "1.0.0" +source = "git+https://github.com/encointer/runtimes.git?branch=ab/upgrade-polkadot-v1.6.0#437115e766f49b884aa1b5633dc83893b4a76fd1" +dependencies = [ + "frame-support", + "kusama-runtime-constants", + "parachains-common", + "polkadot-core-primitives", + "polkadot-primitives", + "polkadot-runtime-constants", + "smallvec", + "sp-runtime", +] + [[package]] name = "tap" version = "1.0.1" @@ -13149,16 +13246,14 @@ checksum = "fd1ba337640d60c3e96bc6f0638a939b9c9a7f2c316a1598c279828b3d1dc8c5" [[package]] name = "tempfile" -version = "3.6.0" +version = "3.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31c0432476357e58790aaa47a8efb0c5138f137343f3b5f23bd36a27e3b0a6d6" +checksum = "a365e8cd18e44762ef95d87f284f4b5cd04107fec2ff3052bd6a3e6069669e67" dependencies = [ - "autocfg", "cfg-if", - "fastrand 1.9.0", - "redox_syscall 0.3.5", - "rustix 0.37.20", - "windows-sys 0.48.0", + "fastrand 2.0.1", + "rustix 0.38.31", + "windows-sys 0.52.0", ] [[package]] @@ -13170,6 +13265,16 @@ dependencies = [ "winapi-util", ] +[[package]] +name = "terminal_size" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "21bebf2b7c9e0a515f6e0f8c51dc0f8e4696391e6f1ff30379559f8365fb0df7" +dependencies = [ + "rustix 0.38.31", + "windows-sys 0.48.0", +] + [[package]] name = "termtree" version = "0.4.1" @@ -13213,7 +13318,7 @@ checksum = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] @@ -13302,25 +13407,6 @@ dependencies = [ "time-core", ] -[[package]] -name = "tiny-bip39" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62cc94d358b5a1e84a5cb9109f559aa3c4d634d2b1b4de3d0fa4adc7c78e2861" -dependencies = [ - "anyhow", - "hmac 0.12.1", - "once_cell", - "pbkdf2 0.11.0", - "rand 0.8.5", - "rustc-hash", - "sha2 0.10.8", - "thiserror", - "unicode-normalization", - "wasm-bindgen", - "zeroize", -] - [[package]] name = "tiny-keccak" version = "2.0.2" @@ -13330,16 +13416,6 @@ dependencies = [ "crunchy", ] -[[package]] -name = "tinytemplate" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc" -dependencies = [ - "serde", - "serde_json", -] - [[package]] name = "tinyvec" version = "1.6.0" @@ -13382,7 +13458,7 @@ checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] @@ -13454,11 +13530,23 @@ dependencies = [ "toml_edit 0.19.10", ] +[[package]] +name = "toml" +version = "0.8.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a9aad4a3066010876e8dcf5a8a06e70a558751117a145c6ce2b82c2e2054290" +dependencies = [ + "serde", + "serde_spanned", + "toml_datetime", + "toml_edit 0.22.6", +] + [[package]] name = "toml_datetime" -version = "0.6.3" +version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7cda73e2f1397b1262d6dfdcef8aafae14d1de7748d66822d3bfeeb6d03e5e4b" +checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1" dependencies = [ "serde", ] @@ -13487,6 +13575,30 @@ dependencies = [ "winnow 0.5.37", ] +[[package]] +name = "toml_edit" +version = "0.21.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1" +dependencies = [ + "indexmap 2.1.0", + "toml_datetime", + "winnow 0.5.37", +] + +[[package]] +name = "toml_edit" +version = "0.22.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2c1b5fd4128cc8d3e0cb74d4ed9a9cc7c7284becd4df68f5f940e1ad123606f6" +dependencies = [ + "indexmap 2.1.0", + "serde", + "serde_spanned", + "toml_datetime", + "winnow 0.6.2", +] + [[package]] name = "tower" version = "0.4.13" @@ -13549,14 +13661,14 @@ checksum = "0f57e3ca2a01450b1a921183a9c9cbfda207fd822cef4ccb00a65402cbba7a74" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] name = "tracing-core" -version = "0.1.31" +version = "0.1.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a" +checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" dependencies = [ "once_cell", "valuable", @@ -13574,12 +13686,11 @@ dependencies = [ [[package]] name = "tracing-gum" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "388d505e3d23a34f23f4093937252f9a3a874184083680292a3c80f16c2937a7" +checksum = "5f134d9dda0e872989ddf57b90ca73bcad27f1fba2cc19cfada7b76549c590b0" dependencies = [ "coarsetime", - "polkadot-node-jaeger", "polkadot-primitives", "tracing", "tracing-gum-proc-macro", @@ -13587,15 +13698,15 @@ dependencies = [ [[package]] name = "tracing-gum-proc-macro" -version = "3.0.0" +version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0f4ac73c340c95608556d9a52545c227be6b262ab3f3039a4dc005aad449bff" +checksum = "0f074568687ffdfd0adb6005aa8d1d96840197f2c159f80471285f08694cf0ce" dependencies = [ "expander 2.0.0", - "proc-macro-crate 1.3.1", + "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] @@ -13718,14 +13829,13 @@ checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed" [[package]] name = "try-runtime-cli" -version = "0.34.0" +version = "0.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e30562bc5a4beccd52cc4091607830fa0b77c1ce09d55b47f232c8b3d03e23fa" +checksum = "eb82b8de45dabaaba00c8c7394f18c6f97dd0e27954d4de08b352a24886d8407" dependencies = [ "async-trait", "clap", "frame-remote-externalities", - "frame-try-runtime", "hex", "log", "parity-scale-codec", @@ -13744,40 +13854,21 @@ dependencies = [ "sp-keystore", "sp-rpc", "sp-runtime", - "sp-state-machine", - "sp-timestamp", - "sp-transaction-storage-proof", - "sp-version", - "sp-weights", - "substrate-rpc-client", - "zstd 0.12.4", -] - -[[package]] -name = "tt-call" -version = "1.0.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4f195fd851901624eee5a58c4bb2b4f06399148fcd0ed336e6f1cb60a9881df" - -[[package]] -name = "turn" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4712ee30d123ec7ae26d1e1b218395a16c87cdbaf4b3925d170d684af62ea5e8" -dependencies = [ - "async-trait", - "base64 0.13.1", - "futures 0.3.28", - "log", - "md-5", - "rand 0.8.5", - "ring 0.16.20", - "stun", - "thiserror", - "tokio", - "webrtc-util", + "sp-state-machine", + "sp-timestamp", + "sp-transaction-storage-proof", + "sp-version", + "sp-weights", + "substrate-rpc-client", + "zstd 0.12.4", ] +[[package]] +name = "tt-call" +version = "1.0.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4f195fd851901624eee5a58c4bb2b4f06399148fcd0ed336e6f1cb60a9881df" + [[package]] name = "twox-hash" version = "1.6.3" @@ -13854,7 +13945,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]] @@ -13864,7 +13955,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc1de2c688dc15305988b563c3854064043356019f97a4b46276fe734c4f07ea" dependencies = [ "crypto-common", - "subtle", + "subtle 2.4.1", ] [[package]] @@ -13908,15 +13999,6 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" -[[package]] -name = "uuid" -version = "1.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fa2982af2eec27de306107c027578ff7f423d65f7250e40ce0fea8f45248b81" -dependencies = [ - "getrandom 0.2.10", -] - [[package]] name = "valuable" version = "0.1.0" @@ -13942,21 +14024,36 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" [[package]] -name = "wait-timeout" -version = "0.2.0" +name = "w3f-bls" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6" +checksum = "7335e4c132c28cc43caef6adb339789e599e39adbe78da0c4d547fad48cbc331" dependencies = [ - "libc", + "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.8", + "sha3", + "thiserror", + "zeroize", ] [[package]] -name = "waitgroup" -version = "0.1.2" +name = "wait-timeout" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1f50000a783467e6c0200f9d10642f4bc424e39efc1b770203e88b488f79292" +checksum = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6" dependencies = [ - "atomic-waker", + "libc", ] [[package]] @@ -14018,7 +14115,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", "wasm-bindgen-shared", ] @@ -14052,7 +14149,7 @@ checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -14074,9 +14171,9 @@ dependencies = [ [[package]] name = "wasm-opt" -version = "0.114.2" +version = "0.116.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "effbef3bd1dde18acb401f73e740a6f3d4a1bc651e9773bddc512fe4d8d68f67" +checksum = "fc942673e7684671f0c5708fc18993569d184265fd5223bb51fc8e5b9b6cfd52" dependencies = [ "anyhow", "libc", @@ -14090,9 +14187,9 @@ dependencies = [ [[package]] name = "wasm-opt-cxx-sys" -version = "0.114.2" +version = "0.116.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c09e24eb283919ace2ed5733bda4842a59ce4c8de110ef5c6d98859513d17047" +checksum = "8c57b28207aa724318fcec6575fe74803c23f6f266fce10cbc9f3f116762f12e" dependencies = [ "anyhow", "cxx", @@ -14102,9 +14199,9 @@ dependencies = [ [[package]] name = "wasm-opt-sys" -version = "0.114.2" +version = "0.116.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36f2f817bed2e8d65eb779fa37317e74de15585751f903c9118342d1970703a4" +checksum = "8a1cce564dc768dacbdb718fc29df2dba80bd21cb47d8f77ae7e3d95ceb98cbe" dependencies = [ "anyhow", "cc", @@ -14382,16 +14479,6 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "webpki" -version = "0.21.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8e38c0608262c46d4a56202ebabdeb094cef7e560ca7a226c6bf055188aa4ea" -dependencies = [ - "ring 0.16.20", - "untrusted 0.7.1", -] - [[package]] name = "webpki" version = "0.22.0" @@ -14408,7 +14495,7 @@ version = "0.22.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b6c71e40d7d2c34a5106301fb632274ca37242cd0c9d3e64dbece371a40a2d87" dependencies = [ - "webpki 0.22.0", + "webpki", ] [[package]] @@ -14426,220 +14513,11 @@ version = "0.25.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "14247bb57be4f377dfb94c72830b8ce8fc6beac03cf4bf7b9732eadd414123fc" -[[package]] -name = "webrtc" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d3bc9049bdb2cea52f5fd4f6f728184225bdb867ed0dc2410eab6df5bdd67bb" -dependencies = [ - "arc-swap", - "async-trait", - "bytes", - "hex", - "interceptor", - "lazy_static", - "log", - "rand 0.8.5", - "rcgen 0.9.3", - "regex", - "ring 0.16.20", - "rtcp", - "rtp", - "rustls 0.19.1", - "sdp", - "serde", - "serde_json", - "sha2 0.10.8", - "stun", - "thiserror", - "time", - "tokio", - "turn", - "url", - "waitgroup", - "webrtc-data", - "webrtc-dtls", - "webrtc-ice", - "webrtc-mdns", - "webrtc-media", - "webrtc-sctp", - "webrtc-srtp", - "webrtc-util", -] - -[[package]] -name = "webrtc-data" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ef36a4d12baa6e842582fe9ec16a57184ba35e1a09308307b67d43ec8883100" -dependencies = [ - "bytes", - "derive_builder", - "log", - "thiserror", - "tokio", - "webrtc-sctp", - "webrtc-util", -] - -[[package]] -name = "webrtc-dtls" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "942be5bd85f072c3128396f6e5a9bfb93ca8c1939ded735d177b7bcba9a13d05" -dependencies = [ - "aes 0.6.0", - "aes-gcm 0.10.2", - "async-trait", - "bincode", - "block-modes", - "byteorder", - "ccm", - "curve25519-dalek 3.2.0", - "der-parser 8.2.0", - "elliptic-curve 0.12.3", - "hkdf", - "hmac 0.12.1", - "log", - "oid-registry 0.6.1", - "p256", - "p384", - "rand 0.8.5", - "rand_core 0.6.4", - "rcgen 0.9.3", - "ring 0.16.20", - "rustls 0.19.1", - "sec1 0.3.0", - "serde", - "sha1", - "sha2 0.10.8", - "signature 1.6.4", - "subtle", - "thiserror", - "tokio", - "webpki 0.21.4", - "webrtc-util", - "x25519-dalek 2.0.0", - "x509-parser 0.13.2", -] - -[[package]] -name = "webrtc-ice" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "465a03cc11e9a7d7b4f9f99870558fe37a102b65b93f8045392fef7c67b39e80" -dependencies = [ - "arc-swap", - "async-trait", - "crc 3.0.1", - "log", - "rand 0.8.5", - "serde", - "serde_json", - "stun", - "thiserror", - "tokio", - "turn", - "url", - "uuid", - "waitgroup", - "webrtc-mdns", - "webrtc-util", -] - -[[package]] -name = "webrtc-mdns" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f08dfd7a6e3987e255c4dbe710dde5d94d0f0574f8a21afa95d171376c143106" -dependencies = [ - "log", - "socket2 0.4.9", - "thiserror", - "tokio", - "webrtc-util", -] - -[[package]] -name = "webrtc-media" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f72e1650a8ae006017d1a5280efb49e2610c19ccc3c0905b03b648aee9554991" -dependencies = [ - "byteorder", - "bytes", - "rand 0.8.5", - "rtp", - "thiserror", -] - -[[package]] -name = "webrtc-sctp" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d47adcd9427eb3ede33d5a7f3424038f63c965491beafcc20bc650a2f6679c0" -dependencies = [ - "arc-swap", - "async-trait", - "bytes", - "crc 3.0.1", - "log", - "rand 0.8.5", - "thiserror", - "tokio", - "webrtc-util", -] - -[[package]] -name = "webrtc-srtp" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6183edc4c1c6c0175f8812eefdce84dfa0aea9c3ece71c2bf6ddd3c964de3da5" -dependencies = [ - "aead 0.4.3", - "aes 0.7.5", - "aes-gcm 0.9.4", - "async-trait", - "byteorder", - "bytes", - "ctr 0.8.0", - "hmac 0.11.0", - "log", - "rtcp", - "rtp", - "sha-1", - "subtle", - "thiserror", - "tokio", - "webrtc-util", -] - -[[package]] -name = "webrtc-util" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93f1db1727772c05cf7a2cfece52c3aca8045ca1e176cd517d323489aa3c6d87" -dependencies = [ - "async-trait", - "bitflags 1.3.2", - "bytes", - "cc", - "ipnet", - "lazy_static", - "libc", - "log", - "nix", - "rand 0.8.5", - "thiserror", - "tokio", - "winapi", -] - [[package]] name = "westend-runtime" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "268a959ee1b83395e89fb9a10cbb10d604a073ae97a199988bfc90f8761b2928" +checksum = "390ccc949904980061c181f0a1507ceb793f3b57f8f930ef60222839e08cb2ca" dependencies = [ "binary-merkle-tree", "bitvec", @@ -14653,6 +14531,7 @@ dependencies = [ "frame-try-runtime", "hex-literal", "log", + "pallet-asset-rate", "pallet-authority-discovery", "pallet-authorship", "pallet-babe", @@ -14661,6 +14540,7 @@ dependencies = [ "pallet-beefy", "pallet-beefy-mmr", "pallet-collective", + "pallet-conviction-voting", "pallet-democracy", "pallet-election-provider-multi-phase", "pallet-election-provider-support-benchmarking", @@ -14682,6 +14562,8 @@ dependencies = [ "pallet-preimage", "pallet-proxy", "pallet-recovery", + "pallet-referenda", + "pallet-root-testing", "pallet-scheduler", "pallet-session", "pallet-session-benchmarking", @@ -14697,6 +14579,7 @@ dependencies = [ "pallet-treasury", "pallet-utility", "pallet-vesting", + "pallet-whitelist", "pallet-xcm", "pallet-xcm-benchmarks", "parity-scale-codec", @@ -14711,6 +14594,7 @@ dependencies = [ "smallvec", "sp-api", "sp-application-crypto", + "sp-arithmetic", "sp-authority-discovery", "sp-block-builder", "sp-consensus-babe", @@ -14738,9 +14622,9 @@ dependencies = [ [[package]] name = "westend-runtime-constants" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "281a188361cdcd28ade41bfca74d1b52f28bb6eb8f51bfd15ca3be721396ab75" +checksum = "2c410b8a17b87e5228f9c27ba4a8020e7ece4a8afb0f452b989834623afe84a2" dependencies = [ "frame-support", "polkadot-primitives", @@ -14749,6 +14633,8 @@ dependencies = [ "sp-core", "sp-runtime", "sp-weights", + "staging-xcm", + "staging-xcm-builder", ] [[package]] @@ -14864,6 +14750,15 @@ dependencies = [ "windows-targets 0.48.0", ] +[[package]] +name = "windows-sys" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" +dependencies = [ + "windows-targets 0.52.0", +] + [[package]] name = "windows-targets" version = "0.42.2" @@ -14894,6 +14789,21 @@ dependencies = [ "windows_x86_64_msvc 0.48.0", ] +[[package]] +name = "windows-targets" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" +dependencies = [ + "windows_aarch64_gnullvm 0.52.0", + "windows_aarch64_msvc 0.52.0", + "windows_i686_gnu 0.52.0", + "windows_i686_msvc 0.52.0", + "windows_x86_64_gnu 0.52.0", + "windows_x86_64_gnullvm 0.52.0", + "windows_x86_64_msvc 0.52.0", +] + [[package]] name = "windows_aarch64_gnullvm" version = "0.42.2" @@ -14906,6 +14816,12 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc" +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" + [[package]] name = "windows_aarch64_msvc" version = "0.34.0" @@ -14924,6 +14840,12 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3" +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" + [[package]] name = "windows_i686_gnu" version = "0.34.0" @@ -14942,6 +14864,12 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241" +[[package]] +name = "windows_i686_gnu" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" + [[package]] name = "windows_i686_msvc" version = "0.34.0" @@ -14960,6 +14888,12 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00" +[[package]] +name = "windows_i686_msvc" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" + [[package]] name = "windows_x86_64_gnu" version = "0.34.0" @@ -14978,6 +14912,12 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1" +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" + [[package]] name = "windows_x86_64_gnullvm" version = "0.42.2" @@ -14990,6 +14930,12 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953" +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" + [[package]] name = "windows_x86_64_msvc" version = "0.34.0" @@ -15008,6 +14954,12 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a" +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" + [[package]] name = "winnow" version = "0.4.6" @@ -15026,6 +14978,15 @@ dependencies = [ "memchr", ] +[[package]] +name = "winnow" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a4191c47f15cc3ec71fcb4913cb83d58def65dd3787610213c649283b5ce178" +dependencies = [ + "memchr", +] + [[package]] name = "winreg" version = "0.50.0" @@ -15068,38 +15029,19 @@ dependencies = [ "zeroize", ] -[[package]] -name = "x509-parser" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fb9bace5b5589ffead1afb76e43e34cff39cd0f3ce7e170ae0c29e53b88eb1c" -dependencies = [ - "asn1-rs 0.3.1", - "base64 0.13.1", - "data-encoding", - "der-parser 7.0.0", - "lazy_static", - "nom", - "oid-registry 0.4.0", - "ring 0.16.20", - "rusticata-macros", - "thiserror", - "time", -] - [[package]] name = "x509-parser" version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e0ecbeb7b67ce215e40e3cc7f2ff902f94a223acf44995934763467e7b1febc8" dependencies = [ - "asn1-rs 0.5.2", + "asn1-rs", "base64 0.13.1", "data-encoding", - "der-parser 8.2.0", + "der-parser", "lazy_static", "nom", - "oid-registry 0.6.1", + "oid-registry", "rusticata-macros", "thiserror", "time", @@ -15107,14 +15049,14 @@ dependencies = [ [[package]] name = "xcm-procedural" -version = "3.0.0" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d69991e802386307acc13e9d67004da522d083fe338111fe79c4317878445e4" +checksum = "7998facd751c42ec9b11a4cf71fcdb41fb147c5c8db8bcd1281fe84f8760d515" dependencies = [ "Inflector", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] @@ -15157,7 +15099,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.50", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index 34621da1..dc7d05d3 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,9 +1,7 @@ [workspace] +resolver = "2" members = [ - "polkadot-parachains", - "polkadot-parachains/encointer-runtime", - "polkadot-parachains/launch-runtime", - "polkadot-parachains/runtime-common", + "node", ] [profile.release] @@ -11,135 +9,139 @@ panic = "unwind" [workspace.dependencies] assert_cmd = "2.0" -async-trait = "0.1.71" -clap = { version = "4.3.11", features = ["derive"] } -parity-scale-codec = { version = "3.0.0", default-features = false, features = ["derive"] } +async-trait = "0.1.74" +clap = { version = "4.4.14", features = ["derive"] } +color-print = "0.3.4" +parity-scale-codec = { version = "3.6", default-features = false, features = ["derive"] } futures = { version = "0.3.28", features = ["compat"] } hex-literal = "0.4.1" jsonrpsee = { version = "0.16.3", features = ["server"] } log = { version = "0.4.20", default-features = false } nix = "0.24" -parachain-info = { package = "staging-parachain-info", default-features = false, version = "0.3.0" } -scale-info = { version = "2.0.1", default-features = false, features = ["derive"] } -serde = { version = "1.0.167", default-features = false, features = ["derive"] } -serde_json = "1.0.100" -smallvec = "1.6.1" -tempfile = "3.3.0" +scale-info = { version = "2.10.0", default-features = false, features = ["derive"] } +serde = { version = "1.0.195", default-features = false, features = ["derive"] } +serde_json = { version = "1.0.111", features = ["arbitrary_precision"] } +smallvec = "1.11.2" +tempfile = "3.8.1" # encointer deps -encointer-balances-tx-payment = { default-features = false, version = "2.0.0" } -encointer-balances-tx-payment-rpc-runtime-api = { default-features = false, version = "2.0.0" } -encointer-primitives = { default-features = false, version = "2.0.0" } -pallet-encointer-balances = { default-features = false, version = "2.0.0" } -pallet-encointer-bazaar = { default-features = false, version = "2.0.0" } -pallet-encointer-bazaar-rpc-runtime-api = { default-features = false, version = "2.0.0" } -pallet-encointer-ceremonies = { default-features = false, version = "2.0.0" } -pallet-encointer-ceremonies-rpc-runtime-api = { default-features = false, version = "2.0.0" } -pallet-encointer-communities = { default-features = false, version = "2.0.0" } -pallet-encointer-communities-rpc-runtime-api = { default-features = false, version = "2.0.0" } -pallet-encointer-faucet = { default-features = false, version = "2.0.0" } -pallet-encointer-reputation-commitments = { default-features = false, version = "2.0.0" } -pallet-encointer-scheduler = { default-features = false, version = "2.0.0" } +encointer-balances-tx-payment = { default-features = false, version = "5.0.0" } +encointer-balances-tx-payment-rpc-runtime-api = { default-features = false, version = "5.0.0" } +encointer-primitives = { default-features = false, version = "5.0.0" } +pallet-encointer-balances = { default-features = false, version = "5.0.0" } +pallet-encointer-bazaar = { default-features = false, version = "5.0.0" } +pallet-encointer-bazaar-rpc-runtime-api = { default-features = false, version = "5.0.0" } +pallet-encointer-ceremonies = { default-features = false, version = "5.0.0" } +pallet-encointer-ceremonies-rpc-runtime-api = { default-features = false, version = "5.0.0" } +pallet-encointer-communities = { default-features = false, version = "5.0.0" } +pallet-encointer-communities-rpc-runtime-api = { default-features = false, version = "5.0.0" } +pallet-encointer-faucet = { default-features = false, version = "5.0.0" } +pallet-encointer-reputation-commitments = { default-features = false, version = "5.0.0" } +pallet-encointer-scheduler = { default-features = false, version = "5.0.0" } # rpc [std] -pallet-encointer-bazaar-rpc = "2.0.0" -pallet-encointer-ceremonies-rpc = "2.0.0" -pallet-encointer-communities-rpc = "2.0.0" +pallet-encointer-bazaar-rpc = "5.0.0" +pallet-encointer-ceremonies-rpc = "5.0.0" +pallet-encointer-communities-rpc = "5.0.0" + +# fellowship runtimes +kusama-runtime-constants = { default-features = false, git = "https://github.com/encointer/runtimes.git", branch = "ab/upgrade-polkadot-v1.6.0" } +parachain-runtime = { package = "encointer-kusama-runtime", git = "https://github.com/encointer/runtimes.git", branch = "ab/upgrade-polkadot-v1.6.0" } # polkadot-sdk [no_std] -cumulus-pallet-aura-ext = { default-features = false, version = "0.3.0" } -cumulus-pallet-dmp-queue = { default-features = false, version = "0.3.0" } -cumulus-pallet-parachain-system = { default-features = false, features = ["parameterized-consensus-hook"], version = "0.3.0" } -cumulus-pallet-xcm = { default-features = false, version = "0.3.0" } -cumulus-pallet-xcmp-queue = { default-features = false, version = "0.3.0" } -cumulus-primitives-core = { default-features = false, version = "0.3.0" } -cumulus-primitives-timestamp = { default-features = false, version = "0.3.0" } -cumulus-primitives-utility = { default-features = false, version = "0.3.0" } -frame-benchmarking = { default-features = false, version = "24.0.0" } -frame-executive = { default-features = false, version = "24.0.0" } -frame-rpc-system = { package = "substrate-frame-rpc-system", version = "24.0.0" } -frame-support = { default-features = false, version = "24.0.0" } -frame-system = { default-features = false, version = "24.0.0" } -frame-system-benchmarking = { default-features = false, version = "24.0.0" } -frame-system-rpc-runtime-api = { default-features = false, version = "22.0.0" } -frame-try-runtime = { default-features = false, version = "0.30.0" } -kusama-runtime-constants = { default-features = false, version = "3.0.0" } -pallet-asset-tx-payment = { default-features = false, version = "24.0.0" } -pallet-aura = { default-features = false, version = "23.0.0" } -pallet-balances = { default-features = false, version = "24.0.0" } -pallet-collective = { default-features = false, version = "24.0.0" } -pallet-insecure-randomness-collective-flip = { default-features = false, version = "12.0.0" } -pallet-membership = { default-features = false, version = "24.0.0" } -pallet-proxy = { default-features = false, version = "24.0.0" } -pallet-scheduler = { default-features = false, version = "25.0.0" } -pallet-timestamp = { default-features = false, version = "23.0.0" } -pallet-transaction-payment = { default-features = false, version = "24.0.0" } -pallet-transaction-payment-rpc-runtime-api = { default-features = false, version = "24.0.0" } -pallet-treasury = { default-features = false, version = "23.0.0" } -pallet-utility = { default-features = false, version = "24.0.0" } -pallet-xcm = { default-features = false, version = "3.0.0" } -parachains-common = { default-features = false, version = "3.0.0" } -polkadot-core-primitives = { default-features = false, version = "3.0.0" } -polkadot-parachain-primitives = { default-features = false, version = "2.0.0" } -polkadot-runtime-common = { default-features = false, version = "3.0.0" } -sp-api = { default-features = false, version = "22.0.0" } -sp-block-builder = { default-features = false, version = "22.0.0" } -sp-consensus-aura = { default-features = false, version = "0.28.0" } -sp-core = { default-features = false, version = "24.0.0" } -sp-inherents = { default-features = false, version = "22.0.0" } -sp-io = { default-features = false, version = "26.0.0" } -sp-offchain = { default-features = false, version = "22.0.0" } -sp-runtime = { default-features = false, version = "27.0.0" } -sp-session = { default-features = false, version = "23.0.0" } -sp-std = { default-features = false, version = "11.0.0" } -sp-transaction-pool = { default-features = false, version = "22.0.0" } -sp-version = { default-features = false, version = "25.0.0" } -substrate-wasm-builder = { version = "13.0.0" } -try-runtime-cli = { default-features = false, version = "0.34.0" } -xcm = { package = "staging-xcm", default-features = false, version = "3.0.0" } -xcm-builder = { package = "staging-xcm-builder", default-features = false, version = "3.0.0" } -xcm-executor = { package = "staging-xcm-executor", default-features = false, version = "3.0.0" } +cumulus-pallet-aura-ext = { default-features = false, version = "0.7.0" } +cumulus-pallet-dmp-queue = { default-features = false, version = "0.7.0" } +cumulus-pallet-parachain-system = { default-features = false, features = ["parameterized-consensus-hook"], version = "0.7.0" } +cumulus-pallet-xcm = { default-features = false, version = "0.7.0" } +cumulus-pallet-xcmp-queue = { default-features = false, version = "0.7.0" } +cumulus-primitives-core = { default-features = false, version = "0.7.0" } +cumulus-primitives-timestamp = { default-features = false, version = "0.7.0" } +cumulus-primitives-utility = { default-features = false, version = "0.7.0" } +frame-benchmarking = { default-features = false, version = "28.0.0" } +frame-executive = { default-features = false, version = "28.0.0" } +frame-rpc-system = { package = "substrate-frame-rpc-system", version = "28.0.0" } +frame-support = { default-features = false, version = "28.0.0" } +frame-system = { default-features = false, version = "28.0.0" } +frame-system-benchmarking = { default-features = false, version = "28.0.0" } +frame-system-rpc-runtime-api = { default-features = false, version = "26.0.0" } +frame-try-runtime = { default-features = false, version = "0.34.0" } +pallet-asset-tx-payment = { default-features = false, version = "28.0.0" } +pallet-aura = { default-features = false, version = "27.0.0" } +pallet-balances = { default-features = false, version = "28.0.0" } +pallet-collective = { default-features = false, version = "28.0.0" } +pallet-insecure-randomness-collective-flip = { default-features = false, version = "16.0.0" } +pallet-membership = { default-features = false, version = "28.0.0" } +pallet-proxy = { default-features = false, version = "28.0.0" } +pallet-scheduler = { default-features = false, version = "29.0.0" } +pallet-timestamp = { default-features = false, version = "27.0.0" } +pallet-transaction-payment = { default-features = false, version = "28.0.0" } +pallet-transaction-payment-rpc-runtime-api = { default-features = false, version = "28.0.0" } +pallet-treasury = { default-features = false, version = "27.0.0" } +pallet-utility = { default-features = false, version = "28.0.0" } +pallet-xcm = { default-features = false, version = "7.0.0" } +parachains-common = { default-features = false, version = "7.0.0" } +parachain-info = { package = "staging-parachain-info", default-features = false, version = "0.7.0" } +polkadot-core-primitives = { default-features = false, version = "7.0.0" } +polkadot-parachain-primitives = { default-features = false, version = "6.0.0" } +polkadot-runtime-common = { default-features = false, version = "7.0.0" } +sp-api = { default-features = false, version = "26.0.0" } +sp-block-builder = { default-features = false, version = "26.0.0" } +sp-consensus-aura = { default-features = false, version = "0.32.0" } +sp-core = { default-features = false, version = "28.0.0" } +sp-inherents = { default-features = false, version = "26.0.0" } +sp-io = { default-features = false, version = "30.0.0" } +sp-offchain = { default-features = false, version = "26.0.0" } +sp-runtime = { default-features = false, version = "31.0.0" } +sp-session = { default-features = false, version = "27.0.0" } +sp-std = { default-features = false, version = "14.0.0" } +sp-transaction-pool = { default-features = false, version = "26.0.0" } +sp-version = { default-features = false, version = "29.0.0" } +substrate-wasm-builder = { version = "17.0.0" } +xcm = { package = "staging-xcm", default-features = false, version = "7.0.0" } +xcm-builder = { package = "staging-xcm-builder", default-features = false, version = "7.0.0" } +xcm-executor = { package = "staging-xcm-executor", default-features = false, version = "7.0.0" } # std stuff -cumulus-client-cli = "0.3.0" -cumulus-client-collator = "0.3.0" -cumulus-client-consensus-aura = "0.3.0" -cumulus-client-consensus-common = "0.3.0" -cumulus-client-consensus-proposer = "0.3.0" -cumulus-client-consensus-relay-chain = "0.3.0" -cumulus-client-network = "0.3.0" -cumulus-client-service = "0.3.0" -cumulus-primitives-parachain-inherent = "0.3.0" -cumulus-relay-chain-inprocess-interface = "0.3.0" -cumulus-relay-chain-interface = "0.3.0" -cumulus-relay-chain-rpc-interface = "0.3.0" -frame-benchmarking-cli = "28.0.0" -pallet-transaction-payment-rpc = "26.0.0" -polkadot-cli = "3.0.0" -polkadot-primitives = "3.0.0" -polkadot-service = "3.0.0" -sc-basic-authorship = "0.30.0" -sc-chain-spec = "23.0.0" -sc-cli = "0.32.0" -sc-client-api = "24.0.0" -sc-consensus = "0.29.0" -sc-executor = "0.28.0" -sc-network = "0.30.0" -sc-network-common = "0.29.0" -sc-network-sync = "0.29.0" -sc-rpc = "25.0.0" -sc-service = "0.31.0" -sc-sysinfo = "23.0.0" -sc-telemetry = "11.0.0" -sc-tracing = "24.0.0" -sc-transaction-pool = "24.0.0" -sc-transaction-pool-api = "24.0.0" -sp-blockchain = "24.0.0" -sp-consensus = "0.28.0" -sp-keyring = "27.0.0" -sp-keystore = "0.30.0" -sp-timestamp = "22.0.0" -substrate-build-script-utils = "8.0.0" -substrate-prometheus-endpoint = "0.15.0" +cumulus-client-cli = "0.7.0" +cumulus-client-collator = "0.7.0" +cumulus-client-consensus-aura = "0.7.0" +cumulus-client-consensus-common = "0.7.0" +cumulus-client-consensus-proposer = "0.7.0" +cumulus-client-consensus-relay-chain = "0.7.0" +cumulus-client-network = "0.7.0" +cumulus-client-service = "0.7.0" +cumulus-primitives-parachain-inherent = "0.7.0" +cumulus-relay-chain-inprocess-interface = "0.7.0" +cumulus-relay-chain-interface = "0.7.0" +cumulus-relay-chain-rpc-interface = "0.7.0" +frame-benchmarking-cli = "32.0.0" +pallet-transaction-payment-rpc = "30.0.0" +polkadot-cli = "7.0.0" +polkadot-primitives = "7.0.0" +polkadot-service = "7.0.0" +sc-basic-authorship = "0.34.0" +sc-chain-spec = "27.0.0" +sc-cli = "0.36.0" +sc-client-api = "28.0.0" +sc-consensus = "0.33.0" +sc-executor = "0.32.0" +sc-network = "0.34.0" +sc-network-common = "0.33.0" +sc-network-sync = "0.33.0" +sc-offchain = "29.0.0" +sc-rpc = "29.0.0" +sc-service = "0.35.0" +sc-sysinfo = "27.0.0" +sc-telemetry = "15.0.0" +sc-tracing = "28.0.0" +sc-transaction-pool = "28.0.0" +sc-transaction-pool-api = "28.0.0" +sp-blockchain = "28.0.0" +sp-consensus = "0.32.0" +sp-keyring = "31.0.0" +sp-keystore = "0.34.0" +sp-timestamp = "26.0.0" +substrate-build-script-utils = "11.0.0" +substrate-prometheus-endpoint = "0.17.0" #only while debugging/developping diff --git a/polkadot-parachains/Cargo.toml b/node/Cargo.toml similarity index 89% rename from polkadot-parachains/Cargo.toml rename to node/Cargo.toml index 2b469528..99e17056 100644 --- a/polkadot-parachains/Cargo.toml +++ b/node/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "encointer-collator" # align major.minor revision with the runtimes. bump patch revision ad lib. make this the github release tag -version = "1.6.0" +version = "1.7.0" authors = ["Encointer "] build = "build.rs" edition = "2021" @@ -13,6 +13,7 @@ path = "src/main.rs" [dependencies] async-trait = { workspace = true } clap = { workspace = true } +color-print = { workspace = true } futures = { workspace = true } hex-literal = { workspace = true } jsonrpsee = { workspace = true } @@ -25,9 +26,7 @@ parachains-common = { workspace = true, features = ["std"] } serde_json = { workspace = true } # Parachain runtimes -launch-runtime = { package = "launch-runtime", path = "launch-runtime" } -parachain-runtime = { package = "encointer-runtime", path = "encointer-runtime" } -#parachain-runtime = { package = "encointer-kusama-runtime", git = "https://github.com/brenzi/runtimes.git", branch = "main" } +parachain-runtime = { workspace = true, features = ["std"] } # encointer dependencies encointer-balances-tx-payment-rpc-runtime-api = { workspace = true, features = ["std"] } @@ -50,6 +49,7 @@ sc-executor = { workspace = true } sc-network = { workspace = true } sc-network-common = { workspace = true } sc-network-sync = { workspace = true } +sc-offchain = { workspace = true } sc-rpc = { workspace = true } sc-service = { workspace = true } sc-sysinfo = { workspace = true } @@ -72,7 +72,6 @@ sp-session = { workspace = true, features = ["std"] } sp-timestamp = { workspace = true, features = ["std"] } sp-transaction-pool = { workspace = true, features = ["std"] } substrate-prometheus-endpoint = { workspace = true } -try-runtime-cli = { workspace = true, optional = true } # RPC related dependencies frame-rpc-system = { workspace = true } @@ -113,7 +112,6 @@ tempfile = { workspace = true } default = [] runtime-benchmarks = [ 'polkadot-service/runtime-benchmarks', - 'launch-runtime/runtime-benchmarks', 'parachain-runtime/runtime-benchmarks', ] -try-runtime = ["parachain-runtime/try-runtime", "try-runtime-cli/try-runtime"] +try-runtime = ["parachain-runtime/try-runtime"] diff --git a/polkadot-parachains/build.rs b/node/build.rs similarity index 100% rename from polkadot-parachains/build.rs rename to node/build.rs diff --git a/polkadot-parachains/res/encointer-kusama.json b/node/res/encointer-kusama.json similarity index 100% rename from polkadot-parachains/res/encointer-kusama.json rename to node/res/encointer-kusama.json diff --git a/polkadot-parachains/res/encointer-rococo.json b/node/res/encointer-rococo.json similarity index 100% rename from polkadot-parachains/res/encointer-rococo.json rename to node/res/encointer-rococo.json diff --git a/polkadot-parachains/res/encointer-westend.json b/node/res/encointer-westend.json similarity index 100% rename from polkadot-parachains/res/encointer-westend.json rename to node/res/encointer-westend.json diff --git a/node/src/chain_spec.rs b/node/src/chain_spec.rs new file mode 100644 index 00000000..8df69bc4 --- /dev/null +++ b/node/src/chain_spec.rs @@ -0,0 +1,186 @@ +// Copyright 2019-2021 Parity Technologies (UK) Ltd. +// This file is part of Cumulus. + +// Cumulus 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. + +// Cumulus 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 Cumulus. If not, see . + +use cumulus_primitives_core::ParaId; +use parachain_runtime::{BalanceType, CeremonyPhaseType}; +use parachains_common::{AccountId, AuraId}; +use sc_chain_spec::{ChainSpecExtension, ChainSpecGroup}; +use serde::{Deserialize, Serialize}; + +pub use crate::chain_spec_helpers::{EncointerKeys, GenesisKeys, RelayChain, WellKnownKeys}; + +/// Specialized `ChainSpec` for the normal parachain runtime. +pub type ChainSpec = sc_service::GenericChainSpec<(), Extensions>; + +pub const ENDOWED_FUNDING: u128 = 1 << 60; + +/// Configure `endowed_accounts` with initial balance of `ENDOWED_FUNDING`. +pub fn allocate_endowance(endowed_accounts: Vec) -> Vec<(AccountId, u128)> { + endowed_accounts.into_iter().map(|k| (k, ENDOWED_FUNDING)).collect() +} + +/// The default XCM version to set in genesis config. +const SAFE_XCM_VERSION: u32 = xcm::prelude::XCM_VERSION; + +/// The extensions for the [`ChainSpec`]. +#[derive(Debug, Clone, PartialEq, Serialize, Deserialize, ChainSpecGroup, ChainSpecExtension)] +#[serde(deny_unknown_fields)] +pub struct Extensions { + /// The relay chain of the Parachain. + pub relay_chain: String, + /// The id of the Parachain. + pub para_id: u32, +} + +impl Extensions { + /// Try to get the extension from the given `ChainSpec`. + pub fn try_get(chain_spec: &dyn sc_service::ChainSpec) -> Option<&Self> { + sc_chain_spec::get_extension(chain_spec.extensions()) + } +} + +/// Chain-spec for the encointer runtime +pub fn encointer_spec( + para_id: ParaId, + genesis_keys: GenesisKeys, + relay_chain: RelayChain, +) -> ChainSpec { + let (council, endowed, authorities) = match genesis_keys { + GenesisKeys::Encointer => + (EncointerKeys::council(), [].to_vec(), EncointerKeys::authorities()), + GenesisKeys::EncointerWithCouncilEndowed => + (EncointerKeys::council(), EncointerKeys::council(), EncointerKeys::authorities()), + GenesisKeys::WellKnown => + (WellKnownKeys::council(), WellKnownKeys::endowed(), WellKnownKeys::authorities()), + }; + + #[allow(deprecated)] + ChainSpec::builder( + parachain_runtime::WASM_BINARY.expect("WASM binary was not built, please build it!"), + Extensions { relay_chain: relay_chain.to_string(), para_id: para_id.into() }, + ) + .with_name("Encointer Network") + .with_id(&format!("encointer-{}", relay_chain.to_string())) + .with_protocol_id(&format!("nctr-{}", relay_chain.to_string().chars().next().unwrap())) + .with_chain_type(relay_chain.chain_type()) + .with_properties(relay_chain.properties()) + .with_genesis_config_patch(encointer_genesis( + council.clone(), + authorities.clone(), + allocate_endowance(endowed.clone()), + para_id, + )) + .build() +} + +pub fn sybil_dummy_spec(para_id: ParaId, relay_chain: RelayChain) -> ChainSpec { + let (council, endowed, authorities) = + (WellKnownKeys::council(), WellKnownKeys::endowed(), WellKnownKeys::authorities()); + let mut properties = sc_chain_spec::Properties::new(); + properties.insert("tokenSymbol".into(), "DUM".into()); + properties.insert("tokenDecimals".into(), 12.into()); + properties.insert("ss58Format".into(), 13.into()); + + #[allow(deprecated)] + ChainSpec::builder( + parachain_runtime::WASM_BINARY.expect("WASM binary was not built, please build it!"), + Extensions { relay_chain: relay_chain.to_string(), para_id: para_id.into() }, + ) + .with_name("Sybil Dummy") + .with_id(&format!("sybil-dummy-{}", relay_chain.to_string())) + .with_protocol_id(&format!("nctr-{}", relay_chain.to_string().chars().next().unwrap())) + .with_chain_type(relay_chain.chain_type()) + .with_properties(properties) + .with_genesis_config_patch(encointer_genesis( + council.clone(), + authorities.clone(), + allocate_endowance(endowed.clone()), + para_id, + )) + .build() +} + +fn encointer_genesis( + encointer_council: Vec, + initial_authorities: Vec, + endowance_allocation: Vec<(AccountId, u128)>, + id: ParaId, +) -> serde_json::Value { + serde_json::json!({ + "balances": { + "balances": endowance_allocation, + }, + "parachainInfo": { + "parachainId": id, + }, + "polkadotXcm": { + "safeXcmVersion": Some(SAFE_XCM_VERSION), + }, + "aura": { + "authorities": initial_authorities, + }, + "membership": { + "members": encointer_council, + }, + "encointerScheduler": { + "currentPhase": CeremonyPhaseType::Registering, + "currentCeremonyIndex": 1, + "phaseDurations": vec![ + (CeremonyPhaseType::Registering, 604800000u64), // 7d + (CeremonyPhaseType::Assigning, 86400000u64), // 1d + (CeremonyPhaseType::Attesting, 172800000u64), // 2d + ], + }, + "encointerCeremonies": { + "ceremonyReward": BalanceType::from_num(1), + "timeTolerance": 600_000u64, // +-10min + "locationTolerance": 1_000, // [m] + "endorsementTicketsPerBootstrapper": 10, + "endorsementTicketsPerReputable": 5, + "reputationLifetime": 5, + "inactivityTimeout": 5, // idle ceremonies before purging community + "meetupTimeOffset": 0, + }, + "encointerCommunities": { + "minSolarTripTimeS": 1, // [s] + "maxSpeedMps": 1, // [m/s] suggested would be 83m/s for security, + }, + "encointerBalances": { + // for relative adjustment. + // 100_000 translates 5uKSM to 0.01 CC if ceremony reward is 20 CC + // lower values lead to lower fees in CC proportionally + "feeConversionFactor": 100_000u32, + }, + "encointerFaucet": { + "reserveAmount": 10_000_000_000_000u128, + }, + }) +} + +/// hard-coded runtime config for rococo +pub fn encointer_rococo() -> Result { + ChainSpec::from_json_bytes(&include_bytes!("../res/encointer-rococo.json")[..]) +} + +/// hard-coded runtime config for kusama +pub fn encointer_kusama() -> Result { + ChainSpec::from_json_bytes(&include_bytes!("../res/encointer-kusama.json")[..]) +} + +/// hard-coded runtime config for westend +pub fn encointer_westend() -> Result { + ChainSpec::from_json_bytes(&include_bytes!("../res/encointer-westend.json")[..]) +} diff --git a/polkadot-parachains/src/chain_spec_helpers.rs b/node/src/chain_spec_helpers.rs similarity index 86% rename from polkadot-parachains/src/chain_spec_helpers.rs rename to node/src/chain_spec_helpers.rs index 9e537070..5b8ff001 100644 --- a/polkadot-parachains/src/chain_spec_helpers.rs +++ b/node/src/chain_spec_helpers.rs @@ -138,34 +138,25 @@ impl RelayChain { } pub fn rococo_properties() -> Properties { - serde_json::from_str( - r#"{ - "ss58Format": 2, - "tokenDecimals": 12, - "tokenSymbol": "ROC" - }"#, - ) - .unwrap() + let mut properties = sc_chain_spec::Properties::new(); + properties.insert("tokenSymbol".into(), "ROC".into()); + properties.insert("tokenDecimals".into(), 12.into()); + properties.insert("ss58Format".into(), 2.into()); + properties } pub fn kusama_properties() -> Properties { - serde_json::from_str( - r#"{ - "ss58Format": 2, - "tokenDecimals": 12, - "tokenSymbol": "KSM" - }"#, - ) - .unwrap() + let mut properties = sc_chain_spec::Properties::new(); + properties.insert("tokenSymbol".into(), "KSM".into()); + properties.insert("tokenDecimals".into(), 12.into()); + properties.insert("ss58Format".into(), 2.into()); + properties } pub fn westend_properties() -> Properties { - serde_json::from_str( - r#"{ - "ss58Format": 2, - "tokenDecimals": 12, - "tokenSymbol": "WND" - }"#, - ) - .unwrap() + let mut properties = sc_chain_spec::Properties::new(); + properties.insert("tokenSymbol".into(), "WND".into()); + properties.insert("tokenDecimals".into(), 12.into()); + properties.insert("ss58Format".into(), 2.into()); + properties } diff --git a/polkadot-parachains/src/cli.rs b/node/src/cli.rs similarity index 71% rename from polkadot-parachains/src/cli.rs rename to node/src/cli.rs index b6dff763..73ef996b 100644 --- a/polkadot-parachains/src/cli.rs +++ b/node/src/cli.rs @@ -1,28 +1,8 @@ -// Copyright 2019-2021 Parity Technologies (UK) Ltd. -// This file is part of Cumulus. - -// Cumulus 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. - -// Cumulus 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 Cumulus. If not, see . - use std::path::PathBuf; /// Sub-commands supported by the collator. #[derive(Debug, clap::Subcommand)] pub enum Subcommand { - /// Key management CLI utilities - #[command(subcommand)] - Key(sc_cli::KeySubcommand), - /// Build a chain specification. BuildSpec(sc_cli::BuildSpecCmd), @@ -44,8 +24,11 @@ pub enum Subcommand { /// Remove the whole chain. PurgeChain(cumulus_client_cli::PurgeChainCmd), - /// Export the genesis state of the parachain. - ExportGenesisState(cumulus_client_cli::ExportGenesisStateCommand), + /// Export the genesis head data of the parachain. + /// + /// Head data is the encoded block header. + #[command(alias = "export-genesis-state")] + ExportGenesisHead(cumulus_client_cli::ExportGenesisHeadCommand), /// Export the genesis wasm of the parachain. ExportGenesisWasm(cumulus_client_cli::ExportGenesisWasmCommand), @@ -61,12 +44,25 @@ pub enum Subcommand { TryRuntime, } +const AFTER_HELP_EXAMPLE: &str = color_print::cstr!( + r#"Examples: + parachain-template-node build-spec --disable-default-bootnode > plain-parachain-chainspec.json + Export a chainspec for a local testnet in json format. + parachain-template-node --chain plain-parachain-chainspec.json --tmp -- --chain rococo-local + Launch a full node with chain specification loaded from plain-parachain-chainspec.json. + parachain-template-node + Launch a full node with default parachain local-testnet and relay chain rococo-local. + parachain-template-node --collator + Launch a collator with default parachain local-testnet and relay chain rococo-local. + "# +); #[derive(Debug, clap::Parser)] #[command( propagate_version = true, args_conflicts_with_subcommands = true, subcommand_negates_reqs = true )] +#[clap(after_help = AFTER_HELP_EXAMPLE)] pub struct Cli { #[command(subcommand)] pub subcommand: Option, @@ -86,7 +82,7 @@ pub struct Cli { /// Relay chain arguments #[arg(raw = true)] - pub relaychain_args: Vec, + pub relay_chain_args: Vec, } #[derive(Debug)] diff --git a/polkadot-parachains/src/command.rs b/node/src/command.rs similarity index 53% rename from polkadot-parachains/src/command.rs rename to node/src/command.rs index 63d21ffb..42b3038d 100644 --- a/polkadot-parachains/src/command.rs +++ b/node/src/command.rs @@ -16,61 +16,39 @@ use crate::{ chain_spec, - chain_spec::{EncointerChainSpec, GenesisKeys, LaunchChainSpec, RelayChain}, + chain_spec::{ChainSpec, GenesisKeys, RelayChain}, cli::{Cli, RelayChainCli, Subcommand}, - service::{new_partial, Block}, + service::new_partial, }; use cumulus_primitives_core::ParaId; use frame_benchmarking_cli::{BenchmarkCmd, SUBSTRATE_REFERENCE_HARDWARE}; use log::info; +use parachains_common::opaque::Block; use sc_cli::{ - ChainSpec, CliConfiguration, DefaultConfigurationValues, ImportParams, KeystoreParams, - NetworkParams, Result, SharedParams, SubstrateCli, + CliConfiguration, DefaultConfigurationValues, ImportParams, KeystoreParams, NetworkParams, + Result, SharedParams, SubstrateCli, }; use sc_service::config::{BasePath, PrometheusConfig}; use sp_runtime::traits::AccountIdConversion; use std::net::SocketAddr; -trait IdentifyChain { - fn is_launch(&self) -> bool; - fn is_encointer(&self) -> bool; -} - -impl IdentifyChain for dyn sc_service::ChainSpec { - fn is_launch(&self) -> bool { - self.name().starts_with("Encointer Launch") - } - fn is_encointer(&self) -> bool { - self.name().starts_with("Encointer Network") - } -} - -impl IdentifyChain for T { - fn is_launch(&self) -> bool { - ::is_launch(self) - } - fn is_encointer(&self) -> bool { - ::is_encointer(self) - } -} - // If we don't skipp here, each cmd expands to 5 lines. I think we have better overview like this. #[rustfmt::skip] fn load_spec( id: &str, -) -> std::result::Result, String> { +) -> std::result::Result, String> { Ok(match id { // live configs (hard coded genesis state. genesis will always be shell for a live system) - "encointer-rococo" => Box::new(chain_spec::launch_rococo()?), - "encointer-westend" => Box::new(chain_spec::launch_westend()?), - "encointer-kusama" => Box::new(chain_spec::launch_kusama()?), + "encointer-rococo" => Box::new(chain_spec::encointer_rococo()?), + "encointer-westend" => Box::new(chain_spec::encointer_westend()?), + "encointer-kusama" => Box::new(chain_spec::encointer_kusama()?), // live config initialize - "rococo-fresh" => Box::new(chain_spec::launch_spec( + "rococo-fresh" => Box::new(chain_spec::encointer_spec( 1003.into(), GenesisKeys::Encointer, RelayChain::Rococo)), - "westend-fresh" => Box::new(chain_spec::launch_spec( + "westend-fresh" => Box::new(chain_spec::encointer_spec( 1001.into(), GenesisKeys::Encointer, RelayChain::Westend)), - "kusama-fresh" => Box::new(chain_spec::launch_spec( + "kusama-fresh" => Box::new(chain_spec::encointer_spec( 1001.into(), GenesisKeys::Encointer, RelayChain::Kusama)), // on-the-spot specs @@ -89,21 +67,6 @@ fn load_spec( "encointer-kusama-local-dev" => Box::new(chain_spec::encointer_spec( 1001.into(), GenesisKeys::WellKnown, RelayChain::KusamaLocal)), - "launch-rococo-local" => Box::new(chain_spec::launch_spec( - 1003.into(), GenesisKeys::EncointerWithCouncilEndowed, RelayChain::RococoLocal)), - "launch-rococo-local-dev" => Box::new(chain_spec::launch_spec( - 1003.into(), GenesisKeys::WellKnown, RelayChain::RococoLocal)), - - "launch-westend-local" => Box::new(chain_spec::launch_spec( - 1001.into(), GenesisKeys::EncointerWithCouncilEndowed, RelayChain::WestendLocal)), - "launch-westend-local-dev" => Box::new(chain_spec::launch_spec( - 1001.into(), GenesisKeys::WellKnown, RelayChain::WestendLocal)), - - "launch-kusama-local" => Box::new(chain_spec::launch_spec( - 1001.into(), GenesisKeys::EncointerWithCouncilEndowed, RelayChain::KusamaLocal)), - "launch-kusama-local-dev" => Box::new(chain_spec::launch_spec( - 1001.into(), GenesisKeys::WellKnown, RelayChain::KusamaLocal)), - "sybil-dummy-rococo" => Box::new(chain_spec::sybil_dummy_spec( 1863.into(), RelayChain::Rococo)), "sybil-dummy-rococo-local" => Box::new(chain_spec::sybil_dummy_spec( @@ -111,12 +74,8 @@ fn load_spec( "" => return Err("No chain-spec specified".into()), path => { - let chain_spec = EncointerChainSpec::from_json_file(path.into())?; - if chain_spec.is_launch() { - Box::new(LaunchChainSpec::from_json_file(path.into())?) - } else { - Box::new(chain_spec) - } + let chain_spec = ChainSpec::from_json_file(path.into())?; + Box::new(chain_spec) }, }) } @@ -152,7 +111,7 @@ impl SubstrateCli for Cli { 2017 } - fn load_spec(&self, id: &str) -> std::result::Result, String> { + fn load_spec(&self, id: &str) -> std::result::Result, String> { load_spec(id) } } @@ -188,57 +147,19 @@ impl SubstrateCli for RelayChainCli { 2017 } - fn load_spec(&self, id: &str) -> std::result::Result, String> { + fn load_spec(&self, id: &str) -> std::result::Result, String> { polkadot_cli::Cli::from_iter([RelayChainCli::executable_name()].iter()).load_spec(id) } } -/// Creates partial components for the runtimes that are supported by the benchmarks. -macro_rules! construct_benchmark_partials { - ($config:expr, |$partials:ident| $code:expr) => { - if $config.chain_spec.is_launch() { - let $partials = new_partial::( - &$config, - crate::service::aura_build_import_queue::<_, parachains_common::AuraId>, - )?; - $code - } else if $config.chain_spec.is_encointer() { - let $partials = new_partial::( - &$config, - crate::service::aura_build_import_queue::<_, parachains_common::AuraId>, - )?; - $code - } else { - Err("The chain is not supported".into()) - } - }; -} - macro_rules! construct_async_run { (|$components:ident, $cli:ident, $cmd:ident, $config:ident| $( $code:tt )* ) => {{ let runner = $cli.create_runner($cmd)?; - if runner.config().chain_spec.is_launch() { - runner.async_run(|$config| { - let $components = new_partial::( - &$config, - crate::service::aura_build_import_queue::<_, parachains_common::AuraId>, - )?; - let task_manager = $components.task_manager; - { $( $code )* }.map(|v| (v, task_manager)) - }) - } else { - runner.async_run(|$config| { - let $components = new_partial::< - parachain_runtime::RuntimeApi, - _ - >( - &$config, - crate::service::aura_build_import_queue::<_, parachains_common::AuraId>, - )?; + runner.async_run(|$config| { + let $components = new_partial(&$config)?; let task_manager = $components.task_manager; { $( $code )* }.map(|v| (v, task_manager)) }) - } }} } @@ -271,16 +192,18 @@ pub fn run() -> Result<()> { Ok(cmd.run(components.client, components.import_queue)) }) }, - Some(Subcommand::Revert(cmd)) => construct_async_run!(|components, cli, cmd, config| { - Ok(cmd.run(components.client, components.backend, None)) - }), + Some(Subcommand::Revert(cmd)) => { + construct_async_run!(|components, cli, cmd, config| { + Ok(cmd.run(components.client, components.backend, None)) + }) + }, Some(Subcommand::PurgeChain(cmd)) => { let runner = cli.create_runner(cmd)?; runner.sync_run(|config| { let polkadot_cli = RelayChainCli::new( &config, - [RelayChainCli::executable_name()].iter().chain(cli.relaychain_args.iter()), + [RelayChainCli::executable_name()].iter().chain(cli.relay_chain_args.iter()), ); let polkadot_config = SubstrateCli::create_configuration( @@ -288,15 +211,19 @@ pub fn run() -> Result<()> { &polkadot_cli, config.tokio_handle.clone(), ) - .map_err(|err| format!("Relay chain argument error: {}", err))?; + .map_err(|err| format!("Relay chain argument error: {}", err))?; cmd.run(config, polkadot_config) }) }, - Some(Subcommand::ExportGenesisState(cmd)) => - construct_async_run!(|components, cli, cmd, config| { - Ok(async move { cmd.run(&*config.chain_spec, &*components.client) }) - }), + Some(Subcommand::ExportGenesisHead(cmd)) => { + let runner = cli.create_runner(cmd)?; + runner.sync_run(|config| { + let partials = new_partial(&config)?; + + cmd.run(partials.client) + }) + }, Some(Subcommand::ExportGenesisWasm(cmd)) => { let runner = cli.create_runner(cmd)?; runner.sync_run(|_config| { @@ -306,7 +233,6 @@ pub fn run() -> Result<()> { }, Some(Subcommand::Benchmark(cmd)) => { let runner = cli.create_runner(cmd)?; - // Switch on the concrete benchmark sub-command- match cmd { BenchmarkCmd::Pallet(cmd) => @@ -314,11 +240,12 @@ pub fn run() -> Result<()> { runner.sync_run(|config| cmd.run::(config)) } else { Err("Benchmarking wasn't enabled when building the node. \ - You can enable it with `--features runtime-benchmarks`." + You can enable it with `--features runtime-benchmarks`." .into()) }, BenchmarkCmd::Block(cmd) => runner.sync_run(|config| { - construct_benchmark_partials!(config, |partials| cmd.run(partials.client)) + let partials = new_partial(&config)?; + cmd.run(partials.client) }), #[cfg(not(feature = "runtime-benchmarks"))] BenchmarkCmd::Storage(_) => @@ -327,15 +254,13 @@ pub fn run() -> Result<()> { to enable storage benchmarks." .into(), ) - .into()), + .into()), #[cfg(feature = "runtime-benchmarks")] BenchmarkCmd::Storage(cmd) => runner.sync_run(|config| { - construct_benchmark_partials!(config, |partials| { - let db = partials.backend.expose_db(); - let storage = partials.backend.expose_storage(); - - cmd.run(config, partials.client.clone(), db, storage) - }) + let partials = new_partial(&config)?; + let db = partials.backend.expose_db(); + let storage = partials.backend.expose_storage(); + cmd.run(config, partials.client.clone(), db, storage) }), BenchmarkCmd::Machine(cmd) => runner.sync_run(|config| cmd.run(&config, SUBSTRATE_REFERENCE_HARDWARE.clone())), @@ -346,96 +271,52 @@ pub fn run() -> Result<()> { } }, Some(Subcommand::TryRuntime) => Err("The `try-runtime` subcommand has been migrated to a standalone CLI (https://github.com/paritytech/try-runtime-cli). It is no longer being maintained here and will be removed entirely some time after January 2024. Please remove this subcommand from your runtime and use the standalone CLI.".into()), - Some(Subcommand::Key(cmd)) => Ok(cmd.run(&cli)?), None => { let runner = cli.create_runner(&cli.run.normalize())?; let collator_options = cli.run.collator_options(); runner.run_node_until_exit(|config| async move { - // If Statemint (Statemine, Westmint, Rockmine) DB exists and we're using the - // asset-hub chain spec, then rename the base path to the new chain ID. In the case - // that both file paths exist, the node will exit, as the user must decide (by - // deleting one path) the information that they want to use as their DB. - let old_name = match config.chain_spec.id() { - "asset-hub-polkadot" => Some("statemint"), - "asset-hub-kusama" => Some("statemine"), - "asset-hub-westend" => Some("westmint"), - "asset-hub-rococo" => Some("rockmine"), - _ => None, - }; - - if let Some(old_name) = old_name { - let new_path = config.base_path.config_dir(config.chain_spec.id()); - let old_path = config.base_path.config_dir(old_name); - - if old_path.exists() && new_path.exists() { - return Err(format!( - "Found legacy {} path {} and new asset-hub path {}. Delete one path such that only one exists.", - old_name, old_path.display(), new_path.display() - ).into()) - } - - if old_path.exists() { - std::fs::rename(old_path.clone(), new_path.clone())?; - info!( - "Statemint renamed to Asset Hub. The filepath with associated data on disk has been renamed from {} to {}.", - old_path.display(), new_path.display() - ); - } - } - - let hwbench = (!cli.no_hardware_benchmarks).then_some( - config.database.path().map(|database_path| { + let hwbench = (!cli.no_hardware_benchmarks) + .then_some(config.database.path().map(|database_path| { let _ = std::fs::create_dir_all(database_path); sc_sysinfo::gather_hwbench(Some(database_path)) - })).flatten(); + })) + .flatten(); let para_id = chain_spec::Extensions::try_get(&*config.chain_spec) .map(|e| e.para_id) - .ok_or("Could not find parachain extension in chain-spec.")?; + .ok_or("Could not find parachain ID in chain-spec.")?; let polkadot_cli = RelayChainCli::new( &config, - [RelayChainCli::executable_name()].iter().chain(cli.relaychain_args.iter()), + [RelayChainCli::executable_name()].iter().chain(cli.relay_chain_args.iter()), ); let id = ParaId::from(para_id); let parachain_account = - AccountIdConversion::::into_account_truncating(&id); + AccountIdConversion::::into_account_truncating( + &id, + ); let tokio_handle = config.tokio_handle.clone(); let polkadot_config = SubstrateCli::create_configuration(&polkadot_cli, &polkadot_cli, tokio_handle) .map_err(|err| format!("Relay chain argument error: {}", err))?; - info!("Parachain id: {:?}", id); - info!("Parachain Account: {}", parachain_account); + info!("Parachain Account: {parachain_account}"); info!("Is collating: {}", if config.role.is_authority() { "yes" } else { "no" }); - if config.chain_spec.is_launch() { - crate::service::start_launch_node( - config, - polkadot_config, - collator_options, - id, - hwbench, - ) - .await - .map(|r| r.0) - .map_err(Into::into) - } else { - crate::service::start_encointer_node( - config, - polkadot_config, - collator_options, - id, - hwbench, - ) + crate::service::start_parachain_node( + config, + polkadot_config, + collator_options, + id, + hwbench, + ) .await .map(|r| r.0) .map_err(Into::into) - } }) }, } @@ -486,7 +367,7 @@ impl CliConfiguration for RelayChainCli { fn prometheus_config( &self, default_listen_port: u16, - chain_spec: &Box, + chain_spec: &Box, ) -> Result> { self.base.base.prometheus_config(default_listen_port, chain_spec) } @@ -518,6 +399,10 @@ impl CliConfiguration for RelayChainCli { self.base.base.transaction_pool(is_dev) } + fn trie_cache_maximum_size(&self) -> Result> { + self.base.base.trie_cache_maximum_size() + } + fn rpc_methods(&self) -> Result { self.base.base.rpc_methods() } @@ -552,7 +437,7 @@ impl CliConfiguration for RelayChainCli { fn telemetry_endpoints( &self, - chain_spec: &Box, + chain_spec: &Box, ) -> Result> { self.base.base.telemetry_endpoints(chain_spec) } @@ -561,118 +446,3 @@ impl CliConfiguration for RelayChainCli { self.base.base.node_name() } } - -#[cfg(test)] -mod tests { - use crate::{ - chain_spec::{get_account_id_from_seed, get_from_seed}, - command::{Runtime, RuntimeResolver}, - }; - use sc_chain_spec::{ChainSpec, ChainSpecExtension, ChainSpecGroup, ChainType, Extension}; - use serde::{Deserialize, Serialize}; - use sp_core::sr25519; - use std::path::PathBuf; - use tempfile::TempDir; - - #[derive( - Debug, Clone, PartialEq, Serialize, Deserialize, ChainSpecGroup, ChainSpecExtension, Default, - )] - #[serde(deny_unknown_fields)] - pub struct Extensions1 { - pub attribute1: String, - pub attribute2: u32, - } - - #[derive( - Debug, Clone, PartialEq, Serialize, Deserialize, ChainSpecGroup, ChainSpecExtension, Default, - )] - #[serde(deny_unknown_fields)] - pub struct Extensions2 { - pub attribute_x: String, - pub attribute_y: String, - pub attribute_z: u32, - } - - fn store_configuration(dir: &TempDir, spec: Box) -> PathBuf { - let raw_output = true; - let json = sc_service::chain_ops::build_spec(&*spec, raw_output) - .expect("Failed to build json string"); - let mut cfg_file_path = dir.path().to_path_buf(); - cfg_file_path.push(spec.id()); - cfg_file_path.set_extension("json"); - std::fs::write(&cfg_file_path, json).expect("Failed to write to json file"); - cfg_file_path - } - - pub type DummyChainSpec = - sc_service::GenericChainSpec; - - pub fn create_default_with_extensions( - id: &str, - extension: E, - ) -> DummyChainSpec { - DummyChainSpec::from_genesis( - "Dummy local testnet", - id, - ChainType::Local, - move || { - crate::chain_spec::rococo_parachain::testnet_genesis( - get_account_id_from_seed::("Alice"), - vec![ - get_from_seed::("Alice"), - get_from_seed::("Bob"), - ], - vec![get_account_id_from_seed::("Alice")], - 1000.into(), - ) - }, - Vec::new(), - None, - None, - None, - None, - extension, - ) - } - - #[test] - fn test_resolve_runtime_for_different_configuration_files() { - let temp_dir = tempfile::tempdir().expect("Failed to access tempdir"); - - let path = store_configuration( - &temp_dir, - Box::new(create_default_with_extensions("shell-1", Extensions1::default())), - ); - assert_eq!(Runtime::Shell, path.runtime()); - - let path = store_configuration( - &temp_dir, - Box::new(create_default_with_extensions("shell-2", Extensions2::default())), - ); - assert_eq!(Runtime::Shell, path.runtime()); - - let path = store_configuration( - &temp_dir, - Box::new(create_default_with_extensions("seedling", Extensions2::default())), - ); - assert_eq!(Runtime::Seedling, path.runtime()); - - let path = store_configuration( - &temp_dir, - Box::new(crate::chain_spec::rococo_parachain::rococo_parachain_local_config()), - ); - assert_eq!(Runtime::Default, path.runtime()); - - let path = store_configuration( - &temp_dir, - Box::new(crate::chain_spec::statemint::statemine_local_config()), - ); - assert_eq!(Runtime::Statemine, path.runtime()); - - let path = store_configuration( - &temp_dir, - Box::new(crate::chain_spec::contracts::contracts_rococo_local_config()), - ); - assert_eq!(Runtime::ContractsRococo, path.runtime()); - } -} diff --git a/node/src/main.rs b/node/src/main.rs new file mode 100644 index 00000000..d7384047 --- /dev/null +++ b/node/src/main.rs @@ -0,0 +1,14 @@ +//! Substrate Parachain Node Template CLI + +#![warn(missing_docs)] + +mod chain_spec; +mod chain_spec_helpers; +mod cli; +mod command; +mod rpc; +mod service; + +fn main() -> sc_cli::Result<()> { + command::run() +} diff --git a/polkadot-parachains/src/rpc.rs b/node/src/rpc.rs similarity index 61% rename from polkadot-parachains/src/rpc.rs rename to node/src/rpc.rs index eb81783e..e7b36289 100644 --- a/polkadot-parachains/src/rpc.rs +++ b/node/src/rpc.rs @@ -1,33 +1,22 @@ -// Copyright 2021 Parity Technologies (UK) Ltd. -// This file is part of Cumulus. - -// Cumulus 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. - -// Cumulus 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 Cumulus. If not, see . - -//! Parachain-specific RPCs implementation. +//! A collection of node-specific RPC methods. +//! Substrate provides the `sc-rpc` crate, which defines the core RPC layer +//! used by Substrate nodes. This file extends those RPC definitions with +//! capabilities that are specific to this project's runtime configuration. #![warn(missing_docs)] +use sc_client_api::AuxStore; use std::sync::Arc; -use parachain_runtime::{AssetBalance, AssetId, Moment}; -use parachains_common::{AccountId, Balance, Block, BlockNumber, Nonce}; -use sc_client_api::AuxStore; -pub use sc_rpc::{DenyUnsafe, SubscriptionTaskExecutor}; +use parachain_runtime::{AccountId, AssetBalance, AssetId, Balance, BlockNumber, Moment, Nonce}; +use parachains_common::opaque::Block; + +pub use sc_rpc::DenyUnsafe; use sc_transaction_pool_api::TransactionPool; use sp_api::ProvideRuntimeApi; use sp_block_builder::BlockBuilder; use sp_blockchain::{Error as BlockChainError, HeaderBackend, HeaderMetadata}; + /// A type representing all RPC extensions. pub type RpcExtension = jsonrpsee::RpcModule<()>; @@ -57,8 +46,8 @@ where + Send + Sync + 'static, - C::Api: frame_rpc_system::AccountNonceApi, C::Api: pallet_transaction_payment_rpc::TransactionPaymentRuntimeApi, + C::Api: frame_rpc_system::AccountNonceApi, C::Api: BlockBuilder, P: TransactionPool + Sync + Send + 'static, C::Api: pallet_encointer_ceremonies_rpc_runtime_api::CeremoniesApi, @@ -105,32 +94,3 @@ where Ok(module) } - -/// Instantiate reduced RPC extensions for launch runtime -pub fn create_launch_ext( - deps: FullDeps, -) -> Result> -where - C: ProvideRuntimeApi - + HeaderBackend - + AuxStore - + HeaderMetadata - + Send - + Sync - + 'static, - C::Api: frame_rpc_system::AccountNonceApi, - C::Api: pallet_transaction_payment_rpc::TransactionPaymentRuntimeApi, - C::Api: BlockBuilder, - P: TransactionPool + Sync + Send + 'static, -{ - use frame_rpc_system::{System, SystemApiServer}; - use pallet_transaction_payment_rpc::{TransactionPayment, TransactionPaymentApiServer}; - - let mut module = RpcExtension::new(()); - let FullDeps { client, pool, backend: _, offchain_indexing_enabled: _, deny_unsafe } = deps; - - module.merge(System::new(client.clone(), pool, deny_unsafe).into_rpc())?; - module.merge(TransactionPayment::new(client).into_rpc())?; - - Ok(module) -} diff --git a/node/src/service.rs b/node/src/service.rs new file mode 100644 index 00000000..91deb97d --- /dev/null +++ b/node/src/service.rs @@ -0,0 +1,440 @@ +//! Service and ServiceFactory implementation. Specialized wrapper over substrate service. + +// std +use std::{sync::Arc, time::Duration}; + +use cumulus_client_cli::CollatorOptions; +// Local Runtime Types +use parachain_runtime::{Hash, RuntimeApi}; +use parachains_common::opaque::Block; + +// Cumulus Imports +use cumulus_client_collator::service::CollatorService; +use cumulus_client_consensus_common::ParachainBlockImport as TParachainBlockImport; +use cumulus_client_consensus_proposer::Proposer; +use cumulus_client_service::{ + build_network, build_relay_chain_interface, prepare_node_config, start_relay_chain_tasks, + BuildNetworkParams, CollatorSybilResistance, DARecoveryProfile, StartRelayChainTasksParams, +}; +use cumulus_primitives_core::{relay_chain::CollatorPair, ParaId}; +use cumulus_relay_chain_interface::{OverseerHandle, RelayChainInterface}; + +// Substrate Imports +use frame_benchmarking_cli::SUBSTRATE_REFERENCE_HARDWARE; +use sc_client_api::Backend; +use sc_consensus::ImportQueue; +use sc_executor::{ + HeapAllocStrategy, NativeElseWasmExecutor, WasmExecutor, DEFAULT_HEAP_ALLOC_STRATEGY, +}; +use sc_network::NetworkBlock; +use sc_network_sync::SyncingService; +use sc_service::{Configuration, PartialComponents, TFullBackend, TFullClient, TaskManager}; +use sc_telemetry::{Telemetry, TelemetryHandle, TelemetryWorker, TelemetryWorkerHandle}; +use sc_transaction_pool_api::OffchainTransactionPoolFactory; +use sp_keystore::KeystorePtr; +use substrate_prometheus_endpoint::Registry; + +/// Native executor type. +pub struct ParachainNativeExecutor; + +impl sc_executor::NativeExecutionDispatch for ParachainNativeExecutor { + type ExtendHostFunctions = frame_benchmarking::benchmarking::HostFunctions; + + fn dispatch(method: &str, data: &[u8]) -> Option> { + parachain_runtime::api::dispatch(method, data) + } + + fn native_version() -> sc_executor::NativeVersion { + parachain_runtime::native_version() + } +} + +type ParachainExecutor = NativeElseWasmExecutor; + +type ParachainClient = TFullClient; + +type ParachainBackend = TFullBackend; + +type ParachainBlockImport = TParachainBlockImport, ParachainBackend>; + +/// Assembly of PartialComponents (enough to run chain ops subcommands) +pub type Service = PartialComponents< + ParachainClient, + ParachainBackend, + (), + sc_consensus::DefaultImportQueue, + sc_transaction_pool::FullPool, + (ParachainBlockImport, Option, Option), +>; + +/// Starts a `ServiceBuilder` for a full service. +/// +/// Use this macro if you don't actually need the full service, but just the builder in order to +/// be able to perform chain operations. +pub fn new_partial(config: &Configuration) -> Result { + let telemetry = config + .telemetry_endpoints + .clone() + .filter(|x| !x.is_empty()) + .map(|endpoints| -> Result<_, sc_telemetry::Error> { + let worker = TelemetryWorker::new(16)?; + let telemetry = worker.handle().new_telemetry(endpoints); + Ok((worker, telemetry)) + }) + .transpose()?; + + let heap_pages = config + .default_heap_pages + .map_or(DEFAULT_HEAP_ALLOC_STRATEGY, |h| HeapAllocStrategy::Static { extra_pages: h as _ }); + + let wasm = WasmExecutor::builder() + .with_execution_method(config.wasm_method) + .with_onchain_heap_alloc_strategy(heap_pages) + .with_offchain_heap_alloc_strategy(heap_pages) + .with_max_runtime_instances(config.max_runtime_instances) + .with_runtime_cache_size(config.runtime_cache_size) + .build(); + + let executor = ParachainExecutor::new_with_wasm_executor(wasm); + + let (client, backend, keystore_container, task_manager) = + sc_service::new_full_parts::( + config, + telemetry.as_ref().map(|(_, telemetry)| telemetry.handle()), + executor, + )?; + let client = Arc::new(client); + + let telemetry_worker_handle = telemetry.as_ref().map(|(worker, _)| worker.handle()); + + let telemetry = telemetry.map(|(worker, telemetry)| { + task_manager.spawn_handle().spawn("telemetry", None, worker.run()); + telemetry + }); + + let transaction_pool = sc_transaction_pool::BasicPool::new_full( + config.transaction_pool.clone(), + config.role.is_authority().into(), + config.prometheus_registry(), + task_manager.spawn_essential_handle(), + client.clone(), + ); + + let block_import = ParachainBlockImport::new(client.clone(), backend.clone()); + + let import_queue = build_import_queue( + client.clone(), + block_import.clone(), + config, + telemetry.as_ref().map(|telemetry| telemetry.handle()), + &task_manager, + )?; + + Ok(PartialComponents { + backend, + client, + import_queue, + keystore_container, + task_manager, + transaction_pool, + select_chain: (), + other: (block_import, telemetry, telemetry_worker_handle), + }) +} + +/// Start a node with the given parachain `Configuration` and relay chain `Configuration`. +/// +/// This is the actual implementation that is abstract over the executor and the runtime api. +#[sc_tracing::logging::prefix_logs_with("Parachain")] +async fn start_node_impl( + parachain_config: Configuration, + polkadot_config: Configuration, + collator_options: CollatorOptions, + para_id: ParaId, + hwbench: Option, +) -> sc_service::error::Result<(TaskManager, Arc)> { + let parachain_config = prepare_node_config(parachain_config); + + let params = new_partial(¶chain_config)?; + let (block_import, mut telemetry, telemetry_worker_handle) = params.other; + let net_config = sc_network::config::FullNetworkConfiguration::new(¶chain_config.network); + + let client = params.client.clone(); + let backend = params.backend.clone(); + let mut task_manager = params.task_manager; + + let (relay_chain_interface, collator_key) = build_relay_chain_interface( + polkadot_config, + ¶chain_config, + telemetry_worker_handle, + &mut task_manager, + collator_options.clone(), + hwbench.clone(), + ) + .await + .map_err(|e| sc_service::Error::Application(Box::new(e) as Box<_>))?; + + let validator = parachain_config.role.is_authority(); + let prometheus_registry = parachain_config.prometheus_registry().cloned(); + let transaction_pool = params.transaction_pool.clone(); + let import_queue_service = params.import_queue.service(); + + let (network, system_rpc_tx, tx_handler_controller, start_network, sync_service) = + build_network(BuildNetworkParams { + parachain_config: ¶chain_config, + net_config, + client: client.clone(), + transaction_pool: transaction_pool.clone(), + para_id, + spawn_handle: task_manager.spawn_handle(), + relay_chain_interface: relay_chain_interface.clone(), + import_queue: params.import_queue, + sybil_resistance_level: CollatorSybilResistance::Resistant, // because of Aura + }) + .await?; + + if parachain_config.offchain_worker.enabled { + use futures::FutureExt; + + task_manager.spawn_handle().spawn( + "offchain-workers-runner", + "offchain-work", + sc_offchain::OffchainWorkers::new(sc_offchain::OffchainWorkerOptions { + runtime_api_provider: client.clone(), + keystore: Some(params.keystore_container.keystore()), + offchain_db: backend.offchain_storage(), + transaction_pool: Some(OffchainTransactionPoolFactory::new( + transaction_pool.clone(), + )), + network_provider: network.clone(), + is_validator: parachain_config.role.is_authority(), + enable_http_requests: false, + custom_extensions: move |_| vec![], + }) + .run(client.clone(), task_manager.spawn_handle()) + .boxed(), + ); + } + + let rpc_builder = { + let client = client.clone(); + let transaction_pool = transaction_pool.clone(); + let backend = backend.clone(); + let offchain_indexing_enabled = parachain_config.offchain_worker.indexing_enabled; + + // `backend` and offchain_indexing_enabled` are encointer customizations. + Box::new(move |deny_unsafe, _| { + let deps = crate::rpc::FullDeps { + client: client.clone(), + pool: transaction_pool.clone(), + backend: backend.clone(), + offchain_indexing_enabled, + deny_unsafe, + }; + + crate::rpc::create_full(deps).map_err(Into::into) + }) + }; + + sc_service::spawn_tasks(sc_service::SpawnTasksParams { + rpc_builder, + client: client.clone(), + transaction_pool: transaction_pool.clone(), + task_manager: &mut task_manager, + config: parachain_config, + keystore: params.keystore_container.keystore(), + backend, + network: network.clone(), + sync_service: sync_service.clone(), + system_rpc_tx, + tx_handler_controller, + telemetry: telemetry.as_mut(), + })?; + + if let Some(hwbench) = hwbench { + sc_sysinfo::print_hwbench(&hwbench); + // Here you can check whether the hardware meets your chains' requirements. Putting a link + // in there and swapping out the requirements for your own are probably a good idea. The + // requirements for a para-chain are dictated by its relay-chain. + match SUBSTRATE_REFERENCE_HARDWARE.check_hardware(&hwbench) { + Err(err) if validator => { + log::warn!( + "⚠️ The hardware does not meet the minimal requirements {} for role 'Authority'.", + err + ); + }, + _ => {}, + } + + if let Some(ref mut telemetry) = telemetry { + let telemetry_handle = telemetry.handle(); + task_manager.spawn_handle().spawn( + "telemetry_hwbench", + None, + sc_sysinfo::initialize_hwbench_telemetry(telemetry_handle, hwbench), + ); + } + } + + let announce_block = { + let sync_service = sync_service.clone(); + Arc::new(move |hash, data| sync_service.announce_block(hash, data)) + }; + + let relay_chain_slot_duration = Duration::from_secs(6); + + let overseer_handle = relay_chain_interface + .overseer_handle() + .map_err(|e| sc_service::Error::Application(Box::new(e)))?; + + start_relay_chain_tasks(StartRelayChainTasksParams { + client: client.clone(), + announce_block: announce_block.clone(), + para_id, + relay_chain_interface: relay_chain_interface.clone(), + task_manager: &mut task_manager, + da_recovery_profile: if validator { + DARecoveryProfile::Collator + } else { + DARecoveryProfile::FullNode + }, + import_queue: import_queue_service, + relay_chain_slot_duration, + recovery_handle: Box::new(overseer_handle.clone()), + sync_service: sync_service.clone(), + })?; + + if validator { + start_consensus( + client.clone(), + block_import, + prometheus_registry.as_ref(), + telemetry.as_ref().map(|t| t.handle()), + &task_manager, + relay_chain_interface.clone(), + transaction_pool, + sync_service.clone(), + params.keystore_container.keystore(), + relay_chain_slot_duration, + para_id, + collator_key.expect("Command line arguments do not allow this. qed"), + overseer_handle, + announce_block, + )?; + } + + start_network.start_network(); + + Ok((task_manager, client)) +} + +/// Build the import queue for the parachain runtime. +fn build_import_queue( + client: Arc, + block_import: ParachainBlockImport, + config: &Configuration, + telemetry: Option, + task_manager: &TaskManager, +) -> Result, sc_service::Error> { + let slot_duration = cumulus_client_consensus_aura::slot_duration(&*client)?; + + Ok(cumulus_client_consensus_aura::equivocation_import_queue::fully_verifying_import_queue::< + sp_consensus_aura::sr25519::AuthorityPair, + _, + _, + _, + _, + >( + client, + block_import, + move |_, _| async move { + let timestamp = sp_timestamp::InherentDataProvider::from_system_time(); + Ok(timestamp) + }, + slot_duration, + &task_manager.spawn_essential_handle(), + config.prometheus_registry(), + telemetry, + )) +} + +fn start_consensus( + client: Arc, + block_import: ParachainBlockImport, + prometheus_registry: Option<&Registry>, + telemetry: Option, + task_manager: &TaskManager, + relay_chain_interface: Arc, + transaction_pool: Arc>, + sync_oracle: Arc>, + keystore: KeystorePtr, + relay_chain_slot_duration: Duration, + para_id: ParaId, + collator_key: CollatorPair, + overseer_handle: OverseerHandle, + announce_block: Arc>) + Send + Sync>, +) -> Result<(), sc_service::Error> { + use cumulus_client_consensus_aura::collators::basic::{ + self as basic_aura, Params as BasicAuraParams, + }; + + // NOTE: because we use Aura here explicitly, we can use `CollatorSybilResistance::Resistant` + // when starting the network. + + let slot_duration = cumulus_client_consensus_aura::slot_duration(&*client)?; + + let proposer_factory = sc_basic_authorship::ProposerFactory::with_proof_recording( + task_manager.spawn_handle(), + client.clone(), + transaction_pool, + prometheus_registry, + telemetry.clone(), + ); + + let proposer = Proposer::new(proposer_factory); + + let collator_service = CollatorService::new( + client.clone(), + Arc::new(task_manager.spawn_handle()), + announce_block, + client.clone(), + ); + + let params = BasicAuraParams { + create_inherent_data_providers: move |_, ()| async move { Ok(()) }, + block_import, + para_client: client, + relay_client: relay_chain_interface, + sync_oracle, + keystore, + collator_key, + para_id, + overseer_handle, + slot_duration, + relay_chain_slot_duration, + proposer, + collator_service, + // Very limited proposal time. + authoring_duration: Duration::from_millis(500), + collation_request_receiver: None, + }; + + let fut = + basic_aura::run::( + params, + ); + task_manager.spawn_essential_handle().spawn("aura", None, fut); + + Ok(()) +} + +/// Start a parachain node. +pub async fn start_parachain_node( + parachain_config: Configuration, + polkadot_config: Configuration, + collator_options: CollatorOptions, + para_id: ParaId, + hwbench: Option, +) -> sc_service::error::Result<(TaskManager, Arc)> { + start_node_impl(parachain_config, polkadot_config, collator_options, para_id, hwbench).await +} diff --git a/polkadot-parachains/tests/common.rs b/node/tests/common.rs similarity index 100% rename from polkadot-parachains/tests/common.rs rename to node/tests/common.rs diff --git a/polkadot-parachains/tests/polkadot_argument_parsing.rs b/node/tests/polkadot_argument_parsing.rs similarity index 100% rename from polkadot-parachains/tests/polkadot_argument_parsing.rs rename to node/tests/polkadot_argument_parsing.rs diff --git a/polkadot-parachains/tests/polkadot_mdns_issue.rs b/node/tests/polkadot_mdns_issue.rs similarity index 100% rename from polkadot-parachains/tests/polkadot_mdns_issue.rs rename to node/tests/polkadot_mdns_issue.rs diff --git a/polkadot-parachains/tests/purge_chain_works.rs b/node/tests/purge_chain_works.rs similarity index 100% rename from polkadot-parachains/tests/purge_chain_works.rs rename to node/tests/purge_chain_works.rs diff --git a/polkadot-parachains/tests/running_the_node_and_interrupt.rs b/node/tests/running_the_node_and_interrupt.rs similarity index 100% rename from polkadot-parachains/tests/running_the_node_and_interrupt.rs rename to node/tests/running_the_node_and_interrupt.rs diff --git a/polkadot-parachains/encointer-runtime/Cargo.toml b/polkadot-parachains/encointer-runtime/Cargo.toml deleted file mode 100644 index 5197fb8d..00000000 --- a/polkadot-parachains/encointer-runtime/Cargo.toml +++ /dev/null @@ -1,222 +0,0 @@ -[package] -name = 'encointer-runtime' -# major.minor revision must match collator node -# patch revision must match runtime spec_version -version = '1.6.17' -authors = ["Encointer "] -license = "GPL-3.0" -edition = "2021" - -[dependencies] -log = { workspace = true } -parachain-info = { workspace = true } -parity-scale-codec = { workspace = true } -scale-info = { workspace = true } -serde = { workspace = true } - -# encointer deps -encointer-balances-tx-payment = { workspace = true } -encointer-balances-tx-payment-rpc-runtime-api = { workspace = true } -encointer-primitives = { workspace = true } -pallet-encointer-balances = { workspace = true } -pallet-encointer-bazaar = { workspace = true } -pallet-encointer-bazaar-rpc-runtime-api = { workspace = true } -pallet-encointer-ceremonies = { workspace = true } -pallet-encointer-ceremonies-rpc-runtime-api = { workspace = true } -pallet-encointer-communities = { workspace = true } -pallet-encointer-communities-rpc-runtime-api = { workspace = true } -pallet-encointer-faucet = { workspace = true } -pallet-encointer-reputation-commitments = { workspace = true } -pallet-encointer-scheduler = { workspace = true } - -# Substrate dependencies (figure out crates.io versions in the respective release-crates-io-* branch: https://github.com/paritytech/polkadot-sdk/blob/release-crates-io-v1.2.0/Cargo.lock - -sp-api = { workspace = true } -sp-block-builder = { workspace = true } -sp-consensus-aura = { workspace = true } -sp-core = { workspace = true } -sp-inherents = { workspace = true } -sp-io = { workspace = true } -sp-offchain = { workspace = true } -sp-runtime = { workspace = true } -sp-session = { workspace = true } -sp-std = { workspace = true } -sp-transaction-pool = { workspace = true } -sp-version = { workspace = true } - -frame-executive = { workspace = true } -frame-support = { workspace = true } -frame-system = { workspace = true } -frame-system-rpc-runtime-api = { workspace = true } -pallet-asset-tx-payment = { workspace = true } -pallet-aura = { workspace = true } -pallet-balances = { workspace = true } -pallet-collective = { workspace = true } -pallet-insecure-randomness-collective-flip = { workspace = true } -pallet-membership = { workspace = true } -pallet-proxy = { workspace = true } -pallet-scheduler = { workspace = true } -pallet-timestamp = { workspace = true } -pallet-transaction-payment = { workspace = true } -pallet-transaction-payment-rpc-runtime-api = { workspace = true } -pallet-treasury = { workspace = true } -pallet-utility = { workspace = true } - -parachains-common = { workspace = true } - -# Cumulus dependencies -cumulus-pallet-aura-ext = { workspace = true } -cumulus-pallet-dmp-queue = { workspace = true } -cumulus-pallet-parachain-system = { workspace = true } -cumulus-pallet-xcm = { workspace = true } -cumulus-pallet-xcmp-queue = { workspace = true } -cumulus-primitives-core = { workspace = true } -cumulus-primitives-timestamp = { workspace = true } -cumulus-primitives-utility = { workspace = true } - -# Polkadot dependencies -pallet-xcm = { workspace = true } -polkadot-parachain-primitives = { workspace = true } -polkadot-runtime-common = { workspace = true } -xcm = { workspace = true } -xcm-builder = { workspace = true } -xcm-executor = { workspace = true } - -# used for try-runtime -frame-try-runtime = { workspace = true, optional = true } -try-runtime-cli = { workspace = true, optional = true } - -# Used for runtime benchmarking -frame-benchmarking = { workspace = true, optional = true } -frame-system-benchmarking = { workspace = true, optional = true } -hex-literal = { workspace = true, optional = true } - -[build-dependencies] -substrate-wasm-builder = { workspace = true, optional = true } - -[features] -default = ["std"] -runtime-benchmarks = [ - "cumulus-pallet-xcmp-queue/runtime-benchmarks", - "frame-benchmarking/runtime-benchmarks", - "frame-support/runtime-benchmarks", - "frame-system-benchmarking/runtime-benchmarks", - "frame-system/runtime-benchmarks", - "hex-literal", - "pallet-balances/runtime-benchmarks", - "pallet-collective/runtime-benchmarks", - "pallet-encointer-balances/runtime-benchmarks", - "pallet-encointer-bazaar/runtime-benchmarks", - "pallet-encointer-ceremonies/runtime-benchmarks", - "pallet-encointer-communities/runtime-benchmarks", - "pallet-encointer-faucet/runtime-benchmarks", - "pallet-encointer-reputation-commitments/runtime-benchmarks", - "pallet-encointer-scheduler/runtime-benchmarks", - "pallet-membership/runtime-benchmarks", - "pallet-proxy/runtime-benchmarks", - "pallet-timestamp/runtime-benchmarks", - "pallet-treasury/runtime-benchmarks", - "pallet-utility/runtime-benchmarks", - "pallet-xcm/runtime-benchmarks", - "sp-runtime/runtime-benchmarks", - "xcm-builder/runtime-benchmarks", - "xcm-executor/runtime-benchmarks", -] -std = [ - "parity-scale-codec/std", - "cumulus-pallet-aura-ext/std", - "cumulus-pallet-dmp-queue/std", - "cumulus-pallet-parachain-system/std", - "cumulus-pallet-xcm/std", - "cumulus-pallet-xcmp-queue/std", - "cumulus-primitives-core/std", - "cumulus-primitives-timestamp/std", - "cumulus-primitives-utility/std", - "encointer-balances-tx-payment-rpc-runtime-api/std", - "encointer-balances-tx-payment/std", - "encointer-primitives/serde_derive", - "encointer-primitives/std", - "frame-executive/std", - "frame-support/std", - "frame-system-rpc-runtime-api/std", - "frame-system/std", - "frame-try-runtime/std", - "log/std", - "pallet-asset-tx-payment/std", - "pallet-aura/std", - "pallet-balances/std", - "pallet-collective/std", - "pallet-encointer-balances/std", - "pallet-encointer-bazaar-rpc-runtime-api/std", - "pallet-encointer-bazaar/std", - "pallet-encointer-ceremonies-rpc-runtime-api/std", - "pallet-encointer-ceremonies/std", - "pallet-encointer-communities-rpc-runtime-api/std", - "pallet-encointer-communities/std", - "pallet-encointer-faucet/std", - "pallet-encointer-reputation-commitments/std", - "pallet-encointer-scheduler/std", - "pallet-insecure-randomness-collective-flip/std", - "pallet-membership/std", - "pallet-proxy/std", - "pallet-timestamp/std", - "pallet-transaction-payment-rpc-runtime-api/std", - "pallet-transaction-payment/std", - "pallet-treasury/std", - "pallet-utility/std", - "pallet-xcm/std", - "parachain-info/std", - "parachains-common/std", - "scale-info/std", - "sp-api/std", - "sp-block-builder/std", - "sp-consensus-aura/std", - "sp-core/std", - "sp-inherents/std", - "sp-offchain/std", - "sp-runtime/std", - "sp-session/std", - "sp-std/std", - "sp-transaction-pool/std", - "sp-version/std", - "substrate-wasm-builder", - "xcm-builder/std", - "xcm-executor/std", - "xcm/std", -] - - -try-runtime = [ - "cumulus-pallet-aura-ext/try-runtime", - "cumulus-pallet-dmp-queue/try-runtime", - "cumulus-pallet-parachain-system/try-runtime", - "cumulus-pallet-xcm/try-runtime", - "cumulus-pallet-xcmp-queue/try-runtime", - "frame-executive/try-runtime", - "frame-support/try-runtime", - "frame-system/try-runtime", - "frame-try-runtime/try-runtime", - "pallet-asset-tx-payment/try-runtime", - "pallet-aura/try-runtime", - "pallet-balances/try-runtime", - "pallet-collective/try-runtime", - "pallet-encointer-balances/try-runtime", - "pallet-encointer-bazaar/try-runtime", - "pallet-encointer-ceremonies/try-runtime", - "pallet-encointer-communities/try-runtime", - "pallet-encointer-faucet/try-runtime", - "pallet-encointer-reputation-commitments/try-runtime", - "pallet-encointer-scheduler/try-runtime", - "pallet-insecure-randomness-collective-flip/try-runtime", - "pallet-membership/try-runtime", - "pallet-proxy/try-runtime", - "pallet-scheduler/try-runtime", - "pallet-timestamp/try-runtime", - "pallet-transaction-payment/try-runtime", - "pallet-treasury/try-runtime", - "pallet-utility/try-runtime", - "pallet-xcm/try-runtime", - "parachain-info/try-runtime", -] - -experimental = ["pallet-aura/experimental"] diff --git a/polkadot-parachains/encointer-runtime/build.rs b/polkadot-parachains/encointer-runtime/build.rs deleted file mode 100644 index 256e9fb7..00000000 --- a/polkadot-parachains/encointer-runtime/build.rs +++ /dev/null @@ -1,27 +0,0 @@ -// Copyright 2019-2021 Parity Technologies (UK) Ltd. -// This file is part of Cumulus. - -// Substrate 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. - -// Substrate 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 Cumulus. If not, see . - -#[cfg(feature = "std")] -fn main() { - substrate_wasm_builder::WasmBuilder::new() - .with_current_project() - .export_heap_base() - .import_memory() - .build() -} - -#[cfg(not(feature = "std"))] -fn main() {} diff --git a/polkadot-parachains/encointer-runtime/src/deal_with_fees.rs b/polkadot-parachains/encointer-runtime/src/deal_with_fees.rs deleted file mode 100644 index 3abe9427..00000000 --- a/polkadot-parachains/encointer-runtime/src/deal_with_fees.rs +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright (c) 2023 Encointer Association -// This file is part of Encointer -// -// Encointer 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. -// -// Encointer 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 Encointer. If not, see . - -use frame_support::traits::{Currency, Imbalance, OnUnbalanced}; -use sp_runtime::sp_std::marker::PhantomData; - -/// Type alias to conveniently refer to the `Currency::NegativeImbalance` associated type. -pub type NegativeImbalance = as Currency< - ::AccountId, ->>::NegativeImbalance; - -/// Moves all the fees to the treasury. -/// -/// This does only handle the native currency. The community currencies are managed by the -/// `pallet-asset-tx-payment`. -pub struct FeesToTreasury(PhantomData); - -impl OnUnbalanced> for FeesToTreasury -where - Runtime: pallet_balances::Config + pallet_treasury::Config, -{ - fn on_unbalanceds(mut fees_then_tips: impl Iterator>) { - if let Some(mut fees) = fees_then_tips.next() { - // no burning, add all fees and tips to the treasury - - if let Some(tips) = fees_then_tips.next() { - tips.merge_into(&mut fees); - } - as OnUnbalanced<_>>::on_unbalanced(fees); - } - } -} diff --git a/polkadot-parachains/encointer-runtime/src/lib.rs b/polkadot-parachains/encointer-runtime/src/lib.rs deleted file mode 100644 index fe9c3f81..00000000 --- a/polkadot-parachains/encointer-runtime/src/lib.rs +++ /dev/null @@ -1,953 +0,0 @@ -// Copyright (c) 2023 Encointer Association -// This file is part of Encointer -// -// Encointer 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. -// -// Encointer 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 Encointer. If not, see . - -//! # Encointer Parachain Runtime -//! -//! Encointer runtime containing all the specific logic to: -//! * perform ceremonies and receive a community income -//! * pay fees in the respective community currency -//! -//! The configuration (especially XCM) is almost identical to `asset-hub`. Therefore, upstream -//! updates should always check the diff to see if there are some configuration updates. - -#![cfg_attr(not(feature = "std"), no_std)] -// `construct_runtime!` does a lot of recursion and requires us to increase the limit to 256. -#![recursion_limit = "256"] - -// Make the WASM binary available. -#[cfg(feature = "std")] -include!(concat!(env!("OUT_DIR"), "/wasm_binary.rs")); - -mod deal_with_fees; -mod weights; -pub mod xcm_config; - -use cumulus_pallet_parachain_system::RelayNumberMonotonicallyIncreases; -use sp_api::impl_runtime_apis; -use sp_core::{crypto::KeyTypeId, OpaqueMetadata}; -use sp_runtime::{ - create_runtime_str, generic, impl_opaque_keys, - traits::{AccountIdLookup, BlakeTwo256, Block as BlockT, Verify}, - transaction_validity::{TransactionSource, TransactionValidity}, - ApplyExtrinsicResult, Perbill, Permill, -}; - -use sp_std::prelude::*; -#[cfg(feature = "std")] -use sp_version::NativeVersion; -use sp_version::RuntimeVersion; - -use encointer_balances_tx_payment::{AssetBalanceOf, AssetIdOf, BalanceToCommunityBalance}; -use frame_support::{ - construct_runtime, - dispatch::DispatchClass, - parameter_types, - traits::{ - tokens::ConversionToAssetBalance, ConstBool, Contains, EitherOfDiverse, EqualPrivilegeOnly, - InstanceFilter, - }, - weights::{ConstantMultiplier, Weight}, - PalletId, -}; -use frame_system::{ - limits::{BlockLength, BlockWeights}, - EnsureRoot, -}; -pub use parachains_common as common; -use parity_scale_codec::{Decode, Encode, MaxEncodedLen}; -use sp_runtime::RuntimeDebug; - -use parachains_common::{ - kusama::consensus::RELAY_CHAIN_SLOT_DURATION_MILLIS, AuraId, AVERAGE_ON_INITIALIZE_RATIO, DAYS, - HOURS, MAXIMUM_BLOCK_WEIGHT, NORMAL_DISPATCH_RATIO, -}; -use xcm_config::{KsmLocation, XcmConfig, XcmOriginToTransactDispatchOrigin}; - -#[cfg(any(feature = "std", test))] -pub use sp_runtime::BuildStorage; - -// A few exports that help ease life for downstream crates. -pub use pallet_encointer_balances::Call as EncointerBalancesCall; -pub use pallet_encointer_bazaar::Call as EncointerBazaarCall; -pub use pallet_encointer_ceremonies::Call as EncointerCeremoniesCall; -pub use pallet_encointer_communities::Call as EncointerCommunitiesCall; -// pub use pallet_encointer_personhood_oracle::Call as EncointerPersonhoodOracleCall; -pub use pallet_encointer_faucet::Call as EncointerFaucetCall; -pub use pallet_encointer_reputation_commitments::Call as EncointerReputationCommitmentsCall; -pub use pallet_encointer_scheduler::Call as EncointerSchedulerCall; -// pub use pallet_encointer_sybil_gate_template::Call as EncointerSybilGateCall; - -pub use encointer_primitives::{ - balances::{BalanceEntry, BalanceType, Demurrage}, - bazaar::{BusinessData, BusinessIdentifier, OfferingData}, - ceremonies::{AggregatedAccountData, CeremonyIndexType, CeremonyInfo, CommunityReputation}, - common::PalletString, - communities::{CommunityIdentifier, Location}, - scheduler::CeremonyPhaseType, -}; -use sp_core::ConstU32; - -// XCM imports -// Polkadot imports -use pallet_xcm::{EnsureXcm, IsMajorityOfBody}; -use polkadot_runtime_common::{BlockHashCount, SlowAdjustingFeeUpdate}; -use xcm::latest::BodyId; -use xcm_executor::XcmExecutor; - -// adopt all currency-related constants identical to other system chains -use deal_with_fees::FeesToTreasury; -use parachains_common::kusama::{currency::*, fee::WeightToFee}; -use weights::{BlockExecutionWeight, ExtrinsicBaseWeight, RocksDbWeight}; - -/// A type to hold UTC unix epoch [ms] -pub type Moment = u64; -pub const ONE_DAY: Moment = 86_400_000; - -/// Maximum number of blocks simultaneously accepted by the Runtime, not yet included -/// into the relay chain. -const UNINCLUDED_SEGMENT_CAPACITY: u32 = 1; -/// How many parachain blocks are processed by the relay chain per parent. Limits the -/// number of blocks authored per slot. -const BLOCK_PROCESSING_VELOCITY: u32 = 1; -/// This determines the average expected block time that we are targeting. -/// Blocks will be produced at a minimum duration defined by `SLOT_DURATION`. -/// `SLOT_DURATION` is picked up by `pallet_timestamp` which is in turn picked -/// up by `pallet_aura` to implement `fn slot_duration()`. -/// -/// Change this to adjust the block time. -pub const MILLISECS_PER_BLOCK: u64 = 12000; -pub const SLOT_DURATION: u64 = MILLISECS_PER_BLOCK; - -pub type AssetId = AssetIdOf; -pub type AssetBalance = AssetBalanceOf; - -impl_opaque_keys! { - pub struct SessionKeys { - pub aura: Aura, - } -} - -/// This runtime version. -#[sp_version::runtime_version] -pub const VERSION: RuntimeVersion = RuntimeVersion { - spec_name: create_runtime_str!("encointer-parachain"), - impl_name: create_runtime_str!("encointer-parachain"), - authoring_version: 1, - spec_version: 17, - impl_version: 1, - apis: RUNTIME_API_VERSIONS, - transaction_version: 3, - state_version: 0, -}; - -/// The version information used to identify this runtime when compiled natively. -#[cfg(feature = "std")] -pub fn native_version() -> NativeVersion { - NativeVersion { runtime_version: VERSION, can_author_with: Default::default() } -} - -//TODO add meaningful values -parameter_types! { - pub const ProxyDepositBase: Balance = 32; - pub const ProxyDepositFactor: Balance = 32; - pub const MaxProxies: u16 = 32; - pub const AnnouncementDepositBase: Balance = 32; - pub const AnnouncementDepositFactor: Balance = 32; - pub const MaxPending: u16 = 32; -} - -/// The type used to represent the kinds of proxying allowed. -#[derive( - Copy, - Clone, - Eq, - PartialEq, - Ord, - PartialOrd, - Encode, - Decode, - RuntimeDebug, - scale_info::TypeInfo, - MaxEncodedLen, -)] -pub enum ProxyType { - Any, - NonTransfer, - BazaarEdit, -} - -impl Default for ProxyType { - fn default() -> Self { - Self::Any - } -} -impl InstanceFilter for ProxyType { - fn filter(&self, c: &RuntimeCall) -> bool { - match self { - ProxyType::Any => true, - ProxyType::NonTransfer => matches!(c, RuntimeCall::EncointerBazaar(..)), - ProxyType::BazaarEdit => matches!( - c, - RuntimeCall::EncointerBazaar(EncointerBazaarCall::create_offering { .. }) | - RuntimeCall::EncointerBazaar(EncointerBazaarCall::update_offering { .. }) | - RuntimeCall::EncointerBazaar(EncointerBazaarCall::delete_offering { .. }) - ), - } - } - - fn is_superset(&self, o: &Self) -> bool { - match (self, o) { - (x, y) if x == y => true, - (ProxyType::Any, _) => true, - (_, ProxyType::Any) => false, - (ProxyType::NonTransfer, _) => true, - _ => false, - } - } -} - -impl pallet_proxy::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - type RuntimeCall = RuntimeCall; - type Currency = Balances; - type ProxyType = ProxyType; - type ProxyDepositBase = ProxyDepositBase; - type ProxyDepositFactor = ProxyDepositFactor; - type MaxProxies = MaxProxies; - type WeightInfo = weights::pallet_proxy::WeightInfo; - type MaxPending = MaxPending; - type CallHasher = BlakeTwo256; - type AnnouncementDepositBase = AnnouncementDepositBase; - type AnnouncementDepositFactor = AnnouncementDepositFactor; -} - -parameter_types! { - pub const Version: RuntimeVersion = VERSION; - pub RuntimeBlockLength: BlockLength = - BlockLength::max_with_normal_ratio(5 * 1024 * 1024, NORMAL_DISPATCH_RATIO); - pub RuntimeBlockWeights: BlockWeights = BlockWeights::builder() - .base_block(BlockExecutionWeight::get()) - .for_class(DispatchClass::all(), |weights| { - weights.base_extrinsic = ExtrinsicBaseWeight::get(); - }) - .for_class(DispatchClass::Normal, |weights| { - weights.max_total = Some(NORMAL_DISPATCH_RATIO * MAXIMUM_BLOCK_WEIGHT); - }) - .for_class(DispatchClass::Operational, |weights| { - weights.max_total = Some(MAXIMUM_BLOCK_WEIGHT); - // Operational transactions have some extra reserved space, so that they - // are included even if block reached `MAXIMUM_BLOCK_WEIGHT`. - weights.reserved = Some( - MAXIMUM_BLOCK_WEIGHT - NORMAL_DISPATCH_RATIO * MAXIMUM_BLOCK_WEIGHT - ); - }) - .avg_block_initialization(AVERAGE_ON_INITIALIZE_RATIO) - .build_or_panic(); - pub const SS58Prefix: u8 = 2; -} - -pub struct BaseFilter; -impl Contains for BaseFilter { - fn contains(_c: &RuntimeCall) -> bool { - true - } -} - -// Configure FRAME pallets to include in runtime. -impl frame_system::Config for Runtime { - type BaseCallFilter = BaseFilter; - // The block type. - type Block = generic::Block; - type BlockWeights = RuntimeBlockWeights; - type BlockLength = RuntimeBlockLength; - type AccountId = AccountId; - type RuntimeCall = RuntimeCall; - type Lookup = AccountIdLookup; - type Nonce = Nonce; - type Hash = Hash; - type Hashing = BlakeTwo256; - type RuntimeEvent = RuntimeEvent; - type RuntimeOrigin = RuntimeOrigin; - type BlockHashCount = BlockHashCount; - type DbWeight = RocksDbWeight; - type Version = Version; - type PalletInfo = PalletInfo; - type OnNewAccount = (); - type OnKilledAccount = (); - type AccountData = pallet_balances::AccountData; - type SystemWeightInfo = weights::frame_system::WeightInfo; - type SS58Prefix = SS58Prefix; - type OnSetCode = cumulus_pallet_parachain_system::ParachainSetCode; - type MaxConsumers = frame_support::traits::ConstU32<16>; -} - -parameter_types! { - pub const MinimumPeriod: u64 = SLOT_DURATION / 2; -} - -impl pallet_timestamp::Config for Runtime { - /// A timestamp: milliseconds since the unix epoch. - type Moment = Moment; - type OnTimestampSet = EncointerScheduler; - type MinimumPeriod = MinimumPeriod; - type WeightInfo = weights::pallet_timestamp::WeightInfo; -} - -parameter_types! { - pub const ExistentialDeposit: Balance = EXISTENTIAL_DEPOSIT; - pub const MaxLocks: u32 = 50; - pub const MaxReserves: u32 = 50; -} - -impl pallet_balances::Config for Runtime { - type MaxLocks = MaxLocks; - /// The type for recording an account's balance. - type Balance = Balance; - /// The ubiquitous event type. - type RuntimeEvent = RuntimeEvent; - type DustRemoval = (); - type ExistentialDeposit = ExistentialDeposit; - type AccountStore = System; - type WeightInfo = weights::pallet_balances::WeightInfo; - type MaxReserves = MaxReserves; - type ReserveIdentifier = [u8; 8]; - type RuntimeHoldReason = (); - type FreezeIdentifier = (); - type MaxHolds = ConstU32<0>; - type MaxFreezes = ConstU32<0>; -} - -parameter_types! { - /// Relay Chain `TransactionByteFee` / 10, same as statemine - pub const TransactionByteFee: Balance = MILLICENTS; - pub const OperationalFeeMultiplier: u8 = 5; -} - -impl pallet_transaction_payment::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - // `FeesToTreasury is an encointer adaptation. - type OnChargeTransaction = - pallet_transaction_payment::CurrencyAdapter>; - type WeightToFee = WeightToFee; - type LengthToFee = ConstantMultiplier; - type FeeMultiplierUpdate = SlowAdjustingFeeUpdate; - type OperationalFeeMultiplier = OperationalFeeMultiplier; -} - -parameter_types! { - pub const ProposalBond: Permill = Permill::from_percent(5); - pub const ProposalBondMinimum: Balance = 100 * MILLICENTS; - pub const ProposalBondMaximum: Balance = 500 * CENTS; - pub const SpendPeriod: BlockNumber = 6 * DAYS; - pub const Burn: Permill = Permill::from_percent(1); - pub const TreasuryPalletId: PalletId = PalletId(*b"py/trsry"); - pub const MaxApprovals: u32 = 10; -} - -impl pallet_treasury::Config for Runtime { - type PalletId = TreasuryPalletId; - type Currency = pallet_balances::Pallet; - type ApproveOrigin = MoreThanHalfCouncil; - type RejectOrigin = MoreThanHalfCouncil; - type RuntimeEvent = RuntimeEvent; - type OnSlash = (); //No proposal - type ProposalBond = ProposalBond; - type ProposalBondMinimum = ProposalBondMinimum; - type ProposalBondMaximum = ProposalBondMaximum; - type SpendPeriod = SpendPeriod; //Cannot be 0: Error: Thread 'tokio-runtime-worker' panicked at 'attempt to calculate the - // remainder with a divisor of zero - type Burn = (); //No burn - type BurnDestination = (); //No burn - type SpendFunds = (); //No spend, no bounty - type MaxApprovals = MaxApprovals; - type WeightInfo = weights::pallet_treasury::WeightInfo; - type SpendOrigin = frame_support::traits::NeverEnsureOrigin; //No spend, no bounty -} - -impl pallet_utility::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - type RuntimeCall = RuntimeCall; - type PalletsOrigin = OriginCaller; - type WeightInfo = weights::pallet_utility::WeightInfo; -} - -parameter_types! { - pub MaximumSchedulerWeight: Weight = Perbill::from_percent(80) * - RuntimeBlockWeights::get().max_block; - pub const MaxScheduledPerBlock: u32 = 50; -} - -impl pallet_scheduler::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - type RuntimeOrigin = RuntimeOrigin; - type PalletsOrigin = OriginCaller; - type RuntimeCall = RuntimeCall; - type MaximumWeight = MaximumSchedulerWeight; - type ScheduleOrigin = MoreThanHalfCouncil; - type MaxScheduledPerBlock = MaxScheduledPerBlock; - type WeightInfo = pallet_scheduler::weights::SubstrateWeight; - type OriginPrivilegeCmp = EqualPrivilegeOnly; - type Preimages = (); -} - -parameter_types! { - pub const ReservedXcmpWeight: Weight = MAXIMUM_BLOCK_WEIGHT.saturating_div(4); - pub const ReservedDmpWeight: Weight = MAXIMUM_BLOCK_WEIGHT.saturating_div(4); -} - -impl cumulus_pallet_parachain_system::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - type OnSystemEvent = (); - type SelfParaId = parachain_info::Pallet; - type DmpMessageHandler = DmpQueue; - type ReservedDmpWeight = ReservedDmpWeight; - type OutboundXcmpMessageSource = XcmpQueue; - type XcmpMessageHandler = XcmpQueue; - type ReservedXcmpWeight = ReservedXcmpWeight; - type CheckAssociatedRelayNumber = RelayNumberMonotonicallyIncreases; - type ConsensusHook = cumulus_pallet_aura_ext::FixedVelocityConsensusHook< - Runtime, - RELAY_CHAIN_SLOT_DURATION_MILLIS, - BLOCK_PROCESSING_VELOCITY, - UNINCLUDED_SEGMENT_CAPACITY, - >; -} - -// Added by encointer -impl pallet_insecure_randomness_collective_flip::Config for Runtime {} - -impl parachain_info::Config for Runtime {} - -impl cumulus_pallet_aura_ext::Config for Runtime {} - -parameter_types! { - pub const ExecutiveBody: BodyId = BodyId::Executive; -} - -impl cumulus_pallet_xcmp_queue::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - type XcmExecutor = XcmExecutor; - type ChannelInfo = ParachainSystem; - type VersionWrapper = PolkadotXcm; - type ExecuteOverweightOrigin = EnsureRoot; - type ControllerOrigin = EitherOfDiverse< - EnsureRoot, - EnsureXcm>, - >; - type ControllerOriginConverter = XcmOriginToTransactDispatchOrigin; - type WeightInfo = weights::cumulus_pallet_xcmp_queue::WeightInfo; - type PriceForSiblingDelivery = (); -} - -impl cumulus_pallet_dmp_queue::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - type XcmExecutor = XcmExecutor; - type ExecuteOverweightOrigin = EnsureRoot; -} - -parameter_types! { - pub const Period: u32 = 6 * HOURS; - pub const Offset: u32 = 0; - pub const MaxAuthorities: u32 = 100_000; -} - -parameter_types! { - pub const MomentsPerDay: Moment = 86_400_000; // [ms/d] - pub const DefaultDemurrage: Demurrage = Demurrage::from_bits(0x0000000000000000000001E3F0A8A973_i128); - pub const EncointerExistentialDeposit: BalanceType = BalanceType::from_bits(0x0000000000000000000053e2d6238da4_u128); - pub const MeetupSizeTarget: u64 = 10; - pub const MeetupMinSize: u64 = 3; - pub const MeetupNewbieLimitDivider: u64 = 2; // 2 means 1/3 of participants may be newbies - pub const FaucetPalletId: PalletId = PalletId(*b"ectrfct0"); -} - -impl pallet_encointer_scheduler::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - type OnCeremonyPhaseChange = EncointerCeremonies; - type MomentsPerDay = MomentsPerDay; - type CeremonyMaster = MoreThanHalfCouncil; - type WeightInfo = weights::pallet_encointer_scheduler::WeightInfo; -} - -impl pallet_encointer_ceremonies::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - type Public = ::Signer; - type Signature = Signature; - type RandomnessSource = RandomnessCollectiveFlip; - type MeetupSizeTarget = MeetupSizeTarget; - type MeetupMinSize = MeetupMinSize; - type MeetupNewbieLimitDivider = MeetupNewbieLimitDivider; - type CeremonyMaster = MoreThanHalfCouncil; - type WeightInfo = weights::pallet_encointer_ceremonies::WeightInfo; - type MaxAttestations = ConstU32<100>; -} - -impl pallet_encointer_communities::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - type CommunityMaster = MoreThanHalfCouncil; - type TrustableForNonDestructiveAction = MoreThanHalfCouncil; - type WeightInfo = weights::pallet_encointer_communities::WeightInfo; - type MaxCommunityIdentifiers = ConstU32<10000>; - type MaxBootstrappers = ConstU32<10000>; - type MaxLocationsPerGeohash = ConstU32<10000>; - type MaxCommunityIdentifiersPerGeohash = ConstU32<10000>; -} - -impl pallet_encointer_balances::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - type DefaultDemurrage = DefaultDemurrage; - type ExistentialDeposit = EncointerExistentialDeposit; - type CeremonyMaster = MoreThanHalfCouncil; - type WeightInfo = weights::pallet_encointer_balances::WeightInfo; -} - -impl pallet_encointer_bazaar::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - type WeightInfo = weights::pallet_encointer_bazaar::WeightInfo; -} - -impl pallet_encointer_reputation_commitments::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - type WeightInfo = weights::pallet_encointer_reputation_commitments::WeightInfo; -} - -impl pallet_encointer_faucet::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - type ControllerOrigin = EnsureRoot; - type Currency = Balances; - type PalletId = FaucetPalletId; - type WeightInfo = weights::pallet_encointer_faucet::WeightInfo; -} - -impl pallet_aura::Config for Runtime { - type AuthorityId = AuraId; - type DisabledValidators = (); - type MaxAuthorities = MaxAuthorities; - type AllowMultipleBlocksPerSlot = ConstBool; - #[cfg(feature = "experimental")] - type SlotDuration = ConstU64; -} - -parameter_types! { - pub const CouncilMotionDuration: BlockNumber = 7 * DAYS; - pub const CouncilMaxProposals: u32 = 100; - pub const CouncilMaxMembers: u32 = 100; - pub MaxProposalWeight: Weight = sp_runtime::Perbill::from_percent(50) * RuntimeBlockWeights::get().max_block; -} - -type MoreThanHalfCouncil = EitherOfDiverse< - EnsureRoot, - pallet_collective::EnsureProportionMoreThan, ->; - -pub type CouncilCollective = pallet_collective::Instance1; -impl pallet_collective::Config for Runtime { - type RuntimeOrigin = RuntimeOrigin; - type Proposal = RuntimeCall; - type RuntimeEvent = RuntimeEvent; - type MotionDuration = CouncilMotionDuration; - type MaxProposals = CouncilMaxProposals; - type DefaultVote = pallet_collective::PrimeDefaultVote; - type MaxMembers = CouncilMaxMembers; - type WeightInfo = weights::pallet_collective::WeightInfo; - type SetMembersOrigin = MoreThanHalfCouncil; - type MaxProposalWeight = MaxProposalWeight; -} - -// support for collective pallet -impl pallet_membership::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - type AddOrigin = MoreThanHalfCouncil; - type RemoveOrigin = MoreThanHalfCouncil; - type SwapOrigin = MoreThanHalfCouncil; - type ResetOrigin = MoreThanHalfCouncil; - type PrimeOrigin = MoreThanHalfCouncil; - type MembershipInitialized = Collective; - type MembershipChanged = Collective; - type MaxMembers = CouncilMaxMembers; - type WeightInfo = weights::pallet_membership::WeightInfo; -} - -// Allow fee payment in community currency -impl pallet_asset_tx_payment::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - type Fungibles = pallet_encointer_balances::Pallet; - type OnChargeAssetTransaction = pallet_asset_tx_payment::FungiblesAdapter< - encointer_balances_tx_payment::BalanceToCommunityBalance, - encointer_balances_tx_payment::BurnCredit, - >; -} - -construct_runtime! { - pub enum Runtime { - // System support stuff. - System: frame_system::{Pallet, Call, Config, Storage, Event} = 0, - ParachainSystem: cumulus_pallet_parachain_system::{ - Pallet, Call, Config, Storage, Inherent, Event, ValidateUnsigned, - } = 1, - RandomnessCollectiveFlip: pallet_insecure_randomness_collective_flip::{Pallet, Storage} = 2, - Timestamp: pallet_timestamp::{Pallet, Call, Storage, Inherent} = 3, - ParachainInfo: parachain_info::{Pallet, Storage, Config} = 4, - - // Monetary stuff. - Balances: pallet_balances::{Pallet, Call, Storage, Config, Event} = 10, - TransactionPayment: pallet_transaction_payment::{Pallet, Storage, Event} = 11, - AssetTxPayment: pallet_asset_tx_payment::{Pallet, Storage, Event} = 12, - - Aura: pallet_aura::{Pallet, Storage, Config} = 23, - AuraExt: cumulus_pallet_aura_ext::{Pallet, Storage, Config} = 24, - - // XCM helpers. - XcmpQueue: cumulus_pallet_xcmp_queue::{Pallet, Call, Storage, Event} = 30, - PolkadotXcm: pallet_xcm::{Pallet, Call, Storage, Event, Origin, Config} = 31, - CumulusXcm: cumulus_pallet_xcm::{Pallet, Event, Origin} = 32, - DmpQueue: cumulus_pallet_dmp_queue::{Pallet, Call, Storage, Event} = 33, - - // Handy utilities. - Utility: pallet_utility::{Pallet, Call, Event} = 40, - Treasury: pallet_treasury::{Pallet, Call, Storage, Config, Event} = 43, - Proxy: pallet_proxy::{Pallet, Call, Storage, Event} = 44, - Scheduler: pallet_scheduler::{Pallet, Call, Storage, Event} = 48, - - // Encointer council. - Collective: pallet_collective::::{Pallet, Call, Storage, Origin, Config, Event } = 50, - Membership: pallet_membership::::{Pallet, Call, Storage, Event, Config} = 51, - - EncointerScheduler: pallet_encointer_scheduler::{Pallet, Call, Storage, Config, Event} = 60, - EncointerCeremonies: pallet_encointer_ceremonies::{Pallet, Call, Storage, Config, Event} = 61, - EncointerCommunities: pallet_encointer_communities::{Pallet, Call, Storage, Config, Event} = 62, - EncointerBalances: pallet_encointer_balances::{Pallet, Call, Storage, Config, Event} = 63, - EncointerBazaar: pallet_encointer_bazaar::{Pallet, Call, Storage, Event} = 64, - EncointerReputationCommitments: pallet_encointer_reputation_commitments::{Pallet, Call, Storage, Event} = 65, - EncointerFaucet: pallet_encointer_faucet::{Pallet, Call, Storage, Config, Event} = 66, - } -} - -/// `parachains_common` is an upstream crate, where they are started to define common types. -/// -/// The re-export is added by encointer. -pub use parachains_common::{AccountId, Balance, BlockNumber, Hash, Header, Nonce, Signature}; - -/// The address format for describing accounts. -pub type Address = sp_runtime::MultiAddress; -/// Block type as expected by this runtime. -pub type Block = generic::Block; -/// A Block signed with a Justification -pub type SignedBlock = generic::SignedBlock; -/// BlockId type as expected by this runtime. -pub type BlockId = generic::BlockId; -/// The SignedExtension to the basic transaction logic. -pub type SignedExtra = ( - frame_system::CheckNonZeroSender, - frame_system::CheckSpecVersion, - frame_system::CheckTxVersion, - frame_system::CheckGenesis, - frame_system::CheckEra, - frame_system::CheckNonce, - frame_system::CheckWeight, - pallet_asset_tx_payment::ChargeAssetTxPayment, -); -/// Unchecked extrinsic type as expected by this runtime. -pub type UncheckedExtrinsic = - generic::UncheckedExtrinsic; -/// Extrinsic type that has already been checked. -pub type CheckedExtrinsic = generic::CheckedExtrinsic; -/// Executive: handles dispatch to the various modules. -pub type Executive = frame_executive::Executive< - Runtime, - Block, - frame_system::ChainContext, - Runtime, - AllPalletsWithSystem, - ( - // can migrate from v0 or v1 to v2 - pallet_encointer_communities::migrations::v2::MigrateV0orV1toV2, - // expected to be noop. but need to try-runtime checks first! - pallet_encointer_ceremonies::migrations::v1::MigrateToV1, - ), ->; - -#[cfg(feature = "runtime-benchmarks")] -#[macro_use] -extern crate frame_benchmarking; - -#[cfg(feature = "runtime-benchmarks")] -mod benches { - define_benchmarks!( - [frame_system, SystemBench::] - [pallet_balances, Balances] - [pallet_collective, Collective] - [pallet_membership, Membership] - [pallet_timestamp, Timestamp] - [pallet_treasury, Treasury] - [pallet_utility, Utility] - [pallet_proxy, Proxy] - [pallet_encointer_balances, EncointerBalances] - [pallet_encointer_bazaar, EncointerBazaar] - [pallet_encointer_ceremonies, EncointerCeremonies] - [pallet_encointer_communities, EncointerCommunities] - [pallet_encointer_faucet, EncointerFaucet] - [pallet_encointer_reputation_commitments, EncointerReputationCommitments] - [pallet_encointer_scheduler, EncointerScheduler] - [cumulus_pallet_xcmp_queue, XcmpQueue] - ); -} - -impl_runtime_apis! { - impl sp_consensus_aura::AuraApi for Runtime { - fn slot_duration() -> sp_consensus_aura::SlotDuration { - sp_consensus_aura::SlotDuration::from_millis(SLOT_DURATION) - } - - fn authorities() -> Vec { - Aura::authorities().into_inner() - } - } - - impl sp_api::Core for Runtime { - fn version() -> RuntimeVersion { - VERSION - } - - fn execute_block(block: Block) { - Executive::execute_block(block) - } - - fn initialize_block(header: &::Header) { - Executive::initialize_block(header) - } - } - - impl sp_api::Metadata for Runtime { - fn metadata() -> OpaqueMetadata { - OpaqueMetadata::new(Runtime::metadata().into()) - } - fn metadata_at_version(version: u32) -> Option { - Runtime::metadata_at_version(version) - } - - fn metadata_versions() -> sp_std::vec::Vec { - Runtime::metadata_versions() - } - } - - impl sp_block_builder::BlockBuilder for Runtime { - fn apply_extrinsic(extrinsic: ::Extrinsic) -> ApplyExtrinsicResult { - Executive::apply_extrinsic(extrinsic) - } - - fn finalize_block() -> ::Header { - Executive::finalize_block() - } - - fn inherent_extrinsics(data: sp_inherents::InherentData) -> Vec<::Extrinsic> { - data.create_extrinsics() - } - - fn check_inherents( - block: Block, - data: sp_inherents::InherentData, - ) -> sp_inherents::CheckInherentsResult { - data.check_extrinsics(&block) - } - } - - impl sp_transaction_pool::runtime_api::TaggedTransactionQueue for Runtime { - fn validate_transaction( - source: TransactionSource, - tx: ::Extrinsic, - block_hash: ::Hash, - ) -> TransactionValidity { - Executive::validate_transaction(source, tx, block_hash) - } - } - - impl sp_offchain::OffchainWorkerApi for Runtime { - fn offchain_worker(header: &::Header) { - Executive::offchain_worker(header) - } - } - - impl sp_session::SessionKeys for Runtime { - fn generate_session_keys(seed: Option>) -> Vec { - SessionKeys::generate(seed) - } - - fn decode_session_keys( - encoded: Vec, - ) -> Option, KeyTypeId)>> { - SessionKeys::decode_into_raw_public_keys(&encoded) - } - } - - impl frame_system_rpc_runtime_api::AccountNonceApi for Runtime { - fn account_nonce(account: AccountId) -> Nonce { - System::account_nonce(account) - } - } - - impl pallet_transaction_payment_rpc_runtime_api::TransactionPaymentApi for Runtime { - fn query_info( - uxt: ::Extrinsic, - len: u32, - ) -> pallet_transaction_payment_rpc_runtime_api::RuntimeDispatchInfo { - TransactionPayment::query_info(uxt, len) - } - fn query_fee_details( - uxt: ::Extrinsic, - len: u32, - ) -> pallet_transaction_payment::FeeDetails { - TransactionPayment::query_fee_details(uxt, len) - } - fn query_weight_to_fee(weight: Weight) -> Balance { - TransactionPayment::weight_to_fee(weight) - } - fn query_length_to_fee(length: u32) -> Balance { - TransactionPayment::length_to_fee(length) - } - } - - impl cumulus_primitives_core::CollectCollationInfo for Runtime { - fn collect_collation_info(header: &::Header) -> cumulus_primitives_core::CollationInfo { - ParachainSystem::collect_collation_info(header) - } - } - - impl pallet_encointer_ceremonies_rpc_runtime_api::CeremoniesApi for Runtime { - fn get_reputations(account: &AccountId) -> Vec<(CeremonyIndexType, CommunityReputation)> { - EncointerCeremonies::get_reputations(account) - } - fn get_aggregated_account_data(cid:CommunityIdentifier, account: &AccountId) -> AggregatedAccountData { - EncointerCeremonies::get_aggregated_account_data(cid, account) - } - fn get_ceremony_info() -> CeremonyInfo { - EncointerCeremonies::get_ceremony_info() - } - } - - impl pallet_encointer_communities_rpc_runtime_api::CommunitiesApi for Runtime { - fn get_all_balances(account: &AccountId) -> Vec<(CommunityIdentifier, BalanceEntry)> { - EncointerCommunities::get_all_balances(account) - } - - fn get_cids() -> Vec { - EncointerCommunities::get_cids() - } - - fn get_name(cid: &CommunityIdentifier) -> Option { - EncointerCommunities::get_name(cid) - } - - fn get_locations(cid: &CommunityIdentifier) -> Vec { - EncointerCommunities::get_locations(cid) - } - } - - impl pallet_encointer_bazaar_rpc_runtime_api::BazaarApi for Runtime { - fn get_offerings(business: &BusinessIdentifier) -> Vec{ - EncointerBazaar::get_offerings(business) - } - - fn get_businesses(community: &CommunityIdentifier) -> Vec<(AccountId, BusinessData)>{ - EncointerBazaar::get_businesses(community) - } - } - - impl encointer_balances_tx_payment_rpc_runtime_api::BalancesTxPaymentApi for Runtime { - fn balance_to_asset_balance(amount: Balance, asset_id: AssetId) -> Result { - BalanceToCommunityBalance::::to_asset_balance(amount, asset_id).map_err(|_e| - encointer_balances_tx_payment_rpc_runtime_api::Error::RuntimeError - ) - } - } - - #[cfg(feature = "try-runtime")] - impl frame_try_runtime::TryRuntime for Runtime { - fn on_runtime_upgrade(checks: frame_try_runtime::UpgradeCheckSelect) -> (Weight, Weight) { - // NOTE: intentional unwrap: we don't want to propagate the error backwards, and want to - // have a backtrace here. If any of the pre/post migration checks fail, we shall stop - // right here and right now. - let weight = Executive::try_runtime_upgrade(checks).unwrap(); - (weight, RuntimeBlockWeights::get().max_block) - } - - fn execute_block( - block: Block, - state_root_check: bool, - signature_check: bool, - select: frame_try_runtime::TryStateSelect - ) -> Weight { - // NOTE: intentional unwrap: we don't want to propagate the error backwards, and want to - // have a backtrace here. - Executive::try_execute_block(block, state_root_check, signature_check, select).expect("execute-block failed") - } - } - - #[cfg(feature = "runtime-benchmarks")] - impl frame_benchmarking::Benchmark for Runtime { - fn benchmark_metadata(extra: bool) -> ( - Vec, - Vec, - ) { - use frame_benchmarking::{Benchmarking, BenchmarkList}; - use frame_support::traits::StorageInfoTrait; - use frame_system_benchmarking::Pallet as SystemBench; - - let mut list = Vec::::new(); - list_benchmarks!(list, extra); - - let storage_info = AllPalletsWithSystem::storage_info(); - return (list, storage_info) - } - - fn dispatch_benchmark( - config: frame_benchmarking::BenchmarkConfig - ) -> Result, sp_runtime::RuntimeString> { - use frame_benchmarking::{Benchmarking, BenchmarkBatch}; - use frame_support::traits::TrackedStorageKey; - - use frame_system_benchmarking::Pallet as SystemBench; - impl frame_system_benchmarking::Config for Runtime {} - - let whitelist: Vec = vec![ - // Block Number - hex_literal::hex!("26aa394eea5630e07c48ae0c9558cef702a5c1b19ab7a04f536c519aca4983ac").to_vec().into(), - // Total Issuance - hex_literal::hex!("c2261276cc9d1f8598ea4b6a74b15c2f57c875e4cff74148e4628f264b974c80").to_vec().into(), - // Execution Phase - hex_literal::hex!("26aa394eea5630e07c48ae0c9558cef7ff553b5a9862a516939d82b3d3d8661a").to_vec().into(), - // Event Count - hex_literal::hex!("26aa394eea5630e07c48ae0c9558cef70a98fdbe9ce6c55837576c60c7af3850").to_vec().into(), - // System Events - hex_literal::hex!("26aa394eea5630e07c48ae0c9558cef780d41e5e16056765bc8461851072c9d7").to_vec().into(), - // Treasury Account - hex_literal::hex!("26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95ecffd7b6c0f78751baa9d281e0bfa3a6d6f646c70792f74727372790000000000000000000000000000000000000000").to_vec().into(), - ]; - - let mut batches = Vec::::new(); - let params = (&config, &whitelist); - add_benchmarks!(params, batches); - - if batches.is_empty() { return Err("Benchmark not found for this pallet.".into()) } - Ok(batches) - } - } -} - -cumulus_pallet_parachain_system::register_validate_block! { - Runtime = Runtime, - BlockExecutor = cumulus_pallet_aura_ext::BlockExecutor::, -} diff --git a/polkadot-parachains/encointer-runtime/src/weights/block_weights.rs b/polkadot-parachains/encointer-runtime/src/weights/block_weights.rs deleted file mode 100644 index e7fdb2aa..00000000 --- a/polkadot-parachains/encointer-runtime/src/weights/block_weights.rs +++ /dev/null @@ -1,53 +0,0 @@ -// This file is part of Substrate. - -// Copyright (C) Parity Technologies (UK) Ltd. -// SPDX-License-Identifier: Apache-2.0 - -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -pub mod constants { - use frame_support::{ - parameter_types, - weights::{constants, Weight}, - }; - - parameter_types! { - /// Importing a block with 0 Extrinsics. - pub const BlockExecutionWeight: Weight = - Weight::from_parts(constants::WEIGHT_REF_TIME_PER_NANOS.saturating_mul(5_000_000), 0); - } - - #[cfg(test)] - mod test_weights { - use frame_support::weights::constants; - - /// Checks that the weight exists and is sane. - // NOTE: If this test fails but you are sure that the generated values are fine, - // you can delete it. - #[test] - fn sane() { - let w = super::constants::BlockExecutionWeight::get(); - - // At least 100 µs. - assert!( - w.ref_time() >= 100u64 * constants::WEIGHT_REF_TIME_PER_MICROS, - "Weight should be at least 100 µs." - ); - // At most 50 ms. - assert!( - w.ref_time() <= 50u64 * constants::WEIGHT_REF_TIME_PER_MILLIS, - "Weight should be at most 50 ms." - ); - } - } -} diff --git a/polkadot-parachains/encointer-runtime/src/weights/cumulus_pallet_xcmp_queue.rs b/polkadot-parachains/encointer-runtime/src/weights/cumulus_pallet_xcmp_queue.rs deleted file mode 100644 index f10766cb..00000000 --- a/polkadot-parachains/encointer-runtime/src/weights/cumulus_pallet_xcmp_queue.rs +++ /dev/null @@ -1,59 +0,0 @@ - -//! Autogenerated weights for `cumulus_pallet_xcmp_queue` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-07-31, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `caribe`, CPU: `12th Gen Intel(R) Core(TM) i7-1260P` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("encointer-rococo-local-dev"), DB CACHE: 1024 - -// Executed Command: -// target/release/encointer-collator -// benchmark -// pallet -// --chain=encointer-rococo-local-dev -// --steps=50 -// --repeat=20 -// --pallet=cumulus_pallet_xcmp_queue -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=polkadot-parachains/encointer-runtime/src/weights/cumulus_pallet_xcmp_queue.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 `cumulus_pallet_xcmp_queue`. -pub struct WeightInfo(PhantomData); -impl cumulus_pallet_xcmp_queue::WeightInfo for WeightInfo { - /// Storage: XcmpQueue QueueConfig (r:1 w:1) - /// Proof Skipped: XcmpQueue QueueConfig (max_values: Some(1), max_size: None, mode: Measured) - fn set_config_with_u32() -> Weight { - // Proof Size summary in bytes: - // Measured: `42` - // Estimated: `1527` - // Minimum execution time: 4_338_000 picoseconds. - Weight::from_parts(4_474_000, 0) - .saturating_add(Weight::from_parts(0, 1527)) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: XcmpQueue QueueConfig (r:1 w:1) - /// Proof Skipped: XcmpQueue QueueConfig (max_values: Some(1), max_size: None, mode: Measured) - fn set_config_with_weight() -> Weight { - // Proof Size summary in bytes: - // Measured: `42` - // Estimated: `1527` - // Minimum execution time: 4_285_000 picoseconds. - Weight::from_parts(4_439_000, 0) - .saturating_add(Weight::from_parts(0, 1527)) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } -} diff --git a/polkadot-parachains/encointer-runtime/src/weights/extrinsic_weights.rs b/polkadot-parachains/encointer-runtime/src/weights/extrinsic_weights.rs deleted file mode 100644 index 1a4adb96..00000000 --- a/polkadot-parachains/encointer-runtime/src/weights/extrinsic_weights.rs +++ /dev/null @@ -1,53 +0,0 @@ -// This file is part of Substrate. - -// Copyright (C) Parity Technologies (UK) Ltd. -// SPDX-License-Identifier: Apache-2.0 - -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -pub mod constants { - use frame_support::{ - parameter_types, - weights::{constants, Weight}, - }; - - parameter_types! { - /// Executing a NO-OP `System::remarks` Extrinsic. - pub const ExtrinsicBaseWeight: Weight = - Weight::from_parts(constants::WEIGHT_REF_TIME_PER_NANOS.saturating_mul(125_000), 0); - } - - #[cfg(test)] - mod test_weights { - use frame_support::weights::constants; - - /// Checks that the weight exists and is sane. - // NOTE: If this test fails but you are sure that the generated values are fine, - // you can delete it. - #[test] - fn sane() { - let w = super::constants::ExtrinsicBaseWeight::get(); - - // At least 10 µs. - assert!( - w.ref_time() >= 10u64 * constants::WEIGHT_REF_TIME_PER_MICROS, - "Weight should be at least 10 µs." - ); - // At most 1 ms. - assert!( - w.ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS, - "Weight should be at most 1 ms." - ); - } - } -} diff --git a/polkadot-parachains/encointer-runtime/src/weights/frame_system.rs b/polkadot-parachains/encointer-runtime/src/weights/frame_system.rs deleted file mode 100644 index 849c5b1e..00000000 --- a/polkadot-parachains/encointer-runtime/src/weights/frame_system.rs +++ /dev/null @@ -1,118 +0,0 @@ - -//! Autogenerated weights for `frame_system` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-07-31, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `caribe`, CPU: `12th Gen Intel(R) Core(TM) i7-1260P` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("encointer-rococo-local-dev"), DB CACHE: 1024 - -// Executed Command: -// target/release/encointer-collator -// benchmark -// pallet -// --chain=encointer-rococo-local-dev -// --steps=50 -// --repeat=20 -// --pallet=frame_system -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=polkadot-parachains/encointer-runtime/src/weights/frame_system.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 `frame_system`. -pub struct WeightInfo(PhantomData); -impl frame_system::WeightInfo for WeightInfo { - /// The range of component `b` is `[0, 3932160]`. - fn remark(b: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 1_825_000 picoseconds. - Weight::from_parts(1_851_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - // Standard Error: 0 - .saturating_add(Weight::from_parts(230, 0).saturating_mul(b.into())) - } - /// The range of component `b` is `[0, 3932160]`. - fn remark_with_event(b: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 7_322_000 picoseconds. - Weight::from_parts(27_401_876, 0) - .saturating_add(Weight::from_parts(0, 0)) - // Standard Error: 2 - .saturating_add(Weight::from_parts(1_123, 0).saturating_mul(b.into())) - } - fn set_code() -> Weight { - Weight::from_parts(1_000_000, 0) - } - /// Storage: System Digest (r:1 w:1) - /// Proof Skipped: System Digest (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: unknown `0x3a686561707061676573` (r:0 w:1) - /// Proof Skipped: unknown `0x3a686561707061676573` (r:0 w:1) - fn set_heap_pages() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `1485` - // Minimum execution time: 3_106_000 picoseconds. - Weight::from_parts(3_302_000, 0) - .saturating_add(Weight::from_parts(0, 1485)) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(2)) - } - /// Storage: Skipped Metadata (r:0 w:0) - /// Proof Skipped: Skipped Metadata (max_values: None, max_size: None, mode: Measured) - /// The range of component `i` is `[0, 1000]`. - fn set_storage(i: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 1_782_000 picoseconds. - Weight::from_parts(1_836_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - // Standard Error: 1_303 - .saturating_add(Weight::from_parts(630_699, 0).saturating_mul(i.into())) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i.into()))) - } - /// Storage: Skipped Metadata (r:0 w:0) - /// Proof Skipped: Skipped Metadata (max_values: None, max_size: None, mode: Measured) - /// The range of component `i` is `[0, 1000]`. - fn kill_storage(i: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 1_802_000 picoseconds. - Weight::from_parts(1_853_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - // Standard Error: 567 - .saturating_add(Weight::from_parts(439_023, 0).saturating_mul(i.into())) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i.into()))) - } - /// Storage: Skipped Metadata (r:0 w:0) - /// Proof Skipped: Skipped Metadata (max_values: None, max_size: None, mode: Measured) - /// The range of component `p` is `[0, 1000]`. - fn kill_prefix(p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `70 + p * (69 ±0)` - // Estimated: `76 + p * (70 ±0)` - // Minimum execution time: 3_331_000 picoseconds. - Weight::from_parts(3_480_000, 0) - .saturating_add(Weight::from_parts(0, 76)) - // Standard Error: 649 - .saturating_add(Weight::from_parts(833_917, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(p.into()))) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(p.into()))) - .saturating_add(Weight::from_parts(0, 70).saturating_mul(p.into())) - } -} diff --git a/polkadot-parachains/encointer-runtime/src/weights/mod.rs b/polkadot-parachains/encointer-runtime/src/weights/mod.rs deleted file mode 100644 index c9a0adae..00000000 --- a/polkadot-parachains/encointer-runtime/src/weights/mod.rs +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright (c) 2019 Alain Brenzikofer -// This file is part of Encointer -// -// Encointer 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. -// -// Encointer 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 Encointer. If not, see . - -//! The weights used in the encointer-parachain-runtime - -// the generated files do not pass clippy -#![allow(clippy::all)] - -pub mod block_weights; -pub mod cumulus_pallet_xcmp_queue; -pub mod extrinsic_weights; -pub mod frame_system; -pub mod pallet_balances; -pub mod pallet_collective; -pub mod pallet_encointer_balances; -pub mod pallet_encointer_bazaar; -pub mod pallet_encointer_ceremonies; -pub mod pallet_encointer_communities; -pub mod pallet_encointer_faucet; -pub mod pallet_encointer_reputation_commitments; -pub mod pallet_encointer_scheduler; -pub mod pallet_membership; -pub mod pallet_proxy; -pub mod pallet_timestamp; -pub mod pallet_treasury; -pub mod pallet_utility; -pub mod paritydb_weights; -pub mod rocksdb_weights; - -pub use block_weights::constants::BlockExecutionWeight; -pub use extrinsic_weights::constants::ExtrinsicBaseWeight; -pub use paritydb_weights::constants::ParityDbWeight; -pub use rocksdb_weights::constants::RocksDbWeight; diff --git a/polkadot-parachains/encointer-runtime/src/weights/pallet_balances.rs b/polkadot-parachains/encointer-runtime/src/weights/pallet_balances.rs deleted file mode 100644 index 449621b5..00000000 --- a/polkadot-parachains/encointer-runtime/src/weights/pallet_balances.rs +++ /dev/null @@ -1,135 +0,0 @@ - -//! Autogenerated weights for `pallet_balances` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-07-31, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `caribe`, CPU: `12th Gen Intel(R) Core(TM) i7-1260P` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("encointer-rococo-local-dev"), DB CACHE: 1024 - -// Executed Command: -// target/release/encointer-collator -// benchmark -// pallet -// --chain=encointer-rococo-local-dev -// --steps=50 -// --repeat=20 -// --pallet=pallet_balances -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=polkadot-parachains/encointer-runtime/src/weights/pallet_balances.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_balances`. -pub struct WeightInfo(PhantomData); -impl pallet_balances::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 transfer_allow_death() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `3593` - // Minimum execution time: 51_062_000 picoseconds. - Weight::from_parts(52_242_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 transfer_keep_alive() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `3593` - // Minimum execution time: 38_442_000 picoseconds. - Weight::from_parts(38_796_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 force_set_balance_creating() -> Weight { - // Proof Size summary in bytes: - // Measured: `103` - // Estimated: `3593` - // Minimum execution time: 12_980_000 picoseconds. - Weight::from_parts(13_172_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 force_set_balance_killing() -> Weight { - // Proof Size summary in bytes: - // Measured: `103` - // Estimated: `3593` - // Minimum execution time: 19_468_000 picoseconds. - Weight::from_parts(19_763_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 force_transfer() -> Weight { - // Proof Size summary in bytes: - // Measured: `103` - // Estimated: `6196` - // Minimum execution time: 51_765_000 picoseconds. - Weight::from_parts(52_610_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:1 w:1) - /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) - fn transfer_all() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `3593` - // Minimum execution time: 47_586_000 picoseconds. - Weight::from_parts(48_295_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 force_unreserve() -> Weight { - // Proof Size summary in bytes: - // Measured: `103` - // Estimated: `3593` - // Minimum execution time: 15_891_000 picoseconds. - Weight::from_parts(16_204_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:999 w:999) - /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) - /// The range of component `u` is `[1, 1000]`. - fn upgrade_accounts(u: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `0 + u * (135 ±0)` - // Estimated: `990 + u * (2603 ±0)` - // Minimum execution time: 15_647_000 picoseconds. - Weight::from_parts(15_952_000, 0) - .saturating_add(Weight::from_parts(0, 990)) - // Standard Error: 99_031 - .saturating_add(Weight::from_parts(15_553_741, 0).saturating_mul(u.into())) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(u.into()))) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(u.into()))) - .saturating_add(Weight::from_parts(0, 2603).saturating_mul(u.into())) - } -} diff --git a/polkadot-parachains/encointer-runtime/src/weights/pallet_collective.rs b/polkadot-parachains/encointer-runtime/src/weights/pallet_collective.rs deleted file mode 100644 index 2587a89d..00000000 --- a/polkadot-parachains/encointer-runtime/src/weights/pallet_collective.rs +++ /dev/null @@ -1,287 +0,0 @@ - -//! Autogenerated weights for `pallet_collective` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-07-31, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `caribe`, CPU: `12th Gen Intel(R) Core(TM) i7-1260P` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("encointer-rococo-local-dev"), DB CACHE: 1024 - -// Executed Command: -// target/release/encointer-collator -// benchmark -// pallet -// --chain=encointer-rococo-local-dev -// --steps=50 -// --repeat=20 -// --pallet=pallet_collective -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=polkadot-parachains/encointer-runtime/src/weights/pallet_collective.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_collective`. -pub struct WeightInfo(PhantomData); -impl pallet_collective::WeightInfo for WeightInfo { - /// Storage: Collective Members (r:1 w:1) - /// Proof Skipped: Collective Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Collective Proposals (r:1 w:0) - /// Proof Skipped: Collective Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Collective Voting (r:100 w:100) - /// Proof Skipped: Collective Voting (max_values: None, max_size: None, mode: Measured) - /// Storage: Collective Prime (r:0 w:1) - /// Proof Skipped: Collective 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]`. - fn set_members(m: u32, _n: u32, p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `0 + m * (3232 ±0) + p * (3190 ±0)` - // Estimated: `15728 + m * (1967 ±24) + p * (4332 ±24)` - // Minimum execution time: 12_612_000 picoseconds. - Weight::from_parts(12_817_000, 0) - .saturating_add(Weight::from_parts(0, 15728)) - // Standard Error: 54_992 - .saturating_add(Weight::from_parts(4_313_092, 0).saturating_mul(m.into())) - // Standard Error: 54_992 - .saturating_add(Weight::from_parts(6_586_060, 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, 1967).saturating_mul(m.into())) - .saturating_add(Weight::from_parts(0, 4332).saturating_mul(p.into())) - } - /// Storage: Collective Members (r:1 w:0) - /// Proof Skipped: Collective 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]`. - fn execute(b: u32, m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `69 + m * (32 ±0)` - // Estimated: `1555 + m * (32 ±0)` - // Minimum execution time: 13_615_000 picoseconds. - Weight::from_parts(13_294_322, 0) - .saturating_add(Weight::from_parts(0, 1555)) - // Standard Error: 24 - .saturating_add(Weight::from_parts(1_137, 0).saturating_mul(b.into())) - // Standard Error: 250 - .saturating_add(Weight::from_parts(9_446, 0).saturating_mul(m.into())) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(Weight::from_parts(0, 32).saturating_mul(m.into())) - } - /// Storage: Collective Members (r:1 w:0) - /// Proof Skipped: Collective Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Collective ProposalOf (r:1 w:0) - /// Proof Skipped: Collective 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]`. - fn propose_execute(b: u32, m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `69 + m * (32 ±0)` - // Estimated: `3535 + m * (32 ±0)` - // Minimum execution time: 16_050_000 picoseconds. - Weight::from_parts(15_173_364, 0) - .saturating_add(Weight::from_parts(0, 3535)) - // Standard Error: 43 - .saturating_add(Weight::from_parts(1_403, 0).saturating_mul(b.into())) - // Standard Error: 453 - .saturating_add(Weight::from_parts(18_210, 0).saturating_mul(m.into())) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(Weight::from_parts(0, 32).saturating_mul(m.into())) - } - /// Storage: Collective Members (r:1 w:0) - /// Proof Skipped: Collective Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Collective ProposalOf (r:1 w:1) - /// Proof Skipped: Collective ProposalOf (max_values: None, max_size: None, mode: Measured) - /// Storage: Collective Proposals (r:1 w:1) - /// Proof Skipped: Collective Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Collective ProposalCount (r:1 w:1) - /// Proof Skipped: Collective ProposalCount (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Collective Voting (r:0 w:1) - /// Proof Skipped: Collective 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]`. - fn propose_proposed(b: u32, m: u32, p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `359 + m * (32 ±0) + p * (36 ±0)` - // Estimated: `3751 + m * (33 ±0) + p * (36 ±0)` - // Minimum execution time: 22_203_000 picoseconds. - Weight::from_parts(22_610_277, 0) - .saturating_add(Weight::from_parts(0, 3751)) - // Standard Error: 95 - .saturating_add(Weight::from_parts(2_707, 0).saturating_mul(b.into())) - // Standard Error: 1_000 - .saturating_add(Weight::from_parts(23_109, 0).saturating_mul(m.into())) - // Standard Error: 988 - .saturating_add(Weight::from_parts(189_590, 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, 33).saturating_mul(m.into())) - .saturating_add(Weight::from_parts(0, 36).saturating_mul(p.into())) - } - /// Storage: Collective Members (r:1 w:0) - /// Proof Skipped: Collective Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Collective Voting (r:1 w:1) - /// Proof Skipped: Collective Voting (max_values: None, max_size: None, mode: Measured) - /// The range of component `m` is `[5, 100]`. - fn vote(m: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `808 + m * (64 ±0)` - // Estimated: `4272 + m * (64 ±0)` - // Minimum execution time: 22_632_000 picoseconds. - Weight::from_parts(23_889_147, 0) - .saturating_add(Weight::from_parts(0, 4272)) - // Standard Error: 1_170 - .saturating_add(Weight::from_parts(34_147, 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, 64).saturating_mul(m.into())) - } - /// Storage: Collective Voting (r:1 w:1) - /// Proof Skipped: Collective Voting (max_values: None, max_size: None, mode: Measured) - /// Storage: Collective Members (r:1 w:0) - /// Proof Skipped: Collective Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Collective Proposals (r:1 w:1) - /// Proof Skipped: Collective Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Collective ProposalOf (r:0 w:1) - /// Proof Skipped: Collective 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]`. - fn close_early_disapproved(m: u32, p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `397 + m * (64 ±0) + p * (36 ±0)` - // Estimated: `3842 + m * (65 ±0) + p * (36 ±0)` - // Minimum execution time: 25_176_000 picoseconds. - Weight::from_parts(26_526_585, 0) - .saturating_add(Weight::from_parts(0, 3842)) - // Standard Error: 1_143 - .saturating_add(Weight::from_parts(19_843, 0).saturating_mul(m.into())) - // Standard Error: 1_114 - .saturating_add(Weight::from_parts(185_128, 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, 65).saturating_mul(m.into())) - .saturating_add(Weight::from_parts(0, 36).saturating_mul(p.into())) - } - /// Storage: Collective Voting (r:1 w:1) - /// Proof Skipped: Collective Voting (max_values: None, max_size: None, mode: Measured) - /// Storage: Collective Members (r:1 w:0) - /// Proof Skipped: Collective Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Collective ProposalOf (r:1 w:1) - /// Proof Skipped: Collective ProposalOf (max_values: None, max_size: None, mode: Measured) - /// Storage: Collective Proposals (r:1 w:1) - /// Proof Skipped: Collective 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]`. - fn close_early_approved(b: u32, m: u32, p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `699 + b * (1 ±0) + m * (64 ±0) + p * (40 ±0)` - // Estimated: `4016 + b * (1 ±0) + m * (66 ±0) + p * (40 ±0)` - // Minimum execution time: 35_905_000 picoseconds. - Weight::from_parts(37_097_894, 0) - .saturating_add(Weight::from_parts(0, 4016)) - // Standard Error: 155 - .saturating_add(Weight::from_parts(2_460, 0).saturating_mul(b.into())) - // Standard Error: 1_638 - .saturating_add(Weight::from_parts(25_075, 0).saturating_mul(m.into())) - // Standard Error: 1_597 - .saturating_add(Weight::from_parts(220_820, 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, 1).saturating_mul(b.into())) - .saturating_add(Weight::from_parts(0, 66).saturating_mul(m.into())) - .saturating_add(Weight::from_parts(0, 40).saturating_mul(p.into())) - } - /// Storage: Collective Voting (r:1 w:1) - /// Proof Skipped: Collective Voting (max_values: None, max_size: None, mode: Measured) - /// Storage: Collective Members (r:1 w:0) - /// Proof Skipped: Collective Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Collective Prime (r:1 w:0) - /// Proof Skipped: Collective Prime (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Collective Proposals (r:1 w:1) - /// Proof Skipped: Collective Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Collective ProposalOf (r:0 w:1) - /// Proof Skipped: Collective 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]`. - fn close_disapproved(m: u32, p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `417 + m * (64 ±0) + p * (36 ±0)` - // Estimated: `3862 + m * (65 ±0) + p * (36 ±0)` - // Minimum execution time: 27_232_000 picoseconds. - Weight::from_parts(28_648_248, 0) - .saturating_add(Weight::from_parts(0, 3862)) - // Standard Error: 921 - .saturating_add(Weight::from_parts(27_951, 0).saturating_mul(m.into())) - // Standard Error: 898 - .saturating_add(Weight::from_parts(183_334, 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, 65).saturating_mul(m.into())) - .saturating_add(Weight::from_parts(0, 36).saturating_mul(p.into())) - } - /// Storage: Collective Voting (r:1 w:1) - /// Proof Skipped: Collective Voting (max_values: None, max_size: None, mode: Measured) - /// Storage: Collective Members (r:1 w:0) - /// Proof Skipped: Collective Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Collective Prime (r:1 w:0) - /// Proof Skipped: Collective Prime (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Collective ProposalOf (r:1 w:1) - /// Proof Skipped: Collective ProposalOf (max_values: None, max_size: None, mode: Measured) - /// Storage: Collective Proposals (r:1 w:1) - /// Proof Skipped: Collective 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]`. - fn close_approved(b: u32, m: u32, p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `719 + b * (1 ±0) + m * (64 ±0) + p * (40 ±0)` - // Estimated: `4036 + b * (1 ±0) + m * (66 ±0) + p * (40 ±0)` - // Minimum execution time: 37_906_000 picoseconds. - Weight::from_parts(41_399_461, 0) - .saturating_add(Weight::from_parts(0, 4036)) - // Standard Error: 124 - .saturating_add(Weight::from_parts(1_721, 0).saturating_mul(b.into())) - // Standard Error: 1_311 - .saturating_add(Weight::from_parts(22_182, 0).saturating_mul(m.into())) - // Standard Error: 1_278 - .saturating_add(Weight::from_parts(214_365, 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, 1).saturating_mul(b.into())) - .saturating_add(Weight::from_parts(0, 66).saturating_mul(m.into())) - .saturating_add(Weight::from_parts(0, 40).saturating_mul(p.into())) - } - /// Storage: Collective Proposals (r:1 w:1) - /// Proof Skipped: Collective Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Collective Voting (r:0 w:1) - /// Proof Skipped: Collective Voting (max_values: None, max_size: None, mode: Measured) - /// Storage: Collective ProposalOf (r:0 w:1) - /// Proof Skipped: Collective ProposalOf (max_values: None, max_size: None, mode: Measured) - /// The range of component `p` is `[1, 100]`. - fn disapprove_proposal(p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `226 + p * (32 ±0)` - // Estimated: `1711 + p * (32 ±0)` - // Minimum execution time: 13_796_000 picoseconds. - Weight::from_parts(15_669_737, 0) - .saturating_add(Weight::from_parts(0, 1711)) - // Standard Error: 1_075 - .saturating_add(Weight::from_parts(172_017, 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, 32).saturating_mul(p.into())) - } -} diff --git a/polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_balances.rs b/polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_balances.rs deleted file mode 100644 index e8c813ba..00000000 --- a/polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_balances.rs +++ /dev/null @@ -1,72 +0,0 @@ - -//! Autogenerated weights for `pallet_encointer_balances` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-07-31, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `caribe`, CPU: `12th Gen Intel(R) Core(TM) i7-1260P` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("encointer-rococo-local-dev"), DB CACHE: 1024 - -// Executed Command: -// target/release/encointer-collator -// benchmark -// pallet -// --chain=encointer-rococo-local-dev -// --steps=50 -// --repeat=20 -// --pallet=pallet_encointer_balances -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_balances.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_encointer_balances`. -pub struct WeightInfo(PhantomData); -impl pallet_encointer_balances::WeightInfo for WeightInfo { - /// Storage: EncointerBalances Balance (r:2 w:2) - /// Proof: EncointerBalances Balance (max_values: None, max_size: Some(93), added: 2568, mode: MaxEncodedLen) - /// Storage: EncointerBalances DemurragePerBlock (r:1 w:0) - /// Proof: EncointerBalances DemurragePerBlock (max_values: None, max_size: Some(41), added: 2516, mode: MaxEncodedLen) - /// Storage: System Account (r:1 w:1) - /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) - fn transfer() -> Weight { - // Proof Size summary in bytes: - // Measured: `235` - // Estimated: `6126` - // Minimum execution time: 83_473_000 picoseconds. - Weight::from_parts(84_889_000, 0) - .saturating_add(Weight::from_parts(0, 6126)) - .saturating_add(T::DbWeight::get().reads(4)) - .saturating_add(T::DbWeight::get().writes(3)) - } - /// Storage: EncointerBalances Balance (r:2 w:2) - /// Proof: EncointerBalances Balance (max_values: None, max_size: Some(93), added: 2568, mode: MaxEncodedLen) - /// Storage: EncointerBalances DemurragePerBlock (r:1 w:0) - /// Proof: EncointerBalances DemurragePerBlock (max_values: None, max_size: Some(41), added: 2516, mode: MaxEncodedLen) - /// Storage: System Account (r:2 w:2) - /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) - fn transfer_all() -> Weight { - // Proof Size summary in bytes: - // Measured: `235` - // Estimated: `6196` - // Minimum execution time: 117_542_000 picoseconds. - Weight::from_parts(119_322_000, 0) - .saturating_add(Weight::from_parts(0, 6196)) - .saturating_add(T::DbWeight::get().reads(5)) - .saturating_add(T::DbWeight::get().writes(4)) - } - fn set_fee_conversion_factor() -> Weight { - Weight::from_parts(6_000_000, 0) - .saturating_add(T::DbWeight::get().writes(1)) - } - -} diff --git a/polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_bazaar.rs b/polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_bazaar.rs deleted file mode 100644 index 2bbab537..00000000 --- a/polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_bazaar.rs +++ /dev/null @@ -1,111 +0,0 @@ - -//! Autogenerated weights for `pallet_encointer_bazaar` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-07-31, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `caribe`, CPU: `12th Gen Intel(R) Core(TM) i7-1260P` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("encointer-rococo-local-dev"), DB CACHE: 1024 - -// Executed Command: -// target/release/encointer-collator -// benchmark -// pallet -// --chain=encointer-rococo-local-dev -// --steps=50 -// --repeat=20 -// --pallet=pallet_encointer_bazaar -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_bazaar.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_encointer_bazaar`. -pub struct WeightInfo(PhantomData); -impl pallet_encointer_bazaar::WeightInfo for WeightInfo { - /// Storage: EncointerCommunities CommunityIdentifiers (r:1 w:0) - /// Proof: EncointerCommunities CommunityIdentifiers (max_values: Some(1), max_size: Some(90002), added: 90497, mode: MaxEncodedLen) - /// Storage: EncointerBazaar BusinessRegistry (r:1 w:1) - /// Proof Skipped: EncointerBazaar BusinessRegistry (max_values: None, max_size: None, mode: Measured) - fn create_business() -> Weight { - // Proof Size summary in bytes: - // Measured: `263` - // Estimated: `91487` - // Minimum execution time: 28_826_000 picoseconds. - Weight::from_parts(31_307_000, 0) - .saturating_add(Weight::from_parts(0, 91487)) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: EncointerBazaar BusinessRegistry (r:1 w:1) - /// Proof Skipped: EncointerBazaar BusinessRegistry (max_values: None, max_size: None, mode: Measured) - fn update_business() -> Weight { - // Proof Size summary in bytes: - // Measured: `162` - // Estimated: `3627` - // Minimum execution time: 24_215_000 picoseconds. - Weight::from_parts(26_309_000, 0) - .saturating_add(Weight::from_parts(0, 3627)) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: EncointerBazaar BusinessRegistry (r:1 w:1) - /// Proof Skipped: EncointerBazaar BusinessRegistry (max_values: None, max_size: None, mode: Measured) - fn delete_business() -> Weight { - // Proof Size summary in bytes: - // Measured: `162` - // Estimated: `3627` - // Minimum execution time: 27_141_000 picoseconds. - Weight::from_parts(28_669_000, 0) - .saturating_add(Weight::from_parts(0, 3627)) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: EncointerBazaar BusinessRegistry (r:1 w:1) - /// Proof Skipped: EncointerBazaar BusinessRegistry (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerBazaar OfferingRegistry (r:0 w:1) - /// Proof Skipped: EncointerBazaar OfferingRegistry (max_values: None, max_size: None, mode: Measured) - fn create_offering() -> Weight { - // Proof Size summary in bytes: - // Measured: `162` - // Estimated: `3627` - // Minimum execution time: 29_322_000 picoseconds. - Weight::from_parts(30_740_000, 0) - .saturating_add(Weight::from_parts(0, 3627)) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(2)) - } - /// Storage: EncointerBazaar OfferingRegistry (r:1 w:1) - /// Proof Skipped: EncointerBazaar OfferingRegistry (max_values: None, max_size: None, mode: Measured) - fn update_offering() -> Weight { - // Proof Size summary in bytes: - // Measured: `196` - // Estimated: `3661` - // Minimum execution time: 21_668_000 picoseconds. - Weight::from_parts(22_897_000, 0) - .saturating_add(Weight::from_parts(0, 3661)) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: EncointerBazaar OfferingRegistry (r:1 w:1) - /// Proof Skipped: EncointerBazaar OfferingRegistry (max_values: None, max_size: None, mode: Measured) - fn delete_offering() -> Weight { - // Proof Size summary in bytes: - // Measured: `196` - // Estimated: `3661` - // Minimum execution time: 19_727_000 picoseconds. - Weight::from_parts(20_387_000, 0) - .saturating_add(Weight::from_parts(0, 3661)) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } -} diff --git a/polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_ceremonies.rs b/polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_ceremonies.rs deleted file mode 100644 index 94370b83..00000000 --- a/polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_ceremonies.rs +++ /dev/null @@ -1,401 +0,0 @@ - -//! Autogenerated weights for `pallet_encointer_ceremonies` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-07-31, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `caribe`, CPU: `12th Gen Intel(R) Core(TM) i7-1260P` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("encointer-rococo-local-dev"), DB CACHE: 1024 - -// Executed Command: -// target/release/encointer-collator -// benchmark -// pallet -// --chain=encointer-rococo-local-dev -// --steps=50 -// --repeat=20 -// --pallet=pallet_encointer_ceremonies -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_ceremonies.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_encointer_ceremonies`. -pub struct WeightInfo(PhantomData); -impl pallet_encointer_ceremonies::WeightInfo for WeightInfo { - /// Storage: EncointerScheduler CurrentPhase (r:1 w:0) - /// Proof: EncointerScheduler CurrentPhase (max_values: Some(1), max_size: Some(1), added: 496, mode: MaxEncodedLen) - /// Storage: EncointerCommunities CommunityIdentifiers (r:1 w:0) - /// Proof: EncointerCommunities CommunityIdentifiers (max_values: Some(1), max_size: Some(90002), added: 90497, mode: MaxEncodedLen) - /// Storage: EncointerScheduler CurrentCeremonyIndex (r:1 w:0) - /// Proof: EncointerScheduler CurrentCeremonyIndex (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: EncointerCeremonies BootstrapperIndex (r:1 w:0) - /// Proof Skipped: EncointerCeremonies BootstrapperIndex (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies ReputableIndex (r:1 w:1) - /// Proof Skipped: EncointerCeremonies ReputableIndex (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies EndorseeIndex (r:1 w:0) - /// Proof Skipped: EncointerCeremonies EndorseeIndex (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies NewbieIndex (r:1 w:0) - /// Proof Skipped: EncointerCeremonies NewbieIndex (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies ReputationLifetime (r:1 w:0) - /// Proof Skipped: EncointerCeremonies ReputationLifetime (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: EncointerCeremonies ParticipantReputation (r:1 w:2) - /// Proof Skipped: EncointerCeremonies ParticipantReputation (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCommunities Bootstrappers (r:1 w:0) - /// Proof: EncointerCommunities Bootstrappers (max_values: None, max_size: Some(320027), added: 322502, mode: MaxEncodedLen) - /// Storage: EncointerBalances TotalIssuance (r:1 w:0) - /// Proof: EncointerBalances TotalIssuance (max_values: None, max_size: Some(45), added: 2520, mode: MaxEncodedLen) - /// Storage: EncointerBalances DemurragePerBlock (r:1 w:0) - /// Proof: EncointerBalances DemurragePerBlock (max_values: None, max_size: Some(41), added: 2516, mode: MaxEncodedLen) - /// Storage: EncointerCeremonies ReputableCount (r:1 w:1) - /// Proof Skipped: EncointerCeremonies ReputableCount (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies ReputableRegistry (r:0 w:1) - /// Proof Skipped: EncointerCeremonies ReputableRegistry (max_values: None, max_size: None, mode: Measured) - fn register_participant() -> Weight { - // Proof Size summary in bytes: - // Measured: `862` - // Estimated: `323492` - // Minimum execution time: 141_377_000 picoseconds. - Weight::from_parts(150_107_000, 0) - .saturating_add(Weight::from_parts(0, 323492)) - .saturating_add(T::DbWeight::get().reads(13)) - .saturating_add(T::DbWeight::get().writes(5)) - } - /// Storage: EncointerScheduler CurrentPhase (r:1 w:0) - /// Proof: EncointerScheduler CurrentPhase (max_values: Some(1), max_size: Some(1), added: 496, mode: MaxEncodedLen) - /// Storage: EncointerCommunities CommunityIdentifiers (r:1 w:0) - /// Proof: EncointerCommunities CommunityIdentifiers (max_values: Some(1), max_size: Some(90002), added: 90497, mode: MaxEncodedLen) - /// Storage: EncointerScheduler CurrentCeremonyIndex (r:1 w:0) - /// Proof: EncointerScheduler CurrentCeremonyIndex (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: EncointerCeremonies BootstrapperIndex (r:1 w:0) - /// Proof Skipped: EncointerCeremonies BootstrapperIndex (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies ReputableIndex (r:1 w:1) - /// Proof Skipped: EncointerCeremonies ReputableIndex (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies EndorseeIndex (r:1 w:0) - /// Proof Skipped: EncointerCeremonies EndorseeIndex (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies NewbieIndex (r:1 w:1) - /// Proof Skipped: EncointerCeremonies NewbieIndex (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies NewbieCount (r:1 w:1) - /// Proof Skipped: EncointerCeremonies NewbieCount (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies NewbieRegistry (r:1 w:1) - /// Proof Skipped: EncointerCeremonies NewbieRegistry (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies ReputationLifetime (r:1 w:0) - /// Proof Skipped: EncointerCeremonies ReputationLifetime (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: EncointerCeremonies ParticipantReputation (r:1 w:2) - /// Proof Skipped: EncointerCeremonies ParticipantReputation (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCommunities Bootstrappers (r:1 w:0) - /// Proof: EncointerCommunities Bootstrappers (max_values: None, max_size: Some(320027), added: 322502, mode: MaxEncodedLen) - /// Storage: EncointerBalances TotalIssuance (r:1 w:0) - /// Proof: EncointerBalances TotalIssuance (max_values: None, max_size: Some(45), added: 2520, mode: MaxEncodedLen) - /// Storage: EncointerBalances DemurragePerBlock (r:1 w:0) - /// Proof: EncointerBalances DemurragePerBlock (max_values: None, max_size: Some(41), added: 2516, mode: MaxEncodedLen) - /// Storage: EncointerCeremonies ReputableCount (r:1 w:1) - /// Proof Skipped: EncointerCeremonies ReputableCount (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies ReputableRegistry (r:0 w:1) - /// Proof Skipped: EncointerCeremonies ReputableRegistry (max_values: None, max_size: None, mode: Measured) - fn upgrade_registration() -> Weight { - // Proof Size summary in bytes: - // Measured: `1140` - // Estimated: `323492` - // Minimum execution time: 170_801_000 picoseconds. - Weight::from_parts(177_027_000, 0) - .saturating_add(Weight::from_parts(0, 323492)) - .saturating_add(T::DbWeight::get().reads(15)) - .saturating_add(T::DbWeight::get().writes(8)) - } - /// Storage: EncointerScheduler CurrentPhase (r:1 w:0) - /// Proof: EncointerScheduler CurrentPhase (max_values: Some(1), max_size: Some(1), added: 496, mode: MaxEncodedLen) - /// Storage: EncointerCommunities CommunityIdentifiers (r:1 w:0) - /// Proof: EncointerCommunities CommunityIdentifiers (max_values: Some(1), max_size: Some(90002), added: 90497, mode: MaxEncodedLen) - /// Storage: EncointerScheduler CurrentCeremonyIndex (r:1 w:0) - /// Proof: EncointerScheduler CurrentCeremonyIndex (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: EncointerCeremonies BootstrapperIndex (r:1 w:0) - /// Proof Skipped: EncointerCeremonies BootstrapperIndex (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies ReputableIndex (r:1 w:1) - /// Proof Skipped: EncointerCeremonies ReputableIndex (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies ReputationLifetime (r:1 w:0) - /// Proof Skipped: EncointerCeremonies ReputationLifetime (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: EncointerCeremonies ParticipantReputation (r:1 w:2) - /// Proof Skipped: EncointerCeremonies ParticipantReputation (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies ReputableCount (r:1 w:1) - /// Proof Skipped: EncointerCeremonies ReputableCount (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies ReputableRegistry (r:1 w:1) - /// Proof Skipped: EncointerCeremonies ReputableRegistry (max_values: None, max_size: None, mode: Measured) - fn unregister_participant() -> Weight { - // Proof Size summary in bytes: - // Measured: `943` - // Estimated: `91487` - // Minimum execution time: 62_897_000 picoseconds. - Weight::from_parts(65_129_000, 0) - .saturating_add(Weight::from_parts(0, 91487)) - .saturating_add(T::DbWeight::get().reads(9)) - .saturating_add(T::DbWeight::get().writes(5)) - } - /// Storage: EncointerScheduler CurrentPhase (r:1 w:0) - /// Proof: EncointerScheduler CurrentPhase (max_values: Some(1), max_size: Some(1), added: 496, mode: MaxEncodedLen) - /// Storage: EncointerCommunities CommunityIdentifiers (r:1 w:0) - /// Proof: EncointerCommunities CommunityIdentifiers (max_values: Some(1), max_size: Some(90002), added: 90497, mode: MaxEncodedLen) - /// Storage: EncointerScheduler CurrentCeremonyIndex (r:1 w:0) - /// Proof: EncointerScheduler CurrentCeremonyIndex (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: EncointerCeremonies MeetupCount (r:1 w:0) - /// Proof Skipped: EncointerCeremonies MeetupCount (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies AssignmentCounts (r:1 w:0) - /// Proof Skipped: EncointerCeremonies AssignmentCounts (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies Assignments (r:1 w:0) - /// Proof Skipped: EncointerCeremonies Assignments (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies BootstrapperIndex (r:1 w:0) - /// Proof Skipped: EncointerCeremonies BootstrapperIndex (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies ReputableIndex (r:1 w:0) - /// Proof Skipped: EncointerCeremonies ReputableIndex (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies ReputableRegistry (r:8 w:0) - /// Proof Skipped: EncointerCeremonies ReputableRegistry (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies NewbieRegistry (r:2 w:0) - /// Proof Skipped: EncointerCeremonies NewbieRegistry (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCommunities Locations (r:2 w:0) - /// Proof: EncointerCommunities Locations (max_values: None, max_size: Some(320032), added: 322507, mode: MaxEncodedLen) - /// Storage: EncointerScheduler PhaseDurations (r:1 w:0) - /// Proof: EncointerScheduler PhaseDurations (max_values: None, max_size: Some(25), added: 2500, mode: MaxEncodedLen) - /// Storage: EncointerScheduler NextPhaseTimestamp (r:1 w:0) - /// Proof: EncointerScheduler NextPhaseTimestamp (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) - /// Storage: EncointerCeremonies MeetupTimeOffset (r:1 w:0) - /// Proof Skipped: EncointerCeremonies MeetupTimeOffset (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: EncointerCeremonies AttestationCount (r:1 w:1) - /// Proof Skipped: EncointerCeremonies AttestationCount (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies AttestationIndex (r:1 w:1) - /// Proof Skipped: EncointerCeremonies AttestationIndex (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies MeetupParticipantCountVote (r:0 w:1) - /// Proof Skipped: EncointerCeremonies MeetupParticipantCountVote (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies AttestationRegistry (r:0 w:1) - /// Proof Skipped: EncointerCeremonies AttestationRegistry (max_values: None, max_size: None, mode: Measured) - fn attest_attendees() -> Weight { - // Proof Size summary in bytes: - // Measured: `2137` - // Estimated: `646004` - // Minimum execution time: 123_019_000 picoseconds. - Weight::from_parts(126_476_000, 0) - .saturating_add(Weight::from_parts(0, 646004)) - .saturating_add(T::DbWeight::get().reads(25)) - .saturating_add(T::DbWeight::get().writes(4)) - } - /// Storage: EncointerCommunities CommunityIdentifiers (r:1 w:0) - /// Proof: EncointerCommunities CommunityIdentifiers (max_values: Some(1), max_size: Some(90002), added: 90497, mode: MaxEncodedLen) - /// Storage: EncointerScheduler CurrentCeremonyIndex (r:1 w:0) - /// Proof: EncointerScheduler CurrentCeremonyIndex (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: EncointerScheduler CurrentPhase (r:1 w:0) - /// Proof: EncointerScheduler CurrentPhase (max_values: Some(1), max_size: Some(1), added: 496, mode: MaxEncodedLen) - /// Storage: EncointerCeremonies ReputationLifetime (r:1 w:0) - /// Proof Skipped: EncointerCeremonies ReputationLifetime (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: EncointerCeremonies Endorsees (r:2 w:1) - /// Proof Skipped: EncointerCeremonies Endorsees (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies ParticipantReputation (r:2 w:0) - /// Proof Skipped: EncointerCeremonies ParticipantReputation (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies BurnedReputableNewbieTickets (r:1 w:1) - /// Proof Skipped: EncointerCeremonies BurnedReputableNewbieTickets (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies EndorsementTicketsPerReputable (r:1 w:0) - /// Proof Skipped: EncointerCeremonies EndorsementTicketsPerReputable (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: EncointerCeremonies EndorseeCount (r:1 w:1) - /// Proof Skipped: EncointerCeremonies EndorseeCount (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies NewbieIndex (r:1 w:1) - /// Proof Skipped: EncointerCeremonies NewbieIndex (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies BootstrapperIndex (r:1 w:0) - /// Proof Skipped: EncointerCeremonies BootstrapperIndex (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies ReputableIndex (r:1 w:0) - /// Proof Skipped: EncointerCeremonies ReputableIndex (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies EndorseeIndex (r:1 w:1) - /// Proof Skipped: EncointerCeremonies EndorseeIndex (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies NewbieCount (r:1 w:1) - /// Proof Skipped: EncointerCeremonies NewbieCount (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies NewbieRegistry (r:1 w:1) - /// Proof Skipped: EncointerCeremonies NewbieRegistry (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCommunities Bootstrappers (r:1 w:0) - /// Proof: EncointerCommunities Bootstrappers (max_values: None, max_size: Some(320027), added: 322502, mode: MaxEncodedLen) - /// Storage: EncointerBalances TotalIssuance (r:1 w:0) - /// Proof: EncointerBalances TotalIssuance (max_values: None, max_size: Some(45), added: 2520, mode: MaxEncodedLen) - /// Storage: EncointerBalances DemurragePerBlock (r:1 w:0) - /// Proof: EncointerBalances DemurragePerBlock (max_values: None, max_size: Some(41), added: 2516, mode: MaxEncodedLen) - /// Storage: EncointerCeremonies EndorseeRegistry (r:0 w:1) - /// Proof Skipped: EncointerCeremonies EndorseeRegistry (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies EndorseesCount (r:0 w:1) - /// Proof Skipped: EncointerCeremonies EndorseesCount (max_values: None, max_size: None, mode: Measured) - fn endorse_newcomer() -> Weight { - // Proof Size summary in bytes: - // Measured: `1130` - // Estimated: `323492` - // Minimum execution time: 116_739_000 picoseconds. - Weight::from_parts(119_393_000, 0) - .saturating_add(Weight::from_parts(0, 323492)) - .saturating_add(T::DbWeight::get().reads(20)) - .saturating_add(T::DbWeight::get().writes(9)) - } - /// Storage: EncointerScheduler CurrentPhase (r:1 w:0) - /// Proof: EncointerScheduler CurrentPhase (max_values: Some(1), max_size: Some(1), added: 496, mode: MaxEncodedLen) - /// Storage: EncointerScheduler CurrentCeremonyIndex (r:1 w:0) - /// Proof: EncointerScheduler CurrentCeremonyIndex (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: EncointerCeremonies MeetupCount (r:1 w:0) - /// Proof Skipped: EncointerCeremonies MeetupCount (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies AssignmentCounts (r:1 w:0) - /// Proof Skipped: EncointerCeremonies AssignmentCounts (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies Assignments (r:1 w:0) - /// Proof Skipped: EncointerCeremonies Assignments (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies BootstrapperIndex (r:1 w:0) - /// Proof Skipped: EncointerCeremonies BootstrapperIndex (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies ReputableIndex (r:1 w:0) - /// Proof Skipped: EncointerCeremonies ReputableIndex (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies IssuedRewards (r:1 w:1) - /// Proof Skipped: EncointerCeremonies IssuedRewards (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies ReputableRegistry (r:8 w:0) - /// Proof Skipped: EncointerCeremonies ReputableRegistry (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies NewbieRegistry (r:2 w:0) - /// Proof Skipped: EncointerCeremonies NewbieRegistry (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies AttestationIndex (r:10 w:0) - /// Proof Skipped: EncointerCeremonies AttestationIndex (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies AttestationRegistry (r:10 w:0) - /// Proof Skipped: EncointerCeremonies AttestationRegistry (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies MeetupParticipantCountVote (r:10 w:0) - /// Proof Skipped: EncointerCeremonies MeetupParticipantCountVote (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCommunities NominalIncome (r:1 w:0) - /// Proof: EncointerCommunities NominalIncome (max_values: None, max_size: Some(41), added: 2516, mode: MaxEncodedLen) - /// Storage: EncointerCeremonies CeremonyReward (r:1 w:0) - /// Proof Skipped: EncointerCeremonies CeremonyReward (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: EncointerBalances Balance (r:10 w:10) - /// Proof: EncointerBalances Balance (max_values: None, max_size: Some(93), added: 2568, mode: MaxEncodedLen) - /// Storage: EncointerBalances DemurragePerBlock (r:1 w:0) - /// Proof: EncointerBalances DemurragePerBlock (max_values: None, max_size: Some(41), added: 2516, mode: MaxEncodedLen) - /// Storage: EncointerBalances TotalIssuance (r:1 w:1) - /// Proof: EncointerBalances TotalIssuance (max_values: None, max_size: Some(45), added: 2520, mode: MaxEncodedLen) - /// Storage: EncointerCeremonies ParticipantReputation (r:0 w:10) - /// Proof Skipped: EncointerCeremonies ParticipantReputation (max_values: None, max_size: None, mode: Measured) - fn claim_rewards() -> Weight { - // Proof Size summary in bytes: - // Measured: `7649` - // Estimated: `33389` - // Minimum execution time: 441_163_000 picoseconds. - Weight::from_parts(455_147_000, 0) - .saturating_add(Weight::from_parts(0, 33389)) - .saturating_add(T::DbWeight::get().reads(62)) - .saturating_add(T::DbWeight::get().writes(22)) - } - /// Storage: EncointerCeremonies InactivityTimeout (r:0 w:1) - /// Proof Skipped: EncointerCeremonies InactivityTimeout (max_values: Some(1), max_size: None, mode: Measured) - fn set_inactivity_timeout() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 8_151_000 picoseconds. - Weight::from_parts(8_366_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: EncointerScheduler CurrentPhase (r:1 w:0) - /// Proof: EncointerScheduler CurrentPhase (max_values: Some(1), max_size: Some(1), added: 496, mode: MaxEncodedLen) - /// Storage: EncointerCeremonies MeetupTimeOffset (r:0 w:1) - /// Proof Skipped: EncointerCeremonies MeetupTimeOffset (max_values: Some(1), max_size: None, mode: Measured) - fn set_meetup_time_offset() -> Weight { - // Proof Size summary in bytes: - // Measured: `73` - // Estimated: `1486` - // Minimum execution time: 10_374_000 picoseconds. - Weight::from_parts(10_844_000, 0) - .saturating_add(Weight::from_parts(0, 1486)) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: EncointerCeremonies ReputationLifetime (r:0 w:1) - /// Proof Skipped: EncointerCeremonies ReputationLifetime (max_values: Some(1), max_size: None, mode: Measured) - fn set_reputation_lifetime() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 8_514_000 picoseconds. - Weight::from_parts(8_789_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: EncointerCeremonies EndorsementTicketsPerBootstrapper (r:0 w:1) - /// Proof Skipped: EncointerCeremonies EndorsementTicketsPerBootstrapper (max_values: Some(1), max_size: None, mode: Measured) - fn set_endorsement_tickets_per_bootstrapper() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 8_173_000 picoseconds. - Weight::from_parts(8_489_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: EncointerCeremonies EndorsementTicketsPerReputable (r:0 w:1) - /// Proof Skipped: EncointerCeremonies EndorsementTicketsPerReputable (max_values: Some(1), max_size: None, mode: Measured) - fn set_endorsement_tickets_per_reputable() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 8_431_000 picoseconds. - Weight::from_parts(8_612_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: EncointerCeremonies TimeTolerance (r:0 w:1) - /// Proof Skipped: EncointerCeremonies TimeTolerance (max_values: Some(1), max_size: None, mode: Measured) - fn set_time_tolerance() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 8_506_000 picoseconds. - Weight::from_parts(8_655_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: EncointerCeremonies LocationTolerance (r:0 w:1) - /// Proof Skipped: EncointerCeremonies LocationTolerance (max_values: Some(1), max_size: None, mode: Measured) - fn set_location_tolerance() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 8_300_000 picoseconds. - Weight::from_parts(8_793_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: EncointerCeremonies ReputableRegistry (r:1 w:1) - /// Proof Skipped: EncointerCeremonies ReputableRegistry (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies ReputableIndex (r:1 w:1) - /// Proof Skipped: EncointerCeremonies ReputableIndex (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies ParticipantReputation (r:1 w:1) - /// Proof Skipped: EncointerCeremonies ParticipantReputation (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies Assignments (r:0 w:1) - /// Proof Skipped: EncointerCeremonies Assignments (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies MeetupCount (r:0 w:1) - /// Proof Skipped: EncointerCeremonies MeetupCount (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies NewbieCount (r:0 w:1) - /// Proof Skipped: EncointerCeremonies NewbieCount (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies ReputableCount (r:0 w:1) - /// Proof Skipped: EncointerCeremonies ReputableCount (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies AssignmentCounts (r:0 w:1) - /// Proof Skipped: EncointerCeremonies AssignmentCounts (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies BootstrapperCount (r:0 w:1) - /// Proof Skipped: EncointerCeremonies BootstrapperCount (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies AttestationCount (r:0 w:1) - /// Proof Skipped: EncointerCeremonies AttestationCount (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies EndorseeCount (r:0 w:1) - /// Proof Skipped: EncointerCeremonies EndorseeCount (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerCeremonies EndorseesCount (r:0 w:1) - /// Proof Skipped: EncointerCeremonies EndorseesCount (max_values: None, max_size: None, mode: Measured) - fn purge_community_ceremony() -> Weight { - // Proof Size summary in bytes: - // Measured: `641` - // Estimated: `4106` - // Minimum execution time: 74_214_000 picoseconds. - Weight::from_parts(76_621_000, 0) - .saturating_add(Weight::from_parts(0, 4106)) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(12)) - } -} diff --git a/polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_communities.rs b/polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_communities.rs deleted file mode 100644 index da64e979..00000000 --- a/polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_communities.rs +++ /dev/null @@ -1,187 +0,0 @@ - -//! Autogenerated weights for `pallet_encointer_communities` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-07-31, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `caribe`, CPU: `12th Gen Intel(R) Core(TM) i7-1260P` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("encointer-rococo-local-dev"), DB CACHE: 1024 - -// Executed Command: -// target/release/encointer-collator -// benchmark -// pallet -// --chain=encointer-rococo-local-dev -// --steps=50 -// --repeat=20 -// --pallet=pallet_encointer_communities -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_communities.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_encointer_communities`. -pub struct WeightInfo(PhantomData); -impl pallet_encointer_communities::WeightInfo for WeightInfo { - /// Storage: EncointerCommunities CommunityIdentifiers (r:1 w:1) - /// Proof: EncointerCommunities CommunityIdentifiers (max_values: Some(1), max_size: Some(90002), added: 90497, mode: MaxEncodedLen) - /// Storage: EncointerCommunities MaxSpeedMps (r:1 w:0) - /// Proof: EncointerCommunities MaxSpeedMps (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: EncointerCommunities MinSolarTripTimeS (r:1 w:0) - /// Proof: EncointerCommunities MinSolarTripTimeS (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: EncointerCommunities CommunityIdentifiersByGeohash (r:1 w:1) - /// Proof: EncointerCommunities CommunityIdentifiersByGeohash (max_values: None, max_size: Some(90007), added: 92482, mode: MaxEncodedLen) - /// Storage: EncointerCommunities Locations (r:1 w:1) - /// Proof: EncointerCommunities Locations (max_values: None, max_size: Some(320032), added: 322507, mode: MaxEncodedLen) - /// Storage: EncointerCommunities NominalIncome (r:0 w:1) - /// Proof: EncointerCommunities NominalIncome (max_values: None, max_size: Some(41), added: 2516, mode: MaxEncodedLen) - /// Storage: EncointerCommunities CommunityMetadata (r:0 w:1) - /// Proof: EncointerCommunities CommunityMetadata (max_values: None, max_size: Some(1352), added: 3827, mode: MaxEncodedLen) - /// Storage: EncointerCommunities Bootstrappers (r:0 w:1) - /// Proof: EncointerCommunities Bootstrappers (max_values: None, max_size: Some(320027), added: 322502, mode: MaxEncodedLen) - /// Storage: EncointerBalances DemurragePerBlock (r:0 w:1) - /// Proof: EncointerBalances DemurragePerBlock (max_values: None, max_size: Some(41), added: 2516, mode: MaxEncodedLen) - fn new_community() -> Weight { - // Proof Size summary in bytes: - // Measured: `6448` - // Estimated: `323497` - // Minimum execution time: 5_643_876_000 picoseconds. - Weight::from_parts(5_676_264_000, 0) - .saturating_add(Weight::from_parts(0, 323497)) - .saturating_add(T::DbWeight::get().reads(5)) - .saturating_add(T::DbWeight::get().writes(7)) - } - /// Storage: EncointerScheduler CurrentPhase (r:1 w:0) - /// Proof: EncointerScheduler CurrentPhase (max_values: Some(1), max_size: Some(1), added: 496, mode: MaxEncodedLen) - /// Storage: EncointerCommunities CommunityIdentifiers (r:1 w:0) - /// Proof: EncointerCommunities CommunityIdentifiers (max_values: Some(1), max_size: Some(90002), added: 90497, mode: MaxEncodedLen) - /// Storage: EncointerCommunities MaxSpeedMps (r:1 w:0) - /// Proof: EncointerCommunities MaxSpeedMps (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: EncointerCommunities MinSolarTripTimeS (r:1 w:0) - /// Proof: EncointerCommunities MinSolarTripTimeS (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: EncointerCommunities CommunityIdentifiersByGeohash (r:1 w:0) - /// Proof: EncointerCommunities CommunityIdentifiersByGeohash (max_values: None, max_size: Some(90007), added: 92482, mode: MaxEncodedLen) - /// Storage: EncointerCommunities Locations (r:1 w:1) - /// Proof: EncointerCommunities Locations (max_values: None, max_size: Some(320032), added: 322507, mode: MaxEncodedLen) - fn add_location() -> Weight { - // Proof Size summary in bytes: - // Measured: `6521` - // Estimated: `323497` - // Minimum execution time: 5_627_080_000 picoseconds. - Weight::from_parts(5_682_831_000, 0) - .saturating_add(Weight::from_parts(0, 323497)) - .saturating_add(T::DbWeight::get().reads(6)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: EncointerScheduler CurrentPhase (r:1 w:0) - /// Proof: EncointerScheduler CurrentPhase (max_values: Some(1), max_size: Some(1), added: 496, mode: MaxEncodedLen) - /// Storage: EncointerCommunities CommunityIdentifiers (r:1 w:0) - /// Proof: EncointerCommunities CommunityIdentifiers (max_values: Some(1), max_size: Some(90002), added: 90497, mode: MaxEncodedLen) - /// Storage: EncointerCommunities Locations (r:1 w:1) - /// Proof: EncointerCommunities Locations (max_values: None, max_size: Some(320032), added: 322507, mode: MaxEncodedLen) - fn remove_location() -> Weight { - // Proof Size summary in bytes: - // Measured: `6500` - // Estimated: `323497` - // Minimum execution time: 37_629_000 picoseconds. - Weight::from_parts(39_837_000, 0) - .saturating_add(Weight::from_parts(0, 323497)) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: EncointerCommunities CommunityIdentifiers (r:1 w:0) - /// Proof: EncointerCommunities CommunityIdentifiers (max_values: Some(1), max_size: Some(90002), added: 90497, mode: MaxEncodedLen) - /// Storage: EncointerCommunities CommunityMetadata (r:0 w:1) - /// Proof: EncointerCommunities CommunityMetadata (max_values: None, max_size: Some(1352), added: 3827, mode: MaxEncodedLen) - fn update_community_metadata() -> Weight { - // Proof Size summary in bytes: - // Measured: `221` - // Estimated: `91487` - // Minimum execution time: 16_765_000 picoseconds. - Weight::from_parts(17_226_000, 0) - .saturating_add(Weight::from_parts(0, 91487)) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: EncointerCommunities CommunityIdentifiers (r:1 w:0) - /// Proof: EncointerCommunities CommunityIdentifiers (max_values: Some(1), max_size: Some(90002), added: 90497, mode: MaxEncodedLen) - /// Storage: EncointerBalances DemurragePerBlock (r:0 w:1) - /// Proof: EncointerBalances DemurragePerBlock (max_values: None, max_size: Some(41), added: 2516, mode: MaxEncodedLen) - fn update_demurrage() -> Weight { - // Proof Size summary in bytes: - // Measured: `221` - // Estimated: `91487` - // Minimum execution time: 14_259_000 picoseconds. - Weight::from_parts(14_985_000, 0) - .saturating_add(Weight::from_parts(0, 91487)) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: EncointerCommunities CommunityIdentifiers (r:1 w:0) - /// Proof: EncointerCommunities CommunityIdentifiers (max_values: Some(1), max_size: Some(90002), added: 90497, mode: MaxEncodedLen) - /// Storage: EncointerCommunities NominalIncome (r:0 w:1) - /// Proof: EncointerCommunities NominalIncome (max_values: None, max_size: Some(41), added: 2516, mode: MaxEncodedLen) - fn update_nominal_income() -> Weight { - // Proof Size summary in bytes: - // Measured: `221` - // Estimated: `91487` - // Minimum execution time: 14_959_000 picoseconds. - Weight::from_parts(15_675_000, 0) - .saturating_add(Weight::from_parts(0, 91487)) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: EncointerCommunities MinSolarTripTimeS (r:0 w:1) - /// Proof: EncointerCommunities MinSolarTripTimeS (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - fn set_min_solar_trip_time_s() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 8_071_000 picoseconds. - Weight::from_parts(8_746_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: EncointerCommunities MaxSpeedMps (r:0 w:1) - /// Proof: EncointerCommunities MaxSpeedMps (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - fn set_max_speed_mps() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 8_080_000 picoseconds. - Weight::from_parts(8_636_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: EncointerCommunities Locations (r:2 w:1) - /// Proof: EncointerCommunities Locations (max_values: None, max_size: Some(320032), added: 322507, mode: MaxEncodedLen) - /// Storage: EncointerCommunities CommunityIdentifiersByGeohash (r:1 w:1) - /// Proof: EncointerCommunities CommunityIdentifiersByGeohash (max_values: None, max_size: Some(90007), added: 92482, mode: MaxEncodedLen) - /// Storage: EncointerCommunities CommunityIdentifiers (r:1 w:1) - /// Proof: EncointerCommunities CommunityIdentifiers (max_values: Some(1), max_size: Some(90002), added: 90497, mode: MaxEncodedLen) - /// Storage: EncointerCommunities NominalIncome (r:0 w:1) - /// Proof: EncointerCommunities NominalIncome (max_values: None, max_size: Some(41), added: 2516, mode: MaxEncodedLen) - /// Storage: EncointerCommunities CommunityMetadata (r:0 w:1) - /// Proof: EncointerCommunities CommunityMetadata (max_values: None, max_size: Some(1352), added: 3827, mode: MaxEncodedLen) - /// Storage: EncointerCommunities Bootstrappers (r:0 w:1) - /// Proof: EncointerCommunities Bootstrappers (max_values: None, max_size: Some(320027), added: 322502, mode: MaxEncodedLen) - fn purge_community() -> Weight { - // Proof Size summary in bytes: - // Measured: `482` - // Estimated: `646004` - // Minimum execution time: 45_935_000 picoseconds. - Weight::from_parts(47_790_000, 0) - .saturating_add(Weight::from_parts(0, 646004)) - .saturating_add(T::DbWeight::get().reads(4)) - .saturating_add(T::DbWeight::get().writes(6)) - } -} diff --git a/polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_faucet.rs b/polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_faucet.rs deleted file mode 100644 index 1567e280..00000000 --- a/polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_faucet.rs +++ /dev/null @@ -1,122 +0,0 @@ - -//! Autogenerated weights for `pallet_encointer_faucet` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-07-31, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `caribe`, CPU: `12th Gen Intel(R) Core(TM) i7-1260P` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("encointer-rococo-local-dev"), DB CACHE: 1024 - -// Executed Command: -// target/release/encointer-collator -// benchmark -// pallet -// --chain=encointer-rococo-local-dev -// --steps=50 -// --repeat=20 -// --pallet=pallet_encointer_faucet -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_faucet.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_encointer_faucet`. -pub struct WeightInfo(PhantomData); -impl pallet_encointer_faucet::WeightInfo for WeightInfo { - /// Storage: EncointerCommunities CommunityIdentifiers (r:1 w:0) - /// Proof: EncointerCommunities CommunityIdentifiers (max_values: Some(1), max_size: Some(90002), added: 90497, mode: MaxEncodedLen) - /// Storage: EncointerFaucet Faucets (r:1 w:1) - /// Proof: EncointerFaucet Faucets (max_values: None, max_size: Some(9373), added: 11848, mode: MaxEncodedLen) - /// Storage: EncointerFaucet ReserveAmount (r:1 w:0) - /// Proof: EncointerFaucet ReserveAmount (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) - /// Storage: Balances Reserves (r:1 w:1) - /// Proof: Balances Reserves (max_values: None, max_size: Some(1249), added: 3724, mode: MaxEncodedLen) - /// Storage: System Account (r:2 w:2) - /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) - /// Storage: EncointerReputationCommitments CurrentPurposeId (r:1 w:1) - /// Proof: EncointerReputationCommitments CurrentPurposeId (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) - /// Storage: EncointerReputationCommitments Purposes (r:0 w:1) - /// Proof: EncointerReputationCommitments Purposes (max_values: None, max_size: Some(138), added: 2613, mode: MaxEncodedLen) - fn create_faucet() -> Weight { - // Proof Size summary in bytes: - // Measured: `371` - // Estimated: `91487` - // Minimum execution time: 94_701_000 picoseconds. - Weight::from_parts(97_700_000, 0) - .saturating_add(Weight::from_parts(0, 91487)) - .saturating_add(T::DbWeight::get().reads(7)) - .saturating_add(T::DbWeight::get().writes(6)) - } - /// Storage: EncointerFaucet Faucets (r:1 w:0) - /// Proof: EncointerFaucet Faucets (max_values: None, max_size: Some(9373), added: 11848, mode: MaxEncodedLen) - /// Storage: EncointerReputationCommitments Purposes (r:1 w:0) - /// Proof: EncointerReputationCommitments Purposes (max_values: None, max_size: Some(138), added: 2613, mode: MaxEncodedLen) - /// Storage: EncointerCeremonies ParticipantReputation (r:1 w:0) - /// Proof Skipped: EncointerCeremonies ParticipantReputation (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerReputationCommitments Commitments (r:1 w:1) - /// Proof: EncointerReputationCommitments Commitments (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) - /// Storage: System Account (r:2 w:2) - /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) - fn drip() -> Weight { - // Proof Size summary in bytes: - // Measured: `680` - // Estimated: `12838` - // Minimum execution time: 72_829_000 picoseconds. - Weight::from_parts(76_945_000, 0) - .saturating_add(Weight::from_parts(0, 12838)) - .saturating_add(T::DbWeight::get().reads(6)) - .saturating_add(T::DbWeight::get().writes(3)) - } - /// Storage: EncointerFaucet Faucets (r:1 w:1) - /// Proof: EncointerFaucet Faucets (max_values: None, max_size: Some(9373), added: 11848, mode: MaxEncodedLen) - /// Storage: Balances Reserves (r:1 w:1) - /// Proof: Balances Reserves (max_values: None, max_size: Some(1249), added: 3724, mode: MaxEncodedLen) - /// Storage: System Account (r:3 w:3) - /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) - fn dissolve_faucet() -> Weight { - // Proof Size summary in bytes: - // Measured: `507` - // Estimated: `12838` - // Minimum execution time: 78_329_000 picoseconds. - Weight::from_parts(80_171_000, 0) - .saturating_add(Weight::from_parts(0, 12838)) - .saturating_add(T::DbWeight::get().reads(5)) - .saturating_add(T::DbWeight::get().writes(5)) - } - /// Storage: EncointerFaucet Faucets (r:1 w:1) - /// Proof: EncointerFaucet Faucets (max_values: None, max_size: Some(9373), added: 11848, mode: MaxEncodedLen) - /// Storage: System Account (r:2 w:2) - /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) - /// Storage: Balances Reserves (r:1 w:1) - /// Proof: Balances Reserves (max_values: None, max_size: Some(1249), added: 3724, mode: MaxEncodedLen) - fn close_faucet() -> Weight { - // Proof Size summary in bytes: - // Measured: `507` - // Estimated: `12838` - // Minimum execution time: 72_776_000 picoseconds. - Weight::from_parts(74_301_000, 0) - .saturating_add(Weight::from_parts(0, 12838)) - .saturating_add(T::DbWeight::get().reads(4)) - .saturating_add(T::DbWeight::get().writes(4)) - } - /// Storage: EncointerFaucet ReserveAmount (r:0 w:1) - /// Proof: EncointerFaucet ReserveAmount (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) - fn set_reserve_amount() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 7_612_000 picoseconds. - Weight::from_parts(8_143_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - .saturating_add(T::DbWeight::get().writes(1)) - } -} diff --git a/polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_reputation_commitments.rs b/polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_reputation_commitments.rs deleted file mode 100644 index c85a0c53..00000000 --- a/polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_reputation_commitments.rs +++ /dev/null @@ -1,65 +0,0 @@ - -//! Autogenerated weights for `pallet_encointer_reputation_commitments` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-07-31, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `caribe`, CPU: `12th Gen Intel(R) Core(TM) i7-1260P` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("encointer-rococo-local-dev"), DB CACHE: 1024 - -// Executed Command: -// target/release/encointer-collator -// benchmark -// pallet -// --chain=encointer-rococo-local-dev -// --steps=50 -// --repeat=20 -// --pallet=pallet_encointer_reputation_commitments -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_reputation_commitments.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_encointer_reputation_commitments`. -pub struct WeightInfo(PhantomData); -impl pallet_encointer_reputation_commitments::WeightInfo for WeightInfo { - /// Storage: EncointerReputationCommitments CurrentPurposeId (r:1 w:1) - /// Proof: EncointerReputationCommitments CurrentPurposeId (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) - /// Storage: EncointerReputationCommitments Purposes (r:0 w:1) - /// Proof: EncointerReputationCommitments Purposes (max_values: None, max_size: Some(138), added: 2613, mode: MaxEncodedLen) - fn register_purpose() -> Weight { - // Proof Size summary in bytes: - // Measured: `4` - // Estimated: `1493` - // Minimum execution time: 21_094_000 picoseconds. - Weight::from_parts(22_125_000, 0) - .saturating_add(Weight::from_parts(0, 1493)) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(2)) - } - /// Storage: EncointerReputationCommitments Purposes (r:1 w:0) - /// Proof: EncointerReputationCommitments Purposes (max_values: None, max_size: Some(138), added: 2613, mode: MaxEncodedLen) - /// Storage: EncointerCeremonies ParticipantReputation (r:1 w:0) - /// Proof Skipped: EncointerCeremonies ParticipantReputation (max_values: None, max_size: None, mode: Measured) - /// Storage: EncointerReputationCommitments Commitments (r:1 w:1) - /// Proof: EncointerReputationCommitments Commitments (max_values: None, max_size: Some(102), added: 2577, mode: MaxEncodedLen) - fn commit_reputation() -> Weight { - // Proof Size summary in bytes: - // Measured: `329` - // Estimated: `3794` - // Minimum execution time: 36_854_000 picoseconds. - Weight::from_parts(39_205_000, 0) - .saturating_add(Weight::from_parts(0, 3794)) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(1)) - } -} diff --git a/polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_scheduler.rs b/polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_scheduler.rs deleted file mode 100644 index 8fc6dd74..00000000 --- a/polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_scheduler.rs +++ /dev/null @@ -1,91 +0,0 @@ - -//! Autogenerated weights for `pallet_encointer_scheduler` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-07-31, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `caribe`, CPU: `12th Gen Intel(R) Core(TM) i7-1260P` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("encointer-rococo-local-dev"), DB CACHE: 1024 - -// Executed Command: -// target/release/encointer-collator -// benchmark -// pallet -// --chain=encointer-rococo-local-dev -// --steps=50 -// --repeat=20 -// --pallet=pallet_encointer_scheduler -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=polkadot-parachains/encointer-runtime/src/weights/pallet_encointer_scheduler.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_encointer_scheduler`. -pub struct WeightInfo(PhantomData); -impl pallet_encointer_scheduler::WeightInfo for WeightInfo { - /// Storage: EncointerScheduler CurrentPhase (r:1 w:1) - /// Proof: EncointerScheduler CurrentPhase (max_values: Some(1), max_size: Some(1), added: 496, mode: MaxEncodedLen) - /// Storage: EncointerScheduler CurrentCeremonyIndex (r:1 w:1) - /// Proof: EncointerScheduler CurrentCeremonyIndex (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: EncointerScheduler NextPhaseTimestamp (r:1 w:1) - /// Proof: EncointerScheduler NextPhaseTimestamp (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) - /// Storage: EncointerScheduler PhaseDurations (r:3 w:0) - /// Proof: EncointerScheduler PhaseDurations (max_values: None, max_size: Some(25), added: 2500, mode: MaxEncodedLen) - /// Storage: Timestamp Now (r:1 w:0) - /// Proof: Timestamp Now (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) - /// Storage: EncointerCeremonies ReputationLifetime (r:1 w:0) - /// Proof Skipped: EncointerCeremonies ReputationLifetime (max_values: Some(1), max_size: None, mode: Measured) - fn next_phase() -> Weight { - // Proof Size summary in bytes: - // Measured: `409` - // Estimated: `8490` - // Minimum execution time: 61_397_000 picoseconds. - Weight::from_parts(63_823_000, 0) - .saturating_add(Weight::from_parts(0, 8490)) - .saturating_add(T::DbWeight::get().reads(8)) - .saturating_add(T::DbWeight::get().writes(3)) - } - /// Storage: EncointerScheduler NextPhaseTimestamp (r:1 w:1) - /// Proof: EncointerScheduler NextPhaseTimestamp (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) - fn push_by_one_day() -> Weight { - // Proof Size summary in bytes: - // Measured: `73` - // Estimated: `1493` - // Minimum execution time: 14_946_000 picoseconds. - Weight::from_parts(15_438_000, 0) - .saturating_add(Weight::from_parts(0, 1493)) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: EncointerScheduler PhaseDurations (r:0 w:1) - /// Proof: EncointerScheduler PhaseDurations (max_values: None, max_size: Some(25), added: 2500, mode: MaxEncodedLen) - fn set_phase_duration() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 5_814_000 picoseconds. - Weight::from_parts(6_076_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: EncointerScheduler NextPhaseTimestamp (r:0 w:1) - /// Proof: EncointerScheduler NextPhaseTimestamp (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) - fn set_next_phase_timestamp() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 4_283_000 picoseconds. - Weight::from_parts(4_476_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - .saturating_add(T::DbWeight::get().writes(1)) - } -} diff --git a/polkadot-parachains/encointer-runtime/src/weights/pallet_membership.rs b/polkadot-parachains/encointer-runtime/src/weights/pallet_membership.rs deleted file mode 100644 index 844851fd..00000000 --- a/polkadot-parachains/encointer-runtime/src/weights/pallet_membership.rs +++ /dev/null @@ -1,185 +0,0 @@ - -//! Autogenerated weights for `pallet_membership` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-07-31, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `caribe`, CPU: `12th Gen Intel(R) Core(TM) i7-1260P` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("encointer-rococo-local-dev"), DB CACHE: 1024 - -// Executed Command: -// target/release/encointer-collator -// benchmark -// pallet -// --chain=encointer-rococo-local-dev -// --steps=50 -// --repeat=20 -// --pallet=pallet_membership -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=polkadot-parachains/encointer-runtime/src/weights/pallet_membership.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_membership`. -pub struct WeightInfo(PhantomData); -impl pallet_membership::WeightInfo for WeightInfo { - /// Storage: Membership Members (r:1 w:1) - /// Proof: Membership Members (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) - /// Storage: Collective Proposals (r:1 w:0) - /// Proof Skipped: Collective Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Collective Members (r:0 w:1) - /// Proof Skipped: Collective Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Collective Prime (r:0 w:1) - /// Proof Skipped: Collective 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: `102 + m * (64 ±0)` - // Estimated: `4687 + m * (64 ±0)` - // Minimum execution time: 16_503_000 picoseconds. - Weight::from_parts(22_233_968, 0) - .saturating_add(Weight::from_parts(0, 4687)) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(3)) - .saturating_add(Weight::from_parts(0, 64).saturating_mul(m.into())) - } - /// Storage: Membership Members (r:1 w:1) - /// Proof: Membership Members (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) - /// Storage: Collective Proposals (r:1 w:0) - /// Proof Skipped: Collective Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Membership Prime (r:1 w:0) - /// Proof: Membership Prime (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) - /// Storage: Collective Members (r:0 w:1) - /// Proof Skipped: Collective Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Collective Prime (r:0 w:1) - /// Proof Skipped: Collective 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: `206 + m * (64 ±0)` - // Estimated: `4687 + m * (64 ±0)` - // Minimum execution time: 16_035_000 picoseconds. - Weight::from_parts(16_899_394, 0) - .saturating_add(Weight::from_parts(0, 4687)) - // Standard Error: 569 - .saturating_add(Weight::from_parts(26_212, 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, 64).saturating_mul(m.into())) - } - /// Storage: Membership Members (r:1 w:1) - /// Proof: Membership Members (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) - /// Storage: Collective Proposals (r:1 w:0) - /// Proof Skipped: Collective Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Membership Prime (r:1 w:0) - /// Proof: Membership Prime (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) - /// Storage: Collective Members (r:0 w:1) - /// Proof Skipped: Collective Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Collective Prime (r:0 w:1) - /// Proof Skipped: Collective 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: `206 + m * (64 ±0)` - // Estimated: `4687 + m * (64 ±0)` - // Minimum execution time: 15_874_000 picoseconds. - Weight::from_parts(16_897_269, 0) - .saturating_add(Weight::from_parts(0, 4687)) - // Standard Error: 463 - .saturating_add(Weight::from_parts(37_531, 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, 64).saturating_mul(m.into())) - } - /// Storage: Membership Members (r:1 w:1) - /// Proof: Membership Members (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) - /// Storage: Collective Proposals (r:1 w:0) - /// Proof Skipped: Collective Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Membership Prime (r:1 w:0) - /// Proof: Membership Prime (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) - /// Storage: Collective Members (r:0 w:1) - /// Proof Skipped: Collective Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Collective Prime (r:0 w:1) - /// Proof Skipped: Collective 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: `206 + m * (64 ±0)` - // Estimated: `4687 + m * (64 ±0)` - // Minimum execution time: 15_407_000 picoseconds. - Weight::from_parts(17_311_131, 0) - .saturating_add(Weight::from_parts(0, 4687)) - // Standard Error: 892 - .saturating_add(Weight::from_parts(118_312, 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, 64).saturating_mul(m.into())) - } - /// Storage: Membership Members (r:1 w:1) - /// Proof: Membership Members (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) - /// Storage: Collective Proposals (r:1 w:0) - /// Proof Skipped: Collective Proposals (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Membership Prime (r:1 w:1) - /// Proof: Membership Prime (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) - /// Storage: Collective Members (r:0 w:1) - /// Proof Skipped: Collective Members (max_values: Some(1), max_size: None, mode: Measured) - /// Storage: Collective Prime (r:0 w:1) - /// Proof Skipped: Collective 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: `206 + m * (64 ±0)` - // Estimated: `4687 + m * (64 ±0)` - // Minimum execution time: 16_110_000 picoseconds. - Weight::from_parts(17_298_112, 0) - .saturating_add(Weight::from_parts(0, 4687)) - // Standard Error: 705 - .saturating_add(Weight::from_parts(37_102, 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, 64).saturating_mul(m.into())) - } - /// Storage: Membership Members (r:1 w:0) - /// Proof: Membership Members (max_values: Some(1), max_size: Some(3202), added: 3697, mode: MaxEncodedLen) - /// Storage: Membership Prime (r:0 w:1) - /// Proof: Membership Prime (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) - /// Storage: Collective Prime (r:0 w:1) - /// Proof Skipped: Collective 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: `4687 + m * (32 ±0)` - // Minimum execution time: 5_906_000 picoseconds. - Weight::from_parts(6_230_458, 0) - .saturating_add(Weight::from_parts(0, 4687)) - // Standard Error: 230 - .saturating_add(Weight::from_parts(7_792, 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: Membership Prime (r:0 w:1) - /// Proof: Membership Prime (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen) - /// Storage: Collective Prime (r:0 w:1) - /// Proof Skipped: Collective 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: 2_695_000 picoseconds. - Weight::from_parts(2_946_268, 0) - .saturating_add(Weight::from_parts(0, 0)) - .saturating_add(T::DbWeight::get().writes(2)) - } -} diff --git a/polkadot-parachains/encointer-runtime/src/weights/pallet_proxy.rs b/polkadot-parachains/encointer-runtime/src/weights/pallet_proxy.rs deleted file mode 100644 index c28ce0c2..00000000 --- a/polkadot-parachains/encointer-runtime/src/weights/pallet_proxy.rs +++ /dev/null @@ -1,208 +0,0 @@ - -//! Autogenerated weights for `pallet_proxy` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-07-31, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `caribe`, CPU: `12th Gen Intel(R) Core(TM) i7-1260P` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("encointer-rococo-local-dev"), DB CACHE: 1024 - -// Executed Command: -// target/release/encointer-collator -// benchmark -// pallet -// --chain=encointer-rococo-local-dev -// --steps=50 -// --repeat=20 -// --pallet=pallet_proxy -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=polkadot-parachains/encointer-runtime/src/weights/pallet_proxy.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_proxy`. -pub struct WeightInfo(PhantomData); -impl pallet_proxy::WeightInfo for WeightInfo { - /// Storage: Proxy Proxies (r:1 w:0) - /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) - /// The range of component `p` is `[1, 31]`. - fn proxy(p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `127 + p * (37 ±0)` - // Estimated: `4706` - // Minimum execution time: 12_149_000 picoseconds. - Weight::from_parts(12_734_566, 0) - .saturating_add(Weight::from_parts(0, 4706)) - // Standard Error: 1_902 - .saturating_add(Weight::from_parts(28_028, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(1)) - } - /// Storage: Proxy Proxies (r:1 w:0) - /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) - /// Storage: Proxy Announcements (r:1 w:1) - /// Proof: Proxy Announcements (max_values: None, max_size: Some(2233), added: 4708, 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 `a` is `[0, 31]`. - /// The range of component `p` is `[1, 31]`. - fn proxy_announced(a: u32, p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `417 + a * (68 ±0) + p * (37 ±0)` - // Estimated: `5698` - // Minimum execution time: 31_507_000 picoseconds. - Weight::from_parts(31_594_293, 0) - .saturating_add(Weight::from_parts(0, 5698)) - // Standard Error: 4_810 - .saturating_add(Weight::from_parts(180_418, 0).saturating_mul(a.into())) - // Standard Error: 4_969 - .saturating_add(Weight::from_parts(39_603, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(2)) - } - /// Storage: Proxy Announcements (r:1 w:1) - /// Proof: Proxy Announcements (max_values: None, max_size: Some(2233), added: 4708, 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 `a` is `[0, 31]`. - /// The range of component `p` is `[1, 31]`. - fn remove_announcement(a: u32, p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `332 + a * (68 ±0)` - // Estimated: `5698` - // Minimum execution time: 20_284_000 picoseconds. - Weight::from_parts(20_722_105, 0) - .saturating_add(Weight::from_parts(0, 5698)) - // Standard Error: 2_298 - .saturating_add(Weight::from_parts(169_410, 0).saturating_mul(a.into())) - // Standard Error: 2_374 - .saturating_add(Weight::from_parts(10_908, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(2)) - } - /// Storage: Proxy Announcements (r:1 w:1) - /// Proof: Proxy Announcements (max_values: None, max_size: Some(2233), added: 4708, 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 `a` is `[0, 31]`. - /// The range of component `p` is `[1, 31]`. - fn reject_announcement(a: u32, p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `332 + a * (68 ±0)` - // Estimated: `5698` - // Minimum execution time: 20_140_000 picoseconds. - Weight::from_parts(20_848_925, 0) - .saturating_add(Weight::from_parts(0, 5698)) - // Standard Error: 1_778 - .saturating_add(Weight::from_parts(165_375, 0).saturating_mul(a.into())) - // Standard Error: 1_838 - .saturating_add(Weight::from_parts(5_838, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(2)) - } - /// Storage: Proxy Proxies (r:1 w:0) - /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) - /// Storage: Proxy Announcements (r:1 w:1) - /// Proof: Proxy Announcements (max_values: None, max_size: Some(2233), added: 4708, 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 `a` is `[0, 31]`. - /// The range of component `p` is `[1, 31]`. - fn announce(a: u32, p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `349 + a * (68 ±0) + p * (37 ±0)` - // Estimated: `5698` - // Minimum execution time: 28_744_000 picoseconds. - Weight::from_parts(29_073_555, 0) - .saturating_add(Weight::from_parts(0, 5698)) - // Standard Error: 3_689 - .saturating_add(Weight::from_parts(157_914, 0).saturating_mul(a.into())) - // Standard Error: 3_812 - .saturating_add(Weight::from_parts(17_443, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(2)) - } - /// Storage: Proxy Proxies (r:1 w:1) - /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) - /// The range of component `p` is `[1, 31]`. - fn add_proxy(p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `127 + p * (37 ±0)` - // Estimated: `4706` - // Minimum execution time: 21_558_000 picoseconds. - Weight::from_parts(22_491_797, 0) - .saturating_add(Weight::from_parts(0, 4706)) - // Standard Error: 4_992 - .saturating_add(Weight::from_parts(46_402, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: Proxy Proxies (r:1 w:1) - /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) - /// The range of component `p` is `[1, 31]`. - fn remove_proxy(p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `127 + p * (37 ±0)` - // Estimated: `4706` - // Minimum execution time: 21_541_000 picoseconds. - Weight::from_parts(22_387_406, 0) - .saturating_add(Weight::from_parts(0, 4706)) - // Standard Error: 4_158 - .saturating_add(Weight::from_parts(53_564, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: Proxy Proxies (r:1 w:1) - /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) - /// The range of component `p` is `[1, 31]`. - fn remove_proxies(p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `127 + p * (37 ±0)` - // Estimated: `4706` - // Minimum execution time: 18_742_000 picoseconds. - Weight::from_parts(19_693_746, 0) - .saturating_add(Weight::from_parts(0, 4706)) - // Standard Error: 2_662 - .saturating_add(Weight::from_parts(21_173, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: Proxy Proxies (r:1 w:1) - /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) - /// The range of component `p` is `[1, 31]`. - fn create_pure(p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `139` - // Estimated: `4706` - // Minimum execution time: 23_280_000 picoseconds. - Weight::from_parts(23_905_541, 0) - .saturating_add(Weight::from_parts(0, 4706)) - // Standard Error: 1_045 - .saturating_add(Weight::from_parts(16_212, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: Proxy Proxies (r:1 w:1) - /// Proof: Proxy Proxies (max_values: None, max_size: Some(1241), added: 3716, mode: MaxEncodedLen) - /// The range of component `p` is `[0, 30]`. - fn kill_pure(p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `164 + p * (37 ±0)` - // Estimated: `4706` - // Minimum execution time: 19_541_000 picoseconds. - Weight::from_parts(20_085_014, 0) - .saturating_add(Weight::from_parts(0, 4706)) - // Standard Error: 3_921 - .saturating_add(Weight::from_parts(58_923, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } -} diff --git a/polkadot-parachains/encointer-runtime/src/weights/pallet_timestamp.rs b/polkadot-parachains/encointer-runtime/src/weights/pallet_timestamp.rs deleted file mode 100644 index 81a55117..00000000 --- a/polkadot-parachains/encointer-runtime/src/weights/pallet_timestamp.rs +++ /dev/null @@ -1,61 +0,0 @@ - -//! Autogenerated weights for `pallet_timestamp` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-07-31, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `caribe`, CPU: `12th Gen Intel(R) Core(TM) i7-1260P` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("encointer-rococo-local-dev"), DB CACHE: 1024 - -// Executed Command: -// target/release/encointer-collator -// benchmark -// pallet -// --chain=encointer-rococo-local-dev -// --steps=50 -// --repeat=20 -// --pallet=pallet_timestamp -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=polkadot-parachains/encointer-runtime/src/weights/pallet_timestamp.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_timestamp`. -pub struct WeightInfo(PhantomData); -impl pallet_timestamp::WeightInfo for WeightInfo { - /// Storage: Timestamp Now (r:1 w:1) - /// Proof: Timestamp Now (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) - /// Storage: EncointerScheduler NextPhaseTimestamp (r:1 w:1) - /// Proof: EncointerScheduler NextPhaseTimestamp (max_values: Some(1), max_size: Some(8), added: 503, mode: MaxEncodedLen) - /// Storage: EncointerScheduler CurrentCeremonyIndex (r:1 w:0) - /// Proof: EncointerScheduler CurrentCeremonyIndex (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen) - /// Storage: EncointerScheduler PhaseDurations (r:3 w:0) - /// Proof: EncointerScheduler PhaseDurations (max_values: None, max_size: Some(25), added: 2500, mode: MaxEncodedLen) - fn set() -> Weight { - // Proof Size summary in bytes: - // Measured: `201` - // Estimated: `8490` - // Minimum execution time: 37_112_000 picoseconds. - Weight::from_parts(38_652_000, 0) - .saturating_add(Weight::from_parts(0, 8490)) - .saturating_add(T::DbWeight::get().reads(6)) - .saturating_add(T::DbWeight::get().writes(2)) - } - fn on_finalize() -> Weight { - // Proof Size summary in bytes: - // Measured: `94` - // Estimated: `0` - // Minimum execution time: 5_720_000 picoseconds. - Weight::from_parts(6_127_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } -} diff --git a/polkadot-parachains/encointer-runtime/src/weights/pallet_treasury.rs b/polkadot-parachains/encointer-runtime/src/weights/pallet_treasury.rs deleted file mode 100644 index 3e1d6240..00000000 --- a/polkadot-parachains/encointer-runtime/src/weights/pallet_treasury.rs +++ /dev/null @@ -1,124 +0,0 @@ - -//! Autogenerated weights for `pallet_treasury` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-07-31, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `caribe`, CPU: `12th Gen Intel(R) Core(TM) i7-1260P` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("encointer-rococo-local-dev"), DB CACHE: 1024 - -// Executed Command: -// target/release/encointer-collator -// benchmark -// pallet -// --chain=encointer-rococo-local-dev -// --steps=50 -// --repeat=20 -// --pallet=pallet_treasury -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=polkadot-parachains/encointer-runtime/src/weights/pallet_treasury.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_treasury`. -pub struct WeightInfo(PhantomData); -impl pallet_treasury::WeightInfo for WeightInfo { - fn spend() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 366_000 picoseconds. - Weight::from_parts(420_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - /// 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) - /// Proof: Treasury Proposals (max_values: None, max_size: Some(108), added: 2583, mode: MaxEncodedLen) - fn propose_spend() -> Weight { - // Proof Size summary in bytes: - // Measured: `107` - // Estimated: `1489` - // Minimum execution time: 44_556_000 picoseconds. - Weight::from_parts(45_578_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 Proposals (r:1 w:1) - /// Proof: Treasury Proposals (max_values: None, max_size: Some(108), added: 2583, mode: MaxEncodedLen) - /// Storage: System Account (r:1 w:1) - /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) - fn reject_proposal() -> Weight { - // Proof Size summary in bytes: - // Measured: `265` - // Estimated: `3593` - // Minimum execution time: 45_779_000 picoseconds. - Weight::from_parts(47_134_000, 0) - .saturating_add(Weight::from_parts(0, 3593)) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(2)) - } - /// Storage: Treasury Proposals (r:1 w:0) - /// Proof: Treasury Proposals (max_values: None, max_size: Some(108), added: 2583, mode: MaxEncodedLen) - /// Storage: Treasury Approvals (r:1 w:1) - /// Proof: Treasury Approvals (max_values: Some(1), max_size: Some(41), added: 536, mode: MaxEncodedLen) - /// The range of component `p` is `[0, 9]`. - fn approve_proposal(_p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `118 + p * (31 ±0)` - // Estimated: `3573` - // Minimum execution time: 9_093_000 picoseconds. - Weight::from_parts(11_820_833, 0) - .saturating_add(Weight::from_parts(0, 3573)) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: Treasury Approvals (r:1 w:1) - /// Proof: Treasury Approvals (max_values: Some(1), max_size: Some(41), added: 536, mode: MaxEncodedLen) - fn remove_approval() -> Weight { - // Proof Size summary in bytes: - // Measured: `90` - // Estimated: `1526` - // Minimum execution time: 5_560_000 picoseconds. - Weight::from_parts(5_797_000, 0) - .saturating_add(Weight::from_parts(0, 1526)) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - /// Storage: Treasury Deactivated (r:1 w:1) - /// Proof: Treasury Deactivated (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen) - /// Storage: Balances InactiveIssuance (r:1 w:1) - /// Proof: Balances InactiveIssuance (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(41), added: 536, mode: MaxEncodedLen) - /// Storage: Treasury Proposals (r:10 w:10) - /// Proof: Treasury Proposals (max_values: None, max_size: Some(108), added: 2583, mode: MaxEncodedLen) - /// Storage: System Account (r:20 w:20) - /// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen) - /// The range of component `p` is `[0, 10]`. - fn on_initialize_proposals(p: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `39 + p * (232 ±0)` - // Estimated: `1526 + p * (5206 ±0)` - // Minimum execution time: 26_465_000 picoseconds. - Weight::from_parts(34_535_717, 0) - .saturating_add(Weight::from_parts(0, 1526)) - // Standard Error: 69_073 - .saturating_add(Weight::from_parts(43_631_242, 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())) - } -} diff --git a/polkadot-parachains/encointer-runtime/src/weights/pallet_utility.rs b/polkadot-parachains/encointer-runtime/src/weights/pallet_utility.rs deleted file mode 100644 index 879b30c8..00000000 --- a/polkadot-parachains/encointer-runtime/src/weights/pallet_utility.rs +++ /dev/null @@ -1,84 +0,0 @@ - -//! Autogenerated weights for `pallet_utility` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2023-07-31, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! WORST CASE MAP SIZE: `1000000` -//! HOSTNAME: `caribe`, CPU: `12th Gen Intel(R) Core(TM) i7-1260P` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("encointer-rococo-local-dev"), DB CACHE: 1024 - -// Executed Command: -// target/release/encointer-collator -// benchmark -// pallet -// --chain=encointer-rococo-local-dev -// --steps=50 -// --repeat=20 -// --pallet=pallet_utility -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=polkadot-parachains/encointer-runtime/src/weights/pallet_utility.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_utility`. -pub struct WeightInfo(PhantomData); -impl pallet_utility::WeightInfo for WeightInfo { - /// The range of component `c` is `[0, 1000]`. - fn batch(c: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 10_709_000 picoseconds. - Weight::from_parts(94_666_060, 0) - .saturating_add(Weight::from_parts(0, 0)) - // Standard Error: 7_075 - .saturating_add(Weight::from_parts(4_763_921, 0).saturating_mul(c.into())) - } - fn as_derivative() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 4_625_000 picoseconds. - Weight::from_parts(4_855_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - /// The range of component `c` is `[0, 1000]`. - fn batch_all(c: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 6_014_000 picoseconds. - Weight::from_parts(10_865_846, 0) - .saturating_add(Weight::from_parts(0, 0)) - // Standard Error: 4_092 - .saturating_add(Weight::from_parts(5_138_384, 0).saturating_mul(c.into())) - } - fn dispatch_as() -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 8_101_000 picoseconds. - Weight::from_parts(8_401_000, 0) - .saturating_add(Weight::from_parts(0, 0)) - } - /// The range of component `c` is `[0, 1000]`. - fn force_batch(c: u32, ) -> Weight { - // Proof Size summary in bytes: - // Measured: `0` - // Estimated: `0` - // Minimum execution time: 5_996_000 picoseconds. - Weight::from_parts(4_430_678, 0) - .saturating_add(Weight::from_parts(0, 0)) - // Standard Error: 2_835 - .saturating_add(Weight::from_parts(4_874_052, 0).saturating_mul(c.into())) - } -} diff --git a/polkadot-parachains/encointer-runtime/src/weights/paritydb_weights.rs b/polkadot-parachains/encointer-runtime/src/weights/paritydb_weights.rs deleted file mode 100644 index 25679703..00000000 --- a/polkadot-parachains/encointer-runtime/src/weights/paritydb_weights.rs +++ /dev/null @@ -1,63 +0,0 @@ -// This file is part of Substrate. - -// Copyright (C) Parity Technologies (UK) Ltd. -// SPDX-License-Identifier: Apache-2.0 - -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -pub mod constants { - use frame_support::{ - parameter_types, - weights::{constants, RuntimeDbWeight}, - }; - - parameter_types! { - /// `ParityDB` can be enabled with a feature flag, but is still experimental. These weights - /// are available for brave runtime engineers who may want to try this out as default. - pub const ParityDbWeight: RuntimeDbWeight = RuntimeDbWeight { - read: 8_000 * constants::WEIGHT_REF_TIME_PER_NANOS, - write: 50_000 * constants::WEIGHT_REF_TIME_PER_NANOS, - }; - } - - #[cfg(test)] - mod test_db_weights { - use super::constants::ParityDbWeight as W; - use frame_support::weights::constants; - - /// Checks that all weights exist and have sane values. - // NOTE: If this test fails but you are sure that the generated values are fine, - // you can delete it. - #[test] - fn sane() { - // At least 1 µs. - assert!( - W::get().reads(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS, - "Read weight should be at least 1 µs." - ); - assert!( - W::get().writes(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS, - "Write weight should be at least 1 µs." - ); - // At most 1 ms. - assert!( - W::get().reads(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS, - "Read weight should be at most 1 ms." - ); - assert!( - W::get().writes(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS, - "Write weight should be at most 1 ms." - ); - } - } -} diff --git a/polkadot-parachains/encointer-runtime/src/weights/rocksdb_weights.rs b/polkadot-parachains/encointer-runtime/src/weights/rocksdb_weights.rs deleted file mode 100644 index 3dd817aa..00000000 --- a/polkadot-parachains/encointer-runtime/src/weights/rocksdb_weights.rs +++ /dev/null @@ -1,63 +0,0 @@ -// This file is part of Substrate. - -// Copyright (C) Parity Technologies (UK) Ltd. -// SPDX-License-Identifier: Apache-2.0 - -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -pub mod constants { - use frame_support::{ - parameter_types, - weights::{constants, RuntimeDbWeight}, - }; - - parameter_types! { - /// By default, Substrate uses `RocksDB`, so this will be the weight used throughout - /// the runtime. - pub const RocksDbWeight: RuntimeDbWeight = RuntimeDbWeight { - read: 25_000 * constants::WEIGHT_REF_TIME_PER_NANOS, - write: 100_000 * constants::WEIGHT_REF_TIME_PER_NANOS, - }; - } - - #[cfg(test)] - mod test_db_weights { - use super::constants::RocksDbWeight as W; - use frame_support::weights::constants; - - /// Checks that all weights exist and have sane values. - // NOTE: If this test fails but you are sure that the generated values are fine, - // you can delete it. - #[test] - fn sane() { - // At least 1 µs. - assert!( - W::get().reads(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS, - "Read weight should be at least 1 µs." - ); - assert!( - W::get().writes(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS, - "Write weight should be at least 1 µs." - ); - // At most 1 ms. - assert!( - W::get().reads(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS, - "Read weight should be at most 1 ms." - ); - assert!( - W::get().writes(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS, - "Write weight should be at most 1 ms." - ); - } - } -} diff --git a/polkadot-parachains/encointer-runtime/src/xcm_config.rs b/polkadot-parachains/encointer-runtime/src/xcm_config.rs deleted file mode 100644 index 723ca28a..00000000 --- a/polkadot-parachains/encointer-runtime/src/xcm_config.rs +++ /dev/null @@ -1,229 +0,0 @@ -// Copyright (C) 2022 Parity Technologies (UK) Ltd. -// SPDX-License-Identifier: Apache-2.0 - -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -//! XcmConfig for our launch-runtime. -//! -//! Almost identical to cumulus/parachains/runtimes/statemine - -use super::{ - AccountId, Balances, FeesToTreasury, ParachainInfo, ParachainSystem, PolkadotXcm, Runtime, - RuntimeCall, RuntimeEvent, RuntimeOrigin, WeightToFee, XcmpQueue, -}; -use frame_support::{ - match_types, parameter_types, - traits::{Everything, Nothing}, - weights::Weight, -}; -use frame_system::EnsureRoot; -use pallet_xcm::XcmPassthrough; -use polkadot_parachain_primitives::primitives::Sibling; -use sp_core::ConstU32; -use xcm::latest::prelude::*; -use xcm_builder::{ - AccountId32Aliases, AllowKnownQueryResponses, AllowSubscriptionsFrom, - AllowTopLevelPaidExecutionFrom, AllowUnpaidExecutionFrom, CurrencyAdapter, - DenyReserveTransferToRelayChain, DenyThenTry, EnsureXcmOrigin, FixedWeightBounds, IsConcrete, - NativeAsset, ParentAsSuperuser, ParentIsPreset, RelayChainAsNative, SiblingParachainAsNative, - SiblingParachainConvertsVia, SignedAccountId32AsNative, SignedToAccountId32, - SovereignSignedViaLocation, TakeWeightCredit, UsingComponents, -}; -use xcm_executor::XcmExecutor; - -parameter_types! { - pub const KsmLocation: MultiLocation = MultiLocation::parent(); - pub const RelayNetwork: NetworkId = NetworkId::Kusama; - pub RelayChainOrigin: RuntimeOrigin = cumulus_pallet_xcm::Origin::Relay.into(); - pub Ancestry: MultiLocation = Parachain(ParachainInfo::parachain_id().into()).into(); - pub CheckingAccount: AccountId = PolkadotXcm::check_account(); - pub UniversalLocation: InteriorMultiLocation = - X2(GlobalConsensus(RelayNetwork::get()), Parachain(ParachainInfo::parachain_id().into())); -} - -/// Type for specifying how a `MultiLocation` can be converted into an `AccountId`. This is used -/// when determining ownership of accounts for asset transacting and when attempting to use XCM -/// `Transact` in order to determine the dispatch Origin. -pub type LocationToAccountId = ( - // The parent (Relay-chain) origin converts to the parent `AccountId`. - ParentIsPreset, - // Sibling parachain origins convert to AccountId via the `ParaId::into`. - SiblingParachainConvertsVia, - // Straight up local `AccountId32` origins just alias directly to `AccountId`. - AccountId32Aliases, -); - -/// Means for transacting the native currency on this chain. -pub type CurrencyTransactor = CurrencyAdapter< - // Use this currency: - Balances, - // Use this currency when it is a fungible asset matching the given location or name: - IsConcrete, - // Convert an XCM MultiLocation into a local account id: - LocationToAccountId, - // Our chain's account ID type (we can't get away without mentioning it explicitly): - AccountId, - // We don't track any teleports of `Balances`. - (), ->; - -/// This is the type we use to convert an (incoming) XCM origin into a local `Origin` instance, -/// ready for dispatching a transaction with Xcm's `Transact`. There is an `OriginKind` which can -/// biases the kind of local `Origin` it will become. -pub type XcmOriginToTransactDispatchOrigin = ( - // Sovereign account converter; this attempts to derive an `AccountId` from the origin location - // using `LocationToAccountId` and then turn that into the usual `Signed` origin. Useful for - // foreign chains who want to have a local sovereign account on this chain which they control. - SovereignSignedViaLocation, - // Native converter for Relay-chain (Parent) location; will convert to a `Relay` origin when - // recognised. - RelayChainAsNative, - // Native converter for sibling Parachains; will convert to a `SiblingPara` origin when - // recognised. - SiblingParachainAsNative, - // Superuser converter for the Relay-chain (Parent) location. This will allow it to issue a - // transaction from the Root origin. - ParentAsSuperuser, - // Native signed account converter; this just converts an `AccountId32` origin into a normal - // `RuntimeOrigin::Signed` origin of the same 32-byte value. - SignedAccountId32AsNative, - // Xcm origins can be represented natively under the Xcm pallet's Xcm origin. - XcmPassthrough, -); - -parameter_types! { - // One XCM operation is 1_000_000_000 weight - almost certainly a conservative estimate. - pub UnitWeightCost: Weight = Weight::from_parts(1_000_000_000, 0); - pub const MaxInstructions: u32 = 100; -} - -match_types! { - pub type ParentOrParentsExecutivePlurality: impl Contains = { - MultiLocation { parents: 1, interior: Here } | - MultiLocation { parents: 1, interior: X1(Plurality { id: BodyId::Executive, .. }) } - }; - pub type ParentOrSiblings: impl Contains = { - MultiLocation { parents: 1, interior: Here } | - MultiLocation { parents: 1, interior: X1(_) } - }; -} - -pub type Barrier = DenyThenTry< - DenyReserveTransferToRelayChain, - ( - TakeWeightCredit, - AllowTopLevelPaidExecutionFrom, - // Parent and its exec plurality get free execution - AllowUnpaidExecutionFrom, - // Expected responses are OK. - AllowKnownQueryResponses, - // Subscriptions for version tracking are OK. - AllowSubscriptionsFrom, - ), ->; -pub struct SafeCallFilter; -impl frame_support::traits::Contains for SafeCallFilter { - fn contains(_call: &RuntimeCall) -> bool { - // This is safe, as we prevent arbitrary xcm-transact executions. - // For rationale, see:https://github.com/paritytech/polkadot/blob/19fdd197aff085f7f66e54942999fd536e7df475/runtime/kusama/src/xcm_config.rs#L171 - true - } -} - -parameter_types! { - pub const MaxAssetsIntoHolding: u32 = 64; -} -pub struct XcmConfig; -impl xcm_executor::Config for XcmConfig { - type RuntimeCall = RuntimeCall; - type XcmSender = XcmRouter; - type AssetTransactor = CurrencyTransactor; - type OriginConverter = XcmOriginToTransactDispatchOrigin; - type IsReserve = NativeAsset; - type IsTeleporter = NativeAsset; // <- should be enough to allow teleportation of KSM - type UniversalLocation = UniversalLocation; - type Barrier = Barrier; - type Weigher = FixedWeightBounds; - // `FeesToTreasury` is an encointer adaptation - type Trader = - UsingComponents>; - type ResponseHandler = PolkadotXcm; - type AssetTrap = PolkadotXcm; - type AssetClaims = PolkadotXcm; - type SubscriptionService = PolkadotXcm; - type PalletInstancesInfo = crate::AllPalletsWithSystem; - type MaxAssetsIntoHolding = MaxAssetsIntoHolding; - type AssetLocker = (); - type AssetExchanger = (); - type FeeManager = (); - type MessageExporter = (); - type UniversalAliases = Nothing; - type CallDispatcher = RuntimeCall; - type SafeCallFilter = SafeCallFilter; - type Aliasers = Nothing; -} - -/// Converts a local signed origin into an XCM multilocation. -/// Forms the basis for local origins sending/executing XCMs. -pub type LocalOriginToLocation = SignedToAccountId32; - -/// The means for routing XCM messages which are not for local execution into the right message -/// queues. -pub type XcmRouter = ( - // Two routers - use UMP to communicate with the relay chain: - cumulus_primitives_utility::ParentAsUmp, - // ..and XCMP to communicate with the sibling chains. - XcmpQueue, -); - -#[cfg(feature = "runtime-benchmarks")] -parameter_types! { - pub ReachableDest: Option = Some(Parent.into()); -} - -impl pallet_xcm::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - // We want to disallow users sending (arbitrary) XCMs from this chain. - type SendXcmOrigin = EnsureXcmOrigin; - type XcmRouter = XcmRouter; - // We support local origins dispatching XCM executions in principle... - type ExecuteXcmOrigin = EnsureXcmOrigin; - // ... but disallow generic XCM execution. As a result only teleports and reserve transfers are - // allowed. - type XcmExecuteFilter = Nothing; - type XcmExecutor = XcmExecutor; - type XcmTeleportFilter = Everything; - type XcmReserveTransferFilter = Everything; - type Weigher = FixedWeightBounds; - type RuntimeOrigin = RuntimeOrigin; - type RuntimeCall = RuntimeCall; - const VERSION_DISCOVERY_QUEUE_SIZE: u32 = 100; - type AdvertisedXcmVersion = pallet_xcm::CurrentXcmVersion; - type Currency = Balances; - type CurrencyMatcher = (); - type TrustedLockers = (); - type SovereignAccountOf = LocationToAccountId; - type MaxLockers = ConstU32<8>; - type WeightInfo = pallet_xcm::TestWeightInfo; - #[cfg(feature = "runtime-benchmarks")] - type ReachableDest = ReachableDest; - type AdminOrigin = EnsureRoot; - type UniversalLocation = UniversalLocation; - type MaxRemoteLockConsumers = ConstU32<0>; - type RemoteLockConsumerIdentifier = (); -} - -impl cumulus_pallet_xcm::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - type XcmExecutor = XcmExecutor; -} diff --git a/polkadot-parachains/launch-runtime/Cargo.toml b/polkadot-parachains/launch-runtime/Cargo.toml deleted file mode 100644 index c0ea4bb0..00000000 --- a/polkadot-parachains/launch-runtime/Cargo.toml +++ /dev/null @@ -1,176 +0,0 @@ -[package] -name = 'launch-runtime' -# major.minor revision must match collator node. patch should match the runtimes' `spec_version`. -version = '1.6.3' -authors = ["Encointer "] -license = "GPL-3.0" -edition = "2021" - -[dependencies] -log = { workspace = true } -parachain-info = { workspace = true } -parity-scale-codec = { workspace = true } -scale-info = { workspace = true } -serde = { workspace = true } - -# local deps -runtime-common = { default-features = false, path = "../runtime-common" } - -# Substrate dependencies -sp-api = { workspace = true } -sp-block-builder = { workspace = true } -sp-consensus-aura = { workspace = true } -sp-core = { workspace = true } -sp-inherents = { workspace = true } -sp-io = { workspace = true } -sp-offchain = { workspace = true } -sp-runtime = { workspace = true } -sp-session = { workspace = true } -sp-std = { workspace = true } -sp-transaction-pool = { workspace = true } -sp-version = { workspace = true } - -frame-executive = { workspace = true } -frame-support = { workspace = true } -frame-system = { workspace = true } -frame-system-rpc-runtime-api = { workspace = true } -pallet-asset-tx-payment = { workspace = true } -pallet-aura = { workspace = true } -pallet-balances = { workspace = true } -pallet-collective = { workspace = true } -pallet-insecure-randomness-collective-flip = { workspace = true } -pallet-membership = { workspace = true } -pallet-proxy = { workspace = true } -pallet-scheduler = { workspace = true } -pallet-timestamp = { workspace = true } -pallet-transaction-payment = { workspace = true } -pallet-transaction-payment-rpc-runtime-api = { workspace = true } -pallet-treasury = { workspace = true } -pallet-utility = { workspace = true } - -parachains-common = { workspace = true } - -# Cumulus dependencies -cumulus-pallet-aura-ext = { workspace = true } -cumulus-pallet-dmp-queue = { workspace = true } -cumulus-pallet-parachain-system = { workspace = true } -cumulus-pallet-xcm = { workspace = true } -cumulus-pallet-xcmp-queue = { workspace = true } -cumulus-primitives-core = { workspace = true } -cumulus-primitives-timestamp = { workspace = true } -cumulus-primitives-utility = { workspace = true } - -# Polkadot dependencies -pallet-xcm = { workspace = true } -polkadot-parachain-primitives = { workspace = true } -polkadot-runtime-common = { workspace = true } -xcm = { workspace = true } -xcm-builder = { workspace = true } -xcm-executor = { workspace = true } - -# used for try-runtime -frame-try-runtime = { workspace = true, optional = true } -try-runtime-cli = { workspace = true, optional = true } - -# Used for runtime benchmarking -frame-benchmarking = { workspace = true, optional = true } -frame-system-benchmarking = { workspace = true, optional = true } -hex-literal = { workspace = true, optional = true } - -[build-dependencies] -substrate-wasm-builder = { workspace = true, optional = true } - -[features] -default = ["std"] -runtime-benchmarks = [ - "cumulus-pallet-xcmp-queue/runtime-benchmarks", - "frame-benchmarking/runtime-benchmarks", - "frame-support/runtime-benchmarks", - "frame-system-benchmarking/runtime-benchmarks", - "frame-system/runtime-benchmarks", - "hex-literal", - "pallet-balances/runtime-benchmarks", - "pallet-collective/runtime-benchmarks", - "pallet-membership/runtime-benchmarks", - "pallet-proxy/runtime-benchmarks", - "pallet-timestamp/runtime-benchmarks", - "pallet-treasury/runtime-benchmarks", - "pallet-utility/runtime-benchmarks", - "pallet-xcm/runtime-benchmarks", - "sp-runtime/runtime-benchmarks", - "xcm-builder/runtime-benchmarks", - "xcm-executor/runtime-benchmarks", -] -std = [ - "parity-scale-codec/std", - "cumulus-pallet-aura-ext/std", - "cumulus-pallet-dmp-queue/std", - "cumulus-pallet-parachain-system/std", - "cumulus-pallet-xcm/std", - "cumulus-pallet-xcmp-queue/std", - "cumulus-primitives-core/std", - "cumulus-primitives-timestamp/std", - "cumulus-primitives-utility/std", - "frame-executive/std", - "frame-support/std", - "frame-system-rpc-runtime-api/std", - "frame-system/std", - "frame-try-runtime/std", - "log/std", - "pallet-aura/std", - "pallet-balances/std", - "pallet-collective/std", - "pallet-insecure-randomness-collective-flip/std", - "pallet-membership/std", - "pallet-proxy/std", - "pallet-timestamp/std", - "pallet-transaction-payment-rpc-runtime-api/std", - "pallet-transaction-payment/std", - "pallet-treasury/std", - "pallet-utility/std", - "pallet-xcm/std", - "parachain-info/std", - "parachains-common/std", - "runtime-common/std", - "scale-info/std", - "sp-api/std", - "sp-block-builder/std", - "sp-consensus-aura/std", - "sp-core/std", - "sp-inherents/std", - "sp-offchain/std", - "sp-runtime/std", - "sp-session/std", - "sp-std/std", - "sp-transaction-pool/std", - "sp-version/std", - "substrate-wasm-builder", - "xcm-builder/std", - "xcm-executor/std", - "xcm/std", -] - - -try-runtime = [ - "cumulus-pallet-aura-ext/try-runtime", - "cumulus-pallet-dmp-queue/try-runtime", - "cumulus-pallet-parachain-system/try-runtime", - "cumulus-pallet-xcm/try-runtime", - "cumulus-pallet-xcmp-queue/try-runtime", - "frame-executive/try-runtime", - "frame-support/try-runtime", - "frame-system/try-runtime", - "frame-try-runtime/try-runtime", - "pallet-aura/try-runtime", - "pallet-balances/try-runtime", - "pallet-insecure-randomness-collective-flip/try-runtime", - "pallet-proxy/try-runtime", - "pallet-scheduler/try-runtime", - "pallet-timestamp/try-runtime", - "pallet-transaction-payment/try-runtime", - "pallet-utility/try-runtime", - "pallet-xcm/try-runtime", - "parachain-info/try-runtime", -] - -experimental = ["pallet-aura/experimental"] diff --git a/polkadot-parachains/launch-runtime/build.rs b/polkadot-parachains/launch-runtime/build.rs deleted file mode 100644 index 256e9fb7..00000000 --- a/polkadot-parachains/launch-runtime/build.rs +++ /dev/null @@ -1,27 +0,0 @@ -// Copyright 2019-2021 Parity Technologies (UK) Ltd. -// This file is part of Cumulus. - -// Substrate 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. - -// Substrate 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 Cumulus. If not, see . - -#[cfg(feature = "std")] -fn main() { - substrate_wasm_builder::WasmBuilder::new() - .with_current_project() - .export_heap_base() - .import_memory() - .build() -} - -#[cfg(not(feature = "std"))] -fn main() {} diff --git a/polkadot-parachains/launch-runtime/src/lib.rs b/polkadot-parachains/launch-runtime/src/lib.rs deleted file mode 100644 index 472378f7..00000000 --- a/polkadot-parachains/launch-runtime/src/lib.rs +++ /dev/null @@ -1,654 +0,0 @@ -// Copyright (c) 2023 Encointer Association -// This file is part of Encointer -// -// Encointer 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. -// -// Encointer 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 Encointer. If not, see . - -//! # Launch Runtime -//! -//! The Launch runtime defines a minimal parachain. It does not implement encointer-specific logic. -//! -//! However, contrary to the cumulus' `Shell Runtime`, it can produce blocks on its own and has -//! a few pallets. -//! -//! The configuration (especially XCM) is almost identical to `statemine`. Therefore, upstream -//! updates should always check the diff to see if there are some configuration updates. - -#![cfg_attr(not(feature = "std"), no_std)] -// `construct_runtime!` does a lot of recursion and requires us to increase the limit to 256. -#![recursion_limit = "256"] - -// Make the WASM binary available. -#[cfg(feature = "std")] -include!(concat!(env!("OUT_DIR"), "/wasm_binary.rs")); - -mod weights; -pub mod xcm_config; - -use cumulus_pallet_parachain_system::RelayNumberMonotonicallyIncreases; -use sp_api::impl_runtime_apis; -use sp_core::OpaqueMetadata; -use sp_runtime::{ - create_runtime_str, generic, impl_opaque_keys, - traits::{AccountIdLookup, BlakeTwo256, Block as BlockT, ConstU32}, - transaction_validity::{TransactionSource, TransactionValidity}, - ApplyExtrinsicResult, KeyTypeId, Permill, -}; - -use sp_std::prelude::*; -#[cfg(feature = "std")] -use sp_version::NativeVersion; -use sp_version::RuntimeVersion; - -use frame_support::{ - construct_runtime, - dispatch::DispatchClass, - parameter_types, - traits::{ConstBool, Contains, EitherOfDiverse}, - weights::{ConstantMultiplier, Weight}, - PalletId, -}; -use frame_system::{ - limits::{BlockLength, BlockWeights}, - EnsureRoot, -}; -pub use parachains_common as common; -use parachains_common::{ - kusama::consensus::RELAY_CHAIN_SLOT_DURATION_MILLIS, AuraId, AVERAGE_ON_INITIALIZE_RATIO, DAYS, - HOURS, MAXIMUM_BLOCK_WEIGHT, NORMAL_DISPATCH_RATIO, -}; -use xcm_config::{KsmLocation, XcmConfig, XcmOriginToTransactDispatchOrigin}; - -#[cfg(any(feature = "std", test))] -pub use sp_runtime::BuildStorage; - -// Polkadot imports -use pallet_xcm::{EnsureXcm, IsMajorityOfBody}; -use polkadot_runtime_common::{BlockHashCount, SlowAdjustingFeeUpdate}; -use xcm::latest::BodyId; -use xcm_executor::XcmExecutor; -// Added by encointer -pub(crate) use runtime_common::{ - currency::*, - deal_with_fees::FeesToTreasury, - fee::WeightToFee, - weights::{BlockExecutionWeight, ExtrinsicBaseWeight, RocksDbWeight}, -}; - -/// Maximum number of blocks simultaneously accepted by the Runtime, not yet included -/// into the relay chain. -const UNINCLUDED_SEGMENT_CAPACITY: u32 = 1; -/// How many parachain blocks are processed by the relay chain per parent. Limits the -/// number of blocks authored per slot. -const BLOCK_PROCESSING_VELOCITY: u32 = 1; -/// This determines the average expected block time that we are targeting. -/// Blocks will be produced at a minimum duration defined by `SLOT_DURATION`. -/// `SLOT_DURATION` is picked up by `pallet_timestamp` which is in turn picked -/// up by `pallet_aura` to implement `fn slot_duration()`. -/// -/// Change this to adjust the block time. -pub const MILLISECS_PER_BLOCK: u64 = 12000; -pub const SLOT_DURATION: u64 = MILLISECS_PER_BLOCK; - -impl_opaque_keys! { - pub struct SessionKeys { - pub aura: Aura, - } -} - -/// This runtime version. -#[sp_version::runtime_version] -pub const VERSION: RuntimeVersion = RuntimeVersion { - spec_name: create_runtime_str!("encointer-parachain"), - impl_name: create_runtime_str!("encointer-parachain"), - authoring_version: 1, - spec_version: 3, - impl_version: 1, - apis: RUNTIME_API_VERSIONS, - transaction_version: 1, - state_version: 0, -}; - -/// The version information used to identify this runtime when compiled natively. -#[cfg(feature = "std")] -pub fn native_version() -> NativeVersion { - NativeVersion { runtime_version: VERSION, can_author_with: Default::default() } -} - -parameter_types! { - pub const Version: RuntimeVersion = VERSION; - pub RuntimeBlockLength: BlockLength = - BlockLength::max_with_normal_ratio(5 * 1024 * 1024, NORMAL_DISPATCH_RATIO); - pub RuntimeBlockWeights: BlockWeights = BlockWeights::builder() - .base_block(BlockExecutionWeight::get()) - .for_class(DispatchClass::all(), |weights| { - weights.base_extrinsic = ExtrinsicBaseWeight::get(); - }) - .for_class(DispatchClass::Normal, |weights| { - weights.max_total = Some(NORMAL_DISPATCH_RATIO * MAXIMUM_BLOCK_WEIGHT); - }) - .for_class(DispatchClass::Operational, |weights| { - weights.max_total = Some(MAXIMUM_BLOCK_WEIGHT); - // Operational transactions have some extra reserved space, so that they - // are included even if block reached `MAXIMUM_BLOCK_WEIGHT`. - weights.reserved = Some( - MAXIMUM_BLOCK_WEIGHT - NORMAL_DISPATCH_RATIO * MAXIMUM_BLOCK_WEIGHT - ); - }) - .avg_block_initialization(AVERAGE_ON_INITIALIZE_RATIO) - .build_or_panic(); - pub const SS58Prefix: u8 = 2; -} - -pub struct BaseFilter; -impl Contains for BaseFilter { - fn contains(_c: &RuntimeCall) -> bool { - true - } -} - -// Configure FRAME pallets to include in runtime. -impl frame_system::Config for Runtime { - type BaseCallFilter = BaseFilter; - // The block type. - type Block = generic::Block; - type BlockWeights = RuntimeBlockWeights; - type BlockLength = RuntimeBlockLength; - type AccountId = AccountId; - type RuntimeCall = RuntimeCall; - type Lookup = AccountIdLookup; - type Nonce = Nonce; - type Hash = Hash; - type Hashing = BlakeTwo256; - type RuntimeEvent = RuntimeEvent; - type RuntimeOrigin = RuntimeOrigin; - type BlockHashCount = BlockHashCount; - type DbWeight = RocksDbWeight; - type Version = Version; - type PalletInfo = PalletInfo; - type OnNewAccount = (); - type OnKilledAccount = (); - type AccountData = pallet_balances::AccountData; - type SystemWeightInfo = weights::frame_system::WeightInfo; - type SS58Prefix = SS58Prefix; - type OnSetCode = cumulus_pallet_parachain_system::ParachainSetCode; - type MaxConsumers = frame_support::traits::ConstU32<16>; -} - -parameter_types! { - pub const MinimumPeriod: u64 = SLOT_DURATION / 2; -} - -impl pallet_timestamp::Config for Runtime { - /// A timestamp: milliseconds since the unix epoch. - type Moment = u64; - type OnTimestampSet = (); - type MinimumPeriod = MinimumPeriod; - type WeightInfo = weights::pallet_timestamp::WeightInfo; -} - -parameter_types! { - pub const ExistentialDeposit: Balance = EXISTENTIAL_DEPOSIT; - pub const MaxLocks: u32 = 50; - pub const MaxReserves: u32 = 50; -} - -impl pallet_balances::Config for Runtime { - type MaxLocks = MaxLocks; - /// The type for recording an account's balance. - type Balance = Balance; - /// The ubiquitous event type. - type RuntimeEvent = RuntimeEvent; - type DustRemoval = (); - type ExistentialDeposit = ExistentialDeposit; - type AccountStore = System; - type WeightInfo = weights::pallet_balances::WeightInfo; - type MaxReserves = MaxReserves; - type ReserveIdentifier = [u8; 8]; - type RuntimeHoldReason = (); - type FreezeIdentifier = (); - type MaxHolds = ConstU32<0>; - type MaxFreezes = ConstU32<0>; -} - -parameter_types! { - /// Relay Chain `TransactionByteFee` / 10, same as statemine - pub const TransactionByteFee: Balance = MILLICENTS; - pub const OperationalFeeMultiplier: u8 = 5; -} - -impl pallet_transaction_payment::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - // `FeesToTreasury is an encointer adaptation. - type OnChargeTransaction = - pallet_transaction_payment::CurrencyAdapter>; - type WeightToFee = WeightToFee; - type LengthToFee = ConstantMultiplier; - type FeeMultiplierUpdate = SlowAdjustingFeeUpdate; - type OperationalFeeMultiplier = OperationalFeeMultiplier; -} - -parameter_types! { - pub const ProposalBond: Permill = Permill::from_percent(5); - pub const ProposalBondMinimum: Balance = 100 * MILLICENTS; - pub const ProposalBondMaximum: Balance = 500 * CENTS; - pub const SpendPeriod: BlockNumber = 6 * DAYS; - pub const Burn: Permill = Permill::from_percent(1); - pub const TreasuryPalletId: PalletId = PalletId(*b"py/trsry"); - pub const MaxApprovals: u32 = 10; -} - -type RootOrigin = EnsureRoot; - -impl pallet_treasury::Config for Runtime { - type PalletId = TreasuryPalletId; - type Currency = pallet_balances::Pallet; - type ApproveOrigin = RootOrigin; - type RejectOrigin = RootOrigin; - type RuntimeEvent = RuntimeEvent; - type OnSlash = (); //No proposal - type ProposalBond = ProposalBond; - type ProposalBondMinimum = ProposalBondMinimum; - type ProposalBondMaximum = ProposalBondMaximum; - type SpendPeriod = SpendPeriod; //Cannot be 0: Error: Thread 'tokio-runtime-worker' panicked at 'attempt to calculate the remainder with a divisor of zero - type Burn = (); //No burn - type BurnDestination = (); //No burn - type SpendFunds = (); //No spend, no bounty - type MaxApprovals = MaxApprovals; - type WeightInfo = weights::pallet_treasury::WeightInfo; - type SpendOrigin = frame_support::traits::NeverEnsureOrigin; //No spend, no bounty -} - -impl pallet_utility::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - type RuntimeCall = RuntimeCall; - type PalletsOrigin = OriginCaller; - type WeightInfo = weights::pallet_utility::WeightInfo; -} - -parameter_types! { - pub const ReservedXcmpWeight: Weight = MAXIMUM_BLOCK_WEIGHT.saturating_div(4); - pub const ReservedDmpWeight: Weight = MAXIMUM_BLOCK_WEIGHT.saturating_div(4); -} - -impl cumulus_pallet_parachain_system::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - type OnSystemEvent = (); - type SelfParaId = parachain_info::Pallet; - type DmpMessageHandler = DmpQueue; - type ReservedDmpWeight = ReservedDmpWeight; - type OutboundXcmpMessageSource = XcmpQueue; - type XcmpMessageHandler = XcmpQueue; - type ReservedXcmpWeight = ReservedXcmpWeight; - type CheckAssociatedRelayNumber = RelayNumberMonotonicallyIncreases; - type ConsensusHook = cumulus_pallet_aura_ext::FixedVelocityConsensusHook< - Runtime, - RELAY_CHAIN_SLOT_DURATION_MILLIS, - BLOCK_PROCESSING_VELOCITY, - UNINCLUDED_SEGMENT_CAPACITY, - >; -} - -// Added by encointer -impl pallet_insecure_randomness_collective_flip::Config for Runtime {} - -impl parachain_info::Config for Runtime {} - -impl cumulus_pallet_aura_ext::Config for Runtime {} - -parameter_types! { - pub const ExecutiveBody: BodyId = BodyId::Executive; -} - -impl cumulus_pallet_xcmp_queue::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - type XcmExecutor = XcmExecutor; - type ChannelInfo = ParachainSystem; - type VersionWrapper = PolkadotXcm; - type ExecuteOverweightOrigin = EnsureRoot; - type ControllerOrigin = EitherOfDiverse< - EnsureRoot, - EnsureXcm>, - >; - type ControllerOriginConverter = XcmOriginToTransactDispatchOrigin; - type WeightInfo = weights::cumulus_pallet_xcmp_queue::WeightInfo; - type PriceForSiblingDelivery = (); -} - -impl cumulus_pallet_dmp_queue::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - type XcmExecutor = XcmExecutor; - type ExecuteOverweightOrigin = EnsureRoot; -} - -parameter_types! { - pub const Period: u32 = 6 * HOURS; - pub const Offset: u32 = 0; - pub const MaxAuthorities: u32 = 100_000; -} - -impl pallet_aura::Config for Runtime { - type AuthorityId = AuraId; - type DisabledValidators = (); - type MaxAuthorities = MaxAuthorities; - type AllowMultipleBlocksPerSlot = ConstBool; - #[cfg(feature = "experimental")] - type SlotDuration = ConstU64; -} - -parameter_types! { - pub const CouncilMotionDuration: BlockNumber = 7 * DAYS; - pub const CouncilMaxProposals: u32 = 100; - pub const CouncilMaxMembers: u32 = 100; - pub MaxProposalWeight: Weight = sp_runtime::Perbill::from_percent(50) * RuntimeBlockWeights::get().max_block; -} - -type MoreThanHalfCouncil = EitherOfDiverse< - EnsureRoot, - pallet_collective::EnsureProportionMoreThan, ->; - -pub type CouncilCollective = pallet_collective::Instance1; -impl pallet_collective::Config for Runtime { - type RuntimeOrigin = RuntimeOrigin; - type Proposal = RuntimeCall; - type RuntimeEvent = RuntimeEvent; - type MotionDuration = CouncilMotionDuration; - type MaxProposals = CouncilMaxProposals; - type DefaultVote = pallet_collective::PrimeDefaultVote; - type MaxMembers = CouncilMaxMembers; - type WeightInfo = weights::pallet_collective::WeightInfo; - type SetMembersOrigin = EnsureRoot; - type MaxProposalWeight = MaxProposalWeight; -} - -// support for collective pallet -impl pallet_membership::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - type AddOrigin = MoreThanHalfCouncil; - type RemoveOrigin = MoreThanHalfCouncil; - type SwapOrigin = MoreThanHalfCouncil; - type ResetOrigin = MoreThanHalfCouncil; - type PrimeOrigin = MoreThanHalfCouncil; - type MembershipInitialized = Collective; - type MembershipChanged = Collective; - type MaxMembers = CouncilMaxMembers; - type WeightInfo = weights::pallet_membership::WeightInfo; -} - -construct_runtime! { - pub enum Runtime { - // System support stuff. - System: frame_system::{Pallet, Call, Config, Storage, Event} = 0, - ParachainSystem: cumulus_pallet_parachain_system::{ - Pallet, Call, Config, Storage, Inherent, Event, ValidateUnsigned, - } = 1, - RandomnessCollectiveFlip: pallet_insecure_randomness_collective_flip::{Pallet, Storage} = 2, - Timestamp: pallet_timestamp::{Pallet, Call, Storage, Inherent} = 3, - ParachainInfo: parachain_info::{Pallet, Storage, Config} = 4, - - // Monetary stuff. - Balances: pallet_balances::{Pallet, Call, Storage, Config, Event} = 10, - TransactionPayment: pallet_transaction_payment::{Pallet, Storage, Event} = 11, - - Aura: pallet_aura::{Pallet, Storage, Config} = 23, - AuraExt: cumulus_pallet_aura_ext::{Pallet, Storage, Config} = 24, - - // XCM helpers. - XcmpQueue: cumulus_pallet_xcmp_queue::{Pallet, Call, Storage, Event} = 30, - PolkadotXcm: pallet_xcm::{Pallet, Call, Storage, Event, Origin, Config} = 31, - CumulusXcm: cumulus_pallet_xcm::{Pallet, Event, Origin} = 32, - DmpQueue: cumulus_pallet_dmp_queue::{Pallet, Call, Storage, Event} = 33, - - // Handy utilities. - Utility: pallet_utility::{Pallet, Call, Event} = 40, - Treasury: pallet_treasury::{Pallet, Call, Storage, Config, Event} = 43, - - // Encointer council. - Collective: pallet_collective::::{Pallet, Call, Storage, Origin, Config, Event } = 50, - Membership: pallet_membership::::{Pallet, Call, Storage, Event, Config} = 51, - } -} - -/// `parachains_common` is an upstream crate, where they are started to define common types. -/// -/// The re-export is added by encointer. -pub use parachains_common::{AccountId, Balance, BlockNumber, Hash, Header, Nonce, Signature}; - -/// The address format for describing accounts. -pub type Address = sp_runtime::MultiAddress; -/// Block type as expected by this runtime. -pub type Block = generic::Block; -/// A Block signed with a Justification -pub type SignedBlock = generic::SignedBlock; -/// BlockId type as expected by this runtime. -pub type BlockId = generic::BlockId; -/// The SignedExtension to the basic transaction logic. -pub type SignedExtra = ( - frame_system::CheckNonZeroSender, - frame_system::CheckSpecVersion, - frame_system::CheckTxVersion, - frame_system::CheckGenesis, - frame_system::CheckEra, - frame_system::CheckNonce, - frame_system::CheckWeight, - pallet_transaction_payment::ChargeTransactionPayment, -); -/// Unchecked extrinsic type as expected by this runtime. -pub type UncheckedExtrinsic = - generic::UncheckedExtrinsic; -/// Extrinsic type that has already been checked. -pub type CheckedExtrinsic = generic::CheckedExtrinsic; -/// Executive: handles dispatch to the various modules. -pub type Executive = frame_executive::Executive< - Runtime, - Block, - frame_system::ChainContext, - Runtime, - AllPalletsWithSystem, - (), ->; - -#[cfg(feature = "runtime-benchmarks")] -#[macro_use] -extern crate frame_benchmarking; - -#[cfg(feature = "runtime-benchmarks")] -mod benches { - define_benchmarks!( - [frame_system, SystemBench::] - [pallet_balances, Balances] - [pallet_collective, Collective] - [pallet_membership, Membership] - [pallet_timestamp, Timestamp] - [pallet_treasury, Treasury] - [pallet_utility, Utility] - [cumulus_pallet_xcmp_queue, XcmpQueue] - ); -} - -impl_runtime_apis! { - impl sp_consensus_aura::AuraApi for Runtime { - fn slot_duration() -> sp_consensus_aura::SlotDuration { - sp_consensus_aura::SlotDuration::from_millis(Aura::slot_duration()) - } - - fn authorities() -> Vec { - Aura::authorities().into_inner() - } - } - - impl sp_api::Core for Runtime { - fn version() -> RuntimeVersion { - VERSION - } - - fn execute_block(block: Block) { - Executive::execute_block(block) - } - - fn initialize_block(header: &::Header) { - Executive::initialize_block(header) - } - } - - impl sp_api::Metadata for Runtime { - fn metadata() -> OpaqueMetadata { - OpaqueMetadata::new(Runtime::metadata().into()) - } - - fn metadata_at_version(version: u32) -> Option { - Runtime::metadata_at_version(version) - } - - fn metadata_versions() -> sp_std::vec::Vec { - Runtime::metadata_versions() - } - } - - impl sp_block_builder::BlockBuilder for Runtime { - fn apply_extrinsic(extrinsic: ::Extrinsic) -> ApplyExtrinsicResult { - Executive::apply_extrinsic(extrinsic) - } - - fn finalize_block() -> ::Header { - Executive::finalize_block() - } - - fn inherent_extrinsics(data: sp_inherents::InherentData) -> Vec<::Extrinsic> { - data.create_extrinsics() - } - - fn check_inherents( - block: Block, - data: sp_inherents::InherentData, - ) -> sp_inherents::CheckInherentsResult { - data.check_extrinsics(&block) - } - } - - impl sp_transaction_pool::runtime_api::TaggedTransactionQueue for Runtime { - fn validate_transaction( - source: TransactionSource, - tx: ::Extrinsic, - block_hash: ::Hash, - ) -> TransactionValidity { - Executive::validate_transaction(source, tx, block_hash) - } - } - - impl sp_offchain::OffchainWorkerApi for Runtime { - fn offchain_worker(header: &::Header) { - Executive::offchain_worker(header) - } - } - - impl sp_session::SessionKeys for Runtime { - fn generate_session_keys(seed: Option>) -> Vec { - SessionKeys::generate(seed) - } - - fn decode_session_keys( - encoded: Vec, - ) -> Option, KeyTypeId)>> { - SessionKeys::decode_into_raw_public_keys(&encoded) - } - } - - impl frame_system_rpc_runtime_api::AccountNonceApi for Runtime { - fn account_nonce(account: AccountId) -> Nonce { - System::account_nonce(account) - } - } - - impl pallet_transaction_payment_rpc_runtime_api::TransactionPaymentApi for Runtime { - fn query_info( - uxt: ::Extrinsic, - len: u32, - ) -> pallet_transaction_payment_rpc_runtime_api::RuntimeDispatchInfo { - TransactionPayment::query_info(uxt, len) - } - fn query_fee_details( - uxt: ::Extrinsic, - len: u32, - ) -> pallet_transaction_payment::FeeDetails { - TransactionPayment::query_fee_details(uxt, len) - } - fn query_weight_to_fee(weight: Weight) -> Balance { - TransactionPayment::weight_to_fee(weight) - } - fn query_length_to_fee(length: u32) -> Balance { - TransactionPayment::length_to_fee(length) - } - } - - impl cumulus_primitives_core::CollectCollationInfo for Runtime { - fn collect_collation_info(header: &::Header) -> cumulus_primitives_core::CollationInfo { - ParachainSystem::collect_collation_info(header) - } - } - - #[cfg(feature = "runtime-benchmarks")] - impl frame_benchmarking::Benchmark for Runtime { - fn benchmark_metadata(extra: bool) -> ( - Vec, - Vec, - ) { - use frame_benchmarking::{Benchmarking, BenchmarkList}; - use frame_support::traits::StorageInfoTrait; - use frame_system_benchmarking::Pallet as SystemBench; - - let mut list = Vec::::new(); - list_benchmarks!(list, extra); - - let storage_info = AllPalletsWithSystem::storage_info(); - return (list, storage_info) - } - - fn dispatch_benchmark( - config: frame_benchmarking::BenchmarkConfig - ) -> Result, sp_runtime::RuntimeString> { - use frame_benchmarking::{Benchmarking, BenchmarkBatch}; - use frame_support::traits::TrackedStorageKey; - use frame_system_benchmarking::Pallet as SystemBench; - impl frame_system_benchmarking::Config for Runtime {} - - let whitelist: Vec = vec![ - // Block Number - hex_literal::hex!("26aa394eea5630e07c48ae0c9558cef702a5c1b19ab7a04f536c519aca4983ac").to_vec().into(), - // Total Issuance - hex_literal::hex!("c2261276cc9d1f8598ea4b6a74b15c2f57c875e4cff74148e4628f264b974c80").to_vec().into(), - // Execution Phase - hex_literal::hex!("26aa394eea5630e07c48ae0c9558cef7ff553b5a9862a516939d82b3d3d8661a").to_vec().into(), - // Event Count - hex_literal::hex!("26aa394eea5630e07c48ae0c9558cef70a98fdbe9ce6c55837576c60c7af3850").to_vec().into(), - // System Events - hex_literal::hex!("26aa394eea5630e07c48ae0c9558cef780d41e5e16056765bc8461851072c9d7").to_vec().into(), - // Treasury Account - hex_literal::hex!("26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95ecffd7b6c0f78751baa9d281e0bfa3a6d6f646c70792f74727372790000000000000000000000000000000000000000").to_vec().into(), - ]; - - let mut batches = Vec::::new(); - let params = (&config, &whitelist); - add_benchmarks!(params, batches); - - if batches.is_empty() { return Err("Benchmark not found for this pallet.".into()) } - Ok(batches) - } - } -} - -cumulus_pallet_parachain_system::register_validate_block! { - Runtime = Runtime, - BlockExecutor = cumulus_pallet_aura_ext::BlockExecutor::, -} diff --git a/polkadot-parachains/launch-runtime/src/weights/cumulus_pallet_xcmp_queue.rs b/polkadot-parachains/launch-runtime/src/weights/cumulus_pallet_xcmp_queue.rs deleted file mode 100644 index f0cd43c5..00000000 --- a/polkadot-parachains/launch-runtime/src/weights/cumulus_pallet_xcmp_queue.rs +++ /dev/null @@ -1,44 +0,0 @@ - -//! Autogenerated weights for `cumulus_pallet_xcmp_queue` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2022-06-04, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("launch-rococo-local-dev"), DB CACHE: 1024 - -// Executed Command: -// target/release/encointer-collator -// benchmark -// pallet -// --chain=launch-rococo-local-dev -// --steps=50 -// --repeat=20 -// --pallet=cumulus_pallet_xcmp_queue -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=polkadot-parachains/launch-runtime/src/weights/cumulus_pallet_xcmp_queue.rs - -#![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 `cumulus_pallet_xcmp_queue`. -pub struct WeightInfo(PhantomData); -impl cumulus_pallet_xcmp_queue::WeightInfo for WeightInfo { - // Storage: XcmpQueue QueueConfig (r:1 w:1) - fn set_config_with_u32() -> Weight { - Weight::from_parts(6_500_000, 0) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - // Storage: XcmpQueue QueueConfig (r:1 w:1) - fn set_config_with_weight() -> Weight { - Weight::from_parts(6_000_000, 0) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } -} diff --git a/polkadot-parachains/launch-runtime/src/weights/frame_system.rs b/polkadot-parachains/launch-runtime/src/weights/frame_system.rs deleted file mode 100644 index 5e6f2140..00000000 --- a/polkadot-parachains/launch-runtime/src/weights/frame_system.rs +++ /dev/null @@ -1,74 +0,0 @@ - -//! Autogenerated weights for `frame_system` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-11-26, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("launch-rococo-fresh"), DB CACHE: 128 - -// Executed Command: -// target/release/encointer-collator -// benchmark -// --chain=launch-rococo-fresh -// --steps=50 -// --repeat=20 -// --pallet=frame_system -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=polkadot-parachains/launch-runtime/src/weights/frame_system.rs - - -#![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 `frame_system`. -pub struct WeightInfo(PhantomData); -impl frame_system::WeightInfo for WeightInfo { - fn remark(b: u32, ) -> Weight { - Weight::from_parts(0, 0) - // Standard Error: 0 - .saturating_add(Weight::from_parts(1_000_u64, 0).saturating_mul(b.into())) - } - fn remark_with_event(b: u32, ) -> Weight { - Weight::from_parts(0, 0) - // Standard Error: 0 - .saturating_add(Weight::from_parts(2_000_u64, 0).saturating_mul(b.into())) - } - fn set_code() -> Weight { - Weight::from_parts(1_000_000, 0) - } - // Storage: System Digest (r:1 w:1) - // Storage: unknown [0x3a686561707061676573] (r:0 w:1) - fn set_heap_pages() -> Weight { - Weight::from_parts(13_000_000, 0) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(2)) - } - - // Storage: Skipped Metadata (r:0 w:0) - fn set_storage(i: u32, ) -> Weight { - Weight::from_parts(200_194_000, 0) - // Standard Error: 34_000 - .saturating_add(Weight::from_parts(847_000_u64, 0).saturating_mul(i.into())) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i.into()))) - } - // Storage: Skipped Metadata (r:0 w:0) - fn kill_storage(i: u32, ) -> Weight { - Weight::from_parts(0, 0) - // Standard Error: 2_000 - .saturating_add(Weight::from_parts(528_000_u64, 0).saturating_mul(i.into())) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i.into()))) - } - // Storage: Skipped Metadata (r:0 w:0) - fn kill_prefix(p: u32, ) -> Weight { - Weight::from_parts(0, 0) - // Standard Error: 7_000 - .saturating_add(Weight::from_parts(840_000_u64, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(p.into()))) - } -} diff --git a/polkadot-parachains/launch-runtime/src/weights/mod.rs b/polkadot-parachains/launch-runtime/src/weights/mod.rs deleted file mode 100644 index fd2acb83..00000000 --- a/polkadot-parachains/launch-runtime/src/weights/mod.rs +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) 2019 Alain Brenzikofer -// This file is part of Encointer -// -// Encointer 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. -// -// Encointer 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 Encointer. If not, see . - -//! The weights used in the encointer-launch-runtime - -// the generated files do not pass clippy -#![allow(clippy::all)] - -pub mod cumulus_pallet_xcmp_queue; -pub mod frame_system; -pub mod pallet_balances; -pub mod pallet_collective; -pub mod pallet_membership; -pub mod pallet_timestamp; -pub mod pallet_treasury; -pub mod pallet_utility; diff --git a/polkadot-parachains/launch-runtime/src/weights/pallet_balances.rs b/polkadot-parachains/launch-runtime/src/weights/pallet_balances.rs deleted file mode 100644 index 03338769..00000000 --- a/polkadot-parachains/launch-runtime/src/weights/pallet_balances.rs +++ /dev/null @@ -1,79 +0,0 @@ - -//! Autogenerated weights for `pallet_balances` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-11-26, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("launch-rococo-fresh"), DB CACHE: 128 - -// Executed Command: -// target/release/encointer-collator -// benchmark -// --chain=launch-rococo-fresh -// --steps=50 -// --repeat=20 -// --pallet=pallet_balances -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=polkadot-parachains/launch-runtime/src/weights/pallet_balances.rs - - -#![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_balances`. -pub struct WeightInfo(PhantomData); -impl pallet_balances::WeightInfo for WeightInfo { - // Storage: System Account (r:1 w:1) - fn transfer_allow_death() -> Weight { - Weight::from_parts(73_000_000, 0) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - fn upgrade_accounts(_val: u32) -> Weight { - // Minimum execution time: 63_500 nanoseconds. - Weight::from_parts(73_000_000, 0u64) - .saturating_add(T::DbWeight::get().reads(1)) - } - // Storage: System Account (r:1 w:1) - fn transfer_keep_alive() -> Weight { - Weight::from_parts(52_700_000, 0) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - // Storage: System Account (r:1 w:1) - fn force_set_balance_creating() -> Weight { - Weight::from_parts(31_100_000, 0) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - // Storage: System Account (r:1 w:1) - fn force_set_balance_killing() -> Weight { - Weight::from_parts(37_100_000, 0) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - // Storage: System Account (r:2 w:2) - fn force_transfer() -> Weight { - Weight::from_parts(66_700_000, 0) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(2)) - } - // Storage: System Account (r:1 w:1) - fn transfer_all() -> Weight { - Weight::from_parts(56_700_000, 0) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - // Storage: System Account (r:1 w:1) - fn force_unreserve() -> Weight { - Weight::from_parts(29_300_000, 0) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } -} diff --git a/polkadot-parachains/launch-runtime/src/weights/pallet_collective.rs b/polkadot-parachains/launch-runtime/src/weights/pallet_collective.rs deleted file mode 100644 index a2c4a712..00000000 --- a/polkadot-parachains/launch-runtime/src/weights/pallet_collective.rs +++ /dev/null @@ -1,159 +0,0 @@ - -//! Autogenerated weights for `pallet_collective` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-11-26, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("launch-rococo-fresh"), DB CACHE: 128 - -// Executed Command: -// target/release/encointer-collator -// benchmark -// --chain=launch-rococo-fresh -// --steps=50 -// --repeat=20 -// --pallet=pallet_collective -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=polkadot-parachains/launch-runtime/src/weights/pallet_collective.rs - - -#![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: Collective Members (r:1 w:1) - // Storage: Collective Proposals (r:1 w:0) - // Storage: Collective Voting (r:100 w:100) - // Storage: Collective Prime (r:0 w:1) - fn set_members(m: u32, _n: u32, p: u32, ) -> Weight { - Weight::from_parts(0, 0) - // Standard Error: 69_000 - .saturating_add(Weight::from_parts(15_485_000_u64, 0).saturating_mul(m.into())) - // Standard Error: 69_000 - .saturating_add(Weight::from_parts(20_494_000_u64, 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()))) - } - // Storage: Collective Members (r:1 w:0) - fn execute(b: u32, m: u32, ) -> Weight { - Weight::from_parts(20_626_000, 0) - // Standard Error: 0 - .saturating_add(Weight::from_parts(3_000_u64, 0).saturating_mul(b.into())) - // Standard Error: 1_000 - .saturating_add(Weight::from_parts(74_000_u64, 0).saturating_mul(m.into())) - .saturating_add(T::DbWeight::get().reads(1)) - } - // Storage: Collective Members (r:1 w:0) - // Storage: Collective ProposalOf (r:1 w:0) - fn propose_execute(b: u32, m: u32, ) -> Weight { - Weight::from_parts(24_295_000, 0) - // Standard Error: 0 - .saturating_add(Weight::from_parts(3_000_u64, 0).saturating_mul(b.into())) - // Standard Error: 1_000 - .saturating_add(Weight::from_parts(149_000_u64, 0).saturating_mul(m.into())) - .saturating_add(T::DbWeight::get().reads(2)) - } - // Storage: Collective Members (r:1 w:0) - // Storage: Collective ProposalOf (r:1 w:1) - // Storage: Collective Proposals (r:1 w:1) - // Storage: Collective ProposalCount (r:1 w:1) - // Storage: Collective Voting (r:0 w:1) - fn propose_proposed(b: u32, m: u32, p: u32, ) -> Weight { - Weight::from_parts(36_933_000, 0) - // Standard Error: 0 - .saturating_add(Weight::from_parts(10_000_u64, 0).saturating_mul(b.into())) - // Standard Error: 2_000 - .saturating_add(Weight::from_parts(86_000_u64, 0).saturating_mul(m.into())) - // Standard Error: 2_000 - .saturating_add(Weight::from_parts(360_000_u64, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(4)) - .saturating_add(T::DbWeight::get().writes(4)) - } - // Storage: Collective Members (r:1 w:0) - // Storage: Collective Voting (r:1 w:1) - fn vote(m: u32, ) -> Weight { - Weight::from_parts(41_498_000, 0) - // Standard Error: 3_000 - .saturating_add(Weight::from_parts(183_000_u64, 0).saturating_mul(m.into())) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(1)) - } - // Storage: Collective Voting (r:1 w:1) - // Storage: Collective Members (r:1 w:0) - // Storage: Collective Proposals (r:1 w:1) - // Storage: Collective ProposalOf (r:0 w:1) - fn close_early_disapproved(m: u32, p: u32, ) -> Weight { - Weight::from_parts(45_184_000, 0) - // Standard Error: 2_000 - .saturating_add(Weight::from_parts(153_000_u64, 0).saturating_mul(m.into())) - // Standard Error: 2_000 - .saturating_add(Weight::from_parts(322_000_u64, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(3)) - } - // Storage: Collective Voting (r:1 w:1) - // Storage: Collective Members (r:1 w:0) - // Storage: Collective ProposalOf (r:1 w:1) - // Storage: Collective Proposals (r:1 w:1) - fn close_early_approved(b: u32, m: u32, p: u32, ) -> Weight { - Weight::from_parts(55_539_000, 0) - // Standard Error: 0 - .saturating_add(Weight::from_parts(9_000_u64, 0).saturating_mul(b.into())) - // Standard Error: 4_000 - .saturating_add(Weight::from_parts(143_000_u64, 0).saturating_mul(m.into())) - // Standard Error: 4_000 - .saturating_add(Weight::from_parts(365_000_u64, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(4)) - .saturating_add(T::DbWeight::get().writes(3)) - } - // Storage: Collective Voting (r:1 w:1) - // Storage: Collective Members (r:1 w:0) - // Storage: Collective Prime (r:1 w:0) - // Storage: Collective Proposals (r:1 w:1) - // Storage: Collective ProposalOf (r:0 w:1) - fn close_disapproved(m: u32, p: u32, ) -> Weight { - Weight::from_parts(48_452_000, 0) - // Standard Error: 3_000 - .saturating_add(Weight::from_parts(166_000_u64, 0).saturating_mul(m.into())) - // Standard Error: 3_000 - .saturating_add(Weight::from_parts(348_000_u64, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(4)) - .saturating_add(T::DbWeight::get().writes(3)) - } - // Storage: Collective Voting (r:1 w:1) - // Storage: Collective Members (r:1 w:0) - // Storage: Collective Prime (r:1 w:0) - // Storage: Collective ProposalOf (r:1 w:1) - // Storage: Collective Proposals (r:1 w:1) - fn close_approved(b: u32, m: u32, p: u32, ) -> Weight { - Weight::from_parts(60_654_000, 0) - // Standard Error: 0 - .saturating_add(Weight::from_parts(7_000_u64, 0).saturating_mul(b.into())) - // Standard Error: 3_000 - .saturating_add(Weight::from_parts(190_000_u64, 0).saturating_mul(m.into())) - // Standard Error: 3_000 - .saturating_add(Weight::from_parts(336_000_u64, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(5)) - .saturating_add(T::DbWeight::get().writes(3)) - } - // Storage: Collective Proposals (r:1 w:1) - // Storage: Collective Voting (r:0 w:1) - // Storage: Collective ProposalOf (r:0 w:1) - fn disapprove_proposal(p: u32, ) -> Weight { - Weight::from_parts(26_137_000, 0) - // Standard Error: 11_000 - .saturating_add(Weight::from_parts(544_000_u64, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(3)) - } -} diff --git a/polkadot-parachains/launch-runtime/src/weights/pallet_membership.rs b/polkadot-parachains/launch-runtime/src/weights/pallet_membership.rs deleted file mode 100644 index 9d8cc9b3..00000000 --- a/polkadot-parachains/launch-runtime/src/weights/pallet_membership.rs +++ /dev/null @@ -1,109 +0,0 @@ - -//! Autogenerated weights for `pallet_membership` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-11-26, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("launch-rococo-fresh"), DB CACHE: 128 - -// Executed Command: -// target/release/encointer-collator -// benchmark -// --chain=launch-rococo-fresh -// --steps=50 -// --repeat=20 -// --pallet=pallet_membership -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=polkadot-parachains/launch-runtime/src/weights/pallet_membership.rs - - -#![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: Membership Members (r:1 w:1) - // Storage: Collective Proposals (r:1 w:0) - // Storage: Collective Members (r:0 w:1) - // Storage: Collective Prime (r:0 w:1) - fn add_member(m: u32, ) -> Weight { - Weight::from_parts(24_898_000, 0) - // Standard Error: 9_000 - .saturating_add(Weight::from_parts(231_000_u64, 0).saturating_mul(m.into())) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(3)) - } - // Storage: Membership Members (r:1 w:1) - // Storage: Collective Proposals (r:1 w:0) - // Storage: Membership Prime (r:1 w:0) - // Storage: Collective Members (r:0 w:1) - // Storage: Collective Prime (r:0 w:1) - fn remove_member(m: u32, ) -> Weight { - Weight::from_parts(33_292_000, 0) - // Standard Error: 0 - .saturating_add(Weight::from_parts(41_000_u64, 0).saturating_mul(m.into())) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(3)) - } - // Storage: Membership Members (r:1 w:1) - // Storage: Collective Proposals (r:1 w:0) - // Storage: Membership Prime (r:1 w:0) - // Storage: Collective Members (r:0 w:1) - // Storage: Collective Prime (r:0 w:1) - fn swap_member(m: u32, ) -> Weight { - Weight::from_parts(29_690_000, 0) - // Standard Error: 2_000 - .saturating_add(Weight::from_parts(134_000_u64, 0).saturating_mul(m.into())) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(3)) - } - // Storage: Membership Members (r:1 w:1) - // Storage: Collective Proposals (r:1 w:0) - // Storage: Membership Prime (r:1 w:0) - // Storage: Collective Members (r:0 w:1) - // Storage: Collective Prime (r:0 w:1) - fn reset_member(m: u32, ) -> Weight { - Weight::from_parts(33_688_000, 0) - // Standard Error: 3_000 - .saturating_add(Weight::from_parts(216_000_u64, 0).saturating_mul(m.into())) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(3)) - } - // Storage: Membership Members (r:1 w:1) - // Storage: Collective Proposals (r:1 w:0) - // Storage: Membership Prime (r:1 w:1) - // Storage: Collective Members (r:0 w:1) - // Storage: Collective Prime (r:0 w:1) - fn change_key(m: u32, ) -> Weight { - Weight::from_parts(30_127_000, 0) - // Standard Error: 0 - .saturating_add(Weight::from_parts(141_000_u64, 0).saturating_mul(m.into())) - .saturating_add(T::DbWeight::get().reads(3)) - .saturating_add(T::DbWeight::get().writes(4)) - } - // Storage: Membership Members (r:1 w:0) - // Storage: Membership Prime (r:0 w:1) - // Storage: Collective Prime (r:0 w:1) - fn set_prime(m: u32, ) -> Weight { - Weight::from_parts(8_775_000, 0) - // Standard Error: 0 - .saturating_add(Weight::from_parts(76_000_u64, 0).saturating_mul(m.into())) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(2)) - } - // Storage: Membership Prime (r:0 w:1) - // Storage: Collective Prime (r:0 w:1) - fn clear_prime(m: u32, ) -> Weight { - Weight::from_parts(3_437_000, 0) - // Standard Error: 0 - .saturating_add(Weight::from_parts(2_000_u64, 0).saturating_mul(m.into())) - .saturating_add(T::DbWeight::get().writes(2)) - } -} diff --git a/polkadot-parachains/launch-runtime/src/weights/pallet_timestamp.rs b/polkadot-parachains/launch-runtime/src/weights/pallet_timestamp.rs deleted file mode 100644 index 97b34d5f..00000000 --- a/polkadot-parachains/launch-runtime/src/weights/pallet_timestamp.rs +++ /dev/null @@ -1,41 +0,0 @@ - -//! Autogenerated weights for `pallet_timestamp` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-11-26, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("launch-rococo-fresh"), DB CACHE: 128 - -// Executed Command: -// target/release/encointer-collator -// benchmark -// --chain=launch-rococo-fresh -// --steps=50 -// --repeat=20 -// --pallet=pallet_timestamp -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=polkadot-parachains/launch-runtime/src/weights/pallet_timestamp.rs - - -#![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_timestamp`. -pub struct WeightInfo(PhantomData); -impl pallet_timestamp::WeightInfo for WeightInfo { - // Storage: Timestamp Now (r:1 w:1) - fn set() -> Weight { - Weight::from_parts(8_000_000, 0) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(1)) - } - fn on_finalize() -> Weight { - Weight::from_parts(4_900_000, 0) - } -} diff --git a/polkadot-parachains/launch-runtime/src/weights/pallet_treasury.rs b/polkadot-parachains/launch-runtime/src/weights/pallet_treasury.rs deleted file mode 100644 index c8151b81..00000000 --- a/polkadot-parachains/launch-runtime/src/weights/pallet_treasury.rs +++ /dev/null @@ -1,76 +0,0 @@ - -//! Autogenerated weights for `pallet_treasury` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-11-26, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("launch-rococo-fresh"), DB CACHE: 128 - -// Executed Command: -// target/release/encointer-collator -// benchmark -// --chain=launch-rococo-fresh -// --steps=50 -// --repeat=20 -// --pallet=pallet_treasury -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=polkadot-parachains/launch-runtime/src/weights/pallet_treasury.rs - - -#![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_treasury`. -pub struct WeightInfo(PhantomData); -impl pallet_treasury::WeightInfo for WeightInfo { - fn spend() -> Weight { - Weight::from_parts(150_000, 0) - } - // Storage: Treasury ProposalCount (r:1 w:1) - // Storage: Treasury Proposals (r:0 w:1) - fn propose_spend() -> Weight { - Weight::from_parts(44_300_000, 0) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().writes(2)) - } - // Storage: Treasury Proposals (r:1 w:1) - // Storage: System Account (r:1 w:1) - fn reject_proposal() -> Weight { - Weight::from_parts(48_600_000, 0) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(2)) - } - - fn remove_approval() -> Weight { - Weight::from_parts(64_000_000, 0) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(2)) - } - // Storage: Treasury Proposals (r:1 w:0) - // Storage: Treasury Approvals (r:1 w:1) - fn approve_proposal(p: u32, ) -> Weight { - Weight::from_parts(12_348_000, 0) - // Standard Error: 10_000 - .saturating_add(Weight::from_parts(276_000_u64, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(2)) - .saturating_add(T::DbWeight::get().writes(1)) - } - // Storage: Treasury Approvals (r:1 w:1) - // Storage: Treasury Proposals (r:1 w:1) - // Storage: System Account (r:2 w:2) - fn on_initialize_proposals(p: u32, ) -> Weight { - Weight::from_parts(65_629_000, 0) - // Standard Error: 384_000 - .saturating_add(Weight::from_parts(57_618_000_u64, 0).saturating_mul(p.into())) - .saturating_add(T::DbWeight::get().reads(1)) - .saturating_add(T::DbWeight::get().reads((3_u64).saturating_mul(p.into()))) - .saturating_add(T::DbWeight::get().writes(1)) - .saturating_add(T::DbWeight::get().writes((3_u64).saturating_mul(p.into()))) - } -} diff --git a/polkadot-parachains/launch-runtime/src/weights/pallet_utility.rs b/polkadot-parachains/launch-runtime/src/weights/pallet_utility.rs deleted file mode 100644 index 73eb33b1..00000000 --- a/polkadot-parachains/launch-runtime/src/weights/pallet_utility.rs +++ /dev/null @@ -1,52 +0,0 @@ - -//! Autogenerated weights for `pallet_utility` -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-11-26, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("launch-rococo-fresh"), DB CACHE: 128 - -// Executed Command: -// target/release/encointer-collator -// benchmark -// --chain=launch-rococo-fresh -// --steps=50 -// --repeat=20 -// --pallet=pallet_utility -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=polkadot-parachains/encointer-runtime/src/weights/pallet_utility.rs - -#![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_utility`. -pub struct WeightInfo(PhantomData); -impl pallet_utility::WeightInfo for WeightInfo { - fn batch(c: u32, ) -> Weight { - Weight::from_parts(39_089_000, 0) - // Standard Error: 17_000 - .saturating_add(Weight::from_parts(5_766_000_u64, 0).saturating_mul(c.into())) - } - fn as_derivative() -> Weight { - Weight::from_parts(3_800_000, 0) - } - fn batch_all(c: u32, ) -> Weight { - Weight::from_parts(1_500_000, 0) - // Standard Error: 19_000 - .saturating_add(Weight::from_parts(6_599_000_u64, 0).saturating_mul(c.into())) - } - fn dispatch_as() -> Weight { - Weight::from_parts(31_300_000, 0) - } - - fn force_batch(_c: u32) -> Weight { - // Todo: dummy weight need to rerun benchmarks - Weight::from_parts(23_000_000, 0) - } -} diff --git a/polkadot-parachains/launch-runtime/src/xcm_config.rs b/polkadot-parachains/launch-runtime/src/xcm_config.rs deleted file mode 100644 index 14d47c72..00000000 --- a/polkadot-parachains/launch-runtime/src/xcm_config.rs +++ /dev/null @@ -1,230 +0,0 @@ -// Copyright (C) 2022 Parity Technologies (UK) Ltd. -// SPDX-License-Identifier: Apache-2.0 - -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -//! XcmConfig for our launch-runtime. -//! -//! Almost identical to cumulus/parachains/runtimes/statemine - -use super::{ - AccountId, Balances, FeesToTreasury, ParachainInfo, ParachainSystem, PolkadotXcm, Runtime, - RuntimeCall, RuntimeEvent, RuntimeOrigin, WeightToFee, XcmpQueue, -}; -use frame_support::{ - match_types, parameter_types, - traits::{Everything, Nothing}, - weights::Weight, -}; -use frame_system::EnsureRoot; -use pallet_xcm::XcmPassthrough; -use polkadot_parachain_primitives::primitives::Sibling; -use sp_core::ConstU32; -use xcm::latest::prelude::*; -use xcm_builder::{ - AccountId32Aliases, AllowKnownQueryResponses, AllowSubscriptionsFrom, - AllowTopLevelPaidExecutionFrom, AllowUnpaidExecutionFrom, CurrencyAdapter, - DenyReserveTransferToRelayChain, DenyThenTry, EnsureXcmOrigin, FixedWeightBounds, IsConcrete, - NativeAsset, ParentAsSuperuser, ParentIsPreset, RelayChainAsNative, SiblingParachainAsNative, - SiblingParachainConvertsVia, SignedAccountId32AsNative, SignedToAccountId32, - SovereignSignedViaLocation, TakeWeightCredit, UsingComponents, -}; -use xcm_executor::XcmExecutor; - -parameter_types! { - pub const KsmLocation: MultiLocation = MultiLocation::parent(); - pub const RelayNetwork: NetworkId = NetworkId::Kusama; - pub RelayChainOrigin: RuntimeOrigin = cumulus_pallet_xcm::Origin::Relay.into(); - pub Ancestry: MultiLocation = Parachain(ParachainInfo::parachain_id().into()).into(); - pub CheckingAccount: AccountId = PolkadotXcm::check_account(); - pub UniversalLocation: InteriorMultiLocation = - X2(GlobalConsensus(RelayNetwork::get()), Parachain(ParachainInfo::parachain_id().into())); - -} - -/// Type for specifying how a `MultiLocation` can be converted into an `AccountId`. This is used -/// when determining ownership of accounts for asset transacting and when attempting to use XCM -/// `Transact` in order to determine the dispatch Origin. -pub type LocationToAccountId = ( - // The parent (Relay-chain) origin converts to the parent `AccountId`. - ParentIsPreset, - // Sibling parachain origins convert to AccountId via the `ParaId::into`. - SiblingParachainConvertsVia, - // Straight up local `AccountId32` origins just alias directly to `AccountId`. - AccountId32Aliases, -); - -/// Means for transacting the native currency on this chain. -pub type CurrencyTransactor = CurrencyAdapter< - // Use this currency: - Balances, - // Use this currency when it is a fungible asset matching the given location or name: - IsConcrete, - // Convert an XCM MultiLocation into a local account id: - LocationToAccountId, - // Our chain's account ID type (we can't get away without mentioning it explicitly): - AccountId, - // We don't track any teleports of `Balances`. - (), ->; - -/// This is the type we use to convert an (incoming) XCM origin into a local `Origin` instance, -/// ready for dispatching a transaction with Xcm's `Transact`. There is an `OriginKind` which can -/// biases the kind of local `Origin` it will become. -pub type XcmOriginToTransactDispatchOrigin = ( - // Sovereign account converter; this attempts to derive an `AccountId` from the origin location - // using `LocationToAccountId` and then turn that into the usual `Signed` origin. Useful for - // foreign chains who want to have a local sovereign account on this chain which they control. - SovereignSignedViaLocation, - // Native converter for Relay-chain (Parent) location; will convert to a `Relay` origin when - // recognised. - RelayChainAsNative, - // Native converter for sibling Parachains; will convert to a `SiblingPara` origin when - // recognised. - SiblingParachainAsNative, - // Superuser converter for the Relay-chain (Parent) location. This will allow it to issue a - // transaction from the Root origin. - ParentAsSuperuser, - // Native signed account converter; this just converts an `AccountId32` origin into a normal - // `Origin::Signed` origin of the same 32-byte value. - SignedAccountId32AsNative, - // Xcm origins can be represented natively under the Xcm pallet's Xcm origin. - XcmPassthrough, -); - -parameter_types! { - // One XCM operation is 1_000_000_000 weight - almost certainly a conservative estimate. - pub UnitWeightCost: Weight = Weight::from_parts(1_000_000_000, 0); - pub const MaxInstructions: u32 = 100; -} - -match_types! { - pub type ParentOrParentsExecutivePlurality: impl Contains = { - MultiLocation { parents: 1, interior: Here } | - MultiLocation { parents: 1, interior: X1(Plurality { id: BodyId::Executive, .. }) } - }; - pub type ParentOrSiblings: impl Contains = { - MultiLocation { parents: 1, interior: Here } | - MultiLocation { parents: 1, interior: X1(_) } - }; -} - -pub type Barrier = DenyThenTry< - DenyReserveTransferToRelayChain, - ( - TakeWeightCredit, - AllowTopLevelPaidExecutionFrom, - // Parent and its exec plurality get free execution - AllowUnpaidExecutionFrom, - // Expected responses are OK. - AllowKnownQueryResponses, - // Subscriptions for version tracking are OK. - AllowSubscriptionsFrom, - ), ->; -pub struct SafeCallFilter; -impl frame_support::traits::Contains for SafeCallFilter { - fn contains(_call: &RuntimeCall) -> bool { - // This is safe, as we prevent arbitrary xcm-transact executions. - // For rationale, see:https://github.com/paritytech/polkadot/blob/19fdd197aff085f7f66e54942999fd536e7df475/runtime/kusama/src/xcm_config.rs#L171 - true - } -} - -parameter_types! { - pub const MaxAssetsIntoHolding: u32 = 64; -} - -pub struct XcmConfig; -impl xcm_executor::Config for XcmConfig { - type RuntimeCall = RuntimeCall; - type XcmSender = XcmRouter; - type AssetTransactor = CurrencyTransactor; - type OriginConverter = XcmOriginToTransactDispatchOrigin; - type IsReserve = NativeAsset; - type IsTeleporter = NativeAsset; // <- should be enough to allow teleportation of KSM - type Barrier = Barrier; - type Weigher = FixedWeightBounds; - // `FeesToTreasury` is an encointer adaptation - type Trader = - UsingComponents>; - type ResponseHandler = PolkadotXcm; - type AssetTrap = PolkadotXcm; - type AssetClaims = PolkadotXcm; - type SubscriptionService = PolkadotXcm; - type UniversalLocation = UniversalLocation; - type AssetLocker = (); - type AssetExchanger = (); - type PalletInstancesInfo = crate::AllPalletsWithSystem; - type FeeManager = (); - type MessageExporter = (); - type UniversalAliases = Nothing; - type SafeCallFilter = SafeCallFilter; - type MaxAssetsIntoHolding = MaxAssetsIntoHolding; - type CallDispatcher = RuntimeCall; - type Aliasers = Nothing; -} - -/// Converts a local signed origin into an XCM multilocation. -/// Forms the basis for local origins sending/executing XCMs. -pub type LocalOriginToLocation = SignedToAccountId32; - -/// The means for routing XCM messages which are not for local execution into the right message -/// queues. -pub type XcmRouter = ( - // Two routers - use UMP to communicate with the relay chain: - cumulus_primitives_utility::ParentAsUmp, - // ..and XCMP to communicate with the sibling chains. - XcmpQueue, -); - -#[cfg(feature = "runtime-benchmarks")] -parameter_types! { - pub ReachableDest: Option = Some(Parent.into()); -} - -impl pallet_xcm::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - // We want to disallow users sending (arbitrary) XCMs from this chain. - type SendXcmOrigin = EnsureXcmOrigin; - type XcmRouter = XcmRouter; - // We support local origins dispatching XCM executions in principle... - type ExecuteXcmOrigin = EnsureXcmOrigin; - // ... but disallow generic XCM execution. As a result only teleports and reserve transfers are allowed. - type XcmExecuteFilter = Nothing; - type XcmExecutor = XcmExecutor; - type XcmTeleportFilter = Everything; - type XcmReserveTransferFilter = Everything; - type Weigher = FixedWeightBounds; - type RuntimeOrigin = RuntimeOrigin; - type RuntimeCall = RuntimeCall; - const VERSION_DISCOVERY_QUEUE_SIZE: u32 = 100; - type AdvertisedXcmVersion = pallet_xcm::CurrentXcmVersion; - type Currency = Balances; - type CurrencyMatcher = (); - type TrustedLockers = (); - type SovereignAccountOf = LocationToAccountId; - type MaxLockers = ConstU32<8>; - type WeightInfo = pallet_xcm::TestWeightInfo; - type AdminOrigin = EnsureRoot; - #[cfg(feature = "runtime-benchmarks")] - type ReachableDest = ReachableDest; - type UniversalLocation = UniversalLocation; - type MaxRemoteLockConsumers = ConstU32<0>; - type RemoteLockConsumerIdentifier = (); -} - -impl cumulus_pallet_xcm::Config for Runtime { - type RuntimeEvent = RuntimeEvent; - type XcmExecutor = XcmExecutor; -} diff --git a/polkadot-parachains/runtime-common/Cargo.toml b/polkadot-parachains/runtime-common/Cargo.toml deleted file mode 100644 index 00ef636f..00000000 --- a/polkadot-parachains/runtime-common/Cargo.toml +++ /dev/null @@ -1,28 +0,0 @@ -[package] -name = "runtime-common" -version = "0.1.0" -edition = "2021" - -[dependencies] -smallvec = { workspace = true } - -kusama-runtime-constants = { workspace = true } -polkadot-core-primitives = { workspace = true } - -frame-support = { workspace = true } -frame-system = { workspace = true } -pallet-balances = { workspace = true } -pallet-treasury = { workspace = true } -sp-runtime = { workspace = true } - -[features] -default = ["std"] -std = [ - "kusama-runtime-constants/std", - "polkadot-core-primitives/std", - "sp-runtime/std", - "frame-support/std", - "frame-system/std", - "pallet-balances/std", - "pallet-treasury/std", -] diff --git a/polkadot-parachains/runtime-common/src/constants.rs b/polkadot-parachains/runtime-common/src/constants.rs deleted file mode 100644 index 47c89d1a..00000000 --- a/polkadot-parachains/runtime-common/src/constants.rs +++ /dev/null @@ -1,77 +0,0 @@ -// This file is part of Substrate. - -// Copyright (C) 2022 Parity Technologies (UK) Ltd. -// SPDX-License-Identifier: Apache-2.0 - -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -//! Copied from cumulus/parachains/runtimes/assets/statemine/constants - -pub mod currency { - use kusama_runtime_constants as constants; - use polkadot_core_primitives::Balance; - - /// The existential deposit. Set to 1/10 of its parent Relay Chain. - pub const EXISTENTIAL_DEPOSIT: Balance = constants::currency::EXISTENTIAL_DEPOSIT / 10; - - pub const UNITS: Balance = constants::currency::UNITS; - pub const CENTS: Balance = constants::currency::CENTS; - pub const GRAND: Balance = constants::currency::GRAND; - pub const MILLICENTS: Balance = constants::currency::MILLICENTS; - - pub const fn deposit(items: u32, bytes: u32) -> Balance { - // map to 1/10 of what the kusama relay chain charges (v9020) - constants::currency::deposit(items, bytes) / 10 - } -} - -/// Fee-related. -pub mod fee { - use frame_support::weights::{ - constants::ExtrinsicBaseWeight, WeightToFeeCoefficient, WeightToFeeCoefficients, - WeightToFeePolynomial, - }; - use polkadot_core_primitives::Balance; - use smallvec::smallvec; - pub use sp_runtime::Perbill; - - /// The block saturation level. Fees will be updates based on this value. - pub const TARGET_BLOCK_FULLNESS: Perbill = Perbill::from_percent(25); - - /// Handles converting a weight scalar to a fee value, based on the scale and granularity of the - /// node's balance type. - /// - /// This should typically create a mapping between the following ranges: - /// - [0, MAXIMUM_BLOCK_WEIGHT] - /// - [Balance::min, Balance::max] - /// - /// Yet, it can be used for any other sort of change to weight-fee. Some examples being: - /// - Setting it to `0` will essentially disable the weight fee. - /// - Setting it to `1` will cause the literal `#[weight = x]` values to be charged. - pub struct WeightToFee; - impl WeightToFeePolynomial for WeightToFee { - type Balance = Balance; - fn polynomial() -> WeightToFeeCoefficients { - // in Kusama, extrinsic base weight (smallest non-zero weight) is mapped to 1/10 CENT: - // in Statemine, we map to 1/10 of that, or 1/100 CENT - let p = super::currency::CENTS; - let q = 100 * Balance::from(ExtrinsicBaseWeight::get().ref_time()); - smallvec![WeightToFeeCoefficient { - degree: 1, - negative: false, - coeff_frac: Perbill::from_rational(p % q, q), - coeff_integer: p / q, - }] - } - } -} diff --git a/polkadot-parachains/runtime-common/src/deal_with_fees.rs b/polkadot-parachains/runtime-common/src/deal_with_fees.rs deleted file mode 100644 index e7b2b1c3..00000000 --- a/polkadot-parachains/runtime-common/src/deal_with_fees.rs +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright (c) 2019 Alain Brenzikofer -// This file is part of Encointer -// -// Encointer 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. -// -// Encointer 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 Encointer. If not, see . - -use frame_support::traits::{Currency, Imbalance, OnUnbalanced}; -use sp_runtime::sp_std::marker::PhantomData; - -/// Type alias to conveniently refer to the `Currency::NegativeImbalance` associated type. -pub type NegativeImbalance = as Currency< - ::AccountId, ->>::NegativeImbalance; - -/// Moves all the fees to the treasury. -/// -/// This does only handle the native currency. The community currencies are managed by the -/// `pallet-asset-tx-payment`. -pub struct FeesToTreasury(PhantomData); - -impl OnUnbalanced> for FeesToTreasury -where - Runtime: pallet_balances::Config + pallet_treasury::Config, -{ - fn on_unbalanceds(mut fees_then_tips: impl Iterator>) { - if let Some(mut fees) = fees_then_tips.next() { - // no burning, add all fees and tips to the treasury - - if let Some(tips) = fees_then_tips.next() { - tips.merge_into(&mut fees); - } - as OnUnbalanced<_>>::on_unbalanced(fees); - } - } -} diff --git a/polkadot-parachains/runtime-common/src/lib.rs b/polkadot-parachains/runtime-common/src/lib.rs deleted file mode 100644 index 47dc3984..00000000 --- a/polkadot-parachains/runtime-common/src/lib.rs +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) 2019 Alain Brenzikofer -// This file is part of Encointer -// -// Encointer 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. -// -// Encointer 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 Encointer. If not, see . - -//! Common definitions for runtimes. It contains both: definitions by encointer, and -//! definitions from the statemine runtime. - -#![cfg_attr(not(feature = "std"), no_std)] - -pub mod deal_with_fees; -pub mod weights; - -// copied from cumulus/parachains/runtimes/assets/statemine/constants -mod constants; -pub use constants::{currency, fee}; - -pub const MILLISECS_PER_BLOCK: u64 = 12000; -pub const SLOT_DURATION: u64 = MILLISECS_PER_BLOCK; diff --git a/polkadot-parachains/runtime-common/src/weights/block_weights.rs b/polkadot-parachains/runtime-common/src/weights/block_weights.rs deleted file mode 100644 index d2403e59..00000000 --- a/polkadot-parachains/runtime-common/src/weights/block_weights.rs +++ /dev/null @@ -1,54 +0,0 @@ -// This file is part of Substrate. - -// Copyright (C) 2022 Parity Technologies (UK) Ltd. -// SPDX-License-Identifier: Apache-2.0 - -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -//! Copied from cumulus/parachains/runtimes/assets/statemine/weights/block_weights - -pub mod constants { - use frame_support::{ - parameter_types, - weights::{constants, Weight}, - }; - - parameter_types! { - /// Importing a block with 0 Extrinsics. - pub const BlockExecutionWeight: Weight = Weight::from_parts(constants::WEIGHT_REF_TIME_PER_NANOS.saturating_mul(5_000_000), 0); - } - - #[cfg(test)] - mod test_weights { - use frame_support::weights::constants; - - /// Checks that the weight exists and is sane. - // NOTE: If this test fails but you are sure that the generated values are fine, - // you can delete it. - #[test] - fn sane() { - let w = super::constants::BlockExecutionWeight::get(); - - // At least 100 µs. - assert!( - w.ref_time() >= 100 * constants::WEIGHT_REF_TIME_PER_MICROS, - "Weight should be at least 100 µs." - ); - // At most 50 ms. - assert!( - w.ref_time() <= 50 * constants::WEIGHT_REF_TIME_PER_MILLIS, - "Weight should be at most 50 ms." - ); - } - } -} diff --git a/polkadot-parachains/runtime-common/src/weights/extrinsic_weights.rs b/polkadot-parachains/runtime-common/src/weights/extrinsic_weights.rs deleted file mode 100644 index 796d6245..00000000 --- a/polkadot-parachains/runtime-common/src/weights/extrinsic_weights.rs +++ /dev/null @@ -1,54 +0,0 @@ -// This file is part of Substrate. - -// Copyright (C) 2022 Parity Technologies (UK) Ltd. -// SPDX-License-Identifier: Apache-2.0 - -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -//! Copied from cumulus/parachains/runtimes/assets/statemine/weights/extrinsic_weights - -pub mod constants { - use frame_support::{ - parameter_types, - weights::{constants, Weight}, - }; - - parameter_types! { - /// Executing a NO-OP `System::remarks` Extrinsic. - pub const ExtrinsicBaseWeight: Weight = Weight::from_parts(constants::WEIGHT_REF_TIME_PER_NANOS.saturating_mul(125_000), 0); - } - - #[cfg(test)] - mod test_weights { - use frame_support::weights::constants; - - /// Checks that the weight exists and is sane. - // NOTE: If this test fails but you are sure that the generated values are fine, - // you can delete it. - #[test] - fn sane() { - let w = super::constants::ExtrinsicBaseWeight::get(); - - // At least 10 µs. - assert!( - w.ref_time() >= 10 * constants::WEIGHT_REF_TIME_PER_MICROS, - "Weight should be at least 10 µs." - ); - // At most 1 ms. - assert!( - w.ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS, - "Weight should be at most 1 ms." - ); - } - } -} diff --git a/polkadot-parachains/runtime-common/src/weights/mod.rs b/polkadot-parachains/runtime-common/src/weights/mod.rs deleted file mode 100644 index 9fba1259..00000000 --- a/polkadot-parachains/runtime-common/src/weights/mod.rs +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (c) 2019 Alain Brenzikofer -// This file is part of Encointer -// -// Encointer 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. -// -// Encointer 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 Encointer. If not, see . - -pub mod block_weights; -pub mod extrinsic_weights; -pub mod paritydb_weights; -pub mod rocksdb_weights; - -pub use block_weights::constants::BlockExecutionWeight; -pub use extrinsic_weights::constants::ExtrinsicBaseWeight; -pub use paritydb_weights::constants::ParityDbWeight; -pub use rocksdb_weights::constants::RocksDbWeight; diff --git a/polkadot-parachains/runtime-common/src/weights/paritydb_weights.rs b/polkadot-parachains/runtime-common/src/weights/paritydb_weights.rs deleted file mode 100644 index a1817047..00000000 --- a/polkadot-parachains/runtime-common/src/weights/paritydb_weights.rs +++ /dev/null @@ -1,65 +0,0 @@ -// This file is part of Substrate. - -// Copyright (C) 2022 Parity Technologies (UK) Ltd. -// SPDX-License-Identifier: Apache-2.0 - -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -//! Copied from cumulus/parachains/runtimes/assets/statemine/weights/paritydb_weights - -pub mod constants { - use frame_support::{ - parameter_types, - weights::{constants, RuntimeDbWeight}, - }; - - parameter_types! { - /// `ParityDB` can be enabled with a feature flag, but is still experimental. These weights - /// are available for brave runtime engineers who may want to try this out as default. - pub const ParityDbWeight: RuntimeDbWeight = RuntimeDbWeight { - read: 8_000 * constants::WEIGHT_REF_TIME_PER_NANOS, - write: 50_000 * constants::WEIGHT_REF_TIME_PER_NANOS, - }; - } - - #[cfg(test)] - mod test_db_weights { - use super::constants::ParityDbWeight as W; - use frame_support::weights::constants; - - /// Checks that all weights exist and have sane values. - // NOTE: If this test fails but you are sure that the generated values are fine, - // you can delete it. - #[test] - fn sane() { - // At least 1 µs. - assert!( - W::get().reads(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS, - "Read weight should be at least 1 µs." - ); - assert!( - W::get().writes(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS, - "Write weight should be at least 1 µs." - ); - // At most 1 ms. - assert!( - W::get().reads(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS, - "Read weight should be at most 1 ms." - ); - assert!( - W::get().writes(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS, - "Write weight should be at most 1 ms." - ); - } - } -} diff --git a/polkadot-parachains/runtime-common/src/weights/rocksdb_weights.rs b/polkadot-parachains/runtime-common/src/weights/rocksdb_weights.rs deleted file mode 100644 index ee1a0618..00000000 --- a/polkadot-parachains/runtime-common/src/weights/rocksdb_weights.rs +++ /dev/null @@ -1,65 +0,0 @@ -// This file is part of Substrate. - -// Copyright (C) 2022 Parity Technologies (UK) Ltd. -// SPDX-License-Identifier: Apache-2.0 - -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -//! Copied from cumulus/parachains/runtimes/assets/statemine/weights/rocksdb_weights - -pub mod constants { - use frame_support::{ - parameter_types, - weights::{constants, RuntimeDbWeight}, - }; - - parameter_types! { - /// By default, Substrate uses `RocksDB`, so this will be the weight used throughout - /// the runtime. - pub const RocksDbWeight: RuntimeDbWeight = RuntimeDbWeight { - read: 25_000 * constants::WEIGHT_REF_TIME_PER_NANOS, - write: 100_000 * constants::WEIGHT_REF_TIME_PER_NANOS, - }; - } - - #[cfg(test)] - mod test_db_weights { - use super::constants::RocksDbWeight as W; - use frame_support::weights::constants; - - /// Checks that all weights exist and have sane values. - // NOTE: If this test fails but you are sure that the generated values are fine, - // you can delete it. - #[test] - fn sane() { - // At least 1 µs. - assert!( - W::get().reads(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS, - "Read weight should be at least 1 µs." - ); - assert!( - W::get().writes(1).ref_time() >= constants::WEIGHT_REF_TIME_PER_MICROS, - "Write weight should be at least 1 µs." - ); - // At most 1 ms. - assert!( - W::get().reads(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS, - "Read weight should be at most 1 ms." - ); - assert!( - W::get().writes(1).ref_time() <= constants::WEIGHT_REF_TIME_PER_MILLIS, - "Write weight should be at most 1 ms." - ); - } - } -} diff --git a/polkadot-parachains/src/chain_spec.rs b/polkadot-parachains/src/chain_spec.rs deleted file mode 100644 index d171bf43..00000000 --- a/polkadot-parachains/src/chain_spec.rs +++ /dev/null @@ -1,309 +0,0 @@ -// Copyright 2019-2021 Parity Technologies (UK) Ltd. -// This file is part of Cumulus. - -// Cumulus 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. - -// Cumulus 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 Cumulus. If not, see . - -use cumulus_primitives_core::ParaId; -use parachain_runtime::{BalanceType, CeremonyPhaseType}; -use parachains_common::{AccountId, AuraId}; -use sc_chain_spec::{ChainSpecExtension, ChainSpecGroup}; -use sc_service::{ChainType, GenericChainSpec}; -use serde::{Deserialize, Serialize}; - -pub use crate::chain_spec_helpers::{ - public_from_ss58, rococo_properties, EncointerKeys, GenesisKeys, RelayChain, WellKnownKeys, -}; - -/// Specialized `ChainSpec` for the normal parachain runtime. -pub type EncointerChainSpec = GenericChainSpec; - -/// Specialized `ChainSpec` for the launch parachain runtime. -pub type LaunchChainSpec = GenericChainSpec; - -pub const ENDOWED_FUNDING: u128 = 1 << 60; - -/// Configure `endowed_accounts` with initial balance of `ENDOWED_FUNDING`. -pub fn allocate_endowance(endowed_accounts: Vec) -> Vec<(AccountId, u128)> { - endowed_accounts.into_iter().map(|k| (k, ENDOWED_FUNDING)).collect() -} - -/// The default XCM version to set in genesis config. -const SAFE_XCM_VERSION: u32 = xcm::prelude::XCM_VERSION; - -/// The extensions for the [`ChainSpec`]. -#[derive(Debug, Clone, PartialEq, Serialize, Deserialize, ChainSpecGroup, ChainSpecExtension)] -#[serde(deny_unknown_fields)] -pub struct Extensions { - /// The relay chain of the Parachain. - pub relay_chain: String, - /// The id of the Parachain. - pub para_id: u32, -} - -impl Extensions { - /// Try to get the extension from the given `ChainSpec`. - pub fn try_get(chain_spec: &dyn sc_service::ChainSpec) -> Option<&Self> { - sc_chain_spec::get_extension(chain_spec.extensions()) - } -} - -/// Chain-spec for the encointer runtime -pub fn encointer_spec( - id: ParaId, - genesis_keys: GenesisKeys, - relay_chain: RelayChain, -) -> EncointerChainSpec { - let (council, endowed, authorities) = match genesis_keys { - GenesisKeys::Encointer => - (EncointerKeys::council(), [].to_vec(), EncointerKeys::authorities()), - GenesisKeys::EncointerWithCouncilEndowed => - (EncointerKeys::council(), EncointerKeys::council(), EncointerKeys::authorities()), - GenesisKeys::WellKnown => - (WellKnownKeys::council(), WellKnownKeys::endowed(), WellKnownKeys::authorities()), - }; - - chain_spec( - "Encointer Network", - move || { - encointer_genesis( - council.clone(), - authorities.clone(), - allocate_endowance(endowed.clone()), - id, - ) - }, - relay_chain.chain_type(), - id, - &relay_chain, - ) -} - -/// Chain-spec for the launch runtime -pub fn launch_spec( - id: ParaId, - genesis_keys: GenesisKeys, - relay_chain: RelayChain, -) -> LaunchChainSpec { - let (council, endowed, authorities) = match genesis_keys { - GenesisKeys::Encointer => - (EncointerKeys::council(), [].to_vec(), EncointerKeys::authorities()), - GenesisKeys::EncointerWithCouncilEndowed => - (EncointerKeys::council(), EncointerKeys::council(), EncointerKeys::authorities()), - GenesisKeys::WellKnown => - (WellKnownKeys::council(), WellKnownKeys::endowed(), WellKnownKeys::authorities()), - }; - - chain_spec( - "Encointer Launch", - move || { - launch_genesis( - council.clone(), - authorities.clone(), - allocate_endowance(endowed.clone()), - id, - ) - }, - relay_chain.chain_type(), - id, - &relay_chain, - ) -} - -/// decorates the given `testnet_constructor` with metadata. -/// -/// Intended to remove redundant code when defining encointer-launch-runtime and -/// encointer-parachain-runtime chain-specs. -fn chain_spec RuntimeGenesisConfig + 'static + Send + Sync, RuntimeGenesisConfig>( - chain_name: &str, - testnet_constructor: F, - chain_type: ChainType, - para_id: ParaId, - relay_chain: &RelayChain, -) -> GenericChainSpec { - GenericChainSpec::::from_genesis( - chain_name, - &format!("encointer-{}", relay_chain.to_string()), - chain_type, - testnet_constructor, - Vec::new(), - // telemetry endpoints - None, - // protocol id - Some(&format!("nctr-{}", relay_chain.to_string().chars().next().unwrap())), - // properties - None, - Some(relay_chain.properties()), - Extensions { relay_chain: relay_chain.to_string(), para_id: para_id.into() }, - ) -} - -pub fn sybil_dummy_spec(id: ParaId, relay_chain: RelayChain) -> EncointerChainSpec { - let (council, endowed, authorities) = - (WellKnownKeys::council(), WellKnownKeys::endowed(), WellKnownKeys::authorities()); - - EncointerChainSpec::from_genesis( - "Sybil Dummy", - "sybil-dummy-rococo-v1", - relay_chain.chain_type(), - move || { - encointer_genesis( - council.clone(), - authorities.clone(), - allocate_endowance(endowed.clone()), - id, - ) - }, - Vec::new(), - // telemetry endpoints - None, - // protocol id - None, - None, - // properties - Some( - serde_json::from_str( - r#"{ - "ss58Format": 2, - "tokenDecimals": 12, - "tokenSymbol": "DUM" - }"#, - ) - .unwrap(), - ), - Extensions { relay_chain: relay_chain.to_string(), para_id: id.into() }, - ) -} - -fn encointer_genesis( - encointer_council: Vec, - initial_authorities: Vec, - endowance_allocation: Vec<(AccountId, u128)>, - id: ParaId, -) -> parachain_runtime::RuntimeGenesisConfig { - parachain_runtime::RuntimeGenesisConfig { - system: parachain_runtime::SystemConfig { - code: parachain_runtime::WASM_BINARY - .expect("WASM binary was not build, please build it!") - .to_vec(), - _config: Default::default(), - }, - parachain_system: Default::default(), - balances: parachain_runtime::BalancesConfig { balances: endowance_allocation }, - parachain_info: parachain_runtime::ParachainInfoConfig { - parachain_id: id, - ..Default::default() - }, - aura: parachain_runtime::AuraConfig { - authorities: initial_authorities, - ..Default::default() - }, - aura_ext: Default::default(), - polkadot_xcm: parachain_runtime::PolkadotXcmConfig { - safe_xcm_version: Some(SAFE_XCM_VERSION), - _config: Default::default(), - }, - treasury: Default::default(), - collective: Default::default(), - membership: parachain_runtime::MembershipConfig { - members: encointer_council.try_into().expect("Council below council max members; qed."), - phantom: Default::default(), - }, - encointer_scheduler: parachain_runtime::EncointerSchedulerConfig { - current_phase: CeremonyPhaseType::Registering, - current_ceremony_index: 1, - phase_durations: vec![ - (CeremonyPhaseType::Registering, 604800000), // 7d - (CeremonyPhaseType::Assigning, 86400000), // 1d - (CeremonyPhaseType::Attesting, 172800000), // 2d - ], - _config: Default::default(), - }, - encointer_ceremonies: parachain_runtime::EncointerCeremoniesConfig { - ceremony_reward: BalanceType::from_num(1), - time_tolerance: 600_000, // +-10min - location_tolerance: 1_000, // [m] - endorsement_tickets_per_bootstrapper: 10, - endorsement_tickets_per_reputable: 5, - reputation_lifetime: 5, - inactivity_timeout: 5, // idle ceremonies before purging community - meetup_time_offset: 0, - _config: Default::default(), - }, - encointer_communities: parachain_runtime::EncointerCommunitiesConfig { - min_solar_trip_time_s: 1, // [s] - max_speed_mps: 1, // [m/s] suggested would be 83m/s for security, - _config: Default::default(), - }, - encointer_balances: parachain_runtime::EncointerBalancesConfig { - // for relative adjustment. - // 100_000 translates 5uKSM to 0.01 CC if ceremony reward is 20 CC - // lower values lead to lower fees in CC proportionally - fee_conversion_factor: 100_000, - _config: Default::default(), - }, - encointer_faucet: parachain_runtime::EncointerFaucetConfig { - reserve_amount: 10_000_000_000_000, - _config: Default::default(), - }, - } -} - -fn launch_genesis( - encointer_council: Vec, - initial_authorities: Vec, - endowance_allocation: Vec<(AccountId, u128)>, - id: ParaId, -) -> launch_runtime::RuntimeGenesisConfig { - launch_runtime::RuntimeGenesisConfig { - system: launch_runtime::SystemConfig { - code: launch_runtime::WASM_BINARY - .expect("WASM binary was not build, please build it!") - .to_vec(), - _config: Default::default(), - }, - parachain_system: Default::default(), - balances: launch_runtime::BalancesConfig { balances: endowance_allocation }, - parachain_info: launch_runtime::ParachainInfoConfig { - parachain_id: id, - _config: Default::default(), - }, - aura: launch_runtime::AuraConfig { authorities: initial_authorities }, - aura_ext: Default::default(), - polkadot_xcm: launch_runtime::PolkadotXcmConfig { - safe_xcm_version: Some(SAFE_XCM_VERSION), - _config: Default::default(), - }, - treasury: Default::default(), - collective: Default::default(), - membership: launch_runtime::MembershipConfig { - members: encointer_council.try_into().expect("Council below council max members; qed."), - phantom: Default::default(), - }, - } -} - -/// hard-coded launch-runtime config for rococo -pub fn launch_rococo() -> Result { - LaunchChainSpec::from_json_bytes(&include_bytes!("../res/encointer-rococo.json")[..]) -} - -/// hard-coded launch-runtime config for kusama -pub fn launch_kusama() -> Result { - LaunchChainSpec::from_json_bytes(&include_bytes!("../res/encointer-kusama.json")[..]) -} - -/// hard-coded launch-runtime config for westend -pub fn launch_westend() -> Result { - LaunchChainSpec::from_json_bytes(&include_bytes!("../res/encointer-westend.json")[..]) -} diff --git a/polkadot-parachains/src/main.rs b/polkadot-parachains/src/main.rs deleted file mode 100644 index 70a9aa56..00000000 --- a/polkadot-parachains/src/main.rs +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2019-2021 Parity Technologies (UK) Ltd. -// This file is part of Cumulus. - -// Cumulus 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. - -// Cumulus 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 Cumulus. If not, see . - -//! Cumulus test parachain collator - -#![warn(missing_docs)] -#![warn(unused_extern_crates)] - -mod chain_spec; -mod chain_spec_helpers; -#[macro_use] -mod service; -mod cli; -mod command; -mod rpc; - -fn main() -> sc_cli::Result<()> { - command::run() -} diff --git a/polkadot-parachains/src/service.rs b/polkadot-parachains/src/service.rs deleted file mode 100644 index cecd6488..00000000 --- a/polkadot-parachains/src/service.rs +++ /dev/null @@ -1,732 +0,0 @@ -// Copyright 2019-2021 Parity Technologies (UK) Ltd. -// This file is part of Cumulus. - -// Cumulus 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. - -// Cumulus 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 Cumulus. If not, see . -use cumulus_client_cli::CollatorOptions; -use cumulus_client_collator::service::CollatorService; -use cumulus_client_consensus_aura::collators::basic::{ - self as basic_aura, Params as BasicAuraParams, -}; -use cumulus_client_consensus_common::{ - ParachainBlockImport as TParachainBlockImport, ParachainCandidate, ParachainConsensus, -}; -use cumulus_client_consensus_proposer::Proposer; -use cumulus_client_service::{ - build_network, build_relay_chain_interface, prepare_node_config, start_relay_chain_tasks, - BuildNetworkParams, CollatorSybilResistance, DARecoveryProfile, StartRelayChainTasksParams, -}; -use cumulus_primitives_core::{relay_chain::v2::Hash as PHash, ParaId, PersistedValidationData}; -use cumulus_relay_chain_interface::{OverseerHandle, RelayChainInterface}; -use parity_scale_codec::Codec; -use sc_consensus::ImportQueue; -use sp_core::Pair; - -use jsonrpsee::RpcModule; - -use crate::rpc; -pub use parachains_common::{AccountId, Balance, Block, BlockNumber, Hash, Header, Nonce}; - -use cumulus_client_consensus_relay_chain::Verifier as RelayChainVerifier; -use futures::lock::Mutex; -use polkadot_primitives::CollatorPair; -use sc_consensus::{ - import_queue::{BasicQueue, Verifier as VerifierT}, - BlockImportParams, -}; -use sc_executor::{HeapAllocStrategy, WasmExecutor, DEFAULT_HEAP_ALLOC_STRATEGY}; -use sc_network::{config::FullNetworkConfiguration, NetworkBlock}; -use sc_network_sync::SyncingService; -use sc_service::{Configuration, PartialComponents, TFullBackend, TFullClient, TaskManager}; -use sc_telemetry::{Telemetry, TelemetryHandle, TelemetryWorker, TelemetryWorkerHandle}; -use sp_api::{ApiExt, ConstructRuntimeApi}; -use sp_consensus_aura::AuraApi; -use sp_keystore::KeystorePtr; -use sp_runtime::{app_crypto::AppCrypto, traits::Header as HeaderT}; -use std::{marker::PhantomData, sync::Arc, time::Duration}; -use substrate_prometheus_endpoint::Registry; - -#[cfg(not(feature = "runtime-benchmarks"))] -type HostFunctions = sp_io::SubstrateHostFunctions; - -#[cfg(feature = "runtime-benchmarks")] -type HostFunctions = - (sp_io::SubstrateHostFunctions, frame_benchmarking::benchmarking::HostFunctions); - -type ParachainClient = TFullClient>; - -type ParachainBackend = TFullBackend; - -type ParachainBlockImport = - TParachainBlockImport>, ParachainBackend>; - -/// Native executor instance. -pub struct EncointerParachainRuntimeExecutor; - -impl sc_executor::NativeExecutionDispatch for EncointerParachainRuntimeExecutor { - type ExtendHostFunctions = frame_benchmarking::benchmarking::HostFunctions; - - fn dispatch(method: &str, data: &[u8]) -> Option> { - parachain_runtime::api::dispatch(method, data) - } - - fn native_version() -> sc_executor::NativeVersion { - parachain_runtime::native_version() - } -} - -/// Native executor instance. -pub struct LaunchParachainRuntimeExecutor; - -impl sc_executor::NativeExecutionDispatch for LaunchParachainRuntimeExecutor { - type ExtendHostFunctions = frame_benchmarking::benchmarking::HostFunctions; - - fn dispatch(method: &str, data: &[u8]) -> Option> { - launch_runtime::api::dispatch(method, data) - } - - fn native_version() -> sc_executor::NativeVersion { - launch_runtime::native_version() - } -} - -/// Starts a `ServiceBuilder` for a full service. -/// -/// Use this macro if you don't actually need the full service, but just the builder in order to -/// be able to perform chain operations. -pub fn new_partial( - config: &Configuration, - build_import_queue: BIQ, -) -> Result< - PartialComponents< - ParachainClient, - ParachainBackend, - (), - sc_consensus::DefaultImportQueue, - sc_transaction_pool::FullPool>, - (ParachainBlockImport, Option, Option), - >, - sc_service::Error, -> -where - RuntimeApi: ConstructRuntimeApi> + Send + Sync + 'static, - RuntimeApi::RuntimeApi: sp_transaction_pool::runtime_api::TaggedTransactionQueue - + sp_api::Metadata - + sp_session::SessionKeys - + sp_api::ApiExt - + sp_offchain::OffchainWorkerApi - + sp_block_builder::BlockBuilder, - BIQ: FnOnce( - Arc>, - ParachainBlockImport, - &Configuration, - Option, - &TaskManager, - ) -> Result, sc_service::Error>, -{ - let telemetry = config - .telemetry_endpoints - .clone() - .filter(|x| !x.is_empty()) - .map(|endpoints| -> Result<_, sc_telemetry::Error> { - let worker = TelemetryWorker::new(16)?; - let telemetry = worker.handle().new_telemetry(endpoints); - Ok((worker, telemetry)) - }) - .transpose()?; - - let heap_pages = config - .default_heap_pages - .map_or(DEFAULT_HEAP_ALLOC_STRATEGY, |h| HeapAllocStrategy::Static { extra_pages: h as _ }); - - let executor = sc_executor::WasmExecutor::::builder() - .with_execution_method(config.wasm_method) - .with_max_runtime_instances(config.max_runtime_instances) - .with_runtime_cache_size(config.runtime_cache_size) - .with_onchain_heap_alloc_strategy(heap_pages) - .with_offchain_heap_alloc_strategy(heap_pages) - .build(); - - let (client, backend, keystore_container, task_manager) = - sc_service::new_full_parts::( - config, - telemetry.as_ref().map(|(_, telemetry)| telemetry.handle()), - executor, - )?; - let client = Arc::new(client); - - let telemetry_worker_handle = telemetry.as_ref().map(|(worker, _)| worker.handle()); - - let telemetry = telemetry.map(|(worker, telemetry)| { - task_manager.spawn_handle().spawn("telemetry", None, worker.run()); - telemetry - }); - - let transaction_pool = sc_transaction_pool::BasicPool::new_full( - config.transaction_pool.clone(), - config.role.is_authority().into(), - config.prometheus_registry(), - task_manager.spawn_essential_handle(), - client.clone(), - ); - - let block_import = ParachainBlockImport::new(client.clone(), backend.clone()); - - let import_queue = build_import_queue( - client.clone(), - block_import.clone(), - config, - telemetry.as_ref().map(|telemetry| telemetry.handle()), - &task_manager, - )?; - - Ok(PartialComponents { - backend, - client, - import_queue, - keystore_container, - task_manager, - transaction_pool, - select_chain: (), - other: (block_import, telemetry, telemetry_worker_handle), - }) -} - -/// Start a node with the given parachain `Configuration` and relay chain `Configuration`. -/// -/// This is the actual implementation that is abstract over the executor and the runtime api. -#[sc_tracing::logging::prefix_logs_with("Parachain")] -async fn start_node_impl( - parachain_config: Configuration, - polkadot_config: Configuration, - collator_options: CollatorOptions, - sybil_resistance_level: CollatorSybilResistance, - para_id: ParaId, - rpc_ext_builder: RB, - build_import_queue: BIQ, - start_consensus: SC, - hwbench: Option, -) -> sc_service::error::Result<(TaskManager, Arc>)> -where - RuntimeApi: ConstructRuntimeApi> + Send + Sync + 'static, - RuntimeApi::RuntimeApi: sp_transaction_pool::runtime_api::TaggedTransactionQueue - + sp_api::Metadata - + sp_session::SessionKeys - + sp_api::ApiExt - + sp_offchain::OffchainWorkerApi - + sp_block_builder::BlockBuilder - + cumulus_primitives_core::CollectCollationInfo - + pallet_transaction_payment_rpc::TransactionPaymentRuntimeApi - + frame_rpc_system::AccountNonceApi, - RB: Fn( - crate::rpc::FullDeps< - TFullClient>, - sc_transaction_pool::FullPool< - Block, - TFullClient>, - >, - TFullBackend, - >, - ) -> Result, sc_service::Error> - + Send - + 'static, - BIQ: FnOnce( - Arc>, - ParachainBlockImport, - &Configuration, - Option, - &TaskManager, - ) -> Result, sc_service::Error>, - SC: FnOnce( - Arc>, - ParachainBlockImport, - Option<&Registry>, - Option, - &TaskManager, - Arc, - Arc>>, - Arc>, - KeystorePtr, - Duration, - ParaId, - CollatorPair, - OverseerHandle, - Arc>) + Send + Sync>, - ) -> Result<(), sc_service::Error>, -{ - let parachain_config = prepare_node_config(parachain_config); - - let params = new_partial::(¶chain_config, build_import_queue)?; - let (block_import, mut telemetry, telemetry_worker_handle) = params.other; - - let client = params.client.clone(); - let backend = params.backend.clone(); - - let mut task_manager = params.task_manager; - let (relay_chain_interface, collator_key) = build_relay_chain_interface( - polkadot_config, - ¶chain_config, - telemetry_worker_handle, - &mut task_manager, - collator_options.clone(), - hwbench.clone(), - ) - .await - .map_err(|e| sc_service::Error::Application(Box::new(e) as Box<_>))?; - - let validator = parachain_config.role.is_authority(); - let prometheus_registry = parachain_config.prometheus_registry().cloned(); - let transaction_pool = params.transaction_pool.clone(); - let import_queue_service = params.import_queue.service(); - let net_config = FullNetworkConfiguration::new(¶chain_config.network); - - let (network, system_rpc_tx, tx_handler_controller, start_network, sync_service) = - build_network(BuildNetworkParams { - parachain_config: ¶chain_config, - net_config, - client: client.clone(), - transaction_pool: transaction_pool.clone(), - para_id, - spawn_handle: task_manager.spawn_handle(), - relay_chain_interface: relay_chain_interface.clone(), - import_queue: params.import_queue, - sybil_resistance_level, - }) - .await?; - - let rpc_builder = { - let client = client.clone(); - let transaction_pool = transaction_pool.clone(); - let backend = backend.clone(); - let offchain_indexing_enabled = parachain_config.offchain_worker.indexing_enabled; - - // `backend` and offchain_indexing_enabled` are encointer customizations. - Box::new(move |deny_unsafe, _| { - let deps = rpc::FullDeps { - client: client.clone(), - pool: transaction_pool.clone(), - backend: backend.clone(), - offchain_indexing_enabled, - deny_unsafe, - }; - rpc_ext_builder(deps) - }) - }; - sc_service::spawn_tasks(sc_service::SpawnTasksParams { - rpc_builder, - client: client.clone(), - transaction_pool: transaction_pool.clone(), - task_manager: &mut task_manager, - config: parachain_config, - keystore: params.keystore_container.keystore(), - backend: backend.clone(), - network: network.clone(), - sync_service: sync_service.clone(), - system_rpc_tx, - tx_handler_controller, - telemetry: telemetry.as_mut(), - })?; - - if let Some(hwbench) = hwbench { - sc_sysinfo::print_hwbench(&hwbench); - if validator { - warn_if_slow_hardware(&hwbench); - } - - if let Some(ref mut telemetry) = telemetry { - let telemetry_handle = telemetry.handle(); - task_manager.spawn_handle().spawn( - "telemetry_hwbench", - None, - sc_sysinfo::initialize_hwbench_telemetry(telemetry_handle, hwbench), - ); - } - } - - let announce_block = { - let sync_service = sync_service.clone(); - Arc::new(move |hash, data| sync_service.announce_block(hash, data)) - }; - - let relay_chain_slot_duration = Duration::from_secs(6); - - let overseer_handle = relay_chain_interface - .overseer_handle() - .map_err(|e| sc_service::Error::Application(Box::new(e)))?; - - start_relay_chain_tasks(StartRelayChainTasksParams { - client: client.clone(), - announce_block: announce_block.clone(), - para_id, - relay_chain_interface: relay_chain_interface.clone(), - task_manager: &mut task_manager, - da_recovery_profile: if validator { - DARecoveryProfile::Collator - } else { - DARecoveryProfile::FullNode - }, - import_queue: import_queue_service, - relay_chain_slot_duration, - recovery_handle: Box::new(overseer_handle.clone()), - sync_service: sync_service.clone(), - })?; - - if validator { - start_consensus( - client.clone(), - block_import, - prometheus_registry.as_ref(), - telemetry.as_ref().map(|t| t.handle()), - &task_manager, - relay_chain_interface.clone(), - transaction_pool, - sync_service.clone(), - params.keystore_container.keystore(), - relay_chain_slot_duration, - para_id, - collator_key.expect("Command line arguments do not allow this. qed"), - overseer_handle, - announce_block, - )?; - } - - start_network.start_network(); - - Ok((task_manager, client)) -} - -enum BuildOnAccess { - Uninitialized(Option R + Send + Sync>>), - Initialized(R), -} - -impl BuildOnAccess { - fn get_mut(&mut self) -> &mut R { - loop { - match self { - Self::Uninitialized(f) => { - *self = Self::Initialized((f.take().unwrap())()); - }, - Self::Initialized(ref mut r) => return r, - } - } - } -} - -/// Special [`ParachainConsensus`] implementation that waits for the upgrade from -/// shell to a parachain runtime that implements Aura. -struct WaitForAuraConsensus { - client: Arc, - aura_consensus: Arc>>>>, - relay_chain_consensus: Arc>>>, - _phantom: PhantomData, -} - -impl Clone for WaitForAuraConsensus { - fn clone(&self) -> Self { - Self { - client: self.client.clone(), - aura_consensus: self.aura_consensus.clone(), - relay_chain_consensus: self.relay_chain_consensus.clone(), - _phantom: PhantomData, - } - } -} - -#[async_trait::async_trait] -impl ParachainConsensus for WaitForAuraConsensus -where - Client: sp_api::ProvideRuntimeApi + Send + Sync, - Client::Api: AuraApi, - AuraId: Send + Codec + Sync, -{ - async fn produce_candidate( - &mut self, - parent: &Header, - relay_parent: PHash, - validation_data: &PersistedValidationData, - ) -> Option> { - if self - .client - .runtime_api() - .has_api::>(parent.hash()) - .unwrap_or(false) - { - self.aura_consensus - .lock() - .await - .get_mut() - .produce_candidate(parent, relay_parent, validation_data) - .await - } else { - self.relay_chain_consensus - .lock() - .await - .produce_candidate(parent, relay_parent, validation_data) - .await - } - } -} - -struct Verifier { - client: Arc, - aura_verifier: BuildOnAccess>>, - relay_chain_verifier: Box>, - _phantom: PhantomData, -} - -#[async_trait::async_trait] -impl VerifierT for Verifier -where - Client: sp_api::ProvideRuntimeApi + Send + Sync, - Client::Api: AuraApi, - AuraId: Send + Sync + Codec, -{ - async fn verify( - &mut self, - block_import: BlockImportParams, - ) -> Result, String> { - if self - .client - .runtime_api() - .has_api::>(*block_import.header.parent_hash()) - .unwrap_or(false) - { - self.aura_verifier.get_mut().verify(block_import).await - } else { - self.relay_chain_verifier.verify(block_import).await - } - } -} - -/// Build the import queue for Aura-based runtimes. -pub fn aura_build_import_queue( - client: Arc>, - block_import: ParachainBlockImport, - config: &Configuration, - telemetry_handle: Option, - task_manager: &TaskManager, -) -> Result, sc_service::Error> -where - RuntimeApi: ConstructRuntimeApi> + Send + Sync + 'static, - RuntimeApi::RuntimeApi: sp_transaction_pool::runtime_api::TaggedTransactionQueue - + sp_api::Metadata - + sp_session::SessionKeys - + sp_api::ApiExt - + sp_offchain::OffchainWorkerApi - + sp_block_builder::BlockBuilder - + sp_consensus_aura::AuraApi::Pair as Pair>::Public>, - <::Pair as Pair>::Signature: - TryFrom> + std::hash::Hash + sp_runtime::traits::Member + Codec, -{ - let client2 = client.clone(); - - let aura_verifier = move || { - let slot_duration = cumulus_client_consensus_aura::slot_duration(&*client2).unwrap(); - - Box::new(cumulus_client_consensus_aura::build_verifier::< - ::Pair, - _, - _, - _, - >(cumulus_client_consensus_aura::BuildVerifierParams { - client: client2.clone(), - create_inherent_data_providers: move |_, _| async move { - let timestamp = sp_timestamp::InherentDataProvider::from_system_time(); - - let slot = - sp_consensus_aura::inherents::InherentDataProvider::from_timestamp_and_slot_duration( - *timestamp, - slot_duration, - ); - - Ok((slot, timestamp)) - }, - telemetry: telemetry_handle, - })) as Box<_> - }; - - let relay_chain_verifier = - Box::new(RelayChainVerifier::new(client.clone(), |_, _| async { Ok(()) })) as Box<_>; - - let verifier = Verifier { - client, - relay_chain_verifier, - aura_verifier: BuildOnAccess::Uninitialized(Some(Box::new(aura_verifier))), - _phantom: PhantomData, - }; - - let registry = config.prometheus_registry(); - let spawner = task_manager.spawn_essential_handle(); - - Ok(BasicQueue::new(verifier, Box::new(block_import), None, &spawner, registry)) -} - -/// Generic implementation introduced by encointer. -/// -/// The trait bounds of the generic parameters are copied from the above `start_node_impl` except -/// for the one mentioned below. -pub async fn start_parachain_node( - parachain_config: Configuration, - polkadot_config: Configuration, - collator_options: CollatorOptions, - para_id: ParaId, - rpc_extension_builder: RpcBuilder, // passing the rpc_extension_builder is encointer-specific - hwbench: Option, -) -> sc_service::error::Result<(TaskManager, Arc>)> -where - RuntimeApi: ConstructRuntimeApi> + Send + Sync + 'static, - RuntimeApi::RuntimeApi: sp_transaction_pool::runtime_api::TaggedTransactionQueue - + sp_api::Metadata - + sp_session::SessionKeys - + sp_api::ApiExt - + sp_offchain::OffchainWorkerApi - + sp_block_builder::BlockBuilder - + cumulus_primitives_core::CollectCollationInfo - + sp_consensus_aura::AuraApi::Pair as Pair>::Public> - + pallet_transaction_payment_rpc::TransactionPaymentRuntimeApi - + frame_rpc_system::AccountNonceApi, - <::Pair as Pair>::Signature: - TryFrom> + std::hash::Hash + sp_runtime::traits::Member + Codec, - RpcBuilder: Fn( - crate::rpc::FullDeps< - TFullClient>, - sc_transaction_pool::FullPool< - Block, - TFullClient>, - >, - TFullBackend, - >, - ) -> Result - + Send - + 'static, -{ - start_node_impl::( - parachain_config, - polkadot_config, - collator_options, - CollatorSybilResistance::Resistant, // Aura - para_id, - rpc_extension_builder, - aura_build_import_queue::<_, AuraId>, - |client, - block_import, - prometheus_registry, - telemetry, - task_manager, - relay_chain_interface, - transaction_pool, - sync_oracle, - keystore, - relay_chain_slot_duration, - para_id, - collator_key, - overseer_handle, - announce_block| { - let slot_duration = cumulus_client_consensus_aura::slot_duration(&*client)?; - - let proposer_factory = sc_basic_authorship::ProposerFactory::with_proof_recording( - task_manager.spawn_handle(), - client.clone(), - transaction_pool, - prometheus_registry, - telemetry.clone(), - ); - let proposer = Proposer::new(proposer_factory); - - let collator_service = CollatorService::new( - client.clone(), - Arc::new(task_manager.spawn_handle()), - announce_block, - client.clone(), - ); - - let params = BasicAuraParams { - create_inherent_data_providers: move |_, ()| async move { Ok(()) }, - block_import, - para_client: client, - relay_client: relay_chain_interface, - sync_oracle, - keystore, - collator_key, - para_id, - overseer_handle, - slot_duration, - relay_chain_slot_duration, - proposer, - collator_service, - // Very limited proposal time. - authoring_duration: Duration::from_millis(500), - }; - - let fut = - basic_aura::run::::Pair, _, _, _, _, _, _, _>(params); - task_manager.spawn_essential_handle().spawn("aura", None, fut); - - Ok(()) - }, - hwbench, - ) - .await -} - -/// Start a node containing the launch runtime -#[sc_tracing::logging::prefix_logs_with("Parachain")] -pub async fn start_launch_node( - parachain_config: Configuration, - polkadot_config: Configuration, - collator_options: CollatorOptions, - para_id: ParaId, - hwbench: Option, -) -> sc_service::error::Result<(TaskManager, Arc>)> { - start_parachain_node::( - parachain_config, - polkadot_config, - collator_options, - para_id, - |deps| rpc::create_launch_ext(deps).map_err(Into::into), - hwbench.clone(), - ) - .await -} - -/// Start a node containing the encointer runtime. -#[sc_tracing::logging::prefix_logs_with("Parachain")] -pub async fn start_encointer_node( - parachain_config: Configuration, - polkadot_config: Configuration, - collator_options: CollatorOptions, - para_id: ParaId, - hwbench: Option, -) -> sc_service::error::Result<(TaskManager, Arc>)> { - start_parachain_node::( - parachain_config, - polkadot_config, - collator_options, - para_id, - |deps| rpc::create_full(deps).map_err(Into::into), - hwbench, - ) - .await -} -/// Checks that the hardware meets the requirements and print a warning otherwise. -fn warn_if_slow_hardware(hwbench: &sc_sysinfo::HwBench) { - // Polkadot para-chains should generally use these requirements to ensure that the relay-chain - // will not take longer than expected to import its blocks. - if !frame_benchmarking_cli::SUBSTRATE_REFERENCE_HARDWARE.check_hardware(hwbench) { - log::warn!( - "⚠️ The hardware does not meet the minimal requirements for role 'Authority' find out more at:\n\ - https://wiki.polkadot.network/docs/maintain-guides-how-to-validate-polkadot#reference-hardware" - ); - } -} diff --git a/scripts/benchmark_encointer_runtime.sh b/scripts/benchmark_encointer_runtime.sh deleted file mode 100755 index 763a0f89..00000000 --- a/scripts/benchmark_encointer_runtime.sh +++ /dev/null @@ -1,51 +0,0 @@ -#!/bin/bash - -# Create `WeightInfo` implementations for all the pallets and store it in the weight module of the `encointer-runtime`. - -NODE=${1:-target/release/encointer-collator} -CHAIN_SPEC=${2:-encointer-rococo-local-dev} -WEIGHT_OUTPUT_DIR=${3:-polkadot-parachains/encointer-runtime/src/weights} - -echo "Running benchmarks for all pallets:" -echo "NODE: ${NODE}" -echo "CHAIN_SPEC: ${CHAIN_SPEC}" -echo "WEIGHT_OUTPUT_DIR: ${WEIGHT_OUTPUT_DIR}" - -mkdir -p "$WEIGHT_OUTPUT_DIR" - -pallets=( -# "cumulus_pallet_xcmp_queue" -# "frame_system" \ -# "pallet_balances" \ -# "pallet_collective" \ -# ^^^ takes some time to complete -# "pallet_membership" \ -# "pallet_timestamp" \ -# "pallet_treasury" \ -# "pallet_utility" \ - "pallet_proxy" \ -# "pallet_encointer_balances" \ -# "pallet_encointer_bazaar" \ -# "pallet_encointer_ceremonies" \ -# "pallet_encointer_communities" \ -# "pallet_encointer_scheduler" \ - "pallet_encointer_faucet" \ -# "pallet_encointer_reputation_commitments" \ -) - -for pallet in ${pallets[*]}; do - echo benchmarking "$pallet"... - - $NODE \ - benchmark pallet \ - --chain="$CHAIN_SPEC" \ - --steps=50 \ - --repeat=20 \ - --pallet="$pallet" \ - --extrinsic="*" \ - --execution=wasm \ - --wasm-execution=compiled \ - --heap-pages=4096 \ - --output="$WEIGHT_OUTPUT_DIR"/"$pallet".rs \ - -done diff --git a/scripts/benchmark_launch_runtime.sh b/scripts/benchmark_launch_runtime.sh deleted file mode 100755 index dcec13e7..00000000 --- a/scripts/benchmark_launch_runtime.sh +++ /dev/null @@ -1,43 +0,0 @@ -#!/bin/bash - -# Create `WeightInfo` implementations for all the pallets and store it in the weight module of the `launch-runtime`. - -NODE=${1:-target/release/encointer-collator} -CHAIN_SPEC=${2:-launch-rococo-local-dev} -WEIGHT_OUTPUT_DIR=${3:-polkadot-parachains/launch-runtime/src/weights} - -echo "Running benchmarks for all pallets:" -echo "NODE: ${NODE}" -echo "CHAIN_SPEC: ${CHAIN_SPEC}" -echo "WEIGHT_OUTPUT_DIR: ${WEIGHT_OUTPUT_DIR}" - -mkdir -p "$WEIGHT_OUTPUT_DIR" - -pallets=( - "cumulus_pallet_xcmp_queue" - "frame_system" \ - "pallet_balances" \ - "pallet_collective" \ -# ^^^ takes some time to complete - "pallet_membership" \ - "pallet_timestamp" \ - "pallet_treasury" \ - "pallet_utility" \ -) - -for pallet in ${pallets[*]}; do - echo benchmarking "$pallet"... - - $NODE \ - benchmark pallet \ - --chain="$CHAIN_SPEC" \ - --steps=50 \ - --repeat=20 \ - --pallet="$pallet" \ - --extrinsic="*" \ - --execution=wasm \ - --wasm-execution=compiled \ - --heap-pages=4096 \ - --output="$WEIGHT_OUTPUT_DIR"/"$pallet".rs \ - -done diff --git a/scripts/github/lib.rb b/scripts/github/lib.rb deleted file mode 100644 index 39ad8556..00000000 --- a/scripts/github/lib.rb +++ /dev/null @@ -1,12 +0,0 @@ -# frozen_string_literal: true - -# A collection of helper functions that might be useful for various scripts - -# Gets the runtime version for a given runtime. -# Optionally accepts a path that is the root of the project which defaults to -# the current working directory -def get_runtime(runtime, path = '.') - File.open(path + "/polkadot-parachains/#{runtime}-runtime/src/lib.rs") do |f| - f.find { |l| l =~ /spec_version/ }.match(/[0-9]+/)[0] - end -end diff --git a/scripts/update_hardcoded_chain_specs.py b/scripts/update_hardcoded_chain_specs.py index 8f75060b..cc9a882a 100755 --- a/scripts/update_hardcoded_chain_specs.py +++ b/scripts/update_hardcoded_chain_specs.py @@ -32,7 +32,7 @@ } ] COLLATOR = "target/release/encointer-collator" -RES_DIR = "polkadot-parachains/res" +RES_DIR = "node/res" def main(regenesis: bool): diff --git a/zombienet/rococo-local-with-encointer.toml b/zombienet/rococo-local-with-encointer.toml index 8447940f..54bf8489 100644 --- a/zombienet/rococo-local-with-encointer.toml +++ b/zombienet/rococo-local-with-encointer.toml @@ -2,8 +2,8 @@ timeout = 10000 [relaychain] -default_command = "~/bin/polkadot-v0.9.42" -default_args = [ "-lparachain=debug" ] +default_command = "~/bin/polkadot" +default_args = [ "-lparachain=debug,xcm=trace" ] chain = "rococo-local" @@ -33,7 +33,7 @@ chain = "encointer-rococo-local-dev" command = "./target/release/encointer-collator" args = [ "--enable-offchain-indexing=true", - "-lencointer=debug", + "-lencointer=debug,xcm=trace", ] ws_port = 9944 @@ -42,7 +42,7 @@ chain = "encointer-rococo-local-dev" command = "./target/release/encointer-collator" args = [ "--enable-offchain-indexing=true", - "-lencointer=debug", + "-lencointer=debug,xcm=trace", ] ws_port = 9945