We have released Zebra v2.4.2. Included are security fixes, bug fixes, and new features. If you are currently using Zebra, please take note of any breaking changes. For full details, please refer to the release notes.
We had to pull an earlier release due to a database upgrade bug that was introduced in v2.4.0. If you have upgraded to 2.4.0, your Zebra address index has become corrupted. This does not affect consensus, but will make the RPC interface return invalid data for calls like getaddressutxos
and other address-related calls. To resolve this, please see the release notes for full details.
In this release we Implemented deserialization for Zebra’s block and transaction types, added a new gRPC method for listening to changes in the mempool. We’ve done a lot of work on RPC methods, including adding some missing fields to RPC outputs, introducing new fields and creating new methods such as invalidateblock
and reconsiderblock
.
The zebra_network::Config type now uses IPv6 as the default listen address, and we support configuring shielded addresses for mining.
We have made several important bug fixes, including preserving the order of RPC output fields, correctly setting some fields in transaction outputs, and allowing local outbound connections on Regtest.
Breaking Changes
Major Database Upgrade
This release includes a significant database upgrade that will automatically move your existing database from the v26/ folder to a new v27/ folder. Please note that downgrading is not possible. To maintain the option of reverting to the previous version in case of unexpected issues, we strongly recommend backing up the v26/ folder before running the upgraded Zebra. The upgrade process may take several hours, especially on smaller machines. During this time, Zebra will continue to operate normally, but some RPC responses may return empty or inaccurate data.
If you used the `ldb checkpoint` tool for database backups, please be advised that this tool is no longer supported and will corrupt any databases used by Zebra v2.4.0 or later releases.
Removal of Deprecated Config Options
The `debug_like_zcashd` config option for mining has been removed.
Changes to Response Formats
The cm_u
field byte order has been fixed in the getrawtransaction
and getblock
responses. We’ve removed the zebra-scan
and zebra-grpc
crates as they are no longer supported. There was a consensus rule violation in V5 coinbase transactions at low heights, which has now been resolved. This issue was limited to Regtest or custom testnets and has now been resolved.
Acknowledgments
A big thank you to all the contributors who made this release possible: @ala-mode, @arya2, @conradoplg, @elijahhampton, @gustavovalverde, @idky137, @mpguerra, @oxarbitrage, @sellout, @str4d and @upbqdn.