v4.0.4
Welcome to v4.0.4 release of Prysm! This is the first full release following the recent mainnet issues and it is very important that all stakers update to this release as soon as possible.
Aside from the critical fixes for mainnet, this release contains a number of new features and other fixes since v4.0.3.
Added
- Feature to build consensus and execution blocks in parallel. This feature has shown a noticeable reduction (~200ms) in block proposal times. Enable with
--build-block-parallel
#12297 - An in memory cache for validator registration can be enabled with
--enable-registration-cache
. See PR description before enabling. #12316 - Added new linters #12273 #12270 #12271
- Improved tracing data for builder pipeline #12302 #12332
- Improved withdrawal phrasing in validator withdrawal tooling #12306
- Improved blinded block error message #12310 #12309
- Added test for future slot tolerance #12344
- Pre-populate bls pubkey cache #11482
- Builder API support in E2E tests #12343
Changed
- Updated spectests to v1.3 #12300
- Cleanup duplicated code #12304
- Updated method signature for UnrealizedJustifiedPayloadBlockHash() #12314
- Updated k8s.io/client-go to 0.20.0 #11972
- Removed unused method argument #12327
- Refactored / moved some errors to different package #12329
- Update next slot cache at an earlier point in block processing #12321
- Use next slot cache for payload attribute #12286
- Cleanup keymanager mock #12341
- Update to go 1.20 #12333
- Modify InsertFinalizedDeposits signature to return an error #12342
- Improved statefeed initialization #12285
- Use v1alpha1 server in block production #12336
- Updated go generated files #12359
- Typo corrections #12385
Fixed
- Fixed e2e tx fuzzer nilerr lint issue #12313
- Fixed status for pending validators with multiple deposits #12318
- Use gwei in builder value evaluation #12291 #12370
- Return correct error when failing to unmarshal genesis state #12325
- Avoid double state copy in latestAncestor call #12326
- Fix mock v1alpha1 server #12319
- Fix committee race test #12338
- Fix flaky validator tests #12339
- Log correctly when the forkchoice head changed #12324
- Filter inactive keys from mev-boost / builder API validator registration #12322 #12358
- Save attestation to cache when calling SubmitAttestation in beacon API #12345
- Avoid panic on nil broadcast object #12369
- Fix initialization race #12374
- Properly close subnet iterator #12388
- ⚠️ Ignore untimely attestations #12387
- Fix inverted metric #12392
- ⚠️ Save to checkpoint cache if next state cache hits #12398
Security
This release contains some important fixes that improve the resiliency of Ethereum Consensus Layer. See #12387 and #12398.
Full Changelog: v4.0.3...v4.0.4