[package]
name = "node-runtime"
version = "3.0.0-dev"
authors = ["Parity Technologies <admin@parity.io>"]
edition = "2021"
build = "build.rs"
license = "Apache-2.0"
homepage = "https://substrate.io"
repository = "https://github.com/paritytech/substrate/"

[package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"]

[dependencies]

# third-party dependencies
codec = { package = "parity-scale-codec", version = "2.2.0", default-features = false, features = [
	"derive",
	"max-encoded-len",
] }
scale-info = { version = "1.0", default-features = false, features = ["derive"] }
static_assertions = "1.1.0"
hex-literal = { version = "0.3.4", optional = true }
log = { version = "0.4.14", default-features = false }

# primitives
sp-authority-discovery = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/authority-discovery" }
sp-consensus-babe = { version = "0.10.0-dev", default-features = false, path = "../../../primitives/consensus/babe" }
sp-block-builder = { path = "../../../primitives/block-builder", default-features = false, version = "4.0.0-dev" }
sp-inherents = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/inherents" }
node-primitives = { version = "2.0.0", default-features = false, path = "../primitives" }
sp-offchain = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/offchain" }
sp-core = { version = "5.0.0", default-features = false, path = "../../../primitives/core" }
sp-std = { version = "4.0.0", default-features = false, path = "../../../primitives/std" }
sp-api = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/api" }
sp-runtime = { version = "5.0.0", default-features = false, path = "../../../primitives/runtime" }
sp-staking = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/staking" }
sp-keyring = { version = "5.0.0", optional = true, path = "../../../primitives/keyring" }
sp-session = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/session" }
sp-transaction-pool = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/transaction-pool" }
sp-version = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/version" }
sp-npos-elections = { version = "4.0.0-dev", default-features = false, path = "../../../primitives/npos-elections" }
sp-io = { version = "5.0.0", default-features = false, path = "../../../primitives/io" }
sp-sandbox = { version = "0.10.0-dev", default-features = false, path = "../../../primitives/sandbox" }

# frame dependencies
frame-executive = { version = "4.0.0-dev", default-features = false, path = "../../../frame/executive" }
frame-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../../../frame/benchmarking", optional = true }
frame-support = { version = "4.0.0-dev", default-features = false, path = "../../../frame/support" }
frame-system = { version = "4.0.0-dev", default-features = false, path = "../../../frame/system" }
frame-system-benchmarking = { version = "4.0.0-dev", default-features = false, path = "../../../frame/system/benchmarking", optional = true }
frame-election-provider-support = { version = "4.0.0-dev", default-features = false, path = "../../../frame/election-provider-support" }
frame-system-rpc-runtime-api = { version = "4.0.0-dev", default-features = false, path = "../../../frame/system/rpc/runtime-api/" }
frame-try-runtime = { version = "0.10.0-dev", default-features = false, path = "../../../frame/try-runtime", optional = true }
pallet-assets = { version = "4.0.0-dev", default-features = false, path = "../../../frame/assets" }
pallet-authority-discovery = { version = "4.0.0-dev", default-features = false, path = "../../../frame/authority-discovery" }
pallet-authorship = { version = "4.0.0-dev", default-features = false, path = "../../../frame/authorship" }
pallet-babe = { version = "4.0.0-dev", default-features = false, path = "../../../frame/babe" }
pallet-bags-list = { version = "4.0.0-dev", default-features = false, path = "../../../frame/bags-list" }
pallet-balances = { version = "4.0.0-dev", default-features = false, path = "../../../frame/balances" }
pallet-bounties = { version = "4.0.0-dev", default-features = false, path = "../../../frame/bounties" }
pallet-child-bounties = { version = "4.0.0-dev", default-features = false, path = "../../../frame/child-bounties" }
pallet-collective = { version = "4.0.0-dev", default-features = false, path = "../../../frame/collective" }
pallet-contracts = { version = "4.0.0-dev", default-features = false, path = "../../../frame/contracts" }
pallet-contracts-primitives = { version = "5.0.0", default-features = false, path = "../../../frame/contracts/common/" }
pallet-contracts-rpc-runtime-api = { version = "4.0.0-dev", default-features = false, path = "../../../frame/contracts/rpc/runtime-api/" }
pallet-conviction-voting = { version = "4.0.0-dev", default-features = false, path = "../../../frame/conviction-voting" }
pallet-democracy = { version = "4.0.0-dev", default-features = false, path = "../../../frame/democracy" }
pallet-election-provider-multi-phase = { version = "4.0.0-dev", default-features = false, path = "../../../frame/election-provider-multi-phase" }
pallet-elections-phragmen = { version = "5.0.0-dev", default-features = false, path = "../../../frame/elections-phragmen" }
pallet-gilt = { version = "4.0.0-dev", default-features = false, path = "../../../frame/gilt" }
pallet-grandpa = { version = "4.0.0-dev", default-features = false, path = "../../../frame/grandpa" }
pallet-im-online = { version = "4.0.0-dev", default-features = false, path = "../../../frame/im-online" }
pallet-indices = { version = "4.0.0-dev", default-features = false, path = "../../../frame/indices" }
pallet-identity = { version = "4.0.0-dev", default-features = false, path = "../../../frame/identity" }
pallet-lottery = { version = "4.0.0-dev", default-features = false, path = "../../../frame/lottery" }
pallet-membership = { version = "4.0.0-dev", default-features = false, path = "../../../frame/membership" }
pallet-mmr = { version = "4.0.0-dev", default-features = false, path = "../../../frame/merkle-mountain-range" }
pallet-multisig = { version = "4.0.0-dev", default-features = false, path = "../../../frame/multisig" }
pallet-offences = { version = "4.0.0-dev", default-features = false, path = "../../../frame/offences" }
pallet-offences-benchmarking = { version = "4.0.0-dev", path = "../../../frame/offences/benchmarking", default-features = false, optional = true }
pallet-preimage = { version = "4.0.0-dev", default-features = false, path = "../../../frame/preimage" }
pallet-proxy = { version = "4.0.0-dev", default-features = false, path = "../../../frame/proxy" }
pallet-randomness-collective-flip = { version = "4.0.0-dev", default-features = false, path = "../../../frame/randomness-collective-flip" }
pallet-recovery = { version = "4.0.0-dev", default-features = false, path = "../../../frame/recovery" }
pallet-referenda = { version = "4.0.0-dev", default-features = false, path = "../../../frame/referenda" }
pallet-session = { version = "4.0.0-dev", features = [ "historical" ], path = "../../../frame/session", default-features = false }
pallet-session-benchmarking = { version = "4.0.0-dev", path = "../../../frame/session/benchmarking", default-features = false, optional = true }
pallet-staking = { version = "4.0.0-dev", default-features = false, path = "../../../frame/staking" }
pallet-staking-reward-curve = { version = "4.0.0-dev", default-features = false, path = "../../../frame/staking/reward-curve" }
pallet-scheduler = { version = "4.0.0-dev", default-features = false, path = "../../../frame/scheduler" }
pallet-society = { version = "4.0.0-dev", default-features = false, path = "../../../frame/society" }
pallet-sudo = { version = "4.0.0-dev", default-features = false, path = "../../../frame/sudo" }
pallet-timestamp = { version = "4.0.0-dev", default-features = false, path = "../../../frame/timestamp" }
pallet-tips = { version = "4.0.0-dev", default-features = false, path = "../../../frame/tips" }
pallet-treasury = { version = "4.0.0-dev", default-features = false, path = "../../../frame/treasury" }
pallet-utility = { version = "4.0.0-dev", default-features = false, path = "../../../frame/utility" }
pallet-transaction-payment = { version = "4.0.0-dev", default-features = false, path = "../../../frame/transaction-payment" }
pallet-transaction-payment-rpc-runtime-api = { version = "4.0.0-dev", default-features = false, path = "../../../frame/transaction-payment/rpc/runtime-api/" }
pallet-asset-tx-payment = { version = "4.0.0-dev", default-features = false, path = "../../../frame/transaction-payment/asset-tx-payment/" }
pallet-transaction-storage = { version = "4.0.0-dev", default-features = false, path = "../../../frame/transaction-storage" }
pallet-uniques = { version = "4.0.0-dev", default-features = false, path = "../../../frame/uniques" }
pallet-vesting = { version = "4.0.0-dev", default-features = false, path = "../../../frame/vesting" }

[build-dependencies]
substrate-wasm-builder = { version = "5.0.0-dev", path = "../../../utils/wasm-builder" }

[features]
default = ["std"]
with-tracing = ["frame-executive/with-tracing"]
std = [
	"sp-authority-discovery/std",
	"pallet-assets/std",
	"pallet-authority-discovery/std",
	"pallet-authorship/std",
	"sp-consensus-babe/std",
	"pallet-babe/std",
	"pallet-bags-list/std",
	"pallet-balances/std",
	"pallet-bounties/std",
	"sp-block-builder/std",
	"codec/std",
	"scale-info/std",
	"pallet-collective/std",
	"pallet-contracts/std",
	"pallet-contracts-primitives/std",
	"pallet-contracts-rpc-runtime-api/std",
	"pallet-conviction-voting/std",
	"pallet-democracy/std",
	"pallet-elections-phragmen/std",
	"frame-executive/std",
	"pallet-gilt/std",
	"pallet-grandpa/std",
	"pallet-im-online/std",
	"pallet-indices/std",
	"sp-inherents/std",
	"pallet-lottery/std",
	"pallet-membership/std",
	"pallet-mmr/std",
	"pallet-multisig/std",
	"pallet-identity/std",
	"pallet-scheduler/std",
	"node-primitives/std",
	"sp-offchain/std",
	"pallet-offences/std",
	"pallet-preimage/std",
	"pallet-proxy/std",
	"sp-core/std",
	"pallet-randomness-collective-flip/std",
	"sp-std/std",
	"pallet-session/std",
	"sp-api/std",
	"sp-runtime/std",
	"sp-staking/std",
	"pallet-staking/std",
	"sp-keyring",
	"sp-session/std",
	"pallet-sudo/std",
	"frame-support/std",
	"frame-benchmarking/std",
	"frame-system-rpc-runtime-api/std",
	"frame-system/std",
	"pallet-election-provider-multi-phase/std",
	"pallet-timestamp/std",
	"pallet-tips/std",
	"pallet-transaction-payment-rpc-runtime-api/std",
	"pallet-transaction-payment/std",
	"pallet-transaction-storage/std",
	"pallet-treasury/std",
	"sp-transaction-pool/std",
	"pallet-utility/std",
	"sp-version/std",
	"pallet-society/std",
	"pallet-referenda/std",
	"pallet-recovery/std",
	"pallet-uniques/std",
	"pallet-vesting/std",
	"log/std",
	"frame-try-runtime/std",
	"sp-npos-elections/std",
  	"sp-io/std",
	"pallet-child-bounties/std",
]
runtime-benchmarks = [
	"frame-benchmarking/runtime-benchmarks",
	"frame-support/runtime-benchmarks",
	"frame-system/runtime-benchmarks",
	"sp-runtime/runtime-benchmarks",
	"pallet-assets/runtime-benchmarks",
	"pallet-babe/runtime-benchmarks",
	"pallet-bags-list/runtime-benchmarks",
	"pallet-balances/runtime-benchmarks",
	"pallet-bounties/runtime-benchmarks",
	"pallet-child-bounties/runtime-benchmarks",
	"pallet-collective/runtime-benchmarks",
	"pallet-contracts/runtime-benchmarks",
	"pallet-conviction-voting/runtime-benchmarks",
	"pallet-democracy/runtime-benchmarks",
	"pallet-election-provider-multi-phase/runtime-benchmarks",
	"pallet-elections-phragmen/runtime-benchmarks",
	"pallet-gilt/runtime-benchmarks",
	"pallet-grandpa/runtime-benchmarks",
	"pallet-identity/runtime-benchmarks",
	"pallet-im-online/runtime-benchmarks",
	"pallet-indices/runtime-benchmarks",
	"pallet-lottery/runtime-benchmarks",
	"pallet-membership/runtime-benchmarks",
	"pallet-mmr/runtime-benchmarks",
	"pallet-multisig/runtime-benchmarks",
	"pallet-offences-benchmarking",
	"pallet-preimage/runtime-benchmarks",
	"pallet-proxy/runtime-benchmarks",
	"pallet-scheduler/runtime-benchmarks",
	"pallet-referenda/runtime-benchmarks",
	"pallet-session-benchmarking",
	"pallet-society/runtime-benchmarks",
	"pallet-staking/runtime-benchmarks",
	"pallet-timestamp/runtime-benchmarks",
	"pallet-tips/runtime-benchmarks",
	"pallet-transaction-storage/runtime-benchmarks",
	"pallet-treasury/runtime-benchmarks",
	"pallet-utility/runtime-benchmarks",
	"pallet-uniques/runtime-benchmarks",
	"pallet-vesting/runtime-benchmarks",
	"frame-system-benchmarking",
	"hex-literal",
]
try-runtime = [
	"frame-executive/try-runtime",
	"frame-try-runtime",
	"frame-system/try-runtime",
	"pallet-assets/try-runtime",
	"pallet-authority-discovery/try-runtime",
	"pallet-authorship/try-runtime",
	"pallet-babe/try-runtime",
	"pallet-balances/try-runtime",
	"pallet-bounties/try-runtime",
	"pallet-child-bounties/try-runtime",
	"pallet-collective/try-runtime",
	"pallet-contracts/try-runtime",
	"pallet-conviction-voting/try-runtime",
	"pallet-democracy/try-runtime",
	"pallet-election-provider-multi-phase/try-runtime",
	"pallet-elections-phragmen/try-runtime",
	"pallet-gilt/try-runtime",
	"pallet-grandpa/try-runtime",
	"pallet-identity/try-runtime",
	"pallet-im-online/try-runtime",
	"pallet-indices/try-runtime",
	"pallet-lottery/try-runtime",
	"pallet-membership/try-runtime",
	"pallet-mmr/try-runtime",
	"pallet-multisig/try-runtime",
	"pallet-offences/try-runtime",
	"pallet-preimage/try-runtime",
	"pallet-proxy/try-runtime",
	"pallet-randomness-collective-flip/try-runtime",
	"pallet-recovery/try-runtime",
	"pallet-referenda/try-runtime",
	"pallet-scheduler/try-runtime",
	"pallet-session/try-runtime",
	"pallet-society/try-runtime",
	"pallet-staking/try-runtime",
	"pallet-sudo/try-runtime",
	"pallet-timestamp/try-runtime",
	"pallet-tips/try-runtime",
	"pallet-transaction-payment/try-runtime",
	"pallet-treasury/try-runtime",
	"pallet-uniques/try-runtime",
	"pallet-utility/try-runtime",
	"pallet-vesting/try-runtime",
]
# Make contract callable functions marked as __unstable__ available. Do not enable
# on live chains as those are subject to change.
contracts-unstable-interface = ["pallet-contracts/unstable-interface"]
# Force `sp-sandbox` to call into the host resident executor. One still need to make sure
# that `sc-executor` gets the `wasmer-sandbox` feature which happens automatically when
# specified on the command line.
# Don't use that on a production chain.
wasmer-sandbox = ["sp-sandbox/wasmer-sandbox"]
