Skip to content
  1. Nov 10, 2023
    • PG Herveou's avatar
      Contracts: Add XCM traits to interface with contracts (#2086) · 6b7be115
      PG Herveou authored
      
      
      We are introducing a new set of `XcmController` traits (final name yet
      to be determined).
      These traits are implemented by `pallet-xcm` and allows other pallets,
      such as `pallet_contracts`, to rely on these traits instead of tight
      coupling them to `pallet-xcm`.
      
      Using only the existing Xcm traits would mean duplicating the logic from
      `pallet-xcm` in these other pallets, which we aim to avoid. Our
      objective is to ensure that when these APIs are called from
      `pallet-contracts`, they produce the exact same outcomes as if called
      directly from `pallet-xcm`.
      
      The other benefits is that we can also expose return values to
      `pallet-contracts` instead of just calling `pallet-xcm` dispatchable and
      getting a `DispatchResult` back.
      
      See traits integration in this PR
      https://github.com/paritytech/polkadot-sdk/pull/1248, where the traits
      are used as follow to define and implement `pallet-contracts` Config.
      ```rs
      // Contracts config:
      pub trait Config: frame_system::Config {
        // ...
      
        /// A type that exposes XCM APIs, allowing contracts to interact with other parachains, and
        /// execute XCM programs.
        type Xcm: xcm_executor::traits::Controller<
      	  OriginFor<Self>,
      	  <Self as frame_system::Config>::RuntimeCall,
      	  BlockNumberFor<Self>,
        >;
      }
      
      // implementation
      impl pallet_contracts::Config for Runtime {
              // ...
      
      	type Xcm = pallet_xcm::Pallet<Self>;
      }
      ```
      
      ---------
      
      Co-authored-by: default avatarAlexander Theißen <[email protected]>
      Co-authored-by: command-bot <>
      6b7be115
    • Liam Aharon's avatar
      Improve `VersionedMigration` naming conventions (#2264) · 84ddbaf6
      Liam Aharon authored
      As suggested by @ggwpez
      (https://github.com/paritytech/polkadot-sdk/pull/2142#discussion_r1388145872),
      remove the `VersionChecked` prefix from version checked migrations (but
      leave `VersionUnchecked` prefixes)
      
      ---------
      
      Co-authored-by: command-bot <>
      84ddbaf6
  2. Nov 01, 2023
  3. Oct 24, 2023
    • Kian Paimani's avatar
      Ensure correct variant count in `Runtime[Hold/Freeze]Reason` (#1900) · 35eb133b
      Kian Paimani authored
      
      
      closes https://github.com/paritytech/polkadot-sdk/issues/1882
      
      ## Breaking Changes
      
      This PR introduces a new item to `pallet_balances::Config`:
      
      ```diff
      trait Config {
      ++    type RuntimeFreezeReasons;
      }
      ```
      
      This value is only used to check it against `type MaxFreeze`. A similar
      check has been added for `MaxHolds` against `RuntimeHoldReasons`, which
      is already given to `pallet_balances`.
      
      In all contexts, you should pass the real `RuntimeFreezeReasons`
      generated by `construct_runtime` to `type RuntimeFreezeReasons`. Passing
      `()` would also work, but it would imply that the runtime uses no
      freezes at all.
      
      ---------
      
      Signed-off-by: default avatarOliver Tale-Yazdi <[email protected]>
      Co-authored-by: default avatarOliver Tale-Yazdi <[email protected]>
      35eb133b
  4. Oct 18, 2023
    • Keith Yeung's avatar
      Introduce XcmFeesToAccount fee manager (#1234) · 3dece311
      Keith Yeung authored
      
      
      Combination of paritytech/polkadot#7005, its addon PR
      paritytech/polkadot#7585 and its companion paritytech/cumulus#2433.
      
      This PR introduces a new XcmFeesToAccount struct which implements the
      `FeeManager` trait, and assigns this struct as the `FeeManager` in the
      XCM config for all runtimes.
      
      The struct simply deposits all fees handled by the XCM executor to a
      specified account. In all runtimes, the specified account is configured
      as the treasury account.
      
      XCM __delivery__ fees are now being introduced (unless the root origin
      is sending a message to a system parachain on behalf of the originating
      chain).
      
      # Note for reviewers
      
      Most file changes are tests that had to be modified to account for the
      new fees.
      Main changes are in:
      - cumulus/pallets/xcmp-queue/src/lib.rs <- To make it track the delivery
      fees exponential factor
      - polkadot/xcm/xcm-builder/src/fee_handling.rs <- Added. Has the
      FeeManager implementation
      - All runtime xcm_config files <- To add the FeeManager to the XCM
      configuration
      
      # Important note
      
      After this change, instructions that create and send a new XCM (Query*,
      Report*, ExportMessage, InitiateReserveWithdraw, InitiateTeleport,
      DepositReserveAsset, TransferReserveAsset, LockAsset and RequestUnlock)
      will require the corresponding origin account in the origin register to
      pay for transport delivery fees, and the onward message will fail to be
      sent if the origin account does not have the required amount. This
      delivery fee is on top of what we already collect as tx fees in
      pallet-xcm and XCM BuyExecution fees!
      
      Wallet UIs that want to expose the new delivery fee can do so using the
      formula:
      
      ```
      delivery_fee_factor * (base_fee + encoded_msg_len * per_byte_fee)
      ```
      
      where the delivery fee factor can be obtained from the corresponding
      pallet based on which transport you are using (UMP, HRMP or bridges),
      the base fee is a constant, the encoded message length from the message
      itself and the per byte fee is the same as the configured per byte fee
      for txs (i.e. `TransactionByteFee`).
      
      ---------
      
      Co-authored-by: default avatarBranislav Kontur <[email protected]>
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      Co-authored-by: default avatarGiles Cope <[email protected]>
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarFrancisco Aguirre <[email protected]>
      Co-authored-by: default avatarLiam Aharon <[email protected]>
      Co-authored-by: default avatarKian Paimani <[email protected]>
      3dece311
  5. Sep 25, 2023
  6. Sep 20, 2023
    • Gavin Wood's avatar
      XCM: Deprecate old functions (#1645) · e7d29bc3
      Gavin Wood authored
      Two old functions should be deprecated and have their code altered in
      line with capabilities of XCMv2 and above.
      
      This means we can use the proper `Unlimited` form of weight limit rather
      than guessing weight from the local chain.
      e7d29bc3
  7. Sep 13, 2023
    • Liam Aharon's avatar
      Stabilize `VersionedMigration` (#1503) · 72de70c7
      Liam Aharon authored
      `VersionedMigration` has become somewhat widely used for handling
      version bumps in migrations the last few months.
      
      It is currently behind the `experimental` feature flag, requiring every
      pallet that writes a new migration with version bumps to set up the
      `experimental` flag in their own Cargo.tomls, and also for every runtime
      using these pallets to explicitly enable the `experimental` flag for
      each pallet.
      
      This is becoming quite verbose, and I can only see the number of pallets
      requiring the experimental flag increasing for no other reason than
      using what has become a commonly used feature.
      
      Additionally, I'm writing migration docs and would like to avoid
      stepping through how to use the `experimental` feature to get
      `VersionedMigration` working.
      
      Since the feature has been used in production for some time now without
      any reported issues, is becoming commonly used and ready to advertise in
      docs, I feel this is a good time to make it non-experimental.
      72de70c7
  8. Aug 31, 2023
  9. Aug 30, 2023
  10. Aug 16, 2023
  11. Aug 14, 2023
  12. Aug 05, 2023
  13. Jul 24, 2023
  14. Jul 19, 2023
    • Francisco Aguirre's avatar
      Change Fixed to WeightInfoBounds for Polkadot (#7077) · cc9f8129
      Francisco Aguirre authored
      
      
      * Add polkadot XCM benchmarks
      
      * Add temp
      
      * ".git/.scripts/commands/bench/bench.sh" xcm polkadot pallet_xcm_benchmarks::fungible
      
      * ".git/.scripts/commands/bench/bench.sh" xcm polkadot pallet_xcm_benchmarks::generic
      
      * Add weights to XCM on Polkadot
      
      * Make CI fail on old files
      
      Signed-off-by: default avatarOliver Tale-Yazdi <[email protected]>
      
      * Update template
      
      Signed-off-by: default avatarOliver Tale-Yazdi <[email protected]>
      
      * Add reserve_asset_deposited benchmark
      
      * ".git/.scripts/commands/bench/bench.sh" xcm kusama pallet_xcm_benchmarks::generic
      
      * Update weights
      
      Signed-off-by: default avatarOliver Tale-Yazdi <[email protected]>
      
      * Change initiate_reserve_deposit in runtime weights
      
      * Update weights
      
      Signed-off-by: default avatarOliver Tale-Yazdi <[email protected]>
      
      * Remove trusted reserves from runtimes
      
      * Fix pallet-xcm-benchmarks mock
      
      * Fix test
      
      * Change pallet xcm weigher in kusama
      
      * Fix
      
      * Remove merge conflict artifact
      
      * Remove initiate_reserve_withdraw from generic benchmarks
      
      * Add missing implementation to XCM benchmark
      
      * Fix failing karura test
      
      * Remove dbg!
      
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      
      * Fix fmt
      
      * Revert "Fix fmt"
      
      This reverts commit 676f2d8db07d7427750c79f95494d4988d06fda5.
      
      * Fix fmt
      
      * Remove duplicated template code
      
      * Add back part of the template
      
      * ".git/.scripts/commands/bench-vm/bench-vm.sh" xcm polkadot pallet_xcm_benchmarks::fungible
      
      * Don't skip reserve asset deposited benchmark
      
      * Remove call to non-generated benchmark yet
      
      * Underscore unused parameter
      
      * Skip not supported benchmarks and hardcode value
      
      * Remove ReserveAssetDeposited benchmark
      
      * ".git/.scripts/commands/bench-vm/bench-vm.sh" xcm polkadot pallet_xcm_benchmarks::fungible
      
      * Add back ReserveAssetDeposited
      
      * ".git/.scripts/commands/bench-vm/bench-vm.sh" xcm polkadot pallet_xcm_benchmarks::fungible
      
      * Use default benchmark for ReserveAssetDeposited
      
      * Add missing parameter
      
      * Revert reserve asset deposited benchmark
      
      * ".git/.scripts/commands/bench-vm/bench-vm.sh" xcm kusama pallet_xcm_benchmarks::fungible
      
      * ".git/.scripts/commands/bench-vm/bench-vm.sh" xcm westend pallet_xcm_benchmarks::fungible
      
      * ".git/.scripts/commands/bench/bench.sh" xcm rococo pallet_xcm_benchmarks::fungible
      
      * Add 'real' benchmarks
      
      * Add TrustedReserve to actual XcmConfig
      
      * Add TrustedReserve to actual XcmConfig (fix)
      
      * Whitelist from benchmarking XCM storage keys read each block (#6871)
      
      * Whitelist from benchmarking XCM storage keys read each block
      
      * ".git/.scripts/commands/bench/bench.sh" runtime polkadot pallet_xcm
      
      * ".git/.scripts/commands/bench/bench.sh" runtime polkadot pallet_xcm
      
      * ".git/.scripts/commands/bench/bench.sh" runtime westend pallet_xcm
      
      * ".git/.scripts/commands/bench/bench.sh" runtime rococo pallet_xcm
      
      * Remove XcmPallet SupportedVersion from the benchmark whitelist
      
      * ".git/.scripts/commands/bench/bench.sh" runtime polkadot pallet_xcm
      
      * ".git/.scripts/commands/bench/bench.sh" runtime kusama pallet_xcm
      
      * ".git/.scripts/commands/bench/bench.sh" runtime westend pallet_xcm
      
      * ".git/.scripts/commands/bench/bench.sh" runtime rococo pallet_xcm
      
      * WIP
      
      * Add necessary traits, remove unnecessary whitelisted keys
      
      * Fix tests
      
      * Remove unused file
      
      * Remove unused import
      
      ---------
      
      Co-authored-by: command-bot <>
      
      * ".git/.scripts/commands/bench/bench.sh" xcm kusama pallet_xcm_benchmarks::fungible
      
      * ".git/.scripts/commands/bench/bench.sh" xcm kusama pallet_xcm_benchmarks::fungible
      
      * ".git/.scripts/commands/bench/bench.sh" xcm kusama pallet_xcm_benchmarks::fungible
      
      * ".git/.scripts/commands/bench/bench.sh" xcm rococo pallet_xcm_benchmarks::fungible
      
      * ".git/.scripts/commands/bench/bench.sh" xcm westend pallet_xcm_benchmarks::fungible
      
      * Fix spellchecker issues
      
      * Remove unused migration code
      
      ---------
      
      Signed-off-by: default avatarOliver Tale-Yazdi <[email protected]>
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarOliver Tale-Yazdi <[email protected]>
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      cc9f8129
  15. Jul 14, 2023
    • juangirini's avatar
      Replace Index for Nonce (#7374) · b95cc76d
      juangirini authored
      * replace Index for Nonce
      
      * remove extra Nonce
      
      * update lockfile for {"substrate"}
      
      ---------
      
      Co-authored-by: parity-processbot <>
      b95cc76d
  16. Jul 13, 2023
    • gupnik's avatar
      Moves `Block` to `frame_system` instead of `construct_runtime` and removes... · 28024144
      gupnik authored
      
      Moves `Block` to `frame_system` instead of `construct_runtime` and removes `Header` and `BlockNumber` (#7431)
      
      * Companion for substrate
      
      * Minor update
      
      * Formatting
      
      * Fixes for cumulus
      
      * Fixes tests in polkadot-runtime-parachains
      
      * Minor update
      
      * Removes unused import
      
      * Fixes tests in polkadot-runtime-common
      
      * Minor fix
      
      * Update roadmap/implementers-guide/src/runtime/configuration.md
      
      Co-authored-by: default avatarordian <[email protected]>
      
      * ".git/.scripts/commands/fmt/fmt.sh"
      
      * update lockfile for {"substrate"}
      
      ---------
      
      Co-authored-by: default avatarordian <[email protected]>
      Co-authored-by: command-bot <>
      28024144
    • Liam Aharon's avatar
      fix migrations (also companion for #14421) (#7454) · bfaec080
      Liam Aharon authored
      * fix migrations
      
      * use society versioned runtime upgrade
      
      * simplify usage of versionedruntimeupgrade
      
      * use society experimental feature
      
      * improve usage of experimental flag
      
      * doc comment
      
      * Merge branch 'master' of github.com:paritytech/polkadot into liam-fix-migrations
      
      * Revert "Merge branch 'master' of github.com:paritytech/polkadot into liam-fix-migrations"
      
      This reverts commit 41ab0621811ead11b0a7f91338b0895208feef77.
      
      * doc comment
      
      * westend experimental feature
      
      * Revert "westend experimental feature"
      
      This reverts commit 42f4f1b76655ef509a92c324d18d635a1b913dcb.
      
      * feature gate experimental xcm migration
      
      * update lockfile for {"substrate"}
      
      ---------
      
      Co-authored-by: parity-processbot <>
      bfaec080
  17. Jul 12, 2023
  18. Jun 05, 2023
    • Keith Yeung's avatar
      Implement AliasOrigin processing in XCVM (#7245) · f2fe05a7
      Keith Yeung authored
      
      
      * Implement AliasOrigin processing in XCVM
      
      * add builder types and first test
      
      * switch to more general builder types
      
      * clone target for RemovePrefixAccountId32
      
      * change builder types
      
      * change AliasForeignAccountId32 and add test for AliasCase
      
      * add Aliasers type to xcm configs
      
      * add benchmark
      
      * benchmark fix
      
      * add benchmark function for runtimes
      
      * fix alias_origin result types
      
      * fix benchmark test
      
      * add runtime-benchmarks feature in pallet-xcm-benchmarks
      
      * fmt
      
      * remove AliasCase, add test and fmt
      
      * address feedback
      
      * ".git/.scripts/commands/bench/bench.sh" xcm kusama pallet_xcm_benchmarks::generic
      
      * ".git/.scripts/commands/bench/bench.sh" xcm westend pallet_xcm_benchmarks::generic
      
      * ".git/.scripts/commands/bench/bench.sh" xcm rococo pallet_xcm_benchmarks::generic
      
      * address feedback
      
      * lock
      
      * ".git/.scripts/commands/bench/bench.sh" xcm kusama pallet_xcm_benchmarks::generic
      
      * ".git/.scripts/commands/bench/bench.sh" xcm westend pallet_xcm_benchmarks::generic
      
      * ".git/.scripts/commands/bench/bench.sh" xcm rococo pallet_xcm_benchmarks::generic
      
      * change doc
      
      * fmt
      
      ---------
      
      Co-authored-by: default avatarJust van Stam <[email protected]>
      Co-authored-by: default avatarJust van Stam <[email protected]>
      Co-authored-by: command-bot <>
      f2fe05a7
    • Gavin Wood's avatar
      XCM: Remove & replace XCM `Convert` trait (#7329) · c8f9b1b7
      Gavin Wood authored
      
      
      * Introduce an extensible location-to-hash-account
      
      * Convert becomes RevFallRefConvert
      
      * Use ConvertLocation trait
      
      * Remove Convert usage
      
      * Builds
      
      * Fix warnings
      
      * Remove unused types
      
      * Bump lock
      
      * No need for aliasing
      
      * Remove unused
      
      * Deprecate legacy conversion
      
      * Fixes
      
      * Fixes
      
      * Update Cargo.toml
      
      Co-authored-by: default avatarMuharem Ismailov <[email protected]>
      
      * Update xcm/xcm-builder/src/location_conversion.rs
      
      Co-authored-by: default avatarLiam Aharon <[email protected]>
      
      * Update xcm/xcm-builder/src/location_conversion.rs
      
      Co-authored-by: default avatarLiam Aharon <[email protected]>
      
      * Update xcm/xcm-builder/src/location_conversion.rs
      
      Co-authored-by: default avatarLiam Aharon <[email protected]>
      
      * Update xcm/xcm-builder/src/location_conversion.rs
      
      Co-authored-by: default avatarLiam Aharon <[email protected]>
      
      * Update xcm/xcm-builder/src/location_conversion.rs
      
      Co-authored-by: default avatarLiam Aharon <[email protected]>
      
      * Update xcm/xcm-builder/src/location_conversion.rs
      
      Co-authored-by: default avatarLiam Aharon <[email protected]>
      
      ---------
      
      Co-authored-by: default avatarMuharem Ismailov <[email protected]>
      Co-authored-by: default avatarLiam Aharon <[email protected]>
      c8f9b1b7
  19. May 31, 2023
    • Francisco Aguirre's avatar
      XCM: PayOverXcm config (#6900) · a0e2aaad
      Francisco Aguirre authored
      
      
      * Move XCM query functionality to trait
      
      * Fix tests
      
      * Add PayOverXcm implementation
      
      * fix the PayOverXcm trait to compile
      
      * moved doc comment out of trait implmeentation and to the trait
      
      * PayOverXCM documentation
      
      * Change documentation a bit
      
      * Added empty benchmark methods implementation and changed docs
      
      * update PayOverXCM to convert AccountIds to MultiLocations
      
      * Implement benchmarking method
      
      * Change v3 to latest
      
      * Descend origin to an asset sender (#6970)
      
      * descend origin to an asset sender
      
      * sender as tuple of dest and sender
      
      * Add more variants to the QueryResponseStatus enum
      
      * Change Beneficiary to Into<[u8; 32]>
      
      * update PayOverXcm to return concrete errors and use AccountId as sender
      
      * use polkadot-primitives for AccountId
      
      * fix dependency to use polkadot-core-primitives
      
      * force Unpaid instruction to the top of the instructions list
      
      * modify report_outcome to accept interior argument
      
      * use new_query directly for building final xcm query, instead of report_outcome
      
      * fix usage of new_query to use the XcmQueryHandler
      
      * fix usage of new_query to use the XcmQueryHandler
      
      * tiny method calling fix
      
      * xcm query handler (#7198)
      
      * drop redundant query status
      
      * rename ReportQueryStatus to OuterQueryStatus
      
      * revert rename of QueryResponseStatus
      
      * update mapping
      
      * Update xcm/xcm-builder/src/pay.rs
      
      Co-authored-by: default avatarGavin Wood <[email protected]>
      
      * Updates
      
      * Docs
      
      * Fix benchmarking stuff
      
      * Destination can be determined based on asset_kind
      
      * Tweaking API to minimise clones
      
      * Some repotting and docs
      
      ---------
      
      Co-authored-by: default avatarAnthony Alaribe <[email protected]>
      Co-authored-by: default avatarMuharem Ismailov <[email protected]>
      Co-authored-by: default avatarAnthony Alaribe <[email protected]>
      Co-authored-by: default avatarGavin Wood <[email protected]>
      a0e2aaad
  20. May 25, 2023
    • Michal Kucharczyk's avatar
      pallets: implement `Default` for `GenesisConfig` in `no_std` (#7271) · 3d008cd0
      Michal Kucharczyk authored
      * pallets: implement Default for GenesisConfig in no_std
      
      This change is follow-up of: https://github.com/paritytech/substrate/pull/14108
      
      It is a step towards: https://github.com/paritytech/substrate/issues/13334
      
      * Cargo.lock updated
      
      * update lockfile for {"substrate"}
      
      ---------
      
      Co-authored-by: parity-processbot <>
      3d008cd0
    • Gavin Wood's avatar
      XCM: Tools for uniquely referencing messages (#7234) · 85dfadff
      Gavin Wood authored
      
      
      * Tools for unique topic references
      
      * Formatting
      
      * Naming
      
      * Repot into routing.rs.
      
      * More things done
      
      * Universal Exporter supports topic-as-reference
      
      * Some tests for the topic routing
      
      * More tests
      
      * Paid bridge tests
      
      * Add message ID to sending events
      
      * Formatting
      
      * fix and integrate into test nets
      
      * Move DenyThenTry and friend from Cumulus
      
      * Append SetTopic rather than prepend
      
      * Docs
      
      * Docs
      
      * Work with new ProcessMessage ID API
      
      * Formatting
      
      * Fix build
      
      * Fixes
      
      * Formatting
      
      * Update xcm/xcm-builder/src/barriers.rs
      
      Co-authored-by: default avatarFrancisco Aguirre <[email protected]>
      
      * Update xcm/xcm-builder/src/routing.rs
      
      Co-authored-by: default avatarFrancisco Aguirre <[email protected]>
      
      * Docs
      
      * Rename message_hash
      
      * Formatting
      
      * ".git/.scripts/commands/fmt/fmt.sh"
      
      * Rename
      
      * Another Rename
      
      * ".git/.scripts/commands/fmt/fmt.sh"
      
      * ".git/.scripts/commands/fmt/fmt.sh"
      
      * Update xcm/xcm-builder/src/routing.rs
      
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      
      ---------
      
      Co-authored-by: default avatarFrancisco Aguirre <[email protected]>
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      85dfadff
  21. May 24, 2023
    • Bastian Köcher's avatar
      Companion: Substrate#13869 (#7119) · 28de4f13
      Bastian Köcher authored
      * Companion: Substrate#13869
      
      https://github.com/paritytech/substrate/pull/13869
      
      * update lockfile for {"substrate"}
      
      * ".git/.scripts/commands/fmt/fmt.sh"
      
      ---------
      
      Co-authored-by: parity-processbot <>
      28de4f13
  22. May 23, 2023
  23. May 17, 2023
  24. May 09, 2023
  25. May 05, 2023
    • Muharem Ismailov's avatar
      XCM remote lock consumers (#6947) · 245305be
      Muharem Ismailov authored
      * xcm remote lock consumers
      
      * update xcm pallet config setups
      
      * fix import
      
      * update xcm pallet config setups
      
      * rename consumers to users
      
      * rename
      
      * rename users to consumers, more docs
      
      * correct doc
      
      ---------
      
      Co-authored-by: parity-processbot <>
      245305be
  26. Apr 27, 2023
    • Keith Yeung's avatar
      XCM: Implement a blocking barrier (#7098) · d20e3c11
      Keith Yeung authored
      * Move XCM matcher to xcm-builder
      
      * Use ProcessMessageError as the error type in MatchXcm and ShouldExecute
      
      * Implement a blocking barrier
      
      * Fixes
      
      * Add benchmarking for force_suspension
      
      * ".git/.scripts/commands/bench/bench.sh" runtime westend pallet_xcm
      
      * ".git/.scripts/commands/bench/bench.sh" runtime rococo pallet_xcm
      
      * ".git/.scripts/commands/bench/bench.sh" runtime kusama pallet_xcm
      
      * ".git/.scripts/commands/bench/bench.sh" runtime polkadot pallet_xcm
      
      * ".git/.scripts/commands/bench/bench.sh" runtime westend pallet_xcm
      
      * ".git/.scripts/commands/bench/bench.sh" runtime rococo pallet_xcm
      
      ---------
      
      Co-authored-by: command-bot <>
      d20e3c11
  27. Apr 20, 2023
    • Keith Yeung's avatar
      XCM: Properly set the pricing for the DMP router (#6843) · 023d4598
      Keith Yeung authored
      
      
      * Properly set the pricing for the DMP router
      
      * Publicize price types
      
      * Use FixedU128 instead of Percent
      
      * Add sp-arithmetic as a dependency for rococo runtime
      
      * Add sp-arithmetic as a dependency to all runtimes
      
      * Remove duplicate import
      
      * Add missing import
      
      * Fix tests
      
      * Create an appropriate QueueDownwardMessageError variant
      
      * Recalculate delivery fee factor based on past queue sizes
      
      * Remove unused error variant
      
      * Fixes
      
      * Fixes
      
      * Remove unused imports
      
      * Rewrite fee factor update mechanism
      
      * Remove unused imports
      
      * Fixes
      
      * Update runtime/parachains/src/dmp.rs
      
      Co-authored-by: default avatarSquirrel <[email protected]>
      
      * Make DeliveryFeeFactor be a StorageMap keyed on ParaIds
      
      * Fixes
      
      * introduce limit for fee increase on dmp queue
      
      * add message_size based fee factor to increment_fee_factor
      
      * change message_size fee rate to correct value
      
      * fix div by 0 error
      
      * bind limit to variable
      
      * fix message_size_factor and add DeliveryFeeFactor test
      
      * add test for ExponentialPrice implementation
      
      * make test formula based
      
      * make delivery fee factor test formula based
      
      * add max value test for DeliveryFeeFactor and move limit to config
      
      * change threshold back to dynamic value and fix tests
      
      * fmt
      
      * suggested changes and fmt
      
      * small stylistic change
      
      * fmt
      
      * change to tokenlocation
      
      * small fixes
      
      * fmt
      
      * remove sp_arithmetic dependency
      
      * Update runtime/parachains/src/dmp.rs
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      ---------
      
      Co-authored-by: default avatarSquirrel <[email protected]>
      Co-authored-by: default avatarJust van Stam <[email protected]>
      Co-authored-by: default avatarJust van Stam <[email protected]>
      Co-authored-by: default avatarKian Paimani <[email protected]>
      023d4598
  28. Apr 08, 2023
  29. Mar 30, 2023
  30. Mar 23, 2023
    • Just van Stam's avatar
      Vstam1/xcm admin origin (#6928) · f989b2bb
      Just van Stam authored
      
      
      * Ensure for a configurable origin in XCM (#6442), cherry picked from
      5ae05e1a957857c449a43d8759a21292d03fd049
      
      Add new associated type, AdminOrigin, bounded by EnsureOrigin trait in
      XCM pallet. Replace ensure_root() with ensure_origin() from a
      EnsureOrigin trait. Set AdminOrigin as EnsureRoot<AccountId> in xcm
      configs.
      
      * cargo fmt
      
      * small stylistic change
      
      ---------
      
      Co-authored-by: default avatarserkul <[email protected]>
      f989b2bb
  31. Mar 20, 2023
  32. Mar 13, 2023
    • Vivek Pandya's avatar
      Remove use of Store trait (#6835) · 87db25ce
      Vivek Pandya authored
      * Remove use of Store trait from runtime directory
      
      * Remove Store trait usage from xcm directory
      
      * Run cargo fmt
      
      * update lockfile for {"substrate"}
      
      ---------
      
      Co-authored-by: parity-processbot <>
      87db25ce
  33. Mar 02, 2023
  34. Feb 09, 2023
    • Keith Yeung's avatar
      Remove BoundedVec half-impls in xcm (#6636) · 7619fea8
      Keith Yeung authored
      * Replace sp-core dependency with more primitive crates
      
      * Remove BoundedVec half-impls in xcm
      
      * Fixes
      
      * Bump bounded-collections
      
      * Address review comments
      
      * Bump bounded-collections
      
      * Fix benchmarks
      
      * Fixes
      
      * Fixes
      
      * cargo fmt
      
      * Fix tests
      
      * Update url
      
      * Bump url to 2.3.1
      
      * Bump anyhow
      
      * Use bounded-collections in pallet-xcm
      
      * Update substrate
      7619fea8
  35. Jan 29, 2023