tests/cancun/eip4788: Update to use pre-deployed contract #246
+828
−162
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Updates EIP-4788 tests to use a pre-deployed bytecode instead of the regular pre-compile.
Framework Considerations
A new
pre_allocation
method is added to the base fork abstract class, which specifies a pre-allocation that must be performed for a given fork.This method also has a new decorator
prefer_transition_to_method
, which marks the method so theto-fork
implementation of the method takes priority when the method is evaluated.This is necessary because the pre-allocation cannot be modified at fork transition, so it needs to be present in the genesis if we are transitioning to the given fork that requires this allocation. E.g. Shanghai->Cancun transition fork needs the Cancun pre-allocation of the beacon root bytecode pre-deploy.
EVM Considerations
DELEGATECALL
andCODECALL
no longer work as previously because the target address is not a precompile0x000000000000000000000000000000000000000b
until the mainnet address reaches consensusFill using: https://github.com/marioevz/go-ethereum/tree/4844-devnet-6-t8n