Skip to content

v1.14.0

Choose a tag to compare

@github-actions github-actions released this 19 May 09:26
· 102 commits to main since this release
4d0de63

@ensnode/ensdb-sdk@1.14.0

Minor Changes

  • #2101 7dd0d3f Thanks @shrugs! - Materialize Domain.canonicalName, canonicalLabelHashPath, and canonicalNode on every Canonical Domain. Indexes: hash on canonicalName (exact lookup), GIN trigram on canonicalName (substring), GIN on canonicalLabelHashPath (heal cascade), hash on canonicalNode (resolver-record joins).

  • #2125 f6ef397 Thanks @shrugs! - Materialize Domain.canonicalPath and canonicalDepth on every Canonical Domain, alongside the existing canonicalName / canonicalLabelHashPath / canonicalNode. canonicalPath is the head-first array of ancestor DomainIds (parallel to canonicalLabelHashPath); canonicalDepth is the label count. Adds a byCanonicalDepth btree index for ORDER BY canonical_depth (typeahead, depth-ordered browse).

Patch Changes

  • #2096 75e8aac Thanks @shrugs! - Replace the default btree index on label.interpreted with a hash index (for exact-match lookups) and a GIN trigram index (for substring / prefix LIKE queries). Avoids the btree 8191-byte leaf-size hazard that surfaces when a single label exceeds the limit (e.g. spam names), which previously crashed create_indexes at the historical→realtime boundary.

  • Updated dependencies [3132a77, 1b6abb0, 65cf37c]:

    • @ensnode/ensnode-sdk@1.14.0
    • enssdk@1.14.0

@ensnode/ensnode-sdk@1.14.0

Minor Changes

  • #2090 3132a77 Thanks @tk-o! - Added indexing status based functions for checking Omnigraph API and Subgraph API availability.

  • #2102 1b6abb0 Thanks @tk-o! - Added globalBlockrangeEndBlock param to buildIndexedBlockranges.

  • #2128 65cf37c Thanks @tk-o! - Renamed the ensv2 plugin to unigraph. It better conveys the idea of a single unified data model used for indexing both ENSv1 and ENSv2.

Patch Changes

  • Updated dependencies []:
    • enssdk@1.14.0
    • @ensnode/datasources@1.14.0

@ensnode/datasources@1.14.0

Patch Changes

  • Updated dependencies []:
    • enssdk@1.14.0

@namehash/ens-referrals@1.14.0

Patch Changes

enskit@1.14.0

Patch Changes

  • Updated dependencies []:
    • enssdk@1.14.0

@ensnode/ensrainbow-sdk@1.14.0

Patch Changes

  • Updated dependencies []:
    • enssdk@1.14.0

@namehash/namehash-ui@1.14.0

Patch Changes

  • #2113 010cd0c Thanks @notrab! - Eliminate the @ensnode/ensnode-react package; All developers building on ENSNode from a React-level should use the enskit package which specializes for this.

  • Updated dependencies [3132a77, 1b6abb0, 65cf37c]:

    • @ensnode/ensnode-sdk@1.14.0
    • enssdk@1.14.0
    • @ensnode/datasources@1.14.0

enssdk@1.14.0

ensskills@1.14.0

@ensnode/ponder-sdk@1.14.0

@ensnode/ponder-subgraph@1.14.0

ensadmin@1.14.0

Minor Changes

  • #2090 3132a77 Thanks @tk-o! - Added indexing status based guard for Omnigraph API and Subgraph API views.

Patch Changes

  • #2118 bb7ad4a Thanks @tk-o! - Refined information presented on the "Connection" view.

  • #2113 010cd0c Thanks @notrab! - Eliminate the @ensnode/ensnode-react package; All developers building on ENSNode from a React-level should use the enskit package which specializes for this.

  • Updated dependencies [3132a77, 1b6abb0, 65cf37c, 010cd0c]:

    • @ensnode/ensnode-sdk@1.14.0
    • @namehash/namehash-ui@1.14.0
    • enssdk@1.14.0
    • @ensnode/datasources@1.14.0
    • @ensnode/scalar-react@0.0.0

ensapi@1.14.0

