Conversation
substrate/frame/meta-tx/src/lib.rs
Outdated
| Info = DispatchInfo, | ||
| PostInfo = PostDispatchInfo, | ||
| RuntimeOrigin = <Self as Config>::RuntimeOrigin, | ||
| > + IsType<<Self as frame_system::Config>::RuntimeCall>; |
There was a problem hiding this comment.
I think we no longer need to copy types like this. We can get rid of RuntimeCall and RuntimeOrigin associated types here and directly bound the frame system config supertrait:
pub trait Config: frame_system::Config<
RuntimeCall: Parameter
+ GetDispatchInfo
+ Dispatchable<
Info = DispatchInfo,
PostInfo = PostDispatchInfo,
RuntimeOrigin = <Self as Config>::RuntimeOrigin,
>,
RuntimeOrigin: AsTransactionAuthorizedOrigin
+ From<SystemOrigin<Self::AccountId>>
>
{
...
}There was a problem hiding this comment.
these types of bounds are unstable, CI jobs failing, I left them unchanged for now
There was a problem hiding this comment.
It should be stable since June :-/ https://blog.rust-lang.org/2024/06/13/Rust-1.79.0.html
There was a problem hiding this comment.
Was there a particular CI jobs failing? I will try to fix it.
For now it seems somewhat green: #6817
|
All GitHub workflows were cancelled due to failure one of the required jobs. |
* master: (58 commits) Upgrade link-checker cache to v4 (#7874) Updating readmes (#7950) Cumulus: Remove some old scripts (#7946) pallet-bounties: allow bounties to never expire (#7723) run frame-omni-bencher overhead command in CI for all runtimes in the runtime matrix (#7459) Update README.md for Cumulus (#7930) FRAME: Meta Transaction (#6428) Follow up for: Use the umbrella crate for the parachain template #5993 (#7464) Add an extra_constant to pallet-treasury (#7918) Bump the ci_dependencies group across 1 directory with 4 updates (#7855) remove compromised action (#7934) Fixing token-economics dead link (#5302) [pallet-revive] Fix pallet-revive-fixtures build.rs (#7928) cumulus: fix pov exporter format (#7923) sp-api: Support `mut` in `impl_runtime_apis!` (#7924) Remove clones from block seal function (#7917) [pallet-revive] precompiles 2->9 (#7810) Use non-native token to benchmark xcm on asset hub (#7893) [CI] bump timeout wait for build in zombienet workflows. (#7871) taplo: split long array line to multiline array (#7905) ...
Meta transactions implementation. The meta transaction follows a layout similar to that of a regular transaction and can leverage the same extensions implementing the `TransactionExtension` trait. Once signed and shared by the signer, the relayer may submit a regular transaction with the `pallet_meta_tx::dispatch` call, passing the signed meta transaction as an argument. To see an example, refer to the mock setup and the `sign_and_execute_meta_tx` test case in `substrate/frame/meta-tx/src/tests.rs` file. RFC: #4123 --------- Co-authored-by: Shawn Tabrizi <[email protected]> Co-authored-by: command-bot <> Co-authored-by: Guillaume Thiolliere <[email protected]>
Meta transactions implementation.
The meta transaction follows a layout similar to that of a regular transaction and can leverage the same extensions implementing the
TransactionExtensiontrait. Once signed and shared by the signer, the relayer may submit a regular transaction with thepallet_meta_tx::dispatchcall, passing the signed meta transaction as an argument.To see an example, refer to the mock setup and the
sign_and_execute_meta_txtest case insubstrate/frame/meta-tx/src/tests.rsfile.RFC: #4123