25.4.0
Important
This is NOT a Pectra Mainnet-ready release. The next release likely will be.
This is an optional update. Please note the upcoming breaking changes.
This release is mostly stability improvements ahead of the hard fork.
Upcoming Breaking Changes
MetricSystem::createLabelledGauge
is deprecated and will be removed in a future release, replace it withMetricSystem::createLabelledSuppliedGauge
--Xsnapsync-synchronizer-flat-db-healing-enabled
is deprecated, use--Xbonsai-full-flat-db-enabled
instead.--Xbonsai-limit-trie-logs-enabled
is deprecated, use--bonsai-limit-trie-logs-enabled
instead.--Xbonsai-trie-log-pruning-enabled
is deprecated, use--bonsai-limit-trie-logs-enabled
instead.--Xbonsai-trie-logs-pruning-window-size
is deprecated, use--bonsai-trie-logs-pruning-window-size
instead.--Xsnapsync-bft-enabled
is deprecated and will be removed in a future release. SNAP sync is supported for BFT networks.--tx-pool-disable-locals
has been deprecated, use--tx-pool-no-local-priority
, instead.- Sunsetting features - for more context on the reasoning behind the deprecation of these features, including alternative options, read this blog post
- Tessera privacy
- Smart-contract-based (onchain) permissioning
- Proof of Work consensus
- Fast Sync
- Transaction indexing will be disabled by default in a future release for snap sync and checkpoint sync modes. This will break RPCs that use transaction hash for historical queries.
- Support for block creation on networks running a pre-Byzantium fork is deprecated for removal in a future release, after that in order to update Besu on nodes that build blocks, your network needs to be upgraded at least to the Byzantium fork. The main reason is to simplify world state management during block creation, since before Byzantium for each selected transaction, the receipt must contain the root hash of the modified world state, and this does not play well with the new plugin features and future work on parallelism.
--compatibility-eth64-forkid-enabled
has been deprecated and will be removed in the next release. #8492
Additions and Improvements
- Add Hoodi discovery DNS #8446
- Decode deposit log data without Web3j #8394
- Tune layered txpool default configuration for upcoming gas limit and blob count increases #8487
- Removed support for Ethereum protocol versions
eth/62
,eth/63
,eth/64
, andeth/65
. #8492 - Explicitly add
depositContractAddress
tomainnet.json
#8410
Performance
- Consensys/tuweni 2.7.0 reduces boxing/unboxing overhead on some EVM opcodes, like PushX and Caller #8330, #8461
- Precompile Caching, enable with
--cache-precompiles
#8095
Dependencies
- Replace tuweni libs with https://github.com/Consensys/tuweni #8330, #8461
Bug fixes
- Fix QBFT and IBFT transitions that change the mining beneficiary #8387
eth_getLogs
- empty topic is a wildcard match #8420- Upgrade spring-security-crypto to address CVE-2025-22228 #8448
- Fix restoring txpool from disk when blob transactions are present #8481
- Fix for bonsai db inconsistency on abnormal shutdown #8500
- Fix to add stateroot mismatches to bad block manager #8207
5d11ef3b55cca8b060051ab910e0a89a76eae4f6a2d3d2bfb718ee742307fcaf besu-25.4.0.zip
6abbc7472c9c2137e9e82b4d8fb569f25f9f85d4a330eea6b0dbb6f8a67340af besu-25.4.0.tar.gz
New Contributors
- @relu91 made their first contribution in #8365
- @jjohannes made their first contribution in #8443
- @mirgee made their first contribution in #8353
Full Changelog: 25.3.0...25.4.0