tools: Fold evmone-t8n into the evmone CLI as a subcommand#1551
Merged
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #1551 +/- ##
==========================================
+ Coverage 96.97% 97.09% +0.12%
==========================================
Files 163 162 -1
Lines 14455 14438 -17
Branches 3383 3371 -12
==========================================
+ Hits 14018 14019 +1
+ Misses 307 303 -4
+ Partials 130 116 -14
Flags with carried forward coverage won't be shown. Click here to find out more.
🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Pull request overview
This PR folds the standalone evmone-t8n tool into the existing evmone CLI by adding a t8n subcommand (using CLI11 subcommands), and updates integration tests/CI to use the new entry point.
Changes:
- Add
t8nas anevmone-clisubcommand, wiring options intoevmone::tooling::t8n(...). - Switch
--versionhandling toapp.set_version_flag(...)to short-circuit parsing/callbacks. - Remove the
evmone-t8ntest binary/target and update integration tests + coverage config accordingly.
Reviewed changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| tools/evmone/main.cpp | Adds t8n subcommand and moves t8n argument binding/dispatch into evmone-cli; updates version flag behavior. |
| test/t8n/t8n.cpp | Removes the standalone evmone-t8n implementation. |
| test/t8n/CMakeLists.txt | Removes the evmone-t8n build target. |
| test/integration/t8n/CMakeLists.txt | Updates integration tests to run evmone-cli t8n and adds a chainid parsing test. |
| test/CMakeLists.txt | Drops test/t8n from the test build and removes evmone-t8n from the target list. |
| circle.yml | Removes evmone-t8n from the coverage binary collection list. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
cfbbf5c to
4c340b3
Compare
chfast
commented
May 27, 2026
1adb936 to
8945228
Compare
Comment on lines
+77
to
+80
| cmd.add_option( | ||
| "--state.reward", opts.state_reward, "Block reward in wei (-1 to output pre-state only)") | ||
| ->check(CLI::Range(int64_t{-1}, std::numeric_limits<int64_t>::max())); | ||
| cmd.add_option("--input.alloc", opts.alloc_file, "Pre-state alloc JSON") |
Comment on lines
+123
to
+128
| const auto bind_stream = [](auto& s, const fs::path& p) -> decltype(&s) { | ||
| if (p.empty()) | ||
| return nullptr; | ||
| s.open(p); | ||
| return &s; | ||
| }; |
Replace the standalone evmone-t8n binary with `evmone t8n`. The standalone executable is removed. The command line options are the same, but now parsed by CLI11, which makes validation strict at parse time: - --state.reward range-checked via CLI::Range(-1, INT64_MAX); -1 remains the "emit pre-state only" sentinel. - --input.alloc/env/txs/blobParams must exist (CLI::ExistingFile); previously the standalone binary would open and read an empty/ failed stream. - Unknown options now error; previously the hand-rolled if-else chain silently ignored them.
8945228 to
4bd40cc
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Replace the standalone evmone-t8n binary with
evmone t8n. Thestandalone executable is removed.
The command line options are the same, but now parsed by CLI11,
which makes validation strict at parse time:
remains the "emit pre-state only" sentinel.
previously the standalone binary would open and read an empty/
failed stream.
chain silently ignored them.