Releases: ethereum/consensus-specs
Bypass Capacitor
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
Testing, repo, etc
Skiddo Salm
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
Light client
- Add
ExecutionPayloadHeader
to LC data #3151
Testing, repo, etc
Alpine Ibex
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 signBLSToExecutionChange
message #3206
R&D
4844
- [bugfix] Add
historical_summaries
setup tofork.md
#3201 - Clarify rate limit behavior for sidecar with zero blobs #3174
Light client
Testing, repo, etc
Accumulation
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 toEIP4844_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-choiceon_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
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
Karanikomoru
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
Lรกtigo Cepa
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 fromValidator
#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
Ailuropoda melanoleuca
v1.2.0
-- Ailuropoda melanoleuca -- is a semi-major release containing all production mainnet Bellatrix specifications.
Additionally, work continues on various R&D specifications such as Withdrawals and 4844.
PR showing full diff can be found here: #2999
R&D
Withdrawals
Sharding and 4844
Testing, repo, etc
Green and Colorado
v1.2.0-rc.3
-- Green and Colorado -- is a release candidate for Mainnet Bellatrix. This release contains additional important Bellatrix consensus test vectors.
Note: TERMINAL_TOTAL_DIFFICULTY
was reassessed and confirmed on All Core Devs on 2022/8/18.
Note2: "Release candidate" (rc
) distinction will be held on releases until after the mainnet Bellatrix upgrade. Once Mainnet runs the rule-set defined here a non-rc
release will be made.
_PR showing full diff can be found here: #2977
Testing, repo, etc
- Add tests of processing objects of
N-2
fork version #2976
Rhone and Arve
v1.2.0-rc.2
-- Rhone and Arve -- is a release candidate for Mainnet Bellatrix. This release includes the Mainnet BELLATRIX_FOR_EPOCH
as well as the tentative TERMINAL_TOTAL_DIFFICULTY
. Additionally, it includes a small number of new Bellatrix tests as well as many R&D updates to withdrawals, light clients, and 4844/sharding.
Note: TERMINAL_TOTAL_DIFFICULTY
assessed and potentially adjusted to better target Sept 15, 2022, please monitor for further refinement releases.
Note2: "Release candidate" (rc
) distinction will be held on releases until after the mainnet Bellatrix upgrade. Once Mainnet runs the rule-set defined here a non-rc
release will be made.
_PR showing full diff can be found here: #2970
Bellatrix
- Merge mainnet ttd and bellatrix values #2969
- Opti-sync: How to apply latestValidHash when payload is INVALID #2954
- Opti-sync: Elaborate on why sync optimistically #2958
- Opti-sync: extend optimistic node definition #2955
R&D
Light client
- Allow light client to verify signatures at period boundary #2805
- Remove fork_version from LightClientUpdate #2916
- Allow LightClientUpdate with genesis finality #2924
- Allow passing redundant next_sync_committee #2927
- Root next_sync_committee in attested_header #2932
- Add LightClientBootstrap #2935
- Add functions for deriving light client data #2938
- Add LightClient(Finality|Optimistic)Update #2944
- Manually trigger LightClientStore force updates #2947
- Describe light client sync process #2951
- Define libp2p protocol for light client sync #280
Withdrawals
Sharding and 4844
- EIP-4844: Remove shard field from BlobsSidecar #2914
- Optimizing EIP-4844 block validation (using KZG proofs) #2915
- Executable EIP-4844 specs #2937
- WIP implementation of Danksharding #2792