Skip to content

Releases: hl-archive-node/nanoreth

nb-20260613

12 Jun 23:08
0718e6b

Choose a tag to compare

Upgrade priority: High if you use --hl-node-compliant-multiplexed (?hl=true/false), Low otherwise.

This release fixes log-related APIs not correctly respecting the ?hl parameter (#140: eth_getLogs, ...).

What's Changed

  • fix: honor per-request ?hl= in log filter and pubsub methods by @sprites0 in #141

Full Changelog: nb-20260606...nb-20260613
Current Rust LoC: 12777 lines (+51)

nb-20260606

06 Jun 07:27
1e6194b

Choose a tag to compare

Upgrade priority: High

This release includes the long-term fix for the issue addressed in nb-20260604.

The previous release contained a temporary testnet-specific workaround; this release introduces a fix that is also applicable to mainnet. There are currently no known semantic differences affecting mainnet, but future network upgrades may make this behavior relevant. Upgrading in advance is recommended.

What's Changed

  • feat: use upstream from for system-tx sender by @sprites0 in #138

Full Changelog: nb-20260604...nb-20260606
Current Rust LoC: 12726 lines (+134)

nb-20260604

03 Jun 20:31
dad836e

Choose a tag to compare

Upgrade priority: High for testnet, Low for mainnet (only patches testnet path)

This release restores testnet synchronization. Thanks to everyone who helped investigate and resolve the issue 🙏

What's Changed

  • fix: Fix testnet token mapping and support tunable options (backoff, custom urls) by @sprites0 in #136
  • fix(testnet): recover real system-tx sender by @sprites0 in #137

Full Changelog: nb-20260518...nb-20260604
Current Rust LoC: 12592 lines (+419)

nb-20260518

18 May 18:11
02ae84c

Choose a tag to compare

Upgrade priority: Medium

  • Required only when using WS subscriptions with the multiplex option enabled (?hl=true/false) and trace_blocks
  • Not required otherwise

This is a regression fix from nb-20260516 (#135).


What's Changed

  • fix(multiplex): Use the same subscription id provider as reth by @sprites0 in #131
  • Fix trace_block HL precompile setup by @sprites0 in #133
  • Revert block source startup retry changes by @sprites0 in #135

Full Changelog: nb-20260516...nb-20260518

nb-20260516

16 May 22:54
0b19ab5

Choose a tag to compare

Upgrade priority: Medium

  • Required only when using WS subscriptions with the multiplex option enabled (?hl=true/false) and trace_blocks
  • Not required otherwise

What's Changed

New Contributors

Full Changelog: nb-20260416...nb-20260516
Current Rust LoC: 11169 lines (+251)

nb-20260416

16 Apr 06:30
b9be761

Choose a tag to compare

Upgrade priority: High for testnet, Low for mainnet

  • EDIT: Optional/Low for both networks

This release fixes testnet sync past the 50927214–50929512 block range. Mainnet is unaffected (also not affected in long term), so upgrading is optional unless you run a testnet node.

Testnet

  • Fix sync failure caused by missing blocks in the 50927214–50929512 range
  • Recovered blocks validated via blockhash chain and system tx sender nonces

Build & CI

  • Pin all GitHub Actions to commit SHAs for supply-chain safety

What's Changed

  • fix: hardcode testnet gap blocks in BlockStore by @sprites0 in #129

Full Changelog: nb-20260316...nb-20260416
Current Rust LoC: 10918 lines (+49)

nb-20260316

16 Mar 14:44
nb-20260316
8de3b59

Choose a tag to compare

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
    • Another approach (#111) also received contributions - for now #115 is chosen for usability considerations - by @wesraph
  • CI: Add release build workflow for amd64 (#108, #126) - by @ifdario, @sprites0
    • Now release page have x64 build!

Thanks @Quertyy @ifdario @AlliedToasters @wesraph 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)

nb-20251105

05 Nov 08:04
524db5a

Choose a tag to compare

Upgrade priority: Medium

  • Upgrade necessary for testnet (#98, #102, #103), optional for mainnet
  • Deprecates migration check if CHECK_DB_MIGRATION env is not set (#100)
  • Does not crash on start when testnet is down for upgrade (#72, #105)
  • Changes default --discovery.addr and --listener.addr to localhost with random port, since it's not needed in nanoreth. (#104)
    • Use --allow-network-overrides to enable overriding it via CLI parameters.

What's Changed

  • fix(migrate): Fix wrong chunk ranges by @sprites0 in #94
  • fix: Support certain types of system tx by @sprites0 in #98
  • feat: Place migrator behind CHECK_DB_MIGRATION env by @sprites0 in #100
  • fix: Fix testnet transaction types by @sprites0 in #102
  • fix: Adjust transaction parser by @sprites0 in #103
  • feat: Default to localhost-only network, add --allow-network-overrides by @sprites0 in #104
  • feat: cache spot metadata in database to reduce API calls by @sprites0 in #105

Full Changelog: nb-20251013...nb-20251105
Current Rust LoC: 9863 lines

nb-20251013

13 Oct 06:21
eee6eeb

Choose a tag to compare

Upgrade priority: Medium

This release fixes a regression from the previous version where --hl-node-compliant caused eth_subscribe[type=logs] to behave as if the flag were not enabled.

What's Changed

  • fix: Prevent #89 from overriding --hl-node-compliant subscriptions by @sprites0 in #93

Full Changelog: nb-20251011...nb-20251013
Current Rust LoC: 9610 lines

nb-20251011

12 Oct 02:35
51924e9

Choose a tag to compare

Upgrade priority: Medium

This release fixes regression #89, which affected the eth_subscribe endpoint for newHeads (block head subscriptions, not event subscriptions). The issue caused the response to use the new header format—nesting standard fields under .inner and exposing hl-specific fields at the top level. The fix restores the previous format, which is the intended behavior.

Future releases will also adopt a new test suite to automatically cover all reported regressions, improving overall robustness and preventing similar issues.

What's Changed

  • fix: Convert header type for eth_subscribe by @sprites0 in #89
  • fix: Fix --debug-cutoff-height semantics by @sprites0 in #91

Full Changelog: nb-20251009-fix...nb-20251011
Current Rust LoC: 9608 lines