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

feat(pallet-assets): define and implement sufficients traits for pallet-assets #2872

Conversation

pandres95
Copy link
Contributor

@pandres95 pandres95 commented Jan 7, 2024

This pull request supersedes #1768, and implements methods to access and mutate is_sufficient value of an asset.


Description

This Pull Request introduces two traits under pallet-asset: a trait called sufficients::Inspect, and a trait called sufficients::Mutate. These methods are useful since pallet implementors can benefit from having this (so far missing) piece of information, either for testing checks or for handling accounts touching on behalf of others.

Use Cases

Use Case: Checking whether an asset was appropriately created as sufficient

A pallet might have a rule that allows creating assets, but only marking one of these (i.e. the first) as sufficient. A typical test for this would resemble something like this

#[test]
fn it_works() {
    new_test_ext().execute_with(|| {
        setup();

        // Can register a new asset
        assert_ok!(
            Communities::create_asset(RuntimeOrigin::signed(COMMUNITY_ADMIN), COMMUNITY, ASSET_B, 1)
        );

        // Can register additional assets
        assert_ok!(
            Communities::create_asset(RuntimeOrigin::signed(COMMUNITY_ADMIN), COMMUNITY, ASSET_C, 1)
        );

        // First asset owned by the community is sufficient by default
        assert_sufficiency(COMMUNITY, ASSET_B, 1, true);

        // Additional assets owned by the community are not sufficient
        // by default
        assert_sufficiency(COMMUNITY, ASSET_C, 1, false);
    });
}

Without this getter, implementing assert_sufficiency would require (as shown here) the following steps:

  1. Forcing access to the storage via sp_io::storage::get.
  2. Encoding a AssetDetails struct that resembles the expected one, since is_sufficient is a private field.
  3. Asserting equality for both structs.

With the getter, it would be something as simple as this, no further illegal accesses required:

        // First asset owned by the community is sufficient by default
        assert_eq(Assets::is_sufficient(ASSET_B), true);

        // Additional assets owned by the community are not sufficient
        // by default
        assert_eq(Assets::is_sufficient(ASSET_C), false);

Use Case: Checking sufficiency for an existing asset

Some pallets might see it useful to check whether an asset is sufficient, for some cases where it might be useful (e.g. some restricted versions of DEXes where pool implementors would like to check that those assets are sufficient).

Without the getter, this would require building the pallet as an extension of the Assets pallet. Some tricks like the one explained in the use case above would be impractical.

Implementation

The implementation is actually really simple.

  1. Define the traits under substrate/frame/pallets/assets/src/traits.rs: sufficients::Inspect and sufficients::Mutate. The method signature returns bool, defaults to false when the asset does not exist.
  2. Implement on the impl_sufficients.rs file, getting the asset's details, and mapping the response as asset.is_sufficient.

Checklist

  • My PR includes a detailed description as outlined in the "Description" section above
  • My PR follows the labeling requirements of this project (at minimum one label for T
    required)
  • I have made corresponding changes to the documentation (if applicable)
  • I have added tests that prove my fix is effective or that my feature works (if applicable)

@pandres95 pandres95 requested review from a team January 7, 2024 16:55
@paritytech-review-bot paritytech-review-bot bot requested a review from a team January 7, 2024 16:55
@pandres95 pandres95 force-pushed the pandres95--assets-traits-sufficients branch from aa33aa3 to b1e3ae1 Compare January 7, 2024 17:03
@pandres95
Copy link
Contributor Author

Per @muharem's suggestion, I decided to close #1768 and continue here. Ready to gather feedback (I know this PR might come with some controversy).

