github hiero-ledger/hiero-mirror-node v0.128.0

latest releases: v0.138.0, v0.138.0-rc1, v0.137.1...
4 months ago

This release sees support for HIP-551 Batch Transactions. This includes ingest support for the new batch transaction type and the corresponding REST API changes. The /api/v1/transactions/{id} REST API was changed to return the inner transactions when given the transaction ID of the outer batch transaction.

HIP-1064 Daily Reward for Active Nodes was also implemented in this release. This support takes the form of ingesting the new decline_reward field on node create and update transactions as well as adding the field to the response of the /api/v1/network/nodes REST API.

HIP-991 Topic custom fees saw the final tasks in the epic completed including new acceptance and performance tests added to verify functionality and performance end to end.

A number of components saw their versions upgraded. Support for Kubernetes 1.32 was verified and we are in the process of upgrading the control plane across our managed instances. The helm chart saw all of its dependent charts upgraded to the latest version. Finally, Node.js saw a major upgrade with a bump from 18.20.8 to 22.14.0. This moves mirror nodes off of Node.js 18 LTS which reaches end-of-life at the end of April 2025.

The REST API now enables the response cache by default in the Helm chart. The response cache uses Redis to store the JSON response indexed by URL to bypass the potentially slow database query. Similar to the CDN that our managed instances use, the responses are cached based upon the max-age in the cache-control header, which vary per endpoint. Unlike the CDN, this cache cannot be bypassed by the client via specific headers helping to further protect our API. For operators not using our helm chart, it's recommended to configure the REST module with a connection to a Redis instance and enable the response cache.

The /api/v1/contracts/call saw further fixes and improvements to integrate the latest modularized EVM library. The EVM library was updated to v0.60 and v0.61 which brought support for new system contracts. This includes support for the new IHederaScheduleService in HIP-755 and HIP-756, the new IHederaAccountService in HIP-632 and HIP-906, custom fee system contracts in HIP-1010, and friction-less airdrop system contracts in HIP-904.

Breaking Changes

If you're using the hedera-mirror-common Helm chart, there are some manual CRD changes that need to be applied. Run the following CRD updates right before triggering the helm upgrade:

kubectl apply --server-side --force-conflicts -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.81.0/example/prometheus-operator-crd/monitoring.coreos.com_alertmanagerconfigs.yaml
kubectl apply --server-side --force-conflicts -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.81.0/example/prometheus-operator-crd/monitoring.coreos.com_alertmanagers.yaml
kubectl apply --server-side --force-conflicts -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.81.0/example/prometheus-operator-crd/monitoring.coreos.com_podmonitors.yaml
kubectl apply --server-side --force-conflicts -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.81.0/example/prometheus-operator-crd/monitoring.coreos.com_probes.yaml
kubectl apply --server-side --force-conflicts -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.81.0/example/prometheus-operator-crd/monitoring.coreos.com_prometheusagents.yaml
kubectl apply --server-side --force-conflicts -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.81.0/example/prometheus-operator-crd/monitoring.coreos.com_prometheuses.yaml
kubectl apply --server-side --force-conflicts -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.81.0/example/prometheus-operator-crd/monitoring.coreos.com_prometheusrules.yaml
kubectl apply --server-side --force-conflicts -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.81.0/example/prometheus-operator-crd/monitoring.coreos.com_scrapeconfigs.yaml
kubectl apply --server-side --force-conflicts -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.81.0/example/prometheus-operator-crd/monitoring.coreos.com_servicemonitors.yaml
kubectl apply --server-side --force-conflicts -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.81.0/example/prometheus-operator-crd/monitoring.coreos.com_thanosrulers.yaml
kubectl apply --server-side --force-conflicts --force-conflicts -k https://github.com/traefik/traefik-helm-chart/traefik/crds/

Enhancements

  • Transition HTTP chart repositories to OCI (0.128) #10994
  • Support Kubernetes 1.32 #10941
  • Enable REST API response cache by default in chart #10937
  • Adapting web3 integration tests to partially pass with shard and realm #10934
  • Fix estimate feature acceptance tests #10896
  • Remove copied HistoryLibraryImpl #10894
  • HIP-551 Add rest changes for batch transactions #10892
  • Add cancel airdrop tests #10887
  • Adding tests for token reject system contract #10885
  • Fix stackgres Issues #10884
  • Fixing GraphQL tests with non-zero realm #10866
  • Add additional params for web3 k6 tests in deploy branch #10863
  • K6 web3 tests fixes and data adaptation #10862
  • HIP-1056 Add block stream metrics #10861
  • HIP-1064 Add decline_reward to /api/v1/network/nodes #10860
  • HIP-1064 Support decline_reward on node create and update #10858
  • Add claim token airdrop tests #10857
  • HIP-551: support batch transactions in importer #10816
  • Add evm version 51 support for hedera account service #10815
  • Add new topic with custom fee variable in topicIds k6 test #10810
  • Add topic with custom fee in mainnet-staging-na helmerelease #10809
  • Airdrop tests for modularized #10806
  • Fix modularized header in test module (0.127) #10800
  • Adapt to protobuf-java-api 0.61.0 #10798
  • Fix modularized header in test module #10797
  • Bump hedera-app to 0.60.0 #10792
  • HIP-991 - Add acceptance tests for topic with fixed fees #10735

