The Zcash Foundation is pleased to announce the release of Zebra 4.0.0. This release focuses on improving observability, streamlining operations, and enhancing developer experience.
What’s New in Zebra 4.0.0
⤷ Better Observability and Tracing
We’ve significantly improved the local development experience with new observability infrastructure:
- Grafana Auto-Provisioning: Automatic datasource configuration with fixed UIDs for consistent development environments
- AlertManager Integration: Built-in alerting capabilities for monitoring critical metrics
- Improved Docker Compose Setup: Streamlined local testing and development workflows
Additionally, Zebra now includes comprehensive distributed tracing support through OpenTelemetry integration, enabling operators to visualize request flows through the node and monitor RPC performance. This feature will make it significantly easier to:
- Diagnose performance bottlenecks in real-time
- Track request paths through the system
- Monitor RPC call latency and throughput
- Identify optimization opportunities
The OpenTelemetry integration is feature-gated and can be enabled based on your operational needs. Traces can be exported to Jaeger and other compatible backends for detailed visualization and analysis.






These improvements make it easier than ever to contribute to Zebra and test changes in a production-like environment.
⤷ Configuration and Compatibility Improvements
Flexible TOML Configuration: Zebra now accepts TOML configuration files, regardless of file extension. Previously, valid TOML files with extensions like .conf would cause the node to exit, even when properly formatted. This change improves compatibility with various deployment scenarios and configuration management tools.
RPC Compatibility Enhancements: The getinfo RPC method now returns the errorstimestamp field as an i64 to match zcashd behavior, improving compatibility with existing tools and clients that interact with both implementations.
⤷ Performance and Infrastructure Updates
Docker Build Optimizations: We’ve resolved disk space issues in Docker builds by implementing configurable larger runners for CI/CD workflows. This ensures more reliable and faster container builds, particularly beneficial for automated deployments.
Updated Checkpoints: The release includes fresh checkpoint data to accelerate initial block synchronization for new nodes.
Dependency Updates: All dependencies have been updated to their latest compatible versions, including security patches and performance improvements.
Breaking Changes
While Zebra 4.0.0 maintains backward compatibility for most use cases, please note:
- Configuration files are now strictly parsed as TOML format regardless of extension
- The
getinfoRPC method now returns theerrorstimestampfield as ani64to matchzcashdbehavior
Acknowledgments
Thank you to everyone who contributed to this release: @gustavovalverde, @conradoplg, @emersonian, @syszery, and all the community members who reported issues and provided feedback. Your contributions make Zebra better for the entire Zcash ecosystem.
Getting Started with Zebra 4.0.0
Installation
The easiest way to get started with Zebra is using Docker:


Or build from source:


Enabling OpenTelemetry Tracing
To enable distributed tracing, build with the observability features:


Then configure your OpenTelemetry collector endpoint in your Zebra configuration file.
Documentation
For detailed documentation on configuration, deployment, and advanced features, visit the Zebra Book.
Get Involved
Zebra is an open-source project and we welcome contributions from the community:
Zebra is the Zcash Foundation's independent, consensus-compatible implementation of a Zcash node, written in Rust for performance and safety.
