Skip to content

Releases: ssvlabs/ssv

v1.3.3

02 Apr 13:23
2578c2a
Compare
Choose a tag to compare

This version introduces mainly optimizations to the consensus and message processing.

  • By introducing OpenSSL for RSA signing we expect 10x faster signature verifications and lower CPU usage. As a side effect, memory usage should increase. Make sure to allocate at least as much RAM as is recommended in the docs (4 GB, as of this release).
    NOTE: This optimization is for Linux OS only.
  • Enhancing consensus BLS verification by choosing an optimistic approach, verifying reconstructed messages and falling back to verify each one of the signatures if it fails.

Also fixed a bug that caused newly active validators to miss first epoch.

Expect fast consensus times and higher attestation rates.

IMPORTANT: Users running full nodes (exporters) should NOT update to this release.

Upgrade Priority

Network Priority
mainnet Recommended
holesky Recommended

Change log

v1.3.2

12 Mar 18:20
97d20e6
Compare
Choose a tag to compare

This hotfix contains additional updates to for the upcoming Deneb fork.

For this reason, we strongly urge operators to update to v1.3.2 on mainnet and all testnets.

Changes

  • 🚧 voluntary exit signature in post-deneb networks (#1338)

v1.3.1

05 Mar 14:59
3bd0066
Compare
Choose a tag to compare

This release is a hotfix for Prysm users, fixing a block proposal bug which occurs in certain environments where Prysm returns JSON responses (rather than SSZ).

Affected users are those who run Prysm with an HTTP proxy and/or load balancer in-between Prysm and SSV.

Fixes

  • update to use patched fixed go-eth2-client (#1334)

v1.3.0 — Dencun

05 Mar 10:23
2ec3b8b
Compare
Choose a tag to compare

This release is mandatory for all mainnet operators, as it's the first stable release for the upcoming Dencun fork.

Upgrade Priority

Network Priority Dencun Fork
mainnet Mandatory ⌛️ Epoch 269,568 (Mar-13-2024 13:55:35 UTC)
holesky Mandatory ✔️ Already forked
jato-v2 Mandatory ✔️ Already forked

🛠️ Enhancements

🐛 Bug Fixes

  • 🛠️ Makefile Environments: Corrected an incorrect fallback issue that could affect build and deployment processes. Fixed by @moshe-blox (#1247).
  • 🧮 Compute Cluster Hash Calculation: Addressed a bug where the cluster hash was calculated incorrectly, potentially impacting system performance and stability. Resolved by @guym-blox (#1269).
  • 📊 Exporter Deadlock: Fixed a bug where the exporter would get stuck waiting for committee validator setup, hindering data exportation processes. Rectified by @moshe-blox (#1316).
  • 🚧 ProposerRunner Bug: Solved a missing block summary issue for Deneb, which could affect block processing and chain integrity. Corrected by @moshe-blox (#1319).

v1.3.0-rc.1

05 Feb 15:02
32bdb17
Compare
Choose a tag to compare
v1.3.0-rc.1 Pre-release
Pre-release

This pre-release introduces support for the Deneb fork, which has already occured on Goerli and is scheduled for Holesky in epoch 29696.

⚠️ This pre-release is required for Holesky & Goerli operators, however you should not run it on mainnet operators ⚠️

Upgrade Priority

Network Priority
mainnet Do not upgrade ⚠️
jato-v2 Mandatory
holesky Mandatory

New

  • Initial E2E implementation (#1281)
  • test: ValidatorController unit tests (#1124)

Fixes

  • fix: (API) missing nil check in byIndices (#1283)
  • fix: (SlotTicker) potential double tick (#1244)
  • fix: don't start liquidated validators after metadata fetch (#1273)
  • fix: get own sync committee duties after validators setup (#1305)

Changes

  • Deneb spec alignment (#1282)
  • Align spec with 375a276 (#1252)
  • Upgrade ssv-spec to v0.3.6 (#1299)
  • removed any reference for operator id in node metadata (#1275)
  • Don't use BeaconState in Validators call (#1301)
  • Added more slashing tests (#1241)

v1.2.3

11 Jan 17:42
e5a6d71
Compare
Choose a tag to compare

This release upgrades several outdated Go dependencies.

v1.2.2

07 Jan 13:52
7db4db2
Compare
Choose a tag to compare

This release, v1.2.2, introduces a major feature: voluntary exit! Additionally, it brings a range of improvements, bug fixes, and security updates, including stale operator ID resolution, timeout adjustments for duty fetch, and extensive P2P metrics enhancements.

Upgrade Priority

Network Priority
mainnet Mandatory
jato-v2 Mandatory
holesky Mandatory

Changes

  • 🛠 Stale Operator ID Fix: Resolved an issue with stale operator ID in p2pNetwork. (PR #1229)
  • ⏱ Initial Duty Fetch Timeout: Implemented a sufficient timeout for initial duty fetch. (PR #1214)
  • 🚀 Bootnode Deployment: Deployed a new bootnode ENR for holesky stage. (PR #1233)
  • 🚪 Voluntary Exit: Added functionality for voluntary exit. (PR #1200)
  • 📊 Peer Scores Logging: Included 'connected' status in peer scores log. (PR #1224)
  • 📈 P2P Metrics: Enhanced P2P metrics including new counters, RSA verifications, and various refinements. (PR #1163)
  • 🩺 Node Health API: Introduced and refined the node health route in the SSV API. (PR #1203)
  • 🔍 Subnet Subscription: Added feature to subscribe to a random subnet with 0 validators. (PR #1245)
  • 🛠️ Health Route Host Address Fix: Adjusted the node health API route to correctly advertise host addresses from the config. (PR #1246)
  • 🚫 Rate Limiting Inbound Connections: Implemented rate limiting for inbound connections by IP. (PR #1226)
  • 🐳 Include Git Commit/Version in Docker Build: Included git commit/version information in Docker builds for better tracking and consistency. (PR #1231)

v1.2.1

06 Dec 14:05
5e7e0d7
Compare
Choose a tag to compare

Permissionless Mainnet 🚀

This release schedules the permissionless network fork for SSV on mainnet.

⚠️ You must upgrade your mainnet nodes to this version prior to the fork!

Fork Schedule

Network Date (UTC) Epoch
mainnet ⌛️ Dec-13-2023 09:58:47 AM 249056
jato-v2 ✔️ Already forked 220708
holesky ✔️ Already forked 13951

Upgrade Priority

Network Priority
mainnet Mandatory
jato-v2 Recommended
holesky Recommended

Bug Fixes

  • fix: stale operator ID in p2pNetwork (#1229)

v1.2.0

22 Nov 18:43
5cfca80
Compare
Choose a tag to compare

Permissionless Testnets

This release introduces the permissionless network fork, and includes network security upgrades.

💎 We strongly recommend to upgrade and test this version on jato-v2 before doing so on mainnet.

⚠️ You must upgrade to this version prior to the fork!

Fork Schedule

Network Date Epoch
mainnet TBD TBD
jato-v2 Nov-29-2023 12:11:12 PM 220708
holesky Nov-29-2023 12:06:24 PM 13951

Changes

  • 🔐 RSA Message Encryption (#1190)
  • 🕒 Permissionless Fork (#1211, #1204)
  • 🚀 Duty Prefetch (#1205)
  • 📈 Peer Scoring Improvements (#1210, #1206)

Fixes

  • Dashboards and Refactor Docs (#1176)
  • Check Signatures in ValidatePartialSigMsgForSlot (#1215)
  • Race Conditions in Message Validation (#1217)

v1.1.0

08 Nov 14:20
7309807
Compare
Choose a tag to compare

⚠️ Big version release, please be cautious and first update your testnet nodes, make sure everything is configured right and working, and then proceed to update mainnet.

Changes

Resource optimisation changes

  • 🔗 Drop sync requirements (#1109) - New duty slots are not dependent on previous ones, hence no syncing needed anymore.
  • 🕙 New slot ticker (#1149) - More efficient way of distributing new slot events around the node.
  • ♻️ Remove non committee validator message processing (#1183) - no need to process non committee messages since message validation now handles them.

General improvements

  • 📈Metrics improvement (#1014, #1184)
  • 📡 Holesky support (#1166) - Added config to support running on Holesky network.
  • 📄 Log File Options (#1129) - Introduced configuration for debug log file, location, size, and backups.
  • ⏳ Deterministic Round Timeout (#1120) - First consensus round timeout is now calculated by the slot start time + 6 seconds.
  • 🌐 Domain type discovery (#1039) - An effort to make peers from other networks not connect to each other based on domain type exposed in discovery.
  • 🕶️ Drop blinded block rejection (#1109) - Nodes now participate in blinded blocks consensus even if they are not supporting proposing blinded blocks.
  • 🛡️ Slashing protection update (#1144) - Improvement when updating slashing protection data for reactivated validators
  • 💬 Message validation (#1066) - Biggest change in this release, we now started validating all the messages in the P2P network before forwarding them to our peers. The set of rules can be seen in the PR or the knowledge base. A big step towards a completely permissionless network.

Bug Fixes

  • 🐛fixed bug in validator registrations (ssv-spec - #318) -get stuck after failed pre consensus step.
  • 🐛Various bug fixes (#1142, #1140, #1131, #1192, #1188)

Testing