# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
name = "asset-hub-westend-runtime"
version = "0.33.0"
authors = ["Parity Technologies <admin@parity.io>"]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Westend variant of Asset Hub parachain runtime"
homepage = "https://paritytech.github.io/polkadot-sdk/"
readme = false
license = "Apache-2.0"
repository = "https://github.com/paritytech/polkadot-sdk.git"

[lib]
name = "asset_hub_westend_runtime"
path = "src/lib.rs"

[[test]]
name = "tests"
path = "tests/tests.rs"

[dependencies.assets-common]
version = "0.23.0"
default-features = false

[dependencies.bp-asset-hub-rococo]
version = "0.19.0"
default-features = false

[dependencies.bp-asset-hub-westend]
version = "0.18.0"
default-features = false

[dependencies.bp-bridge-hub-rococo]
version = "0.23.0"
default-features = false

[dependencies.bp-bridge-hub-westend]
version = "0.19.0"
default-features = false

[dependencies.codec]
version = "3.7.5"
features = [
    "derive",
    "max-encoded-len",
]
default-features = false
package = "parity-scale-codec"

[dependencies.cumulus-pallet-aura-ext]
version = "0.22.0"
default-features = false

[dependencies.cumulus-pallet-parachain-system]
version = "0.22.0"
default-features = false

[dependencies.cumulus-pallet-session-benchmarking]
version = "23.0.0"
default-features = false

[dependencies.cumulus-pallet-weight-reclaim]
version = "0.4.0"
default-features = false

[dependencies.cumulus-pallet-xcm]
version = "0.21.0"
default-features = false

[dependencies.cumulus-pallet-xcmp-queue]
version = "0.22.0"
features = ["bridging"]
default-features = false

[dependencies.cumulus-primitives-aura]
version = "0.19.0"
default-features = false

[dependencies.cumulus-primitives-core]
version = "0.20.0"
default-features = false

[dependencies.cumulus-primitives-utility]
version = "0.22.0"
default-features = false

[dependencies.frame-benchmarking]
version = "42.0.0"
optional = true
default-features = false

[dependencies.frame-election-provider-support]
version = "42.0.0"
default-features = false

[dependencies.frame-executive]
version = "42.0.0"
default-features = false

[dependencies.frame-metadata-hash-extension]
version = "0.10.0"
default-features = false

[dependencies.frame-support]
version = "42.0.0"
default-features = false

[dependencies.frame-system]
version = "42.0.0"
default-features = false

[dependencies.frame-system-benchmarking]
version = "42.0.0"
optional = true
default-features = false

[dependencies.frame-system-rpc-runtime-api]
version = "38.0.0"
default-features = false

[dependencies.frame-try-runtime]
version = "0.48.0"
optional = true
default-features = false

[dependencies.hex-literal]
version = "0.4.1"
default-features = true

[dependencies.log]
version = "0.4.22"
default-features = false

[dependencies.pallet-ah-ops]
version = "0.2.0"
default-features = false

[dependencies.pallet-asset-conversion]
version = "24.0.0"
default-features = false

[dependencies.pallet-asset-conversion-ops]
version = "0.10.0"
default-features = false

[dependencies.pallet-asset-conversion-tx-payment]
version = "24.0.0"
default-features = false

[dependencies.pallet-asset-rate]
version = "21.0.0"
default-features = false

[dependencies.pallet-asset-rewards]
version = "0.4.0"
default-features = false

[dependencies.pallet-assets]
version = "44.0.0"
default-features = false

[dependencies.pallet-assets-freezer]
version = "0.9.0"
default-features = false

[dependencies.pallet-aura]
version = "41.0.0"
default-features = false

[dependencies.pallet-authorship]
version = "42.0.0"
default-features = false

[dependencies.pallet-bags-list]
version = "41.0.0"
default-features = false

[dependencies.pallet-balances]
version = "43.0.0"
default-features = false

