feat(forge): enhance gas snapshot diff with configurable sorting and improved output #11974
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.
Improves the output of
forge snapshot --diff
with configurable sorting and better visibility into test changes.Currently the diff output always sorts by percentage change in ascending order, which makes it hard to quickly find tests with large absolute gas changes. Also, new tests that don't exist in the baseline snapshot are silently ignored, which can be confusing.
adds a
--diff-sort
flag to control sort order and improves the output formatting.New flag
--diff-sort
with 4 options:percentage
- sort by percentage change ascending (default, preserves current behavior)percentage-desc
- sort by percentage change descendingabsolute
- sort by absolute gas change ascendingabsolute-desc
- sort by absolute gas change descendingOutput improvements:
Before
After (default behavior, fully compatible)
After (--diff-sort percentage-desc)
Usage
This is fully backward compatible. Default behavior remains identical to the current implementation.