github hl-archive-node/nanoreth nb-20260316

11 hours ago

Upgrade priority: Low

This release introduces several improvements but contains no post-sync bug fixes, so upgrading is optional.

Fixes & Performance Improvements

  • Multiple reliability and performance fixes for initial sync
    • fix(sync): Resolve edge-case reliability issues with --local-ingest-dir (#112, #118, #122) and general sync reliability issues (#124) - by @AlliedToasters, @sprites0
    • perf(sync/s3): Use tokio::spawn for the S3 block source, resulting in a 1.2–10x performance improvement (#125) - by @sprites0
  • Improved error messages and docs (#117, #127) - by @AlliedToasters, @sprites0

New Features

  • eth_getBlockReceiptsWithSystemTx endpoint when --hl-node-compliant is enabled (#114) - by @Quertyy
  • --hl-node-compliant-multiplexed mode that supports ?hl=true and ?hl=false, allowing dynamic switching between non-HL-compliant (default) and HL-node-compliant RPC modes. See the README for details on --hl-node-compliant. (#123) - by @sprites0
  • RPC-based sync (#115) - requires an RPC-side flag - by @ifdario
  • CI: Add release build workflow for amd64 (#108, #126) - by @ifdario, @sprites0
    • Now release page have x64 build!

Thanks @Quertyy @ifdario @AlliedToasters for the contributions!

What's Changed

  • workflows: release build for amd64 by @ifdario in #108
  • fix(local-ingest): defer file rotation and rescan on rotation by @sprites0 in #112
  • feat(rpc): new eth_getBlockReceiptsWithSystemTx endpoint by @Quertyy in #114
  • Add RPC-based node-to-node block syncing by @ifdario in #115
  • fix(cli): validate init-state file paths to prevent cryptic directory error by @AlliedToasters in #117
  • fix(network): trigger pipeline with local block source by @AlliedToasters in #118
  • refactor(pseudo-peer): direct trusted peer + DB hash resolution by @sprites0 in #122
  • refactor: unified BlockStore for hash indexing and block caching by @sprites0 in #124
  • feat(rpc): per-request HL compliance multiplexing by @sprites0 in #123
  • perf(s3): use spawn-based fetcher for S3 block source by @sprites0 in #125
  • ci(release): create GitHub releases as drafts by @sprites0 in #126
  • docs: add per-request HL compliance multiplexing to README by @sprites0 in #127

New Contributors

Full Changelog: nb-20251105...nb-20260316
Current Rust LoC: 10869 lines (+974)

Don't miss a new nanoreth release

NewReleases is sending notifications on new releases.