[dependencies.pallet-collator-selection]
version = "23.0.0"
default-features = false

[dependencies.pallet-conviction-voting]
version = "42.0.0"
default-features = false

[dependencies.pallet-delegated-staking]
version = "9.0.0"
default-features = false

[dependencies.pallet-election-provider-multi-block]
version = "0.3.0"
default-features = false

[dependencies.pallet-fast-unstake]
version = "41.0.0"
default-features = false

[dependencies.pallet-indices]
version = "42.0.0"
default-features = false

[dependencies.pallet-message-queue]
version = "45.0.0"
default-features = false

[dependencies.pallet-migrations]
version = "12.0.0"
default-features = false

[dependencies.pallet-multisig]
version = "42.0.0"
default-features = false

[dependencies.pallet-nft-fractionalization]
version = "25.0.0"
default-features = false

[dependencies.pallet-nfts]
version = "36.0.0"
default-features = false

[dependencies.pallet-nfts-runtime-api]
version = "28.0.0"
default-features = false

[dependencies.pallet-nomination-pools]
version = "40.0.0"
default-features = false

[dependencies.pallet-nomination-pools-runtime-api]
version = "38.0.0"
default-features = false

[dependencies.pallet-preimage]
version = "42.0.0"
default-features = false

[dependencies.pallet-proxy]
version = "42.0.0"
default-features = false

[dependencies.pallet-referenda]
version = "42.0.0"
default-features = false

[dependencies.pallet-revive]
version = "0.8.0"
default-features = false

[dependencies.pallet-scheduler]
version = "43.0.0"
default-features = false

[dependencies.pallet-session]
version = "42.0.0"
default-features = false

[dependencies.pallet-staking]
version = "42.0.0"
default-features = false

[dependencies.pallet-staking-async]
version = "0.3.0"
default-features = false

[dependencies.pallet-staking-async-rc-client]
version = "0.3.0"
default-features = false

[dependencies.pallet-staking-runtime-api]
version = "28.0.0"
default-features = false

[dependencies.pallet-state-trie-migration]
version = "47.0.0"
default-features = false

[dependencies.pallet-sudo]
version = "42.0.0"
default-features = false

[dependencies.pallet-timestamp]
version = "41.0.0"
default-features = false

[dependencies.pallet-transaction-payment]
version = "42.0.0"
default-features = false

[dependencies.pallet-transaction-payment-rpc-runtime-api]
version = "42.0.0"
default-features = false

[dependencies.pallet-treasury]
version = "41.0.0"
default-features = false

[dependencies.pallet-uniques]
version = "42.0.0"
default-features = false

[dependencies.pallet-utility]
version = "42.0.0"
default-features = false

[dependencies.pallet-vesting]
version = "42.0.0"
default-features = false

[dependencies.pallet-whitelist]
version = "41.0.0"
default-features = false

[dependencies.pallet-xcm]
version = "21.0.0"
default-features = false

[dependencies.pallet-xcm-benchmarks]
version = "22.0.0"
optional = true
default-features = false

[dependencies.pallet-xcm-bridge-hub-router]
version = "0.20.0"
default-features = false

[dependencies.parachain-info]
version = "0.22.0"
default-features = false
package = "staging-parachain-info"

[dependencies.parachains-common]
version = "23.0.0"
default-features = false

[dependencies.polkadot-parachain-primitives]
version = "18.0.0"
default-features = false

[dependencies.polkadot-runtime-common]
version = "21.0.0"
default-features = false

[dependencies.primitive-types]
version = "0.13.1"
features = [
    "num-traits",
    "codec",
    "num-traits",
    "scale-info",
]
default-features = false

[dependencies.scale-info]
version = "2.11.6"
features = ["derive"]
default-features = false

[dependencies.serde_json]
version = "1.0.132"
features = ["alloc"]
default-features = false

[dependencies.snowbridge-outbound-queue-primitives]
version = "0.4.0"
default-features = false

