-
Notifications
You must be signed in to change notification settings - Fork 112
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
Add Cancun evm support web3 #9756
base: main
Are you sure you want to change the base?
Conversation
Signed-off-by: Kristiyan Selveliev <[email protected]>
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #9756 +/- ##
============================================
- Coverage 92.23% 92.21% -0.02%
- Complexity 7628 7631 +3
============================================
Files 937 939 +2
Lines 32119 32130 +11
Branches 4071 4071
============================================
+ Hits 29624 29629 +5
- Misses 1542 1545 +3
- Partials 953 956 +3 ☔ View full report in Codecov by Sentry. |
Signed-off-by: Kristiyan Selveliev <[email protected]>
Signed-off-by: Kristiyan Selveliev <[email protected]>
Signed-off-by: Kristiyan Selveliev <[email protected]>
@@ -104,6 +104,7 @@ dependencies { | |||
api("software.amazon.awssdk:bom:2.29.9") | |||
api("uk.org.webcompere:system-stubs-jupiter:2.1.7") | |||
api("org.web3j:core:4.12.2") | |||
api("tech.pegasys:jc-kzg-4844:0.8.0") |
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.
Needed for KZGPointEvalPrecompiledContract.init(); method during evm initialization.
@@ -54,7 +54,7 @@ public MirrorEvmMessageCallProcessor( | |||
final EVM evm, | |||
final PrecompileContractRegistry precompiles, | |||
final PrecompiledContractProvider precompilesHolder, | |||
final GasCalculatorHederaV22 gasCalculator, | |||
final GasCalculator gasCalculator, |
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.
Shouldn't we use our own GasCalculator, instead of built-in from besu?
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.
Under the hood it will pick our GasCalculatorHederaV22 bean since it's our only bean implementing the GasCalculator interface. Just checked it locally with instance off and it picks GasCalculatorHederaV22 under the hood.
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 but I think it would be nice if we add some tests that the new functionalities in Cancun exist. In services there is a test class for that - Evm50ValidationSuite
.
Signed-off-by: Kristiyan Selveliev <[email protected]>
Signed-off-by: Kristiyan Selveliev <[email protected]>
Just added integration tests exactly like the ones in |
Quality Gate passedIssues Measures |
Description:
This PR adds cancun evm version to the mirror node web3
This PR modifies:
EvmConfiguration.java
- Added evm050 - bean configAdd
HederaSelfDestructOperationV050
- added flag - useEIP6780Semantics - set to true only for V050Add
MirrorEvmMessageCallProcessorV50
- using populateForCancun methodMirrorNodeEvmProperties
- change evmSpecVersion to CANCUN and add block number for EVM_VERSION_0_50 for mainnet block configurations.Added unit and modified integration tests.
Related issue(s):
Fixes #8058
Notes for reviewer:
Checklist