github getfloresta/Floresta v0.9.0
Floresta: v0.9.0

7 hours ago

Floresta v0.9.0 Release Notes

This release aligns Floresta’s networking layer with the BIP-0183 Utreexo messaging flow, improves reliability across networking and validation, and continues progress toward Bitcoin Core RPC compatibility. It also includes architectural improvements such as mempool modularization, shared validation and networking components, and broader portability support. Additionally, it introduces enhanced developer tooling, expanded test coverage, and performance improvements across synchronization and validation.

Networking and Synchronization

  • Implemented BIP-0183 Utreexo messaging for efficient proof-driven synchronization. (#581)
  • Smarter peer selection to prefer faster peers, improving initial block download performance. (#614, #823)
  • Batched outbound connections for faster network setup. (#865)
  • Improved peer discovery and AddrMan resilience under real-world conditions. (#637, #781)
  • Retry logic and robustness improvements, including handling dropped proof requests and stricter connection policies. (#871, #878, #880)

Validation and Consensus

  • Integrated Bitcoin Core validation tests to ensure consensus compatibility. (#582, #617)
  • Expanded RPC compatibility testing to compare Floresta and Bitcoin Core behavior. (#583, #587, #605)
  • Switched to libbitcoinkernel, replacing deprecated libbitcoinconsensus. (#713, #456, #841)
  • Validation safety improvements: added overflow checks and improved PoW fraud proof handling. (#747, #565)

RPC and Interface Improvements

  • Expanded Bitcoin Core-compatible RPCs including rescanblockchain and gettxout. (#558, #609, #648, #688, #683, #689, #728, #682, #788, #838, #806)
  • JSON-RPC v1 support for legacy clients. (#706)
  • Peer management RPCs for disconnecting peers. (#807)
  • Improved RPC safety and error handling. (#584, #759)

Developer Experience and Tooling

  • CI and code quality improvements, including doc checks, typo detection, and conventional commits enforcement. (#568, #602, #710, #715)
  • Improved development environment and Nix tooling support. (#594, #678, #661, #718, #741, #840)
  • New workflows and install tooling, including guided install scripts and just recipes. (#364, #613, #720)
  • Tracing-based logging for better observability. (#643)
  • Feature-combination testing to validate all feature flags. (#697)

Testing and Quality

Performance Improvements

  • Efficient peer selection and sync flow improvements. (#614, #823, #865)
  • Reduced recomputation in validation. (#845)
  • Dependency cleanup and optimization. (#564, #726)

Architecture and Refactors

  • Mempool modularization to prepare for transaction relay support. (#698, #803)
  • Codebase reorganization with standard Rust workspace layout. (#619, #664, #663)
  • Shared validation and networking logic to reduce duplication and improve consistency. (#518, #802)
  • Portability improvements for no_std support. (#876, #869, #825)
  • Dual licensing (MIT OR Apache-2.0). (#893)

Reliability and Bug Fixes

  • Reindex and state consistency fixes. (#562, #599, #691)
  • RPC and Electrum stability improvements. (#570, #560)
  • Connection handling fixes. (#644, #896)
  • Header sync and broadcast fixes. (#847, #830)
  • Logging and CLI improvements. (#559, #833, #601)

Documentation

  • RPC documentation system. (#521, #563)
  • Improved usage and testing docs. (#575, #618, #635)
  • Docker documentation. (#630)
  • Feature-gated documentation. (#567)

Thank you to everyone that made this release possible:

Antrikshgwal
Boris Nagaev
Chris Guimarães
Davidson Souza
Eduardo Augusto
Erick λ
j-moreno-c-r
jaoleal
JoseSK999
Josh Doman
Luca
lucasdbr05
lucasdcf
Luis Schwab
Moises Pompilio
qlrd
TheMhv

Don't miss a new Floresta release

NewReleases is sending notifications on new releases.