[dependencies.snowbridge-pallet-system-frontend]
version = "0.4.0"
default-features = false

[dependencies.snowbridge-runtime-common]
version = "0.15.0"
default-features = false

[dependencies.sp-api]
version = "38.0.0"
default-features = false

[dependencies.sp-arithmetic]
version = "28.0.0"
default-features = false

[dependencies.sp-block-builder]
version = "38.0.0"
default-features = false

[dependencies.sp-consensus-aura]
version = "0.44.0"
default-features = false

[dependencies.sp-core]
version = "38.0.0"
default-features = false

[dependencies.sp-genesis-builder]
version = "0.19.0"
default-features = false

[dependencies.sp-inherents]
version = "38.0.0"
default-features = false

[dependencies.sp-io]
version = "42.0.0"
default-features = false

[dependencies.sp-keyring]
version = "43.0.0"
default-features = false

[dependencies.sp-npos-elections]
version = "38.0.0"
default-features = false

[dependencies.sp-offchain]
version = "38.0.0"
default-features = false

[dependencies.sp-runtime]
version = "43.0.0"
default-features = false

[dependencies.sp-session]
version = "40.0.0"
default-features = false

[dependencies.sp-staking]
version = "40.0.0"
default-features = false

[dependencies.sp-std]
version = "14.0.0"
default-features = false

[dependencies.sp-storage]
version = "22.0.0"
default-features = false

[dependencies.sp-transaction-pool]
version = "38.0.0"
default-features = false

[dependencies.sp-version]
version = "41.0.0"
default-features = false

[dependencies.testnet-parachains-constants]
version = "15.0.0"
features = ["westend"]
default-features = false

[dependencies.westend-runtime-constants]
version = "22.0.0"
default-features = false

[dependencies.xcm]
version = "18.0.0"
default-features = false
package = "staging-xcm"

[dependencies.xcm-builder]
version = "22.0.0"
default-features = false
package = "staging-xcm-builder"

[dependencies.xcm-executor]
version = "21.0.0"
default-features = false
package = "staging-xcm-executor"

[dependencies.xcm-runtime-apis]
version = "0.9.0"
default-features = false

[dev-dependencies.alloy-core]
version = "1.1.0"
features = ["sol-types"]
default-features = false

[build-dependencies.substrate-wasm-builder]
version = "28.0.0"
optional = true
default-features = true

[features]
default = ["std"]
fast-runtime = []
metadata-hash = ["substrate-wasm-builder/metadata-hash"]
on-chain-release-build = ["metadata-hash"]
runtime-benchmarks = [
    "assets-common/runtime-benchmarks",
    "cumulus-pallet-parachain-system/runtime-benchmarks",
    "cumulus-pallet-session-benchmarking/runtime-benchmarks",
    "cumulus-pallet-weight-reclaim/runtime-benchmarks",
    "cumulus-pallet-xcmp-queue/runtime-benchmarks",
    "cumulus-primitives-core/runtime-benchmarks",
    "cumulus-primitives-utility/runtime-benchmarks",
    "frame-benchmarking/runtime-benchmarks",
    "frame-election-provider-support/runtime-benchmarks",
    "frame-support/runtime-benchmarks",
    "frame-system-benchmarking/runtime-benchmarks",
    "frame-system/runtime-benchmarks",
    "pallet-ah-ops/runtime-benchmarks",
    "pallet-asset-conversion-ops/runtime-benchmarks",
    "pallet-asset-conversion-tx-payment/runtime-benchmarks",
    "pallet-asset-conversion/runtime-benchmarks",
    "pallet-asset-rate/runtime-benchmarks",
    "pallet-asset-rewards/runtime-benchmarks",
    "pallet-assets-freezer/runtime-benchmarks",
    "pallet-assets/runtime-benchmarks",
    "pallet-bags-list/runtime-benchmarks",
    "pallet-balances/runtime-benchmarks",
    "pallet-collator-selection/runtime-benchmarks",
    "pallet-conviction-voting/runtime-benchmarks",
    "pallet-delegated-staking/runtime-benchmarks",
    "pallet-election-provider-multi-block/runtime-benchmarks",
    "pallet-fast-unstake/runtime-benchmarks",
    "pallet-indices/runtime-benchmarks",
    "pallet-message-queue/runtime-benchmarks",
    "pallet-migrations/runtime-benchmarks",
    "pallet-multisig/runtime-benchmarks",
    "pallet-nft-fractionalization/runtime-benchmarks",
    "pallet-nfts/runtime-benchmarks",
    "pallet-nomination-pools/runtime-benchmarks",
    "pallet-preimage/runtime-benchmarks",
    "pallet-proxy/runtime-benchmarks",
    "pallet-referenda/runtime-benchmarks",
    "pallet-revive/runtime-benchmarks",
    "pallet-scheduler/runtime-benchmarks",
    "pallet-staking-async-rc-client/runtime-benchmarks",
    "pallet-staking-async/runtime-benchmarks",
    "pallet-staking/runtime-benchmarks",
    "pallet-state-trie-migration/runtime-benchmarks",
    "pallet-sudo/runtime-benchmarks",
    "pallet-timestamp/runtime-benchmarks",
    "pallet-transaction-payment/runtime-benchmarks",
    "pallet-treasury/runtime-benchmarks",
    "pallet-uniques/runtime-benchmarks",
    "pallet-utility/runtime-benchmarks",
    "pallet-vesting/runtime-benchmarks",
    "pallet-whitelist/runtime-benchmarks",
    "pallet-xcm-benchmarks/runtime-benchmarks",
    "pallet-xcm-bridge-hub-router/runtime-benchmarks",
    "pallet-xcm/runtime-benchmarks",
    "parachains-common/runtime-benchmarks",
    "polkadot-parachain-primitives/runtime-benchmarks",
    "polkadot-runtime-common/runtime-benchmarks",
    "snowbridge-pallet-system-frontend/runtime-benchmarks",
    "snowbridge-runtime-common/runtime-benchmarks",
    "sp-runtime/runtime-benchmarks",
    "sp-staking/runtime-benchmarks",
    "westend-runtime-constants/runtime-benchmarks",
    "xcm-builder/runtime-benchmarks",
    "xcm-executor/runtime-benchmarks",
    "xcm-runtime-apis/runtime-benchmarks",
    "xcm/runtime-benchmarks",
]
std = [
    "assets-common/std",
    "bp-asset-hub-rococo/std",
    "bp-asset-hub-westend/std",
    "bp-bridge-hub-rococo/std",
    "bp-bridge-hub-westend/std",
    "codec/std",
    "cumulus-pallet-aura-ext/std",
    "cumulus-pallet-parachain-system/std",
    "cumulus-pallet-session-benchmarking/std",
    "cumulus-pallet-weight-reclaim/std",
    "cumulus-pallet-xcm/std",
    "cumulus-pallet-xcmp-queue/std",
    "cumulus-primitives-aura/std",
    "cumulus-primitives-core/std",
    "cumulus-primitives-utility/std",
    "frame-benchmarking?/std",
    "frame-election-provider-support/std",
    "frame-executive/std",
    "frame-metadata-hash-extension/std",
    "frame-support/std",
    "frame-system-benchmarking?/std",
    "frame-system-rpc-runtime-api/std",
    "frame-system/std",
    "frame-try-runtime?/std",
    "log/std",
    "pallet-ah-ops/std",
    "pallet-asset-conversion-ops/std",
    "pallet-asset-conversion-tx-payment/std",
    "pallet-asset-conversion/std",
    "pallet-asset-rate/std",
    "pallet-asset-rewards/std",
    "pallet-assets-freezer/std",
    "pallet-assets/std",
    "pallet-aura/std",
    "pallet-authorship/std",
    "pallet-bags-list/std",
    "pallet-balances/std",
    "pallet-collator-selection/std",
    "pallet-conviction-voting/std",
    "pallet-delegated-staking/std",
    "pallet-election-provider-multi-block/std",
    "pallet-fast-unstake/std",
    "pallet-indices/std",
    "pallet-message-queue/std",
    "pallet-migrations/std",
    "pallet-multisig/std",
    "pallet-nft-fractionalization/std",
    "pallet-nfts-runtime-api/std",
    "pallet-nfts/std",
    "pallet-nomination-pools-runtime-api/std",
    "pallet-nomination-pools/std",
    "pallet-preimage/std",
    "pallet-proxy/std",
    "pallet-referenda/std",
    "pallet-revive/std",
    "pallet-scheduler/std",
    "pallet-session/std",
    "pallet-staking-async-rc-client/std",
    "pallet-staking-async/std",
    "pallet-staking-runtime-api/std",
    "pallet-staking/std",
    "pallet-state-trie-migration/std",
    "pallet-sudo/std",
    "pallet-timestamp/std",
    "pallet-transaction-payment-rpc-runtime-api/std",
    "pallet-transaction-payment/std",
    "pallet-treasury/std",
    "pallet-uniques/std",
    "pallet-utility/std",
    "pallet-vesting/std",
    "pallet-whitelist/std",
    "pallet-xcm-benchmarks?/std",
    "pallet-xcm-bridge-hub-router/std",
    "pallet-xcm/std",
    "parachain-info/std",
    "parachains-common/std",
    "polkadot-parachain-primitives/std",
    "polkadot-runtime-common/std",
    "primitive-types/std",
    "scale-info/std",
    "serde_json/std",
    "snowbridge-outbound-queue-primitives/std",
    "snowbridge-pallet-system-frontend/std",
    "snowbridge-runtime-common/std",
    "sp-api/std",
    "sp-arithmetic/std",
    "sp-block-builder/std",
    "sp-consensus-aura/std",
    "sp-core/std",
    "sp-genesis-builder/std",
    "sp-inherents/std",
    "sp-io/std",
    "sp-keyring/std",
    "sp-npos-elections/std",
    "sp-offchain/std",
    "sp-runtime/std",
    "sp-session/std",
    "sp-staking/std",
    "sp-std/std",
    "sp-storage/std",
    "sp-transaction-pool/std",
    "sp-version/std",
    "substrate-wasm-builder",
    "testnet-parachains-constants/std",
    "westend-runtime-constants/std",
    "xcm-builder/std",
    "xcm-executor/std",
    "xcm-runtime-apis/std",
    "xcm/std",
]
try-runtime = [
    "assets-common/try-runtime",
    "cumulus-pallet-aura-ext/try-runtime",
    "cumulus-pallet-parachain-system/try-runtime",
    "cumulus-pallet-weight-reclaim/try-runtime",
    "cumulus-pallet-xcm/try-runtime",
    "cumulus-pallet-xcmp-queue/try-runtime",
    "frame-election-provider-support/try-runtime",
    "frame-executive/try-runtime",
    "frame-support/try-runtime",
    "frame-system/try-runtime",
    "frame-try-runtime/try-runtime",
    "pallet-ah-ops/try-runtime",
    "pallet-asset-conversion-ops/try-runtime",
    "pallet-asset-conversion-tx-payment/try-runtime",
    "pallet-asset-conversion/try-runtime",
    "pallet-asset-rate/try-runtime",
    "pallet-asset-rewards/try-runtime",
    "pallet-assets-freezer/try-runtime",
    "pallet-assets/try-runtime",
    "pallet-aura/try-runtime",
    "pallet-authorship/try-runtime",
    "pallet-bags-list/try-runtime",
    "pallet-balances/try-runtime",
    "pallet-collator-selection/try-runtime",
    "pallet-conviction-voting/try-runtime",
    "pallet-delegated-staking/try-runtime",
    "pallet-election-provider-multi-block/try-runtime",
    "pallet-fast-unstake/try-runtime",
    "pallet-indices/try-runtime",
    "pallet-message-queue/try-runtime",
    "pallet-migrations/try-runtime",
    "pallet-multisig/try-runtime",
    "pallet-nft-fractionalization/try-runtime",
    "pallet-nfts/try-runtime",
    "pallet-nomination-pools/try-runtime",
    "pallet-preimage/try-runtime",
    "pallet-proxy/try-runtime",
    "pallet-referenda/try-runtime",
    "pallet-revive/try-runtime",
    "pallet-scheduler/try-runtime",
    "pallet-session/try-runtime",
    "pallet-staking-async-rc-client/try-runtime",
    "pallet-staking-async/try-runtime",
    "pallet-staking/try-runtime",
    "pallet-state-trie-migration/try-runtime",
    "pallet-sudo/try-runtime",
    "pallet-timestamp/try-runtime",
    "pallet-transaction-payment/try-runtime",
    "pallet-treasury/try-runtime",
    "pallet-uniques/try-runtime",
    "pallet-utility/try-runtime",
    "pallet-vesting/try-runtime",
    "pallet-whitelist/try-runtime",
    "pallet-xcm-bridge-hub-router/try-runtime",
    "pallet-xcm/try-runtime",
    "parachain-info/try-runtime",
    "parachains-common/try-runtime",
    "polkadot-runtime-common/try-runtime",
    "snowbridge-pallet-system-frontend/try-runtime",
    "snowbridge-runtime-common/try-runtime",
    "sp-runtime/try-runtime",
]

