Skip to content

Releases: hashgraph/hedera-json-rpc-relay

v0.56.0-rc1

19 Sep 15:25
v0.56.0-rc1
afbf7a7
Compare
Choose a tag to compare
v0.56.0-rc1 Pre-release
Pre-release
v0.56.0-rc1

v0.55.0

10 Sep 15:03
v0.55.0
e5cb450
Compare
Choose a tag to compare

Release v0.55.0 includes on-going work around improvements in the HBar Rate Limiter, including the design. Support for calculated transaction record query cost instead of queried operator balance, and calculating actual receipt roots, is also part of the release

Bug fixes include a discrepancy between "Latest" and "Finalized" in block queries, nonce prechecks, and duplicate synthetic transactions returned in the eth_getBlockByNumber call.

Enhancements

  • feat: create third batch of conformity tests #2912
  • feat: Implement HbarLimitService#addExpense #2902
  • [HBAR Rate Limit Redesign] Implement addExpense #2901
  • feat: create second batch of additional conformity tests #2889
  • feat: Implement shouldLimit method of HbarLimitService #2887
  • feat: Add entities and repositories for the redesigned hbar limiter #2883
  • Waffle working Fixtures example #2882
  • fix: Bump timeout up due to many test runs timing out in the current CI #2877
  • feat: Add repositories for the redesigned hbar limiter #2870
  • [HBAR Rate Limit Redesign] Create DB entity repository #2869
  • [HBAR Rate Limit Redesign] Create DB entity classes #2866
  • [HBAR Rate Limit Redesign] Implement shouldLimit #2865
  • feat: Adds design doc for hbar limiter service #2864
  • [HBAR Rate Limit Redesign] Create design document #2863
  • feat: redis cache should fallback to internal in case of error #2861
  • fix: calculated transaction record query cost instead of querying operator balance #2848
  • Flaky HBarLimiter class due to time out issue #2846
  • feat: remove unnecessary empty Trie initialization #2840
  • Remove unnecessary empty Trie initialization #2839
  • fix: eth_estimateGas opts to fallback estimation for contract revert #2834
  • fix: captured and added FileInfo query costs to metrics and hbar ratelimit class #2822
  • fix: added logging to HBARLimit class #2818
  • fix: stabilized sdkClient test by bumping total timeout to 30000ms #2817
  • stable SDKClient unit tests #2816
  • feat: calculate actual receiptsRoot when possible #2798
  • refactor: Validation logic in the server package #2791
  • Refactor validation logic in the server package #2790
  • chore: return empty trie root where applicable #2787
  • Capture and add FileInfo query costs to metrics and hbar rate limiter class #2738
  • The logging in the HbarLimit class does not reference the requestId. #2736
  • Create second batch of additional conformity test #2726
  • fix: fixtures usage example #2704
  • Calculate actual receiptsRoot when possible #2667
  • Insert actual emptyRoot where not applicable #2665
  • fix: Improve compatibility with standard ethereum tooling #2649
  • ci: Update actions/download-artifact and actions/upload-artifact to v4 #2615
  • Update upload-artifact/download-artifact versions for test reports #2596
  • Sort out any remaining issues with the chainlink integration #2588
  • Research: Improve compatility with standard Ethereum tooling #2108

