Skip to content

Releases: ssvlabs/ssv

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

v1.0.1-hotfix

29 Oct 15:56
Compare
Choose a tag to compare

Summary

In this release, we've addressed an issue where the node could not generate a valid signature for registering a validator fee recipient address with MEV enabled on mainnet network.

We strongly advise updating to this version.

Full Changelog: v1.0.0-rc.2...v1.0.1-hotfix

v1.0.0-rc.2

20 Sep 12:42
71dbd49
Compare
Choose a tag to compare

Summary

Fixed operator key generation.

What's Changed

Full Changelog: v1.0.0-rc.1...v1.0.0-rc.2

v1.0.0-rc.1

06 Sep 14:35
79adccb
Compare
Choose a tag to compare

This release fixes a bug where validators would not start performing duties right after cluster reactivation events.

MEV must be enabled to appropriately participate in block proposals, see https://docs.ssv.network/run-a-node/operator-node/mev-configuration

Upgrade Priority

Network Priority
mainnet Mandatory
jato-v2 Recommended

Changes

  • Fix jammed indicesChange channel (#1131)

Changes since v0.6.0-rc.0 (the latest mainnet version)

  • 🔒 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
  • Reduce latency between validator registration until duty execution (#1081)
  • Dependency Upgrades (#1118)
  • Completed upgrade to Go 1.20 (#1015)

v1.0.0-rc.0

04 Sep 13:02
ff7fff5
Compare
Choose a tag to compare

⚠️ Do not upgrade mainnet nodes yet, this release is only for prater at the moment!

This release primarily includes stability changes.

Changes

  • Reduce latency between validator registration until duty execution (#1081)
  • Dependency Upgrades (#1118)
  • Completed upgrade to Go 1.20 (#1015)