v0.56.0
Overview
The latest release of the Hedera JSON-RPC Relay delivers significant improvements in performance, testing, and rate-limiting mechanisms.
A key highlight is the ongoing redesign of the HBAR Rate Limit mechanism, featuring enhancements to the preemptive rate-limiting logic for file transactions. Updated documentation includes a high-level flow diagram and detailed explanations of the redesigned HBAR rate-limiter, providing valuable insights into the improved rate-limiting logic for HFS transactions. These updates play a critical role in optimizing resource management and maintaining network stability under heavy loads.
This release also introduces k6 performance tests for the WebSocket server, strengthening the testing framework to better identify and resolve performance bottlenecks. Additionally, RedisCache has been streamlined, simplifying its integration with RedisInMemoryServer for testing.
Key bug fixes, including the removal of the nonce precheck buffer and an adjustment of the block gas limit to 30,000,000, further enhance system stability and compliance. The release also incorporates vital security and performance enhancements through various dependency upgrades.
What's Changed
Enhancements
- feat: create third batch of conformity tests by @natanasow in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2912
- feat: Add
keys()method toCacheServiceby @victor-yanev in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2931 - feat: Add workaround for support of isAssociated by @Ivo-Yankov in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2828
- feat: Add new metrics for spending plans by @victor-yanev in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2932
- feat: Аdd k6 performance tests for WS server by @victor-yanev in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2803
- feat: implement preemptive rate limitting logic to HbarLimitService class by @quiet-node in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2950
- fix: improve
RedisCacheand simplify usage ofRedisInMemoryServerin tests by @victor-yanev in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2952 - feat: improved eth call force to consensus by selector logic by @quiet-node in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2983
- feat: add ipAddressHbarSpendingPlan by @Ivo-Yankov in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2913
- feat: Implement
resetLimitby @victor-yanev in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2966 - feat: enabled retrieval of network
gasPriceinsendRawTransactionusing MAPI instead of HAPI. by @quiet-node in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2981 - test: example web3py usage by @arianejasuwienas in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2998
- feat: improved preemtive rate limit for file transactions by @quiet-node in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2922
- feat: results of rust ethereum clients research by @arianejasuwienas in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2999
- feat: Defined a barebones mainnet-light test suite. by @ebadiere in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2971
- fix: included
call.fromto thecacheKeyin callConsensusNode() by @quiet-node in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2993
Bug Fixes
- fix: removed nonce precheck buffer by @quiet-node in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2919
- feat: block gas limit should be 30_000_000 by @natanasow in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2938
- fix: Bumped up exchanged value by @ebadiere in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2972
Documentation
- docs: added Preemptive Rate Limitting for HFS Transactions to hbar-limiter desgin doc by @quiet-node in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2949
- docs: Add high-level flow diagram of the redesigned hbar limiter by @victor-yanev in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2969
Dependency Upgrades
- fix: [Snyk] Upgrade @mui/material from 5.16.6 to 5.16.7 by @swirlds-automation in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2918
- build(deps): [Snyk] Upgrade keyv-file from 0.3.1 to 0.3.2 by @swirlds-automation in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2930
- build: (deps) [Snyk] Upgrade @emotion/react from 11.13.0 to 11.13.3 by @swirlds-automation in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2964
- build: deps [Snyk] Upgrade @graphprotocol/graph-cli from 0.80.0 to 0.80.1 by @swirlds-automation in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2965
- build(deps): bump path-to-regexp and express in /tools/truffle-example by @dependabot in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2974
- build(deps): bump serve-static and express in /dapp-example by @dependabot in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2975
- build(deps): [Snyk] Security upgrade koa-router from 12.0.1 to 13.0.1 by @swirlds-automation in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2986
- build: (deps)[Snyk] Security upgrade koa-router from 12.0.1 to 13.0.1 by @swirlds-automation in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2985
- build(deps): bump send and express in /tools/truffle-example by @dependabot in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2961
- build: (deps). [Snyk] Upgrade: , , keyv-file by @swirlds-automation in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2967
- build(deps): bump path-to-regexp and express in /dapp-example by @dependabot in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2959
- build(deps): bump serve-static and express in /tools/truffle-example by @dependabot in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2960
- build: (deps) [Snyk] Upgrade ethereumjs/trie & @ethereumjs/util by @swirlds-automation in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2980
- build: (deps) [Snyk] Upgrade web3 from 4.11.1 to 4.12.1 by @swirlds-automation in https://github.com/hashgraph/hedera-json-rpc-relay/pull/2996
Internal Changes
- ci: Revert breaking change to publish-unit-test-result-action by @rbarkerSL in #2942
Full Changelog: hashgraph/hedera-json-rpc-relay@v0.55.0...v0.56.0