[package] name = "zebra-rpc" version = "1.0.0-beta.23" authors = ["Zcash Foundation "] license = "MIT OR Apache-2.0" edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [features] default = [] # Production features that activate extra dependencies, or extra features in dependencies # Experimental mining RPC support getblocktemplate-rpcs = [ "rand", "zcash_address", "zebra-consensus/getblocktemplate-rpcs", "zebra-state/getblocktemplate-rpcs", "zebra-node-services/getblocktemplate-rpcs", "zebra-chain/getblocktemplate-rpcs", ] # Test-only features proptest-impl = [ "proptest", "zebra-consensus/proptest-impl", "zebra-state/proptest-impl", "zebra-network/proptest-impl", "zebra-chain/proptest-impl", ] [dependencies] chrono = { version = "0.4.24", default-features = false, features = ["clock", "std"] } futures = "0.3.28" # lightwalletd sends JSON-RPC requests over HTTP 1.1 hyper = { version = "0.14.26", features = ["http1", "server"] } jsonrpc-core = "18.0.0" jsonrpc-derive = "18.0.0" jsonrpc-http-server = "18.0.0" num_cpus = "1.15.0" # zebra-rpc needs the preserve_order feature in serde_json, which is a dependency of jsonrpc-core serde_json = { version = "1.0.96", features = ["preserve_order"] } indexmap = { version = "1.9.3", features = ["serde"] } tokio = { version = "1.27.0", features = ["time", "rt-multi-thread", "macros", "tracing"] } tower = "0.4.13" tracing = "0.1.37" hex = { version = "0.4.3", features = ["serde"] } serde = { version = "1.0.160", features = ["serde_derive"] } # Experimental feature getblocktemplate-rpcs rand = { version = "0.8.5", package = "rand", optional = true } # ECC deps used by getblocktemplate-rpcs feature zcash_address = { version = "0.2.1", optional = true } # Test-only feature proptest-impl proptest = { version = "1.1.0", optional = true } zebra-chain = { path = "../zebra-chain" } zebra-consensus = { path = "../zebra-consensus" } zebra-network = { path = "../zebra-network" } zebra-node-services = { path = "../zebra-node-services" } zebra-script = { path = "../zebra-script" } zebra-state = { path = "../zebra-state" } [dev-dependencies] insta = { version = "1.29.0", features = ["redactions", "json", "ron"] } proptest = "1.1.0" thiserror = "1.0.40" tokio = { version = "1.27.0", features = ["full", "tracing", "test-util"] } zebra-chain = { path = "../zebra-chain", features = ["proptest-impl"] } zebra-consensus = { path = "../zebra-consensus", features = ["proptest-impl"] } zebra-network = { path = "../zebra-network", features = ["proptest-impl"] } zebra-state = { path = "../zebra-state", features = ["proptest-impl"] } zebra-test = { path = "../zebra-test" }