fix(deps): update module github.com/ethereum/go-ethereum to v1.16.7 #680
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
v1.14.8->v1.16.7Release Notes
ethereum/go-ethereum (github.com/ethereum/go-ethereum)
v1.16.7: Ballistic Drift Stabilizer (v1.16.7)Compare Source
This is a re-roll of v1.16.6, including an important fix in the KZG cryptography library.
This release enables the Fusaka hardfork on Ethereum mainnet.
The Fusaka fork is scheduled to occur at
2025-12-03 21:49:11 UTC.Please upgrade your node to v1.16.7 in time for the fork.
This release also enables two blob-parameter-only (BPO) upgrades.
These upgrades change protocol parameters to increase the available blob capacity.
2025-12-092026-01-07Fusaka
geth --devmode (#32917)RPC
eth_sendRawTransactionSyncwhich waits until either a timeout or the transaction is mined. This feature is mostly useful on L2s with lower blocktimes. (#32830, #32930, #32929)eth_simulateV1in ethclient (#32856)debug_traceCall(#33015)Core
geth --genesisflag as an alternative to runninggeth init genesis.json(#32844)eth_getProofrequest with the new path-based archive node. (#32907, #32914, #32937)Networking
For a full rundown of the changes please consult the Geth 1.16.6 and 1.16.7 release milestones.
As with all our previous releases, you can find the:
ethereum/client-go(use "stable" tag).v1.16.6: Leather Wrapping (v1.16.6)Compare Source
This release enables the Fusaka hardfork on Ethereum mainnet
The fork is scheduled to occur at
2025-12-03 21:49:11 UTC.This release also enables the BPO1 and BPO2 forks for mainnet at
2025-12-09and2026-01-07respectively.Fusaka
geth --devmode (#32917)RPC
eth_sendRawTransactionSyncwhich waits until either a timeout or the transaction is mined. This feature is mostly useful on L2s with lower blocktimes. (#32830, #32930, #32929)eth_simulateV1in ethclient (#32856)debug_traceCall(#33015)Core
geth --genesisflag as an alternative to runninggeth init genesis.json(#32844)eth_getProofrequest with the new path-based archive node. (#32907, #32914, #32937)Networking
For a full rundown of the changes please consult the Geth 1.16.6 release milestone.
As with all our previous releases, you can find the:
ethereum/client-go.v1.16.5: Coolant Cells (v1.16.5)Compare Source
This is a maintenance release. We are issuing this release mostly to add a conversion path for blob proofs submitted via
eth_sendRawTransaction. See https://blog.ethereum.org/2025/10/15/fusaka-blob-update for more information.RPC
eth_sendRawTransactionhas an upgrade path for blob proofs after the Fusaka fork. Note this is temporary. We will remove support for blob proof conversion during the v1.17.x release cycle, please update RPC client libraries to support cell-level (v1) proofs. (#32849)eth_subscribenow supports atransactionReceiptssubscription. There is also a wrapper in ethclient for this new subscription type. (#32697, #32869)eth_simulateV1was fixed to return the block timestamp in logs, likeeth_getLogsdoes. (#32831)BoundContract.Transferwill now verify that the contract has a payable fallback or receive method. (#32374)keccak256preimagetracer has been added. (#32569)Networking
Core
txpool/valid.metermetric has been corrected. (#32845)For a full rundown of the changes please consult the Geth 1.16.5 release milestone.
As with all our previous releases, you can find the:
ethereum/client-go.v1.16.4: Bioelectric Infusers (v1.16.4)Compare Source
This release enables the Osaka (Fusaka) fork on testnets. We also enable two blob-parameter only (BPO) forks for the testnets.
Holesky
1759308480(2025-10-01 08:48:00 UTC)1759800000(2025-10-07 01:20:00 UTC)1760389824(2025-10-13 21:10:24 UTC)Sepolia
1760427360(2025-10-14 07:36:00 UTC)1761017184(2025-10-21 03:26:24 UTC)1761607008(2025-10-27 23:16:48 UTC)Hoodi
1761677592(2025-10-28 18:53:12 UTC)1762365720(2025-11-05 18:02:00 UTC)1762955544(2025-11-12 13:52:24 UTC)With BPO1 and BPO2, the blob capacity of these networks will increase as follows:
15, target:1021, target:14As of this release, the default block gas limit is set to 60M gas.
This is the recommended limit that we, as client authors, feel comfortable with.
CLI commands
geth snapshotand related commands no longer fail due to not finding the trie journal file. (#32531)geth snapshot dumpandgeth export-preimagesis resolved. (#32650)keeper, to the source tree. (#32543, #32638, #32736)RPC
eth_calland related operations were fixed to not apply the EIP-7825 per-transaction gas limit when executing under Osaka fork rules. (#32641)eth_getLogsand other log filtering operations, it is now possible to configure the number of addresses allowed in the filter using the--rpc.logquerylimitflag. (#32327)--state.size-trackingoption enables collection of precise state size numbers, which can be read using thedebug_stateSizeendpoint. (#32362)debug_executionWitnessanddebug_executionWitnessByHashmethods create a block witness for stateless execution. (#32216)Tracing & ABIGEN
CodeChangeV2hook, with aCodeChangeReasonparameter. (#32525, #32535)OnBalanceChangewas not invoked. (#32526)BoundContractinaccounts/abi/bind/v2now exposes anAddressmethod. (#32559)Core
engine_getBlobshas been updated for improved spec compliance and to deal with the conversion of the blob tx proofs. (#32536, #32538, #32578)engineAPI operations, andeth_config, now support BPO-style forks. (#32589, #32615, #32636, #32579)Networking
Build
v1.16.3: Impact Restrictors (v1.16.3)Compare Source
What's Changed
This is a maintenance release to prepare for the Fusaka release next week. It contains a state history rewrite, fixes for the Osaka devnets, performance improvements, and a few bug fixes.
Fusaka
Core
GetBlockReceiptsalso handles pending blocks #32461db inspect#32506RPC
DoEstimateGas#31795debug_seedHash#32495Others
For a full rundown of the changes please consult the Geth 1.16.3 release milestone.
As with all our previous releases, you can find the:
ethereum/client-go.v1.16.2: Sprouted Seed Vial (v1.16.2)Compare Source
This is a maintenance release that includes implementations of the Fusaka EIPs, along with
several new features, optimizations, and bug fixes. Upgrading to this version is optional,
but feedback from those who do is greatly appreciated.
Fusaka:
Core:
SigHashof SetCodeAuthorization for customized signing. (#32298)RPC:
eth_getLogsrequests that include both block hash and block range. (#31877)debug_traceCall. (#32183)debug_syncto perform a trusted full chain sync. (#32177,#32149)Others:
For a full rundown of the changes please consult the Geth 1.16.2 release milestone.
As with all our previous releases, you can find the:
ethereum/client-go.v1.16.1: Repair Actuals (v1.16.1)Compare Source
This is a patch release, fixing some regressions with v1.16.0.
TryPackmethods that return an error for invalid parameter values. (#31692)geth --vmtrace, enabling the live tracer, did not work due to a bug. (#32107)blockTimestampas returned byeth_getLogsis now hex-encoded. (#32129)eth_getLogsand related endpoints now limit the number of queried addresses to 1000. (#31876)eth_getTransactionReceiptshould be a bit faster. (#32021)geth --devmode related todebug_setHeadis resolved. (#31871)For a full rundown of the changes please consult the Geth 1.16.1 release milestone.
As with all our previous releases, you can find the:
ethereum/client-go.v1.16.0: Terran Rivets (v1.16.0)Compare Source
We are proud to present the v1.16.0 release, introducing path-based archive node and several other improvements to the state database implementation. There is also the usual amount of bug fixes and small improvements.
Archive Node
This release includes a new, experimental implementation of the archive node (
--gcmode=archive). As an archive node, Geth stores all historical states, and can thus retrieve account balances, nonces and storage values at old blocks.In previous versions of Geth, running as an archive node was only possible using the legacy 'hash-based' state storage scheme (
--state.scheme=hash). When syncing mainnet the resulting database would reach sizes larger than 20TB, and it all had to be stored on a high-speed SSD.The new implementation provides the state archive in combination with 'path-based' storage (
--state.scheme=path). Comparing to hash-based storage, there are three basic advantages:--history.stateflag.Notably, there is also one drawback with the new archive node:
eth_getProofis not supported for historical blocks. With--state.scheme=path, Geth can only serve state proofs for the latest 128 blocks. We believe this is an acceptable tradeoff. If you need older proofs, you can still a hash-based archive node as before, but we'd also really like to hear about your use case. Please contact us via email at[email protected]so we can learn more, and possibly find a solution that can be implemented within Geth.How it works
With 'path-based' state storage, Geth keeps exactly one full state in the database. Specifically, the persistent state is 128 blocks in the past. For newer blocks up to the head, forward diffs are kept in memory. In order to support rolling back to blocks older than head-128, Geth also keeps 'state history' in the form of reverse key-value diffs. When the chain is reset to an old block, these diffs are applied to the persistent state, going backwards one diff at a time until the target block is reached.
A reverse state diff contains the previous values of all modified accounts and storage locations for a specific block. There is a reverse diff for each historical block. This makes reverse diffs suitable for storage into the 'freezer', i.e. they do not need to live within Pebble/LevelDB.
The new archive mode is built on the realization that reverse state diffs contain all necessary data to serve historical state queries. For example, in order to get the historical balance of an account X at block B, we can search forward through diffs starting at block B until we find a block where account X is modified. This diff will contain the balance of the account, since it stores the all modified pre-values.
To accelerate the search for a suitable diff, Geth creates a database index storing the block numbers in which an account was modified. This index is small compared to the overall state history, but it is crucial for correct operation of the archive node. The state index is stored in PebbleDB and will be generated automatically while geth is syncing the chain. It takes ~30h to build the archive state index for mainnet, and historical state will only be available when the index is fully built. Geth will report a syncing status through
eth_syncingwhile the indexing happens.Other state implementation changes
In v1.16.0, the implementation of the 'state snapshot' has been rewritten for improved integration with path-based state storage. As you may recall, Geth stores the state in two different ways:
When the implementation of the snapshot and its layer tree was introduced in Geth v1.10.0, it was built to be entirely separate from the trie database. We added path-based state storage in v1.13.0, and that system contains a layer tree as well, with slight differences in semantics and implementation.
As of this release, the layer trees of the state snapshot and trie database have been merged into a single implementation (#30661). In path-based mode, the trie database now holds a reference to the corresponding snapshot layer for each tree state. The new layer tree has also been enhanced with an additional index of layers in which an account was modified (#30971). Note this is similar in spirit to the historical state index. The new index will enable us to increase the number of in-memory state layers in the future.
Full list of changes in this release
Geth
geth download-erasubcommand for fetching era1 files. (#31823, #31951, #32081)Ready for fork activationmessages are now printed based on the current clock time. (#31800)geth --devnow shows a listing of pre-funded dev chain accounts and their keys. (#31898)geth --devnow always enables preimage recording. (#31821)Fusaka
We have started merging some EIP implementations for the upcoming Fusaka fork:
Core
RPC
eth_getLogsand similar requests will now return theblockTimestamp. (#31887)eth_getBlockReceiptswill now returnnullinstead of an error for blocks which are not found. (#31949)Networking
For a full rundown of the changes please consult the Geth 1.16.0 release milestone
As with all our previous releases, you can find the:
ethereum/client-go.v1.15.11: Armored Compartments (v1.15.11)Compare Source
This is a maintenance release, correcting issues with log and transaction indexing. Upgrading to this release is not required to follow the Pectra fork on mainnet, you can keep using v1.15.9 or v1.15.10, but we recommend you upgrade at your convenience to fix RPC issues.
All changes
eth_getTransactionByHashis resolved. (#31752)eth_simulateV1now correctly returns the transaction sender (from). (#31480)eth_estimateGasrelated tofloorDataGasis resolved. (#31735)ethclient'sBlockByNumbercan now retrieve the pending block. (#31504)geth initwill once again exit in error when trying to re-initialize a database with an incompatible config. (#31743)geth --devmode is resolved. (#31758)For a full rundown of the changes please consult the Geth 1.15.11 release milestone
As with all our previous releases, you can find the:
ethereum/client-go.v1.15.10: Omni-Capacitors (v1.15.10)Compare Source
This is a bug-fix release that corrects an issue with the new log indexer and configures the beacon chain light client for the Electra fork on mainnet (we forgot about this in v1.15.9).
This release is also suitable for following the Pectra fork on Mainnet.
All changes
authorizationListto calls. (#31198)debug_setMemoryLimithas been added for tweaking Go garbage collector behavior. We do not recommended using this, it's just a facility for debugging Geth. (#31441)For a full rundown of the changes please consult the Geth 1.15.10 release milestone
As with all our previous releases, you can find the:
ethereum/client-go.v1.15.9: Multicapacitor (v1.15.9)Compare Source
This release enables the Prague execution-layer fork on mainnet.
Prague
As of this release, the Prague fork is scheduled to occur on mainnet at block timestamp
1746612311(Wed May 07 10:05:11 2025 UTC). As a reminder, the fork contains the following EIPs:MAX_EFFECTIVE_BALANCEAll changes
eth_sendRawTransactionwould always return a txhash, even if the transaction wasn't includable on chain. (#31618)eth_feeHistoryrelated to blob fees is resolved. (#31663)For a full rundown of the changes please consult the Geth 1.15.9 release milestone
As with all our previous releases, you can find the:
ethereum/client-go.v1.15.8: Combatives Upgrade (v1.15.8)Compare Source
This is a bug-fix release with some performance improvements.
Geth
geth importnow applies database and cache flags correctly. (#31577, #31534)blsyncnow has a feature to export checkpoint files. (#31469)Core library
fsynca while ago to improve performance on slow filesystems, but it has lead to reports of instability. The performance hit from enabling data sync is negligible. (#31519)RPC
P2P networking
*enode.Nodeto handlers. This is a breaking change, but the onConfiguration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.