github NethermindEth/nethermind 1.17.0-unstable
v1.17.0-unstable

latest releases: 1.29.1, 1.29.0, 1.29.0-rc...
pre-release21 months ago

Release notes

In this release, you can find the first version of withdrawals which is currently used on the Zhejiang network (configs are added in this release, check below for more details.
Also, there are plenty of performance/stability improvements to make our node faster and even more predictable.

Additionally, Sepolia configs including timestamp for Shanghai hardfork are added. This version is mandatory for those who have a node running on Sepolia - previous versions would not work properly in there.
Sepolia Shapella hardfork to happen at: 2/28/2023, 4:04:48 AM UTC

Shanghai

  • Withdrawals implementation ready and under testing on Zhejiang public testnet. [#4731][#5139]
  • engine_getPayloadBodiesByHashV1 and engine_getPayloadBodiesByRangeV1 adjusted to the latest spec. [#5210]
  • Configs for Zhejiang network (Shanghai public testnet). [#5240]
    Here is a tweet from our core dev @MarekM25 about how to use it and start experimenting with Post-Shapella testnet today!
    https://twitter.com/M25Marek/status/1623675365569753091
  • Unify Engine API failure responses. [#5154]
  • Fixes for EIP-3860 [#5081] [#5147]
  • Introduced null value for latestValidHash when a latest VALID ancestor is unknown + makes semantically equal response with CLs for engine_newPayloadV1. [#5203]
  • Implemented engine_exchangeCapabilities method as specified in the spec. [#5212]
  • Integrate engine_exchangeCapabilities in health-checks (Issue #5185) [#5244]

Proto Danksharding

  • Added the possibility to set different chainId and networkId in chainspec. [#4850]
  • Limit size of TransactionMessage by data size instead of tx count. [#4917]
  • Added specification, configs, new transaction type and header fields. [#4867]
  • Added DATAHASH opcode. [#4894]
  • Added Point evaluation precompile for EIP-4844. [#4890]

JSON-RPC

  • trace_block Add zero reward post-merge similarly to pre-merge (Issue #4616). [#5054]
  • Reduced RAM consumption for trace_block. [#5090]
  • Increase JsonRpc.MaxBatchSize to 1024. Together with Prysm team we noticed, that there is a small issue where Prysm can send a little bit more than 1000 requests in single batch so we want to adjust that behavior for them until PR: prysmaticlabs/prysm#11982 will be released. [#5286]

Sync & Networking

  • Fix edge case on BeaconHeaders stage causing sync to hang until a better peer is found. [#5102]
  • Improvements of OldHeaders processing on node restart. [#5112][#5119]
  • Fixes node disconnection from peers due to error in initial sync, specifically empty receipt received. [#5120]
  • Added session direction to sync peer report. It simplifies the information if the peer is an incoming or outgoing connection. [#5258]
  • Fix establishing a connection on eth/67 [#5113]
  • Fix edge case when transitioning from fast sync [#5146]

TxPool

  • Fix edge case scenario with Nonce incrementation when eth_sendTransaction is executed multiple times. (Issue #4845). [#4926]

Configs

  • Updated Chiado bootnodes. [#5239]
  • Removed Kiln testnet configs. [#5181]
  • Removed sokol chain and all related items/tests/configs/chainspecs. [#5243]
  • Sepolia Shanghai configs added. Hardfork on Sepolia chain will happen at 2/28/2023, 4:04:48 AM UTC. [#5280]

Performance

  • Again great performance improvements by @benaadams : [#5186][#5196][#5206][#5216][#5251]
  • Force garbage collections when visiting state trie to reduce memory pressure e.g. in FullPruning (Issue #4698). [#4699]
  • Force garbage collections after finishing sync stages to reduce memory pressure [#5089]
  • Reduce memory allocations when serving headers, bodies and receipts [#5145]
  • Limit memory allocations in networking code on CPU's with high core counts [#5236]
  • Other code optimizations [#5213][#4623]

AuRa

  • Fix issue when AuRa validators sometimes forked off the chain on restarts [#4679]

We'd love to hear from you, so if you encounter an issue or have any feedback, please open an issue or contact us on Discord.

Don't miss a new nethermind release

NewReleases is sending notifications on new releases.