Skip to content

Releases: ethereum/consensus-specs

v1.6.0-alpha.6

30 Aug 10:41
cd92a89
Compare
Choose a tag to compare
v1.6.0-alpha.6 Pre-release
Pre-release

Phase0

  • Fix typo in new configuration variable (#4524)
  • Remove TTFB_TIMEOUT and RESP_TIMEOUT configs (#4532)

Fulu

  • Enforce blob schedule entry's epoch to be post-fulu (#4523)
  • Ensure cell indices are sorted in recover_cells_and_kzg_proofs (#4519)

Gloas

  • eip7928: introduce specs for block access lists (#4526)

Testing

  • Add tests with validator set changes at forks (#4439)
  • Update randomize_state to include pending operations (#4531)
  • Add reference tests for KZG compute challenge functions (#4516)
  • Fix Gloas self build test to use correct proposer (#4537)
  • Do not run KZG compute challenge tests in the collection phase (#4546)
  • Enable payload attestation tests for mainnet (#4544)
  • In randomized tests, only do voluntary exit if no pending withdrawals (#4553)

Other

  • Add pull request template (#4517)
  • Include pre-releases in release drafter & update labels (#4518)
  • Generate spec index pages in mkdocs (#4514)
  • Improve mkdocs documentation page (#4521)
  • Fix some typo / grammatical errors in Fulu specs (#4533)
  • Bump the actions group with 3 updates (#4534)
  • Simplify p2p-interface specs for handling ForkDigest (#4491)
  • Bump version to v1.6.0-alpha.6 (#4540)
  • Add extended help option in Makefile (#4547)
  • Remove unnecessary make rules (#4548)
  • Clean up old references to make pyspec (#4549)

v1.6.0-alpha.5

21 Aug 18:53
d237704
Compare
Choose a tag to compare
v1.6.0-alpha.5 Pre-release
Pre-release

Phase0

  • Replace INTERVALS_PER_SLOT with explicit slot component times (#4476)

Deneb

  • Set MAX_BLOB_COMMITMENTS_PER_BLOCK minimal preset to 4096 (#4508)

Gloas

  • eip7732: do not deduplicate indexed_payload_attestations (#4496)
  • eip7732: rebase spec onto fulu (#4503)
  • eip7732: add tests for builder pending payments processing (#4475)
  • Rename eip7732 specs to gloas (#4506)

EIP-7805

  • eip7805: rebase spec onto fulu (#4502)
  • eip7805: make variable name more coherent (#4505)

Testing

  • eip7732: use correct late block cutoff time in proposer boost tests (#4501)
  • eip7732: add process execution payload envelope tests (#4458)
  • Remove early return statement in KZG test (#4510)

Other

  • Organize configuration sections & add missing comments (#4497)
  • Remove time conversion comments from configs/presets (#4498)
  • Bump the actions group with 3 updates (#4499)
  • Bump the actions group with 3 updates (#4511)
  • Bump version to v1.6.0-alpha.5 (#4515)

v1.6.0-alpha.4

07 Aug 12:31
ad36024
Compare
Choose a tag to compare
v1.6.0-alpha.4 Pre-release
Pre-release

Fulu

  • Make commitment deduplication in verify_cell_kzg_proof_batch deterministic (#4447)
  • In get_custody_groups, skip computation if all groups are custodied (#4459)
  • Make NUMBER_OF_COLUMNS a preset (#4485)

EIP-7732

  • eip7732: make several updates to spec (#4438)
  • eip7732: fix inclusion proof depth (#4451)
  • eip7732: update fork-choice (#4450)
  • eip7732: clarify payload envelope construction (#4454)
  • eip7732: add missing new/modified prefixes to functions (#4455)
  • eip7732: fix duplicate function call (#4460)
  • eip7732: update self build condition (#4464)
  • eip7732: fix builder pending withdrawals processing (#4470)
  • eip7732: add boolean to PayloadAttestationData (#4473)
  • eip7732: improve some p2p gossip validations (#4474)
  • eip7732: add process payload att tests (#4463)
  • eip7732: fix a typo in builder.md (#4483)
  • eip7732: fix quorum calc to avoid double-counting (#4481)
  • eip7732: make PTC selection balance-weighted (#4488)

EIP-7805

  • eip7805: resolve TODOs and improve spec (#4351)
  • eip7805: move inclusion list specs to new inclusion-list.md file (#4446)
  • eip7805: align section headers in fork-choice.md (#4449)
  • eip7805: remove unnecessary equivocation filter (#4492)
  • eip7805: fix cutoff config typo (#4490)

EIP-7916

  • eip7916: add ProgressiveList specs and tests (#4445)
  • eip7916: add ProgressiveBitlist specs and tests (#4480)

Testing

  • eip7805: add IL committee assignment and IL signature tests (#4435)
  • Fix mutable default argument anti-pattern for Random objects (#4433)
  • eip7732: add becoming builder section (#4456)
  • Make test_full_attestations_one_validator_one_gwei faster (#4462)
  • eip7732: remove duplicate merge transition complete testing section (#4478)
  • eip7732: add process execution payload header tests (#4457)
  • eip7732: disable payload attestation tests on mainnet (#4495)

Other

  • Remove broken link from README (#4431)
  • Remove duplicate "the" words in comments (#4430)
  • Remove empty sections and unify Protocols section name (#4436)
  • Improve the release action (#4432)
  • Bump the actions group across 1 directory with 3 updates (#4434)
  • Make updates to reflect default master branch (#4437)
  • Replace outdated instance of csc with cgc (#4444)
  • Bump the actions group with 2 updates (#4442)
  • Fix broken links in markdown files (#4441)
  • Add script to check for inconsistent fork comments (#4448)
  • Store blob schedule as a VariableDefinition in the pyspec (#4469)
  • Bump the actions group with 3 updates (#4471)
  • Use frozendict with list-of-records (#4486)
  • Bump the actions group with 2 updates (#4487)
  • Bump version to v1.6.0-alpha.4 (#4494)

v1.6.0-alpha.3

02 Jul 21:58
8704190
Compare
Choose a tag to compare
v1.6.0-alpha.3 Pre-release
Pre-release

Fulu

  • Add execution_requests to fulu.GetPayloadResponse (#4389)
  • Remove peer sampling in Fulu (#4393)
  • Serve DataColumnSidecarsByRoot for finalized epochs (#4394)
  • Use get_blob_parameters in gossip block validation (#4401)
  • Add some clarifications around new ENR changes (#4406)
  • Clarify peering expectations when nfd values are different (#4407)
  • Convert DAS providers section to supernodes section (#4415)

Testing

  • Add fork choice compliance test generator (#3831)
  • Add more proposer lookahead tests (#4375)
  • Add fork version to compute fork digest test cases (#4376)
  • Add test for proposer lookahead excluding exited validators (#4380)
  • Fix yields in new proposer lookahead test (#4386)
  • Add fork choice tests for PeerDAS (#4391)
  • Fix test_effective_decrease_balance_updates_lookahead reftest (#4395)
  • Correct the docstrings for process_execution_payload tests with blobs (#4408)
  • Remove unnecessary config overrides in test (#4410)
  • Test proposer lookahead initialization uses active validator set at fork (#4413)
  • Remove blobs/proofs from new PeerDAS forkchoice tests (#4421)

Other

  • Do not wrap long lines in config.yaml files (#4379)
  • Bump the actions group with 4 updates (#4385)
  • Combine helpers into compute_time_at_slot (#4388)
  • Replace ast.unparse() with custom parsing (#4387)
  • Add jtraglia's spec viewer to resource list (#4392)
  • Remove dead attestation generation code (#4396)
  • Add nightly workflow to deal with stale issues/PRs (#4403)
  • Bump the actions group with 2 updates (#4405)
  • Add support for automated releases (#4409)
  • Fix formatting for Capella preset (#4411)
  • Update release documentation (#4416)
  • Run mdformat on all markdown files (#4417)
  • Fix sanity test steps in release action (#4418)
  • In the release action, set timeout to 24 hours (#4423)
  • In the release action, disable sanity checks & remove sudo (#4425)
  • In the release action, add back sudo (#4428)

Arcanine

12 Jun 05:49
edb01ee
Compare
Choose a tag to compare
Arcanine Pre-release
Pre-release

v1.6.0-alpha.2 -- Arcanine -- is an alpha release for the upcoming Fulu upgrade.

PR showing full diff can be found here: #4367

Fulu

  • Modify fork digest to distinguish BPO forks + add entry to ENR #4354
  • EIP-7917: Refactor return types from List to Vector #4361
  • Define requirements for the blob schedule #4370
  • Suggest using getPayloadV5 to get blobs/proofs #4371
  • Update CGC before Fulu #4373
  • Introduce Status v2 with earliest_available_slot #4374

Testing

  • Increase mainnet tests timeout to 12 hours #4362
  • Fix epoch processing tests for proposer lookahead #4364
  • Alias new test to blocks handler #4365
  • Detect errors in reference test generator action #4366

Other

  • Delete unnecessary container comments #4358
  • Run linter on code in markdown files #4359
  • Make several fixes in setup.py #4360
  • Use python 3.13 in CI actions #4363
  • Bump version to v1.6.0-alpha.2 #4368
  • Bump the actions group with 3 updates #4372

Ninetales

03 Jun 16:53
9fce57d
Compare
Choose a tag to compare
Ninetales Pre-release
Pre-release

v1.6.0-alpha.1 -- Ninetales -- is an alpha release for the upcoming Fulu upgrade.

PR showing full diff can be found here: #4346

Fulu

  • Add EIP-7917: Deterministic proposer lookahead #4190
  • Remove Deneb/Electra from blob schedule and default to Electra limit #4341
  • Set blob schedule to an empty list #4342
  • Make validator custody increase only and backfill optional #4357

Testing

  • Allow custom CLI argument parser in test generator #4339
  • Add repository input to reftest generator action #4356

Other

  • Refactor pyspec generator code #4330
  • Bump the actions group with 3 updates #4334
  • Run linting on pysetup directory #4335
  • Delete unnecessary eth2spec/eip7732/__init__.py file #4336
  • Bump the actions group with 4 updates #4338
  • Fix handling of multiple Python definitions in code blocks #4344
  • Update minimum python version to 3.10 #4345
  • Run linter on setup.py #4348
  • Update default shell to bail on error #4349
  • Replace black/pylint/isort with ruff #4350
  • Bump the actions group with 4 updates #4355

Charmander

20 May 01:09
e14deee
Compare
Choose a tag to compare
Charmander Pre-release
Pre-release

v1.6.0-alpha.0 -- Charmander -- is an alpha release for the upcoming Fulu upgrade.

PR showing full diff can be found here: #4316

Fulu

  • Clarification on custody sampling #4251
  • Introduce blob schedule #4277
  • Fix typos in blob configuration comments for fulu presets #4311
  • Clarify node behavior when validator custody changes #4320
  • State that reconstructed sidecars which are not custodied may be deleted #4332

Testing

  • Add full epoch processing tests #4155
  • Refactor bls generator #4304
  • Improve generator UX #4309
  • Refactor gen_runner #4310
  • Improve run_get_committee_assignment #4315
  • Simplify reference test generators #4317
  • Generate reference tests for EIP7732 & EIP7805 #4319
  • Fix phase run decorator to skip EIP-7732 as intended #4326
  • Bind inputs in ssz_generic reftests #4333

Other

  • Bump the actions group with 2 updates #4312
  • Enforce 80-character line limit in all markdown files #4321
  • Fix link to das-core in fulu validator specs #4324
  • Use latest version of uv when creating the venv #4325
  • Do import sorting with isort #4327
  • Update isort to order_by_type = false #4328

Pikachu

07 May 11:47
b5c3b61
Compare
Choose a tag to compare

v1.5.0 -- Pikachu -- is the mainnet release for the Electra upgrade that went live on May 7, 2025.

PR showing full diff can be found here: #4298

Electra

  • Add various tests cases for Electra #4265
  • Fix bug in Electra withdrawals processing #4281
  • Mark Electra as stable #4285
  • Make *_REQUESTS_PER_PAYLOAD the same for mainnet/minimal #4291
  • Update ELECTRA_FORK_EPOCH in fork.md #4295

Fulu

  • Allow skipping verification for blobs from EL #4262
  • Improve DataColumnSidecarsByRoot request #4284
  • Deprecate BlobSidecarsByRangeRange/Root in Fulu #4286
  • Remove unnecessary sort in compute_columns_for_custody_group #4289

EIP-7732 (ePBS)

  • Fix KZG commitment inclusion proof depth #4264

EIP-7805 (FOCIL)

  • Use MAX_TRANSACTIONS_PER_PAYLOAD for InclusionList transactions size #4220
  • Update config/preset files #4268
  • Make IL committee domain a constant #4276

Testing

  • Disable parallelism with make test if a test name is specified #4270
  • Add workflow to run nightly mainnet tests #4280
  • Add ability to run generators for specific tests #4288
  • Add two new custody group tests #4290
  • Remove deprecated testing infrastructure #4294
  • Refactor kzg_7594 generator #4296
  • Refactor kzg_4844 generator #4300
  • Clean up generator runner #4301
  • Fix two mistakes when refactoring the kzg_4844 generator #4302

Other

  • Cleanup presets and configs #4256
  • Remove unused is_previous_epoch_justified function #4269
  • Simplify specification tables in main readme #4271
  • Do a major clean up of the main readme #4272
  • Bump the actions group with 2 updates #4273
  • Fix a couple broken links #4279
  • Bump the actions group with 3 updates #4282
  • Bump setuptools from 79.0.0 to 80.0.0 in the actions group #4292
  • Bump actions/setup-python from 5.5.0 to 5.6.0 in the actions group #4293
  • Ensure presets/configs for yaml/spec match #4297
  • Bump the actions group with 2 updates #4299

Plusle

10 Apr 20:18
Compare
Choose a tag to compare
Plusle Pre-release
Pre-release

v1.5.0-beta.5 -- Plusle -- is a beta release for the upcoming Electra upgrade.

PR showing full diff can be found here: #4261

Electra

  • Update weak subjectivity period computation #4179
  • Clean up electra presets #4254
  • Schedule electra fork epoch for mainnet #4258

EIP-7805 (FOCIL)

  • Add EIP-7805 fork version/epoch to the configs #4250

Testing

  • Add test that affects the proposer selection #4230
  • Add two consolidation request processing edge case tests #4246
  • Fix the full consolidation queue test #4248
  • Add test for withdrawal requests when pending queue is full #4252
  • Add consolidation test with same source and target #4259

Other

  • Close outdated issues, part 1 #4231
  • Bump the actions group with 3 updates #4241
  • Bump actions/setup-python from 5.4.0 to 5.5.0 in the actions group #4242
  • Use mdformat for markdown formatting #4244
  • Use black for linting tests directory #4245
  • Bump the actions group with 3 updates #4249

Zapdos

31 Mar 22:06
746c859
Compare
Choose a tag to compare
Zapdos Pre-release
Pre-release

v1.5.0-beta.4 -- Zapdos -- is a beta release for the upcoming Electra upgrade.

PR showing full diff can be found here: #4235

Electra

  • Update fork trigger sections #4208
  • Remove outdated paragraph about ExecutionPayloadV4 #4221

Fulu

  • Create honest validator specifications #4135
  • Add Distributed Blob Publishing to networking specifications #4183
  • Update BlobsBundle #4187
  • Clarify validator custody updates #4188
  • Use finalized state for validator custody #4211
  • Use effective balances to determine column custody #4218
  • Add missing section headers in specifications #4223

EIP-7732 (ePBS)

  • Run existing spec tests with EIP-7732 #3854

EIP-7805 (FOCIL)

  • Add fork specifications for EIP-7805 #4191

Testing

  • Test blob_kzg_commitments_merkle_proof with different blob counts #4161
  • Fix a small bug in a pending consolidation test #4217
  • Round down value when setting validator's effective balance #4229
  • Add full_pending_withdrawals_but_first_skipped_* tests #4237
  • Add multiple_pending_deposits_same_pubkey_different_signature test #4238
  • Add withdrawal_and_consolidation_effective_balance_updates test #4239

Other

  • Add weekly dependabot check for python dependencies #4110
  • Update canonical network names for Hoodi #4166
  • Improve readme and remove docker on tests #4178
  • Remove CircleCI checks #4192
  • Pin GitHub actions versions #4193
  • Bump the actions group with 3 updates #4194
  • Bump mkdocs-awesome-pages-plugin from 2.8.0 to 2.10.1 #4196
  • Bump pytest from 8.3.4 to 8.3.5 #4197
  • Bump mkdocs from 1.4.2 to 1.6.1 #4198
  • Bump trie from 3.0.1 to 3.1.0 #4201
  • Bump py-ecc from 6.0.0 to 7.0.1 #4202
  • Group all dependabot python upgrades #4204
  • Bump the actions group with 11 updates #4207
  • Fix some typos in comments #4209
  • Use consistent note style #4224
  • Replace some instances of "extended" with "modified" #4225