Cargo Features

[dependencies]
pczt = { version = "0.2.1", default-features = false, features = ["std", "orchard", "sapling", "transparent", "zcp-builder", "io-finalizer", "prover", "signer", "spend-finalizer", "tx-extractor"] }
default = std

The std feature is set by default whenever pczt is added without default-features = false somewhere in the dependency tree.

std default = document-features
orchard io-finalizer? signer? tx-extractor?

Enables functionality that requires Orchard protocol types.

Enables ff, nonempty, orchard, pasta_curves, and zcash_protocol

nonempty:

- Orchard

sapling io-finalizer? signer? tx-extractor?

Enables functionality that requires Sapling protocol types.

Enables bls12_381, ff, jubjub, redjubjub, sapling-crypto, zcash_note_encryption, and zcash_protocol

bls12_381:

- Sapling

transparent io-finalizer? signer? spend-finalizer? tx-extractor?

Enables functionality that requires Zcash transparent protocol types.

Enables secp256k1 ^0.29, zcash_transparent, and zcash_protocol

secp256k1:

Payment protocols
- Transparent

zcp-builder

Enables building a PCZT from the output of zcash_primitives's Builder::build_for_pczt.

Enables zcash_primitives and zcash_protocol

io-finalizer = orchard, sapling, transparent

PCZT roles behind feature flags

These roles require awareness of at least one payment protocol's types in order to function.

Enables the I/O Finalizer role.

Enables zcash_primitives

Affects roles::io_finalizer

prover

Enables the Prover role.

Enables rand_core ^0.6, temporary-zcashd of optional sapling-crypto

Affects roles::prover

signer = orchard, sapling, transparent

Enables the Signer role.

Enables blake2b_simd, rand_core ^0.6, and zcash_primitives

Affects roles::signer

spend-finalizer = transparent

Enables the Spend Finalizer role.

Affects roles::spend_finalizer

tx-extractor = orchard, sapling, transparent

Enables the Transaction Extractor role.

Enables rand_core ^0.6 and zcash_primitives

Affects roles::tx_extractor

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

document-features std

Enables document-features

- Documentation