github hiero-ledger/hiero-json-rpc-relay v0.74.0

8 hours ago

Overview

v0.74.0 introduces a significant experimental feature for Nonce Ordering with Locks (#4635), designed to drastically reduce WRONG_NONCE errors by ensuring transactions are processed in the correct sequence even during asynchronous operations. This release also continues the extensive enhancement of the Transaction Pool service, adding RLP hex transaction storage (#4521), encapsulating the ENABLE_TX_POOL flag for better configuration management (#4581), and introducing new txpool_* related RPC methods (#4544) to expand relay capabilities.

Operational observability and debugging have been improved with updates to the /liveness and /readiness endpoints (#4622) and a review of 200/400 HTTP response codes (#4650). To improve accuracy, the relay now removes the fallback predefined gas value for eth_estimateGas when the Mirror Node fails to retrieve an estimate (#4678). Additionally, developers can now leverage synthetic HTS transaction support in debug_traceTransaction and debug_traceBlockByNumber (#4694) for deeper insights into token operations, while internal error handling has been tightened to stop silently swallowing errors (#4758).

Finally, this release includes a robust set of bug fixes and dependency upgrades to ensure long-term stability and code quality. We have refined our testing infrastructure, including stabilizing tests by adjusting wait times for mining and price tolerance, and addressed security and performance updates across the codebase via Dependabot.

What's Changed

  • test: batch 2 conformity tests by @arianejasuwienas in #4110
  • chore(release): Bump versions for v0.74.0-SNAPSHOT by @swirlds-automation in #4561
  • feat: adds cache: prefix to all CacheService keys by @simzzz in #4559
  • fix: revert "test: batch 2 conformity tests (#4110)" by @quiet-node in #4584
  • fix: removed caching logic for eth_gasPrice endpoint by @quiet-node in #4582
  • feat: adds factory for PendingTransactionStorage creation by @simzzz in #4573
  • feat: adds RLP hex txn storage to tx pool service by @simzzz in #4521
  • feat: encapsulate ENABLE_TX_POOL flag in TransactionPoolService by @natanasow in #4581
  • feat: Add ENV var to use JSON logging by @kasey-alusi-vcc in #4474
  • feat: add txpool_* related RPC methods by @natanasow in #4544
  • feat: add configurable SDK_LOG_LEVEL for enhanced SDK logging by @quiet-node in #4578
  • build(deps): bump actions/upload-artifact from 4.6.2 to 5.0.0 by @dependabot[bot] in #4529
  • build(deps-dev): bump @hashgraph/hedera-local from 2.35.0 to 2.39.0 in /tools/hardhat-example by @dependabot[bot] in #4533
  • test: add tests for createTransactionByType and createTransactionFromLog by @arianejasuwienas in #4587
  • feat: stop fetching transactions data when its not needed by @jasuwienas in #4598
  • fix: fixes failing acceptance test by @konstantinabl in #4612
  • build(deps): bump pino from 9.7.0 to 10.1.0 by @natanasow in #4632
  • feat: /liveness and /readiness improvements by @natanasow in #4622
  • chore: disable workflows related to involved newman by @quiet-node in #4647
  • build(deps): bump golang.org/x/crypto from 0.36.0 to 0.45.0 in /tools/golang-example by @dependabot[bot] in #4637
  • build(deps): bump golang.org/x/crypto from 0.36.0 to 0.45.0 in /tools/golang-json-rpc-tests by @dependabot[bot] in #4636
  • build(deps-dev): bump js-yaml from 3.14.1 to 3.14.2 in /tools/hedera-crosschain-bridge by @dependabot[bot] in #4626
  • build(deps): bump js-yaml in /tools/layer-zero-example by @dependabot[bot] in #4621
  • build(deps-dev): bump js-yaml from 4.1.0 to 4.1.1 in /tools/waffle-example by @dependabot[bot] in #4614
  • build(deps): bump the minor-and-patch-npm-weekly group across 8 directories with 8 updates by @dependabot[bot] in #4609
  • build(deps): bump github.com/consensys/gnark-crypto from 0.18.0 to 0.18.1 in /tools/golang-json-rpc-tests by @dependabot[bot] in #4562
  • feat: add cache factory, unify client interface, remove fallback (#4558) by @jasuwienas in #4623
  • test: migrate koa version from v2 to v3 (#4505) by @jasuwienas in #4613
  • test: stabilize tests by adjusting time waiting for mine and price tolerance (#4658) by @jasuwienas in #4661
  • feat: fail when sending a transaction with non empty acess list by @jasuwienas in #4651
  • feat: adds test coverage for HAPI transactions in conformity tests by @simzzz in #4675
  • feat: nonce ordering with locks by @konstantinabl in #4635
  • feat: rework IPRateLimiter with Redis integration by @quiet-node in #4662
  • feat: removed fallback predefined gas value for eth_estimateGas when failed to retrieve gas estimate from Mirror Node by @quiet-node in #4678
  • feat: replace isLevelEnabled guards with Pino interpolation values by @natanasow in #4679
  • feat: add synthetic HTS transaction support to debug_traceTransaction & debug_traceBlockByNumber by @quiet-node in #4694
  • build(deps): bump pino-pretty from 7.6.1 to 13.1.2 by @dependabot[bot] in #4512
  • build(deps): bump @hashgraph/hedera-local from 2.35.0 to 2.39.0 in /tools/hardhat-viem-example by @dependabot[bot] in #4534
  • build(deps): bump tar-fs from 2.1.3 to 2.1.4 in /tools/hardhat-viem-example by @dependabot[bot] in #4566
  • build(deps): bump mikepenz/action-junit-report from 5.6.2 to 6.0.1 by @dependabot[bot] in #4571
  • build(deps): bump the minor-and-patch-gomod-weekly group across 2 directories with 1 update by @dependabot[bot] in #4600
  • build(deps): bump github.com/consensys/gnark-crypto from 0.18.0 to 0.18.1 in /tools/golang-example by @dependabot[bot] in #4608
  • build(deps-dev): bump js-yaml from 3.14.1 to 3.14.2 in /tools/hardhat-example by @dependabot[bot] in #4618
  • build(deps-dev): bump node-forge from 1.3.1 to 1.3.2 in /tools/subgraph-example by @dependabot[bot] in #4652
  • build(deps-dev): bump webpack from 5.102.1 to 5.103.0 in /dapp-example by @dependabot[bot] in #4665
  • build(deps-dev): bump the minor-and-patch-npm-weekly group across 1 directory with 3 updates by @dependabot[bot] in #4704
  • build(deps): bump the minor-and-patch-actions-weekly group across 1 directory with 8 updates by @dependabot[bot] in #4705
  • feat: set cors aligned with other json rpc providers (#4671) by @jasuwienas in #4710
  • feat: replace Postman with Hoppscotch by @quiet-node in #4687
  • build(deps): bump node-forge from 1.3.1 to 1.3.2 in /tools/hardhat-viem-example by @dependabot[bot] in #4653
  • build(deps): bump the minor-and-patch-cargo-weekly group across 2 directories with 3 updates by @dependabot[bot] in #4703
  • build(deps-dev): bump start-server-and-test from 2.0.13 to 2.1.3 in /dapp-example by @dependabot[bot] in #4666
  • build(deps-dev): bump @types/k6 from 1.2.0 to 1.4.0 in /k6 by @dependabot[bot] in #4667
  • build(deps-dev): bump @hashgraph/sdk from 2.75.0 to 2.78.0 in /tools/hedera-crosschain-bridge by @dependabot[bot] in #4668
  • build(deps): bump the minor-and-patch-npm-daily group across 2 directories with 26 updates by @dependabot[bot] in #4713
  • feat: review the 200 and 400 http code by @jasuwienas in #4650
  • fix: Cherry pick "implement heartbeat-based crash resilience for RedisLockStrategy (#4726)" by @quiet-node in #4774
  • fix: Cherry pick "feat: stop silently swallowing errors (#4758)" by @quiet-node in #4775
  • fix: Cherry pick "fix: stop sending gas price to mn when not submitted (#4755) (#4756)" by @quiet-node in #4777
  • fix: Cherry pick "feat: removes leading zeros from topics when passing them to MN + fail-fast for over 100 nested topcis (#4728)" by @quiet-node in #4778
  • fix: Cherry pick "feat: use type 0x0 for synthetic transactions (#4711) (#4714)" by @quiet-node in #4776
  • chore(tests): remove @Release tag from Read-Only mode test (#4783) by @quiet-node in #4789
  • fix(tests): exclude gasUsed from debug_traceTransaction validation in acceptance test (#4784) by @quiet-node in #4790

New Contributors

Full Changelog: v0.73.1...v0.74.0

What's Changed

  • test: batch 2 conformity tests by @arianejasuwienas in #4110
  • chore(release): Bump versions for v0.74.0-SNAPSHOT by @swirlds-automation in #4561
  • feat: adds cache: prefix to all CacheService keys by @simzzz in #4559
  • fix: revert "test: batch 2 conformity tests (#4110)" by @quiet-node in #4584
  • fix: removed caching logic for eth_gasPrice endpoint by @quiet-node in #4582
  • feat: adds factory for PendingTransactionStorage creation by @simzzz in #4573
  • feat: adds RLP hex txn storage to tx pool service by @simzzz in #4521
  • feat: encapsulate ENABLE_TX_POOL flag in TransactionPoolService by @natanasow in #4581
  • feat: Add ENV var to use JSON logging by @kasey-alusi-vcc in #4474
  • feat: add txpool_* related RPC methods by @natanasow in #4544
  • feat: add configurable SDK_LOG_LEVEL for enhanced SDK logging by @quiet-node in #4578
  • build(deps): bump actions/upload-artifact from 4.6.2 to 5.0.0 by @dependabot[bot] in #4529
  • build(deps-dev): bump @hashgraph/hedera-local from 2.35.0 to 2.39.0 in /tools/hardhat-example by @dependabot[bot] in #4533
  • test: add tests for createTransactionByType and createTransactionFromLog by @arianejasuwienas in #4587
  • feat: stop fetching transactions data when its not needed by @jasuwienas in #4598
  • fix: fixes failing acceptance test by @konstantinabl in #4612
  • build(deps): bump pino from 9.7.0 to 10.1.0 by @natanasow in #4632
  • feat: /liveness and /readiness improvements by @natanasow in #4622
  • chore: disable workflows related to involved newman by @quiet-node in #4647
  • build(deps): bump golang.org/x/crypto from 0.36.0 to 0.45.0 in /tools/golang-example by @dependabot[bot] in #4637
  • build(deps): bump golang.org/x/crypto from 0.36.0 to 0.45.0 in /tools/golang-json-rpc-tests by @dependabot[bot] in #4636
  • build(deps-dev): bump js-yaml from 3.14.1 to 3.14.2 in /tools/hedera-crosschain-bridge by @dependabot[bot] in #4626
  • build(deps): bump js-yaml in /tools/layer-zero-example by @dependabot[bot] in #4621
  • build(deps-dev): bump js-yaml from 4.1.0 to 4.1.1 in /tools/waffle-example by @dependabot[bot] in #4614
  • build(deps): bump the minor-and-patch-npm-weekly group across 8 directories with 8 updates by @dependabot[bot] in #4609
  • build(deps): bump github.com/consensys/gnark-crypto from 0.18.0 to 0.18.1 in /tools/golang-json-rpc-tests by @dependabot[bot] in #4562
  • feat: add cache factory, unify client interface, remove fallback (#4558) by @jasuwienas in #4623
  • test: migrate koa version from v2 to v3 (#4505) by @jasuwienas in #4613
  • test: stabilize tests by adjusting time waiting for mine and price tolerance (#4658) by @jasuwienas in #4661
  • feat: fail when sending a transaction with non empty acess list by @jasuwienas in #4651
  • feat: adds test coverage for HAPI transactions in conformity tests by @simzzz in #4675
  • feat: nonce ordering with locks by @konstantinabl in #4635
  • feat: rework IPRateLimiter with Redis integration by @quiet-node in #4662
  • feat: removed fallback predefined gas value for eth_estimateGas when failed to retrieve gas estimate from Mirror Node by @quiet-node in #4678
  • feat: replace isLevelEnabled guards with Pino interpolation values by @natanasow in #4679
  • feat: add synthetic HTS transaction support to debug_traceTransaction & debug_traceBlockByNumber by @quiet-node in #4694
  • build(deps): bump pino-pretty from 7.6.1 to 13.1.2 by @dependabot[bot] in #4512
  • build(deps): bump @hashgraph/hedera-local from 2.35.0 to 2.39.0 in /tools/hardhat-viem-example by @dependabot[bot] in #4534
  • build(deps): bump tar-fs from 2.1.3 to 2.1.4 in /tools/hardhat-viem-example by @dependabot[bot] in #4566
  • build(deps): bump mikepenz/action-junit-report from 5.6.2 to 6.0.1 by @dependabot[bot] in #4571
  • build(deps): bump the minor-and-patch-gomod-weekly group across 2 directories with 1 update by @dependabot[bot] in #4600
  • build(deps): bump github.com/consensys/gnark-crypto from 0.18.0 to 0.18.1 in /tools/golang-example by @dependabot[bot] in #4608
  • build(deps-dev): bump js-yaml from 3.14.1 to 3.14.2 in /tools/hardhat-example by @dependabot[bot] in #4618
  • build(deps-dev): bump node-forge from 1.3.1 to 1.3.2 in /tools/subgraph-example by @dependabot[bot] in #4652
  • build(deps-dev): bump webpack from 5.102.1 to 5.103.0 in /dapp-example by @dependabot[bot] in #4665
  • build(deps-dev): bump the minor-and-patch-npm-weekly group across 1 directory with 3 updates by @dependabot[bot] in #4704
  • build(deps): bump the minor-and-patch-actions-weekly group across 1 directory with 8 updates by @dependabot[bot] in #4705
  • feat: set cors aligned with other json rpc providers (#4671) by @jasuwienas in #4710
  • feat: replace Postman with Hoppscotch by @quiet-node in #4687
  • build(deps): bump node-forge from 1.3.1 to 1.3.2 in /tools/hardhat-viem-example by @dependabot[bot] in #4653
  • build(deps): bump the minor-and-patch-cargo-weekly group across 2 directories with 3 updates by @dependabot[bot] in #4703
  • build(deps-dev): bump start-server-and-test from 2.0.13 to 2.1.3 in /dapp-example by @dependabot[bot] in #4666
  • build(deps-dev): bump @types/k6 from 1.2.0 to 1.4.0 in /k6 by @dependabot[bot] in #4667
  • build(deps-dev): bump @hashgraph/sdk from 2.75.0 to 2.78.0 in /tools/hedera-crosschain-bridge by @dependabot[bot] in #4668
  • build(deps): bump the minor-and-patch-npm-daily group across 2 directories with 26 updates by @dependabot[bot] in #4713
  • feat: review the 200 and 400 http code by @jasuwienas in #4650
  • fix: Cherry pick "implement heartbeat-based crash resilience for RedisLockStrategy (#4726)" by @quiet-node in #4774
  • fix: Cherry pick "feat: stop silently swallowing errors (#4758)" by @quiet-node in #4775
  • fix: Cherry pick "fix: stop sending gas price to mn when not submitted (#4755) (#4756)" by @quiet-node in #4777
  • fix: Cherry pick "feat: removes leading zeros from topics when passing them to MN + fail-fast for over 100 nested topcis (#4728)" by @quiet-node in #4778
  • fix: Cherry pick "feat: use type 0x0 for synthetic transactions (#4711) (#4714)" by @quiet-node in #4776
  • chore(tests): remove @Release tag from Read-Only mode test (#4783) by @quiet-node in #4789
  • fix(tests): exclude gasUsed from debug_traceTransaction validation in acceptance test (#4784) by @quiet-node in #4790

New Contributors

Full Changelog: v0.73.1...v0.74.0

Don't miss a new hiero-json-rpc-relay release

NewReleases is sending notifications on new releases.