Minor Changes

  • #2101 7dd0d3f Thanks @shrugs! - Omnigraph (breaking): Domain.resolver is now a non-null DomainResolver wrapper exposing Domain.resolver.assigned: Resolver (replacing the previous flat Domain.resolver: Resolver). The wrapper leaves room for future fields (e.g. effective) describing the Domain's resolution graph. Semantics of assigned are unchanged — it remains the Domain's assigned Resolver, not its effective Resolver.

    Omnigraph (breaking): DomainCanonical.name is now a non-null CanonicalName wrapper exposing DomainCanonical.name.interpreted: InterpretedName (replacing the previous flat DomainCanonical.name: InterpretedName). The wrapper leaves room for additional representations (e.g. a future beautified field).

  • #2125 f6ef397 Thanks @shrugs! - Omnigraph (breaking): where: { name } on Query.domains, Account.domains, Registry.domains, and Domain.subdomains now takes a DomainsNameFilter @oneOf input with three modes: starts_with (prefix autocomplete, the previous behavior), eq (exact InterpretedName match — sugar for in: [eq]), and in (exact match against a set of up to 100 InterpretedNames). The old shape where: { name: "examp" } becomes where: { name: { starts_with: "examp" } }; for exact lookups use where: { name: { eq: "vitalik.eth" } } or where: { name: { in: ["alice.eth", "bob.eth"] } }. Combine with version to disambiguate across ENS protocol versions (e.g. { name: { eq: "eth" }, version: ENSv1 } returns a single Domain).

  • #2125 f6ef397 Thanks @shrugs! - Omnigraph: add DEPTH to the DomainsOrderBy enum, ordering by the materialized Domain.canonicalDepth (number of labels in the Canonical Name). Applies to Query.domains, Account.domains, Registry.domains, and Domain.subdomains via order: { by: DEPTH }. Also wired in as the default ordering for where: { name: { starts_with } } (typeahead).

  • #2101 7dd0d3f Thanks @shrugs! - Omnigraph (breaking): restructure Domain.canonical into a nullable DomainCanonical object. Removes top-level Domain.canonical: Boolean!, Domain.name: InterpretedName, and Domain.path: [DomainInterface]; adds Domain.canonical: DomainCanonical (null when the Domain is not Canonical) with subfields { name: InterpretedName!, path: [Domain!]!, node: Node! }.

    Omnigraph (semantic change): Domain.parent now follows a single unidirectional pointer (Registry.canonicalDomainId) and does NOT enforce bidirectional canonical-edge agreement. Previously, parent was effectively null for non-canonical Domains and always pointed at a canonical Domain when non-null. With this change, a non-canonical Domain may have a non-null parent, and a canonical Domain's parent may itself be non-canonical. Consumers that relied on parent ⇒ canonical should additionally check domain.canonical.

  • #2126 26dc2da Thanks @shrugs! - Omnigraph (breaking): filter args on *.events and *.permissions connections now use operator-based inputs. EventsWhereInput/AccountEventsWhereInput: selector_in: [Hex]selector: { eq | in }, timestamp_gte/timestamp_ltetimestamp: { gt?, gte?, lt?, lte? }, from/sender{ eq | in }. DomainPermissionsWhereInput.user{ eq | in }. Account.permissions(in: AccountIdInput)Account.permissions(where: { contract: AccountIdInput }). Set-membership in is capped at 10 items; timestamp ranges require ≥1 bound and reject gt+gte / lt+lte combinations and inverted bounds.

  • #2102 1b6abb0 Thanks @tk-o! - Continue to support protocol acceleration for data indexed from ENSv1 namespaces. Protocol acceleration for data indexed from ENSv2 namespaces will be supported in the near future.

  • #2090 3132a77 Thanks @tk-o! - Added indexing status based guard for Omnigraph API and Subgraph API routes.

