Zebra v1.0.0-alpha.7
Pre-release
Pre-release
mpguerra
released this
23 Apr 13:06
·
3073 commits
to main
since this release
Zebra's latest alpha continues our work on NU5/Orchard, and fixes some security and protocol correctness issues.
Zebra now has best-effort support for Apple M1 builds, and logging to systemd-journald.
Added
Network Upgrade 5
- Implement Sapling serialization in Transaction V5 (#1996, #2017, #2020, #2021, #2057)
- Draft RFC: Treestate management (#983)
Configuration and Logging
- Stop requiring a port for Zcash listener addresses (#2043)
- use the default port if there is no configured port
- Add journald support through tracing-journald (#2034)
- Zebra does not have any journald integration tests, so we will support it on a best-effort basis
Testing and Bug Reports
- Benchmark Block struct serialization code (#2018)
- Add the new commit count and git hash to the version in bug reports (#2038)
- Add branch, commit time, and build target to the panic metadata (#2028)
- Automatically update app version from crate version (#2028)
Changed
Supported Platforms and Dependencies
- Update dependencies to support Apple M1 (#2026)
- Zebra does not have any Apple M1 CI, so we will support it on a best-effort basis
- Bump ripemd160 from 0.8.0 to 0.9.1 and remove trait import (#2027)
- Update to vergen 5 (#2029)
Refactors and Cleanups
- Refactor and document correctness for std::sync::Mutex in ErrorSlot (#2032)
- Refactor and document correctness for std::sync::Mutex (#2033)
- Make Zcash string serialization consistent with deserialization (#2053)
- clippy: make to_* methods take self by value (#2006)
Testing
- Speedup proptests for Chain struct in zebra-state (#2012)
Fixed
- Stop assuming there will always be a
.git
directory during builds (#2037) - Clarify CandidateSet state diagram (#2036)
Network Protocol
- Stop panicking when Zebra sends a reject without extra data (#2016)
- Switch to an async mutex for handshake nonces (#2031)
Testing and Logging
- Fix a test failure due to ' debug format changes in Rust (#2014)
- Fix Windows CI LLVM paths (#2026)
- Clarify a duplicate log message (#2054)
Security
Network
- Avoid a single peer providing a majority of Zebra's peer addresses (#2004)
- Make sure handshake version negotiation always has a timeout (#2008)
- Make sure each peer heartbeat has a timeout (#2009)
Memory Usage
- Implement vector deserialisation limits for new Transaction::V5 types (#1996)