librustzcash/zcash_primitives
Jack Grigg 913aa0a988 zcash_client_backend: Correctly track heap usage of batch items
As of zcash/librustzcash#633, `SaplingDomain::IncomingViewingKey` now
allocates memory internally, and this memory persists as long as the
`BatchRunner` is alive. Now that we have decoupled the measurement of
heap usage for batch tasks from their internals, we can add bounds to
all of the generic parameters of `Batch` to enable correctly measuring
their actual heap usage.

We also add `DynamicUsage` impls for a bunch of `zcash_primitives` types
that will be used with `BatchRunner` (or its equivalent implementation
in `zcashd`) by callers.
2022-09-24 21:01:19 +00:00
..
benches zcash_primitives: Use prepared epk and ivk in Sapling note decryption 2022-09-15 03:40:45 +01:00
proptest-regressions Implement manual serialization for incremental Merkle tree components. 2021-08-05 09:32:44 -06:00
src zcash_client_backend: Correctly track heap usage of batch items 2022-09-24 21:01:19 +00:00
CHANGELOG.md zcash_client_backend: Correctly track heap usage of batch items 2022-09-24 21:01:19 +00:00
Cargo.toml zcash_client_backend: Correctly track heap usage of batch items 2022-09-24 21:01:19 +00:00
LICENSE-APACHE
LICENSE-MIT
README.md Address feedback about the use of "permissive". 2022-06-28 16:46:13 +01:00

README.md

zcash_primitives

This library contains Rust implementations of the Zcash primitives.

License

Licensed under either of

at your option.

Downstream code forks should note that 'zcash_primitives' depends on the 'orchard' crate, which is licensed under the Bootstrap Open Source License. A license exception is provided allowing some derived works that are linked or combined with the 'orchard' crate to be copied or distributed under the original licenses (in this case MIT / Apache 2.0), provided that the included portions of the 'orchard' code remain subject to BOSL. See https://github.com/zcash/orchard/blob/main/COPYING for details of which derived works can make use of this exception.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.