[package] name = "staging-node-cli" version = "3.0.0-dev" authors.workspace = true description = "Generic Substrate node implementation in Rust." build = "build.rs" edition.workspace = true license = "GPL-3.0-or-later WITH Classpath-exception-2.0" default-run = "substrate-node" homepage.workspace = true repository.workspace = true publish = false [lints] workspace = true [package.metadata.wasm-pack.profile.release] # `wasm-opt` has some problems on linux, see # https://github.com/rustwasm/wasm-pack/issues/781 etc. wasm-opt = false [package.metadata.docs.rs] targets = ["x86_64-unknown-linux-gnu"] [badges] maintenance = { status = "actively-developed" } is-it-maintained-issue-resolution = { repository = "pezkuwichain/pezkuwi-sdk" } is-it-maintained-open-issues = { repository = "pezkuwichain/pezkuwi-sdk" } [lib] crate-type = ["cdylib", "rlib"] [[bin]] name = "substrate-node" path = "bin/main.rs" required-features = ["cli"] [[bench]] name = "transaction_pool" harness = false [[bench]] name = "block_production" harness = false [[bench]] name = "executor" harness = false [dependencies] # third-party dependencies array-bytes = { workspace = true, default-features = true } clap = { features = ["derive"], optional = true, workspace = true } codec = { workspace = true, default-features = true } futures = { workspace = true } jsonrpsee = { features = ["server"], workspace = true } log = { workspace = true, default-features = true } rand = { workspace = true, default-features = true } serde = { features = ["derive"], workspace = true, default-features = true } serde_json = { workspace = true, default-features = true } subxt-signer = { workspace = true, features = ["unstable-eth"] } # The Pezkuwi-SDK: pezkuwi-sdk = { features = [ "fork-tree", "frame-benchmarking-cli", "frame-remote-externalities", "frame-support-procedural-tools", "generate-bags", "mmr-gadget", "mmr-rpc", "pallet-transaction-payment-rpc", "sc-allocator", "sc-authority-discovery", "sc-basic-authorship", "sc-block-builder", "sc-chain-spec", "sc-cli", "sc-client-api", "sc-client-db", "sc-consensus", "sc-consensus-aura", "sc-consensus-babe", "sc-consensus-babe-rpc", "sc-consensus-beefy", "sc-consensus-beefy-rpc", "sc-consensus-epochs", "sc-consensus-grandpa", "sc-consensus-grandpa-rpc", "sc-consensus-manual-seal", "sc-consensus-pow", "sc-consensus-slots", "sc-executor", "sc-executor-common", "sc-executor-polkavm", "sc-executor-wasmtime", "sc-informant", "sc-keystore", "sc-mixnet", "sc-network", "sc-network-common", "sc-network-gossip", "sc-network-light", "sc-network-statement", "sc-network-sync", "sc-network-transactions", "sc-network-types", "sc-offchain", "sc-proposer-metrics", "sc-rpc", "sc-rpc-api", "sc-rpc-server", "sc-rpc-spec-v2", "sc-service", "sc-state-db", "sc-statement-store", "sc-storage-monitor", "sc-sync-state-rpc", "sc-sysinfo", "sc-telemetry", "sc-tracing", "sc-transaction-pool", "sc-transaction-pool-api", "sc-utils", "sp-blockchain", "sp-consensus", "sp-core-hashing", "sp-core-hashing-proc-macro", "sp-database", "sp-maybe-compressed-blob", "sp-panic-handler", "sp-rpc", "staging-chain-spec-builder", "staging-node-inspect", "staging-tracking-allocator", "std", "subkey", "substrate-build-script-utils", "substrate-frame-rpc-support", "substrate-frame-rpc-system", "substrate-prometheus-endpoint", "substrate-rpc-client", "substrate-state-trie-migration-rpc", "substrate-wasm-builder", "tracing-gum", ], workspace = true, default-features = true } # Shared code between the staging node and kitchensink runtime: kitchensink-runtime = { workspace = true } node-inspect = { optional = true, workspace = true, default-features = true } node-primitives = { workspace = true, default-features = true } node-rpc = { workspace = true } [dev-dependencies] assert_cmd = { workspace = true } criterion = { features = [ "async_tokio", ], workspace = true, default-features = true } nix = { features = ["signal"], workspace = true } pretty_assertions.workspace = true regex = { workspace = true } scale-info = { features = [ "derive", "serde", ], workspace = true, default-features = true } soketto = { workspace = true } sp-keyring = { workspace = true } tempfile = { workspace = true } tokio = { features = [ "macros", "parking_lot", "time", ], workspace = true, default-features = true } tokio-util = { features = ["compat"], workspace = true } wat = { workspace = true } # These testing-only dependencies are not exported by the Pezkuwi-SDK crate: node-testing = { workspace = true } sc-service-test = { workspace = true } substrate-cli-test-utils = { workspace = true } [build-dependencies] clap = { optional = true, workspace = true } clap_complete = { optional = true, workspace = true } node-inspect = { optional = true, workspace = true, default-features = true } pezkuwi-sdk = { features = [ "frame-benchmarking-cli", "sc-cli", "sc-storage-monitor", "substrate-build-script-utils", ], optional = true, workspace = true, default-features = true } [features] default = ["cli"] cli = ["clap", "clap_complete", "node-inspect", "pezkuwi-sdk"] runtime-benchmarks = [ "kitchensink-runtime/runtime-benchmarks", "node-inspect?/runtime-benchmarks", "node-primitives/runtime-benchmarks", "node-rpc/runtime-benchmarks", "node-testing/runtime-benchmarks", "pezkuwi-sdk/runtime-benchmarks", "sc-service-test/runtime-benchmarks", "sp-keyring/runtime-benchmarks", "substrate-cli-test-utils/runtime-benchmarks", ] try-runtime = [ "kitchensink-runtime/try-runtime", "pezkuwi-sdk/try-runtime", "substrate-cli-test-utils/try-runtime", ]