Patch Changes

  • #2104 89c022b Thanks @shrugs! - Resolution API: Protocol Accelerated records now correctly resolve instead of incorrectly always returning null.

  • #2097 1bc96f8 Thanks @shrugs! - Forward Resolution is no longer disabled on ENSv1-only namespaces when the unigraph plugin is enabled. Forward Resolution is only (temporarily) disabled when a namespace has been upgraded to ENSv2. The Resolution API continues to operate in either case, just without Protocol Acceleration (temporarily) when ENSv2 is deployed.

  • #2101 7dd0d3f Thanks @shrugs! - Omnigraph: The Domain interface now exposes Domain.registry and Domain.subregistry rather than being isolated to the concrete ENSv2 Domain entity, as in the unified model both ENSv1 and ENSv2 Domains have a parent and child Registry.

  • Updated dependencies [3132a77, 1b6abb0, 7dd0d3f, f6ef397, 65cf37c, 75e8aac]:

    • @ensnode/ensnode-sdk@1.14.0
    • @ensnode/ensdb-sdk@1.14.0
    • @namehash/ens-referrals@1.14.0
    • enssdk@1.14.0
    • @ensnode/datasources@1.14.0
    • @ensnode/ponder-subgraph@1.14.0

ensindexer@1.14.0

Minor Changes

  • #2101 7dd0d3f Thanks @shrugs! - Materialize Domain.canonicalName, canonicalLabelHashPath, and canonicalNode on every Canonical Domain. Indexes: hash on canonicalName (exact lookup), GIN trigram on canonicalName (substring), GIN on canonicalLabelHashPath (heal cascade), hash on canonicalNode (resolver-record joins).

  • #2125 f6ef397 Thanks @shrugs! - Materialize Domain.canonicalPath and canonicalDepth on every Canonical Domain, alongside the existing canonicalName / canonicalLabelHashPath / canonicalNode. canonicalPath is the head-first array of ancestor DomainIds (parallel to canonicalLabelHashPath); canonicalDepth is the label count. Adds a byCanonicalDepth btree index for ORDER BY canonical_depth (typeahead, depth-ordered browse).

  • #2128 65cf37c Thanks @tk-o! - Renamed the ensv2 plugin to unigraph. It better conveys the idea of a single unified data model used for indexing both ENSv1 and ENSv2.

Patch Changes

  • #2108 f61d04b Thanks @shrugs! - ENSIndexer: fix crash on startup after crash recovery when one or more chains were in Queued status pre-crash. The omnichain status snapshot builder now promotes such chains to Backfill once other chains' progress has advanced past their startBlock timestamp, instead of failing the omnichainIndexingCursor < earliestQueuedStartBlock invariant.

  • Updated dependencies [3132a77, 1b6abb0, 7dd0d3f, f6ef397, 65cf37c, 75e8aac]:

    • @ensnode/ensnode-sdk@1.14.0
    • @ensnode/ensdb-sdk@1.14.0
    • @ensnode/ensrainbow-sdk@1.14.0
    • enssdk@1.14.0
    • @ensnode/datasources@1.14.0
    • @ensnode/ponder-sdk@1.14.0

@docs/ensnode@1.14.0

Minor Changes

Patch Changes

  • #2106 c4b00ae Thanks @shrugs! - Updates the Omnigraph Integration Documentation with comprehensive getting started examples and walkthroughs.

  • Updated dependencies [3132a77, 1b6abb0, 65cf37c, 010cd0c]:

    • @ensnode/ensnode-sdk@1.14.0
    • @namehash/namehash-ui@1.14.0
    • enssdk@1.14.0

ensrainbow@1.14.0

Patch Changes

  • Updated dependencies [3132a77, 1b6abb0, 65cf37c]:
    • @ensnode/ensnode-sdk@1.14.0
    • @ensnode/ensrainbow-sdk@1.14.0
    • enssdk@1.14.0

fallback-ensapi@1.14.0

Patch Changes

  • Updated dependencies [3132a77, 1b6abb0, 65cf37c]:
    • @ensnode/ensnode-sdk@1.14.0
    • @ensnode/datasources@1.14.0

@docs/ensrainbow@1.14.0

Patch Changes

  • Updated dependencies [010cd0c]:
    • @namehash/namehash-ui@1.14.0

@ensnode/integration-test-env@1.14.0

Patch Changes

enscli@1.14.0

@ensnode/ensindexer-perf-testing@1.14.0

📦 NPM packages

🐳 Docker images