- Sep 30, 2024
-
-
Egor_P authored
This PR backports regular version bumps and prdocs reordering from the `stable2409` release branch to `master` --------- Co-authored-by:
Morgan Adamiec <morgan@parity.io> Co-authored-by:
Bastian Köcher <git@kchr.de> Co-authored-by:
Nazar Mokrynskyi <nazar@mokrynskyi.com>
-
Alexander Samusev authored
cc @AndreiEres
-
- Sep 29, 2024
-
-
Shawn Tabrizi authored
This is a refactor and improvement from: https://github.com/paritytech/polkadot-sdk/pull/3881 - `sp_runtime::proving_trie` now exposes a `BasicProvingTrie` for both `base2` and `base16`. - APIs for `base16` are more focused on single value proofs, also aligning their APIs with the `base2` trie - A `ProvingTrie` trait is included which wraps both the `base2` and `base16` trie, and exposes all APIs needed for an end to end scenario. - A `ProofToHashes` trait is exposed which can allow us to write proper benchmarks for the merkle trie. --------- Co-authored-by:
Ankan <10196091+Ank4n@users.noreply.github.com> Co-authored-by:
Adrian Catangiu <adrian@parity.io>
-
- Sep 28, 2024
-
-
Facundo Farall authored
# Description Updates the doc comment on the `import_notification_stream` to make its behaviour clearer. Closes [Unexpected behaviour of block `import_notification_stream`](https://github.com/paritytech/polkadot-sdk/issues/5596). ## Integration Doesn't apply. ## Review Notes The old comment docs caused some confusion to myself and some members of my team, on when this notification stream is triggered. This is reflected in the linked [issue](https://github.com/paritytech/polkadot-sdk/issues/5596), and as discussed there, this PR aims to prevent this confusion in future devs looking to make use of this functionality. # 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. * [x] I have made corresponding changes to the documentation (if applicable) * [x] I have added tests that prove my fix is effective or that my feature works (if applicable) You can remove the "Checklist" section once all have been checked. Thank you for your contribution! --------- Co-authored-by:
Michal Kucharczyk <1728078+michalkucharczyk@users.noreply.github.com> Co-authored-by:
Bastian Köcher <git@kchr.de>
-
Maksym H authored
Just a tiny config fix Co-authored-by:
Bastian Köcher <git@kchr.de>
-
Iulian Barbu authored
# Description `substrate-wasm-builder` can be a build dependency for crates which develop FRAME runtimes. I had a tough time seeing errors happening in such crates (e.g. runtimes from the `templates` directory) in my IDE. I use a combination of rust-analyzer + nvim-lsp + nvim-lspconfig + rustacean.vim and all of this stack is not able to correctly parse errors emitted during the `build` phase. As a matter of fact there is also a cargo issue tracking specifically this issue where cargo doesn't propagate the `--message-format` type to the build phase: [here](https://github.com/rust-lang/cargo/issues/14246) initially and then [here](https://github.com/rust-lang/cargo/issues/8283). It feels like a solution for this use case isn't very close, so if it comes to runtimes development (both as an SDK user and developer), enabling wasm builder to emit diagnostics messages friendly to IDEs would be useful for regular workflows where IDEs are used for finding errors instead of manually running `cargo` commands. ## Integration It can be an issue if Substrate/FRAME SDKs users and developers rely on the runtimes' crates build phase output in certain ways. Emitting compilation messages as json will pollute the regular compilation output so people that would manually run `cargo build` or `cargo check` on their crates will have a tougher time extracting the non JSON output. ## Review Notes Rust IDEs based on rust-analyzer rely on cargo check/clippy to extract diagnostic information. The information is generated by passing flags like `--messages-format=json` to the `cargo` commands. The messages are extracted by rust-analyzer and published to LSP clients that will populate UIs accordingly. We need to build against the wasm target by using `message-format=json` too so that IDEs can show the errors for crates that have a build dependency on `substrate-wasm-builder`. --------- Signed-off-by:
Iulian Barbu <iulian.barbu@parity.io> Co-authored-by:
Bastian Köcher <git@kchr.de>
-
- Sep 27, 2024
-
-
Sebastian Kunert authored
This PR removes a workaround which had a reference comment to a rust compiler issue. The issue has been fixed and we should be able to remove that trait bound.
-
Maksym H authored
- install frame-omni-bencher from the path - fix bench_features config
-
Javier Viola authored
Reported in: #5844 #5848
-
Alexandru Gheorghe authored
Jaeger spans were not usable for debugging, see https://github.com/paritytech/polkadot-sdk/issues/4995, but we pay a price in CPU cost, subsystem-benchmarks show this brings a reduction of about 10-15% in CPU usage per subsystem, so remove it. --------- Signed-off-by:
Alexandru Gheorghe <alexandru.gheorghe@parity.io>
-
- Sep 26, 2024
-
-
Alexander Samusev authored
cc https://github.com/paritytech/ci_cd/issues/1035 cc https://github.com/paritytech/ci_cd/issues/1023 --------- Signed-off-by:
Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io> Co-authored-by: command-bot <> Co-authored-by:
Maksym H <1177472+mordamax@users.noreply.github.com> Co-authored-by:
gui <gui.thiolliere@gmail.com> Co-authored-by:
Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io> Co-authored-by:
Bastian Köcher <git@kchr.de> Co-authored-by:
ggwpez <ggwpez@users.noreply.github.com>
-
Javier Viola authored
Bump `zombienet` version to prevent report fails at teardown phase.
-
Alexander Samusev authored
Changes in PR: - disabled cargo-hfuzz until [the issue](https://github.com/paritytech/polkadot-sdk/issues/5812) is fixed. - enabled condition to skip jobs when no rust files are changed
-
Alexandru Gheorghe authored
This is the implementation of the approach described here: https://github.com/paritytech/polkadot-sdk/issues/1617#issuecomment-2150321612 & https://github.com/paritytech/polkadot-sdk/issues/1617#issuecomment-2154357547 & https://github.com/paritytech/polkadot-sdk/issues/1617#issuecomment-2154721395. ## Description of changes The end goal is to have an architecture where we have single subsystem(`approval-voting-parallel`) and multiple worker types that would full-fill the work that currently is fulfilled by the `approval-distribution` and `approval-voting` subsystems. The main loop of the new subsystem would do just the distribution of work to the workers. The new subsystem will have: - N approval-distribution workers: This would do the work that is currently being done by the approval-distribution subsystem and in addition to that will also perform the crypto-checks that an assignment is valid and that a vote is correctly signed. Work is assigned via the following formula: `worker_index = msg.validator % WORKER_COUNT`, this guarantees that all assignments and approvals from the same validator reach the same worker. - 1 approval-voting worker: This would receive an already valid message and do everything the approval-voting currently does, except the crypto-checking that has been moved already to the approval-distribution worker. On the hot path of processing messages **no** synchronisation and waiting is needed between approval-distribution and approval-voting workers. <img width="1431" alt="Screenshot 2024-06-07 at 11 28 08" src="https://github.com/paritytech/polkadot-sdk/assets/49718502/a196199b-b705-4140-87d4-c6900ba8595e"> ## Guidelines for reading The full implementation is broken in 5 PRs and all of them are self-contained and improve things incrementally even without the parallelisation being implemented/enabled, the reason this approach was taken instead of a big-bang PR, is to make things easier to review and reduced the risk of breaking this critical subsystems. After reading the full description of this PR, the changes should be read in the following order: 1. https://github.com/paritytech/polkadot-sdk/pull/4848, some other micro-optimizations for networks with a high number of validators. This change gives us a speed up by itself without any other changes. 2. https://github.com/paritytech/polkadot-sdk/pull/4845 , this contains only interface changes to decouple the subsystem from the `Context` and be able to run multiple instances of the subsystem on different threads. **No functional changes** 3. https://github.com/paritytech/polkadot-sdk/pull/4928, moving of the crypto checks from approval-voting in approval-distribution, so that the approval-distribution has no reason to wait after approval-voting anymore. This change gives us a speed up by itself without any other changes. 4. https://github.com/paritytech/polkadot-sdk/pull/4846, interface changes to make approval-voting runnable on a separate thread. **No functional changes** 5. This PR, where we instantiate an `approval-voting-parallel` subsystem that runs on different workers the logic currently in `approval-distribution` and `approval-voting`. 6. The next step after this changes get merged and deploy would be to bring all the files from approval-distribution, approval-voting, approval-voting-parallel into a single rust crate, to make it easier to maintain and understand the structure. ## Results Running subsystem-benchmarks with 1000 validators 100 fully ocuppied cores and triggering all assignments and approvals for all tranches #### Approval does not lags behind. Master ``` Chain selection approved after 72500 ms hash=0x0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a ``` With this PoC ``` Chain selection approved after 3500 ms hash=0x0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a ``` #### Gathering enough assignments Enough assignments are gathered in less than 500ms, so that gives un a guarantee that un-necessary work does not get triggered, on master on the same benchmark because the subsystems fall behind on work, that number goes above 32 seconds on master. <img width="2240" alt="Screenshot 2024-06-20 at 15 48 22" src="https://github.com/paritytech/polkadot-sdk/assets/49718502/d2f2b29c-5ff6-44b4-a245-5b37ab8e58bc"> #### Cpu usage: Master ``` CPU usage, seconds total per block approval-distribution 96.9436 9.6944 approval-voting 117.4676 11.7468 test-environment 44.0092 4.4009 ``` With this PoC ``` CPU usage, seconds total per block approval-distribution 0.0014 0.0001 --- unused approval-voting 0.0437 0.0044. --- unused approval-voting-parallel 5.9560 0.5956 approval-voting-parallel-0 22.9073 2.2907 approval-voting-parallel-1 23.0417 2.3042 approval-voting-parallel-2 22.0445 2.2045 approval-voting-parallel-3 22.7234 2.2723 approval-voting-parallel-4 21.9788 2.1979 approval-voting-parallel-5 23.0601 2.3060 approval-voting-parallel-6 22.4805 2.2481 approval-voting-parallel-7 21.8330 2.1833 approval-voting-parallel-db 37.1954 3.7195. --- the approval-voting thread. ``` # Enablement strategy Because just some trivial plumbing is needed in approval-distribution and approval-voting to be able to run things in parallel and because this subsystems plays a critical part in the system this PR proposes that we keep both ways of running the approval work, as separated subsystems and just a single subsystem(`approval-voting-parallel`) which has multiple workers for the distribution work and one worker for the approval-voting work and switch between them with a comandline flag. The benefits for this is twofold. 1. With the same polkadot binary we can easily switch just a few validators to use the parallel approach and gradually make this the default way of running, if now issues arise. 2. In the worst case scenario were it becomes the default way of running things, but we discover there are critical issues with it we have the path to quickly disable it by asking validators to adjust their command line flags. # Next steps - [x] Make sure through various testing we are not missing anything - [x] Polish the implementations to make them production ready - [x] Add Unittest Tests for approval-voting-parallel. - [x] Define and implement the strategy for rolling this change, so that the blast radius is minimal(single validator) in case there are problems with the implementation. - [x] Versi long running tests. - [x] Add relevant metrics. @ordian @eskimor @sandreim @AndreiEres , let me know what you think. --------- Signed-off-by:
Alexandru Gheorghe <alexandru.gheorghe@parity.io>
-
Maksym H authored
Closes #5714
-
Andrei Sandu authored
A change that I missed to add in https://github.com/paritytech/polkadot-sdk/pull/5525 . --------- Signed-off-by:
Andrei Sandu <andrei-mihail@parity.io>
-
- Sep 25, 2024
-
-
Cyrill Leutwiler authored
This PR introduces 2 new syscalls: `return_data_size` and `return_data_copy`, resembling the semantics of the EVM `RETURNDATASIZE` and `RETURNDATACOPY` opcodes. The ownership of `ExecReturnValue` (the return data) has moved to the `Frame`. This allows implementing the new contract API functionality in ext with no additional copies. Returned data is passed via contract memory, memory is (will be) metered, hence the amount of returned data can not be statically known, so we should avoid storing copies of the returned data if we can. By moving the ownership of the exectuables return value into the `Frame` struct we achieve this. A zero-copy implementation of those APIs would be technically possible without that internal change by making the callsite in the runtime responsible for moving the returned data into the frame after any call. However, resetting the stored output needs to be handled in ext, since plain transfers will _not_ affect the stored return data (and we don't want to handle this special call case inside the `runtime` API). This has drawbacks: - It can not be tested easily in the mock. - It introduces an inconsistency where resetting the stored output is handled in ext, but the runtime API is responsible to store it back correctly after any calls made. Instead, with ownership of the data in `Frame`, both can be handled in a single place. Handling both in `fn run()` is more natural and leaves less room for runtime API bugs. The returned output is reset each time _before_ running any executable in a nested stack. This change should not incur any overhead to the overall memory usage as _only_ the returned data from the last executed frame will be kept around at any time. --------- Signed-off-by:
Cyrill Leutwiler <bigcyrill@hotmail.com> Signed-off-by:
xermicus <cyrill@parity.io> Co-authored-by: command-bot <> Co-authored-by:
PG Herveou <pgherveou@gmail.com>
-
Adrian Catangiu authored
This change adds the required validation for stronger UX guarantees when using `InitiateReserveWithdraw` or `InitiateTeleport` XCM instructions. Execution of the instructions will fail if the local chain is not configured to trust the "destination" or "reserve" chain as a reserve/trusted-teleporter for the provided "assets". With this change, misuse of `InitiateReserveWithdraw`/`InitiateTeleport` fails on origin with no overall side-effects, rather than failing on destination (with side-effects to origin's assets issuance). The commit also makes the same validations for pallet-xcm transfers, and adds regression tests. --------- Signed-off-by:
Adrian Catangiu <adrian@parity.io> Co-authored-by:
Branislav Kontur <bkontur@gmail.com>
-
Liam Aharon authored
# MBM try-runtime support This MR adds support to the try-runtime trait such that the try-runtime-CLI will be able to support MBM testing [here](https://github.com/paritytech/try-runtime-cli/pull/90). It mainly adds two feature-gated hooks to the `SteppedMigration` hook to facilitate testing. These hooks are named `pre_upgrade` and `post_upgrade` and have the same signature and implications as for single-block migrations. ## Integration To make use of this in your Multi-Block-Migration, just implement the two new hooks and test pre- and post-conditions in them: ```rust #[cfg(feature = "try-runtime")] fn pre_upgrade() -> Result<Vec<u8>, frame_support::sp_runtime::TryRuntimeError> { // ... } #[cfg(feature = "try-runtime")] fn post_upgrade(prev: Vec<u8>) -> Result<(), frame_support::sp_runtime::TryRuntimeError> { // ... } ``` You may return an error or panic in these functions to indicate failure. This will then show up in the try-runtime-CLI and can be used in CI for testing. Changes: - Adds `try-runtime` gated methods `pre_upgrade` and `post_upgrade` on `SteppedMigration` - Adds `try-runtime` gated methods `nth_pre_upgrade` and `nth_post_upgrade` on `SteppedMigrations` - Modifies `pallet_migrations` implementation to run pre_upgrade and post_upgrade steps at the appropriate times, and panic in the event of migration failure. --------- Signed-off-by:
Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io> Signed-off-by:
georgepisaltu <george.pisaltu@parity.io> Co-authored-by:
Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io> Co-authored-by:
claravanstaden <claravanstaden64@gmail.com> Co-authored-by:
ggwpez <ggwpez@users.noreply.github.com> Co-authored-by:
georgepisaltu <george.pisaltu@parity.io>
-
Andrei Sandu authored
Minor cleanup. --------- Signed-off-by:
Andrei Sandu <andrei-mihail@parity.io>
-
- Sep 24, 2024
-
-
Branislav Kontur authored
This PR primarily fixes the issue with `zombienet-bridges-0001-asset-transfer-works` (see: https://gitlab.parity.io/parity/mirrors/polkadot-sdk/-/jobs/7404903). The PR looks large, but most of the changes involve splitting `LaneId` into `LegacyLaneId` and `HashedLaneId`. All pallets now use `LaneId` as a generic parameter. The actual bridging pallets are now backward compatible and work with actual **substrate-relay v1.6.10**, which does not even known anything about permissionless lanes or the new pallet changes. ## Important - [x] added migration for `pallet_bridge_relayers` and `RewardsAccountParams` change order of params, which generates different accounts ## Deployment follow ups - [ ] fix monitoring for `at_{}_relay_{}_reward_for_msgs_from_{}_on_lane_{}` - [ ] check sovereign reward accounts - because of changed `RewardsAccountParams` - [ ] deploy another messages instances for permissionless lanes - on BHs or AHs? - [ ] return bac...
-
Javier Viola authored
Fix `parachain-template-test` (bump `zombienet` version). Thx!
-
Eugen Snitko authored
- New and updated vars - New runner vars - Runners rename (see https://github.com/paritytech/ci_cd/issues/1039) --------- Co-authored-by:
Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
-
Clara van Staden authored
# Description A fix for a border condition introduced with new feature https://github.com/paritytech/polkadot-sdk/pull/5201. A malicious relayer could spam the Ethereum client with sync committee updates that have already been imported for the period. This PR adds a storage item to track the last imported sync committee period, so that subsequent irrelevant updates are not free. Original PR: https://github.com/Snowfork/polkadot-sdk/pull/172 ## Integration Downstream projects are not affected. Relayers will not be able to spam the Ethereum client with irrelevant sync committee updates for free. ## Review Notes Adds a storage item to track the last free sync committee update period, so that duplicate imports are not free. --------- Co-authored-by:
Adrian Catangiu <adrian@parity.io>
-
Adrian Catangiu authored
On messages Ethereum -> Polkadot Asset Hub: whether they are a token transfer or a `Transact` for registering new token, make sure to handle unspent fees, rather than trapping them. This PR deposits them to Snowbridge's sovereign account on Asset Hub. --------- Co-authored-by: command-bot <>
-
- Sep 23, 2024
-
-
Jan-Jan authored
# Description * This is part of [issue 5242](https://github.com/paritytech/polkadot-sdk/issues/5242), specifically getting solochain to use `#[frame::runtime]` * Furthermore, reinforced the convention of `Template` instead of `TemplateModule` ## Integration * Should be integrated into the `solochain` template and documentation ## Review Notes * Refactored `solochain` template from [construct_runtime!](https://paritytech.github.io/polkadot-sdk/master/frame_support/macro.construct_runtime.html) to [#[runtime]](https://paritytech.github.io/polkadot-sdk/master/frame_support/attr.runtime.html). * AFAIU `Template` is our new convention, and preferred over `TemplateModule`. # Out of scope * The [#[runtime]](https://paritytech.github.io/polkadot-sdk/master/frame_support/attr.runtime.html) documentation is still very rudimentary, and should ideally be expanded to explain the macro, both what it does and the input options. * Furthermore, suggest update [#[runtime]](https://paritytech.github.io/polkadot-sdk/master/frame_support/attr.runtime.html) documentation to replace `#[crate::runtime]` with `#[frame_support::runtime]` --------- Co-authored-by:
Jan-Jan <111935+Jan-Jan@users.noreply.github.com> Co-authored-by:
Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io> Co-authored-by:
Shawn Tabrizi <shawntabrizi@gmail.com> Co-authored-by: command-bot <>
-
dependabot[bot] authored
Bumps the ci_dependencies group with 3 updates in the / directory: [actions/setup-node](https://github.com/actions/setup-node), [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) and [actions-rust-lang/setup-rust-toolchain](https://github.com/actions-rust-lang/setup-rust-toolchain). Updates `actions/setup-node` from 4.0.3 to 4.0.4 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/actions/setup-node/releases">actions/setup-node's releases</a>.</em></p> <blockquote> <h2>v4.0.4</h2> <h2>What's Changed</h2> <ul> <li>Add workflow file for publishing releases to immutable action package by <a href="https://github.com/Jcambass"><code>@Jcambass</code></a> in <a href="https://redirect.github.com/actions/setup-node/pull/1125">actions/setup-node#1125</a></li> <li>Enhance Windows ARM64 Setup and Update micromatch Dependency by <a href="https://github.com/priyagupta108"><code>@priyagupta108</code></a> in <a href="https://redirect.github.com/actions/setup-node/pull/1126">actions/setup-node#1126</a></li> </ul> <h3>Documentation changes:</h3> <ul> <li>Documentation update in the README file by <a href="https://github.com/suyashgaonkar"><code>@suyashgaonkar</code></a> in <a href="https://redirect.github.com/actions/setup-node/pull/1106">actions/setup-node#1106</a></li> <li>Correct invalid 'lts' version string reference by <a href="https://github.com/fulldecent"><code>@fulldecent</code></a> in <a href="https://redirect.github.com/actions/setup-node/pull/1124">actions/setup-node#1124</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/suyashgaonkar"><code>@suyashgaonkar</code></a> made their first contribution in <a href="https://redirect.github.com/actions/setup-node/pull/1106">actions/setup-node#1106</a></li> <li><a href="https://github.com/priyagupta108"><code>@priyagupta108</code></a> made their first contribution in <a href="https://redirect.github.com/actions/setup-node/pull/1126">actions/setup-node#1126</a></li> <li><a href="https://github.com/Jcambass"><code>@Jcambass</code></a> made their first contribution in <a href="https://redirect.github.com/actions/setup-node/pull/1125">actions/setup-node#1125</a></li> <li><a href="https://github.com/fulldecent"><code>@fulldecent</code></a> made their first contribution in <a href="https://redirect.github.com/actions/setup-node/pull/1124">actions/setup-node#1124</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/setup-node/compare/v4...v4.0.4">https://github.com/actions/setup-node/compare/v4...v4.0.4</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/actions/setup-node/commit/0a44ba7841725637a19e28fa30b79a866c81b0a6"><code>0a44ba7</code></a> Correct version string (<a href="https://redirect.github.com/actions/setup-node/issues/1124">#1124</a>)</li> <li><a href="https://github.com/actions/setup-node/commit/97ca147735c170fb35096b39ef17a0fc5d9270ac"><code>97ca147</code></a> Merge pull request <a href="https://redirect.github.com/actions/setup-node/issues/1125">#1125</a> from actions/add-is-release-workflow</li> <li><a href="https://github.com/actions/setup-node/commit/aa363ded8fefb1e43b7a6cb669a222a98c09eb57"><code>aa363de</code></a> Create publish-immutable-action.yml</li> <li><a href="https://github.com/actions/setup-node/commit/1c7b2db92075f828bee89d7e19d33a911d15e7b3"><code>1c7b2db</code></a> Fix: windows arm64 setup (<a href="https://redirect.github.com/actions/setup-node/issues/1126">#1126</a>)</li> <li><a href="https://github.com/actions/setup-node/commit/26961cf329f22f6837d5f54c3efd76b480300ace"><code>26961cf</code></a> Documentation update in the README file (<a href="https://redirect.github.com/actions/setup-node/issues/1106">#1106</a>)</li> <li>See full diff in <a href="https://github.com/actions/setup-node/compare/v4.0.3...v4.0.4">compare view</a></li> </ul> </details> <br /> Updates `peter-evans/create-pull-request` from 7.0.1 to 7.0.5 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/peter-evans/create-pull-request/releases">peter-evans/create-pull-request's releases</a>.</em></p> <blockquote> <h2>Create Pull Request v7.0.5</h2> <p>
️ Fixes an issue with commit signing to allow it to support symlinks</p> <h2>What's Changed</h2> <ul> <li>fix: support symlinks when commit signing by <a href="https://github.com/peter-evans"><code>@peter-evans</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3359">peter-evans/create-pull-request#3359</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/peter-evans/create-pull-request/compare/v7.0.4...v7.0.5">https://github.com/peter-evans/create-pull-request/compare/v7.0.4...v7.0.5</a></p> <h2>Create Pull Request v7.0.4</h2> <p> ️ Fixes an issue with commit signing to allow it to support submodules</p> <h2>What's Changed</h2> <ul> <li>docs: correct suggestion for bot setup by <a href="https://github.com/henryiii"><code>@henryiii</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3342">peter-evans/create-pull-request#3342</a></li> <li>build(deps-dev): bump <code>@types/jest</code> from 29.5.12 to 29.5.13 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3343">peter-evans/create-pull-request#3343</a></li> <li>build(deps-dev): bump eslint from 8.57.0 to 8.57.1 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3344">peter-evans/create-pull-request#3344</a></li> <li>fix: support submodules when commit signing by <a href="https://github.com/peter-evans"><code>@peter-evans</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3354">peter-evans/create-pull-request#3354</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/henryiii"><code>@henryiii</code></a> made their first contribution in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3342">peter-evans/create-pull-request#3342</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/peter-evans/create-pull-request/compare/v7.0.3...v7.0.4">https://github.com/peter-evans/create-pull-request/compare/v7.0.3...v7.0.4</a></p> <h2>Create Pull Request v7.0.3</h2> <p> ️ Fixes an issue with commit signing where commit SHAs have variable lengths when abbreviated.</p> <h2>What's Changed</h2> <ul> <li>fix: disable abbreviated commit shas in diff by <a href="https://github.com/peter-evans"><code>@peter-evans</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3337">peter-evans/create-pull-request#3337</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/peter-evans/create-pull-request/compare/v7.0.2...v7.0.3">https://github.com/peter-evans/create-pull-request/compare/v7.0.2...v7.0.3</a></p> <h2>Create Pull Request v7.0.2</h2> <p> ️ Fixes an issue with commit signing when a change was detected as being a rename or copy.</p> <h2>What's Changed</h2> <ul> <li>build(deps-dev): bump <code>@types/node</code> from 18.19.48 to 18.19.50 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3320">peter-evans/create-pull-request#3320</a></li> <li>build(deps-dev): bump typescript from 5.5.4 to 5.6.2 by <a href="https://github.com/dependabot"><code>@dependabot</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3319">peter-evans/create-pull-request#3319</a></li> <li>fix: disable diff detection for renames and copies by <a href="https://github.com/peter-evans"><code>@peter-evans</code></a> in <a href="https://redirect.github.com/peter-evans/create-pull-request/pull/3330">peter-evans/create-pull-request#3330</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/peter-evans/create-pull-request/compare/v7.0.1...v7.0.2">https://github.com/peter-evans/create-pull-request/compare/v7.0.1...v7.0.2</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/peter-evans/create-pull-request/commit/5e914681df9dc83aa4e4905692ca88beb2f9e91f"><code>5e91468</code></a> fix: support symlinks when commit signing (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3359">#3359</a>)</li> <li><a href="https://github.com/peter-evans/create-pull-request/commit/2f38cd26bfebe301a5ee90bdd6550a69dc3ef23f"><code>2f38cd2</code></a> fix: support submodules when commit signing (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3354">#3354</a>)</li> <li><a href="https://github.com/peter-evans/create-pull-request/commit/7a8aeac749996aed943101d8e7dfb0cecc06197e"><code>7a8aeac</code></a> build(deps-dev): bump eslint from 8.57.0 to 8.57.1 (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3344">#3344</a>)</li> <li><a href="https://github.com/peter-evans/create-pull-request/commit/d39d596a7720fc2c61c9aa5503097fb553431b5e"><code>d39d596</code></a> build(deps-dev): bump <code>@types/jest</code> from 29.5.12 to 29.5.13 (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3343">#3343</a>)</li> <li><a href="https://github.com/peter-evans/create-pull-request/commit/f6f978fd3dc86c443f758f603d22dc554762c832"><code>f6f978f</code></a> docs: correct suggestion for bot setup (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3342">#3342</a>)</li> <li><a href="https://github.com/peter-evans/create-pull-request/commit/6cd32fd93684475c31847837f87bb135d40a2b79"><code>6cd32fd</code></a> fix: disable abbreviated commit shas in diff (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3337">#3337</a>)</li> <li><a href="https://github.com/peter-evans/create-pull-request/commit/d121e62763d8cc35b5fb1710e887d6e69a52d3a4"><code>d121e62</code></a> fix: disable diff detection for renames and copies (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3330">#3330</a>)</li> <li><a href="https://github.com/peter-evans/create-pull-request/commit/f4d66f4d5a5a7e65a185463192800c32d296ac6d"><code>f4d66f4</code></a> build(deps-dev): bump typescript from 5.5.4 to 5.6.2 (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3319">#3319</a>)</li> <li><a href="https://github.com/peter-evans/create-pull-request/commit/488c869d17c8a5cb8a2f0a09471ed82c1d2a084f"><code>488c869</code></a> build(deps-dev): bump <code>@types/node</code> from 18.19.48 to 18.19.50 (<a href="https://redirect.github.com/peter-evans/create-pull-request/issues/3320">#3320</a>)</li> <li><a href="https://github.com/peter-evans/create-pull-request/commit/5354f85616108575685a73a0ddd2f67c26a441c3"><code>5354f85</code></a> docs: update readme</li> <li>See full diff in <a href="https://github.com/peter-evans/create-pull-request/compare/8867c4aba1b742c39f8d0ba35429c2dfa4b6cb20...5e914681df9dc83aa4e4905692ca88beb2f9e91f">compare view</a></li> </ul> </details> <br /> Updates `actions-rust-lang/setup-rust-toolchain` from 1.9.0 to 1.10.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/actions-rust-lang/setup-rust-toolchain/releases">actions-rust-lang/setup-rust-toolchain's releases</a>.</em></p> <blockquote> <h2>v1.10.0</h2> <h2>What's Changed</h2> <ul> <li>Add new parameter cache-directories that is propagated to Swatinem/rust-cache (<a href="https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/issues/44">#44</a> by <a href="https://github.com/pranc1ngpegasus"><code>@pranc1ngpegasus</code></a>)</li> <li>Add new parameter cache-key that is propagated to Swatinem/rust-cache as key (<a href="https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/issues/41">#41</a> by <a href="https://github.com/iainlane"><code>@iainlane</code></a>)</li> <li>Make rustup toolchain installation more robust in light of planned changes <a href="https://redirect.github.com/rust-lang/rustup/issues/3635">rust-lang/rustup#3635</a> and <a href="https://redirect.github.com/rust-lang/rustup/pull/3985">rust-lang/rustup#3985</a></li> <li>Allow installing multiple Rust toolchains by specifying multiple versions in the toolchain input parameter.</li> <li>Configure the rustup override behavior via the new override input. (<a href="https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/issues/38">#38</a>)</li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/pranc1ngpegasus"><code>@pranc1ngpegasus</code></a> made their first contribution in <a href="https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/44">actions-rust-lang/setup-rust-toolchain#44</a></li> <li><a href="https://github.com/iainlane"><code>@iainlane</code></a> made their first contribution in <a href="https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/pull/41">actions-rust-lang/setup-rust-toolchain#41</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/actions-rust-lang/setup-rust-toolchain/compare/v1...v1.10.0">https://github.com/actions-rust-lang/setup-rust-toolchain/compare/v1...v1.10.0</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/actions-rust-lang/setup-rust-toolchain/commit/4d1965c9142484e48d40c19de54b5cba84953a06"><code>4d1965c</code></a> Add override input parameter that controls the <code>rustup override</code> behavior</li> <li><a href="https://github.com/actions-rust-lang/setup-rust-toolchain/commit/b31b1317f290cc8743fce262ee98435b8c2a3c5a"><code>b31b131</code></a> Allow installing multiple Rust toolchains at once.</li> <li><a href="https://github.com/actions-rust-lang/setup-rust-toolchain/commit/9f99923fade1f569928b687ccc2858a192effa02"><code>9f99923</code></a> Add pre-commit for basic checks</li> <li><a href="https://github.com/actions-rust-lang/setup-rust-toolchain/commit/86a2ce66737229469494d3779ce1c99c3b5b351d"><code>86a2ce6</code></a> Make toolchain install more robust</li> <li><a href="https://github.com/actions-rust-lang/setup-rust-toolchain/commit/eb4a655afde124c3ebbd7ddebd7ef287d56ac4d6"><code>eb4a655</code></a> Document new keys and add changelog</li> <li><a href="https://github.com/actions-rust-lang/setup-rust-toolchain/commit/a90048dfddd1feb871e378c4535c05d7525117d4"><code>a90048d</code></a> Merge pull request <a href="https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/issues/41">#41</a> from iainlane/iainlane/propagate-cache-key</li> <li><a href="https://github.com/actions-rust-lang/setup-rust-toolchain/commit/597574aacb4ee305cfa0c6a3ba38e8be6f9a2eb6"><code>597574a</code></a> Update key name in README</li> <li><a href="https://github.com/actions-rust-lang/setup-rust-toolchain/commit/634cedf365286cb557a12970c1484ea71a309524"><code>634cedf</code></a> Merge pull request <a href="https://redirect.github.com/actions-rust-lang/setup-rust-toolchain/issues/44">#44</a> from pranc1ngpegasus/feat/able-to-cache-additional-dir...</li> <li><a href="https://github.com/actions-rust-lang/setup-rust-toolchain/commit/5d6934e965a5457a045bd6a3327b3ce9dd0c6cbf"><code>5d6934e</code></a> Able to cache additional directories</li> <li><a href="https://github.com/actions-rust-lang/setup-rust-toolchain/commit/b01657d9bb1c81c4e7a46604980d19112a4034f0"><code>b01657d</code></a> Add support for adding to cache key</li> <li>See full diff in <a href="https://github.com/actions-rust-lang/setup-rust-toolchain/compare/1fbea72663f6d4c03efaab13560c8a24cfd2a7cc...4d1965c9142484e48d40c19de54b5cba84953a06">compare view</a></li> </ul> </details> <br /> 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 <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> Signed-off-by:dependabot[bot] <support@github.com> Co-authored-by:
dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
-
CJ13th authored
# Description Closes #5722 Added an implementation of the `try_append` functionality which is present on the other storage map types but currently missing from StorageNMap. --------- Co-authored-by:
Shawn Tabrizi <shawntabrizi@gmail.com>
-
Cyrill Leutwiler authored
This PR adds the EVM chain ID to Config as well as a corresponding runtime API so contracts can query it. Related issue: https://github.com/paritytech/revive/issues/44 --------- Signed-off-by:
xermicus <cyrill@parity.io> Co-authored-by: command-bot <>
-
yjh authored
Co-authored-by: command-bot <>
-
dependabot[bot] authored
Bumps [k256](https://github.com/RustCrypto/elliptic-curves) from 0.13.3 to 0.13.4. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/RustCrypto/elliptic-curves/commit/5ac8f5d77f11399ff48d87b0554935f6eddda342"><code>5ac8f5d</code></a> k256 v0.13.4</li> <li><a href="https://github.com/RustCrypto/elliptic-curves/commit/613cbafd63763c579922ad2b79fa041b4a0dde50"><code>613cbaf</code></a> k256: add support for non-32-byte BIP340 signatures (<a href="https://redirect.github.com/RustCrypto/elliptic-curves/issues/1041">#1041</a>)</li> <li><a href="https://github.com/RustCrypto/elliptic-curves/commit/3787e4cd5b4223cae8bed05d087d6ff2f1d9430b"><code>3787e4c</code></a> k256 v0.13.3</li> <li>See full diff in <a href="https://github.com/RustCrypto/elliptic-curves/compare/k256/v0.13.3...k256/v0.13.4">compare view</a></li> </ul> </details> <br /> [](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:
dependabot[bot] <support@github.com> Co-authored-by:
dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by:
Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
-
Alin Dima authored
Partially implements https://github.com/paritytech/polkadot-sdk/issues/5048 - adds a core selection runtime API to cumulus and a generic way of configuring it for a parachain - modifies the slot based collator to utilise the claim queue and the generic core selection What's left to be implemented (in a follow-up PR): - add the UMP signal for core selection into the parachain-system pallet View the RFC for more context: https://github.com/polkadot-fellows/RFCs/pull/103 --------- Co-authored-by: command-bot <>
-
Alexandru Gheorghe authored
## Description Details and rationale explained here: https://github.com/paritytech/polkadot-sdk/issues/5657#issuecomment-2363076080 Fixes: https://github.com/paritytech/polkadot-sdk/issues/5657 --------- Signed-off-by:
Alexandru Gheorghe <alexandru.gheorghe@parity.io>
-
- Sep 22, 2024
-
-
Oliver Tale-Yazdi authored
The genesis state is currently partially provided via `OverlayedChanges`, but these changes are reset by the runtime after the first repetition, causing the second repitition to use an invalid genesis state. Changes: - Provide the genesis state as a `Storage` without any `OverlayedChanges` to make it work correctly with repetitions. - Add `--genesis-builder-preset` option to use different genesis preset names. - Improve error messages. --------- Signed-off-by:
Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io> Co-authored-by:
ggwpez <ggwpez@users.noreply.github.com> Co-authored-by:
Bastian Köcher <git@kchr.de> Co-authored-by:
Branislav Kontur <bkontur@gmail.com>
-
Bastian Köcher authored
Use `sp_core::Bytes` as `payload` to encode the values correctly as `hex` string.
-
Branislav Kontur authored
It is a first step for switching to the `frame-omni-bencher` for CI. This PR includes several changes related to generating chain specs plus: - [x] pallet `assigned_slots` fix missing `#[serde(skip)]` for phantom - [x] pallet `paras_inherent` benchmark fix - cherry-picked from https://github.com/paritytech/polkadot-sdk/pull/5688 - [x] migrates `get_preset` to the relevant runtimes - [x] fixes Rococo genesis presets - does not work https://gitlab.parity.io/parity/mirrors/polkadot-sdk/-/jobs/7317249 - [x] fixes Rococo benchmarks for CI - [x] migrate westend genesis - [x] remove wococo stuff Closes: https://github.com/paritytech/polkadot-sdk/issues/5680 ## Follow-ups - Fix for frame-omni-bencher https://github.com/paritytech/polkadot-sdk/pull/5655 - Enable new short-benchmarking CI - https://github.com/paritytech/polkadot-sdk/pull/5706 - Remove gitlab pipelines for short benchmarking - refactor all Cumulus runtimes to use `get_preset` - https://github.com/paritytech/polkadot-sdk/issues/5704 - https://github.com/paritytech/polkadot-sdk/issues/5705 - https://github.com/paritytech/polkadot-sdk/issues/5700 - [ ] Backport to the stable --------- Co-authored-by: command-bot <> Co-authored-by:
ordian <noreply@reusable.software>
-
- Sep 20, 2024
-
-
Erin Shaben authored
# Description This PR just makes some minor adjustments to the README. The main goal of it is to consistently refer to the Polkadot SDK as such, without a hyphen. I noticed some other minor inconsistencies, so I fixed those while I was at it
-
Liu-Cheng Xu authored
This PR is cherry-picked from https://github.com/paritytech/polkadot-sdk/pull/5663 so that I can maintain a smaller polkadot-sdk diff downstream sooner than later. cc @lexnv @dmitry-markin --------- Co-authored-by:
Alexandru Vasile <60601340+lexnv@users.noreply.github.com> Co-authored-by:
Dmitry Markin <dmitry@markin.tech>
-
tmpolaczyk authored
When using the relay chain though a `Arc<dyn RelayChainInterface>` there is no way to call arbitrary runtime apis. Both implementations of that trait allow this, so it feels natural to expose this functionality in the trait. This PR adds a `call_runtime_api` method to RelayChainInterface trait, and a separate function also named `call_runtime_api` which allows the caller to specify the input and output types, as opposed to having to encode them. This generic function cannot be part of the trait because a `dyn Trait` object cannot have generic methods. --------- Co-authored-by:
Bastian Köcher <git@kchr.de>
-
Ron authored
# Description Fix https://github.com/paritytech/polkadot-sdk/pull/5074 which missed the runtime migration to initialize channels of the bridge. --------- Co-authored-by:
Adrian Catangiu <adrian@parity.io>
-