- Jan 16, 2024
-
-
Francisco Aguirre authored
# 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]>
-
Andrei Eres authored
## Why we need it To provide another level of understanding to why polkadot's subsystems may perform slower than expected. Cache misses occur when processing large amounts of data, such as during availability recovery. ## Why Cachegrind Cachegrind has many drawbacks: it is slow, it uses its own cache simulation, which is very basic. But unlike `perf`, which is a great tool, Cachegrind can run in a virtual machine. This means we can easily run it in remote installations and even use it in CI/CD to catch possible regressions. Why Cachegrind and not Callgrind, another part of Valgrind? It is simply empirically proven that profiling runs faster with Cachegrind. ## First results First results have been obtained while testing of the approach. Here is an example. ``` $ target/testnet/subsystem-bench --n-cores 10 --cache-misses data-availability-read $ cat cachegrind_report.txt I refs: 64,622,081,485 I1 misses: 3,018,168 LLi misses: 437,654 I1 miss rate: 0.00% LLi miss rate: 0.00% D refs: 12,161,833,115 (9,868,356,364 rd + 2,293,476,751 wr) D1 misses: 167,940,701 ( 71,060,073 rd + 96,880,628 wr) LLd misses: 33,550,018 ( 16,685,853 rd + 16,864,165 wr) D1 miss rate: 1.4% ( 0.7% + 4.2% ) LLd miss rate: 0.3% ( 0.2% + 0.7% ) LL refs: 170,958,869 ( 74,078,241 rd + 96,880,628 wr) LL misses: 33,987,672 ( 17,123,507 rd + 16,864,165 wr) LL miss rate: 0.0% ( 0.0% + 0.7% ) ``` The CLI output shows that 1.4% of the L1 data cache missed, which is not so bad, given that the last-level cache had that data most of the time missing only 0.3%. Instruction data of the L1 has 0.00% misses of the time. Looking at an output file with `cg_annotate` shows that most of the misses occur during reed-solomon, which is expected.
-
dependabot[bot] authored
Bumps [walkdir](https://github.com/BurntSushi/walkdir) from 2.3.3 to 2.4.0. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/BurntSushi/walkdir/commit/037c5e16ec4d8b3eacb51f077cfdab7a356e8412"><code>037c5e1</code></a> 2.4.0</li> <li><a href="https://github.com/BurntSushi/walkdir/commit/dcc527d8326fae4272b66bb55f433a302a8cad6f"><code>dcc527d</code></a> api: add follow_root_links() option to WalkDir</li> <li><a href="https://github.com/BurntSushi/walkdir/commit/61a185fe49df24966acdec732f5a4b44a0475031"><code>61a185f</code></a> ci: use latest OS versions</li> <li>See full diff in <a href="https://github.com/BurntSushi/walkdir/compare/2.3.3...2.4.0">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=walkdir&package-manager=cargo&previous-version=2.3.3&new-version=2.4.0)](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>
-
Xavier Lau authored
To resolve issue #1136. This is a cross verification against zepter. - [cargo-featalign](https://github.com/hack-ink/cargo-featalign): Verifies the proper propagation of all features. - [zepter](https://github.com/ggwpez/zepter): Checks for accidentally enabled features. cc @ggwpez --- Switch to a new branch. Original PR #1537. --------- Signed-off-by: Xavier Lau <[email protected]> Signed-off-by: Oliver Tale-Yazdi <[email protected]> Co-authored-by: Oliver Tale-Yazdi <[email protected]> Co-authored-by: Chevdor <[email protected]>
-
Dónal Murray authored
Co-authored-by: command-bot <>
-
Muharem Ismailov authored
Implements an XCM executor `WeightTrader`, facilitating fee payments in any asset that can be exchanged for a native asset. A few constraints need to be observed: - `buy_weight` and `refund` operations must be atomic, as another weight trader implementation might be attempted in case of failure. - swap credit must be utilized since there isn’t an account to which an asset of some class can be deposited with a guarantee to meet the existential deposit requirement. Also, operating with credits enhances the efficiency of the weight trader - https://github.com/paritytech/polkadot-sdk/pull/1677 related PRs: - (depends) https://github.com/paritytech/polkadot-sdk/pull/2031 - (depends) https://github.com/paritytech/polkadot-sdk/pull/1677 - (caused) https://github.com/paritytech/polkadot-sdk/pull/1847 - (caused) https://github.com/paritytech/polkadot-sdk/pull/1876 // DONE: impl `OnUnbalanced` for a `fungible/s` credit // DONE: make the trader free from a concept of a native currency and drop few fallible conversions. related issue - https://github.com/paritytech/polkadot-sdk/issues/1842 // DONE: tests --------- Co-authored-by: joe petrowski <[email protected]> Co-authored-by: Liam Aharon <[email protected]>
-
dependabot[bot] authored
Bumps [Swatinem/rust-cache](https://github.com/swatinem/rust-cache) from 2.7.2 to 2.7.3. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/swatinem/rust-cache/releases">Swatinem/rust-cache's releases</a>.</em></p> <blockquote> <h2>v2.7.3</h2> <ul> <li>Work around upstream problem that causes cache saving to hang for minutes.</li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Swatinem/rust-cache/compare/v2.7.2...v2.7.3">https://github.com/Swatinem/rust-cache/compare/v2.7.2...v2.7.3</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Swatinem/rust-cache/blob/master/CHANGELOG.md">Swatinem/rust-cache's changelog</a>.</em></p> <blockquote> <h1>Changelog</h1> <h2>2.7.3</h2> <ul> <li>Work around upstream problem that causes cache saving to hang for minutes.</li> </ul> <h2>2.7.2</h2> <ul> <li>Only key by <code>Cargo.toml</code> and <code>Cargo.lock</code> files of workspace members.</li> </ul> <h2>2.7.1</h2> <ul> <li>Update toml parser to fix parsing errors.</li> </ul> <h2>2.7.0</h2> <ul> <li>Properly cache <code>trybuild</code> tests.</li> </ul> <h2>2.6.2</h2> <ul> <li>Fix <code>toml</code> parsing.</li> </ul> <h2>2.6.1</h2> <ul> <li>Fix hash contributions of <code>Cargo.lock</code>/<code>Cargo.toml</code> files.</li> </ul> <h2>2.6.0</h2> <ul> <li>Add "buildjet" as a second <code>cache-provider</code> backend.</li> <li>Clean up sparse registry index.</li> <li>Do not clean up src of <code>-sys</code> crates.</li> <li>Remove <code>.cargo/credentials.toml</code> before saving.</li> </ul> <h2>2.5.1</h2> <ul> <li>Fix hash contribution of <code>Cargo.lock</code>.</li> </ul> <h2>2.5.0</h2> <ul> <li>feat: Rm workspace crates version before caching.</li> <li>feat: Add hash of <code>.cargo/config.toml</code> to key.</li> </ul> <h2>2.4.0</h2> <ul> <li>Fix cache key stability.</li> <li>Use 8 character hash components to reduce the key length, making it more readable.</li> </ul> <h2>2.3.0</h2> <ul> <li>Add <code>cache-all-crates</code> option, which enables caching of crates installed by workflows.</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Swatinem/rust-cache/commit/23bce251a8cd2ffc3c1075eaa2367cf899916d84"><code>23bce25</code></a> 2.7.3</li> <li><a href="https://github.com/Swatinem/rust-cache/commit/378c8285a4eaf12899d11bea686a763e906956af"><code>378c828</code></a> Work around upstream GitHub issue and update dependencies</li> <li>See full diff in <a href="https://github.com/swatinem/rust-cache/compare/a22603398250b864f7190077025cf752307154dc...23bce251a8cd2ffc3c1075eaa2367cf899916d84">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=Swatinem/rust-cache&package-manager=github_actions&previous-version=2.7.2&new-version=2.7.3)](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>
-
Bastian Köcher authored
- Do not disable `std` feature in the integration tests - `contracts-fixtures` test should only check for `riscv` build when the feature is enabled
-
- Jan 15, 2024
-
-
dependabot[bot] authored
Bumps [lycheeverse/lychee-action](https://github.com/lycheeverse/lychee-action) from fdea7032675810093199f485fe075f057cc37b3e to c3089c702fbb949e3f7a8122be0c33c017904f9b. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/lycheeverse/lychee-action/commit/c3089c702fbb949e3f7a8122be0c33c017904f9b"><code>c3089c7</code></a> Bump to lychee 0.14.1</li> <li>See full diff in <a href="https://github.com/lycheeverse/lychee-action/compare/fdea7032675810093199f485fe075f057cc37b3e...c3089c702fbb949e3f7a8122be0c33c017904f9b">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 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]> Signed-off-by: Oliver Tale-Yazdi <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Sergejs Kostjucenko <[email protected]> Co-authored-by: Oliver Tale-Yazdi <[email protected]>
-
PG Herveou authored
Integration tests in ink!: https://github.com/paritytech/ink/tree/master/integration-tests/sr25519-verification
-
Oliver Tale-Yazdi authored
Changes: - add missing member to the workspace - add CI script after the last attempt to merge it upstream failed https://github.com/paritytech/pipeline-scripts/pull/105 Two crates are excluded from the check since they are templates `substrate/frame/contracts/fixtures/build` and `substrate/frame/contracts/fixtures/contracts/common`. Hopefully this is the last time that some crates need to be added manually. ![meme](https://github.com/paritytech/polkadot-sdk/assets/10380170/984843ee-1c76-4126-a4fc-ff2ba1d47377) --------- Signed-off-by: Oliver Tale-Yazdi <[email protected]>
-
dependabot[bot] authored
Bumps the known_good_semver group with 1 update: [clap](https://github.com/clap-rs/clap). Updates `clap` from 4.4.14 to 4.4.16 <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.16</h2> <h2>[4.4.16] - 2024-01-12</h2> <h3>Fixes</h3> <ul> <li>Ensure invalid escape sequences in user-defined strings are correctly stripped when terminal doesn't support color</li> </ul> <h2>v4.4.15</h2> <h2>[4.4.15] - 2024-01-11</h2> <h3>Fixes</h3> <ul> <li>Improve error for <code>args_conflicts_with_subcommands</code></li> <li>Ensure we error for <code>args_conflicts_with_subcommands</code> when using subcommand short and long flags</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.16] - 2024-01-12</h2> <h3>Fixes</h3> <ul> <li>Ensure invalid escape sequences in user-defined strings are correctly stripped when terminal doesn't support color</li> </ul> <h2>[4.4.15] - 2024-01-11</h2> <h3>Fixes</h3> <ul> <li>Improve error for <code>args_conflicts_with_subcommands</code></li> <li>Ensure we error for <code>args_conflicts_with_subcommands</code> when using subcommand short and long flags</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/clap-rs/clap/commit/cbc9c9dd44fc4be25c196213d508b9d2a9c282f3"><code>cbc9c9d</code></a> chore: Release</li> <li><a href="https://github.com/clap-rs/clap/commit/4718b89486c7c4236a18411b8449afc2d93f8e3d"><code>4718b89</code></a> docs: Update changelog</li> <li><a href="https://github.com/clap-rs/clap/commit/38f805cea0cf50a0f26ed01e4fdf550ca8a555fa"><code>38f805c</code></a> Merge pull request <a href="https://redirect.github.com/clap-rs/clap/issues/5299">#5299</a> from epage/ansi</li> <li><a href="https://github.com/clap-rs/clap/commit/2a3356a53543531726e851e97639810f3828a89b"><code>2a3356a</code></a> fix: Update anstream</li> <li><a href="https://github.com/clap-rs/clap/commit/12b5c39d467ea147c21f5eb3063fc0bc2538e9b7"><code>12b5c39</code></a> chore: Release</li> <li><a href="https://github.com/clap-rs/clap/commit/1c5b63390babdb4f3a8994436da4e7f9239b7d43"><code>1c5b633</code></a> docs: Update changelog</li> <li><a href="https://github.com/clap-rs/clap/commit/a5d46410e072b9821f76b21839849c4434a2f8da"><code>a5d4641</code></a> Merge pull request <a href="https://redirect.github.com/clap-rs/clap/issues/5298">#5298</a> from epage/conflict</li> <li><a href="https://github.com/clap-rs/clap/commit/f529ec398c4262296d5e6eb063b1b52d875d7f03"><code>f529ec3</code></a> fix(parser): Ensure subcommand flags can conflict</li> <li><a href="https://github.com/clap-rs/clap/commit/a7e04a53e4a9e310663a0cdb5bfb0753d84b82bd"><code>a7e04a5</code></a> fix(parser): Improve subcommand conflict error</li> <li><a href="https://github.com/clap-rs/clap/commit/ea00ef3051fd5a993b766062a4e9defc777bf233"><code>ea00ef3</code></a> refactor(error): Allow more conflict sources</li> <li>Additional commits viewable in <a href="https://github.com/clap-rs/clap/compare/v4.4.14...v4.4.16">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=clap&package-manager=cargo&previous-version=4.4.14&new-version=4.4.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>
-
Alexandru Vasile authored
This PR implements the `archive_unstable_storage` method that offers support for: - fetching values - fetching hashes - iterating over keys and values - iterating over keys and hashes - fetching merkle values from the trie-db A common component dedicated to RPC-V2 storage queries is created to bridge the gap between `chainHead/storage` and `archive/storage`. Query pagination is supported by `paginationStartKey`, similar to the old APIs. Similarly to the `chainHead/storage`, the `archive/storage` method accepts a maximum number of queried items. The design builds upon: https://github.com/paritytech/json-rpc-interface-spec/pull/94. Closes https://github.com/paritytech/polkadot-sdk/issues/1512. cc @paritytech/subxt-team --------- Signed-off-by: Alexandru Vasile <[email protected]> Co-authored-by: Niklas Adolfsson <[email protected]>
-
Liam Aharon authored
Original PR https://github.com/paritytech/substrate/pull/14655 --- Partial https://github.com/paritytech/polkadot-sdk/issues/225 - [x] Adds conformance tests for Unbalanced - [x] Adds conformance tests for Balanced - Several minor fixes to fungible default implementations and the Balances pallet - [x] `Unbalanced::decrease_balance` can reap account when `Preservation` is `Preserve` - [x] `Balanced::pair` can return pairs of imbalances which do not cancel each other out - [x] Balances pallet `active_issuance` 'underflow' - [x] Refactors the conformance test file structure to match the fungible file structure: tests for traits in regular.rs go into a test file named regular.rs, tests for traits in freezes.rs go into a test file named freezes.rs, etc. - [x] Improve doc comments - [x] Simplify macros ## Fixes ### `Unbalanced::decrease_balance` can reap account when called with `Preservation::Preserve` There is a potential issue in the default implementation of `Unbalanced::decrease_balance`. The implementation can delete an account even when it is called with `preservation: Preservation::Preserve`. This seems to contradict the documentation of `Preservation::Preserve`: ```rust /// The account may not be killed and our provider reference must remain (in the context of /// tokens, this means that the account may not be dusted). Preserve, ``` I updated `Unbalanced::decrease_balance` to return `Err(TokenError::BelowMinimum)` when a withdrawal would cause the account to be reaped and `preservation: Preservation::Preserve`. - [ ] TODO Confirm with @gavofyork that this is correct behavior Test for this behavior: https://github.com/paritytech/polkadot-sdk/blob/e5c876dd/substrate/frame/support/src/traits/tokens/fungible/conformance_tests/regular.rs#L912-L937 ### `Balanced::pair` returning non-canceling pairs `Balanced::pair` is supposed to create a pair of imbalances that cancel each other out. However this is not the case when the method is called with an amount greater than the total supply. In the existing default implementation, `Balanced::pair` creates a pair by first rescinding the balance, creating `Debt`, and then issuing the balance, creating `Credit`. When creating `Debt`, if the amount to create exceeds the `total_supply`, `total_supply` units of `Debt` are created *instead* of `amount` units of `Debt`. This can lead to non-canceling amount of `Credit` and `Debt` being created. To address this, I create the credit and debt directly in the method instead of calling `issue` and `rescind`. Test for this behavior: https://github.com/paritytech/polkadot-sdk/blob/e5c876dd/substrate/frame/support/src/traits/tokens/fungible/conformance_tests/regular.rs#L1323-L1346 ### `Balances` pallet `active_issuance` 'underflow' This PR resolves an issue in the `Balances` pallet that can lead to odd behavior of `active_issuance`. Currently, the Balances pallet doesn't check if `InactiveIssuance` remains less than or equal to `TotalIssuance` when supply is deactivated. This allows `InactiveIssuance` to be greater than `TotalIssuance`, which can result in unexpected behavior from the perspective of the fungible API. `active_issuance` is derived from `TotalIssuance.saturating_sub(InactiveIssuance)`. If an `amount` is deactivated that causes `InactiveIssuance` to become greater TotalIssuance, `active_issuance` will return 0. However once in that state, reactivating an amount will not increase `active_issuance` by the reactivated `amount` as expected. Consider this test where the last assertion would fail due to this issue: https://github.com/paritytech/polkadot-sdk/blob/e5c876dd /substrate/frame/support/src/traits/tokens/fungible/conformance_tests/regular.rs#L1036-L1071 To address this, I've modified the `deactivate` function to ensure `InactiveIssuance` never surpasses `TotalIssuance`. --------- Co-authored-by: Muharem <[email protected]>
-
Serban Iorga authored
Closes https://github.com/paritytech/polkadot-sdk/issues/2787 Regenerating the DB snapshot after fixing: https://github.com/paritytech/polkadot-sdk/pull/2919 Now we can add some BEEFY checks to `0002-validators-warp-sync`
-
- Jan 13, 2024
-
-
maksimryndin authored
Hi folks! Thank for the well organized codebase and an outstanding engineering! I am trying to compile a substrate node template from source (https://github.com/paritytech/polkadot-sdk) and encountered a dependency conflict ![Screenshot 2024-01-11 at 12 22 16](https://github.com/paritytech/polkadot-sdk/assets/16288656/b630773f-9d58-4abc-a15c-45f0e6b96b48) and a deprecation warning from advisory db for `ansi_term` (I see you replace it with some alternatives in other crates). While for `ansi_term` there is an adopted fork (https://github.com/rustadopt/ansiterm-rs) and it was my first commit in the PR, I've decided to use https://github.com/console-rs/console as you already use it to reduce dependencies (as I believe other substrate crates will remove ansi_term eventually) --------- Co-authored-by: Bastian Köcher <[email protected]>
-
Jun Jiang authored
aquamarine v0.4.0 has yanked, see https://crates.io/crates/aquamarine/0.4.0
-
- Jan 12, 2024
-
-
PG Herveou authored
- Translate all pallet-contracts fixtures from `wat` to Rust files. - Fix read_sandbox_memory_as to not use MaxEncodedLen as this could break if used with types with a non-fixed encoded len. --------- Co-authored-by: alvicsam <[email protected]> Co-authored-by: Alexander Samusev <[email protected]> Co-authored-by: Alexander Theißen <[email protected]> Co-authored-by: command-bot <>
-
Javier Viola authored
This version includes - Performance improvements. - Minor fixes.
-
Dmitry Markin authored
Extract `WarpSync` (and `StateSync` as part of warp sync) from `ChainSync` as independent syncing strategy called by `SyncingEngine`. Introduce `SyncingStrategy` enum as a proxy between `SyncingEngine` and specific syncing strategies. ## Limitations Gap sync is kept in `ChainSync` for now because it shares the same set of peers as block syncing implementation in `ChainSync`. Extraction of a common context responsible for peer management in syncing strategies able to run in parallel is planned for a follow-up PR. ## Further improvements A possibility of conversion of `SyncingStartegy` into a trait should be evaluated. The main stopper for this is that different strategies need to communicate different actions to `SyncingEngine` and respond to different events / provide different APIs (e.g., requesting justifications is only possible via `ChainSync` and not through `WarpSync`; `SendWarpProofRequest` action is only relevant to `WarpSync`, etc.) --------- Co-authored-by: Aaro Altonen <[email protected]>
-
Svyatoslav Nikolsky authored
Brridges zombienet tests are non-standard - zombienet currently missing multiple relay chains support (see e.g. https://github.com/paritytech/zombienet/pull/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~
-
dependabot[bot] authored
Bumps [actions/cache](https://github.com/actions/cache) from 3.3.2 to 3.3.3. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/actions/cache/releases">actions/cache's releases</a>.</em></p> <blockquote> <h2>v3.3.3</h2> <h2>What's Changed</h2> <ul> <li>Cache v3.3.3 by <a href="https://github.com/robherley"><code>@robherley</code></a> in <a href="https://redirect.github.com/actions/cache/pull/1302">actions/cache#1302</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/robherley"><code>@robherley</code></a> made their first contribution in <a href="https://redirect.github.com/actions/cache/pull/1302">actions/cache#1302</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/actions/cache/compare/v3...v3.3.3">https://github.com/actions/cache/compare/v3...v3.3.3</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/actions/cache/blob/main/RELEASES.md">actions/cache's changelog</a>.</em></p> <blockquote> <h1>Releases</h1> <h3>3.0.0</h3> <ul> <li>Updated minimum runner version support from node 12 -> node 16</li> </ul> <h3>3.0.1</h3> <ul> <li>Added support for caching from GHES 3.5.</li> <li>Fixed download issue for files > 2GB during restore.</li> </ul> <h3>3.0.2</h3> <ul> <li>Added support for dynamic cache size cap on GHES.</li> </ul> <h3>3.0.3</h3> <ul> <li>Fixed avoiding empty cache save when no files are available for caching. (<a href="https://redirect.github.com/actions/cache/issues/624">issue</a>)</li> </ul> <h3>3.0.4</h3> <ul> <li>Fixed tar creation error while trying to create tar with path as <code>~/</code> home folder on <code>ubuntu-latest</code>. (<a href="https://redirect.github.com/actions/cache/issues/689">issue</a>)</li> </ul> <h3>3.0.5</h3> <ul> <li>Removed error handling by consuming actions/cache 3.0 toolkit, Now cache server error handling will be done by toolkit. (<a href="https://redirect.github.com/actions/cache/pull/834">PR</a>)</li> </ul> <h3>3.0.6</h3> <ul> <li>Fixed <a href="https://redirect.github.com/actions/cache/issues/809">#809</a> - zstd -d: no such file or directory error</li> <li>Fixed <a href="https://redirect.github.com/actions/cache/issues/833">#833</a> - cache doesn't work with github workspace directory</li> </ul> <h3>3.0.7</h3> <ul> <li>Fixed <a href="https://redirect.github.com/actions/cache/issues/810">#810</a> - download stuck issue. A new timeout is introduced in the download process to abort the download if it gets stuck and doesn't finish within an hour.</li> </ul> <h3>3.0.8</h3> <ul> <li>Fix zstd not working for windows on gnu tar in issues <a href="https://redirect.github.com/actions/cache/issues/888">#888</a> and <a href="https://redirect.github.com/actions/cache/issues/891">#891</a>.</li> <li>Allowing users to provide a custom timeout as input for aborting download of a cache segment using an environment variable <code>SEGMENT_DOWNLOAD_TIMEOUT_MINS</code>. Default is 60 minutes.</li> </ul> <h3>3.0.9</h3> <ul> <li>Enhanced the warning message for cache unavailablity in case of GHES.</li> </ul> <h3>3.0.10</h3> <ul> <li>Fix a bug with sorting inputs.</li> <li>Update definition for restore-keys in README.md</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/actions/cache/commit/e12d46a63a90f2fae62d114769bbf2a179198b5c"><code>e12d46a</code></a> Merge pull request <a href="https://redirect.github.com/actions/cache/issues/1302">#1302</a> from actions/robherley/v3.3.3</li> <li><a href="https://github.com/actions/cache/commit/1baebfc3bafe03311c1239b7d001ecdf5da64951"><code>1baebfc</code></a> licensed</li> <li><a href="https://github.com/actions/cache/commit/eb94f1a6bf968b0555b89297bc603690b68beccd"><code>eb94f1a</code></a> cache v3.3.3</li> <li>See full diff in <a href="https://github.com/actions/cache/compare/704facf57e6136b1bc63b828d79edcd491f0ee84...e12d46a63a90f2fae62d114769bbf2a179198b5c">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/cache&package-manager=github_actions&previous-version=3.3.2&new-version=3.3.3)](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>
-
Serban Iorga authored
Related to https://github.com/paritytech/polkadot-sdk/issues/2787 Fixes `pallet_mmr::Config` for the kitchensink runtime
-
joe petrowski authored
A recent referendum failed because the parachain's sovereign account had enough funds for the deposit (the runtime at the time required a deposit) but not enough left over for the existential deposit, which must remain free. The current logic does not require a deposit for channels with system chains, and the current tests check that none is taken. This new test simply ensures that even without any balance in a parachain's sovereign account, opening a channel with a system chain will be successful.
-
dependabot[bot] authored
Bumps [indexmap](https://github.com/bluss/indexmap) from 1.9.3 to 2.0.0. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/bluss/indexmap/blob/master/RELEASES.md">indexmap's changelog</a>.</em></p> <blockquote> <ul> <li> <p>2.0.0</p> <ul> <li> <p><strong>MSRV</strong>: Rust 1.64.0 or later is now required.</p> </li> <li> <p>The <code>"std"</code> feature is no longer auto-detected. It is included in the default feature set, or else can be enabled like any other Cargo feature.</p> </li> <li> <p>The <code>"serde-1"</code> feature has been removed, leaving just the optional <code>"serde"</code> dependency to be enabled like a feature itself.</p> </li> <li> <p><code>IndexMap::get_index_mut</code> now returns <code>Option<(&K, &mut V)></code>, changing the key part from <code>&mut K</code> to <code>&K</code>. There is also a new alternative <code>MutableKeys::get_index_mut2</code> to access the former behavior.</p> </li> <li> <p>The new <code>map::Slice<K, V></code> and <code>set::Slice<T></code> offer a linear view of maps and sets, behaving a lot like normal <code>[(K, V)]</code> and <code>[T]</code> slices. Notably, comparison traits like <code>Eq</code> only consider items in order, rather than hash lookups, and slices even implement <code>Hash</code>.</p> </li> <li> <p><code>IndexMap</code> and <code>IndexSet</code> now have <code>sort_by_cached_key</code> and <code>par_sort_by_cached_key</code> methods which perform stable sorts in place using a key extraction function.</p> </li> <li> <p><code>IndexMap</code> and <code>IndexSet</code> now have <code>reserve_exact</code>, <code>try_reserve</code>, and <code>try_reserve_exact</code> methods that correspond to the same methods on <code>Vec</code>. However, exactness only applies to the direct capacity for items, while the raw hash table still follows its own rules for capacity and load factor.</p> </li> <li> <p>The <code>Equivalent</code> trait is now re-exported from the <code>equivalent</code> crate, intended as a common base to allow types to work with multiple map types.</p> </li> <li> <p>The <code>hashbrown</code> dependency has been updated to version 0.14.</p> </li> <li> <p>The <code>serde_seq</code> module has been moved from the crate root to below the <code>map</code> module.</p> </li> </ul> </li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/bluss/indexmap/commit/8e47be81a10bcb4b203955d6f6eb05bf85630c20"><code>8e47be8</code></a> Merge pull request <a href="https://redirect.github.com/bluss/indexmap/issues/267">#267</a> from cuviper/release-2.0.0</li> <li><a href="https://github.com/bluss/indexmap/commit/ad694fbb8c73f92e4316e436422dc80763a7ed03"><code>ad694fb</code></a> Release 2.0.0</li> <li><a href="https://github.com/bluss/indexmap/commit/b5b2814999255f82559f172d00d1382ae66d23c1"><code>b5b2814</code></a> Merge pull request <a href="https://redirect.github.com/bluss/indexmap/issues/266">#266</a> from cuviper/doc-capacity</li> <li><a href="https://github.com/bluss/indexmap/commit/d3ea28992194484dea671a19b808b62ed8efd5d1"><code>d3ea289</code></a> Document the lower-bound semantics of capacity</li> <li><a href="https://github.com/bluss/indexmap/commit/74e14dac622eac69fa292b100a51c5a385a81d61"><code>74e14da</code></a> Merge pull request <a href="https://redirect.github.com/bluss/indexmap/issues/264">#264</a> from cuviper/equivalent</li> <li><a href="https://github.com/bluss/indexmap/commit/677c60522815f53e83ab173c199772567e9c9007"><code>677c605</code></a> Add a relnote for Equivalent</li> <li><a href="https://github.com/bluss/indexmap/commit/6d83bc1902b95758d98ea973778d8fc4b4a599a2"><code>6d83bc1</code></a> pub use equivalent::Equivalent;</li> <li><a href="https://github.com/bluss/indexmap/commit/bb48357fee6494a335963072ea8c51ed30903a19"><code>bb48357</code></a> Merge pull request <a href="https://redirect.github.com/bluss/indexmap/issues/263">#263</a> from cuviper/insert_in_slot</li> <li><a href="https://github.com/bluss/indexmap/commit/c37dae6bcb2fc2c1f45b1e6fd924f92685acd8b3"><code>c37dae6</code></a> Use hashbrown's new single-lookup insertion</li> <li><a href="https://github.com/bluss/indexmap/commit/ee71507aaacf25b43f99350af44c137e6af65a7c"><code>ee71507</code></a> Merge pull request <a href="https://redirect.github.com/bluss/indexmap/issues/262">#262</a> from daxpedda/hashbrown-v0.14</li> <li>Additional commits viewable in <a href="https://github.com/bluss/indexmap/compare/1.9.3...2.0.0">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=indexmap&package-manager=cargo&previous-version=1.9.3&new-version=2.0.0)](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>
-
- Jan 11, 2024
-
-
dependabot[bot] authored
Bumps [Swatinem/rust-cache](https://github.com/swatinem/rust-cache) from 2.7.1 to 2.7.2. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/swatinem/rust-cache/releases">Swatinem/rust-cache's releases</a>.</em></p> <blockquote> <h2>v2.7.2</h2> <h2>What's Changed</h2> <ul> <li>Update action runtime to <code>node20</code> by <a href="https://github.com/rhysd"><code>@rhysd</code></a> in <a href="https://redirect.github.com/Swatinem/rust-cache/pull/175">Swatinem/rust-cache#175</a></li> <li>Only key by <code>Cargo.toml</code> and <code>Cargo.lock</code> files of workspace members by <a href="https://github.com/max-heller"><code>@max-heller</code></a> in <a href="https://redirect.github.com/Swatinem/rust-cache/pull/180">Swatinem/rust-cache#180</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/rhysd"><code>@rhysd</code></a> made their first contribution in <a href="https://redirect.github.com/Swatinem/rust-cache/pull/175">Swatinem/rust-cache#175</a></li> <li><a href="https://github.com/max-heller"><code>@max-heller</code></a> made their first contribution in <a href="https://redirect.github.com/Swatinem/rust-cache/pull/180">Swatinem/rust-cache#180</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Swatinem/rust-cache/compare/v2.7.1...v2.7.2">https://github.com/Swatinem/rust-cache/compare/v2.7.1...v2.7.2</a></p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Swatinem/rust-cache/blob/master/CHANGELOG.md">Swatinem/rust-cache's changelog</a>.</em></p> <blockquote> <h1>Changelog</h1> <h2>2.7.2</h2> <ul> <li>Only key by <code>Cargo.toml</code> and <code>Cargo.lock</code> files of workspace members.</li> </ul> <h2>2.7.1</h2> <ul> <li>Update toml parser to fix parsing errors.</li> </ul> <h2>2.7.0</h2> <ul> <li>Properly cache <code>trybuild</code> tests.</li> </ul> <h2>2.6.2</h2> <ul> <li>Fix <code>toml</code> parsing.</li> </ul> <h2>2.6.1</h2> <ul> <li>Fix hash contributions of <code>Cargo.lock</code>/<code>Cargo.toml</code> files.</li> </ul> <h2>2.6.0</h2> <ul> <li>Add "buildjet" as a second <code>cache-provider</code> backend.</li> <li>Clean up sparse registry index.</li> <li>Do not clean up src of <code>-sys</code> crates.</li> <li>Remove <code>.cargo/credentials.toml</code> before saving.</li> </ul> <h2>2.5.1</h2> <ul> <li>Fix hash contribution of <code>Cargo.lock</code>.</li> </ul> <h2>2.5.0</h2> <ul> <li>feat: Rm workspace crates version before caching.</li> <li>feat: Add hash of <code>.cargo/config.toml</code> to key.</li> </ul> <h2>2.4.0</h2> <ul> <li>Fix cache key stability.</li> <li>Use 8 character hash components to reduce the key length, making it more readable.</li> </ul> <h2>2.3.0</h2> <ul> <li>Add <code>cache-all-crates</code> option, which enables caching of crates installed by workflows.</li> <li>Add installed packages to cache key, so changes to workflows that install rust tools are detected and cached properly.</li> <li>Fix cache restore failures due to upstream bug.</li> <li>Fix <code>EISDIR</code> error due to globed directories.</li> <li>Update runtime <code>@actions/cache</code>, <code>@actions/io</code> and dev <code>typescript</code> dependencies.</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Swatinem/rust-cache/commit/a22603398250b864f7190077025cf752307154dc"><code>a226033</code></a> 2.7.2</li> <li><a href="https://github.com/Swatinem/rust-cache/commit/d30f1144e884b1fe579845ed7a339c640dff522e"><code>d30f114</code></a> Only key by <code>Cargo.toml</code> and <code>Cargo.lock</code> files of workspace members (<a href="https://redirect.github.com/swatinem/rust-cache/issues/180">#180</a>)</li> <li><a href="https://github.com/Swatinem/rust-cache/commit/b1db5f9d5f9ed685de3a2774c3d3b838d2dde462"><code>b1db5f9</code></a> Update action runtime to <code>node20</code> (<a href="https://redirect.github.com/swatinem/rust-cache/issues/175">#175</a>)</li> <li>See full diff in <a href="https://github.com/swatinem/rust-cache/compare/3cf7f8cc28d1b4e7d01e3783be10a97d55d483c8...a22603398250b864f7190077025cf752307154dc">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=Swatinem/rust-cache&package-manager=github_actions&previous-version=2.7.1&new-version=2.7.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>
-
Sebastian Kunert authored
closes #2567 Followup for https://github.com/paritytech/polkadot-sdk/pull/2331 This PR contains multiple internal cleanups: 1. This gets rid of the functionality in `generate_genesis_block` which was only used in one benchmark 2. Fixed `transaction_pool` and `transaction_throughput` benchmarks failing since they require a tokio runtime now. 3. Removed `parachain_id` CLI option from the test parachain 4. Removed `expect` call from `RuntimeResolver`
-
Nazar Mokrynskyi authored
Trivial refactoring, fixes https://github.com/paritytech/polkadot-sdk/issues/2885
-
Alexander Samusev authored
<del>PR custom review is deprecated. Now `review-bot` performs these functions.</del> PR removes unused ci jobs and adjusts zombienet jobs for merge queues cc @Bullrich
-
Anton Vilhelm Ásgeirsson authored
The XCM instruction limit of 100 was being hit by the 1 large message before. The weight ref time also needed to be bumped for these extrinsics. --------- Co-authored-by: Bastian Köcher <[email protected]>
-
Serban Iorga authored
Part of https://github.com/paritytech/polkadot-sdk/issues/2787 This is an initial PR that adds some basic BEEFY checks to the warp sync zombienet tests. To be more specific, it does the following: - Changes the snapshot used by the warp sync zombienet tests to one built from an updated version of the kitchensink runtime, that supports BEEFY - Adds some basic BEEFY checks to the warp sync zombienet tests - Deduplicates some params of the warp sync zombienet tests, making them easier to extend
-
Michal Kucharczyk authored
`frame-support` crate compilation fails (reported by @koute): ``` $ cargo check --no-default-features --target=wasm32-unknown-unknown error[E0277]: the trait bound `GC: Serialize` is not satisfied --> substrate/frame/support/src/genesis_builder_helper.rs:32:24 | 32 | serde_json::to_string(&GC::default()) | --------------------- ^^^^^^^^^^^^^^ the trait `Serialize` is not implemented for `GC` | | | required by a bound introduced by this call | note: required by a bound in `serde_json::to_string` --> /home/kou/.cargo/registry/src/index.crates.io-6f17d22bba15001f/serde_json-1.0.111/src/ser.rs:2209:17 | 2207 | pub fn to_string<T>(value: &T) -> Result<String> | --------- required by a bound in this function 2208 | where 2209 | T: ?Sized + Serialize, | ^^^^^^^^^ required by this bound in `to_string` help: consider further restricting this bound | 30 | GC: BuildGenesisConfig + Default + serde::Serialize, | ++++++++++++++++++ ``` This PR should fix this. For all runtimes `sp-runtime/serde` feature was likely enabled by this (and few other pallets): https://github.com/paritytech/polkadot-sdk/blob/f2a750ee/substrate/frame/system/Cargo.toml#L27
-
- Jan 10, 2024
-
-
Clara van Staden authored
- 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]>
-
Marcin S. authored
Considering the complexity of https://github.com/paritytech/polkadot-sdk/pull/2871 and the discussion therein, as well as the further complexity introduced by the hardening in https://github.com/paritytech/polkadot-sdk/pull/2742, as well as the eventual replacement of wasmtime by PolkaVM, it seems best to remove this persistence as it is creating more problems than it solves. ## Related Closes https://github.com/paritytech/polkadot-sdk/issues/2863
-
Alin Dima authored
Previously, it was only possible to retry the same request on a different protocol name that had the exact same binary payloads. Introduce a way of trying a different request on a different protocol if the first one fails with Unsupported protocol. This helps with adding new req-response versions in polkadot while preserving compatibility with unupgraded nodes. The way req-response protocols were bumped previously was that they were bundled with some other notifications protocol upgrade, like for async backing (but that is more complicated, especially if the feature does not require any changes to a notifications protocol). Will be needed for implementing https://github.com/polkadot-fellows/RFCs/pull/47 TODO: - [x] add tests - [x] add guidance docs in polkadot about req-response protocol versioning
-
Nazar Mokrynskyi authored
This removes the need to unnecessarily provide a very specific data structure `DatabaseSource` and removes huge `sc-client-db` dependency from storage monitor. It is now possible to use storage monitor with any path. P.S. I still strongly dislike that it pulls `clap` dependency for such a small feature, but many other crates do as well, so nothing special here.
-
dependabot[bot] authored
Bumps [trybuild](https://github.com/dtolnay/trybuild) from 1.0.83 to 1.0.88. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/dtolnay/trybuild/releases">trybuild's releases</a>.</em></p> <blockquote> <h2>1.0.88</h2> <ul> <li>Work around <code>dead_code</code> warning false positive (<a href="https://redirect.github.com/dtolnay/trybuild/issues/253">#253</a>)</li> </ul> <h2>1.0.87</h2> <ul> <li>Update proc-macro2 to fix caching issue when using a rustc-wrapper such as sccache</li> </ul> <h2>1.0.86</h2> <ul> <li>Support edition 2024 (<a href="https://redirect.github.com/dtolnay/trybuild/issues/250">#250</a>, <a href="https://redirect.github.com/dtolnay/trybuild/issues/252">#252</a>, thanks <a href="https://github.com/mohe2015"><code>@mohe2015</code></a>)</li> </ul> <h2>1.0.85</h2> <ul> <li>Set thread name to produce better message on panic (<a href="https://redirect.github.com/dtolnay/trybuild/issues/243">#243</a>, <a href="https://redirect.github.com/dtolnay/trybuild/issues/244">#244</a>)</li> </ul> <h2>1.0.84</h2> <ul> <li>Stabilize usage of Cargo's <code>--keep-going</code> build mode, which parallelizes test compilation for a significant speedup (<a href="https://redirect.github.com/rust-lang/cargo/pull/12568">rust-lang/cargo#12568</a>, <a href="https://redirect.github.com/dtolnay/trybuild/issues/240">#240</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/dtolnay/trybuild/commit/52caff6811ac288418209c7c7e2da28583bb1f4d"><code>52caff6</code></a> Release 1.0.88</li> <li><a href="https://github.com/dtolnay/trybuild/commit/0321a01898a69905a74c3aab2519219939f133fa"><code>0321a01</code></a> Merge pull request <a href="https://redirect.github.com/dtolnay/trybuild/issues/253">#253</a> from dtolnay/deadflock</li> <li><a href="https://github.com/dtolnay/trybuild/commit/b720ee6e5cd44ab7d8ab140a020006e0db6270a4"><code>b720ee6</code></a> Work around dead_code warning in flock implementation</li> <li><a href="https://github.com/dtolnay/trybuild/commit/0081291b6bb5d19b92d19f1fc9c1d32ed539a129"><code>0081291</code></a> Release 1.0.87</li> <li><a href="https://github.com/dtolnay/trybuild/commit/e0c4c0d7c8581d46366668eee28dbf6ec790178b"><code>e0c4c0d</code></a> Pull in proc-macro2 sccache fix</li> <li><a href="https://github.com/dtolnay/trybuild/commit/a6cbfe8b08978660b92259d1f6642c2812e9ffe7"><code>a6cbfe8</code></a> Release 1.0.86</li> <li><a href="https://github.com/dtolnay/trybuild/commit/7c5a8fef4e4f4e85bec2dd888434c310ec479f21"><code>7c5a8fe</code></a> Merge pull request <a href="https://redirect.github.com/dtolnay/trybuild/issues/252">#252</a> from dtolnay/cargofeatures</li> <li><a href="https://github.com/dtolnay/trybuild/commit/d3cd15bf3081ddbd4720984001e3f2a09f53d621"><code>d3cd15b</code></a> Propagate cargo features from source manifest</li> <li><a href="https://github.com/dtolnay/trybuild/commit/c28428dcb57a735c16b25745298f045ffb5782bb"><code>c28428d</code></a> Merge pull request <a href="https://redirect.github.com/dtolnay/trybuild/issues/251">#251</a> from dtolnay/skipcargofeatures</li> <li><a href="https://github.com/dtolnay/trybuild/commit/3e4029ede75d98b9164136852689a7ca5602108e"><code>3e4029e</code></a> Omit cargo-features from generated Cargo.toml if empty</li> <li>Additional commits viewable in <a href="https://github.com/dtolnay/trybuild/compare/1.0.83...1.0.88">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=trybuild&package-manager=cargo&previous-version=1.0.83&new-version=1.0.88)](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>
-
dependabot[bot] authored
Bumps [parking_lot](https://github.com/Amanieu/parking_lot) from 0.11.2 to 0.12.1. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Amanieu/parking_lot/blob/master/CHANGELOG.md">parking_lot's changelog</a>.</em></p> <blockquote> <h2>parking_lot 0.12.1 (2022-05-31)</h2> <ul> <li>Fixed incorrect memory ordering in <code>RwLock</code>. (<a href="https://redirect.github.com/Amanieu/parking_lot/issues/344">#344</a>)</li> <li>Added <code>Condvar::wait_while</code> convenience methods (<a href="https://redirect.github.com/Amanieu/parking_lot/issues/343">#343</a>)</li> </ul> <h2>parking_lot_core 0.9.3 (2022-04-30)</h2> <ul> <li>Bump windows-sys dependency to 0.36. (<a href="https://redirect.github.com/Amanieu/parking_lot/issues/339">#339</a>)</li> </ul> <h2>parking_lot_core 0.9.2, lock_api 0.4.7 (2022-03-25)</h2> <ul> <li>Enable const new() on lock types on stable. (<a href="https://redirect.github.com/Amanieu/parking_lot/issues/325">#325</a>)</li> <li>Added <code>MutexGuard::leak</code> function. (<a href="https://redirect.github.com/Amanieu/parking_lot/issues/333">#333</a>)</li> <li>Bump windows-sys dependency to 0.34. (<a href="https://redirect.github.com/Amanieu/parking_lot/issues/331">#331</a>)</li> <li>Bump petgraph dependency to 0.6. (<a href="https://redirect.github.com/Amanieu/parking_lot/issues/326">#326</a>)</li> <li>Don't use pthread attributes on the espidf platform. (<a href="https://redirect.github.com/Amanieu/parking_lot/issues/319">#319</a>)</li> </ul> <h2>parking_lot_core 0.9.1 (2022-02-06)</h2> <ul> <li>Bump windows-sys dependency to 0.32. (<a href="https://redirect.github.com/Amanieu/parking_lot/issues/316">#316</a>)</li> </ul> <h2>parking_lot 0.12.0, parking_lot_core 0.9.0, lock_api 0.4.6 (2022-01-28)</h2> <ul> <li>The MSRV is bumped to 1.49.0.</li> <li>Disabled eventual fairness on wasm32-unknown-unknown. (<a href="https://redirect.github.com/Amanieu/parking_lot/issues/302">#302</a>)</li> <li>Added a rwlock method to report if lock is held exclusively. (<a href="https://redirect.github.com/Amanieu/parking_lot/issues/303">#303</a>)</li> <li>Use new <code>asm!</code> macro. (<a href="https://redirect.github.com/Amanieu/parking_lot/issues/304">#304</a>)</li> <li>Use windows-rs instead of winapi for faster builds. (<a href="https://redirect.github.com/Amanieu/parking_lot/issues/311">#311</a>)</li> <li>Moved hardware lock elision support to a separate Cargo feature. (<a href="https://redirect.github.com/Amanieu/parking_lot/issues/313">#313</a>)</li> <li>Removed used of deprecated <code>spin_loop_hint</code>. (<a href="https://redirect.github.com/Amanieu/parking_lot/issues/314">#314</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Amanieu/parking_lot/commit/336a9b31ff385728d00eb7ef173e4d054584b787"><code>336a9b3</code></a> Release parking_lot 0.12.1</li> <li><a href="https://github.com/Amanieu/parking_lot/commit/b69a0547ce6c92b164528c65daafa48e8f1c08bb"><code>b69a054</code></a> Merge pull request <a href="https://redirect.github.com/Amanieu/parking_lot/issues/343">#343</a> from bryanhitc/master</li> <li><a href="https://github.com/Amanieu/parking_lot/commit/3fe7233ee05fbae9bc94a831d4e66df0257880a2"><code>3fe7233</code></a> Merge pull request <a href="https://redirect.github.com/Amanieu/parking_lot/issues/344">#344</a> from Amanieu/fix_rwlock_ordering</li> <li><a href="https://github.com/Amanieu/parking_lot/commit/ef12b00daf0dbc6dd025098ec2cd0517bb9f737c"><code>ef12b00</code></a> small test update</li> <li><a href="https://github.com/Amanieu/parking_lot/commit/fdb063cd4e33d9c44cc08aea0c341ffec7e7b282"><code>fdb063c</code></a> wait_while can't timeout fix</li> <li><a href="https://github.com/Amanieu/parking_lot/commit/26e19dced4ae01000abc0dfca251f56695b1b8aa"><code>26e19dc</code></a> Remove WaitWhileResult</li> <li><a href="https://github.com/Amanieu/parking_lot/commit/d26c284fe8413bdeeed3ef4f70e23b5919a9ffeb"><code>d26c284</code></a> Fix incorrect memory ordering in RwLock</li> <li><a href="https://github.com/Amanieu/parking_lot/commit/045828381a5facff71b1aad3c01af15801959458"><code>0458283</code></a> Use saturating_add for WaitWhileResult</li> <li><a href="https://github.com/Amanieu/parking_lot/commit/686db4755913947219f83a04b21885032685d246"><code>686db47</code></a> Add Condvar::wait_while convenience methods</li> <li><a href="https://github.com/Amanieu/parking_lot/commit/6f6e021ced6f67fef8002442aa97c4a08ed5c3e4"><code>6f6e021</code></a> Merge pull request <a href="https://redirect.github.com/Amanieu/parking_lot/issues/342">#342</a> from MarijnS95/patch-1</li> <li>Additional commits viewable in <a href="https://github.com/Amanieu/parking_lot/compare/0.11.2...0.12.1">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=parking_lot&package-manager=cargo&previous-version=0.11.2&new-version=0.12.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 <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>
-
joe petrowski authored
This PR allows _username authorities_ to issue unique usernames that correspond with an account. It also provides two-way lookup, that is from `AccountId` to a single, "primary" `Username` (alongside `Registration`) and multiple unique `Username`s to an `AccountId`. Key features: - Username Authorities added (and removed) via privileged origin. - Authorities have a `suffix` and an `allocation`. They can grant up to `allocation` usernames. Their `suffix` will be appended to the usernames that they issue. A suffix may be up to 7 characters long. - Users can ask an authority to grant them a username. This will take the form `myusername.suffix`. The entire name (including suffix) must be less than or equal to 32 alphanumeric characters. - Users can approve a username for themselves in one of two ways (that is, authorities cannot grant them arbitrarily): - Pre-sign the entire username (including suffix) with a secret key that corresponds to their `AccountId` (for keyed accounts, obviously); or - Accept the username after it has been granted by an authority (it will be queued until accepted) (for non-keyed accounts like pure proxies or multisigs). - The system does not require any funds or deposits. Users without an identity will be given a default one (presumably all fields set to `None`). If they update this info, they will need to place the normal storage deposit. - If a user does not have any username, their first one will be set as `Primary`, and their `AccountId` will map to that one. If they get subsequent usernames, they can choose which one to be their primary via `set_primary_username`. - There are some state cleanup functions to remove expired usernames that have not been accepted and dangling usernames whose owners have called `clear_identity`. TODO: - [x] Add migration to runtimes - [x] Probably do off-chain migration into People Chain genesis - [x] Address a few TODO questions in code (please review) --------- Co-authored-by: Liam Aharon <[email protected]> Co-authored-by: Gonçalo Pestana <[email protected]> Co-authored-by: Oliver Tale-Yazdi <[email protected]> Co-authored-by: Dónal Murray <[email protected]>
-
ordian authored
Closes #1591. The purpose of this PR is filter out backing statements from the network signed by disabled validators. This is just an optimization, since we will do filtering in the runtime in #1863 to avoid nodes to filter garbage out at block production time. - [x] Ensure it's ok to fiddle with the mask of manifests - [x] Write more unit tests - [x] Test locally - [x] simple zombienet test - [x] PRDoc --------- Co-authored-by: Tsvetomir Dimitrov <[email protected]>
-