librustzcash/zcash_client_sqlite/Cargo.toml

119 lines
3.7 KiB
TOML

[package]
name = "zcash_client_sqlite"
description = "An SQLite-based Zcash light client"
version = "0.9.0"
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
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
[dependencies]
zcash_address.workspace = true
zcash_client_backend = { workspace = true, features = ["unstable-serialization", "unstable-spanning-tree"] }
zcash_encoding.workspace = true
zcash_keys = { workspace = true, features = ["orchard", "sapling"] }
zcash_primitives.workspace = true
zip32.workspace = true
# Dependencies exposed in a public API:
# (Breaking upgrades to these require a breaking upgrade to this crate.)
# - Errors
bs58.workspace = true
hdwallet = { workspace = true, optional = true }
# - Logging and metrics
tracing.workspace = true
# - Serialization
byteorder.workspace = true
prost.workspace = true
group.workspace = true
jubjub.workspace = true
# - Secret management
secrecy.workspace = true
subtle.workspace = true
# - Shielded protocols
orchard = { workspace = true, optional = true }
sapling.workspace = true
# - Note commitment trees
incrementalmerkletree.workspace = true
shardtree = { workspace = true, features = ["legacy-api"] }
# - SQLite databases
# Warning: One of the downstream consumers requires that SQLite be available through
# CocoaPods, due to being bound to React Native. We need to ensure that the SQLite
# version required for `rusqlite` is a version that is available through CocoaPods.
rusqlite = { version = "0.29.0", features = ["bundled", "time", "array"] }
schemer = "0.2"
schemer-rusqlite = "0.2.2"
time = "0.3.22"
uuid = "1.1"
# Dependencies used internally:
# (Breaking upgrades to these are usually backwards-compatible, but check MSRVs.)
document-features.workspace = true
maybe-rayon.workspace = true
[dev-dependencies]
assert_matches.workspace = true
incrementalmerkletree = { workspace = true, features = ["test-dependencies"] }
shardtree = { workspace = true, features = ["legacy-api", "test-dependencies"] }
nonempty.workspace = true
proptest.workspace = true
rand_core.workspace = true
regex = "1.4"
tempfile = "3.5.0"
zcash_keys = { workspace = true, features = ["test-dependencies"] }
zcash_note_encryption.workspace = true
zcash_proofs = { workspace = true, features = ["bundled-prover"] }
zcash_primitives = { workspace = true, features = ["test-dependencies"] }
zcash_client_backend = { workspace = true, features = ["test-dependencies", "unstable-serialization", "unstable-spanning-tree"] }
zcash_address = { workspace = true, features = ["test-dependencies"] }
[features]
default = ["multicore"]
## Enables multithreading support for creating proofs and building subtrees.
multicore = ["maybe-rayon/threads", "zcash_primitives/multicore"]
## Enables support for storing data related to the sending and receiving of
## Orchard funds.
orchard = ["dep:orchard", "zcash_client_backend/orchard", "zcash_keys/orchard"]
## Exposes APIs that are useful for testing, such as `proptest` strategies.
test-dependencies = [
"incrementalmerkletree/test-dependencies",
"zcash_primitives/test-dependencies",
"zcash_client_backend/test-dependencies",
"incrementalmerkletree/test-dependencies",
]
## Enables receiving transparent funds and sending to transparent recipients
transparent-inputs = [
"dep:hdwallet",
"zcash_keys/transparent-inputs",
"zcash_client_backend/transparent-inputs"
]
#! ### Experimental features
## Exposes unstable APIs. Their behaviour may change at any time.
unstable = ["zcash_client_backend/unstable"]
[lib]
bench = false