github Layr-Labs/eigenda v2.1.0
[Mainnet] EigenDA v2.1.0

latest releases: v2.2.1, v2.2.0, v2.2.0-rc.1...
one month ago

This release is optional but highly recommended for operators because it resolves a goroutine leak. It is optional for rollups and other proxy users.

This release follows the Blazar release (0.9.2), colloquially referred to as "v2", for all monorepo services, and proxy release 1.8.2. The eigenda-proxy repo is now archived and its codebase has moved under api/proxy. Monorepo releases will include proxy code moving forward.

We opted to bump the semver to 2.1.0 to match the v2 name and remove some confusion we have observed both internally and externally.

In order to keep our releases simpler for now, we opt to release all services of the monorepo together, following a single semver. We cannot for this reason commit to strictly following semver practices, and reserve the right to push breaking changes to auxiliary services such as the dataapi.

Monorepo-wide changes

One important change is that we deployed an EigenDADirectory contract to all chains, which should be used as the main contract address locator. See our docs network pages for more information.

Validator Node

Fixes a goroutine leak that leads to CPU starvation over long time periods.

This release also adds a new flag NODE_EIGENDA_DIRECTORY which takes advantaged of the newly deployed contract directory. In a future release we will be deprecating the NODE_BLS_OPERATOR_STATE_RETRIVER and NODE_EIGENDA_SERVICE_MANAGER in favor of NODE_EIGENDA_DIRECTORY.

Disperser

Mainly adding more observability, an audit fix regarding payments, and fixes a performance issue with validator connections.

Dataapi

Adds a payment subgraph that will be used for tracking reservation information in a followup release. Rest of changes are minor fixes / additions.

  • feat: dataapi add stake amount to operator stake response by @pschork in #1677
  • feat: Payments subgraph #1709 by @dmanc #1709
  • fix(dataapi): fix time query_param serialization/formatting bugs by @samlaf in #1672
  • fix: update dataapi v2 nodeInfo to call v2 validator API by @pschork in #1708

Contracts

The EigenDADirectory contract was added and deployed to all networks, and should going forward be used as the single source of truth for all EigenDA contract addresses.

Integrations (contracts, clients, proxy)

This release introduces the CertVerifierV3 as well as the CertVerifierRouter which allows for secure upgrades to verification logic. See our custom security docs for more information. Take a look at our updated secure integration spec page for our latest thinking.

For batchers who are dispersing blobs, do make sure to update your EIGENDA_PROXY_EIGENDA_V2_CERT_VERIFIER_ROUTER_OR_IMMUTABLE_VERIFIER_ADDR to point to a CertVerifierV3 contract, or a CertVerifierRouter. Release 1.8.2 was only compatible with CertVerifierV2, and unfortunately 2.1.0 proxy is only compatible with CertVerifierV3 and up.

We added a .env.exampleV2.mainnet example env file for mainnet.
The --eigenda.v2.network flag now also supports mainnet. Note that this is purely a convenience and doesn't do anything special other than populating other flag values (disperser-url, cert-verifier-address, etc.) with the default values (that can be found in our docs or the new EigenDADirectory contract).

We reverted the NTP clock in the client, as we felt its implementation was not ideal, and we also believe clock control should be left to the controlling environment. Please make sure that the computer you are running proxy and/or clients on has a synchronized clock.

Full Changelog: v0.9.2...9b2520b

Don't miss a new eigenda release

NewReleases is sending notifications on new releases.