Bug Fixes

  • fix: removed nonce precheck buffer (#2919) #2936
  • Websocket subscription creates the same subscription ID for new connection from the same client #2926
  • fix: removed nonce precheck buffer #2919
  • Discrepancy Between "Latest" and "Finalized" Block Queries in JSON RPC Relay #2916
  • fix: debug_traceTransaction throws 500 for non-existing transaction hashes #2915
  • debug_traceTransaction throws internal server error 500 for non-exising tx hashes #2897
  • WRONG_NONCE precheck doesn't seem to kick in #2876
  • fix: The relay relies on fallback gas estimations instead of properly sending requests to mirror node #2860
  • fix: duplicated transactions in transactions array on eth_getBlockByNumber #2854
  • Duplicated transactions in transactions array on eth_getBlockByNumber #2853
  • The relay relies on fallback gas estimations instead of properly sending requests to mirror node #2852
  • fix: Bug due to validations of eth_call #2843
  • fix: error thrown when setting value in redis cache #2841
  • Error thrown from Redis when setting value with TTL #2838
  • Calling eth_estimateGas opts to fallback estimation when a contract revert is executed #2830
  • Bug due to validations of eth_call #2827
  • go-ethereum: incorrect number of transactions returned #2812
  • Headers Timeout Error when deploying large contracts #2808
  • Redis cache should fallback to internal on set and get operations #2788
  • fix: debug_traceTransaction is not working with popular tools #2778
  • debug_traceTransaction is not working with popular tools #2777

Documentation

  • [HBAR Rate Limit Redesign] Extend docs with class diagram for DB schema #2894
  • docs: Add class diagram for the database schema of the hbar limiter redesign #2884

Dependency Upgrades

  • build(deps): bump micromatch from 4.0.7 to 4.0.8 in /dapp-example #2909
  • build(deps-dev): bump webpack from 5.92.1 to 5.94.0 in /dapp-example #2908
  • build(deps): [Snyk] Upgrade @emotion/react from 11.11.4 to 11.13.0 #2900
  • buiild(deps): [Snyk] Upgrade @hashgraph/hedera-local from 2.28.1 to 2.29.0 #2893
  • build(deps): bump micromatch from 4.0.7 to 4.0.8 in /tools/hardhat-viem-example #2892
  • build(deps): [Snyk] Upgrade @emotion/styled from 11.11.5 to 11.13.0 #2886
  • build(deps): [Snyk] Upgrade @mui/material from 5.15.21 to 5.16.6 #2885
  • build(deps): [Snyk] Upgrade @graphprotocol/graph-cli from 0.79.2 to 0.80.0 #2880
  • [Snyk] Security upgrade @hashgraph/sdk from 2...
Read more

v0.54.4

27 Aug 19:46
v0.54.4
f3ba090
Compare
Choose a tag to compare

Overview

The latest release of the Hedera JSON-RPC Relay, v0.54.4, includes a security upgrade of the @hashgraph/sdk from version 2.50.0-beta.3 to 2.50.0.

What's Changed

Enhancements

Dependencies

Full Changelog: v0.54.3...v0.54.4

v0.54.3

21 Aug 16:23
v0.54.3
5b47595
Compare
Choose a tag to compare

Overview

The latest release of the Hedera JSON-RPC Relay, v0.54.3, addresses a critical issue in the Hedera JSON-RPC Relay, specifically fixing the duplication of transactions in the transactions array on the eth_getBlockByNumber endpoint. This enhancement ensures more accurate and reliable data retrieval, eliminating redundancy and improving the overall integrity of the blockchain data provided by the relay.

What's Changed

Enhancements

  • fix: duplicated transactions in transactions array on eth_getBlockByNumber by @natanasow in #2854

Full Changelog: v0.54.2...v0.54.3

v0.54.2

19 Aug 18:45
v0.54.2
e23dd2b
Compare
Choose a tag to compare

Overview

The latest release of the Hedera JSON-RPC Relay, v0.54.2, includes a hotfix that enhances the EthImpl class to improve error handling for gas estimation. With this update, the Relay can now return the predefined CONTRACT_REVERT JSON-RPC error along with the revert reason in cases of contract reversion. Additionally, it now covers more edge cases when decoding error messages.

What's Changed

Enhancements

  • fix: eth_estimateGas opts to fallback estimation for contract revert by @victor-yanev in #2834

Full Changelog: v0.54.1...v0.54.2

v0.54.1

19 Aug 18:41
v0.54.1
67d0d90
Compare
Choose a tag to compare

Overview

The latest release of the Hedera JSON-RPC Relay, v0.54.1, introduces a feature that verifies whether a caller is whitelisted against the HBAR rate limiter. This enhancement allows the Relay to permit a list of special, whitelisted projects and accounts to bypass HBAR rate limits.

What's Changed

Enhancements

  • feat: added a solution to verify if a caller is whitelisted against the HBAR rate limiter by @quiet-node in #2832

Full Changelog: v0.54.0...v0.54.1

v0.54.0

14 Aug 19:45
v0.54.0
e54f1b0
Compare
Choose a tag to compare

Overview

The latest release of the Hedera JSON-RPC Relay, v0.54.0, introduces several key enhancements and fixes that improve the overall functionality and reliability of the project.

Highlights of this release include the addition of an option to retrieve transaction records from either the Mirror Node or the Consensus Node, enhancing flexibility in data access. Furthermore, improvements in logging and the reuse of executetransaction for methods in sdkclient streamline the codebase for better performance.

Bug fixes, such as ensuring synthetic transactions are correctly populated on getBlock... routes, contribute to a more robust and error-resistant system.

This release also incorporates updates to dependencies and documentation, ensuring the project remains up-to-date and well-supported.

What's Changed

Enhancements

Bug Fixes

Documentation

Dependency Upgrades

  • build(deps): bump ws from 8.16.0 to 8.18.0 in /tools/web3js-example by @dependabot in #2713

New Contributors

Full Changelog: v0.53.0...v0.54.0

v0.54.0-rc1

19 Aug 18:45
v0.54.0-rc1
4411d27
Compare
Choose a tag to compare
v0.54.0-rc1 Pre-release
Pre-release
v0.54.0-rc1

v0.53.0

06 Aug 15:27
v0.53.0
bdc7202
Compare
Choose a tag to compare

Release v0.53.0 adds more metrics around the JSON RPC Relay operator's transaction costs, as well as some refactoring of the SDK client that runs the transactions. The HBar Rate Limiter was tuned to focus more on the Relay's operator fees. More tests around the SDK Client as well as the HBar Rate Limiter are also included.

The implementation of the eth_getTransactionByHash JSON RPC method was also refactored to search contract logs by transaction hash. This facilitates the fetching of synthetic transactions in that method call.

Enhancements

  • feat: deprecate ETH_POPULATE_SYNTHETIC_CONTRACT_RESULTS env #2768
  • Deprecate ETH_POPULATE_SYNTHETIC_CONTRACT_RESULTS #2763
  • feat: search contract logs only by transaction hash #2762
  • feat: added logging to the HBAR rate limit class for more descriptive information. #2761
  • fix: captured and added FileInfo query costs to metrics and hbar rate limit class #2760
  • test: expand integration tests for SDK client #2756
  • fix: reduce hbar limit only by operator fees #2755
  • feat: reused executetransaction for methods in sdkclient and improved logging #2749
  • Expand integration tests for SDK client #2747
  • Reuse executeTransaction() for methods in SDKClient and improve logging #2746
  • Search contract logs only by transaction hash #2744
  • feat: replaced getRecord network calls with calls to mirror node to avoid SDK costs #2737
  • TransactionFee captured for executeTransaction has the total charged transaction fee in it, not just fees charged by Relay operator. #2729
  • feat: add real logsBloom where available #2720
  • feat: replaced getRecord network calls with calls to mirror node to avoid SDK costs #2712
  • test: add additional hbar limiter tests #2697
  • Enhance Hbar Limiter Acceptance tests #2696
  • chore: Implement memory leak detection in tests #2695
  • Add acceptance tests to verify transaction costs and metrics. #2691
  • feat: add logsBloom class #2684
  • Add logsBloom class #2683
  • Add real logsBloom where available #2666
  • Refactor the createFile code in a way the facilitates testability #2655
  • Implement a Memory Leak detection Test #2260

Bug Fixes

  • fix: populate synthetic transactions on getBlock... routes (#2784) #2786
  • fix: populate synthetic transactions on getBlock... routes #2784
  • Revert "feat: deprecate ETH_POPULATE_SYNTHETIC_CONTRACT_RESULTS env… #2783
  • 2755 operator vs txn fees #2781
  • 2755 hbar operator fees #2779
  • feat: reused executetransaction for methods in sdkclient and improved… #2776
  • fix: reorganized executeTransaction and executeTransactionRecord to avoid capturing metrics twice #2742
  • WRONG_NONCE error capture metrics twice #2741
  • feat: track hbar expenses for submit tx #2705
  • Expand Hbar Limiter coverage #2703
  • fix: Updated the account from the 0.0.2 account to an account from th… #2690
  • fix: Adds null check for param in validation #2682
  • "Error raised during getCode for address null" is not returned in the response to the client and can cause confusion. #2376

Contributors

Thank you to all the contributors who worked on this release:

@Ivo-Yankov, @ebadiere, @georgi-l95, @konstantinabl, @natanasow, @quiet-node, and @victor-yanev

v0.52.1

24 Jul 21:44
v0.52.1
903de2b
Compare
Choose a tag to compare

Overview

The latest update to the Hedera JSON RPC Relay, version 0.52.1, introduces a solution to preemptively limit HBAR expenses based on the callDataSize of an eth_sendRawTransaction. This solution estimates the total transaction fee required to complete the eth_sendRawTransaction request based on the callDataSize. It then ensures that the transaction fee does not exceed the remaining budget of the relay operator's account beforehand. If the estimated fee surpasses the available budget, an HBAR_RATE_LIMIT_PREEMPTIVE_EXCEEDED error is triggered. This update represents another step in securing, patching, and improving issues related to HBAR leakage.

What's Changed

Enhancements

feat: added preemtiveCheck for HBAR ratelimit #2751

Contributors

Thank you to all the contributors who worked on this release:

@quiet-node

Full Changelog: v0.52.0...v0.52.1