internal/api: support block number or hash on state-related methods#514
Merged
tungng98 merged 1 commit intoBuildOnViction:pre-releasefrom Apr 8, 2025
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
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 introduces significant changes to the Viction API backend to support querying by both block number and block hash. The changes include adding new methods to handle
BlockNumberOrHashtypes and updating existing methods to use these new methods.Methods updated:
eth_getBalanceeth_getStorageAteth_getCodeeth_getTransactionCounteth_calleth_estimateGasSupport for
BlockNumberOrHash:eth/api_backend.go: AddedHeaderByNumberOrHashandStateAndHeaderByNumberOrHashmethods to handle queries by either block number or block hash. [1] [2]les/api_backend.go: AddedHeaderByNumberOrHashandStateAndHeaderByNumberOrHashmethods to the LES API backend. [1] [2]Updates to PublicBlockChainAPI:
internal/ethapi/api.go: Updated methods such asGetBalance,GetCode,GetStorageAt,Call,EstimateGas, andGetTransactionCountto useStateAndHeaderByNumberOrHash. [1] [2] [3] [4] [5] [6] [7] [8] [9]Backend Interface Update:
internal/ethapi/backend.go: Updated theBackendinterface to include the newHeaderByNumberOrHashandStateAndHeaderByNumberOrHashmethods.Test Updates:
internal/ethapi/api_test.go: Added new methods to the test backend to supportHeaderByNumberOrHashandStateAndHeaderByNumberOrHash. Updated tests to useBlockNumberOrHash. [1] [2] [3]Miscellaneous:
internal/ethapi/api.go: Fixed import ordering.internal/ethapi/api_test.go: Fixed import ordering. [1] [2]internal/ethapi/backend.go: Fixed import ordering.Referrence: