Skip to content
Snippets Groups Projects
  1. Apr 12, 2025
  2. Apr 11, 2025
    • kR1s_0147's avatar
      Migrate pallet-nft-fractionalization to umbrella crate (#7970) · 6ce61101
      kR1s_0147 authored
      
      Part of #6504
      
      ---------
      
      Co-authored-by: default avatarGiuseppe Re <giuseppe.re@parity.io>
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
    • Ludovic_Domingues's avatar
      Added locked flag to readmes that were missing it (#8187) · f3be5315
      Ludovic_Domingues authored
      
      # Description
      From issue #8028 
      
      Add --locked flag to cargo install occurrences in README files across
      the repository. This change helps prevent dependency resolution issues
      that can occur when using cargo install without version locking,
      ensuring more consistent and predictable builds for users.
      
      The --locked flag ensures cargo uses the exact dependency versions from
      Cargo.lock rather than recalculating dependencies, which can sometimes
      result in breaking changes if a minor update occurs in a dependency.
      This PR adds the flag to multiple READMEs that become public-facing for
      crates published on crates.io.
      
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
    • s0me0ne-unkn0wn's avatar
      Refactor the host <-> runtime interface machinery (#7375) · 93852b12
      s0me0ne-unkn0wn authored
      Keep calm and stand still, it's a hijacking of PR #3689 by @koute
      
      . The
      original description follows; please refer to the original PR for the
      past discussions.
      
      --- 8< --- cut here --- 8< ---
      
      This PR refactors the way the host functions are defined.
      
      Previously the way a given type was marshalled through the host <->
      runtime boundary was hardcoded for every type by the virtue of it
      implementing the relevant conversion traits.
      
      This had two major consequences:
      * It was not obvious how a given type is going to be passed just by
      looking at its type alone, masking potentially expensive marshalling
      strategies. (For example, returning `Option<u32>` was done through the
      SCALE codec and involved extra memory allocations!)
      * It was not possible to use multiple marshalling strategies for a
      single type, making some of the future improvements we'd like to do
      (e.g. move the runtime memory allocator into the runtime) very hard to
      do.
      
      So this PR disentangles this mess and makes the marshalling strategies
      explicit. This makes it much more clear how a given type in a given host
      function is marshalled, and also makes it possible to use different
      marshalling strategies for the same type in different host functions.
      
      Before this PR you'd define a host function like this:
      
      ```rust
          #[runtime_interface]
          trait MyInterface {
              fn say_hello_world(name: &str) {
                  println!("Hello {name}!");
              }
          }
      ```
      
      and after this PR you'll define it like this:
      
      ```rust
          #[runtime_interface]
          trait MyInterface {
              fn say_hello_world(name: PassFatPointerAndRead<&str>) {
                  println!("Hello {name}!", name);
              }
          }
      ```
      
      In this case the strategy for passing the `&str` is now explicitly
      specified (`PassFatPointerAndRead`). Note that the *actual* API
      generated by this macro and the way arguments are accessed is completely
      unchanged! The `#[runtime_interface]` machinery automatically "strips"
      away the marshalling strategy wrappers, so neither the body of the
      `say_hello_world` function here nor its callers need to be changed.
      
      This is a breaking change only for people who use `#[runtime_interface]`
      to define their own custom host functions.
      
      ---------
      
      Co-authored-by: default avatarJan Bujak <jan@parity.io>
      Co-authored-by: default avatarGuillaume Thiolliere <gui.thiolliere@gmail.com>
    • Iulian Barbu's avatar
      Use `TryFrom` impls instead of `as` operator in `polkadot-runtime-parachains` (#8118) · fc0fcbae
      Iulian Barbu authored
      
      # Description
      
      - changed conversions based on `as` operator to `usize::try_from` in
      `polkadot-runtime-parachains`
      
      ## Integration
      
      N/A
      
      ## Review Notes
      
      N/A
      
      ---------
      
      Signed-off-by: default avatarIulian Barbu <iulian.barbu@parity.io>
      Co-authored-by: default avatarcmd[bot] <41898282+github-actions[bot]@users.noreply.github.com>
      Co-authored-by: default avatarBastian Köcher <info@kchr.de>
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      Co-authored-by: default avatarteor <teor@riseup.net>
      Co-authored-by: default avatarGuillaume Thiolliere <guillaume.thiolliere@parity.io>
    • Eugen Snitko's avatar
      Allow /cmd run with --clean flag (#8220) · 38e93b57
      Eugen Snitko authored
      /cmd with the `--clean` flag should clean up the old comments but still
      run the job
    • Utkarsh Bhardwaj's avatar
      add poke_deposit extrinsic to pallet-society (#7833) · 1c05d01c
      Utkarsh Bhardwaj authored
      
      # Description
      
      * This PR adds a new extrinsic `poke_deposit` to `pallet-society`. This
      extrinsic will be used to re-adjust the deposits made in the pallet to
      create a bid after AHM.
      * Part of #5591 
      
      ## Review Notes
      
      * Added a new extrinsic `poke_deposit` in `pallet-society`.
      * Added a new event `DepositPoked` to be emitted upon a successful call
      of the extrinsic.
      * Although the immediate use of the extrinsic will be to give back some
      of the deposit after the AH-migration, the extrinsic is written such
      that it can work if the deposit decreases or increases (both).
      * The call to the extrinsic would be `free` if an actual adjustment is
      made to the deposit and `paid` otherwise.
      * Added tests to test all scenarios.
      * Added benchmark
      
      ## TO-DOs
      * [x] Run CI cmd bot to benchmark
      
      ---------
      
      Co-authored-by: default avatarcmd[bot] <41898282+github-actions[bot]@users.noreply.github.com>
  3. Apr 10, 2025
  4. Apr 09, 2025
  5. Apr 08, 2025
    • Alin Dima's avatar
      collator protocol revamp: add new empty collator protocol subsystem for validator side (#8144) · 71141a9f
      Alin Dima authored
      Add a new (empty) variant for the validator side of the collator
      protocol subsystem
      Forms the basis for the collator protocol revamp follow-up work.
    • todortodorovic's avatar
      chore: idiomatic rust cleanup (#8163) · cb3ede64
      todortodorovic authored
      
      Description
      
      This PR performs a series of non-functional refactors across multiple
      files to improve code readability and consistency.
      
      Key changes include:
      • Replacing verbose pattern matches with shorter .ok(), .err(), or
      .ok_or()? alternatives.
      • Using div_ceil() instead of manual (x + 1) / 2 calculations for better
      clarity.
      	•	Removing redundant .clone().take() patterns to simplify logic.
      • Applying consistent and idiomatic Rust expressions throughout the
      codebase.
      
      These changes do not affect runtime functionality, but improve
      maintainability and align the code with modern Rust practices.
      
      Integration
      
      No integration steps are required. These are non-functional refactors
      that do not alter the runtime behavior or public APIs. Downstream
      projects should experience no impact.
      
      Review Notes
      
      All changes are cosmetic or idiomatic improvements:
      	•	Each change was tested to ensure it preserves the original behavior.
      	•	Focus was on readability, simplicity, and reducing redundancy.
      	•	No logic paths were altered; only how those paths are expressed.
      
      ---------
      
      Co-authored-by: default avatarcmd[bot] <41898282+github-actions[bot]@users.noreply.github.com>
      Co-authored-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
      Co-authored-by: default avatarDónal Murray <donal.murray@parity.io>
    • James Wilson's avatar
      Update to frame-metadata 21.0 (#8122) · 8c6dd1d0
      James Wilson authored
      This PR will update polkadot-sdk to use frame-metadata 21.0.0, for the
      latest iteration of unstable V16 metadata. Hopefully this is the final
      change before we do a PR to stabilize v16 metadata at the end of April.
      
      Also updates to `merkelized-metadata` 0.5.0 which supports this version.
    • Alexandru Gheorghe's avatar
      benchmark: storage: Make read/write benchmarks more accurate (#7867) · 64910adf
      Alexandru Gheorghe authored
      
      There are a few problems with these read/write benchmarks which makes
      them produce misleading results, especially when we enable the
      trie-cache.
      
      The problems are:
      - Both benchmarks run without PoV recorder enabled, that is not accurate
      for parachains because without the PoV recorder, you can directly access
      the key from the value cache, while with the PoV recorder you still need
      to do the walk through which uses the Node cache, e.g:
      https://github.com/paritytech/trie/blob/master/trie-db/src/lookup.rs#L446.
      To fix this I added I parameter enable-pov-recorder which is meant to be
      used when generating the weights for parachains.
      - Every write measures both the time to update the key and to compute
      the storage root and commit all the changes, which is not accurate
      because the storage root is computed only once at the end of the block.
      For this I added a new argument --batch-size, which is used to determine
      how many keys to update and performs the storage root computation only
      once, it then calculate the per key write cost as `durations /
      batch-size`.
      - For reads when you run with the PoV recorder, there is also a benefit
      from running with the same recorder rather than creating a different
      recorder every read, so we again use the `batch-size` for than to obtain
      the amortised cost of a read.
      - bench warmup seemed to not warmup child keys even when
      `include-child-trees`, so I fixed that as well
      
      ## Results on reference hardware, asset-hub-westend state
      | Setup | Batch size| Amortized cost of a key write(**ns**) | Amortized
      cost of a key read(**ns**)|
      |--------|--------|--------|--------|
      |Without TrieCache, Without PoV Recorder|1|88_521|46_981|
      |Without TrieCache, With PoV Recorder|1|95_161|48_711|
      |With TrieCache, Without PoV Recorder|1|66_008|528|
      |With TrieCache, With PoV Recorder|1|73_145|12_142|
      |Without TrieCache, Without PoV Recorder|1000|52_646|72_434|
      |Without TrieCache, With PoV Recorder|1000|54_896|50_267|
      |With TrieCache, Without PoV Recorder|1000|30_585|497|
      |With TrieCache, With PoV Recorder|1000|33_765|6_928|
      |Without TrieCache, Without PoV Recorder|10_000|48_945|52_730|
      |Without TrieCache, With PoV Recorder|10_000|50_285|49_860|
      |With TrieCache, Without PoV Recorder|10_000|25_903|484|
      |With TrieCache, With PoV Recorder|10_000|28_417|7_153|
      |Without TrieCache, Without PoV Recorder|100_000|31_359|45_839|
      |Without TrieCache, With PoV Recorder|100_000|32_932|48_393|
      |With TrieCache, Without PoV Recorder|100_000|20_255|493|
      |*With TrieCache, With PoV Recorder*, to be used|100_000|21_998|6_908|
      
      ## Results on reference hardware asset-hub-polkadot state
      | Setup | Batch size| Amortized cost of a key write(**ns**) | Amortized
      cost of a key read(**ns**)|
      |--------|--------|--------|--------|
      |Without TrieCache, Without PoV Recorder|1|102_239|56_209|
      |Without TrieCache, With PoV Recorder|1|106_659|54_256|
      |With TrieCache, Without PoV Recorder|1|85_419|608|
      |With TrieCache, With PoV Recorder|1|95_221|13_567|
      |Without TrieCache, Without PoV Recorder|1000|61_574|53_767|
      |Without TrieCache, With PoV Recorder|1000|64_770|66_162|
      |With TrieCache, Without PoV Recorder|1000|35_879|597|
      |With TrieCache, With PoV Recorder|1000|39_464|8_482|
      |Without TrieCache, Without PoV Recorder|10_000|62_465|58_236|
      |Without TrieCache, With PoV Recorder|10_000|65_082|95_118|
      |With TrieCache, Without PoV Recorder|10_000|32_259|601|
      |With TrieCache, With PoV Recorder|10_000|34_620|8_810|
      |Without TrieCache, Without PoV Recorder|100_000|43_794|69_157|
      |Without TrieCache, With PoV Recorder|100_000|45_060|66_343|
      |With TrieCache, Without PoV Recorder|100_000|25_327|596|
      |*With TrieCache, With PoV Recorder*, to be used|100_000|27_622|8_598|
      
      ## Results on my local machine with westend-assethub state.
      | Setup | Batch size| Amortized cost of a key write(**ns**) | Amortized
      cost of a key read(**ns**)|
      |--------|--------|--------|--------|
      |Without TrieCache, Without PoV Recorder|1| 55_443|27_510|
      |Without TrieCache, With PoV Recorder|1|143_189|105_103|
      |With TrieCache, Without PoV Recorder|1|37_519|370|
      |With TrieCache, With PoV Recorder|1|42_569|7_309|
      |Without TrieCache, Without PoV Recorder|1000| 29_364|25_150|
      |Without TrieCache, With PoV Recorder|1000|33_221|107_349|
      |With TrieCache, Without PoV Recorder|1000|18_355|370|
      |With TrieCache, With PoV Recorder|1000|19_883|4_063|
      |Without TrieCache, Without PoV Recorder|10_000| 28_336|27_765|
      |Without TrieCache, With PoV Recorder|10_000|29_673|62_392|
      |With TrieCache, Without PoV Recorder|10_000|15_102|370|
      |With TrieCache, With PoV Recorder|10_000|16_461|4_124|
      |Without TrieCache, Without PoV Recorder|100_000| 18_935|27_151|
      |Without TrieCache, With PoV Recorder|100_000|19_681|48_393|
      |With TrieCache, Without PoV Recorder|100_000|12_569|362|
      |*With TrieCache, With PoV Recorder*, to be used|100_000|13_469|3_895|
      
      
      Fixes: https://github.com/paritytech/polkadot-sdk/issues/7535
      
      ## Todo:
      - [x] Run this benchmarks on reference hardware on configuration variant
      closest to the production environment.
      
      ---------
      
      Signed-off-by: default avatarAlexandru Gheorghe <alexandru.gheorghe@parity.io>
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
    • dependabot[bot]'s avatar
      Bump tokio from 1.40.0 to 1.43.1 (#8178) · 065edc38
      dependabot[bot] authored
      
      Bumps [tokio](https://github.com/tokio-rs/tokio) from 1.40.0 to 1.43.1.
      <details>
      <summary>Release notes</summary>
      <p><em>Sourced from <a
      href="https://github.com/tokio-rs/tokio/releases">tokio's
      releases</a>.</em></p>
      <blockquote>
      <h2>Tokio v1.43.0</h2>
      <h1>1.43.0 (Jan 8th, 2025)</h1>
      <h3>Added</h3>
      <ul>
      <li>net: add <code>UdpSocket::peek</code> methods (<a
      href="https://redirect.github.com/tokio-rs/tokio/issues/7068">#7068</a>)</li>
      <li>net: add support for Haiku OS (<a
      href="https://redirect.github.com/tokio-rs/tokio/issues/7042">#7042</a>)</li>
      <li>process: add <code>Command::into_std()</code> (<a
      href="https://redirect.github.com/tokio-rs/tokio/issues/7014">#7014</a>)</li>
      <li>signal: add <code>SignalKind::info</code> on illumos (<a
      href="https://redirect.github.com/tokio-rs/tokio/issues/6995">#6995</a>)</li>
      <li>signal: add support for realtime signals on illumos (<a
      href="https://redirect.github.com/tokio-rs/tokio/issues/7029">#7029</a>)</li>
      </ul>
      <h3>Fixed</h3>
      <ul>
      <li>io: don't call <code>set_len</code> before initializing vector in
      <code>Blocking</code> (<a
      href="https://redirect.github.com/tokio-rs/tokio/issues/7054">#7054</a>)</li>
      <li>macros: suppress <code>clippy::needless_return</code> in
      <code>#[tokio::main]</code> (<a
      href="https://redirect.github.com/tokio-rs/tokio/issues/6874">#6874</a>)</li>
      <li>runtime: fix thread parking on WebAssembly (<a
      href="https://redirect.github.com/tokio-rs/tokio/issues/7041">#7041</a>)</li>
      </ul>
      <h3>Changes</h3>
      <ul>
      <li>chore: use unsync loads for <code>unsync_load</code> (<a
      href="https://redirect.github.com/tokio-rs/tokio/issues/7073">#7073</a>)</li>
      <li>io: use <code>Buf::put_bytes</code> in <code>Repeat</code> read impl
      (<a
      href="https://redirect.github.com/tokio-rs/tokio/issues/7055">#7055</a>)</li>
      <li>task: drop the join waker of a task eagerly (<a
      href="https://redirect.github.com/tokio-rs/tokio/issues/6986">#6986</a>)</li>
      </ul>
      <h3>Changes to unstable APIs</h3>
      <ul>
      <li>metrics: improve flexibility of H2Histogram Configuration (<a
      href="https://redirect.github.com/tokio-rs/tokio/issues/6963">#6963</a>)</li>
      <li>taskdump: add accessor methods for backtrace (<a
      href="https://redirect.github.com/tokio-rs/tokio/issues/6975">#6975</a>)</li>
      </ul>
      <h3>Documented</h3>
      <ul>
      <li>io: clarify <code>ReadBuf::uninit</code> allows initialized buffers
      as well (<a
      href="https://redirect.github.com/tokio-rs/tokio/issues/7053">#7053</a>)</li>
      <li>net: fix ambiguity in <code>TcpStream::try_write_vectored</code>
      docs (<a
      href="https://redirect.github.com/tokio-rs/tokio/issues/7067">#7067</a>)</li>
      <li>runtime: fix <code>LocalRuntime</code> doc links (<a
      href="https://redirect.github.com/tokio-rs/tokio/issues/7074">#7074</a>)</li>
      <li>sync: extend documentation for
      <code>watch::Receiver::wait_for</code> (<a
      href="https://redirect.github.com/tokio-rs/tokio/issues/7038">#7038</a>)</li>
      <li>sync: fix typos in <code>OnceCell</code> docs (<a
      href="https://redirect.github.com/tokio-rs/tokio/issues/7047">#7047</a>)</li>
      </ul>
      <p><a
      href="https://redirect.github.com/tokio-rs/tokio/issues/6874">#6874</a>:
      <a
      href="https://redirect.github.com/tokio-rs/tokio/pull/6874">tokio-rs/tokio#6874</a>
      <a
      href="https://redirect.github.com/tokio-rs/tokio/issues/6963">#6963</a>:
      <a
      href="https://redirect.github.com/tokio-rs/tokio/pull/6963">tokio-rs/tokio#6963</a>
      <a
      href="https://redirect.github.com/tokio-rs/tokio/issues/6975">#6975</a>:
      <a
      href="https://redirect.github.com/tokio-rs/tokio/pull/6975">tokio-rs/tokio#6975</a>
      <a
      href="https://redirect.github.com/tokio-rs/tokio/issues/6986">#6986</a>:
      <a
      href="https://redirect.github.com/tokio-rs/tokio/pull/6986">tokio-rs/tokio#6986</a>
      <a
      href="https://redirect.github.com/tokio-rs/tokio/issues/6995">#6995</a>:
      <a
      href="https://redirect.github.com/tokio-rs/tokio/pull/6995">tokio-rs/tokio#6995</a>
      <a
      href="https://redirect.github.com/tokio-rs/tokio/issues/7014">#7014</a>:
      <a
      href="https://redirect.github.com/tokio-rs/tokio/pull/7014">tokio-rs/tokio#7014</a>
      <a
      href="https://redirect.github.com/tokio-rs/tokio/issues/7029">#7029</a>:
      <a
      href="https://redirect.github.com/tokio-rs/tokio/pull/7029">tokio-rs/tokio#7029</a>
      <a
      href="https://redirect.github.com/tokio-rs/tokio/issues/7038">#7038</a>:
      <a
      href="https://redirect.github.com/tokio-rs/tokio/pull/7038">tokio-rs/tokio#7038</a>
      <a
      href="https://redirect.github.com/tokio-rs/tokio/issues/7041">#7041</a>:
      <a
      href="https://redirect.github.com/tokio-rs/tokio/pull/7041">tokio-rs/tokio#7041</a>
      <a
      href="https://redirect.github.com/tokio-rs/tokio/issues/7042">#7042</a>:
      <a
      href="https://redirect.github.com/tokio-rs/tokio/pull/7042">tokio-rs/tokio#7042</a>
      <a
      href="https://redirect.github.com/tokio-rs/tokio/issues/7047">#7047</a>:
      <a
      href="https://redirect.github.com/tokio-rs/tokio/pull/7047">tokio-rs/tokio#7047</a>
      <a
      href="https://redirect.github.com/tokio-rs/tokio/issues/7053">#7053</a>:
      <a
      href="https://redirect.github.com/tokio-rs/tokio/pull/7053">tokio-rs/tokio#7053</a>
      <a
      href="https://redirect.github.com/tokio-rs/tokio/issues/7054">#7054</a>:
      <a
      href="https://redirect.github.com/tokio-rs/tokio/pull/7054">tokio-rs/tokio#7054</a>
      <a
      href="https://redirect.github.com/tokio-rs/tokio/issues/7055">#7055</a>:
      <a
      href="https://redirect.github.com/tokio-rs/tokio/pull/7055">tokio-rs/tokio#7055</a></p>
      <!-- raw HTML omitted -->
      </blockquote>
      <p>... (truncated)</p>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/tokio-rs/tokio/commit/a7b658c35bd40f6811e557aeb97cbb361b612c56"><code>a7b658c</code></a>
      chore: prepare Tokio v1.43.1 release</li>
      <li><a
      href="https://github.com/tokio-rs/tokio/commit/c1c8d1033d637d7027fdc137ec8008c5801cbc0d"><code>c1c8d10</code></a>
      Merge remote-tracking branch 'origin/tokio-1.38.x' into
      forward-port-1.38.x</li>
      <li><a
      href="https://github.com/tokio-rs/tokio/commit/aa303bc2051f7c21b48bb7bfcafe8fd4f39afd21"><code>aa303bc</code></a>
      chore: prepare Tokio v1.38.2 release</li>
      <li><a
      href="https://github.com/tokio-rs/tokio/commit/7b6ccb515ff067151ed62db835f735e5653f8784"><code>7b6ccb5</code></a>
      chore: backport CI fixes</li>
      <li><a
      href="https://github.com/tokio-rs/tokio/commit/4b174ce2c95fe1d1a217917db93fcc935e17e0da"><code>4b174ce</code></a>
      sync: fix cloning value when receiving from broadcast channel</li>
      <li><a
      href="https://github.com/tokio-rs/tokio/commit/5f3296df77ad594779d1fe1a1583078ca9832daf"><code>5f3296d</code></a>
      chore: prepare Tokio v1.43.0 (<a
      href="https://redirect.github.com/tokio-rs/tokio/issues/7079">#7079</a>)</li>
      <li><a
      href="https://github.com/tokio-rs/tokio/commit/cc974a646bd3932c148e300a92fda387c23768dd"><code>cc974a6</code></a>
      chore: prepare tokio-macros v2.5.0 (<a
      href="https://redirect.github.com/tokio-rs/tokio/issues/7078">#7078</a>)</li>
      <li><a
      href="https://github.com/tokio-rs/tokio/commit/15495fd88305099d4ffa0a5583f6d8856d728ac3"><code>15495fd</code></a>
      metrics: improve flexibility of H2Histogram Configuration (<a
      href="https://redirect.github.com/tokio-rs/tokio/issues/6963">#6963</a>)</li>
      <li><a
      href="https://github.com/tokio-rs/tokio/commit/ad4183412a0c01a9a5b92de0c2dddb5471bc2563"><code>ad41834</code></a>
      io: don't call <code>set_len</code> before initializing vector in
      <code>Blocking</code> (<a
      href="https://redirect.github.com/tokio-rs/tokio/issues/7054">#7054</a>)</li>
      <li><a
      href="https://github.com/tokio-rs/tokio/commit/bd3e8577377a2b684b50fc0cb50d98f03ad09703"><code>bd3e857</code></a>
      runtime: move <code>is_join_waker_set</code> assertion in
      <code>unset_waker</code> (<a
      href="https://redirect.github.com/tokio-rs/tokio/issues/7072">#7072</a>)</li>
      <li>Additional commits viewable in <a
      href="https://github.com/tokio-rs/tokio/compare/tokio-1.40.0...tokio-1.43.1">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      
      [![Dependabot compatibility
      score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=tokio&package-manager=cargo&previous-version=1.40.0&new-version=1.43.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 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>
  6. Apr 07, 2025