- Dec 21, 2023
-
-
eskimor authored
-
eskimor authored
-
eskimor authored
-
command-bot authored
-
eskimor authored
-
command-bot authored
-
Bastian Köcher authored
-
Bastian Köcher authored
-
Bastian Köcher authored
-
Svyatoslav Nikolsky authored
related to https://github.com/paritytech/parity-bridges-common/issues/2739 Co-authored-by: Branislav Kontur <[email protected]>
-
- Dec 20, 2023
-
-
Marcin S. authored
-
joe petrowski authored
Should have merged master into #2682 before merging.
-
eskimor authored
For bringing it to the same state with regards to system- and lease-holding paras. --------- Co-authored-by: eskimor <[email protected]> Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: command-bot <>
-
Dónal Murray authored
Many clippy lints usually enforced by `-Dcomplexity` and `-Dcorrectness` are not caught by CI as they are gated by `features`, like `runtime-benchmarks`, while the clippy CI job runs with only the default features for all targets. This PR also adds a CI step to run clippy with `--all-features` to ensure the code quality is maintained behind feature gates from now on. To improve local development, clippy lints are downgraded to warnings, but they still will result in an error at CI due to the `-Dwarnings` rustflag. --------- Co-authored-by: Liam Aharon <[email protected]>
-
joe petrowski authored
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 <>
-
André Silva authored
this breaks cargo vendor which is necessary for building polkadot with nix
-
Muharem Ismailov authored
closes https://github.com/paritytech/polkadot-sdk/issues/1842 Decoupling Pallet from the Concept of Native Currency Currently, the pallet is intrinsically linked with the concept of native currency, requiring users to provide implementations of the `fungible::*` and `fungibles::*` traits to interact with native and non native assets. This incapsulates some non-related to the pallet complexity and makes it less adaptable in contexts where the native currency concept is absent. With this PR, the dependence on `fungible::*` for liquidity-supplying assets has been removed. Instead, the native and non-native currencies' handling is now overseen by a single type that implements the `fungibles::*` traits. To simplify this integration, types have been introduced to facilitate the creation of a union between `fungible::*` and `fungibles::*` implementations, producing a unified `fungibles::*` type. One of the reasons driving these changes is the ambition to create a more user-friendly API for the `SwapCredit` implementation. Given that it interacts with two distinct credit types from `fungible` and `fungibles`, a unified type was introduced. Clients now manage potential conversion failures for those credit types. In certain contexts, it's vital to guarantee that operations are fail-safe, like in this impl - [PR](https://github.com/paritytech/polkadot-sdk/pull/1845), place in [code](https://github.com/paritytech/polkadot-sdk/blob/20b85a5fada8f55c98ba831964f5866ffeadf4da/cumulus/primitives/utility/src/lib.rs#L429). Additional Updates: - abstracted the pool ID and its account derivation logic via trait bounds, along with common implementation offerings; - removed `inc_providers` on a pool creation for the pool account; - benchmarks: -- swap complexity is N, not const; -- removed `From<u128> + Into<u128>` bound from `T::Balance`; -- removed swap/liquidity/.. amount constants, resolve them dynamically based on pallet configuration; -- migrated to v2 API; - `OnUnbalanced` handler for the pool creation fee, replacing direct transfers to a specified account ID; - renamed `MultiAssetId` to `AssetKind` aligning with naming across frame crates; related PRs: - (depends) https://github.com/paritytech/polkadot-sdk/pull/1677 - (caused) https://github.com/paritytech/polkadot-sdk/pull/2033 - (caused) https://github.com/paritytech/polkadot-sdk/pull/1876 --------- Co-authored-by: joe petrowski <[email protected]> Co-authored-by: Liam Aharon <[email protected]>
-
Marcin S. authored
-
Marcin S. authored
-
Bastian Köcher authored
-
dependabot[bot] authored
Bumps [chrono](https://github.com/chronotope/chrono) from 0.4.27 to 0.4.31. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/chronotope/chrono/releases">chrono's releases</a>.</em></p> <blockquote> <h2>0.4.31</h2> <p>Another maintenance release. It was not a planned effort to improve our support for UNIX timestamps, yet most PRs seem related to this.</p> <h3>Deprecations</h3> <ul> <li>Deprecate <code>timestamp_nanos</code> in favor of the non-panicking <code>timestamp_nanos_opt</code> (<a href="https://redirect.github.com/chronotope/chrono/issues/1275">#1275</a>)</li> </ul> <h3>Additions</h3> <ul> <li>Add <code>DateTime::<Utc>::from_timestamp</code> (<a href="https://redirect.github.com/chronotope/chrono/issues/1279">#1279</a>, thanks <a href="https://github.com/demurgos"><code>@demurgos</code></a>)</li> <li>Add <code>TimeZone::timestamp_micros</code> (<a href="https://redirect.github.com/chronotope/chrono/issues/1285">#1285</a>, thanks <a href="https://github.com/emikitas"><code>@emikitas</code></a>)</li> <li>Add <code>DateTime<Tz>::timestamp_nanos_opt</code> and <code>NaiveDateTime::timestamp_nanos_opt</code> (<a href="https://redirect.github.com/chronotope/chrono/issues/1275">#1275</a>)</li> <li>Add <code>UNIX_EPOCH</code> constants (<a href="https://redirect.github.com/chronotope/chrono/issues/1291">#1291</a>)</li> </ul> <h3>Fixes</h3> <ul> <li>Format day of month in RFC 2822 without padding (<a href="https://redirect.github.com/chronotope/chrono/issues/1272">#1272</a>)</li> <li>Don't allow strange leap seconds which are not on a minute boundary initialization methods (<a href="https://redirect.github.com/chronotope/chrono/issues/1283">#1283</a>) This makes many methods a little more strict: <ul> <li><code>NaiveTime::from_hms_milli</code></li> <li><code>NaiveTime::from_hms_milli_opt</code></li> <li><code>NaiveTime::from_hms_micro</code></li> <li><code>NaiveTime::from_hms_micro_opt</code></li> <li><code>NaiveTime::from_hms_nano</code></li> <li><code>NaiveTime::from_hms_nano_opt</code></li> <li><code>NaiveTime::from_num_seconds_from_midnight</code></li> <li><code>NaiveTime::from_num_seconds_from_midnight_opt</code></li> <li><code>NaiveDate::and_hms_milli</code></li> <li><code>NaiveDate::and_hms_milli_opt</code></li> <li><code>NaiveDate::and_hms_micro</code></li> <li><code>NaiveDate::and_hms_micro_opt</code></li> <li><code>NaiveDate::and_hms_nano</code></li> <li><code>NaiveDate::and_hms_nano_opt</code></li> <li><code>NaiveDateTime::from_timestamp</code></li> <li><code>NaiveDateTime::from_timestamp_opt</code></li> <li><code>TimeZone::timestamp</code></li> <li><code>TimeZone::timestamp_opt</code></li> </ul> </li> <li>Fix underflow in <code>NaiveDateTime::timestamp_nanos_opt</code> (<a href="https://redirect.github.com/chronotope/chrono/issues/1294">#1294</a>, thanks <a href="https://github.com/crepererum"><code>@crepererum</code></a>)</li> </ul> <h3>Documentation</h3> <ul> <li>Add more documentation about the RFC 2822 obsolete date format (<a href="https://redirect.github.com/chronotope/chrono/issues/1267">#1267</a>)</li> </ul> <h3>Internal</h3> <ul> <li>Remove internal <code>__doctest</code> feature and <code>doc_comment</code> dependency (<a href="https://redirect.github.com/chronotope/chrono/issues/1276">#1276</a>)</li> <li>CI: Bump <code>actions/checkout</code> from 3 to 4 (<a href="https://redirect.github.com/chronotope/chrono/issues/1280">#1280</a>)</li> <li>Optimize <code>NaiveDate::add_days</code> for small values (<a href="https://redirect.github.com/chronotope/chrono/issues/1214">#1214</a>)</li> <li>Upgrade <code>pure-rust-locales</code> to 0.7.0 (<a href="https://redirect.github.com/chronotope/chrono/issues/1288">#1288</a>, thanks <a href="https://github.com/jeremija"><code>@jeremija</code></a> wo did good improvements on <code>pure-rust-locales</code>)</li> </ul> <p>Thanks to all contributors on behalf of the chrono team, <a href="https://github.com/djc"><code>@djc</code></a> and <a href="https://github.com/pitdicker"><code>@pitdicker</code></a>!</p> <h2>0.4.30</h2> <p>In this release, we have decided to swap out the <code>chrono::Duration</code> type (which has been a re-export of time 0.1 <code>Duration</code> type) with our own definition, which exposes a strict superset of the <code>time::Duration</code> API. This helps avoid warnings about the [CVE-2020-26235] and [RUSTSEC-2020-0071] advisories for downstream users and allows us to improve the <code>Duration</code> API going forward.</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/chronotope/chrono/commit/e730c6ac45649a6a636abf30b796304bc46ecd15"><code>e730c6a</code></a> Bump version to 0.4.31</li> <li><a href="https://github.com/chronotope/chrono/commit/2afdde8f7f23f087b5027662e2882dba0663fef7"><code>2afdde8</code></a> fix: underflow during datetime->nanos conversion</li> <li><a href="https://github.com/chronotope/chrono/commit/46ad2c2b2c901eb20e43a7fca025aac02605bda4"><code>46ad2c2</code></a> Add <code>UNIX_EPOCH</code> constants</li> <li><a href="https://github.com/chronotope/chrono/commit/1df8db3a547bf50929d3d1774306f996b63e9e7c"><code>1df8db3</code></a> Add TimeZone::timestamp_micros</li> <li><a href="https://github.com/chronotope/chrono/commit/861d4e12487181e71744478a320db20f56bd61af"><code>861d4e1</code></a> Make TimeZone::timestamp_millis_opt use</li> <li><a href="https://github.com/chronotope/chrono/commit/3c4846a88235a38105a047b0acd34ce239a1cfb5"><code>3c4846a</code></a> Upgrade pure-rust-locales to 0.7.0</li> <li><a href="https://github.com/chronotope/chrono/commit/6665804676e55e9e2375eed7c10cc9e0910abf11"><code>6665804</code></a> Deny leap second if secs != 59 in <code>from_num_seconds_from_midnight_opt</code></li> <li><a href="https://github.com/chronotope/chrono/commit/61b7ffbb7a95df577c308eb0f2ab5c68e1566cf1"><code>61b7ffb</code></a> Deny leap second if secs != 59 in <code>from_hms_nano_opt</code></li> <li><a href="https://github.com/chronotope/chrono/commit/202af6cfda9bfdb195dc96377fcdeee7ed024b65"><code>202af6c</code></a> Don't generate leap seconds that are not 60 in NaiveTime's Arbitrary impl</li> <li><a href="https://github.com/chronotope/chrono/commit/60283ab55cbc9ea6caa86e19bf5da2c086cdf4bc"><code>60283ab</code></a> Don't create strange leap seconds in tests</li> <li>Additional commits viewable in <a href="https://github.com/chronotope/chrono/compare/v0.4.27...v0.4.31">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=chrono&package-manager=cargo&previous-version=0.4.27&new-version=0.4.31)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores ) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
-
Bastian Köcher authored
-
eskimor authored
-
eskimor authored
-
Svyatoslav Nikolsky authored
I think I broke it in https://github.com/paritytech/polkadot-sdk/pull/2139 - fees has increased and amounts that we send are no longer enough to cover fees. Also changed a consts (test + 33%) using latest weights. --------- Co-authored-by: Branislav Kontur <[email protected]>
-
eskimor authored
-
eskimor authored
-
- Dec 19, 2023
-
-
André Silva authored
-
Bastian Köcher authored
-
Bastian Köcher authored
-
eskimor authored
-
eskimor authored
-
Bastian Köcher authored
-
Bastian Köcher authored
-
Egor_P authored
This PR introduces the `srtool` GHA which was used in the old `cumulus` repo to build and check runtimes on the weekly basis schedule. The job is triggered: - every Monday at 2AM, automatically - on each tag push or push to the release branch - can be triggered manually as well Addresses #1271
-
Muharem Ismailov authored
Introduces a swap implementation that allows the exchange of a credit (aka Negative Imbalance) of one asset for a credit of another asset. This is particularly useful when a credit swap is required but may not have sufficient value to meet the ED constraint, hence cannot be deposited to temp account before. An example use case is when XCM fees are paid using an asset held in the XCM executor registry and has to be swapped for native currency. Additional Updates: - encapsulates the existing `Swap` trait impl within a transactional context, since partial storage mutation is possible when an error occurs; - supplied `Currency` and `Assets` impls must be implemented over the same `Balance` type, the `AssetBalance` generic type is dropped. This helps to avoid numerous type conversion and overflow cases. If those types are different it should be handled outside of the pallet; - `Box` asset kind on a pallet level, unbox on a runtime level - here [why](https://substrate.stackexchange.com/questions/10039/boxed-argument-of-a-dispatchable/10103#10103); - `path` uses `Vec` now, instead of `BoundedVec` since it is never used in PoV; - removes the `Transfer` event due to it's redundancy with the events emitted by `fungible/s` implementations; - modifies the `SwapExecuted` event type; related issue: - https://github.com/paritytech/polkadot-sdk/issues/105 related PRs: - (required for) https://github.com/paritytech/polkadot-sdk/pull/1845 - (caused) https://github.com/paritytech/polkadot-sdk/pull/1717 // DONE make the pallet work only with `fungibles` trait and make it free from the concept of a `native` asset - https://github.com/paritytech/polkadot-sdk/issues/1842 --------- Co-authored-by: joe petrowski <[email protected]>
-
Bastian Köcher authored
Use `contains_key` to not require decoding the actual value.
-
Marcin S. authored
-
juangirini authored
Closes https://github.com/paritytech/polkadot-sdk-docs/issues/53
-
juangirini authored
closes https://github.com/paritytech/polkadot-sdk-docs/issues/41
-