Skip to content

Releases: ethereum/consensus-specs

v1.6.0

31 Oct 16:15
f96d3e7

Choose a tag to compare

Fulu

  • Set fork epoch & blob schedule for Fulu (#4689)

Testing

  • Revert "Deduplicate test cases in generator" (#4716)

Other

  • Bump version to v1.6.0 (#4715)

v1.6.0-beta.2

30 Oct 15:06
92dda6f

Choose a tag to compare

v1.6.0-beta.2 Pre-release
Pre-release

Altair

  • Refactor get_attestation_participation_flag_indices (#4692)
  • Optimized sync committee signature verification (#4687)

Gloas

  • Clean up Gloas specs (part 1) (#4685)
  • Clean up Gloas specs (part 2) (#4693)
  • Clean up Gloas specs (part 3) (#4694)
  • eip7732: add gossip rule for old payloads (#4695)
  • eip7732: remove uniqueness requirement in comment (#4708)
  • eip7732: fix signed envelope yields for execution payload tests (#4679)

Testing

  • Always reinstall eth2spec for non-editable installs (#4676)
  • Fix decorator order in light client tests (#4691)
  • Add tests for get_validators_custody_requirement (#4696)
  • Test that verify_data_column_sidecar respects the blob limit (#4690)
  • Remove merkle proof tests in Gloas (#4700)
  • Add pending payment withdrawal epoch asserts (#4701)

Other

  • Delete deprecated specifications (#4680)
  • Update documentation related to reference tests (#4681)
  • Remove "under active development" sentences (#4688)
  • Improve fork comment check script (#4682)
  • Clean up GitHub actions (#4683)
  • Expand CompatibleUnion deserialization error handling (#4699)
  • build(deps): bump the actions group with 2 updates (#4698)
  • Run pytest tests in release action (#4702)
  • Simplify codespell configuration (#4703)
  • Deduplicate test cases in generator (#4706)
  • Bump version to v1.6.0-beta.2 (#4707)

v1.6.0-beta.1

22 Oct 04:41
e6c3452

Choose a tag to compare

v1.6.0-beta.1 Pre-release
Pre-release

Phase0

  • Fix weak subjectivity checkpoint check (#4620)

Fulu

  • Add note about earliest_available_slot (#4617)
  • Ensure data column sidecars respect the blob limit (#4650)

Gloas

  • eip7732: add slot field to DataColumnSidecar (#4645)
  • eip7732: fix zero-amount builder withdrawals (#4651)
  • eip7732: swap beacon_block_root and slot in places in DataColumnSidecar (#4656)
  • Set default value of BuilderPendingPayment.withdrawable_epoch to FAR_FUTURE_EPOCH (#4631)
  • eip7732: deal with zero value bids correctly (#4646)
  • eip7732: use bid in block parent validation (#4648)

Testing

  • Add initial fuzzing support to fork choice compliance test generator (#4614)
  • Add summary to test generation (#4600)
  • Port kzg_4844 tests to pytest (#4606)
  • Fix output for gloas test (#4622)
  • Cache walk_packages in ad-hoc framework at collection time (#4577)
  • Use non-editable installs for test generators (#4634)
  • Make RNG deterministic again in ssz_generic runner (#4642)
  • eip7805: add unit tests for InclusionListStore (#4644)
  • Port kzg_7594 tests to pytest (#4654)
  • Fix decorator order in light-client tests (#4652)
  • Improve reftests logging (#4664)
  • Restart workers periodically to prevent memory accumulation (#4666)
  • Revert non-editable change in Makefile (#4667)
  • Port BLS tests to pytest (#4672)
  • Improve test decorators (#4658)
  • Reduce SSZ test vector size (#4662)

Other

  • Add pytest html plugin (#4619)
  • Use correct Container syntax in EIP-6800 spec (#4624)
  • build(deps): bump ruff from 0.13.1 to 0.13.2 in the actions group (#4623)
  • Migrate config to pyproject.toml and use uv for project management (#4627)
  • Fix some dependabot configuration file nits (#4629)
  • Properly order types from tables and python code blocks (#4625)
  • build(deps): bump the actions group with 2 updates (#4640)
  • eip8016: add CompatibleUnion specs and tests (#4581)
  • Restrict python version to <3.14 (#4643)
  • build(deps): bump the actions group with 2 updates (#4653)
  • Use altair spec objects in lightclient fork upgrade (#4636)
  • Explicitly define updated light-client containers for Capella (#4647)
  • Bump version to v1.6.0-beta.1 (#4665)
  • build(deps): bump astral-sh/setup-uv from 7.1.0 to 7.1.1 in the actions group (#4674)
  • Maybe fix release push step (#4675)
  • In the release action, use git rm to start fresh (#4677)
  • Do not push files to consensus-spec-tests (#4678)

v1.6.0-beta.0

24 Sep 14:11
34ed95a

Choose a tag to compare

v1.6.0-beta.0 Pre-release
Pre-release

Phase0

  • Add helper functions for slot time deadlines (#4589)
  • Fix filter_block_tree note to use checkpoint.root (#4551)
  • Fix deposit root field name in Eth1 data section (#4604)

Gloas

  • eip7732: add note about fee recipient (#4565)
  • eip7732: abort payment on proposer equivocation (#4562)
  • eip7732: enforce self build header signature to point of infinity (#4552)
  • eip7732: do not add zero value withdrawals (#4509)
  • eip7732: consider builder pending payments for pending balance to withdraw (#4513)
  • eip7732: remove header and inclusion proof from data column sidecar (#4527)
  • eip7732: rename execution payload header to execution payload bid (#4525)
  • eip7732: remove latest_execution_payload_header (#4598)
  • eip7732: clean up get_attestation_participation_flag_indices (#4583)
  • eip7928: add BeaconState container definition (#4582)
  • Clean up Gloas's presets (#4607)

EIP-8025

  • Add specs for EIP-8025 (Optional Execution Proofs) (#4591)

Testing

  • Speed up test generation bootstrap (#4574)
  • Emit light client tests for Fulu (#4569)
  • Port SSZ static tests to pytest (#4573)
  • Disable pathos library with threads=1 in test generation (#4568)
  • Use skips instead of asserting when an SSZ test is cancelled (#4578)
  • eip7732: add tests for execution payload availability reset (#4570)
  • Add ability to run framework tests separately (#4538)
  • Add regression test for verify_cell_kzg_proof_batch bug (#4590)
  • Only create ssz_static tests in generator mode (#4596)
  • Port blob_to_kzg_commitment tests to pytest (#4541)
  • eip7732: add attestation processing tests (#4564)

Other

  • Bump the actions group with 4 updates (#4571)
  • Bump the actions group with 6 updates (#4572)
  • Replace "honestly" with "realistically" (#4556)
  • eip7495: add ProgressiveContainer specs and tests (#4529)
  • Show feature specs on the website again (#4587)
  • Bump the actions group with 4 updates (#4592)
  • Forward verbose flag to pyspec rebuilding step (#4595)
  • Add python version check to Makefile (#4588)
  • Bump version to v1.6.0-beta.0 (#4599)
  • build(deps): bump the actions group with 2 updates (#4608)
  • build(deps): bump the actions group with 2 updates (#4609)
  • Disable pytest checks in release action (#4610)
  • Maybe fix release action issue (#4612)

v1.6.0-alpha.6

30 Aug 10:41
cd92a89

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

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

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

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

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

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