-
Notifications
You must be signed in to change notification settings - Fork 74
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
tools: add t8n.sh
to the t8n-dump-dir for evmone, besu & ethereum-specs-evm (and various t8n tool clean-up)
#269
tools: add t8n.sh
to the t8n-dump-dir for evmone, besu & ethereum-specs-evm (and various t8n tool clean-up)
#269
Conversation
Also: Now the temporary dir used for output.basedir is not required if tracing is not enabled as output.body is written to output; it is saved to output/txs.rlp.
Also: - Updates paths to match those for geth/nimbus - Copies the temp_dir to the debug directory instead of (re-)writing the files contained within it.
Additionally, use new the input and output directories for input.* and output.*.
a21c70a
to
65d68b7
Compare
Force pushed to include #271. |
Marked as draft: It's probably worth waiting for ethereum/execution-specs#823 as this will remove the additional workaround logic added in 32ac3bf when the transition tool is |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good overall, just a few comments 👍
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Super awesome addition!
Tried with all the evm t8n tools (minus nimbus):
- Besu works great (took me a while to figure out the server part.. :P)
- Evmone: note the comment on adding output via
t8n.sh
, and needs evmone: Fix paths' values for t8n danceratopz/execution-spec-tests#23 merged into your branch. - Execution specs works well with your changes :D
Happy for you to merge when the extra changes for evmone/execution-specs are in!
* evmone: Fix paths' values for t8n * style: fix tox linting complaints --------- Co-authored-by: danceratopz <danceratopz@gmail.com>
Co-authored-by: Mario Vega <marioevz@gmail.com>
Co-authored-by: spencer <spencer.taylor-brown@ethereum.org>
@spencer-tb @marioevz thanks a lot for your fixes and suggestions. Regarding @marioevz if you're happy with the changes regarding execution-spec-tests/src/evm_transition_tool/transition_tool.py Lines 330 to 334 in 504b7e4
|
All points were addressed; re-requested review.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM :)
@rodiazet this is now merged into main, thanks for your contribution! |
Implements the
t8n.sh
script added in #261 for the remaining supported t8n tools (evmone-t8n, besu t8n-server, ethereum-specs-evm t8n). The script gets created to the--t8n-dump-dir
if specified on the command-line, e.g.,This PR also contains quite a lot of other small improvements and clean-up across the transition tools. Here's a quick overview:
output.body
is now also written totxs.rlp
in the dump dir. Except ethereum-spec-evm cf Add output.body/txs rlp support forethereum-spec-evm
#268.evaluate()
method (used by geth, nimbus, ethereum-specs-evm) no longer creates a temporary directory (unless tracing is enabled). All input/output is handled by stdin/stdout, so the directory is not required.collect_traces()
method has been added.i. Print the request's
text.response
in the test failure (by raising an exception in evaluate()) if the response is invalid.ii. Add more information about the request to the t8n dump dir (response.text, time elapsed, status code).
--t8n-dump-dir
andt8n.sh
, preview:https://danceratopz.github.io/execution-spec-tests/main/getting_started/debugging_t8n_tools/