Skip to content
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

Update from master #103

Merged
merged 190 commits into from
Jan 23, 2024
Merged

Update from master #103

merged 190 commits into from
Jan 23, 2024

Conversation

claravanstaden
Copy link
Collaborator

@claravanstaden claravanstaden commented Jan 22, 2024

We need to update our polkadot-sdk for in order to create the upstream Deneb PR, since many things have changed upstream and are causing compiler errors in the Snowbridge crate.

Snowbridge companion: Snowfork/snowbridge#1123

bkchr and others added 30 commits December 15, 2023 11:29
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!
…itytech#2694)

closes paritytech-secops/srlabs_findings#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).
Example currently broken. 

It writes something to the given path, but not the full chain spec.

---------

Co-authored-by: Michal Kucharczyk <1728078+michalkucharczyk@users.noreply.github.com>
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.
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 -&gt; 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] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
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 <dmitry.sinyavin@parity.io>
Co-authored-by: ordian <write@reusable.software>
Co-authored-by: command-bot <>
Co-authored-by: Bastian Köcher <git@kchr.de>
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 paritytech/ci_cd#915
Ready-to-merge version of
paritytech#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 <write@reusable.software>
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] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
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] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…paritytech#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](paritytech#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 <liam.aharon@hotmail.com>
Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com>
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
Co-authored-by: joepetrowski <joe@parity.io>
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.
New runtimes for the Coretime Chain (a.k.a. "Broker Chain") described in
RFC-1.

Replaces paritytech/cumulus#2889


- [x] Add Agile Coretime pallet
paritytech/substrate#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:
paritytech/devops#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 <donal.murray@parity.io>
Co-authored-by: 0xmovses <r.v.melkonian@gmail.com>
Co-authored-by: Liam Aharon <liam.aharon@hotmail.com>
Co-authored-by: Bastian Köcher <git@kchr.de>
Co-authored-by: Marcin S. <marcin@realemail.net>
Co-authored-by: Bastian Köcher <info@kchr.de>
Co-authored-by: command-bot <>
Co-authored-by: Branislav Kontur <bkontur@gmail.com>
Use `contains_key` to not require decoding the actual value.
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: 
- paritytech#105

related PRs:
- (required for) paritytech#1845
- (caused) paritytech#1717

// DONE make the pallet work only with `fungibles` trait and make it
free from the concept of a `native` asset -
paritytech#1842

---------

Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com>
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 paritytech#1271
…ech#2752)

I think I broke it in
paritytech#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 <bkontur@gmail.com>
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::&lt;Utc&gt;::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&lt;Tz&gt;::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-&gt;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] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…ytech#2031)

closes paritytech#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](paritytech#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) paritytech#1677
- (caused) paritytech#2033
- (caused) paritytech#1876

---------

Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com>
Co-authored-by: Liam Aharon <liam.aharon@hotmail.com>
this breaks cargo vendor which is necessary for building polkadot with
nix
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 <>
paritytech#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 <liam.aharon@hotmail.com>
Should have merged master into paritytech#2682 before merging.
Doordashcon and others added 17 commits January 20, 2024 10:51
Part of paritytech#239.

Invariant

1. The number of entries in `Tips` should be equal to `Reasons`.
2. If `OpenTip.finders_fee` is true, then `OpenTip.deposit` should be
greater than zero.
3. Reasons exists for each Tip[`OpenTip.reason`], implying equal length
of storage.

polkadot address: 12zsKEDVcHpKEWb99iFt3xrTCQQXZMu477nJQsTBBrof5k2h

---------

