Skip to content

Latest commit

 

History

History
61 lines (45 loc) · 5.04 KB

File metadata and controls

61 lines (45 loc) · 5.04 KB

Prisma Next — Feature-Support Matrix (Prisma 8 RC1)

This is the Prisma Next feature-support matrix feeding PR #986 (the Prisma 8 RC1 release). Each row is one feature; the three data columns state whether that feature is available in Prisma Next for Postgres, SQLite, and MongoDB — not whether Prisma 7 had it. The matrix lists all features Prisma Next exposes (mined from prisma-8-api.md), plus every notable Prisma 7 feature Prisma Next lacks, so that absences are named rather than silently missing. The Prisma Next evidence column points only to Prisma Next (TypeScript) test suites; Rust/engine tests and Prisma 7 tests are never cited here. When a cell is 🟡 the evidence is intentionally empty — that emptiness is what makes it untested rather than proven.

The matrix is split by category across the scorecard/ directory — this page is the index. Each category file is self-contained (it repeats the legend below) and holds that category's table(s) verbatim. Follow the links in the Categories section to reach a specific category.

Legend:

  • Works — proven by a Prisma Next integration test (one that executes the feature against a database — Postgres via PGlite, SQLite via its real driver, or MongoDB via mongodb-memory-server — and asserts the observable runtime result). Unit-tier tests (SQL/AST/plan/type/snapshot assertions, or any test that never hits a database) do not qualify. Per-database rigor applies: a Postgres integration test cannot justify a SQLite or MongoDB , and vice versa.
  • 🟡 Untested — reachable through the Prisma Next public surface, but no proving Prisma Next integration test exists yet (evidence left blank). This includes features whose only backing is a unit-tier test.
  • 🧪 Experimental — shipped in Prisma Next but outside the stability promise (polymorphism / multi-table inheritance).
  • Not in 8.0 — deliberately absent from Prisma Next.
  • n/a — feature does not apply to that database.

Each row names exactly one capability. Where an operator/command/stage set was previously bundled, it has been split so every distinct feature carries its own per-database verdict and its own evidence.


Categories

Category Feature rows
Targets & connection 14
Types & values 15
PSL schema language 44
Contract emission & authoring 14
SQL query builder 46
SQL ORM client 52
MongoDB query & ORM 81
Relations 20
Filtering 24
Ordering & pagination 11
Aggregation & grouping 20
Nested writes & atomic ops 25
Raw & typed SQL 9
Transactions 9
Migrations 123
Introspection (contract infer) 26
CLI commands 32
Extensions 15
Observability & lifecycle 13

The Migrations file gathers all twelve Migrations — * sub-topics (workflow; columns & types; IDs, PKs & autoincrement; foreign keys; indexes & unique; enums; defaults; native types; extensions; views; existing-data safety; schema filters) as sub-headings within a single file.


Coverage summary

Group structure (30 groups): Targets & connection; Types & values; PSL schema language; Contract emission & authoring; SQL query builder; SQL ORM client; MongoDB query & ORM; Relations; Filtering; Ordering & pagination; Aggregation & grouping; Nested writes & atomic ops; Raw & typed SQL; Transactions; Migrations — workflow; Migrations — columns & types; Migrations — IDs, PKs & autoincrement; Migrations — foreign keys; Migrations — indexes & unique; Migrations — enums; Migrations — defaults; Migrations — native types; Migrations — extensions; Migrations — views; Migrations — existing-data safety; Migrations — schema filters; Introspection (contract infer); CLI commands; Extensions; Observability & lifecycle.

Verdicts are computed per feature row across the three DB columns; the tallies below count individual non- cells.

Across 593 atomic feature rows (one capability each), spanning 1,779 per-database cells (593 rows × 3 databases): 416, 🟡 488, 🧪 12, 244 (and 619 n/a cells).

Per-database tallies:

Database 🟡 🧪
Postgres 222 136 4 111 120
SQLite 85 235 4 98 171
MongoDB 109 117 4 35 328