Skip to content
Snippets Groups Projects
  1. Nov 19, 2024
  2. Nov 18, 2024
  3. Nov 15, 2024
    • clangenb's avatar
      migrate pallet-nomination-pool-benchmarking to benchmarking syntax v2 (#6302) · 4df94333
      clangenb authored
      
      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>
    • Tobi Demeco's avatar
      sp-trie: minor fix to avoid possible panic during node decoding (#6486) · a77940ba
      Tobi Demeco authored
      
      # 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>
    • Alexandru Vasile's avatar
      network/litep2p: Update litep2p network backend to version 0.8.1 (#6484) · 8bea091e
      Alexandru Vasile authored
      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>
    • PG Herveou's avatar
      [pallet-revive] use evm decimals in call host fn (#6466) · 39eba149
      PG Herveou authored
      
      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>
  4. Nov 14, 2024
    • NingLin-P's avatar
      Support more types in TypeWithDefault (#6411) · 5bc571b0
      NingLin-P authored
      
      # 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>
    • PG Herveou's avatar
      [pallet-revive] set logs_bloom (#6460) · dbeea184
      PG Herveou authored
      
      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>
    • Viraj Bhartiya's avatar
      feat: add workflow to test readme generation (#6359) · 5da40637
      Viraj Bhartiya authored
      
      # 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>
    • georgepisaltu's avatar
      Follow up work on `TransactionExtension` - fix weights and clean up `UncheckedExtrinsic` (#6418) · ae4b68b3
      georgepisaltu authored
      
      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>
    • thiolliere's avatar
      Fix staking benchmark (#6463) · a1af8ed6
      thiolliere authored
      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>
  5. Nov 13, 2024
    • Branislav Kontur's avatar
      Fixed bridges zombienet tests because of removed NetworkId::Rococo/Westend from xcm::v5 (#6465) · bff395f8
      Branislav Kontur authored
      Closes: https://github.com/paritytech/polkadot-sdk/issues/6449
    • Andrei Eres's avatar
      Add litep2p network protocol benches (#6455) · 6b84431e
      Andrei Eres authored
      # 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>
    • Stephane Gurgenidze's avatar
      backing: improve session buffering for runtime information (#6284) · e617d1d0
      Stephane Gurgenidze authored
      ## 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).
    • Kazunobu Ndong's avatar
      Get rid of `libp2p` dependency in `sc-authority-discovery` (#5842) · a84f2598
      Kazunobu Ndong authored
      
      ## 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>
    • Bastian Köcher's avatar
      frame-benchmarking: Use correct components for pallet instances (#6435) · ac2546b5
      Bastian Köcher authored
      
      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>
    • Giuseppe Re's avatar
      Refactor pallet `society` (#6367) · e87bffce
      Giuseppe Re authored
      
      - [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>
    • Michał Gil's avatar
      remove pallet::getter from pallet-staking (#6184) · 95d98e6d
      Michał Gil authored
      
      # 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>
    • thiolliere's avatar
      [Tx ext stage 2: 1/4] Add `TransactionSource` as argument in... · 8e3d9296
      thiolliere authored
      [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
    • Andrei Eres's avatar
      Remove debug message about pruning active leaves (#6440) · 5aeaa664
      Andrei Eres authored
      
      # 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>
  6. Nov 12, 2024
    • PG Herveou's avatar
      [pallet-revive] eth-rpc fixes (#6453) · 0156ca8f
      PG Herveou authored
      
      - 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>
    • Niklas Adolfsson's avatar
      rpc server: fix host filter for localhost on ipv6 (#6454) · 0a0af0ec
      Niklas Adolfsson authored
      
      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 <>
    • Francisco Aguirre's avatar
      XCMv5: add ExecuteWithOrigin instruction (#6304) · 4c059c02
      Francisco Aguirre authored
      
      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 <>
    • Egor_P's avatar
      [Release|CI/CD] Fix audiences changelog template (#6444) · 34d2ff85
      Egor_P authored
      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.
    • Nazar Mokrynskyi's avatar
      Use type alias for transactions (#6431) · a875f180
      Nazar Mokrynskyi authored
      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
    • Jeeyong Um's avatar
      Introduce `ConstUint` to make dependent types in `DefaultConfig` more adaptable (#6425) · 872d9491
      Jeeyong Um authored
      # 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)
    • Xavier Lau's avatar
      Migrate pallet-child-bounties benchmark to v2 (#6310) · b570baf3
      Xavier Lau authored
      
      Part of:
      
      - #6202.
      
      ---------
      
      Co-authored-by: default avatarGitHub Action <action@github.com>
      Co-authored-by: default avatarGiuseppe Re <giuseppe.re@parity.io>
    • Doordashcon's avatar
      NoOp Impl Polling Trait (#5311) · 9f603b1a
      Doordashcon authored
      
      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>
    • PG Herveou's avatar
      [pallet-revive] adjust fee dry-run calculation (#6393) · 9f8656ba
      PG Herveou authored
      
      - 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>
  7. Nov 11, 2024