Co-authored-by: Gonçalo Pestana <g6pestana@gmail.com>
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
Bumps [comfy-table](https://github.com/nukesor/comfy-table) from 7.0.1
to 7.1.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/nukesor/comfy-table/releases">comfy-table's
releases</a>.</em></p>
<blockquote>
<h2>v7.1.0</h2>
<h2>[7.1.0] - 2023-10-21</h2>
<h3>Added</h3>
<ul>
<li>Add helper methods <code>(col,row)_count</code> and
<code>is_empty</code>. The first set of methods return the number of
columns and rows
respectively. The method <code>is_empty</code> returns if the table is
empty (contains no data rows). Implemented by
<a href="https://github.com/Techassi">Techassi</a> in <a
href="https://redirect.github.com/Nukesor/comfy-table/pull/119">#119</a>.</li>
</ul>
<h3>Chore</h3>
<ul>
<li>Bump crossterm dependency</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/Nukesor/comfy-table/blob/main/CHANGELOG.md">comfy-table's
changelog</a>.</em></p>
<blockquote>
<h2>[7.1.0] - 2023-10-21</h2>
<h3>Added</h3>
<ul>
<li>Add helper methods <code>(col,row)_count</code> and
<code>is_empty</code>. The first set of methods return the number of
columns and rows
respectively. The method <code>is_empty</code> returns if the table is
empty (contains no data rows). Implemented by
<a href="https://github.com/Techassi">Techassi</a> in <a
href="https://redirect.github.com/Nukesor/comfy-table/pull/119">#119</a>.</li>
</ul>
<h3>Chore</h3>
<ul>
<li>Bump crossterm dependency</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/Nukesor/comfy-table/commit/ef14a132f09a520ecac6945dc8e2529fb627f403"><code>ef14a13</code></a>
chore: Release comfy-table version 7.1.0</li>
<li><a
href="https://github.com/Nukesor/comfy-table/commit/3f0563e2b71157cf002b04c738a46da28876f6c3"><code>3f0563e</code></a>
docs: Update changelog</li>
<li><a
href="https://github.com/Nukesor/comfy-table/commit/fb636c9e72a0f7c3df102d497a5e61e683fda40b"><code>fb636c9</code></a>
Merge pull request <a
href="https://redirect.github.com/nukesor/comfy-table/issues/125">#125</a>
from Nukesor/dependabot/github_actions/actions/checko...</li>
<li><a
href="https://github.com/Nukesor/comfy-table/commit/f3c9e1d64fc22b8e675e7ebb18c2c49e621f4d0e"><code>f3c9e1d</code></a>
build(deps): bump actions/checkout from 3 to 4</li>
<li><a
href="https://github.com/Nukesor/comfy-table/commit/ec99e06bbe216426fe5d4734597fe745fdb87d63"><code>ec99e06</code></a>
Merge pull request <a
href="https://redirect.github.com/nukesor/comfy-table/issues/128">#128</a>
from Nukesor/updates</li>
<li><a
href="https://github.com/Nukesor/comfy-table/commit/329f4c9d7a042747234a60a681b7635eba27ad02"><code>329f4c9</code></a>
change: Use 1.70 in CI for criterion</li>
<li><a
href="https://github.com/Nukesor/comfy-table/commit/1b6d45290dae53a06a152dca3584f2156b87bfae"><code>1b6d452</code></a>
bump: Crossterm</li>
<li><a
href="https://github.com/Nukesor/comfy-table/commit/af3924c0daced677a9d8a2956c84fbfb50cca5e9"><code>af3924c</code></a>
chore: Clippy issues</li>
<li><a
href="https://github.com/Nukesor/comfy-table/commit/aebf4ef66d16ae356fdbac5d2ff5f2d2025fb48a"><code>aebf4ef</code></a>
Merge pull request <a
href="https://redirect.github.com/nukesor/comfy-table/issues/119">#119</a>
from Techassi/feature/row-col-count</li>
<li><a
href="https://github.com/Nukesor/comfy-table/commit/9f45a5e2d6c9f266f1bd6537fcf974b216359a1f"><code>9f45a5e</code></a>
Merge pull request <a
href="https://redirect.github.com/nukesor/comfy-table/issues/122">#122</a>
from ip1981/ip1981/cell-hash</li>
<li>Additional commits viewable in <a
href="https://github.com/nukesor/comfy-table/compare/v7.0.1...v7.1.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=comfy-table&package-manager=cargo&previous-version=7.0.1&new-version=7.1.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] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…bcommands (paritytech#2370)

This PR makes a small change the the adder parachain's CLI. It allows
the user to specify an output file explicitly when generating the
genesis wasm and head data.

Now we no longer have to rely on redirecting the output to a file at the
shell level. This change is nice because if you have any debugging lines
enabled, shell redirection does not work.

More to the point, this makes the adder parachain's CLI match the
cumulus collator's CLI. And that will allow tools like Zombienet (that
support both cumulus and the adder) to use the positional argument.

cc @pepoviola

---------

Co-authored-by: Joshy Orndorff <git-user-email.h0ly5@simplelogin.com>
Co-authored-by: Bastian Köcher <git@kchr.de>
@mrcnski Done the change on the prepare worker, once the prepare worker
part is good I'll do the same for the execute worker.

This is based on
https://github.com/koute/polkavm/blob/11beebd06276ce9b84f335350138479e714f6caf/crates/polkavm/src/sandbox/linux.rs#L711.

