2018-08-23 15:15:22 -07:00
|
|
|
[package]
|
2018-10-22 09:36:23 -07:00
|
|
|
name = "zcash_client_backend"
|
2019-10-07 20:11:39 -07:00
|
|
|
description = "APIs for creating shielded Zcash light clients"
|
2023-09-25 11:19:52 -07:00
|
|
|
version = "0.10.0"
|
2018-08-23 15:15:22 -07:00
|
|
|
authors = [
|
|
|
|
"Jack Grigg <jack@z.cash>",
|
2021-04-08 09:12:47 -07:00
|
|
|
"Kris Nuttycombe <kris@electriccoin.co>"
|
2018-08-23 15:15:22 -07:00
|
|
|
]
|
2019-10-07 20:11:39 -07:00
|
|
|
homepage = "https://github.com/zcash/librustzcash"
|
2023-09-26 13:12:23 -07:00
|
|
|
repository.workspace = true
|
2019-08-02 06:57:34 -07:00
|
|
|
readme = "README.md"
|
2023-09-26 13:12:23 -07:00
|
|
|
license.workspace = true
|
|
|
|
edition.workspace = true
|
|
|
|
rust-version.workspace = true
|
|
|
|
categories.workspace = true
|
2018-08-23 15:15:22 -07:00
|
|
|
|
2022-11-01 17:42:41 -07:00
|
|
|
# Exclude proto files so crates.io consumers don't need protoc.
|
|
|
|
exclude = ["*.proto"]
|
|
|
|
|
2022-10-13 13:06:52 -07:00
|
|
|
[package.metadata.cargo-udeps.ignore]
|
|
|
|
development = ["zcash_proofs"]
|
|
|
|
|
2024-01-04 11:03:11 -08:00
|
|
|
[package.metadata.docs.rs]
|
|
|
|
all-features = true
|
|
|
|
rustdoc-args = ["--cfg", "docsrs"]
|
|
|
|
|
2018-08-23 15:15:22 -07:00
|
|
|
[dependencies]
|
2023-09-26 13:12:23 -07:00
|
|
|
zcash_address.workspace = true
|
|
|
|
zcash_encoding.workspace = true
|
|
|
|
zcash_note_encryption.workspace = true
|
|
|
|
zcash_primitives.workspace = true
|
2023-04-28 10:40:16 -07:00
|
|
|
zip32.workspace = true
|
2022-11-01 00:23:58 -07:00
|
|
|
|
|
|
|
# Dependencies exposed in a public API:
|
|
|
|
# (Breaking upgrades to these require a breaking upgrade to this crate.)
|
|
|
|
# - Data Access API
|
2023-06-17 12:44:35 -07:00
|
|
|
time = "0.3.22"
|
2023-10-02 17:02:06 -07:00
|
|
|
nonempty.workspace = true
|
2022-11-01 00:23:58 -07:00
|
|
|
|
2023-12-08 12:19:45 -08:00
|
|
|
# - CSPRNG
|
|
|
|
rand_core.workspace = true
|
|
|
|
|
2022-11-01 00:23:58 -07:00
|
|
|
# - Encodings
|
2023-09-26 13:12:23 -07:00
|
|
|
base64.workspace = true
|
|
|
|
bech32.workspace = true
|
|
|
|
bs58.workspace = true
|
2022-11-01 00:23:58 -07:00
|
|
|
|
|
|
|
# - Errors
|
2023-09-26 13:12:23 -07:00
|
|
|
hdwallet = { workspace = true, optional = true }
|
2022-11-01 00:23:58 -07:00
|
|
|
|
|
|
|
# - Logging and metrics
|
2023-09-26 13:12:23 -07:00
|
|
|
memuse.workspace = true
|
|
|
|
tracing.workspace = true
|
2022-11-01 00:23:58 -07:00
|
|
|
|
2022-09-16 10:24:14 -07:00
|
|
|
# - Protobuf interfaces and gRPC bindings
|
2023-09-26 13:12:23 -07:00
|
|
|
hex.workspace = true
|
|
|
|
prost.workspace = true
|
|
|
|
tonic = { workspace = true, optional = true }
|
2022-11-01 00:23:58 -07:00
|
|
|
|
|
|
|
# - Secret management
|
2023-09-26 13:12:23 -07:00
|
|
|
secrecy.workspace = true
|
|
|
|
subtle.workspace = true
|
2022-11-01 00:23:58 -07:00
|
|
|
|
|
|
|
# - Shielded protocols
|
2023-09-26 13:12:23 -07:00
|
|
|
bls12_381.workspace = true
|
|
|
|
group.workspace = true
|
2024-01-03 08:17:24 -08:00
|
|
|
orchard = { workspace = true, optional = true }
|
2023-12-12 10:46:51 -08:00
|
|
|
sapling.workspace = true
|
2023-09-08 11:47:41 -07:00
|
|
|
|
|
|
|
# - Note commitment trees
|
2023-09-26 13:12:23 -07:00
|
|
|
incrementalmerkletree.workspace = true
|
|
|
|
shardtree.workspace = true
|
2022-11-01 00:23:58 -07:00
|
|
|
|
|
|
|
# - Test dependencies
|
2023-09-26 13:12:23 -07:00
|
|
|
proptest = { workspace = true, optional = true }
|
2022-11-01 00:23:58 -07:00
|
|
|
|
|
|
|
# - ZIP 321
|
|
|
|
nom = "7"
|
|
|
|
|
|
|
|
# Dependencies used internally:
|
|
|
|
# (Breaking upgrades to these are usually backwards-compatible, but check MSRVs.)
|
2024-01-03 12:14:41 -08:00
|
|
|
# - Documentation
|
|
|
|
document-features.workspace = true
|
|
|
|
|
2022-11-01 00:23:58 -07:00
|
|
|
# - Encodings
|
2023-09-26 13:12:23 -07:00
|
|
|
byteorder = { workspace = true, optional = true }
|
|
|
|
percent-encoding.workspace = true
|
2022-11-01 00:23:58 -07:00
|
|
|
|
|
|
|
# - Scanning
|
2023-09-26 13:12:23 -07:00
|
|
|
crossbeam-channel.workspace = true
|
|
|
|
rayon.workspace = true
|
2018-10-17 02:06:13 -07:00
|
|
|
|
2018-10-12 10:22:58 -07:00
|
|
|
[build-dependencies]
|
2023-09-26 13:12:23 -07:00
|
|
|
tonic-build.workspace = true
|
2022-11-01 17:42:41 -07:00
|
|
|
which = "4"
|
2018-10-12 10:22:58 -07:00
|
|
|
|
2018-10-17 02:06:13 -07:00
|
|
|
[dev-dependencies]
|
2023-09-26 13:12:23 -07:00
|
|
|
assert_matches.workspace = true
|
2021-01-08 08:01:13 -08:00
|
|
|
gumdrop = "0.8"
|
2023-11-29 11:34:59 -08:00
|
|
|
incrementalmerkletree = { workspace = true, features = ["test-dependencies"] }
|
2023-09-26 13:12:23 -07:00
|
|
|
jubjub.workspace = true
|
|
|
|
proptest.workspace = true
|
|
|
|
rand_core.workspace = true
|
2023-10-02 17:02:06 -07:00
|
|
|
shardtree = { workspace = true, features = ["test-dependencies"] }
|
2023-09-26 13:12:23 -07:00
|
|
|
zcash_proofs.workspace = true
|
|
|
|
zcash_address = { workspace = true, features = ["test-dependencies"] }
|
2019-10-07 20:11:39 -07:00
|
|
|
|
2023-08-02 09:22:54 -07:00
|
|
|
time = ">=0.3.22, <0.3.24" # time 0.3.24 has MSRV 1.67
|
|
|
|
|
2020-10-15 06:03:40 -07:00
|
|
|
[features]
|
2024-01-03 12:14:41 -08:00
|
|
|
## Enables the `tonic` gRPC client bindings for connecting to a `lightwalletd` server.
|
2024-01-03 11:49:36 -08:00
|
|
|
lightwalletd-tonic = ["dep:tonic"]
|
2024-01-03 12:14:41 -08:00
|
|
|
|
|
|
|
## Enables receiving transparent funds and shielding them.
|
2024-01-03 11:49:36 -08:00
|
|
|
transparent-inputs = ["dep:hdwallet", "zcash_primitives/transparent-inputs"]
|
2024-01-03 12:14:41 -08:00
|
|
|
|
2024-01-03 08:17:24 -08:00
|
|
|
## Enables receiving and spending Orchard funds.
|
|
|
|
orchard = ["dep:orchard"]
|
|
|
|
|
2024-01-03 12:14:41 -08:00
|
|
|
## Exposes APIs that are useful for testing, such as `proptest` strategies.
|
2022-06-07 04:35:53 -07:00
|
|
|
test-dependencies = [
|
2024-01-03 11:49:36 -08:00
|
|
|
"dep:proptest",
|
2024-01-03 08:17:24 -08:00
|
|
|
"orchard?/test-dependencies",
|
2022-06-07 04:35:53 -07:00
|
|
|
"zcash_primitives/test-dependencies",
|
2024-01-03 12:14:41 -08:00
|
|
|
"incrementalmerkletree/test-dependencies",
|
2022-06-07 04:35:53 -07:00
|
|
|
]
|
2024-01-03 12:14:41 -08:00
|
|
|
|
|
|
|
#! ### Experimental features
|
|
|
|
|
|
|
|
## Exposes unstable APIs. Their behaviour may change at any time.
|
2024-01-03 11:49:36 -08:00
|
|
|
unstable = ["dep:byteorder"]
|
2024-01-03 12:14:41 -08:00
|
|
|
|
|
|
|
## Exposes APIs for unstable serialization formats. These may change at any time.
|
2024-01-03 11:49:36 -08:00
|
|
|
unstable-serialization = ["dep:byteorder"]
|
2024-01-03 12:14:41 -08:00
|
|
|
|
|
|
|
## Exposes the [`data_api::scanning::spanning_tree`] module.
|
2023-09-15 12:37:10 -07:00
|
|
|
unstable-spanning-tree = []
|
2020-10-15 06:03:40 -07:00
|
|
|
|
2021-08-05 14:39:36 -07:00
|
|
|
[lib]
|
|
|
|
bench = false
|
|
|
|
|
2019-10-07 20:11:39 -07:00
|
|
|
[badges]
|
|
|
|
maintenance = { status = "actively-developed" }
|