Releases: status-im/nimbus-eth2
Stateofus (v1.0.0)
As promised, a slightly more polished release before Mainnet launch ✨
Please make sure you update to this release before Eth2 genesis on
Tuesday (December 1 12:00:23 UTC), as it contains some important improvements.
We recommend monitoring the release channels (Discord, here) for new releases over the next 48 hours (i.e until genesis is over and things are stable).
New additions:
-
Updated list of bootstrap nodes for Mainnet.
-
Prometheus metrics for validator balances. The beacon node will also
display the total balance of all attached validators in the status
footer by default. -
deposits import
now automagically finds thevalidator_keys
directory
produced by theeth2.0-deposit-cli
if it is located in the same working
directory. -
A
deposits exit
command for submitting a voluntary validator exit. -
A
record
CLI command for inspecting and creating ENR records. -
An
--agent-string
option for specifying how Nimbus will present itself
in LibP2P messages. The default value is nownimbus
. -
New RPC calls to track node and config status. Specifically, a JSON-RCP
call for inspecting the active config preset (get_v1_config_spec
).
We've fixed:
-
Inaccurate peer counts (an occasional mismatch between the number of
syncing peers and GossipSub peers) -- the default peer limit has been
increased to maintain a healthy gossip mesh. -
High bandwidth usage of GossipSub (due to sub-optimal caching and lack
of limits in the IWANT/IHAVE exchange messages) -- we're now using the
latest spec GossipSub parameters. -
High sync memory footprint -- we've reduced the number of sync workers
from 20 to 10 (note, this should not affect sync speed).
Stay updated 🙏
If you're building Nimbus from source, to update (from master
) run:
git pull && make update
Followed by
make nimbus_beacon_node
As usual, see the Nimbus book for the latest documentation updates. In particular we've pushed a significant update to our Raspberry Pi guide (we now recommend using a 64-bit OS and an Enterprise grade SSD), added a page on Mainnet recommendations for Pi users, a page on voluntary exits, and documented our new simplified key-importing process.
v0.6.6 (hope)
New additions:
- New RPC APIs for inspecting the internal state of the Eth1 monitor.
We've fixed:
-
A fork-choice issue causing Nimbus to get stuck on a particular slot.
-
A logic error causing Nimbus to vote for an incorrect Eth1 block.
-
A crash during initialization when the web3 provider refuses
to serve data (for example, when a request quota has been exceeded).
Notes:
-
This release takes a bit longer to start than usual - this will be addressed in the next release
-
To update to the latest version, run:
git pull && make update
Followed by
make nimbus_beacon_node
(If your beacon node is already running, you'll need to disconnect -- Ctrl+C
-- and reconnect for the changes to take effect)
Seen the Nimbus book for more.
v0.6.4 (hope)
New additions:
-
Support for the Pyrmont testnet.
-
The PCRE library is no longer needed to build Nimbus.
-
Sensitive files such as keystores are now accessible only to the
user of the beacon node on POSIX systems (the group rights have
been dropped).
We've fixed:
-
An issue preventing blocks from being downloaded when the client goes
out of sync. -
Resource leaks that occasionally led to a reduction in network activity (caused by a build-up of malfunctioning peer connections).
v0.6.2 (hope)
A bugfix release addressing issues discovered in the Toledo network.
New features include:
-
GossipSub 1.1
-
The beacon node status bar (footer) now contains a
time-left-until-synced estimate. -
A JSON-RPC method
setLogLevel
for dynamically changing the
log level of selected components at run-time. -
The ability to launch Nimbus with a partially-synced Geth node.
We've fixed:
-
A bug preventing the node from proposing blocks when connected
to a web3 provider -
An invalid "corrupted database" error message appearing on start-up
-
Incorrectly set message-ids in gossip message causing other clients
to penalise and potentially disconnect our nodes from the network. -
An issue occuring when Nimbus is paired with a Geth node
that is not fully synced.
v0.6.0 (hope)
Nimbus eth2
0.6.0 is the first externally audited and stable release of our beacon node software. When compared to the 0.5x series, it features significant reductions in storage and memory requirements, a faster sync speed, and a plethora of usability and security enhancements across the board. Under normal network conditions, the delivery rate of attestations and block proposals is expected to be above 99%. Going forward, our release schedule will start to accelerate, with multiple new releases expected before the Eth2 mainnet launch.
Changelog highlights include:
-
Full support for the 1.0 Eth2 phase0 spec and the monitoring of the mainnet validator deposit contract.
-
LibP2P and GossipSub fixes which drastically improve the delivery of attestations and blocks (nearly 100% expected rate of delivery).
-
Fixes for all major resource leaks: you no longer need to restart your node to improve its performance.
-
Efficient caching and storage mechanisms: ensures our memory consumption remains comparatively low both during smooth and turbulent network conditions.
-
Several storage and networking optimisations leading to an order of magnitude improvement in beacon chain sync speed.
-
Audits to our codebase by ConsenSys Diligence, NCC Group and Trail of Bits. More than 60 of the security findings have already been addressed. The remaining items will be resolved before mainnet launch.
-
Support for pairing with a locally running Geth instance to allow for decentralised monitoring of the validator deposit contract.
-
An extensive user guide for managing the beacon node.
-
Slashing protection mechanisms + database.
-
Support for storing the validator signing keys in a separate process, isolated from the network, with a minimal attack surface.