Skip to content

Releases: ssvlabs/ssv

v0.7.0-jatov2-rc.0

22 Aug 12:45
beadd23
Compare
Choose a tag to compare
v0.7.0-jatov2-rc.0 Pre-release
Pre-release

This release introduces a bunch of security upgrades, an attestation performance improvement, a Prysm compatibility feature and more.

Changes

  • 🔒 Share encryption — private keys are now encrypted in your database
  • Redesigned Execution Layer & Duty Scheduler modules, bringing...
    • 🔄 Secure contract syncing mechanism (atomic & crash-safe)
    • ⚡️ Early attestations — operators attest as soon as the block arrives, rather than waiting a 1/3rd into the slot
  • 🎉 Improved MEV block proposals with Prysm nodes (prysmaticlabs/prysm#12103, #1108)
  • 🌎 Introducing Bootnodes & Exporter nodes from the community!
  • 🔍 Several improvements from an ongoing audit

v0.6.0 (Jato v2)

20 Jul 09:21
c551f73
Compare
Choose a tag to compare
v0.6.0 (Jato v2) Pre-release
Pre-release

This release introduces a consensus upgrade from internal serial heights to a slot-based heights, bringing SSV's consensus closer to Ethereum's.

  • 🔄 Nodes no longer need to synchronize heights from peers — quicker startup and less network congestion.
  • 🎯 Stuck duties will now cease after 15 rounds — minimizing wasted resources on unnecessary retries.
  • ⚡ New duties take precedence over any currently stuck ones — improving performance in some scenarios.

Genesis Schedule

⚠️ This is a major upgrade. Once you upgrade, your node would not perform any duties until the v0.6.0 genesis epoch.

Epoch Date
192,100 (see in beaconcha.in) Jul 25th 2023 8:40:00 (UTC)

v0.5.5-rc.2 (Jato v2)

12 Jul 13:04
df7721f
Compare
Choose a tag to compare
v0.5.5-rc.2 (Jato v2) Pre-release
Pre-release

This release fixes two rare Eth1 sync issues that led to some validators vanishing from the database.

The 1st bug potentially affects validators that were added, deleted, and then re-added (probably in quick succession), and the 2nd bug affects validators whose owner has updated it's fee recipient address in-between registering validators.

We highly advise you to erase your current database after switching off your node and before starting this version.

If your node was not impacted, you don't need to delete your database. However, it's hard to confirm without inspecting the logs from over a week ago. Therefore, erasing the database is the safest option. Resyncing SSV from scratch should only take a few minutes.

v0.5.5-rc.0 (Jato v2)

09 Jul 15:43
9e516ee
Compare
Choose a tag to compare
v0.5.5-rc.0 (Jato v2) Pre-release
Pre-release

This release primarily fixes connectivity errors that caused loss of peers on Jato v2, so you should expect an increase in the number of connected peers (in most cases).

Changes

  • Revised handshake: Only initiated by one peer instead of both, reducing resource usage and shaving off some time.
  • Bumped libp2p from v0.27.4 to v0.28.1 (helps with "stream reset" errors, see libp2p/go-libp2p-pubsub#530 (comment))
  • Draft of SSV API (unstable until further notice)

Bug Fixes

  • Peer identities were being forgotten a few minutes after handshake
  • Sometimes nodes didn't correctly register to their topics in p2pNetwork.UpdateSubnets because p2pNetwork.subnets was already being populated on creation

v0.5.4

08 May 11:33
f32d09d
Compare
Choose a tag to compare

This version improves connectivity (peer selection) and fixes a consensus bug.

We **strongly recommend upgrading because this version sharpens network outreach and reduces consensus time, thus improving duty performance significantly.

What's Changed

  • Revamped peer scoring algorithm (#942)
  • Corrected computation of quorum & partial quorum (#944)

Full Changelog: v0.5.2...v0.5.4

v0.5.2

24 Apr 15:29
720a203
Compare
Choose a tag to compare

This release fixes a bug with registrations of inactive validators.

No other changes in this release.

We recommend to upgrade to this version.

SSV v3 (Jato)

30 Mar 13:02
0d8397c
Compare
Choose a tag to compare

🚀 Release Notes

✨ SSV v3 (Jato) is ready! ✨

⚠️ Warning: Not removing your v2 validators before registering them to v3 is akin to running two Ethereum validator clients at the same time. You may get slashed!

You can remove your validators from v2 at https://app-v2.ssv.network

⬆️ Upgrading from v2 to v3 (Shifu to Jato)

  1. 🌐 Join as operator to v3 at https://app.ssv.network
  2. 🗑️ Set up a new server for v3, or delete your existing v2 database
  3. 📦 Download the v3 node
    3.1. If you're using Docker, upgrade to this image: bloxstaking/ssv-node:v0.5.1
    3.2. If you're building from source:git pull && git checkout v0.5.1
  4. 🔥 Start your v3 node

🎉 New Features

  • 🔄 Upgrade from JSON to SSZ (#878)
  • 📄 SSV Contract v3 (#895, #887, #778)
  • 📊 Metrics and Dashboards (#808)
  • 🍴 Capella Fork Support (#893, #892)
  • 📝 Logging Overhaul (#865)

⚡ Optimizations

  • 🚦 Channelled Queue (#837)
  • 🐳 Go mod cache in Docker builds (#840)
  • 🏗️ Instance Compaction (#848, #853)
  • 🚀 Hashing, libp2p and BLS optimizations (#910)

🐛 Bug Fixes

  • Sync committee duties improvements & fixes (#839)
  • Fix badger panic (#869)
  • Role duplication fix (#909)
  • Fix race conditions in integration tests (#850, #830)

V0.4.0

01 Feb 13:38
Compare
Choose a tag to compare

🔥 Shifu V2 Network 🔥

Summary

This version will perform the following steps:
⛔ Shut down Shifu v1 network
🕔 Wait until Shifu v2 ignites (~2 weeks)
📅 Shifu v2 starts at epoch 156113 (Wed Feb 15 10:03:12 UTC 2023)

No need to prepare anything. This version will stop and wait until the target epoch and start working by itself.

Features

💻 Multi-Duties Support
📏 Fully Aligned to Spec

What's Added

  • Alignment to spec 0.2.9
  • Fee Recipient (#795)
  • Introduction of protocol logger
  • Spec Alignment: Synchronization Decided (#734)
  • Alignment of instance container (#739)
  • Spec Alignment: Validator Refactoring (#748)
  • Non-Committee Validator Post Spec Alignment (#751)
  • Happy Flow 7 and 10 Committee + Integration Test Stabilization (#810)
  • Upgrade of Go (1.19) and libp2p (v0.24) (#789)
  • Addition of graffiti to share + migration
  • Addition of metrics for attestation submission and message processing durations (#736)
  • Local events (shares) (#745)
  • CI: Spec Testing (#758)
  • Spec Alignment: Round Change (#740)

What's Improved

  • Upgrade to Key Manager v1.2.0 (use Go client instead of Prysm objects)
  • Avoidance of delay on every check for peers (#732)
  • Pubsub: Fix topics management (#773)
  • Eth2Client interface (#794)
  • Extraction of metadata from share
  • Use of spec share (#735)

What's Changed

  • Move Share and Metadata into a new SSVShare struct
  • Patches from spec applied:
  • Deprecation of v1 (#743)
  • Storage of highest instance instead of highest decided (#752)
  • Deprecation of ToMessageID Function (#757)
  • Constant round duration (#756)
  • Deprecation of SyncHighestRound
  • Deprecation of SSVDecidedMsgType
  • Revised logging (#768)
  • Restructuring of protocol packages utilities (#766)
  • Creation of regular simulation (#772)
  • Multi-duties (#777)
  • Event-based message (#791)
  • Round timer as an event in the queue
  • Duty execution as an event in the queue
  • Streams Deadline (#792)
  • Round change & f+1 decided integration tests; validation functions (#793)
  • Round change integration test
  • F+1 decided integration test
  • Slashing protection (#805)
  • Minimal slashing protection (#807)
  • Node CLI cleanup (#812)
  • New Message Queue (#801)
  • Priority Queue (#761)
  • Full node (#785)

v0.3.4

20 Oct 10:05
117d9f7
Compare
Choose a tag to compare

Fixed

  • Fix concurrent map read/write #723
  • Fix nil pointer #724

v0.3.3

14 Oct 20:08
1c6339e
Compare
Choose a tag to compare

Fixed

  • Operator removal issue (#720)
  • Migration to cleanup corrupted data (#721)
    NOTE: triggers re-sync of the contract events