Zebra 4.2.0 Expands RPC, Strengthens Mempool Policy

Zcash Tracker Logo
ZcashTracker
Zebra 4.2.0 Expands RPC, Strengthens Mempool Policy

Key Takeaways

  • Zebra 4.2.0, released by the Zcash Foundation, enhances RPC functionality and strengthens mempool policy compliance.
  • The update introduces the `gettxout` RPC method, allowing direct querying of unspent transparent outputs for wallet integrations.
  • `getblocksubsidy` now supports historical block subsidies and Founders Reward addresses, with a pending fix for accurate subtraction.
  • OpenRPC service discovery is implemented via the new `rpc.discover` endpoint, providing machine-readable API schemas and replacing the prior OpenAPI specification.
  • Mempool acceptance policies have been aligned closer to `zcashd` through the implementation of additional non-standard transaction filters.
  • The Python QA test framework has been relocated to a dedicated `integration-tests` repository.
The Zcash Foundation has released Zebra 4.2.0, a significant update that expands RPC functionality, strengthens mempool policy compliance, and adds deeper state querying capabilities. This release completes a strategic migration to OpenRPC for API documentation and relocates the Python QA test framework to a standalone `integration-tests` repository, enhancing developer experience and project organization.

RPC Enhancements

A key addition in Zebra 4.2.0 is the `gettxout` RPC method, which, alongside the new `OutputObject` response type, allows callers to directly query unspent transparent outputs. This capability is crucial for streamlined wallet integrations within the Zcash ecosystem. The `getblocksubsidy` RPC now supports historical data, including Founders Reward addresses and pre-Canopy block subsidies. A fix is pending to ensure the Founders’ Reward is accurately subtracted from the block subsidy in responses. Zebra now serves an `rpc.discover` endpoint, which returns a machine-readable OpenRPC schema describing all supported RPC methods. This schema is generated at build time using `build_rpc_schema()` via the new `openrpsee` dependency. This implementation allows clients and tooling to introspect Zebra’s RPC interface without relying on external documentation. This update replaces the previous OpenAPI specification, which was less suitable for JSON-RPC APIs, leading to the removal of the `openapi-generator` tool and its associated Cargo features from `zebra-utils`.

Mempool Policy Alignment

Get the Z-Brief

Zcash signal & market insights, without the noise.

🔒Zero spam. Zero sharing. Unsubscribe anytime.
Mempool acceptance policy has been brought closer to full parity with `zcashd`. This was achieved through the implementation of the remaining non-standard transaction filters, thereby strengthening Zebra’s compliance with network transaction rules.

Documentation and Community Contributions

Detailed documentation on Zebra's configuration, deployment, and advanced features is available through the Zebra Book. The project encourages community involvement, inviting users to report issues or suggest features on GitHub, participate in discussions on the Zcash Community Forum, and contribute code improvements via pull requests. New contributors can find suitable entry points by checking out "good first issues."