[package]
authors.workspace      = true
description            = "Miden node's block producer component"
edition.workspace      = true
homepage.workspace     = true
keywords               = ["block-producer", "miden", "node"]
license.workspace      = true
name                   = "miden-node-block-producer"
readme                 = "README.md"
repository.workspace   = true
rust-version.workspace = true
version.workspace      = true

[lints]
workspace = true

[features]
testing        = []
tracing-forest = ["miden-node-utils/tracing-forest"]

[dependencies]
anyhow                     = { workspace = true }
futures                    = { workspace = true }
itertools                  = { workspace = true }
miden-block-prover         = { workspace = true }
miden-node-proto           = { workspace = true }
miden-node-proto-build     = { features = ["internal"], workspace = true }
miden-node-utils           = { features = ["testing"], workspace = true }
miden-protocol             = { default-features = true, workspace = true }
miden-remote-prover-client = { features = ["batch-prover", "block-prover"], workspace = true }
miden-standards            = { workspace = true }
miden-tx                   = { default-features = true, workspace = true }
miden-tx-batch-prover      = { workspace = true }
rand                       = { version = "0.9" }
thiserror                  = { workspace = true }
tokio                      = { features = ["macros", "net", "rt-multi-thread"], workspace = true }
tokio-stream               = { features = ["net"], workspace = true }
tonic                      = { default-features = true, features = ["transport"], workspace = true }
tonic-reflection           = { workspace = true }
tower-http                 = { features = ["util"], workspace = true }
tracing                    = { workspace = true }
url                        = { workspace = true }

[dev-dependencies]
assert_matches        = { workspace = true }
miden-node-store      = { workspace = true }
miden-node-test-macro = { workspace = true }
miden-node-utils      = { features = ["testing"], workspace = true }
miden-protocol        = { default-features = true, features = ["testing"], workspace = true }
miden-standards       = { features = ["testing"], workspace = true }
miden-tx              = { features = ["testing"], workspace = true }
pretty_assertions     = "1.4"
rand_chacha           = { default-features = false, version = "0.9" }
rstest                = { workspace = true }
serial_test           = "3.2"
tempfile              = { version = "3.20" }
tokio                 = { features = ["test-util"], workspace = true }
winterfell            = { version = "0.13" }
