Skip to content
Snippets Groups Projects
  1. Oct 10, 2024
    • Michal Kucharczyk's avatar
    • Michal Kucharczyk's avatar
      prdoc update · 897a91e4
      Michal Kucharczyk authored
      Verified
      897a91e4
    • Michal Kucharczyk's avatar
      review comments · 545d28c5
      Michal Kucharczyk authored
      Verified
      545d28c5
    • Michal Kucharczyk's avatar
    • Michal Kucharczyk's avatar
    • Francisco Aguirre's avatar
      Remove redundant XCMs from dry run's forwarded xcms (#5913) · 4a70b2cf
      Francisco Aguirre authored
      # Description
      
      This PR addresses
      https://github.com/paritytech/polkadot-sdk/issues/5878.
      
      After dry running an xcm on asset hub, we had redundant xcms showing up
      in the `forwarded_xcms` field of the dry run effects returned.
      These were caused by two things:
      - The `UpwardMessageSender` router always added an element even if there
      were no messages.
      - The two routers on asset hub westend related to bridging (to rococo
      and sepolia) getting the message from their queues when their queues is
      actually the same xcmp queue that was already contemplated.
      
      In order to fix this, we check for no messages in UMP and clear the
      implementation of `InspectMessageQueues` for these bridging routers.
      Keep in mind that the bridged message is still sent, as normal via the
      xcmp-queue to Bridge Hub.
      To keep on dry-running the journey of the message, the next hop to
      dry-run is Bridge Hub.
      That'll be tackled in a different PR.
      
      Added a test in `bridge-hub-westend-integration-tests` and
      `bridge-hub-rococo-integration-tests` that show that dry-running a
      transfer across the bridge from asset hub results in one and only one
      message sent to bridge hub.
      
      ## TODO
      - [x] Functionality
      - [x] Test
      
      ---------
      
      Co-authored-by: command-bot <>
    • RadiumBlock's avatar
      Add RadiumBlock bootnodes to Coretime Polkadot Chain spec (#5967) · cb1f19c5
      RadiumBlock authored
      ✄
      -----------------------------------------------------------------------------
      
      Thank you for your Pull Request! :pray:
      
       Please make sure it follows the
      contribution guidelines outlined in [this
      
      document](https://github.com/paritytech/polkadot-sdk/blob/master/docs/contributor/CONTRIBUTING.md)
      and fill out the
      sections below. Once you're ready to submit your PR for review, please
      delete this section and leave only the text under
      the "Description" heading.
      
      # Description
      
      Please consider adding RadiumBlock bootnodes to Coretime Polkadot Chain
      spec
      
      ## Integration
      
      *In depth notes about how this PR should be integrated by downstream
      projects. This part is mandatory, and should be
      reviewed by reviewers, if the PR does NOT have the `R0-Silent` label. In
      case of a `R0-Silent`, it can be ignored.*
      
      ## Review Notes
      
      *In depth notes about the **implementation** details of your PR. This
      should be the main guide for reviewers to
      understand your approach and effectively review it. If too long, use
      
      [`<details>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/details)*.
      
      *Imagine that someone who is depending on the old code wants to
      integrate your new code and the only information that
      they get is this section. It helps to include example usage and default
      value here, with a `diff` code-block to show
      possibly integration.*
      
      *Include your leftover TODOs, if any, here.*
      
      # 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)
      
      You can remove the "Checklist" section once all have been checked. Thank
      you for your contribution!
      
      ✄
      -----------------------------------------------------------------------------
      
      Co-authored-by: default avatarVeena <veena.john@radiumblock.com>
      Co-authored-by: default avatarDónal Murray <donal.murray@parity.io>
  2. Oct 09, 2024
    • dependabot[bot]'s avatar
      Bump strum from 0.26.2 to 0.26.3 (#5943) · e0062af9
      dependabot[bot] authored
      
      Bumps [strum](https://github.com/Peternator7/strum) from 0.26.2 to
      0.26.3.
      <details>
      <summary>Release notes</summary>
      <p><em>Sourced from <a
      href="https://github.com/Peternator7/strum/releases">strum's
      releases</a>.</em></p>
      <blockquote>
      <h2>v0.26.3</h2>
      <h2>What's Changed</h2>
      <ul>
      <li>Fix typos &amp; misspellings in docs by <a
      href="https://github.com/5-pebbles"><code>@​5-pebbles</code></a> in <a
      href="https://redirect.github.com/Peternator7/strum/pull/347">Peternator7/strum#347</a></li>
      <li>Update <code>heck</code> requirement by <a
      href="https://github.com/smoelius"><code>@​smoelius</code></a> in <a
      href="https://redirect.github.com/Peternator7/strum/pull/346">Peternator7/strum#346</a></li>
      <li>Fix broken links by <a
      href="https://github.com/rainbowatcher"><code>@​rainbowatcher</code></a>
      in <a
      href="https://redirect.github.com/Peternator7/strum/pull/350">Peternator7/strum#350</a></li>
      <li>Interpolate unnamed enum variant fields in to_string attribute by <a
      href="https://github.com/gin-ahirsch"><code>@​gin-ahirsch</code></a> in
      <a
      href="https://redirect.github.com/Peternator7/strum/pull/345">Peternator7/strum#345</a></li>
      <li>add hyperlinks to documentation and clarify derive macros by <a
      href="https://github.com/lolbinarycat"><code>@​lolbinarycat</code></a>
      in <a
      href="https://redirect.github.com/Peternator7/strum/pull/355">Peternator7/strum#355</a></li>
      <li>Use fully qualified syntax for calling <code>get</code> on an
      <code>EnumIter</code>, eliminating ambiguities by <a
      href="https://github.com/bluurryy"><code>@​bluurryy</code></a> in <a
      href="https://redirect.github.com/Peternator7/strum/pull/357">Peternator7/strum#357</a></li>
      </ul>
      <h2>New Contributors</h2>
      <ul>
      <li><a href="https://github.com/5-pebbles"><code>@​5-pebbles</code></a>
      made their first contribution in <a
      href="https://redirect.github.com/Peternator7/strum/pull/347">Peternator7/strum#347</a></li>
      <li><a
      href="https://github.com/rainbowatcher"><code>@​rainbowatcher</code></a>
      made their first contribution in <a
      href="https://redirect.github.com/Peternator7/strum/pull/350">Peternator7/strum#350</a></li>
      <li><a
      href="https://github.com/gin-ahirsch"><code>@​gin-ahirsch</code></a>
      made their first contribution in <a
      href="https://redirect.github.com/Peternator7/strum/pull/345">Peternator7/strum#345</a></li>
      <li><a
      href="https://github.com/lolbinarycat"><code>@​lolbinarycat</code></a>
      made their first contribution in <a
      href="https://redirect.github.com/Peternator7/strum/pull/355">Peternator7/strum#355</a></li>
      <li><a href="https://github.com/bluurryy"><code>@​bluurryy</code></a>
      made their first contribution in <a
      href="https://redirect.github.com/Peternator7/strum/pull/357">Peternator7/strum#357</a></li>
      </ul>
      <p><strong>Full Changelog</strong>: <a
      href="https://github.com/Peternator7/strum/compare/v0.26.2...v0.26.3">https://github.com/Peternator7/strum/compare/v0.26.2...v0.26.3</a></p>
      </blockquote>
      </details>
      <details>
      <summary>Changelog</summary>
      <p><em>Sourced from <a
      href="https://github.com/Peternator7/strum/blob/master/CHANGELOG.md">strum's
      changelog</a>.</em></p>
      <blockquote>
      <h2>0.26.3 (strum_macros)</h2>
      <ul>
      <li><a
      href="https://redirect.github.com/Peternator7/strum/pull/344">#344</a>:
      Hide <code>EnumTable</code> because it's going to be deprecated in the
      next
      version.</li>
      <li><a
      href="https://redirect.github.com/Peternator7/strum/pull/357">#357</a>:
      Fixes an incompatiblity with <code>itertools</code> by using the fully
      qualified name rather than the inherent method.</li>
      <li><a
      href="https://redirect.github.com/Peternator7/strum/pull/345">#345</a>:
      Allows unnamed tuple like variants to use their variants in
      string interpolation. <code>#[strum(to_string = &quot;Field 0: {0},
      Field 1: {1})&quot;)]</code> will now work for tuple variants</li>
      </ul>
      </blockquote>
      </details>
      <details>
      <summary>Commits</summary>
      <ul>
      <li><a
      href="https://github.com/Peternator7/strum/commit/c89286fc2a4916ee61133aaa8d63fce83f6fc39e"><code>c89286f</code></a>
      Update changelog &amp; strum_macros version</li>
      <li><a
      href="https://github.com/Peternator7/strum/commit/0c85c16e12e80dd49e75117e7c94f697d0ad06d0"><code>0c85c16</code></a>
      Use associated function syntax for calling <code>get</code> on an
      <code>EnumIter</code>, eliminatin...</li>
      <li><a
      href="https://github.com/Peternator7/strum/commit/9689d7bb55bad0269c3fc9679a7434670139b12b"><code>9689d7b</code></a>
      add hyperlinks to documentation and clarify derive macros (<a
      href="https://redirect.github.com/Peternator7/strum/issues/355">#355</a>)</li>
      <li><a
      href="https://github.com/Peternator7/strum/commit/186d29f6a1691b6356a2d85d66f8904b9a5d3140"><code>186d29f</code></a>
      Interpolate unnamed enum variant fields in to_string attribute (<a
      href="https://redirect.github.com/Peternator7/strum/issues/345">#345</a>)</li>
      <li><a
      href="https://github.com/Peternator7/strum/commit/410062e122e001e6c3725cdc91483a0d4de5ca31"><code>410062e</code></a>
      Fix broken links (<a
      href="https://redirect.github.com/Peternator7/strum/issues/350">#350</a>)</li>
      <li><a
      href="https://github.com/Peternator7/strum/commit/1e46337eb2ec71caccf2fc35929e2f0cbedbb3c2"><code>1e46337</code></a>
      Update <code>heck</code> requirement (<a
      href="https://redirect.github.com/Peternator7/strum/issues/346">#346</a>)</li>
      <li><a
      href="https://github.com/Peternator7/strum/commit/f5fce032ed381a334e81676bd2c391353c265476"><code>f5fce03</code></a>
      Fix typos &amp; misspellings in docs (<a
      href="https://redirect.github.com/Peternator7/strum/issues/347">#347</a>)</li>
      <li>See full diff in <a
      href="https://github.com/Peternator7/strum/compare/v0.26.2...v0.26.3">compare
      view</a></li>
      </ul>
      </details>
      <br />
      
      
      [![Dependabot compatibility
      score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=strum&package-manager=cargo&previous-version=0.26.2&new-version=0.26.3)](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>
    • Andrei Eres's avatar
      Add PVF execution priority (#4837) · e294d628
      Andrei Eres authored
      
      Resolves https://github.com/paritytech/polkadot-sdk/issues/4632
      
      The new logic optimizes the distribution of execution jobs for disputes,
      approvals, and backings. Testing shows improved finality lag and
      candidate checking times, especially under heavy network load.
      
      ### Approach
      
      This update adds prioritization to the PVF execution queue. The logic
      partially implements the suggestions from
      https://github.com/paritytech/polkadot-sdk/issues/4632#issuecomment-2209188695.
      
      We use thresholds to determine how much a current priority can "steal"
      from lower ones:
      -  Disputes: 70%
      -  Approvals: 80%
      -  Backing System Parachains: 100%
      -  Backing: 100%
      
      A threshold indicates the portion of the current priority that can be
      allocated from lower priorities.
      
      For example:
      -  Disputes take 70%, leaving 30% for approvals and all backings.
      - 80% of the remaining goes to approvals, which is 30% * 80% = 24% of
      the original 100%.
      - If we used parts of the original 100%, approvals couldn't take more
      than 24%, even if there are no disputes.
      
      Assuming a maximum of 12 executions per block, with a 6-second window, 2
      CPU cores, and a 2-second run time, we get these distributions:
      
      -  With disputes: 8 disputes, 3 approvals, 1 backing
      -  Without disputes: 9 approvals, 3 backings
      
      It's worth noting that when there are no disputes, if there's only one
      backing job, we continue processing approvals regardless of their
      fulfillment status.
      
      ### Versi Testing 40/20
      
      Testing showed a slight difference in finality lag and candidate
      checking time between this pull request and its base on the master
      branch. The more loaded the network, the greater the observed
      difference.
      
      Testing Parameters:
      -  40 validators (4 malicious)
      -  20 gluttons with 2 seconds of PVF execution time
      -  6 VRF modulo samples
      -  12 required approvals
      
      ![Pasted Graphic
      3](https://github.com/user-attachments/assets/8b6163a4-a1c9-44c2-bdba-ce1ef4b1eba7)
      ![Pasted Graphic
      4](https://github.com/user-attachments/assets/9f016647-7727-42e8-afe9-04f303e6c862)
      
      ### Versi Testing 80/40
      
      For this test, we compared the master branch with the branch from
      https://github.com/paritytech/polkadot-sdk/pull/5616. The second branch
      is based on the current one but removes backing jobs that have exceeded
      their time limits. We excluded malicious nodes to reduce noise from
      disputing and banning validators. The results show that, under the same
      load, nodes experience less finality lag and reduced recovery and check
      time. Even parachains are functioning with a shorter block time,
      although it remains over 6 seconds.
      
      Testing Parameters:
      -  80 validators (0 malicious)
      -  40 gluttons with 2 seconds of PVF execution time
      -  6 VRF modulo samples
      -  30 required approvals
      
      
      ![image](https://github.com/user-attachments/assets/42bcc845-9115-4ae3-9910-286b77a60bbf)
      
      ---------
      
      Co-authored-by: default avatarAndrei Sandu <54316454+sandreim@users.noreply.github.com>
    • Vincent Geddes's avatar
      Snowbridge V2 docs (#5902) · 90ff47d9
      Vincent Geddes authored
      Here are MD docs for V2 @acatangiu @franciscoaguirre
      
       . Let me know what
      you think.
      
      ---------
      
      Co-authored-by: default avatarAdrian Catangiu <adrian@parity.io>
      Co-authored-by: default avatarFrancisco Aguirre <franciscoaguirreperez@gmail.com>
      Co-authored-by: default avatarAlistair Singh <alistair.singh7@gmail.com>
    • ordian's avatar
      Fix u256 conversion in BABE (#5994) · 292bfac4
      ordian authored
      
      https://github.com/paritytech/polkadot-sdk/pull/5886#discussion_r1793423401
      
      ---------
      
      Co-authored-by: default avatarBastian Köcher <info@kchr.de>
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
    • Alexander Samusev's avatar
      [ci] Move test-linux-stable-no-try-runtime to GHA (#5979) · 48b56aa1
      Alexander Samusev authored
      PR moves `test-linux-stable-no-try-runtime` from gitlab to github.
      I disabled two tests because our current runners don't have necessary
      syscalls enabled. Will continue working on it in
      https://github.com/paritytech/ci_cd/issues/1056
      Also PR remove `gh cli` installation since it's installed in the
      `ci-unified` image.
      
      close https://github.com/paritytech/ci_cd/issues/1023
    • Andrei Eres's avatar
      Bump PoV request timeout (#5924) · 3ad12919
      Andrei Eres authored
      # Description
      
      We previously set the PoV request timeout to 1.2s based on synchronous
      backing, which allowed for 5 PoVs per relay block. With asynchronous
      backing, we no longer have a time budget and can increase the value to
      2s.
      
      Fixes https://github.com/paritytech/polkadot-sdk/issues/5885
      
      ## Integration
      
      This PR shouldn't affect downstream projects.
      
      ## Review Notes
      
      This PR can be followed by experiments with Gluttons on Kusama to
      confirm that the timeout is sufficient.
    • Egor_P's avatar
      [Release/CI] Github flow to build `polkadot`/`polkadot-parachain` rc binaries... · c4770762
      Egor_P authored
      [Release/CI] Github flow to build `polkadot`/`polkadot-parachain` rc binaries and deb package (#5963)
      
      This PR introduces a GitHub flow, that should replace a semi manual part
      of the release process to build rc binaries for `polkadot` and
      `polkadot-parachain` + the `polkadot` deb package.
      
      Right now, this part of the release is done on the `cleanroom` machine
      by the release engineers via triggering bash scripts directly on the
      server. These GitHub flows should replace it and move everything to the
      CI.
      
      The whole flow is meant to be run in the new
      [paritytech-release](https://github.com/paritytech-release) where the
      automated release is going to be moved.
      
      The flow includes the following steps:
      - Build `polkadot`, `polakdot-prepare-worker`, `polkadot-execute-worker`
      and `polkadopt-parachain` binaries
      - Sign those artefacts using `gpg` and generate a sha256 checksum
      - Build deb package for `polakdot`
      - Make a GitHub attestation
      - Upload artefacts to the S3 buckets
      
      Closes: https://github.com/paritytech/release-engineering/issues/223
      
      ---------
      
      Co-authored-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
    • Alexander Samusev's avatar
      [ci] Remove short-benchmarks from Gitlab (#5988) · 6765bcd8
      Alexander Samusev authored
      PR removes short-benchmarks from GitLab, adds condition for
      cargo-check-rutimes
    • Javier Viola's avatar
      Disable flaky tests reported in 5972/5973/5974 (#5976) · 6c2b46f9
      Javier Viola authored
      Disable flaky tests reported in:
      #5972 
      #5973 
      #5974
  3. Oct 08, 2024
  4. Oct 07, 2024
    • Ankan's avatar
      [Staking] Noop refactor to prep pallet for currency fungible migration (#5399) · 9128dca3
      Ankan authored
      This is a no-op refactor of staking pallet to move all `T::Currency` api
      calls under one module.
      
      A followup PR (https://github.com/paritytech/polkadot-sdk/pull/5501)
      will implement the Currency <> Fungible migration for the pallet.
      
      Introduces the new `asset` module that centralizes all interaction with
      `T::Currency`. This is an attempt to try minimising staking logic
      changes to minimal parts of the codebase.
      
      ## Things of note
      - `T::Currency::free_balance` in current implementation includes both
      staked (locked) and liquid tokens (kinda sounds wrong to call it free
      then). This PR renames it to `stakeable_balance` (any better name
      suggestions?). With #5501, this will become `free balance that can be
      held/staked` + `already held/staked balance`.
    • Michal Kucharczyk's avatar