[package] name = "librustzcash" description = "Rust FFI used by the zcashd binary. Not an official API." version = "0.2.0" authors = [ "Sean Bowe ", "Jay Graber", "Jack Grigg ", "Daira Hopwood ", "Ying Tong Lai ", "Simon Liu", "Kris Nuttycombe ", "Greg Pfeil ", "Larry Ruane ", "Steven Smith " ] homepage = "https://github.com/zcash/zcash" repository = "https://github.com/zcash/zcash" readme = "README.md" license = "MIT OR Apache-2.0" edition = "2018" rust-version = "1.69" [package.metadata.vet] store = { path = "./qa/supply-chain" } [lib] name = "rustzcash" path = "src/rust/src/rustzcash.rs" crate-type = ["staticlib"] [[bin]] name = "zcash-inspect" path = "src/rust/bin/inspect/main.rs" [[bin]] name = "zcashd-wallet-tool" path = "src/rust/bin/wallet_tool.rs" [dependencies] bellman = "0.14" blake2b_simd = "1" blake2s_simd = "1" bls12_381 = "0.8" byteorder = "1" crossbeam-channel = "0.5" group = "0.13" incrementalmerkletree = "0.3" libc = "0.2" jubjub = "0.10" memuse = "0.2" nonempty = "0.7" orchard = "0.4" secp256k1 = "0.21" subtle = "2.2" rand_core = "0.6" tracing = "0.1" tracing-core = "0.1" tracing-appender = "0.2" zcash_address = "0.2" zcash_encoding = "0.2" zcash_history = "0.3" zcash_note_encryption = "0.3" zcash_primitives = { version = "0.11", features = ["temporary-zcashd", "transparent-inputs"] } zcash_proofs = { version = "0.11", features = ["directories"] } ed25519-zebra = "3" zeroize = "1.4.2" # Rust/C++ interop # The version needs to match depends/packages/native_cxxbridge.mk cxx = { version = "=1.0.94", features = ["c++17"] } # Rust threading rayon = "1.5" # Metrics ipnet = "2" metrics = "0.20" metrics-exporter-prometheus = "0.11" metrics-util = { version = "0.14", default-features = false, features = ["layer-filter"] } tokio = { version = "1", features = ["rt", "net", "time"] } # General tool dependencies gumdrop = "0.8" # zcash-inspect tool bech32 = "0.9" equihash = "0.2" hex = "0.4" lazy_static = "1.4" serde = "1.0" serde_json = "1.0" sha2 = "0.10" uint = "0.9" # Wallet tool # (also depends on tracing, and tracing-subscriber with "env-filter" and "fmt" features) anyhow = "1.0" backtrace = "0.3" clearscreen = "2.0" rand = "0.8" secrecy = "0.8" thiserror = "1" time = { version = "0.3", features = ["formatting", "macros"] } [dependencies.tracing-subscriber] version = "0.3" default-features = false features = ["ansi", "env-filter", "fmt", "time"] [profile.release] lto = 'thin' panic = 'abort' codegen-units = 1