Hiero Block Node 0.10.0 — A Modular Transformation 🚀
Hiero Block Node 0.10.0 introduces our modular, plugin-based architecture, giving teams a cleaner path to extend functionality while boosting flexibility, scalability, testability, and long-term maintainability. This redesign also paves the way for a vibrant ecosystem of community and third-party plugins.
New Features & Highlights
- Multi-Stream Publisher – BN now ingests streams from multiple sources simultaneously and automatically promotes the fastest one, cutting end-to-end latency for subscribers.
- Seamless Stream Switching – Subscribers can transition between live and historical streams (and back again) with zero disruption.
- S3 Cold Archive Plugin – Optional cloud storage for long-term, cold-archive redundancy (not meant to serve blocks directly).
- Messaging Facility – Core plugin delivering low-latency, high-throughput internal messaging, powered by the LMAX Disruptor.
- Refined Protobuf API – All BN API definitions now live in-repo, reorganized into clear, well-scoped services and cleaned up and updated for smoother integration.
- Testing Improvements – Expanded end-to-end coverage across key plugins, including block access, publisher, subscriber, verification, and server-health checks.
- CI / CD – Updated workflows to build and publish container images and Helm charts, making it easy to deploy the latest BN release.
What's Changed
🚀 Enhancements
- feat: Implement Cloud Archive Plugin by @jasperpotts in #1043
🐛 Bug Fixes
- chore: Cherry pick 1136 by @AlfredoG87 in #1140
🔨 Tests
- chore: Removal of SmokeTests Artifacts and GHA WF by @AlfredoG87 in #1061
- fix: hard shutdown of the producer causes exception when another is connected by @georgi-l95 in #1055
- test: Add subscriber plugin Tests by @georgi-l95 in #1076
📝 Documentation
- docs: Removed accidentally copied docs, and cleaned up obsolete naming in primary docs. by @jsync-swirlds in #1044
- chore: Update MAINTAINERS.md by @hendrikebbers in #1085
🔧 Improvements
- chore: Setup local copies of block node protobuf by @Nana-EC in #891
- chore: Cherry pick #1147 into
release/0.10
branch for0.10.0-rc3
and final RC version. by @AlfredoG87 in #1153
🔥 Breaking Changes
-
refactor: refactor to plugins and services by @jasperpotts in #890
-
protobuf changes: clients need to update their api definitions prior to use this version, also in some cases refactor current usage.
-
New Metrics dashboards are currently being updated and expected to be re-introduced over the next releases, however the platform remains functional and logs and metrics are being ingested and are visible when deploying with helm charts or running dev dev stack.
⬆️ Dependency Upgrades
- build(deps): bump org.junit.jupiter:junit-jupiter-api from 5.11.4 to 5.12.2 in /hiero-dependency-versions by @dependabot in #1014
- build(deps): bump stefanzweifel/git-auto-commit-action from 5.1.0 to 5.2.0 by @dependabot in #1045
- build(deps): bump swirldsVersion from 0.61.2 to 0.61.3 in /hiero-dependency-versions by @dependabot in #1050
- build(deps): bump io.grpc:protoc-gen-grpc-java from 1.71.0 to 1.72.0 in /hiero-dependency-versions by @dependabot in #1048
- build(deps): bump info.picocli:picocli from 4.7.6 to 4.7.7 in /hiero-dependency-versions by @dependabot in #1047
- build(deps): bump grpcIoVersion from 1.71.0 to 1.72.0 in /hiero-dependency-versions by @dependabot in #1046
- build(deps): bump pbjVersion from 0.11.0 to 0.11.1 in /hiero-dependency-versions by @dependabot in #1049
- build(deps): bump step-security/harden-runner from 2.11.1 to 2.12.0 by @dependabot in #1054
- build(deps): bump google-github-actions/auth from 2.1.8 to 2.1.9 by @dependabot in #1066
- build(deps): bump docker/build-push-action from 6.15.0 to 6.16.0 by @dependabot in #1065
- build(deps): bump actions/setup-python from 5.5.0 to 5.6.0 by @dependabot in #1063
- build(deps): upgrading Java to 21.0.7+6 due to an issue with M4 Apple Silicon. by @AlfredoG87 in #1098
Full Changelog: v0.9.0...v0.10.0