github ChainSafe/lodestar v1.47.0
Release v1.47.0

5 hours ago

Good day Lodestar operators! We've just release v1.47.0 and recommend you upgrade your mainnet and testnet nodes. This one is BIG! We have moved our bls operations to Zig!! 🎉🎉 We are super proud to bring the first of many Zig releases to you as you will definitely notice performance benefits. But wait, there's more!!

We have been hunting for a bug in libp2p for a while, one that prevented graceful shutdown and this release has finally squashed that bug dead! You should not see any more issues with hanging shutdowns.

This is on top of all the work we've done to get ready for Glamsterdam. And ready we are. There is still some stuff you will see in the next release but for the most part your clients will be ready to rock and roll for the next fork. We just need to wait for scheduling to add the fork transition epochs into the codebase. Stay tuned...

We love you all and thank you for standing with us while we laid the foundation for a Zig encrusted future. We look forward to the next pieces that we will release and are excited to bring you more news in upcoming versions. Its going to be legen-wait-for-it-dary...

Full Changelog

Features

Bug Fixes

  • feed peer sync meta to UnknownBlockPeerBalancer on subscribeToNetwork (#9924) (@twoeths)
  • bound payload envelope seen cache (#9904) (@twoeths)
  • recompute head after pulling up checkpoints (#9864) (@twoeths)
  • keep event stream alive if an event can not be serialized (#9872) (@nflaig)
  • handle attributable peers on range sync (#9836) (@twoeths)
  • always add api attestations to the pool (#9886) (@nflaig)
  • key payload attesters by slot (#9882) (@GrapeBaBa)
  • treat dial timeouts as HighToleranceError for all methods (#9877) (@nflaig)
  • prune prefinalized pending items in BlockInputSync (#9852) (@twoeths)
  • ignore proposer preferences for pre-gloas proposal slots (#9869) (@nflaig)
  • contain errors thrown while sending events to a client (#9871) (@nflaig)
  • fallback when native chacha20-poly1305 is unavailable (#9879) (@wemeetagain)
  • fully initialize execution payload bid on gloas upgrade (#9847) (@nflaig)
  • preserve request content length (#9834) (@nflaig)
  • use progressive payload attestation pool response (#9838) (@nflaig)
  • prevent builder payment weight double count (#9830) (@nflaig)
  • reject repeat proposals in publish block API (#9818) (@nflaig)
  • count canonical FULL and EMPTY blocks in circuit breaker (#9815) (@nflaig)
  • trigger getBlobs in Unknown block sync (#9806) (@twoeths)
  • process REPEAT_PROPOSAL block (#9805) (@twoeths)
  • differentiate ALREADY_KNOWN vs REPEAT_PROPOSAL seen block proposal (#9814) (@twoeths)
  • harden safe execution block hash handling (#9794) (@nflaig)
  • harden range sync hashBlocks() (#9686) (@twoeths)
  • fork-choice: preserve exact Gwei weights (#9821) (@GrapeBaBa)
  • builder: catch transient failures on getStateBuilders (#9868) (@markolazic01)
  • builder: wait for Gloas fork and improve startup logging (#9839) (@lodekeeper)

Performance

  • resolve builder top-ups by index at the fork transition (#9861) (@nflaig)
  • implement appendBuilderToRegistry() (#9840) (@twoeths)

Refactoring

  • assert BeaconEvent type in eventstream handler (#9894) (@lodekeeper)
  • use Wei type for produce block values (#9831) (@nflaig)
  • use builder boost factor for gloas block production (#9807) (@nflaig)
  • network: resolve zero peers publish policy per topic (#9887) (@nflaig)

Dependencies

Continuous Integration

Tests

Styles

Maintenance

Documentation

Don't miss a new lodestar release

NewReleases is sending notifications on new releases.