Skip to content

Bump the dependencies group across 1 directory with 2 updates#103

Closed
dependabot[bot] wants to merge 1 commit intomasterfrom
dependabot/go_modules/dependencies-a221e30ed9
Closed

Bump the dependencies group across 1 directory with 2 updates#103
dependabot[bot] wants to merge 1 commit intomasterfrom
dependabot/go_modules/dependencies-a221e30ed9

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Jun 30, 2025

Bumps the dependencies group with 2 updates in the / directory: github.com/attestantio/go-eth2-client and github.com/ethereum/go-ethereum.

Updates github.com/attestantio/go-eth2-client from 0.25.2 to 0.26.0

Changelog

Sourced from github.com/attestantio/go-eth2-client's changelog.

0.26.0:

  • refactor http.Spec to allow more complex types in the keys
  • support pending consolidations and deposits
Commits
  • 0f48627 Merge pull request #244 from attestantio/refactor_spec_reading
  • 1f7eb06 Merge pull request #243 from attestantio/fetch-pending-execution-requests
  • 5b91d6a Add handling of complex http.Spec types
  • 00d0da1 Support fetching pending consolidations and deposits.
  • da4c3f3 Merge pull request #233 from attestantio/update_changelog
  • b6169d9 Update changelog.
  • See full diff in compare view

Updates github.com/ethereum/go-ethereum from 1.15.11 to 1.16.0

Release notes

Sourced from github.com/ethereum/go-ethereum's releases.

Terran Rivets (v1.16.0)

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:

  • Geth can be configured to store historical states on a dedicated disk, and it doesn't have to be an SSD (it will be ~3x faster to access when stored on SSD though).
  • For the full state history of mainnet, the state database will have a size of ~1.9TB (this is without the tx-by-hash index and log index).
  • The amount of historical state kept by the node is configurable as well. By default, Geth will keep historical state for the last 90k blocks, and older state is pruned from disk automatically as the chain advances. You can set the number of states to keep with the --history.state flag.

Notably, there is also one drawback with the new archive node: eth_getProof is 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 geth@ethereum.org 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_syncing while 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:

  • The 'snapshot' contains the flat keys and values of the state, in a layer-based struture.
  • The trie database contains state trie nodes, necessary for the state root computation.

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

  • The default block gas limit is now 45M. (#32087)
  • Geth can now use era1 files to access history when running with pruned history. (#31604)
  • There is a new geth download-era subcommand for fetching era1 files. (#31823, #31951, #32081)
  • When Geth is interrupted while it is syncing, pending block imports will now be canceled, leading to a quicker shutdown. (#32062)
  • Ready for fork activation messages are now printed based on the current clock time. (#31800)
  • Geth no longer allows setting a different network ID when running a network preset. (#31630)

... (truncated)

Commits
  • 57f8971 version: release go-ethereum v1.16.0 stable
  • 0c90e4b all: incorporate state history indexing status into eth_syncing response (#32...
  • 36bcc24 triedb/pathdb: fix journal resolution in pathdb (#32097)
  • a92f2b8 core, eth, triedb: serve historical states over RPC (#31161)
  • ce63bba eth, triedb/pathdb: permit write buffer allowance in PBSS archive mode (#32091)
  • 429e821 cmd/utils: fix formatting for beacon flag errors to fit Fatalf form (#32090)
  • cafa5e6 core, consensus/beacon: defer trie resolution (#31725)
  • 6dd38d2 cmd/geth, triedb: add pathdb state verification (#32086)
  • 9c5c0e3 core/rawdb, triedb/pathdb: implement history indexer (#31156)
  • ebff350 miner: default gaslimit 45M (#32087)
  • Additional commits viewable in compare view

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore <dependency name> major version will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
  • @dependabot ignore <dependency name> minor version will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
  • @dependabot ignore <dependency name> will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
  • @dependabot unignore <dependency name> will remove all of the ignore conditions of the specified dependency
  • @dependabot unignore <dependency name> <ignore condition> will remove the ignore condition of the specified dependency and ignore conditions

@dependabot dependabot bot added dependencies Pull requests that update a dependency file go Pull requests that update go code labels Jun 30, 2025
Bumps the dependencies group with 2 updates in the / directory: [github.com/attestantio/go-eth2-client](https://github.com/attestantio/go-eth2-client) and [github.com/ethereum/go-ethereum](https://github.com/ethereum/go-ethereum).


Updates `github.com/attestantio/go-eth2-client` from 0.25.2 to 0.26.0
- [Changelog](https://github.com/attestantio/go-eth2-client/blob/master/CHANGELOG.md)
- [Commits](attestantio/go-eth2-client@v0.25.2...v0.26.0)

Updates `github.com/ethereum/go-ethereum` from 1.15.11 to 1.16.0
- [Release notes](https://github.com/ethereum/go-ethereum/releases)
- [Commits](ethereum/go-ethereum@v1.15.11...v1.16.0)

---
updated-dependencies:
- dependency-name: github.com/attestantio/go-eth2-client
  dependency-version: 0.26.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: github.com/ethereum/go-ethereum
  dependency-version: 1.16.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot force-pushed the dependabot/go_modules/dependencies-a221e30ed9 branch from e8b937f to 4a093e2 Compare July 14, 2025 00:18
@dependabot @github
Copy link
Contributor Author

dependabot bot commented on behalf of github Jul 21, 2025

Looks like these dependencies are updatable in another way, so this is no longer needed.

@dependabot dependabot bot closed this Jul 21, 2025
@dependabot dependabot bot deleted the dependabot/go_modules/dependencies-a221e30ed9 branch July 21, 2025 00:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file go Pull requests that update go code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants