-
Notifications
You must be signed in to change notification settings - Fork 834
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
imp(evm): enable EIP 3855 during upgrade #1851
Conversation
ENG-2149 Update EVM Params with missing EIPs
ContextThere was a user request on the Evmos Builders TG Channel who wanted to deploy a smart contract which used Solidity v0.8.20. This requires the In the Geth version we are using at this moment (v1.10.26-evmos-rc2) this opcode is not enabled by default (there is no check for the Shanghai fork) and has to be added by populating the Expected
UpdateTwo EIPs are enabled with the Shanghai instruction set:
|
Codecov Report
@@ Coverage Diff @@
## release/v14.2.x #1851 +/- ##
===================================================
- Coverage 70.50% 70.46% -0.04%
===================================================
Files 313 314 +1
Lines 23312 23343 +31
===================================================
+ Hits 16436 16449 +13
- Misses 6052 6069 +17
- Partials 824 825 +1
|
E2E tests have been run locally and pass 🤷 |
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.
Great work @MalteHerrmann!!
Left one comment
Should we add the EIP in the AvailableExtraEIPs
as well?
That slice is only used once in migration tests. I will move it directly to the migration tests and remove it from the params types. ✌️ Good catch! |
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! Great work @MalteHerrmann !!
would be great to understand why is breaking the e2e tests, cause this may break them for future PRs |
I agree, it's kind of hard to debug because there's not much info printed in the logs and they run fine locally 🤔 I was thinking that we should split the workflows for CLI tests and upgrade tests to be able to more easily identify which ones are failing too |
@MalteHerrmann why is this being pushed to the release branch and not main? |
Because this is only affecting the upgrade handler which doesn't exist on |
@fedekunze actually it will be easier to merge it like this and then backport to main |
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.
Left a minor comment about the dup check approach
@Mergifyio backport main |
✅ Backports have been created
|
* enable EIP 3850 during upgrade * adjust changelog * address linter * apply suggestions from code review * move slice only used in testing to tests package * check duplicate EIPs in validateEIPs function * fix linter * apply suggestions from code review * address linter * apply fail fast pattern (cherry picked from commit d5218c9)
imp(evm): enable EIP 3855 during upgrade (#1851) * enable EIP 3850 during upgrade * adjust changelog * address linter * apply suggestions from code review * move slice only used in testing to tests package * check duplicate EIPs in validateEIPs function * fix linter * apply suggestions from code review * address linter * apply fail fast pattern (cherry picked from commit d5218c9) Co-authored-by: MalteHerrmann <42640438+MalteHerrmann@users.noreply.github.com>
Description
This PR adds the necessary logic to enable EIP 3855 during the v14.2.0 upgrade.
More context can be found in this Medium article.
Closes ENG-2149