Skip to content

v5.0.0-beta.6

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 21 Oct 02:46
· 15 commits to beta since this release
8eb34cf

5.0.0-beta.6 (2026-10-21)

⚠ BREAKING CHANGES

  • consumers must install fastify ^5.12.7 themselves.
  • import OpenSearchBackend from 'arocapi/opensearch' and
    PostgresBackend from 'arocapi/postgres' instead of 'arocapi'. Consumers
    of OpenSearchBackend must install @opensearch-project/opensearch.
  • searchVisibilityFilter OpenSearch query → the shared
    search visibility filter language (SearchVisibilityWhere).
  • the opensearch, queryBuilderClass and
    queryBuilderOptions options are removed; pass
    search: OpenSearchBackend({ client, fields }) instead, declaring your
    search fields and creating the index with createIndex(). The
    OpensearchQueryBuilder export and its QueryBuilderOptions,
    FilterCapability, FacetCapability and SearchCapability types are
    removed; use field declarations, BackendSearchCapability and
    capabilitiesFromFields, or write your own SearchBackend.
  • POST /search only accepts the filter keys and sorts
    the backend declares; the fixed id, name, createdAt and
    updatedAt sorts are replaced by declared sort fields. Facets are
    keyed by field name and present for every declared facet, and
    searchExtra is whatever the backend returns.
  • GET /capabilities reports apiVersion 0.5.0, adding
    search.sorts, search.searchTypes and search.geo.
  • arocapi requires PostgreSQL 18 or later; MySQL and
    MariaDB are no longer supported. Consumers must switch their Prisma
    datasource to postgresql and use @prisma/adapter-pg. MySQL users stay on
    4.x.
  • @prisma/client 6 is no longer supported; upgrade to 7.10 or later.
  • comma-separated entityType values on GET /entities are
    no longer split. Repeat the parameter for each type instead:
    ?entityType=A&entityType=B.

Features

  • add field declarations and OpenSearchBackend indexing (06ec6d0)
  • add the EntitySearch model and PostgresBackend indexing (4b3a80a)
  • advanced queries on PostgresBackend (b3bc5bb)
  • export checkSearchVisibility and VisibilityCondition for custom backends (f878471)
  • export search backends from arocapi/opensearch and arocapi/postgres (5a86ece)
  • make fastify a peer dependency (0973892)
  • parse advanced queries into a tree for the search backend (65ef05a), closes #102
  • range filters, year date facets, geo and highlights (d2a21b1)
  • ranges, date facets and geo on PostgresBackend (3c4f235), closes #107
  • refresh option on OpenSearchBackend, default false (32fdfea)
  • run on Postgres 18 only (72b1947)
  • search through a SearchBackend (0eccedf)
  • search visibility filter language (07fef2d)
  • search with PostgresBackend (70f87d4)

Bug Fixes

  • accept repeated entityType parameters on GET /entities (596f272), closes #42
  • declare the supported Node.js version (6ca7cb1)
  • harden search visibility checking and cap geohash grids (d050c9e)
  • reject a prisma option that isn't a Prisma 7 client with the arocapi models (f767660)
  • require Prisma 7 as the @prisma/client peer (089d4bc)
  • search edge cases across the route and both backends (2e924ef)
  • ship only the library in the package (651cd84)
  • ship the generated Prisma declarations and type the prisma option structurally (2f29088), closes #92