Release 0.31.1 of the Hedera JSON RPC Relay includes initial support for eth_filter
, improved SubGraph examples, withdrawals and withdrawalsRoot properties with default values to eth_getBlockByHash
requests, a fix to eth_getBalance
to accept a hash, and added unsupported eth_newPendingTransactionFilter
. Also implemented more efficient requests to the mirror-node contract/results endpoint, to remove the need for any follow up additional requests and overall reduced latency.
Library changes include a migration to ethers.js V6, and an upgrade of OpenZeppelin, Web3.js, and protobufs.
It also includes design documents for the distributed cache and filter API.
Enhancements
- Removed 400 AcceptedErrorCodes from MirrorNodeClient for GET_ACCOUNTS_BY_ID_ENDPOINT path #1651
- Refactor Remove AcceptedErrorCodes from MirrorNodeClient - GET_ACCOUNTS_BY_ID_ENDPOINT #1649
- Reapplied web3js changes. #1646
- Adds withdrawals and withdrawalsRoot properties with default values #1645
- Add design documentation for distributed cache #1641
- Fix eth_getBalance to accept hash #1640
- Add docs for
eth_getFilterLogs
#1639 - Sub-Graph Example improvements after synthetic transactions support #1630
- Sub-Graph Example Enhancements #1628
- Add eth_getFilterChanges #1626
- Implement eth_getFilterLogs #1624
- Add unsupported eth_newPendingTransactionFilter #1619
- Add eth_newBlockFilter #1618
- Implement changes from the mirror-node to contract/results endpoint (… #1601
- Add eth_newFilter #1595
- Refactor
EthImpl.formatContractResult()
#1594 - Implement
eth_uninstallFilter
#1590 - Call mirror node accounts api without requesting transactions list #1563
- Implement
eth_getFilterLogs
#1489 - Implement
eth_getFilterChanges
#1487 - Implement
eth_uninstallFilter
#1486 - Implement changes from the mirror-node to
contract/results
endpoint #1436 - Reworking of HashIO intensive APIs #1435
- Remove AcceptedErrorCodes from MirrorNodeClient - GET_ACCOUNTS_BY_ID_ENDPOINT #1366
- Expand subgraph example to support HTS tokens #1356
- Migrate from ethers v5 to v6 #1314
- Migrate from ethers v5 to v6 #1136
Bug Fixes
- Error invoking RPC: Cannot read properties of null (reading 'balance') with Foundry #1674
- added null check for non found account for given block in the past #1652
- eth_getBalance returns 500 error due to account not found #1648
- Override dev dep nx to 16.5.5 to fix build process on mac os m1 #1634
- NPM
build
task is broken on MacOS M1 #1633 - eth_getBlockByHash response does not conform to Ethereum JSON RPC schema #1620
- Fix
eth_estimateGas
transaction values formatting #1615 - eth_getBalance method does not conform to Ethereum JSON-RPC schema #1614
Documentation
Dependency Upgrades
- [Snyk] Upgrade
@hashgraph
/sdk from 2.29.0 to 2.31.0 #1653 - [Snyk] Upgrade
@mui
/material from 5.14.1 to 5.14.2 #1643 - Bump
@openzeppelin
/contracts from 4.9.2 to 4.9.3 in /tools/subgraph-example #1632 - [Snyk] Upgrade
@mui
/material from 5.14.0 to 5.14.1 #1622 - Bump protobufjs from 7.2.3 to 7.2.4 in /dapp-example #1612
- Bump tough-cookie and
@cypress
/request in /dapp-example #1611 - [Snyk] Security upgrade mocha from 9.2.2 to 10.1.0 #1610
- [Snyk] Upgrade
@truffle
/hdwallet-provider from 2.1.12 to 2.1.13 #1604 - [Snyk] Upgrade
@mui
/material from 5.13.7 to 5.14.0 #1592 - Bump tough-cookie and web3 in /tools/web3js-example #1470
- Bump protobufjs and
@hashgraph
/hedera-local in /tools/subgraph-example #1467
Contributors
Thank you to all the contributors who worked on this release:
@AlfredoG87, @Ivo-Yankov, @dependabot[bot], @ebadiere, @georgi-l95, @konstantinabl, @natanasow, and @swirlds-automation