Release notes
Important
This release is mandatory for all Testnet nodes with the upcoming Fusaka fork.
It includes protocol changes and fixes required to remain in consensus on testnets.
- Holesky: 2025-10-01
- Sepolia: 2025-10-14
- Hoodi: 2025-10-28
Fusaka Testnets Support
- Implemented Osaka testnet forks (#9321).
- Updated RPC behavior:
eth_getBlobsV1
now returnsUnsupportedFork
post-Osaka (#9341). - Fixed
eth_config
: ensured ForkInfo is always initialized (#9233).
Stability & Sync Improvements
- Fixed snap sync edge cases and hanging on Sepolia (#9166, #9338).
- Corrected blockhash handling and rare invalid block cases (#9340).
- Improved cancellation handling and graceful shutdown for peers and sync dispatcher (#9173, #9174, #9175).
- Fixed concurrent storage root issues and reduced reliance on storage root reads (#9209, #9255).
- Ensured consistent receipts handling and transaction processed counters (#9231, #9270).
- Fixed issues in Taiko fee handling and default chains config (#9314, #9309).
- Fixed missed
SELFDESTRUCT
between transactions (#9343).
Node Improvements
- Reduced log noise from misbehaving peers and improved shutdown logging (#9156, #9177).
- Improved logging and config autocompletion (#9159).
- CLI now displays default values in help output (#9152).
- Improved deposit request validation (#9199).
- Enhanced Prometheus metrics in Kute tool (#9077).
- Better RPC alignment with Geth (#8951).
- Various performance optimizations: bloom filters, Patricia trie, TrieNode navigation, gas estimation (#9191, #9220, #9221, #9195, #9064, #9210).
These changes strengthen node stability, improve operator experience, and ensure readiness for the Fusaka fork on testnets.
What's Changed
- Correctly Wrap PrepareRequest exeception by @benaadams in #9144
- Only update metrics if not already updating metrics by @benaadams in #9142
- fix: BlockReceiptsTracer not forwarding stateRoot to inner tracers by @radik878 in #9129
- Make CLI show default values in help output by @Copilot in #9152
- Don't serialize UI events when no subscribers by @benaadams in #9150
- Fix storage range not retried on wrong order by @asdacap in #9154
- Reduce log noise from bad behaving peers by @benaadams in #9156
- Don't crash process in debug for Disposal warning messages by @benaadams in #9157
- Base mainnet bigger machine by @kamilchodola in #9158
- Improve logs and config autocompletion by @flcl42 in #9159
- Add a EIP and remove genesis number in superchain.py by @flcl42 in #9143
- Add Vector256 nibble conversion by @benaadams in #9153
- Use multi-arch vectors for Or and Xor; and expand to 512 bits by @benaadams in #9164
- Fix snap sync edge case due to unnecessary proof by @asdacap in #9166
- Auto-update fast sync settings by @core-repository-dispatch-app[bot] in #9147
- Use single event subscription for NewPayload by @benaadams in #9107
- Always output logs for processed blocks by @benaadams in #9170
- Handle Cancellation in SyncPeerPool.Allocate by @benaadams in #9173
- Extra validation in case
IForwardHeaderProvider
skip header. by @asdacap in #9171 - Cancel sync dispatcher loop on cancellation by @benaadams in #9174
- Handle peers shutdown more gracefully by @benaadams in #9175
- Remove unsupported Rlpx channel option by @benaadams in #9172
- More graceful shutdown logs by @benaadams in #9177
- Support OP Isthmus at the Genesis block by @emlautarom1 in #9163
- Explicitly pass parent header in header validator by @asdacap in #9168
- Cleanup/remove MaybeParent. by @asdacap in #9169
- Update OP Superchain chains by @core-repository-dispatch-app[bot] in #9148
- Align/refactor RPC output with geth by @ak88 in #8951
- Optimize Blooms by @benaadams in #9191
- Auto-update fast sync settings by @core-repository-dispatch-app[bot] in #9193
- Update OP Superchain chains by @core-repository-dispatch-app[bot] in #9194
- Per contract state by @asdacap in #9088
- Use genesis as the parent for the first block by @flcl42 in #9203
- Improve deposit request fields validation by @flcl42 in #9199
- Refactor/move main blockprocessing to di by @asdacap in #9130
- Start XDC project by @ak88 in #9206
- Optimize TrieNode.SeekChild by @benaadams in #9195
- Fix concurrent storage root issue by @asdacap in #9209
- Incorrect Gas Estimation by @svlachakis in #9064
- GasEstimator refactor post #9064 by @LukaszRozmej in #9210
- Added basic spec classes by @ak88 in #9212
- Await db blocks sync inside ReviewBlockTree by @deffrian in #9196
- Remove hardcoded AuRa release spec decorator to plugin module by @asdacap in #9167
- Auto-update fast sync settings by @core-repository-dispatch-app[bot] in #9217
- Update OP Superchain chains by @core-repository-dispatch-app[bot] in #9218
- Precompiles Extensibility through IReleaseSpec by @svlachakis in #9222
- feat: improve kute tool prometheus metrics by @cbermudez97 in #9077
- Hive to load blocks before RPC start by @flcl42 in #9224
- Refactor/move blocktree to di by @asdacap in #9230
- Admin Get Peers by @svlachakis in #9003
- Fix receipts deletion by @Marchhill in #9231
- ENR Support on admin_peers by @svlachakis in #9228
- Ensure ForkInfo is initialized by @flcl42 in #9233
- feat(block-validator): add debug logging message for MaxRlpBlockSize by @0xMushow in #9236
- Implement Xdc Header Decoder by @cicr99 in #9214
- Remove unused references for XDC by @ak88 in #9237
- Corrected sealing encoding XDC by @ak88 in #9238
- Removed xdc ref in core by @ak88 in #9242
- XDC : add extra needed types by @Demuirgos in #9219
- implement eth_getAccountInfo by @smartprogrammer93 in #9241
- Added filename in accumulator.txt and checksums.txt by @ndatta-nethermind in #9211
- Cleanup/remove nodecommit info by @asdacap in #9155
- Fix Nethermind UI when the app is run from non-app directory by @wurdum in #9248
- Fix simulate gas by @deffrian in #9244
- Cleanup/remove unnecessary method by @asdacap in #9249
- Tests for #9244 by @deffrian in #9250
- Perf/Patricia set by @asdacap in #9220
- Perf/Update Patricia.Get by @asdacap in #9221
- Auto-update fast sync settings by @core-repository-dispatch-app[bot] in #9252
- Update OP Superchain chains by @core-repository-dispatch-app[bot] in #9253
- Bump up the version to 1.34.0-unstable by @core-repository-dispatch-app[bot] in #9124
- Feature/arbitrum setup sync by @damian-orzechowski in #9232
- Reduce use of storage root slightly by @asdacap in #9255
- Clear storage cell / trie without reading cell's value first fails by @damian-orzechowski in #9239
- fix inconsistent merge plugin test by @asdacap in #9258
- Required decoders for XDC by @ak88 in #9257
- Perf/PatriciaTree bulk set by @asdacap in #9215
- Refactor/Use genesis loader in test by @asdacap in #9259
- Cleanup/move TransactionProcessed event to
IMainProcessingContext
by @asdacap in #9271 - Fix transaction processed counter not working by @asdacap in #9270
- Use extension method in some ITransactionProcessor interface method. by @asdacap in #9272
- Remove from GitHub Actions energyweb and volta chains sync by @stdevMac in #9256
- Genesis extensibility by @svlachakis in #9282
- Enable passing args to Nethermind when using sync chains pipeline by @flcl42 in #9184
- Update OP Superchain chains by @core-repository-dispatch-app[bot] in #9284
- Auto-update fast sync settings by @core-repository-dispatch-app[bot] in #9283
- Select proper block by @flcl42 in #9289
- Fix selfdestruct missed between transaction by @asdacap in #9343
- Fix Issues in Taiko Fee Handling by @dipkakwani in #9314
- Fix Taiko Chains Default Config by @dipkakwani #9309
- Make eth_getBlobsV1 return UnsupportedFork post Osaka by @LukaszRozmej in #9341
- Fix blockhash related random invalid block by @asdacap in #9340
- Fix MCL memory leak by @rubo in #9336
- Fix hanging sepolia snap sync by @asdacap in #9338
- Osaka testnet forks by @Marchhill in #9321
New Contributors
- @radik878 made their first contribution in #9129
- @0xMushow made their first contribution in #9236
- @ndatta-nethermind made their first contribution in #9211
Full Changelog: 1.33.1...1.34.0