/execution-specs

Specification for the Execution Layer. Tracking network upgrades.

Primary LanguagePythonCreative Commons Zero v1.0 UniversalCC0-1.0

Ethereum Execution Client Specifications

GitPOAP Badge

Description

This repository contains the specifications related to the Ethereum execution client, specifically the pyspec and specifications for network upgrades. The JSON-RPC API specification can be found in a separate repository.

Ethereum Protocol Releases

Version and Code Name Block No. Released Incl EIPs Specs Blog
Cancun TBD TBD EIP-1153
EIP-4788
EIP-4844
EIP-5656
EIP-6780
EIP-7516
Specification TBD
Shanghai 17034870 2023-04-12
(1681338455)
EIP-3651
EIP-3855
EIP-3860
EIP-4895
Specification Blog
Paris 15537394 2022-09-15 EIP-3675
EIP-4399
Specification Blog
Gray Glacier 15050000 2022-06-30 EIP-5133 Specification Blog
Arrow Glacier 13773000 2021-12-09 EIP-4345 Specification Blog
London 12965000 2021-08-05 EIP-1559
EIP-3198
EIP-3529
EIP-3541
EIP-3554
Specification Blog
Berlin 12244000 2021-04-15 EIP-2565
EIP-2929
EIP-2718
EIP-2930
HFM-2070
Specification
Blog
Muir Glacier 9200000 2020-01-02 EIP-2384 HFM-2387 Blog
Istanbul 9069000 2019-12-07 EIP-152
EIP-1108
EIP-1344
EIP-1884
EIP-2028
EIP-2200
HFM-1679 Blog
Petersburg 7280000 2019-02-28 EIP-145
EIP-1014
EIP-1052
EIP-1234
HFM-1716 Blog
Constantinople 7280000 2019-02-28 EIP-145
EIP-1014
EIP-1052
EIP-1234
EIP-1283
HFM-1013 Blog
Byzantium 4370000 2017-10-16 EIP-100
EIP-140
EIP-196
EIP-197
EIP-198
EIP-211
EIP-214
EIP-649
EIP-658
HFM-609 Blog
Spurious Dragon 2675000 2016-11-22 EIP-155
EIP-160
EIP-161
EIP-170
HFM-607 Blog
Tangerine Whistle 2463000 2016-10-18 EIP-150 HFM-608 Blog
DAO Fork 1920000 2016-07-20 HFM-779 Blog
DAO Wars aborted aborted Blog
Homestead 1150000 2016-03-14 EIP-2
EIP-7
EIP-8
HFM-606 Blog
Frontier Thawing 200000 2015-09-07 Blog
Frontier 1 2015-07-30 Blog

Note: Starting with Paris, updates are no longer rolled out based on block numbers. Paris was enabled once proof-of-work Total Difficulty reached 58750000000000000000000. As of Shanghai (at 1681338455), upgrade activation is based on timestamps.

Some clarifications were enabled without protocol releases:

EIP Block No.
EIP-2681 0
EIP-3607 0
EIP-7523 15537394
EIP-7610 0

Execution Specification (work-in-progress)

The execution specification is a python implementation of Ethereum that prioritizes readability and simplicity. It will accompanied by both narrative and API level documentation of the various components written in markdown and rendered using docc...

Usage

The Ethereum specification is maintained as a Python library, for better integration with tooling and testing.

Requires Python 3.10+

Building

Building the documentation is most easily done through tox:

$ tox -e doc

The path to the generated HTML will be printed to the console.

License

The Ethereum Execution Layer Specification code is licensed under the Creative Commons Zero v1.0 Universal.