hyperledger / besu

An enterprise-grade Java-based, Apache 2.0 licensed Ethereum client https://wiki.hyperledger.org/display/besu
https://www.hyperledger.org/projects/besu
Apache License 2.0
1.43k stars 759 forks source link

EIP-7692 "Mega" EOF Implementation #7169

Closed shemnon closed 3 weeks ago

shemnon commented 1 month ago

PR description

This is a complete implementation of EIP-7692 EOF v.1

A video walkthrough of the diff is available here

One important change from the video is the introduction of a "PragueEOF" fork, which is Prague + EOF. When scheduling a fork via the genesis file or the evmtool's trace facility, you will use "PragueTime" to mean only scheduled prague EIPs, and "PragueEOFTime" for Prague + EOF. However, reference tests will continue to use PrageEOF as the fork basis, as many reference tests and EEST tests use Prague as the fork to test EOF features. This fork is temporary and as actual ACD scheduling changes will be updated.

Fixed Issue(s)

Thanks for sending a pull request! Have you done the following?

Locally, you can run these tests to catch failures early: