polkadot 11.0.0

Implementation of a `https://polkadot.network` node in Rust based on the Substrate framework. (polkadot v1.11.0)
[[bin]]
name = "polkadot"
path = "src/main.rs"

[[bin]]
name = "polkadot-execute-worker"
path = "src/bin/execute-worker.rs"

[[bin]]
name = "polkadot-prepare-worker"
path = "src/bin/prepare-worker.rs"

[package]
name = "polkadot"
description = "Implementation of a `https://polkadot.network` node in Rust based on the Substrate framework. (polkadot v1.11.0)"
license = "GPL-3.0-only"
rust-version = "1.64.0"
readme = "README.md"
authors.workspace = true
edition.workspace = true
version = "11.0.0"
default-run = "polkadot"

[lints]
workspace = true

[dependencies]
color-eyre = { version = "0.6.1", default-features = false }
tikv-jemallocator = { version = "0.5.0", optional = true, features = ["unprefixed_malloc_on_supported_platforms"] }

# Crates in our workspace, defined as dependencies so we can pass them feature flags.
polkadot-cli = { path = "cli", features = ["rococo-native", "westend-native"], version = "12.0.0" }
polkadot-node-core-pvf = { version = "12.0.0", path = "node/core/pvf" }
polkadot-node-core-pvf-prepare-worker = { version = "12.0.0", path = "node/core/pvf/prepare-worker" }
polkadot-overseer = { version = "12.0.0", path = "node/overseer" }
polkadot-node-core-pvf-common = { version = "12.0.0", path = "node/core/pvf/common" }
polkadot-node-core-pvf-execute-worker = { version = "12.0.0", path = "node/core/pvf/execute-worker" }

[target.'cfg(target_os = "linux")'.dependencies]
tikv-jemallocator = { version = "0.5.0", features = ["unprefixed_malloc_on_supported_platforms"] }

[dev-dependencies]
assert_cmd = "2.0.4"
nix = { version = "0.26.1", features = ["signal"] }
tempfile = "3.2.0"
tokio = "1.37"
substrate-rpc-client = { path = "../substrate/utils/frame/rpc/client" }
polkadot-core-primitives = { path = "core-primitives" }

[build-dependencies]
substrate-build-script-utils = { version = "11.0.0", path = "../substrate/utils/build-script-utils" }

[badges]
maintenance = { status = "actively-developed" }

[features]
runtime-benchmarks = ["polkadot-cli/runtime-benchmarks"]
try-runtime = ["polkadot-cli/try-runtime"]
fast-runtime = ["polkadot-cli/fast-runtime"]
runtime-metrics = ["polkadot-cli/runtime-metrics"]
pyroscope = ["polkadot-cli/pyroscope"]
jemalloc-allocator = [
	"dep:tikv-jemallocator",
	"polkadot-node-core-pvf-prepare-worker/jemalloc-allocator",
	"polkadot-node-core-pvf/jemalloc-allocator",
	"polkadot-overseer/jemalloc-allocator",
]


# Enables timeout-based tests supposed to be run only in CI environment as they may be flaky
# when run locally depending on system load
ci-only-tests = ["polkadot-node-core-pvf/ci-only-tests"]

# Configuration for building a .deb package - for use with `cargo-deb`
[package.metadata.deb]
name = "polkadot"
extended-description = "Implementation of a https://polkadot.network node in Rust based on the Substrate framework."
section = "misc"
maintainer = "security@parity.io"
license-file = ["LICENSE", "0"]
# https://www.debian.org/doc/debian-policy/ch-maintainerscripts.html
maintainer-scripts = "scripts/packaging/deb-maintainer-scripts"
assets = [
	[
		"target/release/polkadot",
		"/usr/bin/",
		"755",
	],
	[
		"target/release/polkadot-prepare-worker",
		"/usr/lib/polkadot/",
		"755",
	],
	[
		"target/release/polkadot-execute-worker",
		"/usr/lib/polkadot/",
		"755",
	],
	[
		"scripts/packaging/polkadot.service",
		"/lib/systemd/system/",
		"644",
	],
]
conf-files = ["/etc/default/polkadot"]

[package.metadata.spellcheck]
config = "./scripts/ci/gitlab/spellcheck.toml"