Skip to content
Snippets Groups Projects
  1. Dec 05, 2024
    • Facundo Farall's avatar
      feat: :twisted_rightwards_arrows: Merge upstream into wasmtime-precompile PR (#14) · fe0b4dbd
      Facundo Farall authored
      
      * Bump prost-build from 0.12.4 to 0.13.2 (#6144)
      
      Bumps [prost-build](https://github.com/tokio-rs/prost) from 0.12.4 to
      0.13.2.
      <details>
      <summary>Changelog</summary>
      <p><em>Sourced from <a
      href="https://github.com/tokio-rs/prost/blob/master/CHANGELOG.md">prost-build's
      changelog</a>.</em></p>
      <blockquote>
      <h1>Prost version 0.13.2</h1>
      <p><em>PROST!</em> is a <a
      href="https://developers.google.com/protocol-buffers/">Protocol
      Buffers</a> implementation for the <a
      href="https://www.rust-lang.org/">Rust Language</a>. <code>prost</code>
      generates simple, idiomatic Rust code from <code>proto2</code> and
      <code>proto3</code> files.</p>
      <h2>Features</h2>
      <ul>
      <li>prost-build: Add protoc executable path to Config (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1126">#1126</a>)</li>
      <li>prost-build: Extract file descriptor loading from compile_protos()
      (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1067">#1067</a>)</li>
      </ul>
      <h2>Bug Fixes</h2>
      <ul>
      <li>prost-types: Fix date-time parsing (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1096">#1096</a>)</li>
      <li>prost-types: '+' is not a numeric digit (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1104">#1104</a>)</li>
      <li>prost-types: Converting DateTime to Timestamp is fallible (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1095">#1095</a>)</li>
      <li>prost-types: Parse timestamp with long second fraction (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1106">#1106</a>)</li>
      <li>prost-types: Format negative fractional duration (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1110">#1110</a>)</li>
      <li>prost-types: Allow unknown local time offset (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1109">#1109</a>)</li>
      </ul>
      <h2>Styling</h2>
      <ul>
      <li>Remove use of legacy numeric constants (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1089">#1089</a>)</li>
      <li>Move encoding functions into separate modules (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1111">#1111</a>)</li>
      <li>Remove needless borrow (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1122">#1122</a>)</li>
      </ul>
      <h2>Testing</h2>
      <ul>
      <li>Add tests for public interface of DecodeError (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1120">#1120</a>)</li>
      <li>Add <code>parse_date</code> fuzzing target (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1127">#1127</a>)</li>
      <li>Fix build without std (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1134">#1134</a>)</li>
      <li>Change some proptest to kani proofs (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1133">#1133</a>)</li>
      <li>Add <code>parse_duration</code> fuzzing target (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1129">#1129</a>)</li>
      <li>fuzz: Fix building of fuzzing targets (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1107">#1107</a>)</li>
      <li>fuzz: Add fuzz targets to workspace (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1117">#1117</a>)</li>
      </ul>
      <h2>Miscellaneous Tasks</h2>
      <ul>
      <li>Move old protobuf benchmark into prost (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1100">#1100</a>)</li>
      <li>Remove allow clippy::derive_partial_eq_without_eq (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1115">#1115</a>)</li>
      <li>Run <code>cargo test</code> without <code>all-targets</code> (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1118">#1118</a>)</li>
      <li>dependabot: Add github actions (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1121">#1121</a>)</li>
      <li>Update to cargo clippy version 1.80 (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1128">#1128</a>)</li>
      </ul>
      <h2>Build</h2>
      <ul>
      <li>Use <code>proc-macro</code> in Cargo.toml (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1102">#1102</a>)</li>
      <li>Ignore missing features in <code>tests</code> crates (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1101">#1101</a>)</li>
      <li>Use separated build directory for protobuf (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1103">#1103</a>)</li>
      <li>protobuf: Don't install unused test proto (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1116">#1116</a>)</li>
      <li>protobuf: Use crate <code>cmake</code> (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1137">#1137</a>)</li>
      <li>deps: Update devcontainer to Debian Bookworm release (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1114">#1114</a>)</li>
      </ul>
      <!-- raw HTML omitted -->
      </blockquote>
      <p>... (truncated)</p>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/tokio-rs/prost/commit/57e794203106db483e5115e7e67502ef6f2c7ad8"><code>57e7942</code></a>
      chore: Release version 0.13.2 (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1139">#1139</a>)</li>
      <li><a
      href="https://github.com/tokio-rs/prost/commit/8424775d78b13239df3cf3fe888236770a0cd839"><code>8424775</code></a>
      build(protobuf): Use crate <code>cmake</code> (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1137">#1137</a>)</li>
      <li><a
      href="https://github.com/tokio-rs/prost/commit/21208abf667313866f79d3d1438310c4dc20bdff"><code>21208ab</code></a>
      build(deps): bump model-checking/kani-github-action from 0.32 to 1.1 (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1125">#1125</a>)</li>
      <li><a
      href="https://github.com/tokio-rs/prost/commit/0c79864443621f20d92f9acc78a6ab0e7821dab0"><code>0c79864</code></a>
      tests(fuzz): Add <code>parse_duration</code> fuzzing target (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1129">#1129</a>)</li>
      <li><a
      href="https://github.com/tokio-rs/prost/commit/52046b943fdf6f79461725027245f890c7b4f514"><code>52046b9</code></a>
      tests: Change some proptest to kani proofs (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1133">#1133</a>)</li>
      <li><a
      href="https://github.com/tokio-rs/prost/commit/ee59dd5a9fe0935ad50e6ddbea5d23e3c6419468"><code>ee59dd5</code></a>
      tests: Fix build without std (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1134">#1134</a>)</li>
      <li><a
      href="https://github.com/tokio-rs/prost/commit/e773f5f6d38f74d0efff876011a2fd0d002aed4c"><code>e773f5f</code></a>
      feat(prost-build): Add protoc executable path to Config (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1126">#1126</a>)</li>
      <li><a
      href="https://github.com/tokio-rs/prost/commit/753bd92a85a3aa305d9d96b5c6363dc58d6356e6"><code>753bd92</code></a>
      ci(clippy): Update to cargo clippy version 1.80 (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1128">#1128</a>)</li>
      <li><a
      href="https://github.com/tokio-rs/prost/commit/df3e58e5d113a0dcf8b6735a5d04cde2d74e5df3"><code>df3e58e</code></a>
      tests(fuzz): Add <code>parse_date</code> fuzzing target (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1127">#1127</a>)</li>
      <li><a
      href="https://github.com/tokio-rs/prost/commit/409b93214ed8d98fbb364031ccf330ce4e7caa32"><code>409b932</code></a>
      style: Remove needless borrow (<a
      href="https://redirect.github.com/tokio-rs/prost/issues/1122">#1122</a>)</li>
      <li>Additional commits viewable in <a
      href="https://github.com/tokio-rs/prost/compare/v0.12.4...v0.13.2">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      
      [![Dependabot compatibility
      score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=prost-build&package-manager=cargo&previous-version=0.12.4&new-version=0.13.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
      
      Dependabot will resolve any conflicts with this PR as long as you don't
      alter it yourself. You can also trigger a rebase manually by commenting
      `@dependabot rebase`.
      
      [//]: # (dependabot-automerge-start)
      [//]: # (dependabot-automerge-end)
      
      ---
      
      <details>
      <summary>Dependabot commands and options</summary>
      <br />
      
      You can trigger Dependabot actions by commenting on this PR:
      - `@dependabot rebase` will rebase this PR
      - `@dependabot recreate` will recreate this PR, overwriting any edits
      that have been made to it
      - `@dependabot merge` will merge this PR after your CI passes on it
      - `@dependabot squash and merge` will squash and merge this PR after
      your CI passes on it
      - `@dependabot cancel merge` will cancel a previously requested merge
      and block automerging
      - `@dependabot reopen` will reopen this PR if it is closed
      - `@dependabot close` will close this PR and stop Dependabot recreating
      it. You can achieve the same result by closing it manually
      - `@dependabot show <dependency name> ignore conditions` will show all
      of the ignore conditions of the specified dependency
      - `@dependabot ignore this major version` will close this PR and stop
      Dependabot creating any more for this major version (unless you reopen
      the PR or upgrade to it yourself)
      - `@dependabot ignore this minor version` will close this PR and stop
      Dependabot creating any more for this minor version (unless you reopen
      the PR or upgrade to it yourself)
      - `@dependabot ignore this dependency` will close this PR and stop
      Dependabot creating any more for this dependency (unless you reopen the
      PR or upgrade to it yourself)
      
      
      </details>
      
      Signed-off-by: default avatardependabot[bot] <support@github.com>
      Co-authored-by: default avatardependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      
      * Bump the ci_dependencies group across 1 directory with 5 updates (#6035)
      
      Bumps the ci_dependencies group with 5 updates in the / directory:
      
      | Package | From | To |
      | --- | --- | --- |
      |
      [lycheeverse/lychee-action](https://github.com/lycheeverse/lychee-action)
      | `1.10.0` | `2.0.1` |
      | [Swatinem/rust-cache](https://github.com/swatinem/rust-cache) |
      `2.7.3` | `2.7.5` |
      |
      [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action)
      | `3.6.1` | `3.7.1` |
      |
      [docker/build-push-action](https://github.com/docker/build-push-action)
      | `6.8.0` | `6.9.0` |
      |
      [actions-rust-lang/setup-rust-toolchain](https://github.com/actions-rust-lang/setup-rust-toolchain)
      | `1.10.0` | `1.10.1` |
      
      
      Updates `lycheeverse/lychee-action` from 1.10.0 to 2.0.1
      <details>
      <summary>Release notes</summary>
      <p><em>Sourced from <a
      href="https://github.com/lycheeverse/lychee-action/releases">lycheeverse/lychee-action's
      releases</a>.</em></p>
      <blockquote>
      <h2>Version 2.0.1</h2>
      <h2>What's Changed</h2>
      <ul>
      <li>Don't remove the lychee config file by <a
      href="https://github.com/dmathieu"><code>@​dmathieu</code></a> in <a
      href="https://redirect.github.com/lycheeverse/lychee-action/pull/255">lycheeverse/lychee-action#255</a></li>
      <li>Bump lycheeverse/lychee-action from 1 to 2 by <a
      href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
      href="https://redirect.github.com/lycheeverse/lychee-action/pull/252">lycheeverse/lychee-action#252</a></li>
      <li>Fix variable name in docs by <a
      href="https://github.com/kdeldycke"><code>@​kdeldycke</code></a> in <a
      href="https://redirect.github.com/lycheeverse/lychee-action/pull/253">lycheeverse/lychee-action#253</a></li>
      </ul>
      <h2>New Contributors</h2>
      <ul>
      <li><a href="https://github.com/dmathieu"><code>@​dmathieu</code></a>
      made their first contribution in <a
      href="https://redirect.github.com/lycheeverse/lychee-action/pull/255">lycheeverse/lychee-action#255</a></li>
      </ul>
      <p><strong>Full Changelog</strong>: <a
      href="https://github.com/lycheeverse/lychee-action/compare/v2...v2.0.1">https://github.com/lycheeverse/lychee-action/compare/v2...v2.0.1</a></p>
      <h2>Version 2.0.0</h2>
      <h2>Breaking Changes</h2>
      <p><strong>Note:</strong> This release improves the action's robustness
      by changing default behaviors. Changes are only required if you want to
      opt out of the new failure conditions. Most users won't need to modify
      their existing configurations.</p>
      <h3>Fail pipeline on error by default</h3>
      <p>We've changed the default behavior: pipelines will now fail on broken
      links automatically. This addresses user feedback that not failing on
      broken links was unexpected (see [issue <a
      href="https://redirect.github.com/lycheeverse/lychee-action/issues/71">#71</a>](<a
      href="https://redirect.github.com/lycheeverse/lychee-action/issues/71">lycheeverse/lychee-action#71</a>)).</p>
      <p><strong>What you need to do:</strong></p>
      <ul>
      <li>Update to version 2 of this action to apply this change.</li>
      <li>Users of the <code>lychee-action@master</code> branch don't need to
      make any changes, as <code>fail: true</code> has been the default there
      for a while.</li>
      <li>If you prefer the old behavior, explicitly set <code>fail</code> to
      <code>false</code> when updating:</li>
      </ul>
      <pre lang="yaml"><code>- name: Link Checker
        id: lychee
        uses: lycheeverse/lychee-action@v2
        with:
          fail: false  # Don't fail action on broken links
      </code></pre>
      <h3>Fail pipeline if no links were found</h3>
      <p>Similar to the above change, we now fail the pipeline if no links are
      found during a run. This helps warn users about potential configuration
      issues.</p>
      <p><strong>What you need to do:</strong></p>
      <ul>
      <li>If you expect links to be found in your pipeline run, you don't need
      to do anything.</li>
      <li>If you expect no links in your pipeline run, you can opt out like
      this:</li>
      </ul>
      <pre lang="yaml"><code>- name: Link Checker
        id: lychee
        uses: lycheeverse/lychee-action@v2
        with:
          failIfEmpty: false  # Don't fail action if no links were found
      </code></pre>
      <p>For a more detailed description of the technical aspects behind these
      changes, please see the full changelog below.</p>
      <!-- raw HTML omitted -->
      </blockquote>
      <p>... (truncated)</p>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/lycheeverse/lychee-action/commit/2bb232618be239862e31382c5c0eaeba12e5e966"><code>2bb2326</code></a>
      don't remove the lychee config file (<a
      href="https://redirect.github.com/lycheeverse/lychee-action/issues/255">#255</a>)</li>
      <li><a
      href="https://github.com/lycheeverse/lychee-action/commit/731bf1a2affebd80fab6515ba61d2648a76929a4"><code>731bf1a</code></a>
      Fix variable name (<a
      href="https://redirect.github.com/lycheeverse/lychee-action/issues/253">#253</a>)</li>
      <li><a
      href="https://github.com/lycheeverse/lychee-action/commit/e360f3c89142a5391e094404ea45e5494f1317dd"><code>e360f3c</code></a>
      Bump lycheeverse/lychee-action from 1 to 2 (<a
      href="https://redirect.github.com/lycheeverse/lychee-action/issues/252">#252</a>)</li>
      <li><a
      href="https://github.com/lycheeverse/lychee-action/commit/f87f0a62993c2647717456af92593666acb3a500"><code>f87f0a6</code></a>
      Update version to <code>lycheeverse/lychee-action@v2</code> in docs</li>
      <li><a
      href="https://github.com/lycheeverse/lychee-action/commit/7da8ec1fc4e01b5a12062ac6c589c10a4ce70d67"><code>7da8ec1</code></a>
      Test latest lychee version tag (<a
      href="https://redirect.github.com/lycheeverse/lychee-action/issues/236">#236</a>)</li>
      <li><a
      href="https://github.com/lycheeverse/lychee-action/commit/6cba5a96c25bf6571c0dc0d1521a2ddbae78ea59"><code>6cba5a9</code></a>
      Bump version to 0.16.x, respect new tag names (<a
      href="https://redirect.github.com/lycheeverse/lychee-action/issues/249">#249</a>)</li>
      <li><a
      href="https://github.com/lycheeverse/lychee-action/commit/e71a9a10faeb8c75aa21760b2f706f7831adadc7"><code>e71a9a1</code></a>
      Split up steps in action (<a
      href="https://redirect.github.com/lycheeverse/lychee-action/issues/248">#248</a>)</li>
      <li><a
      href="https://github.com/lycheeverse/lychee-action/commit/897f08a07f689df1a43076f4374af272f66a6dd1"><code>897f08a</code></a>
      action.yml: fix failing CI (<a
      href="https://redirect.github.com/lycheeverse/lychee-action/issues/246">#246</a>)</li>
      <li><a
      href="https://github.com/lycheeverse/lychee-action/commit/22c8e46b8f296cda676f8f92c634c4a87b436779"><code>22c8e46</code></a>
      Set exit_code correctly as output (<a
      href="https://redirect.github.com/lycheeverse/lychee-action/issues/245">#245</a>)</li>
      <li><a
      href="https://github.com/lycheeverse/lychee-action/commit/5047c2a4052946424ce139fe111135f6d7c0fe0b"><code>5047c2a</code></a>
      README: update actions/cache to v4 (<a
      href="https://redirect.github.com/lycheeverse/lychee-action/issues/243">#243</a>)</li>
      <li>Additional commits viewable in <a
      href="https://github.com/lycheeverse/lychee-action/compare/2b973e86fc7b1f6b36a93795fe2c9c6ae1118621...2bb232618be239862e31382c5c0eaeba12e5e966">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      Updates `Swatinem/rust-cache` from 2.7.3 to 2.7.5
      <details>
      <summary>Release notes</summary>
      <p><em>Sourced from <a
      href="https://github.com/swatinem/rust-cache/releases">Swatinem/rust-cache's
      releases</a>.</em></p>
      <blockquote>
      <h2>v2.7.5</h2>
      <h2>What's Changed</h2>
      <ul>
      <li>Upgrade checkout action from version 3 to 4 by <a
      href="https://github.com/carsten-wenderdel"><code>@​carsten-wenderdel</code></a>
      in <a
      href="https://redirect.github.com/Swatinem/rust-cache/pull/190">Swatinem/rust-cache#190</a></li>
      <li>fix: usage of <code>deprecated</code> version of <code>node</code>
      by <a href="https://github.com/hamirmahal"><code>@​hamirmahal</code></a>
      in <a
      href="https://redirect.github.com/Swatinem/rust-cache/pull/197">Swatinem/rust-cache#197</a></li>
      <li>Only run macOsWorkaround() on macOS by <a
      href="https://github.com/heksesang"><code>@​heksesang</code></a> in <a
      href="https://redirect.github.com/Swatinem/rust-cache/pull/206">Swatinem/rust-cache#206</a></li>
      <li>Support Cargo.lock format cargo-lock v4 by <a
      href="https://github.com/NobodyXu"><code>@​NobodyXu</code></a> in <a
      href="https://redirect.github.com/Swatinem/rust-cache/pull/211">Swatinem/rust-cache#211</a></li>
      </ul>
      <h2>New Contributors</h2>
      <ul>
      <li><a
      href="https://github.com/carsten-wenderdel"><code>@​carsten-wenderdel</code></a>
      made their first contribution in <a
      href="https://redirect.github.com/Swatinem/rust-cache/pull/190">Swatinem/rust-cache#190</a></li>
      <li><a
      href="https://github.com/hamirmahal"><code>@​hamirmahal</code></a> made
      their first contribution in <a
      href="https://redirect.github.com/Swatinem/rust-cache/pull/197">Swatinem/rust-cache#197</a></li>
      <li><a href="https://github.com/heksesang"><code>@​heksesang</code></a>
      made their first contribution in <a
      href="https://redirect.github.com/Swatinem/rust-cache/pull/206">Swatinem/rust-cache#206</a></li>
      </ul>
      <p><strong>Full Changelog</strong>: <a
      href="https://github.com/Swatinem/rust-cache/compare/v2.7.3...v2.7.5">https://github.com/Swatinem/rust-cache/compare/v2.7.3...v2.7.5</a></p>
      </blockquote>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/Swatinem/rust-cache/commit/82a92a6e8fbeee089604da2575dc567ae9ddeaab"><code>82a92a6</code></a>
      2.7.5</li>
      <li><a
      href="https://github.com/Swatinem/rust-cache/commit/598fe25fa107b2fd526fc6471f6e48de7cd12083"><code>598fe25</code></a>
      update dependencies, rebuild</li>
      <li><a
      href="https://github.com/Swatinem/rust-cache/commit/8f842c2d455cfe3d0d5a4b28f53f5389b51b71bf"><code>8f842c2</code></a>
      Support Cargo.lock format cargo-lock v4 (<a
      href="https://redirect.github.com/swatinem/rust-cache/issues/211">#211</a>)</li>
      <li><a
      href="https://github.com/Swatinem/rust-cache/commit/96a8d65dbafbc7d145a9b2b6c3b12ee335738cd2"><code>96a8d65</code></a>
      Only run macOsWorkaround() on macOS (<a
      href="https://redirect.github.com/swatinem/rust-cache/issues/206">#206</a>)</li>
      <li><a
      href="https://github.com/Swatinem/rust-cache/commit/9bdad043e88c75890e36ad3bbc8d27f0090dd609"><code>9bdad04</code></a>
      fix: usage of <code>deprecated</code> version of <code>node</code> (<a
      href="https://redirect.github.com/swatinem/rust-cache/issues/197">#197</a>)</li>
      <li><a
      href="https://github.com/Swatinem/rust-cache/commit/f7a52f691454d93c6ce0dff6666a5cb399b8d06e"><code>f7a52f6</code></a>
      &quot;add jsonpath test&quot;</li>
      <li><a
      href="https://github.com/Swatinem/rust-cache/commit/2bceda39122b2cc71e6e26ad729b92b44d101f4b"><code>2bceda3</code></a>
      &quot;update dependencies&quot;</li>
      <li><a
      href="https://github.com/Swatinem/rust-cache/commit/640a22190e7a783d4c409684cea558f081f92012"><code>640a221</code></a>
      Upgrade checkout action from version 3 to 4 (<a
      href="https://redirect.github.com/swatinem/rust-cache/issues/190">#190</a>)</li>
      <li><a
      href="https://github.com/Swatinem/rust-cache/commit/158274163087d4d4d49dfcc6a39806493e413240"><code>1582741</code></a>
      update dependencies</li>
      <li>See full diff in <a
      href="https://github.com/swatinem/rust-cache/compare/23bce251a8cd2ffc3c1075eaa2367cf899916d84...82a92a6e8fbeee089604da2575dc567ae9ddeaab">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      Updates `docker/setup-buildx-action` from 3.6.1 to 3.7.1
      <details>
      <summary>Release notes</summary>
      <p><em>Sourced from <a
      href="https://github.com/docker/setup-buildx-action/releases">docker/setup-buildx-action's
      releases</a>.</em></p>
      <blockquote>
      <h2>v3.7.1</h2>
      <ul>
      <li>Switch back to <code>uuid</code> package by <a
      href="https://github.com/crazy-max"><code>@​crazy-max</code></a> in <a
      href="https://redirect.github.com/docker/setup-buildx-action/pull/369">docker/setup-buildx-action#369</a></li>
      </ul>
      <p><strong>Full Changelog</strong>: <a
      href="https://github.com/docker/setup-buildx-action/compare/v3.7.0...v3.7.1">https://github.com/docker/setup-buildx-action/compare/v3.7.0...v3.7.1</a></p>
      <h2>v3.7.0</h2>
      <ul>
      <li>Always set <code>buildkitd-flags</code> if opt-in by <a
      href="https://github.com/crazy-max"><code>@​crazy-max</code></a> in <a
      href="https://redirect.github.com/docker/setup-buildx-action/pull/363">docker/setup-buildx-action#363</a></li>
      <li>Remove <code>uuid</code> package and switch to <code>crypto</code>
      by <a href="https://github.com/crazy-max"><code>@​crazy-max</code></a>
      in <a
      href="https://redirect.github.com/docker/setup-buildx-action/pull/366">docker/setup-buildx-action#366</a></li>
      <li>Bump <code>@​docker/actions-toolkit</code> from 0.35.0 to 0.39.0 in
      <a
      href="https://redirect.github.com/docker/setup-buildx-action/pull/362">docker/setup-buildx-action#362</a></li>
      <li>Bump path-to-regexp from 6.2.2 to 6.3.0 in <a
      href="https://redirect.github.com/docker/setup-buildx-action/pull/354">docker/setup-buildx-action#354</a></li>
      </ul>
      <p><strong>Full Changelog</strong>: <a
      href="https://github.com/docker/setup-buildx-action/compare/v3.6.1...v3.7.0">https://github.com/docker/setup-buildx-action/compare/v3.6.1...v3.7.0</a></p>
      </blockquote>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/docker/setup-buildx-action/commit/c47758b77c9736f4b2ef4073d4d51994fabfe349"><code>c47758b</code></a>
      Merge pull request <a
      href="https://redirect.github.com/docker/setup-buildx-action/issues/369">#369</a>
      from crazy-max/revert-crypto</li>
      <li><a
      href="https://github.com/docker/setup-buildx-action/commit/8fea3825134d99989287350b6429e3e86fa5d320"><code>8fea382</code></a>
      chore: update generated content</li>
      <li><a
      href="https://github.com/docker/setup-buildx-action/commit/2874e980e877332a8fe575054d8c083109b8fede"><code>2874e98</code></a>
      switch back to uuid package</li>
      <li><a
      href="https://github.com/docker/setup-buildx-action/commit/8026d2bc3645ea78b0d2544766a1225eb5691f89"><code>8026d2b</code></a>
      Merge pull request <a
      href="https://redirect.github.com/docker/setup-buildx-action/issues/362">#362</a>
      from docker/dependabot/npm_and_yarn/docker/actions-to...</li>
      <li><a
      href="https://github.com/docker/setup-buildx-action/commit/e51aab53e9e6264bc11f62da6fbc352686b2147f"><code>e51aab5</code></a>
      chore: update generated content</li>
      <li><a
      href="https://github.com/docker/setup-buildx-action/commit/fd7390e14dc77aa9df3fbc8a021cf91ac9fe7aa5"><code>fd7390e</code></a>
      build(deps): bump <code>@​docker/actions-toolkit</code> from 0.35.0 to
      0.39.0</li>
      <li><a
      href="https://github.com/docker/setup-buildx-action/commit/910a3040053b5bd9636a487f0054cfe150829ae7"><code>910a304</code></a>
      Merge pull request <a
      href="https://redirect.github.com/docker/setup-buildx-action/issues/366">#366</a>
      from crazy-max/remove-uuid</li>
      <li><a
      href="https://github.com/docker/setup-buildx-action/commit/3623ee443e01d4daf9e9107d28e162a058c52ca8"><code>3623ee4</code></a>
      chore: update generated content</li>
      <li><a
      href="https://github.com/docker/setup-buildx-action/commit/e0e5ecf670bf33d756abc55962778de1286f70e1"><code>e0e5ecf</code></a>
      remove uuid package and switch to crypto</li>
      <li><a
      href="https://github.com/docker/setup-buildx-action/commit/5334dd0cdd27e0ac92d6c98d35f3398fcc13195f"><code>5334dd0</code></a>
      Merge pull request <a
      href="https://redirect.github.com/docker/setup-buildx-action/issues/363">#363</a>
      from crazy-max/set-buildkitd-flags-optin</li>
      <li>Additional commits viewable in <a
      href="https://github.com/docker/setup-buildx-action/compare/988b5a0280414f521da01fcc63a27aeeb4b104db...c47758b77c9736f4b2ef4073d4d51994fabfe349">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      Updates `docker/build-push-action` from 6.8.0 to 6.9.0
      <details>
      <summary>Release notes</summary>
      <p><em>Sourced from <a
      href="https://github.com/docker/build-push-action/releases">docker/build-push-action's
      releases</a>.</em></p>
      <blockquote>
      <h2>v6.9.0</h2>
      <ul>
      <li>Bump <code>@​docker/actions-toolkit</code> from 0.38.0 to 0.39.0 in
      <a
      href="https://redirect.github.com/docker/build-push-action/pull/1234">docker/build-push-action#1234</a></li>
      <li>Bump path-to-regexp from 6.2.2 to 6.3.0 in <a
      href="https://redirect.github.com/docker/build-push-action/pull/1232">docker/build-push-action#1232</a></li>
      </ul>
      <p><strong>Full Changelog</strong>: <a
      href="https://github.com/docker/build-push-action/compare/v6.8.0...v6.9.0">https://github.com/docker/build-push-action/compare/v6.8.0...v6.9.0</a></p>
      </blockquote>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/docker/build-push-action/commit/4f58ea79222b3b9dc2c8bbdd6debcef730109a75"><code>4f58ea7</code></a>
      Merge pull request <a
      href="https://redirect.github.com/docker/build-push-action/issues/1234">#1234</a>
      from docker/dependabot/npm_and_yarn/docker/actions-t...</li>
      <li><a
      href="https://github.com/docker/build-push-action/commit/49b5ea61c60477d214908bb6e23ce05c074ef04e"><code>49b5ea6</code></a>
      chore: update generated content</li>
      <li><a
      href="https://github.com/docker/build-push-action/commit/13c9fddd72db0ce3cd9d87eb53e0480d2a32a77b"><code>13c9fdd</code></a>
      chore(deps): Bump <code>@​docker/actions-toolkit</code> from 0.38.0 to
      0.39.0</li>
      <li><a
      href="https://github.com/docker/build-push-action/commit/e44afff3590e1d4f93b6adc72376512edb012a7c"><code>e44afff</code></a>
      Merge pull request <a
      href="https://redirect.github.com/docker/build-push-action/issues/1232">#1232</a>
      from docker/dependabot/npm_and_yarn/path-to-regexp-6...</li>
      <li><a
      href="https://github.com/docker/build-push-action/commit/67ebad331f4ca45e39184b280dbacb11eb3beae0"><code>67ebad3</code></a>
      chore(deps): Bump path-to-regexp from 6.2.2 to 6.3.0</li>
      <li>See full diff in <a
      href="https://github.com/docker/build-push-action/compare/32945a339266b759abcbdc89316275140b0fc960...4f58ea79222b3b9dc2c8bbdd6debcef730109a75">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      Updates `actions-rust-lang/setup-rust-toolchain` from 1.10.0 to 1.10.1
      <details>
      <summary>Release notes</summary>
      <p><em>Sourced from <a
      href="https://github.com/actions-rust-lang/setup-rust-toolchain/releases">actions-rust-lang/setup-rust-toolchain's
      releases</a>.</em></p>
      <blockquote>
      <h2>v1.10.1</h2>
      <ul>
      <li>Fix problem matcher for rustfmt output.
      The format has changed since <a
      href="https://redirect.github.com/rust-lang/rustfmt/pull/5971">rust-lang/rustfmt#5971</a>
      and now follows the form &quot;filename:line&quot;.
      Thanks to <a
      href="https://github.com/0xcypher02"><code>@​0xcypher02</code></a> for
      pointing out the problem.</li>
      </ul>
      <p><strong>Full Changelog</strong>: <a
      href="https://github.com/actions-rust-lang/setup-rust-toolchain/compare/v1...v1.10.1">https://github.com/actions-rust-lang/setup-rust-toolchain/compare/v1...v1.10.1</a></p>
      </blockquote>
      </details>
      <details>
      <summary>Changelog</summary>
      <p><em>Sourced from <a
      href="https://github.com/actions-rust-lang/setup-rust-toolchain/blob/main/CHANGELOG.md">actions-rust-lang/setup-rust-toolchain's
      changelog</a>.</em></p>
      <blockquote>
      <h1>Changelog</h1>
      <p>All notable changes to this project will be documented in this
      file.</p>
      <p>The format is based on <a
      href="https://keepachangelog.com/en/1.0.0/">Keep a Changelog</a>,
      and this project adheres to <a
      href="https://semver.org/spec/v2.0.0.html">Semantic Versioning</a>.</p>
      <h2>[Unreleased]</h2>
      <h2>[1.10.1] - 2024-10-01</h2>
      <ul>
      <li>Fix problem matcher for rustfmt output.
      The format has changed since <a
      href="https://redirect.github.com/rust-lang/rustfmt/pull/5971">rust-lang/rustfmt#5971</a>
      and now follows the form &quot;filename:line&quot;.
      Thanks to <a
      href="https://github.com/0xcypher02"><code>@​0xcypher02</code></a> for
      pointing out the problem.</li>
      </ul>
      <h2>[1.10.0] - 2024-09-23</h2>
      <ul>
      <li>Add new parameter <code>cache-directories</code> that is propagated
      to <code>Swatinem/rust-cache</code> (<a
      href="https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/issues/44">#44</a>
      by <a
      href="https://github.com/pranc1ngpegasus"><code>@​pranc1ngpegasus</code></a>)</li>
      <li>Add new parameter <code>cache-key</code> that is propagated to
      <code>Swatinem/rust-cache</code> as <code>key</code> (<a
      href="https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/issues/41">#41</a>
      by <a
      href="https://github.com/iainlane"><code>@​iainlane</code></a>)</li>
      <li>Make rustup toolchain installation more robust in light of planned
      changes <a
      href="https://redirect.github.com/rust-lang/rustup/issues/3635">rust-lang/rustup#3635</a>
      and <a
      href="https://redirect.github.com/rust-lang/rustup/pull/3985">rust-lang/rustup#3985</a></li>
      <li>Allow installing multiple Rust toolchains by specifying multiple
      versions in the <code>toolchain</code> input parameter.</li>
      <li>Configure the <code>rustup override</code> behavior via the new
      <code>override</code> input. (<a
      href="https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/issues/38">#38</a>)</li>
      </ul>
      <h2>[1.9.0] - 2024-06-08</h2>
      <ul>
      <li>Add extra argument <code>cache-on-failure</code> and forward it to
      <code>Swatinem/rust-cache</code>. (<a
      href="https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/issues/39">#39</a>
      by <a
      href="https://github.com/samuelhnrq"><code>@​samuelhnrq</code></a>)<br
      />
      Set the default the value to true.
      This will result in more caching than previously.
      This helps when large dependencies are compiled only for testing to
      fail.</li>
      </ul>
      <h2>[1.8.0] - 2024-01-13</h2>
      <ul>
      <li>Allow specifying subdirectories for cache.</li>
      <li>Fix toolchain file overriding.</li>
      </ul>
      <h2>[1.7.0] - 2024-01-11</h2>
      <ul>
      <li>Allow overriding the toolchain file with explicit
      <code>toolchain</code> input. (<a
      href="https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/issues/26">#26</a>)</li>
      </ul>
      <h2>[1.6.0] - 2023-12-04</h2>
      <h3>Added</h3>
      <ul>
      <li>Allow disabling problem matchers (<a
      href="https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/issues/27">#27</a>)
      This can be useful when having a matrix of jobs, that produce the same
      errors.</li>
      </ul>
      <h2>[1.5.0] - 2023-05-29</h2>
      <h3>Added</h3>
      <!-- raw HTML omitted -->
      </blockquote>
      <p>... (truncated)</p>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/actions-rust-lang/setup-rust-toolchain/commit/11df97af8e8102fd60b60a77dfbf58d40cd843b8"><code>11df97a</code></a>
      Update the rustfmt problem matcher</li>
      <li>See full diff in <a
      href="https://github.com/actions-rust-lang/setup-rust-toolchain/compare/4d1965c9142484e48d40c19de54b5cba84953a06...11df97af8e8102fd60b60a77dfbf58d40cd843b8">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      
      Dependabot will resolve any conflicts with this PR as long as you don't
      alter it yourself. You can also trigger a rebase manually by commenting
      `@dependabot rebase`.
      
      [//]: # (dependabot-automerge-start)
      [//]: # (dependabot-automerge-end)
      
      ---
      
      <details>
      <summary>Dependabot commands and options</summary>
      <br />
      
      You can trigger Dependabot actions by commenting on this PR:
      - `@dependabot rebase` will rebase this PR
      - `@dependabot recreate` will recreate this PR, overwriting any edits
      that have been made to it
      - `@dependabot merge` will merge this PR after your CI passes on it
      - `@dependabot squash and merge` will squash and merge this PR after
      your CI passes on it
      - `@dependabot cancel merge` will cancel a previously requested merge
      and block automerging
      - `@dependabot reopen` will reopen this PR if it is closed
      - `@dependabot close` will close this PR and stop Dependabot recreating
      it. You can achieve the same result by closing it manually
      - `@dependabot show <dependency name> ignore conditions` will show all
      of the ignore conditions of the specified dependency
      - `@dependabot ignore <dependency name> major version` will close this
      group update PR and stop Dependabot creating any more for the specific
      dependency's major version (unless you unignore this specific
      dependency's major version or upgrade to it yourself)
      - `@dependabot ignore <dependency name> minor version` will close this
      group update PR and stop Dependabot creating any more for the specific
      dependency's minor version (unless you unignore this specific
      dependency's minor version or upgrade to it yourself)
      - `@dependabot ignore <dependency name>` will close this group update PR
      and stop Dependabot creating any more for the specific dependency
      (unless you unignore this specific dependency or upgrade to it yourself)
      - `@dependabot unignore <dependency name>` will remove all of the ignore
      conditions of the specified dependency
      - `@dependabot unignore <dependency name> <ignore condition>` will
      remove the ignore condition of the specified dependency and ignore
      conditions
      
      
      </details>
      
      Signed-off-by: default avatardependabot[bot] <support@github.com>
      Co-authored-by: default avatardependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      Co-authored-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
      
      * runtime: remove ttl (#5461)
      
      Resolves https://github.com/paritytech/polkadot-sdk/issues/4776
      
      This will enable proper core-sharing between paras, even if one of them
      is not producing blocks.
      
      TODO:
      - [x] duplicate first entry in the claim queue if the queue used to be
      empty
      - [x] don't back anything if at the end of the block there'll be a
      session change
      - [x] write migration for removing the availability core storage
      - [x] update and write unit tests
      - [x] prdoc
      - [x] add zombienet test for synchronous backing
      - [x] add zombienet test for core-sharing paras where one of them is not
      producing any blocks
      
      _Important note:_
      The `ttl` and `max_availability_timeouts` fields of the
      HostConfiguration are not removed in this PR, due to #64.
      Adding the workaround with the storage version check for every use of
      the active HostConfiguration in all runtime APIs would be insane, as
      it's used in almost all runtime APIs.
      
      So even though the ttl and max_availability_timeouts fields will now be
      unused, they will remain part of the host configuration.
      
      These will be removed in a separate PR once #64 is fixed. Tracked by
      https://github.com/paritytech/polkadot-sdk/issues/6067
      
      ---------
      
      Signed-off-by: default avatarAndrei Sandu <andrei-mihail@parity.io>
      Co-authored-by: default avatarAndrei Sandu <andrei-mihail@parity.io>
      Co-authored-by: default avatarAndrei Sandu <54316454+sandreim@users.noreply.github.com>
      Co-authored-by: command-bot <>
      
      * [pallet-nfts, pallet_uniques] - Expose private structs (#6087)
      
      # Description
      
      This PR exposes pallet_nfts and pallet_uniques structs, so other pallets
      can access storage to use it for extending nft functionalities.
      
      In pallet uniques it also exposes collection and asset metadata storage
      as they are private.
       
      ## Integration
      
      This integration allows nfts and uniques extension pallets to use then
      private - now public structs to retrieve and parse storage from
      pallet_nfts. We are building cross-chain NFT pallet and in order to
      transfer collection that houses multiple NFT owners we need to manually
      remove NFTs and Collections from storage without signers. We would also
      like to refund deposits on origin chain and we were unable to as struct
      data was private.
      
      We have built cross-chain pallet that allows to send nfts or collections
      between two pallets in abstract way without having to look which pallet
      parachain (If nfts or uniques) implements.
      
      ## Review Notes
      
      Code exposes private structs to public structs. No breaking change.
      
      Build runs fine, tests are also ok.
      <img width="468" alt="screen1"
      src="https://github.com/user-attachments/assets/f31f60b5-390c-4497-b46b-59dd561204ae">
      <img width="664" alt="screen2"
      src="https://github.com/user-attachments/assets/7e2aa71c-3bc4-49a9-8afc-47d4f45f4359">
      <img width="598" alt="screen3"
      src="https://github.com/user-attachments/assets/10f4e427-858f-460d-8644-f5750494edb0">
      
      
      
      PR is tied with following issue:
      Closes #5959 
      
      # Checklist
      
      * [x] My PR includes a detailed description as outlined in the
      "Description" and its two subsections above.
      * [x] My PR follows the [labeling requirements](
      
      https://github.com/paritytech/polkadot-sdk/blob/master/docs/contributor/CONTRIBUTING.md#Process
      ) of this project (at minimum one label for `T` required)
      * External contributors: ask maintainers to put the right label on your
      PR.
      * [ ] I have made corresponding changes to the documentation (if
      applicable)
      * [ ] I have added tests that prove my fix is effective or that my
      feature works (if applicable)
      
      ---------
      
      Co-authored-by: default avatarBranislav Kontur <bkontur@gmail.com>
      Co-authored-by: command-bot <>
      
      * [Backport] Version bumps from stable2409-1 (#6153)
      
      This PR backports regular version bumps and prdocs reordering from the
      current stable release back to master
      
      * Fix TrustedQueryApi Error (#6170)
      
      Related to https://github.com/paritytech/polkadot-sdk/issues/6161
      
      This seems to fix the `JavaScript heap out of memory` error encountered
      in the bridge zombienet tests lately.
      
      This is just a partial fix, since we also need to address
      https://github.com/paritytech/polkadot-sdk/issues/6133 in order to fully
      fix the bridge zombienet tests
      
      * [pallet-revive] Eth RPC integration (#5866)
      
      This PR introduces the necessary changes to pallet-revive for
      integrating with our Ethereum JSON-RPC.
      The RPC proxy itself will be added in a follow up.
      
      ## Changes
      
      - A new pallet::call `Call::eth_transact`. This is used as a wrapper to
      accept unsigned Ethereum transaction, valid call will be routed to
      `Call::call` or `Call::instantiate_with_code`
      
      - A custom UncheckedExtrinsic struct, that wraps the generic one usually
      and add the ability to check eth_transact calls sent from an Ethereum
      JSON-RPC proxy.
      - Generated types and traits to support implementing a JSON-RPC Ethereum
      proxy.
      
      ## Flow Overview:
      - A user submits a transaction via MetaMask or another
      Ethereum-compatible wallet.
      - The proxy dry run the transaction and add metadata to the call (gas
      limit in Weight, storage deposit limit, and length of bytecode and
      constructor input for contract instantiation)
      - The raw transaction, along with the additional metadata, is submitted
      to the node as an unsigned extrinsic.
      - On the runtime, our custom UncheckedExtrinsic define a custom
      Checkable implementation that converts the unsigned extrinsics into
      checked one
       - It recovers the signer
      - validates the payload, and injects signed extensions, allowing the
      system to increment the nonce and charge the appropriate fees.
      - re-route the call to pallet-revive::Call::call or
      pallet-revive::Call::instantiateWithCode
      
      ## Dependencies
      
      - https://github.com/koute/polkavm/pull/188
      
      ## Follow up PRs
      - #5926  
      - #6147 (previously #5953)
      - #5502
      
      ---------
      
      Co-authored-by: default avatarAlexander Theißen <alex.theissen@me.com>
      Co-authored-by: default avatarCyrill Leutwiler <cyrill@parity.io>
      
      * [pallet-revive] fix fixture build path (#6174)
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarCyrill Leutwiler <cyrill@parity.io>
      
      * `fatxpool`: `LocalTransactionPool` implemented (#6104)
      
      [`LocalTransactionPool`
      trait](https://github.com/paritytech/polkadot-sdk/blob/d5b96e9e
      
      /substrate/client/transaction-pool/api/src/lib.rs#L408-L426)
      is now implemented for `ForkAwareTransactionPool`.
      
      Closes #5493
      
      * Use bool::then instead of then_some with function calls (#6156)
      
      I noticed that hardware benchmarks are being run even though we pass the
      --no-hardware-benchmarks cli flag. After some debugging, the cause is an
      incorrect usage of the `then_some` method.
      
      From [std
      docs](https://doc.rust-lang.org/std/primitive.bool.html#method.then_some):
      
      > Arguments passed to then_some are eagerly evaluated; if you are
      passing the result of a function call, it is recommended to use
      [then](https://doc.rust-lang.org/std/primitive.bool.html#method.then),
      which is lazily evaluated.
      
      ```rust
      let mut a = 0;
      let mut function_with_side_effects = || { a += 1; };
      
      true.then_some(function_with_side_effects());
      false.then_some(function_with_side_effects());
      
      // `a` is incremented twice because the value passed to `then_some` is
      // evaluated eagerly.
      assert_eq!(a, 2);
      ```
      
      This PR fixes all the similar usages of the `then_some` method across
      the codebase.
      
      polkadot address: 138eUqXvUYT3o4GdbnWQfGRzM8yDWh5Q2eFrFULL7RAXzdWD
      
      ---------
      
      Signed-off-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
      Co-authored-by: default avatarShawn Tabrizi <shawntabrizi@gmail.com>
      Co-authored-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
      
      * Assets in pool with native can be used in `query_weight_to_asset_fee` (#6080)
      
      A follow-up to https://github.com/paritytech/polkadot-sdk/pull/5599.
      Assets in a pool with the native one are returned from
      `query_acceptable_payment_assets`. Now those assets can be used in
      `query_weight_to_asset_fee` to get the correct amount that needs to be
      paid.
      
      ---------
      
      Co-authored-by: command-bot <>
      
      * [pallet-revive] Add pallet to AH westend (#5502)
      
      Add pallet-revive to Westend runtime, and configure the runtime to
      accept Ethereum signed transaction
      
      * Polkadot OmniNode Docs (#6094)
      
      provides low-level documentation on how the omni-node is meant to work.
      This is meant to act as reusable material for other teams (e.g.
      Papermoon and W3F) to use and integrate into the high level Polkadot
      documentation.
      
      Broadly speaking, for omni-node to have great rust-docs, we need to
      focus on the following crates, all of which got a bit of love in this
      PR:
      
      1. `sp-genesis-builder`
      2. `polkadot-omni-node`
      3. `polkadot-omni-node-lib`
      4. `frame-omni-bencher`
      
      On top of this, we have now: 
      
      * `polkadot_sdk_docs::guides` contains two new steps demonstrating the
      most basic version of composing your pallet, putting it into a runtime,
      and putting that runtime into omni-node
      * `polkadot_sdk_docs::reference_docs::omni_node` to explain in more
      detail how omni-node differs from the old-school node.
      * `polkadot_sdk_docs::reference_docs::frame_weight_benchmarking` to
      finally have a minimal reference about weights and benchmarking.
      * It provides tests for some of the steps in
      https://github.com/paritytech/polkadot-sdk/issues/5568
      
      
      closes https://github.com/paritytech/polkadot-sdk/issues/5568
      closes https://github.com/paritytech/polkadot-sdk/issues/4781
      
      Next steps
      
      - [x] Ensure the README of the parachain template is up-to-date.
      @iulianbarbu
      
      
      - [ ] Readme for `polkadot-omni-node` and similar is updated. For now,
      use `cargo-readme` and copy over the rust-docs.
      
      To build the branch locally and run this:
      https://paritytech.github.io/polkadot-sdk/master/polkadot_sdk_docs/meta_contributing/index.html#how-to-develop-locally
      
      ---------
      
      Co-authored-by: default avatarIulian Barbu <14218860+iulianbarbu@users.noreply.github.com>
      Co-authored-by: default avatarSebastian Kunert <skunert49@gmail.com>
      Co-authored-by: default avatarMichal Kucharczyk <1728078+michalkucharczyk@users.noreply.github.com>
      
      * Fix `zombienet-bridges-0001-asset-transfer-works` (#6175)
      
      Closes https://github.com/paritytech/polkadot-sdk/issues/6161
      
      Westend BridgeHub freezes for a while at block 3 and if we try to init
      the bridge and fund the accounts during that time, it fails. So we wait
      untill all the parachains produced at least 10 blocks, in order to make
      sure that they work reliably.
      
      * [pallet-revive] fix hardcoded gas in tests (#6192)
      
      Fix hardcoded gas limits in tests
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * Added Trusted Query API implementation for Westend and Rococo relay chains (#6212)
      
      Added missing API methods to Rococo and Westend parachains.
      Preparatory work for making chopstick tests run smoothly.
      Follow-up of
      [PR#6039](https://github.com/paritytech/polkadot-sdk/pull/6039)
      
      * Snowbridge: PNA Audit Better Documentation and minor Refactorings (#6216)
      
      # Description
      
      Snowbridge PNA has been audited. A number of issues where raised due to
      not understanding the fee model for Polkadot Native Assets(PNA)
      implementation. This PR addresses this by adding more comments and
      better naming of private functions.
      
      ## Integration
      
      None, documentation and private method name changes.
      
      * Enable approval-voting-parallel by default on kusama (#6218)
      
      The approval-voting-parallel introduced with
      https://github.com/paritytech/polkadot-sdk/pull/4849 has been tested on
      `versi` and approximately 3 weeks on parity's existing kusama nodes
      https://github.com/paritytech/devops/issues/3583, things worked as
      expected, so enable it by default on all kusama nodes in the next
      release.
      
      The next step will be enabling by default on polkadot if no issue
      arrises while running on kusama.
      
      ---------
      
      Signed-off-by: default avatarAlexandru Gheorghe <alexandru.gheorghe@parity.io>
      
      * pallet macro: Support instantiable pallets in tasks (#5194)
      
      Fix https://github.com/paritytech/polkadot-sdk/issues/5185
      
      also implement handling of attr in expansion in construct-runtime
      
      ---------
      
      Co-authored-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      
      * Disable tests reported in #6062  (#6064)
      
      Flaky tests reported in
      
      #6062
      #6063 (already fixed)
      
      Thx!
      
      * Fix a tiny typo (#6229)
      
      Just fix a tiny typo
      
      * pallet-message-queue: Fix max message size calculation (#6205)
      
      The max size of a message should not depend on the weight left in a
      given execution context. Instead the max message size depends on the
      service weights configured for the pallet. A message that may does not
      fit into `on_idle` is not automatically overweight, because it may can
      be executed successfully in `on_initialize` or in another block in
      `on_idle` when there is more weight left.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * `RuntimeGenesiConfig`: json macro added (#5813)
      
      This PR adds `build_struct_json_patch` which helps to generate a JSON
      used for preset.
      
      Here is doc and example:
      
      https://github.com/paritytech/polkadot-sdk/blob/d868b858/substrate/frame/support/src/generate_genesis_config.rs#L168-L266
      
      And real-world usage:
      
      https://github.com/paritytech/polkadot-sdk/blob/d868b858
      
      /cumulus/parachains/runtimes/assets/asset-hub-rococo/src/genesis_config_presets.rs#L37-L61
      
      Closes #5700
      
      ---------
      
      Co-authored-by: default avatarSebastian Kunert <skunert49@gmail.com>
      
      * substrate-offchain: upgrade hyper to v1 (#5919)
      
      Closes #4896
      
      * pallet-revive: Add stateful address mapping (#6096)
      
      Fixes #5576
      
      This allows contracts to be used with an AccountId32 through normal
      extrinsics and not only through the eth compat layer. It works by adding
      a new extrinsic `map_account` that lets people register their
      AccountId32.
      
      ---------
      
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarCyrill Leutwiler <cyrill@parity.io>
      
      * Fix migrations for pallet-xcm (#6148)
      
      Relates to: https://github.com/paritytech/polkadot-sdk/pull/4826
      Relates to: https://github.com/paritytech/polkadot-sdk/issues/3214
      
      ## Description
      
      `pallet-xcm` stores some operational data that uses `Versioned*` XCM
      types. When we add a new XCM version (XV), we deprecate XV-2 and remove
      XV-3. Without proper migration, this can lead to issues with
      [undecodable
      storage](https://github.com/paritytech/polkadot-sdk/actions/runs/11381324568/job/31662577532?pr=6092),
      as was identified on the XCMv5 branch where XCMv2 was removed.
      
      This PR extends the existing `MigrateToLatestXcmVersion` to include
      migration for the `Queries`, `LockedFungibles`, and
      `RemoteLockedFungibles` storage types. Additionally, more checks were
      added to `try_state` for these types.
      
      ## TODO
      - [x] create tracking issue for `polkadot-fellows`
      https://github.com/polkadot-fellows/runtimes/issues/492
      - [x] Add missing `MigrateToLatestXcmVersion` for westend
      - [x] fix pallet-xcm `Queries`
      - fails for Westend
      https://github.com/paritytech/polkadot-sdk/actions/runs/11381324568/job/31662577532?pr=6092
      - `V2` was removed from `Versioned*` stuff, but we have a live data with
      V2 e.g. Queries - e.g. Kusama or Polkadot relay chains
      ```
      VersionNotifier: {
              origin: {
                V2: {
                  parents: 0
                  interior: {
                    X1: {
                      Parachain: 2,124
                    }
                  }
                }
              }
              isActive: true
            } 
      ```
      
      ![image](https://github.com/user-attachments/assets/f59f761b-46a7-4def-8aea-45c4e41c0a00)
      - [x] fix also for `RemoteLockedFungibles` 
      - [x] fix also for `LockedFungibles`
      
      ## Follow-ups
      
      - [ ] deploy on Westend chains before XCMv5
      - [ ] https://github.com/paritytech/polkadot-sdk/issues/6188
      
      ---------
      
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarFrancisco Aguirre <franciscoaguirreperez@gmail.com>
      
      * asset-hubs: simplify xcm-config (#6222)
      
      `ForeignCreatorsSovereignAccountOf` is used by `ForeignCreators` filter
      to convert location to `AccountId`, _after_ `ForeignCreators::IsForeign`
      filter passes for an (asset, location) pair.
      
      The `IsForeign` filter is the actual differentiator, so if a location
      passes it, we should support converting it to an `AccountId`.
      
      As such, this commit replaces `ForeignCreatorsSovereignAccountOf`
      converter with the more general `LocationToAccountId` converter.
      
      Signed-off-by: default avatarAdrian Catangiu <adrian@parity.io>
      
      * Switch node side to v2 candidate receipts (#5679)
      
      on top of https://github.com/paritytech/polkadot-sdk/pull/5423
      
      This PR implements the plumbing work required for
      https://github.com/paritytech/polkadot-sdk/issues/5047 . I also added
      additional helper methods gated by feature "test" in primitives.
      
      TODO:
      - [x] PRDoc
      
      ---------
      
      Signed-off-by: default avatarAndrei Sandu <andrei-mihail@parity.io>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * Fix a flaky zombienet test - 0004-coretime-smoke-test (#6236)
      
      In the test log I noticed that the batch transaction which configures
      the coretime chain fails. However when rerunning the transaction
      manually - it worked. Then I noticed that the coretime chain is
      initially registered via zombienet and then re-registered via
      `0004-configure-relay.js`. Because of this there is a period of time
      when it's not producing blocks and `0004-configure-broker.js` fails to
      setup the coretime chain. My theory is that the transaction has failed
      because the coretime chain is stalled during the re-registration.
      
      Fixes https://github.com/paritytech/polkadot-sdk/issues/6226
      
      * fix experimental-ump-signals tests (#6214)
      
      Resolves https://github.com/paritytech/polkadot-sdk/issues/6200
      
      Also sets the feature on the rococo-parachain. Will be useful for
      zombienet testing
      
      * remove parachains_assigner code (#6171)
      
      Resolves https://github.com/paritytech/polkadot-sdk/issues/5970
      
      Removes the code of the legacy parachains assigner, which was used prior
      to coretime. Now that all networks are upgraded to use the coretime
      assigner, we can remove it.
      
      * [pallet-revive] Add Ethereum JSON-RPC server (#6147)
      
      Redo of https://github.com/paritytech/polkadot-sdk/pull/5953
      
      ---------
      
      Co-authored-by: default avatarAlexander Theißen <alex.theissen@me.com>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * [pallet-revive] Update typeInfo (#6263)
      
      Update typeinfo impl to make it transparent for subxt
      
      see https://github.com/paritytech/subxt/pull/1845
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * pallet-revive: Trade code size for call stack depth (#6264)
      
      This will reduce the call stack depth in order to raise the allowed code
      size. Should allow around 100KB of instructions. This is necessary to
      stay within the memory envelope. More code size is more appropriate for
      testing right now. We will re-evaluate parameters once we have 64bit
      support.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * [pallet-revive] implement tx origin API (#6105)
      
      Implement a syscall to retreive the transaction origin.
      
      ---------
      
      Signed-off-by: default avatarCyrill Leutwiler <bigcyrill@hotmail.com>
      Signed-off-by: default avatarxermicus <cyrill@parity.io>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarAlexander Theißen <alex.theissen@me.com>
      
      * Use frame umbrella crate in `pallet-proxy` and `pallet-multisig` (#5995)
      
      A step towards https://github.com/paritytech/polkadot-sdk/issues/4782
      
      In order to nail down the right preludes in `polkadot-sdk-frame`, we
      need to migrate a number of pallets to be written with it. Moreover,
      migrating our pallets to this simpler patter will encourage the
      ecosystem to also follow along.
      
      If this PR is approved and has no unwanted negative consequences, I will
      make a tracking issue to migrate all pallets to this umbrella crate.
      
      TODO: 
      
      - [x] fix frame benchmarking template. Can we detect the umbrella crate
      in there and have an `if else`? cc @ggwpez
      
      
      - [x] Migrate benchmarking to v2 @re-gius a good candidate for you, you
      can open a PR against my branch.
      - [x] tracking issue with follow-ups
      
      ---------
      
      Co-authored-by: default avatarGuillaume Thiolliere <gui.thiolliere@gmail.com>
      Co-authored-by: default avatarGiuseppe Re <giuseppe.re@parity.io>
      Co-authored-by: default avatarDónal Murray <donal.murray@parity.io>
      Co-authored-by: default avatarShawn Tabrizi <shawntabrizi@gmail.com>
      Co-authored-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
      
      * Migrate pallet-vesting benchmark to v2 (#6254)
      
      Part of:
      
      - #6202.
      
      * Migrate pallet-timestamp benchmark to v2 (#6258)
      
      Part of:
      
      - #6202
      
      ---------
      
      Co-authored-by: default avatarDónal Murray <donalm@seadanda.dev>
      
      * [Identity] Decouple usernames from identities (#5554)
      
      This PR refactors `pallet-identity` to decouple usernames from
      identities.
      
      Main changes in this PR:
      - Separate usernames from identities in storage, allowing for correct
      deposit accounting
      - Introduce the option for username authorities to put up a deposit to
      issue a username
      - Allow authorities to remove usernames by declaring the intent to do
      so, then removing the username after the grace period expires
      - Refactor the authority storage to be keyed by suffix rather than owner
      account.
      - Introduce the concept of a system provider for a username, different
      from a governance allocation, allowing for usernames set by the system
      and not a specific authority
      - Implement multi-block migration to enable all of the changes described
      above
      
      ---------
      
      Signed-off-by: default avatargeorgepisaltu <george.pisaltu@parity.io>
      Co-authored-by: default avatarAnkan <10196091+Ank4n@users.noreply.github.com>
      
      * pallet-revive: Use custom target to build test fixtures (#6266)
      
      This removes the need to use a custom toolchain to build the contract
      test fixtures. Instead, we supply a custom target and use the currently
      in use upstream toolchain.
      
      ---------
      
      Co-authored-by: default avatarJan Bujak <jan@parity.io>
      Co-authored-by: default avatarCyrill Leutwiler <cyrill@parity.io>
      Co-authored-by: command-bot <>
      
      * Fix review in #6258 (#6275)
      
      Co-authored-by: default avatarShawn Tabrizi <shawntabrizi@gmail.com>
      
      * Refactor `pallet-grandpa` to use `v2` benchmarks (#6073)
      
      # Description
      
      This PR moves the `pallet-grandpa` to the `v2` of `frame_benchmarking`.
      I submitted PR #6025 as an external contributor from my own fork, so I
      made this one from within this repo to see how the process would change.
      
      ## Integration
      
      N/A
      
      ## Review Notes
      
      Same as #6025, straightforward.
      
      ---------
      
      Co-authored-by: default avatarShawn Tabrizi <shawntabrizi@gmail.com>
      
      * [pallet-revive] rpc server add docker file (#6278)
      
      Add a docker for pallet-revive eth-rpc
      
       Tested with 
      ```
      sudo docker build . -t eth-rpc -f substrate/frame/revive/rpc/Dockerfile
      sudo docker run --network="host" -e RUST_LOG="info,eth-rpc=debug" eth-rpc
      ```
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarAlexander Theißen <alex.theissen@me.com>
      
      * Bump a timeout in zombienet coretime smoke test (#6268)
      
      polkadot/zombienet_tests/smoke/0004-coretime-smoke-test.zndsl still
      timeouts on CI from time to time. Bumping the timeout a bit more.
      
      Related to https://github.com/paritytech/polkadot-sdk/issues/6226
      
      ---------
      
      Signed-off-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
      
      * Migrate pallet-utility to benchmark v2 (#6276)
      
      Part of:
      
      - #6202.
      
      ---------
      
      Co-authored-by: default avatarDónal Murray <donalm@seadanda.dev>
      
      * [ci] Add publish docker for eth-rpc (#6286)
      
      close https://github.com/paritytech/ci_cd/issues/1073
      
      * Add overhead benchmark to frame-omni-bencher (#5891)
      
      # Benchmark Overhead Command for Parachains
      
      This implements the `benchmark overhead` command for parachains. Full
      context is available at:
      https://github.com/paritytech/polkadot-sdk/issues/5303. Previous attempt
      was this https://github.com/paritytech/polkadot-sdk/pull/5283, but here
      we have integration into frame-omni-bencher and improved tooling.
      
      ## Changes Overview
      
      Users are now able to use `frame-omni-bencher` to generate
      `extrinsic_weight.rs` and `block_weight.rs` files for their runtime. The
      core logic for generating these remains untouched; this PR provides
      mostly machinery to make it work for parachains at all.
      
      Similar to the pallet benchmarks, we gain the option to benchmark based
      on just a runtime:
      
      ```
      frame-omni-bencher v1 benchmark overhead --runtime {{runtime}}
      ```
      
      or with a spec:
      
      ```
      frame-omni-bencher v1 benchmark overhead --chain {{spec}} --genesis-builder spec
      ```
      
      In this case, the genesis state is generated from the runtime presets.
      However, it is also possible to use `--chain` and genesis builder `spec`
      to generate the genesis state from the chain spec.
      
      Additionally, we use metadata to perform some checks based on the
      pallets the runtime exposes:
      
      - If we see the `ParaInherent` pallet, we assume that we are dealing
      with a relay chain. This means that we don't need proof recording during
      import (since there is no storage weight).
      - If we detect the `ParachainSystem` pallet, we assume that we are
      dealing with a parachain and take corresponding actions like patching a
      para id into the genesis state.
      
      On the inherent side, I am currently supplying the standard inherents
      every parachain needs.
      
      In the current state, `frame-omni-bencher` supports all system chains.
      In follow-up PRs, we could add additional inherents to increase
      compatibility.
      
      Since we are building a block during the benchmark, we also need to
      build an extrinsic. By default, I am leveraging subxt to build the xt
      dynamically. If a chain is not compatible with the `SubstrateConfig`
      that comes with `subxt`, it can provide a custom extrinsic builder to
      benchmarking-cli. This requires either a custom bencher implementation
      or an integration into the parachains node.
      
      Also cumulus-test-runtime has been migrated to provide genesis configs.
      
      ## Chain Compatibility
      The current version here is compatible with the system chains and common
      substrate chains. The way to go for others would be to customize the
      frame-omni-bencher by providing a custom extrinsicbuilder. I did an
      example implementation that works for mythical:
      https://github.com/skunert/mythical-bencher
      
      ## Follow-Ups
      - After #6040 is finished, we should integrate this here to make the
      tooling truly useful. In the current form, the state is fairly small and
      not representative.
      
      ## How to Review
      I recommend starting from
      [here](https://github.com/paritytech/polkadot-sdk/pull/5891/files#diff-50830ff756b3ac3403b7739d66c9e3a5185dbea550669ca71b28d19c7a2a54ecR264),
      this method is the main entry point for omni-bencher and `polkadot`
      binary.
      
      TBD:
      - [x] PRDoc
      
      ---------
      
      Co-authored-by: default avatarMichal Kucharczyk <1728078+michalkucharczyk@users.noreply.github.com>
      
      * [pallet-revive] code size API (#6260)
      
      This PR implements the contract API to query the code size of a given
      address.
      
      ---------
      
      Signed-off-by: default avatarCyrill Leutwiler <bigcyrill@hotmail.com>
      Signed-off-by: default avatarxermicus <cyrill@parity.io>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarPG Herveou <pgherveou@gmail.com>
      
      * Publish `polkadot-omni-node` binary (#6057)
      
      Closes https://github.com/paritytech/polkadot-sdk/issues/5566
      
      Publish the `polkadot-omni-node` binary
      
      This is a best effort. I'm not very familiar with the release /
      publishing process and also not sure how to test this.
      @paritytech/release-engineering can you take a look on this PR please ?
      
      ---------
      
      Co-authored-by: default avatarEgorPopelyaev <egor@parity.io>
      
      * [pallet-revive] implement the block hash API (#6246)
      
      - Bound T::Hash to H256
      - Implement the block hash API
      
      ---------
      
      Signed-off-by: default avatarxermicus <cyrill@parity.io>
      Signed-off-by: default avatarCyrill Leutwiler <bigcyrill@hotmail.com>
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * [pallet-revive] Add metrics to eth-rpc (#6288)
      
      Add metrics for eth-rpc
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarAlexander Theißen <alex.theissen@me.com>
      
      * Remove `riscv` feature flag (#6305)
      
      Since https://github.com/paritytech/polkadot-sdk/pull/6266 we no longer
      require a custom toolchain to build the `pallet-revive-fixtures`. Hence
      we no longer have to guard the build behind a feature flag.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * `candidate-validation`: RFC103 implementation (#5847)
      
      Part of https://github.com/paritytech/polkadot-sdk/issues/5047
      On top of https://github.com/paritytech/polkadot-sdk/pull/5679
      
      ---------
      
      Signed-off-by: default avatarAndrei Sandu <andrei-mihail@parity.io>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * Update Treasury to Support Relay Chain Block Number Provider (#3970)
      
      The goal of this PR is to have the treasury pallet work on a parachain
      which does not produce blocks on a regular schedule, thus can use the
      relay chain as a block provider.
      
      Because blocks are not produced regularly, we cannot make the assumption
      that block number increases monotonically, and thus have new logic to
      handle multiple spend periods passing between blocks.
      
      ---------
      
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      Co-authored-by: default avatarMuharem <ismailov.m.h@gmail.com>
      
      * collation-generation: use v2 receipts (#5908)
      
      Part of https://github.com/paritytech/polkadot-sdk/issues/5047
      
      Plus some cleanups
      
      ---------
      
      Signed-off-by: default avatarAndrei Sandu <andrei-mihail@parity.io>
      Co-authored-by: default avatarAndrei Sandu <andrei-mihail@parity.io>
      Co-authored-by: default avatarAndrei Sandu <54316454+sandreim@users.noreply.github.com>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * [eth-rpc] Fixes (#6317)
      
      Various fixes for the release of eth-rpc & ah-westend-runtime
      
      - Bump asset-hub westend spec version
      - Fix the status of the Receipt to properly report failed transactions
      - Fix value conversion between native and eth decimal representation
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * Refactor pallet `claims` (#6318)
      
      - [x] Removing `without_storage_info` and adding bounds on the stored
      types for pallet `claims` - issue
      https://github.com/paritytech/polkadot-sdk/issues/6289
      - [x] Migrating to benchmarking V2 -
      https://github.com/paritytech/polkadot-sdk/issues/6202
      
      ---------
      
      Co-authored-by: default avatarGuillaume Thiolliere <gui.thiolliere@gmail.com>
      
      * templates: make node compilation optional (#5954)
      
      # Description
      
      Closes #5940  
      
      ## Integration
      
      Node devs that rely on templates' nodes binaries for minimal or
      parachain would need to follow the updated templates' README.mds again
      to find how to build the nodes' binaries.
      
      ## Review Notes
      
      Conditional compilation of virtual workspaces would compile the
      `members` list as if we passed `--workspace` flag to `cargo build` ,
      except when adding a `default-members` list which will be used for any
      cargo command executed in the virtual workspace root. To build the full
      members list needs passing `--workspace` flag.
      
      Other options investigated:
      - feature guard the `node` crate by defining a feature in the `node`
      crate, but it feels too complex since all code needs to be feature
      guarded. I haven't tried it but technically speaking it might work. I
      think though it looks awkward and my opinion is that the alternative is
      better.
      - defining features in the virtual workspace's Cargo.toml doesn't work
      (thought that I might create a feature that will have a dependency on
      the `node` crate and then not passing the feature to cargo build results
      in ignoring the `node` crate)
      - skipping compilation by using an environment variable, read in the
      build script, that will exit compilation abruptly if not set, but I
      couldn't make it work.
      - exclude the crate from the members list and build it specifically by
      passing `--package minimal-template-node` flag to the `cargo build`
      command. This has the disadvantage of not allowing IDEs based on rust
      analyzer to index/compile the node crate.
      
      My conclusion is that any option would require two commands to build the
      template, one with the node and one without, and both must be included
      in the README or templates usage documentation. If it comes which ones
      to pick I am in favor of the `default-members` option, which requires
      minimal intervention and expresses how cargo commands are executed on
      top of the workspace members, and what's left out from regular usage.
      
      ### Testing
      
      Testing was conducted as described bellow:
      
      - [x] zombienet with `minimal-template-node` , `parachain-template-node`
      and `polkadot-omni-node`. Things work as expected.
      - [x] no chopsticks testing was conducted - feels a bit out of scope for
      OmniNode related docs and overall testing when promoting it over the
      templates' nodes.
      - [x] testing the changes for the sync templates workflow (ignore the
      added comment from the Cargo.tomls, it was removed here on this branch:
      [99bff3e2](https://github.com/paritytech/polkadot-sdk/pull/5954/commits/99bff3e2
      
      )):
      [minimal](https://github.com/paritytech-stg/polkadot-sdk-minimal-template/pull/22/files#diff-2e9d962a08321605940b5a657135052fbcef87b5e360662bb527c96d9a615542R9),
      [parachain](https://github.com/paritytech-stg/polkadot-sdk-parachain-template/pull/19/files#diff-2e9d962a08321605940b5a657135052fbcef87b5e360662bb527c96d9a615542R9),
      [solochain](https://github.com/paritytech-stg/polkadot-sdk-solochain-template/pull/17/files#diff-2e9d962a08321605940b5a657135052fbcef87b5e360662bb527c96d9a615542R9).
      The links correspond to PRs opened by a bot after manually starting the
      sync-templates workflow on `paritytech-stg` org to test the end result
      of the `Cargo.toml` changes.
      
      ---------
      
      Signed-off-by: default avatarIulian Barbu <iulian.barbu@parity.io>
      Co-authored-by: default avatarKian Paimani <5588131+kianenigma@users.noreply.github.com>
      
      * Migrate pallet-glutton benchmark to v2 (#6296)
      
      Part of:
      
      - #6202.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
      Co-authored-by: default avatarDónal Murray <donalm@seadanda.dev>
      Co-authored-by: default avatarGiuseppe Re <giuseppe.re@parity.io>
      Co-authored-by: default avatarDónal Murray <donal.murray@parity.io>
      
      * Migrate pallet-election-provider-multi-phase benchmark to v2 and improve doc (#6316)
      
      Part of:
      
      - #6202.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarGuillaume Thiolliere <gui.thiolliere@gmail.com>
      Co-authored-by: default avatarGuillaume Thiolliere <guillaume.thiolliere@parity.io>
      Co-authored-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
      
      * fix claim queue size (#6257)
      
      Reported in
      https://github.com/paritytech/polkadot-sdk/issues/6161#issuecomment-2432097120
      
      Fixes a bug introduced in
      https://github.com/paritytech/polkadot-sdk/pull/5461, where the claim
      queue would contain entries even if the validator groups storage is
      empty (which happens during the first session).
      
      This PR sets the claim queue core count to be the minimum between the
      num_cores param and the number of validator groups
      
      TODO:
      - [x] prdoc
      - [x] unit test
      
      * Bump the ci_dependencies group across 1 directory with 3 updates (#6340)
      
      Bumps the ci_dependencies group with 3 updates in the / directory:
      [docker/build-push-action](https://github.com/docker/build-push-action),
      [actions/setup-node](https://github.com/actions/setup-node) and
      [lycheeverse/lychee-action](https://github.com/lycheeverse/lychee-action).
      
      Updates `docker/build-push-action` from 5 to 6
      <details>
      <summary>Release notes</summary>
      <p><em>Sourced from <a
      href="https://github.com/docker/build-push-action/releases">docker/build-push-action's
      releases</a>.</em></p>
      <blockquote>
      <h2>v6.0.0</h2>
      <ul>
      <li>Export build record and generate <a
      href="https://docs.docker.com/build/ci/github-actions/build-summary/">build
      summary</a> by <a
      href="https://github.com/crazy-max"><code>@​crazy-max</code></a> in <a
      href="https://redirect.github.com/docker/build-push-action/pull/1120">docker/build-push-action#1120</a></li>
      <li>Bump <code>@​docker/actions-toolkit</code> from 0.24.0 to 0.26.0 in
      <a
      href="https://redirect.github.com/docker/build-push-action/pull/1132">docker/build-push-action#1132</a>
      <a
      href="https://redirect.github.com/docker/build-push-action/pull/1136">docker/build-push-action#1136</a>
      <a
      href="https://redirect.github.com/docker/build-push-action/pull/1138">docker/build-push-action#1138</a></li>
      <li>Bump braces from 3.0.2 to 3.0.3 in <a
      href="https://redirect.github.com/docker/build-push-action/pull/1137">docker/build-push-action#1137</a></li>
      </ul>
      <blockquote>
      <p>[!NOTE]
      This major release adds support for generating <a
      href="https://docs.docker.com/build/ci/github-actions/build-summary/">Build
      summary</a> and exporting build record for your build. You can disable
      this feature by setting <a
      href="https://docs.docker.com/build/ci/github-actions/build-summary/#disable-job-summary">
      <code>DOCKER_BUILD_NO_SUMMARY: true</code> environment variable in your
      workflow</a>.</p>
      </blockquote>
      <p><strong>Full Changelog</strong>: <a
      href="https://github.com/docker/build-push-action/compare/v5.4.0...v6.0.0">https://github.com/docker/build-push-action/compare/v5.4.0...v6.0.0</a></p>
      <h2>v5.4.0</h2>
      <ul>
      <li>Show builder information before building by <a
      href="https://github.com/crazy-max"><code>@​crazy-max</code></a> in <a
      href="https://redirect.github.com/docker/build-push-action/pull/1128">docker/build-push-action#1128</a></li>
      <li>Handle attestations correctly with provenance and sbom inputs by <a
      href="https://github.com/crazy-max"><code>@​crazy-max</code></a> in <a
      href="https://redirect.github.com/docker/build-push-action/pull/1086">docker/build-push-action#1086</a></li>
      <li>Bump <code>@​docker/actions-toolkit</code> from 0.19.0 to 0.24.0 in
      <a
      href="https://redirect.github.com/docker/build-push-action/pull/1088">docker/build-push-action#1088</a>
      <a
      href="https://redirect.github.com/docker/build-push-action/pull/1105">docker/build-push-action#1105</a>
      <a
      href="https://redirect.github.com/docker/build-push-action/pull/1121">docker/build-push-action#1121</a>
      <a
      href="https://redirect.github.com/docker/build-push-action/pull/1127">docker/build-push-action#1127</a></li>
      <li>Bump undici from 5.28.3 to 5.28.4 in <a
      href="https://redirect.github.com/docker/build-push-action/pull/1090">docker/build-push-action#1090</a></li>
      </ul>
      <p><strong>Full Changelog</strong>: <a
      href="https://github.com/docker/build-push-action/compare/v5.3.0...v5.4.0">https://github.com/docker/build-push-action/compare/v5.3.0...v5.4.0</a></p>
      <h2>v5.3.0</h2>
      <ul>
      <li>Bump <code>@​docker/actions-toolkit</code> from 0.18.0 to 0.19.0 in
      <a
      href="https://redirect.github.com/docker/build-push-action/pull/1080">docker/build-push-action#1080</a></li>
      </ul>
      <p><strong>Full Changelog</strong>: <a
      href="https://github.com/docker/build-push-action/compare/v5.2.0...v5.3.0">https://github.com/docker/build-push-action/compare/v5.2.0...v5.3.0</a></p>
      <h2>v5.2.0</h2>
      <ul>
      <li>Disable quotes detection for <code>outputs</code> input by <a
      href="https://github.com/crazy-max"><code>@​crazy-max</code></a> in <a
      href="https://redirect.github.com/docker/build-push-action/pull/1074">docker/build-push-action#1074</a></li>
      <li>Warn about ignored inputs by <a
      href="https://github.com/favonia"><code>@​favonia</code></a> in <a
      href="https://redirect.github.com/docker/build-push-action/pull/1019">docker/build-push-action#1019</a></li>
      <li>Bump <code>@​docker/actions-toolkit</code> from 0.14.0 to 0.18.0 in
      <a
      href="https://redirect.github.com/docker/build-push-action/pull/1070">docker/build-push-action#1070</a></li>
      <li>Bump undici from 5.26.3 to 5.28.3 in <a
      href="https://redirect.github.com/docker/build-push-action/pull/1057">docker/build-push-action#1057</a></li>
      </ul>
      <p><strong>Full Changelog</strong>: <a
      href="https://github.com/docker/build-push-action/compare/v5.1.0...v5.2.0">https://github.com/docker/build-push-action/compare/v5.1.0...v5.2.0</a></p>
      <h2>v5.1.0</h2>
      <ul>
      <li>Add <code>annotations</code> input by <a
      href="https://github.com/crazy-max"><code>@​crazy-max</code></a> in <a
      href="https://redirect.github.com/docker/build-push-action/pull/992">docker/build-push-action#992</a></li>
      <li>Add <code>secret-envs</code> input by <a
      href="https://github.com/elias-lundgren"><code>@​elias-lundgren</code></a>
      in <a
      href="https://redirect.github.com/docker/build-push-action/pull/980">docker/build-push-action#980</a></li>
      <li>Bump <code>@​babel/traverse</code> from 7.17.3 to 7.23.2 in <a
      href="https://redirect.github.com/docker/build-push-action/pull/991">docker/build-push-action#991</a></li>
      <li>Bump <code>@​docker/actions-toolkit</code> from 0.13.0-rc.1 to
      0.14.0 in <a
      href="https://redirect.github.com/docker/build-push-action/pull/990">docker/build-push-action#990</a>
      <a
      href="https://redirect.github.com/docker/build-push-action/pull/1006">docker/build-push-action#1006</a></li>
      </ul>
      <p><strong>Full Changelog</strong>: <a
      href="https://github.com/docker/build-push-action/compare/v5.0.0...v5.1.0">https://github.com/docker/build-push-action/compare/v5.0.0...v5.1.0</a></p>
      </blockquote>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/docker/build-push-action/commit/4f58ea79222b3b9dc2c8bbdd6debcef730109a75"><code>4f58ea7</code></a>
      Merge pull request <a
      href="https://redirect.github.com/docker/build-push-action/issues/1234">#1234</a>
      from docker/dependabot/npm_and_yarn/docker/actions-t...</li>
      <li><a
      href="https://github.com/docker/build-push-action/commit/49b5ea61c60477d214908bb6e23ce05c074ef04e"><code>49b5ea6</code></a>
      chore: update generated content</li>
      <li><a
      href="https://github.com/docker/build-push-action/commit/13c9fddd72db0ce3cd9d87eb53e0480d2a32a77b"><code>13c9fdd</code></a>
      chore(deps): Bump <code>@​docker/actions-toolkit</code> from 0.38.0 to
      0.39.0</li>
      <li><a
      href="https://github.com/docker/build-push-action/commit/e44afff3590e1d4f93b6adc72376512edb012a7c"><code>e44afff</code></a>
      Merge pull request <a
      href="https://redirect.github.com/docker/build-push-action/issues/1232">#1232</a>
      from docker/dependabot/npm_and_yarn/path-to-regexp-6...</li>
      <li><a
      href="https://github.com/docker/build-push-action/commit/67ebad331f4ca45e39184b280dbacb11eb3beae0"><code>67ebad3</code></a>
      chore(deps): Bump path-to-regexp from 6.2.2 to 6.3.0</li>
      <li><a
      href="https://github.com/docker/build-push-action/commit/32945a339266b759abcbdc89316275140b0fc960"><code>32945a3</code></a>
      Merge pull request <a
      href="https://redirect.github.com/docker/build-push-action/issues/1230">#1230</a>
      from docker/dependabot/npm_and_yarn/docker/actions-t...</li>
      <li><a
      href="https://github.com/docker/build-push-action/commit/e0fe9cf0f26132beab7b62929bd647eef9e7df31"><code>e0fe9cf</code></a>
      chore: update generated content</li>
      <li><a
      href="https://github.com/docker/build-push-action/commit/8f1ff6bf9a836299c21b10f942be49efb52a832c"><code>8f1ff6b</code></a>
      chore(deps): Bump <code>@​docker/actions-toolkit</code> from 0.37.1 to
      0.38.0</li>
      <li><a
      href="https://github.com/docker/build-push-action/commit/5cd11c3a4ced054e52742c5fd54dca954e0edd85"><code>5cd11c3</code></a>
      Merge pull request <a
      href="https://redirect.github.com/docker/build-push-action/issues/1211">#1211</a>
      from crazy-max/summary-info-message</li>
      <li><a
      href="https://github.com/docker/build-push-action/commit/0aba704831628413787ada4cf0e8f04d977f1d21"><code>0aba704</code></a>
      chore: update generated content</li>
      <li>Additional commits viewable in <a
      href="https://github.com/docker/build-push-action/compare/v5...v6">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      Updates `actions/setup-node` from 4.0.4 to 4.1.0
      <details>
      <summary>Release notes</summary>
      <p><em>Sourced from <a
      href="https://github.com/actions/setup-node/releases">actions/setup-node's
      releases</a>.</em></p>
      <blockquote>
      <h2>v4.1.0</h2>
      <h2>What's Changed</h2>
      <ul>
      <li>Resolve High Security Alerts by upgrading Dependencies by <a
      href="https://github.com/aparnajyothi-y"><code>@​aparnajyothi-y</code></a>
      in <a
      href="https://redirect.github.com/actions/setup-node/pull/1132">actions/setup-node#1132</a></li>
      <li>Upgrade IA Publish by <a
      href="https://github.com/Jcambass"><code>@​Jcambass</code></a> in <a
      href="https://redirect.github.com/actions/setup-node/pull/1134">actions/setup-node#1134</a></li>
      <li>Revise <code>isGhes</code> logic by <a
      href="https://github.com/jww3"><code>@​jww3</code></a> in <a
      href="https://redirect.github.com/actions/setup-node/pull/1148">actions/setup-node#1148</a></li>
      <li>Add architecture to cache key by <a
      href="https://github.com/pengx17"><code>@​pengx17</code></a> in <a
      href="https://redirect.github.com/actions/setup-node/pull/843">actions/setup-node#843</a>
      This addresses issues with caching by adding the architecture (arch) to
      the cache key, ensuring that cache keys are accurate to prevent
      conflicts.
      Note: This change may break previous cache keys as they will no longer
      be compatible with the new format.</li>
      </ul>
      <h2>New Contributors</h2>
      <ul>
      <li><a href="https://github.com/jww3"><code>@​jww3</code></a> made their
      first contribution in <a
      href="https://redirect.github.com/actions/setup-node/pull/1148">actions/setup-node#1148</a></li>
      <li><a href="https://github.com/pengx17"><code>@​pengx17</code></a> made
      their first contribution in <a
      href="https://redirect.github.com/actions/setup-node/pull/843">actions/setup-node#843</a></li>
      </ul>
      <p><strong>Full Changelog</strong>: <a
      href="https://github.com/actions/setup-node/compare/v4...v4.1.0">https://github.com/actions/setup-node/compare/v4...v4.1.0</a></p>
      </blockquote>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/actions/setup-node/commit/39370e3970a6d050c480ffad4ff0ed4d3fdee5af"><code>39370e3</code></a>
      fix: add arch to cached path (<a
      href="https://redirect.github.com/actions/setup-node/issues/843">#843</a>)</li>
      <li><a
      href="https://github.com/actions/setup-node/commit/abb238b1313d8ef4d3e3a96d204e08329cafbf85"><code>abb238b</code></a>
      Revise <code>isGhes</code> logic (<a
      href="https://redirect.github.com/actions/setup-node/issues/1148">#1148</a>)</li>
      <li><a
      href="https://github.com/actions/setup-node/commit/aca7b64a59c0063db8564e0ffdadd3887f1cbae5"><code>aca7b64</code></a>
      Merge pull request <a
      href="https://redirect.github.com/actions/setup-node/issues/1134">#1134</a>
      from actions/Jcambass-patch-1</li>
      <li><a
      href="https://github.com/actions/setup-node/commit/88de2a3d99c13aa734c49200e8bc673fb0a80ab8"><code>88de2a3</code></a>
      Resolve High Security Alerts by upgrading Dependencies (<a
      href="https://redirect.github.com/actions/setup-node/issues/1132">#1132</a>)</li>
      <li><a
      href="https://github.com/actions/setup-node/commit/d6ebc7b438e9cf1b22a3c440a164b179ed0e37d6"><code>d6ebc7b</code></a>
      Upgrade IA Publish</li>
      <li>See full diff in <a
      href="https://github.com/actions/setup-node/compare/v4.0.4...v4.1.0">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      Updates `lycheeverse/lychee-action` from 2.0.1 to 2.0.2
      <details>
      <summary>Release notes</summary>
      <p><em>Sourced from <a
      href="https://github.com/lycheeverse/lychee-action/releases">lycheeverse/lychee-action's
      releases</a>.</em></p>
      <blockquote>
      <h2>Version 2.0.2</h2>
      <h2>What's Changed</h2>
      <ul>
      <li>Fix a typos by <a
      href="https://github.com/szepeviktor"><code>@​szepeviktor</code></a> in
      <a
      href="https://redirect.github.com/lycheeverse/lychee-action/pull/257">lycheeverse/lychee-action#257</a></li>
      <li>Document and use correct permissions in the GitHub workflows by <a
      href="https://github.com/dscho"><code>@​dscho</code></a> in <a
      href="https://redirect.github.com/lycheeverse/lychee-action/pull/258">lycheeverse/lychee-action#258</a></li>
      <li>Add security policy by <a
      href="https://github.com/mondeja"><code>@​mondeja</code></a> in <a
      href="https://redirect.github.com/lycheeverse/lychee-action/pull/259">lycheeverse/lychee-action#259</a></li>
      </ul>
      <h2>New Contributors</h2>
      <ul>
      <li><a
      href="https://github.com/szepeviktor"><code>@​szepeviktor</code></a>
      made their first contribution in <a
      href="https://redirect.github.com/lycheeverse/lychee-action/pull/257">lycheeverse/lychee-action#257</a></li>
      <li><a href="https://github.com/mondeja"><code>@​mondeja</code></a> made
      their first contribution in <a
      href="https://redirect.github.com/lycheeverse/lychee-action/pull/259">lycheeverse/lychee-action#259</a></li>
      </ul>
      <p><strong>Full Changelog</strong>: <a
      href="https://github.com/lycheeverse/lychee-action/compare/v2...v2.0.2">https://github.com/lycheeverse/lychee-action/compare/v2...v2.0.2</a></p>
      </blockquote>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/lycheeverse/lychee-action/commit/7cd0af4c74a61395d455af97419279d86aafaede"><code>7cd0af4</code></a>
      Merge commit from fork</li>
      <li><a
      href="https://github.com/lycheeverse/lychee-action/commit/8ad54d3568ac3176a9fb57a0233cf04410b55cde"><code>8ad54d3</code></a>
      fix link</li>
      <li><a
      href="https://github.com/lycheeverse/lychee-action/commit/762333c18963fc10db515e32000e2e4dbcb11f5f"><code>762333c</code></a>
      Create SECURITY.md (<a
      href="https://redirect.github.com/lycheeverse/lychee-action/issues/259">#259</a>)</li>
      <li><a
      href="https://github.com/lycheeverse/lychee-action/commit/71a38a3bd757f6306a6c14206219391d4e5807ed"><code>71a38a3</code></a>
      Document and use correct permissions in the GitHub workflows (<a
      href="https://redirect.github.com/lycheeverse/lychee-action/issues/258">#258</a>)</li>
      <li><a
      href="https://github.com/lycheeverse/lychee-action/commit/f141760066406690a7f54a23762e3d146ea0d721"><code>f141760</code></a>
      Fix a typos (<a
      href="https://redirect.github.com/lycheeverse/lychee-action/issues/257">#257</a>)</li>
      <li>See full diff in <a
      href="https://github.com/lycheeverse/lychee-action/compare/2bb232618be239862e31382c5c0eaeba12e5e966...7cd0af4c74a61395d455af97419279d86aafaede">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      
      Dependabot will resolve any conflicts with this PR as long as you don't
      alter it yourself. You can also trigger a rebase manually by commenting
      `@dependabot rebase`.
      
      [//]: # (dependabot-automerge-start)
      [//]: # (dependabot-automerge-end)
      
      ---
      
      <details>
      <summary>Dependabot commands and options</summary>
      <br />
      
      You can trigger Dependabot actions by commenting on this PR:
      - `@dependabot rebase` will rebase this PR
      - `@dependabot recreate` will recreate this PR, overwriting any edits
      that have been made to it
      - `@dependabot merge` will merge this PR after your CI passes on it
      - `@dependabot squash and merge` will squash and merge this PR after
      your CI passes on it
      - `@dependabot cancel merge` will cancel a previously requested merge
      and block automerging
      - `@dependabot reopen` will reopen this PR if it is closed
      - `@dependabot close` will close this PR and stop Dependabot recreating
      it. You can achieve the same result by closing it manually
      - `@dependabot show <dependency name> ignore conditions` will show all
      of the ignore conditions of the specified dependency
      - `@dependabot ignore <dependency name> major version` will close this
      group update PR and stop Dependabot creating any more for the specific
      dependency's major version (unless you unignore this specific
      dependency's major version or upgrade to it yourself)
      - `@dependabot ignore <dependency name> minor version` will close this
      group update PR and stop Dependabot creating any more for the specific
      dependency's minor version (unless you unignore this specific
      dependency's minor version or upgrade to it yourself)
      - `@dependabot ignore <dependency name>` will close this group update PR
      and stop Dependabot creating any more for the specific dependency
      (unless you unignore this specific dependency or upgrade to it yourself)
      - `@dependabot unignore <dependency name>` will remove all of the ignore
      conditions of the specified dependency
      - `@dependabot unignore <dependency name> <ignore condition>` will
      remove the ignore condition of the specified dependency and ignore
      conditions
      
      
      </details>
      
      Signed-off-by: default avatardependabot[bot] <support@github.com>
      Co-authored-by: default avatardependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
      
      * inclusion emulator: correctly handle UMP signals (#6178)
      
      Changes inclusion emulator to not count the UMP signals when checking
      ump message constraints.
      
      ---------
      
      Signed-off-by: default avatarAndrei Sandu <andrei-mihail@parity.io>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * migrate pallet-recovery to benchmark V2 syntax (#6299)
      
      Part of:
      * #6202
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
      
      * Disable flaky tests reported in #6343 / #6345 (#6346)
      
      test: zombienet-polkadot-functional-0018-shared-core-idle-parachain
      Disable flaky test reported in
      https://github.com/paritytech/polkadot-sdk/issues/6343
      
      test: zombienet-polkadot-functional-0016-approval-voting-parallel
      Disable flaky test reported in
      https://github.com/paritytech/polkadot-sdk/issues/6345
      
      Co-authored-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
      
      * `statement-distribution`: RFC103 implementation (#5883)
      
      Part of https://github.com/paritytech/polkadot-sdk/issues/5047
      On top of https://github.com/paritytech/polkadot-sdk/pull/5679
      
      ---------
      
      Signed-off-by: default avatarAndrei Sandu <andrei-mihail@parity.io>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * [pallet-revive] rework balance transfers (#6187)
      
      This PR removes the `transfer` syscall and changes balance transfers to
      make the existential deposit (ED) fully transparent for contracts.
      
      The `transfer` API is removed since there is no corresponding EVM opcode
      and transferring via a call introduces barely any overhead.
      
      We make the ED transparent to contracts by transferring the ED from the
      call origin to nonexistent accounts. Without this change, transfers to
      nonexistant accounts will transfer the supplied value minus the ED from
      the contracts viewpoint, and consequentially fail if the supplied value
      lies below the ED. Changing this behavior removes the need for contract
      code to handle this rather annoying corner case and aligns better with
      the EVM. The EVM charges a similar deposit from the gas meter, so
      transferring the ED from the call origin is practically the same as the
      call origin pays for gas.
      
      ---------
      
      Signed-off-by: default avatarxermicus <cyrill@parity.io>
      Signed-off-by: default avatarCyrill Leutwiler <bigcyrill@hotmail.com>
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarPG Herveou <pgherveou@gmail.com>
      
      * Silent annoying log (#6351)
      
      The logline in question doesn't indeed present any interest for a node
      operator (I mean, there is not much he can do about that warning), but
      in a heavy transaction load situation, when each of 5000 transactions in
      txpool produces a warning, it's really annoying. Still, it's useful for
      a developer, so I propose to log it at the `debug` level.
      
      * Bounty Pallet: add `approve_bounty_with_curator` call to `bounties` pallet (#5961)
      
      Resolves issue https://github.com/paritytech/polkadot-sdk/issues/5928
      
      Adds `approve_bounty_with_curator` call to the `bounties` pallet to
      combine functions of `approve_bounty` and `propose_curator` into one
      call. Also adds a new status `ApprovedWithCurator` required to
      distinguish if bounty was approved with curator when skipping through
      `Funded` status and moving to `CuratorProposed` status.
      
      If `unassign_curator` is called after `approve_bounty_with_curator` the
      process will fall back to the old flow of calling `propose_curator`
      separately.
      
      ---------
      
      Co-authored-by: default avatarDavidK <davidk@parity.io>
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarAnkan <10196091+Ank4n@users.noreply.github.com>
      
      * authority-discovery: Populate DHT records with public listen addresses (#6298)
      
      This PR's main goal is to add public listen addresses to the DHT
      authorities records. This change improves the discoverability of
      validators that did not provide the `--public-addresses` flag.
      
      This PR populates the authority DHT records with public listen addresses
      if any.
      
      The change effectively ensures that addresses are added to the DHT
      record in following order:
       1. Public addresses provided by CLI `--public-addresses`
       2. Maximum of 4 public (global) listen addresses (if any)
      3. Any external addresses discovered from the network (ie from
      `/identify` protocol)
      
      
      While at it, this PR adds the following constraints on the number of
      addresses:
      - Total number of addresses cached is bounded at 16 (increased from 10).
      - A maximum number of 32 addresses are published to DHT records
      (previously unbounded).
        - A maximum of 4 global listen addresses are utilized.
            
      This PR also removes the following warning:
      `WARNING: No public address specified, validator node may not be
      reachable.`
      
      ### Next Steps
      - [ ] deploy and monitor in versi network
      
      Closes: https://github.com/paritytech/polkadot-sdk/issues/6280
      Part of: https://github.com/paritytech/polkadot-sdk/issues/5266
      
      cc @paritytech/networking
      
      ---------
      
      Signed-off-by: default avatarAlexandru Vasile <alexandru.vasile@parity.io>
      Co-authored-by: default avatarDmitry Markin <dmitry@markin.tech>
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      
      * snowbridge: allow account conversion for Ethereum accounts (#6221)
      
      Replace `GlobalConsensusEthereumConvertsFor` with
      `EthereumLocationsConverterFor` that allows `Location` to `AccountId`
      conversion for the Ethereum network root as before, but also for
      Ethereum contracts and accounts.
      
      The new converter only matches explicit `parents: 2` Ethereum locations,
      meaning it should be used only on/by parachains.
      
      * Remove leftover references of Wococo (#6361)
      
      Remove references of now defunct Wococo network.
      
      The XCM `NetworkId::Wococo` will also be removed with [XCMv5
      PR](https://github.com/paritytech/polkadot-sdk/pull/4826)
      
      * migrate pallet-remarks to v2 bench syntax (#6291)
      
      Part of:
      * #6202
      
      ---------
      
      Co-authored-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarGiuseppe Re <giuseppe.re@parity.io>
      
      * [pallet-staking] Additional check for virtual stakers (#5985)
      
      closes https://github.com/paritytech/polkadot-sdk/issues/5791.
      
      This is not strictly necessary but serves as a defensive check.
      
      The staking pallet exposes
      [apis](https://paritytech.github.io/polkadot-sdk/master/sp_staking/trait.StakingUnchecked.html#tymethod.virtual_bond)
      that other runtime pallets (pallet-delegated-staking) can use to create
      virtual stakers. However, there’s no way for pallet-staking to ensure
      that the staker is truly keyless. If the caller (this is a trusted
      caller so this would only happen due to a bug) registers an account with
      a private key as a virtual_staker, these accounts could later interact
      directly with pallet-staking dispatchables (such as
      [bond_extra](https://paritytech.github.io/polkadot-sdk/master/pallet_staking/dispatchables/fn.bond_extra.html))
      and bypass any locking mechanism. The check above ensures this scenario
      can never occur by performing an integrity check.
      
      ---------
      
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      Co-authored-by: command-bot <>
      
      * litep2p: Update litep2p to v0.8.0 (#6353)
      
      This PR updates litep2p to the latest release.
      
      - `KademliaEvent::PutRecordSucess` is renamed to fix word typo
      - `KademliaEvent::GetProvidersSuccess` and
      `KademliaEvent::IncomingProvider` are needed for bootnodes on DHT work
      and will be utilized later
      
      
      ### Added
      
      - kad: Providers part 8: unit, e2e, and `libp2p` conformance tests
      ([#258](https://github.com/paritytech/litep2p/pull/258))
      - kad: Providers part 7: better types and public API, public addresses &
      known providers ([#246](https://github.com/paritytech/litep2p/pull/246))
      - kad: Providers part 6: stop providing
      ([#245](https://github.com/paritytech/litep2p/pull/245))
      - kad: Providers part 5: `GET_PROVIDERS` query
      ([#236](https://github.com/paritytech/litep2p/pull/236))
      - kad: Providers part 4: refresh local providers
      ([#235](https://github.com/paritytech/litep2p/pull/235))
      - kad: Providers part 3: publish provider records (start providing)
      ([#234](https://github.com/paritytech/litep2p/pull/234))
      
      ### Changed
      
      - transport_service: Improve connection stability by downgrading
      connections on substream inactivity
      ([#260](https://github.com/paritytech/litep2p/pull/260))
      - transport: Abort canceled dial attempts for TCP, WebSocket and Quic
      ([#255](https://github.com/paritytech/litep2p/pull/255))
      - kad/executor: Add timeout for writting frames
      ([#277](https://github.com/paritytech/litep2p/pull/277))
      - kad: Avoid cloning the `KademliaMessage` and use reference for
      `RoutingTable::closest`
      ([#233](https://github.com/paritytech/litep2p/pull/233))
      - peer_state: Robust state machine transitions
      ([#251](https://github.com/paritytech/litep2p/pull/251))
      - address_store: Improve address tracking and add eviction algorithm
      ([#250](https://github.com/paritytech/litep2p/pull/250))
      - kad: Remove unused serde cfg
      ([#262](https://github.com/paritytech/litep2p/pull/262))
      - req-resp: Refactor to move functionality to dedicated methods
      ([#244](https://github.com/paritytech/litep2p/pull/244))
      - transport_service: Improve logs and move code from tokio::select macro
      ([#254](https://github.com/paritytech/litep2p/pull/254))
      
      ### Fixed
      
      - tcp/websocket/quic: Fix cancel memory leak
      ([#272](https://github.com/paritytech/litep2p/pull/272))
      - transport: Fix pending dials memory leak
      ([#271](https://github.com/paritytech/litep2p/pull/271))
      - ping: Fix memory leak of unremoved `pending_opens`
      ([#274](https://github.com/paritytech/litep2p/pull/274))
      - identify: Fix memory leak of unused `pending_opens`
      ([#273](https://github.com/paritytech/litep2p/pull/273))
      - kad: Fix not retrieving local records
      ([#221](https://github.com/paritytech/litep2p/pull/221))
      
      See release changelog for more details:
      https://github.com/paritytech/litep2p/releases/tag/v0.8.0
      
      cc @paritytech/networking
      
      ---------
      
      Signed-off-by: default avatarAlexandru Vasile <alexandru.vasile@parity.io>
      Co-authored-by: default avatarDmitry Markin <dmitry@markin.tech>
      
      * refactor and harden check_core_index (#6217)
      
      Resolves https://github.com/paritytech/polkadot-sdk/issues/6179
      
      * [Deprecation] deprecate treasury `spend_local` call and related items (#6169)
      
      Resolves https://github.com/paritytech/polkadot-sdk/issues/5930
      
      `spend_local` from `treasury` pallet and associated types are
      deprecated. `spend_local` was being used before with native currency in
      the treasury.
      
      This PR provides a documentation on how to migrate to the `spend` call
      instead.
      
      ### Migration
      
      #### For users who were using only `spend_local` before
      
      To replace `spend_local` functionality configure `Paymaster` pallet
      configuration to be `PayFromAccount` and configure `AssetKind` to be
      `()` and use `spend` call instead.
      This way `spend` call will function as deprecated `spend_local`.
      
      Example:
      ```
      impl pallet_treasury::Config for Runtime {
          ..
          type AssetKind = ();
          type Paymaster = PayFromAccount<Self::Currency, TreasuryAccount>;
          // convert balance 1:1 ratio with native currency
          type BalanceConverter = UnityAssetBalanceConversion;
          ..
      }
      ```
      
      #### For users who were already using `spend` with all other assets,
      except the native asset
      
      Use `NativeOrWithId` type for `AssetKind` and have a `UnionOf` for
      native and non-native assets, then use that with `PayAssetFromAccount`.
      
      Example from `kitchensink-runtime`:
      ```
      // Union of native currency and assets
      pub type NativeAndAssets =
          UnionOf<Balances, Assets, NativeFromLeft, NativeOrWithId<u32>, AccountId>;
      
      impl pallet_treasury::Config for Runtime {
          ..
          type AssetKind = NativeOrWithId<u32>;
          type Paymaster = PayAssetFromAccount<NativeAndAssets, TreasuryAccount>;
          type BalanceConverter = AssetRate;
          ..
      }
      
      // AssetRate pallet configuration
      impl pallet_asset_rate::Config for Runtime {
          ..
          type Currency = Balances;
          type AssetKind = NativeOrWithId<u32>;
          ..
      }
      ```
      
      ---------
      
      Co-authored-by: default avatarDavidK <davidk@parity.io>
      Co-authored-by: default avatarMuharem <ismailov.m.h@gmail.com>
      
      * Run check semver in MQ (#6287)
      
      For marking `Check SemVer` required
      
      * Bump the known_good_semver group across 1 directory with 3 updates (#6339)
      
      Bumps the known_good_semver group with 2 updates in the / directory:
      [serde](https://github.com/serde-rs/serde) and
      [syn](https://github.com/dtolnay/syn).
      
      Updates `serde` from 1.0.210 to 1.0.214
      <details>
      <summary>Release notes</summary>
      <p><em>Sourced from <a
      href="https://github.com/serde-rs/serde/releases">serde's
      releases</a>.</em></p>
      <blockquote>
      <h2>v1.0.214</h2>
      <ul>
      <li>Implement IntoDeserializer for all Deserializers in serde::de::value
      module (<a
      href="https://redirect.github.com/serde-rs/serde/issues/2568">#2568</a>,
      thanks <a
      href="https://github.com/Mingun"><code>@​Mingun</code></a>)</li>
      </ul>
      <h2>v1.0.213</h2>
      <ul>
      <li>Fix support for macro-generated <code>with</code> attributes inside
      a newtype struct (<a
      href="https://redirect.github.com/serde-rs/serde/issues/2847">#2847</a>)</li>
      </ul>
      <h2>v1.0.212</h2>
      <ul>
      <li>Fix hygiene of macro-generated local variable accesses in
      serde(with) wrappers (<a
      href="https://redirect.github.com/serde-rs/serde/issues/2845">#2845</a>)</li>
      </ul>
      <h2>v1.0.211</h2>
      <ul>
      <li>Improve error reporting about mismatched signature in
      <code>with</code> and <code>default</code> attributes (<a
      href="https://redirect.github.com/serde-rs/serde/issues/2558">#2558</a>,
      thanks <a
      href="https://github.com/Mingun"><code>@​Mingun</code></a>)</li>
      <li>Show variant aliases in error message when variant deserialization
      fails (<a
      href="https://redirect.github.com/serde-rs/serde/issues/2566">#2566</a>,
      thanks <a
      href="https://github.com/Mingun"><code>@​Mingun</code></a>)</li>
      <li>Improve binary size of untagged enum and internally tagged enum
      deserialization by about 12% (<a
      href="https://redirect.github.com/serde-rs/serde/issues/2821">#2821</a>)</li>
      </ul>
      </blockquote>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/serde-rs/serde/commit/418062165f9fe395461db9f61569c3142c584854"><code>4180621</code></a>
      Release 1.0.214</li>
      <li><a
      href="https://github.com/serde-rs/serde/commit/210373b3b65a2eaf9754c158b43da0429807359c"><code>210373b</code></a>
      Merge pull request <a
      href="https://redirect.github.com/serde-rs/serde/issues/2568">#2568</a>
      from Mingun/into_deserializer-for-deserializers</li>
      <li><a
      href="https://github.com/serde-rs/serde/commit/9cda0157331ca09dec16cd8a0b57bd8eb24f8442"><code>9cda015</code></a>
      Implement IntoDeserializer for all Deserializers in serde::de::value
      module</li>
      <li><a
      href="https://github.com/serde-rs/serde/commit/58a8d229315553c4ae0a8d7eee8e382fbae4b4bf"><code>58a8d22</code></a>
      Release 1.0.213</li>
      <li><a
      href="https://github.com/serde-rs/serde/commit/ef0ed22593a17a5af5ebe48d3b6ef7c3de1b116a"><code>ef0ed22</code></a>
      Merge pull request <a
      href="https://redirect.github.com/serde-rs/serde/issues/2847">#2847</a>
      from dtolnay/newtypewith</li>
      <li><a
      href="https://github.com/serde-rs/serde/commit/79925ac3947483013ba8136e43bc0449b99bd10c"><code>79925ac</code></a>
      Ignore dead_code warning in regression test</li>
      <li><a
      href="https://github.com/serde-rs/serde/commit/b60e4092ec83c70e8c7d39574778349b2c5d9f05"><code>b60e409</code></a>
      Hygiene for macro-generated newtype struct deserialization with 'with'
      attr</li>
      <li><a
      href="https://github.com/serde-rs/serde/commit/fdc36e5c06def28b33d3154f0517969d90b744d8"><code>fdc36e5</code></a>
      Add regression test for issue 2846</li>
      <li><a
      href="https://github.com/serde-rs/serde/commit/49e11ce1bae9fbb9128c9144c4e1051daf7a29ed"><code>49e11ce</code></a>
      Ignore trivially_copy_pass_by_ref pedantic clippy lint in test</li>
      <li><a
      href="https://github.com/serde-rs/serde/commit/7ae1b5f8f39d7a80daaddcc04565f995427bfc41"><code>7ae1b5f</code></a>
      Release 1.0.212</li>
      <li>Additional commits viewable in <a
      href="https://github.com/serde-rs/serde/compare/v1.0.210...v1.0.214">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      Updates `serde_derive` from 1.0.210 to 1.0.214
      <details>
      <summary>Release notes</summary>
      <p><em>Sourced from <a
      href="https://github.com/serde-rs/serde/releases">serde_derive's
      releases</a>.</em></p>
      <blockquote>
      <h2>v1.0.214</h2>
      <ul>
      <li>Implement IntoDeserializer for all Deserializers in serde::de::value
      module (<a
      href="https://redirect.github.com/serde-rs/serde/issues/2568">#2568</a>,
      thanks <a
      href="https://github.com/Mingun"><code>@​Mingun</code></a>)</li>
      </ul>
      <h2>v1.0.213</h2>
      <ul>
      <li>Fix support for macro-generated <code>with</code> attributes inside
      a newtype struct (<a
      href="https://redirect.github.com/serde-rs/serde/issues/2847">#2847</a>)</li>
      </ul>
      <h2>v1.0.212</h2>
      <ul>
      <li>Fix hygiene of macro-generated local variable accesses in
      serde(with) wrappers (<a
      href="https://redirect.github.com/serde-rs/serde/issues/2845">#2845</a>)</li>
      </ul>
      <h2>v1.0.211</h2>
      <ul>
      <li>Improve error reporting about mismatched signature in
      <code>with</code> and <code>default</code> attributes (<a
      href="https://redirect.github.com/serde-rs/serde/issues/2558">#2558</a>,
      thanks <a
      href="https://github.com/Mingun"><code>@​Mingun</code></a>)</li>
      <li>Show variant aliases in error message when variant deserialization
      fails (<a
      href="https://redirect.github.com/serde-rs/serde/issues/2566">#2566</a>,
      thanks <a
      href="https://github.com/Mingun"><code>@​Mingun</code></a>)</li>
      <li>Improve binary size of untagged enum and internally tagged enum
      deserialization by about 12% (<a
      href="https://redirect.github.com/serde-rs/serde/issues/2821">#2821</a>)</li>
      </ul>
      </blockquote>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/serde-rs/serde/commit/418062165f9fe395461db9f61569c3142c584854"><code>4180621</code></a>
      Release 1.0.214</li>
      <li><a
      href="https://github.com/serde-rs/serde/commit/210373b3b65a2eaf9754c158b43da0429807359c"><code>210373b</code></a>
      Merge pull request <a
      href="https://redirect.github.com/serde-rs/serde/issues/2568">#2568</a>
      from Mingun/into_deserializer-for-deserializers</li>
      <li><a
      href="https://github.com/serde-rs/serde/commit/9cda0157331ca09dec16cd8a0b57bd8eb24f8442"><code>9cda015</code></a>
      Implement IntoDeserializer for all Deserializers in serde::de::value
      module</li>
      <li><a
      href="https://github.com/serde-rs/serde/commit/58a8d229315553c4ae0a8d7eee8e382fbae4b4bf"><code>58a8d22</code></a>
      Release 1.0.213</li>
      <li><a
      href="https://github.com/serde-rs/serde/commit/ef0ed22593a17a5af5ebe48d3b6ef7c3de1b116a"><code>ef0ed22</code></a>
      Merge pull request <a
      href="https://redirect.github.com/serde-rs/serde/issues/2847">#2847</a>
      from dtolnay/newtypewith</li>
      <li><a
      href="https://github.com/serde-rs/serde/commit/79925ac3947483013ba8136e43bc0449b99bd10c"><code>79925ac</code></a>
      Ignore dead_code warning in regression test</li>
      <li><a
      href="https://github.com/serde-rs/serde/commit/b60e4092ec83c70e8c7d39574778349b2c5d9f05"><code>b60e409</code></a>
      Hygiene for macro-generated newtype struct deserialization with 'with'
      attr</li>
      <li><a
      href="https://github.com/serde-rs/serde/commit/fdc36e5c06def28b33d3154f0517969d90b744d8"><code>fdc36e5</code></a>
      Add regression test for issue 2846</li>
      <li><a
      href="https://github.com/serde-rs/serde/commit/49e11ce1bae9fbb9128c9144c4e1051daf7a29ed"><code>49e11ce</code></a>
      Ignore trivially_copy_pass_by_ref pedantic clippy lint in test</li>
      <li><a
      href="https://github.com/serde-rs/serde/commit/7ae1b5f8f39d7a80daaddcc04565f995427bfc41"><code>7ae1b5f</code></a>
      Release 1.0.212</li>
      <li>Additional commits viewable in <a
      href="https://github.com/serde-rs/serde/compare/v1.0.210...v1.0.214">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      Updates `syn` from 2.0.82 to 2.0.87
      <details>
      <summary>Release notes</summary>
      <p><em>Sourced from <a
      href="https://github.com/dtolnay/syn/releases">syn's
      releases</a>.</em></p>
      <blockquote>
      <h2>2.0.87</h2>
      <ul>
      <li>Add <a
      href="https://docs.rs/syn/2/syn/buffer/struct.Cursor.html#method.any_group"><code>Cursor::any_group</code></a>
      (<a
      href="https://redirect.github.com/dtolnay/syn/issues/1777">#1777</a>)</li>
      <li>Add <a
      href="https://docs.rs/syn/2/syn/enum.Expr.html#method.peek"><code>Expr::peek</code></a>
      (<a
      href="https://redirect.github.com/dtolnay/syn/issues/1778">#1778</a>)</li>
      <li>Improve syntax support for enum discriminant expressions in
      non-&quot;full&quot; mode (<a
      href="https://redirect.github.com/dtolnay/syn/issues/1779">#1779</a>)</li>
      </ul>
      <h2>2.0.86</h2>
      <ul>
      <li>Support peeking the end of a parse stream (<a
      href="https://redirect.github.com/dtolnay/syn/issues/1689">#1689</a>)</li>
      <li>Allow <code>parse_quote!</code> to produce Vec&lt;Attribute&gt; (<a
      href="https://redirect.github.com/dtolnay/syn/issues/1775">#1775</a>)</li>
      </ul>
      <h2>2.0.85</h2>
      <ul>
      <li>Preserve extern static unsafety in ForeignItem::Verbatim (<a
      href="https://redirect.github.com/dtolnay/syn/issues/1773">#1773</a>)</li>
      </ul>
      <h2>2.0.84</h2>
      <ul>
      <li>Parse safe and explicitly unsafe extern items (<a
      href="https://redirect.github.com/dtolnay/syn/issues/1768">#1768</a>, <a
      href="https://redirect.github.com/rust-lang/rust/issues/123743">rust-lang/rust#123743</a>,
      <a
      href="https://redirect.github.com/rust-lang/rfcs/pull/3484">rust-lang/rfcs#3484</a>)</li>
      <li>Parse self captures: <code>impl Sized + use&lt;Self&gt;</code> (<a
      href="https://redirect.github.com/dtolnay/syn/issues/1772">#1772</a>)</li>
      </ul>
      <h2>2.0.83</h2>
      <ul>
      <li>Documentation improvements</li>
      </ul>
      </blockquote>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/dtolnay/syn/commit/a777cff00528f270b43f40b0a58c5c26fc85a2bd"><code>a777cff</code></a>
      Release 2.0.87</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/1f103d4c175ab62b27537a6907c4b77b6aed6ae7"><code>1f103d4</code></a>
      Merge pull request <a
      href="https://redirect.github.com/dtolnay/syn/issues/1779">#1779</a>
      from dtolnay/scan</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/0986a66e1764ed37a4931dde8c509412474636fe"><code>0986a66</code></a>
      Ignore enum_glob_use pedantic clippy lint</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/ca97c7d82d9837c1b49c085a546a481cf879e619"><code>ca97c7d</code></a>
      Translate expr scanner to table driven</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/8039cb37a02cbf080f48416651141d4c77c05075"><code>8039cb3</code></a>
      Test that every expr can be scanned</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/0132c447fe045431906945178bea219816d5e55f"><code>0132c44</code></a>
      Make scan_expr compilable from integration test</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/7c102c3c8b3dc076c03cbe842266a2b140be6323"><code>7c102c3</code></a>
      Extract non-full expr scanner to module</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/ceaf4d693b2af783874b9aa4d50bb208b84a2609"><code>ceaf4d6</code></a>
      Merge pull request <a
      href="https://redirect.github.com/dtolnay/syn/issues/1778">#1778</a>
      from dtolnay/exprpeek</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/a890e9da22b463b05c06696d4cc767c6cb9d3114"><code>a890e9d</code></a>
      Expose can_begin_expr as Expr::peek</li>
      <li><a
      href="https://github.com/dtolnay/syn/commit/12f068ce0889c41e3bd21662e8a0adfaa07d01d9"><code>12f068c</code></a>
      Merge pull request <a
      href="https://redirect.github.com/dtolnay/syn/issues/1777">#1777</a>
      from dtolnay/anygroup</li>
      <li>Additional commits viewable in <a
      href="https://github.com/dtolnay/syn/compare/2.0.82...2.0.87">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      
      Dependabot will resolve any conflicts with this PR as long as you don't
      alter it yourself. You can also trigger a rebase manually by commenting
      `@dependabot rebase`.
      
      [//]: # (dependabot-automerge-start)
      [//]: # (dependabot-automerge-end)
      
      ---
      
      <details>
      <summary>Dependabot commands and options</summary>
      <br />
      
      You can trigger Dependabot actions by commenting on this PR:
      - `@dependabot rebase` will rebase this PR
      - `@dependabot recreate` will recreate this PR, overwriting any edits
      that have been made to it
      - `@dependabot merge` will merge this PR after your CI passes on it
      - `@dependabot squash and merge` will squash and merge this PR after
      your CI passes on it
      - `@dependabot cancel merge` will cancel a previously requested merge
      and block automerging
      - `@dependabot reopen` will reopen this PR if it is closed
      - `@dependabot close` will close this PR and stop Dependabot recreating
      it. You can achieve the same result by closing it manually
      - `@dependabot show <dependency name> ignore conditions` will show all
      of the ignore conditions of the specified dependency
      - `@dependabot ignore <dependency name> major version` will close this
      group update PR and stop Dependabot creating any more for the specific
      dependency's major version (unless you unignore this specific
      dependency's major version or upgrade to it yourself)
      - `@dependabot ignore <dependency name> minor version` will close this
      group update PR and stop Dependabot creating any more for the specific
      dependency's minor version (unless you unignore this specific
      dependency's minor version or upgrade to it yourself)
      - `@dependabot ignore <dependency name>` will close this group update PR
      and stop Dependabot creating any more for the specific dependency
      (unless you unignore this specific dependency or upgrade to it yourself)
      - `@dependabot unignore <dependency name>` will remove all of the ignore
      conditions of the specified dependency
      - `@dependabot unignore <dependency name> <ignore condition>` will
      remove the ignore condition of the specified dependency and ignore
      conditions
      
      
      </details>
      
      ---------
      
      Signed-off-by: default avatardependabot[bot] <support@github.com>
      Co-authored-by: default avatardependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
      Co-authored-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
      Co-authored-by: default avatarBastian Köcher <info@kchr.de>
      Co-authored-by: default avatarGuillaume Thiolliere <gui.thiolliere@gmail.com>
      
      * [Release|CI/CD] adjust release pipelines (#6366)
      
      This PR contains adjustments to the release pipelines. 
      - RC Automation and Branchoff pipelines now use the PGPKMS key generated
      by the release team to sign related commits directly in the Github flow
      - RC Automation does not use old tagging action. Instead, it creates a
      tag and pushes it using git
      - RC binary is going to be done on the larger github runners setup in
      the` paritytech-release` org
      
      Closes: https://github.com/paritytech/release-engineering/issues/233
      
      * [eth-rpc] proxy /health (#6360)
      
      make the eth-rpc proxy /health and /health/readiness from the proxied
      substrate chain
      see #4802
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * pallet-revive: Use `RUSTUP_TOOLCHAIN` if set (#6365)
      
      We were not passing through the `RUSTUP_TOOLCHAIN` variable to the
      `build.rs` script of our fixtures. This means that setting the toolchain
      like `cargo +1.81 build` had no effect on the fixture build. It would
      always fall back to the default toolchain.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * Migrate pallet-im-online benchmark to v2 (#6295)
      
      Part of:
      
      - #6202.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarGiuseppe Re <giuseppe.re@parity.io>
      
      * Fix statement distribution benchmark (#6369)
      
      I've broken this test with
      https://github.com/paritytech/polkadot-sdk/pull/5883 and this is the
      fix.
      
      The benchmark is now updated to use proper core index and session index
      for the generated candidates.
      
      TODO:
      - [ ] <del> PRDoc </del>
      
      ---------
      
      Signed-off-by: default avatarAndrei Sandu <andrei-mihail@parity.io>
      
      * Remove `sp_runtime::RuntimeString` and replace with `Cow<'static, str>` or `String` depending on use case (#5693)
      
      # Description
      
      As described in https://github.com/paritytech/polkadot-sdk/issues/4001
      `RuntimeVersion` was not encoded consistently using serde. Turned out it
      was a remnant of old times and no longer actually needed. As such I
      removed it completely in this PR and replaced with `Cow<'static, str>`
      for spec/impl names and `String` for error cases.
      
      Fixes https://github.com/paritytech/polkadot-sdk/issues/4001.
      
      ## Integration
      
      For downstream projects the upgrade will primarily consist of following
      two changes:
      ```diff
      #[sp_version::runtime_version]
      pub const VERSION: RuntimeVersion = RuntimeVersion {
      -	spec_name: create_runtime_str!("statemine"),
      -	impl_name: create_runtime_str!("statemine"),
      +	spec_name: alloc::borrow::Cow::Borrowed("statemine"),
      +	impl_name: alloc::borrow::Cow::Borrowed("statemine"),
      ```
      ```diff
      		fn dispatch_benchmark(
      			config: frame_benchmarking::BenchmarkConfig
      -		) -> Result<Vec<frame_benchmarking::BenchmarkBatch>, sp_runtime::RuntimeString> {
      +		) -> Result<Vec<frame_benchmarking::BenchmarkBatch>, alloc::string::String> {
      ```
      
      SCALE encoding/decoding remains the same as before, but serde encoding
      in runtime has changed from bytes to string (it was like this in `std`
      environment already), which most projects shouldn't have issues with. I
      consider the impact of serde encoding here low due to the type only
      being used in runtime version struct and mostly limited to runtime
      internals, where serde encoding/decoding of this data structure is quite
      unlikely (though we did hit exactly this edge-case ourselves
      :sweat_smile:
      
      ).
      
      ## Review Notes
      
      Most of the changes are trivial and mechanical, the only non-trivial
      change is in
      `substrate/primitives/version/proc-macro/src/decl_runtime_version.rs`
      where macro call expectation in `sp_version::runtime_version`
      implementation was replaced with function call expectation.
      
      # Checklist
      
      * [x] My PR includes a detailed description as outlined in the
      "Description" and its two subsections above.
      * [ ] My PR follows the [labeling requirements](
      
      https://github.com/paritytech/polkadot-sdk/blob/master/docs/contributor/CONTRIBUTING.md#Process
      ) of this project (at minimum one label for `T` required)
      * External contributors: ask maintainers to put the right label on your
      PR.
      * [ ] I have made corresponding changes to the documentation (if
      applicable)
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarGuillaume Thiolliere <guillaume.thiolliere@parity.io>
      Co-authored-by: default avatarBastian Köcher <info@kchr.de>
      
      * `chain-spec-builder`: info about patch/full files added (#6373)
      
      There was no good example of what is patch and full genesis config file.
      Some explanation and example were added to the `chain-spec-builder` doc.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarIulian Barbu <14218860+iulianbarbu@users.noreply.github.com>
      
      * pallet-child-bounties index child bounty by parent bounty (#6255)
      
      Resolves https://github.com/paritytech/polkadot-sdk/issues/5929
      
      Migrates `ChildBountyDescriptions` to be indexed instead of unique child
      bounty id unique per all child bounties in the pallet to be unique per
      every parent bounty.
      
      Migrates `(ParentBounty, ChildBounty)` keys inside `ChildBounties`
      storage item to use new `ChildBounty` ids starting from `0`.
      
      @paritytech/frame-coders
      
      ---------
      
      Signed-off-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
      Co-authored-by: default avatarDavidK <davidk@parity.io>
      Co-authored-by: default avatarmuharem <ismailov.m.h@gmail.com>
      Co-authored-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
      
      * litep2p/peerset: Do not disconnect all peers on `SetReservedPeers` command (#6016)
      
      Previously, when receiving the `SetReservedPeers { reserved }` all peers
      not in the `reserved` set were removed.
      
      This is incorrect, the intention of `SetReservedPeers` is to change the
      active set of reserved peers and disconnect previously reserved peers
      not in the new set.
      
      While at it, have added a few other improvements to make the peerset
      more robust:
      - `SetReservedPeers`: does not disconnect all peers
      - `SetReservedPeers`: if a reserved peer is no longer reserved, the
      peerset tries to move the peers to the regular set if the slots allow
      this move. This ensures the (now regular) peer counts towards slot
      allocation.
      - every 1 seconds: If we don't have enough connect peers, add the
      reserved peers to the list that the peerstore ignores. Reserved peers
      are already connected and the peerstore might return otherwise a
      reserved peer
      
      
      ### Next Steps
      
      - [x] More testing
      
      cc @paritytech/networking
      
      ---------
      
      Signed-off-by: default avatarAlexandru Vasile <alexandru.vasile@parity.io>
      Co-authored-by: default avatarDmitry Markin <dmitry@markin.tech>
      Co-authored-by: default avatarMichal Kucharczyk <1728078+michalkucharczyk@users.noreply.github.com>
      
      * polkadot-service: Fix flaky tests (#6376)
      
      The tests used the same paths. When run on CI, each test is run in its
      own process and thus, this "serial_test" crate wasn't used. The tests
      are now using their own thread local tempdir, which ensures that the
      tests are working when running in parallel in the same program or when
      being run individually.
      
      * Don't expose metadata for Runtime APIs that haven't been implemented (#6337)
      
      # Description
      
      Prior to this PR, the metadata for runtime APIs was entirely based on
      that generated by `decl_runtime_apis`. It therefore didn't take into
      account that `impl_runtime_apis` might implement older versions of APIs
      than what has been declared.
      
      This PR filters the returned runtime API metadata to only include
      methods actually implemented, and also avoids including methods labelled
      with `changed_in` (which the previous code was atempting to do already
      but not successfully, owing to the attr being removed prior to the
      check).
      
      We also change all version related things to be `u32`s (rather than
      VERSION being `u32` and `api_version`s being `u64`) for consistency /
      ease of comparison.
      
      A test is added which works with both the `enable-staging-api` feature
      in api/tests enabled or disabled, to check all of this.
      
      ---------
      
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * [Release|CI/CD] Fix GH_TOKEN owner (#6381)
      
      A quick fix to the step that generates a temporary token used in the
      pipeline
      
      * collator protocol: validate descriptor version on the validator side (#6011)
      
      Part of https://github.com/paritytech/polkadot-sdk/issues/5047
      
      TODO:
      
      - [x] prdoc
      - [x] fix/add tests
      
      ---------
      
      Signed-off-by: default avatarAndrei Sandu <andrei-mihail@parity.io>
      Co-authored-by: default avatarAndrei Sandu <andrei-mihail@parity.io>
      Co-authored-by: default avatarAndrei Sandu <54316454+sandreim@users.noreply.github.com>
      
      * sp-api: `impl_runtime_apis!` replace the use of `Self` as a type argument (#4012)
      
      closes #1890 
      
      ### Overview 
      
      Introduces similar checker struct to `CheckTraitDecls` in
      `decl_runtime_apis!` - `CheckTraitImpls`. Overrides
      `visit::visit_type_path` to detect usage of `Self` as a type argument
      within the scope of `impl_runtime_apis!`.
      
      **Note**: only prevents the usage of `Self` as a type argument in an
      angle bracket `<>`, as it is the only use case that fails to compile.
      For example, the code
      [below](https://github.com/paritytech/polkadot-sdk/blob/master/cumulus/parachains/runtimes/bridge-hubs/bridge-hub-westend/src/lib.rs#L1002)
      compiles fine:
      
      ```rs
      impl BridgeMessagesConfig<WithBridgeHubRococoMessagesInstance> for Runtime {
        fn is_relayer_rewarded(relayer: &Self::AccountId) -> bool {
      	  let bench_lane_id = <Self as BridgeMessagesConfig<WithBridgeHubRococoMessagesInstance>>::bench_lane_id();
      	  // ...
      ```
      
      ### Result
      
      Given a block of code like this:
      
      ```rs
      impl_runtime_apis! {
      	impl apis::Core<Block> for Runtime {
      		fn initialize_block(header: &HeaderFor<Self>) -> ExtrinsicInclusionMode {
      			let _: HeaderFor<Self> = header.clone();
      			RuntimeExecutive::initialize_block(header)
      		}
      		// ...
               }
      // ...
      ```
      
      <details open>
      
      <summary>Output:</summary>
      
      ```bash
      $ cargo build --release -p minimal-template-node
        error: `Self` can not be used as type argument in the scope of `impl_runtime_apis!`. Use `Runtime` instead.
           --> /polkadot-sdk/templates/minimal/runtime/src/lib.rs:133:11
            |
        133 |             let _: HeaderFor<Self> = header.clone();
            |                    ^^^^^^^^^^^^^^^
      
        error: `Self` can not be used as type argument in the scope of `impl_runtime_apis!`. Use `Runtime` instead.
           --> /polkadot-sdk/templates/minimal/runtime/src/lib.rs:132:32
            |
        132 |         fn initialize_block(header: &HeaderFor<Self>) -> ExtrinsicInclusionMode {
      ```
      
      </details>
      
      ---------
      
      Co-authored-by: default avatarPavlo Khrystenko <p.khrystenko@gmail.com>
      Co-authored-by: default avatarPavlo Khrystenko <45178695+pkhry@users.noreply.github.com>
      Co-authored-by: default avatarAlexandru Vasile <60601340+lexnv@users.noreply.github.com>
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      
      * Fix #6102 (#6384)
      
      Relax requirements for `assign_core` so that it accepts updates for the
      last scheduled entry.
      
      Fixes #6102
      
      ---------
      
      Co-authored-by: default avatareskimor <eskimor@no-such-url.com>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * pallet-revive: The fixtures are only required for benchmarking (#6385)
      
      * XCM v5 (#4826)
      
      # Context
      
      This PR aims to introduce XCMv5, for now it's in progress and will be
      updated over time.
      This branch will serve as a milestone branch for merging in all features
      we want to add to XCM, roughly outlined
      [here](https://github.com/polkadot-fellows/xcm-format/issues/60).
      More features could be added.
      
      ## TODO
      - [x] Migrate foreign assets from v3 to v4
      - [x] Setup v5 skeleton
      - [x] Remove XCMv2
      - [x] https://github.com/paritytech/polkadot-sdk/pull/5390
      - [x] https://github.com/paritytech/polkadot-sdk/pull/5585
      - [x] https://github.com/paritytech/polkadot-sdk/pull/5420
      - [x] https://github.com/paritytech/polkadot-sdk/pull/5876
      - [x] https://github.com/paritytech/polkadot-sdk/pull/5971
      - [x] https://github.com/paritytech/polkadot-sdk/pull/6148
      - [x] https://github.com/paritytech/polkadot-sdk/pull/6228
      
      Fixes #3434 
      Fixes https://github.com/paritytech/polkadot-sdk/issues/4190
      Fixes https://github.com/paritytech/polkadot-sdk/issues/5209
      Fixes https://github.com/paritytech/polkadot-sdk/issues/5241
      Fixes https://github.com/paritytech/polkadot-sdk/issues/4284
      
      ---------
      
      Signed-off-by: default avatarAdrian Catangiu <adrian@parity.io>
      Co-authored-by: default avatarAdrian Catangiu <adrian@parity.io>
      Co-authored-by: default avatarAndrii <ndk@parity.io>
      Co-authored-by: default avatarBranislav Kontur <bkontur@gmail.com>
      Co-authored-by: default avatarJoseph Zhao <65984904+programskillforverification@users.noreply.github.com>
      Co-authored-by: default avatarNazar Mokrynskyi <nazar@mokrynskyi.com>
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      Co-authored-by: default avatarShawn Tabrizi <shawntabrizi@gmail.com>
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarSerban Iorga <serban@parity.io>
      
      * [Pools] New runtime api that returns the pot accounts associated with the pool (#6357)
      
      closes https://github.com/paritytech/polkadot-sdk/issues/6358
      
      Adds the following runtime api to pallet-nomination-pools.
      `pool_accounts(pool_id)`: Returns `(bonded_account, reward_account)`
      associated with the `pool_id`.
      
      cc: @rossbulat
      
      
      
      ---------
      
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarBranislav Kontur <bkontur@gmail.com>
      
      * Bump futures from 0.3.30 to 0.3.31 (#6252)
      
      Bumps [futures](https://github.com/rust-lang/futures-rs) from 0.3.30 to
      0.3.31.
      <details>
      <summary>Release notes</summary>
      <p><em>Sourced from <a
      href="https://github.com/rust-lang/futures-rs/releases">futures's
      releases</a>.</em></p>
      <blockquote>
      <h2>0.3.31</h2>
      <ul>
      <li>Fix use after free of task in <code>FuturesUnordered</code> when
      dropped future panics (<a
      href="https://redirect.github.com/rust-lang/futures-rs/issues/2886">#2886</a>)</li>
      <li>Fix soundness bug in <code>task::waker_ref</code> (<a
      href="https://redirect.github.com/rust-lang/futures-rs/issues/2830">#2830</a>)
      This is a breaking change but allowed because it is soundness bug
      fix.</li>
      <li>Fix bugs in <code>AsyncBufRead::read_line</code> and
      <code>AsyncBufReadExt::lines</code> (<a
      href="https://redirect.github.com/rust-lang/futures-rs/issues/2884">#2884</a>)</li>
      <li>Fix parsing issue in
      <code>select!</code>/<code>select_biased!</code> (<a
      href="https://redirect.github.com/rust-lang/futures-rs/issues/2832">#2832</a>)
      This is technically a breaking change as it will now reject a very odd
      undocumented syntax that was previously accidentally accepted.</li>
      <li>Work around issue due to upstream <code>Waker::will_wake</code>
      change (<a
      href="https://redirect.github.com/rust-lang/futures-rs/issues/2865">#2865</a>)</li>
      <li>Add <code>stream::Iter::{get_ref,get_mut,into_inner}</code> (<a
      href="https://redirect.github.com/rust-lang/futures-rs/issues/2875">#2875</a>)</li>
      <li>Add <code>future::AlwaysReady</code> (<a
      href="https://redirect.github.com/rust-lang/futures-rs/issues/2825">#2825</a>)</li>
      <li>Relax trait bound on non-constructor methods of
      <code>io::{BufReader,BufWriter}</code> (<a
      href="https://redirect.github.com/rust-lang/futures-rs/issues/2848">#2848</a>)</li>
      </ul>
      </blockquote>
      </details>
      <details>
      <summary>Changelog</summary>
      <p><em>Sourced from <a
      href="https://github.com/rust-lang/futures-rs/blob/master/CHANGELOG.md">futures's
      changelog</a>.</em></p>
      <blockquote>
      <h1>0.3.31 - 2024-10-05</h1>
      <ul>
      <li>Fix use after free of task in <code>FuturesUnordered</code> when
      dropped future panics (<a
      href="https://redirect.github.com/rust-lang/futures-rs/issues/2886">#2886</a>)</li>
      <li>Fix soundness bug in <code>task::waker_ref</code> (<a
      href="https://redirect.github.com/rust-lang/futures-rs/issues/2830">#2830</a>)
      This is a breaking change but allowed because it is soundness bug
      fix.</li>
      <li>Fix bugs in <code>AsyncBufRead::read_line</code> and
      <code>AsyncBufReadExt::lines</code> (<a
      href="https://redirect.github.com/rust-lang/futures-rs/issues/2884">#2884</a>)</li>
      <li>Fix parsing issue in
      <code>select!</code>/<code>select_biased!</code> (<a
      href="https://redirect.github.com/rust-lang/futures-rs/issues/2832">#2832</a>)
      This is technically a breaking change as it will now reject a very odd
      undocumented syntax that was previously accidentally accepted.</li>
      <li>Work around issue due to upstream <code>Waker::will_wake</code>
      change (<a
      href="https://redirect.github.com/rust-lang/futures-rs/issues/2865">#2865</a>)</li>
      <li>Add <code>stream::Iter::{get_ref,get_mut,into_inner}</code> (<a
      href="https://redirect.github.com/rust-lang/futures-rs/issues/2875">#2875</a>)</li>
      <li>Add <code>future::AlwaysReady</code> (<a
      href="https://redirect.github.com/rust-lang/futures-rs/issues/2825">#2825</a>)</li>
      <li>Relax trait bound on non-constructor methods of
      <code>io::{BufReader,BufWriter}</code> (<a
      href="https://redirect.github.com/rust-lang/futures-rs/issues/2848">#2848</a>)</li>
      </ul>
      </blockquote>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/rust-lang/futures-rs/commit/1e052816b09890925cfdfcbe8d390cdaae5e4c38"><code>1e05281</code></a>
      Release 0.3.31</li>
      <li><a
      href="https://github.com/rust-lang/futures-rs/commit/8a8b085a8c1a7396173a104c67e0cf2f5b74fc74"><code>8a8b085</code></a>
      Fix clippy::uninit_vec warning</li>
      <li><a
      href="https://github.com/rust-lang/futures-rs/commit/f3fb74df310d070d91df7995c942f223cba6720a"><code>f3fb74d</code></a>
      Document how <code>BoxFuture</code>s / <code>BoxStream</code>s are often
      made (<a
      href="https://redirect.github.com/rust-lang/futures-rs/issues/2887">#2887</a>)</li>
      <li><a
      href="https://github.com/rust-lang/futures-rs/commit/f00e7afb467e5f9b3c81724cc3cac1f0687fff7c"><code>f00e7af</code></a>
      Fix use after free of task in FuturesUnordered when dropped future
      panics (<a
      href="https://redirect.github.com/rust-lang/futures-rs/issues/2">#2</a>...</li>
      <li><a
      href="https://github.com/rust-lang/futures-rs/commit/33c46b3dc65e151e0e794636ad62872330733557"><code>33c46b3</code></a>
      ci: Work around sanitizer issue on latest Linux kernel</li>
      <li><a
      href="https://github.com/rust-lang/futures-rs/commit/7bf5a72826c0daed633ec48e8ddaecd8a32f0d11"><code>7bf5a72</code></a>
      Fix issues with <code>AsyncBufRead::read_line</code> and
      <code>AsyncBufReadExt::lines</code> (<a
      href="https://redirect.github.com/rust-lang/futures-rs/issues/2884">#2884</a>)</li>
      <li><a
      href="https://github.com/rust-lang/futures-rs/commit/87afaf3973e8652228f7ccaadd04e7b0e456c63d"><code>87afaf3</code></a>
      Use <code>#[inline(always)]</code> on <code>clone_arc_raw</code> (<a
      href="https://redirect.github.com/rust-lang/futures-rs/issues/2865">#2865</a>)</li>
      <li><a
      href="https://github.com/rust-lang/futures-rs/commit/549b90b1793a044bcade67b81a3d7eabd95f3971"><code>549b90b</code></a>
      Add accessors for the inner of stream::Iter (<a
      href="https://redirect.github.com/rust-lang/futures-rs/issues/2875">#2875</a>)</li>
      <li><a
      href="https://github.com/rust-lang/futures-rs/commit/07b004ac7e0d72e09ff652f234d00e4f26a5f558"><code>07b004a</code></a>
      Add missing symbols (<a
      href="https://redirect.github.com/rust-lang/futures-rs/issues/2883">#2883</a>)</li>
      <li><a
      href="https://github.com/rust-lang/futures-rs/commit/86dc069fa278d4197de91eb6e038e0ec64857684"><code>86dc069</code></a>
      Various fixes too make the CI green (<a
      href="https://redirect.github.com/rust-lang/futures-rs/issues/2885">#2885</a>)</li>
      <li>Additional commits viewable in <a
      href="https://github.com/rust-lang/futures-rs/compare/0.3.30...0.3.31">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      
      [![Dependabot compatibility
      score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=futures&package-manager=cargo&previous-version=0.3.30&new-version=0.3.31)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
      
      Dependabot will resolve any conflicts with this PR as long as you don't
      alter it yourself. You can also trigger a rebase manually by commenting
      `@dependabot rebase`.
      
      [//]: # (dependabot-automerge-start)
      [//]: # (dependabot-automerge-end)
      
      ---
      
      <details>
      <summary>Dependabot commands and options</summary>
      <br />
      
      You can trigger Dependabot actions by commenting on this PR:
      - `@dependabot rebase` will rebase this PR
      - `@dependabot recreate` will recreate this PR, overwriting any edits
      that have been made to it
      - `@dependabot merge` will merge this PR after your CI passes on it
      - `@dependabot squash and merge` will squash and merge this PR after
      your CI passes on it
      - `@dependabot cancel merge` will cancel a previously requested merge
      and block automerging
      - `@dependabot reopen` will reopen this PR if it is closed
      - `@dependabot close` will close this PR and stop Dependabot recreating
      it. You can achieve the same result by closing it manually
      - `@dependabot show <dependency name> ignore conditions` will show all
      of the ignore conditions of the specified dependency
      - `@dependabot ignore this major version` will close this PR and stop
      Dependabot creating any more for this major version (unless you reopen
      the PR or upgrade to it yourself)
      - `@dependabot ignore this minor version` will close this PR and stop
      Dependabot creating any more for this minor version (unless you reopen
      the PR or upgrade to it yourself)
      - `@dependabot ignore this dependency` will close this PR and stop
      Dependabot creating any more for this dependency (unless you reopen the
      PR or upgrade to it yourself)
      
      
      </details>
      
      Signed-off-by: default avatardependabot[bot] <support@github.com>
      Co-authored-by: default avatardependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
      
      * Migrate pallet-election-provider-support-benchmarking benchmark to v2 (#6315)
      
      Part of:
      
      - #6202.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarGuillaume Thiolliere <guillaume.thiolliere@parity.io>
      Co-authored-by: default avatarGiuseppe Re <giuseppe.re@parity.io>
      Co-authored-by: default avatarGuillaume Thiolliere <gui.thiolliere@gmail.com>
      
      * fix shared-core-idle-parachain flaky test (#6387)
      
      https://github.com/paritytech/polkadot-sdk/issues/6343
      
      * substrate/zombienet: Fix 0002-validators-warp-sync (#6379)
      
      This PR fixes the `0002-validators-warp-sync` zombienet test by matching
      for a specific error case.
      
      The following PR introduced a new error for validators that don't have
      public addresses available for publishing in the DHT:
      - https://github.com/paritytech/polkadot-sdk/pull/6298
      The log line was moved from `eprintln!("Warning: ...` in sc-cli to the
      authority discovery where it is printed properly as an error.
      
      
      cc @paritytech/sdk-node
      
      Signed-off-by: default avatarAlexandru Vasile <alexandru.vasile@parity.io>
      
      * Syncing strategy refactoring (part 3) (#5737)
      
      # Description
      
      This is a continuation of
      https://github.com/paritytech/polkadot-sdk/pull/5666 that finally fixes
      https://github.com/paritytech/polkadot-sdk/issues/5333.
      
      This should allow developers to create custom syncing strategies or even
      the whole syncing engine if they so desire. It also moved syncing engine
      creation and addition of corresponding protocol outside
      `build_network_advanced` method, which is something Bastian expressed as
      desired in
      https://github.com/paritytech/polkadot-sdk/issues/5#issuecomment-1700816458
      
      Here I replaced strategy-specific types and methods in `SyncingStrategy`
      trait with generic ones. Specifically `SyncingAction` is now used by all
      strategies instead of strategy-specific types with conversions.
      `StrategyKey` was an enum with a fixed set of options and now replaced
      with an opaque type that strategies create privately and send to upper
      layers as an opaque type. Requests and responses are now handled in a
      generic way regardless of the strategy, which reduced and simplified
      strategy API.
      
      `PolkadotSyncingStrategy` now lives in its dedicated module (had to edit
      .gitignore for this) like other strategies.
      
      `build_network_advanced` takes generic `SyncingService` as an argument
      alongside with a few other low-level types (that can probably be
      extracted in the future as well) without any notion of specifics of the
      way syncing is actually done. All the protocol and tasks are created
      outside and not a part of the network anymore. It still adds a bunch of
      protocols like for light client and some others that should eventually
      be restructured making `build_network_advanced` just building generic
      network and not application-specific protocols handling.
      
      ## Integration
      
      Just like https://github.com/paritytech/polkadot-sdk/pull/5666
      introduced `build_polkadot_syncing_strategy`, this PR introduces
      `build_default_block_downloader`, but for convenience and to avoid
      typical boilerplate a simpler high-level function
      `build_default_syncing_engine` is added that will take care of creating
      typical block downloader, syncing strategy and syncing engine, which is
      what most users will be using going forward. `build_network` towards the
      end of the PR was renamed to `build_network_advanced` and
      `build_network`'s API was reverted to
      pre-https://github.com/paritytech/polkadot-sdk/pull/5666, so most users
      will not see much of a difference during upgrade unless they opt-in to
      use new API.
      
      ## Review Notes
      
      For `StrategyKey` I was thinking about using something like private type
      and then storing `TypeId` inside instead of a static string in it, let
      me know if that would preferred.
      
      The biggest change happened to requests that different strategies make
      and how their responses are handled. The most annoying thing here is
      that block response decoding, in contrast to all other responses, is
      dependent on request. This meant request had to be sent throughout the
      system. While originally `Response` was `Vec<u8>`, I didn't want to
      re-encode/decode request and response just to fit into that API, so I
      ended up with `Box<dyn Any + Send>`. This allows responses to be truly
      generic and each strategy will know how to downcast it back to the
      concrete type when handling the response.
      
      Import queue refactoring was needed to move `SyncingEngine` construction
      out of `build_network` that awkwardly implemented for `SyncingService`,
      but due to `&mut self` wasn't usable on `Arc<SyncingService>` for no
      good reason. `Arc<SyncingService>` itself is of course useless, but
      refactoring to replace it with just `SyncingService` was unfortunately
      rejected in https://github.com/paritytech/polkadot-sdk/pull/5454
      
      As usual I recommend to review this PR as a series of commits instead of
      as the final diff, it'll make more sense that way.
      
      # Checklist
      
      * [x] My PR includes a detailed description as outlined in the
      "Description" and its two subsections above.
      * [x] My PR follows the [labeling requirements](
      
      https://github.com/paritytech/polkadot-sdk/blob/master/docs/contributor/CONTRIBUTING.md#Process
      ) of this project (at minimum one label for `T` required)
      * External contributors: ask maintainers to put the right label on your
      PR.
      * [x] I have made corresponding changes to the documentation (if
      applicable)
      
      * [pallet-staking] Add page info to `PayoutStarted` event (#5984)
      
      fixes https://github.com/paritytech/polkadot-sdk/issues/5966
      
      ---------
      
      Co-authored-by: default avatarGuillaume Thiolliere <gui.thiolliere@gmail.com>
      
      * net/discovery: Do not propagate external addr with different peerIDs (#6380)
      
      This PR ensures that external addresses with different PeerIDs are not
      propagated to the higher layer of the network code.
      
      While at it, this ensures that libp2p only adds the `/p2p/peerid` part
      to the discovered address if it does not contain it already.
      
      This is a followup from:
      - https://github.com/paritytech/polkadot-sdk/pull/6298
      
      cc @paritytech/networking
      
      ---------
      
      Signed-off-by: default avatarAlexandru Vasile <alexandru.vasile@parity.io>
      Co-authored-by: default avatarDmitry Markin <dmitry@markin.tech>
      
      * PVF: drop backing jobs if it is too late (#5616)
      
      Fixes https://github.com/paritytech/polkadot-sdk/issues/5530
      
      This PR introduces the removal of backing jobs that have been back
      pressured for longer than `allowedAncestryLen`, as these candidates are
      no longer viable.
      
      It is reasonable to expect a result for a backing job execution within
      `allowedAncestryLen` blocks. Therefore, we set the job TTL as a relay
      block number and synchronize the validation host by sending activated
      leaves.
      
      ---------
      
      Co-authored-by: default avatarAndrei Sandu <54316454+sandreim@users.noreply.github.com>
      Co-authored-by: default avatarBranislav Kontur <bkontur@gmail.com>
      
      * [Release|CI/CD] Add node version to deb package version (#6399)
      
      This PR has small addition to the db package version. As `cargodeb`
      takes the version from the `*.toml` file, this PR adds an extra flag to
      the `cargodeb` command so that the version of the deb package matches
      the `polkadot` node version.
      
      * gensis-config: patching default `RuntimeGenesisConfig` fixed (#6382)
      
      This PR changes the behavior of `json_patch::merge` function which no
      longer removes any keys from the base JSON object.
      
      fixes: #6306
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * Add missing events to identity pallet (#6261)
      
      # Description
      
      E2E tests to Polkadot/Kusama's people chains (in
      https://github.com/open-web3-stack/polkadot-ecosystem-tests/pull/63)
      revealed that 2 of the identity pallet's extrinsics did not emit events
      in case of success:
      * `pallet_identity::rename_sub`, and
      * `pallet_identity::set_subs`
      
      This PR fixes that.
      
      ## Integration
      
      Other than 2 extrinsics emiting an event when previously they did not,
      no other behavior in pallets/extrinsics was modified, so no integration
      is needed.
      
      ## Review Notes
      
      N/A
      
      * Add networking benchmarks for libp2p (#6077)
      
      # Description
      
      Implemented benchmarks for Notifications and RequestResponse protocols
      with libp2p implementation. These benchmarks allow us to monitor
      regressions and implement fixes before they are observed in real chain.
      In the future, they can be used for targeted optimizations of litep2p
      compared to libp2p.
      
      Part of https://github.com/paritytech/polkadot-sdk/issues/5220
      
      Next steps:
      - Add benchmarks for litep2p implementation
      - Optimize load to get better results
      - Add benchmarks to CI to catch regressions
      
      
      
      ## Integration
      
      Benchmarks don't affect downstream projects.
      
      ---------
      
      Co-authored-by: default avataralvicsam <alvicsam@gmail.com>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * make prospective-parachains debug logs less spammy (#6406)
      
      Fixes https://github.com/paritytech/polkadot-sdk/issues/6172
      
      * Migrate pallet-elections-phragmen benchmark to v2 and improve doc (#6314)
      
      Part of:
      
      - #6202.
      
      ---------
      
      Co-authored-by: default avatarGiuseppe Re <giuseppe.re@parity.io>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * Expose more syncing types to enable custom syncing strategy (#6163)
      
      This PR exposes additional syncing types to facilitate the development
      of a custom syncing strategy based on the existing Polkadot syncing
      strategy. Specifically, my goal is to isolate the state sync and chain
      sync components, allowing the state to be downloaded from the P2P
      network without running a full regular Substrate node. I also need to
      intercept the state responses during the state sync process.
      
      The newly exposed types are necessary to implement this custom syncing
      strategy.
      
      * runtimes: presets are provided as config patches (#6349)
      
      This PR introduces usage of `build_struct_json_patch` macro in all
      runtimes (also guides) within the code base.
      
      It also fixes macro to support _field init shorthand_, and _Struct
      Update_ syntax which were missing in original implementation.
      
      Follow up of #5700 and #5813
      
      * Migrate pallet-transaction-storage and pallet-indices to benchmark v2 (#6290)
      
      Part of:
      #6202
      
      ---------
      
      Co-authored-by: default avatarGiuseppe Re <giuseppe.re@parity.io>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * fix prospective-parachains best backable chain reversion bug (#6417)
      
      Kudos to @EclesioMeloJunior for noticing it 
      
      Also added a regression test for it. The existing unit test was
      exercising only the case where the full chain is reverted
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      
      * Remove network starter that is no longer needed (#6400)
      
      # Description
      
      This seems to be an old artifact of the long closed
      https://github.com/paritytech/substrate/issues/6827 that I noticed when
      working on related code earlier.
      
      ## Integration
      
      `NetworkStarter` was removed, simply remove its usage:
      ```diff
      -let (network, system_rpc_tx, tx_handler_controller, start_network, sync_service) =
      +let (network, system_rpc_tx, tx_handler_controller, sync_service) =
          build_network(BuildNetworkParams {
      ...
      -start_network.start_network();
      ```
      
      ## Review Notes
      
      Changes are trivial, the only reason for this to not be accepted is if
      it is desired to not start network automatically for whatever reason, in
      which case the description of network starter needs to change.
      
      # Checklist
      
      * [x] My PR includes a detailed description as outlined in the
      "Description" and its two subsections above.
      * [ ] My PR follows the [labeling requirements](
      
      https://github.com/paritytech/polkadot-sdk/blob/master/docs/contributor/CONTRIBUTING.md#Process
      ) of this project (at minimum one label for `T` required)
      * External contributors: ask maintainers to put the right label on your
      PR.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      
      * `fatxpool`: size limits implemented (#6262)
      
      This PR adds size-limits to the fork-aware transaction pool.
      
      **Review Notes**
      - Existing
      [`TrackedMap`](https://github.com/paritytech/polkadot-sdk/blob/58fd5ae4/substrate/client/transaction-pool/src/graph/tracked_map.rs#L33-L41)
      is used in internal mempool to track the size of extrinsics:
      
      https://github.com/paritytech/polkadot-sdk/blob/58fd5ae4
      
      /substrate/client/transaction-pool/src/graph/tracked_map.rs#L33-L41
      
      - In this PR, I also removed the logic that kept transactions in the
      `tx_mem_pool` if they were immediately dropped by the views. Initially,
      I implemented this as an improvement: if there was available space in
      the _mempool_ and all views dropped the transaction upon submission, the
      transaction would still be retained in the _mempool_.
      
      However, upon further consideration, I decided to remove this
      functionality to reduce unnecessary complexity. Now, when all views drop
      a transaction during submission, it is automatically rejected, with the
      `submit/submit_and_watch` call returning `ImmediatelyDropped`.
      
      
      Closes: #5476
      
      ---------
      
      Co-authored-by: default avatarSebastian Kunert <skunert49@gmail.com>
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      
      * pallet-membership: Do not verify the `MembershipChanged` in bechmarks (#6439)
      
      There is no need to verify in the `pallet-membership` benchmark that the
      `MemembershipChanged` implementation works as the pallet thinks it
      should work. If you for example set it to `()`, `get_prime()` will
      always return `None`.
      
      TLDR: Remove the checks of `MembershipChanged` in the benchmarks to
      support any kind of implementation.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarAdrian Catangiu <adrian@parity.io>
      
      * add FeeManager to pallet xcm (#5363)
      
      Closes #2082
      
      change send xcm to use `xcm::executor::FeeManager` to determine if the
      sender should be charged.
      
      I had to change the `FeeManager` of the penpal config to ensure the same
      test behaviour as before. For the other tests, I'm using the
      `FeeManager` from the `xcm::executor::FeeManager` as this one is used to
      check if the fee can be waived on the charge fees method.
      
      ---------
      
      Co-authored-by: default avatarAdrian Catangiu <adrian@parity.io>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * Use relay chain block number in the broker pallet instead of block number (#5656)
      
      Based on https://github.com/paritytech/polkadot-sdk/pull/3331
      Related to https://github.com/paritytech/polkadot-sdk/issues/3268
      
      Implements migrations with customizable block number to relay height
      number translation function.
      
      Adds block to relay height migration code for rococo and westend.
      
      ---------
      
      Co-authored-by: default avatarDavidK <davidk@parity.io>
      Co-authored-by: default avatarKian Paimani <5588131+kianenigma@users.noreply.github.com>
      
      * migrate pallet-nft-fractionalization to benchmarking v2 syntax (#6301)
      
      Migrates pallet-nft-fractionalization to benchmarking v2 syntax.
      
      Part of:
      * #6202
      
      ---------
      
      Co-authored-by: default avatarGiuseppe Re <giuseppe.re@parity.io>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      
      * [pallet-revive] adjust fee dry-run calculation (#6393)
      
      - Fix bare_eth_transact so that it estimate more precisely the
      transaction fee
      - Add some context to the build.rs to make it easier to troubleshoot
      errors
      - Add TransactionBuilder for the RPC tests.
      - Improve error message, proxy rpc error from the node and handle
      reverted error message
      - Add logs in ReceiptInfo
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * NoOp Impl Polling Trait (#5311)
      
      Adds NoOp implementation for the `Polling` trait and updates benchmarks
      in `pallet-ranked-collective`.
      
      ---------
      
      Co-authored-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
      
      * Migrate pallet-child-bounties benchmark to v2 (#6310)
      
      Part of:
      
      - #6202.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarGiuseppe Re <giuseppe.re@parity.io>
      
      * Introduce `ConstUint` to make dependent types in `DefaultConfig` more adaptable (#6425)
      
      # Description
      
      Resolves #6193
      
      This PR introduces `ConstUint` as a replacement for existing constant
      getter types like `ConstU8`, `ConstU16`, etc., providing a more flexible
      and unified approach.
      
      ## Integration
      
      This update is backward compatible, so developers can choose to adopt
      `ConstUint` in new implementations or continue using the existing types
      as needed.
      
      ## Review Notes
      
      `ConstUint` is a convenient alternative to `ConstU8`, `ConstU16`, and
      similar types, particularly useful for configuring `DefaultConfig` in
      pallets. It enables configuring the underlying integer for a specific
      type without the need to update all dependent types, offering enhanced
      flexibility in type management.
      
      # Checklist
      
      * [x] My PR includes a detailed description as outlined in the
      "Description" and its two subsections above.
      * [ ] My PR follows the [labeling requirements](
      
      https://github.com/paritytech/polkadot-sdk/blob/master/docs/contributor/CONTRIBUTING.md#Process
      ) of this project (at minimum one label for `T` required)
      * External contributors: ask maintainers to put the right label on your
      PR.
      * [ ] I have made corresponding changes to the documentation (if
      applicable)
      * [ ] I have added tests that prove my fix is effective or that my
      feature works (if applicable)
      
      * Use type alias for transactions (#6431)
      
      Very tiny change that helps with debugging of transactions propagation
      by referring to the same type alias not only at receiving side, but also
      on the sending size for symmetry
      
      * [Release|CI/CD] Fix audiences changelog template (#6444)
      
      This PR addresses an issue mentioned
      [here](https://github.com/paritytech/polkadot-sdk/issues/6424#issuecomment-2467042441).
      The problem was that when the prdoc file has two audiences, but only one
      description like in
      [prdoc_5660](https://github.com/paritytech/polkadot-sdk/blob/master/prdoc/1.16.0/pr_5660.prdoc)
      it was ignored by the template.
      
      * XCMv5: add ExecuteWithOrigin instruction (#6304)
      
      Added `ExecuteWithOrigin` instruction according to the old XCM RFC 38:
      https://github.com/polkadot-fellows/xcm-format/pull/38.
      
      This instruction allows you to descend or clear while going back again.
      
      ## TODO
      - [x] Implementation
      - [x] Unit tests
      - [x] Integration tests
      - [x] Benchmarks
      - [x] PRDoc
      
      ## Future work
      
      Modify `WithComputedOrigin` barrier to allow, for example, fees to be
      paid with a descendant origin using this instruction.
      
      ---------
      
      Signed-off-by: default avatarAdrian Catangiu <adrian@parity.io>
      Co-authored-by: default avatarAdrian Catangiu <adrian@parity.io>
      Co-authored-by: default avatarAndrii <ndk@parity.io>
      Co-authored-by: default avatarBranislav Kontur <bkontur@gmail.com>
      Co-authored-by: default avatarJoseph Zhao <65984904+programskillforverification@users.noreply.github.com>
      Co-authored-by: default avatarNazar Mokrynskyi <nazar@mokrynskyi.com>
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      Co-authored-by: default avatarShawn Tabrizi <shawntabrizi@gmail.com>
      Co-authored-by: command-bot <>
      
      * rpc server: fix host filter for localhost on ipv6 (#6454)
      
      This PR fixes an issue that I discovered using connecting to the RPC via
      localhost using cURL, where cURL tries to connect to via ipv6 before
      ipv4 when querying `localhost` which messed up the http host filter
      whereas it would connect to the address `[::1]::9944 host_header:
      localhost:9944` but the ipv6 interface only whitelisted `[::1]:9944`
      which this fixes.
      
      So let's whitelist all localhost interfaces to avoid such weird
      edge-cases.
      
      ### Behavior before this PR
      
      ```bash
      $ polkadot --chain westend-dev &
      $ curl -v \
           -H 'Content-Type: application/json' \
           -d '{"jsonrpc":"2.0","id":"id","method":"system_name"}' \
           http://localhost:9944
      * Host localhost:9944 was resolved.
      * IPv6: ::1
      * IPv4: 127.0.0.1
      *   Trying [::1]:9944...
      * Connected to localhost (::1) port 9944
      > POST / HTTP/1.1
      > Host: localhost:9944
      > User-Agent: curl/8.5.0
      > Accept: */*
      > Content-Type: application/json
      > Content-Length: 50
      >
      < HTTP/1.1 403 Forbidden
      < content-type: text/plain
      < content-length: 41
      < date: Tue, 12 Nov 2024 13:03:49 GMT
      <
      Provided Host header is not whitelisted.
      * Connection #0 to host localhost left intact
      ```
      
      ### Behavior after this PR
      ```bash
      $ polkadot --chain westend-dev &
      ➜ wasm-tests (update-artifacts-1731284930) ✗ curl -v \
           -H 'Content-Type: application/json' \
           -d '{"jsonrpc":"2.0","id":"id","method":"system_name"}' \
           http://localhost:9944
      * Host localhost:9944 was resolved.
      * IPv6: ::1
      * IPv4: 127.0.0.1
      *   Trying [::1]:9944...
      * Connected to localhost (::1) port 9944
      > POST / HTTP/1.1
      > Host: localhost:9944
      > User-Agent: curl/8.5.0
      > Accept: */*
      > Content-Type: application/json
      > Content-Length: 50
      >
      < HTTP/1.1 200 OK
      < content-type: application/json; charset=utf-8
      < vary: origin, access-control-request-method, access-control-request-headers
      < content-length: 54
      < date: Tue, 12 Nov 2024 13:02:57 GMT
      <
      * Connection #0 to host localhost left intact
      {"jsonrpc":"2.0","id":"id","result":"Parity Polkadot"}%
      ```
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: command-bot <>
      
      * [pallet-revive] eth-rpc fixes (#6453)
      
      - Breaking down the integration-test into multiple tests
      - Fix tx hash to use expected keccak-256
      - Add option to ethers.js example to connect to westend and use a
      private key
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * Remove debug message about pruning active leaves (#6440)
      
      # Description
      
      The debug message was added to identify a potential memory leak.
      However, recent observations show that pruning works as expected.
      Therefore, it is best to remove this line, as it generates quite
      annoying logs.
      
      
      ## Integration
      
      Doesn't affect downstream projects.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * [Tx ext stage 2: 1/4] Add `TransactionSource` as argument in `TransactionExtension::validate` (#6323)
      
      ## Meta 
      
      This PR is part of 4 PR:
      * https://github.com/paritytech/polkadot-sdk/pull/6323
      * https://github.com/paritytech/polkadot-sdk/pull/6324
      * https://github.com/paritytech/polkadot-sdk/pull/6325
      * https://github.com/paritytech/polkadot-sdk/pull/6326
      
      ## Description
      
      One goal of transaction extension is to get rid or unsigned
      transactions.
      But unsigned transaction validation has access to the
      `TransactionSource`.
      
      The source is used for unsigned transactions that the node trust and
      don't want to pay upfront.
      Instead of using transaction source we could do: the transaction is
      valid if it is signed by the block author, conceptually it should work,
      but it doesn't look so easy.
      
      This PR add `TransactionSource` to the validate function for transaction
      extensions
      
      * remove pallet::getter from pallet-staking (#6184)
      
      # Description
      
      Part of https://github.com/paritytech/polkadot-sdk/issues/3326
      Removes all pallet::getter occurrences from pallet-staking and replaces
      them with explicit implementations.
      Adds tests to verify that retrieval of affected entities works as
      expected so via storage::getter.
      
      ## Review Notes
      
      1. Traits added to the `derive` attribute are used in tests (either
      directly or indirectly).
      2. The getters had to be placed in a separate impl block since the other
      one is annotated with `#[pallet::call]` and that requires
      `#[pallet::call_index(0)]` annotation on each function in that block. So
      I thought it's better to separate them.
      
      ---------
      
      Co-authored-by: default avatarDónal Murray <donal.murray@parity.io>
      Co-authored-by: default avatarGuillaume Thiolliere <gui.thiolliere@gmail.com>
      
      * Refactor pallet `society` (#6367)
      
      - [x] Removing `without_storage_info` and adding bounds on the stored
      types for pallet `society` - issue
      https://github.com/paritytech/polkadot-sdk/issues/6289
      - [x] Migrating to benchmarking V2 -
      https://github.com/paritytech/polkadot-sdk/issues/6202
      
      ---------
      
      Co-authored-by: default avatarGuillaume Thiolliere <gui.thiolliere@gmail.com>
      Co-authored-by: default avatarMuharem <ismailov.m.h@gmail.com>
      
      * frame-benchmarking: Use correct components for pallet instances (#6435)
      
      When using multiple instances of the same pallet, each instance was
      executed with the components of all instances. While actually each
      instance should only be executed with the components generated for the
      particular instance. The problem here was that in the runtime only the
      pallet-name was used to determine if a certain pallet should be
      benchmarked. When using instances, the pallet name is the same for both
      of these instances. The solution is to also take the instance name into
      account.
      
      The fix requires to change the `Benchmark` runtime api to also take the
      `instance`. The node side is written in a backwards compatible way to
      also support runtimes which do not yet support the `instance` parameter.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarclangenb <37865735+clangenb@users.noreply.github.com>
      Co-authored-by: default avatarAdrian Catangiu <adrian@parity.io>
      
      * Get rid of `libp2p` dependency in `sc-authority-discovery` (#5842)
      
      ## Issue
      #4859 
      ## Description
      This PR removes `libp2p` types in authority-discovery, and replace them
      with network backend agnostic types from `sc-network-types`.
       The `sc-network` interface is therefore updated accordingly.
      
      ---------
      
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarDmitry Markin <dmitry@markin.tech>
      Co-authored-by: default avatarAlexandru Vasile <60601340+lexnv@users.noreply.github.com>
      
      * backing: improve session buffering for runtime information (#6284)
      
      ## Issue
      [[#3421] backing: improve session buffering for runtime
      information](https://github.com/paritytech/polkadot-sdk/issues/3421)
      
      ## Description
      In the current implementation of the backing module, certain pieces of
      information, which remain unchanged throughout a session, are fetched
      multiple times via runtime API calls. The goal of this task was to
      introduce a local cache to store such session-stable information and
      perform the runtime API call only once per session.
      
      This PR implements caching specifically for the validators list, node
      features, executor parameters, minimum backing votes threshold, and
      validator-to-group mapping, which were previously fetched from the
      runtime or computed each time `PerRelayParentState` was built. Now, this
      information is cached and reused within the session.
      
      ## TODO
      * [X] Create a separate struct for per-session caches;
      * [X] Cache validators list;
      * [X] Cache node features;
      * [X] Cache executor parameters;
      * [X] Cache minimum backing votes threshold;
      * [X] Cache validator-to-group mapping;
      * [X] Update tests to reflect these changes;
      * [X] Add prdoc.
      
      ## For the next PR
      Cache validator groups and any other session-stable data (if present).
      
      * Add litep2p network protocol benches (#6455)
      
      # Description
      
      Add support to run networking protocol benchmarks with litep2p backend.
      
      Now we can compare the work of both libp2p and litep2p backends for
      notifications and request-response protocols.
      
      Next step: extract worker initialization from the benchmark loop.
      
      ### Example run on local machine
      <img width="916" alt="image"
      src="https://github.com/user-attachments/assets/6bb9f90a-76a4-417e-b9d3-db27aa8a356f">
      
      
      ## Integration
      
      Does not affect downstream projects.
      
      ## Review Notes
      
      
      https://github.com/paritytech/polkadot-sdk/blob/d4d95025
      
      /substrate/client/network/src/litep2p/service.rs#L510-L520
      
      This method should be implemented to run request benchmarks.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * Fixed bridges zombienet tests because of removed NetworkId::Rococo/Westend from xcm::v5 (#6465)
      
      Closes: https://github.com/paritytech/polkadot-sdk/issues/6449
      
      * Fix staking benchmark (#6463)
      
      Found by @ggwpez
      
       
      
      Fix staking benchmark, error was introduced when migrating to v2:
      https://github.com/paritytech/polkadot-sdk/pull/6025
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * Follow up work on `TransactionExtension` - fix weights and clean up `UncheckedExtrinsic` (#6418)
      
      Follow up to https://github.com/paritytech/polkadot-sdk/pull/3685
      Partially fixes https://github.com/paritytech/polkadot-sdk/issues/6403
      
      The main PR introduced bare support for the new extension version byte
      as well as extension weights and benchmarking.
      
      This PR:
      - Removes the redundant extension version byte from the signed v4
      extrinsic, previously unused and defaulted to 0.
      - Adds the extension version byte to the inherited implication passed to
      `General` transactions.
      - Whitelists the `pallet_authorship::Author`, `frame_system::Digest` and
      `pallet_transaction_payment::NextFeeMultiplier` storage items as they
      are read multiple times by extensions for each transaction, but are hot
      in memory and currently overestimate the weight.
      - Whitelists the benchmark caller for `CheckEra` and `CheckGenesis` as
      the reads are performed for every transaction and overestimate the
      weight.
      - Updates the umbrella frame weight template to work with the system
      extension changes.
      - Plans on re-running the benchmarks at least for the `frame_system`
      extensions.
      
      ---------
      
      Signed-off-by: default avatargeorgepisaltu <george.pisaltu@parity.io>
      Co-authored-by: command-bot <>
      Co-authored-by: default avatargui <gui.thiolliere@gmail.com>
      
      * feat: add workflow to test readme generation (#6359)
      
      # Description
      
      Created a workflow to search for README.docify.md in the repo, and run
      cargo build --features generate-readme in the dir of the file (assuming
      it is related to a crate). If the git diff shows some output for the
      README.md, then the file update wasn't pushed on the branch, and the
      workflow fails.
      Closes #6331
      
      ## Integration
      
      Downstream projects that want to adopt this README checking workflow
      should:
      
      1. Copy the `.github/workflows/readme-check.yml` file to their
      repository
      2. Ensure any `README.docify.md` files in their project follow the
      expected format
      3. Implement the `generate-readme` feature flag in their Cargo.toml if
      not already present
      
      ## Review Notes
      
      This PR adds a GitHub Actions workflow that automatically verifies
      README.md files are up-to-date with their corresponding README.docify.md
      sources. Key implementation details:
      
      - The workflow runs on both PRs and pushes to main
      - It finds all `README.docify.md` files recursively in the repository
      - For each file found:
      - Builds the project with `--features generate-readme` in that directory
        - Checks if the README.md has any uncommitted changes
        - Fails if any README.md is out of sync
      
      ---------
      
      Co-authored-by: default avatarAlexander Samusev <41779041+alvicsam@users.noreply.github.com>
      Co-authored-by: default avatarIulian Barbu <14218860+iulianbarbu@users.noreply.github.com>
      
      * [pallet-revive] set logs_bloom (#6460)
      
      Set the logs_bloom in the transaction receipt
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarCyrill Leutwiler <cyrill@parity.io>
      
      * Support more types in TypeWithDefault (#6411)
      
      # Description
      
      When using `TypeWithDefault<u32, ..>` as the default nonce provider to
      overcome the [replay
      attack](https://wiki.polkadot.network/docs/transaction-attacks#replay-attack)
      issue, it fails to compile due to `TypeWithDefault<u32, ..>:
      TryFrom<u64>` is not satisfied (which is required by trait
      `BaseArithmetic`).
      
      This is because the blanket implementation `TryFrom<U> for T where U:
      Into<T>` only impl `TryFrom<u16>` and `TryFrom<u8>` for `u32` since
      `u32` only impl `Into` for `u16` and `u8` but not `u64`.
      
      This PR fixes the issue by adding `TryFrom<u16/u32/u64/u128>` and
      `From<u8/u16/u32/u64/u128>` impl (using macro) for
      `TypeWithDefault<u8/u16/u32/u64/u128, ..>` and removing the blanket impl
      (otherwise the compiler will complain about conflicting impl), such that
      `TypeWithDefault<u8/u16/u32/u64/u128, ..>: AtLeast8/16/32Bit` is
      satisfied.
      
      ## Integration
      
      This PR adds support to more types to be used with `TypeWithDefault`,
      existing code that used `u64` with `TypeWithDefault` should not be
      affected, an unit test is added to ensure that.
      
      ## Review Notes
      
      This PR simply makes `TypeWithDefault<u8/u16/u32/u64/u128, ..>:
      AtLeast8/16/32Bit` satisfied
      
      ---------
      
      Signed-off-by: default avatarlinning <linningde25@gmail.com>
      
      * [pallet-revive] use evm decimals in call host fn (#6466)
      
      This PR update the pallet to use the EVM 18 decimal balance in contracts
      call and host functions instead of the native balance.
      
      It also updates the js example to add the piggy-bank solidity contract
      that expose the problem
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * network/litep2p: Update litep2p network backend to version 0.8.1 (#6484)
      
      This PR updates the litep2p backend to version 0.8.1 from 0.8.0.
      - Check the [litep2p updates forum
      post](https://forum.polkadot.network/t/litep2p-network-backend-updates/9973/3)
      for performance dashboards.
      - Check [litep2p release
      notes](https://github.com/paritytech/litep2p/pull/288)
      
      The v0.8.1 release includes key fixes that enhance the stability and
      performance of the litep2p library. The focus is on long-running
      stability and improvements to polling mechanisms.
      
      ### Long Running Stability Improvements
      
      This issue caused long-running nodes to reject all incoming connections,
      impacting overall stability.
      
      Addressed a bug in the connection limits functionality that incorrectly
      tracked connections due for rejection.
      
      This issue caused an artificial increase in inbound peers, which were
      not being properly removed from the connection limit count.
      
      This fix ensures more accurate tracking and management of peer
      connections [#286](https://github.com/paritytech/litep2p/pull/286).
      
      ### Polling implementation fixes
      
      This release provides multiple fixes to the polling mechanism, improving
      how connections and events are processed:
      - Resolved an overflow issue in TransportContext’s polling index for
      streams, preventing potential crashes
      ([#283](https://github.com/paritytech/litep2p/pull/283)).
      - Fixed a delay in the manager’s poll_next function that prevented
      immediate polling of newly added futures
      ([#287](https://github.com/paritytech/litep2p/pull/287)).
      - Corrected an issue where the listener did not return Poll::Ready(None)
      when it was closed, ensuring proper signal handling
      ([#285](https://github.com/paritytech/litep2p/pull/285)).
      
      
      ### Fixed
      
      - manager: Fix connection limits tracking of rejected connections
      ([#286](https://github.com/paritytech/litep2p/pull/286))
      - transport: Fix waking up on filtered events from `poll_next`
      ([#287](https://github.com/paritytech/litep2p/pull/287))
      - transports: Fix missing Poll::Ready(None) event from listener
      ([#285](https://github.com/paritytech/litep2p/pull/285))
      - manager: Avoid overflow on stream implementation for
      `TransportContext`
      ([#283](https://github.com/paritytech/litep2p/pull/283))
      - manager: Log when polling returns Ready(None)
      ([#284](https://github.com/paritytech/litep2p/pull/284))
      
      
      ### Testing Done
      
      Started kusama nodes running side by side with a higher number of
      inbound and outbound connections (500).
      We previously tested with peers bounded at 50. This testing filtered out
      the fixes included in the latest release.
      
      With this high connection testing setup, litep2p outperforms libp2p in
      almost every domain, from performance to the warnings / errors
      encountered while operating the nodes.
      
      TLDR: this is the version we need to test on kusama validators next
      
      - Litep2p
      
      Repo            | Count      | Level      | Triage report
      -|-|-|-
      polkadot-sdk | 409 | warn | Report .*: .* to .*. Reason: .*. Banned,
      disconnecting. ( Peer disconnected with inflight after backoffs. Banned,
      disconnecting. )
      litep2p | 128 | warn | Refusing to add known address that corresponds to
      a different peer ID
      litep2p | 54 | warn | inbound identify substream opened for peer who
      doesn't exist
      polkadot-sdk | 7 | error | :broken_heart: Called `on_validated_block_announce` with a
      bad peer ID .*
      polkadot-sdk    | 1          | warn       | :x: Error while dialing .*: .*
      polkadot-sdk | 1 | warn | Report .*: .* to .*. Reason: .*. Banned,
      disconnecting. ( Invalid justification. Banned, disconnecting. )
      
      - Libp2p
      
      Repo            | Count      | Level      | Triage report
      -|-|-|-
      polkadot-sdk | 1023 | warn | :broken_heart: Ignored block \(#.* -- .*\) announcement
      from .* because all validation slots are occupied.
      polkadot-sdk | 472 | warn | Report .*: .* to .*. Reason: .*. Banned,
      disconnecting. ( Unsupported protocol. Banned, disconnecting. )
      polkadot-sdk | 379 | error | :broken_heart: Called `on_validated_block_announce` with
      a bad peer ID .*
      polkadot-sdk | 163 | warn | Report .*: .* to .*. Reason: .*. Banned,
      disconnecting. ( Invalid justification. Banned, disconnecting. )
      polkadot-sdk | 116 | warn | Report .*: .* to .*. Reason: .*. Banned,
      disconnecting. ( Peer disconnected with inflight after backoffs. Banned,
      disconnecting. )
      polkadot-sdk | 83 | warn | Report .*: .* to .*. Reason: .*. Banned,
      disconnecting. ( Same block request multiple times. Banned,
      disconnecting. )
      polkadot-sdk | 4 | warn | Re-finalized block #.* \(.*\) in the canonical
      chain, current best finalized is #.*
      polkadot-sdk | 2 | warn | Report .*: .* to .*. Reason: .*. Banned,
      disconnecting. ( Genesis mismatch. Banned, disconnecting. )
      polkadot-sdk | 2 | warn | Report .*: .* to .*. Reason: .*. Banned,
      disconnecting. ( Not requested block data. Banned, disconnecting. )
      polkadot-sdk | 2 | warn | Can't listen on .* because: .*
      polkadot-sdk    | 1          | warn       | :x:
      
       Error while dialing .*: .*
      
      ---------
      
      Signed-off-by: default avatarAlexandru Vasile <alexandru.vasile@parity.io>
      
      * sp-trie: minor fix to avoid possible panic during node decoding (#6486)
      
      # Description
      
      This PR is a simple fix consisting of adding a check to the process of
      decoding nodes of a storage proof to avoid panicking when receiving
      badly-constructed proofs, returning an error instead.
      
      This would close #6485
      
      ## Integration
      
      No changes have to be done downstream, and as such the version bump
      should be minor.
      
      ---------
      
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      
      * migrate pallet-nomination-pool-benchmarking to benchmarking syntax v2 (#6302)
      
      Migrates pallet-nomination-pool-benchmarking to benchmarking syntax v2.
      
      Part of:
      * #6202
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarGuillaume Thiolliere <guillaume.thiolliere@parity.io>
      Co-authored-by: default avatarGiuseppe Re <giuseppe.re@parity.io>
      
      * Migrate some pallets to benchmark v2 (#6311)
      
      Part of #6202
      
      ---------
      
      Co-authored-by: default avatarGuillaume Thiolliere <guillaume.thiolliere@parity.io>
      Co-authored-by: default avatarGiuseppe Re <giuseppe.re@parity.io>
      
      * Mention that account might still be required in doc for feeless if. (#6490)
      
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      
      * Pure state sync refactoring (part-1) (#6249)
      
      This pure refactoring of state sync is preparing for
      https://github.com/paritytech/polkadot-sdk/issues/4. As the rough plan
      in
      https://github.com/paritytech/polkadot-sdk/issues/4#issuecomment-2439588876,
      there will be two PRs for the state sync refactoring.
      
      This first PR focuses on isolating the function
      `process_state_key_values()` as the central point for storing received
      state data in memory. This function will later be adapted to forward the
      state data directly to the DB layer for persistent sync. A follow-up PR
      will handle the encapsulation of `StateSyncMetadata` to support this
      persistent storage.
      
      Although there are many commits in this PR, each commit is small and
      intentionally incremental to facilitate a smoother review, please review
      them commit by commit. Each commit should represent an equivalent
      rewrite of the existing logic, with one exception
      https://github.com/paritytech/polkadot-sdk/commit/bb447b2d
      
      ,
      which has a slight deviation from the original but is correct IMHO.
      Please give this commit special attention during the review.
      
      * [WIP][ci] Add worfklow stopper (#4551)
      
      PR to implements workflow stopper - a custom solution to stop all
      workflows if one of a required jobs failed. Previously we had the same
      solution in GitLab and it saved a lot of compute. Because GitHub doesn't
      have one united pipeline and instead it has multiple workflows something
      like this has to be implemented.
      
      cc https://github.com/paritytech/ci_cd/issues/939
      
      * Remove `ProspectiveParachainsMode` usage in backing subsystem (#6215)
      
      Since async backing parameters runtime api is released on all networks
      the code in backing subsystem can be simplified by removing the usages
      of `ProspectiveParachainsMode` and keeping only the branches of the code
      under `ProspectiveParachainsMode::Enabled`.
      
      The PR does that and reworks the tests in mod.rs to use async backing.
      It's a preparation for
      https://github.com/paritytech/polkadot-sdk/issues/5079
      
      ---------
      
      Co-authored-by: default avatarAlin Dima <alin@parity.io>
      Co-authored-by: command-bot <>
      
      * sp-runtime: Be a little bit more functional :D (#6526)
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * `TransactionPool` API uses `async_trait` (#6528)
      
      This PR refactors `TransactionPool` API to use `async_trait`, replacing
      the` Pin<Box<...>>` pattern. This should improve readability and
      maintainability.
      
      The change is not altering any functionality.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * sp-trie: correctly avoid panicking when decoding bad compact proofs (#6502)
      
      # Description
      
      Opening another PR because I added a test to check for my fix pushed in
      #6486 and realized that for some reason I completely forgot how to code
      and did not fix the underlying issue, since out-of-bounds indexing could
      still happen even with the check I added. This one should fix that and,
      as an added bonus, has a simple test used as an integrity check to make
      sure future changes don't accidently revert this fix.
      
      Now `sp-trie` should definitely not panic when faced with bad
      `CompactProof`s. Sorry about that :sweat_smile:
      
      
      
      This, like #6486, is related to issue #6485
      
      ## Integration
      
      No changes have to be done downstream, and as such the version bump
      should be minor.
      
      ---------
      
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      
      * [pallet-revive] Update delegate_call to accept address and weight (#6111)
      
      Enhance the `delegate_call` function to accept an `address` target
      parameter instead of a `code_hash`. This allows direct identification of
      the target contract using the provided address.
      Additionally, introduce parameters for specifying a customizable
      `ref_time` limit and `proof_size` limit, thereby improving flexibility
      and control during contract interactions.
      
      ---------
      
      Co-authored-by: default avatarAlexander Theißen <alex.theissen@me.com>
      
      * Fix metrics not shutting down if there are open connections (#6220)
      
      Fix prometheus metrics not shutting down if there are open connections.
      I fixed the same issue in the past but it broke again after a dependecy
      upgrade.
      
      See also:
      
      https://github.com/paritytech/polkadot-sdk/pull/1637
      
      * Validator Re-Enabling (#5724)
      
      Aims to implement Stage 3 of Validator Disbling as outlined here:
      https://github.com/paritytech/polkadot-sdk/issues/4359
      
      Features:
      - [x] New Disabling Strategy (Staking level)
      - [x] Re-enabling logic (Session level)
      - [x] More generic disabling decision output
      - [x] New Disabling Events
      
      Testing & Security:
      - [x] Unit tests
      - [x] Mock tests
      - [x] Try-runtime checks
      - [x] Try-runtime tested on westend snap
      - [x] Try-runtime CI tests
      - [ ] Re-enabling Zombienet Test (?)
      - [ ] SRLabs Audit
      
      Closes #4745 
      Closes #2418
      
      ---------
      
      Co-authored-by: default avatarordian <write@reusable.software>
      Co-authored-by: default avatarAnkan <10196091+Ank4n@users.noreply.github.com>
      Co-authored-by: default avatarTsvetomir Dimitrov <tsvetomir@parity.io>
      
      * Migrate pallet-democracy benchmarks to benchmark v2 syntax (#6509)
      
      # Description
      
      Migrates pallet-democracy benchmarks to benchmark v2 syntax
      This is Part of https://github.com/paritytech/polkadot-sdk/issues/6202
      
      ---------
      
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarDmitry Markin <dmitry@markin.tech>
      Co-authored-by: default avatarAlexandru Vasile <60601340+lexnv@users.noreply.github.com>
      
      * Forward logging directives to Polkadot workers (#6534)
      
      This pull request forward all the logging directives given to the node
      via `RUST_LOG` or `-l` to the workers, instead of only forwarding
      `RUST_LOG`.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * Support block gap created by fast sync (#5703)
      
      This is part 2 of
      https://github.com/paritytech/polkadot-sdk/issues/5406#issuecomment-2325064863,
      properly handling the block gap generated during fast sync.
      
      Although #5406 remains unresolved due to the known issues in #5663, I
      decided to open up this PR earlier than later to speed up the overall
      progress. I've tested the fast sync locally with this PR, and it appears
      to be functioning well. (I was doing a fast sync from a discontinued
      archive node locally, thus the issue highlighted in
      https://github.com/paritytech/polkadot-sdk/pull/5663#discussion_r1752124039
      was bypassed exactly.)
      
      Once the edge cases in #5663 are addressed, we can move forward by
      removing the body attribute from the LightState block request and
      complete the work on #5406. The changes in this PR are incremental, so
      reviewing commit by commit should provide the best clarity.
      
      cc @dmitry-markin
      
      
      
      ---------
      
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      
      * Pure state sync refactoring (part-2) (#6521)
      
      This PR is the second part of the pure state sync refactoring,
      encapsulating `StateSyncMetadata` as a separate entity. Now it's pretty
      straightforward what changes are needed for the persistent state sync as
      observed in the struct `StateSync`:
      
      - `state`: redirect directly to the DB layer instead of being
      accumulated in the memory.
      - `metadata`: handle the state sync metadata on disk whenever the state
      is forwarded to the DB, resume an ongoing state sync on a restart, etc.
      
      ---------
      
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      Co-authored-by: default avatarAlexandru Vasile <60601340+lexnv@users.noreply.github.com>
      
      * Add and test events in `pallet-conviction-voting` (#6544)
      
      # Description
      
      https://github.com/paritytech/polkadot-sdk/pull/4613 introduced events
      for `pallet_conviction_voting::{vote, remove_vote, remove_other_vote}`.
      However:
      1. it did not include `unlock`
      2. the pallet's unit tests were missing an update
      
      ## Integration
      
      N/A
      
      ## Review Notes
      
      This is as https://github.com/paritytech/polkadot-sdk/pull/6261 was, so
      it is a trivial change.
      
      * Increase default trie cache size to 1GiB (#6546)
      
      The default trie cache size before was set to `64MiB`, which is quite
      low to achieve real speed ups. `1GiB` should be a reasonable number as
      the requirements for validators/collators/full nodes are much higher
      when it comes to minimum memory requirements. Also the cache will not
      use `1GiB` from the start and fills over time. The setting can be
      changed by setting `--trie-cache-size BYTE_SIZE`.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * Bridges testing improvements (#6536)
      
      This PR includes:  
      - Refactored integrity tests to support standalone deployment of
      `pallet-bridge-messages`.
      - Refactored the `open_and_close_bridge_works` test case to support
      multiple scenarios, such as:
        1. A local chain opening a bridge.  
        2. Sibling parachains opening a bridge.  
        3. The relay chain opening a bridge.  
      - Previously, we added instance support for `pallet-bridge-relayer` but
      overlooked updating the `DeliveryConfirmationPaymentsAdapter`.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * Migrate pallet-scheduler benchmark to v2 (#6292)
      
      Part of:
      
      - #6202.
      
      ---------
      
      Signed-off-by: default avatarXavier Lau <x@acg.box>
      Co-authored-by: default avatarGiuseppe Re <giuseppe.re@parity.io>
      Co-authored-by: default avatarGuillaume Thiolliere <guillaume.thiolliere@parity.io>
      
      * Removes constraint in `BlockNumberProvider` from treasury (#6522)
      
      https://github.com/paritytech/polkadot-sdk/pull/3970 updated the
      treasury pallet to support relay chain block number provider. However,
      it added a constraint to the BlockNumberProvider to have the same block
      number type as frame_system:
      
      ```rust
      type BlockNumberProvider: BlockNumberProvider<BlockNumber = BlockNumberFor<Self>>;
      ```
      
      This PR removes that constraint as suggested by @gui1117
      
      * revive: Bump connect timeout to fix flaky tests (#6567)
      
      The eth RPC tests fail sometimes because they run into a connect timeout
      because the node takes a long time to start. This bumps the connect
      timeout from 30 to 120 seconds. Locally they take around 40s for me.
      
      As a drive by I also remove a apparently duplicated nextest config.
      
      ---------
      
      Co-authored-by: default avatarordian <write@reusable.software>
      
      * network-gossip: Ensure sync event is processed on unknown peer roles  (#6553)
      
      The `GossipEngine::poll_next` implementation polls both the
      `notification_service` and the `sync_event_stream`.
      
      If both polls produce valid data to be processed
      (`Poll::Ready(Some(..))`), then the sync event is ignored when we
      receive `NotificationEvent::NotificationStreamOpened` and the role
      cannot be deduced.
      
      This PR ensures both events are processed gracefully. While at it, I
      have added a warning to the sync engine related to
      `notification_service` producing `Poll::Ready(None)`.
      
      This effectively ensures that `SyncEvents` propagate to the network
      potentially fixing any state mismatch.
      
      
      For more context: https://github.com/paritytech/polkadot-sdk/issues/6507
      
      cc @paritytech/sdk-node
      
      ---------
      
      Signed-off-by: default avatarAlexandru Vasile <alexandru.vasile@parity.io>
      
      * slot-based-collator: Move spawning of the futures (#6561)
      
      Move spawning of the slot-based collator into the `run` function. Also
      the tasks are being spawned as blocking task and not just as normal
      tasks.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * github/workflows: add ARM macos build binaries job (#6427)
      
      # Description
      
      This PR adds the required changes to release `polkadot`,
      `polkadot-parachain` and `polkadot-omni-node` binaries built on Apple
      Sillicon macos.
      
      ## Integration
      
      This addresses requests from the community for such binaries: #802, and
      they should be part of the Github release page.
      
      ## Review Notes
      
      Test on paritytech-stg solely focused on macos binaries:
      https://github.com/paritytech-stg/polkadot-sdk/actions/runs/11824692766/job/32946793308,
      except the steps related to `pgpkms` (which need AWS credentials,
      missing from paritytech-stg). The binary names don't have a `darwin-arm`
      identifier, and conflict with the existing x86_64-linux binaries. I
      haven't tested building everything on `paritytech-stg` because the
      x86_64-linux builds run on `unbutu-latest-m` which isn't enabled on
      `pairtytech-stg` (and I haven't asked CI team to enable one), so testing
      how to go around naming conflicts should be covered next.
      
      ### TODO
      
      - [x] Test the workflow start to end (especially the last bits related
      to uploading the binaries on S3 and ensuring the previous binaries and
      the new ones coexist harmoniously on S3/action artifacts storage without
      naming conflicts) @EgorPopelyaev
      - [x] Publish the arm binaries on the Github release page - to clarify
      what's needed @iulianbarbu
      
       . Current practice is to manually publish the
      binaries built via `release-build-rc.yml` workflow, taken from S3. Would
      be great to have the binaries there in the first place before working on
      automating this, but I would also do it in a follow up PR.
      
      ### Follow ups
      
      - [ ] unify the binaries building under
      `release-30_publish_release_draft.yml` maybe?
      - [ ] automate binary artifacts upload to S3 in
      `release-30_publish_release_draft.yml`
      
      ---------
      
      Signed-off-by: default avatarIulian Barbu <iulian.barbu@parity.io>
      Co-authored-by: default avatarEgorPopelyaev <egor@parity.io>
      
      * [Fix|NominationPools] Only allow apply slash to be executed if the slash amount is atleast ED (#6540)
      
      This change prevents `pools::apply_slash` from being executed when the
      pending slash amount of the member is lower than the ED.
      
      The issue came to light with the failing [benchmark
      test](https://github.com/polkadot-fellows/runtimes/actions/runs/11879471717/job/33101445269?pr=490#step:11:765)
      in Kusama. The problem arises from the inexact conversion between points
      and balance. Specifically, when points are converted to balance and then
      back to points, rounding can introduce a small discrepancy between the
      input and the resulting value. This issue surfaced in Kusama due to its
      ED being different from Westend and Polkadot (1 UNIT/300), making the
      rounding issue noticeable.
      
      This fix is also significant because applying a slash is feeless and
      permissionless. Allowing super small slash amounts to be applied without
      a fee is undesirable. With this change, such small slashes will still be
      applied but only when member funds are withdrawn.
      
      ---------
      
      Co-authored-by: default avatarDónal Murray <donal.murray@parity.io>
      
      * parachain-template-node: add properties for dev chain-spec (#6560)
      
      # Description
      
      Reused as before the `properties` variable when defining a development
      chain spec for parachain-template-node.
      
      ## Integration
      
      N/A
      
      ## Review Notes
      
      One line change, pretty self explanatory (it got lost within the history
      of changes over the parachain-template-node/chain_spec.rs file). To be
      honest, not really sure how useful it is, but I had the choice of
      removing the `properties` var or reuse it as before, and I went with the
      latter.
      
      Signed-off-by: default avatarIulian Barbu <iulian.barbu@parity.io>
      
      * [pallet-revive] Support all eth tx types (#6461)
      
      Add support for all eth tx types
      Note that js libs will continue to use the Legacy type since we don't
      include base_fee_per_gas yet in the block.
      We can think about setting these values after we revisit how we encode
      the gas into weight & deposit_limit in a follow up PR
      
      ---------
      
      Co-authored-by: default avatarAlexander Theißen <alex.theissen@me.com>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * Adds `BlockNumberProvider` in multisig, proxy and nft pallets (#5723)
      
      Step in https://github.com/paritytech/polkadot-sdk/issues/3268
      
      This PR adds the ability for these pallets to specify their source of
      the block number. This is useful when these pallets are migrated from
      the relay chain to a parachain and vice versa.
      
      This change is backwards compatible:
      1. If the `BlockNumberProvider` continues to use the system pallet's
      block number
      2. When a pallet deployed on the relay chain is moved to a parachain,
      but still uses the relay chain's block number
      
      However, we would need migrations if the deployed pallets are upgraded
      on an existing parachain, and the `BlockNumberProvider` uses the relay
      chain block number.
      
      ---------
      
      Co-authored-by: default avatarKian Paimani <5588131+kianenigma@users.noreply.github.com>
      
      * Only mess with coretime if we are registering an actual parachain. (#6554)
      
      Co-authored-by: default avatarRobert <robert@gonimo.com>
      Co-authored-by: default avatarordian <write@reusable.software>
      
      * Notify telemetry only every second about the tx pool status (#6605)
      
      Before this was done for every imported transaction. When a lot of
      transactions got imported, the import notification channel was filled.
      The underlying problem was that the `status` call is read locking the
      `validated_pool` which will be write locked by the internal submitting
      logic. Thus, the submitting and status reading was interferring which
      each other.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * Fixes cfg attributes in runtime macro (#6410)
      
      Fixes https://github.com/paritytech/polkadot-sdk/issues/6209
      
      This PR adds the support for cfg attributes in the runtime macro.
      
      ---------
      
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      
      * ci: fix node-bench-regression-guard for master (#6589)
      
      Closes https://github.com/paritytech/ci_cd/issues/1067
      
      * Error logging for send xcm to pallet-xcm (#6579)
      
      * ci: improve workflow-stopper ux (#6632)
      
      PR addresses
      https://github.com/paritytech/polkadot-sdk/pull/6265#issuecomment-2497506857
      
      cc https://github.com/paritytech/ci_cd/issues/1084
      
      * remove ReportCollator message (#6628)
      
      Closes #6415 
      
      # Description
      
      Remove unused message `ReportCollator` and test related to this message
      on the collator protocol validator side.
      
      cc: @tdimitrov
      
      
      
      ---------
      
      Co-authored-by: default avatarTsvetomir Dimitrov <tsvetomir@parity.io>
      Co-authored-by: command-bot <>
      
      * rpc server: fix subscription id_provider being reset to default one. (#6588)
      
      # Description
      
      The PR ensures that the id_provider variable is cloned instead of taken,
      which can help prevent issues related id provider being reset to the
      default.
      
      In [a test in
      moonbeam](https://github.com/moonbeam-foundation/moonbeam/blob/c6d07d703dfcdd94cc311fa83b553071b7d433ff/test/suites/dev/moonbase/test-subscription/test-subscription.ts#L20-L31)
      we found that the id_provider is being reset somehow and changed to the
      default one. Changing .take() to .clone() would fix the issue.
      
      
      # Checklist
      
      * [x] My PR includes a detailed description as outlined in the
      "Description" and its two subsections above.
      * [ ] My PR follows the [labeling requirements](
      
      https://github.com/paritytech/polkadot-sdk/blob/master/docs/contributor/CONTRIBUTING.md#Process
      ) of this project (at minimum one label for `T` required)
      * External contributors: ask maintainers to put the right label on your
      PR.
      * [ ] I have made corresponding changes to the documentation (if
      applicable)
      * [ ] I have added tests that prove my fix is effective or that my
      feature works (if applicable)
      
      ---------
      
      Co-authored-by: default avatarNiklas Adolfsson <niklasadolfsson1@gmail.com>
      
      * bump zombienet-sdk version `v0.2.16` (#6633)
      
      Fix #6575.
      
      cc: @iulianbarbu
      
      
      
      Co-authored-by: default avatarIulian Barbu <14218860+iulianbarbu@users.noreply.github.com>
      
      * Bump rustls from 0.23.14 to 0.23.18 (#6641)
      
      Bumps [rustls](https://github.com/rustls/rustls) from 0.23.14 to
      0.23.18.
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/rustls/rustls/commit/33af2c38b0f1e4abf44d59d5b74ccf12f5cf5e56"><code>33af2c3</code></a>
      Prepare 0.23.18</li>
      <li><a
      href="https://github.com/rustls/rustls/commit/ffe646d1ff07d3e1d9f009daadd94228d462425d"><code>ffe646d</code></a>
      Add reproducer for bug 2227</li>
      <li><a
      href="https://github.com/rustls/rustls/commit/69b6f7473a7ae096a9cf9e2d6eb3cd8b22743597"><code>69b6f74</code></a>
      Record and restore the processed cursor in first_handshake_message</li>
      <li><a
      href="https://github.com/rustls/rustls/commit/4ef3532cf2fceda9fdd19947f871adf7020d0b49"><code>4ef3532</code></a>
      Upgrade to mio 1</li>
      <li><a
      href="https://github.com/rustls/rustls/commit/092a16427e81e58ecd6bcfdacc0b49f02bad8db3"><code>092a164</code></a>
      Manage dependencies via the workspace</li>
      <li><a
      href="https://github.com/rustls/rustls/commit/a01bd6bcb536c6cdd490942b0eae2903abcfcab3"><code>a01bd6b</code></a>
      rustls-bench: fix warnings with no features</li>
      <li><a
      href="https://github.com/rustls/rustls/commit/7d74de2c1bdf265531036f50abd3fc04df8c148a"><code>7d74de2</code></a>
      tests: linearize new test code helper</li>
      <li><a
      href="https://github.com/rustls/rustls/commit/499d797b267e0b548fef5225b044b99fc215a8ff"><code>499d797</code></a>
      fix: do not send session_ticket(35) extension for TLS 1.3</li>
      <li><a
      href="https://github.com/rustls/rustls/commit/faca28904efcb3b5a4a5f05be8e03374bf5086df"><code>faca289</code></a>
      chore(deps): lock file maintenance</li>
      <li><a
      href="https://github.com/rustls/rustls/commit/d12f42385c2da74e1ec16826af68d17a13101152"><code>d12f423</code></a>
      fix(deps): update rust crate asn1 to 0.20</li>
      <li>Additional commits viewable in <a
      href="https://github.com/rustls/rustls/compare/v/0.23.14...v/0.23.18">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      
      [![Dependabot compatibility
      score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=rustls&package-manager=cargo&previous-version=0.23.14&new-version=0.23.18)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
      
      Dependabot will resolve any conflicts with this PR as long as you don't
      alter it yourself. You can also trigger a rebase manually by commenting
      `@dependabot rebase`.
      
      [//]: # (dependabot-automerge-start)
      [//]: # (dependabot-automerge-end)
      
      ---
      
      <details>
      <summary>Dependabot commands and options</summary>
      <br />
      
      You can trigger Dependabot actions by commenting on this PR:
      - `@dependabot rebase` will rebase this PR
      - `@dependabot recreate` will recreate this PR, overwriting any edits
      that have been made to it
      - `@dependabot merge` will merge this PR after your CI passes on it
      - `@dependabot squash and merge` will squash and merge this PR after
      your CI passes on it
      - `@dependabot cancel merge` will cancel a previously requested merge
      and block automerging
      - `@dependabot reopen` will reopen this PR if it is closed
      - `@dependabot close` will close this PR and stop Dependabot recreating
      it. You can achieve the same result by closing it manually
      - `@dependabot show <dependency name> ignore conditions` will show all
      of the ignore conditions of the specified dependency
      - `@dependabot ignore this major version` will close this PR and stop
      Dependabot creating any more for this major version (unless you reopen
      the PR or upgrade to it yourself)
      - `@dependabot ignore this minor version` will close this PR and stop
      Dependabot creating any more for this minor version (unless you reopen
      the PR or upgrade to it yourself)
      - `@dependabot ignore this dependency` will close this PR and stop
      Dependabot creating any more for this dependency (unless you reopen the
      PR or upgrade to it yourself)
      You can disable automated security fix PRs for this repo from the
      [Security Alerts
      page](https://github.com/paritytech/polkadot-sdk/network/alerts).
      
      </details>
      
      Signed-off-by: default avatardependabot[bot] <support@github.com>
      Co-authored-by: default avatardependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
      
      * ci/check-semver: Fix semver failed step (#6535)
      
      The semver-check is failing with the following
      [error](https://github.com/paritytech/polkadot-sdk/actions/runs/11908981132/job/33185572284):
      
      ```bash
      error[E0658]: use of unstable library feature 'error_in_core'
        --> /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/frame-decode-0.5.0/src/decoding/extrinsic_decoder.rs:56:6
         |
      56 | impl core::error::Error for ExtrinsicDecodeError {}
         |      ^^^^^^^^^^^^^^^^^^
         |
         = note: see issue #103765 <https://github.com/rust-lang/rust/issues/103765> for more information
         = help: add `#![feature(error_in_core)]` to the crate attributes to enable
         = note: this compiler was built on 2024-05-31; consider upgrading it if it is out of date
      ```
      
      This is related to the toolchain nightly version 1.80. In rust, 1.81 the
      `core::error::Error` is stable.
      
      After updating the rust-toolchain, parity-publish crate must be updated
      as well.
      The `cargo-semver-checks` dependency of `parity-publish` crate is
      updated from 0.34 to 0.38.
      This update enables rustdoc v36 that fixes the following
      [issue](https://github.com/paritytech/polkadot-sdk/actions/runs/11912689841/job/33196936011):
      
      
      ```bash
       validating prdocs...
      checking file changes...
      checking semver changes...
      (1/18) building frame-support-HEAD...
      (2/18) building frame-support-28.0.0...
      Error: rustdoc format v36 for file /__w/polkadot-sdk/polkadot-sdk/target/doc/frame_support.new is not supported
      ```
      
      This PR is pending on a release of parity-publish to version 0.9.0
      (fixes already on origin/master)
      
      ---------
      
      Signed-off-by: default avatarAlexandru Vasile <alexandru.vasile@parity.io>
      
      * [Release|CI/CD] Github pipeline to publish polkadot deb package (#6640)
      
      This pipeline should replace a manual action done on the `cleamroom`
      server to publish the `polkadot` deb package to our apt repo with the
      pipeline triggered from the new paritytech-release org.
      Right now, this is done manually by running the
      [add-packages.sh](https://github.com/paritytech/cleanroom/blob/master/ansible/roles/parity-repos/files/add-packages.sh)
      script on the `cleanroom` machine.
      What is done under the hood:
      - Pipeline downloads `polakdot` deb package from S3, that was prebuilt
      in the [Build release rc
      pipeline](https://github.com/paritytech/polkadot-sdk/blob/master/.github/workflows/release-build-rc.yml)
      - Prepares and syncs local apt repository
      - Adds and signs deb package to it using `reprepro`
      - Uploads new deb package to the distributed repo
      
      Closes: https://github.com/paritytech/release-engineering/issues/239
      
      * xcm: fix local/remote exports when inner routers return `NotApplicable` (#6645)
      
      This PR addresses two small fixes:  
      
      1. Fixed a typo ("as as") found on the way.  
      2. Resolved a bug in the `local/remote exporters` used for bridging.
      Previously, they consumed `dest` and `msg` without returning them when
      inner routers/exporters failed with `NotApplicable`. This PR ensures
      compliance with the
      [`SendXcm`](https://github.com/paritytech/polkadot-sdk/blob/master/polkadot/xcm/src/v5/traits.rs#L449-L450)
      and
      [`ExportXcm`](https://github.com/paritytech/polkadot-sdk/blob/master/polkadot/xcm/xcm-executor/src/traits/export.rs#L44-L45)
      traits.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * Zero refund check for FungibleAdapter (#6506)
      
      `FungibleAdapter` will now check if the _refund amount_ is zero before
      calling deposit & emitting an event.
      
      Fixes https://github.com/paritytech/polkadot-sdk/issues/6469.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * Hide nonce implementation details in metadata (#6562)
      
      See https://github.com/polkadot-fellows/runtimes/issues/248 : using
      `TypeWithDefault` having derived `TypeInfo` for `Nonce` causes a
      breaking change in metadata for nonce type because it's no longer `u64`.
      
      Adding a default implementation of `TypeInfo` for `TypeWithDefault` to
      restore the original type info in metadata.
      
      ---------
      
      Co-authored-by: default avatarKian Paimani <5588131+kianenigma@users.noreply.github.com>
      
      * Fix `XcmPaymentApi::query_weight_to_asset_fee` version conversion (#6459)
      
      The `query_weight_to_asset_fee` function was trying to convert versions
      by using `try_as`, this function [doesn't convert from a versioned to a
      concrete
      type](https://github.com/paritytech/polkadot-sdk/blob/0156ca8f/polkadot/xcm/src/lib.rs#L131).
      This would cause all calls with a lower version to fail.
      
      The correct function to use is the good old
      [try_into](https://github.com/paritytech/polkadot-sdk/blob/0156ca8f
      
      /polkadot/xcm/src/lib.rs#L184).
      Now those calls work :)
      
      ---------
      
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarBranislav Kontur <bkontur@gmail.com>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * Add stable2412 to target_branches for command-backport.yml (#6666)
      
      The backport bot opens PR for `A4-needs-backport` only for stable2407
      stable2409, but we have already stable2412.
      
      The question is, when should we append a new `stable*` branch here?
      Should it be done when a new `stable*` branch is created? Can we
      automate this process somehow?
      
      * litep2p/req-resp: Always provide main protocol name in responses (#6603)
      
      Request responses are initialized with a main protocol name, and
      optional protocol names as a fallback.
      
      Running litep2p in kusama as a validator has surfaced a `debug_asserts`
      coming from the sync component:
      
      https://github.com/paritytech/polkadot-sdk/blob/3906c578
      
      /substrate/client/network/sync/src/strategy/chain_sync.rs#L640-L646
      
      The issue is that we initiate a request-response over the main protocol
      name `/genesis/sync/2` but receive a response over the legacy procotol
      `ksm/sync/2`. This behavior is correct because litep2p propagates to the
      higher levels the protocol that responded.
      
      In contrast, libp2p provides the main protocol name regardless of
      negotiating a legacy protocol.
      
      Because of this, higher level components assume that only the main
      protocol name will respond.
      To not break this assumption, this PR alings litep2p shim layer with the
      libp2p behavior.
      
      
      Closes: https://github.com/paritytech/polkadot-sdk/issues/6581
      
      ---------
      
      Signed-off-by: default avatarAlexandru Vasile <alexandru.vasile@parity.io>
      Co-authored-by: default avatarDmitry Markin <dmitry@markin.tech>
      
      * v16: Expose the unstable metadata v16 (#5732)
      
      This PR exposes the *unstable* metadata V16. The metadata is exposed
      under the unstable u32::MAX number.
      
      Developers can start experimenting with the new features of the metadata
      v16. *Please note that this metadata is under development and expect
      breaking changes until stabilization.*
      
      The `ExtrinsicMetadata` trait receives a breaking change. Its associated
      type `VERSION` is rename to `VERSIONS` and now supports a constant
      static list of metadata versions.
      The versions implemented for `UncheckedExtrinsic` are v4 (legacy
      version) and v5 (new version).
      
      For metadata collection, it is assumed that all `TransactionExtensions`
      are under version 0.
      
      Builds on top of: https://github.com/paritytech/polkadot-sdk/pull/5274
      
      Closes: https://github.com/paritytech/polkadot-sdk/issues/5980
      Closes: https://github.com/paritytech/polkadot-sdk/issues/5347
      Closes: https://github.com/paritytech/polkadot-sdk/issues/5285
      
      cc @paritytech/subxt-team
      
      ---------
      
      Signed-off-by: default avatarAlexandru Vasile <alexandru.vasile@parity.io>
      Co-authored-by: default avatarNiklas Adolfsson <niklasadolfsson1@gmail.com>
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      Co-authored-by: default avatarJames Wilson <james@jsdw.me>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * rpc-v2: Implement `archive_unstable_storageDiff` (#5997)
      
      This PR implements the `archive_unstable_storageDiff`.
      
      The implementation follows the rpc-v2 spec from:
      -  https://github.com/paritytech/json-rpc-interface-spec/pull/159.
      - builds on top of
      https://github.com/paritytech/json-rpc-interface-spec/pull/161
      
      cc @paritytech/subxt-team
      
      ---------
      
      Signed-off-by: default avatarAlexandru Vasile <alexandru.vasile@parity.io>
      Co-authored-by: default avatarJames Wilson <james@jsdw.me>
      
      * chain-spec-guide-runtime: path to wasm blob fixed (#6673)
      
      In `chain-spec-guide-runtime` crate's tests, there was assumption that
      release version of wasm blob exists. This PR uses
      `chain_spec_guide_runtime::runtime::WASM_BINARY_PATH` const to use
      correct path to runtime blob.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * chore: Update litep2p to v0.8.2 (#6677)
      
      This includes a critical fix for debug release versions of litep2p
      (which are running in Kusama as validators).
      
      While at it, have stopped the oncall pain of alerts around
      `incoming_connections_total`. We can rethink the metric expose of
      litep2p in Q1.
      
      
      
      
      
      ## [0.8.2] - 2024-11-27
      
      This release ensures that the provided peer identity is verified at the
      crypto/noise protocol level, enhancing security and preventing potential
      misuses.
      The release also includes a fix that caused `TransportService` component
      to panic on debug builds.
      
      ### Fixed
      
      - req-resp: Fix panic on connection closed for substream open failure
      ([#291](https://github.com/paritytech/litep2p/pull/291))
      - crypto/noise: Verify crypto/noise signature payload
      ([#278](https://github.com/paritytech/litep2p/pull/278))
      
      ### Changed
      
      - transport_service/logs: Provide less details for trace logs
      ([#292](https://github.com/paritytech/litep2p/pull/292))
      
      
      ## Testing Done
      
      This has been extensively tested in Kusama on all validators, that are
      now running litep2p.
      
      Deployed PR: https://github.com/paritytech/polkadot-sdk/pull/6638
      
      ### Litep2p Dashboards
      ![Screenshot 2024-11-26 at 19 19
      41](https://github.com/user-attachments/assets/e00b2b2b-7e64-4d96-ab26-165e2b8d0dc9)
      
      
      ### Libp2p vs Litep2p CPU usage
      
      After deploying litep2p we have reduced CPU usage from around 300-400%
      to 200%, this is a significant boost in performance, freeing resources
      for other subcomponents to function more optimally.
      
      
      ![image(1)](https://github.com/user-attachments/assets/fa793df5-4d58-4601-963d-246e56dd2a26)
      
      
      
      cc @paritytech/sdk-node
      
      ---------
      
      Signed-off-by: default avatarAlexandru Vasile <alexandru.vasile@parity.io>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * Multiple instances for pallet-bridge-relayers fix (#6684)
      
      Previously, we added multi-instance pallet support for
      `pallet-bridge-relayers`, but missed fixing it in this one place.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarAdrian Catangiu <adrian@parity.io>
      
      * Migrating pallet-xcm-benchmarks to V2 (#6618)
      
      # Description
      Migrated pallet-xcm-benchmarks to benchmaking syntax V2
      This is part of #6202
      
      ---------
      
      Co-authored-by: default avatarGiuseppe Re <giuseppe.re@parity.io>
      
      * Migrating pallet-state-trie-migration to benchmarking V2 (#6617)
      
      # Description
      Migrated pallet-state-trie-migration benchmarking to the new
      benchmarking syntax v2.
      This is part of #6202
      
      Co-authored-by: default avatarShawn Tabrizi <shawntabrizi@gmail.com>
      Co-authored-by: default avatarGiuseppe Re <giuseppe.re@parity.io>
      
      * [pallet-revive] bugfix decoding 64bit args in the decoder (#6695)
      
      The argument index of the next argument is dictated by the size of the
      current one.
      
      ---------
      
      Signed-off-by: default avatarxermicus <cyrill@parity.io>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarAlexander Theißen <alex.theissen@me.com>
      
      * Expose types from `sc-service` (#5855)
      
      # Description
      
      At moonbeam we have worked on a `lazy-loading` feature which is a client
      mode that forks a live parachain and fetches its state on-demand, we
      have been able to do this by duplicating some code from
      `sc_service::client`. The objective of this PR is to simplify the
      implementation by making public some types in polkadot-sdk.
      
      - Modules:
      - `sc_service::client` **I do not see a point to only expose this type
      when `test-helpers` feature is enabled**
      
      ## Integration
      
      Not applicable, the PR just makes some types public.
      
      ## Review Notes
      
      The changes included in this PR give more flexibility for client
      developers by exposing important types.
      
      * ci: update nightly in ci-unified to 2024-11-19 (#6691)
      
      cc https://github.com/paritytech/ci_cd/issues/1088
      
      * Migrate pallet-preimage to benchmark v2 (#6277)
      
      Part of:
      
      - #6202.
      
      ---------
      
      Co-authored-by: default avatarGiuseppe Re <giuseppe.re@parity.io>
      Co-authored-by: command-bot <>
      
      * pallet_revive: Switch to 64bit RISC-V (#6565)
      
      This PR updates pallet_revive to the newest PolkaVM version and adapts
      the test fixtures and syscall interface to work under 64bit.
      
      Please note that after this PR no 32bit contracts can be deployed (they
      will be rejected at deploy time). Pre-deployed 32bit contracts are now
      considered defunct since we changes how parameters are passed for
      functions with more than 6 arguments.
      
      ## Fixtures
      
      The fixtures are now built for the 64bit target. I also removed the
      temporary directory mechanism that triggered a full rebuild every time.
      It also makes it easier to find the compiled fixtures since they are now
      always in `target/pallet-revive-fixtures`.
      
      ## Syscall interface
      
      ### Passing pointer
      
      Registers and pointers are now 64bit wide. This allows us to pass u64
      arguments in a single register. Before we needed two registers to pass
      them. This means that just as before we need one register per pointer we
      pass. We keep pointers as `u32` argument by truncating the register.
      This is done since the memory space of PolkaVM is 32bit.
      
      ### Functions with more than 6 arguments
      
      We only have 6 registers to pass arguments. This is why we pass a
      pointer to a struct when we need more than 6. Before this PR we expected
      a packed struct and interpreted it as SCALE encoded tuple. However, this
      was buggy because the `MaxEncodedLen` returned something that was larger
      than the packed size of the structure. This wasn't a problem before. But
      now the memory space changed in a way that things were placed at the
      edges of the memory space and those extra bytes lead to an out of bound
      access.
      
      This is why this PR drops SCALE and expects the arguments to be passed
      as a pointer to a `C` aligned struct. This avoids unaligned accesses.
      However, revive needs to adapt its codegen to properly align the
      structure fields.
      
      ## TODO
      - [ ] Add multi block migration that wipes all existing contracts as we
      made breaking changes to the syscall interface
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * Fix runtime api impl detection by construct runtime (#6665)
      
      Construct runtime uses autoref-based specialization to fetch the
      metadata about the implemented runtime apis. This is done to not fail to
      compile when there are no runtime apis implemented. However, there was
      an issue with detecting runtime apis when they were implemented in a
      different file. The problem is solved by moving the trait implemented by
      `impl_runtime_apis!` to the metadata ir crate.
      
      
      Closes: https://github.com/paritytech/polkadot-sdk/issues/6659
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * archive: Refactor `archive_storage` method into subscription (#6483)
      
      This PR adapts the `archive_storage` implementation from a method to a
      subscription.
      
      This keeps the archive APIs uniform and consistent.
      
      Builds on: https://github.com/paritytech/polkadot-sdk/pull/5997
      
      cc @paritytech/subxt-team
      
      ---------
      
      Signed-off-by: default avatarAlexandru Vasile <alexandru.vasile@parity.io>
      Co-authored-by: default avatarJames Wilson <james@jsdw.me>
      
      * Update scale-info to 2.11.6 (#6681)
      
      # Description
      
      Updates scale-info to from 2.11.5 2.11.6, so that generated code is
      annotated with `allow(deprecated)`
      Pre-requisite for https://github.com/paritytech/polkadot-sdk/pull/6312
      
      * People chain integration tests (#6377)
      
      # Description
      
      Made as a follow-up of
      https://github.com/polkadot-fellows/runtimes/pull/499
      
      ## Integration
      
      N/A
      
      ## Review Notes
      
      N/A
      
      ---------
      
      Co-authored-by: default avatarDónal Murray <donal.murray@parity.io>
      
      * network/libp2p-backend: Suppress warning adding already reserved node as reserved (#6703)
      
      Fixes https://github.com/paritytech/polkadot-sdk/issues/6598.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * Let's be a bit less strict here. (#6662)
      
      This might actually happen in non malicious cases.
      
      Co-authored-by: default avatareskimor <eskimor@no-such-url.com>
      
      * [pallet-revive] eth-prc fix geth diff (#6608)
      
      * Add a bunch of differential tests to ensure that responses from
      eth-rpc matches the one from `geth`
      - These
      [tests](https://github.com/paritytech/polkadot-sdk/blob/pg/fix-geth-diff/substrate/frame/revive/rpc/examples/js/src/geth-diff.test.ts)
      are not run in CI for now but can be run locally with
      ```bash
      cd revive/rpc/examples/js
      bun test
      ```
      
      * EVM RPC server will not fail gas_estimation if no gas is specified, I
      updated pallet-revive to add an extra `skip_transfer` boolean check to
      replicate this behavior in our pallet
      
      * `eth_transact` and `bare_eth_transact` api have been updated to use
      `GenericTransaction` directly as this is what is used by
      `eth_estimateGas` and `eth_call`
      
      ## TODO
      
      - [ ]  Add tests the new `skip_transfer` flag
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarAlexander Theißen <alex.theissen@me.com>
      
      * Bump the ci_dependencies group across 1 directory with 3 updates (#6516)
      
      Bumps the ci_dependencies group with 3 updates in the / directory:
      [lycheeverse/lychee-action](https://github.com/lycheeverse/lychee-action),
      [actions/attest-build-provenance](https://github.com/actions/attest-build-provenance)
      and [codecov/codecov-action](https://github.com/codecov/codecov-action).
      
      Updates `lycheeverse/lychee-action` from 2.0.2 to 2.1.0
      <details>
      <summary>Release notes</summary>
      <p><em>Sourced from <a
      href="https://github.com/lycheeverse/lychee-action/releases">lycheeverse/lychee-action's
      releases</a>.</em></p>
      <blockquote>
      <h2>Version 2.1.0</h2>
      <h2>What's Changed</h2>
      <ul>
      <li>Add missing argument <code>failIfEmpty</code> by <a
      href="https://github.com/LitoMore"><code>@​LitoMore</code></a> in <a
      href="https://redirect.github.com/lycheeverse/lychee-action/pull/261">lycheeverse/lychee-action#261</a></li>
      <li>Fix bugs about the exit code by <a
      href="https://github.com/YDX-2147483647"><code>@​YDX-2147483647</code></a>
      in <a
      href="https://redirect.github.com/lycheeverse/lychee-action/pull/262">lycheeverse/lychee-action#262</a></li>
      <li>Bump lychee version to 0.17.0 by <a
      href="https://github.com/mre"><code>@​mre</code></a> in <a
      href="https://redirect.github.com/lycheeverse/lychee-action/pull/263">lycheeverse/lychee-action#263</a></li>
      </ul>
      <h2>New Contributors</h2>
      <ul>
      <li><a href="https://github.com/LitoMore"><code>@​LitoMore</code></a>
      made their first contribution in <a
      href="https://redirect.github.com/lycheeverse/lychee-action/pull/261">lycheeverse/lychee-action#261</a></li>
      <li><a
      href="https://github.com/YDX-2147483647"><code>@​YDX-2147483647</code></a>
      made their first contribution in <a
      href="https://redirect.github.com/lycheeverse/lychee-action/pull/262">lycheeverse/lychee-action#262</a></li>
      </ul>
      <p><strong>Full Changelog</strong>: <a
      href="https://github.com/lycheeverse/lychee-action/compare/v2...v2.1.0">https://github.com/lycheeverse/lychee-action/compare/v2...v2.1.0</a></p>
      </blockquote>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/lycheeverse/lychee-action/commit/f81112d0d2814ded911bd23e3beaa9dda9093915"><code>f81112d</code></a>
      Bump version to 0.17.0 (<a
      href="https://redirect.github.com/lycheeverse/lychee-action/issues/263">#263</a>)</li>
      <li><a
      href="https://github.com/lycheeverse/lychee-action/commit/988c4c129a79e6d2aa7e28cc1ec14997c3b4e831"><code>988c4c1</code></a>
      Fix bugs about the exit code (<a
      href="https://redirect.github.com/lycheeverse/lychee-action/issues/262">#262</a>)</li>
      <li><a
      href="https://github.com/lycheeverse/lychee-action/commit/ae4699150ab670dcfb64cc74e8680e776d9caae2"><code>ae46991</code></a>
      Add missing argument <code>failIfEmpty</code> (<a
      href="https://redirect.github.com/lycheeverse/lychee-action/issues/261">#261</a>)</li>
      <li>See full diff in <a
      href="https://github.com/lycheeverse/lychee-action/compare/7cd0af4c74a61395d455af97419279d86aafaede...f81112d0d2814ded911bd23e3beaa9dda9093915">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      Updates `actions/attest-build-provenance` from 1.4.3 to 1.4.4
      <details>
      <summary>Release notes</summary>
      <p><em>Sourced from <a
      href="https://github.com/actions/attest-build-provenance/releases">actions/attest-build-provenance's
      releases</a>.</em></p>
      <blockquote>
      <h2>v1.4.4</h2>
      <h2>What's Changed</h2>
      <ul>
      <li>Bump predicate action from 1.1.3 to 1.1.4 by <a
      href="https://github.com/bdehamer"><code>@​bdehamer</code></a> in <a
      href="https://redirect.github.com/actions/attest-build-provenance/pull/310">actions/attest-build-provenance#310</a>
      <ul>
      <li>Bump <code>@​actions/core</code> from 1.10.1 to 1.11.1 by <a
      href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
      href="https://redirect.github.com/actions/attest-build-provenance/pull/275">actions/attest-build-provenance#275</a></li>
      <li>Bump <code>@​actions/attest</code> from 1.4.2 to 1.5.0 by <a
      href="https://github.com/bdehamer"><code>@​bdehamer</code></a> in <a
      href="https://redirect.github.com/actions/attest-build-provenance/pull/309">actions/attest-build-provenance#309</a>
      <ul>
      <li>Fix SLSA provenance bug related to <code>workflow_ref</code> OIDC
      token claims containing the &quot;@&quot; symbol in the tag name (<a
      href="https://redirect.github.com/actions/toolkit/pull/1863">actions/toolkit#1863</a>)</li>
      </ul>
      </li>
      </ul>
      </li>
      </ul>
      <p><strong>Full Changelog</strong>: <a
      href="https://github.com/actions/attest-build-provenance/compare/v1.4.3...v1.4.4">https://github.com/actions/attest-build-provenance/compare/v1.4.3...v1.4.4</a></p>
      </blockquote>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/actions/attest-build-provenance/commit/ef244123eb79f2f7a7e75d99086184180e6d0018"><code>ef24412</code></a>
      bump predicate from 1.1.3 to 1.1.4 (<a
      href="https://redirect.github.com/actions/attest-build-provenance/issues/310">#310</a>)</li>
      <li><a
      href="https://github.com/actions/attest-build-provenance/commit/36fa7d009e22618ca7cd599486979b8150596c74"><code>36fa7d0</code></a>
      bump <code>@​actions/attest</code> from 1.4.2 to 1.5.0 (<a
      href="https://redirect.github.com/actions/attest-build-provenance/issues/309">#309</a>)</li>
      <li><a
      href="https://github.com/actions/attest-build-provenance/commit/390c0bb1a35248f1131918ae2ff5fbebb9c49da4"><code>390c0bb</code></a>
      Bump <code>@​types/node</code> from 22.8.1 to 22.8.7 in the
      npm-development group (<a
      href="https://redirect.github.com/actions/attest-build-provenance/issues/305">#305</a>)</li>
      <li><a
      href="https://github.com/actions/attest-build-provenance/commit/21da615079f466933bace548cfb08958dd87adbb"><code>21da615</code></a>
      Bump the npm-development group with 3 updates (<a
      href="https://redirect.github.com/actions/attest-build-provenance/issues/299">#299</a>)</li>
      <li><a
      href="https://github.com/actions/attest-build-provenance/commit/0704961b8bd76c74543032539a4b87550ca97441"><code>0704961</code></a>
      Bump actions/publish-immutable-action in the actions-minor group (<a
      href="https://redirect.github.com/actions/attest-build-provenance/issues/298">#298</a>)</li>
      <li><a
      href="https://github.com/actions/attest-build-provenance/commit/d01b0709fadd560939726341a0459eef1833df34"><code>d01b070</code></a>
      Bump the npm-development group with 3 updates (<a
      href="https://redirect.github.com/actions/attest-build-provenance/issues/278">#278</a>)</li>
      <li><a
      href="https://github.com/actions/attest-build-provenance/commit/b1d65e4607685bd199bc1fa97811cbac797bd0ab"><code>b1d65e4</code></a>
      Add workflow file for publishing releases to immutable action package
      (<a
      href="https://redirect.github.com/actions/attest-build-provenance/issues/277">#277</a>)</li>
      <li><a
      href="https://github.com/actions/attest-build-provenance/commit/3a2769405e23849cccd820e7eab22ac9e0f57754"><code>3a27694</code></a>
      Bump <code>@​actions/core</code> from 1.10.1 to 1.11.1 (<a
      href="https://redirect.github.com/actions/attest-build-provenance/issues/275">#275</a>)</li>
      <li><a
      href="https://github.com/actions/attest-build-provenance/commit/dff1ae69a71254b807bee9e2f72c7ab0eed66e60"><code>dff1ae6</code></a>
      prevent e2e workflows on forks (<a
      href="https://redirect.github.com/actions/attest-build-provenance/issues/272">#272</a>)</li>
      <li><a
      href="https://github.com/actions/attest-build-provenance/commit/e5892d032c30c69d4973a976c8bf77e9e470abdf"><code>e5892d0</code></a>
      Bump the npm-development group with 3 updates (<a
      href="https://redirect.github.com/actions/attest-build-provenance/issues/263">#263</a>)</li>
      <li>Additional commits viewable in <a
      href="https://github.com/actions/attest-build-provenance/compare/1c608d11d69870c2092266b3f9a6f3abbf17002c...ef244123eb79f2f7a7e75d99086184180e6d0018">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      Updates `codecov/codecov-action` from 4 to 5
      <details>
      <summary>Release notes</summary>
      <p><em>Sourced from <a
      href="https://github.com/codecov/codecov-action/releases">codecov/codecov-action's
      releases</a>.</em></p>
      <blockquote>
      <h2>v5.0.0</h2>
      <h2>v5 Release</h2>
      <p><code>v5</code> of the Codecov GitHub Action will use the <a
      href="https://github.com/codecov/wrapper">Codecov Wrapper</a> to
      encapsulate the <a
      href="https://github.com/codecov/codecov-cli">CLI</a>. This will help
      ensure that the Action gets updates quicker.</p>
      <h3>Migration Guide</h3>
      <p>The <code>v5</code> release also coincides with the opt-out feature
      for tokens for public repositories. In the <code>Global Upload
      Token</code> section of the settings page of an organization in
      codecov.io, you can set the ability for Codecov to receive a coverage
      reports from any source. This will allow contributors or other members
      of a repository to upload without needing access to the Codecov token.
      For more details see <a
      href="https://docs.codecov.com/docs/codecov-tokens#uploading-without-a-token">how
      to upload without a token</a>.</p>
      <blockquote>
      <p>[!WARNING]<br />
      <strong>The following arguments have been changed</strong></p>
      <ul>
      <li><code>file</code> (this has been deprecated in favor of
      <code>files</code>)</li>
      <li><code>plugin</code> (this has been deprecated in favor of
      <code>plugins</code>)</li>
      </ul>
      </blockquote>
      <p>The following arguments have been added:</p>
      <ul>
      <li><code>binary</code></li>
      <li><code>gcov_args</code></li>
      <li><code>gcov_executable</code></li>
      <li><code>gcov_ignore</code></li>
      <li><code>gcov_include</code></li>
      <li><code>report_type</code></li>
      <li><code>skip_validation</code></li>
      <li><code>swift_project</code></li>
      </ul>
      <p>You can see their usage in the <code>action.yml</code> <a
      href="https://github.com/codecov/codecov-action/blob/main/action.yml">file</a>.</p>
      <h2>What's Changed</h2>
      <ul>
      <li>chore(deps): bump to eslint9+ and remove eslint-config-google by <a
      href="https://github.com/thomasrockhu-codecov"><code>@​thomasrockhu-codecov</code></a>
      in <a
      href="https://redirect.github.com/codecov/codecov-action/pull/1591">codecov/codecov-action#1591</a></li>
      <li>build(deps-dev): bump <code>@​octokit/webhooks-types</code> from
      7.5.1 to 7.6.1 by <a
      href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
      href="https://redirect.github.com/codecov/codecov-action/pull/1595">codecov/codecov-action#1595</a></li>
      <li>build(deps-dev): bump typescript from 5.6.2 to 5.6.3 by <a
      href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
      href="https://redirect.github.com/codecov/codecov-action/pull/1604">codecov/codecov-action#1604</a></li>
      <li>build(deps-dev): bump <code>@​typescript-eslint/parser</code> from
      8.8.0 to 8.8.1 by <a
      href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
      href="https://redirect.github.com/codecov/codecov-action/pull/1601">codecov/codecov-action#1601</a></li>
      <li>build(deps): bump <code>@​actions/core</code> from 1.11.0 to 1.11.1
      by <a href="https://github.com/dependabot"><code>@​dependabot</code></a>
      in <a
      href="https://redirect.github.com/codecov/codecov-action/pull/1597">codecov/codecov-action#1597</a></li>
      <li>build(deps): bump github/codeql-action from 3.26.9 to 3.26.11 by <a
      href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
      href="https://redirect.github.com/codecov/codecov-action/pull/1596">codecov/codecov-action#1596</a></li>
      <li>build(deps-dev): bump <code>@​typescript-eslint/eslint-plugin</code>
      from 8.8.0 to 8.8.1 by <a
      href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
      href="https://redirect.github.com/codecov/codecov-action/pull/1600">codecov/codecov-action#1600</a></li>
      <li>build(deps-dev): bump eslint from 9.11.1 to 9.12.0 by <a
      href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
      href="https://redirect.github.com/codecov/codecov-action/pull/1598">codecov/codecov-action#1598</a></li>
      <li>build(deps): bump github/codeql-action from 3.26.11 to 3.26.12 by <a
      href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
      href="https://redirect.github.com/codecov/codecov-action/pull/1609">codecov/codecov-action#1609</a></li>
      <li>build(deps): bump actions/checkout from 4.2.0 to 4.2.1 by <a
      href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
      href="https://redirect.github.com/codecov/codecov-action/pull/1608">codecov/codecov-action#1608</a></li>
      <li>build(deps): bump actions/upload-artifact from 4.4.0 to 4.4.3 by <a
      href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
      href="https://redirect.github.com/codecov/codecov-action/pull/1607">codecov/codecov-action#1607</a></li>
      <li>build(deps-dev): bump <code>@​typescript-eslint/parser</code> from
      8.8.1 to 8.9.0 by <a
      href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
      href="https://redirect.github.com/codecov/codecov-action/pull/1612">codecov/codecov-action#1612</a></li>
      <li>build(deps-dev): bump <code>@​typescript-eslint/eslint-plugin</code>
      from 8.8.1 to 8.9.0 by <a
      href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
      href="https://redirect.github.com/codecov/codecov-action/pull/1611">codecov/codecov-action#1611</a></li>
      <li>build(deps-dev): bump <code>@​typescript-eslint/eslint-plugin</code>
      from 8.9.0 to 8.10.0 by <a
      href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
      href="https://redirect.github.com/codecov/codecov-action/pull/1615">codecov/codecov-action#1615</a></li>
      <li>build(deps-dev): bump eslint from 9.12.0 to 9.13.0 by <a
      href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
      href="https://redirect.github.com/codecov/codecov-action/pull/1618">codecov/codecov-action#1618</a></li>
      <li>build(deps): bump github/codeql-action from 3.26.12 to 3.26.13 by <a
      href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
      href="https://redirect.github.com/codecov/codecov-action/pull/1617">codecov/codecov-action#1617</a></li>
      <li>build(deps-dev): bump <code>@​typescript-eslint/parser</code> from
      8.9.0 to 8.10.0 by <a
      href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
      href="https://redirect.github.com/codecov/codecov-action/pull/1614">codecov/codecov-action#1614</a></li>
      <li>build(deps-dev): bump <code>@​typescript-eslint/eslint-plugin</code>
      from 8.10.0 to 8.11.0 by <a
      href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
      href="https://redirect.github.com/codecov/codecov-action/pull/1620">codecov/codecov-action#1620</a></li>
      <li>build(deps-dev): bump <code>@​typescript-eslint/parser</code> from
      8.10.0 to 8.11.0 by <a
      href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
      href="https://redirect.github.com/codecov/codecov-action/pull/1619">codecov/codecov-action#1619</a></li>
      <li>build(deps-dev): bump <code>@​types/jest</code> from 29.5.13 to
      29.5.14 by <a
      href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
      href="https://redirect.github.com/codecov/codecov-action/pull/1622">codecov/codecov-action#1622</a></li>
      <li>build(deps): bump actions/checkout from 4.2.1 to 4.2.2 by <a
      href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
      href="https://redirect.github.com/codecov/codecov-action/pull/1625">codecov/codecov-action#1625</a></li>
      <li>build(deps): bump github/codeql-action from 3.26.13 to 3.27.0 by <a
      href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
      href="https://redirect.github.com/codecov/codecov-action/pull/1624">codecov/codecov-action#1624</a></li>
      <li>build(deps-dev): bump <code>@​typescript-eslint/eslint-plugin</code>
      from 8.11.0 to 8.12.1 by <a
      href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
      href="https://redirect.github.com/codecov/codecov-action/pull/1626">codecov/codecov-action#1626</a></li>
      <li>build(deps-dev): bump <code>@​typescript-eslint/eslint-plugin</code>
      from 8.12.1 to 8.12.2 by <a
      href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
      href="https://redirect.github.com/codecov/codecov-action/pull/1629">codecov/codecov-action#1629</a></li>
      </ul>
      <!-- raw HTML omitted -->
      </blockquote>
      <p>... (truncated)</p>
      </details>
      <details>
      <summary>Changelog</summary>
      <p><em>Sourced from <a
      href="https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md">codecov/codecov-action's
      changelog</a>.</em></p>
      <blockquote>
      <h2>4.0.0-beta.2</h2>
      <h3>Fixes</h3>
      <ul>
      <li><a
      href="https://redirect.github.com/codecov/codecov-action/issues/1085">#1085</a>
      not adding -n if empty to do-upload command</li>
      </ul>
      <h2>4.0.0-beta.1</h2>
      <p><code>v4</code> represents a move from the <a
      href="https://github.com/codecov/uploader">universal uploader</a> to the
      <a href="https://github.com/codecov/codecov-cli">Codecov CLI</a>.
      Although this will unlock new features for our users, the CLI is not yet
      at feature parity with the universal uploader.</p>
      <h3>Breaking Changes</h3>
      <ul>
      <li>No current support for <code>aarch64</code> and <code>alpine</code>
      architectures.</li>
      <li>Tokenless uploading is unsuported</li>
      <li>Various arguments to the Action have been removed</li>
      </ul>
      <h2>3.1.4</h2>
      <h3>Fixes</h3>
      <ul>
      <li><a
      href="https://redirect.github.com/codecov/codecov-action/issues/967">#967</a>
      Fix typo in README.md</li>
      <li><a
      href="https://redirect.github.com/codecov/codecov-action/issues/971">#971</a>
      fix: add back in working dir</li>
      <li><a
      href="https://redirect.github.com/codecov/codecov-action/issues/969">#969</a>
      fix: CLI option names for uploader</li>
      </ul>
      <h3>Dependencies</h3>
      <ul>
      <li><a
      href="https://redirect.github.com/codecov/codecov-action/issues/970">#970</a>
      build(deps-dev): bump <code>@​types/node</code> from 18.15.12 to
      18.16.3</li>
      <li><a
      href="https://redirect.github.com/codecov/codecov-action/issues/979">#979</a>
      build(deps-dev): bump <code>@​types/node</code> from 20.1.0 to
      20.1.2</li>
      <li><a
      href="https://redirect.github.com/codecov/codecov-action/issues/981">#981</a>
      build(deps-dev): bump <code>@​types/node</code> from 20.1.2 to
      20.1.4</li>
      </ul>
      <h2>3.1.3</h2>
      <h3>Fixes</h3>
      <ul>
      <li><a
      href="https://redirect.github.com/codecov/codecov-action/issues/960">#960</a>
      fix: allow for aarch64 build</li>
      </ul>
      <h3>Dependencies</h3>
      <ul>
      <li><a
      href="https://redirect.github.com/codecov/codecov-action/issues/957">#957</a>
      build(deps-dev): bump jest-junit from 15.0.0 to 16.0.0</li>
      <li><a
      href="https://redirect.github.com/codecov/codecov-action/issues/958">#958</a>
      build(deps): bump openpgp from 5.7.0 to 5.8.0</li>
      <li><a
      href="https://redirect.github.com/codecov/codecov-action/issues/959">#959</a>
      build(deps-dev): bump <code>@​types/node</code> from 18.15.10 to
      18.15.12</li>
      </ul>
      <h2>3.1.2</h2>
      <h3>Fixes</h3>
      <ul>
      <li><a
      href="https://redirect.github.com/codecov/codecov-action/issues/718">#718</a>
      Update README.md</li>
      <li><a
      href="https://redirect.github.com/codecov/codecov-action/issues/851">#851</a>
      Remove unsupported path_to_write_report argument</li>
      <li><a
      href="https://redirect.github.com/codecov/codecov-action/issues/898">#898</a>
      codeql-analysis.yml</li>
      <li><a
      href="https://redirect.github.com/codecov/codecov-action/issues/901">#901</a>
      Update README to contain correct information - inputs and negate
      feature</li>
      <li><a
      href="https://redirect.github.com/codecov/codecov-action/issues/955">#955</a>
      fix: add in all the extra arguments for uploader</li>
      </ul>
      <h3>Dependencies</h3>
      <ul>
      <li><a
      href="https://redirect.github.com/codecov/codecov-action/issues/819">#819</a>
      build(deps): bump openpgp from 5.4.0 to 5.5.0</li>
      <li><a
      href="https://redirect.github.com/codecov/codecov-action/issues/835">#835</a>
      build(deps): bump node-fetch from 3.2.4 to 3.2.10</li>
      <li><a
      href="https://redirect.github.com/codecov/codecov-action/issues/840">#840</a>
      build(deps): bump ossf/scorecard-action from 1.1.1 to 2.0.4</li>
      <li><a
      href="https://redirect.github.com/codecov/codecov-action/issues/841">#841</a>
      build(deps): bump <code>@​actions/core</code> from 1.9.1 to 1.10.0</li>
      <li><a
      href="https://redirect.github.com/codecov/codecov-action/issues/843">#843</a>
      build(deps): bump <code>@​actions/github</code> from 5.0.3 to 5.1.1</li>
      <li><a
      href="https://redirect.github.com/codecov/codecov-action/issues/869">#869</a>
      build(deps): bump node-fetch from 3.2.10 to 3.3.0</li>
      <li><a
      href="https://redirect.github.com/codecov/codecov-action/issues/872">#872</a>
      build(deps-dev): bump jest-junit from 13.2.0 to 15.0.0</li>
      <li><a
      href="https://redirect.github.com/codecov/codecov-action/issues/879">#879</a>
      build(deps): bump decode-uri-component from 0.2.0 to 0.2.2</li>
      </ul>
      <!-- raw HTML omitted -->
      </blockquote>
      <p>... (truncated)</p>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/codecov/codecov-action/commit/5c47607acb93fed5485fdbf7232e8a31425f672a"><code>5c47607</code></a>
      fix: override commit and pr values for PR cases (<a
      href="https://redirect.github.com/codecov/codecov-action/issues/1657">#1657</a>)</li>
      <li><a
      href="https://github.com/codecov/codecov-action/commit/3b1354a6c45db9f1008891f4eafc1a7e94ce1d18"><code>3b1354a</code></a>
      chore(release): 5.0.1 (<a
      href="https://redirect.github.com/codecov/codecov-action/issues/1656">#1656</a>)</li>
      <li><a
      href="https://github.com/codecov/codecov-action/commit/2e2a9c6d5862d22e0f8cfb59d46bc47bf8eb1fe0"><code>2e2a9c6</code></a>
      fix: update tokenless branch logic (<a
      href="https://redirect.github.com/codecov/codecov-action/issues/1650">#1650</a>)</li>
      <li><a
      href="https://github.com/codecov/codecov-action/commit/cfc521b7a1dcdbcf0ecf149c162c19ff9bd9568c"><code>cfc521b</code></a>
      Update README.md</li>
      <li><a
      href="https://github.com/codecov/codecov-action/commit/06425412c8015bc1ab2385b41c7ea204f77b91bf"><code>0642541</code></a>
      fix: use marketplace v5 badge (<a
      href="https://redirect.github.com/codecov/codecov-action/issues/1646">#1646</a>)</li>
      <li><a
      href="https://github.com/codecov/codecov-action/commit/968872560f81e7bdde9272853e65f2507c0eca7c"><code>9688725</code></a>
      Update README.md</li>
      <li><a
      href="https://github.com/codecov/codecov-action/commit/2112eaec1bedbdabc7e93d5312449d0d62b07c60"><code>2112eae</code></a>
      chore(deps): bump wrapper to 0.0.23 (<a
      href="https://redirect.github.com/codecov/codecov-action/issues/1644">#1644</a>)</li>
      <li><a
      href="https://github.com/codecov/codecov-action/commit/193421c5b3d1aca4209c9754f224ca0d85729414"><code>193421c</code></a>
      fixL use the correct source (<a
      href="https://redirect.github.com/codecov/codecov-action/issues/1642">#1642</a>)</li>
      <li><a
      href="https://github.com/codecov/codecov-action/commit/6018df70b05b191502ce08196e76e30ea3578615"><code>6018df7</code></a>
      fix: update container builds (<a
      href="https://redirect.github.com/codecov/codecov-action/issues/1640">#1640</a>)</li>
      <li><a
      href="https://github.com/codecov/codecov-action/commit/eff1a643d6887ee5935d4ca343e9076dc377d416"><code>eff1a64</code></a>
      fix: add missing vars (<a
      href="https://redirect.github.com/codecov/codecov-action/issues/1638">#1638</a>)</li>
      <li>Additional commits viewable in <a
      href="https://github.com/codecov/codecov-action/compare/v4...v5">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      
      Dependabot will resolve any conflicts with this PR as long as you don't
      alter it yourself. You can also trigger a rebase manually by commenting
      `@dependabot rebase`.
      
      [//]: # (dependabot-automerge-start)
      [//]: # (dependabot-automerge-end)
      
      ---
      
      <details>
      <summary>Dependabot commands and options</summary>
      <br />
      
      You can trigger Dependabot actions by commenting on this PR:
      - `@dependabot rebase` will rebase this PR
      - `@dependabot recreate` will recreate this PR, overwriting any edits
      that have been made to it
      - `@dependabot merge` will merge this PR after your CI passes on it
      - `@dependabot squash and merge` will squash and merge this PR after
      your CI passes on it
      - `@dependabot cancel merge` will cancel a previously requested merge
      and block automerging
      - `@dependabot reopen` will reopen this PR if it is closed
      - `@dependabot close` will close this PR and stop Dependabot recreating
      it. You can achieve the same result by closing it manually
      - `@dependabot show <dependency name> ignore conditions` will show all
      of the ignore conditions of the specified dependency
      - `@dependabot ignore <dependency name> major version` will close this
      group update PR and stop Dependabot creating any more for the specific
      dependency's major version (unless you unignore this specific
      dependency's major version or upgrade to it yourself)
      - `@dependabot ignore <dependency name> minor version` will close this
      group update PR and stop Dependabot creating any more for the specific
      dependency's minor version (unless you unignore this specific
      dependency's minor version or upgrade to it yourself)
      - `@dependabot ignore <dependency name>` will close this group update PR
      and stop Dependabot creating any more for the specific dependency
      (unless you unignore this specific dependency or upgrade to it yourself)
      - `@dependabot unignore <dependency name>` will remove all of the ignore
      conditions of the specified dependency
      - `@dependabot unignore <dependency name> <ignore condition>` will
      remove the ignore condition of the specified dependency and ignore
      conditions
      
      
      </details>
      
      Signed-off-by: default avatardependabot[bot] <support@github.com>
      Co-authored-by: default avatardependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
      
      * migrate pallet-session-benchmarking to bench V2 syntax (#6294)
      
      Migrates pallet-session-benchmarking to bench V2 syntax.
      
      Part of:
      * #6202
      
      ---------
      
      Co-authored-by: default avatarShawn Tabrizi <shawntabrizi@gmail.com>
      Co-authored-by: default avatarGiuseppe Re <giuseppe.re@parity.io>
      
      * migrate pallet-offences-benchmarking to benchmark v2 syntax (#6300)
      
      Migrates pallet-offences-benchmarking to benchmark v2 syntax.
      
      Part of:
      * #6202
      
      ---------
      
      Co-authored-by: default avatarGiuseppe Re <giuseppe.re@parity.io>
      
      * Rococo People <> Bulletin bridge fixes (#6708)
      
      * [Release/CICD] Re-worked Create Release Draft flow (#6734)
      
      This PR contains following changes in release pipelines:
      - re-built Create Release Draft workflow
      - binaries builds are moved completely to the `Release - Build node
      release candidate` flow
      - added upload of all the release artefacts to the S3
      - adjusted `Release - Publish Docker Image` workflow, so that it will
      match now the new release flow.
      
      * Update parity-publish (#6549)
      
      * pallet-revive-fixtures: Try not to re-create fixture dir (#6735)
      
      On some systems trying to re-create the output directory will lead to an
      error.
      
      Fixes https://github.com/paritytech/subxt/issues/1876
      
      ---------
      
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      
      * Bump Westend AH (#6583)
      
      Bump Asset-Hub westend spec version
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      
      * Add publish-check-compile workflow (#6556)
      
      Add publish-check-compile workflow
      
      This Applies staged prdocs then configures crate deps to pull from
      crates.io for our already published crates and local paths for
      things to be published. Then runs cargo check on the result.
      
      This results in a build state consitent with that of publish time and
      should catch compile errors that we would of otherwise ran into mid
      pubish.
      
      This acts as a supplement to the check-semver job. check-semver works on
      a high level and judges what changes are incorrect and why. This job
      just runs the change, sees if it compiles, and if not spits out
      a compile error.
      
      * fix: :heavy_minus_sign: Remove use of `log` in favour of `tracing` in `sc-executor`
      
      * fix: :rotating_light: Fix `node-cli` build for missing parameter added to `cmd.run()`
      
      * fix: :adhesive_bandage: Fix doc for `wasmtime-precompiled` argument
      
      * `fatxpool`: handling limits and priorities improvements (#6405)
      
      This PR provides a number of improvements around handling limits and
      priorities in the fork-aware transaction pool.
      
      
      #### Notes to reviewers.
      #### Following are the notable changes:
      1. #### [Better
      support](https://github.com/paritytech/polkadot-sdk/pull/6405/commits/414ec3cc)
      for `Usurped` transactions
      
      When any view reports an `Usurped` transaction (replaced by other with
      higher priority) it is removed from all the views (also inactive).
      Removal is implemented by simply submitting usurper transaction to all
      the views. It is also ensured that usurped tx will not sneak into the
      `view_store` in newly created view (this is why
      `ViewStore::pending_txs_replacements` was added).
      
      1. ####
      [`TimedTransactionSource`](https://github.com/paritytech/polkadot-sdk/pull/6405/commits/f10590f3)
      introduced:
      
      Every view now has an information when the transaction entered the pool.
      Enforce limits (now only for future txs) uses this timestamp to find
      worst transactions. Having common timestamp ensures coherent assessment
      of the transaction's importance across different views. This also could
      later be used to select which ready transaction shall be dropped.
      
      1. #### `DroppedWatcher`: [improved
      logic](https://github.com/paritytech/polkadot-sdk/pull/6405/commits/560db28c)
      for future transactions
      For future transaction - if the last referencing view is removed, the
      transaction will be dropped from the pool. This prevents future
      unincluded and un-promoted transactions from staying in the pool for
      long time.
      
      #### And some minor changes:
      
      1.
      [simplified](https://github.com/paritytech/polkadot-sdk/pull/6405/commits/2d0bbf83)
      the flow in `update_view_with_mempool` (code duplication + minor bug
      fix).
      2. `graph::BasePool`: [handling
      priorities](https://github.com/paritytech/polkadot-sdk/pull/6405/commits/c9f2d393)
      for future transaction improved (previously transaction with lower prio
      was reported as failed),
      3. `graph::listener`: dedicated `limit_enforced`/`usurped`/`dropped`
      [calls
      added](https://github.com/paritytech/polkadot-sdk/pull/6405/commits/7b58a68c),
      4. flaky test
      [fixed](https://github.com/paritytech/polkadot-sdk/pull/6405/commits/e0a7bc6c
      
      )
      5. new tests added,
      
      related to: #5809
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarIulian Barbu <14218860+iulianbarbu@users.noreply.github.com>
      
      * fix: :adhesive_bandage: Avoid looping through precompiles directory and search directly for filename
      
      * docs: :bulb: Comment fixes and clarifying which WASM code is precompiled
      
      * fix: :adhesive_bandage: Use configured hasher instead of blake2 always
      
      * fix: :adhesive_bandage: Error out if chainspec does not contain `:code` storage element
      
      * feat: :sparkles: Add parser to CLI path arguments to check that they are existing directories
      
      * fix: :adhesive_bandage: Change `with_wasmtime_precompiled_path` to `with_optional_wasmtime_precompiled_path` to handle optional inside
      
      * fix: :bulb: Improve doc comments
      
      * fix: :adhesive_bandage: Write directly to file instead of creating it and then writing
      
      * style: :art:
      
       Apply `cargo fmt`
      
      * umbrella: Remove `pallet-revive-fixtures` (#6743)
      
      No need to have them in the umbrella crate also by having them in the
      umbrella crate they are bleeding into the normal build.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarAlexander Theißen <alex.theissen@me.com>
      
      * [Release|CI/CD] Add pipeline to promote release candidate from rcX to final in S3 (#6748)
      
      This PR adds the pipeline, that moves release candidate artefacts from
      `polkadot-stableYYMM-rcX` bucket to the one that is going to be the
      final `polkadot-stableYYMM` (bucket name matches the tag name). So that
      it could be used for publishing later without a need to re-build it
      again.
      
      * Disable flaky tests reported in #6574/#6644 (#6749)
      
      Reference issues
      #6574 
      #6644
      
      * chore: Update litep2p to v0.8.3 (#6742)
      
      ## [0.8.3] - 2024-12-03
      
      This release includes two fixes for small memory leaks on edge-cases in
      the notification and request-response protocols.
      
      ### Fixed
      
      - req-resp: Fix memory leak of pending substreams
      ([#297](https://github.com/paritytech/litep2p/pull/297))
      - notification: Fix memory leak of pending substreams
      ([#296](https://github.com/paritytech/litep2p/pull/296))
      
      cc @paritytech/networking
      
      ---------
      
      Signed-off-by: default avatarAlexandru Vasile <alexandru.vasile@parity.io>
      
      * fix: :rotating_light: Post merge compile error fixes
      
      * [CI/CD] Fix permissions issue in the backport to stable flow (#6754)
      
      This PR has changes to the `command-backport.yml`:
      - swapped action that creates backports PRs from master to the stable
      branches and added another app with more permissions
      
      * fix: :rotating_light: Compiler error fixes after merge
      
      * style: :art: Apply `cargo fmt`
      
      * feat: :sparkles: Add `precompile-wasm` subcommand to parachain and minimal template nodes
      
      * fix: :rotating_light: Update Cargo.lock after merge
      
      * fix: :rotating_light: Fix Cargo.lock after merge
      
      * fix: :rotating_light:
      
       Fix unused import
      
      ---------
      
      Signed-off-by: default avatardependabot[bot] <support@github.com>
      Signed-off-by: default avatarAndrei Sandu <andrei-mihail@parity.io>
      Signed-off-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
      Signed-off-by: default avatarAlexandru Gheorghe <alexandru.gheorghe@parity.io>
      Signed-off-by: default avatarAdrian Catangiu <adrian@parity.io>
      Signed-off-by: default avatarCyrill Leutwiler <bigcyrill@hotmail.com>
      Signed-off-by: default avatarxermicus <cyrill@parity.io>
      Signed-off-by: default avatargeorgepisaltu <george.pisaltu@parity.io>
      Signed-off-by: default avatarIulian Barbu <iulian.barbu@parity.io>
      Signed-off-by: default avatarAlexandru Vasile <alexandru.vasile@parity.io>
      Signed-off-by: default avatarlinning <linningde25@gmail.com>
      Signed-off-by: default avatarXavier Lau <x@acg.box>
      Co-authored-by: default avatardependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      Co-authored-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
      Co-authored-by: default avatarAlin Dima <alin@parity.io>
      Co-authored-by: default avatarAndrei Sandu <andrei-mihail@parity.io>
      Co-authored-by: default avatarAndrei Sandu <54316454+sandreim@users.noreply.github.com>
      Co-authored-by: default avatarDusan Morhac <55763425+dudo50@users.noreply.github.com>
      Co-authored-by: default avatarBranislav Kontur <bkontur@gmail.com>
      Co-authored-by: default avatarEgor_P <egor@parity.io>
      Co-authored-by: default avatarSerban Iorga <serban@parity.io>
      Co-authored-by: default avatarPG Herveou <pgherveou@gmail.com>
      Co-authored-by: default avatarAlexander Theißen <alex.theissen@me.com>
      Co-authored-by: default avatarCyrill Leutwiler <cyrill@parity.io>
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarMichal Kucharczyk <1728078+michalkucharczyk@users.noreply.github.com>
      Co-authored-by: default avatartmpolaczyk <44604217+tmpolaczyk@users.noreply.github.com>
      Co-authored-by: default avatarShawn Tabrizi <shawntabrizi@gmail.com>
      Co-authored-by: default avatarFrancisco Aguirre <franciscoaguirreperez@gmail.com>
      Co-authored-by: default avatarKian Paimani <5588131+kianenigma@users.noreply.github.com>
      Co-authored-by: default avatarIulian Barbu <14218860+iulianbarbu@users.noreply.github.com>
      Co-authored-by: default avatarSebastian Kunert <skunert49@gmail.com>
      Co-authored-by: default avatarAndrii <ndk@parity.io>
      Co-authored-by: default avatarAlistair Singh <alistair.singh7@gmail.com>
      Co-authored-by: default avatarAlexandru Gheorghe <49718502+alexggh@users.noreply.github.com>
      Co-authored-by: default avatarGuillaume Thiolliere <gui.thiolliere@gmail.com>
      Co-authored-by: default avatarJavier Viola <363911+pepoviola@users.noreply.github.com>
      Co-authored-by: default avatarJun Jiang <jasl9187@hotmail.com>
      Co-authored-by: default avatarShoyu Vanilla (Flint) <flint@dunamu.com>
      Co-authored-by: default avatarAdrian Catangiu <adrian@parity.io>
      Co-authored-by: default avatarTsvetomir Dimitrov <tsvetomir@parity.io>
      Co-authored-by: default avatarGiuseppe Re <giuseppe.re@parity.io>
      Co-authored-by: default avatarDónal Murray <donal.murray@parity.io>
      Co-authored-by: default avatarXavier Lau <x@acg.box>
      Co-authored-by: default avatarXavier Lau <xavier@inv.cafe>
      Co-authored-by: default avatarDónal Murray <donalm@seadanda.dev>
      Co-authored-by: default avatargeorgepisaltu <52418509+georgepisaltu@users.noreply.github.com>
      Co-authored-by: default avatarAnkan <10196091+Ank4n@users.noreply.github.com>
      Co-authored-by: default avatarJan Bujak <jan@parity.io>
      Co-authored-by: default avatarAlexandre R. Baldé <alexandrer_b@outlook.com>
      Co-authored-by: default avatarAlexander Samusev <41779041+alvicsam@users.noreply.github.com>
      Co-authored-by: default avatarMuharem <ismailov.m.h@gmail.com>
      Co-authored-by: default avatarGuillaume Thiolliere <guillaume.thiolliere@parity.io>
      Co-authored-by: default avatarclangenb <37865735+clangenb@users.noreply.github.com>
      Co-authored-by: default avatars0me0ne-unkn0wn <48632512+s0me0ne-unkn0wn@users.noreply.github.com>
      Co-authored-by: default avatardavidk-pt <david.kazlauskas@parity.io>
      Co-authored-by: default avatarDavidK <davidk@parity.io>
      Co-authored-by: default avatarAlexandru Vasile <60601340+lexnv@users.noreply.github.com>
      Co-authored-by: default avatarDmitry Markin <dmitry@markin.tech>
      Co-authored-by: default avatarBastian Köcher <info@kchr.de>
      Co-authored-by: default avatarNazar Mokrynskyi <nazar@mokrynskyi.com>
      Co-authored-by: default avatarJames Wilson <james@jsdw.me>
      Co-authored-by: default avatarDastan <88332432+dastansam@users.noreply.github.com>
      Co-authored-by: default avatarPavlo Khrystenko <p.khrystenko@gmail.com>
      Co-authored-by: default avatarPavlo Khrystenko <45178695+pkhry@users.noreply.github.com>
      Co-authored-by: default avatareskimor <eskimor@users.noreply.github.com>
      Co-authored-by: default avatareskimor <eskimor@no-such-url.com>
      Co-authored-by: default avatarJoseph Zhao <65984904+programskillforverification@users.noreply.github.com>
      Co-authored-by: default avatarAndrei Eres <eresav@me.com>
      Co-authored-by: default avatarAlexandre R. Baldé <alexandre.balde@parity.io>
      Co-authored-by: default avataralvicsam <alvicsam@gmail.com>
      Co-authored-by: default avatarLiu-Cheng Xu <xuliuchengxlc@gmail.com>
      Co-authored-by: default avatarjpserrat <35823283+jpserrat@users.noreply.github.com>
      Co-authored-by: default avatarDoordashcon <jesse.chejieh@gmail.com>
      Co-authored-by: default avatarJeeyong Um <conr2d@proton.me>
      Co-authored-by: default avatarNiklas Adolfsson <niklasadolfsson1@gmail.com>
      Co-authored-by: default avatarMichał Gil <michal.gil@parity.io>
      Co-authored-by: default avatarKazunobu Ndong <33208377+ndkazu@users.noreply.github.com>
      Co-authored-by: default avatarStephane Gurgenidze <59443568+sw10pa@users.noreply.github.com>
      Co-authored-by: default avatarViraj Bhartiya <vlbhartiya@gmail.com>
      Co-authored-by: default avatarNingLin-P <ning@subspace.network>
      Co-authored-by: default avatarTobi Demeco <50408393+TDemeco@users.noreply.github.com>
      Co-authored-by: default avatarErmal Kaleci <ermalkaleci@gmail.com>
      Co-authored-by: default avatarMaciej <maciej.zyszkiewicz@parity.io>
      Co-authored-by: default avatarordian <write@reusable.software>
      Co-authored-by: default avatargupnik <mail.guptanikhil@gmail.com>
      Co-authored-by: default avatarRobert <robert@gonimo.com>
      Co-authored-by: default avatarTarek Mohamed Abdalla <tarekkma@gmail.com>
      Co-authored-by: default avatarDino Pačandi <3002868+Dinonard@users.noreply.github.com>
      Co-authored-by: default avatarLudovic_Domingues <ludovic.domingues96@gmail.com>
      Co-authored-by: default avatarRodrigo Quelhas <22591718+RomarQ@users.noreply.github.com>
      Co-authored-by: default avatarLulu <morgan@parity.io>
      fe0b4dbd
  2. Dec 04, 2024
    • Facundo Farall's avatar
      fix: 🩹 Amend wasmtime precompiled PR review (#13) · 8061c870
      Facundo Farall authored
      * fix: :heavy_minus_sign: Remove use of `log` in favour of `tracing` in `sc-executor`
      
      * fix: :rotating_light: Fix `node-cli` build for missing parameter added to `cmd.run()`
      
      * fix: :adhesive_bandage: Fix doc for `wasmtime-precompiled` argument
      
      * fix: :adhesive_bandage: Avoid looping through precompiles directory and search directly for filename
      
      * docs: :bulb: Comment fixes and clarifying which WASM code is precompiled
      
      * fix: :adhesive_bandage: Use configured hasher instead of blake2 always
      
      * fix: :adhesive_bandage: Error out if chainspec does not contain `:code` storage element
      
      * feat: :sparkles: Add parser to CLI path arguments to check that they are existing directories
      
      * fix: :adhesive_bandage: Change `with_wasmtime_precompiled_path` to `with_optional_wasmtime_precompiled_path` to handle optional inside
      
      * fix: :bulb: Improve doc comments
      
      * fix: :adhesive_bandage: Write directly to file instead of creating it and then writing
      
      * style: :art: Apply `cargo fmt`
      8061c870
  3. Nov 26, 2024
  4. Sep 28, 2023
    • Alan Sapede's avatar
    • crystalin's avatar
      more fmt · 9f92b3c4
      crystalin authored
      9f92b3c4
    • crystalin's avatar
      fmt · 582c404e
      crystalin authored
      582c404e
    • btwiuse's avatar
      Fix `subkey inspect` output text padding (#1744) · 7b9861a2
      btwiuse authored
      
      This pull request is to fix the output text misalignment of `subkey
      inspect` command:
      
      (the `Network ID` line has an extra space at the end, and the `Secret
      seed` line lacks a leading space)
      
      ```
      [btwiuse@railway ~]$ subkey inspect '' | cat -A
      Secret Key URI `` is account:$
        Network ID:        substrate $
       Secret seed:       0xfac7959dbfe72f052e5a0c3c8d6530f202b02fd8f9f5ca3580ec8deb7797479e$
        Public key (hex):  0x46ebddef8cd9bb167dc30878d7113b7e168e6f0646beffd77d69d39bad76b47a$
        Account ID:        0x46ebddef8cd9bb167dc30878d7113b7e168e6f0646beffd77d69d39bad76b47a$
        Public key (SS58): 5DfhGyQdFobKM8NsWvEeAKk5EQQgYe9AydgJ7rMB6E1EqRzV$
        SS58 Address:      5DfhGyQdFobKM8NsWvEeAKk5EQQgYe9AydgJ7rMB6E1EqRzV$
      ```
      
      The output should be in the same YAML-like format as `subkey generate`:
      
      ```
      [btwiuse@railway ~]$ subkey generate  | cat -A
      Secret phrase:       awkward eagle survey resemble novel resist modify memory pistol shed flower run$
        Network ID:        substrate$
        Secret seed:       0x20502f79366325b7dc7620664e8844ae69d441baf6e5b571a57d3b3ff28e9586$
        Public key (hex):  0x468874b9e5b6b77333fa702b9201b924d6834bf956e33e2bbe37d131134ca830$
        Account ID:        0x468874b9e5b6b77333fa702b9201b924d6834bf956e33e2bbe37d131134ca830$
        Public key (SS58): 5DfBkAMg5xQmsePFr3BWLZm99smiNyy9axWSgembvFgDKh9v$
        SS58 Address:      5DfBkAMg5xQmsePFr3BWLZm99smiNyy9axWSgembvFgDKh9v$
      ```
      
      This change will fix `subkey` as well as all binaries that embed it as
      the `key` subcommand, for example: `substrate key`, `polkadot key`, etc.
      
      ---------
      
      Co-authored-by: default avatarLiam Aharon <liam.aharon@hotmail.com>
      7b9861a2
    • crystalin's avatar
      fmt · 3bedb377
      crystalin authored
      3bedb377
    • crystalin's avatar
      85d5570e
    • crystalin's avatar
      Fix allow_missing_func_imports · 5c038e0f
      crystalin authored
      5c038e0f
    • Alexandru Vasile's avatar
      archive: Implement height, hashByHeight and call (#1582) · 945ebbbc
      Alexandru Vasile authored
      
      This PR implements:
      - `archive_unstable_finalized_height`: Get the height of the most recent
      finalized block
      - `archive_unstable_hash_by_height`: Get the hashes (possible empty) of
      blocks from the given height
      - `archive_unstable_call`: Call into the runtime of a block
      
      Builds on top of: https://github.com/paritytech/polkadot-sdk/pull/1560
      
      ### Testing Done
      - unit tests for the methods with custom block tree for different
      heights / forks
      
      Closes: https://github.com/paritytech/polkadot-sdk/issues/1510
      Closes: https://github.com/paritytech/polkadot-sdk/issues/1513
      Closes: https://github.com/paritytech/polkadot-sdk/issues/1511
      
      @paritytech/subxt-team
      
      ---------
      
      Signed-off-by: default avatarAlexandru Vasile <alexandru.vasile@parity.io>
      Co-authored-by: default avatarSebastian Kunert <skunert49@gmail.com>
      945ebbbc
    • Alexandru Vasile's avatar
      rpc/client: Propagate `rpc_methods` method to reported methods (#1713) · b5a0708f
      Alexandru Vasile authored
      
      The PR exposes the `rpc_methods` name in the `rpc_methods` response.
      This feature is useful for servers that only forward requests to methods
      that are reported by the `rpc_methods`.
      
      Jsonrpsee exposes the available methods registered so far. Registering
      the `rpc_methods` requires a closure that already stores the result. As
      such, the `rpc_methods` method name is manually added to the available
      methods.
      
      Closes: https://github.com/paritytech/polkadot-sdk/issues/1627
      
      ### Testing Done
      
      ```
      $> curl -H "Content-Type: application/json" -d '{"id":1, "jsonrpc":"2.0", "method": "rpc_methods", "params":[]}' http://localhost:9944
      
      {"jsonrpc":"2.0","result":{"methods":["account_nextIndex",... "rpc_methods",..."unsubscribe_newHead"]},"id":1}⏎
      ```
      
      @paritytech/subxt-team
      
      ---------
      
      Signed-off-by: default avatarAlexandru Vasile <alexandru.vasile@parity.io>
      b5a0708f
    • Michal Kucharczyk's avatar
      rococo-runtime: `RococoGenesisExt` removed (#1490) · 50242a61
      Michal Kucharczyk authored
      [`RococoGenesisExt`](https://github.com/paritytech/polkadot-sdk/blob/a414ea75
      
      /polkadot/node/service/src/chain_spec.rs#L152-L171)
      is removed. It was the hack to allow overwriting
      `EpochDurationInBlocks`. Removal of `RococGenesisExt` prevents from
      manipulating the state to change the runtime constants.
      
      Changes:
      - Environment variable which controls the `time::EpochDurationInBlocks`
      value was added: `ROCOCO_EPOCH_DURATION` (epoch duration will be set to
      the value of env),
      - `10,100,600` versions of rococo-runtime are built in CI and put into `polkadot-debug` docker image.
      
      `rococo-runtime` building examples:
      - to build runtime for `versi_staging_testnet` which had
      EpochDurationInBlocks set to 100:
        ```
      ROCOCO_EPOCH_DURATION=100 cargo build --features=fast-runtime -p
      rococo-runtime
        ```
      - to build runtime for `wococo_development`
        ```
      ROCOCO_EPOCH_DURATION=10 cargo build --features=fast-runtime -p
      rococo-runtime
        ```
      - to build `versi-staging` chain spec:
        ```
      ROCOCO_EPOCH_DURATION=100 cargo run -p polkadot --features=fast-runtime
      -- build-spec --chain versi-staging --raw
        ```
      - to build `wococo-dev` chain spec:
        ```
      ROCOCO_EPOCH_DURATION=10 cargo run -p polkadot --features=fast-runtime
      -- build-spec --chain wococo-dev --raw
        ```
      
      It is also possible to change the epoch duration by replacing the `code` field in the chain spec with the hex dump of pre-built runtime wasm blob (because the epoch duration is hard-coded into wasm blob).
      
      ---------
      
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      50242a61
    • Marcin S.'s avatar
      PVF: more filesystem sandboxing (#1373) · c1eb342b
      Marcin S. authored
      c1eb342b
    • Xavier Lau's avatar
      Add `MaxTipAmount` for pallet-tips (#1709) · de71fecc
      Xavier Lau authored
      Last week we experienced a governance attack.
      Surprisingly, there was no upper limit on the tip amount.
      
      Due to the mechanism of pallet-fragment-election, the council members
      will be refreshed immediately. Attacker is easy to control the council
      and give a large tip amount.
      de71fecc
    • Xiliang Chen's avatar
      add some events for pallet-bounties (#1706) · b50d8e6f
      Xiliang Chen authored
      Add missing events for pallet-bounties
      b50d8e6f
    • Javyer's avatar
      Added `review-bot` to fine tune review requirements (#1673) · 4384c613
      Javyer authored
      Created a Github Action that uses the [Review-Bot
      app](https://github.com/paritytech/review-bot) to require more fine
      tuned requirements to review pull requests before allowing the PR to be
      merged.
      
      This uses
      [`pull_request_target`](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#pull_request_target)
      for the event, not `pull_request`. This is a security measure so that an
      attacker doesn’t have access to the secrets.
      
      All the rules have been copied from the original
      `.github/pr-custom-review.yml` file.
      
      I want to clarify, this particular commit is **not intended to replace
      PRCR yet**.
      
      # Advantages it brings over `PRCR`
      
      Most of the features available in `PRCR` have been duplicated and
      enhanced. For a complete detailed write up, please see:
      - paritytech/pr-custom-review#114 -> Proposal for the rewrite
      - [Review Bot
      Documentation](https://github.com/paritytech/review-bot/blob/main/README.md)
      
      The most important features are:
      - `include` and `exclude` fields now accept an array, making it easier
      to read the regular expressions.
      - Ability to skip a rule
      - We can set that PRs coming from a particular user or team will cause
      the rule to be skipped.
      - This is used in the `Audit rule`, which was requested by
      @the-right-joyce.
        - This resolves paritytech/pr-custom-review#136
      - Ability to request fellows instead of teams
      - As requested in polkadot-fellows/runtimes#7, this bot has the ability
      to request fellows by rank instead of users.
      - We currently have polkadot-fellows/runtimes#31 which is using that
      feature.
      
      Aside from all the rules available in `PRCR` I have added a particular
      rule to lock the review-bot files and require a review from the
      `locks-review` team, the @paritytech/ci team and the
      @paritytech/opstooling team to ensure that the file has been written
      correctly.
      
      ## Next steps
      
      The next steps will consist on paritytech/review-bot#53, once this issue
      has been resolved, and `review-bot` has worked without any issues on
      this repository for a while, we will upgrade it to be able to fully
      replace `PRCR`.
      4384c613
    • Dónal Murray's avatar
      Add event field names to HRMP Event variants (#1695) · 4bc97e48
      Dónal Murray authored
      Update the HRMP pallet to use field names for Event variants to improve
      metadata for a better client experience.
      Event variants are now structs instead of unnamed tuples.
      
      Partially implements Substrate issue
      [9903](https://github.com/paritytech/substrate/issues/9903) which
      doesn't appear to have been moved to the monorepo.
      4bc97e48
  5. Sep 27, 2023
  6. Sep 26, 2023
    • dependabot[bot]'s avatar
      Bump directories from 4.0.1 to 5.0.1 (#1656) · a846b746
      dependabot[bot] authored
      
      Bumps [directories](https://github.com/soc/directories-rs) from 4.0.1 to
      5.0.1.
      <details>
      <summary>Commits</summary>
      <ul>
      <li>See full diff in <a
      href="https://github.com/soc/directories-rs/commits">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      
      [![Dependabot compatibility
      score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=directories&package-manager=cargo&previous-version=4.0.1&new-version=5.0.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
      
      Dependabot will resolve any conflicts with this PR as long as you don't
      alter it yourself. You can also trigger a rebase manually by commenting
      `@dependabot rebase`.
      
      [//]: # (dependabot-automerge-start)
      [//]: # (dependabot-automerge-end)
      
      ---
      
      <details>
      <summary>Dependabot commands and options</summary>
      <br />
      
      You can trigger Dependabot actions by commenting on this PR:
      - `@dependabot rebase` will rebase this PR
      - `@dependabot recreate` will recreate this PR, overwriting any edits
      that have been made to it
      - `@dependabot merge` will merge this PR after your CI passes on it
      - `@dependabot squash and merge` will squash and merge this PR after
      your CI passes on it
      - `@dependabot cancel merge` will cancel a previously requested merge
      and block automerging
      - `@dependabot reopen` will reopen this PR if it is closed
      - `@dependabot close` will close this PR and stop Dependabot recreating
      it. You can achieve the same result by closing it manually
      - `@dependabot show <dependency name> ignore conditions` will show all
      of the ignore conditions of the specified dependency
      - `@dependabot ignore <dependency name> major version` will close this
      group update PR and stop Dependabot creating any more for the specific
      dependency's major version (unless you unignore this specific
      dependency's major version or upgrade to it yourself)
      - `@dependabot ignore <dependency name> minor version` will close this
      group update PR and stop Dependabot creating any more for the specific
      dependency's minor version (unless you unignore this specific
      dependency's minor version or upgrade to it yourself)
      - `@dependabot ignore <dependency name>` will close this group update PR
      and stop Dependabot creating any more for the specific dependency
      (unless you unignore this specific dependency or upgrade to it yourself)
      - `@dependabot unignore <dependency name>` will remove all of the ignore
      conditions of the specified dependency
      - `@dependabot unignore <dependency name> <ignore condition>` will
      remove the ignore condition of the specified dependency and ignore
      conditions
      
      
      </details>
      
      Signed-off-by: default avatardependabot[bot] <support@github.com>
      Co-authored-by: default avatardependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
      a846b746
    • Dónal Murray's avatar
      Allow debug_assertions in short-benchmarks CI job (#1711) · 7d3ce4df
      Dónal Murray authored
      Add debug_assertions to WASM builds in the short-benchmarks CI job.
      
      Disallow warnings, show a full backtrace and remove the WASM output
      colour to improve information from this CI step in the event of a failure.
      
      This is motivated by a
      [case](https://github.com/paritytech/polkadot-sdk/pull/1676/commits/23d64918)
      where a benchmark was misconfigured in master and failing to send
      notifications, but passing CI. We don't want this to fail if the problem
      happens in production, but ideally we'd know from the CI if it was
      misconfigured and the messages weren't getting sent, as that could
      (would?) affect the weights that the benchmark generates.
      
      Enabling debug-assertions in WASM builds for the short-benchmarks would
      catch "soft" failures like this in future.
      7d3ce4df
    • Alexandru Vasile's avatar
      chainHead/storage: Fix storage iteration using the query key (#1665) · cc50eda0
      Alexandru Vasile authored
      
      This PR ensures that all storage keys under a prefix are returned by the
      `chainHead_storage` method.
      
      Before this PR, the `storage_keys` was used with just the `start_key`.
      Before the pagination event was generated, the last reported key
      `last_key` was saved internally.
      When the pagination is resumed, the `last_key` will serve as the next
      `start_key` to the `storage_keys` API.
      
      However, this behavior does not function properly for non-prefixed
      storage keys.
      
      Entry keys `a`, `ab`, `abc` share a common prefix and therefore the `ab`
      key leads to `abc`.
      However, for `a`, `ab`, `aB` and `abc`, the `aB` key does not
      immediately lead to `abc`.
      
      To mitigate this, the PR saves the start key of the query, together with
      the next pagination key.
      Improve testing to ensure we have a key entry that doesn't share the
      prefix with the descendant key.
      
      @paritytech/subxt-team
      
      ---------
      
      Signed-off-by: default avatarAlexandru Vasile <alexandru.vasile@parity.io>
      cc50eda0
  7. Sep 25, 2023
    • Nazar Mokrynskyi's avatar
      Implement more useful traits in `Slot` type (#1595) · bc500521
      Nazar Mokrynskyi authored
      I had quite a few conversions to/from `u64` because these were lacking.
      
      Let me know if others are desirable as well for symmetry.
      bc500521
    • Javier Viola's avatar
      Make downloads in parallel and give more time to complete (#1699) · f209b31b
      Javier Viola authored
      Fix flaky test (e.g
      https://gitlab.parity.io/parity/mirrors/polkadot-sdk/-/jobs/3787906).
      Sometimes just timeout when trying to download the artifacts from ci.
      This make the download in parallel and allow for more time to complete.
      
      Thx!
      
      cc: @michalkucharczyk
      f209b31b
    • dependabot[bot]'s avatar
      Bump actions/checkout from 4.0.0 to 4.1.0 (#1688) · b18fb35e
      dependabot[bot] authored
      
      Bumps [actions/checkout](https://github.com/actions/checkout) from 4.0.0
      to 4.1.0.
      <details>
      <summary>Release notes</summary>
      <p><em>Sourced from <a
      href="https://github.com/actions/checkout/releases">actions/checkout's
      releases</a>.</em></p>
      <blockquote>
      <h2>v4.1.0</h2>
      <h2>What's Changed</h2>
      <ul>
      <li>Update README.md for V4 by <a
      href="https://github.com/sivapalan"><code>@​sivapalan</code></a> in <a
      href="https://redirect.github.com/actions/checkout/pull/1452">actions/checkout#1452</a></li>
      <li>Add support for partial checkout filters by <a
      href="https://github.com/finleygn"><code>@​finleygn</code></a> in <a
      href="https://redirect.github.com/actions/checkout/pull/1396">actions/checkout#1396</a></li>
      <li>Prepare 4.1.0 release by <a
      href="https://github.com/cory-miller"><code>@​cory-miller</code></a> in
      <a
      href="https://redirect.github.com/actions/checkout/pull/1496">actions/checkout#1496</a></li>
      </ul>
      <h2>New Contributors</h2>
      <ul>
      <li><a href="https://github.com/sivapalan"><code>@​sivapalan</code></a>
      made their first contribution in <a
      href="https://redirect.github.com/actions/checkout/pull/1452">actions/checkout#1452</a></li>
      <li><a href="https://github.com/finleygn"><code>@​finleygn</code></a>
      made their first contribution in <a
      href="https://redirect.github.com/actions/checkout/pull/1396">actions/checkout#1396</a></li>
      </ul>
      <p><strong>Full Changelog</strong>: <a
      href="https://github.com/actions/checkout/compare/v4.0.0...v4.1.0">https://github.com/actions/checkout/compare/v4.0.0...v4.1.0</a></p>
      </blockquote>
      </details>
      <details>
      <summary>Changelog</summary>
      <p><em>Sourced from <a
      href="https://github.com/actions/checkout/blob/main/CHANGELOG.md">actions/checkout's
      changelog</a>.</em></p>
      <blockquote>
      <h1>Changelog</h1>
      <h2>v4.1.0</h2>
      <ul>
      <li><a href="https://redirect.github.com/actions/checkout/pull/1396">Add
      support for partial checkout filters</a></li>
      </ul>
      <h2>v4.0.0</h2>
      <ul>
      <li><a
      href="https://redirect.github.com/actions/checkout/pull/1067">Support
      fetching without the --progress option</a></li>
      <li><a
      href="https://redirect.github.com/actions/checkout/pull/1436">Update to
      node20</a></li>
      </ul>
      <h2>v3.6.0</h2>
      <ul>
      <li><a
      href="https://redirect.github.com/actions/checkout/pull/1377">Fix: Mark
      test scripts with Bash'isms to be run via Bash</a></li>
      <li><a href="https://redirect.github.com/actions/checkout/pull/579">Add
      option to fetch tags even if fetch-depth &gt; 0</a></li>
      </ul>
      <h2>v3.5.3</h2>
      <ul>
      <li><a
      href="https://redirect.github.com/actions/checkout/pull/1196">Fix:
      Checkout fail in self-hosted runners when faulty submodule are
      checked-in</a></li>
      <li><a href="https://redirect.github.com/actions/checkout/pull/1287">Fix
      typos found by codespell</a></li>
      <li><a href="https://redirect.github.com/actions/checkout/pull/1369">Add
      support for sparse checkouts</a></li>
      </ul>
      <h2>v3.5.2</h2>
      <ul>
      <li><a href="https://redirect.github.com/actions/checkout/pull/1289">Fix
      api endpoint for GHES</a></li>
      </ul>
      <h2>v3.5.1</h2>
      <ul>
      <li><a href="https://redirect.github.com/actions/checkout/pull/1246">Fix
      slow checkout on Windows</a></li>
      </ul>
      <h2>v3.5.0</h2>
      <ul>
      <li><a href="https://redirect.github.com/actions/checkout/pull/1237">Add
      new public key for known_hosts</a></li>
      </ul>
      <h2>v3.4.0</h2>
      <ul>
      <li><a
      href="https://redirect.github.com/actions/checkout/pull/1209">Upgrade
      codeql actions to v2</a></li>
      <li><a
      href="https://redirect.github.com/actions/checkout/pull/1210">Upgrade
      dependencies</a></li>
      <li><a
      href="https://redirect.github.com/actions/checkout/pull/1225">Upgrade
      <code>@​actions/io</code></a></li>
      </ul>
      <h2>v3.3.0</h2>
      <ul>
      <li><a
      href="https://redirect.github.com/actions/checkout/pull/1045">Implement
      branch list using callbacks from exec function</a></li>
      <li><a href="https://redirect.github.com/actions/checkout/pull/1050">Add
      in explicit reference to private checkout options</a></li>
      <li>[Fix comment typos (that got added in <a
      href="https://redirect.github.com/actions/checkout/issues/770">#770</a>)](<a
      href="https://redirect.github.com/actions/checkout/pull/1057">actions/checkout#1057</a>)</li>
      </ul>
      <h2>v3.2.0</h2>
      <ul>
      <li><a href="https://redirect.github.com/actions/checkout/pull/942">Add
      GitHub Action to perform release</a></li>
      <li><a href="https://redirect.github.com/actions/checkout/pull/967">Fix
      status badge</a></li>
      <li><a
      href="https://redirect.github.com/actions/checkout/pull/1002">Replace
      datadog/squid with ubuntu/squid Docker image</a></li>
      <li><a href="https://redirect.github.com/actions/checkout/pull/964">Wrap
      pipeline commands for submoduleForeach in quotes</a></li>
      <li><a
      href="https://redirect.github.com/actions/checkout/pull/1029">Update
      <code>@​actions/io</code> to 1.1.2</a></li>
      <li><a
      href="https://redirect.github.com/actions/checkout/pull/1039">Upgrading
      version to 3.2.0</a></li>
      </ul>
      <h2>v3.1.0</h2>
      <ul>
      <li><a href="https://redirect.github.com/actions/checkout/pull/939">Use
      <code>@​actions/core</code> <code>saveState</code> and
      <code>getState</code></a></li>
      <li><a href="https://redirect.github.com/actions/checkout/pull/922">Add
      <code>github-server-url</code> input</a></li>
      </ul>
      <h2>v3.0.2</h2>
      <!-- raw HTML omitted -->
      </blockquote>
      <p>... (truncated)</p>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/actions/checkout/commit/8ade135a41bc03ea155e62e844d188df1ea18608"><code>8ade135</code></a>
      Prepare 4.1.0 release (<a
      href="https://redirect.github.com/actions/checkout/issues/1496">#1496</a>)</li>
      <li><a
      href="https://github.com/actions/checkout/commit/c533a0a4cfc4962971818edcfac47a2899e69799"><code>c533a0a</code></a>
      Add support for partial checkout filters (<a
      href="https://redirect.github.com/actions/checkout/issues/1396">#1396</a>)</li>
      <li><a
      href="https://github.com/actions/checkout/commit/72f2cec99f417b1a1c5e2e88945068983b7965f9"><code>72f2cec</code></a>
      Update README.md for V4 (<a
      href="https://redirect.github.com/actions/checkout/issues/1452">#1452</a>)</li>
      <li>See full diff in <a
      href="https://github.com/actions/checkout/compare/3df4ab11eba7bda6032a0b82a6bb43b11571feac...8ade135a41bc03ea155e62e844d188df1ea18608">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      
      [![Dependabot compatibility
      score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/checkout&package-manager=github_actions&previous-version=4.0.0&new-version=4.1.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
      
      Dependabot will resolve any conflicts with this PR as long as you don't
      alter it yourself. You can also trigger a rebase manually by commenting
      `@dependabot rebase`.
      
      [//]: # (dependabot-automerge-start)
      [//]: # (dependabot-automerge-end)
      
      ---
      
      <details>
      <summary>Dependabot commands and options</summary>
      <br />
      
      You can trigger Dependabot actions by commenting on this PR:
      - `@dependabot rebase` will rebase this PR
      - `@dependabot recreate` will recreate this PR, overwriting any edits
      that have been made to it
      - `@dependabot merge` will merge this PR after your CI passes on it
      - `@dependabot squash and merge` will squash and merge this PR after
      your CI passes on it
      - `@dependabot cancel merge` will cancel a previously requested merge
      and block automerging
      - `@dependabot reopen` will reopen this PR if it is closed
      - `@dependabot close` will close this PR and stop Dependabot recreating
      it. You can achieve the same result by closing it manually
      - `@dependabot show <dependency name> ignore conditions` will show all
      of the ignore conditions of the specified dependency
      - `@dependabot ignore this major version` will close this PR and stop
      Dependabot creating any more for this major version (unless you reopen
      the PR or upgrade to it yourself)
      - `@dependabot ignore this minor version` will close this PR and stop
      Dependabot creating any more for this minor version (unless you reopen
      the PR or upgrade to it yourself)
      - `@dependabot ignore this dependency` will close this PR and stop
      Dependabot creating any more for this dependency (unless you reopen the
      PR or upgrade to it yourself)
      
      
      </details>
      
      Signed-off-by: default avatardependabot[bot] <support@github.com>
      Co-authored-by: default avatardependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
      b18fb35e
    • Kevin Wang's avatar
      contracts: Fix incorrect storage alias in mirgration (#1687) · e8da3207
      Kevin Wang authored
      
      # Description
      
      We are recently trying to upgrade our Substrate version from
      `polkadot-v0.9.43` to `polkadot-v1.0.0` and we noticed a critical issue:
      all deployed contracts seem to be experiencing a `CodeNotFound` error.
      After a thorough investigation, it appears that the root cause of this
      issue lies in the mismatch between the storage alias of `CodeInfoOf<T>`
      in the migration and its original definition.
      
      This PR corrects the storage alias to align it with its original
      definition
      
      I am uncertain about the proper approach for adding tests to this
      change. Would the team consider taking over this PR to bring it to
      completion?
      
      ---------
      
      Co-authored-by: default avatarpgherveou <pgherveou@gmail.com>
      e8da3207
    • Nazar Mokrynskyi's avatar
      Fix documentation about justification and `finalized == true` requirement (#1607) · c0a4ce1f
      Nazar Mokrynskyi authored
      I was reading source code and noticed these two places that are no
      longer true after https://github.com/paritytech/polkadot-sdk/pull/1211
      c0a4ce1f
    • Kian Paimani's avatar
      tweak pallet macro (genesis_config etc) to cater for RA users as well. (#1689) · b5fcdff9
      Kian Paimani authored
      Small tweak to https://github.com/paritytech/polkadot-sdk/pull/1642 to
      incorporate the ideas from
      https://github.com/paritytech/polkadot-sdk/issues/247.
      
      I think this is the good middle ground, where we have good rust-docs,
      and the RA users will also have some hope.
      
      cc @wentelteefje @aaronbassett @sam0x17
      b5fcdff9
    • Gabriel Facco de Arruda's avatar