[package] name = "node-template" version = "4.0.0-dev" description = "A fresh FRAME-based Substrate node, ready for hacking." authors = ["Substrate DevHub "] homepage = "https://substrate.io/" edition.workspace = true license = "MIT-0" publish = false repository = "https://github.com/substrate-developer-hub/substrate-node-template/" build = "build.rs" [lints] workspace = true [package.metadata.docs.rs] targets = ["x86_64-unknown-linux-gnu"] [[bin]] name = "node-template" [dependencies] clap = { version = "4.4.18", features = ["derive"] } futures = { version = "0.3.21", features = ["thread-pool"] } serde_json = "1.0.111" sc-cli = { path = "../../../client/cli" } sp-core = { path = "../../../primitives/core" } sc-executor = { path = "../../../client/executor" } sc-network = { path = "../../../client/network" } sc-service = { path = "../../../client/service" } sc-telemetry = { path = "../../../client/telemetry" } sc-transaction-pool = { path = "../../../client/transaction-pool" } sc-transaction-pool-api = { path = "../../../client/transaction-pool/api" } sc-offchain = { path = "../../../client/offchain" } sc-consensus-aura = { path = "../../../client/consensus/aura" } sp-consensus-aura = { path = "../../../primitives/consensus/aura" } sc-consensus = { path = "../../../client/consensus/common" } sc-consensus-grandpa = { path = "../../../client/consensus/grandpa" } sp-consensus-grandpa = { path = "../../../primitives/consensus/grandpa" } sc-client-api = { path = "../../../client/api" } sp-runtime = { path = "../../../primitives/runtime" } sp-io = { path = "../../../primitives/io" } sp-timestamp = { path = "../../../primitives/timestamp" } sp-inherents = { path = "../../../primitives/inherents" } sp-keyring = { path = "../../../primitives/keyring" } frame-system = { path = "../../../frame/system" } pallet-transaction-payment = { path = "../../../frame/transaction-payment", default-features = false } # These dependencies are used for the node template's RPCs jsonrpsee = { version = "0.22", features = ["server"] } sp-api = { path = "../../../primitives/api" } sc-rpc-api = { path = "../../../client/rpc-api" } sp-blockchain = { path = "../../../primitives/blockchain" } sp-block-builder = { path = "../../../primitives/block-builder" } sc-basic-authorship = { path = "../../../client/basic-authorship" } substrate-frame-rpc-system = { path = "../../../utils/frame/rpc/system" } pallet-transaction-payment-rpc = { path = "../../../frame/transaction-payment/rpc" } # These dependencies are used for runtime benchmarking frame-benchmarking = { path = "../../../frame/benchmarking" } frame-benchmarking-cli = { path = "../../../utils/frame/benchmarking-cli" } # Local Dependencies node-template-runtime = { path = "../runtime" } # CLI-specific dependencies try-runtime-cli = { path = "../../../utils/frame/try-runtime/cli", optional = true } [build-dependencies] substrate-build-script-utils = { path = "../../../utils/build-script-utils" } [features] default = [] # Dependencies that are only required if runtime benchmarking should be build. runtime-benchmarks = [ "frame-benchmarking-cli/runtime-benchmarks", "frame-benchmarking/runtime-benchmarks", "frame-system/runtime-benchmarks", "node-template-runtime/runtime-benchmarks", "sc-service/runtime-benchmarks", "sp-runtime/runtime-benchmarks", ] # Enable features that allow the runtime to be tried and debugged. Name might be subject to change # in the near future. try-runtime = [ "frame-system/try-runtime", "node-template-runtime/try-runtime", "pallet-transaction-payment/try-runtime", "sp-runtime/try-runtime", "try-runtime-cli/try-runtime", ]