Releases: ChainSafe/lodestar
Release v1.16.0-rc.0
Changelog
Features
- track timings of various stages of block import (#6439) (@g11tech)
- add retry functionality in the api for builder publish (#6387) (@g11tech)
- allow blob archival for bigger time periods (#6393) (@g11tech)
- rename prover CLI start command as proxy and make it default (#6428) (@jeluard)
- schedule deneb on gnosis (#6423) (@nflaig)
- add new panels to validator client dashboard (#6415) (@nflaig)
- manually use identify protocol (#6400) (@wemeetagain)
- schedule deneb on mainnet (#6411) (@g11tech)
- emit slashing events (#6391) (@jeluard)
- add ERC-55 support to ExecutionAddress (#6355) (@jeluard)
- allow to execute lodestar script inside docker container (#6392) (@nflaig)
- add builder selection executionalways (#6370) (@nflaig)
- blob sidecars can be filtered by indices (#6337) (@jeluard)
- add down-scoring for metadata ssz size error (#6366) (@matthewkeil)
- allow builder boost factor to be configured via proposer config file (#6357) (@g11tech)
Bug Fixes
- earliest permissable slot for beacon_attestation topic post deneb (#6198) (@tuyennhv)
- reduce verbosity of gossip block errors (#6430) (@nflaig)
- publish blobs sooner than later (#6431) (@g11tech)
- fix regression in getCurrentSlotAround (#6407) (@wemeetagain)
- correct error message if produceBlockV3 request fails (#6405) (@nflaig)
- parse --blindedLocal flag value as boolean (#6403) (@nflaig)
- increase e2e env startup timeout (#6396) (@nazarhussain)
- getAttestationsForBlock performance issue (#6367) (@tuyennhv)
- log errors setting agent version as debug (#6374) (@matthewkeil)
- skip useWorker mode for gossipsub e2e tests (#6368) (@tuyennhv)
- add block_id schema validation to getBlobSidecars (#6377) (@nflaig)
- stabilize unknown block sync e2e test (#6364) (@tuyennhv)
- ignore stale keystore lockfiles (#6363) (@nflaig)
- ignore forkchoice invalidations if latestValidHash not found (#6361) (@g11tech)
Refactoring
- reuse utils added in block production race refactor (#6422) (@nflaig)
- update the block production race (#6241) (@nazarhussain)
Continuous Integration
Tests
- split sim tests to multiple jobs (#6437) (@nazarhussain)
- add a work around for range sync issue during sim tests (#6436) (@nazarhussain)
- temporarily reduce the sync committee participation limit for sim tests (#6433) (@nazarhussain)
- add support to dump raw simulation data for debugging (#6429) (@nazarhussain)
- support .env.test to reuse env variables across the tests (#6408) (@nazarhussain)
- fix code coverage (#6410) (@nazarhussain)
- flaky unit tests (#6398) (@nazarhussain)
Maintenance
- remove unused eslint disable directives (#6444) (@nflaig)
- remove not yet relevant prover options (#6440) (@jeluard)
- fix prover README typos (#6426) (@jeluard)
- improve type safety of CLI args (#6438) (@nflaig)
- fixed incorrect link (#6427) (@jeluard)
- upgrade eslint and fix the warnings (#6420) (@nazarhussain)
- update broken links to lodestar docs (#6417) (@krauspt)
- upgrade bls (#6413) (@jeluard)
- remove npm badge from README (#6412) (@nflaig)
- bump gossipsub (#6399) (@wemeetagain)
- improve the sim tests logs (#6394) (@nazarhussain)
- upgrade geth and nethermind for sim tests (#6395) (@nazarhussain)
- fix failing sim tests (#6389) (@nazarhussain)
- update funding.yml link (#6385) (@philknows)
- improve browser support (#6384) (@jeluard)
- update holesky.ts to include Lodestar bootnode (#6383) (@philknows)
- update chainsafe dependencies (#6380) (@wemeetagain)
- align vitest config filenames (#6369) (@jeluard)
- merge v1.15 stable back to unstable (#6372) (@philknows)
- align test scripts (#6339) (@jeluard)
- deps: bump browserify-sign from 4.2.1 to 4.2.2 (#6071) (@dependabot[bot])
Documentation
- initialize FAQs page with Kubernetes unknown args error (#6416) (@philknows)
- pin dependencies, update icons, and formatting fixes (#6425) (@nflaig)
- reflect vitest migration (#6247) (@jeluard)
- update link to erigon jwt setup (#6375) (@activescott)
- add comment to RequestErrorCode.SSZ_OVER_MAX_SIZE (#6373) (@matthewkeil)
Release v1.15.1
We just released v1.15.1 which includes a few hotfixes for users using Besu as their execution client, using --blindedLocal
and users with .lock file issues. For those users, we highly recommend updating to v1.15.1 to address these reported issues.
- For users running Besu, if you've received fork-choice invalidations if latestValidHash is not found, this fix more robustly handles an execution layer's return of
null
. - Included a UX improvement for users who have interruptions with their validator client (e.g. power loss) where it may not properly cleanup .lock files and requires manual intervention to remove stale files. This fix marks .lock files as stale if the process is not running for more than 10 seconds.
- Included a fix for users using the
--blindedLocal
feature on their setups. This fix parses the CLI flag as boolean.
Changelog
Bug Fixes
Release v1.15.1-rc.0
Changelog
Bug Fixes
Release v1.15.0
This update is recommended to all users of Lodestar and mandatory for those running Sepolia and Holesky testnets. This release is also ready for the Gnosis Chain Chiado fork.
This release includes some additional fixes for the Deneb hard fork, an upgrade to js-libp2p and minor fixes for UX and performance improvements.
- js-libp2p is now updated to v1.x.
- For DVT, multiple, and fallback node users, we've fixed some logging in relation to already known errors seen in our API.
- By default, we've raised our nodeJS
max-old-space-size
option from 4096 (4GB) to 8192 (8GB) in our scripts by default so users can benefit from testnets like Holesky with larger states and to better handle periods of network turbulance like non-finality before heap memory is exceeded. This does not increase memory usage. It was done proactively to improve UX as we continue to optimize our memory footprint. - Improvements were made to UX for exiting batches of validators.
- For users using builder boost factor, our error logging now indicates that this cannot be a number with decimals.
Changelog
Features
- schedule deneb on chiado (#6342) (@nflaig)
- update configs to be able to support Deneb on all networks (#6328) (@nflaig)
- improve batch validator exit UX (#6327) (@g11tech)
- log agent version when client is not known (#6314) (@tuyennhv)
- schedule deneb fork on testnets (#6223) (@g11tech)
- forkchoice filter change (#6288) (@tuyennhv)
- implement BufferPool for PersistentCPStateCache (#6269) (@tuyennhv)
- allow to skip gossip validation (#6308) (@nazarhussain)
- update libp2p (#6285) (@wemeetagain)
Bug Fixes
- update beacon max-old-space-size to 8192 (#6343) (@nflaig)
- improve handling of non-integer builder boost factor values (#6332) (@nflaig)
- correct total block value in publish block log (#6336) (@ensi321)
- use incrementing counter for prover request ids (#6333) (@nflaig)
- make light client events spec compliant (#6309) (@jeluard)
- ignore already known errors in API (#6321) (@nflaig)
- block value in
produceBlockV3
should be in wei (#6286) (@ensi321) - do not download known block by root (#6292) (@tuyennhv)
- correct error message if produceBlindedBlock request fails (#6299) (@nflaig)
Refactoring
Tests
- stabilize sim tests (#6312) (@nazarhussain)
- migrate validator tests to vitest (#6301) (@nazarhussain)
- migrate spec-test-utils and spec tests to vitest (#6222) (@nazarhussain)
Maintenance
- v1.15.0 release (#6347) (@philknows)
- extend chiado config from gnosis config (#6329) (@nflaig)
- cleanup mocha/chai/sinon usage across the repo (#6311) (@nazarhussain)
- remove old vitest version from yarn lock (#6310) (@nflaig)
- install same vitest version across packages (#6306) (@nflaig)
- merge v1.14 stable back to unstable (#6303) (@philknows)
- add yarn scripts to simplify docs contribution (#6296) (@nflaig)
- deps: bump vite from 5.0.6 to 5.0.12 (#6331) (@dependabot[bot])
Documentation
- add documentation contribution instructions (#6294) (@philknows)
- re-implement validator config page with builder.boostFactor notes (#6295) (@philknows)
- fix incorrect light-client example (#6297) (@jeluard)
- update networking page (#6289) (@nflaig)
Release v1.15.0-rc.0
Changelog
Features
- schedule deneb on chiado (#6342) (@nflaig)
- update configs to be able to support Deneb on all networks (#6328) (@nflaig)
- improve batch validator exit UX (#6327) (@g11tech)
- log agent version when client is not known (#6314) (@tuyennhv)
- schedule deneb fork on testnets (#6223) (@g11tech)
- forkchoice filter change (#6288) (@tuyennhv)
- implement BufferPool for PersistentCPStateCache (#6269) (@tuyennhv)
- allow to skip gossip validation (#6308) (@nazarhussain)
- update libp2p (#6285) (@wemeetagain)
Bug Fixes
- update beacon max-old-space-size to 8192 (#6343) (@nflaig)
- improve handling of non-integer builder boost factor values (#6332) (@nflaig)
- correct total block value in publish block log (#6336) (@ensi321)
- use incrementing counter for prover request ids (#6333) (@nflaig)
- make light client events spec compliant (#6309) (@jeluard)
- ignore already known errors in API (#6321) (@nflaig)
- block value in
produceBlockV3
should be in wei (#6286) (@ensi321) - do not download known block by root (#6292) (@tuyennhv)
- correct error message if produceBlindedBlock request fails (#6299) (@nflaig)
Refactoring
Tests
- stabilize sim tests (#6312) (@nazarhussain)
- migrate validator tests to vitest (#6301) (@nazarhussain)
- migrate spec-test-utils and spec tests to vitest (#6222) (@nazarhussain)
Maintenance
- extend chiado config from gnosis config (#6329) (@nflaig)
- cleanup mocha/chai/sinon usage across the repo (#6311) (@nazarhussain)
- remove old vitest version from yarn lock (#6310) (@nflaig)
- install same vitest version across packages (#6306) (@nflaig)
- merge v1.14 stable back to unstable (#6303) (@philknows)
- add yarn scripts to simplify docs contribution (#6296) (@nflaig)
- deps: bump vite from 5.0.6 to 5.0.12 (#6331) (@dependabot[bot])
Documentation
- add documentation contribution instructions (#6294) (@philknows)
- re-implement validator config page with builder.boostFactor notes (#6295) (@philknows)
- fix incorrect light-client example (#6297) (@jeluard)
- update networking page (#6289) (@nflaig)
Release v1.14.0
Hey everyone! We've released v1.14.0 of Lodestar which is recommended for all users on all networks. This is the same version as v1.14.0-rc.2 which was the mandatory release for Goerli users for Deneb hard fork readiness.
-
This release includes the scheduled Goerli test network fork for Deneb at epoch 231680.
-
If using Lodestar for the Ephemery testnet, this version is compatible with the Deneb fork scheduled for iteration 111 on January 18, 2024.
-
--blindedLocal
is a new feature which allows local block publishing to be signed by the validator similarly to builder relays via blinded headers instead of having the full payload. For operators with their Lodestar beacon node and validator clients in separate hosts/networks, this feature will reduce block production latencies. This is only supported if it's a Lodestar beacon node using produceBlockV3. -
Breaking change for Deneb fork: The Deneb fork epoch will trigger the migration to use produceBlockV3 on Lodestar. If you do not want this, you MUST disable it with
--produceBlockV3 false
. Alternatively, if you want to turn it on for testing pre-Deneb, you can enable it with--produceBlockV3 true
. The automatic switch to produceBlockV3 will only affect the Goerli network (the only scheduled network to fork on this release). -
Other block production optimizations to reduce block production latencies and likelihood of orphaning blocks due to reorgs.
-
Lodestar now supports
shouldOverrideBuilder
functionality where execution clients can identify censorship and force local block production irrespective of the builderBoostFactor. See ethereum/execution-apis#425 for the specification and this note on the heuristics of how the execution client determines builder censorship: https://hackmd.io/@potuz/BkpzmOgK6. -
produceBlockV3
API now supports builder_boost_factor. Our documentation here (https://chainsafe.github.io/lodestar/validator-management/vc-configuration/#configure-your-builder-selection-andor-builder-boost-factor) includes details on how to use this with our already implemented --builder.selection feature.
Changelog
Features
- produce phase0 beacon block body once (#6270) (@nazarhussain)
- auto use produceBlockV3 deneb+ unless specified (#6262) (@g11tech)
- reject builder blocks if engine indicates censorship (#6258) (@g11tech)
- prune BlsToExecutionChange opPool with head state (#6252) (@tuyennhv)
- track prepare next epoch time (#6256) (@tuyennhv)
- add and support builder_boost_factor query param to produceBlockV3 api (#6236) (@g11tech)
- schedule deneb on goerli (#6254) (@g11tech)
- implement new state caches (#6176) (@tuyennhv)
- allow validator to request blinded versions for locally produced and selected blocks (#6227) (@g11tech)
- add workflow_dispatch to docs (#6235) (@matthewkeil)
- implement blob sidecars with inclusion proof instead of signtaures (#6089) (@g11tech)
- add response headers to produceBlockV3 (#6228) (@ensi321)
- optimistically verify blocks even before all blobs available (#6087) (@g11tech)
Bug Fixes
- add Ephemery Deneb fork epoch (#6287) (@taxmeifyoucan)
- use bigint to calculate max builder boost factor (#6275) (@nflaig)
- parse --builder.boostFactor value as bigint instead of number (#6277) (@nflaig)
- update voluntary exit block inclusion filter (#6278) (@dapplion)
- update teku's bootnode (#6273) (@tbenr)
- increase range for the random value of request id in prover (#6115) (@rdvorkin)
- remove invalid workflow step (#6246) (@matthewkeil)
- correct createFromState() with cached current shuffling (#6240) (@tuyennhv)
- fix block value calculation in
produceBlockV3
(#6207) (@ensi321) - track jobItemWorkReq function time (#6203) (@tuyennhv)
Refactoring
Dependencies
- update bls-keystore to v3.0.0 (#6253) (@nflaig)
- upgrade vitest (#6237) (@nazarhussain)
Continuous Integration
- disable the node debug task (#6283) (@nazarhussain)
Tests
- allow to pass extra args everywhere (#6249) (@jeluard)
- migrate types unit tests to vitest (#6224) (@nazarhussain)
- migrate light-client tests to vitest (#6221) (@nazarhussain)
- migrate logger tests to vitest (#6220) (@nazarhussain)
- fix flaky e2e tests (#6231) (@nflaig)
- migrate utils tests to vitest (#6225) (@nazarhussain)
- migrate fork-choice unit tests to vitest (#6216) (@nazarhussain)
- migrate params tests to vitest (#6217) (@nazarhussain)
- migrate config unit tests to vitest (#6213) (@nazarhussain)
- migrate flare unit tests to vitest (#6215) (@nazarhussain)
- migrate db unit tests to vitest (#6214) (@nazarhussain)
- introduce beacon api test ignore list (#6171) (@jeluard)
- migrate reqresp unit tests to vitest (#6191) (@nazarhussain)
- migrate cli unit/e2e tests to vitest (#6192) (@nazarhussain)
Maintenance
- v1.14.0 release (#6290) (@philknows)
- update url of goerli bootnodes file and genesis ssz (#6279) (@nflaig)
- migrate dashboards to latest grafana version (#6272) (@nflaig)
- fix block production step time panels (#6271) (@nflaig)
- update Grafana panels for gossip validation (#6255) (@tuyennhv)
- blob inclusion proof PR cleanup (#6239) (@g11tech)
- fix yarn install warnings related to vitest (#6232) (@nflaig)
- merge v1.13 stable back to unstable (#6218) (@philknows)
- add preHandler hook to fastify (#6210) (@tuyennhv)
- epoch transition by steps panel (#6205) (@tuyennhv)
- deps: bump get-func-name from 2.0.0 to 2.0.2 (#6006) (@dependabot[bot])
- deps: bump follow-redirects from 1.15.2 to 1.15.4 (#6267) (@dependabot[bot])
- deps: bump undici from 5.22.1 to 5.28.2 (#6265) (@dependabot[bot])
- deps: bump @babel/traverse from 7.11.0 to 7.23.7 (#6264) (@dependabot[bot])
- deps: bump axios from 1.3.4 to 1.6.0 (#6104) (@dependabot[bot])
Documentation
- update RELEASE.md to include coventional commit titles (#6281) (@philknows)
- add crawler verification (#6234) (@matthewkeil)
- fix typo in networking.md (#6243) (@leonarddt05)
- fix docs links (#6233) (@matthewkeil)
Release v1.14.0-rc.2
Changelog
Features
- produce phase0 beacon block body once (#6270) (@nazarhussain)
- auto use produceBlockV3 deneb+ unless specified (#6262) (@g11tech)
- reject builder blocks if engine indicates censorship (#6258) (@g11tech)
- prune BlsToExecutionChange opPool with head state (#6252) (@tuyennhv)
- track prepare next epoch time (#6256) (@tuyennhv)
- add and support builder_boost_factor query param to produceBlockV3 api (#6236) (@g11tech)
- schedule deneb on goerli (#6254) (@g11tech)
- implement new state caches (#6176) (@tuyennhv)
- allow validator to request blinded versions for locally produced and selected blocks (#6227) (@g11tech)
- add workflow_dispatch to docs (#6235) (@matthewkeil)
- implement blob sidecars with inclusion proof instead of signtaures (#6089) (@g11tech)
- add response headers to produceBlockV3 (#6228) (@ensi321)
- optimistically verify blocks even before all blobs available (#6087) (@g11tech)
Bug Fixes
- add Ephemery Deneb fork epoch (#6287) (@taxmeifyoucan)
- use bigint to calculate max builder boost factor (#6275) (@nflaig)
- parse --builder.boostFactor value as bigint instead of number (#6277) (@nflaig)
- update voluntary exit block inclusion filter (#6278) (@dapplion)
- update teku's bootnode (#6273) (@tbenr)
- increase range for the random value of request id in prover (#6115) (@rdvorkin)
- remove invalid workflow step (#6246) (@matthewkeil)
- correct createFromState() with cached current shuffling (#6240) (@tuyennhv)
- fix block value calculation in
produceBlockV3
(#6207) (@ensi321) - track jobItemWorkReq function time (#6203) (@tuyennhv)
Refactoring
Dependencies
- update bls-keystore to v3.0.0 (#6253) (@nflaig)
- upgrade vitest (#6237) (@nazarhussain)
Continuous Integration
- disable the node debug task (#6283) (@nazarhussain)
Tests
- allow to pass extra args everywhere (#6249) (@jeluard)
- migrate types unit tests to vitest (#6224) (@nazarhussain)
- migrate light-client tests to vitest (#6221) (@nazarhussain)
- migrate logger tests to vitest (#6220) (@nazarhussain)
- fix flaky e2e tests (#6231) (@nflaig)
- migrate utils tests to vitest (#6225) (@nazarhussain)
- migrate fork-choice unit tests to vitest (#6216) (@nazarhussain)
- migrate params tests to vitest (#6217) (@nazarhussain)
- migrate config unit tests to vitest (#6213) (@nazarhussain)
- migrate flare unit tests to vitest (#6215) (@nazarhussain)
- migrate db unit tests to vitest (#6214) (@nazarhussain)
- introduce beacon api test ignore list (#6171) (@jeluard)
- migrate reqresp unit tests to vitest (#6191) (@nazarhussain)
- migrate cli unit/e2e tests to vitest (#6192) (@nazarhussain)
Maintenance
- update url of goerli bootnodes file and genesis ssz (#6279) (@nflaig)
- migrate dashboards to latest grafana version (#6272) (@nflaig)
- fix block production step time panels (#6271) (@nflaig)
- update Grafana panels for gossip validation (#6255) (@tuyennhv)
- blob inclusion proof PR cleanup (#6239) (@g11tech)
- fix yarn install warnings related to vitest (#6232) (@nflaig)
- merge v1.13 stable back to unstable (#6218) (@philknows)
- add preHandler hook to fastify (#6210) (@tuyennhv)
- epoch transition by steps panel (#6205) (@tuyennhv)
- deps: bump get-func-name from 2.0.0 to 2.0.2 (#6006) (@dependabot[bot])
- deps: bump follow-redirects from 1.15.2 to 1.15.4 (#6267) (@dependabot[bot])
- deps: bump undici from 5.22.1 to 5.28.2 (#6265) (@dependabot[bot])
- deps: bump @babel/traverse from 7.11.0 to 7.23.7 (#6264) (@dependabot[bot])
- deps: bump axios from 1.3.4 to 1.6.0 (#6104) (@dependabot[bot])
Documentation
- update RELEASE.md to include coventional commit titles (#6281) (@philknows)
- add crawler verification (#6234) (@matthewkeil)
- fix typo in networking.md (#6243) (@leonarddt05)
- fix docs links (#6233) (@matthewkeil)
Release v1.14.0-rc.1
Changelog
Features
- auto use produceBlockV3 deneb+ unless specified (#6262) (@g11tech)
- reject builder blocks if engine indicates censorship (#6258) (@g11tech)
- prune BlsToExecutionChange opPool with head state (#6252) (@tuyennhv)
- track prepare next epoch time (#6256) (@tuyennhv)
- add and support builder_boost_factor query param to produceBlockV3 api (#6236) (@g11tech)
- schedule deneb on goerli (#6254) (@g11tech)
- implement new state caches (#6176) (@tuyennhv)
- allow validator to request blinded versions for locally produced and selected blocks (#6227) (@g11tech)
- add workflow_dispatch to docs (#6235) (@matthewkeil)
- implement blob sidecars with inclusion proof instead of signtaures (#6089) (@g11tech)
- add response headers to produceBlockV3 (#6228) (@ensi321)
- optimistically verify blocks even before all blobs available (#6087) (@g11tech)
Bug Fixes
- use bigint to calculate max builder boost factor (#6275) (@nflaig)
- parse --builder.boostFactor value as bigint instead of number (#6277) (@nflaig)
- update voluntary exit block inclusion filter (#6278) (@dapplion)
- update teku's bootnode (#6273) (@tbenr)
- increase range for the random value of request id in prover (#6115) (@rdvorkin)
- remove invalid workflow step (#6246) (@matthewkeil)
- correct createFromState() with cached current shuffling (#6240) (@tuyennhv)
- fix block value calculation in
produceBlockV3
(#6207) (@ensi321) - track jobItemWorkReq function time (#6203) (@tuyennhv)
Refactoring
Dependencies
- update bls-keystore to v3.0.0 (#6253) (@nflaig)
- upgrade vitest (#6237) (@nazarhussain)
Tests
- allow to pass extra args everywhere (#6249) (@jeluard)
- migrate types unit tests to vitest (#6224) (@nazarhussain)
- migrate light-client tests to vitest (#6221) (@nazarhussain)
- migrate logger tests to vitest (#6220) (@nazarhussain)
- fix flaky e2e tests (#6231) (@nflaig)
- migrate utils tests to vitest (#6225) (@nazarhussain)
- migrate fork-choice unit tests to vitest (#6216) (@nazarhussain)
- migrate params tests to vitest (#6217) (@nazarhussain)
- migrate config unit tests to vitest (#6213) (@nazarhussain)
- migrate flare unit tests to vitest (#6215) (@nazarhussain)
- migrate db unit tests to vitest (#6214) (@nazarhussain)
- introduce beacon api test ignore list (#6171) (@jeluard)
- migrate reqresp unit tests to vitest (#6191) (@nazarhussain)
- migrate cli unit/e2e tests to vitest (#6192) (@nazarhussain)
Maintenance
- update url of goerli bootnodes file and genesis ssz (#6279) (@nflaig)
- migrate dashboards to latest grafana version (#6272) (@nflaig)
- fix block production step time panels (#6271) (@nflaig)
- update Grafana panels for gossip validation (#6255) (@tuyennhv)
- blob inclusion proof PR cleanup (#6239) (@g11tech)
- fix yarn install warnings related to vitest (#6232) (@nflaig)
- merge v1.13 stable back to unstable (#6218) (@philknows)
- add preHandler hook to fastify (#6210) (@tuyennhv)
- epoch transition by steps panel (#6205) (@tuyennhv)
- deps: bump get-func-name from 2.0.0 to 2.0.2 (#6006) (@dependabot[bot])
- deps: bump follow-redirects from 1.15.2 to 1.15.4 (#6267) (@dependabot[bot])
- deps: bump undici from 5.22.1 to 5.28.2 (#6265) (@dependabot[bot])
- deps: bump @babel/traverse from 7.11.0 to 7.23.7 (#6264) (@dependabot[bot])
- deps: bump axios from 1.3.4 to 1.6.0 (#6104) (@dependabot[bot])
Documentation
- add crawler verification (#6234) (@matthewkeil)
- fix typo in networking.md (#6243) (@leonarddt05)
- fix docs links (#6233) (@matthewkeil)
Release v1.14.0-rc.0
Changelog
Features
- schedule deneb on goerli (#6254) (@g11tech)
- implement new state caches (#6176) (@tuyennhv)
- allow validator to request blinded versions for locally produced and selected blocks (#6227) (@g11tech)
- add workflow_dispatch to docs (#6235) (@matthewkeil)
- implement blob sidecars with inclusion proof instead of signtaures (#6089) (@g11tech)
- add response headers to produceBlockV3 (#6228) (@ensi321)
- optimistically verify blocks even before all blobs available (#6087) (@g11tech)
Bug Fixes
- remove invalid workflow step (#6246) (@matthewkeil)
- correct createFromState() with cached current shuffling (#6240) (@tuyennhv)
- fix block value calculation in
produceBlockV3
(#6207) (@ensi321) - track jobItemWorkReq function time (#6203) (@tuyennhv)
Refactoring
Dependencies
- update bls-keystore to v3.0.0 (#6253) (@nflaig)
- upgrade vitest (#6237) (@nazarhussain)
Tests
- migrate types unit tests to vitest (#6224) (@nazarhussain)
- migrate light-client tests to vitest (#6221) (@nazarhussain)
- migrate logger tests to vitest (#6220) (@nazarhussain)
- fix flaky e2e tests (#6231) (@nflaig)
- migrate utils tests to vitest (#6225) (@nazarhussain)
- migrate fork-choice unit tests to vitest (#6216) (@nazarhussain)
- migrate params tests to vitest (#6217) (@nazarhussain)
- migrate config unit tests to vitest (#6213) (@nazarhussain)
- migrate flare unit tests to vitest (#6215) (@nazarhussain)
- migrate db unit tests to vitest (#6214) (@nazarhussain)
- introduce beacon api test ignore list (#6171) (@jeluard)
- migrate reqresp unit tests to vitest (#6191) (@nazarhussain)
- migrate cli unit/e2e tests to vitest (#6192) (@nazarhussain)
Maintenance
- blob inclusion proof PR cleanup (#6239) (@g11tech)
- fix yarn install warnings related to vitest (#6232) (@nflaig)
- merge v1.13 stable back to unstable (#6218) (@philknows)
- add preHandler hook to fastify (#6210) (@tuyennhv)
- epoch transition by steps panel (#6205) (@tuyennhv)
Documentation
- add crawler verification (#6234) (@matthewkeil)
- fix typo in networking.md (#6243) (@leonarddt05)
- fix docs links (#6233) (@matthewkeil)
Release v1.13.0
Happy holidays everyone! We've released our hopefully last release for 2023 with v1.13.0!
We recommend users upgrade for some performance and user improvements. Some of which are highlighted below:
-
Lodestar now logs info about your connected service URLs. This is especially useful for users using Lodestar with multiple/fallback services to know on startup what they’re connected to.
-
PR #6132 now allows for voluntary exits by remote signers. Previously, Lodestar only allowed voluntary exits from locally imported keystores.
-
We previously did not include
Eth-Consensus-Version
header as part of ourgetStateV2
andgetBlockV2
responses as per the Beacon-APIs spec. We are continuing to address this and are refactoring our SSZ API responses also for inclusion on the BlockV3 endpoint. -
We’ve done a big refactor in our docs and will continue to build it with more context and education for Ethereum users, starting with PR #6134.
-
We cleared up usage of the
--builder.url
. We do not support multiple connected builders and will only use the first URL attached. If multiple URLs are supplied, it will now throw an error.
Other fixes include performance improvements such as implementing a shuffling cache (PR #6030) to verify attestations rather than using the state cache and regen, and improvements on how we process slashings (PR #6121).
Changelog
Features
- track epoch transition steps time in metrics (#6143) (@tuyennhv)
- add
consensus_block_value
toproduceBlockV3
(#6136) (@ensi321) - more insight when publishing blocks (#6166) (@tuyennhv)
- libp2p-gossipsub v10.1.1 (#6156) (@tuyennhv)
- allow configuring broadcast validation on validator for proposals (#6151) (@g11tech)
- implement consensus broadcastValidation and set it to default (#6149) (@g11tech)
- support remote signer in voluntary exit command (#6132) (@eth2353)
- improve processSlashings (#6121) (@tuyennhv)
- implement shuffling cache (#6030) (@tuyennhv)
- write heap snapshot to network/discv5 thread (#6130) (@tuyennhv)
- support "input" param for verifiable tx (cont.) (#6101) (@rdvorkin)
- print out URLs of connected services (#6099) (@nflaig)
Bug Fixes
- improve compute new state root when producing block (#6195) (@tuyennhv)
- pass user credentials to events http client (#6179) (@nflaig)
- sanitize URL to prevent leaking user credentials in logs (#6175) (@nflaig)
- clone attestations for block inclusion (#6174) (@tuyennhv)
- do not uri-encode Basic Auth header contents (#6155) (@jshufro)
- producedBlindedBlockRoot metric typo (#6153) (@tuyennhv)
- set consensus version header in state and block response (#6152) (@nflaig)
- prevent low peer count warning on startup (#6150) (@nflaig)
- bound AttesterSlashing instances when producing block (#6139) (@tuyennhv)
- add log for blockroot being signed for debugging proposal failures (#6147) (@g11tech)
- include slot in block error metadata (#6146) (@nflaig)
- remove duties when deleting remote key via keymanager (#6141) (@nflaig)
- logtrace produced cache population for blinded block assembly (#6131) (@g11tech)
hexToBuffer
bug (#6098) (@orenyomtov)- log useProduceBlockV3 default value instead of undefined (#6125) (@nflaig)
- remove unused gossip block metrics from network core (#6120) (@nflaig)
- only transfer cache at epoch transition (#6102) (@tuyennhv)
- avoid leaky event handler in waitForCheckpointState (#6096) (@tuyennhv)
- transfer cache in prepareNextSlot epoch transition (#6068) (@tuyennhv)
Build System
- add build workflow for debug nodejs (#6103) (@nazarhussain)
Continuous Integration
- update the core-dump pattern with a path suffix (#6142) (@nazarhussain)
Tests
- migrate state-transition unit tests to vitest (#6173) (@nazarhussain)
- migrate api unit tests to vitest (#6177) (@nazarhussain)
- fix flaky sim tests (#6163) (@nazarhussain)
- add retry option for segfault (#6161) (@nazarhussain)
- fix the benchmark tests (#6160) (@nazarhussain)
- add performance benchmarks for the phase0 block attributes (#6145) (@nazarhussain)
- enable coredump for the unit tests (#6107) (@nazarhussain)
- add tests for utils (#6109) (@murrayee)
- prover: move tests for prover to vitest (#6074) (@nazarhussain)
Maintenance
- release v1.13.0 (#6204) (@philknows)
- update flag to pass builder url (#6190) (@nflaig)
- log block transition steps in publishBlock api (#6199) (@tuyennhv)
- fix yarn.lock diff (#6169) (@nflaig)
- consistently include code in block error metadata (#6148) (@nflaig)
- update external signer configuration errors (#6140) (@nflaig)
- merge stable v1.12 back to unstable (#6100) (@philknows)
- add reference to attestation summary metric explainer (#6092) (@nflaig)
- log precomputed checkpoint state hits (#6097) (@tuyennhv)
- networks: update gnosis bootnodes (#6164) (@4rgon4ut)