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 #2912
- feat: Add
keys()
method toCacheService
by @victor-yanev in #2931 - feat: Add workaround for support of isAssociated by @Ivo-Yankov in #2828
- feat: Add new metrics for spending plans by @victor-yanev in #2932
- feat: Аdd k6 performance tests for WS server by @victor-yanev in #2803
- feat: implement preemptive rate limitting logic to HbarLimitService class by @quiet-node in #2950
- fix: improve
RedisCache
and simplify usage ofRedisInMemoryServer
in tests by @victor-yanev in #2952 - feat: improved eth call force to consensus by selector logic by @quiet-node in #2983
- feat: add ipAddressHbarSpendingPlan by @Ivo-Yankov in #2913
- feat: Implement
resetLimit
by @victor-yanev in #2966 - feat: enabled retrieval of network
gasPrice
insendRawTransaction
using MAPI instead of HAPI. by @quiet-node in #2981 - test: example web3py usage by @arianejasuwienas in #2998
- feat: improved preemtive rate limit for file transactions by @quiet-node in #2922
- feat: results of rust ethereum clients research by @arianejasuwienas in #2999
- feat: Defined a barebones mainnet-light test suite. by @ebadiere in #2971
- fix: included
call.from
to thecacheKey
in callConsensusNode() by @quiet-node in #2993
Bug Fixes
- fix: removed nonce precheck buffer by @quiet-node in #2919
- feat: block gas limit should be 30_000_000 by @natanasow in #2938
- fix: Bumped up exchanged value by @ebadiere in #2972
Documentation
- docs: added Preemptive Rate Limitting for HFS Transactions to hbar-limiter desgin doc by @quiet-node in #2949
- docs: Add high-level flow diagram of the redesigned hbar limiter by @victor-yanev in #2969
Dependency Upgrades
- fix: [Snyk] Upgrade @mui/material from 5.16.6 to 5.16.7 by @swirlds-automation in #2918
- build(deps): [Snyk] Upgrade keyv-file from 0.3.1 to 0.3.2 by @swirlds-automation in #2930
- build: (deps) [Snyk] Upgrade @emotion/react from 11.13.0 to 11.13.3 by @swirlds-automation in #2964
- build: deps [Snyk] Upgrade @graphprotocol/graph-cli from 0.80.0 to 0.80.1 by @swirlds-automation in #2965
- build(deps): bump path-to-regexp and express in /tools/truffle-example by @dependabot in #2974
- build(deps): bump serve-static and express in /dapp-example by @dependabot in #2975
- build(deps): [Snyk] Security upgrade koa-router from 12.0.1 to 13.0.1 by @swirlds-automation in #2986
- build: (deps)[Snyk] Security upgrade koa-router from 12.0.1 to 13.0.1 by @swirlds-automation in #2985
- build(deps): bump send and express in /tools/truffle-example by @dependabot in #2961
- build: (deps). [Snyk] Upgrade: , , keyv-file by @swirlds-automation in #2967
- build(deps): bump path-to-regexp and express in /dapp-example by @dependabot in #2959
- build(deps): bump serve-static and express in /tools/truffle-example by @dependabot in #2960
- build: (deps) [Snyk] Upgrade ethereumjs/trie & @ethereumjs/util by @swirlds-automation in #2980
- build: (deps) [Snyk] Upgrade web3 from 4.11.1 to 4.12.1 by @swirlds-automation in #2996
Internal Changes
- ci: Revert breaking change to publish-unit-test-result-action by @rbarkerSL in #2942
Full Changelog: v0.55.0...v0.56.0