Skip to content

Releases: ethereum/consensus-specs

Gamlum

18 Apr 15:15
01b5369
Compare
Choose a tag to compare

v1.3.0 -- Gamlum -- is the mainnet release for the Capella upgrade that went live on April 12, 2023.

PR showing full diff can be found here: #3323

Deneb

  • Switch BLOB_TX_TYPE to 0x03 #3317

Testing, repo, etc

Lionel

20 Mar 16:13
e923c62
Compare
Choose a tag to compare
Lionel Pre-release
Pre-release

v1.3.0-rc.5 -- Lionel -- is the fifth release candidate for the coming Capella upgrade.

This release sets the mainnet Capella fork epoch (CAPELLA_FORK_EPOCH) value.

Note that to be cautious, we still use the rc pre-release to avoid any last-minute updates. We will bump to v1.3.0 right after the mainnet fork is activated.

PR showing full diff can be found here: #3302

Capella

  • Set mainnet Capella fork epoch #3300

Deneb

  • [Cryptography] Reject zero inputs in bls_modular_inverse() #3299

Thunder's Goat

16 Mar 14:17
df8ff7f
Compare
Choose a tag to compare
Thunder's Goat Pre-release
Pre-release

v1.3.0-rc.4 -- Thunder's Goat -- is the fourth release candidate for the coming Capella upgrade.

