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 Polkadot-SDK #2175

Closed
wants to merge 153 commits into from
Closed

Conversation

claravanstaden
Copy link
Contributor

Add AssetTransferFilter trait for configuring transfer types.
Implement it for XcmExecutor based on existing executor teleports and
reserves configuration.
Filter assets on pallet-xcm::limited_teleport_assets() based on above.
…erves

'reserve_transfer_assets()' assumed all provided `assets` (fees included)
have same, local reserve.

This commit enhances the extrinsic to support various scenarios:
- transferring assets with reserve on destination,
- transferring assets with reserve on remote/third-party chain,
- transferring assets with reserve different than the reserve of the
  asset to be used as fees - meaning can use to transfer random asset with
  random reserve while using DOT for fees on all involved chains, even
  if local chain is NOT a reserve location of DOT (aka most chains),
- transferring assets with any type of local/dest/remote reserve while
  using fees which can be teleported between involved chains.

All of the above is done by pallet inner logic without the user having to
specify which scenario/reserves/teleports/etc. The correct scenario and
corresponding XCM programs are identified, and respectively, built automatically
based on runtime configuration of trusted teleporters and trusted reserves.

Current limitations:
- while `fees` and "non-fee" `assets` CAN have different reserves (or fees CAN
  be teleported), the remaining "non-fee" `assets` CANNOT have different
  reserve locations (this is also implicitly enforced by
  `MAX_ASSETS_FOR_TRANSFER=2`, but this can be safely increased in the future).
- `fees` and "non-fee" `assets` CANNOT have **different remote** reserves (this
  can also be supported in the future, but adds even more complexity while
  possibly not being worth it - we'll see what the future holds).
alistair-singh and others added 8 commits November 3, 2023 12:15
…-locations

Remove gateway contract locations from Assets
* configures ethereum router

* adds benchmarks and fmt

---------

Co-authored-by: claravanstaden <Cats 4 life!>
…-from-adrian

# Conflicts:
#	Cargo.lock
#	cumulus/pallets/dmp-queue/src/lib.rs
#	cumulus/parachains/integration-tests/emulated/bridges/bridge-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/bridge-hubs/bridge-hub-rococo/src/lib.rs
#	cumulus/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/xcm_config.rs
@claravanstaden claravanstaden deleted the update-from-adrian branch November 6, 2023 12:54
@cla-bot-2021
Copy link

cla-bot-2021 bot commented Nov 6, 2023

User @claravanstaden, please sign the CLA here.

@claravanstaden claravanstaden restored the update-from-adrian branch November 6, 2023 12:54
bkontur pushed a commit that referenced this pull request May 13, 2024
bkontur pushed a commit that referenced this pull request May 14, 2024
bkontur pushed a commit that referenced this pull request May 15, 2024
bkontur pushed a commit that referenced this pull request May 15, 2024
bkontur pushed a commit that referenced this pull request May 15, 2024
bkontur pushed a commit that referenced this pull request May 15, 2024
bkontur pushed a commit that referenced this pull request May 16, 2024
bkontur pushed a commit that referenced this pull request May 17, 2024
bkontur pushed a commit that referenced this pull request May 17, 2024
bkontur pushed a commit that referenced this pull request May 17, 2024
bkontur pushed a commit that referenced this pull request May 20, 2024
bkontur pushed a commit that referenced this pull request May 21, 2024
bkontur pushed a commit that referenced this pull request May 22, 2024
bkontur pushed a commit that referenced this pull request May 23, 2024
bkontur pushed a commit that referenced this pull request May 30, 2024
bkontur pushed a commit that referenced this pull request Jun 4, 2024
bkontur pushed a commit that referenced this pull request Jun 5, 2024
bkontur pushed a commit that referenced this pull request Jun 7, 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.

6 participants