* add request type for consolidations, encoder, decoder and tests
* added raw tx for consolidation
* add consolidation reqs to EngineGetPayloadResultV4
* set storage slot value to 0 initially and value for tx
* updates plugin api
Signed-off-by: Justin Florentine <justin+github@florentine.us>
Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
---------
Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Justin Florentine <justin+github@florentine.us>
Co-authored-by: Justin Florentine <justin+github@florentine.us>
* Update parameterized unit tests so the enumerate with --dry-run
* Update the prague-withdrawal.json unit test to handle current code
Signed-off-by: Danno Ferrin <danno@numisight.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
* Add evmtool block-test subcommand
Add an evmtool subcommand that will run non-hive blockchain tests.
Signed-off-by: Danno Ferrin <danno@numisight.com>
Update t8n executor to support new isStateTest env flag that will
disable extra-transactional processing such as block rewards and beacon
root.
Also, make sure such extra-transactional commits don't create empty
accounts.
Signed-off-by: Danno Ferrin <danno@numisight.com>
Co-authored-by: Usman Saleem <usman@usmans.info>
Add Genesis ("CancunEOFTime") and reference test ("CancunEOF") support
for a temporary Cancun+EOF fork, in anticipation of potential devnets.
Signed-off-by: Danno Ferrin <danno@numisight.com>
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.
Signed-off-by: Danno Ferrin <danno@numisight.com>
A complete and up to date implementation of EIP-7692 EOF v.1. For genesis
file activation use "PragueEOFTime", for references tests it activates as
part of Prague.
Signed-off-by: Danno Ferrin <danno@numisight.com>
* Pectra devnet 0 EEST support
Add the required fields to the t8n responses
to enable ethereum execution spec tests to fill tests using Besu.
Signed-off-by: Danno Ferrin <danno@numisight.com>
* tests
Signed-off-by: Danno Ferrin <danno@numisight.com>
* spotless
Signed-off-by: Danno Ferrin <danno@numisight.com>
* fix issue with warm state crossing transaciton boundaries in t8n tool
Signed-off-by: Danno Ferrin <danno@numisight.com>
* test results change when bugs a re fixed
Signed-off-by: Danno Ferrin <danno@numisight.com>
* fix changed method name
Signed-off-by: Danno Ferrin <danno@numisight.com>
---------
Signed-off-by: Danno Ferrin <danno@numisight.com>
Bring implementation up to nyota version of the EIP,
and remove invasive change into the EVM code.
Signed-off-by: Danno Ferrin <danno@numisight.com>
Co-authored-by: Lucas Saldanha <lucascrsaldanha@gmail.com>
Co-authored-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>
Co-authored-by: Justin Florentine <justin+github@florentine.us>
Co-authored-by: Jason Frame <jason.frame@consensys.net>
Co-authored-by: Jason Frame <jasonwframe@gmail.com>
* Blockhash lookup in test harness
Another change to the blockhash operation in the test harness.
Signed-off-by: Danno Ferrin <danno@numisight.com>
* also in t8n executor
Signed-off-by: Danno Ferrin <danno@numisight.com>
---------
Signed-off-by: Danno Ferrin <danno@numisight.com>
Co-authored-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>
Cover one missed case where the BlockHashLookup changes in the EIP-2935
handling, ensureing the `state-test` tool gets proper prague handling.
Signed-off-by: Danno Ferrin <danno@numisight.com>
Signed-off-by: Danno Ferrin <danno@numisight.com>
* EIP-2935: Serve historical block hashes from state
Refactor the BlockHashOperation to move hash lookup into the
ProtocolSpec, and combine logic with beacon root storage.
Update t8n test to use block hash list in new format
Signed-off-by: Danno Ferrin <danno@numisight.com>
Author: Gabriel-Trintinalia gabriel.trintinalia@consensys.net
Co-authored-by: Danno Ferrin danno@numisight.com
Co-authored-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>
* Run apt-get in docker builds without using any cache. Split steps in individual RUN commands
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
* use env variable for apt non-cache settings, revert split into several RUN commands
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
* clean apt-get cache after installation to decrease docker image size
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
---------
Signed-off-by: Daniel Lehrner <daniel.lehrner@consensys.net>
Remove an unused parameter in MainnetTransactionProcessor, as well as
all code supporting sending that parameter.
Signed-off-by: Danno Ferrin <danno@numisight.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Update t8n, b11r, and friends to support current execution spec
* bonsai migration introduced issues with deleted storage/accounts
* status on pre-constantinople json was invalid
* track refund across tx, not call frame
* allow tests to be executed by name
* fix withdrawal self-destruct test
* trace support in execution-spec-tests
* fix blob tests
* t8n results changes
Signed-off-by: Danno Ferrin <danno@numisight.com>
Publish to dockerhub on merge to the main branch
Signed-off-by: garyschulte <garyschulte@gmail.com>
Co-authored-by: Simon Dudley <simon.dudley@consensys.net>
Move Besu custom error-prone checks into its own repository and use it as an external dependency. This allows to move to a newer version of Google errorprone checks as well while cleaning up build.gradle file.
Key changes resulted due to this change:
* String toLowerCase and toUpperCase to use Locale.ROOT as argument
* Use interface such as List,Map or NavigatableMap instead of concrete class where appropriate.
* Simplify StringBuilder to plain String
* Suppress warnings where appropriate.
-----
Signed-off-by: Usman Saleem <usman@usmans.info>
Update tracing and evm tool
* Intrinsic gas is optional in EVMTool
* For call series, also charge the gas given to the next call level for debug_ series calls.
Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Wire through configuration for the Prague fork, including speculative
PragueGasCalculator, precompiles, genesis options, and implied
forks in GenesisState.
Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
Update a few EOF features based on updated spec
* Add a prague reference test target
* Run evmtool from prestate when no code specified
* RETF and dangling immediate arg fixes
Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>
cleaning up the worldstate section, moving and renaming everything that is forest into a specific package in order to clarify the difference between Bonsai and Forest in the code.
---------
Signed-off-by: Karim Taam <karim.t2am@gmail.com>
Signed-off-by: matkt <karim.t2am@gmail.com>
Refactor some transaction calculations, including moving upfront
overflow checks from the constructor to the validator and optimizing
some RLP calculations. Also fix all lint errors.
Signed-off-by: Danno Ferrin <danno.ferrin@swirldslabs.com>