- Mar 04, 2025
-
-
Branislav Kontur authored
-
Branislav Kontur authored
-
Xavier Lau authored
- Refactor to use the `frame` crate. - Use procedural macro version `construct_runtime` in mock. - Expose `PalletId` to `frame::pallet_prelude`. - Part of #6202. --- Polkadot address: 156HGo9setPcU2qhFMVWLkcmtCEGySLwNqa3DaEiYSWtte4Y --------- Signed-off-by:
Xavier Lau <x@acg.box> Co-authored-by:
GitHub Action <action@github.com> Co-authored-by:
Giuseppe Re <giuseppe.re@parity.io> Co-authored-by:
cmd[bot] <41898282+github-actions[bot]@users.noreply.github.com>
-
Ludovic_Domingues authored
# Description Migrating polkadot-runtime-parachains configuration benchmarking to the new benchmarking syntax v2. This is a part of #6202 --------- Co-authored-by:
Giuseppe Re <giuseppe.re@parity.io> Co-authored-by:
cmd[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by:
seemantaggarwal <32275622+seemantaggarwal@users.noreply.github.com>
-
- Mar 03, 2025
-
-
cmd[bot] authored
-
Branislav Kontur authored
-
- Feb 28, 2025
-
-
Serban Iorga authored
Related to https://github.com/paritytech/polkadot-sdk/issues/7360 This PR adds `DecodeWithMemTracking` as a trait bound for `Header`, `Block` and `TransactionExtension` and derives it for all the types that implement these traits in `polkadot-sdk`.
-
- Feb 27, 2025
-
-
Raymond Cheung authored
A follow-up PR to simplify event assertions by introducing `contains_event`, allowing event checks without needing exact field matches. This reduces redundancy and makes tests more flexible. Partially addresses #6119 by providing an alternative way to assert events. Reference: [PR #7594 - Discussion](https://github.com/paritytech/polkadot-sdk/pull/7594#discussion_r1965566349) --------- Co-authored-by:
cmd[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by:
Branislav Kontur <bkontur@gmail.com> Co-authored-by:
Bastian Köcher <git@kchr.de>
-
Utkarsh Bhardwaj authored
# Description * This PR adds a new extrinsic `poke_deposit` to `pallet-multisig`. This extrinsic will be used to re-adjust the deposits made in the pallet to create a multisig operation after AHM. * Part of #5591 ## Review Notes * Added a new extrinsic `poke_deposit` in `pallet-multisig`. * Added a new event `DepositPoked` to be emitted upon a successful call of the extrinsic. * Although the immediate use of the extrinsic will be to give back some of the deposit after the AH-migration, the extrinsic is written such that it can work if the deposit decreases or increases (both). * The call to the extrinsic would be `free` if an actual adjustment is made to the deposit and `paid` otherwise. * Added tests to test all scenarios. ## TO-DOs * [x] Add Benchmark * [x] Run CI cmd bot to benchmark --------- Co-authored-by:
cmd[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by:
Giuseppe Re <giuseppe.re@parity.io>
-
Egor_P authored
This PR backports version bumps and prdocs reorg from the latest stable branch back to master
-
cmd[bot] authored
Update from bkontur running command 'bench --pallet polkadot_runtime_parachains::paras --runtime westend rococo'
-
cmd[bot] authored
-
Branislav Kontur authored
-
- Feb 26, 2025
-
-
Ankan authored
closes https://github.com/paritytech/polkadot-sdk/issues/5742 Need to be backported to stable2503 release. With the migration of staking accounts to [fungible currency](https://github.com/paritytech/polkadot-sdk/pull/5501), we can now allow pool users to stake directly and vice versa. This update introduces a configurable filter mechanism to determine which accounts can join a nomination pool. ## Example Usage ### 1. Allow any account to join a pool To permit all accounts to join a nomination pool, use the `Nothing` filter: ```rust impl pallet_nomination_pools::Config for Runtime { ... type Filter = Nothing; } ``` ### 2. Restrict direct stakers from joining a pool To prevent direct stakers from joining a nomination pool, use `pallet_staking::AllStakers`: ```rust impl pallet_nomination_pools::Config for Runtime { ... type Filter = pallet_staking::AllStakers<Runtime>; } ``` ### 3. Define a custom filter For more granular control, you can define a custom filter: ```rust struct MyCustomFilter<T: Config>(core::marker::PhantomData<T>); impl<T: Config> Contains<T::AccountId> for MyCustomFilter<T> { fn contains(account: &T::AccountId) -> bool { todo!("Implement custom logic. Return `false` to allow the account to join a pool.") } } ``` --------- Co-authored-by:
Bastian Köcher <info@kchr.de>
-
Ludovic_Domingues authored
# Description Migrated polkadot-runtime-common paras_registrar benchmarking to the new benchmarking syntax v2. This is part of #6202 --------- Co-authored-by:
Giuseppe Re <giuseppe.re@parity.io>
-
Ludovic_Domingues authored
# Description Migrating polkadot-runtime-parachains paras_inherent benchmarking to the new benchmarking syntax v2. This is part of #6202 --------- Co-authored-by:
Giuseppe Re <giuseppe.re@parity.io>
-
Ludovic_Domingues authored
# Description Migrated polkadot-runtime-parachains initializer benchmarking to the new benchmarking syntax v2. This is part of #6202 Co-authored-by:
Giuseppe Re <giuseppe.re@parity.io>
-
Ludovic_Domingues authored
# Description Migrated polkadot-runtime-common crowdloan benchmarking to the new benchmarking syntax v2. this is part of #6202 Co-authored-by:
Giuseppe Re <giuseppe.re@parity.io> Co-authored-by:
seemantaggarwal <32275622+seemantaggarwal@users.noreply.github.com>
-
- Feb 24, 2025
-
-
Niklas Adolfsson authored
Partly fixes #7403 Subxt depends still on sp-crypto-hashing v0.7 but it's only one dependency after removing the substrate-compat feature which is probably "acceptable"
-
Francisco Aguirre authored
The `PayFees` instruction should only ever be used once. If it's used more than once, it's just a noop. --------- Co-authored-by:
cmd[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by:
Adrian Catangiu <adrian@parity.io>
-
CrabGopher authored
`sc-cli` brings rocksdb dependency into frame-benchmarking-cli when used with `default-features = false`. This PR makes rocksdb deps optional that sc-cli brings in some of the crates. I think I covered all the crates that depend on sc-cli but please let me know if I missed any. Fixes: https://github.com/paritytech/polkadot-sdk/issues/3793
-
Daniel Shiposha authored
# Description Fixes #7413 ## Integration This PR updates the `DryRunApi`. The signature of the `dry_run_call` is changed, and the XCM version of the return values of `dry_run_xcm` now follows the version of the input XCM program. ## Review Notes * **The `DryRunApi` is modified** * **Added the `Router::clear_messages` to `dry_run_xcm` common implementation** * **Fixed the xcmp-queue's Router's clear_messages: channels details' first_index and last_index are reset when clearing** * **The MIN_XCM_VERSION is added** * The common implementation in the `pallet-xcm` is modified accordingly * The `DryRunApi` tests are modified to account for testing old XCM versions * The implementation from the `pallet-xcm` is used where it was not used (including the `DryRunApi` tests) * All the runtime implementations are modified according to the Runtime API change --------- Co-authored-by:
Adrian Catangiu <adrian@parity.io>
-
Raymond Cheung authored
# Description This PR introduces a lightweight log-capturing mechanism for XCM unit tests, simplifying debugging by enabling structured log assertions. It partially addresses #6119 and #6125, offering an optional way to verify logs in tests while remaining unobtrusive in normal execution. # Key Changes * [x] Introduces a log capture utility in `sp_tracing`. * [x] Adds XCM test examples demonstrating how and when to use log capturing. # Review Notes: * The log capture mechanism is opt-in and does not affect existing tests unless explicitly used. * The implementation is minimal and does not add complexity to existing test setups. * It provides a structured alternative to [`sp_tracing::init_for_tests()`](https://paritytech.github.io/polkadot-sdk/master/sp_tracing/fn.init_for_tests.html) for log verification in automated tests. --------- Co-authored-by:
cmd[bot] <41898282+github-actions[bot]@users.noreply.github.com>
-
paritytech-cmd-bot-polkadot-sdk[bot] authored
Auto-update of all weights for 2025-02-21-1740149841. Subweight results: - [now vs master](https://weights.tasty.limo/compare?repo=polkadot-sdk&threshold=5&path_pattern=.%2F**%2Fweights%2F**%2F*.rs%2C.%2F**%2Fweights.rs&method=asymptotic&ignore_errors=true&unit=time&old=master&new=update-weights-weekly-2025-02-21-1740149841) - [now vs polkadot-v1.15.6 (2025-01-16)](https://weights.tasty.limo/compare?repo=polkadot-sdk&threshold=5&path_pattern=.%2F**%2Fweights%2F**%2F*.rs%2C.%2F**%2Fweights.rs&method=asymptotic&ignore_errors=true&unit=time&old=polkadot-v1.15.6&new=update-weights-weekly-2025-02-21-1740149841) - [now vs polkadot-v1.16.2 (2024-11-14)](https://weights.tasty.limo/compare?repo=polkadot-sdk&threshold=5&path_pattern=.%2F**%2Fweights%2F**%2F*.rs%2C.%2F**%2Fweights.rs&method=asymptotic&ignore_errors=true&unit=time&old=polkadot-v1.16.2&new=update-weights-weekly-2025-02-21-1740149841) Co-authored-by:
github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
-
- Feb 22, 2025
-
-
Al authored
# Description Creating this PR to changed Rotko Networks bootnode addresses to the new structure. Rotko bootnode addresses tested with this results: ``` { "asset-hub-kusama": { "bootnode": "/dns/asset-hub-kusama.boot.rotko.net/tcp/30435/wss/p2p/12D3KooWJUFnjR2PNbsJhudwPVaWCoZy1acPGKjM2cSuGj345BBu", "discovered_peers": 3, "error_details": null, "id": "rotko", "network": "asset-hub-kusama", "status": "success", "test_duration_ms": 19394, "valid": true }, "asset-hub-polkadot": { "bootnode": "/dns/asset-hub-polkadot.boot.rotko.net/tcp/30435/wss/p2p/12D3KooWKkzLjYF6M5eEs7nYiqEtRqY8SGVouoCwo3nCWsRnThDW", "discovered_peers": 5, "error_details": null, "id": "rotko", "network": "asset-hub-polkadot", "status": "success", "test_duration_ms": 5024, "valid": true }, "asset-hub-westend": { "bootnode": "/dns/asset-hub-westend.boot.rotko.net/tcp/30435/wss/p2p/12D3KooWE4UDXqgtTcMCyUQ8S4uvaT8VMzzTBA6NWmKuYwTacWuN", "discovered_peers": 3, "error_details": null, "id": "rotko", "network": "asset-hub-westend", "status": "success", "test_duration_ms": 5023, "valid": true }, "bridge-hub-kusama": { "bootnode": "/dns/bridge-hub-kusama.boot.rotko.net/tcp/30435/wss/p2p/12D3KooWAmBp54mUEYtvsk2kxNEsDbAvdUMcaghxKXgUQxmPEQ66", "discovered_peers": 4, "error_details": null, "id": "rotko", "network": "bridge-hub-kusama", "status": "success", "test_duration_ms": 6049, "valid": true }, "bridge-hub-polkadot": { "bootnode": "/dns/bridge-hub-polkadot.boot.rotko.net/tcp/30435/wss/p2p/12D3KooWMxZY7tDc2Rh454VaJJ7RexKAXVS6xSBEvTnXSGCnuGDw", "discovered_peers": 2, "error_details": null, "id": "rotko", "network": "bridge-hub-polkadot", "status": "success", "test_duration_ms": 9112, "valid": true }, "bridge-hub-westend": { "bootnode": "/dns/bridge-hub-westend.boot.rotko.net/tcp/30435/wss/p2p/12D3KooWJyeRHpxZZbfBCNEgeUFzmRC5AMSAs2tJhjJS1k5hULkD", "discovered_peers": 2, "error_details": null, "id": "rotko", "network": "bridge-hub-westend", "status": "success", "test_duration_ms": 9106, "valid": true }, "collectives-polkadot": { "bootnode": "/dns/collectives-polkadot.boot.rotko.net/tcp/30435/wss/p2p/12D3KooWKrm3XmuGzJH17Wcn4HRDGsEjLZGDgN77q3ZhwnnQP7y1", "discovered_peers": 4, "error_details": null, "id": "rotko", "network": "collectives-polkadot", "status": "success", "test_duration_ms": 6044, "valid": true }, "collectives-westend": { "bootnode": "/dns/collectives-westend.boot.rotko.net/tcp/30435/wss/p2p/12D3KooWPG85zhuSRoyptjLkFD4iJFistjiBmc15JgQ96B4fdXYr", "discovered_peers": 2, "error_details": null, "id": "rotko", "network": "collectives-westend", "status": "success", "test_duration_ms": 6044, "valid": true }, "coretime-kusama": { "bootnode": "/dns/coretime-kusama.boot.rotko.net/tcp/30435/wss/p2p/12D3KooWCyPSkk5cq2eEdw1qHizfa6UT4QggSarCEtcvNXpnod8B", "discovered_peers": 3, "error_details": null, "id": "rotko", "network": "coretime-kusama", "status": "success", "test_duration_ms": 6036, "valid": true }, "coretime-polkadot": { "bootnode": "/dns/coretime-polkadot.boot.rotko.net/tcp/30435/wss/p2p/12D3KooWPk5pR5QxWGVJ1YVWnXd4rkVTZ194iay58rAfcSHDpky3", "discovered_peers": 4, "error_details": null, "id": "rotko", "network": "coretime-polkadot", "status": "success", "test_duration_ms": 6045, "valid": true }, "coretime-westend": { "bootnode": "/dns/coretime-westend.boot.rotko.net/tcp/30435/wss/p2p/12D3KooWFmGg7EGzxGDawuJ9EfyEznCrZfMJgGa4eHpMWjcJmg85", "discovered_peers": 2, "error_details": null, "id": "rotko", "network": "coretime-westend", "status": "success", "test_duration_ms": 6050, "valid": true }, "kusama": { "bootnode": "/dns/kusama.boot.rotko.net/tcp/30335/wss/p2p/12D3KooWAa5THTw8HPfnhEei23HdL8P9McBXdozG2oTtMMksjZkK", "discovered_peers": 9, "error_details": null, "id": "rotko", "network": "kusama", "status": "success", "test_duration_ms": 5024, "valid": true }, "paseo": { "bootnode": "/dns/paseo.boot.rotko.net/tcp/30335/wss/p2p/12D3KooWRH8eBMhw8c7bucy6pJfy94q4dKpLkF3pmeGohHmemdRu", "discovered_peers": 2, "error_details": null, "id": "rotko", "network": "paseo", "status": "success", "test_duration_ms": 12939, "valid": true }, "people-kusama": { "bootnode": "/dns/people-kusama.boot.rotko.net/tcp/30435/wss/p2p/12D3KooWSKQwgoydfbN6mNN2aNwdqfkR2ExAnTRs8mmdrPQTtDLo", "discovered_peers": 5, "error_details": null, "id": "rotko", "network": "people-kusama", "status": "success", "test_duration_ms": 6053, "valid": true }, "people-polkadot": { "bootnode": "/dns/people-polkadot.boot.rotko.net/tcp/30435/wss/p2p/12D3KooWLg9NPeDFoL54A7WfuHSM3YNxPBGVRAd9ZY6rmVfdT6GJ", "discovered_peers": 3, "error_details": null, "id": "rotko", "network": "people-polkadot", "status": "success", "test_duration_ms": 12195, "valid": true }, "people-westend": { "bootnode": "/dns/people-westend.boot.rotko.net/tcp/30435/wss/p2p/12D3KooWHwUXBUo2WRMUBwPLC2ttVbnEk1KvDyESYAeKcNoCn7WS", "discovered_peers": 2, "error_details": null, "id": "rotko", "network": "people-westend", "status": "success", "test_duration_ms": 7059, "valid": true }, "polkadot": { "bootnode": "/dns/polkadot.boot.rotko.net/tcp/30335/wss/p2p/12D3KooWPyEvPEXghnMC67Gff6PuZiSvfx3fmziKiPZcGStZ5xff", "discovered_peers": 6, "error_details": null, "id": "rotko", "network": "polkadot", "status": "success", "test_duration_ms": 11147, "valid": true }, "westend": { "bootnode": "/dns/westend.boot.rotko.net/tcp/30335/wss/p2p/12D3KooWLK8Zj1uZ46phU3vQwiDVda8tB76S8J26rXZQLHpwWkDJ", "discovered_peers": 2, "error_details": null, "id": "rotko", "network": "westend", "status": "success", "test_duration_ms": 5021, "valid": true } } ```
-
- Feb 21, 2025
-
-
Ayevbeosa Iyamu authored
# Description Added logs in pallet-xcm to help in debugging, fixes #2408, and in continuation of #4982 # Checklist - [x] https://github.com/paritytech/polkadot-sdk/blob/master/polkadot/xcm/xcm-builder/src/ - [x] https://github.com/paritytech/polkadot-sdk/tree/master/cumulus/parachains/runtimes/assets/common/src - [x] runtime-defined XCM filters/converters (just [one example](https://github.com/paritytech/polkadot-sdk/blob/183b55aa /cumulus/parachains/runtimes/bridge-hubs/bridge-hub-westend/src/xcm_config.rs#L284)) Polkadot Address: 1Gz5aLtEu2n4jsfA6XwtZnuaRymJrDDw4kEGdNHTdxrpzrc --------- Co-authored-by:
Ayevbeosa Iyamu <aiyamu@vatebra.com> Co-authored-by:
Bastian Köcher <git@kchr.de> Co-authored-by:
Adrian Catangiu <adrian@parity.io> Co-authored-by:
Raymond Cheung <178801527+raymondkfcheung@users.noreply.github.com> Co-authored-by:
cmd[bot] <41898282+github-actions[bot]@users.noreply.github.com>
-
Alexandru Gheorghe authored
The test was flaky and was disabled here https://github.com/paritytech/polkadot-sdk/issues/6345, looked at the flakiness https://github.com/paritytech/polkadot-sdk/issues/6345#issuecomment-2674063608 and it wasn't because of some bug in our production code, but because of the way the test interacts with the infrastructure. Since https://github.com/paritytech/polkadot-sdk/pull/7504 this test is now testing redundant things that other tests like 0009-approval-voting-coalescing.toml and 0006-parachains-max-tranche0 already cover, so instead of investing trying to fix it, just remove it. Fixes: https://github.com/paritytech/polkadot-sdk/issues/6345 Signed-off-by:
Alexandru Gheorghe <alexandru.gheorghe@parity.io>
-
Branislav Kontur authored
-
- Feb 20, 2025
-
-
Utkarsh Bhardwaj authored
# Description * This PR adds a new extrinsic `reconsider` to `pallet-indices`. This extrinsic will be used to re-adjust the deposits made in the pallet. * Part of #5591 ## Review Notes * Added a new extrinsic `reconsider` in `pallet-indices`. * Added a new event `DepositReconsidered` to be emitted upon a successful call of the extrinsic. * Although the immediate use of the extrinsic will be to give back some of the deposit after the AH-migration, the extrinsic is written such that it can work if the deposit decreases or increases (both). * The call to the extrinsic would be `free` if an actual adjustment is made to the deposit and `paid` otherwise. * Added tests to test all scenarios. * Added a benchmark to test the "worst case" (maximum compute) flow of the extrinsic which is when the deposit amount is updated to a new value. ## TO-DOs * [x] Run CI cmd bot to benchmark --------- Co-authored-by:
cmd[bot] <41898282+github-actions[bot]@users.noreply.github.com>
-
Alexander Theißen authored
Ref https://github.com/paritytech/ci_cd/issues/1107 We mainly need that so that we can finally compile the `pallet_revive` fixtures on stable. I did my best to keep the commits focused on one thing to make review easier. All the changes are needed because rustc introduced more warnings or is more strict about existing ones. Most of the stuff could just be fixed and the commits should be pretty self explanatory. However, there are a few this that are notable: ## `non_local_definitions ` A lot of runtimes to write `impl` blocks inside functions. This makes sense to reduce the amount of conditional compilation. I guess I could have moved them into a module instead. But I think allowing it here makes sense to avoid the code churn. ## `unexpected_cfgs` The FRAME macros emit code that references various features like `std`, `runtime-benchmarks` or `try-runtime`. If a create that uses those macros does not have those features we get this warning. Those were mostly when defining a `mock` runtime. I opted for silencing the warning in this case rather than adding not needed features. For the benchmarking ui tests I opted for adding the `runtime-benchmark` feature to the `Cargo.toml`. ## Failing UI test I am bumping the `trybuild` version and regenerating the ui tests. The old version seems to be incompatible. This requires us to pass `deny_warnings` in `CARGO_ENCODED_RUSTFLAGS` as `RUSTFLAGS` is ignored in the new version. ## Removing toolchain file from the pallet revive fixtures This is no longer needed since the latest stable will compile them fine using the `RUSTC_BOOTSTRAP=1`. --------- Co-authored-by:
cmd[bot] <41898282+github-actions[bot]@users.noreply.github.com>
-
- Feb 19, 2025
-
-
Serban Iorga authored
Related to https://github.com/paritytech/polkadot-sdk/issues/7360 Derive `DecodeWithMemTracking` for the structures in the cumulus pallets and for the structures in the `polkadot-sdk` runtimes. The PR contains no functional changes and no manual implementation. Just deriving `DecodeWithMemTracking`.
-
Serban Iorga authored
Just deriving `DecodeWithMemTracking` for the types used by the bridge, snowbridge and xcm pallets
-
Branislav Kontur authored
XCM: Deny barrier checks for nested XCMs with specific instructions to be executed on the local chain (#7200) Resolves (partially): https://github.com/paritytech/polkadot-sdk/issues/7148 Depends on: https://github.com/paritytech/polkadot-sdk/pull/7169 # Description This PR addresses partially #7148 (Problem 2) and ensures the proper checking of nested local instructions. It introduces a new barrier - `DenyRecursively` - to provide more refined control over instruction denial. The main change is the replacement of `DenyThenTry<Deny, Allow>` with `DenyThenTry<DenyRecursively<Deny>, Allow>` which handles both top-level and nested local instructions by applying allow condition after denial. For context and additional information, please refer to [_Problem 2 - Barrier vs nested XCM validation_](https://github.com/paritytech/polkadot-sdk/issues/7148). # TODO - [x] Evaluate PoC, more details at #7351: - **DenyNestedXcmInstructions**: Keep it as it is and be explicit: 1. Name the Deny barriers for...
-
- Feb 18, 2025
-
-
Francisco Aguirre authored
Fix issue where setting the `remote_fees` field of `InitiateTransfer` to `None` could lead to unintended bypassing of fees in certain conditions. Changes made to fix this: - `remote_fees: None` now results in the `UnpaidExecution` instruction being appended *after* the origin altering instruction, be it `AliasOrigin` or `ClearOrigin`. This means `preserve_origin: true` must be set if you want to have any chance of not paying for fees. - The `AliasOrigin` instruction is not appended if the executor is called with the root location (`Here`) since it would alias to itself. Although this self-aliasing could be done, it needs the ecosystem to add a new aliasing instruction, so we just skip it. - Tweaked the `AllowExplicitUnpaidExecutionFrom` barrier to allow receiving assets (via teleport or reserve asset transfer) and altering the origin before actually using `UnpaidExecution`. This is to allow unpaid teleports to work with `InitiateTransfer`. - For...
-
Xavier Lau authored
Add a new extrinsic `dispatch_as_fallible`. It's almost the same as [`Pallet::dispatch_as`] but forwards any error of the inner call. Closes #219. And add more unit tests to cover `dispatch_as` and `dispatch_as_fallible`. --- Polkadot address: 156HGo9setPcU2qhFMVWLkcmtCEGySLwNqa3DaEiYSWtte4Y --------- Signed-off-by:
Xavier Lau <x@acg.box> Co-authored-by:
Bastian Köcher <git@kchr.de> Co-authored-by:
Bastian Köcher <info@kchr.de> Co-authored-by:
cmd[bot] <41898282+github-actions[bot]@users.noreply.github.com>
-
cmd[bot] authored
-
Branislav Kontur authored
-
Branislav Kontur authored
Co-authored-by:
Bastian Köcher <git@kchr.de>
-
Branislav Kontur authored
Co-authored-by:
Bastian Köcher <git@kchr.de>
-
Ankan authored
closes https://github.com/paritytech/polkadot-sdk/issues/6508. ## TODO - [x] Migrate storage `DisabledValidators` both in pallet-session and pallet-staking. - [ ] Test that disabled validator resets at era change. - [ ] Add always sorted try-runtime test for `DisabledValidators`. - [ ] More test coverage for the disabling logic. --------- Co-authored-by:
Gonçalo Pestana <g6pestana@gmail.com> Co-authored-by: command-bot <> Co-authored-by:
Kian Paimani <5588131+kianenigma@users.noreply.github.com> Co-authored-by:
Guillaume Thiolliere <gui.thiolliere@gmail.com> Co-authored-by:
kianenigma <kian@parity.io> Co-authored-by:
Giuseppe Re <giuseppe.re@parity.io> Co-authored-by:
cmd[bot] <41898282+github-actions[bot]@users.noreply.github.com>
-