Releases: ethereum/consensus-specs
Releases · ethereum/consensus-specs
v1.7.0-alpha.4
Phase0
- Add executable gossip validation functions for phase0 (#4902)
- Increase
compute_shuffled_indexcache from 96 to 65536 entries (#5046)
Fulu
- Add Cell Dissemination via Partial Message Specification (#4558)
Gloas
- Correct field name
block_rootinExecutionPayloadEnvelopesByRoot(#5008) - Add check that block is known in
on_payload_attestation_message(#5022) - Request missing payload envelopes for index-1 attestation (#4939)
- Allow same epoch proposer preferences (#5035)
- Add cached PTC window to the state (#4979)
- Add Cell Dissemination via Partial Message Specification (#4558)
- Speed up
compute_ptc(#5044)
Heze
- Add cached PTC window to the state (#4979)
EIP-8025
Testing
- Fix builder voluntary exit success test (#5005)
- Add executable gossip validation functions for phase0 (#4902)
- Fix block root filenames and Gloas comptests (#5023)
- Integrate make coverage into make test (#5015)
- Add sanity/blocks tests for missed payload withdrawal interactions (#4962)
- Remove fork version/epoch in eip8025 specs (#5037)
- Fix bug in fork choice compliance tests
is_early_message(#5040) - Add cached PTC window to the state (#4979)
- Speed up
compute_ptc(#5044)
Dependencies
- Update dependency ckzg to v2.1.7 (#5006)
- Update dependency mkdocs-material to v9.7.6 (#5007)
- Update dependency ruff to v0.15.7 (#5009)
- Update dependency pytest-cov to v7.1.0 (#5026)
- Update dependency mkdocs-gen-files to v0.6.1 (#5025)
- Update dependency deepdiff to v8.6.2 [SECURITY] (#5017)
- Update dependency setuptools to v82.0.1 (#5010)
- Update actions/download-artifact action to v8.0.1 (#5028)
- Update release-drafter/release-drafter action to v7 (#5030)
- Update astral-sh/setup-uv action to v7.6.0 (#5029)
- Update dependency eth-utils to v6.0.0 (#5041)
- Update dependency eth-hash to v0.8.0 (#5042)
Other
v1.7.0-alpha.3
Phase0
- Fix BNF of req/resp streams (#4917)
- Replace
SECONDS_PER_SLOTwithSLOT_DURATION_MSin specs/tests (#4926) - Add helpers for simple config derivations (#4814)
- Extend
*ByRootreq/resp serve range to match*ByRange(#4950) - Update dependency py_arkworks_bls12381 to v0.4.1 (#4972)
Altair
- Add helpers for simple config derivations (#4814)
Deneb
- Add helpers for simple config derivations (#4814)
- Extend
*ByRootreq/resp serve range to match*ByRange(#4950) - Update dependency py_arkworks_bls12381 to v0.4.1 (#4972)
Electra
- Make "Constructing the XYZ" sections consistent (#4920)
- Add helpers for simple config derivations (#4814)
Fulu
- Make "Constructing the XYZ" sections consistent (#4920)
- Add helpers for simple config derivations (#4814)
Gloas
- Standardize feature fork versions (#4910)
- Check if pending deposit exists before applying to builder (#4897)
- Add payload data availability vote to the store (#4884)
- Refactor builder deposit conditions in
process_deposit_request(#4916) - Add a missing fork comment to Store (#4922)
- Ignore beacon block if parent payload unknown (#4923)
- Rename
execution_payload_statestopayload_states(#4930) - Make "Constructing the XYZ" sections consistent (#4920)
- Only allow attestations for known payload statuses (#4918)
- Reorder payload status constants (#4948)
- Add pre-fork subscription note for
proposer_preferencestopic (#4947) - Replace
SECONDS_PER_SLOTwithSLOT_DURATION_MSin specs/tests (#4926) - Extend by_root reqresp serve range to match by_range (#4950)
- Add
parent_block_rootto bid filtering key (#5001) - Make wordings clearer for self build payload signature verification (#5002)
Heze
- Standardize feature fork versions (#4910)
- Rebase FOCIL onto Gloas (#4931)
- Promote EIP-7805 to Heze (#4942)
- Replace
SECONDS_PER_SLOTwithSLOT_DURATION_MSin specs/tests (#4926)
EIP-7928
- Standardize feature fork versions (#4910)
EIP-8025
- Enable tests for EIP-8025 (#4911)
- Replace pubkey with validator index in
SignedExecutionProof(#4914) - Prevent verifying valid proofs of same type after received one (#4915)
- Update execution proof construction to use beacon block (#4941)
- Make "Constructing the XYZ" sections consistent (#4920)
- Request execution proofs by block root and proof types (#4944)
Testing
- Add Gloas randomized block tests (#4900)
- Fix field in random block tests for Gloas (#4903)
- Fix test which incorrectly assumes min builder balance is 32 ETH (#4909)
- Enable tests for EIP-8025 (#4911)
- Add voluntary exit tests for builders (#4908)
- Check if pending deposit exists before applying to builder (#4897)
- Update all dependencies (#4933)
- Use ckzg by default for tests (#4921)
- Rebase FOCIL onto Gloas (#4931)
- Promote EIP-7805 to Heze (#4942)
- Only allow attestations for known payload statuses (#4918)
- Fix inclusion list test for mainnet (#4945)
- Use seeded rng in tests (#4952)
- Convert shuffling tests to pytest (#4953)
- Replace
SECONDS_PER_SLOTwithSLOT_DURATION_MSin specs/tests (#4926) - Add helpers for simple config derivations (#4814)
- Add more tests for
process_deposit_request(#4906) - Port SSZ generic tests to pytest (#4956)
- Pytest plugin that generate vectors from
yieldin tests (#4709) - Remove specs for EIP-7441 (#4977)
- Fix sampling config test (#4988)
- Remove ad-hoc framework for generating reference tests (#4994)
- Bump version to v1.7.0-alpha.3 (#4999)
- Add initial fork choice tests for Gloas (#4940)
Dependencies
- Bump astral-sh/setup-uv from 7.2.0 to 7.2.1 in the actions group (#4895)
- Bump actions/stale from 10.1.1 to 10.2.0 in the actions group (#4946)
- Bump the actions group with 2 updates (#4955)
- Update dependency rich to v14.3.3 (#4968)
- Update dependency ckzg to v2.1.6 (#4966)
- Update dependency ruff to v0.15.4 (#4969)
- Update astral-sh/setup-uv action to v7.3.1 (#4970)
- Update dependency filelock to v3.25.0 (#4971)
- Update dependency mkdocs-material to v9.7.4 (#4967)
- Update actions/upload-artifact action to v7 (#4974)
- Update dependency codespell to v2.4.2 (#4981)
- Update dependency ruff to v0.15.5 (#4982)
- Update release-drafter/release-drafter action to v6.3.0 (#4983)
- Update release-drafter/release-drafter action to v6.4.0 (#4990)
Other
- Use custom runners for everything (#4893)
- Add an
AGENTS.mdfile (#4894) - Remove slot-time-dependent duration annotations (#4924)
- Capitalize the *Note* paragraphs (#4927)
- Add script to check value annotations (#4925)
- Rename package to eth-consensus-specs (#4934)
- Add ability to manually run publish action (#4935)
- Rename
eth2spectoeth_consensus_specs(#4936) - Use eth-remerkleable (#4937)
- Generate specs before publishing (#4938)
- Configure pytest to use all logical cores (#4951)
- Use xdist worksteal distribution method for tests (#4961)
- Remove
titlecheck dependency in CI tests (#4957) - Replace dependabot with renovate (#4964)
- Add pytest-sugar plugin for better test output (#4959)
- Ignore hidden files when running mdformat (#4978)
- Update python version requirements (#4980)
- Remove specs for EIP-6800 (#4984)
- Disable dependency dashboard in renovate (#4986)
- Clean up dependencies (#4985)
- Use strategy matrix in nightly reference test action (#4991)
- Improve reftests action (#4993)
- Add support for python 3.14 (#4995)
- Fix step which deletes intermediate artifacts (#4996)
- Fix artifact deletion loop for zsh (#4997)
- Make some improvements to the readme (#4998)
v1.7.0-alpha.2
Phase0
- Use
head_statefor 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_payloadfor 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_depositscomment (#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_withdrawalstests 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 lintconsole 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
v1.7.0-alpha.0
Phase0
- Refactor
get_weightandget_proposer_score(#4746) - Remove deprecated
INTERVALS_PER_SLOTconstant (#4805)
Bellatrix
- Move
pow_chainargument inprepare_execution_payloadexample (#4750)
Capella
- Refactor
get_expected_withdrawals(#4766) - Refactor
process_withdrawals(#4765) - Rename
get_sweep_withdrawalstoget_validators_sweep_withdrawals(#4789) - Add types to processed count variables (#4790)
- Fix
get_expected_withdrawalsreturn 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_lookaheadin 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_withdrawablefunction (#4774) - Fix
blob_kzg_commitments_rootname andbid.block_hashreference (#4780) - Remove
validate_merge_blockfrom Gloas specs (#4784) - Set
bid.prev_randaoin payload bid construction (#4782) - Update comparison to
quorumvalue (#4775) - Remove
slotfromget_indexed_payload_attestation(#4797) - Payload Attestations due before
get_payload_attestation_due_ms(#4801) - Refactor
get_ancestorin Gloas (#4802) - Set
execution_paymentfield when constructing bid (#4804) - Make builders non-validating staked actors (#4788)
- Add specs for proposer preferences (#4777)
- Refactor
get_weightandis_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_payloadgossip 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_bitsalias (#4794) - Bump the actions group with 2 updates (#4791)
- Bump version to 1.7.0-alpha.0 (#4811)
v1.6.1
Electra
- Pass
aggregate.committee_bitstoget_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_hashin the latest bid during Gloas state upgrade (#4739) - Run
process_builder_pending_paymentsbefore effective balance updates (#4737) - Clean up Gloas specs (part 6) (#4741)
Other
v1.6.0
v1.6.0-beta.2
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
eth2specfor 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_sidecarrespects 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
CompatibleUniondeserialization 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
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_rootandslotin places inDataColumnSidecar(#4656) - Set default value of
BuilderPendingPayment.withdrawable_epochtoFAR_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_4844tests 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_7594tests 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.tomland useuvfor 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 rmto start fresh (#4677) - Do not push files to consensus-spec-tests (#4678)
v1.6.0-beta.0
Phase0
- Add helper functions for slot time deadlines (#4589)
- Fix
filter_block_treenote to usecheckpoint.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
BeaconStatecontainer 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_batchbug (#4590) - Only create ssz_static tests in generator mode (#4596)
- Port
blob_to_kzg_commitmenttests 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)