diff --git a/Cargo.lock b/Cargo.lock index 98437a4d53..dff0bff627 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3084,6 +3084,14 @@ version = "2.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "213b7324336b53d2414b2db8537e56544d981803139155afa84f76eeebb7a546" +[[package]] +name = "zcash" +version = "0.1.0" +dependencies = [ + "document-features", + "zcash_primitives", +] + [[package]] name = "zcash_address" version = "0.3.2" diff --git a/Cargo.toml b/Cargo.toml index 9e5918c204..d6e6b09d53 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -6,6 +6,7 @@ members = [ "components/zcash_encoding", "components/zcash_protocol", "components/zip321", + "zcash", "zcash_client_backend", "zcash_client_sqlite", "zcash_extensions", diff --git a/zcash/CHANGELOG.md b/zcash/CHANGELOG.md new file mode 100644 index 0000000000..64b7621463 --- /dev/null +++ b/zcash/CHANGELOG.md @@ -0,0 +1,13 @@ +# Changelog +All notable changes to this library will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this library adheres to Rust's notion of +[Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [Unreleased] + +## [0.1.0] - 2024-07-15 +Initial release that re-exports other crates. Expect that the API surface of +this crate will change significantly in future releases. +MSRV is 1.70.0. diff --git a/zcash/Cargo.toml b/zcash/Cargo.toml new file mode 100644 index 0000000000..1249495fe9 --- /dev/null +++ b/zcash/Cargo.toml @@ -0,0 +1,33 @@ +[package] +name = "zcash" +version = "0.1.0" +authors = [ + "Jack Grigg ", +] +edition.workspace = true +rust-version.workspace = true +description = "Zcash Rust APIs" +readme = "README.md" +homepage = "https://github.com/zcash/librustzcash" +repository.workspace = true +license.workspace = true +categories.workspace = true + +[dependencies] +# Dependencies exposed in a public API: +# (Breaking upgrades to these require a breaking upgrade to this crate.) +zcash_primitives.workspace = true + +# Dependencies used internally: +# (Breaking upgrades to these are usually backwards-compatible, but check MSRVs.) +# - Documentation +document-features.workspace = true + +[features] +default = ["multicore"] + +## Enables multithreading support for creating proofs. +multicore = ["zcash_primitives/multicore"] + +## Enables use of the transparent payment protocol for inputs. +transparent-inputs = ["zcash_primitives/transparent-inputs"] diff --git a/zcash/README.md b/zcash/README.md new file mode 100644 index 0000000000..d741b3c800 --- /dev/null +++ b/zcash/README.md @@ -0,0 +1,23 @@ +# zcash + +This library exposes APIs for working with the Zcash ecosystem. + +It currently just re-exports the APIs of other crates. Expect that the API +surface of this crate will change significantly in future releases. + +## License + +Licensed under either of + + * Apache License, Version 2.0, ([LICENSE-APACHE](../LICENSE-APACHE) or + http://www.apache.org/licenses/LICENSE-2.0) + * MIT license ([LICENSE-MIT](../LICENSE-MIT) or http://opensource.org/licenses/MIT) + +at your option. + +### 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. diff --git a/zcash/src/lib.rs b/zcash/src/lib.rs new file mode 100644 index 0000000000..a10121533d --- /dev/null +++ b/zcash/src/lib.rs @@ -0,0 +1,14 @@ +//! *Zcash Rust APIs.* +//! +//! ## Feature flags +#![doc = document_features::document_features!()] +//! + +#![cfg_attr(docsrs, feature(doc_cfg))] +#![cfg_attr(docsrs, feature(doc_auto_cfg))] +// Catch documentation errors caused by code changes. +#![deny(rustdoc::broken_intra_doc_links)] +#![deny(missing_docs)] +#![deny(unsafe_code)] + +pub use zcash_primitives as primitives;