Skip to content
Snippets Groups Projects
  1. Feb 19, 2025
    • Alexander Theißen's avatar
      pallet-revive: Fix the contract size related benchmarks (#7568) · 1aeb0c94
      Alexander Theißen authored
      
      Partly addresses https://github.com/paritytech/polkadot-sdk/issues/6157
      
      The benchmarks measuring the impact of contract sizes on calling or
      instantiating a contract were bogus because they needed to be written in
      assembly in order to tightly control the basic block size.
      
      This fixes the benchmarks for:
      - call_with_code_per_byte
      - upload_code
      - instantiate_with_code
      
      And adds a new benchmark that accounts for the fact that the interpreter
      will always compile whole basic blocks:
      - basic_block_compilation
      
      After this PR only the weight we assign to instructions need to be
      addressed.
      
      ---------
      
      Co-authored-by: default avatarcmd[bot] <41898282+github-actions[bot]@users.noreply.github.com>
      Co-authored-by: default avatarPG Herveou <pgherveou@gmail.com>
      1aeb0c94
    • Alexandru Vasile's avatar
      network/tests: Add conformance testing for litep2p and libp2p (#7361) · 248e0b1d
      Alexandru Vasile authored
      
      This PR implements conformance tests between our network backends
      (litep2p and libp2p).
      
      The PR creates a setup for extending testing in the future, while
      implementing the following tests:
      - connectivity check: Connect litep2p -> libp2p and libp2p -> litep2p
      - request response check: Send 32 requests from one backend to the other
      - notification check: Send 128 ping pong notifications and 128 from one
      backend to the other
      
      cc @paritytech/networking
      
      ---------
      
      Signed-off-by: default avatarAlexandru Vasile <alexandru.vasile@parity.io>
      248e0b1d
    • Tomás Senovilla Polo's avatar
      refactor: Move `T:Config` into where clause in `#[benchmarks]` macro if needed (#7418) · 991863ff
      Tomás Senovilla Polo authored
      # Description
      
      Currently, the `#[benchmarks]` macro always add `<T:Config>` to the
      expanded code even if a where clause is used. Using a where clause which
      also includes a trait bound for the generic `T` is triggering [this
      clippy
      warning](https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations)
      from Rust 1.78 onwards. We've found that
      [here](https://github.com/freeverseio/laos/blob/main/pallets/precompiles-benchmark/src/precompiles/vesting/benchmarking.rs#L126-L132)
      in LAOS, as we need to include `T: pallet_vesting::Config` in the where
      clause, here's the outcome:
      
      ```rust
      error: bound is defined in more than one place
         --> pallets/precompiles-benchmark/src/precompiles/vesting/benchmarking.rs:130:1
          |
      130 | / #[benchmarks(
      131 | |     where
      132 | |         T: Config + pallet_vesting::Config,
          | |         ^
      133 | |         T::AccountIdToH160: ConvertBack<T::AccountId, H160>,
      134 | |         BalanceOf<T>: Into<U256>,
      135 | |         BlockNumberFor<T>: Into<U256>
      136 | | )]
          | |__^
          |
          = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations
          = note: `-D clippy::multiple-bound-locations` implied by `-D warnings`
          = help: to override `-D warnings` add `#[allow(clippy::multiple_bound_locations)]`
          = note: this error originates in the attribute macro `benchmarks` (in Nightly builds, run with -Z macro-backtrace for more info)
      ```
      
      While this is a harmless warning, only thrown due to a trait bound for T
      is being defined twice in an expanded code that nobody will see, and
      while annotating the benchmarks module with
      `#[allow(clippy::multiple_bound_locations)]` is enough to get rid of it,
      it might cause unnecessary concerns.
      
      Hence, I think it's worth slightly modifying the macro to avoid this.
      
      ## Review Notes
      
      What I propose is to include `<T: Config>` (or its instance version) in
      the expanded code only if no where clause was specified, and include
      that trait bound in the where clause if one is present.
      
      I considered always creating a where clause which includes `<T: Config>`
      even if the macro doesn't specify a where clause and totally getting rid
      of `<T: Config>`, but discarded the idea for simplicity.
      
      I also considered checking if `T:Config` is present in the provided
      where clause (as it's the case in the LAOS example I provided) before
      adding it, but discarded the idea as well due to it implies a bit more
      computation and having `T:Config` defined twice in the where clause is
      harmless: the compiler will ignore the second occurrence and nobody will
      see it's there.
      
      If you think this change is worth it and one of the discarded ideas
      would be a better approach, I'm happy to push that code instead.
      991863ff
    • Florian Franzen's avatar
      cumulus-client: use only valid syntax in Cargo.toml (#7455) · 612951f9
      Florian Franzen authored
      # Description
      
      This PR ensure that only valid syntax is uses inside the `Cargo.toml`. 
      
      ## Integration
      
      Not sure if worth backporting. Came across this when trying to package
      `try-runtime-cli`.
      
      ## Review Notes
      
      It should be obvious that this is not valid syntax. I am not able to add
      labels and doubt this requires a prdoc.
      612951f9
    • Bastian Köcher's avatar
    • Alexander Theißen's avatar
      pallet-revive: Add env var to allow skipping of validation for testing (#7562) · 70859293
      Alexander Theißen authored
      
      When trying to reproduce bugs we sometimes need to deploy code that
      wouldn't pass validation. This PR adds a new environment variable
      `REVIVE_SKIP_VALIDATION` that when set will skip all validation except
      the contract blob size limit.
      
      Please note that this only applies to when the pallet is compiled for
      `std` and hence will never be part of on-chain.
      
      ---------
      
      Co-authored-by: default avatarcmd[bot] <41898282+github-actions[bot]@users.noreply.github.com>
      70859293
    • Oliver Tale-Yazdi's avatar
      [mq pallet] Custom next queue selectors (#6059) · 2be6ec62
      Oliver Tale-Yazdi authored
      
      Changes:
      - Expose a `force_set_head` function from the `MessageQueue` pallet via
      a new trait: `ForceSetHead`. This can be used to force the MQ pallet to
      process this queue next.
      - The change only exposes an internal function through a trait, no audit
      is required.
      
      ## Context
      
      For the Asset Hub Migration (AHM) we need a mechanism to prioritize the
      inbound upward messages and the inbound downward messages on the AH. To
      achieve this, a minimal (and no breaking) change is done to the MQ
      pallet in the form of adding the `force_set_head` function.
      
      An example use of how to achieve prioritization is then demonstrated in
      `integration_test.rs::AhmPrioritizer`. Normally, all queues are
      scheduled round-robin like this:
      
      `| Relay | Para(1) | Para(2) | ... | Relay | ... `
      
      The prioritizer listens to changes to its queue and triggers if either:
      - The queue processed in the last block (to keep the general round-robin
      scheduling)
      - The queue did not process since `n` blocks (to prevent starvation if
      there are too many other queues)
      
      In either situation, it schedules the queue for a streak of three
      consecutive blocks, such that it would become:
      
      `| Relay | Relay | Relay | Para(1) | Para(2) | ... | Relay | Relay |
      Relay | ... `
      
      It basically transforms the round-robin into an elongated round robin.
      Although different strategies can be injected into the pallet at
      runtime, this one seems to strike a good balance between general service
      level and prioritization.
      
      ---------
      
      Signed-off-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
      Co-authored-by: default avatarcmd[bot] <41898282+github-actions[bot]@users.noreply.github.com>
      Co-authored-by: default avatarmuharem <ismailov.m.h@gmail.com>
      2be6ec62
    • PG Herveou's avatar
      [pallet-revive] fix subxt version (#7570) · 54937491
      PG Herveou authored
      
      Cargo.lock change to subxt were rolled back 
      Fixing it and updating it in Cargo.toml so it does not happen again
      
      ---------
      
      Co-authored-by: default avatarcmd[bot] <41898282+github-actions[bot]@users.noreply.github.com>
      54937491
    • s0me0ne-unkn0wn's avatar
      Shorter availability data retention period for testnets (#7353) · 81584fa4
      s0me0ne-unkn0wn authored
      Closes #3270
      
      ---------
      
      Co-authored-by: command-bot <>
      81584fa4
    • Bastian Köcher's avatar
      sc-informant: Print full hash when debug logging is enabled (#7554) · b92989de
      Bastian Köcher authored
      
      When debugging stuff, it is useful to see the full hashes and not only
      the "short form". This makes it easier to read logs and follow blocks.
      
      ---------
      
      Co-authored-by: default avatarcmd[bot] <41898282+github-actions[bot]@users.noreply.github.com>
      b92989de
    • Michal Kucharczyk's avatar
      `fatxpool`: transaction statuses metrics added (#7505) · 845e1ccf
      Michal Kucharczyk authored
      #### Overview
      
      This PR introduces a new mechanism to capture and report metrics related
      to timings of transaction lifecycle events, which are currently not
      available. By exposing these timings, we aim to augment transaction-pool
      reliability dashboards and extend existing Grafana boards.
      
      A new `unknown_from_block_import_txs` metric is also introduced. It
      provides the number of transactions in imported block which are not
      known to the node's transaction pool. It allows to monitor alignment of
      transaction pools across the nodes in the network.
      
      #### Notes for reviewers
      - **[Per-event
      Metrics](https://github.com/paritytech/polkadot-sdk/blob/8a53992e/substrate/client/transaction-pool/src/fork_aware_txpool/metrics.rs#L84-L105)
      Collection**: implemented by[
      `EventsMetricsCollector`](https://github.com/paritytech/polkadot-sdk/blob/8a53992e/substrate/client/transaction-pool/src/fork_aware_txpool/metrics.rs#L353-L358)
      which allows to capture both submission timestamps and transaction
      status updates. An asynchronous
      [`EventsMetricsCollectorTask`](https://github.com/paritytech/polkadot-sdk/blob/8a53992e/substrate/client/transaction-pool/src/fork_aware_txpool/metrics.rs#L503-L526)
      processes the metrics-related messages sent by the
      `EventsMetricsCollector` and reports the timings of transaction statuses
      updates to Prometheus. This task implements event[
      de-duplication](https://github.com/paritytech/polkadot-sdk/blob/8a53992e/substrate/client/transaction-pool/src/fork_aware_txpool/metrics.rs#L458)
      using a `HashMap` of
      [`TransactionEventMetricsData`](https://github.com/paritytech/polkadot-sdk/blob/8a53992e/substrate/client/transaction-pool/src/fork_aware_txpool/metrics.rs#L424-L435)
      entries which also holds transaction submission timestamps used to
      [compute
      timings](https://github.com/paritytech/polkadot-sdk/blob/8a53992e/substrate/client/transaction-pool/src/fork_aware_txpool/metrics.rs#L489-L495).
      Transaction-related items are removed when transaction's final status is
      [reported](https://github.com/paritytech/polkadot-sdk/blob/8a53992e/substrate/client/transaction-pool/src/fork_aware_txpool/metrics.rs#L496).
      - Transaction submission timestamp is reusing the timestamp of
      `TimedTransactionSource` kept in mempool. It is reported to
      `EventsMetricsCollector` in
      [`submit_at`](https://github.com/paritytech/polkadot-sdk/blob/8a53992e/substrate/client/transaction-pool/src/fork_aware_txpool/fork_aware_txpool.rs#L735)
      and
      [`submit_and_watch`](https://github.com/paritytech/polkadot-sdk/blob/8a53992e/substrate/client/transaction-pool/src/fork_aware_txpool/fork_aware_txpool.rs#L836)
      methods of `ForkAwareTxPool`.
      - Transaction updates are reported to `EventsMetricsCollector` from
      `MultiViewListener`
      [task](https://github.com/paritytech/polkadot-sdk/blob/8a53992e/substrate/client/transaction-pool/src/fork_aware_txpool/multi_view_listener.rs#L494).
      This allows to gather metrics for _watched_ and _non-watched_
      transactions (what enables metrics on non-rpc-enabled collators).
      - New metric
      ([`unknown_from_block_import_txs`](https://github.com/paritytech/polkadot-sdk/blob/8a53992e/substrate/client/transaction-pool/src/fork_aware_txpool/metrics.rs#L59-L60))
      allowing checking alignment of pools across the network is
      [reported](https://github.com/paritytech/polkadot-sdk/blob/8a53992e/substrate/client/transaction-pool/src/fork_aware_txpool/fork_aware_txpool.rs#L1288-L1292)
      using new `TxMemPool`
      [method](https://github.com/paritytech/polkadot-sdk/blob/8a53992e
      
      /substrate/client/transaction-pool/src/fork_aware_txpool/tx_mem_pool.rs#L605-L611).
      
      fixes: #7355, #7448
      
      ---------
      
      Co-authored-by: default avatarcmd[bot] <41898282+github-actions[bot]@users.noreply.github.com>
      Co-authored-by: default avatarSebastian Kunert <skunert49@gmail.com>
      Co-authored-by: default avatarIulian Barbu <14218860+iulianbarbu@users.noreply.github.com>
      845e1ccf
    • seemantaggarwal's avatar
      Update Scheduler to have a configurable block provider #7434 (#7441) · ce3129bc
      seemantaggarwal authored
      
      Follow up from
      https://github.com/paritytech/polkadot-sdk/pull/6362#issuecomment-2629744365
      
      The goal of this PR is to have the scheduler pallet work on a parachain
      which does not produce blocks on a regular schedule, thus can use the
      relay chain as a block provider.
      
      Because blocks are not produced regularly, we cannot make the assumption
      that block number increases monotonically, and thus have new logic to
      handle multiple spend periods passing between blocks.
      
      Requirement: 
      
      instead of using the hard coded system block number. We add an
      associated type BlockNumberProvider
      
      ---------
      
      Signed-off-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
      Co-authored-by: default avatarOliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
      ce3129bc
    • thiolliere's avatar
      fix prdoc cmd (#7457) · 0342175d
      thiolliere authored
      The command no longer support multiple audience, also the mapping was
      wrong.
      0342175d
    • Javier Viola's avatar
      Move zombienet cumulus pipeline to gha (#7529) · f893aa11
      Javier Viola authored
      Includes a fix on the `wait` job (for waiting images to be ready).
      f893aa11
    • Serban Iorga's avatar
      Fix build-linux-substrate (#7552) · 371a6971
      Serban Iorga authored
      Fix `build-linux-substrate` when opening PRs from a `polkadot-sdk` fork
      
      Failed CI job example:
      https://github.com/paritytech/polkadot-sdk/actions/runs/13284026730/job/37088673786?pr=7548
      371a6971
    • Serban Iorga's avatar
      Update some dependencies (#7548) · 9b021772
      Serban Iorga authored
      Related to https://github.com/paritytech/polkadot-sdk/issues/7360
      
      Update some dependencies needed for implementing
      `DecodeWithMemTracking`:
      `parity-scale-codec` -> 3.7.4
      `finality-grandpa` -> 0.16.3
      `bounded-collections` -> 0.2.3
      `impl-codec` -> 0.7.1
      9b021772
    • Sergej Sakac's avatar
      On-demand credits (#5990) · bb508f69
      Sergej Sakac authored
      
      Implementation of on-demand credits as described in
      [RFC-1](https://github.com/polkadot-fellows/RFCs/blob/main/text/0001-agile-coretime.md#instantaneous-coretime)
      
      ---------
      
      Co-authored-by: default avatarordian <write@reusable.software>
      Co-authored-by: default avatarDónal Murray <donalm@seadanda.dev>
      bb508f69
    • ordian's avatar
      migrate zombie past slashing test (#7147) · 58869c4c
      ordian authored
      
      to zombienet-sdk 0.2.24 (also needed to update to this version for
      slashing to work).
      
      ---------
      
      Signed-off-by: default avatarAlexandru Vasile <alexandru.vasile@parity.io>
      Co-authored-by: default avatarAlexandru Vasile <60601340+lexnv@users.noreply.github.com>
      58869c4c
    • PG Herveou's avatar
      [pallet-revive] Add tracing support (2/2) (#7167) · 39aadb8e
      PG Herveou authored
      
      Add debug endpoint to eth-rpc for capturing a block or a single
      transaction traces
      
      See:
      -  PR #7166
      
      ---------
      
      Co-authored-by: default avatarAlexander Theißen <alex.theissen@me.com>
      Co-authored-by: command-bot <>
      Co-authored-by: Yuri Volkov's avatarYuri Volkov <0@mcornholio.ru>
      Co-authored-by: default avatarMaksym H <1177472+mordamax@users.noreply.github.com>
      Co-authored-by: default avatarSanti Balaguer <santiago.balaguer@gmail.com>
      Co-authored-by: default avatarDónal Murray <donal.murray@parity.io>
      Co-authored-by: default avatarcmd[bot] <41898282+github-actions[bot]@users.noreply.github.com>
      Co-authored-by: default avatarxermicus <cyrill@parity.io>
      39aadb8e
    • thiolliere's avatar
      Warn about cargo remote not copying hidden file by default (#7429) · f9d83ed9
      thiolliere authored
      add a warning about hidden file not transfered.
      
      cargo remote is not really configurable so I just use my own fork for
      now: https://github.com/sgeisler/cargo-remote/pull/25
      f9d83ed9
    • Alexander Samusev's avatar
      ci: add evm-test-suite (#7524) · b7dc432f
      Alexander Samusev authored
      PR adds [evm-test-suite](https://github.com/paritytech/evm-test-suite)
      in CI.
      
      close https://github.com/paritytech/ci_cd/issues/1103
      b7dc432f
    • Maksym H's avatar
      fix scope in suppress dead_code (template) (#7532) · e668d6be
      Maksym H authored
      `#[allow(dead_code)]` -> `#![allow(dead_code)]` in templates
      e668d6be
    • Serban Iorga's avatar
      Use rpc_port in bridge tests (#7520) · fa98d3de
      Serban Iorga authored
      Use `rpc_port` instead of `ws_port` in bridge tests since `ws_port` is
      deprecated.
      fa98d3de
    • Kian Paimani's avatar
      update readme to link to the new polkadot-docs (#7411) · 7663e40f
      Kian Paimani authored
      
      closes https://github.com/polkadot-developers/polkadot-docs/issues/238
      
      ---------
      
      Co-authored-by: default avatarGuillaume Thiolliere <gui.thiolliere@gmail.com>
      7663e40f
    • Dhiraj Sah's avatar
      transfer function Preservation is changed to Expendable (#7243) · 8234165b
      Dhiraj Sah authored
      # Description
      
      Fixes #7039
      
      The Preservation of transfer method of fungible and fungibles adapters
      is changed from Preserve to Expendable. So the behavior of the
      TransferAsset will be consistent with the WithdrawAsset function, as in
      [fungible](https://github.com/paritytech/polkadot-sdk/blob/f3ab3854
      
      /polkadot/xcm/xcm-builder/src/fungible_adapter.rs#L217)
      and [fungibles](https://github.com/paritytech/polkadot-sdk/issues/url)
      adapter.
      
      This pull request includes changes to the `fungible_adapter.rs` and
      `fungibles_adapter.rs` files in the `polkadot/xcm/xcm-builder`
      directory. The main change involves modifying the transfer method to use
      the `Expendable` strategy instead of the `Preserve` strategy.
      
      Changes to transfer strategy:
      
      *
      [`polkadot/xcm/xcm-builder/src/fungible_adapter.rs`](diffhunk://#diff-6ebd77385441f2c8b023c480e818a01c4b43ae892c73ca30144cd64ee960bd66L67-R67):
      Changed the transfer method to use `Expendable` instead of `Preserve`.
      *
      [`polkadot/xcm/xcm-builder/src/fungibles_adapter.rs`](diffhunk://#diff-82221429de4c4c88be3d2976ece6475ef4fa56a32abc70290911bd47191f8e17L61-R61):
      Changed the transfer method to use `Expendable` instead of `Preserve`.
      
      ---------
      
      Co-authored-by: default avatarFrancisco Aguirre <franciscoaguirreperez@gmail.com>
      Co-authored-by: default avatarAdrian Catangiu <adrian@parity.io>
      8234165b
    • PG Herveou's avatar
      [pallet-revive] Add eth_get_logs (#7506) · 73702451
      PG Herveou authored
      
      Add support for eth_get_logs rpc method
      
      ---------
      
      Co-authored-by: default avatarcmd[bot] <41898282+github-actions[bot]@users.noreply.github.com>
      Co-authored-by: default avatarxermicus <cyrill@parity.io>
      73702451
    • PG Herveou's avatar
      [pallet-revive] fix tracing gas used (#7430) · c8202f40
      PG Herveou authored
      
      - Charge the nested gas meter for loading the code of the child
      contract, so that we can properly associate the gas cost to the child
      call frame.
      - Move the enter_child_span and exit_child_span around the
      do_transaction closure to properly capture all failures
      - Add missing trace capture for call transfer
      
      ---------
      
      Co-authored-by: default avatarAlexander Theißen <alex.theissen@me.com>
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarcmd[bot] <41898282+github-actions[bot]@users.noreply.github.com>
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      c8202f40
    • StackOverflowExcept1on's avatar
      feat(wasm-builder): add support for new `wasm32v1-none` target (#7008) · 223c006e
      StackOverflowExcept1on authored
      
      # Description
      
      Resolves #5777
      
      Previously `wasm-builder` used hacks such as `-Zbuild-std` (required
      `rust-src` component) and `RUSTC_BOOTSTRAP=1` to build WASM runtime
      without WASM features: `sign-ext`, `multivalue` and `reference-types`,
      but since Rust 1.84 (will be stable on 9 January, 2025) the situation
      has improved as there is new
      [`wasm32v1-none`](https://doc.rust-lang.org/beta/rustc/platform-support/wasm32v1-none.html)
      target that disables all "post-MVP" WASM features except
      `mutable-globals`.
      
      Previously, your `rust-toolchain.toml` looked like this:
      
      ```toml
      [toolchain]
      channel = "stable"
      components = ["rust-src"]
      targets = ["wasm32-unknown-unknown"]
      profile = "default"
      ```
      
      It should now be updated to something like this:
      
      ```toml
      [toolchain]
      channel = "stable"
      targets = ["wasm32v1-none"]
      profile = "default"
      ```
      
      To build the runtime:
      
      ```bash
      cargo build --package minimal-template-runtime --release
      ```
      
      ## Integration
      
      If you are using Rust 1.84 and above, then install the `wasm32v1-none`
      target instead of `wasm32-unknown-unknown` as shown above. You can also
      remove the unnecessary `rust-src` component.
      
      Also note the slight differences in conditional compilation:
      - `wasm32-unknown-unknown`: `#[cfg(all(target_family = "wasm", target_os
      = "unknown"))]`
      - `wasm32v1-none`: `#[cfg(all(target_family = "wasm", target_os =
      "none"))]`
      
      Avoid using `target_os = "unknown"` in `#[cfg(...)]` or
      `#[cfg_attr(...)]` and instead use `target_family = "wasm"` or
      `target_arch = "wasm32"` in the runtime code.
      
      ## Review Notes
      
      Wasm builder requires the following prerequisites for building the WASM
      binary:
      - Rust >= 1.68 and Rust < 1.84:
        - `wasm32-unknown-unknown` target
        - `rust-src` component
      - Rust >= 1.84:
        - `wasm32v1-none` target
      - no more `-Zbuild-std` and `RUSTC_BOOTSTRAP=1` hacks and `rust-src`
      component requirements!
      
      ---------
      
      Co-authored-by: default avatarBastian Köcher <git@kchr.de>
      Co-authored-by: default avatarBastian Köcher <info@kchr.de>
      223c006e
    • Bastian Köcher's avatar
      pallet-revive-fixtures: Support compilation on stable (#7419) · 7ba75a21
      Bastian Köcher authored
      
      Let's burry out the old `RUSTC_BOOTSTRAP` hack. This is required when
      you don't use `rustup` which automatically switches to the nightly
      toolchain when it detects nightly CLI args.
      
      Co-authored-by: default avatarAlexander Theißen <alex.theissen@me.com>
      7ba75a21
    • dharjeezy's avatar
      Update pallet nomination pool to support Block Number Provider (#6715) · 69610e92
      dharjeezy authored
      This PR introduces BlockNumberProvider config for the nomination pool
      pallet.
      closes part of https://github.com/paritytech/polkadot-sdk/issues/6297
      69610e92
    • PG Herveou's avatar
      Fix compilation warnings (#7507) · 08fd222f
      PG Herveou authored
      
      This should fix some compilation warnings discovered under rustc 1.83
      
      ---------
      
      Co-authored-by: default avatarcmd[bot] <41898282+github-actions[bot]@users.noreply.github.com>
      08fd222f
    • Javier Viola's avatar
      Zombienet gha substrate migration (#7217) · bcc4f4b8
      Javier Viola authored
      
      Migrate subtrate's zombienet test from gitlab to gha.
      
      ---------
      
      Co-authored-by: default avataralvicsam <alvicsam@gmail.com>
      bcc4f4b8
    • PG Herveou's avatar
      [pallet-revive] fix eth-rpc indexing (#7493) · 7d19c1a2
      PG Herveou authored
      
      - Fix a deadlock on the RWLock cache
      - Remove eth-indexer, we won't need it anymore, the indexing will be
      started from within eth-rpc directly
      
      ---------
      
      Co-authored-by: default avatarcmd[bot] <41898282+github-actions[bot]@users.noreply.github.com>
      7d19c1a2
    • Giuseppe Re's avatar
      Pallet view functions: improve metadata, API docs and testing (#7412) · d08b2a99
      Giuseppe Re authored
      
      - [x] refactor view functions metadata according to #6833 in preparation
      for V16, and move them to pallet-level metadata
      - [x] add `view_functions_experimental` macro to `pallet_macros` with
      API docs
      - [x] improve pallet-level UI testing for view functions
      
      ---------
      
      Co-authored-by: default avatarcmd[bot] <41898282+github-actions[bot]@users.noreply.github.com>
      Co-authored-by: default avatarGuillaume Thiolliere <gui.thiolliere@gmail.com>
      d08b2a99
    • PG Herveou's avatar
      [pallet-revive] rpc - gas used fixes (#7482) · 7ea22330
      PG Herveou authored
      
      #7463 follow up with RPC fixes
      
      ---------
      
      Co-authored-by: default avatarcmd[bot] <41898282+github-actions[bot]@users.noreply.github.com>
      7ea22330
    • Alexandru Gheorghe's avatar
      enable approval-voting-parallel on polkadot (#7504) · 4e2e8434
      Alexandru Gheorghe authored
      
      approval-voting-parallel has been running on all network types except
      polkadot since release `1.17.0`, so it has around 2 months of baking and
      running without any reported issues, so let's enable it on polkadot as
      well.
      
      After running in polkadot for awhile the flag will be entirely removed.
      
      ---------
      
      Signed-off-by: default avatarAlexandru Gheorghe <alexandru.gheorghe@parity.io>
      4e2e8434
    • dharjeezy's avatar
      Update pallet conviction voting to support Block Number Provider (#6621) · 36388316
      dharjeezy authored
      
      This PR introduces BlockNumberProvider config for the conviction voting
      pallet.
      closes part of https://github.com/paritytech/polkadot-sdk/issues/6297
      
      ---------
      
      Co-authored-by: default avatarmuharem <ismailov.m.h@gmail.com>
      Co-authored-by: command-bot <>
      36388316
    • Egor_P's avatar
      [CI/CD] Add a pipeline to build binaries in different profiles (#7496) · ef21cb81
      Egor_P authored
      Recently there were some requests to build and deploy a binary, for
      example `polkadot`, in the `release` or `production` profile to do some
      testing.
      So far we had only a
      [release](https://github.com/paritytech/polkadot-sdk/blob/master/.github/workflows/release-20_build-rc.yml)
      pipeline that could do it in the GitHub but to use it, there was a lot
      of extra overhead needed.
      This pipeline should simplify this case and give a possibility to build
      a binary in desired profile from any branch for the testing purposes.
      Something similar to what we have for runtimes in the [srtool
      repo](https://github.com/paritytech/srtool/actions/workflows/manual.yml)
      It won't be used in any release activities though.
      
      CC: @BulatSaif
      ef21cb81
    • Alexandru Gheorghe's avatar
      Populate topology after restart if finality is lagging behind current session (#6913) · eaa9c1ca
      Alexandru Gheorghe authored
      
      There is a small issue on restart, where if finality is lagging across
      session boundary and the validator restarts, then the validator won't be
      able to contribute anymore with assginments/approvals and gossiping for
      the blocks from the previous session, because after restart it builds
      the Topology only for the new session, so without a topology it won't be
      able to distribute assignments and approvals because everything in
      `approval-distribution` is gated on having a topology for the block.
      
      The fix is to also keep track of the last finalized block and its
      session and if it is different from the list of encountered sessions,
      build its topology and send it to the rest of subsystems.
      
      ---------
      
      Signed-off-by: default avatarAlexandru Gheorghe <alexandru.gheorghe@parity.io>
      Co-authored-by: default avatarordian <write@reusable.software>
      eaa9c1ca
    • dharjeezy's avatar
      Update pallet society to support Block Number Provider (#6623) · 245dac92
      dharjeezy authored
      This PR introduces BlockNumberProvider config for pallet society.
      closes part of https://github.com/paritytech/polkadot-sdk/issues/6297
      245dac92