Skip to content
Snippets Groups Projects
  1. Oct 15, 2024
  2. Oct 14, 2024
  3. Oct 12, 2024
    • Julian Eager's avatar
      Fix storage expansion in pallet section (#6023) · d1c115b6
      Julian Eager authored
      fixes #5320 @sam0x17 @gupnik 
      
      # Description
      
      The issue could be confirmed with the added example. The cause is for
      macro hygiene, `entries` in the `#( #entries_builder )*` expansion won't
      be able to reference the `entries` defined outside. The solution here is
      to allow the reference to be passed into the expansion with closure.
      
      Or we could just switch to the unhygienic span with `quote::quote!`
      instead such that `entries` will resolve to the "outer" definition.
  4. Oct 11, 2024
    • Maksym H's avatar
      /cmd: Improved devx of benching many pallets simultaneously (#6007) · c0b73433
      Maksym H authored
      
      ### Improved devx of running many pallets simultaneously
      
      Changes to /cmd:
      - Replace (flip) `--continue-on-fail` with `--fail-fast`, but only for
      `bench`. This makes all pallets/runtimes run non-stop by default, as it
      was primary use-case during tests
      - The list of successful/failed pallets was hard to find within tons of
      logs, so decided to write only needed logs in a file, and output as a
      summary in the workflow and in the comment
      - Side fix: updated `tasks_example` to `pallet_example_tasks` to make
      compliant with standard naming
      
      <img width="1006" alt="image"
      src="https://github.com/user-attachments/assets/14896041-7018-4a0d-92b7-4508e81913c2">
      
      + added command results to workflow summary:
      <img width="1275" alt="image"
      src="https://github.com/user-attachments/assets/b4a8afdb-dc9f-4ff9-9720-28a88956035f">
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
    • Michal Kucharczyk's avatar
      `substrate-node`: removed excessive polkadot-sdk features (#5925) · b45f89c5
      Michal Kucharczyk authored
      Some of the features enabled for `polkadot-sdk` umbrella crate were not
      necessary for substrate node (e.g. all `cumulus-*` or `polkadot-*`
      features) resulting in much longer compilation time. This PR fixes that.
    • Andrei Eres's avatar
      Rename QueueEvent::StartWork (#6015) · e5ccc008
      Andrei Eres authored
      # Description
      
      When we send `QueueEvent::StartWork`, we have already completed the
      execution. This may be a leftover of a previous logic change. Currently,
      the name is misleading, so it would be better to rename it to
      `FinishWork`.
      
      
      https://github.com/paritytech/polkadot-sdk/blob/c52675ef/polkadot/node/core/pvf/src/execute/queue.rs#L632-L646
      
      
      https://github.com/paritytech/polkadot-sdk/blob/c52675ef
      
      /polkadot/node/core/pvf/src/execute/queue.rs#L361-L363
      
      Fixes https://github.com/paritytech/polkadot-sdk/issues/5910
      
      ## Integration
      
      Shouldn't affect downstream projects.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
    • Michal Kucharczyk's avatar
      fatp: panic/unimplemented removed · 0b715528
      Michal Kucharczyk authored
      Verified
      0b715528
    • Alexander Samusev's avatar
      [ci] Remove quick-benchmarks-omni from GitLab (#6014) · c16ac925
      Alexander Samusev authored
      The `quick-benchmarks-omni` job was moved to GHA (can be found
      [here](https://github.com/paritytech/polkadot-sdk/blob/439b31ef/.github/workflows/check-frame-omni-bencher.yml#L22))
      but hasn't been removed from GitLab . PR fixes it and makes the check
      required.
    • Michal Kucharczyk's avatar
      network::transactions: debug removed · 81273fde
      Michal Kucharczyk authored
      Verified
      81273fde
  5. Oct 10, 2024
  6. 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>