-
Notifications
You must be signed in to change notification settings - Fork 739
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adds Snowbridge to Rococo runtime #2522
Conversation
cumulus/parachains/runtimes/assets/asset-hub-rococo/src/xcm_config.rs
Outdated
Show resolved
Hide resolved
cumulus/parachains/runtimes/assets/asset-hub-rococo/src/xcm_config.rs
Outdated
Show resolved
Hide resolved
cumulus/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/bridge_to_westend_config.rs
Outdated
Show resolved
Hide resolved
cumulus/parachains/runtimes/bridge-hubs/bridge-hub-rococo/Cargo.toml
Outdated
Show resolved
Hide resolved
cumulus/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/xcm_config.rs
Outdated
Show resolved
Hide resolved
* updates snowbridge dependencies to git repos * use snowbridge v0.9.0 * Rename control to system * Remove redundant address (#49) * Fix compile error * Load PricingParameters from control * Load InboundDeliveryCost from EthereumInboundQueue * Allow utility calls * Fix integration tests * Remove createAssetExecutionFee * Fix breaking test * fix benchmark weights --------- Co-authored-by: Vincent Geddes <[email protected]> * benchmark fixes (#55) Co-authored-by: claravanstaden <Cats 4 life!> * Update to EthereumSystem * fixes related to pr comments * fix exporter * adds universal location check * use ethereum network from snowbridge rococo common crate * starts with pallet universal alias * merge damage Host snowbridge-dev * use pallet instance in inbound queue origin * cleanup * TrustedTeleporters from SnowBridgeMessageQueue --------- Co-authored-by: claravanstaden <Cats 4 life!> Co-authored-by: ron <[email protected]> Co-authored-by: Vincent Geddes <[email protected]>
User @claravanstaden, please sign the CLA here. |
@bkontur I made the changes you requested. I'll rebase from |
* add network ID 5 * updated chain id and sovereign account * changes change ID to Sepolia --------- Co-authored-by: claravanstaden <Cats 4 life!>
70403a8
to
dc5e335
Compare
# Conflicts: # Cargo.lock # cumulus/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/lib.rs # cumulus/parachains/runtimes/bridge-hubs/bridge-hub-rococo/Cargo.toml # cumulus/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/xcm_config.rs # cumulus/polkadot-parachain/src/command.rs
# Conflicts: # Cargo.lock # cumulus/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/bridge_to_westend_config.rs # cumulus/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/lib.rs # cumulus/parachains/runtimes/testing/penpal/src/xcm_config.rs
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm approving PR - I see no any critical issues and any blockers for deploying on testnet. From my side, only remaining issues are:
- Adds Snowbridge to Rococo runtime #2522 (comment): I'm not sure if it affects anything, so I'm asking you guys to double check that and confirm that it isn't critical;
- Adds Snowbridge to Rococo runtime #2522 (comment): we need a test for the
MessageQueueServiceWeight
and beacon pallet call weights - otherwise one day someone could just simple decrease it or weights may become larger than this value.
Thanks for the approval @svyatonik! Test is over here: 7535c5b#diff-d82443a1090c6b556d4dced7f66849178da021df9ed908d1cad2712aced59ca9R86 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I went through almost everything (except for a deep dive into the Snowbridge subtree, which I'll surely do later). Overall, looks ok to deploy on testnet.
/// The message came from the para-chain itself. | ||
Here, | ||
/// The message came from the relay-chain. | ||
/// | ||
/// This is used by the DMP queue. | ||
Parent, | ||
/// The message came from a sibling para-chain. | ||
/// | ||
/// This is used by the HRMP queue. | ||
Sibling(ParaId), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@claravanstaden I am just thinking if it would be possible to replace this by parachains_common::AggregateMessageOrigin
something like this:
pub enum AggregateMessageOrigin {
/// The message came from a local consensus.
Local(parachains_common::AggregateMessageOrigin)
/// The message came from a snowbridge channel.
///
/// This is used by Snowbridge inbound queue.
Snowbridge(ChannelId),
}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Something like that was my ideal choice, however it would have involved a fairly complicated storage migration. See previous discussion in #2117.
@@ -37,3 +41,14 @@ cumulus-pallet-dmp-queue = { path = "../../../../../../pallets/dmp-queue", defau | |||
bridge-hub-rococo-runtime = { path = "../../../../../../parachains/runtimes/bridge-hubs/bridge-hub-rococo", default-features = false } | |||
emulated-integration-tests-common = { path = "../../../common", default-features = false } | |||
rococo-westend-system-emulated-network = { path = "../../../networks/rococo-westend-system" } | |||
penpal-runtime = { path = "../../../../../runtimes/testing/penpal", default-features = false } | |||
rococo-system-emulated-network = { path = "../../../networks/rococo-system" } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@claravanstaden I think we dont need this rococo-system-emulated-network
dependency, everything should be contained in rococo-westend-system-emulated-network
already
penpal_emulated_chain::PenpalAParaPallet as PenpalAPallet, | ||
BridgeHubRococoParaReceiver as BridgeHubRococoReceiver, PenpalAPara as PenpalA, | ||
PenpalAParaReceiver as PenpalAReceiver, PenpalAParaSender as PenpalASender, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@claravanstaden I think everything should be accessible through rococo_westend_system_emulated_network
Co-authored-by: claravanstaden <Cats 4 life!>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Likewise OK for Rococo deployment from my side. My review focused on your pallets, so it complements Brani's review scope well.
From my review, I don't see critical issues except for the unaudited & unversioned BLS dependency, which MUST be replaced at latest prior to Kusama/Polkadot deployment. This is a critical cryptographic dependency.
- Can you create issues to follow up on the remaining review comments?
- Do you expect to complete Fix sibling location Snowfork/snowbridge#1077 today?
|
||
snowbridge-ethereum = { path = "../../primitives/ethereum", default-features = false } | ||
static_assertions = { version = "1.1.0" } | ||
milagro_bls = { git = "https://github.com/snowfork/milagro_bls", default-features = false, rev = "a6d66e4eb89015e352fb1c9f7b661ecdbb5b2176" } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
milagro_bls is unaudited & therefore considered unsafe:
https://github.com/sigp/milagro_bls/blob/master/README.md#bls12-381-aggregate-signatures-in-rust-using-apache-milagro
Do you have an issue open for this?
Since we're only merging for Rococo, I'm fine with it for now, but it needs replacement before Kusama & Polkadot deployments.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey, yes, we've already flagged this as an issue with Parity AppSec. I've written up a doc about our usage of it: https://snowfork.notion.site/Milagro-BLS-8add7bd15c9b47c5b03c86283316b63b
The problem is about what to choose as an alternative. It seems most bleeding-edge crypto libraries are unaudited, including arkworks and the BLS lib developed by zcash.
Milagro-BLS is used in the reference client for Ethereum, so that's at least one signifier of fitness for purpose.
//! ```text | ||
//! LocalFee(Message) = WeightToFee(ProcessMessageWeight(Message)) | ||
//! RemoteFee(Message) = MaxGasRequired(Message) * FeePerGas + Reward | ||
//! Fee(Message) = LocalFee(Message) + (RemoteFee(Message) / Ratio("ETH/DOT")) | ||
//! ``` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for making the inbound-queue reward test strict (Snowfork/snowbridge#1081 (comment), Snowfork/snowbridge#1086).
Can you do the same for the outbound direction, which is currently just >
/<
?
491d9ba0714 Fix sibling location (#1077) 9958c711196 Allow override of REJECT_OUTBOUND_MESSAGES (#1088) 7e2f8b1c8e3 better asserts (#1086) git-subtree-dir: bridges/snowbridge git-subtree-split: 491d9ba0714f203bf356a525d5dac89699a0ef81
After merging #2522 asset-hub-rococo and bridge-hub-rococo runtime versions need to be bumped for their deployment. --------- Co-authored-by: joe petrowski <[email protected]>
@@ -182,6 +183,21 @@ mod bridge_hub_westend_tests { | |||
>(collator_session_keys(), bp_bridge_hub_rococo::BRIDGE_HUB_ROCOCO_PARACHAIN_ID) | |||
} | |||
|
|||
#[test] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@claravanstaden @alistair-singh could you, please, add here some complex test covering all extrinsics needed for the relayer, that are ok and working as expected? we have here similar complex_relay_extrinsic_works
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Added ticket in our internal issue tracker: https://linear.app/snowfork/issue/SNO-811
@@ -118,10 +118,13 @@ tokio = { version = "1.32.0", features = ["macros", "parking_lot", "time"] } | |||
wait-timeout = "0.2" | |||
|
|||
[features] | |||
default = [] | |||
default = [ | |||
"beacon-spec-mainnet", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@claravanstaden @alistair-singh I am not sure that this is a good thing to set it as default in polkadot-parachain
binary, because it is used for other parachains not related to any bridge stuff, can you, please, check if this PR will work: #2777 ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@claravanstaden @alistair-singh @vgeddes
also I think we should make it beacon-spec-mainnet
as production-like by default without need to even specify at runtime Cargo.toml
, and if you need that minimal
stuff for testing or whatever, that should be allowed on-demand by feature like beacon-spec-minimal
or beacon-spec-fast-runtime
(polkadot-sdk
uses fast-runtime
)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We're working on this - a complication in our environment is that the fast-runtime
/ beacon-spec-minimal
feature selection is incompatible with runtime-benchmarks
, or in other words, we can only compile runtime benchmarks with the the full production mainnet spec for Ethereum.
We're busy implementing a solution, its just an engineering problem...
* parachain-system: Do not take `self` for `last_relay_block_number` (#2720) FRAME DSL is working in a static context. * fix zombienet test (#2719) Remove old version for `cli_args`, since this was fixed in the latest version of zombienet and the `latest` version of polkadot introduce the new flag `--insecure-validator-i-know-what-i-do`. Fix jobs like https://gitlab.parity.io/parity/mirrors/polkadot-sdk/-/jobs/4726174 Thx! * [NPoS] Remove better solution threshold for unsigned submissions (#2694) closes https://github.com/paritytech-secops/srlabs_findings/issues/78. Removes `BetterUnsignedThreshold` from pallet EPM. This will essentially mean any solution submitted by the validator that is strictly better than the current queued solution would be accepted. The reason for having these thresholds is to limit number of solutions submitted on-chain. However for unsigned submissions, the number of solutions that could be submitted on average is limited even without thresholding (calculation shown in the corresponding issue). * `chain-spec-builder`: Improve output path example (#2693) Example currently broken. It writes something to the given path, but not the full chain spec. --------- Co-authored-by: Michal Kucharczyk <[email protected]> * Publicly expose inaccessible `pallet_uniques` state (#2727) A small PR to publicly expose the `pallet_uniques` state that is not accessible through the nonfungibles implementation. Currently, this state is unreachable from chain extensions. * Bump async-trait from 0.1.73 to 0.1.74 (#2730) Bumps [async-trait](https://github.com/dtolnay/async-trait) from 0.1.73 to 0.1.74. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/dtolnay/async-trait/releases">async-trait's releases</a>.</em></p> <blockquote> <h2>0.1.74</h2> <ul> <li>Documentation improvements</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/dtolnay/async-trait/commit/265979b07a9af573e1edd3b2a9b179533cfa7a6c"><code>265979b</code></a> Release 0.1.74</li> <li><a href="https://github.com/dtolnay/async-trait/commit/5e677097d2e67f7a5c5e3023e2f3b99b36a9e132"><code>5e67709</code></a> Fix doc test when async fn in trait is natively supported</li> <li><a href="https://github.com/dtolnay/async-trait/commit/ef144aed28b636eb65759505b2323afc4c753fbe"><code>ef144ae</code></a> Update ui test suite to nightly-2023-10-15</li> <li><a href="https://github.com/dtolnay/async-trait/commit/9398a28d6fc977ccf8c286bd85b4b87a883f92ac"><code>9398a28</code></a> Test docs.rs documentation build in CI</li> <li><a href="https://github.com/dtolnay/async-trait/commit/8737173dafa371e5e9e491d736513be1baf697f4"><code>8737173</code></a> Update ui test suite to nightly-2023-09-24</li> <li><a href="https://github.com/dtolnay/async-trait/commit/5ba643c001a55f70c4a44690e040cdfab873ba56"><code>5ba643c</code></a> Test dyn Trait containing async fn</li> <li><a href="https://github.com/dtolnay/async-trait/commit/247c8e7b0b3ff69c9518ebf93e69fe74d47f17b6"><code>247c8e7</code></a> Add ui test testing the recommendation to use async-trait</li> <li><a href="https://github.com/dtolnay/async-trait/commit/799db66a84834c403860df4a8c0227d8fb7f9d9d"><code>799db66</code></a> Update ui test suite to nightly-2023-09-23</li> <li><a href="https://github.com/dtolnay/async-trait/commit/0e60248011f751d8ccf58219d0a79aacfe9619f1"><code>0e60248</code></a> Update actions/checkout@v3 -> v4</li> <li><a href="https://github.com/dtolnay/async-trait/commit/7fcbc83993d5ef483d048c271a7f6c4ac8c98388"><code>7fcbc83</code></a> Update ui test suite to nightly-2023-08-29</li> <li>See full diff in <a href="https://github.com/dtolnay/async-trait/compare/0.1.73...0.1.74">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=async-trait&package-manager=cargo&previous-version=0.1.73&new-version=0.1.74)](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 <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] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Relaxed clippy fixes/nits (#2661) This PR contains just a few clippy fixes and nits, which are, however, relaxed by workspace clippy settings here: https://github.com/paritytech/polkadot-sdk/blob/master/Cargo.toml#L483-L506 --------- Co-authored-by: Dmitry Sinyavin <[email protected]> Co-authored-by: ordian <[email protected]> Co-authored-by: command-bot <> Co-authored-by: Bastian Köcher <[email protected]> * Bridges subtree update (#2736) * BEEFY: expect_validator_set() small fix (#2737) Follow-up on https://github.com/paritytech/polkadot-sdk/pull/2716 Sorry, small miss * [ci] Fix node-bench-regression-guard job (#2732) After GitLab update it started to remove artifacts from master if PR has more than 20 commits. PR fixes this for `node-bench-regression-guard` job cc https://github.com/paritytech/ci_cd/issues/915 * subsystem benchmarks: add cpu profiling (#2734) Ready-to-merge version of https://github.com/paritytech/polkadot-sdk/pull/2601 - Added optional CPU profiling - Updated instructions how to set up Prometheus, Pyroscope and Graphana - Added a flamegraph dashboard <img width="1470" alt="image" src="https://github.com/paritytech/polkadot-sdk/assets/27277055/c8f3b33d-3c01-4ec0-ac34-72d52325b6e6"> --------- Co-authored-by: ordian <[email protected]> * Bump dyn-clone from 1.0.13 to 1.0.16 (#2748) Bumps [dyn-clone](https://github.com/dtolnay/dyn-clone) from 1.0.13 to 1.0.16. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/dtolnay/dyn-clone/releases">dyn-clone's releases</a>.</em></p> <blockquote> <h2>1.0.16</h2> <ul> <li>Documentation improvements</li> </ul> <h2>1.0.15</h2> <ul> <li>Documentation improvements</li> </ul> <h2>1.0.14</h2> <ul> <li>Documentation improvements</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/dtolnay/dyn-clone/commit/f2f0a02f1f7190048153e5ea8f554db7377a50a9"><code>f2f0a02</code></a> Release 1.0.16</li> <li><a href="https://github.com/dtolnay/dyn-clone/commit/7e5037b8242739a52e36bff94d405caede2cace8"><code>7e5037b</code></a> Fix crate name in html_root_url</li> <li><a href="https://github.com/dtolnay/dyn-clone/commit/e84a6e10e7185e4d050ccf466098486983b60539"><code>e84a6e1</code></a> Release 1.0.15</li> <li><a href="https://github.com/dtolnay/dyn-clone/commit/453e078f525aaf1afbfa17a101d166ca0061bcbe"><code>453e078</code></a> Fix documentation on no-std targets</li> <li><a href="https://github.com/dtolnay/dyn-clone/commit/4bcfc07bec99e002de32285bc09bc73c6a679b66"><code>4bcfc07</code></a> Let rustdoc see std crate</li> <li><a href="https://github.com/dtolnay/dyn-clone/commit/8bd3355c1e7607e8aa9424b39acfc080e671b32d"><code>8bd3355</code></a> Allow rustdoc to take care of intra-doc links</li> <li><a href="https://github.com/dtolnay/dyn-clone/commit/638fa8b1b9ca3ffd10a84cee3ca0310f10b85c5b"><code>638fa8b</code></a> Remove 'remember to update' reminder from Cargo.toml</li> <li><a href="https://github.com/dtolnay/dyn-clone/commit/2e6b761113dba45bcf765e6753a8a55279220750"><code>2e6b761</code></a> Test docs.rs documentation build in CI</li> <li><a href="https://github.com/dtolnay/dyn-clone/commit/cee99471c46f9f512640aa03c680a547ac72c22c"><code>cee9947</code></a> Release 1.0.14</li> <li><a href="https://github.com/dtolnay/dyn-clone/commit/7b6a70759714b5cb55ac4b763636527acb6ab2c3"><code>7b6a707</code></a> Delete dyn-clonable link</li> <li>Additional commits viewable in <a href="https://github.com/dtolnay/dyn-clone/compare/1.0.13...1.0.16">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=dyn-clone&package-manager=cargo&previous-version=1.0.13&new-version=1.0.16)](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 <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] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump actions/setup-node from 4.0.0 to 4.0.1 (#2746) Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4.0.0 to 4.0.1. <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.1</h2> <h2>What's Changed</h2> <ul> <li>Ignore engines in Yarn 1 e2e-cache tests by <a href="https://github.com/trivikr"><code>@trivikr</code></a> in <a href="https://redirect.github.com/actions/setup-node/pull/882">actions/setup-node#882</a></li> <li>Update setup-node references in the README.md file to setup-node@v4 by <a href="https://github.com/jwetzell"><code>@jwetzell</code></a> in <a href="https://redirect.github.com/actions/setup-node/pull/884">actions/setup-node#884</a></li> <li>Update reusable workflows to use Node.js v20 by <a href="https://github.com/MaksimZhukov"><code>@MaksimZhukov</code></a> in <a href="https://redirect.github.com/actions/setup-node/pull/889">actions/setup-node#889</a></li> <li>Add fix for cache to resolve slow post action step by <a href="https://github.com/aparnajyothi-y"><code>@aparnajyothi-y</code></a> in <a href="https://redirect.github.com/actions/setup-node/pull/917">actions/setup-node#917</a></li> <li>Fix README.md by <a href="https://github.com/takayamaki"><code>@takayamaki</code></a> in <a href="https://redirect.github.com/actions/setup-node/pull/898">actions/setup-node#898</a></li> <li>Add <code>package.json</code> to <code>node-version-file</code> list of examples. by <a href="https://github.com/TWiStErRob"><code>@TWiStErRob</code></a> in <a href="https://redirect.github.com/actions/setup-node/pull/879">actions/setup-node#879</a></li> <li>Fix node-version-file interprets entire package.json as a version by <a href="https://github.com/NullVoxPopuli"><code>@NullVoxPopuli</code></a> in <a href="https://redirect.github.com/actions/setup-node/pull/865">actions/setup-node#865</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/trivikr"><code>@trivikr</code></a> made their first contribution in <a href="https://redirect.github.com/actions/setup-node/pull/882">actions/setup-node#882</a></li> <li><a href="https://github.com/jwetzell"><code>@jwetzell</code></a> made their first contribution in <a href="https://redirect.github.com/actions/setup-node/pull/884">actions/setup-node#884</a></li> <li><a href="https://github.com/aparnajyothi-y"><code>@aparnajyothi-y</code></a> made their first contribution in <a href="https://redirect.github.com/actions/setup-node/pull/917">actions/setup-node#917</a></li> <li><a href="https://github.com/takayamaki"><code>@takayamaki</code></a> made their first contribution in <a href="https://redirect.github.com/actions/setup-node/pull/898">actions/setup-node#898</a></li> <li><a href="https://github.com/TWiStErRob"><code>@TWiStErRob</code></a> made their first contribution in <a href="https://redirect.github.com/actions/setup-node/pull/879">actions/setup-node#879</a></li> <li><a href="https://github.com/NullVoxPopuli"><code>@NullVoxPopuli</code></a> made their first contribution in <a href="https://redirect.github.com/actions/setup-node/pull/865">actions/setup-node#865</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/setup-node/compare/v4...v4.0.1">https://github.com/actions/setup-node/compare/v4...v4.0.1</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/actions/setup-node/commit/b39b52d1213e96004bfcb1c61a8a6fa8ab84f3e8"><code>b39b52d</code></a> Fix node-version-file interprets entire package.json as a version (<a href="https://redirect.github.com/actions/setup-node/issues/865">#865</a>)</li> <li><a href="https://github.com/actions/setup-node/commit/72476173717e9fa92b08abe87e9c9dc3a42dc0c8"><code>7247617</code></a> Add <code>package.json</code> to <code>node-version-file</code> list of examples. (<a href="https://redirect.github.com/actions/setup-node/issues/879">#879</a>)</li> <li><a href="https://github.com/actions/setup-node/commit/f3ec4ca66feedca88150c6d39d92449ce4ca063b"><code>f3ec4ca</code></a> Fix README.md (<a href="https://redirect.github.com/actions/setup-node/issues/898">#898</a>)</li> <li><a href="https://github.com/actions/setup-node/commit/ec97f37504b0cca1fbc763cc0575585d10020c22"><code>ec97f37</code></a> Add fix for cache (<a href="https://redirect.github.com/actions/setup-node/issues/917">#917</a>)</li> <li><a href="https://github.com/actions/setup-node/commit/5ef044f9d09786428e6e895be6be17937becee3a"><code>5ef044f</code></a> Update reusable workflows to use Node.js v20 (<a href="https://redirect.github.com/actions/setup-node/issues/889">#889</a>)</li> <li><a href="https://github.com/actions/setup-node/commit/c45882a6eaaa69d42dbf1b6c7e3ae5dbb81e1f29"><code>c45882a</code></a> update to setup-node@v4 in docs (<a href="https://redirect.github.com/actions/setup-node/issues/884">#884</a>)</li> <li><a href="https://github.com/actions/setup-node/commit/ee36e8b5c0fdd6014a0398aed18ce9876360bd63"><code>ee36e8b</code></a> Ignore engines check in Yarn 1 e2e-cache tests (<a href="https://redirect.github.com/actions/setup-node/issues/882">#882</a>)</li> <li>See full diff in <a href="https://github.com/actions/setup-node/compare/v4.0.0...v4.0.1">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/setup-node&package-manager=github_actions&previous-version=4.0.0&new-version=4.0.1)](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] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * `UnionOf` types for merged `fungible` and `fungibles` implementations (#2033) Introduces `UnionOf` types, crafted to merge `fungible` and `fungibles` implementations or two `fungibles` implementations into a single type implementing `fungibles`. This also addresses an issue where `ItemOf` initiates a double drop for an imbalance type, leading to inaccurate total issuance accounting. Find the application of these types in this PR - [link](https://github.com/paritytech/polkadot-sdk/pull/2031), places in code - [1](https://github.com/paritytech/polkadot-sdk/blob/4ec7496fa2632385b08fae860fcf28a523a7b5de/cumulus/parachains/runtimes/assets/asset-hub-kusama/src/lib.rs#L327), [2](https://github.com/paritytech/polkadot-sdk/blob/4ec7496fa2632385b08fae860fcf28a523a7b5de/cumulus/parachains/runtimes/assets/asset-hub-kusama/src/lib.rs#L343). --------- Co-authored-by: Liam Aharon <[email protected]> Co-authored-by: joe petrowski <[email protected]> Co-authored-by: Oliver Tale-Yazdi <[email protected]> Co-authored-by: joepetrowski <[email protected]> * [NFTs] Fix consumers issue (#2653) When we call the `set_accept_ownership` method, we increase the number of account consumers, but then we don't decrease it on collection transfer, which leads to the wrong consumers number an account has. * Rococo/Westend Coretime Runtime New runtimes for the Coretime Chain (a.k.a. "Broker Chain") described in RFC-1. Replaces https://github.com/paritytech/cumulus/pull/2889 - [x] Add Agile Coretime pallet https://github.com/paritytech/substrate/pull/14568 - [x] Generate chain specs for local and testnets - [x] Deploy parachain on Rococo - Done: [rococo-coretime-rpc.polkadot.io](https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Frococo-coretime-rpc.polkadot.io#/explorer) DevOps issue for Aura keygen: https://github.com/paritytech/devops/issues/2725 Edit (Dónal): This PR is mainly for Rococo, the Westend runtime is a shell with no `Broker` pallet. The Rococo runtime has the broker calls filtered for initial deployment. --------- Co-authored-by: Dónal Murray <[email protected]> Co-authored-by: 0xmovses <[email protected]> Co-authored-by: Liam Aharon <[email protected]> Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Marcin S. <[email protected]> Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: command-bot <> Co-authored-by: Branislav Kontur <[email protected]> * Ref docs: runtime vs contracts (#2609) closes https://github.com/paritytech/polkadot-sdk-docs/issues/41 * SDK docs ref cli (#2741) Closes https://github.com/paritytech/polkadot-sdk-docs/issues/53 * pallet-uniques/nfts: Small optimizations (#2754) Use `contains_key` to not require decoding the actual value. * pallet-asset-conversion: Swap Credit (#1677) Introduces a swap implementation that allows the exchange of a credit (aka Negative Imbalance) of one asset for a credit of another asset. This is particularly useful when a credit swap is required but may not have sufficient value to meet the ED constraint, hence cannot be deposited to temp account before. An example use case is when XCM fees are paid using an asset held in the XCM executor registry and has to be swapped for native currency. Additional Updates: - encapsulates the existing `Swap` trait impl within a transactional context, since partial storage mutation is possible when an error occurs; - supplied `Currency` and `Assets` impls must be implemented over the same `Balance` type, the `AssetBalance` generic type is dropped. This helps to avoid numerous type conversion and overflow cases. If those types are different it should be handled outside of the pallet; - `Box` asset kind on a pallet level, unbox on a runtime level - here [why](https://substrate.stackexchange.com/questions/10039/boxed-argument-of-a-dispatchable/10103#10103); - `path` uses `Vec` now, instead of `BoundedVec` since it is never used in PoV; - removes the `Transfer` event due to it's redundancy with the events emitted by `fungible/s` implementations; - modifies the `SwapExecuted` event type; related issue: - https://github.com/paritytech/polkadot-sdk/issues/105 related PRs: - (required for) https://github.com/paritytech/polkadot-sdk/pull/1845 - (caused) https://github.com/paritytech/polkadot-sdk/pull/1717 // DONE make the pallet work only with `fungibles` trait and make it free from the concept of a `native` asset - https://github.com/paritytech/polkadot-sdk/issues/1842 --------- Co-authored-by: joe petrowski <[email protected]> * Add srtool GHA (#2755) This PR introduces the `srtool` GHA which was used in the old `cumulus` repo to build and check runtimes on the weekly basis schedule. The job is triggered: - every Monday at 2AM, automatically - on each tag push or push to the release branch - can be triggered manually as well Addresses #1271 * Update schnorrkel to 0.11.4 (#2524) * Fix bridges scripts to test Rococo <> Westend bridge locally (#2752) I think I broke it in https://github.com/paritytech/polkadot-sdk/pull/2139 - fees has increased and amounts that we send are no longer enough to cover fees. Also changed a consts (test + 33%) using latest weights. --------- Co-authored-by: Branislav Kontur <[email protected]> * Bump chrono from 0.4.27 to 0.4.31 (#2761) Bumps [chrono](https://github.com/chronotope/chrono) from 0.4.27 to 0.4.31. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/chronotope/chrono/releases">chrono's releases</a>.</em></p> <blockquote> <h2>0.4.31</h2> <p>Another maintenance release. It was not a planned effort to improve our support for UNIX timestamps, yet most PRs seem related to this.</p> <h3>Deprecations</h3> <ul> <li>Deprecate <code>timestamp_nanos</code> in favor of the non-panicking <code>timestamp_nanos_opt</code> (<a href="https://redirect.github.com/chronotope/chrono/issues/1275">#1275</a>)</li> </ul> <h3>Additions</h3> <ul> <li>Add <code>DateTime::<Utc>::from_timestamp</code> (<a href="https://redirect.github.com/chronotope/chrono/issues/1279">#1279</a>, thanks <a href="https://github.com/demurgos"><code>@demurgos</code></a>)</li> <li>Add <code>TimeZone::timestamp_micros</code> (<a href="https://redirect.github.com/chronotope/chrono/issues/1285">#1285</a>, thanks <a href="https://github.com/emikitas"><code>@emikitas</code></a>)</li> <li>Add <code>DateTime<Tz>::timestamp_nanos_opt</code> and <code>NaiveDateTime::timestamp_nanos_opt</code> (<a href="https://redirect.github.com/chronotope/chrono/issues/1275">#1275</a>)</li> <li>Add <code>UNIX_EPOCH</code> constants (<a href="https://redirect.github.com/chronotope/chrono/issues/1291">#1291</a>)</li> </ul> <h3>Fixes</h3> <ul> <li>Format day of month in RFC 2822 without padding (<a href="https://redirect.github.com/chronotope/chrono/issues/1272">#1272</a>)</li> <li>Don't allow strange leap seconds which are not on a minute boundary initialization methods (<a href="https://redirect.github.com/chronotope/chrono/issues/1283">#1283</a>) This makes many methods a little more strict: <ul> <li><code>NaiveTime::from_hms_milli</code></li> <li><code>NaiveTime::from_hms_milli_opt</code></li> <li><code>NaiveTime::from_hms_micro</code></li> <li><code>NaiveTime::from_hms_micro_opt</code></li> <li><code>NaiveTime::from_hms_nano</code></li> <li><code>NaiveTime::from_hms_nano_opt</code></li> <li><code>NaiveTime::from_num_seconds_from_midnight</code></li> <li><code>NaiveTime::from_num_seconds_from_midnight_opt</code></li> <li><code>NaiveDate::and_hms_milli</code></li> <li><code>NaiveDate::and_hms_milli_opt</code></li> <li><code>NaiveDate::and_hms_micro</code></li> <li><code>NaiveDate::and_hms_micro_opt</code></li> <li><code>NaiveDate::and_hms_nano</code></li> <li><code>NaiveDate::and_hms_nano_opt</code></li> <li><code>NaiveDateTime::from_timestamp</code></li> <li><code>NaiveDateTime::from_timestamp_opt</code></li> <li><code>TimeZone::timestamp</code></li> <li><code>TimeZone::timestamp_opt</code></li> </ul> </li> <li>Fix underflow in <code>NaiveDateTime::timestamp_nanos_opt</code> (<a href="https://redirect.github.com/chronotope/chrono/issues/1294">#1294</a>, thanks <a href="https://github.com/crepererum"><code>@crepererum</code></a>)</li> </ul> <h3>Documentation</h3> <ul> <li>Add more documentation about the RFC 2822 obsolete date format (<a href="https://redirect.github.com/chronotope/chrono/issues/1267">#1267</a>)</li> </ul> <h3>Internal</h3> <ul> <li>Remove internal <code>__doctest</code> feature and <code>doc_comment</code> dependency (<a href="https://redirect.github.com/chronotope/chrono/issues/1276">#1276</a>)</li> <li>CI: Bump <code>actions/checkout</code> from 3 to 4 (<a href="https://redirect.github.com/chronotope/chrono/issues/1280">#1280</a>)</li> <li>Optimize <code>NaiveDate::add_days</code> for small values (<a href="https://redirect.github.com/chronotope/chrono/issues/1214">#1214</a>)</li> <li>Upgrade <code>pure-rust-locales</code> to 0.7.0 (<a href="https://redirect.github.com/chronotope/chrono/issues/1288">#1288</a>, thanks <a href="https://github.com/jeremija"><code>@jeremija</code></a> wo did good improvements on <code>pure-rust-locales</code>)</li> </ul> <p>Thanks to all contributors on behalf of the chrono team, <a href="https://github.com/djc"><code>@djc</code></a> and <a href="https://github.com/pitdicker"><code>@pitdicker</code></a>!</p> <h2>0.4.30</h2> <p>In this release, we have decided to swap out the <code>chrono::Duration</code> type (which has been a re-export of time 0.1 <code>Duration</code> type) with our own definition, which exposes a strict superset of the <code>time::Duration</code> API. This helps avoid warnings about the [CVE-2020-26235] and [RUSTSEC-2020-0071] advisories for downstream users and allows us to improve the <code>Duration</code> API going forward.</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/chronotope/chrono/commit/e730c6ac45649a6a636abf30b796304bc46ecd15"><code>e730c6a</code></a> Bump version to 0.4.31</li> <li><a href="https://github.com/chronotope/chrono/commit/2afdde8f7f23f087b5027662e2882dba0663fef7"><code>2afdde8</code></a> fix: underflow during datetime->nanos conversion</li> <li><a href="https://github.com/chronotope/chrono/commit/46ad2c2b2c901eb20e43a7fca025aac02605bda4"><code>46ad2c2</code></a> Add <code>UNIX_EPOCH</code> constants</li> <li><a href="https://github.com/chronotope/chrono/commit/1df8db3a547bf50929d3d1774306f996b63e9e7c"><code>1df8db3</code></a> Add TimeZone::timestamp_micros</li> <li><a href="https://github.com/chronotope/chrono/commit/861d4e12487181e71744478a320db20f56bd61af"><code>861d4e1</code></a> Make TimeZone::timestamp_millis_opt use</li> <li><a href="https://github.com/chronotope/chrono/commit/3c4846a88235a38105a047b0acd34ce239a1cfb5"><code>3c4846a</code></a> Upgrade pure-rust-locales to 0.7.0</li> <li><a href="https://github.com/chronotope/chrono/commit/6665804676e55e9e2375eed7c10cc9e0910abf11"><code>6665804</code></a> Deny leap second if secs != 59 in <code>from_num_seconds_from_midnight_opt</code></li> <li><a href="https://github.com/chronotope/chrono/commit/61b7ffbb7a95df577c308eb0f2ab5c68e1566cf1"><code>61b7ffb</code></a> Deny leap second if secs != 59 in <code>from_hms_nano_opt</code></li> <li><a href="https://github.com/chronotope/chrono/commit/202af6cfda9bfdb195dc96377fcdeee7ed024b65"><code>202af6c</code></a> Don't generate leap seconds that are not 60 in NaiveTime's Arbitrary impl</li> <li><a href="https://github.com/chronotope/chrono/commit/60283ab55cbc9ea6caa86e19bf5da2c086cdf4bc"><code>60283ab</code></a> Don't create strange leap seconds in tests</li> <li>Additional commits viewable in <a href="https://github.com/chronotope/chrono/compare/v0.4.27...v0.4.31">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=chrono&package-manager=cargo&previous-version=0.4.27&new-version=0.4.31)](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 <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] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * pallet-asset-conversion: Decoupling Native Currency Dependancy (#2031) closes https://github.com/paritytech/polkadot-sdk/issues/1842 Decoupling Pallet from the Concept of Native Currency Currently, the pallet is intrinsically linked with the concept of native currency, requiring users to provide implementations of the `fungible::*` and `fungibles::*` traits to interact with native and non native assets. This incapsulates some non-related to the pallet complexity and makes it less adaptable in contexts where the native currency concept is absent. With this PR, the dependence on `fungible::*` for liquidity-supplying assets has been removed. Instead, the native and non-native currencies' handling is now overseen by a single type that implements the `fungibles::*` traits. To simplify this integration, types have been introduced to facilitate the creation of a union between `fungible::*` and `fungibles::*` implementations, producing a unified `fungibles::*` type. One of the reasons driving these changes is the ambition to create a more user-friendly API for the `SwapCredit` implementation. Given that it interacts with two distinct credit types from `fungible` and `fungibles`, a unified type was introduced. Clients now manage potential conversion failures for those credit types. In certain contexts, it's vital to guarantee that operations are fail-safe, like in this impl - [PR](https://github.com/paritytech/polkadot-sdk/pull/1845), place in [code](https://github.com/paritytech/polkadot-sdk/blob/20b85a5fada8f55c98ba831964f5866ffeadf4da/cumulus/primitives/utility/src/lib.rs#L429). Additional Updates: - abstracted the pool ID and its account derivation logic via trait bounds, along with common implementation offerings; - removed `inc_providers` on a pool creation for the pool account; - benchmarks: -- swap complexity is N, not const; -- removed `From<u128> + Into<u128>` bound from `T::Balance`; -- removed swap/liquidity/.. amount constants, resolve them dynamically based on pallet configuration; -- migrated to v2 API; - `OnUnbalanced` handler for the pool creation fee, replacing direct transfers to a specified account ID; - renamed `MultiAssetId` to `AssetKind` aligning with naming across frame crates; related PRs: - (depends) https://github.com/paritytech/polkadot-sdk/pull/1677 - (caused) https://github.com/paritytech/polkadot-sdk/pull/2033 - (caused) https://github.com/paritytech/polkadot-sdk/pull/1876 --------- Co-authored-by: joe petrowski <[email protected]> Co-authored-by: Liam Aharon <[email protected]> * use a single source for simple-mermaid dependency (#2760) this breaks cargo vendor which is necessary for building polkadot with nix * Add Authorize Upgrade Pattern to Frame System (#2682) Adds the `authorize_upgrade` -> `enact_authorized_upgrade` pattern to `frame-system`. This will be useful for upgrading bridged chains that are under the governance of Polkadot without passing entire runtime Wasm blobs over a bridge. Notes: - Changed `enact_authorized_upgrade` to `apply_authorized_upgrade`. Personal opinion, "apply" more accurately expresses what it's doing. Can change back if outvoted. - Remove `check_version` in favor of two extrinsics, so as to make _checked_ the default. - Left calls in `parachain-system` and marked as deprecated to prevent breaking the API. They just call into the `frame-system` functions. - Updated `frame-system` benchmarks to v2 syntax. --------- Co-authored-by: command-bot <> * Fix clippy lints behind feature gates and add new CI step all features (#2569) Many clippy lints usually enforced by `-Dcomplexity` and `-Dcorrectness` are not caught by CI as they are gated by `features`, like `runtime-benchmarks`, while the clippy CI job runs with only the default features for all targets. This PR also adds a CI step to run clippy with `--all-features` to ensure the code quality is maintained behind feature gates from now on. To improve local development, clippy lints are downgraded to warnings, but they still will result in an error at CI due to the `-Dwarnings` rustflag. --------- Co-authored-by: Liam Aharon <[email protected]> * Fix Coretime Master (#2765) Should have merged master into #2682 before merging. * Cleanup bridges tests: with-grandpa-chain case (#2763) related to https://github.com/paritytech/parity-bridges-common/issues/2739 Co-authored-by: Branislav Kontur <[email protected]> * Adds Snowbridge to Rococo runtime (#2522) # Description Adds Snowbridge to the Rococo bridge hub runtime. Includes config changes required in Rococo asset hub. --------- Co-authored-by: Alistair Singh <[email protected]> Co-authored-by: ron <[email protected]> Co-authored-by: Vincent Geddes <[email protected]> Co-authored-by: claravanstaden <Cats 4 life!> * Coretime Feature branch (relay chain) (#1694) Also fixes: https://github.com/paritytech/polkadot-sdk/issues/1417 - [x] CoreIndex -> AssignmentProvider mapping will be able to change any time. - [x] Implement - [x] Provide Migrations - [x] Add and fix tests - [x] Implement bulk assigner logic - [x] bulk assigner tests - [x] Port over current assigner to use bulk designer (+ share on-demand with bulk): top-level assigner has core ranges: legacy, bulk - [x] Adjust migrations to reflect new assigner structure - [x] Move migration code to Assignment code directly and make it recursive (make it possible to skip releases) -> follow up ticket. - [x] Test migrations - [x] Add migration PR to runtimes repo -> follow up ticket. - [x] Wire up with actual UMP messages - [x] Write PR docs --------- Co-authored-by: eskimor <[email protected]> Co-authored-by: Bradley Olson <[email protected]> Co-authored-by: BradleyOlson64 <[email protected]> Co-authored-by: Anton Vilhelm Ásgeirsson <[email protected]> Co-authored-by: antonva <[email protected]> Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Marcin S. <[email protected]> Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: command-bot <> * Cleanup bridges tests: with-parachain case (#2772) related to https://github.com/paritytech/parity-bridges-common/issues/2739 * Bump AH and BH runtime versions (#2775) After merging https://github.com/paritytech/polkadot-sdk/pull/2522 asset-hub-rococo and bridge-hub-rococo runtime versions need to be bumped for their deployment. --------- Co-authored-by: joe petrowski <[email protected]> * Try to set `beacon-spec-mainnet` as default on runtime and not binary (#2777) * frame-support: Print key as hex for corrupted state (#2779) * pallet-sudo: Accept `Root` origin as valid sudo (#2783) This changes `pallet-sudo` to also accept `Root` origin for `ensure_sudo`. This can be useful for parachains who allow the relay chain to have superuser rights to setup the sudo pallet for example. * Update Safe Call Filters (#2786) - Updates all safe call filters to allow `system::authorize_upgrade`. - Updates Coretime safe call filter to allow `sudo` and `system_set_storage`. - Update Coretime teleports to allow teleportation with other system chains. --------- Co-authored-by: Bastian Köcher <[email protected]> * Bump unsafe-libyaml from 0.2.9 to 0.2.10 (#2776) Bumps [unsafe-libyaml](https://github.com/dtolnay/unsafe-libyaml) from 0.2.9 to 0.2.10. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/dtolnay/unsafe-libyaml/releases">unsafe-libyaml's releases</a>.</em></p> <blockquote> <h2>0.2.10</h2> <ul> <li>Fix write to improperly aligned pointer in 32-bit targets (<a href="https://redirect.github.com/dtolnay/unsafe-libyaml/issues/21">#21</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/dtolnay/unsafe-libyaml/commit/61f3ab82b271ac90d6a04f65520614ca08c58abe"><code>61f3ab8</code></a> Release 0.2.10</li> <li><a href="https://github.com/dtolnay/unsafe-libyaml/commit/d90d7abc4e31d590881a055c6ade175e40cd498f"><code>d90d7ab</code></a> Clean up some redundant casts</li> <li><a href="https://github.com/dtolnay/unsafe-libyaml/commit/7755559145c9cf5573639bfecc557893d4a46b0d"><code>7755559</code></a> Merge pull request <a href="https://redirect.github.com/dtolnay/unsafe-libyaml/issues/24">#24</a> from dtolnay/mallocalign</li> <li><a href="https://github.com/dtolnay/unsafe-libyaml/commit/b8a0863c1bb2a0e1b3d226679e4a7bd31d14c2b4"><code>b8a0863</code></a> Fix insufficient alignment of malloc's return value on 32-bit</li> <li><a href="https://github.com/dtolnay/unsafe-libyaml/commit/389373f0d99dd8726eb52199e622056aa1d4ac8f"><code>389373f</code></a> Merge pull request <a href="https://redirect.github.com/dtolnay/unsafe-libyaml/issues/23">#23</a> from dtolnay/malloc</li> <li><a href="https://github.com/dtolnay/unsafe-libyaml/commit/fd41ef659dcd9eaa973771985edce227cdcfe084"><code>fd41ef6</code></a> Check arithmetic in malloc computations</li> <li><a href="https://github.com/dtolnay/unsafe-libyaml/commit/9e054fbfee5523f904bd70091170ad7a0e5402a2"><code>9e054fb</code></a> Merge pull request <a href="https://redirect.github.com/dtolnay/unsafe-libyaml/issues/22">#22</a> from dtolnay/force</li> <li><a href="https://github.com/dtolnay/unsafe-libyaml/commit/5b40a9e0edc5c5e87585d49f9fd34603c2c4742b"><code>5b40a9e</code></a> Check more arithmetic operations</li> <li><a href="https://github.com/dtolnay/unsafe-libyaml/commit/97a4332d8d5a47478e659cb9b872ed6613eee8a9"><code>97a4332</code></a> Delete cast to long followed by size_t</li> <li><a href="https://github.com/dtolnay/unsafe-libyaml/commit/e5f4bbd0f0ff8c48c8df8e88f810e5d0c4143159"><code>e5f4bbd</code></a> Clean up duplicated casting to size_t</li> <li>Additional commits viewable in <a href="https://github.com/dtolnay/unsafe-libyaml/compare/0.2.9...0.2.10">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=unsafe-libyaml&package-manager=cargo&previous-version=0.2.9&new-version=0.2.10)](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) You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/paritytech/polkadot-sdk/network/alerts). </details> Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Final nits for bridge-hub-test-utils (#2788) closes https://github.com/paritytech/parity-bridges-common/issues/2739 * incrementing sufficient accounts references with saturating_add for safety. (#2768) Even though it is difficult to overflow the sufficients variable, since an attacker that is willing to rapidly increase the number must every time deposit a minimum deposit of a given asset, it is safer to use saturating_add(). --------- Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: joe petrowski <[email protected]> * fix overflow in `balance_to_point` conversion (#2706) Closes #416 As I mentioned in the above issue `balance_to_points` conversion currently overflows the `Balance` types even before computing the actual points for the given tokens. This fixes that, * Rococo & Westend People Chain (#2281) Rococo and Westend runtimes for the "People Chain". This chain contains the Identity pallet with plans to migrate all related data from the Relay Chain. Changes `IdentityInfo` to: - Remove `additional_fields`. - Add `github` and `discord` as first class fields. From scraping chain data, these were the only two additional fields used (for the Fellowship and Ambassador Program, respectively). - Rename `riot` to `matrix`. Note: This will use the script in https://github.com/paritytech/polkadot-sdk/pull/2025 to generate the genesis state. TODO: - [x] https://github.com/paritytech/polkadot-sdk/pull/1814 and integration of the Identity Migrator pallet for migration. - [x] Tests: https://github.com/paritytech/polkadot-sdk/pull/2373 --------- Co-authored-by: Muharem <[email protected]> Co-authored-by: Michal Kucharczyk <[email protected]> Co-authored-by: Dónal Murray <[email protected]> Co-authored-by: Richard Melkonian <[email protected]> Co-authored-by: Liam Aharon <[email protected]> * Coretime: Use `Superuser` for sending the transact calls (#2793) * Improve `TryDecodeEntireState` output (#2724) Found some areas for improvement while working on https://github.com/polkadot-fellows/runtimes/pull/122. ## Improvements - If multiple keys in a storage item (e.g. a map) are undecodable, return all the undecodable keys rather than only the first one found - Include the key of the undecodable storage in the INFO log - Write output as hex string where appropriate - Write INFO log on successful decoding * Remove rustdocs allowances (#2797) Closes https://github.com/paritytech/polkadot-sdk-docs/issues/65 * Update rust docs link in README.md (#2794) Co-authored-by: Liam Aharon <[email protected]> * Fix typo in comments (#2807) fix typos in the comments of `pallet-broker` * xcm: Improve debuggability (#2799) Adds more logging to the XCM execution for better debugging. * Saner weights + lease calcuation fix. (#2778) And have proper benchmarks. --------- Co-authored-by: eskimor <[email protected]> Co-authored-by: command-bot <> Co-authored-by: joe petrowski <[email protected]> * BEEFY: Support compatibility with Warp Sync - Allow Warp Sync for Validators (#2689) Resolves https://github.com/paritytech/polkadot-sdk/issues/2627 Initializes voter _after_ headers sync finishes in the background. This enables the BEEFY gadget to work with `--sync warp` (GRANDPA warp sync). Co-authored-by: Adrian Catangiu <[email protected]> * Fix slot_duration divide by zero panic in rococo-parachain runtime (#2612) Adds the fix in https://github.com/paritytech/polkadot-sdk/pull/2039 to the rococo-parachain runtime. * Bump the known_good_semver group with 2 updates (#2810) Bumps the known_good_semver group with 2 updates: [syn](https://github.com/dtolnay/syn) and [serde_yaml](https://github.com/dtolnay/serde-yaml). Updates `syn` from 2.0.41 to 2.0.43 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/dtolnay/syn/releases">syn's releases</a>.</em></p> <blockquote> <h2>2.0.43</h2> <ul> <li>Insert trailing comma if not already present when printing a 1-tuple in pattern position (<a href="https://redirect.github.com/dtolnay/syn/issues/1553">#1553</a>)</li> </ul> <h2>2.0.42</h2> <ul> <li>Documentation improvements</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/dtolnay/syn/commit/95ee05214030f936b8db3ee295188d5dc2c89621"><code>95ee052</code></a> Release 2.0.43</li> <li><a href="https://github.com/dtolnay/syn/commit/7383e81b1ab6f9983692ebd9d6caa54aeff8fb85"><code>7383e81</code></a> Merge pull request <a href="https://redirect.github.com/dtolnay/syn/issues/1559">#1559</a> from dtolnay/pattuple</li> <li><a href="https://github.com/dtolnay/syn/commit/712fde5a6fce0e7bee3615ab5c7545ce442bf034"><code>712fde5</code></a> Fix ToTokens for PatTuple to insert trailing comma</li> <li><a href="https://github.com/dtolnay/syn/commit/ed9b94e3395cffb33db4254439e23dbc3a2e9e43"><code>ed9b94e</code></a> Merge pull request <a href="https://redirect.github.com/dtolnay/syn/issues/1558">#1558</a> from dtolnay/tupletests</li> <li><a href="https://github.com/dtolnay/syn/commit/ec8517b33c137c48c38b74ba5be21815763a50f5"><code>ec8517b</code></a> Add tuple comma tests</li> <li><a href="https://github.com/dtolnay/syn/commit/3cf16c76bdbe4e16261a167592a77edab853c6aa"><code>3cf16c7</code></a> Merge pull request <a href="https://redirect.github.com/dtolnay/syn/issues/1557">#1557</a> from dtolnay/snapshotparsequote</li> <li><a href="https://github.com/dtolnay/syn/commit/553549ff12358a6ad95baaed2601a9dab541d693"><code>553549f</code></a> Generalize snapshot parsing to types that do not implement Parse</li> <li><a href="https://github.com/dtolnay/syn/commit/f9ad833e4a77c61003861f4e14d16b10b9708f9e"><code>f9ad833</code></a> Merge pull request <a href="https://redirect.github.com/dtolnay/syn/issues/1556">#1556</a> from dtolnay/punctuatedsnapshot</li> <li><a href="https://github.com/dtolnay/syn/commit/131b40ba2904ec8755bb34466f369072dc34d588"><code>131b40b</code></a> Debug impl for punctuated::Pairs superseded by Punctuated</li> <li><a href="https://github.com/dtolnay/syn/commit/3f12d652a8871955a7e27e0369933288bc387dd5"><code>3f12d65</code></a> Include punctuation tokens in snapshot tests containing Punctuated</li> <li>Additional commits viewable in <a href="https://github.com/dtolnay/syn/compare/2.0.41...2.0.43">compare view</a></li> </ul> </details> <br /> Updates `serde_yaml` from 0.9.27 to 0.9.29 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/dtolnay/serde-yaml/releases">serde_yaml's releases</a>.</em></p> <blockquote> <h2>0.9.29</h2> <ul> <li>Turn on <code>deny(unsafe_op_in_unsafe_fn)</code> lint</li> </ul> <h2>0.9.28</h2> <ul> <li>Update <code>unsafe-libyaml</code> dependency to pull in unaligned write fix</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/dtolnay/serde-yaml/commit/b957d2b15d7f3d96279997800fa0610b41b8fe00"><code>b957d2b</code></a> Release 0.9.29</li> <li><a href="https://github.com/dtolnay/serde-yaml/commit/007fc2d5c1987847a0f1ac95885c56f8e6e5f808"><code>007fc2d</code></a> Merge pull request <a href="https://redirect.github.com/dtolnay/serde-yaml/issues/401">#401</a> from dtolnay/unsafeop</li> <li><a href="https://github.com/dtolnay/serde-yaml/commit/5bac2475b0017d6a635d641df17165d71b951f0e"><code>5bac247</code></a> Fill in unsafe blocks inside unsafe functions</li> <li><a href="https://github.com/dtolnay/serde-yaml/commit/0f6dba18ab8db598c4963e9242afd490ee0202f0"><code>0f6dba1</code></a> Turn on deny(unsafe_op_in_unsafe_fn)</li> <li><a href="https://github.com/dtolnay/serde-yaml/commit/1b6e44837f0db0a1c15537311fed3579a7e8c6d2"><code>1b6e448</code></a> Release 0.9.28</li> <li><a href="https://github.com/dtolnay/serde-yaml/commit/ec1a3145d7b6b809f7b3aa2d9dcd7db30f0588d4"><code>ec1a314</code></a> Force unsafe-libyaml version that contains unaligned write fix</li> <li><a href="https://github.com/dtolnay/serde-yaml/commit/a6b2dc075a6eb1bed0d927df7b7ac2bb288f3bb4"><code>a6b2dc0</code></a> Update name of blocks_in_if_conditions clippy lint</li> <li>See full diff in <a href="https://github.com/dtolnay/serde-yaml/compare/0.9.27...0.9.29">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] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Remove unused pallet-contracts-primitives (#2806) * Broker pallet: fix interlacing (#2811) With the current code, when a user interlaces their region, the end result will be three regions in the state: - the non-interlaced region - first part of the interlaced region - second part of the interlaced region The existing implementation retains the non-interlaced region in the state, leading to a problematic scenario: 1. User 1 acquires a region from the market. 2. User 1 then interlaces this region. 3. Subsequently, User 1 transfers one part of the interlaced regions to User 2. Despite this transfer, User 1 retains the ability to assign the entire original non-interlaced region, which is inconsistent with the fact that they no longer own one of the interlaced parts. This PR resolves the issue by removing the original region, ensuring that only the two new interlaced regions remain in the state. * Development Environment Advice Reference Doc (#2759) Closes https://github.com/paritytech/polkadot-sdk-docs/issues/63 --------- Co-authored-by: Dónal Murray <[email protected]> Co-authored-by: PG Herveou <[email protected]> Co-authored-by: joe petrowski <[email protected]> * PVF: ensure job processes are cleaned up, add tests (#2643) Fixes a potential memory leak. `PR_SET_PDEATHSIG` is used to terminate children when the parent dies. Note that this is subject to a race. There seems to be a raceless alternative [here](https://stackoverflow.com/a/42498370/6085242), but the concern is small enough that a bit more complexity doesn't seem worth it. Left a bit more info in the code comment. * core-fellowship: allow infinite demotion period (#2828) * Extract PartialComponents into a type alias (#2767) Pulling PartialComponents into a named `Service` type stops clippy complaining about type complexity and also makes the type signatures a little less scary to read. There's two instances where we can't pull it out into a type because a nightly feature has not yet been stabilised (E.g. the `imp Fn` isn't stabilised in a type alias context here: https://github.com/paritytech/polkadot-sdk/blob/d84e135bbfc366a17bb6b72d0fc9d09ee781ab8d/polkadot/node/service/src/lib.rs#L477 ). --------- Co-authored-by: Bastian Köcher <[email protected]> * malus: use spawn_blocking (#2804) Looks like using `spawn` instead of `spawn_blocking` in malus is leading to a deadlock somehow. I'm not sure why exactly, but switching to `spawn_blocking` fixes https://github.com/paritytech/disabling-e2e-tests/issues/1, at least for `suggest-garbage-candidate` (didn't check other variants). Maybe my assumption here was wrong: https://github.com/paritytech/polkadot-sdk/pull/2184#discussion_r1403587674. --------- Co-authored-by: Tsvetomir Dimitrov <[email protected]> * Implement only sending one notification at a time as per RFC 56 (#2813) cc https://github.com/paritytech/polkadot-sdk/issues/2812 cc https://github.com/polkadot-fellows/RFCs/pull/56 Since this is a one line of code change, and for the sake of this not taking six months to be done, I've opted to open a PR myself. --------- Co-authored-by: Aaro Altonen <[email protected]> * Finish up polkadot doc (#2798) Closes https://github.com/paritytech/polkadot-sdk-docs/issues/66 * Bump chevdor/srtool-actions from 0.9.1 to 0.9.2 (#2840) Bumps [chevdor/srtool-actions](https://github.com/chevdor/srtool-actions) from 0.9.1 to 0.9.2. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/chevdor/srtool-actions/commit/48e9baed50ca414936dfac59d34d8b9bbe581abd"><code>48e9bae</code></a> Remove extra quotes</li> <li>See full diff in <a href="https://github.com/chevdor/srtool-actions/compare/v0.9.1...v0.9.2">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=chevdor/srtool-actions&package-manager=github_actions&previous-version=0.9.1&new-version=0.9.2)](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] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Upgrade @polkadot/api and @polkadot/util package version to latest (#2821) Otherwise I'm getting this error: https://github.com/polkadot-js/api/pull/4952/files#diff-4cab1e3a83a624e52dc0c30047addb28184fdceac6acb930787af9c3aac50706L668 when running `./cumulus/scripts/bridges_rococo_westend.sh init-bridge-hub-rococo-local` - guess it is related to recent Snowbridge merge? * Bump the known_good_semver group with 4 updates (#2845) Bumps the known_good_semver group with 4 updates: [serde](https://github.com/serde-rs/serde), [serde_json](https://github.com/serde-rs/json), [clap](https://github.com/clap-rs/clap) and [serde_yaml](https://github.com/dtolnay/serde-yaml). Updates `serde` from 1.0.193 to 1.0.194 <details> <summary>Rele…
This PR includes the following 2 improvements: ## Ethereum Client Author: @yrong ### Original Upstream PRs - Snowfork#123 - Snowfork#125 ### Description The Ethereum client syncs beacon headers as they are finalized, and imports every execution header. When a message is received, it is verified against the import execution header. This is unnecessary, since the execution header can be sent with the message as proof. The recent Deneb Ethereum upgrade made it easier to locate the relevant beacon header from an execution header, and so this improvement was made possible. This resolves a concern @svyatonik had in our initial Rococo PR: #2522 (comment) ## Inbound Queue Author: @yrong ### Original Upstream PR - Snowfork#118 ### Description When the AH sovereign account (who pays relayer rewards) is depleted, the inbound message will not fail. The relayer just will not receive rewards. Both these changes were done by @yrong, many thanks. ❤️ --------- Co-authored-by: claravanstaden <Cats 4 life!> Co-authored-by: Ron <[email protected]> Co-authored-by: Vincent Geddes <[email protected]> Co-authored-by: Svyatoslav Nikolsky <[email protected]>
This PR includes the following 2 improvements: ## Ethereum Client Author: @yrong ### Original Upstream PRs - Snowfork#123 - Snowfork#125 ### Description The Ethereum client syncs beacon headers as they are finalized, and imports every execution header. When a message is received, it is verified against the import execution header. This is unnecessary, since the execution header can be sent with the message as proof. The recent Deneb Ethereum upgrade made it easier to locate the relevant beacon header from an execution header, and so this improvement was made possible. This resolves a concern @svyatonik had in our initial Rococo PR: #2522 (comment) ## Inbound Queue Author: @yrong ### Original Upstream PR - Snowfork#118 ### Description When the AH sovereign account (who pays relayer rewards) is depleted, the inbound message will not fail. The relayer just will not receive rewards. Both these changes were done by @yrong, many thanks. ❤️ --------- Co-authored-by: claravanstaden <Cats 4 life!> Co-authored-by: Ron <[email protected]> Co-authored-by: Vincent Geddes <[email protected]> Co-authored-by: Svyatoslav Nikolsky <[email protected]>
This PR includes the following 2 improvements: ## Ethereum Client Author: @yrong ### Original Upstream PRs - Snowfork#123 - Snowfork#125 ### Description The Ethereum client syncs beacon headers as they are finalized, and imports every execution header. When a message is received, it is verified against the import execution header. This is unnecessary, since the execution header can be sent with the message as proof. The recent Deneb Ethereum upgrade made it easier to locate the relevant beacon header from an execution header, and so this improvement was made possible. This resolves a concern @svyatonik had in our initial Rococo PR: paritytech#2522 (comment) ## Inbound Queue Author: @yrong ### Original Upstream PR - Snowfork#118 ### Description When the AH sovereign account (who pays relayer rewards) is depleted, the inbound message will not fail. The relayer just will not receive rewards. Both these changes were done by @yrong, many thanks. ❤️ --------- Co-authored-by: claravanstaden <Cats 4 life!> Co-authored-by: Ron <[email protected]> Co-authored-by: Vincent Geddes <[email protected]> Co-authored-by: Svyatoslav Nikolsky <[email protected]>
* Fix clippy lints behind feature gates and add new CI step all features (#2569) Many clippy lints usually enforced by `-Dcomplexity` and `-Dcorrectness` are not caught by CI as they are gated by `features`, like `runtime-benchmarks`, while the clippy CI job runs with only the default features for all targets. This PR also adds a CI step to run clippy with `--all-features` to ensure the code quality is maintained behind feature gates from now on. To improve local development, clippy lints are downgraded to warnings, but they still will result in an error at CI due to the `-Dwarnings` rustflag. --------- Co-authored-by: Liam Aharon <[email protected]> * Cleanup bridges tests: with-grandpa-chain case (#2763) related to paritytech/parity-bridges-common#2739 Co-authored-by: Branislav Kontur <[email protected]> * Adds Snowbridge to Rococo runtime (#2522) # Description Adds Snowbridge to the Rococo bridge hub runtime. Includes config changes required in Rococo asset hub. --------- Co-authored-by: Alistair Singh <[email protected]> Co-authored-by: ron <[email protected]> Co-authored-by: Vincent Geddes <[email protected]> Co-authored-by: claravanstaden <Cats 4 life!> * Bump the known_good_semver group with 4 updates (#2845) Bumps the known_good_semver group with 4 updates: [serde](https://github.com/serde-rs/serde), [serde_json](https://github.com/serde-rs/json), [clap](https://github.com/clap-rs/clap) and [serde_yaml](https://github.com/dtolnay/serde-yaml). Updates `serde` from 1.0.193 to 1.0.194 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/serde-rs/serde/releases">serde's releases</a>.</em></p> <blockquote> <h2>v1.0.194</h2> <ul> <li>Update proc-macro2 to fix caching issue when using a rustc-wrapper such as sccache</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/serde-rs/serde/commit/d2d977a6c6dcff237ae956336d18b0c900c61aad"><code>d2d977a</code></a> Release 1.0.194</li> <li><a href="https://github.com/serde-rs/serde/commit/a9a6ee9d7f2e3a3306ad7c7a8f21dcf369c6acb7"><code>a9a6ee9</code></a> Pull in proc-macro2 sccache fix</li> <li><a href="https://github.com/serde-rs/serde/commit/28c5d215c11b66368b725f04cb92e49e4350bcdc"><code>28c5d21</code></a> Merge pull request <a href="https://redirect.github.com/serde-rs/serde/issues/2669">#2669</a> from dtolnay/optionifletelse</li> <li><a href="https://github.com/serde-rs/serde/commit/3d6a789562579fb7ea783e0d7f35530914d8baca"><code>3d6a789</code></a> Remove option_if_let_else clippy suppression</li> <li><a href="https://github.com/serde-rs/serde/commit/a0e68698e33fa928f1d9f208d68b17df9f8bb568"><code>a0e6869</code></a> Work around doc_link_with_quotes pedantic clippy lint</li> <li>See full diff in <a href="https://github.com/serde-rs/serde/compare/v1.0.193...v1.0.194">compare view</a></li> </ul> </details> <br /> Updates `serde_json` from 1.0.108 to 1.0.110 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/serde-rs/json/releases">serde_json's releases</a>.</em></p> <blockquote> <h2>v1.0.109</h2> <ul> <li>Documentation improvements</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/serde-rs/json/commit/df5cf215b70fb6341b255e7c0a210c06f64c0669"><code>df5cf21</code></a> Release 1.0.110</li> <li><a href="https://github.com/serde-rs/json/commit/c35856a93c37b48b3d6efc4fec8e05554dd3f9d5"><code>c35856a</code></a> Pull in proc-macro2 sccache fix</li> <li><a href="https://github.com/serde-rs/json/commit/f88bf1fccb05aa4de129675de44eb6aaf3fec0a0"><code>f88bf1f</code></a> Release 1.0.109</li> <li><a href="https://github.com/serde-rs/json/commit/bb62c73ecef901e689b0a7a67ed613a32975520c"><code>bb62c73</code></a> Merge pull request <a href="https://redirect.github.com/serde-rs/json/issues/1097">#1097</a> from serde-rs/doccfg</li> <li><a href="https://github.com/serde-rs/json/commit/df36d109fd9f9cdd22a874c0177cafec12237f95"><code>df36d10</code></a> Restore doc cfg on re-exports</li> <li><a href="https://github.com/serde-rs/json/commit/c3670913423329c166add9d85ecdfc3e3da21e7a"><code>c367091</code></a> Merge pull request <a href="https://redirect.github.com/serde-rs/json/issues/1095">#1095</a> from dtolnay/hashtest</li> <li><a href="https://github.com/serde-rs/json/commit/b328ee7df4dd772922f084600aa7cea39218b694"><code>b328ee7</code></a> Eliminate hash closure in favor of calling hash_one directly</li> <li><a href="https://github.com/serde-rs/json/commit/b9bcbad3c094042f79f1a45189ec0edbb8f9f322"><code>b9bcbad</code></a> Use BuildHasher::hash_one</li> <li><a href="https://github.com/serde-rs/json/commit/7ff6c9e30c2ecc2cdcf089ed86c7ccfe7a41721c"><code>7ff6c9e</code></a> Use random hasher state for number hashing test</li> <li><a href="https://github.com/serde-rs/json/commit/fe031cd1de4dde5b47e0f18934632b41bd18b48d"><code>fe031cd</code></a> Delete trace_macros! functionality from test</li> <li>Additional commits viewable in <a href="https://github.com/serde-rs/json/compare/v1.0.108...v1.0.110">compare view</a></li> </ul> </details> <br /> Updates `clap` from 4.4.11 to 4.4.12 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/clap-rs/clap/releases">clap's releases</a>.</em></p> <blockquote> <h2>v4.4.12</h2> <h2>[4.4.12] - 2023-12-28</h2> <h3>Performance</h3> <ul> <li>Only ask <code>TypedValueParser</code> for possible values if needed</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's changelog</a>.</em></p> <blockquote> <h2>[4.4.12] - 2023-12-28</h2> <h3>Performance</h3> <ul> <li>Only ask <code>TypedValueParser</code> for possible values if needed</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/clap-rs/clap/commit/6d601e6f312857d78f47741268f1748840484d4a"><code>6d601e6</code></a> chore: Release</li> <li><a href="https://github.com/clap-rs/clap/commit/048e7f0fbc4f8108894e4307af768c8d332a0576"><code>048e7f0</code></a> docs: Update changelog</li> <li><a href="https://github.com/clap-rs/clap/commit/53f5b820988c1c03f0d2696fc144857ad461edc1"><code>53f5b82</code></a> Merge pull request <a href="https://redirect.github.com/clap-rs/clap/issues/5267">#5267</a> from vermiculus/sa/avoid-pv-expansion-in-help</li> <li><a href="https://github.com/clap-rs/clap/commit/05cd057978db743a65fb5fde33213af752d064e7"><code>05cd057</code></a> perf: Avoid retrieving possible_values unless used</li> <li><a href="https://github.com/clap-rs/clap/commit/29208083b0598ba7d1b80e79821c0ba3eb2342ce"><code>2920808</code></a> test: Update snapshots</li> <li><a href="https://github.com/clap-rs/clap/commit/28763ebb6d8714f6ca588bf477729040e0e760b0"><code>28763eb</code></a> chore: Release</li> <li><a href="https://github.com/clap-rs/clap/commit/ace7bb5b4570b030f7c2d0fa91e0afaaac1b0030"><code>ace7bb5</code></a> docs(complete): Update changelog</li> <li><a href="https://github.com/clap-rs/clap/commit/76beca4d4d42a817bbb578f23553c64ded2aea97"><code>76beca4</code></a> docs(complete): Polish API reference for dynamic</li> <li><a href="https://github.com/clap-rs/clap/commit/3630e582d3ec59912b8e9369c38687695ddb1f43"><code>3630e58</code></a> Merge pull request <a href="https://redirect.github.com/clap-rs/clap/issues/5273">#5273</a> from epage/docsrs</li> <li><a href="https://github.com/clap-rs/clap/commit/3724b9e2e4c2a2e69337b6d809949b246d3fef39"><code>3724b9e</code></a> docs: Include more content on docs.rs</li> <li>See full diff in <a href="https://github.com/clap-rs/clap/compare/v4.4.11...v4.4.12">compare view</a></li> </ul> </details> <br /> Updates `serde_yaml` from 0.9.29 to 0.9.30 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/dtolnay/serde-yaml/releases">serde_yaml's releases</a>.</em></p> <blockquote> <h2>0.9.30</h2> <ul> <li>Update proc-macro2 to fix caching issue when using a rustc-wrapper such as sccache</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/dtolnay/serde-yaml/commit/09ee25156f608f95150b27edd120bd5471db3c64"><code>09ee251</code></a> Release 0.9.30</li> <li><a href="https://github.com/dtolnay/serde-yaml/commit/caea939ece85ab54ac41de0672d683905f1e406a"><code>caea939</code></a> Pull in proc-macro2 sccache fix</li> <li><a href="https://github.com/dtolnay/serde-yaml/commit/d255918c141fd72d01f169bb5aa0152234981699"><code>d255918</code></a> Merge pull request <a href="https://redirect.github.com/dtolnay/serde-yaml/issues/403">#403</a> from dtolnay/optionifletelse</li> <li><a href="https://github.com/dtolnay/serde-yaml/commit/8cfeedd766f83dab24d03b9fb11b72886a247425"><code>8cfeedd</code></a> Remove option_if_let_else clippy suppression</li> <li>See full diff in <a href="https://github.com/dtolnay/serde-yaml/compare/0.9.29...0.9.30">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] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Fix clippy warnings (#2861) Fix some issues reported by clippy * Bump the known_good_semver group with 4 updates (#2865) Bumps the known_good_semver group with 4 updates: [serde](https://github.com/serde-rs/serde), [serde_json](https://github.com/serde-rs/json), [clap](https://github.com/clap-rs/clap) and [syn](https://github.com/dtolnay/syn). Updates `serde` from 1.0.194 to 1.0.195 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/serde-rs/serde/releases">serde's releases</a>.</em></p> <blockquote> <h2>v1.0.195</h2> <ul> <li>Prevent remote definitions of tuple struct or tuple variant from triggering dead_code warning (<a href="https://redirect.github.com/serde-rs/serde/issues/2671">#2671</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/serde-rs/serde/commit/03eec42c3313b36da416be1486e9ecac345784d5"><code>03eec42</code></a> Release 1.0.195</li> <li><a href="https://github.com/serde-rs/serde/commit/196f311ae2fd8ad94fe38a57830419859a4d3dbb"><code>196f311</code></a> Merge pull request <a href="https://redirect.github.com/serde-rs/serde/issues/2671">#2671</a> from dtolnay/deadremote</li> <li><a href="https://github.com/serde-rs/serde/commit/38d9e0b2091e9b6150486c2c37367819b86bcc39"><code>38d9e0b</code></a> Revert "Add FIXME to fix dead_code warning when using serde(remote)"</li> <li><a href="https://github.com/serde-rs/serde/commit/6502b3131697eff6420786ad71f87f29cfff3a13"><code>6502b31</code></a> Fix new dead_code warning in tuple struct and tuple variant remote defs</li> <li><a href="https://github.com/serde-rs/serde/commit/6f1a8c3115c8d2502178c25d610fbaee2e82c46b"><code>6f1a8c3</code></a> Add FIXME to fix dead_code warning when using serde(remote)</li> <li><a href="https://github.com/serde-rs/serde/commit/d883c94cc9fe72d0512dc7f4def7191a401595c9"><code>d883c94</code></a> Work around dead_code warning in tests</li> <li><a href="https://github.com/serde-rs/serde/commit/961fa59a7469c5b5e323b9723323df412048d60d"><code>961fa59</code></a> Merge pull request <a href="https://redirect.github.com/serde-rs/serde/issues/2670">#2670</a> from serde-rs/exhaustive</li> <li><a href="https://github.com/serde-rs/serde/commit/8bc71def551df190e6817d3311e5c76f751f53e6"><code>8bc71de</code></a> Fill in omitted patterns for GenericArguments match</li> <li><a href="https://github.com/serde-rs/serde/commit/7c65a9dc0eab2d4d829b258a7b3549351bbe8dcd"><code>7c65a9d</code></a> Pick up changes to non_exhaustive_omitted_patterns lint</li> <li>See full diff in <a href="https://github.com/serde-rs/serde/compare/v1.0.194...v1.0.195">compare view</a></li> </ul> </details> <br /> Updates `serde_json` from 1.0.110 to 1.0.111 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/serde-rs/json/releases">serde_json's releases</a>.</em></p> <blockquote> <h2>v1.0.111</h2> <ul> <li>Improve floating point parsing performance on loongarch64 (<a href="https://redirect.github.com/serde-rs/json/issues/1100">#1100</a>, thanks <a href="https://github.com/heiher"><code>@heiher</code></a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/serde-rs/json/commit/0131ac68212e8094bd14ee618587d731b4f9a68b"><code>0131ac6</code></a> Release 1.0.111</li> <li><a href="https://github.com/serde-rs/json/commit/96ecfadd3f7dd6366a2d07a098e228d15df93cb4"><code>96ecfad</code></a> Merge pull request <a href="https://redirect.github.com/serde-rs/json/issues/1100">#1100</a> from heiher/limb-64-la64</li> <li><a href="https://github.com/serde-rs/json/commit/c80dbaf8ff5902ca670e0a48bbe495065b9314f5"><code>c80dbaf</code></a> Set limb width to 64 for loongarch64</li> <li>See full diff in <a href="https://github.com/serde-rs/json/compare/v1.0.110...v1.0.111">compare view</a></li> </ul> </details> <br /> Updates `clap` from 4.4.12 to 4.4.13 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/clap-rs/clap/releases">clap's releases</a>.</em></p> <blockquote> <h2>v4.4.13</h2> <h2>[4.4.13] - 2024-01-04</h2> <h3>Documentation</h3> <ul> <li>Fix link to structopt migration guide</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's changelog</a>.</em></p> <blockquote> <h2>[4.4.13] - 2024-01-04</h2> <h3>Documentation</h3> <ul> <li>Fix link to structopt migration guide</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/clap-rs/clap/commit/2ab48b295c2463ce8c141a9868095b811ccf3b99"><code>2ab48b2</code></a> chore: Release</li> <li><a href="https://github.com/clap-rs/clap/commit/7a06a8cd619db704c6d826bf752eae3b86ce23a8"><code>7a06a8c</code></a> docs: Update changelog</li> <li><a href="https://github.com/clap-rs/clap/commit/cca190efedf40f48147a3a4a777a9cc17728abdf"><code>cca190e</code></a> docs: Correct link to StructOpt migration guide</li> <li><a href="https://github.com/clap-rs/clap/commit/5c31f453c1a9f46109db8e0a47ed212748c0556c"><code>5c31f45</code></a> Merge pull request <a href="https://redirect.github.com/clap-rs/clap/issues/5281">#5281</a> from Manishearth/safety-docs</li> <li><a href="https://github.com/clap-rs/clap/commit/ddae7e6f411c4c87294212152b8d9beea16637e7"><code>ddae7e6</code></a> Correct safety docs</li> <li><a href="https://github.com/clap-rs/clap/commit/48d28aa689bfd0fb44ec025244b30ba261e2515a"><code>48d28aa</code></a> chore: Release</li> <li><a href="https://github.com/clap-rs/clap/commit/748ce18cc2ccc3f7c07fa8b7c5b6f90ed9242b72"><code>748ce18</code></a> docs: Update changelog</li> <li><a href="https://github.com/clap-rs/clap/commit/adbe6ec4cb6a617070c41927a389d0bea7b30936"><code>adbe6ec</code></a> Merge pull request <a href="https://redirect.github.com/clap-rs/clap/issues/5278">#5278</a> from henry-hsieh/fix-nosort</li> <li><a href="https://github.com/clap-rs/clap/commit/2b48858ba84c62e9af97bee4734d70530254cd8a"><code>2b48858</code></a> fix: Skip nosort option below bash 4.4</li> <li><a href="https://github.com/clap-rs/clap/commit/777b744102cde324dc75534ef043efc15a9f40be"><code>777b744</code></a> Merge pull request <a href="https://redirect.github.com/clap-rs/clap/issues/5277">#5277</a> from clap-rs/renovate/actions-setup-python-5.x</li> <li>Additional commits viewable in <a href="https://github.com/clap-rs/clap/compare/v4.4.12...v4.4.13">compare view</a></li> </ul> </details> <br /> Updates `syn` from 2.0.47 to 2.0.48 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/dtolnay/syn/releases">syn's releases</a>.</em></p> <blockquote> <h2>2.0.48</h2> <ul> <li>Improve error message on unexpected token after <code>else</code> (<a href="https://redirect.github.com/dtolnay/syn/issues/1578">#1578</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/dtolnay/syn/commit/5e16fc24e68b16a381cb7ef22455dba9db143083"><code>5e16fc2</code></a> Release 2.0.48</li> <li><a href="https://github.com/dtolnay/syn/commit/dc40084b15ab4a443179fc39cbadac6452408838"><code>dc40084</code></a> Merge pull request <a href="https://redirect.github.com/dtolnay/syn/issues/1578">#1578</a> from dtolnay/elseblock</li> <li><a href="https://github.com/dtolnay/syn/commit/82fcefce69d36e78301936c5af91f005d6a24357"><code>82fcefc</code></a> Fix error message on unexpected token after 'else'</li> <li><a href="https://github.com/dtolnay/syn/commit/e8a5c68ad45194e575a923f6b1e08f1817196331"><code>e8a5c68</code></a> Merge pull request <a href="https://redirect.github.com/dtolnay/syn/issues/1576">#1576</a> from dtolnay/exhaustive</li> <li><a href="https://github.com/dtolnay/syn/commit/97b1df6d935cb4801f4090782304577c8574d024"><code>97b1df6</code></a> Pick up changes to non_exhaustive_omitted_patterns lint</li> <li>See full diff in <a href="https://github.com/dtolnay/syn/compare/2.0.47...2.0.48">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] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Snowbridge Rococo deployment updates (#2792) - Includes the introduction of the `fast-runtime` feature, which cleans up our features - Updates beacon client fork versions config to Sepolia's versions - Cleanup of AgentIdOf --------- Co-authored-by: Ron <[email protected]> Co-authored-by: claravanstaden <Cats 4 life!> * Update Snowbridge versions and prep for publishing (#2894) - updates snowbridge crates to `0.9.0` - updates Cargo.toml files in preparation for publishing to crates.io - adds Kusama and Polkadot Snowbridge runtime config crates - moves runtime tests from the Snowbridge subtree into the bridge hub tests dir --------- Co-authored-by: claravanstaden <Cats 4 life!> Co-authored-by: Ron <[email protected]> * Run bridges zombienet tests on CI (#2439) Brridges zombienet tests are non-standard - zombienet currently missing multiple relay chains support (see e.g. paritytech/zombienet#796), so we need to go live with two relay networks, their parachains + custom test runner (which e.g. doesn't shutdown net when its tests are finished and instead waits for both networks tests to complete). So we are stuck with native zombienet provider => this PR is an attempt to gather everything in a single docker container and run tests there ~Draft, because it is far from finishing - what I want now is to see how it works on CI~ * XCMv4 (#1230) # Note for reviewer Most changes are just syntax changes necessary for the new version. Most important files should be the ones under the `xcm` folder. # Description Added XCMv4. ## Removed `Multi` prefix The following types have been renamed: - MultiLocation -> Location - MultiAsset -> Asset - MultiAssets -> Assets - InteriorMultiLocation -> InteriorLocation - MultiAssetFilter -> AssetFilter - VersionedMultiAsset -> VersionedAsset - WildMultiAsset -> WildAsset - VersionedMultiLocation -> VersionedLocation In order to fix a name conflict, the `Assets` in `xcm-executor` were renamed to `HoldingAssets`, as they represent assets in holding. ## Removed `Abstract` asset id It was not being used anywhere and this simplifies the code. Now assets are just constructed as follows: ```rust let asset: Asset = (AssetId(Location::new(1, Here)), 100u128).into(); ``` No need for specifying `Concrete` anymore. ## Outcome is now a named fields struct Instead of ```rust pub enum Outcome { Complete(Weight), Incomplete(Weight, Error), Error(Error), } ``` we now have ```rust pub enum Outcome { Complete { used: Weight }, Incomplete { used: Weight, error: Error }, Error { error: Error }, } ``` ## Added Reanchorable trait Now both locations and assets implement this trait, making it easier to reanchor both. ## New syntax for building locations and junctions Now junctions are built using the following methods: ```rust let location = Location { parents: 1, interior: [Parachain(1000), PalletInstance(50), GeneralIndex(1984)].into() }; ``` or ```rust let location = Location::new(1, [Parachain(1000), PalletInstance(50), GeneralIndex(1984)]); ``` And they are matched like so: ```rust match location.unpack() { (1, [Parachain(id)]) => ... (0, Here) => ..., (1, [_]) => ..., } ``` This syntax is mandatory in v4, and has been also implemented for v2 and v3 for easier migration. This was needed to make all sizes smaller. # TODO - [x] Scaffold v4 - [x] Port github.com/paritytech/polkadot/pull/7236 - [x] Remove `Multi` prefix - [x] Remove `Abstract` asset id --------- Co-authored-by: command-bot <> Co-authored-by: Keith Yeung <[email protected]> * Fix typos (#2983) * Update polkadot-sdk refs * Update deprecated struct * Remove snowbridge folder * Westend/Rococo Asset Hub: pay xcm fees with sufficient assets (#2978) Set up the `TakeFirstAssetTrader` trader for Westend and Rococo Asset Hubs to cover XCM fees with sufficient assets. This PR reintroduces previously [removed](#1845) trader setups, as it was decided to keep both traders, `TakeFirstAssetTrader` and `SwapFirstAssetTrader`, during the transition period. --------- Co-authored-by: Svyatoslav Nikolsky <[email protected]> --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: Dónal Murray <[email protected]> Co-authored-by: Liam Aharon <[email protected]> Co-authored-by: Svyatoslav Nikolsky <[email protected]> Co-authored-by: Branislav Kontur <[email protected]> Co-authored-by: Clara van Staden <[email protected]> Co-authored-by: Alistair Singh <[email protected]> Co-authored-by: ron <[email protected]> Co-authored-by: Vincent Geddes <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Tsvetomir Dimitrov <[email protected]> Co-authored-by: Francisco Aguirre <[email protected]> Co-authored-by: Keith Yeung <[email protected]> Co-authored-by: cristiantroy <[email protected]> Co-authored-by: Muharem <[email protected]>
This PR includes the following 2 improvements: Author: @yrong - #123 - #125 The Ethereum client syncs beacon headers as they are finalized, and imports every execution header. When a message is received, it is verified against the import execution header. This is unnecessary, since the execution header can be sent with the message as proof. The recent Deneb Ethereum upgrade made it easier to locate the relevant beacon header from an execution header, and so this improvement was made possible. This resolves a concern @svyatonik had in our initial Rococo PR: paritytech#2522 (comment) Author: @yrong - #118 When the AH sovereign account (who pays relayer rewards) is depleted, the inbound message will not fail. The relayer just will not receive rewards. Both these changes were done by @yrong, many thanks. ❤️ --------- Co-authored-by: claravanstaden <Cats 4 life!> Co-authored-by: Ron <[email protected]> Co-authored-by: Vincent Geddes <[email protected]> Co-authored-by: Svyatoslav Nikolsky <[email protected]>
Description
Adds Snowbridge to the Rococo bridge hub runtime. Includes config changes required in Rococo asset hub.