Bug Fixes

  • Fix acceptance operator leaking remaining hbars (0.128) #10991
  • Add the missing contract key in the state (0.128) #10990
  • Fix storage slot value removal issue #10939
  • Add exception handling for invalid sender #10936
  • Add isModularizedCall exception parameter in the mono flow #10893
  • Fix non-zero realm support in acceptance tests #10891
  • Support address book domain name in acceptance tests #10883
  • Fix formatSlot function used in get contract state rest api call #10882
  • Fix data not found caused by replication delay in rest api #10870
  • Fix gha deprecated cache issue #10869
  • Remove realm check in rest-java #10831
  • Fix broken web3 test comiplation #10828
  • Support legacy Transaction in block stream #10822
  • Remove support for 0.0.0x EVM addresses #10814
  • Fix rosetta workflow #10804
  • Add tests for token custom fee modification precompiled functions #10795
  • Fix typo in contractCallEstimateAssociateTokens #10794

Dependency Upgrades

  • Bump actions/setup-node from 4.3.0 to 4.4.0 #10926
  • Bump actions/setup-java from 4.7.0 to 4.7.1 #10925
  • Bump @aws-sdk/client-s3 from 3.782.0 to 3.787.0 in /hedera-mirror-rest #10924
  • Bump quick-lru from 7.0.0 to 7.0.1 in /hedera-mirror-rest #10923
  • Bump ioredis from 5.6.0 to 5.6.1 in /hedera-mirror-rest #10922
  • Bump @testcontainers/redis from 10.24.0 to 10.24.2 in /hedera-mirror-rest #10921
  • Bump @testcontainers/postgresql from 10.24.0 to 10.24.2 in /hedera-mirror-rest #10920
  • Bump github.com/prometheus/client_golang from 1.21.1 to 1.22.0 in /hedera-mirror-rosetta #10918
  • Bump com.google.guava:guava from 33.4.6-jre to 33.4.7-jre #10917
  • Bump org.web3j:web3j-gradle-plugin from 4.13.0 to 4.14.0 #10916
  • Bump com.hedera.hashgraph:hedera-protobuf-java-api from 0.61.1 to 0.61.2 #10915
  • Bump jooqVersion from 3.20.2 to 3.20.3 #10914
  • Bump software.amazon.awssdk:bom from 2.31.16 to 2.31.21 #10912
  • Bump flywayVersion from 11.4.0 to 11.7.0 #10911
  • Bump commons-io:commons-io from 2.18.0 to 2.19.0 #10910
  • Bump com.hedera.hashgraph:app from 0.61.1 to 0.61.2 #10890
  • Bump hedera.app to version 0.61.1 #10874
  • Bump hedera.app to version 0.61.0 #10865
  • Bump express from 4.21.2 to 5.1.0 in /hedera-mirror-rest/monitoring #10855
  • Bump express-http-context from 1.2.5 to 2.0.0 in /hedera-mirror-rest #10852
  • Bump @aws-sdk/client-s3 from 3.777.0 to 3.782.0 in /hedera-mirror-rest #10850
  • Bump securego/gosec from 2.22.2 to 2.22.3 #10848
  • Bump step-security/harden-runner from 2.11.0 to 2.11.1 #10847
  • Bump github.com/hiero-ledger/hiero-sdk-go/v2 from 2.58.0 to 2.59.0 in /hedera-mirror-rosetta #10836
  • Bump github.com/ory/dockertest/v3 from 3.11.0 to 3.12.0 in /hedera-mirror-rosetta #10835
  • Bump Node.js from 18.20.8 to 22.14.0 #10832
  • Bump versions for v0.128.0-SNAPSHOT #10788

Deployments

  • Deploy v0.128.0 to testnet-eu #10997
  • Prepare staging for 0.128.0-rc1 #10963
  • Upgrade integration-docker to 0.128.0-rc1 #10961
  • Update sealed secret #10958
  • Prepare performance for 0.128.0-rc1 #10957
  • Deploy v0.127.0-rc2 to integration-docker #10818
  • Change integration-docker to non-zero realm #10812

Contributors

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

@bilyana-gospodinova
@filev94
@jnels124
@kselveliev
@mgoelswirlds
@nickeynikolovv
@sdimitrov9
@steven-sheehy
@xin-hedera

Don't miss a new hiero-mirror-node release

NewReleases is sending notifications on new releases.