This release ushers in many new test generators for kzg-4844 libraries (#3274). Huge shout-out to @dankrad for driving this.

Beyond that, this includes a number of minor patches and iterative changes to Deneb in continued refinement for upcoming devnets.

This release does not change Capella consensus logic.

PR showing full diff can be found here: #3268

Phase 0

  • [non-substantive] Change get_latest_attesting_balance() to get_weight() #3250

Capella

Deneb

  • Test generators for kzg-4844 libraries #3274
  • Add blob_sidecar gossip rule for parent slot #3275
  • Remove sending empty blobs sidecar responses #3242
  • Increase Deneb crypto helpers test coverage #3283
  • Minor typos, formatting, grammar, etc #3268 #3270 #3271 #3278 #3279 #3289 #3291

Experimental

EIP 6110

  • Core implementation of in-protocol deposit receipts in CL #3177
  • Add EIP-6110 spec links to README table #3295

Light clients

  • Check correct fork version in LC sync protocol #3284

Testing, repo, etc

  • Refactor Makefile: only list the spec names once #3276
  • Update disclosure page and email for reporting bugs #3287

Bypass Capacitor

21 Feb 06:42
84fcfa8
Compare
Choose a tag to compare
Bypass Capacitor Pre-release
Pre-release

v1.3.0-rc.3 -- Bypass Capacitor -- is the fourth release candidate for the coming Capella upgrade.

This release brings one new edge-case test to Capella (#3264), migrates eip4844 references to the fork name "Deneb" (#3215), frees the Deneb blobs from block gossip (#3244) and adds new KZG API (#3236).

This release does not change Capella consensus logic.

PR showing full diff can be found here: #3263

Phase 0

  • [non-substantive] Add a note of on_attester_slashing handler to fork choice spec: #3221

Altair

  • [non-substantive] Simplify committee weight computation #3246

Capella

  • Add deposit+bls_change test #3264

Deneb

  • Migrate eip4844 references to Deneb #3215
  • Move excess data gas field to the end of execution payload #3218
  • Free the blobs -- decouple Block and Blob gossip and a minor fix of KZG specs #3244
  • Clarify the use of context bytes in all RPC methods in Deneb #3229
  • Cryptography
    • Add KZG multi-verify function #3236
    • Fix compute_quotient_eval_within_domain overflow #3256
    • Typo-fix/refactoring: #3260 #3262

Testing, repo, etc

  • Move experimental features to specs/_features folder #3248
  • Fix tests #3237
  • Typo fix #3251

Skiddo Salm

27 Jan 13:11
67c2f9e
Compare
Choose a tag to compare
Skiddo Salm Pre-release
Pre-release

v1.3.0-rc.2 --Skiddo Salm-- is the third release candidate for the coming Capella upgrade.

This release does not change Capella consensus logic.

PR showing full diff can be found here: #3234

R&D

4844

  • Polynomial commitments
    • Handle barycentric evaluation at roots of unity #3214
    • Make compute_kzg_proof() take bytes as input #3219
    • Remove mention of 0x0000 for serialised points #3223
    • All public methods take bytes as input and add explicit G1 validation #3224
  • Remove KZG point and blob validations in gossip #3217
  • Fix typo #3216

Light client

  • Add ExecutionPayloadHeader to LC data #3151

Testing, repo, etc

  • New Capella state transition tests and new Capella -> EIP-4844 fork transition tests #3227
  • Use Gwei for Withdrawal amount in mock-EE #3213
  • Fix typo #3220

Alpine Ibex

13 Jan 18:12
15eb331
Compare
Choose a tag to compare
Alpine Ibex Pre-release
Pre-release

v1.3.0-rc.1 -- Alpine Ibex -- is the second release candidate for the coming Capella upgrade.

This release contains one critical breaking change in relation to rc.0 -- use of GENESIS_FORK_VERSION in BLSToExecutionChange messages (#3206).

PR showing full diff can be found here: #3209

Capella

  • MUST use GENESIS_FORK_VERSION to sign BLSToExecutionChange message #3206

R&D

4844

  • [bugfix] Add historical_summaries setup to fork.md #3201
  • Clarify rate limit behavior for sidecar with zero blobs #3174

Light client

  • Add LightClientHeader wrapper #3190
  • minor typos, edits, etc #3198

Testing, repo, etc

  • Disable cache for CI runner and use specific mypy version #3199
  • Apply with_config_overrides to all phases #3121
  • Capella tests
    • Add BLSToExecutionChange test_invalid_previous_fork_version test case #3203
    • Add a process_bls_to_execution_change test case from staking-deposit-cli #3202

Accumulation

06 Jan 20:19
5f1b88f
Compare
Choose a tag to compare
Accumulation Pre-release
Pre-release

v1.3.0-rc.0 -- Accumulation -- is the first release candidate for the coming Capella upgrade.

Capella specs are now feature complete and expected to be stable unless an unexpected issue arises.

4844 specs have been rebased (#3181) to be built on full Capella functionality. This is reflected in the test suite.

PR showing full diff can be found here: #3192

Capella

R&D

Sharding and 4844

  • Rebase 4844 on Capella functionality #3181
  • BlobsSidecarsByRange: Change range lower bound to EIP4844_FORK_EPOCH #3163
  • Clarify BeaconBlockAndBlobsSidecarByRoot no blob available #3154
  • Handle unavailable data outside of prune window #3169
  • Signify compute_kzg_proof as a public method #3167
  • Move is_data_available check to fork-choice on_block #3185
  • minor typos, edits, etc #3188

Light client

  • Add block_to_light_client_header helper #3149

Testing, repo, etc

  • Ensure that no duplicate block hashes in sync/from_syncing_to_invalid test case #3187

Goat Star

14 Dec 19:38
faa9fea
Compare
Choose a tag to compare
Goat Star Pre-release
Pre-release

v1.3.0-alpha.2 -- Goat Star -- is an alpha pre-release containing iterative improvements to Capella and 4844 in preparation for the next wave of R&D testnets.

Note the feature addition of bounding the withdrawals sweep in Capella -- #3095. The rest is primarily config changes, clarifications, and minor fixes.

PR showing full diff can be found here: #3161

Phase 0

  • Deprecate phase 0-only versions of beacon_blocks_by_{range,root} #3014

R&D

Withdrawals

  • Clarify in docs that full withdrawals only apply to exited validators #3146
  • Bound the maximum number of validators considered for withdrawals per sweep #3095

Sharding and 4844

  • Remove optimistic sync mentions #3125
  • Update MAX_BLOBS_PER_BLOCK to 4 #3145
  • Update G2 trusted setup length to 65 #3156
  • Clarify that z should not be in the domain #3159
  • Minor typos, syntax, etc #3120, #3127, #3152, #3158

Light client

  • Pass blocks to LC data creation functions #3070

Testing, repo, etc

  • Proper EL block hash implementation in tests #3126
  • Add EIP4844 pylint and Mypy checks #3134
  • Cleanup explicit fork enumerations in tests #3107
  • Add tests to test sync aggregate's order of balance operation #3157
  • Minor formatting and other fixes

Karanikomoru

18 Nov 23:56
0edd021
Compare
Choose a tag to compare
Karanikomoru Pre-release
Pre-release

v1.3.0-alpha.1 -- Karanikomoru -- is an alpha pre-release containing iterative improvements to Capella and 4844 in preparation for the next wave of R&D testnets.

Note: There are a number small changes under consideration for Capella and 4844. We expect another release soon, but want to provide a stable target in the meantime.

PR showing full diff can be found here: #3116

R&D

Withdrawals

  • Add Gossip Topic bls_to_execution_change #3075
  • Add note about packing BLS to execution changes into a block #3081
  • Withdrawals without queues #3068
  • Add note to Capella validator guide about BLS to execution change #3084

Sharding and 4844

  • Remove signed blobs #3062 #3083
  • Fix type error in the inputs to hash_to_bls_field() #3077
  • Update tx_peek_blob_versioned_hashes to match tx type from fee market update #3027
  • Explicitly mention old gossip validations for block #3091
  • Add block and sidecar retrival by root #3089
  • Fix latest_execution_payload_header field in eip4844 state upgrade #3106
  • Clarify deprecation of beacon_block gossip topic in 4844 #3090
  • Rebase EIP-4844 on Capella #3052
  • Make validate_blobs_sidecar a gossip condition #3108
  • Refactor verify_kzg_proof() to receive bytes (used in precompile) #3097
  • Testing, formatting, and name changes #3101, #3110, #3119

Light client

  • Clarify where LC proofs are rooted #3065
  • Document how to derive fork context for LC gossip #3063
  • Fix slot checks in light client p2p spec #3086
  • Testing, formatting, and name changes #3061, #3064, #3067, #3072, #3066

Testing, repo, etc

  • Update remerkleable to 0.1.25 #3069
  • Fix --preset-list argument and enhance error output #3111
  • Minor formatting and other fixes #3071

Látigo Cepa

27 Oct 01:34
4c67744
Compare
Choose a tag to compare
Látigo Cepa Pre-release
Pre-release

v1.3.0-alpha.0 -- Látigo Cepa -- is an alpha release containing withdrawal tests.

PR showing full diff can be found here: #3055

R&D

Withdrawals (Capella)

  • Remove fully_withdrawn_epoch field from Validator #2998 #3029
  • Add validator_index to Withdrawal #3050

Sharding and 4844

  • Introduce bytes_to_bls_field helper #3015
  • Fix bit_reversal_permutation helper's comment #3017
  • Update ExecutionPayload with EIP-4844 fee market changes #3004
  • Fix the notes of P2P-interface and the typo of validator guide #3019
  • Fix type annotation #3021
  • Modify MIN_EPOCHS_FOR_BLOBS_SIDECARS_REQUESTS to 18 days #3047
  • EIP4844: couple beacon block and blob sidecar for p2p #3046

Testing, repo, etc

  • Add partial withdrawal balance tests #3010
  • Fix typos #3023 #3039
  • Bump dep packages version and fix lint issues #3018 #3060
  • Add some Capella sanity tests #3024
  • Remove work-in-progress notes in Bellatrix specs #3033
  • Add Capella test vectors #3040