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

Added fallback_max_weight to Transact for sending messages to V4 chains #6643

Merged
merged 34 commits into from
Dec 5, 2024

Conversation

franciscoaguirre
Copy link
Contributor

@franciscoaguirre franciscoaguirre commented Nov 26, 2024

Closes: #6585

Removing the require_weight_at_most parameter in V5 Transact had only one problem. Converting a message from V5 to V4 to send to chains that didn't upgrade yet. The conversion would not know what weight to give to the Transact, since V4 and below require it.

To fix this, I added back the weight in the form of an Option<Weight> called fallback_max_weight. This can be set to None if you don't intend to deal with a chain that hasn't upgraded yet. If you set it to Some(_), the behaviour is the same. The plan is to totally remove this in V6 since there will be a good conversion path from V6 to V5.

@franciscoaguirre franciscoaguirre added the T6-XCM This PR/Issue is related to XCM. label Nov 26, 2024
@franciscoaguirre franciscoaguirre self-assigned this Nov 26, 2024
@franciscoaguirre
Copy link
Contributor Author

/cmd fmt

Copy link
Contributor

Command "fmt" has started 🚀 See logs here

Copy link
Contributor

Command "fmt" has finished ✅ See logs here

@franciscoaguirre
Copy link
Contributor Author

/cmd prdoc --audience runtime_dev --bump major

@franciscoaguirre franciscoaguirre marked this pull request as ready for review November 26, 2024 17:49
@franciscoaguirre franciscoaguirre requested a review from a team as a code owner November 26, 2024 17:49
@paritytech-review-bot paritytech-review-bot bot requested a review from a team November 26, 2024 17:50
@bkontur bkontur added the A4-needs-backport Pull request must be backported to all maintained releases. label Nov 27, 2024
Copy link
Contributor

@acatangiu acatangiu left a comment

Choose a reason for hiding this comment

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

See comments. Please also add an explicit Transact test from V5 chain -> V4 chain.

polkadot/runtime/westend/src/impls.rs Outdated Show resolved Hide resolved
polkadot/xcm/src/v4/mod.rs Outdated Show resolved Hide resolved
polkadot/xcm/src/v5/mod.rs Outdated Show resolved Hide resolved
polkadot/xcm/src/v5/mod.rs Outdated Show resolved Hide resolved
prdoc/pr_6643.prdoc Outdated Show resolved Hide resolved
prdoc/pr_6643.prdoc Outdated Show resolved Hide resolved
@paritytech-review-bot paritytech-review-bot bot requested a review from a team November 29, 2024 17:43
@franciscoaguirre
Copy link
Contributor Author

/cmd fmt

Copy link
Contributor

Command "fmt" has started 🚀 See logs here

Copy link
Contributor

Command "fmt" has finished ✅ See logs here

franciscoaguirre and others added 4 commits November 29, 2024 16:43
Co-authored-by: Adrian Catangiu <adrian@parity.io>
Co-authored-by: Adrian Catangiu <adrian@parity.io>
Co-authored-by: Adrian Catangiu <adrian@parity.io>
Copy link
Contributor

github-actions bot commented Dec 2, 2024

Command "fmt" has finished ✅ See logs here

polkadot/runtime/westend/src/lib.rs Show resolved Hide resolved
polkadot/runtime/westend/src/lib.rs Show resolved Hide resolved
polkadot/xcm/src/v4/mod.rs Show resolved Hide resolved
polkadot/xcm/src/v4/mod.rs Show resolved Hide resolved
polkadot/xcm/src/v5/mod.rs Show resolved Hide resolved
Copy link
Contributor

@bkontur bkontur left a comment

Choose a reason for hiding this comment

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

@franciscoaguirre
Copy link
Contributor Author

/cmd fmt

Copy link
Contributor

github-actions bot commented Dec 5, 2024

Command "fmt" has started 🚀 See logs here

Copy link
Contributor

github-actions bot commented Dec 5, 2024

Command "fmt" has finished ✅ See logs here

@paritytech-workflow-stopper
Copy link

All GitHub workflows were cancelled due to failure one of the required jobs.
Failed workflow url: https://github.com/paritytech/polkadot-sdk/actions/runs/12182142278
Failed job name: fmt

@franciscoaguirre franciscoaguirre added this pull request to the merge queue Dec 5, 2024
Merged via the queue into master with commit f31c70a Dec 5, 2024
197 of 199 checks passed
@franciscoaguirre franciscoaguirre deleted the xcm-transact-compatibility branch December 5, 2024 17:18
franciscoaguirre added a commit that referenced this pull request Dec 5, 2024
…ns (#6643)

Closes: #6585

Removing the `require_weight_at_most` parameter in V5 Transact had only
one problem. Converting a message from V5 to V4 to send to chains that
didn't upgrade yet. The conversion would not know what weight to give to
the Transact, since V4 and below require it.

To fix this, I added back the weight in the form of an `Option<Weight>`
called `fallback_max_weight`. This can be set to `None` if you don't
intend to deal with a chain that hasn't upgraded yet. If you set it to
`Some(_)`, the behaviour is the same. The plan is to totally remove this
in V6 since there will be a good conversion path from V6 to V5.

---------

Co-authored-by: GitHub Action <action@github.com>
Co-authored-by: Adrian Catangiu <adrian@parity.io>
EgorPopelyaev pushed a commit that referenced this pull request Dec 9, 2024
#6778)

Backport of #6643 to
stable2412.

We need it before the release so we have a good story with chains that
haven't upgraded yet.

---------

Co-authored-by: GitHub Action <action@github.com>
Co-authored-by: Adrian Catangiu <adrian@parity.io>
Co-authored-by: Branislav Kontur <bkontur@gmail.com>
Krayt78 pushed a commit to Krayt78/polkadot-sdk that referenced this pull request Dec 18, 2024
…ns (paritytech#6643)

Closes: paritytech#6585

Removing the `require_weight_at_most` parameter in V5 Transact had only
one problem. Converting a message from V5 to V4 to send to chains that
didn't upgrade yet. The conversion would not know what weight to give to
the Transact, since V4 and below require it.

To fix this, I added back the weight in the form of an `Option<Weight>`
called `fallback_max_weight`. This can be set to `None` if you don't
intend to deal with a chain that hasn't upgraded yet. If you set it to
`Some(_)`, the behaviour is the same. The plan is to totally remove this
in V6 since there will be a good conversion path from V6 to V5.

---------

Co-authored-by: GitHub Action <action@github.com>
Co-authored-by: Adrian Catangiu <adrian@parity.io>
dudo50 pushed a commit to paraspell-research/polkadot-sdk that referenced this pull request Jan 4, 2025
…ns (paritytech#6643)

Closes: paritytech#6585

Removing the `require_weight_at_most` parameter in V5 Transact had only
one problem. Converting a message from V5 to V4 to send to chains that
didn't upgrade yet. The conversion would not know what weight to give to
the Transact, since V4 and below require it.

To fix this, I added back the weight in the form of an `Option<Weight>`
called `fallback_max_weight`. This can be set to `None` if you don't
intend to deal with a chain that hasn't upgraded yet. If you set it to
`Some(_)`, the behaviour is the same. The plan is to totally remove this
in V6 since there will be a good conversion path from V6 to V5.

---------

Co-authored-by: GitHub Action <action@github.com>
Co-authored-by: Adrian Catangiu <adrian@parity.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A4-needs-backport Pull request must be backported to all maintained releases. T6-XCM This PR/Issue is related to XCM.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[xcm] Transact v4 vs v5 compatibility
5 participants