1. Apr 25, 2024
  2. Mar 13, 2024
  3. Mar 04, 2024
    • Gavin Wood's avatar
      FRAME: Create `TransactionExtension` as a replacement for `SignedExtension` (#2280) · fd5f9292
      Gavin Wood authored
      Closes #2160
      
      First part of [Extrinsic
      Horizon](https://github.com/paritytech/polkadot-sdk/issues/2415
      
      )
      
      Introduces a new trait `TransactionExtension` to replace
      `SignedExtension`. Introduce the idea of transactions which obey the
      runtime's extensions and have according Extension data (né Extra data)
      yet do not have hard-coded signatures.
      
      Deprecate the terminology of "Unsigned" when used for
      transactions/extrinsics owing to there now being "proper" unsigned
      transactions which obey the extension framework and "old-style" unsigned
      which do not. Instead we have __*General*__ for the former and
      __*Bare*__ for the latter. (Ultimately, the latter will be phased out as
      a type of transaction, and Bare will only be used for Inherents.)
      
      Types of extrinsic are now therefore:
      - Bare (no hardcoded signature, no Extra data; used to be known as
      "Unsigned")
      - Bare transactions (deprecated): Gossiped, validated with
      `ValidateUnsigned` (deprecated) and the `_bare_compat` bits of
      `TransactionExtension` (deprecated).
        - Inherents: Not gossiped, validated with `ProvideInherent`.
      - Extended (Extra data): Gossiped, validated via `TransactionExtension`.
        - Signed transactions (with a hardcoded signature).
        - General transactions (without a hardcoded signature).
      
      `TransactionExtension` differs from `SignedExtension` because:
      - A signature on the underlying transaction may validly not be present.
      - It may alter the origin during validation.
      - `pre_dispatch` is renamed to `prepare` and need not contain the checks
      present in `validate`.
      - `validate` and `prepare` is passed an `Origin` rather than a
      `AccountId`.
      - `validate` may pass arbitrary information into `prepare` via a new
      user-specifiable type `Val`.
      - `AdditionalSigned`/`additional_signed` is renamed to
      `Implicit`/`implicit`. It is encoded *for the entire transaction* and
      passed in to each extension as a new argument to `validate`. This
      facilitates the ability of extensions to acts as underlying crypto.
      
      There is a new `DispatchTransaction` trait which contains only default
      function impls and is impl'ed for any `TransactionExtension` impler. It
      provides several utility functions which reduce some of the tedium from
      using `TransactionExtension` (indeed, none of its regular functions
      should now need to be called directly).
      
      Three transaction version discriminator ("versions") are now
      permissible:
      - 0b000000100: Bare (used to be called "Unsigned"): contains Signature
      or Extra (extension data). After bare transactions are no longer
      supported, this will strictly identify an Inherents only.
      - 0b100000100: Old-school "Signed" Transaction: contains Signature and
      Extra (extension data).
      - 0b010000100: New-school "General" Transaction: contains Extra
      (extension data), but no Signature.
      
      For the New-school General Transaction, it becomes trivial for authors
      to publish extensions to the mechanism for authorizing an Origin, e.g.
      through new kinds of key-signing schemes, ZK proofs, pallet state,
      mutations over pre-authenticated origins or any combination of the
      above.
      
      ## Code Migration
      
      ### NOW: Getting it to build
      
      Wrap your `SignedExtension`s in `AsTransactionExtension`. This should be
      accompanied by renaming your aggregate type in line with the new
      terminology. E.g. Before:
      
      ```rust
      /// The SignedExtension to the basic transaction logic.
      pub type SignedExtra = (
      	/* snip */
      	MySpecialSignedExtension,
      );
      /// Unchecked extrinsic type as expected by this runtime.
      pub type UncheckedExtrinsic =
      	generic::UncheckedExtrinsic<Address, RuntimeCall, Signature, SignedExtra>;
      ```
      
      After:
      
      ```rust
      /// The extension to the basic transaction logic.
      pub type TxExtension = (
      	/* snip */
      	AsTransactionExtension<MySpecialSignedExtension>,
      );
      /// Unchecked extrinsic type as expected by this runtime.
      pub type UncheckedExtrinsic =
      	generic::UncheckedExtrinsic<Address, RuntimeCall, Signature, TxExtension>;
      ```
      
      You'll also need to alter any transaction building logic to add a
      `.into()` to make the conversion happen. E.g. Before:
      
      ```rust
      fn construct_extrinsic(
      		/* snip */
      ) -> UncheckedExtrinsic {
      	let extra: SignedExtra = (
      		/* snip */
      		MySpecialSignedExtension::new(/* snip */),
      	);
      	let payload = SignedPayload::new(call.clone(), extra.clone()).unwrap();
      	let signature = payload.using_encoded(|e| sender.sign(e));
      	UncheckedExtrinsic::new_signed(
      		/* snip */
      		Signature::Sr25519(signature),
      		extra,
      	)
      }
      ```
      
      After:
      
      ```rust
      fn construct_extrinsic(
      		/* snip */
      ) -> UncheckedExtrinsic {
      	let tx_ext: TxExtension = (
      		/* snip */
      		MySpecialSignedExtension::new(/* snip */).into(),
      	);
      	let payload = SignedPayload::new(call.clone(), tx_ext.clone()).unwrap();
      	let signature = payload.using_encoded(|e| sender.sign(e));
      	UncheckedExtrinsic::new_signed(
      		/* snip */
      		Signature::Sr25519(signature),
      		tx_ext,
      	)
      }
      ```
      
      ### SOON: Migrating to `TransactionExtension`
      
      Most `SignedExtension`s can be trivially converted to become a
      `TransactionExtension`. There are a few things to know.
      
      - Instead of a single trait like `SignedExtension`, you should now
      implement two traits individually: `TransactionExtensionBase` and
      `TransactionExtension`.
      - Weights are now a thing and must be provided via the new function `fn
      weight`.
      
      #### `TransactionExtensionBase`
      
      This trait takes care of anything which is not dependent on types
      specific to your runtime, most notably `Call`.
      
      - `AdditionalSigned`/`additional_signed` is renamed to
      `Implicit`/`implicit`.
      - Weight must be returned by implementing the `weight` function. If your
      extension is associated with a pallet, you'll probably want to do this
      via the pallet's existing benchmarking infrastructure.
      
      #### `TransactionExtension`
      
      Generally:
      - `pre_dispatch` is now `prepare` and you *should not reexecute the
      `validate` functionality in there*!
      - You don't get an account ID any more; you get an origin instead. If
      you need to presume an account ID, then you can use the trait function
      `AsSystemOriginSigner::as_system_origin_signer`.
      - You get an additional ticket, similar to `Pre`, called `Val`. This
      defines data which is passed from `validate` into `prepare`. This is
      important since you should not be duplicating logic from `validate` to
      `prepare`, you need a way of passing your working from the former into
      the latter. This is it.
      - This trait takes two type parameters: `Call` and `Context`. `Call` is
      the runtime call type which used to be an associated type; you can just
      move it to become a type parameter for your trait impl. `Context` is not
      currently used and you can safely implement over it as an unbounded
      type.
      - There's no `AccountId` associated type any more. Just remove it.
      
      Regarding `validate`:
      - You get three new parameters in `validate`; all can be ignored when
      migrating from `SignedExtension`.
      - `validate` returns a tuple on success; the second item in the tuple is
      the new ticket type `Self::Val` which gets passed in to `prepare`. If
      you use any information extracted during `validate` (off-chain and
      on-chain, non-mutating) in `prepare` (on-chain, mutating) then you can
      pass it through with this. For the tuple's last item, just return the
      `origin` argument.
      
      Regarding `prepare`:
      - This is renamed from `pre_dispatch`, but there is one change:
      - FUNCTIONALITY TO VALIDATE THE TRANSACTION NEED NOT BE DUPLICATED FROM
      `validate`!!
      - (This is different to `SignedExtension` which was required to run the
      same checks in `pre_dispatch` as in `validate`.)
      
      Regarding `post_dispatch`:
      - Since there are no unsigned transactions handled by
      `TransactionExtension`, `Pre` is always defined, so the first parameter
      is `Self::Pre` rather than `Option<Self::Pre>`.
      
      If you make use of `SignedExtension::validate_unsigned` or
      `SignedExtension::pre_dispatch_unsigned`, then:
      - Just use the regular versions of these functions instead.
      - Have your logic execute in the case that the `origin` is `None`.
      - Ensure your transaction creation logic creates a General Transaction
      rather than a Bare Transaction; this means having to include all
      `TransactionExtension`s' data.
      - `ValidateUnsigned` can still be used (for now) if you need to be able
      to construct transactions which contain none of the extension data,
      however these will be phased out in stage 2 of the Transactions Horizon,
      so you should consider moving to an extension-centric design.
      
      ## TODO
      
      - [x] Introduce `CheckSignature` impl of `TransactionExtension` to
      ensure it's possible to have crypto be done wholly in a
      `TransactionExtension`.
      - [x] Deprecate `SignedExtension` and move all uses in codebase to
      `TransactionExtension`.
        - [x] `ChargeTransactionPayment`
        - [x] `DummyExtension`
        - [x] `ChargeAssetTxPayment` (asset-tx-payment)
        - [x] `ChargeAssetTxPayment` (asset-conversion-tx-payment)
        - [x] `CheckWeight`
        - [x] `CheckTxVersion`
        - [x] `CheckSpecVersion`
        - [x] `CheckNonce`
        - [x] `CheckNonZeroSender`
        - [x] `CheckMortality`
        - [x] `CheckGenesis`
        - [x] `CheckOnlySudoAccount`
        - [x] `WatchDummy`
        - [x] `PrevalidateAttests`
        - [x] `GenericSignedExtension`
        - [x] `SignedExtension` (chain-polkadot-bulletin)
        - [x] `RefundSignedExtensionAdapter`
      - [x] Implement `fn weight` across the board.
      - [ ] Go through all pre-existing extensions which assume an account
      signer and explicitly handle the possibility of another kind of origin.
      - [x] `CheckNonce` should probably succeed in the case of a non-account
      origin.
      - [x] `CheckNonZeroSender` should succeed in the case of a non-account
      origin.
      - [x] `ChargeTransactionPayment` and family should fail in the case of a
      non-account origin.
        - [ ] 
      - [x] Fix any broken tests.
      
      ---------
      
      Signed-off-by: default avatargeorgepisaltu <[email protected]>
      Signed-off-by: default avatarAlexandru Vasile <[email protected]>
      Signed-off-by: default avatardependabot[bot] <[email protected]>
      Signed-off-by: default avatarOliver Tale-Yazdi <[email protected]>
      Signed-off-by: default avatarAlexandru Gheorghe <[email protected]>
      Signed-off-by: default avatarAndrei Sandu <[email protected]>
      Co-authored-by: default avatarNikhil Gupta <[email protected]>
      Co-authored-by: default avatargeorgepisaltu <[email protected]>
      Co-authored-by: default avatarChevdor <[email protected]>
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      Co-authored-by: default avatarMaciej <[email protected]>
      Co-authored-by: default avatarJavier Viola <[email protected]>
      Co-authored-by: default avatarMarcin S. <[email protected]>
      Co-authored-by: default avatarTsvetomir Dimitrov <[email protected]>
      Co-authored-by: default avatarJavier Bullrich <[email protected]>
      Co-authored-by: default avatarKoute <[email protected]>
      Co-authored-by: default avatarAdrian Catangiu <[email protected]>
      Co-authored-by: Vladimir Istyufeev's avatarVladimir Istyufeev <[email protected]>
      Co-authored-by: default avatarRoss Bulat <[email protected]>
      Co-authored-by: default avatarGonçalo Pestana <[email protected]>
      Co-authored-by: default avatarLiam Aharon <[email protected]>
      Co-authored-by: default avatarSvyatoslav Nikolsky <[email protected]>
      Co-authored-by: default avatarAndré Silva <[email protected]>
      Co-authored-by: default avatarOliver Tale-Yazdi <[email protected]>
      Co-authored-by: default avatars0me0ne-unkn0wn <[email protected]>
      Co-authored-by: default avatarordian <[email protected]>
      Co-authored-by: default avatarSebastian Kunert <[email protected]>
      Co-authored-by: default avatarAaro Altonen <[email protected]>
      Co-authored-by: default avatarDmitry Markin <[email protected]>
      Co-authored-by: default avatarAlexandru Vasile <[email protected]>
      Co-authored-by: default avatarAlexander Samusev <[email protected]>
      Co-authored-by: default avatarJulian Eager <[email protected]>
      Co-authored-by: default avatarMichal Kucharczyk <[email protected]>
      Co-authored-by: default avatarDavide Galassi <[email protected]>
      Co-authored-by: default avatarDónal Murray <[email protected]>
      Co-authored-by: default avataryjh <[email protected]>
      Co-authored-by: default avatarTom Mi <[email protected]>
      Co-authored-by: default avatardependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
      Co-authored-by: default avatarWill | Paradox | ParaNodes.io <[email protected]>
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      Co-authored-by: default avatarJoshy Orndorff <[email protected]>
      Co-authored-by: default avatarJoshy Orndorff <[email protected]>
      Co-authored-by: default avatarPG Herveou <[email protected]>
      Co-authored-by: default avatarAlexander Theißen <[email protected]>
      Co-authored-by: default avatarKian Paimani <[email protected]>
      Co-authored-by: default avatarJuan Girini <[email protected]>
      Co-authored-by: default avatarbader y <[email protected]>
      Co-authored-by: default avatarJames Wilson <[email protected]>
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      Co-authored-by: default avatarasynchronous rob <[email protected]>
      Co-authored-by: default avatarParth <[email protected]>
      Co-authored-by: default avatarAndrew Jones <[email protected]>
      Co-authored-by: default avatarJonathan Udd <[email protected]>
      Co-authored-by: default avatarSerban Iorga <[email protected]>
      Co-authored-by: default avatarEgor_P <[email protected]>
      Co-authored-by: default avatarBranislav Kontur <[email protected]>
      Co-authored-by: default avatarEvgeny Snitko <[email protected]>
      Co-authored-by: default avatarJust van Stam <[email protected]>
      Co-authored-by: default avatarFrancisco Aguirre <[email protected]>
      Co-authored-by: default avatargupnik <[email protected]>
      Co-authored-by: default avatardzmitry-lahoda <[email protected]>
      Co-authored-by: default avatarzhiqiangxu <[email protected]>
      Co-authored-by: default avatarNazar Mokrynskyi <[email protected]>
      Co-authored-by: default avatarAnwesh <[email protected]>
      Co-authored-by: default avatarcheme <[email protected]>
      Co-authored-by: default avatarSam Johnson <[email protected]>
      Co-authored-by: default avatarkianenigma <[email protected]>
      Co-authored-by: default avatarJegor Sidorenko <[email protected]>
      Co-authored-by: default avatarMuharem <[email protected]>
      Co-authored-by: default avatarjoepetrowski <[email protected]>
      Co-authored-by: default avatarAlexandru Gheorghe <[email protected]>
      Co-authored-by: default avatarGabriel Facco de Arruda <[email protected]>
      Co-authored-by: default avatarSquirrel <[email protected]>
      Co-authored-by: default avatarAndrei Sandu <[email protected]>
      Co-authored-by: default avatargeorgepisaltu <[email protected]>
      Co-authored-by: command-bot <>
      fd5f9292
  4. Jan 10, 2024
  5. Dec 21, 2023
  6. Dec 18, 2023
  7. Dec 14, 2023
    • Svyatoslav Nikolsky's avatar
      Add Rococo People <> Rococo Bulletin bridge support to Rococo Bridge Hub (#2540) · 097308e3
      Svyatoslav Nikolsky authored
      This PR adds [Rococo
      People](https://github.com/paritytech/polkadot-sdk/pull/2281) <> [Rococo
      Bulletin](https://github.com/zdave-parity/polkadot-bulletin-chain) to
      the Rococo Bridge Hub code. There's a couple of things left to do here:
      - [x] add remaining tests - it'd need some refactoring in the
      `bridge-hub-test-utils` - will do in a separate PR;
      - [x] actually run benchmarks for new messaging pallet (do we have bot
      nowadays?).
      
      The reason why I'm opening it before this ^^^ is ready, is that I'd like
      to hear others opinion on how to deal with hacks with that bridge.
      Initially I was assuming that Rococo Bulletin will be the 1:1 copy of
      the Polkadot Bulletin (to avoid maintaining multiple
      runtimes/releases/...), so you can see many `PolkadotBulletin` mentions
      in this PR, even though we are going to bridge with the parallel chain
      (`RococoBulletin`). That's because e.g. pallet names from
      `construct_runtime` are affecting runtime storage keys and bridges are
      using runtime storage proofs => it is important to use names that the
      Bulletin chain expects.
      
      But in the end, this hack won't work - we can't use Polkadot Bulletin
      runtime to bridge with Rococo Bridge Hub, because Polkadot Bulletin
      expects Polkadot Bridge hub to use `1002` parachain id and Rococo Bridge
      Hub seats on the `1013`. This also affects storage keys using in
      bridging, so I had to add the [`rococo`
      feature](https://github.com/svyatonik/polkadot-bulletin-chain/blob/add-bridge-pallets/runtime/Cargo.toml#L198)
      to the Bulletin chain. So now we can actually alter its runtime and
      adapt it for Rococo.
      
      So the question here is - what's better for us here
      - to leave everything as is (seems hacky and non-trivial);
      - change Bulletin chain runtime when `rococo` feature is used - e.g. use
      proper names there (`WithPolkadotGrandpa` -> `WithRococoGrandpa`, ...)
      - add another set of pallets to the Bulletin chain runtime to bridge
      with Rococo and never use them in production. Similar to hack that we
      had in Rococo/Wococo
      
      cc @acatangiu @bkontur @serban300 
      
      also cc @joepetrowski
      
       as the main "client" of this bridge
      
      ---
      
      A couple words on how this bridge is different from the Rococo <>
      Westend bridge:
      - it is a bridge with a chain that uses GRANDPA finality, not the
      parachain finality (hence the tests needs to be changed);
      - it is a fee-free bridge. So
      `AllowExplicitUnpaidExecutionFrom<Equals<SiblingPeople>>` + we are not
      paying any rewards to relayers (apart from compensating transaction
      costs).
      
      ---------
      
      Signed-off-by: default avatardependabot[bot] <[email protected]>
      Signed-off-by: default avatarAndrei Sandu <[email protected]>
      Co-authored-by: default avatarAdrian Catangiu <[email protected]>
      Co-authored-by: default avatardependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
      Co-authored-by: default avatarAndrei Sandu <[email protected]>
      Co-authored-by: default avatarEgor_P <[email protected]>
      Co-authored-by: command-bot <>
      097308e3
  8. Nov 24, 2023
  9. Nov 15, 2023
  10. Nov 02, 2023
    • Oliver Tale-Yazdi's avatar
      Use `Message Queue` as DMP and XCMP dispatch queue (#1246) · e1c033eb
      Oliver Tale-Yazdi authored
      (imported from https://github.com/paritytech/cumulus/pull/2157)
      
      ## Changes
      
      This MR refactores the XCMP, Parachains System and DMP pallets to use
      the [MessageQueue](https://github.com/paritytech/substrate/pull/12485)
      for delayed execution of incoming messages. The DMP pallet is entirely
      replaced by the MQ and thereby removed. This allows for PoV-bounded
      execution and resolves a number of issues that stem from the current
      work-around.
      
      All System Parachains adopt this change.  
      The most important changes are in `primitives/core/src/lib.rs`,
      `parachains/common/src/process_xcm_message.rs`,
      `pallets/parachain-system/src/lib.rs`, `pallets/xcmp-queue/src/lib.rs`
      and the runtime configs.
      
      ### DMP Queue Pallet
      
      The pallet got removed and its logic refactored into parachain-system.
      Overweight message management can be done directly through the MQ
      pallet.
      
      Final undeployment migrations are provided by
      `cumulus_pallet_dmp_queue::UndeployDmpQueue` and `DeleteDmpQueue` that
      can be configured with an aux config trait like:
      
      ```rust
      parameter_types! {
      	pub const DmpQueuePalletName: &'static str = \"DmpQueue\" < CHANGE ME;
      	pub const RelayOrigin: AggregateMessageOrigin = AggregateMessageOrigin::Parent;
      }
      
      impl cumulus_pallet_dmp_queue::MigrationConfig for Runtime {
      	type PalletName = DmpQueuePalletName;
      	type DmpHandler = frame_support::traits::EnqueueWithOrigin<MessageQueue, RelayOrigin>;
      	type DbWeight = <Runtime as frame_system::Config>::DbWeight;
      }
      
      // And adding them to your Migrations tuple:
      pub type Migrations = (
      	...
      	cumulus_pallet_dmp_queue::UndeployDmpQueue<Runtime>,
      	cumulus_pallet_dmp_queue::DeleteDmpQueue<Runtime>,
      );
      ```
      
      ### XCMP Queue pallet
      
      Removed all dispatch queue functionality. Incoming XCMP messages are now
      either: Immediately handled if they are Signals, enqueued into the MQ
      pallet otherwise.
      
      New config items for the XCMP queue pallet:
      ```rust
      /// The actual queue implementation that retains the messages for later processing.
      type XcmpQueue: EnqueueMessage<ParaId>;
      
      /// How a XCM over HRMP from a sibling parachain should be processed.
      type XcmpProcessor: ProcessMessage<Origin = ParaId>;
      
      /// The maximal number of suspended XCMP channels at the same time.
      #[pallet::constant]
      type MaxInboundSuspended: Get<u32>;
      ```
      
      How to configure those:
      
      ```rust
      // Use the MessageQueue pallet to store messages for later processing. The `TransformOrigin` is needed since
      // the MQ pallet itself operators on `AggregateMessageOrigin` but we want to enqueue `ParaId`s.
      type XcmpQueue = TransformOrigin<MessageQueue, AggregateMessageOrigin, ParaId, ParaIdToSibling>;
      
      // Process XCMP messages from siblings. This is type-safe to only accept `ParaId`s. They will be dispatched
      // with origin `Junction::Sibling(…)`.
      type XcmpProcessor = ProcessFromSibling<
      	ProcessXcmMessage<
      		AggregateMessageOrigin,
      		xcm_executor::XcmExecutor<xcm_config::XcmConfig>,
      		RuntimeCall,
      	>,
      >;
      
      // Not really important what to choose here. Just something larger than the maximal number of channels.
      type MaxInboundSuspended = sp_core::ConstU32<1_000>;
      ```
      
      The `InboundXcmpStatus` storage item was replaced by
      `InboundXcmpSuspended` since it now only tracks inbound queue suspension
      and no message indices anymore.
      
      Now only sends the most recent channel `Signals`, as all prio ones are
      out-dated anyway.
      
      ### Parachain System pallet
      
      For `DMP` messages instead of forwarding them to the `DMP` pallet, it
      now pushes them to the configured `DmpQueue`. The message processing
      which was triggered in `set_validation_data` is now being done by the MQ
      pallet `on_initialize`.
      
      XCMP messages are still handed off to the `XcmpMessageHandler`
      (XCMP-Queue pallet) - no change here.
      
      New config items for the parachain system pallet:
      ```rust
      /// Queues inbound downward messages for delayed processing. 
      ///
      /// Analogous to the `XcmpQueue` of the XCMP queue pallet.
      type DmpQueue: EnqueueMessage<AggregateMessageOrigin>;
      ``` 
      
      How to configure:
      ```rust
      /// Use the MQ pallet to store DMP messages for delayed processing.
      type DmpQueue = MessageQueue;
      ``` 
      
      ## Message Flow
      
      The flow of messages on the parachain side. Messages come in from the
      left via the `Validation Data` and finally end up at the `Xcm Executor`
      on the right.
      
      ![Untitled
      (1)](https://github.com/paritytech/cumulus/assets/10380170/6cf8b377-88c9-4aed-96df-baace266e04d)
      
      ## Further changes
      
      - Bumped the default suspension, drop and resume thresholds in
      `QueueConfigData::default()`.
      - `XcmpQueue::{suspend_xcm_execution, resume_xcm_execution}` errors when
      they would be a noop.
      - Properly validate the `QueueConfigData` before setting it.
      - Marked weight files as auto-generated so they wont auto-expand in the
      MR files view.
      - Move the `hypothetical` asserts to `frame_support` under the name
      `experimental_hypothetically`
      
      Questions:
      - [ ] What about the ugly `#[cfg(feature = \"runtime-benchmarks\")]` in
      the runtimes? Not sure how to best fix. Just having them like this makes
      tests fail that rely on the real message processor when the feature is
      enabled.
      - [ ] Need a good weight for `MessageQueueServiceWeight`. The scheduler
      already takes 80% so I put it to 10% but that is quite low.
      
      TODO:
      - [x] Remove c&p code after
      https://github.com/paritytech/polkadot/pull/6271
      - [x] Use `HandleMessage` once it is public in Substrate
      - [x] fix `runtime-benchmarks` feature
      https://github.com/paritytech/polkadot/pull/6966
      
      
      - [x] Benchmarks
      - [x] Tests
      - [ ] Migrate `InboundXcmpStatus` to `InboundXcmpSuspended`
      - [x] Possibly cleanup Migrations (DMP+XCMP)
      - [x] optional: create `TransformProcessMessageOrigin` in Substrate and
      replace `ProcessFromSibling`
      - [ ] Rerun weights on ref HW
      
      ---------
      
      Signed-off-by: default avatarOliver Tale-Yazdi <[email protected]>
      Co-authored-by: default avatarLiam Aharon <[email protected]>
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      Co-authored-by: default avatarKian Paimani <[email protected]>
      Co-authored-by: command-bot <>
      e1c033eb
  11. Nov 01, 2023
  12. Oct 23, 2023
    • Branislav Kontur's avatar
      [testnet] BridgeHubRococo nits (#1972) · e0620fd9
      Branislav Kontur authored
      This PR does not introduce any functional changes to the existing code,
      it merely addresses several minor refactors:
      - Moving bridging pallets to separate files.
      - Improving the readability and naming of weight files for bridging
      pallets and bridging pallet instances.
      
      The reason for this refactor is to facilitate easier plugin integration
      for the upcoming bridge between Rococo and Westend.
      
      ---------
      
      Co-authored-by: command-bot <>
      e0620fd9
  13. Aug 30, 2023
  14. May 16, 2023
    • Branislav Kontur's avatar
      BridgeHubRococo/Wococo nits + updated subtree (#2572) · 17b2e1b3
      Branislav Kontur authored
      * Nits (merge before separatelly)
      
      * Small cosmetics for Rococo/Wococo bridge local run
      
      * Squashed 'bridges/' changes from 04b3dda6aa..5fc377ab34
      
      5fc377ab34 Support for kusama-polkadot relaying (#2128)
      01f4b7f1ba Fix clippy warnings (#2127)
      696ff1c368 BHK/P alignments (#2115)
      2a66aa3248 Small fixes (#2126)
      7810f1a988 Cosmetics (#2124)
      daf250f69c Remove some `expect()` statements (#2123)
      1c5fba8274 temporarily remove balance guard (#2121)
      3d0e547361 Propagate message receival confirmation errors (#2116)
      1c33143f07 Propagate message verification errors (#2114)
      b075b00910 Bump time from 0.3.20 to 0.3.21
      51a3a51618 Bump serde from 1.0.160 to 1.0.162
      da88d044a6 Bump clap from 4.2.5 to 4.2.7
      cdca322cd6 Bump sysinfo from 0.28.4 to 0.29.0
      
      git-subtree-dir: bridges
      git-subtree-split: 5fc377ab34f7dfd3293099c5feec49255e827812
      
      * Fix
      
      * Allow to change storage constants (DeliveryReward, RequiredStakeForStakeAndSlash) + tests
      
      * Clippy
      
      * New SA for RO/WO
      
      * Squashed 'bridges/' changes from 5fc377ab34..0f6091d481
      
      0f6091d481 Bump polkadot/substrate (#2134)
      9233f0a337 Bump tokio from 1.28.0 to 1.28.1
      a29c1caa93 Bump serde from 1.0.162 to 1.0.163
      
      git-subtree-dir: bridges
      git-subtree-split: 0f6091d48184ebb4f75cb3089befa6b92cf37335
      17b2e1b3
  15. May 04, 2023
    • Branislav Kontur's avatar
      BridgeHub Rococo/Wococo runtimes (#2111) · 39aec7c1
      Branislav Kontur authored
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * cargo fmt
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Update BridgeHub runtime version
      
      * Fixes
      
      * Zombienet for bridge-hub setup
      
      * Fixes
      
      * Remove unused import
      
      * Fixes for gav-xcm-v3 (#1835)
      
      * Fix for FungiblesAdapter - trait changes: Contains -> AssetChecking
      
      * Fix for missing weight for `fn unpaid_execution()`
      
      * Used NonLocalMint for all NonZeroIssuance
      
      * Fix
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fix tests
      
      * Fixes
      
      * Trying to fix sed expression?
      
      * Trying to fix sed expression?
      
      * Use the `relay-headers-and-messages` command (#1913)
      
      * Bridge hubs readme: fixes and additions
      
      * Use the relay-headers-and-messages command
      
      * cargo fmt
      
      * Fix README.md + zombienet
      
      * Parachain ID update of bridge-hub-wococo
      
      * Update bridge-hub-wococo chainspec
      
      * Squashed 'bridges/' content from commit 062554430
      
      git-subtree-dir: bridges
      git-subtree-split: 0625544309ff299307f7e110f252f04eac383102
      
      * Add SafeCallFilter
      
      * Add missing config items
      
      * Add TODO
      
      * Fixes (xcm Superuser + DispatchLevelResult)
      
      * Fix cargo
      
      * Change runtime version
      
      * Unit-tests for dispatch bridging messages and XCM routing on BridgeHubs + HRMP
      
      * Removed Sudo pallet
      
      * Use () as the PriceForParentDelivery
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Update transact_origin to transact_origin_and_runtime_call
      
      * Add ReachableDest config item to XCM pallet
      
      * Add BridgeRejectObsoleteHeadersAndMessages to bridge hubs (#1972)
      
      * Update SafeCallFilter to allow remark_with_event in runtime benchmarks
      
      * cargo fmt
      
      * Update substrate
      
      * Fix worst_case_holding
      
      * Fix DMQ queue unit tests
      
      * Remove unused label
      
      * cargo fmt
      
      * Actually process incoming XCMs
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes - return back Weightless
      
      * Simplify local run + readme
      
      * Added measured benchmarks for `pallet_xcm` (#1968)
      
      * Fix
      
      Fix
      
      Fix
      
      * Fix
      
      * Fixes for transact benchmark
      
      * Fixes add pallet_xcm to benchmarks
      
      * Revert remark_with_event
      
      * ".git/.scripts/bench-bot.sh" xcm statemine assets pallet_xcm_benchmarks::generic
      
      * Fixes
      
      * TMP
      
      * Fix for reserve_asset_deposited
      
      * ".git/.scripts/bench-bot.sh" pallet statemine assets pallet_xcm
      
      * Fix
      
      * ".git/.scripts/bench-bot.sh" pallet statemint assets pallet_xcm
      
      * Fix
      
      * ".git/.scripts/bench-bot.sh" pallet westmint assets pallet_xcm
      
      * Fix westmint
      
      * ".git/.scripts/bench-bot.sh" xcm statemine assets pallet_xcm_benchmarks::generic
      
      * Fix
      
      * ".git/.scripts/bench-bot.sh" xcm westmint assets pallet_xcm_benchmarks::generic
      
      * ".git/.scripts/bench-bot.sh" xcm statemint assets pallet_xcm_benchmarks::generic
      
      * ".git/.scripts/bench-bot.sh" pallet collectives-polkadot collectives pallet_xcm
      
      * Fix for collectives
      
      * ".git/.scripts/bench-bot.sh" pallet bridge-hub-kusama bridge-hubs pallet_xcm
      
      * ".git/.scripts/bench-bot.sh" pallet bridge-hub-rococo bridge-hubs pallet_xcm
      
      * Fixes for bridge-hubs
      
      * Fixes - return back Weightless
      
      * Fix - removed MigrateToTrackInactive for contracts-rococo
      
      Co-authored-by: command-bot <>
      
      * cargo fmt
      
      * Fix benchmarks
      
      * Bko gav xcm v3 (#1993)
      
      * Fix
      
      * ".git/.scripts/bench-bot.sh" xcm statemint assets pallet_xcm_benchmarks::fungible
      
      * ".git/.scripts/bench-bot.sh" xcm statemine assets pallet_xcm_benchmarks::fungible
      
      * ".git/.scripts/bench-bot.sh" xcm westmint assets pallet_xcm_benchmarks::fungible
      
      * ".git/.scripts/bench-bot.sh" xcm statemine assets pallet_xcm_benchmarks::generic
      
      * ".git/.scripts/bench-bot.sh" xcm statemint assets pallet_xcm_benchmarks::generic
      
      * ".git/.scripts/bench-bot.sh" xcm westmint assets pallet_xcm_benchmarks::generic
      
      * ".git/.scripts/bench-bot.sh" pallet statemine assets pallet_xcm
      
      * ".git/.scripts/bench-bot.sh" pallet westmint assets pallet_xcm
      
      * ".git/.scripts/bench-bot.sh" pallet statemint assets pallet_xcm
      
      * ".git/.scripts/bench-bot.sh" pallet collectives-polkadot collectives pallet_xcm
      
      * ".git/.scripts/bench-bot.sh" pallet bridge-hub-kusama bridge-hubs pallet_xcm
      
      * ".git/.scripts/bench-bot.sh" pallet bridge-hub-rococo bridge-hubs pallet_xcm
      
      Co-authored-by: command-bot <>
      
      * Change AllowUnpaidExecutionFrom to be explicit
      
      * Turn on more xcm logs for parachains
      
      * Added polkadot-parachain-mint binary instructions
      
      * xcm-v3 benchmarks, weights, fixes for bridge-hubs (#2035)
      
      * Dumy weights to get compile
      
      * Change UniversalLocation according to https://github.com/paritytech/polkadot/pull/4097
      
       (Location Inversion Removed)
      
      * Fix bridge-hubs weights
      
      * ".git/.scripts/bench-bot.sh" pallet statemine assets pallet_xcm
      
      * ".git/.scripts/bench-bot.sh" pallet statemint assets pallet_xcm
      
      * ".git/.scripts/bench-bot.sh" pallet collectives-polkadot collectives pallet_xcm
      
      * ".git/.scripts/bench-bot.sh" pallet westmint assets pallet_xcm
      
      * ".git/.scripts/bench-bot.sh" xcm bridge-hub-kusama bridge-hubs pallet_xcm_benchmarks::generic
      
      * ".git/.scripts/bench-bot.sh" xcm bridge-hub-kusama bridge-hubs pallet_xcm_benchmarks::fungible
      
      * ".git/.scripts/bench-bot.sh" pallet bridge-hub-kusama bridge-hubs pallet_xcm
      
      * ".git/.scripts/bench-bot.sh" pallet bridge-hub-rococo bridge-hubs pallet_xcm
      
      * ".git/.scripts/bench-bot.sh" xcm bridge-hub-rococo bridge-hubs pallet_xcm_benchmarks::fungible
      
      * ".git/.scripts/bench-bot.sh" xcm bridge-hub-rococo bridge-hubs pallet_xcm_benchmarks::generic
      
      * Change NetworkId to Option<NetworkId>
      
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      
      * remove shift session manager from bridge-hub-rococo (#2047)
      
      * remove shift session manager from bridge-hub-rococo
      
      * also remove from Cargo.toml
      
      * Add event for showing the hash of an UMP sent message (#1228)
      
      * Add UpwardMessageSent event in parachain-system
      
      * additional fixes
      
      * Message Id
      
      * Fix errors from merge
      
      * fmt
      
      * more fmt
      
      * Remove todo
      
      * more formatting
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Updated README.md and scripts/bridges_rococo_wococo.sh for sending messages (local, live)
      
      * Allow explicit unpaid executions from the relay chains for system parachains (#2060)
      
      * Allow explicit unpaid executions from the relay chains for system parachains
      
      * Put origin-filtering barriers into WithComputedOrigin
      
      * Use ConstU32<8>
      
      * Small nits
      
      * formatting
      
      * cargo fmt
      
      * Align laneId to 00000001
      
      * Allow receiving XCMs from any relay chain plurality
      
      * Fixes
      
      * Use Rococo/Wococo runtime APIs defined in bridge primitives (#2080)
      
      * Patched dependencies (polkadot, substrate) for xcm-v3 (compiles + tests work)
      
      * Replace serial_test and fix with thread_local
      
      * Very init of script for bumping bridges repo
      
      * Squashed 'bridges/' changes from 062554430..984749ba0
      
      984749ba0 Define separate signed extension for BHR/BHW (#1776)
      72b03d463 update Substrate/Polkadot/Cumulus deps to master (#1775)
      3065c7903 Added crate-level docs for the parachains pallet (#1772)
      a0f41b2d8 added/updated pallet level docs to grandpa and messages pallets (#1771)
      6d69d1f4d docs: add Security Policy doc (#1770)
      ff8c0f727 Fix cargo deny issues (#1769)
      6fc931d07 Bump xcm-v3 + substrate (#1767)
      5840197c3 Define method for checking message lane weights (#1766)
      881af0219 increase MAX_UNREWARDED_RELAYERS_IN_CONFIRMATION_TX and MAX_UNCONFIRMED_MESSAGES_IN_CONFIRMATION_TX for RBH/WBH (#1765)
      41d91e961 fixed receive_delivery_proof_for_two_messages_by_two_relayers (#1764)
      ac0cf7b78 Fix some cargo-deny issues (#1763)
      6d9dc6367 `cargo machete` removed unused deps (#1761)
      c265b5430 Remove sp-version dependency from bin-substrate (#1758)
      1327c9d97 Set `R/WococoBridgeHub` bundle runtime version (#1756)
      a3a2a06ae Expose relay version metric (#1750)
      13f4a0164 Use indirect runtime calls for RialtoParachain (#1753)
      9563f9eee fix nightly clippy again (#1752)
      21b75b893 no-grafana-startup-delay option in run.sh (#1751)
      a5fe0dfc4 Remove TODO (#1749)
      6c826a6c3 Deduplicate pallet call structs used for indirect runtime calls (#1744)
      e575269e5 fix nightly clippy (#1746)
      209cba353 Update project level docs (#1734)
      b05cef5b4 Improve relayer initialization behaviour (#1743)
      c7b6bae9d Make debug display of LaneId compatible with its previous version (#1740)
      221e4e80c Remove CliChain::KeyPair (#1741)
      3d9d2907f Use TypedLaneId instead of LaneId (#1738)
      6683b8136 Simplify read_client_state() (#1739)
      3f7353b82 Expose metrics of on-demand relay chain headers sync from with-parachain complex relays (#1737)
      ab65d84e0 Handle `SIGTERM` for the docker containers + relay (#1735)
      b9050e90c Replace `BATCH_CALL_SUPPORTED` (#1733)
      c28b3ff66 Updated db weights and some experiments (#1732)
      023689c6c Do not require new headers if lane is empty (#1725)
      bddf1fa19 remove messages pallet owner relay argument (#1728)
      ef55226c6 more traces + remove signer override (#1727)
      4d50df6ed remove BatchDeliveryTransaction::new and BatchConfirmationTransaction::new to avoid expects (#1726)
      15244e53e Batch transactions in complex relays (#1669)
      c209bb9ac fix pallet names at bridge hubs (#1722)
      036e6696e tests (#1720)
      3d56e2089 Check origin? (#1718)
      af9abbeb8 Remove SOURCE_PARACHAIN_PARA_ID (#1716)
      d1cb5d1a8 fix parachains benchmarks (#1717)
      84bdf864b Changed docker image name for substrate-relay (#1714)
      5698fb465 Remove WeightToFee (#1713)
      9f4106bc1 Fix bridge hub rococo/wococo weights (#1712)
      114b1502f Only store header state root (pallet-bridge-parachains) (#1701)
      92e86f07b New relayer rewards scheme integration (#1652)
      8649d12af Signed extension to refund relayer at the target chain (#1657)
      ec6bafaf0 DeliveryConfirmationPayments trait for paying relayer rewards at the source chain (#1653)
      fab2344f4 only store header state root (pallet-bridge-grandpa) (#1699)
      b5e916f64 fixed benchmarks of relayers pallet (#1700)
      5cce3e86d fix clippy (#1698)
      f78e8867b removed MintReward and added PayLaneRewardFromAccount (#1693)
      0c19db305 added version guards to RBH<>WBH GRANDPA finality (and complex) relay (#1697)
      c003b951d removed ESTIMATE_MESSAGE_FEE_METHOD (#1696)
      4903b7929 refund_pay_dispatch_fee removed (#1695)
      61c3b22ca Replace const parameters types (#1691)
      
      git-subtree-dir: bridges
      git-subtree-split: 984749ba021b5b8ec16f65cd1e50b234640d838b
      
      * Fixes after merge
      
      * Fixes
      
      * Use auto runtime version for local runs (#2113)
      
      * Squashed 'bridges/' changes from 984749ba0..fb3c5ef5d
      
      fb3c5ef5d Add integrity check for signed extensions (#1780)
      3959628ff add try-runtime feature to pallets (#1779)
      be36ff00c Default impl for some methods in messages benchmarking pallet config (#1777)
      68344e329 Relayer reward metric (#1742)
      6b455597b Crate-level documentation on finality relays and relayers pallet (#1773)
      
      git-subtree-dir: bridges
      git-subtree-split: fb3c5ef5dae42553522c7eff37678de9bf4f6c67
      
      * Fixed try-runtime
      
      * Fix cargo.lock
      
      * Fix BridgePalletIsNotInitialized (#2114)
      
      * Squashed 'bridges/' changes from fb3c5ef5d..e2e9fa7f9
      
      e2e9fa7f9 Expose EXTRA_STORAGE_PROOF_SIZE in bp-bridge-hub-cumulus (#1788)
      ba85532b1 Removed unecesserry test + substrate/polkadot (#1787)
      
      git-subtree-dir: bridges
      git-subtree-split: e2e9fa7f94d2f105c1816402a9ae4b85bfc34145
      
      * Fix cargo.toml
      
      * Squashed 'bridges/' changes from e2e9fa7f9..d5f95c14a
      
      d5f95c14a use wss to connect to the Rialto node in test deployments (#1809)
      722d47b06 fix compilation
      a48732676 Bump sysinfo from 0.15.9 to 0.27.7
      9a6e8bb1d Bump env_logger from 0.8.4 to 0.10.0
      89c5e7981 Bump async-trait from 0.1.61 to 0.1.62
      ddd0a5742 Bump fixed-hash from 0.7.0 to 0.8.0
      e8b0b8192 Bump impl-serde from 0.3.2 to 0.4.0
      c5227460f Bump jsonpath_lib from 0.2.6 to 0.3.0
      9f4771d38 Bump parking_lot from 0.11.2 to 0.12.1
      dab5d72ae Bump backoff from 0.2.1 to 0.4.0
      d7dd3acce Bump strum from 0.21.0 to 0.24.1
      c49799017 Bump tokio from 1.24.1 to 1.24.2
      db614681e Bump clap from 4.1.0 to 4.1.1
      3c155214d update ignored dependencies for dependabot (#1790)
      4c791472c No wildcard patterns in Cargo.toml (#1789)
      33632313d Remove chain-specific dependencies from crates that will be used in Cumulus (#1783)
      
      git-subtree-dir: bridges
      git-subtree-split: d5f95c14a2771d7ad51db95670d08a5d0da526a0
      
      * Fix `send-remark-local` script because of new xcm-v3
      
      * Refactor haul/dispatch xcm stuff
      
      * Add Rococo <> Wococo integrity tests (#1975)
      
      * Remove 1 integrity test
      
      In sync with https://github.com/paritytech/parity-bridges-common/pull/1816
      
      
      
      * use TargetHeaderChainAdapter and SourceHeaderChainAdapter
      
      * Rococo <-> Wococo integrity tests
      
      * Add message lane weights tests
      
      * Add signed extension integrity test
      
      * Bridge benchmarks for bridge hub rococo/wococo (#2107)
      
      * fix benchmarks compilation and add bridges benchmarks (prototype) to RBH/WBH
      
      * post-merge fixes
      
      * remove duplicate "pallet-collator-selection/runtime-benchmarks"
      
      * ".git/.scripts/commands/bench/bench.sh" pallet bridge-hub-rococo bridge-hubs pallet_bridge_grandpa
      
      * ".git/.scripts/commands/bench/bench.sh" pallet bridge-hub-rococo bridge-hubs pallet_bridge_parachains
      
      * remove methods that are no longer required
      
      * fixed helpers used in bridge hub messages palelt benchmarks
      
      * unused imports
      
      * compilation
      
      * compilation
      
      * benchmarks-ci.sh
      
      * ".git/.scripts/commands/bench/bench.sh" pallet bridge-hub-rococo bridge-hubs pallet_bridge_messages
      
      * use generated weights in pallets configuration
      
      * add mod for new weights
      
      * impl WeightInfoExt
      
      Co-authored-by: command-bot <>
      
      * Ensure governance can call `initialize` with `xcm:Transact` bridge grandpa pallets
      
      * Just in case changed spec_version
      
      * Some scripts for enabling asset transfer on local statemine->westmint
      
      * script
      
      * Squashed 'bridges/' changes from d5f95c14a..b39cb0dea
      
      b39cb0dea MaxValues limit for storage maps in the pallet-bridge-grandpa (#1861)
      11b3a611d fixed TODOs for weights v2 (#1860)
      5a44f9fea Message delivery transaction is not free!!! (#1859)
      59a42bd58 fixed BEEFY genesis (#1858)
      ab7c7ad0f Use parity-util-mem 0.12.0 (#1856)
      8fd346e5a changed some tests for weights v2 (#1855)
      c438b9f74 Add separate Cargo.lock for `tools/runtime-codegen` (#1854)
      fc55a97d7 Fix `HeadersToKeep` and `MaxBridgedAuthorities` in Millau benchmarks (#1851)
      72e64a3d7 Decrease number of GRANDPA authorities in Polkadot-like chains from 100_000 to 2_048 (#1852)
      d60a331ed Update Substrate/Polkadot/Cumulus dependencies + weights v2 (#1850)
      61b229b65 Bump async-trait from 0.1.63 to 0.1.64
      366333108 Bump serde_json from 1.0.91 to 1.0.92 (#1845)
      4d917bb3a Bump trie-db from 0.24.0 to 0.25.0
      8d919eac9 Bump anyhow from 1.0.68 to 1.0.69
      ef9364dd0 Bump proc-macro2 from 1.0.49 to 1.0.51
      9ddeebed5 Bump futures from 0.3.25 to 0.3.26
      e02eb7573 connect using wss under flag condition (#1843)
      99754a07f remove extra tracing on test deployments (#1842)
      bdb84cea6 Add tool for auto generating runtime code from metadata (#1812)
      86662f263 fix bridge-runtime-common build (#1839)
      f656ac77d Change some macro names (#1837)
      50f2980e9 Verify partial repo build on CI (#1832)
      f70f8231b fix bridge hubs blocks interval (#1836)
      ddbe5cddf [ci] change runners (#1833)
      45a68ad39 Fix on demand parachains relay when no parachain head at target (#1834)
      6dbce7258 Use GitLab env vars to get git commit (#1831)
      b1a8161e8 bump bridge hub versions (#1830)
      e909595e0 Use specific error for case when para head is missing from the bridge pallet (#1829)
      d517da8a2 Do not read parachain heads from ancient relay headers (#1827)
      217bc72f5 Reconnect source client (#1826)
      47bf5f693 Bump tokio from 1.24.2 to 1.25.0
      6b307b48a Bump clap from 4.1.3 to 4.1.4
      90bc29a17 Use named parameters for indirect calls (#1823)
      986eeb556 Fix: typos (#1822)
      450823b01 docs: fix broken link and minor nits (#1821)
      3ed01ae31 do not call best_finalized_para_block_at_source for ancient block (#1819)
      001956290 Functions to benchmark messages pallet with linked to parachain (#1817)
      e9b0a1c48 Remove InboundPayload check (#1816)
      873ea4e40 Bump clap from 4.1.1 to 4.1.3
      97eccaa8b also ignore the base xcm crate (#1798)
      2d3dcd00b Update bundled runtime version for bridge hub r/wococo (#1814)
      7167c0067 Bump bumpalo from 3.10.0 to 3.12.0 in /fuzz/storage-proof
      067687520 Bump async-trait from 0.1.62 to 0.1.63 (#1811)
      
      git-subtree-dir: bridges
      git-subtree-split: b39cb0dea5751847ea73ab9946667003625eaf1a
      
      * Squashed 'bridges/' changes from b39cb0dea..4c4a7eae1
      
      4c4a7eae1 Small stuff from Cumulus integration (#1865)
      
      git-subtree-dir: bridges
      git-subtree-split: 4c4a7eae1503aa63a84fb65d56d67599d362d645
      
      * Squashed 'bridges/' changes from 4c4a7eae1..dcaec27aa
      
      dcaec27aa RefundRelayerForMessagesFromParachain improvements (#1879)
      5457f0672 clippy fixes (#1880)
      29e8a305c MaxValues for OutboundLanes map (#1871)
      5219b56f8 More tests for message pallet weights (#1870)
      c4c0c7a1b Bump signal-hook from 0.3.14 to 0.3.15
      0ff597b96 Bump serde_json from 1.0.92 to 1.0.93
      1c5132eb1 Bump subxt from `20adb19` to `9e2acff`
      adb07816b update parachains relay doc (#1874)
      972ef3133 Update README.md (#1872)
      94648061b MaxValues for maps in parachain maps (#1868)
      662267a6f "refund" proof size in GRANDPa pallet (#1863)
      
      git-subtree-dir: bridges
      git-subtree-split: dcaec27aaa6f41070fbdfbfd4fde2029697eb85f
      
      * Squashed 'bridges/' changes from dcaec27aa..91e66cfb9
      
      91e66cfb9 Fix clippy issues (#1884)
      0bd77f457 Reject storage proofs with unused nodes: begin (#1878)
      77a3672f9 Refund extra proof bytes in message delivery transaction (#1864)
      
      git-subtree-dir: bridges
      git-subtree-split: 91e66cfb99c1a7b247e435515dd0f62b4058974e
      
      * Fix tests
      
      * Squashed 'bridges/' changes from 91e66cfb9..d39f563be
      
      d39f563be Make `weights::WeightInfo` pub (#1886)
      c67d06aa5 ChainWithGrandpa in primitives (#1885)
      
      git-subtree-dir: bridges
      git-subtree-split: d39f563bea57528c16763f458af3036842a0ea5f
      
      * Merge fix
      
      * Squashed 'bridges/' changes from d39f563be..78e3357c0
      
      78e3357c0 RefundRelayerForMessagesFromParachain improvements (#1895)
      131b17359 optimize justification before submit (#1887)
      5bc279ebb use complex transactions on RBH/WBH bridge hubs (#1893)
      8f0c09ab9 Bump clap from 4.1.4 to 4.1.6
      66429b06a Bump sysinfo from 0.27.7 to 0.28.0
      8b329ee8f Bump trie-db from 0.25.0 to 0.25.1
      635cfccfd Bump time from 0.3.17 to 0.3.19
      
      git-subtree-dir: bridges
      git-subtree-split: 78e3357c0387c95317b8c3e5c4d9316f3a9f3ef4
      
      * Squashed 'bridges/' changes from 78e3357c0..5b5627e90
      
      5b5627e90 Rewards refund for relaying BridgeHubRococo/BridgeHubWococo (#1894)
      
      git-subtree-dir: bridges
      git-subtree-split: 5b5627e9081640ed5691eb2891182843563fb99a
      
      * Rewards for relayers setup (#2194)
      
      * Rewards for relayers setup
      
      * ".git/.scripts/commands/bench/bench.sh" pallet bridge-hub-rococo bridge-hubs pallet_bridge_relayers
      
      * Setup weight for relayer
      
      * Setup `DeliveryConfirmationPayments` + `RefundRelayerForMessagesFromParachain`
      
      * No need to have more than one collator per parachain
      
      * Setup multi refund signed extensions
      
      * Rewards sign ext test
      
      * test
      
      * fixes
      
      ---------
      
      Co-authored-by: command-bot <>
      
      * Squashed 'bridges/' changes from 5b5627e90..3c15c3645
      
      3c15c3645 get rid of ChainWithMessages::WeightInfo, because we can't have exact weights for "external chains" (#1899)
      8ccaa0213 Wrap confirmation and finality transactions into batch_all in Millau -> RialtoParachain bridge (#1898)
      9b7285edb Weight+size limits for bridge GRANDPA pallet calls (#1882)
      
      git-subtree-dir: bridges
      git-subtree-split: 3c15c36455f2ad944df6a492a8d82f7e0aaf7e9f
      
      * Squashed 'bridges/' changes from 3c15c3645..d05a98473
      
      d05a98473 Refund messages confirmation tx (#1904)
      e2e8a7198 Relayers pallet: extend payment source id (#1907)
      cccf73b3f fix nightly clippy issues (#1915)
      a33a91e79 Bump tempfile from 3.3.0 to 3.4.0
      1df768a2e Bump time from 0.3.17 to 0.3.20
      cf17b424f Bump sysinfo from 0.28.0 to 0.28.1
      0b6276b41 Bump jsonrpsee from 0.15.1 to 0.16.2
      328dde02b Bump rand from 0.7.3 to 0.8.5
      2f302a4b6 Bump trie-db from 0.25.1 to 0.26.0
      b5d5d03ab CI add jobs to publish Docker images description to hub.docker.com (#1906)
      db5168f18 Do not stall on lost transaction (#1903)
      2d83d6389 Fix init-bridge (#1900)
      
      git-subtree-dir: bridges
      git-subtree-split: d05a98473dc933cfed9e5f59023efa2ec811f03c
      
      * Rewards adjustments
      
      * Update RBH/WBH spec version
      
      * Squashed 'bridges/' changes from d05a98473..ce7cf9a49
      
      ce7cf9a49 Removed deprecated `#[pallet::generate_store(pub(super) trait Store)]` according to latest Cumulus (#1964)
      897b1c0b2 Bump substrate/polkadot/cumulus (#1962)
      7b946da2d Backport xcm bridging extensions to the bridge repo (#1813)
      88c1114ec Bump futures from 0.3.26 to 0.3.27
      8668f73bf Bump serde from 1.0.152 to 1.0.155
      3df8823e1 Bump subxt from `a7b45ef` to `d4545de`
      ef1b1bcd0 Some error improvements (#1956)
      434c5e014 optimize justifications before they're included into complex transaction (#1949)
      7bac365a6 Actually clone client data by reference when cloning the client (#1941)
      764ddd4a8 remove lock file after checks are done (#1942)
      c18a758f8 Fix invalid messages relay delivery transactions (#1940)
      8ad152b06 fix nightly benchmarks test (#1939)
      d451b4f84 Bump tokio from 1.25.0 to 1.26.0
      8019c50aa Bump async-trait from 0.1.64 to 0.1.66
      aa055fcee Bump serde_json from 1.0.93 to 1.0.94
      ec2ef31c4 Bump subxt from `1c5faf3` to `a7b45ef`
      20026366f Bump sysinfo from 0.28.1 to 0.28.2
      fe246d1e3 Bump thiserror from 1.0.38 to 1.0.39
      c95e0cf02 Fix deploy step in CI (#1931)
      15b41c2dd Improve some relay errors readability (#1930)
      792deae5e Added deploy Job (#1929)
      d86c3ce21 Reconnect on-demand clients from MessagesSource::reconnect and MessagesTarget::reconnect (#1927)
      4161b51f0 get rid of obsolete weight functions (#1926)
      9b3b00e0f cargo update -p [email protected] (#1925)
      13ab28c37 Bump subxt from `9e2acff` to `1c5faf3`
      bb6171a05 Remove subxt dependency features (#1924)
      66d200abb Verify with-parachain message benchmarks on CI (#1923)
      b6af2116f Update BHR and BHW spec version (#1922)
      d464e78d9 Fix benchmarks (#1919)
      74574d53e fix master compilation (#1920)
      1b373dff9 Fix multiple parachain headers submission for single message delivery (#1916)
      
      git-subtree-dir: bridges
      git-subtree-split: ce7cf9a4977fe614d35b6a7a84d5057e2c4ccaf5
      
      * fixed npm install call (#2323)
      
      * New weights (#2315)
      
      * New weights
      
      * Fix compile benchmarks
      
      * Fix import
      
      * Fix all weights
      
      * Remove bridge_common_config replaced by bridges impl
      
      * Cargo.lock
      
      * fixed bridge pallets compilation
      
      * Cargo.lock
      
      * fix bridge pallets compilation after substrate+polkadot bump
      
      * BridgeHubs: XCM ExportMessage benchmark - just Rococo now
      
      * bench export_message()
      
      * include Bridge::haul_blob() weight in ExportMessage weight
      
      * fix import
      
      * more build fixes
      
      * Squashed 'bridges/' changes from ce7cf9a49..6343a7d37
      
      6343a7d37 bump substrate+polkadot refs and fix builds (#1989)
      8efc2b3cc Added receive_single_message_proof_with_dispatch benchmark (#1990)
      6540f74dc Remove deprecated code from bridge-runtime-common (#1983)
      c4f368be3 minor cosmetic updates (#1985)
      bef11ac43 remove invalid weight, returned by send_message (#1984)
      28cf5c957 Kusama <> Polkadot relay prototype (#1982)
      b195223d1 Bump serde from 1.0.156 to 1.0.157
      70caa75d7 ignore binary-merkle-tree (#1980)
      3dc640d30 Bump thiserror from 1.0.39 to 1.0.40
      8a2729101 Bump subxt from `d4545de` to `ae63d3d`
      40937e8a3 Bump clap from 4.1.8 to 4.1.11
      d72394c4e Bump finality-grandpa from 0.16.1 to 0.16.2
      54147603d Bump serde from 1.0.155 to 1.0.156
      b513193e6 Bump anyhow from 1.0.69 to 1.0.70
      20867abd9 Bump sysinfo from 0.28.2 to 0.28.3
      4d9a45305 Bump async-trait from 0.1.66 to 0.1.67
      8a88a7536 Bump trie-db from 0.26.0 to 0.27.1
      0add06edd move signed extension stuff from prolkadot-core primitives to bridge-hub-cumulus-primitives (#1968)
      7481ce6eb added UpdatedBestFinalizedHeader event to pallet-bridge-grandpa (#1967)
      6787cd0cb RBH <> WBH dashboards and alerts (#1966)
      036f7be76 enable relayer rewards metrics at bridge hubs (#1965)
      a3f07d5dd Fix invalid batch transaction (#1957)
      
      git-subtree-dir: bridges
      git-subtree-split: 6343a7d37c32191413be91afb537b8bc6c770285
      
      * dispatch message weight for bridge messages (#2378)
      
      Co-authored-by: default avatarSvyatoslav Nikolsky <[email protected]>
      
      * Fixes
      
      * Squashed 'bridges/' changes from 6343a7d37..c1d5990e8
      
      c1d5990e8 Try check-rustdoc pipeline (#1782)
      
      git-subtree-dir: bridges
      git-subtree-split: c1d5990e840b8ee4981beb61a8099271ee629ae5
      
      * Removed imports
      
      * Fix compile
      
      * fixed benchmarks compilation
      
      * fix rustdoc
      
      * Squashed 'bridges/' changes from c1d5990e8..ecddd4a31
      
      ecddd4a31 Rust cargo doc for all features (#1995)
      e0997c14d Fix gitlab-check (#1994)
      5284850ef Bump clap from 4.1.11 to 4.1.13
      743cd60df Bump sysinfo from 0.28.3 to 0.28.4
      dc322bae2 Bump async-trait from 0.1.67 to 0.1.68
      
      git-subtree-dir: bridges
      git-subtree-split: ecddd4a315470d85135aafbdb96753af9b07b854
      
      * Updated scripts for transfer assets
      
      * Cargo.lock
      
      * Script updates for `ping-via-bridge-from-statemine-rococo`
      
      * Added `transfer-asset-from-statemine-rococo`
      
      * Finished scripts
      
      * README.md
      
      * Compile fix + log xcm trace all
      
      * Initial version of bridges pallet as subtree of https://github.com/paritytech/parity-bridges-common
      Added `Bridges subtree files` pr review rule
      
      * Squashed 'bridges/' changes from ecddd4a31..d30927c08
      
      d30927c08 Revert dispatch-results (#2048)
      fa454c3b4 Remove unneeded files (#2044)
      956a2c687 Bump clap from 4.2.1 to 4.2.2
      91951583a Bump serde_json from 1.0.95 to 1.0.96
      fcf462051 Bump h2 from 0.3.16 to 0.3.17 in /tools/runtime-codegen
      b751fb24f Bump h2 from 0.3.16 to 0.3.17
      0bf31ab78 update refs (#2041)
      a490ecbd3 Fix CI build (#2039)
      01139ebbc Define `RangeInclusiveExt` (#2037)
      2db2f3fe3 Impl review suggestions from #2021 (#2036)
      36292760f fix build step on CI (#2034)
      3a2311b7a refund extra weight in receive_messages_delivery_proof call (#2031)
      77f1641d1 Boost message delivery transaction priority (#2023)
      c23c4e441 Reject delivery transactions with at least one obsolete message (#2021)
      68ba699b7 Reintroduce msg dispatch status reporting (#2027)
      d1e852cc3 Bump hex-literal from 0.4.0 to 0.4.1
      16f25d613 Relay node down alert (#2002)
      4bb1a6406 only refund if all bundled messages have been delivered (#2019)
      b9acf52bc fail with InsufficientDispatchWeight if dispatch_weight doesn't cover weight of all bundled messages (#2018)
      e10097fe2 Remove unneeded error debug strings (#2017)
      f5e38f057 enable metrics on all validator nodes (#2016)
      c35f1a187 Bump scale-info from 2.4.0 to 2.5.0
      04c56977c Bump clap from 4.1.13 to 4.2.1
      481371f3c Bump hex-literal from 0.3.4 to 0.4.0
      6b9c1400d Bump serde from 1.0.158 to 1.0.159
      e71877a2e Bump futures from 0.3.27 to 0.3.28
      c019f4faa Bump tempfile from 3.4.0 to 3.5.0
      2e6e79ef6 Bump serde_json from 1.0.94 to 1.0.95
      0698b1ff9 Bump tokio from 1.26.0 to 1.27.0
      35b149830 fix test step on CI (#2003)
      0c3acc858 cleanup removed lane traces (#2001)
      8bf81749e bump BridgeHubRococo/BridgeHubWococo versions (#2000)
      e53bb7f36 MaxRequests -> MaxFreeMandatoryHeadersPerBlock in pallet-bridge-grandpa (#1997)
      dfcc09043 Run tests for `runtime-benchmarks` feature only (#1998)
      efcc8db17 Run benchmarks for mock runtimes (#1996)
      
      git-subtree-dir: bridges
      git-subtree-split: d30927c089bd9e73092d1ec1a62895603cb277a3
      
      * Fixes
      
      * Squashed 'bridges/' content from commit d30927c08
      
      git-subtree-dir: bridges
      git-subtree-split: d30927c089bd9e73092d1ec1a62895603cb277a3
      
      * Updated REAMDE.md and BRIDGES.md (inspired by original https://github.com/paritytech/polkadot/blob/d22eb62fe40e55e15eb91d375f48cc540d83a47e/BRIDGES.md
      
      )
      
      * Squashed 'bridges/' changes from d30927c08..d3970944b
      
      d3970944b Small simplifications (#2050)
      
      git-subtree-dir: bridges
      git-subtree-split: d3970944b0cfc4ea5226225e1ca07dab234c3556
      
      * Squashed 'bridges/' changes from d3970944b..2180797fb
      
      2180797fb Removed CODEOWNERS (#2051)
      
      git-subtree-dir: bridges
      git-subtree-split: 2180797fbf8a990490c67853dcffd81bc8dd083c
      
      * Reused `teleports_for_native_asset_works` test to all bridge-hub runtime
      Extract runtime_para_id for test
      Fix test
      Typos
      Added helper for `execute_as_governance`
      
      * Added test case `initialize_bridge_by_governance_works`
      
      * Added test case `handle_export_message_from_system_parachain_to_outbound_queue_works`
      fix script
      Removed BridgeGrandpaRococoInstance
      
      * Added test-case `message_dispatch_routing_works`
      
      * Squashed 'bridges/' changes from 2180797fbf..4850aac8ce
      
      4850aac8ce Removed relayer_account: &AccountId from MessageDispatch  (#2080)
      8c8adafd54 Revert "Fix max-size messages at test chains (#2064)" (#2077)
      c01a63efd8 Fixed off-by-one when confirming rewards in messages pallet (#2075)
      a298be96aa Update subxt dependencies (#2072)
      c0eef51eab Fix max-size messages at test chains (#2064)
      3a658e3697 Messages relay fixes (#2073)
      0022b5ab22 Slash relayers for invalid transactions (#2025)
      198104007f Bump enumflags2 from 0.7.5 to 0.7.7
      9229b257e5 [ci] Fix rules for docker build (#2069)
      660d791390 [ci] Update buildah command and version (#2058)
      e4535c0ca4 fix the way latest_confirmed_nonce_at_source is "calculated" (#2067)
      dbc2d37590 select nothing if we have already selected nonces to submit or have submitted something (#2065)
      a7eedd21fe [relay-substrate-client] Bump jsonrpsee (#2066)
      8875d5aeae Bump clap from 4.2.2 to 4.2.4
      25f9cf55e2 Another use of RangeInclusiveExt::checked_len() (#2060)
      4942c12a5f submit lane unblock transactions from relay (#2030)
      c0325d3c9c Test deployments fixes (#2057)
      fc7b9b7ed7 Use the new matrix server (#2056)
      63bcb5c10b Fixed delivery alert rule (#2052)
      
      git-subtree-dir: bridges
      git-subtree-split: 4850aac8ce6c34e5ca6246b88cd14c873a879cba
      
      * Fmt
      
      * Squashed 'bridges/' changes from 4850aac8ce..66aaf0dd23
      
      66aaf0dd23 Nits (#2083)
      
      git-subtree-dir: bridges
      git-subtree-split: 66aaf0dd239dde40b64264061a77c921e2c82568
      
      * Cleaning
      
      * bridge-hub-rococo: minor fixes
      
      Signed-off-by: default avatarAdrian Catangiu <[email protected]>
      
      * Squashed 'bridges/' changes from 66aaf0dd23..557ecbcecc
      
      557ecbcecc Fix sized messages (Follow-up on #2064) (#2103)
      54f587a066 Add weight of refund extension post_dispatch to the weights of messages pallet (#2089)
      5b1626f8c4 fix pallet param for nightly benchmarks check (#2099)
      ae44c6b7a1 Add millau specific messages weights (#2097)
      6ad0bd1f1e Add integrity tests to rialto parachain runtiime (#2096)
      6919556de5 Bump tokio from 1.27.0 to 1.28.0
      58795fcb75 Bump clap from 4.2.4 to 4.2.5
      01bf31085b Bump scale-info from 2.5.0 to 2.6.0
      8fe383240d Bump anyhow from 1.0.70 to 1.0.71
      8d94e82ad5 deployments: add new BEEFY metrics and alarms (#2090)
      e9a4749e7e Bump wasmtime from 6.0.1 to 6.0.2
      9d9936c0d9 Bump wasmtime from 6.0.1 to 6.0.2 in /tools/runtime-codegen
      5d77cd7bee Add more logs to relayer and message pallets (#2082)
      75fbb9d3ef Update comment (#2081)
      9904d09cf6 Benchmarks for new relayers pallet calls (#2040)
      
      git-subtree-dir: bridges
      git-subtree-split: 557ecbcecc585547b744a5ac9fb8d7f3b9de4521
      
      * fmt
      
      * Fix compile
      
      * Fix benchmark
      
      * Squashed 'bridges/' changes from 557ecbcecc..04b3dda6aa
      
      04b3dda6aa Remove from subtree (#2111)
      f8ff15e7e7 Add `MessagesPalletInstance` for integrity tests (#2107)
      92ccef58e6 Use generated runtimes for BHR/BHW (#2106)
      b33e0a585b Fix comment (#2105)
      
      git-subtree-dir: bridges
      git-subtree-split: 04b3dda6aa38599e612ff637710b6d2cff275ef3
      
      * Fix
      
      * ".git/.scripts/commands/fmt/fmt.sh"
      
      * ".git/.scripts/commands/bench/bench.sh" pallet bridge-hub-rococo bridge-hubs pallet_bridge_grandpa
      
      * ".git/.scripts/commands/bench/bench.sh" pallet bridge-hub-rococo bridge-hubs pallet_bridge_parachains
      
      * ".git/.scripts/commands/bench/bench.sh" pallet bridge-hub-rococo bridge-hubs pallet_bridge_messages
      
      * ".git/.scripts/commands/bench/bench.sh" pallet bridge-hub-rococo bridge-hubs pallet_bridge_relayers
      
      ---------
      
      Signed-off-by: default avatarAdrian Catangiu <[email protected]>
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      Co-authored-by: default avatarAnthony Lazam <[email protected]>
      Co-authored-by: default avatarSerban Iorga <[email protected]>
      Co-authored-by: default avatarSvyatoslav Nikolsky <[email protected]>
      Co-authored-by: default avatargirazoki <[email protected]>
      Co-authored-by: parity-processbot <>
      Co-authored-by: default avatarSerban Iorga <[email protected]>
      Co-authored-by: default avataracatangiu <[email protected]>
      39aec7c1
  16. Jan 17, 2023
    • Gavin Wood's avatar
      XCM v3 Companion (#697) · 3a459e8f
      Gavin Wood authored
      * Fixes
      
      * Undiener
      
      * Undiener
      
      * Undiener
      
      * Lockfile
      
      * Changes for send returning hash
      
      * Include message ID as params to execute_xcm
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Companion fixes
      
      * Formatting
      
      * Fixes
      
      * Formatting
      
      * Bump
      
      * Bump
      
      * Fixes
      
      * Formatting
      
      * Make the price of UMP/XCMP message sending configurable
      
      * cargo fmt
      
      * Remove InvertLocation
      
      * Formatting
      
      * Use ConstantPrice from polkadot-runtime-common
      
      * Fix naming
      
      * cargo fmt
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Add CallDispatcher
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Remove unused import
      
      * Remove unused import
      
      * XCMv3 fixes (#1710)
      
      * Fixes XCMv3 related
      Fixes XCMv3 (removed query_holding)
      Fixes XCMv3 - should use _depositable_count?
      Fixes XCMv3 - removed TrustedReserve
      Fixes - missing weights for statemine/statemint/westmint
      [DO-NOT-CHERRY-PICK] tmp return query_holding to aviod conficts to master
      Fixes - missing functions for pallet_xcm_benchmarks::generic::Config
      Fixes for XCMv3 benchmarking
      Fix xcm - removed query_holding
      
      * ".git/.scripts/bench-bot.sh" xcm statemine assets pallet_xcm_benchmarks::generic
      
      * ".git/.scripts/bench-bot.sh" xcm statemint assets pallet_xcm_benchmarks::generic
      
      * ".git/.scripts/bench-bot.sh" xcm westmint assets pallet_xcm_benchmarks::generic
      
      * Fix imports
      
      * Avoid consuming XCM message for NotApplicable scenario (#1787)
      
      * Avoid consuming message for NotApplicable scenario
      
      * Avoid consuming message for NotApplicable scenario tests
      
      * Add 10 message processing limit to DMP queue
      
      * Add 10 message limit to XCMP queue
      
      * Always increment the message_processed count whenever a message is processed
      
      * Fix formatting
      
      * Set an upper limit to the overweight message DMP queue
      
      * Add upper limit to XCMP overweight message queue
      
      * Fix for missing weight for `fn unpaid_execution()`
      
      * Fix - usage of `messages_processed`
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * cargo fmt
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Remove unused import
      
      * Fixes for gav-xcm-v3 (#1835)
      
      * Fix for FungiblesAdapter - trait changes: Contains -> AssetChecking
      
      * Fix for missing weight for `fn unpaid_execution()`
      
      * Used NonLocalMint for all NonZeroIssuance
      
      * Fix
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fix tests
      
      * Fixes
      
      * Add SafeCallFilter
      
      * Add missing config items
      
      * Add TODO
      
      * Use () as the PriceForParentDelivery
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Update transact_origin to transact_origin_and_runtime_call
      
      * Add ReachableDest config item to XCM pallet
      
      * Update SafeCallFilter to allow remark_with_event in runtime benchmarks
      
      * cargo fmt
      
      * Update substrate
      
      * Fix worst_case_holding
      
      * Fix DMQ queue unit tests
      
      * Remove unused label
      
      * cargo fmt
      
      * Actually process incoming XCMs
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes - return back Weightless
      
      * Added measured benchmarks for `pallet_xcm` (#1968)
      
      * Fix
      
      Fix
      
      Fix
      
      * Fix
      
      * Fixes for transact benchmark
      
      * Fixes add pallet_xcm to benchmarks
      
      * Revert remark_with_event
      
      * ".git/.scripts/bench-bot.sh" xcm statemine assets pallet_xcm_benchmarks::generic
      
      * Fixes
      
      * TMP
      
      * Fix for reserve_asset_deposited
      
      * ".git/.scripts/bench-bot.sh" pallet statemine assets pallet_xcm
      
      * Fix
      
      * ".git/.scripts/bench-bot.sh" pallet statemint assets pallet_xcm
      
      * Fix
      
      * ".git/.scripts/bench-bot.sh" pallet westmint assets pallet_xcm
      
      * Fix westmint
      
      * ".git/.scripts/bench-bot.sh" xcm statemine assets pallet_xcm_benchmarks::generic
      
      * Fix
      
      * ".git/.scripts/bench-bot.sh" xcm westmint assets pallet_xcm_benchmarks::generic
      
      * ".git/.scripts/bench-bot.sh" xcm statemint assets pallet_xcm_benchmarks::generic
      
      * ".git/.scripts/bench-bot.sh" pallet collectives-polkadot collectives pallet_xcm
      
      * Fix for collectives
      
      * ".git/.scripts/bench-bot.sh" pallet bridge-hub-kusama bridge-hubs pallet_xcm
      
      * ".git/.scripts/bench-bot.sh" pallet bridge-hub-rococo bridge-hubs pallet_xcm
      
      * Fixes for bridge-hubs
      
      * Fixes - return back Weightless
      
      * Fix - removed MigrateToTrackInactive for contracts-rococo
      
      Co-authored-by: command-bot <>
      
      * cargo fmt
      
      * Fix benchmarks
      
      * Bko gav xcm v3 (#1993)
      
      * Fix
      
      * ".git/.scripts/bench-bot.sh" xcm statemint assets pallet_xcm_benchmarks::fungible
      
      * ".git/.scripts/bench-bot.sh" xcm statemine assets pallet_xcm_benchmarks::fungible
      
      * ".git/.scripts/bench-bot.sh" xcm westmint assets pallet_xcm_benchmarks::fungible
      
      * ".git/.scripts/bench-bot.sh" xcm statemine assets pallet_xcm_benchmarks::generic
      
      * ".git/.scripts/bench-bot.sh" xcm statemint assets pallet_xcm_benchmarks::generic
      
      * ".git/.scripts/bench-bot.sh" xcm westmint assets pallet_xcm_benchmarks::generic
      
      * ".git/.scripts/bench-bot.sh" pallet statemine assets pallet_xcm
      
      * ".git/.scripts/bench-bot.sh" pallet westmint assets pallet_xcm
      
      * ".git/.scripts/bench-bot.sh" pallet statemint assets pallet_xcm
      
      * ".git/.scripts/bench-bot.sh" pallet collectives-polkadot collectives pallet_xcm
      
      * ".git/.scripts/bench-bot.sh" pallet bridge-hub-kusama bridge-hubs pallet_xcm
      
      * ".git/.scripts/bench-bot.sh" pallet bridge-hub-rococo bridge-hubs pallet_xcm
      
      Co-authored-by: command-bot <>
      
      * Change AllowUnpaidExecutionFrom to be explicit
      
      * xcm-v3 benchmarks, weights, fixes for bridge-hubs (#2035)
      
      * Dumy weights to get compile
      
      * Change UniversalLocation according to https://github.com/paritytech/polkadot/pull/4097
      
       (Location Inversion Removed)
      
      * Fix bridge-hubs weights
      
      * ".git/.scripts/bench-bot.sh" pallet statemine assets pallet_xcm
      
      * ".git/.scripts/bench-bot.sh" pallet statemint assets pallet_xcm
      
      * ".git/.scripts/bench-bot.sh" pallet collectives-polkadot collectives pallet_xcm
      
      * ".git/.scripts/bench-bot.sh" pallet westmint assets pallet_xcm
      
      * ".git/.scripts/bench-bot.sh" xcm bridge-hub-kusama bridge-hubs pallet_xcm_benchmarks::generic
      
      * ".git/.scripts/bench-bot.sh" xcm bridge-hub-kusama bridge-hubs pallet_xcm_benchmarks::fungible
      
      * ".git/.scripts/bench-bot.sh" pallet bridge-hub-kusama bridge-hubs pallet_xcm
      
      * ".git/.scripts/bench-bot.sh" pallet bridge-hub-rococo bridge-hubs pallet_xcm
      
      * ".git/.scripts/bench-bot.sh" xcm bridge-hub-rococo bridge-hubs pallet_xcm_benchmarks::fungible
      
      * ".git/.scripts/bench-bot.sh" xcm bridge-hub-rococo bridge-hubs pallet_xcm_benchmarks::generic
      
      * Change NetworkId to Option<NetworkId>
      
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      
      * Add event for showing the hash of an UMP sent message (#1228)
      
      * Add UpwardMessageSent event in parachain-system
      
      * additional fixes
      
      * Message Id
      
      * Fix errors from merge
      
      * fmt
      
      * more fmt
      
      * Remove todo
      
      * more formatting
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Allow explicit unpaid executions from the relay chains for system parachains (#2060)
      
      * Allow explicit unpaid executions from the relay chains for system parachains
      
      * Put origin-filtering barriers into WithComputedOrigin
      
      * Use ConstU32<8>
      
      * Small nits
      
      * formatting
      
      * cargo fmt
      
      * Allow receiving XCMs from any relay chain plurality
      
      * Fixes
      
      * update lockfile for {"polkadot", "substrate"}
      
      * Update polkadot
      
      * Add runtime-benchmarks feature
      
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      Co-authored-by: default avatarBranislav Kontur <[email protected]>
      Co-authored-by: default avatargirazoki <[email protected]>
      Co-authored-by: parity-processbot <>
      3a459e8f
  17. Dec 21, 2022
    • Branislav Kontur's avatar
      Bridge hub kusama fine-tuning before release (#1999) · 0c836d3e
      Branislav Kontur authored
      * Fix benchmarks-ci.sh - missing pallet_utility/pallet_multisig
      
      * Missing ParentAsSuperuser for bridge-hubs
      
      * Fixed missing stuff in benchmarks.yml
      
      * Added MigrateToTrackInactive + CheckingAccount (for completness as other runtimes)
      
      * Measured xcm weights for bridge-hubs
      
      * Fix for fungible benchmarks
      
      * ".git/.scripts/bench-bot.sh" xcm bridge-hub-kusama bridge-hubs pallet_xcm_benchmarks::fungible
      
      * ".git/.scripts/bench-bot.sh" xcm bridge-hub-rococo bridge-hubs pallet_xcm_benchmarks::generic
      
      * ".git/.scripts/bench-bot.sh" xcm bridge-hub-rococo bridge-hubs pallet_xcm_benchmarks::fungible
      
      * ".git/.scripts/bench-bot.sh" xcm bridge-hub-kusama bridge-hubs pallet_xcm_benchmarks::generic
      
      * Reverting migrations - no need for them
      
      * script for generate genesis spec/head/wasm
      
      * Adding invulnerables and session.keys to the script
      (https://github.com/paritytech/devops/issues/2196)
      
      * update chainspec with cmd: ./scripts/create_bridge_hub_kusama_spec.sh ./target/release/wbuild/bridge-hub-kusama-runtime/bridge_hub_kusama_runtime.compact.compressed.wasm 1003
      
      * para_id 1003 -> 1002, cmd: ./scripts/create_bridge_hub_kusama_spec.sh ./target/release/wbuild/bridge-hub-kusama-runtime/bridge_hub_kusama_runtime.compact.compressed.wasm 1002
      
      Co-authored-by: command-bot <>
      0c836d3e
  18. Dec 02, 2022
    • Branislav Kontur's avatar
      BridgeHubKusama - initial setup - (chain_spec + basic runtime without any bridging pallets) (#1764) · c3df7db3
      Branislav Kontur authored
      * [BridgeHub] Setup Rococo backbone parachain
      
      * [BridgeHub] Setup Wococo parachain backbone (reused from Rococo)
      [Bridge-Backport] Rebase-fix
      BridgeHub] Added zombienet startup tomls for Rococo/Wococo
      Fix typo
      
      * [BridgeHub] Added chain_spec for live Rococo/Wococo
      
      * [BridgeHub] Clean bridge-hub-rococo runtime
      
      * [BridgeHub] Add bridge-hub-rococo to CI pipelines
      
      * [BridgeHub] Added bridge-hub-kusama - empty runtime/chain_spec setup
      
      * Fixes
      
      * Fixes for BH
      
      * Fixes for other runtimes - align all
      
      * Fixes - const
      
      * Fixes const
      
      * Fixes
      
      * Fix kusama-local
      
      * Sample zombienet runs
      
      * Fixes
      
      * Fixes for benchmarking
      
      * Fixes CI
      
      * Fixes
      
      * ".git/.scripts/bench-bot.sh" pallet bridge-hub-kusama bridge-hubs frame_system
      
      * ".git/.scripts/bench-bot.sh" pallet bridge-hub-kusama bridge-hubs pallet_collator_selection
      
      * ".git/.scripts/bench-bot.sh" pallet bridge-hub-kusama bridge-hubs pallet_balances
      
      * ".git/.scripts/bench-bot.sh" pallet bridge-hub-kusama bridge-hubs pallet_session
      
      * Fixes name
      
      * Fixes readme
      
      * ".git/.scripts/bench-bot.sh" pallet bridge-hub-kusama bridge-hubs pallet_timestamp
      
      * ".git/.scripts/bench-bot.sh" pallet bridge-hub-kusama bridge-hubs cumulus_pallet_xcmp_queue
      
      * ".git/.scripts/bench-bot.sh" pallet bridge-hub-kusama bridge-hubs pallet_collator_selection
      
      * Fixes
      
      * Fixes
      
      * rustfmt
      
      * Fixes
      
      * Added pallet_utility/pallet_multisig
      
      * Blind try for regex pr-custom-review.yml (added bridge-hub-kusama + collectives-polkadot)
      
      * Fixes
      
      * Fixes
      
      * ".git/.scripts/bench-bot.sh" pallet bridge-hub-kusama bridge-hubs pallet_utility
      
      * ".git/.scripts/bench-bot.sh" pallet bridge-hub-kusama bridge-hubs pallet_multisig
      
      * Trying to fix sed expression?
      
      * Added license headers + correct "DAG:" desc
      
      Co-authored-by: command-bot <>
      c3df7db3
  19. May 20, 2022
  20. May 18, 2022
  21. Mar 12, 2022
  22. Mar 07, 2022
    • Doordashcon's avatar
      Add benchmarks for Xcmp QueueConfigData setters (#982) · 8d96b867
      Doordashcon authored
      
      
      * add benchmarks for xcmp queue config data setters
      
      * add new benchmarks
      
      * cargo fmt
      
      * added newline
      
      * Additional weights for dmp queue for westmint
      
      * include new weights
      
      * Adding WeightInfo trait and friends
      
      * WeightInfo should be on xcmp rather than dmp pallet
      
      * cargo fmt
      
      * update scripts
      
      * mock weightinfo
      
      * cargo fmt
      
      * canvas kusama is substrate weight
      
      * weights from bm2
      
      * expanding to other similar config functions
      
      * updated weights from bm2
      
      * Revert "updated weights from bm2"
      
      This reverts commit b1702780982c278b44f572c2089b1d7ddc564d76.
      
      * Consolidation to one benchmark
      
      * reran weights
      
      * Update pallets/xcmp-queue/src/lib.rs
      
      Co-authored-by: default avatarIgnacio Palacios <[email protected]>
      
      * integrating review feedback
      
      * rerun weights
      
      * Add DispatchClass::Operational
      
      Co-authored-by: default avatarSquirrel <[email protected]>
      Co-authored-by: default avatarIgnacio Palacios <[email protected]>
      8d96b867