-
Notifications
You must be signed in to change notification settings - Fork 291
Update 1.10: London and Berlin forks #4953
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
Merged
Merged
Conversation
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
mur-me
reviewed
Oct 6, 2025
67f1907 to
182e39e
Compare
…ure proper dependency installation
…simplify stack handling
…gToHash with additional test cases
…gToHash with additional test cases
* Transient storage functionality * Commented code block in blockchain_test.go * Refactor state transition rules and remove commented-out Prepare method * Remove commented-out code block in chain_makers_test.go * Remove unnecessary parameter from ChainConfig.Rules calls in runtime.go * Refactor ActivePrecompiles function to use rules parameter instead of evm.chainRules * Refactor state transition preparation to use statedb.Prepare method
* Refactor tracing implementation to replace duktape with goja and clean up unused code * Update transaction context handling in tracer to use SetTxContext method * Refactor tracing implementation to use hmyapi for state and block overrides * Refactor trace event subscriptions to use events package and clean up unused code * fix(ci): change if condition to build all RPs without checkin a base branch, previously only dev and main * Refactor jsTracer methods to improve parameter handling and remove unused context * Refactor logger_test.go to update import paths for Harmony package * Refactor tracer_test.go to update import paths and improve state handling * Refactor tracer_test.go to comment out a test case for bad arguments to stack peeks * Refactor Makefile to run specific test for TestTracer in go-test target * Refactor Makefile to run TestTracer specifically in the js tracer directory * Refactor tracer_test.go to improve error handling and logging in test cases * Refactor tracer_test.go to simplify error message formatting in test cases * Refactor Makefile to enable verbose output for TestTracer tests * Refactor tracer_test.go to enhance logging of tracer results during test execution * Add logging for contract code in EVMInterpreter Run method * Add debug logging for contract input in EVMInterpreter Run method * Enable debug mode in EVM configuration for enhanced tracing during tests * Refactor tracer_test.go to improve test case formatting and readability * Refactor tracer_test.go to comment out unused test cases for clarity * Refactor tracer_test.go to uncomment and enable relevant test cases for improved coverage * Refactor tracer_test.go to add a test case for intrinsic gas calculation * Refactor goja.go to store intrinsic gas calculation in context * Refactor tracer_test.go to improve test case clarity and formatting * Refactor goja.go to update gasUsed assignment and add time context * Refactor goja.go to remove unused gasUsed assignment in CaptureTxEnd * Refactor tracer_test.go to improve test case formatting and clarity * Refactor tracer_test.go to simplify error reporting in test cases * Refactor tracer_test.go to remove unnecessary debug print statements * Refactor interpreter.go to remove unused debug print statement * Refactor Makefile to enhance go test command with race detection and vetting * Refactor gen_structlog.go to add omitempty for Memory and ReturnData fields and reorder CallerAddress and ContractAddress * Refactor logger.go to simplify go:generate command for gencodec * Refactor Makefile to run specific tracer tests and enhance tracer result logging * Refactor tracer_test.go to comment out specific test cases for memory access and intrinsic gas * Refactor Makefile to enable verbose output for tracer tests * Refactor tracer_test.go to print tracer results as a string for better readability * Refactor tracer_test.go to enhance logging of tracer results for improved debugging * Refactor tracer.go to log trace results and errors for improved visibility * Add debug logging for tracer type and configuration in tracer.go * Add logging for execution results in logger.go for improved traceability * Add logging for gas limit and remaining gas in CaptureTxEnd for better traceability * Add debug tracing for transaction start and end in state_transition.go * Add contract and caller address to StructLog for enhanced logging * Add caller and contract addresses to structured logs for enhanced traceability * Improve error message for tracer not found in tracers.go * Enhance error message for tracer not found in tracers.go to include lookup count * Add native tracers for transaction analysis: fourByteTracer, callTracer, prestateTracer, revertReasonTracer, and noopTracer * Add debug log for lookup registration count in tracers.go * Add panic message for unregistered JS tracer and implement RegisterLookupCount function * Add panic message in init function for debugging purposes * Update import path for tracers to use Harmony's package * Import JS tracers package in hmy.go * Refactor import paths to use Harmony's core and tracers packages * Remove debug panic statements from init function in goja.go * Add time field to callFrame struct in call.go * Clean up tracer_test.go by removing unnecessary debug print statements * Update contract code in tracer_test.go to use STOP instruction * Update logger fields to be omitempty and adjust test expectations * Remove rosetta checker from Travis CI configuration * Update CallerAddress and ContractAddress fields to be omitempty in gen_structlog.go --------- Co-authored-by: Uladzislau Muraveika <[email protected]>
* Test: add transient storage opcodes test case * Refactor: update go test command to run specific transient storage opcodes test * Refactor: update go test command to run specific transient storage opcodes test * Refactor: configure EVM with ExtraEips for transient storage opcodes * Refactor: implement EIP-1153 for transient storage opcodes TLOAD and TSTORE * Refactor: update contract code to use PUSH1 for transient storage opcodes * Refactor: enhance TestTransientStorageOpcodes for opcode testing and update Makefile for improved test command * Refactor: add support for EIP-1153 transient storage in ChainConfig and update instruction set
* Test: add transient storage opcodes test case * Refactor: update go test command to run specific transient storage opcodes test * Refactor: update go test command to run specific transient storage opcodes test * Refactor: configure EVM with ExtraEips for transient storage opcodes * Refactor: implement EIP-1153 for transient storage opcodes TLOAD and TSTORE * Refactor: update contract code to use PUSH1 for transient storage opcodes * Refactor: enhance TestTransientStorageOpcodes for opcode testing and update Makefile for improved test command * Refactor: add support for EIP-1153 transient storage in ChainConfig and update instruction set * Activation epoch for transient storage
21ef9cd to
a43c979
Compare
mur-me
approved these changes
Nov 20, 2025
GheisMohammadi
approved these changes
Nov 20, 2025
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.
This pull request implements support for London and Berlin Ethereum hard forks along with corresponding updates to the codebase for Harmony 1.10. The main focus is on updating EVM components and protocol parameters to align with these Ethereum improvements.