161 lines
4.1 KiB
TOML
161 lines
4.1 KiB
TOML
[package]
|
|
name = "zcash_client_backend"
|
|
description = "APIs for creating shielded Zcash light clients"
|
|
version = "0.11.1"
|
|
authors = [
|
|
"Jack Grigg <jack@z.cash>",
|
|
"Kris Nuttycombe <kris@electriccoin.co>"
|
|
]
|
|
homepage = "https://github.com/zcash/librustzcash"
|
|
repository.workspace = true
|
|
readme = "README.md"
|
|
license.workspace = true
|
|
edition.workspace = true
|
|
rust-version.workspace = true
|
|
categories.workspace = true
|
|
|
|
# Exclude proto files so crates.io consumers don't need protoc.
|
|
exclude = ["*.proto"]
|
|
|
|
[package.metadata.cargo-udeps.ignore]
|
|
development = ["zcash_proofs"]
|
|
|
|
[package.metadata.docs.rs]
|
|
# Manually specify features while `orchard` is not in the public API.
|
|
#all-features = true
|
|
features = [
|
|
"lightwalletd-tonic",
|
|
"transparent-inputs",
|
|
"test-dependencies",
|
|
"unstable",
|
|
"unstable-serialization",
|
|
"unstable-spanning-tree",
|
|
]
|
|
rustdoc-args = ["--cfg", "docsrs"]
|
|
|
|
[dependencies]
|
|
zcash_address.workspace = true
|
|
zcash_encoding.workspace = true
|
|
zcash_keys = { workspace = true, features = ["sapling"] }
|
|
zcash_note_encryption.workspace = true
|
|
zcash_primitives.workspace = true
|
|
zcash_protocol.workspace = true
|
|
zip32.workspace = true
|
|
|
|
# Dependencies exposed in a public API:
|
|
# (Breaking upgrades to these require a breaking upgrade to this crate.)
|
|
# - Data Access API
|
|
time = "0.3.22"
|
|
nonempty.workspace = true
|
|
|
|
# - CSPRNG
|
|
rand_core.workspace = true
|
|
|
|
# - Encodings
|
|
base64.workspace = true
|
|
bech32.workspace = true
|
|
bs58.workspace = true
|
|
|
|
# - Errors
|
|
hdwallet = { workspace = true, optional = true }
|
|
|
|
# - Logging and metrics
|
|
memuse.workspace = true
|
|
tracing.workspace = true
|
|
|
|
# - Protobuf interfaces and gRPC bindings
|
|
hex.workspace = true
|
|
prost.workspace = true
|
|
tonic = { workspace = true, optional = true }
|
|
|
|
# - Secret management
|
|
secrecy.workspace = true
|
|
subtle.workspace = true
|
|
|
|
# - Shielded protocols
|
|
bls12_381.workspace = true
|
|
group.workspace = true
|
|
orchard = { workspace = true, optional = true }
|
|
sapling.workspace = true
|
|
|
|
# - Note commitment trees
|
|
incrementalmerkletree.workspace = true
|
|
shardtree.workspace = true
|
|
|
|
# - Test dependencies
|
|
proptest = { workspace = true, optional = true }
|
|
|
|
# - ZIP 321
|
|
nom = "7"
|
|
|
|
# Dependencies used internally:
|
|
# (Breaking upgrades to these are usually backwards-compatible, but check MSRVs.)
|
|
# - Documentation
|
|
document-features.workspace = true
|
|
|
|
# - Encodings
|
|
byteorder = { workspace = true, optional = true }
|
|
percent-encoding.workspace = true
|
|
|
|
# - Scanning
|
|
crossbeam-channel.workspace = true
|
|
rayon.workspace = true
|
|
|
|
[build-dependencies]
|
|
tonic-build.workspace = true
|
|
which = "4"
|
|
|
|
[dev-dependencies]
|
|
assert_matches.workspace = true
|
|
gumdrop = "0.8"
|
|
incrementalmerkletree = { workspace = true, features = ["test-dependencies"] }
|
|
jubjub.workspace = true
|
|
proptest.workspace = true
|
|
rand_core.workspace = true
|
|
shardtree = { workspace = true, features = ["test-dependencies"] }
|
|
zcash_proofs.workspace = true
|
|
zcash_address = { workspace = true, features = ["test-dependencies"] }
|
|
zcash_keys = { workspace = true, features = ["test-dependencies"] }
|
|
|
|
time = ">=0.3.22, <0.3.24" # time 0.3.24 has MSRV 1.67
|
|
|
|
[features]
|
|
## Enables the `tonic` gRPC client bindings for connecting to a `lightwalletd` server.
|
|
lightwalletd-tonic = ["dep:tonic"]
|
|
|
|
## Enables receiving transparent funds and shielding them.
|
|
transparent-inputs = [
|
|
"dep:hdwallet",
|
|
"zcash_keys/transparent-inputs",
|
|
"zcash_primitives/transparent-inputs",
|
|
]
|
|
|
|
## Enables receiving and spending Orchard funds.
|
|
orchard = ["dep:orchard", "zcash_keys/orchard"]
|
|
|
|
## Exposes APIs that are useful for testing, such as `proptest` strategies.
|
|
test-dependencies = [
|
|
"dep:proptest",
|
|
"orchard?/test-dependencies",
|
|
"zcash_keys/test-dependencies",
|
|
"zcash_primitives/test-dependencies",
|
|
"incrementalmerkletree/test-dependencies",
|
|
]
|
|
|
|
#! ### Experimental features
|
|
|
|
## Exposes unstable APIs. Their behaviour may change at any time.
|
|
unstable = ["dep:byteorder", "zcash_keys/unstable"]
|
|
|
|
## Exposes APIs for unstable serialization formats. These may change at any time.
|
|
unstable-serialization = ["dep:byteorder"]
|
|
|
|
## Exposes the [`data_api::scanning::spanning_tree`] module.
|
|
unstable-spanning-tree = []
|
|
|
|
[lib]
|
|
bench = false
|
|
|
|
[badges]
|
|
maintenance = { status = "actively-developed" }
|