github status-im/nimbus-eth2 v1.5.0

latest releases: nightly, v24.3.0, v24.2.2...
2 years ago

Nimbus v1.5.0 is a medium-urgency but mandatory upgrade which adds support for the upcoming beacon chain Altair hard-fork.

Please upgrade at your earliest convenience - before the 27th of October.

N.B You must upgrade before October 27th in order to follow the mainnet beacon chain. Failure to do so will result in downtime penalties.

This is the first hard fork for the beacon chain, and while a significant amount of testing has been conducted in the run up to this release, we recommend users regularly monitor our announcement channels (discord and/or the newsletter) for potential updates.

To celebrate the feature complete release candidate of our REST API, we've opened up the ports on some of our fleet nodes - don't do this at home ;)

In order to interact with these, you should point your apps and tools to:

Note that right now these are very much unstable testing instances. They may be unresponsive at times - so please do not rely on them for validation. We may also disable them at any time.


Notable changes

  • Support for the Altair hard fork and the latest Ethereum consensus spec (v1.1.1)

  • Our REST API is now feature complete, supporting the full Beacon API specification. This API should not be exposed to the public Internet as it includes multiple endpoints which could open your node to denial-of-service (DoS) attacks.

    • Known limitations: To use the REST API with a validator client, you need to enable the --subscribe-all-subnets option. This requirement will be removed in future versions.
  • A new experimental --num-threads=X option allows Nimbus to take advantage of multiple CPU cores when verifying attestations. Set it to 1 to use one worker thread, 2 for two worker threads, etc. The default value is set to 1 in this release, but future versions will set it to 0 (this tells the client to use as many worker threads as there are CPU cores available). N.B .enabling anything other than 1 is considered experimental at this stage.

  • Improved peer discovery logic that ensures good connectivity to all gossip subnets.

  • A new version metric that makes it easy to keep track of client upgrades within Grafana dashboards.

  • New metrics libp2p_peers_identity, libp2p_peers_traffic_read_total, libp2p_peers_traffic_write_total, subdivided through Prometheus labels by the client type of the peer (i.e. nimbus, prysm, teku, lodestar or lighthouse).

  • BLST has been upgraded to the latest version (v0.3.5).

  • The --network option now accepts a directory with custom network metadata in the format of the eth2-testnets repository. The SECONDS_PER_SLOT configuration value remains the only setting that must be supplied at compile-time through the -d:SECONDS_PER_SLOT=X nim compilation flag.

Urgency guidelines

low-urgency: update at your own convenience, sometime within our normal update cycle of two weeks

medium-urgency: may contain an important stability fix, it is better to update sooner rather than later

high-urgency: update as soon as you can, this is a critical update required for Nimbus to function correctly

Binaries

Scroll to the bottom of this release and click on the tar.gz which corresponds to your OS and architecture: unpack the archive, read the README and run the binary directly (or through one of our provided wrapper scripts).

We've designed the build process to be reproducible. In practice, this means that anyone can verify that these exact binaries were produced from the corresponding source code commits. For more about the philosophy and importance of this feature see reproducible-builds.org.

For instructions on how to reproduce the build, see the included "README.md" file. See pre-built binaries documentation for more.

A note on peer count

If you don't allow for incoming connections, your peer count will be lower due to a new peer selection strategy. If you do have incoming connections set up, it's good practice to verify that all is working as expected - See the port-forwarding section of our guide for how to do this (metrics will tell you if you're actually getting connections).

To clarify, previously we would connect to spare peers for good measure - now, we delay setting up the connections until we need them, and end them if we don't.

SHA512 checksums

# Linux AMD64
d2871373e46689cef8b01a400110b6be4d179f415a1d218d384a252bc057b3dbd3ca842807f6292490df8800e3bcd8111206988b862bef218a46e5baeb276d5e  nimbus_beacon_node
# Linux ARM64
5f8135a727f7714613b3720e2fd4440edc85fa0080a6bef808a75009fa9bf59e3b060a119d7afabf11c0e27df87689a928f4d759dd5f094772051d52291276cc  nimbus_beacon_node
# Linux ARM
0cd4c3a45138bf22bee42b9cbbb78149d5ed1af425d3fa1aea02bc16ea01324f780a34f97b8ac0b82d31a5295785c735c3a2087fb2c4028f3e046adef4259d15  nimbus_beacon_node
# Windows AMD64
6a5732a9554edcdc8007a7b8696d20bb9d5fb4af9fcee5e4d8a07b627999ad03b7aa39ed9d346dcb1f7cb7b779da6d7e9bee6be3431873eab0efcf1599edcd24  nimbus_beacon_node
# macOS AMD64
956e14249580f75b8b15b1cef292beee84d1699b924878812da864f080ca53bbfad6ef2f9994f63df7a0c6a8829eb3da7c4c01393d6ac71842f80dd4c0d414b4  nimbus_beacon_node
# macOS ARM64
1dfd5a3e0f638ead603243479ff9278229c9bb6a3180ad242f46a5a16ae82752d6c517b23ea9b60f301beb5945f0f422d6c5cbb53c36c19364c1209fd5dc8d5d  nimbus_beacon_node

Don't miss a new nimbus-eth2 release

NewReleases is sending notifications on new releases.