Skip to content

Commit 1c0b610

Browse files
xcm: fix local/remote exports when inner routers return NotApplicable (#6645)
This PR addresses two small fixes: 1. Fixed a typo ("as as") found on the way. 2. Resolved a bug in the `local/remote exporters` used for bridging. Previously, they consumed `dest` and `msg` without returning them when inner routers/exporters failed with `NotApplicable`. This PR ensures compliance with the [`SendXcm`](https://github.com/paritytech/polkadot-sdk/blob/master/polkadot/xcm/src/v5/traits.rs#L449-L450) and [`ExportXcm`](https://github.com/paritytech/polkadot-sdk/blob/master/polkadot/xcm/xcm-executor/src/traits/export.rs#L44-L45) traits. --------- Co-authored-by: GitHub Action <[email protected]>
1 parent 3c00387 commit 1c0b610

File tree

9 files changed

+248
-55
lines changed

9 files changed

+248
-55
lines changed

polkadot/grafana/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,4 +90,4 @@ and issue statement or initiate dispute.
9090
- **Assignment delay tranches**. Approval voting is designed such that validators assigned to check a specific
9191
candidate are split up into equal delay tranches (0.5 seconds each). All validators checks are ordered by the delay
9292
tranche index. Early tranches of validators have the opportunity to check the candidate first before later tranches
93-
that act as as backups in case of no shows.
93+
that act as backups in case of no shows.

polkadot/grafana/parachains/status.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1405,7 +1405,7 @@
14051405
"type": "prometheus",
14061406
"uid": "$data_source"
14071407
},
1408-
"description": "Approval voting requires that validators which are assigned to check a specific \ncandidate are split up into delay tranches (0.5s each). Then, all validators checks are ordered by the delay \ntranche index. Early tranches of validators will check the candidate first and later tranches act as as backups in case of no shows.",
1408+
"description": "Approval voting requires that validators which are assigned to check a specific \ncandidate are split up into delay tranches (0.5s each). Then, all validators checks are ordered by the delay \ntranche index. Early tranches of validators will check the candidate first and later tranches act as backups in case of no shows.",
14091409
"gridPos": {
14101410
"h": 9,
14111411
"w": 18,

polkadot/xcm/src/v3/traits.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -547,13 +547,13 @@ impl SendXcm for Tuple {
547547
}
548548

549549
/// Convenience function for using a `SendXcm` implementation. Just interprets the `dest` and wraps
550-
/// both in `Some` before passing them as as mutable references into `T::send_xcm`.
550+
/// both in `Some` before passing them as mutable references into `T::send_xcm`.
551551
pub fn validate_send<T: SendXcm>(dest: MultiLocation, msg: Xcm<()>) -> SendResult<T::Ticket> {
552552
T::validate(&mut Some(dest), &mut Some(msg))
553553
}
554554

555555
/// Convenience function for using a `SendXcm` implementation. Just interprets the `dest` and wraps
556-
/// both in `Some` before passing them as as mutable references into `T::send_xcm`.
556+
/// both in `Some` before passing them as mutable references into `T::send_xcm`.
557557
///
558558
/// Returns either `Ok` with the price of the delivery, or `Err` with the reason why the message
559559
/// could not be sent.

polkadot/xcm/src/v4/traits.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -289,13 +289,13 @@ impl SendXcm for Tuple {
289289
}
290290

291291
/// Convenience function for using a `SendXcm` implementation. Just interprets the `dest` and wraps
292-
/// both in `Some` before passing them as as mutable references into `T::send_xcm`.
292+
/// both in `Some` before passing them as mutable references into `T::send_xcm`.
293293
pub fn validate_send<T: SendXcm>(dest: Location, msg: Xcm<()>) -> SendResult<T::Ticket> {
294294
T::validate(&mut Some(dest), &mut Some(msg))
295295
}
296296

297297
/// Convenience function for using a `SendXcm` implementation. Just interprets the `dest` and wraps
298-
/// both in `Some` before passing them as as mutable references into `T::send_xcm`.
298+
/// both in `Some` before passing them as mutable references into `T::send_xcm`.
299299
///
300300
/// Returns either `Ok` with the price of the delivery, or `Err` with the reason why the message
301301
/// could not be sent.

polkadot/xcm/src/v5/traits.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -502,13 +502,13 @@ impl SendXcm for Tuple {
502502
}
503503

504504
/// Convenience function for using a `SendXcm` implementation. Just interprets the `dest` and wraps
505-
/// both in `Some` before passing them as as mutable references into `T::send_xcm`.
505+
/// both in `Some` before passing them as mutable references into `T::send_xcm`.
506506
pub fn validate_send<T: SendXcm>(dest: Location, msg: Xcm<()>) -> SendResult<T::Ticket> {
507507
T::validate(&mut Some(dest), &mut Some(msg))
508508
}
509509

510510
/// Convenience function for using a `SendXcm` implementation. Just interprets the `dest` and wraps
511-
/// both in `Some` before passing them as as mutable references into `T::send_xcm`.
511+
/// both in `Some` before passing them as mutable references into `T::send_xcm`.
512512
///
513513
/// Returns either `Ok` with the price of the delivery, or `Err` with the reason why the message
514514
/// could not be sent.

0 commit comments

Comments
 (0)