github NethermindEth/nethermind 1.33.0
v1.33.0

one day ago

Release notes

This release brings over 341 improvements across 2012 files, ranging from performance enhancements, protocol upgrades, and node-runner improvements.

Nethermind UI (initial release)

image

This version introduces the first iteration of the Nethermind UI (#9090), providing an integrated interface to interact with and monitor your node. This marks the beginning of a more user-friendly experience for running Nethermind.

The UI is enabled when UI health checks UI is enabled: --healthchecks-enabled --healthchecks-uienabled

If you wish to expose only the UI and not RPC externally, then you can do this using capabilities on HTTP endpoints with the JsonRpc.AdditionalRpcUrls parameter.

For example, if your consensus client is running locally (running in the same instance) and your external IP is 10.4.0.4, then you can expose only the UI using just the http|health capabilities on the external IP binding and want it enabled at HTTP port 80, then binding the other capabilities needed by the consensus client to localhost:

--jsonrpc-additionalrpcurls "[http://10.4.0.4:80|http|health,http://localhost:8551|http;ws|net;eth;subscribe;engine;web3;client]"

This ensures you don't additionally enable your node as a public RPC endpoint while also enabling the UI.

Historical data live pruning

We’ve added automatic history pruning capabilities (#8040), giving operators the ability to keep disk usage under control by pruning historical chain data as the node runs. This feature is disabled by default but can be enabled via configuration. It is an experimental feature, not yet recommended for use on production nodes.

History pruning can be enabled by passing the flag History.Pruning=UseAncientBarriers. This will automatically prune any blocks older than the ancient barriers cutoff.

Alternatively, pruning can be enabled in rolling window mode with the flag History.Pruning=Rolling. This will prune any blocks older than 82125 epochs, which is around 1 year on the Ethereum Mainnet. The specific number of epochs can be configured with the flag `--history-retentionepochs ' -- the number of epochs must be a minimum of 82125.

History pruning can be disabled with the flag --history-pruning disabled -- currently this is the default behaviour, but this may change in the future.

Peering improvements for OP Stack

Several improvements were made to Optimism and OP Stack, including:

  • better handling of finalized/safe blocks #8658
  • a dedicated optimism RPC namespace #8667
  • refined peer management to improve stability and sync performance #8684, #8960

Performance improvements

A wide range of EVM and networking optimizations were introduced, including:

  • Reduced allocations in opcode execution #8687, #8740 and transaction sender recovery #8781, #8824.
  • Warmup and precomputation improvements for EVM instructions #8699, #8836.
  • Faster logging and RPC handling #8879, #8976.
  • RocksDB upgrades and optimizations #8640, #9059.

These changes collectively reduce CPU and memory usage while improving throughput and responsiveness.

Other improvements

Additionally, this release includes important fixes and feature updates:

  • EIP implementations:
    • EIP-7823: Gas accounting #8649
    • EIP-7825: Transaction gas limit cap #8663
    • EIP-7883: ModExp changes #8489, #8964
    • EIP-7907: Contract code size metering #8845
    • EIP-7910: eth_config #8956
    • EIP-7918: Blob base fee updates (#8656, #8935
    • EIP-7934: Execution block size limit #8815
    • EIP-7939: CLZ instruction #8759
    • EIP-7951: RIP-7212 renamed & enabled in Osaka #8753
  • Consensus layer & OP-CL: Split finalized/safe blocks #8658, new RPC methods for Taiko and OP #8874, and refined health checks #8755.
  • Discovery & peering: Faster removal of inactive peers #9037, improved gossip prioritization for peers on the same fork #9043, and fixes for discv4/discv5 edge cases #9046, #9113.
  • Testing & tooling: Revamped Hive/Assertoor test integrations #8711, #8862, new worldstate benchmarks #9051, and initial support for HTML and Grafana reporting #9074, #8960.

What's Changed

New Contributors

Full Changelog: 1.32.4...1.33.0

Don't miss a new nethermind release

NewReleases is sending notifications on new releases.