-
Notifications
You must be signed in to change notification settings - Fork 2.2k
feat(cheatcodes): add setEvmVersion / getEvmVersion #12014
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
base: master
Are you sure you want to change the base?
Conversation
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.
unsure if this solves the original ticket entirely, given some evm versions also imply changes in solc and therefore the resulting artifacts. for example, earlier evm versions do not support tstore/tload. wdyt?
yep, good point, I updated comment to prevent closing the issue. For the 2nd part I think we could extend the additional compilation profiles as in #9840 (comment) |
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.
code changes lgtm & i can see how this can be useful, agreeing on the comments above on it being a partial solution.
crates/cheatcodes/spec/src/vm.rs
Outdated
#[cheatcode(group = Evm, safety = Unsafe)] | ||
function coolSlot(address target, bytes32 slot) external; | ||
|
||
/// Returns the execution evm version. |
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.
actually can we add a note on the cheatcodes docs too? that runtime/execution evm version is not the same as compilation one
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.
👍 updated in 0838c54
string also is not the best because you don't encode the hierarchy that we have with integer/enum, eg that cancun enables paris, london etc |
can you pls detail, I thought these are OK to return from For setting it I reused the same as config does to be consistent foundry/crates/config/src/utils.rs Line 286 in dae1a12
|
Motivation
config
): add chain dependentsolc
config and support in multichain scripts #9840 should be accompanied by a forge-std pr forConfig
Solution
PR Checklist