TL;DR: This edition of Indexer Office Hours features the new subgraph release process, The Graph Horizon update, and an integration update from Starknet, an Ethereum validity rollup.
Opening remarks
Hello everyone, and welcome to the latest edition of Indexer Office Hours! Today is February 20, and we’re here for Episode 145.
Check out the latest GRTiQ podcast with Pablo Carranza Velez, Principal Software Engineer at Edge & Node.
Repo watch
The latest updates to important repositories
Execution Layer Clients
- Erigon v2.0 New release v2.58.0 :
- Caplin: Fixed EL <-> CL communication for Deneb
- Added Holesky network to Caplin
- You must upgrade to this release or later before Dencun on Gnosis Chain (March 11) and Ethereum mainnet (March 13).
- sfgeth v2.0:
- geth v1.13.12 fh2.4
- Nethermind: New release v1.25.4 :
- The PPA package has been revised, including the version and installers. Since the version has been fixed to be 1.25.4 instead of 1.2540, installing the latest version requires the manual removal of the previous one as follows:
⚠️ If your data directory is in the default location of /usr/share/nethermind, back it up before the package removal. sudo apt-get purge -y nethermind sudo apt-get update
- This release is a mandatory upgrade for all nodes operating on the Ethereum mainnet and Gnosis chains. Please update your node to this version to ensure correct node functionality.
- The PPA package has been revised, including the version and installers. Since the version has been fixed to be 1.25.4 instead of 1.2540, installing the latest version requires the manual removal of the previous one as follows:
- Arbitrum-nitro New release v2.2.5
- This release fixes retryable gas estimation, and makes several improvements preparing for ArbOS 20 and EIP-4844.
- Heimdall: New release v1.0.4-beta :
- Bumps the bor version to v1.2.6-beta, which contains the fix for unmarshalling of Ethereum blocks containing blob transactions when bridge fetches them.
- Bumps peppermint and cosmos-sdk to the latest Polygon fork releases.
- Some minor fixes and dependency version bumps.
Consensus Layer Clients
Information on the different clients
- Prysm: New release v5.0.0-rc.0 :
- Mainnet Deneb fork config
- Teku: New release 24.2.0 :
- This is a required update for mainnet users containing the configuration for the Deneb upgrade on March 13. This update is required for the Gnosis Deneb network upgrade on March 11. For all other networks, this update is optional.
- Attention: Teku will require around 50 GB of extra storage for blobs for mainnet (35 GB for Gnosis), but theoretically blob storage requirements can go up to ~100 GB (200 GB for Gnosis). This extra storage space WILL NOT grow above this limit over time.
- For more information about blobs, please have a look at the Teku docs Proto-danksharding page.
- Nimbus: New release v24.2.1 :
- Nimbus v24.2.1 is a medium-urgency release that includes full support for the upcoming Ethereum mainnet Deneb hard fork that will be executed on March 13. The same support is also provided for Gnosis chain where the hard fork will be executed on March 11. Other stability and performance improvements make this release a compelling upgrade for all Nimbus users.
Graph Orchestration Tooling
Join us every other Wednesday at 5 pm UTC for Launchpad Office Hours and get the latest updates on running Launchpad.
The next one is on February 28. Bring all your questions!
Blockchains Operator Upgrade Calendar
The Blockchains Operator Upgrade Calendar is your one-stop solution for tracking hard fork updates and scheduled maintenance for various protocols within The Graph ecosystem.
Simplify your upgrade process and never miss a deadline again.
Protocol watch
The latest updates on important changes to the protocol
Forum Governance
Contracts Repository
- chore: update implementation addresses with recent security fixes #945 (merged)
- [WIP/Experimental] BREAKING CHANGE: Horizon draft changes #944 (draft)
- fix: remove setDeniedMany since it’s unused (OZ N-03) #940 (merged)
- fix: clear vote for earlier rounds (OZ L-02) #939 (merged)
- fix: gas optimization (OZ N-02) #938 (merged)
- fix: change OracleVote event order (OZ N-01) #937 (merged)
- docs: added missing docstrings for events (OZ L-03) #936 (merged)
- fix: added input validation for executionThreshold (OZ L-01) #935 (merged)
- chore(deps): bump undici from 5.28.1 to 5.28.3 #943 (closed)
Project watch
Indexer components
Graph Node
- Declarative state & aggregations in Graph Node #3555
- Support for calling Ether Balances in mappings #895
Open discussion
Subgraph release process
- As part of Protocol Watch, Juan from GraphOps shared an update on the new release process for subgraphs. For all the details, visit the forum post.
- Subgraphs are now FDS compliant, which means they don’t require IPFS cut, so they don’t require any weird feature enabled for their indexers.
- You will be able to index any of those subgraphs yourself if you want to use the data, and you will have the canonical latest deployment available on the network itself, so you won’t have to go to any Notion document or rely on any other GitHub repo or anything for the latest deployment.
Update on Graph Horizon
- Pablo said he had a quick update on the Horizon proposal, and that the team has been chatting with the Council about the implementation and trying to figure out if the Council would support a brownfield or greenfield approach.
- Pablo also referred to a previous discussion about permissionless gateways and suggested having standards (and possibly a standards body) would prevent centralization of gateways. The Council is now aware of these concerns and the discussion about how introducing additional bureaucracy could make The Graph less competitive.
Starknet x The Graph
- Jonathan from Starknet joined to talk about the ecosystem, progress on its integration with The Graph, and how to index.
- Starknet is an Ethereum validity rollup that uses the Cairo language
- View the presentation slides (links to production-ready nodes, quickstart tutorial, docs)
- Starknet Graph on GitHub
- He shared what works and what doesn’t (yet) on their roadmap.
What works
- Already used in production by zkLend
- These work:
- Instrumented nodes with basic Firehose streaming
- Subgraph indexing
What doesn’t work
- These don’t work (yet):
- Firehose filter
- Data source templates
- “Pending” block indexing
- ABI codegen on complex contracts
Questions:
Q1
Derek asked: It looks like the the current integration is mostly for building subgraphs and using Firehose as kind of the ingestor method into Graph Node? Are people also building Substreams or are they strictly using subgraphs?
Answer:
Jonathan replied: I personally don’t have a lot of experience with Substreams, but I know they are really powerful, so I guess the next step, the very next step of the integration, is actually to support Substreams because right now it does not.
Matthew commented in the chat: Substreams should work since graph-node supports any Substreams source (referring to Substreams triggers in subgraph mappings, a new feature in Graph Node release 0.34.0).
Q2
Derek asked: Are there a lot of people building subgraphs over there? What are we seeing? Where are things in the chain integration process? Is there any assistance needed?
Answer:
Jonathan replied: I do know a bunch of people are building subgraphs on Starknet, but I already showed in the roadmap section that there is a lot of stuff that doesn’t work yet, so I guess the adoption should grow once we start to be feature complete.
Interesting conversation 👏 👏