@paritytech-review-bot paritytech-review-bot bot requested a review from a team January 7, 2024 22:52
@pandres95 pandres95 force-pushed the pandres95--assets-traits-sufficients branch 5 times, most recently from ac13956 to 0d7e338 Compare January 7, 2024 22:58
substrate/frame/assets/src/traits.rs Outdated Show resolved Hide resolved
substrate/frame/assets/src/traits.rs Outdated Show resolved Hide resolved
substrate/frame/assets/src/traits.rs Outdated Show resolved Hide resolved
substrate/frame/assets/src/traits.rs Outdated Show resolved Hide resolved
substrate/frame/assets/src/traits.rs Outdated Show resolved Hide resolved
substrate/frame/assets/src/traits.rs Outdated Show resolved Hide resolved
substrate/frame/assets/src/tests.rs Show resolved Hide resolved
substrate/frame/assets/src/functions.rs Outdated Show resolved Hide resolved
@@ -0,0 +1,26 @@
pub mod sufficients {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sufficients isn't really a good name because the mod has nothing to do with the behavior of sufficient assets, but merely setting the sufficient property to true or false.

I would therefore call it sufficiency.

I also question whether this should be in the Assets pallet at all and not frame-support like the Account Touch trait.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@muharem and @liamaharon have done some recent work on this pallet, maybe they can comment.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I get it. Just resolved all the other changes.

As for whether sufficiency should be on Assets pallet and not on frame-support, my hint was this @muharem's comment:

not sure if this concept is general enough, I cannot really say.

This is because this concept might not be general enough, but is somewhat specific to Assets. Instead, the most general concept, actually, is the AccountTouch trait.

but an alternative can be a separate trait on Assets pallet level, which lets you inspect some additional characteristics of an asset.

That's what I based on to close #1768 and open this PR instead. 😁

@paritytech-review-bot paritytech-review-bot bot requested a review from a team January 8, 2024 18:44
Copy link
Contributor

@muharem muharem left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I clearly see use cases for a trait to read the is_sufficient flag. But I am not fully agree with the use case you giving in the description - "Checking whether an asset was appropriately created as sufficient". When it is tests within the package, I think it is fine to access the internals of a package (e.g. storage). And you should not need to test it as in your example from outside.

I also would like to question if you have a real use case, where you need to alter is_sufficient flag. if you look to the public api of the pallet, the altering api - force_asset_status has more parameters then just one flag. I can easily imagine someone coming and introducing new function with all those parameters. What I am trying to say, it is good to have real use cases for introducing such contracts. And not trying to say that one better than another.

@@ -0,0 +1,20 @@
use crate::{
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe traits and impls? otherwise the list of files will grow here pretty quick.
I also have only strong opinion on keeping our folders/files/modules style consistent, since there is no yet agreement on it, I would just try to keep it close to what we have now, and now we tend to have less files than many.

Copy link
Contributor Author

@pandres95 pandres95 Jan 16, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would this mean also moving impl_fungibles and impl_stored_map onto an impls file/folder? I see the point on making the file structure lighter, but seeing that other impls are not that light (i.e. impl_fungibles is 311 lines) a bit of not-flatness might be good for the sake of readibility from time to time.

My suggestion:

...
impls/
├─ fungibles.rs
├─ stored_maps.rs
├─ sufficiency.rs
├─ mod.rs
...
traits.rs
...

substrate/frame/assets/src/traits.rs Outdated Show resolved Hide resolved
@pandres95 pandres95 force-pushed the pandres95--assets-traits-sufficients branch from 41dbc74 to f5f1878 Compare January 16, 2024 14:01
@paritytech-review-bot paritytech-review-bot bot requested a review from a team January 16, 2024 14:02
@pandres95
Copy link
Contributor Author

Reply to #2872 (comment)

also I see the possibility for these traits moving support module

I see it's possible to come up with a more general solution, by considering a more general trait that works alongside CanTouch and would be CanProvide/SetProvider (a hook).

This would general enough, and would enable every possible entity out there to be a provider or set that possibility. Now, I'm not sure of whether that would be achievable without some ambiguity (on entity ID, for example) so I think sticking to sufficiency for now would help @muharem. Maybe if we get enough feedback on a way around, I could move forward with a more general solution that can go on frame-support in the future.

@pandres95 pandres95 force-pushed the pandres95--assets-traits-sufficients branch from 0bdaf95 to 34ef3a7 Compare January 30, 2024 16:32
@pandres95
Copy link
Contributor Author

Since I've already implemented the last set of requested changes, it'd be nice to have some sort of feedback regarding this PR, before I can move forward with a further proposal on generalizing this concept. I'd appreciate that.

cc/ @muharem @joepetrowski

@pandres95 pandres95 closed this Feb 11, 2024
@pandres95
Copy link
Contributor Author

Closing due to inactivity.

If someone is interested about this proposal in the future, just ping me.

serban300 pushed a commit to serban300/polkadot-sdk that referenced this pull request Mar 26, 2024
serban300 added a commit to serban300/polkadot-sdk that referenced this pull request Mar 26, 2024
b9acdab polkadot-sdk backport leftovers (paritytech#2896)
1022b6d Relayer v1.2.1 (paritytech#2895)
47b4c48 relayer waits until chain spec version matches the configured in Client constructor/reconnect (paritytech#2894)
a6bac6b Move relay clients to separate folder (paritytech#2893)
4bc73d8 [Backport from `polkadot-sdk`] Move chain definitions to separate folder (paritytech#2892)
8e58eb9 Bump async-trait from 0.1.78 to 0.1.79
28c459b Backport changes from `polkadot-sdk/master` (paritytech#2887)
2a76cbb Move generic CLI logic to different crate (paritytech#2885)
9cb8a2c fixed dependency in runtime-codegen (paritytech#2886)
62372e7 Bump async-trait from 0.1.77 to 0.1.78
61e865b Bump anyhow from 1.0.80 to 1.0.81
d9c5e41 Bump scale-info from 2.10.0 to 2.11.0
9be3e0b Bump thiserror from 1.0.57 to 1.0.58
88900bd backport changes from polkadot-sdk (paritytech#2872)
5c923e0 Bump strum from 0.26.1 to 0.26.2
7e22cc3 Bump sysinfo from 0.30.6 to 0.30.7
3f3d836 Bump env_logger from 0.11.2 to 0.11.3
8b903c6 Prepare P<> K relay release: 1.2.0 (paritytech#2863)
1b0ea65 Document: how to make relayer releases (paritytech#2860)
af8480e Some remaining fixes (mostly insubstantial) for relay (paritytech#2859)
503f64b Bump log from 0.4.20 to 0.4.21
7ee64ec Bump tempfile from 3.10.0 to 3.10.1
38254ac Bump sysinfo from 0.30.5 to 0.30.6
ccf18d6 [Do Not Merge until RBH/WBH upgrade] Relayers use new submit_finality_proof_ex call in Rococo <> Westend bridge (paritytech#2827)
f1c1487 Running relayer: documentation (paritytech#2829)
9f89c7e Bump anyhow from 1.0.79 to 1.0.80
5317ccb Bump serde from 1.0.196 to 1.0.197
d218c7a Bump serde_json from 1.0.113 to 1.0.114
bf7b81a Bump env_logger from 0.11.1 to 0.11.2
8e7b471 Fix relay submitting extra parachain headers during reorg (paritytech#2839)
8a0ed23 Bump thiserror from 1.0.56 to 1.0.57
915628a Bump ed25519-dalek from 2.1.0 to 2.1.1
6c1ed87 Bump tempfile from 3.9.0 to 3.10.0
723f38f Bump num-traits from 0.2.17 to 0.2.18
409922b fix typo (paritytech#2826)
555866b Backport latest PRs from polkadot sdk (paritytech#2824)
d099107 Pass finality proof verification context to the call builder (paritytech#2823)
b3528d2 Add submit_finality_proof_ex call to the GRANDPA pallet (paritytech#2821)
577d2e6 Bump time from 0.3.31 to 0.3.34
b04e82c Bump tokio from 1.35.1 to 1.36.0
b266084 Bump serde_json from 1.0.112 to 1.0.113
dfb0f90 fix clippy
49d1d5e Bump strum from 0.25.0 to 0.26.1
7d92922 Bump serde from 1.0.195 to 1.0.196
2605273 Bump serde_json from 1.0.111 to 1.0.112
b5fa75b Bump env_logger from 0.11.0 to 0.11.1
f116c29 Bump env_logger from 0.10.1 to 0.11.0
2755d51 [polkadot-staging] Backport polkadot-sdk changes + update refs (paritytech#2798)
dfec8bc [`polkadot-staging`] Separate `send_message()` validations (paritytech#2795)
c3e469e Bump thiserror from 1.0.55 to 1.0.56
8fb8fdd Port safe commits from master to polkadot-staging (paritytech#2761)
6e526c3 [polkadot-staging] Bump sysinfo from 0.29.11 to 0.30.5 (paritytech#2790)
c3436b2 Bump anyhow from 1.0.78 to 1.0.79
d618416 Bump async-trait from 0.1.76 to 0.1.77
d3f97a4 Bump serde_json from 1.0.109 to 1.0.111
688281f Bump thiserror from 1.0.53 to 1.0.55
d26dd51 get rid of LaneMessageVerifier (paritytech#2168) (paritytech#2764)
e189156 Bump serde_json from 1.0.108 to 1.0.109
e816e13 Bump tempfile from 3.8.1 to 3.9.0
1cd5db7 Bump async-trait from 0.1.75 to 0.1.76
d9cf492 Bump anyhow from 1.0.76 to 1.0.78
eabed3f Bump thiserror from 1.0.51 to 1.0.53
5011481 Bump async-trait from 0.1.74 to 0.1.75
64e635d Bump tokio from 1.35.0 to 1.35.1
c68b2a2 Bump futures from 0.3.29 to 0.3.30
114ad74 Bump anyhow from 1.0.75 to 1.0.76
afd1787 Bump time from 0.3.30 to 0.3.31
ea3d0cd Pokladot sdk backport to staging (paritytech#2746)
68d8650 Bump thiserror from 1.0.50 to 1.0.51
009c989 remove no longer valid check from the ensure_weights_are_correct (paritytech#2740)
94c44a7 Added Rococo BH <> Rococo Bulletin bridge (paritytech#2724)
5fe0f2f Bump tokio from 1.34.0 to 1.35.0
25f8251 Grafana update stuff (paritytech#2733)
06fbe8b Improved `ExportXcm::validate` implementation for BridgeHubs - step 1 (paritytech#2727)
390e836 Select header that will be fully refunded in on-demand batch finality relay (paritytech#2729)
ce701dd separate constants for average and worst case relay headers (paritytech#2728)
09215c5 Backport from `polkadot-sdk` + bump (paritytech#2725)
6327261 Bump serde from 1.0.192 to 1.0.193
fff9ddd Bump sysinfo from 0.29.10 to 0.29.11
4be99fe Monitoring and alerts for Rococo/Westend (paritytech#2710)
67a683a Bump ed25519-dalek from 2.0.0 to 2.1.0
8e0e794 quick and dirty fix for the `wait -p` and older distros (paritytech#2712)
3ab6562 Add withdraw reserve assets to zombienet tests (paritytech#2711)
c2c409b increase init timeouts in zombienet tests (paritytech#2706)
a8c60b4 fix lane id and bridged chain id (paritytech#2705)
9ac0f26 removed bp-asset-hub-kusama and bp-asset-hub-polkadot (paritytech#2703)
4916475 Some fixes for zombienet tests (polkadot-staging) (paritytech#2704)
6f9a147 zombienet from Wococo to Westend (paritytech#2699)
3ba7910 Porting changes from polkadot-sdk to polkadot-staging - before update subtree with removed wococo stuff (paritytech#2696)
653448f Remove Woococo related stuff (paritytech#2692)
03aaab2 Gitspiegel polkadot staging (paritytech#2695)
702a4c1 Drop Rialto <> Millau bridges (paritytech#2663) (paritytech#2694)
6a63b5f Start version guards for the ED loop (paritytech#2678)
896b9a9 typo (paritytech#2690)
671d27c Bump serde from 1.0.190 to 1.0.192
991b229 Bump clap from 4.4.7 to 4.4.8
ec267ec Bump env_logger from 0.10.0 to 0.10.1
592e407 Bump tokio from 1.33.0 to 1.34.0
c49ce3d Bump serde_json from 1.0.107 to 1.0.108
04b3319 Update subxt-codegen version (paritytech#2674)
03f9804 backport paritytech#2139 (paritytech#2673)
49245dd removed unused PARACHAINS_FINALITY_PALLET_NAME constant (paritytech#2670)
658a3f5 BHR/BHWE spec_version according to the `polkadot-sdk` (paritytech#2668)
7666b94 Nit from `polkadot-sdk` (paritytech#2665)
b5c43bb Adjusted constant because for measuring we used mistakenly rococo constants (paritytech#2664)
062449d Add Rococo<>Westend bridge support/relay (paritytech#2647)
55eb44e Add basic zombienet test to be used in the future (paritytech#2649) (paritytech#2660)
93b6b3f Bump clap from 4.4.6 to 4.4.7
4c01ab0 Bump futures from 0.3.28 to 0.3.29
a31a6c0 Bump tempfile from 3.8.0 to 3.8.1
bcdfe83 Bump serde from 1.0.189 to 1.0.190
f7433b0 Port paritytech#2648 to polkadot-staging (paritytech#2651)
3896738 Bump scale-info from 2.9.0 to 2.10.0
12d62c5 Bump thiserror from 1.0.49 to 1.0.50
1d78aa1 Backport from `polkadot-sdk` with actual master (paritytech#2633)
ab4de94 Grandpa justifications: Avoid duplicate vote ancestries (paritytech#2634) (paritytech#2635)
465562a add missing crate descriptions (paritytech#2629)
28d3680 Bump fixed-hash
67528c4 Bump serde from 1.0.188 to 1.0.189
d450c47 Bump time from 0.3.29 to 0.3.30
6a19f83 Bump async-trait from 0.1.73 to 0.1.74
a92d213 Millau, Rialto: accept equivocation reports (paritytech#2614) (paritytech#2617)
a61f777 Bump tokio from 1.32.0 to 1.33.0
0052f64 Bump subxt from 0.32.0 to 0.32.1
ccc849d Bump num-traits from 0.2.16 to 0.2.17
22f2752 apply late suggestions for paritytech#2600 (paritytech#2603)
0320172 actualize check_obsolete_call comment (paritytech#2601)
5cbbd25 Reject transactions if bridge pallets are halted (paritytech#2600)
ca4dfe3 Bump subxt from 0.31.0 to 0.32.0
8bf7b58 Bump clap from 4.4.4 to 4.4.6
88b0b99 Bump thiserror from 1.0.48 to 1.0.49
263833b https://gitlab.parity.io/parity/mirrors/polkadot-sdk/-/jobs/3833103 (paritytech#2589)
4f44968 Backport changes from polkadot-sdk (paritytech#2588)
7200ed1 fiox overflow when computing priority boost (paritytech#2587)
e02cbd3 Bump time from 0.3.28 to 0.3.29
a097dd2 Bump clap from 4.4.3 to 4.4.4
801ce88 Merge bulletin chain changes into polkadot staging (paritytech#2574)
a3803ce Add unit tests for the equivocation detection loop (paritytech#2571)
26dfc31 Bump clap from 4.4.2 to 4.4.3
66a8beb Bump serde_json from 1.0.106 to 1.0.107
18c50da Bump trie-db from 0.27.1 to 0.28.0
4c4fa92 Equivocation detection loop: Reorganize block checking logic as state machine (paritytech#2555) (paritytech#2557)
6bd317a Bump serde_json from 1.0.105 to 1.0.106
a7e6bfd Backport for polkadot-sdk#1446 (paritytech#2546)
d9f8050 Bump sysinfo from 0.29.9 to 0.29.10
901f44c Bump thiserror from 1.0.47 to 1.0.48
82eeb50 Bump sysinfo from 0.29.8 to 0.29.9
a0c934b Bump strum from 0.24.1 to 0.25.0
1064fbf Bump subxt from 0.28.0 to 0.31.0
e50398d bridges subtree fixes (paritytech#2528)
99af075 Markdown linter (paritytech#1309) (paritytech#2526)
733ff0f `polkadot-staging` branch: Use polkadot-sdk dependencies (paritytech#2524)
e8a59f1 Fix benchmark with new XCM::V3 `MAX_INSTRUCTIONS_TO_DECODE` (paritytech#2514)
62b185d Backport `polkadot-sdk` changes to `polkadot-staging` (paritytech#2518)
d9658f4 Fix equivocation detection containers startup (paritytech#2516) (paritytech#2517)
d65db28 Backport: building images from locally built binaries (paritytech#2513)
5fdbaf4 Start the equivocation detection loop from the complex relayer (paritytech#2507) (paritytech#2512)
7fbb67d Backport: Implement basic equivocations detection loop (paritytech#2375)
cb7efe2 Manually update deps in polkadot staging (paritytech#2371)
d17981f paritytech#2351 to polkadot-staging (paritytech#2359)

git-subtree-dir: bridges
git-subtree-split: b9acdab
serban300 pushed a commit to serban300/polkadot-sdk that referenced this pull request Mar 27, 2024
serban300 added a commit to serban300/polkadot-sdk that referenced this pull request Apr 2, 2024
bea13eab99a ckb-merkle-mountain-range -> 0.5.2 (paritytech#2911)
8c4c99d11b3 Address migration comments (paritytech#2910)
34817d81593 Some relayer improvments (paritytech#2902)
f7f983c4f8f Bump tokio from 1.36.0 to 1.37.0
051d6ed6446 Bump scale-info from 2.11.0 to 2.11.1
35474455e9a Bump serde_json from 1.0.114 to 1.0.115
956601369a5 Fix polkadot-sdk CI failures (paritytech#2901)
1e4fd28e99c Leftover (paritytech#2900)
a7a47eaebe6 Backport changes from polkadot-sdk (paritytech#2899)
e4e1ea60cfb Remove test dependecies on specific relay clients (paritytech#2898)
b9acdab polkadot-sdk backport leftovers (paritytech#2896)
1022b6d Relayer v1.2.1 (paritytech#2895)
47b4c48 relayer waits until chain spec version matches the configured in Client constructor/reconnect (paritytech#2894)
a6bac6b Move relay clients to separate folder (paritytech#2893)
4bc73d8 [Backport from `polkadot-sdk`] Move chain definitions to separate folder (paritytech#2892)
8e58eb9 Bump async-trait from 0.1.78 to 0.1.79
28c459b Backport changes from `polkadot-sdk/master` (paritytech#2887)
2a76cbb Move generic CLI logic to different crate (paritytech#2885)
9cb8a2c fixed dependency in runtime-codegen (paritytech#2886)
62372e7 Bump async-trait from 0.1.77 to 0.1.78
61e865b Bump anyhow from 1.0.80 to 1.0.81
d9c5e41 Bump scale-info from 2.10.0 to 2.11.0
9be3e0b Bump thiserror from 1.0.57 to 1.0.58
88900bd backport changes from polkadot-sdk (paritytech#2872)
5c923e0 Bump strum from 0.26.1 to 0.26.2
7e22cc3 Bump sysinfo from 0.30.6 to 0.30.7
3f3d836 Bump env_logger from 0.11.2 to 0.11.3
8b903c6 Prepare P<> K relay release: 1.2.0 (paritytech#2863)
1b0ea65 Document: how to make relayer releases (paritytech#2860)
af8480e Some remaining fixes (mostly insubstantial) for relay (paritytech#2859)
503f64b Bump log from 0.4.20 to 0.4.21
7ee64ec Bump tempfile from 3.10.0 to 3.10.1
38254ac Bump sysinfo from 0.30.5 to 0.30.6
ccf18d6 [Do Not Merge until RBH/WBH upgrade] Relayers use new submit_finality_proof_ex call in Rococo <> Westend bridge (paritytech#2827)
f1c1487 Running relayer: documentation (paritytech#2829)
9f89c7e Bump anyhow from 1.0.79 to 1.0.80
5317ccb Bump serde from 1.0.196 to 1.0.197
d218c7a Bump serde_json from 1.0.113 to 1.0.114
bf7b81a Bump env_logger from 0.11.1 to 0.11.2
8e7b471 Fix relay submitting extra parachain headers during reorg (paritytech#2839)
8a0ed23 Bump thiserror from 1.0.56 to 1.0.57
915628a Bump ed25519-dalek from 2.1.0 to 2.1.1
6c1ed87 Bump tempfile from 3.9.0 to 3.10.0
723f38f Bump num-traits from 0.2.17 to 0.2.18
409922b fix typo (paritytech#2826)
555866b Backport latest PRs from polkadot sdk (paritytech#2824)
d099107 Pass finality proof verification context to the call builder (paritytech#2823)
b3528d2 Add submit_finality_proof_ex call to the GRANDPA pallet (paritytech#2821)
577d2e6 Bump time from 0.3.31 to 0.3.34
b04e82c Bump tokio from 1.35.1 to 1.36.0
b266084 Bump serde_json from 1.0.112 to 1.0.113
dfb0f90 fix clippy
49d1d5e Bump strum from 0.25.0 to 0.26.1
7d92922 Bump serde from 1.0.195 to 1.0.196
2605273 Bump serde_json from 1.0.111 to 1.0.112
b5fa75b Bump env_logger from 0.11.0 to 0.11.1
f116c29 Bump env_logger from 0.10.1 to 0.11.0
2755d51 [polkadot-staging] Backport polkadot-sdk changes + update refs (paritytech#2798)
dfec8bc [`polkadot-staging`] Separate `send_message()` validations (paritytech#2795)
c3e469e Bump thiserror from 1.0.55 to 1.0.56
8fb8fdd Port safe commits from master to polkadot-staging (paritytech#2761)
6e526c3 [polkadot-staging] Bump sysinfo from 0.29.11 to 0.30.5 (paritytech#2790)
c3436b2 Bump anyhow from 1.0.78 to 1.0.79
d618416 Bump async-trait from 0.1.76 to 0.1.77
d3f97a4 Bump serde_json from 1.0.109 to 1.0.111
688281f Bump thiserror from 1.0.53 to 1.0.55
d26dd51 get rid of LaneMessageVerifier (paritytech#2168) (paritytech#2764)
e189156 Bump serde_json from 1.0.108 to 1.0.109
e816e13 Bump tempfile from 3.8.1 to 3.9.0
1cd5db7 Bump async-trait from 0.1.75 to 0.1.76
d9cf492 Bump anyhow from 1.0.76 to 1.0.78
eabed3f Bump thiserror from 1.0.51 to 1.0.53
5011481 Bump async-trait from 0.1.74 to 0.1.75
64e635d Bump tokio from 1.35.0 to 1.35.1
c68b2a2 Bump futures from 0.3.29 to 0.3.30
114ad74 Bump anyhow from 1.0.75 to 1.0.76
afd1787 Bump time from 0.3.30 to 0.3.31
ea3d0cd Pokladot sdk backport to staging (paritytech#2746)
68d8650 Bump thiserror from 1.0.50 to 1.0.51
009c989 remove no longer valid check from the ensure_weights_are_correct (paritytech#2740)
94c44a7 Added Rococo BH <> Rococo Bulletin bridge (paritytech#2724)
5fe0f2f Bump tokio from 1.34.0 to 1.35.0
25f8251 Grafana update stuff (paritytech#2733)
06fbe8b Improved `ExportXcm::validate` implementation for BridgeHubs - step 1 (paritytech#2727)
390e836 Select header that will be fully refunded in on-demand batch finality relay (paritytech#2729)
ce701dd separate constants for average and worst case relay headers (paritytech#2728)
09215c5 Backport from `polkadot-sdk` + bump (paritytech#2725)
6327261 Bump serde from 1.0.192 to 1.0.193
fff9ddd Bump sysinfo from 0.29.10 to 0.29.11
4be99fe Monitoring and alerts for Rococo/Westend (paritytech#2710)
67a683a Bump ed25519-dalek from 2.0.0 to 2.1.0
8e0e794 quick and dirty fix for the `wait -p` and older distros (paritytech#2712)
3ab6562 Add withdraw reserve assets to zombienet tests (paritytech#2711)
c2c409b increase init timeouts in zombienet tests (paritytech#2706)
a8c60b4 fix lane id and bridged chain id (paritytech#2705)
9ac0f26 removed bp-asset-hub-kusama and bp-asset-hub-polkadot (paritytech#2703)
4916475 Some fixes for zombienet tests (polkadot-staging) (paritytech#2704)
6f9a147 zombienet from Wococo to Westend (paritytech#2699)
3ba7910 Porting changes from polkadot-sdk to polkadot-staging - before update subtree with removed wococo stuff (paritytech#2696)
653448f Remove Woococo related stuff (paritytech#2692)
03aaab2 Gitspiegel polkadot staging (paritytech#2695)
702a4c1 Drop Rialto <> Millau bridges (paritytech#2663) (paritytech#2694)
6a63b5f Start version guards for the ED loop (paritytech#2678)
896b9a9 typo (paritytech#2690)
671d27c Bump serde from 1.0.190 to 1.0.192
991b229 Bump clap from 4.4.7 to 4.4.8
ec267ec Bump env_logger from 0.10.0 to 0.10.1
592e407 Bump tokio from 1.33.0 to 1.34.0
c49ce3d Bump serde_json from 1.0.107 to 1.0.108
04b3319 Update subxt-codegen version (paritytech#2674)
03f9804 backport paritytech#2139 (paritytech#2673)
49245dd removed unused PARACHAINS_FINALITY_PALLET_NAME constant (paritytech#2670)
658a3f5 BHR/BHWE spec_version according to the `polkadot-sdk` (paritytech#2668)
7666b94 Nit from `polkadot-sdk` (paritytech#2665)
b5c43bb Adjusted constant because for measuring we used mistakenly rococo constants (paritytech#2664)
062449d Add Rococo<>Westend bridge support/relay (paritytech#2647)
55eb44e Add basic zombienet test to be used in the future (paritytech#2649) (paritytech#2660)
93b6b3f Bump clap from 4.4.6 to 4.4.7
4c01ab0 Bump futures from 0.3.28 to 0.3.29
a31a6c0 Bump tempfile from 3.8.0 to 3.8.1
bcdfe83 Bump serde from 1.0.189 to 1.0.190
f7433b0 Port paritytech#2648 to polkadot-staging (paritytech#2651)
3896738 Bump scale-info from 2.9.0 to 2.10.0
12d62c5 Bump thiserror from 1.0.49 to 1.0.50
1d78aa1 Backport from `polkadot-sdk` with actual master (paritytech#2633)
ab4de94 Grandpa justifications: Avoid duplicate vote ancestries (paritytech#2634) (paritytech#2635)
465562a add missing crate descriptions (paritytech#2629)
28d3680 Bump fixed-hash
67528c4 Bump serde from 1.0.188 to 1.0.189
d450c47 Bump time from 0.3.29 to 0.3.30
6a19f83 Bump async-trait from 0.1.73 to 0.1.74
a92d213 Millau, Rialto: accept equivocation reports (paritytech#2614) (paritytech#2617)
a61f777 Bump tokio from 1.32.0 to 1.33.0
0052f64 Bump subxt from 0.32.0 to 0.32.1
ccc849d Bump num-traits from 0.2.16 to 0.2.17
22f2752 apply late suggestions for paritytech#2600 (paritytech#2603)
0320172 actualize check_obsolete_call comment (paritytech#2601)
5cbbd25 Reject transactions if bridge pallets are halted (paritytech#2600)
ca4dfe3 Bump subxt from 0.31.0 to 0.32.0
8bf7b58 Bump clap from 4.4.4 to 4.4.6
88b0b99 Bump thiserror from 1.0.48 to 1.0.49
263833b https://gitlab.parity.io/parity/mirrors/polkadot-sdk/-/jobs/3833103 (paritytech#2589)
4f44968 Backport changes from polkadot-sdk (paritytech#2588)
7200ed1 fiox overflow when computing priority boost (paritytech#2587)
e02cbd3 Bump time from 0.3.28 to 0.3.29
a097dd2 Bump clap from 4.4.3 to 4.4.4
801ce88 Merge bulletin chain changes into polkadot staging (paritytech#2574)
a3803ce Add unit tests for the equivocation detection loop (paritytech#2571)
26dfc31 Bump clap from 4.4.2 to 4.4.3
66a8beb Bump serde_json from 1.0.106 to 1.0.107
18c50da Bump trie-db from 0.27.1 to 0.28.0
4c4fa92 Equivocation detection loop: Reorganize block checking logic as state machine (paritytech#2555) (paritytech#2557)
6bd317a Bump serde_json from 1.0.105 to 1.0.106
a7e6bfd Backport for polkadot-sdk#1446 (paritytech#2546)
d9f8050 Bump sysinfo from 0.29.9 to 0.29.10
901f44c Bump thiserror from 1.0.47 to 1.0.48
82eeb50 Bump sysinfo from 0.29.8 to 0.29.9
a0c934b Bump strum from 0.24.1 to 0.25.0
1064fbf Bump subxt from 0.28.0 to 0.31.0
e50398d bridges subtree fixes (paritytech#2528)
99af075 Markdown linter (paritytech#1309) (paritytech#2526)
733ff0f `polkadot-staging` branch: Use polkadot-sdk dependencies (paritytech#2524)
e8a59f1 Fix benchmark with new XCM::V3 `MAX_INSTRUCTIONS_TO_DECODE` (paritytech#2514)
62b185d Backport `polkadot-sdk` changes to `polkadot-staging` (paritytech#2518)
d9658f4 Fix equivocation detection containers startup (paritytech#2516) (paritytech#2517)
d65db28 Backport: building images from locally built binaries (paritytech#2513)
5fdbaf4 Start the equivocation detection loop from the complex relayer (paritytech#2507) (paritytech#2512)
7fbb67d Backport: Implement basic equivocations detection loop (paritytech#2375)
cb7efe2 Manually update deps in polkadot staging (paritytech#2371)
d17981f paritytech#2351 to polkadot-staging (paritytech#2359)

git-subtree-dir: bridges
git-subtree-split: bea13eab99af22f943b06397324c14fb2d7149e1
serban300 pushed a commit to serban300/polkadot-sdk that referenced this pull request Apr 8, 2024
serban300 pushed a commit to serban300/polkadot-sdk that referenced this pull request Apr 8, 2024
serban300 pushed a commit to serban300/polkadot-sdk that referenced this pull request Apr 8, 2024
serban300 pushed a commit to serban300/polkadot-sdk that referenced this pull request Apr 8, 2024
serban300 pushed a commit to serban300/polkadot-sdk that referenced this pull request Apr 8, 2024
serban300 pushed a commit to serban300/polkadot-sdk that referenced this pull request Apr 9, 2024
serban300 pushed a commit to serban300/polkadot-sdk that referenced this pull request Apr 9, 2024
serban300 pushed a commit to serban300/polkadot-sdk that referenced this pull request Apr 9, 2024
serban300 pushed a commit to serban300/polkadot-sdk that referenced this pull request Apr 9, 2024
serban300 pushed a commit to serban300/polkadot-sdk that referenced this pull request Apr 9, 2024
serban300 pushed a commit to serban300/polkadot-sdk that referenced this pull request Apr 9, 2024
serban300 pushed a commit to serban300/polkadot-sdk that referenced this pull request Apr 10, 2024
serban300 pushed a commit to serban300/polkadot-sdk that referenced this pull request Apr 10, 2024
bkchr pushed a commit that referenced this pull request Apr 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants