Releases: ChainSafe/lodestar
Release v1.39.1
Hey everyone! If you encountered any issues running Lodestar v1.39.0, it's likely because you are running the arm64 docker image which was missing a dependency in the build. If you're one of those users, this upgrade is mandatory and v1.39.1 will fix this issue. Thanks to macfarla of Besu for discovering the issue and sorry for the inconvenience!
Changelog
Bug Fixes
- remove docker build stage to rebuild native dependencies (#8819) (@nflaig)
- docker: reinstall dependencies on target platform (#8816) (@wemeetagain)
Maintenance
- v1.39.1 release (#8817) (@philknows)
Release v1.39.1-rc.1
Changelog
Bug Fixes
- remove docker build stage to rebuild native dependencies (#8819) (@nflaig)
- docker: reinstall dependencies on target platform (#8816) (@wemeetagain)
Release v1.39.1-rc.0
Release v1.39.0
Good day Lodestar operators! We've just released v1.39.0 and recommend users update for the latest features and best performance.
We've migrated to using pNPM as our package manager, which requires users who build from source to install pNPM and clean their node_modules folder to prevent conflicts.
To migrate, run the following:
npm install -g pnpmpnpm clean:nm
This will prep the repository for normal command execution.
For Obol validators: Please upgrade to this latest Lodestar validator client version together alongside your cluster operators to prevent any issues with attestation aggregations on your cluster.
This release removes legacy eth1 related code and can no longer produce blocks with deposits pre-Electra, but syncing is still functional. If you use any --eth1.* flags, they will no longer have any effect. This version will no longer support starting a chain pre-Electra.
Changelog
Features
- allow multiple mnemonic index ranges in validator setup (#8731) (@wemeetagain)
- update vc to submit beacon committee selections once per epoch (#8669) (@nflaig)
- transfer pending gossipsub message msg data (#8689) (@twoeths)
Bug Fixes
- use cli execution path for binary (#8757) (@nazarhussain)
- add semver dependency for publish workflow (#8751) (@nazarhussain)
- add triple-beam dependency to package.json (#8736) (@barnabasbusa)
- dockerfile build errors (#8735) (@barnabasbusa)
- update default dashboards to new infra hostnames (#8726) (@philknows)
- prevent duplicate aggregates passing validation due to race condition (#8716) (@nflaig)
- simplify getBlockSignatureSets api (#8720) (@twoeths)
- avoid calling committee selection apis if there are no duties (#8708) (@nflaig)
Refactoring
processWithdrawals(#8730) (@ensi321)- simplify get proposer's SignatureSet (#8745) (@twoeths)
- move reward apis to state-transition (#8719) (@twoeths)
- use map to lookup combined beacon committee selection for duty (#8710) (@nflaig)
- pass validators pubkey-index map from cli (#8707) (@twoeths)
Continuous Integration
- fix the root level binary path (#8754) (@nazarhussain)
- add inquirer to dependencies (#8752) (@nazarhussain)
Maintenance
- v1.39.0 release (#8769) (@philknows)
- clean and reinstall prod dependencies for smaller builds (#8768) (@nflaig)
- properly prune dev dependencies in docker/binary builds (#8765) (@nflaig)
- restore
node_modules/.bin/lodestarfor--prodinstalls (#8763) (@nflaig) - restore node_modules/.bin/lodestar (#8761) (@nflaig)
- fix lint warnings (#8760) (@nflaig)
- use patched nodejs versions (#8749) (@philknows)
- migrate
yarn 1topnpm(#8646) (@nazarhussain) - log aggregation selection errors to debug (#8709) (@nflaig)
- restore code required to perform sync through bellatrix (#8700) (@nflaig)
- update bootnode ENR with correct IPV6 (#8705) (@chiemerieezechukwu)
- use config from beacon chain (#8703) (@twoeths)
- delete unused eth1 data from existing databases (#8696) (@nflaig)
- add lerna exec to fix build watch/ifchanged commands (#8704) (@nflaig)
- remove eth1 related code (#8692) (@nflaig)
- merge v1.38.0 stable back to unstable (#8694) (@philknows)
- use pubkey2index from BeaconChain (#8691) (@twoeths)
- remove merge transition code (#8680) (@nflaig)
- use index2pubkey of BeaconChain (#8674) (@twoeths)
- deps: bump systeminformation from 5.23.8 to 5.27.14 (#8701) (@dependabot[bot])
Release v1.39.0-rc.4
Changelog
Features
- allow multiple mnemonic index ranges in validator setup (#8731) (@wemeetagain)
- update vc to submit beacon committee selections once per epoch (#8669) (@nflaig)
- transfer pending gossipsub message msg data (#8689) (@twoeths)
Bug Fixes
- use cli execution path for binary (#8757) (@nazarhussain)
- add semver dependency for publish workflow (#8751) (@nazarhussain)
- add triple-beam dependency to package.json (#8736) (@barnabasbusa)
- dockerfile build errors (#8735) (@barnabasbusa)
- update default dashboards to new infra hostnames (#8726) (@philknows)
- prevent duplicate aggregates passing validation due to race condition (#8716) (@nflaig)
- simplify getBlockSignatureSets api (#8720) (@twoeths)
- avoid calling committee selection apis if there are no duties (#8708) (@nflaig)
Refactoring
processWithdrawals(#8730) (@ensi321)- simplify get proposer's SignatureSet (#8745) (@twoeths)
- move reward apis to state-transition (#8719) (@twoeths)
- use map to lookup combined beacon committee selection for duty (#8710) (@nflaig)
- pass validators pubkey-index map from cli (#8707) (@twoeths)
Continuous Integration
- fix the root level binary path (#8754) (@nazarhussain)
- add inquirer to dependencies (#8752) (@nazarhussain)
Maintenance
- clean and reinstall prod dependencies for smaller builds (#8768) (@nflaig)
- properly prune dev dependencies in docker/binary builds (#8765) (@nflaig)
- restore
node_modules/.bin/lodestarfor--prodinstalls (#8763) (@nflaig) - restore node_modules/.bin/lodestar (#8761) (@nflaig)
- fix lint warnings (#8760) (@nflaig)
- use patched nodejs versions (#8749) (@philknows)
- migrate
yarn 1topnpm(#8646) (@nazarhussain) - log aggregation selection errors to debug (#8709) (@nflaig)
- restore code required to perform sync through bellatrix (#8700) (@nflaig)
- update bootnode ENR with correct IPV6 (#8705) (@chiemerieezechukwu)
- use config from beacon chain (#8703) (@twoeths)
- delete unused eth1 data from existing databases (#8696) (@nflaig)
- add lerna exec to fix build watch/ifchanged commands (#8704) (@nflaig)
- remove eth1 related code (#8692) (@nflaig)
- merge v1.38.0 stable back to unstable (#8694) (@philknows)
- use pubkey2index from BeaconChain (#8691) (@twoeths)
- remove merge transition code (#8680) (@nflaig)
- use index2pubkey of BeaconChain (#8674) (@twoeths)
- deps: bump systeminformation from 5.23.8 to 5.27.14 (#8701) (@dependabot[bot])
Release v1.39.0-rc.2
Changelog
Features
- allow multiple mnemonic index ranges in validator setup (#8731) (@wemeetagain)
- update vc to submit beacon committee selections once per epoch (#8669) (@nflaig)
- transfer pending gossipsub message msg data (#8689) (@twoeths)
Bug Fixes
- use cli execution path for binary (#8757) (@nazarhussain)
- add semver dependency for publish workflow (#8751) (@nazarhussain)
- add triple-beam dependency to package.json (#8736) (@barnabasbusa)
- dockerfile build errors (#8735) (@barnabasbusa)
- update default dashboards to new infra hostnames (#8726) (@philknows)
- prevent duplicate aggregates passing validation due to race condition (#8716) (@nflaig)
- simplify getBlockSignatureSets api (#8720) (@twoeths)
- avoid calling committee selection apis if there are no duties (#8708) (@nflaig)
Refactoring
- move reward apis to state-transition (#8719) (@twoeths)
- use map to lookup combined beacon committee selection for duty (#8710) (@nflaig)
- pass validators pubkey-index map from cli (#8707) (@twoeths)
Continuous Integration
- fix the root level binary path (#8754) (@nazarhussain)
- add inquirer to dependencies (#8752) (@nazarhussain)
Maintenance
- use patched nodejs versions (#8749) (@philknows)
- migrate
yarn 1topnpm(#8646) (@nazarhussain) - log aggregation selection errors to debug (#8709) (@nflaig)
- restore code required to perform sync through bellatrix (#8700) (@nflaig)
- update bootnode ENR with correct IPV6 (#8705) (@chiemerieezechukwu)
- use config from beacon chain (#8703) (@twoeths)
- delete unused eth1 data from existing databases (#8696) (@nflaig)
- add lerna exec to fix build watch/ifchanged commands (#8704) (@nflaig)
- remove eth1 related code (#8692) (@nflaig)
- merge v1.38.0 stable back to unstable (#8694) (@philknows)
- use pubkey2index from BeaconChain (#8691) (@twoeths)
- remove merge transition code (#8680) (@nflaig)
- use index2pubkey of BeaconChain (#8674) (@twoeths)
- deps: bump systeminformation from 5.23.8 to 5.27.14 (#8701) (@dependabot[bot])
Release v1.38.0
Good day Lodestar users! We just released v1.38.0 which introduces performance improvements for your post-Fusaka nodes. This upgrade is highly recommended if you've seen performance declines since the Fusaka fork.
Lodestar is now using nodeJS v24 by default, which introduces improved performance metrics, seen especially by supernodes. If you are building from source, we recommend that you use nodeJS v24, the current LTS as of October.
Note that holesky configurations have been removed and will no longer be a network configuration option.
Happy holidays and see you in 2026! 🚀
Changelog
Features
- use snappy-wasm (#6483) (#8647) (@wemeetagain)
- implement epbs state transition (#8507) (@ensi321)
- support and test node 24 (#8645) (@wemeetagain)
- track DataTransform metrics (#8639) (@twoeths)
Bug Fixes
- don't try to serve states for future slots (#8665) (@nflaig)
- avoid recomputing indexed attestations during block import (#8637) (@nflaig)
- skip genesis slot signature check when validating ERA files (#8642) (@guha-rahul)
Tests
Maintenance
- v1.38.0 release (#8687) (@philknows)
- update publish workflow for rc an stan;e (#8686) (@nazarhussain)
- pass secrets to nested publish workflows (#8684) (@nazarhussain)
- use github runners for publish workflow (#8683) (@nazarhussain)
- update publish workflow to use job syntax instead of steps (#8682) (@nazarhussain)
- use npm trusted publishing (#8675) (@nazarhussain)
- remove holesky configs and update tests to hoodi (#8622) (@KoxyG)
- display cgc in lodestar summary dashboard (#8668) (@nflaig)
- improve benchmark (#8664) (@twoeths)
- fix test current file launch args (#8632) (@nflaig)
- merge v1.37.0 stable back to unstable (#8643) (@philknows)
- deps: bump mdast-util-to-hast from 13.1.0 to 13.2.1 in /docs (#8649) (@dependabot[bot])
Documentation
- add ERA package to readme (#8644) (@guha-rahul)
Release v1.38.0-rc.0
Changelog
Features
- use snappy-wasm (#6483) (#8647) (@wemeetagain)
- implement epbs state transition (#8507) (@ensi321)
- support and test node 24 (#8645) (@wemeetagain)
- track DataTransform metrics (#8639) (@twoeths)
Bug Fixes
- don't try to serve states for future slots (#8665) (@nflaig)
- avoid recomputing indexed attestations during block import (#8637) (@nflaig)
- skip genesis slot signature check when validating ERA files (#8642) (@guha-rahul)
Tests
Maintenance
- update publish workflow for rc an stan;e (#8686) (@nazarhussain)
- pass secrets to nested publish workflows (#8684) (@nazarhussain)
- use github runners for publish workflow (#8683) (@nazarhussain)
- update publish workflow to use job syntax instead of steps (#8682) (@nazarhussain)
- use npm trusted publishing (#8675) (@nazarhussain)
- remove holesky configs and update tests to hoodi (#8622) (@KoxyG)
- display cgc in lodestar summary dashboard (#8668) (@nflaig)
- improve benchmark (#8664) (@twoeths)
- fix test current file launch args (#8632) (@nflaig)
- merge v1.37.0 stable back to unstable (#8643) (@philknows)
- deps: bump mdast-util-to-hast from 13.1.0 to 13.2.1 in /docs (#8649) (@dependabot[bot])
Documentation
- add ERA package to readme (#8644) (@guha-rahul)
Release v1.37.0
Happy December Lodestar users! We just published a recommended maintenance release v1.37.0 for all networks. This release includes a performance fix seen in other Fusaka testnets and also includes a validator client option to disable slot skipping for Obol users (enabled by default when using the --distributed flag).
Both versions, v1.36.0 and v1.37.0 remain compatible for the Fusaka mainnet hard fork on December 3rd.
See you in Fusaka! 🦓
Changelog
Features
- add validator client option to disable skipping slots (#8631) (@nflaig)
- cache serialized data column sidecars (#8627) (@wemeetagain)
- add Era File Reading and Writing (#8035) (@guha-rahul)
- enable gloas spec tests (#8609) (@ensi321)
- add proposer duties v2 endpoint (#8597) (@nflaig)
Bug Fixes
- compare signature bytes in proposer signature cache check (#8636) (@nflaig)
- verify proposer signatures once per slot (#8620) (@twoeths)
Refactoring
- introduce
safe-blockto fork-choice (#8618) (@nazarhussain)
Tests
- update web3signer e2e tests to fulu (#8635) (@nflaig)
- improve type check performance (#8611) (@nazarhussain)
- update to vitest 4 to use builtin bun support (#8599) (@nazarhussain)
Maintenance
- v1.37.0 release (#8640) (@philknows)
- ai disclosure on PR template (#8614) (@philknows)
- remove
bun:ffiusage across all packages (#8613) (@nazarhussain) - merge v1.36.0 back to unstable (#8608) (@philknows)
- deps: bump node-forge from 1.3.1 to 1.3.2 in /docs (#8633) (@dependabot[bot])
Release v1.37.0-rc.0
Changelog
Features
- add validator client option to disable skipping slots (#8631) (@nflaig)
- cache serialized data column sidecars (#8627) (@wemeetagain)
- add Era File Reading and Writing (#8035) (@guha-rahul)
- enable gloas spec tests (#8609) (@ensi321)
- add proposer duties v2 endpoint (#8597) (@nflaig)
Bug Fixes
- compare signature bytes in proposer signature cache check (#8636) (@nflaig)
- verify proposer signatures once per slot (#8620) (@twoeths)
Refactoring
- introduce
safe-blockto fork-choice (#8618) (@nazarhussain)
Tests
- update web3signer e2e tests to fulu (#8635) (@nflaig)
- improve type check performance (#8611) (@nazarhussain)
- update to vitest 4 to use builtin bun support (#8599) (@nazarhussain)
Maintenance
- ai disclosure on PR template (#8614) (@philknows)
- remove
bun:ffiusage across all packages (#8613) (@nazarhussain) - merge v1.36.0 back to unstable (#8608) (@philknows)
- deps: bump node-forge from 1.3.1 to 1.3.2 in /docs (#8633) (@dependabot[bot])