[lints.clippy.all]
level = "allow"
priority = 0

[lints.clippy.bind_instead_of_map]
level = "allow"
priority = 2

[lints.clippy.borrowed-box]
level = "allow"
priority = 2

[lints.clippy.complexity]
level = "warn"
priority = 1

[lints.clippy.correctness]
level = "warn"
priority = 1

[lints.clippy.default_constructed_unit_structs]
level = "allow"
priority = 2

[lints.clippy.derivable_impls]
level = "allow"
priority = 2

[lints.clippy.eq_op]
level = "allow"
priority = 2

[lints.clippy.erasing_op]
level = "allow"
priority = 2

[lints.clippy.extra-unused-type-parameters]
level = "allow"
priority = 2

[lints.clippy.identity-op]
level = "allow"
priority = 2

[lints.clippy.if-same-then-else]
level = "allow"
priority = 2

[lints.clippy.needless-lifetimes]
level = "allow"
priority = 2

[lints.clippy.needless_option_as_deref]
level = "allow"
priority = 2

[lints.clippy.nonminimal-bool]
level = "allow"
priority = 2

[lints.clippy.option-map-unit-fn]
level = "allow"
priority = 2

[lints.clippy.stable_sort_primitive]
level = "allow"
priority = 2

[lints.clippy.too-many-arguments]
level = "allow"
priority = 2

[lints.clippy.type_complexity]
level = "allow"
priority = 2

[lints.clippy.unit_arg]
level = "allow"
priority = 2

[lints.clippy.unnecessary_cast]
level = "allow"
priority = 2

[lints.clippy.useless_conversion]
level = "allow"
priority = 2

[lints.clippy.while_immutable_condition]
level = "allow"
priority = 2

[lints.clippy.zero-prefixed-literal]
level = "allow"
priority = 2

[lints.rust.suspicious_double_ref_op]
level = "allow"
priority = 2

[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = [
    'cfg(build_opt_level, values("3"))',
    'cfg(build_profile, values("debug", "release"))',
    "cfg(enable_alloc_error_handler)",
    "cfg(fuzzing)",
    "cfg(ignore_flaky_test)",
    "cfg(substrate_runtime)",
]
