Support for HIP-1261 Simple Fees saw support for full intrinsic mode estimation added to our fee estimationPOST /api/v1/network/fees API. The next release should additionally bring support for stateful mode.
Historically, searching for transactions by an account ID did not return results for accounts that were involved in NFT transfers. Instead, it only included transactions for the payer account or accounts involved in hbar transfers or fungible transfers. In this release, the /api/v1/accounts/{id} and /api/v1/transactions?account.id={id} can now search for accounts that are either the sender or receiver of NFTs. This functionality is currently disabled but should be enabled in the next release after finalizing our testing.
To support downstream systems that need to reconstruct the raw Ethereum transaction from our APIs, we now store the raw "weibar" value in our database instead of the truncated tinybar value that the consensus node actually transferred. A new optional hbar query parameter was added to /api/v1/contracts/results, /api/v1/contracts/results/{id}, /api/v1/contracts/{id}/results/{timestamp} REST APIs. When set to false, it will return the full 256 bit weibar values from the original Ethereum transaction. When omitted or set to true (the default), it will return it in tinybars as it did before.
A number of improvements were implemented for HIP-1340 Pectra Ethereum Upgrade. This includes adding support for EOA code delegation for CryptoCreateTransaction and CryptoCreateTransaction. Support for Pectra in our /api/v1/contracts/call API was also merged. However, while complete, all of the Pectra changes remain in a feature branch as we await official consensus node artifacts.
Block node integration saw a number of improvements including updates to HIP-1137 for filtering by type and incorporating upstream protobuf changes. Block streams now allow signed transactions without a preceding event header. The maximum streaming response size was increased to 36 MiB to support larger blocks that could be sent. Finally, support for verifying the running hash during HIP-1193 cutover was added.
The /api/v1/network/nodes REST API was converted from JavaScript to Java. This conversion results in about a 25% performance improvement and an easier to maintain codebase. The existing JavaScript API will remain for two releases and is still the default in this release as we finalize its testing.
Enhancements
- Increase web3 user pgbouncer connection limit #13171
- Misc blockstreams improvement #13161
- Switch to self hosted buildkit image in workflows #13152
- HIP-1137 Add type column to registered node table #13131
- Remove besu from importer and common #13125
- HIP-1137 Address changes from node_update proto file in NodeUpdateTransactionHandler #13108
- Move RecordItemBuilder from importer to common #13100
- HIP-1193 Cutover running hash #13098
- HIP-1340 Adapt
CryptoUpdateTransactionHandlerfor code delegation #13065 - Optimize the performance of opcode web3 endpoint #13062
- HIP-1340 Adapt
CryptoCreateTransactionHandlerfor code delegation #13061 - Stored weibars in db and expose via API #13023
- NFT Transaction Visibility Around Accounts #12978
- HIP-1261 add fee calculation library #12944
- Converted /network/nodes API to Java #12889
Bug Fixes
- Made weibar migration to async (#13202) #13207
- Fix non-zero realm issues #13169
- Fix exchange rate cache in web3 #13162
- Revert deletion of copied classes in web3 #13150
- Fix js REST performance degradation #13146
- Improve fund reclaim resilience in acceptance test #13129
- Fix null previous hash in blockstream acceptance test #13119
Documentation
Dependency Upgrades
- Bump flatted from 3.4.1 to 3.4.2 in /rest/monitoring #13173
- Bump flatted to 3.4.0 #13167
- Bump google.golang.org/grpc from 1.78.0 to 1.79.3 in /pinger #13164
- Bump google.golang.org/grpc from 1.78.0 to 1.79.3 in /rosetta #13163
- Bump golang.org/x/text from 0.34.0 to 0.35.0 in /tools/bootstrap in the dependencies group #13145
- Bump jest from 30.2.0 to 30.3.0 in /rest in the dependencies group #13144
- Bump jest from 30.2.0 to 30.3.0 in /tools/mirror-report in the dependencies group #13143
- Bump fluxcd/flux2 from 2.8.1 to 2.8.2 in the dependencies group #13142
- Bump software.amazon.awssdk:bom from 2.42.8 to 2.42.13 #13141
- Bump org.cyclonedx:cyclonedx-gradle-plugin from 3.0.1 to 3.2.2 #13140
- Bump com.hedera.cryptography:hedera-cryptography-wraps from 3.7.6 to 3.7.7 #13139
- Bump org.flywaydb:flyway-database-postgresql from 12.0.3 to 12.1.0 #13138
- Bump undici from 7.22.0 to 7.24.1 in /rest #13136
- Bump flatted from 3.3.3 to 3.4.1 in /rest/monitoring #13133
- Bump tar from 7.5.10 to 7.5.11 in /rest #13116
- Bump the dependencies group with 2 updates #13095
- Bump gradle-wrapper from 9.3.1 to 9.4.0 #13094
- Bump software.amazon.awssdk:bom from 2.42.6 to 2.42.8 #13093
- Bump com.hedera.cryptography:hedera-cryptography-wraps from 3.6.0 to 3.7.5 #13092
- Bump hedera-app to 0.72.0-rc.1 #13091
- Bump versions for v0.151.0-SNAPSHOT #13090
Deployments
- Deploy v0.151.0-rc2 to staging #13208
- Enable nft entity transactions in perfnet #13201
- Enable restjava
network/nodesroute in previewnet #13181 - Deploy v0.151.0-rc1 to performance #13176
- Deploy v0.151.0-rc1 to staging #13175
- Add network nodes configuration to restjava in integration #13134
- Fix testkube config #13120
- Update testkube config #13115
- Upgrade staging to rc3 #13112
Contributors
Thank you to all the contributors who worked on this release:
@ashumahajan
@bilyana-gospodinova
@IvanKavaldzhiev
@jnels124
@martingeorgiev1
@PavelSBorisov
@sdimitrov9
@steven-sheehy
@xin-hedera