-
Notifications
You must be signed in to change notification settings - Fork 102
Open
Labels
Description
Several supported JSON-RPC APIs differ from Geth in their returned fields or supported features.
This issue tracks the adjustments needed to achieve full compatibility.
eth_getBlockByHash
Type | Field(s) |
---|---|
Missing field | withdrawals ([]*Withdrawal) , header.excessBlobGas (*uint64) , header.blobGasUsed (*common.Hash) , header.parentBeaconBlockRoot (*common.Hash) , requestsHash (*common.Hash) , header.withdrawalsRoot (*common.Hash) |
Always empty value | receiptsRoot (*common.Hash) |
Extra (not in Geth) | totalDifficulty (*hexutil.Big) |
eth_getBlockByNumber
Type | Field(s) |
---|---|
Missing field | withdrawals ([]*Withdrawal) , header.excessBlobGas (*uint64) , header.blobGasUsed (*common.Hash) , header.parentBeaconBlockRoot (*common.Hash) , requestsHash (*common.Hash) , header.withdrawalsRoot (*common.Hash) |
Always empty value | receiptsRoot (*common.Hash) |
Extra (not in Geth) | totalDifficulty (*hexutil.Big) |
eth_getTransactionByHash
eth_getTransactionByBlockHashAndIndex
eth_getTransactionByBlockNumberAndIndex
Type | Field(s) |
---|---|
Missing field | yParity (*hexutil.Uint64) |
debug_traceBlock
, debug_traceBlockByNumber
, debug_traceBlockByHash
Type | Note |
---|---|
Missing feature | StateOverrides not supported (unlike Geth) |
Recommendation:
- Add missing fields to match Geth’s return structure.
- Remove extra fields not present in Geth, unless intentionally diverging (document if so).
- Implement missing features where applicable (e.g.,
StateOverrides
).