Skip to content

Releases: ethereum/consensus-specs

v1.7.0-alpha.2

03 Feb 14:33
7e33b9f

Choose a tag to compare

v1.7.0-alpha.2 Pre-release
Pre-release

Phase0

  • Use head_state for epoch boundary root note (#4881)

Gloas

  • Add paragraph about DoS prevention measures for p2p bids (#4831)
  • Fix indexed payload attestation domain (#4836)
  • Reserve space for one validator sweep withdrawal (#4832)
  • Update prepare_execution_payload for Gloas (#4841)
  • Onboard builders at the fork (#4817)
  • Remove the blob sidecars section in Gloas (#4853)
  • Onboard builders using pending deposit slot (#4868)
  • Fix nit in onboard_builders_from_pending_deposits comment (#4862)
  • Simplify data column sidecar gossip checks in Gloas (#4874)
  • Reduce minimum builder withdrawability delay (#4869)
  • Allow multiple preferences from validators (#4879)
  • Move KZG commitments to the bid (#4875)
  • Clarify data column sidecar validation rules (#4880)
  • Clarify when builders become active (#4890)

EIP-8025

  • Advertise execution proof awareness in metadata and ENR (#4877)
  • Refactor EIP-8025 specs (#4828)
  • Check for active validators in whitelist (#4886)

Testing

  • Add process_withdrawals tests for Gloas (#4830)
  • Fix gloas withdrawal test under mainnet preset (#4850)
  • Add missing init file for gloas helpers module (#4855)
  • Do not yield execution payload in Gloas withdrawal tests (#4863)
  • Add cross epoch domain test for payload attestations (#4878)
  • Restore randomized blocks test generator (#4872)
  • Add two new ptc tests (#4882)
  • Add more proposer slashing tests (#4871)
  • Add test for execution payload with wrong withdrawals (#4856)
  • Remove two execution payload tests with blob commitments (#4888)
  • Fix assertion checks in tests (#4889)

Other

  • Update release trigger (#4825)
  • Improve the release action (#4827)
  • Bump astral-sh/setup-uv from 7.1.6 to 7.2.0 in the actions group (#4834)
  • Improve make lint (#4838)
  • Merkleize progressive SSZ shape to right (#4813)
  • Improve make lint console output (#4839)
  • Clean up some sections (#4842)
  • Enable two more pypy checks (#4845)
  • Rename two sections (#4844)
  • Fix various nits (#4771)
  • Bump release-drafter/release-drafter from 6.1.0 to 6.1.1 (#4849)
  • Add INP rule to ruff (#4857)
  • Fix generators harness to work with __init__.py (#4861)
  • Bump the actions group with 3 updates (#4865)
  • Fix typo (#4876)
  • Bump version to 1.7.0-alpha.2 (#4883)
  • Add automatic PR labeling (#4873)
  • Fix release drafter config so that it detects the last release (#4891)

v1.7.0-alpha.1

10 Jan 10:13
69a2582

Choose a tag to compare

v1.7.0-alpha.1 Pre-release
Pre-release

Capella

  • Add new ExpectedWithdrawals dataclass (#4812)
  • Revert update_next_withdrawal_validator_index change (#4821)

EIP-7805

  • Reflect recent changes into EIP-7805 spec (#4818)

Other

  • Fix uploads in release action (#4824)
  • Add check for header level mistakes (#4823)
  • Organize Helpers and Handlers sections (#4819)
  • Bump version to 1.7.0-alpha.1 (#4822)

v1.7.0-alpha.0

06 Jan 13:37
915907a

Choose a tag to compare

v1.7.0-alpha.0 Pre-release
Pre-release

Phase0

  • Refactor get_weight and get_proposer_score (#4746)
  • Remove deprecated INTERVALS_PER_SLOT constant (#4805)

Bellatrix

  • Move pow_chain argument in prepare_execution_payload example (#4750)

Capella

  • Refactor get_expected_withdrawals (#4766)
  • Refactor process_withdrawals (#4765)
  • Rename get_sweep_withdrawals to get_validators_sweep_withdrawals (#4789)
  • Add types to processed count variables (#4790)
  • Fix get_expected_withdrawals return type (#4796)
  • Remove epoch param in withdrawal functions (#4798)

Deneb

  • Fix comment typo in barycentric formula (#4752)

Fulu

  • Fix incorrect ordering of row_index/column_index (#4764)
  • Replace old instance of current_proposer_lookahead in spec (#4786)

Gloas

  • Use non-placeholder value for DOMAIN_BEACON_BUILDER (#4753)
  • Suggest to queue DataColumnSidecars if they race the block (#4736)
  • Store full expected withdrawals in BeaconState while pending in ePBS (#4745)
  • Add note for is_builder_payment_withdrawable (#4770)
  • Fix is_builder_payment_withdrawable function (#4774)
  • Fix blob_kzg_commitments_root name and bid.block_hash reference (#4780)
  • Remove validate_merge_block from Gloas specs (#4784)
  • Set bid.prev_randao in payload bid construction (#4782)
  • Update comparison to quorum value (#4775)
  • Remove slot from get_indexed_payload_attestation (#4797)
  • Payload Attestations due before get_payload_attestation_due_ms (#4801)
  • Refactor get_ancestor in Gloas (#4802)
  • Set execution_payment field when constructing bid (#4804)
  • Make builders non-validating staked actors (#4788)
  • Add specs for proposer preferences (#4777)
  • Refactor get_weight and is_supporting_vote (#4800)
  • Finishing touches for the gloas fork-choice (#4807)

Testing

  • Add fork tests for Gloas (#4756)
  • Add manifest file to each each reference test (#4712)
  • Fix duplicate test vectors in fork choice compliance test (#4809)

Other

  • Fix gloas execution_payload gossip rules typo (#4751)
  • Add check for PR title (#4754)
  • Bump dependencies for actions (#4758)
  • In the PR title check, set title as an env variable (#4761)
  • Bump the actions group with 2 updates (#4767)
  • Fix incorrect ordering in PendingAttestation, Attestation, Eth1Data (#4768)
  • Bump the actions group with 3 updates (#4781)
  • Fix aggregate.aggregation_bits alias (#4794)
  • Bump the actions group with 2 updates (#4791)
  • Bump version to 1.7.0-alpha.0 (#4811)

v1.6.1

15 Nov 13:27
5fa6edc

Choose a tag to compare

Electra

  • Pass aggregate.committee_bits to get_committee_indices (#4742)

Gloas

  • Clarify PTC description (#4719)
  • Clean up Gloas specs (part 4) (#4721)
  • Add PTC subsection to validator assignment section (#4713)
  • Clean up Gloas specs (part 5) (#4738)
  • Add off-protocol value to the bid (#4733)
  • Fix tests to ensure merge functions do not need to be modified (#4718)
  • Fix randao mix processing in Gloas (#4728)
  • Set block_hash in the latest bid during Gloas state upgrade (#4739)
  • Run process_builder_pending_payments before effective balance updates (#4737)
  • Clean up Gloas specs (part 6) (#4741)

Other

  • Add debug tools for SSZ deserialization (#4729)
  • build(deps): bump the actions group with 2 updates (#4735)
  • Update testnet genesis state descriptions (#4727)
  • Use proper integer encoding for Union in SSZ (#4725)
  • Bump version to v1.6.1 (#4743)

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)
  • Remove merkle proof tests in Gloas (#4700)
  • Add pending payment withdrawal epoch asserts (#4701)

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)

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)