librustzcash icon indicating copy to clipboard operation
librustzcash copied to clipboard

Update bip0039 for Arti support in Zebra

Open emersonian opened this issue 9 months ago • 3 comments

Upgrading bip0039 to v0.12 in zcash_primitives resolves Zebra's ability to build with Arti (Tor) support.

Patch versions will need to be released of the following crates to simplify integration with Zebra:

  • zcash_primitives: v0.13.1
  • zcash_client_backend: v0.10.1 (depending upon zcash_primitives v0.13.1)
  • zcash_proofs: v0.13.1 (depending upon zcash_primitives v0.13.1)
  • zcash_script: v0.1.16 (depending upon zcash_primitives v0.13.1)

Demonstration of a working build

See ZcashFoundation/zebra#8328

emersonian avatar Apr 27 '24 06:04 emersonian

Also, as a side-note:

Patch versions will need to be released

As documented in the Cargo.toml that you edited, bip0039 is exposed in our API, and thus changing its left-most non-negative version integer is a SemVer-breaking change in Rust.

str4d avatar Apr 29 '24 14:04 str4d

@str4d zip339 is simply a reexport of the bip0039 crate, and nothing in librustzcash depends upon it. Also, given the extraction of zcash_keys, I don't think that it's appropriate for this to live in zcash_primitives any longer anyway. I recommend that we simply remove the zip339 module entirely, which then decouples the use of bip0039 in zcashd from any potential use in zebra.

nuttycom avatar May 07 '24 15:05 nuttycom

@emersonian instead of this, please just revert https://github.com/zcash/librustzcash/pull/424 instead. This will require a major version bump to zcash_primitives and downstream crates, so make sure to note the zip339 module as removed in the CHANGELOG so that we remember that a major version bump is required.

nuttycom avatar May 07 '24 23:05 nuttycom

Superceded by #1391.

daira avatar May 14 '24 09:05 daira