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 757 forks source link

Reconfigure how Protocol Specs are created WRT EVM condiguration #7245

Closed shemnon closed 1 week ago

shemnon commented 1 week ago

PR description

Make the max code size and max initcode size a part of the EVM configuration. As part of the change we need to move the tasks CodeFactory once handled as a static class and move it into the EVM. This has a nice follow on effect that we don't need to pass in max EOF versions or max code sizes anymore.

This is also required to address a recent EOF change limiting the total size of containers.

Fixed Issue(s)

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

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

shemnon commented 1 week ago

Moving EOF aspects to #7250, this PR remains to discuss how to handle protocol spec changes WRT EVMConfiguration.