## TODO

- [x] Add a check for this capability at startup
- [x] Add prdoc mentioning the new Secure Validator Mode (optional)
requirement.

## Related

Closes paritytech#2162

---------

Co-authored-by: Marcin S <marcin@realemail.net>
This PR aims to channel the backpressure of the PVF host's preparation
and execution queues to the candidate validation subsystem consumers.

Related: paritytech#708
Clean up all the old syntax.

---------

Co-authored-by: command-bot <>
Co-authored-by: gupnik <nikhilgupta.iitk@gmail.com>
Co-authored-by: Nikhil Gupta <17176722+gupnik@users.noreply.github.com>
Co-authored-by: Maksym H <1177472+mordamax@users.noreply.github.com>
Srlabs review is most of the times just blocking the merge, especially
when the changes do not require any audit. This pr removes the
requirement of srlabs to approve these prs.
The goal is to move all system chains on Rococo (+ other testnets?) to
use async backing.

Starting with `asset-hub-rococo` to get feedback, before I do the rest.

## Related

Example: paritytech#1619
Guide:
https://github.com/w3f/polkadot-wiki/blob/master/docs/maintain/maintain-guides-async-backing.md

---------

Co-authored-by: Branislav Kontur <bkontur@gmail.com>
Co-authored-by: Dónal Murray <donal.murray@parity.io>
Changes `sc-informant` to respect the `--disable-log-color` CLI flag.

Closes: paritytech#2795

---------

Co-authored-by: Michal Kucharczyk <1728078+michalkucharczyk@users.noreply.github.com>
Bumps [memmap2](https://github.com/RazrFalcon/memmap2-rs) from 0.5.10 to
0.9.3.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/RazrFalcon/memmap2-rs/blob/master/CHANGELOG.md">memmap2's
changelog</a>.</em></p>
<blockquote>
<h2>[0.9.3] - 2023-12-19</h2>
<h3>Fixed</h3>
<ul>
<li>Build on Android.</li>
</ul>
<h2>[0.9.2] - 2023-12-17</h2>
<h3>Fixed</h3>
<ul>
<li>Build on FreeBSD.</li>
</ul>
<h2>[0.9.1] - 2023-12-16</h2>
<h3>Changed</h3>
<ul>
<li>Added <code>MmapOptions::huge</code> method to support mapping
hugetlb. Linux only.
<a href="https://github.com/ollie-etl"><code>@​ollie-etl</code></a>
<a
href="https://github.com/oliverbunting"><code>@​oliverbunting</code></a></li>
</ul>
<h2>[0.9.0] - 2023-10-03</h2>
<h3>Changed</h3>
<ul>
<li>The <code>Advice</code> struct was split into two enums:
<code>Advice</code> and <code>UncheckedAdvice</code>.<!-- raw HTML
omitted -->
<code>Advice</code> can be passed to safe <code>advise</code> and
<code>advise_range</code> methods.
And <code>UncheckedAdvice</code> can be passed to unsafe
<code>unchecked_advise</code>
and <code>unchecked_advise_range</code> methods.<!-- raw HTML omitted
-->
<a
href="https://github.com/adamreichold"><code>@​adamreichold</code></a></li>
</ul>
<h2>[0.8.0] - 2023-09-25</h2>
<h3>Changed</h3>
<ul>
<li>The <code>Advice</code> type is a struct and not an enum now.
<a
href="https://github.com/adamreichold"><code>@​adamreichold</code></a></li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Some of the <code>Advise</code> variants were unsound and now
require <code>unsafe</code> to be constructed.
<a
href="https://github.com/adamreichold"><code>@​adamreichold</code></a></li>
</ul>
<h2>[0.7.1] - 2023-06-24</h2>
<h3>Fixed</h3>
<ul>
<li>Mapping beyond 4GB offset on 32 bit glibc. Linux-only.
<a href="https://github.com/lvella"><code>@​lvella</code></a></li>
</ul>
<h2>[0.7.0] - 2023-06-08</h2>
<h3>Added</h3>
<ul>
<li><code>Mmap::remap</code>, <code>MmapMut::remap</code> and
<code>MmapRaw::remap</code>. Linux-only.
<a
href="https://github.com/Phantomical"><code>@​Phantomical</code></a></li>
<li><code>Advice::PopulateRead</code> and
<code>Advice::PopulateWrite</code>. Linux-only.
<a
href="https://github.com/Jesse-Bakker"><code>@​Jesse-Bakker</code></a></li>
</ul>
<h3>Changed</h3>
<ul>
<li>libc crate &gt;= 0.2.143 is required now.</li>
</ul>
<h2>[0.6.2] - 2023-05-24</h2>
<h3>Fixed</h3>
<ul>
<li>Alignment for empty files on Windows.
<a href="https://github.com/timvisee"><code>@​timvisee</code></a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/RazrFalcon/memmap2-rs/commit/5a49e8ab0bda97770a6ed972633dfb862e17cd38"><code>5a49e8a</code></a>
Version bump.</li>
<li><a
href="https://github.com/RazrFalcon/memmap2-rs/commit/1079b61f400542a5a4b946d9f57761eb2ae674a4"><code>1079b61</code></a>
Fix build on Android.</li>
<li><a
href="https://github.com/RazrFalcon/memmap2-rs/commit/c82f49b2969807e3ae9f2e835917ddfd2bd1d25d"><code>c82f49b</code></a>
Version bump.</li>
<li><a
href="https://github.com/RazrFalcon/memmap2-rs/commit/faafbfd031e283ab6ef637e8c9d6a5d85e84602b"><code>faafbfd</code></a>
Fix formatting.</li>
<li><a
href="https://github.com/RazrFalcon/memmap2-rs/commit/428bb9bf061af89c33d6188dfa4abff2ffcd7e31"><code>428bb9b</code></a>
Fix tests.</li>
<li><a
href="https://github.com/RazrFalcon/memmap2-rs/commit/55109c68837e80f3c00f4a56a75a6abd49ead7c7"><code>55109c6</code></a>
Disable huge tables support for freebsd, since it doesn't support
them.</li>
<li><a
href="https://github.com/RazrFalcon/memmap2-rs/commit/c173463cc3bfae8b5e6f19ae909af89dd11afe39"><code>c173463</code></a>
Version bump.</li>
<li><a
href="https://github.com/RazrFalcon/memmap2-rs/commit/e5faf1339d21ecbe4f62a803050aaae415c96a8d"><code>e5faf13</code></a>
Fix madvise tests to not assume 4k pages.</li>
<li><a
href="https://github.com/RazrFalcon/memmap2-rs/commit/3c71286cebd43b49e87449490608024e6b05596b"><code>3c71286</code></a>
Add huge pages support.</li>
<li><a
href="https://github.com/RazrFalcon/memmap2-rs/commit/f16835d01ad1d36198718e23273558f1947fc138"><code>f16835d</code></a>
Version bump.</li>
<li>Additional commits viewable in <a
href="https://github.com/RazrFalcon/memmap2-rs/compare/v0.5.10...v0.9.3">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=memmap2&package-manager=cargo&previous-version=0.5.10&new-version=0.9.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 <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
# Conflicts:
#	.github/workflows/srtool.yml
#	.gitlab/pipeline/test.yml
#	Cargo.lock
#	bridges/primitives/runtime/src/chain.rs
#	cumulus/parachains/common/src/rococo.rs
#	cumulus/parachains/integration-tests/emulated/chains/parachains/bridges/bridge-hub-rococo/Cargo.toml
#	cumulus/parachains/integration-tests/emulated/tests/assets/asset-hub-rococo/src/tests/swap.rs
#	cumulus/parachains/integration-tests/emulated/tests/assets/asset-hub-westend/src/tests/swap.rs
#	cumulus/parachains/integration-tests/emulated/tests/bridges/bridge-hub-rococo/Cargo.toml
#	cumulus/parachains/integration-tests/emulated/tests/bridges/bridge-hub-rococo/src/tests/snowbridge.rs
#	cumulus/parachains/runtimes/assets/asset-hub-rococo/Cargo.toml
#	cumulus/parachains/runtimes/assets/asset-hub-rococo/src/lib.rs
#	cumulus/parachains/runtimes/assets/asset-hub-rococo/src/xcm_config.rs
#	cumulus/parachains/runtimes/assets/asset-hub-westend/src/lib.rs
#	cumulus/parachains/runtimes/assets/asset-hub-westend/src/xcm_config.rs
#	cumulus/parachains/runtimes/assets/common/src/benchmarks.rs
#	cumulus/parachains/runtimes/assets/common/src/local_and_foreign_assets.rs
#	cumulus/parachains/runtimes/assets/common/src/matching.rs
#	cumulus/parachains/runtimes/bridge-hubs/bridge-hub-rococo/Cargo.toml
#	cumulus/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/lib.rs
#	cumulus/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/xcm_config.rs
#	cumulus/parachains/runtimes/bridge-hubs/bridge-hub-rococo/tests/tests.rs
#	cumulus/parachains/runtimes/bridge-hubs/common/Cargo.toml
#	cumulus/parachains/runtimes/bridge-hubs/common/src/message_queue.rs
#	cumulus/parachains/runtimes/coretime/coretime-rococo/Cargo.toml
#	cumulus/parachains/runtimes/coretime/coretime-rococo/build.rs
#	cumulus/parachains/runtimes/coretime/coretime-rococo/src/coretime.rs
#	cumulus/parachains/runtimes/coretime/coretime-rococo/src/lib.rs
#	cumulus/parachains/runtimes/coretime/coretime-rococo/src/weights/cumulus_pallet_parachain_system.rs
#	cumulus/parachains/runtimes/coretime/coretime-rococo/src/weights/cumulus_pallet_xcmp_queue.rs
#	cumulus/parachains/runtimes/coretime/coretime-rococo/src/weights/frame_system.rs
#	cumulus/parachains/runtimes/coretime/coretime-rococo/src/weights/mod.rs
#	cumulus/parachains/runtimes/coretime/coretime-rococo/src/weights/pallet_balances.rs
#	cumulus/parachains/runtimes/coretime/coretime-rococo/src/weights/pallet_broker.rs
#	cumulus/parachains/runtimes/coretime/coretime-rococo/src/weights/pallet_collator_selection.rs
#	cumulus/parachains/runtimes/coretime/coretime-rococo/src/weights/pallet_message_queue.rs
#	cumulus/parachains/runtimes/coretime/coretime-rococo/src/weights/pallet_multisig.rs
#	cumulus/parachains/runtimes/coretime/coretime-rococo/src/weights/pallet_session.rs
#	cumulus/parachains/runtimes/coretime/coretime-rococo/src/weights/pallet_timestamp.rs
#	cumulus/parachains/runtimes/coretime/coretime-rococo/src/weights/pallet_utility.rs
#	cumulus/parachains/runtimes/coretime/coretime-rococo/src/weights/pallet_xcm.rs
#	cumulus/parachains/runtimes/coretime/coretime-rococo/src/weights/xcm/mod.rs
#	cumulus/parachains/runtimes/coretime/coretime-rococo/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs
#	cumulus/parachains/runtimes/coretime/coretime-rococo/src/weights/xcm/pallet_xcm_benchmarks_generic.rs
#	cumulus/parachains/runtimes/coretime/coretime-rococo/src/xcm_config.rs
#	cumulus/parachains/runtimes/coretime/coretime-westend/Cargo.toml
#	cumulus/parachains/runtimes/coretime/coretime-westend/src/lib.rs
#	cumulus/parachains/runtimes/coretime/coretime-westend/src/weights/mod.rs
#	cumulus/parachains/runtimes/coretime/coretime-westend/src/weights/xcm/mod.rs
#	cumulus/parachains/runtimes/coretime/coretime-westend/src/xcm_config.rs
#	cumulus/parachains/runtimes/testing/penpal/src/lib.rs
#	cumulus/parachains/runtimes/testing/penpal/src/xcm_config.rs
#	cumulus/polkadot-parachain/Cargo.toml
#	cumulus/polkadot-parachain/src/chain_spec/coretime.rs
#	cumulus/polkadot-parachain/src/command.rs
#	cumulus/primitives/parachain-inherent/src/lib.rs
#	cumulus/test/service/Cargo.toml
#	docs/sdk/src/reference_docs/runtime_vs_smart_contract.rs
#	polkadot/node/core/approval-voting/Cargo.toml
#	polkadot/node/malus/src/interceptor.rs
#	polkadot/node/subsystem-bench/Cargo.toml
#	polkadot/node/subsystem-bench/README.md
#	polkadot/node/subsystem-bench/src/subsystem-bench.rs
#	polkadot/xcm/pallet-xcm-benchmarks/src/generic/benchmarking.rs
#	polkadot/xcm/xcm-builder/src/tests/mock.rs
#	polkadot/xcm/xcm-simulator/example/src/parachain.rs
#	scripts/snowbridge_update_subtree.sh
#	substrate/bin/node/runtime/src/lib.rs
#	substrate/client/cli/Cargo.toml
#	substrate/client/consensus/beefy/src/lib.rs
#	substrate/frame/alliance/src/mock.rs
#	substrate/frame/assets/src/tests/sets.rs
#	substrate/frame/broker/src/coretime_interface.rs
#	substrate/frame/broker/src/mock.rs
#	substrate/frame/support/src/traits/tokens/fungible/item_of.rs
#	substrate/frame/support/src/traits/tokens/fungible/union_of.rs
#	substrate/frame/support/src/traits/tokens/fungibles/union_of.rs
#	substrate/primitives/runtime/Cargo.toml
#	substrate/utils/frame/try-runtime/cli/Cargo.toml
This PR wraps the `Snapshot`, `SnapshotMetadata` and `DesiredTargets`
storage items in the [EPM
pallet](https://paritytech.github.io/substrate/master/pallet_election_provider_multi_phase/index.html)
in order to keep them in sync throughout the election lifetime and in
order to be killed together.

Prior to this PR, these storage items were mutated in different places
in the pallet;

In addition 2 helper `fns` are introduced for chekcing if all the
wrapped storage items exist or not;

Fixes paritytech#413 ;

---------

Co-authored-by: Gonçalo Pestana <g6pestana@gmail.com>
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com>
Co-authored-by: Bastian Köcher <git@kchr.de>
@claravanstaden claravanstaden changed the title Update from Master Update from master Jan 22, 2024
dependabot bot and others added 8 commits January 22, 2024 15:40
Bumps [wasm-instrument](https://github.com/paritytech/wasm-instrument)
from 0.3.0 to 0.4.0.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/paritytech/wasm-instrument/blob/master/CHANGELOG.md">wasm-instrument's
changelog</a>.</em></p>
<blockquote>
<h1>Changelog</h1>
<p>All notable changes to this project will be documented in this
file.</p>
<p>The format is based on <a
href="https://keepachangelog.com/en/1.0.0/">Keep a Changelog</a>,
and this project adheres to <a
href="https://semver.org/spec/v2.0.0.html">Semantic Versioning</a>.</p>
<p>The semantic versioning guarantees cover the interface to the
substrate runtime which
includes this pallet as a dependency. This module will also add storage
migrations whenever
changes require it. Stability with regard to offchain tooling is
explicitly excluded from
this guarantee: For example adding a new field to an in-storage data
structure will require
changes to frontends to properly display it. However, those changes will
still be regarded
as a minor version bump.</p>
<p>The interface provided to smart contracts will adhere to semver with
one exception: Even
major version bumps will be backwards compatible with regard to already
deployed contracts.
In other words: Upgrading this pallet will not break pre-existing
contracts.</p>
<h2>[Unreleased]</h2>
<h3>New</h3>
<ul>
<li>Add new gas metering method: mutable global + local gas function
<a
href="https://redirect.github.com/paritytech/wasm-instrument/pull/34">#34</a></li>
<li>Account for locals initialization costs
<a
href="https://redirect.github.com/paritytech/wasm-instrument/pull/38">#38</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/paritytech/wasm-instrument/commits/v0.4.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=wasm-instrument&package-manager=cargo&previous-version=0.3.0&new-version=0.4.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

You can trigger a rebase of this PR 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>

> **Note**
> Automatic rebases have been disabled on this pull request as it has
been open for over 30 days.

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
)

... it was like that before it was accidentally changed in
paritytech@a84dd0d

Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
)

Step towards paritytech#1975

As reported
paritytech#1975 (comment)
I'd like to encapsulate crypto related stuff in a dedicated folder.

Currently all cryptographic primitive wrappers are all sparsed in
`substrate/core` which contains "misc core" stuff.

To simplify the process, as the first step with this PR I propose to
move the cryptographic hashing there.

The `substrate/crypto` folder was already created to contains `ec-utils`
crate.

Notes:
- rename `sp-core-hashing` to `sp-crypto-hashing`
- rename `sp-core-hashing-proc-macro` to `sp-crypto-hashing-proc-macro`
- As the crates name is changed I took the freedom to restart fresh from
version 0.1.0 for both crates

---------

Co-authored-by: Robert Hambrock <roberthambrock@gmail.com>
# Conflicts:
#	bridges/snowbridge/parachain/pallets/outbound-queue/merkle-tree/Cargo.toml
#	bridges/snowbridge/parachain/pallets/outbound-queue/merkle-tree/src/lib.rs
@claravanstaden claravanstaden marked this pull request as ready for review January 23, 2024 08:36
@claravanstaden claravanstaden merged commit 880ba2c into snowbridge Jan 23, 2024
9 of 20 checks passed
@claravanstaden claravanstaden deleted the update-from-master-22-jan branch January 23, 2024 09:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet