Skip to content

Update dependency @prisma/client from 6.19.2 to 7.10.0 - #535

Open
renovate[bot] wants to merge 1 commit into
masterfrom
renovate/major-prisma-monorepo
Open

Update dependency @prisma/client from 6.19.2 to 7.10.0#535
renovate[bot] wants to merge 1 commit into
masterfrom
renovate/major-prisma-monorepo

Conversation

@renovate

@renovate renovate Bot commented Mar 2, 2026

Copy link
Copy Markdown
Contributor

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Confidence
@prisma/client (source) 6.19.27.10.0 age confidence

Release Notes

prisma/prisma (@​prisma/client)

v7.10.0

Compare Source

Prisma ORM 7.10.0

Prisma ORM 7.10.0 introduces a compatibility package for running Prisma 7 alongside newer Prisma versions, secures Prisma Studio's local server, and includes fixes across Prisma Client and the PostgreSQL, MariaDB, Neon, SQLite, and Prisma Postgres Serverless adapters.

Highlights

Run Prisma 7 alongside Prisma 8

This release introduces @prisma/prisma7, a compatibility package that lets you retain a matching Prisma 7 CLI and configuration while installing Prisma 8 in the same project.

Once 7.10.0 is released, a side-by-side installation can use:

npm install --save-dev prisma@8 @prisma/prisma7@7.10.0
npm install @prisma/client@7.10.0

Use prisma for the directly installed Prisma 8 CLI and prisma7 for Prisma 7:

npx prisma --version
npx prisma7 --version

npx prisma7 generate
npx prisma7 migrate dev
npx prisma7 db push

Prisma 7 now prefers version-specific configuration files, allowing its configuration to coexist with Prisma 8's prisma.config.* files:

// prisma7.config.ts
import { defineConfig } from '@prisma/prisma7/config'

export default defineConfig({
  schema: 'prisma/schema.prisma',
  migrations: {
    path: 'prisma/migrations',
  },
})

Without an explicit --config option, Prisma 7 searches for:

  1. Root-level prisma7.config.* files.
  2. .config/prisma7.* files.
  3. Existing prisma.config.* files as a backwards-compatible fallback.

The supported extensions are .js, .ts, .mjs, .cjs, .mts, and .cts. An explicit config path always takes precedence:

npx prisma7 generate --config ./custom/prisma7.config.ts

New projects initialized by the Prisma 7 CLI use prisma7.config.ts. Existing projects containing only prisma.config.* continue to work without migration or additional warnings. If a prisma7.config.* file exists but cannot be loaded, Prisma reports the error rather than silently falling back to another configuration.

The prisma7 identity is carried through CLI help, version output, shell completion, initialization, migration, database, and generation guidance. Stable Prisma concepts such as schema.prisma, Prisma Migrate, @prisma/client, and PRISMA_* environment variables remain unchanged.

Together, the separate executable and configuration namespace make it possible to operate Prisma 7 and Prisma 8 side by side without command or config-file collisions.

#​29949, #​29969, #​29994, #​30000, #​30002, #​30020

Prisma Studio security hardening

Prisma Studio's local HTTP server now:

  • Binds explicitly to 127.0.0.1 instead of all network interfaces.
  • Rejects browser requests from origins other than the active localhost or 127.0.0.1 Studio URL.
  • No longer returns wildcard CORS headers.
  • Applies the same protections across Node.js, Bun, and Deno.

This prevents network clients or malicious websites from accessing Studio's database endpoints while Studio is running.

#​29890

Prisma Client

  • Fixed P2002 errors from nested writes so meta.modelName identifies the model where the unique constraint violation occurred, including models using @@map and @@schema. #​29628
  • Fixed automatically batched findUniqueOrThrow() calls so every missing record rejects with P2025; later misses no longer resolve to undefined. #​29654
  • Parameter-chunked statements are now executed atomically in a transaction and rolled back if a later chunk fails. #​29771
  • Improved interactive transaction cleanup during $disconnect(), including transactions whose driver-level startup is still in progress. #​28768
  • Prevented transaction cleanup failures after a timeout or backend termination from becoming unhandled promise rejections. #​29611
  • Fixed fluent relation queries when relation fields are literally named select or include. #​29683
  • Fixed handling of Date and Uint8Array values created in other JavaScript realms, such as iframes, jsdom, and Node.js vm contexts. #​29177
  • Invalid Date values passed to $queryRaw or $executeRaw now throw PrismaClientValidationError instead of a generic error. #​29718
  • Fixed moduleFormat inference for the prisma-client generator in TypeScript projects using module: "node16" or "nodenext". Generated output now follows the nearest package.json type, defaulting to CommonJS when absent. #​29712
  • Deserialized Bytes values now own standalone ArrayBuffers rather than exposing unrelated contents from Node.js's shared Buffer pool. This applies to both regular and raw query results. #​29701
  • Fixed an incorrect logging context in the remote executor, including Accelerate-backed query execution. #​28892

Client extensions and observability

  • Result-extension compute callbacks now receive the current model name as a typed second argument:

    compute(data, modelName) {
      // ...
    }

    The model name is also preserved when multiple extensions compose the same computed field. #​29782

  • Improved OpenTelemetry context for remotely executed queries:

    • $on('query') callbacks run within the matching db_query span.
    • Events from one operation share the same trace.
    • Error events are recorded as span exceptions.
    • Log events continue to be emitted when tracing is disabled or their reported span is unavailable.

    #​28892

Driver adapters

MariaDB
  • @prisma/adapter-mariadb now accepts an existing mariadb pool. External pools remain caller-owned unless disposeExternalPool: true is supplied. #​27992
  • Fixed pooled connection leaks during commit, rollback, and failed transaction startup. Connections are now returned with release() and transaction-specific listeners are removed before reuse. #​29612
  • Added support for bracketed IPv6 addresses in both mysql:// and mariadb:// connection strings. #​29026
  • Prevented malformed connection strings from exposing embedded passwords in retained debug output and diagnostic reports. #​27992
PostgreSQL, Neon, and Prisma Postgres Serverless
  • PostgreSQL deadlocks using SQLSTATE 40P01 are now reported as P2034 transaction write conflicts. #​29717
  • PostgreSQL RESTRICT violations using SQLSTATE 23001 are now reported as P2003, preserving an available field or constraint name. #​29554
  • @prisma/adapter-pg now preserves database constraint names when reporting unique constraint violations through P2002. #​29587
  • Prisma Postgres Serverless now prefers the named constraint for P2002, falling back to parsed field names when no constraint name is available. #​29801
  • Fixed Neon HTTP adapter serialization for typed parameters such as Bytes and DateTime. #​29747
SQLite
  • @prisma/adapter-better-sqlite3 now converts previously unhandled SQLite result codes into typed database errors instead of exposing raw driver errors.
  • The complete SQLITE_BUSY family is now mapped to socket timeout errors, with numeric extended result codes preserved where available.

#​29794

CLI and Migrate

  • prisma generate can now offer to install Prisma's agent skills. The opt-in prompt:

    • Is shown at most once per machine.
    • Is skipped in CI, containers, Git hooks, npm lifecycle scripts, and watch mode.
    • Is skipped when --no-hints is used or Prisma skills are already installed.
    • Times out after 30 seconds.
    • Never causes generation to fail if installation is unsuccessful.

    #​29690

  • A globally installed CLI now warns during prisma generate when its version differs from the project's local prisma or @prisma/client, and recommends running the local CLI. The check is best-effort and does not fail generation. #​29593

  • prisma version and prisma version --json now include the resolved Prisma CLI package path, making global-versus-local installation issues easier to diagnose. #​29573

  • Empty or generator-only schema files now report Schema must contain a datasource block from db pull, db push, and migrate dev, rather than reaching the schema engine and potentially producing inconsistent errors. #​29657

  • CLI commands now tolerate corrupt, unreadable, or unwritable command-state files. Invalid state is reinitialized, writes are atomic, and persistence failures fall back to in-memory state. #​29609

  • Studio now recognizes semicolon-delimited sqlserver:// connection strings before reporting the existing explicit message that SQL Server is not supported by Studio. #​29623

  • The AI-agent safety checkpoint now also covers interactive prisma db push confirmations involving data-loss warnings, rather than only invocations using --accept-data-loss. #​29793

Performance and reliability

  • Optimized query-plan execution by eagerly evaluating plans with one unconditional database operation and synchronously interpreting the remaining pure plan. Cached plans remain immutable. #​29004
  • Prevented call-stack overflows when rendering very large parameter lists or combining chunked results containing hundreds of thousands of rows. #​29751
  • Reduced ordinary query setup overhead by constructing fluent-relation field maps lazily and in linear time. Non-fluent queries no longer build this map. #​29752

Dependencies

  • Updated the transitive fast-uri dependency to a patched release addressing production audit advisories affecting versions through 3.1.3. #​29758

v7.9.1

Compare Source

Today, we're issuing a patch release to resolve a security advisory in a transitive dependency of Prisma CLI (via @prisma/dev).

This fixes #​29780.

It does not actually affect @prisma/dev or Prisma CLI so no urgent action is required, but it is recommended to upgrade nevertheless to avoid false positives from security scanners.

v7.9.0

Compare Source

v7.8.0

Compare Source

Today, we are excited to share the 7.8.0 stable release 🎉

🌟 Star this repo for notifications about new releases, bug fixes & features — or follow us on X!

Highlights
ORM
Features

Prisma Client

  • Added a queryPlanCacheMaxSize option to the PrismaClient constructor for fine-grained control over the query plan cache. Pass 0 to disable the cache entirely, or omit it to use the default cache size. A larger value can improve performance in applications that execute many unique queries, while a smaller one can reduce memory usage. (#​29503)
Bug Fixes

Prisma Client

  • Fixed an equality filter panic and incorrect ::jsonb cast when filtering on PostgreSQL JSON list columns. Queries using where: { jsonListField: { equals: [...] } } no longer panic with a type mismatch or emit invalid SQL. (prisma/prisma-engines#5804)
  • Fixed case-insensitive JSON field filtering (mode: insensitive), allowing where: { jsonField: { equals: "...", mode: "insensitive" } } to work correctly. (prisma/prisma-engines#5806)
  • Fixed incorrect parameterization of enum values that have a custom database name set via @map. (#​29422)
  • Fixed a database parameter limit check (P2029), which could incorrectly reject or miss over-limit queries. (#​29422)
  • Fixed a regression that caused missing SQL Server VARCHAR casts for parameterized values. (prisma/prisma-engines#5801)

Schema Engine

  • Fixed a misleading error message in prisma migrate diff that referenced the --shadow-database-url CLI flag, which was removed in Prisma 7. (#​29455)
  • Fixed prisma migrate dev (and shadow database migration replay in general) failing with CREATE INDEX CONCURRENTLY cannot run inside a transaction block when a migration contained concurrent index creation statements on PostgreSQL. (prisma/prisma-engines#5799)
  • Fixed PostgreSQL introspection silently dropping sequence defaults when the database returns the schema-qualified form pg_catalog.nextval('sequence_name'::regclass) instead of the bare nextval(...). Columns backed by sequences now correctly appear as @default(autoincrement()) in the Prisma schema in all cases. (prisma/prisma-engines#5802)

Driver Adapters

  • @​prisma/adapter-d1: Savepoint operations (createSavepoint, rollbackToSavepoint, releaseSavepoint) now silently no-op with debug logging instead of executing SQL statements, consistent with how the D1 adapter already treats top-level transactions. (#​29499)
Open roles at Prisma

Interested in joining Prisma? We're growing and have several exciting opportunities across the company for developers who are passionate about building with Prisma. Explore our open positions on our Careers page and find the role that's right for you.

Enterprise support

Thousands of teams use Prisma and many of them already tap into our Enterprise & Agency Support Program for hands-on help with everything from schema integrations and performance tuning to security and compliance.

With this program you also get priority issue triage and bug fixes, expert scalability advice, and custom training so that your Prisma-powered apps stay rock-solid at any scale. Learn more or join: https://prisma.io/enterprise.

v7.7.0

Compare Source

Today, we are excited to share the 7.7.0 stable release 🎉

🌟 Star this repo for notifications about new releases, bug fixes & features — or follow us on X!

Highlights
ORM
prisma bootstrap command

A new prisma bootstrap command (#​29374, #​29424) sequences the full Prisma Postgres setup into a single interactive flow. It detects the current project state and runs only the steps that are needed:

  1. Init or scaffold — In an empty directory, offers a choice of 10 starter templates (Next.js, Express, Hono, Fastify, Nuxt, SvelteKit, Remix, React Router 7, Astro, NestJS) from prisma-examples. In an existing project without a schema, runs prisma init.
  2. Link — Authenticates via the browser and connects to a Prisma Postgres database. Skips if already linked.
  3. Install dependencies — Detects the package manager and offers to install missing @prisma/client, prisma, and dotenv.
  4. Migrate — Runs prisma migrate dev if the schema contains models.
  5. Generate — Runs prisma generate.
  6. Seed — Runs prisma db seed if a seed script is configured.

Each side-effecting step prompts for confirmation. Re-running the command skips already-completed steps.

Basic usage

npx prisma@latest bootstrap

With a starter template

npx prisma@latest bootstrap --template nextjs

Non-interactive (CI)

npx prisma@latest bootstrap --api-key "$PRISMA_API_KEY" --database "db_abc123"
Open roles at Prisma

Interested in joining Prisma? We're growing and have several exciting opportunities across the company for developers who are passionate about building with Prisma. Explore our open positions on our Careers page and find the role that's right for you.

Enterprise support

Thousands of teams use Prisma and many of them already tap into our Enterprise & Agency Support Program for hands-on help with everything from schema integrations and performance tuning to security and compliance.

With this program you also get priority issue triage and bug fixes, expert scalability advice, and custom training so that your Prisma-powered apps stay rock-solid at any scale. Learn more or join: https://prisma.io/enterprise.

v7.6.0

Compare Source

Today, we are excited to share the 7.6.0 stable release 🎉

🌟 Star this repo for notifications about new releases, bug fixes & features — or follow us on X!

Highlights

ORM

Features

CLI

  • Added a prisma postgres link command that connects a local project to a Prisma Postgres database. This is the first command in a new prisma postgres command group for managing Prisma Postgres databases directly from the CLI. (#​29352)

Driver Adapters

Bug Fixes

Prisma Client

  • Disabled caching of createMany queries to avoid cache bloat and potential Node.js crashes in bulk operations (#​29382)
  • Made NowGenerator lazy to avoid synchronous new Date() calls, fixing Next.js "dynamic usage" errors in cached components (#​28724)
  • Fixed missing export of Get<Model>GroupByPayload type in the new prisma-client generator, making it accessible for TypeScript usage (#​29346)

CLI

  • Added streaming parsing with automatic fallback to handle Prisma schemas that produce extremely large intermediate strings (>500MB) that hit V8's string limits (#​29377)

Driver Adapters

Prisma Studio

We’re continuing our work to improve Prisma Studio with more features being added.

Dark Mode

Need we say more? You’ve all asked for it, and it’s back.

dark-mode-studio.mp4

Copy as markdown

Now, you can copy one or more rows as either CSV or Markdown

CleanShot 2026-03-11 at 16 04 09@​2x

Multi-cell editing

This is big one, something that folks have been asking for. Now, it’s possible to edit multiple cells while inspecting your database. If you make any changes, you’ll be prompted to either save or discard them. This makes manually adding new rows much easier to accomplish.

Back relations

If your data references another table, Prisma Studio now links to the related records, making it easy to inspect them. This makes traversing your database much simpler.

CleanShot.2026-03-24.at.20.39.01.mp4

Generative SQL with AI

If you need to inspect your database, instead of manually writing the SQL you may need, you can use natural language and AI to generate the appropriate SQL statements.

CleanShot.2026-03-19.at.00.01.53.mp4

Open roles at Prisma

Interested in joining Prisma? We’re growing and have several exciting opportunities across the company for developers who are passionate about building with Prisma. Explore our open positions on our Careers page and find the role that’s right for you.

Enterprise support

Thousands of teams use Prisma and many of them already tap into our Enterprise & Agency Support Program for hands-on help with everything from schema integrations and performance tuning to security and compliance.

With this program you also get priority issue triage and bug fixes, expert scalability advice, and custom training so that your Prisma-powered apps stay rock-solid at any scale. Learn more or join: https://prisma.io/enterprise.

v7.5.0

Compare Source

Today, we are excited to share the 7.5.0 stable release 🎉

🌟 Star this repo for notifications about new releases, bug fixes & features — or follow us on X!

Highlights
ORM
Features
  • Added support for nested transaction rollbacks via savepoints (#​21678)

    Adds support for nested transaction rollback behavior for SQL databases: if an outer transaction fails, the inner nested transaction is rolled back as well. Implements this by tracking transaction ID + nesting depth so Prisma can reuse an existing open transaction in the underlying engine, and it also enables using $transaction from an interactive transaction client.

Bug fixes

Driver Adapters

  • Made the adapter-mariadb use the binary MySQL protocol to fix an issue with lossy number conversions (#​29285)
  • Made @types/pg a direct dependency of adapter-pg for better TypeScript experience out-of-the-box (#​29277)

Prisma Client

  • Resolved Prisma.DbNull serializing as empty object in some bundled environments like Next.js (#​29286)
  • Fixed DateTime fields returning Invalid Date with unixepoch-ms timestamps in some cases (#​29274)
  • Fixed a cursor-based pagination issue with @db.Date columns (#​29327)

Schema Engine

  • Manual partial indexes are now preserved when partialIndexes preview feature is disabled, preventing unnecessary drops and additions in migrations (#​5790, #​5795)
  • Enhanced partial index predicate comparison to handle quoted vs unquoted identifiers correctly, eliminating needless recreate cycles (#​5788)
  • Excluded partial unique indexes from DMMF uniqueFields and uniqueIndexes to prevent incorrect findUnique input type generation (#​5792)
Studio

With the launch of Prisma ORM v7, we also introduced a rebuilt version of Prisma Studio. With the feedback we’ve gathered since the release, we’ve added some high requested features to help make Studio a better experience.

Multi-cell Selection & Full Table Search

This release brings the ability to select multiple cells when viewing your database. In addition to being able to select multiple cells, you can also search across your database. You can search for a specific table or for specific cells within that table.

Adobe Express - CleanShot 2026-03-04 at 21 15 08-2

More intuitive filtering

Filtering is now easier to use, and includes an option for raw SQL filters.

CleanShot 2026-03-11 at 11 26 35

And if you are using Studio in Console, you can use ai generated filters:
CleanShot 2026-03-11 at 11 28 18

Cmd+k Command Palette

You can now use the keyboard to perform most actions in Studio with the new cmd+k command palette
CleanShot 2026-03-11 at 11 30 35

Run raw SQL queries

Another feature we’ve included in Prisma Studio is the ability to run raw SQL queries against your data. There’s a new “SQL” tab in the sidebar that will bring you to page where you can perform any queries against your data. Below, we’re getting all the rows in the “Todo” table.

Adobe Express - Screen Recording 2026-03-10 at 2 30 52 PM-2

Open roles at Prisma

Interested in joining Prisma? We’re growing and have several exciting opportunities across the company for developers who are passionate about building with Prisma. Explore our open positions on our [Careers page](https://www.prisma.io/careers#current) and find the role that’s right for you.

Enterprise support

Thousands of teams use Prisma and many of them already tap into our Enterprise & Agency Support Program for hands-on help with everything from schema integrations and performance tuning to security and compliance.

With this program you also get priority issue triage and bug fixes, expert scalability advice, and custom training so that your Prisma-powered apps stay rock-solid at any scale. Learn more or join: https://prisma.io/enterprise.

v7.4.2

Compare Source

Today, we are issuing a 7.4.2 patch release focused on bug fixes and quality improvements.

🛠 Fixes

Prisma Client

  • Fix a case-insensitive IN and NOT IN filter regression (#​29243)
  • Fix a query plan mutation issue that resulted in broken cursor queries (#​29262)
  • Fix an array parameter wrapping issue in push operations (prisma/prisma-engines#5784)
  • Fix Uint8Array serialization in nested JSON fields (#​29268)
  • Fix an issue with MySQL joins that relied on non-strict equality (#​29251)

Driver Adapters

Schema Engine

🙏 Huge thanks to our community

Many of the fixes in this release were contributed by our amazing community members. We're grateful for your continued support and contributions that help make Prisma better for everyone!

v7.4.1

Compare Source

Today, we are issuing a 7.4.1 patch release focused on bug fixes and quality improvements.

🛠 Fixes

Prisma Client

  • Fix cursor-based pagination regression with parameterised values (#​29184)
  • Preserve Prisma.skip through query extension argument cloning (#​29198)
  • Enable batching of multiple queries inside interactive transactions (#​25571)
  • Add missing JSON value deserialization for JSONB parameter fields (#​29182)
  • Apply result extensions correctly for nested and fluent relations (#​29218)
  • Allow missing config datasource URL and validate only when needed (prisma/prisma-engines#5777)

Driver Adapters

Prisma Schema Language

🙏 Huge thanks to our community

Many of the fixes in this release were contributed by our amazing community members. We're grateful for your continued support and contributions that help make Prisma better for everyone!

v7.4.0

Compare Source

Today, we are excited to share the 7.4.0 stable release 🎉

🌟 Star this repo for notifications about new releases, bug fixes & features — or follow us on X!

Highlights
ORM
Caching in Prisma Client

Today’s release is a big one, as we introduce a new caching layer into Prisma ORM. But why the need for a caching layer?

In Prisma 7, the query compiler runs as a WebAssembly module directly on the JavaScript main thread. While this simplified the architecture by eliminating the separate engine process, it introduced a trade-off: every query now synchronously blocks the event loop during compilation.

For individual queries, compilation takes between 0.1ms and 1ms, which is barely noticeable in isolation. But under high concurrency this overhead adds up and creates event loop contention that affects overall application throughput.

For instance, say we have a query that is run over and over, but is a similar shape:

// These two queries have the same shape:
const alice = await prisma.user.findUnique({ where: { email: 'alice@prisma.io' } })
const bob = await prisma.user.findUnique({ where: { email: 'bob@prisma.io' } })

Prior to v7.4.0, this would be reevaluated ever time the query is run. Now, Prisma Client will extract the user-provided values and replaces them with typed placeholders, producing a normalized query shape:

prisma.user.findUnique({ where: { email: %1 } })   // cache key
                                         ↑
                              %1 = 'alice@prisma.io'  (or 'bob@prisma.io')

This normalized shape is used as a cache key. On the first call, the query is compiled as usual and the resulting plan is stored in an LRU cache. On every subsequent call with the same query shape, regardless of the actual values, the cached plan is reused instantly without invoking the compiler.

We have more details on the impact of this change and some deep dives into Prisma architecture in an upcoming blog post!

Partial Indexes (Filtered Indexes) Support

We're excited to announce Partial Indexes support in Prisma! This powerful community-contributed feature allows you to create indexes that only include rows matching specific conditions, significantly reducing index size and improving query performance.

Partial indexes are available behind the partialIndexes preview feature for PostgreSQL, SQLite, SQL Server, and CockroachDB, with full migration and introspection support.

Basic usage

Enable the preview feature in your schema:

generator client {
  provider        = "prisma-client-js"
  previewFeatures = ["partialIndexes"]
}

Raw SQL syntax

For maximum flexibility, use the raw() function with database-specific predicates:

model User {
  id       Int     @id
  email    String
  status   String

  @@unique([email], where: raw("status = 'active'"))
  @@index([email], where: raw("deletedAt IS NULL"))
}

Type-safe object syntax

For better type safety, use the object literal syntax for simple conditions:

model Post {
  id        Int      @id
  title     String
  published Boolean

  @@index([title], where: { published: true })
  @@unique([title], where: { published: { not: false } })
}
Bug Fixes

Most of these fixes are community contributions - thank you to our amazing contributors!

  • prisma/prisma-engines#5767: Fixed an issue with PostgreSQL migration scripts that prevented usage of CREATE INDEX CONCURRENTLY in migrations
  • prisma/prisma-engines#5752: Fixed BigInt precision loss in JSON aggregation for MySQL and CockroachDB by casting BigInt values to text (from community member polaz)
  • prisma/prisma-engines#5750: Fixed connection failures with non-ASCII database names by properly URL-decoding database names in connection strings
  • #​29155: Fixed silent transaction commit errors in PlanetScale adapter by ensuring COMMIT failures are properly propagated
  • #​29141: Resolved race condition errors (EREQINPROG) in SQL Server adapter by serializing commit/rollback operations using mutex synchronization
  • #​29158: Fixed MSSQL connection string parsing to properly handle curly brace escaping for passwords containing special characters
Open roles at Prisma

Interested in joining Prisma? We’re growing and have several exciting opportunities across the company for developers who are passionate about building with Prisma. Explore our open positions on our Careers page and find the role that’s right for you.

Enterprise support

Thousands of teams use Prisma and many of them already tap into our Enterprise & Agency Support Program for hands-on help with everything from schema integrations and performance tuning to security and compliance.

With this program you also get priority issue triage and bug fixes, expert scalability advice, and custom training so that your Prisma-powered apps stay rock-solid at any scale. Learn more or join: https://prisma.io/enterprise.

v7.3.0

Compare Source

Today, we are excited to share the 7.3.0 stable release 🎉

🌟 Star this repo for notifications about new releases, bug fixes & features — or follow us on X!

ORM
  • #​28976: Fast and Small Query Compilers
    We've been working on various performance-related bugs since the initial ORM 7.0 release. With 7.3.0, we're introducing a new compilerBuild option for the client generator block in schema.prisma with two options: fast and small. This allows you to swap the underlying Query Compiler engine based on your selection, one built for speed (with an increase in size), and one built for size (with the trade off for speed). By default, the fast mode is used, but this can be set by the user:
generator client {
  provider = "prisma-client"
  output   = "../src/generated/prisma"
  compilerBuild = "fast" // "fast" | "small"
}

We still have more in progress for performance, but this new compilerBuild option is our first step toward addressing your concerns!

  • #​29005: Bypass the Query Compiler for Raw Queries
    Raw queries ($executeRaw, $queryRaw) can now skip going through the query compiler and query interpreter infrastructure. They can be sent directly to the driver adapter, removing additional overhead.

  • #​28965: Update MSSQL to v12.2.0
    This community PR updates the @prisma/adapter-mssql to use MSSQL v12.2.0. Thanks Jay-Lokhande!

  • #​29001: Pin better-sqlite3 version to avoid SQLite bug
    An underlying bug in SQLite 3.51.0 has affected the better-sqlite3 adapter. We’ve bumped the version that powers @prisma/better-sqlite3 and have pinned the version to prevent any unexpected issues. If you are using @prisma/better-sqlite3 , please upgrade to v7.3.0.

  • #​29002: Revert @map enums to v6.19.0 behavior
    In the initial release of v7.0, we made a change with Mapped Enums where the generated enum would get its value from the value passed to the @map function. This was a breaking change from v6 that caused issues for many users. We have reverted this change for the time being, as many different diverging approaches have emerged from the community discussion.

  • prisma-engines#5745: Cast BigInt to text in JSON aggregation
    When using relationJoins with BigInt fields in Prisma 7, JavaScript's JSON.parse loses precision for integers larger than Number.MAX_SAFE_INTEGER (2^53 - 1). This happens because PostgreSQL's JSONB_BUILD_OBJECT returns BigInt values as JSON numbers, which JavaScript cannot represent precisely.

    // Original BigInt ID: 312590077454712834
    // After JSON.parse: 312590077454712830 (corrupted!)
    

    This PR cast BigInt columns to ::text inside JSONB_BUILD_OBJECT calls, similar to how MONEY is already cast to ::numeric.

    -- Before
    JSONB_BUILD_OBJECT('id', "id")
    
    -- After
    JSONB_BUILD_OBJECT('id', "id"::text)
    

This ensures BigInt values are returned as JSON strings, preserving full precision when parsed in JavaScript.

Open roles at Prisma

Interested in joining Prisma? We’re growing and have several exciting opportunities across the company for developers who are passionate about building with Prisma. Explore our open positions on our [Careers page](https://www.prisma.io/careers#current) and find the role that’s right for you.

Enterprise support

Thousands of teams use Prisma and many of them already tap into our Enterprise & Agency Support Program for hands-on help with everything from schema integrations and performance tuning to security and compliance.

With this program you also get priority issue triage and bug fixes, expert scalability advice, and custom training so that your Prisma-powered apps stay rock-solid at any scale. Learn more or join: https://prisma.io/enterprise.

v7.2.0

Compare Source

Today, we are excited to share the 7.2.0 stable release 🎉

🌟 Star this repo for notifications about new releases, bug fixes & features — or follow us on X!

Highlights

ORM

  • #​28830: feat: add sqlcommenter-query-insights plugin
    • Adds a new SQL commenter plugin to support query insights metadata.
  • #​28860: feat(migrate): add -url param for db pull, db push, migrate dev
    • Adds a -url flag to key migrate commands to make connection configuration more flexible.
  • #​28895: feat(config): allow undefined URLs in e.g. prisma generate
    • Allows certain workflows (such as prisma generate) to proceed even when URLs are undefined.
  • #​28903: feat(cli): customize prisma init based on the JS runtime (Bun vs others)
    • Makes prisma init tailor generated setup depending on whether the runtime is Bun or another JavaScript runtime.
  • #​28846: fix(client-engine-runtime): make DataMapperError a UserFacingError
    • Ensures DataMapperError is surfaced as a user-facing error for clearer, more actionable error reporting.
  • #​28849: fix(adapter-{pg,neon,ppg}): handle 22P02 error in Postgres
    • Improves Postgres adapter error handling for invalid-text-representation errors (22P02).
  • #​28913: fix: fix byte upserts by removing legacy byte array representation
    • Fixes byte upsert behavior by removing a legacy byte-array representation path.
  • #​28535: fix(client,internals,migrate,generator-helper): handle multibyte UTF-8 characters split across chunk boundaries in byline
    • Prevents issues when multibyte UTF-8 characters are split across chunk boundaries during line processing.
  • #​28911: fix(cli): make prisma version --json emit JSON only to stdout
    • Ensures machine-readable JSON output is emitted cleanly to stdout without extra noise.

VS Code Extension

  • #​1950: fix: TML-1670 studio connections
    • Resolves issues related to Studio connections, improving reliability for VS Code or language-server integrations.

Open roles at Prisma

Interested in joining Prisma? We’re growing and have several exciting opportunities across the company for developers who are passionate about building with Prisma. Explore our open positions on our [Careers page](https://www.prisma.io/careers#current) and find the role that’s right for you.

Enterprise support

Thousands of teams use Prisma and many of them already tap into our Enterprise & Agency Support Program for hands-on help with everything from schema integrations and performance tuning to security and compliance.

With this program you also get priority issue triage and bug fixes, expert scalability advice, and custom training so that your Prisma-powered apps stay rock-solid at any scale. Learn more or join: https://prisma.io/enterprise.

v7.1.0

Compare Source

Today, we are excited to share the 7.1.0 stable release 🎉

🌟 Star this repo for notifications about new releases, bug fixes & features — or follow us on X!

This release brings quality of life improvements and fixes various bugs.

Prisma ORM

  • #​28735: pnpm monorepo issues with prisma client runtime utils
    Resolves issues in pnpm monorepos where users would report TypeScript issues related to @prisma/client-runtime-utils.

  • #​28769:  implement sql commenter plugins for Prisma Client
    This PR implements support for SQL commenter plugins to Prisma Client. The feature will allow users to add metadata to SQL queries as comments following the sqlcommenter format.

    Here’s two related PRs that were also merged:

    • #​28796: implement query tags for SQL commenter plugin
    • #​28802: add traceContext SQL commenter plugin
  • #​28737: added error message when constructing client without configs
    This commit adds an additional error message when trying to create a new PrismaClient instance without any arguments.
    Thanks to @​xio84 for this community contribution!

  • #​28820: mark @opentelemetry/api as external in instrumentation
    Ensures @opentelemetry/api is treated as an external dependency rather than bundled.
    Since it is a peer dependency, this prevents applications from ending up with duplicate copies of the package.

  • #​28694: allow env() helper to accept interface-based generics
    Updates the env() helper’s type definition so it works with interfaces as well as type aliases.
    This removes the previous constraint requiring an index signature and resolves TS2344 errors when using interface-based env types. Runtime behavior is unchanged.
    Thanks to @​SaubhagyaAnubhav for this community contribution!

Read Replicas extension

  • #​53: Add support for Prisma 7
    Users of the read-replicas extension can now use the extension in Prisma v7. You can update by installing:

    npm install @prisma/extension-read-replicas@latest

    For folks still on Prisma v6, install version 0.4.1:

    npm install @prisma/extension-read-replicas@0.4.1

For more information, visit the repo

SQL comments

We're excited to announce SQL Comments support in Prisma 7.1.0! This new feature allows you to append metadata to your SQL queries as comments, making it easier to correlate queries with application context for improved observability, debugging, and tracing.

SQL comments follow the sqlcommenter format developed by Google, which is widely supported by database monitoring tools. With this feature, your SQL queries can include rich metadata:

SELECT "id", "name" FROM "User" /*application='my-app',traceparent='00-abc123...-01'*/
Basic usage

Pass an array of SQL commenter plugins to the new comments option when creating a PrismaClient instance:

import { PrismaClient } from './generated/prisma/client';
import { PrismaPg } from '@prisma/adapter-pg';
import { queryTags } from '@prisma/sqlcommenter-query-tags';
import { traceContext } from '@prisma/sqlcommenter-trace-context';

const adapter = new PrismaPg({
  connectionString: `${process.env.DATABASE_URL}`,
});

const prisma = new PrismaClient({
  adapter,
  comments: [queryTags(), traceContext()],
});
Query tags

The @prisma/sqlcommenter-query-tags package lets you add arbitrary tags to queries within an async context:

import { queryTags, withQueryTags } from '@prisma/sqlcommenter-query-tags';

const prisma = new PrismaClient({
  adapter,
  comments: [queryTags()],
});

// Wrap your queries to add tags
const users = await withQueryTags(
  { route: '/api/users', requestId: 'abc-123' },
  () => prisma.user.findMany(),
);

Resulting SQL:

SELECT ... FROM "User" /*requestId='abc-123',route='/api/users'*/

Use withMergedQueryTags to merge tags with outer scopes:

import {
  withQueryTags,
  withMergedQueryTags,
} from '@prisma/sqlcommenter-query-tags';

await withQueryTags({ requestId: 'req-123', source: 'api' }, async () => {
  await withMergedQueryTags(
    { userId: 'user-456', source: 'handler' },
    async () => {
      // Queries here have: requestId='req-123', userId='user-456', source='handler'
      await prisma.user.findMany();
    },
  );
});
Trace context

The @prisma/sqlcommenter-trace-context package adds W3C Trace Context (traceparent) headers for distributed tracing correlation:

import { traceContext } from '@prisma/sqlcommenter-trace-context';

const prisma = new PrismaClient({
  adapter,
  comments: [traceContext()],
});

When tracing is enabled and the span is sampled:

SELECT * FROM "User" /*traceparent='00-0af7651916cd43dd8448eb211c80319c-b9c7c989f97918e1-01'*/

Note: Requires @​prisma/instrumentation to be configured. The traceparent is only added when tracing is active and the span is sampled.

Custom plugins

Create your own plugins to add custom metadata:

import type { SqlCommenterPlugin } from '@prisma/sqlcommenter';

const applicationTags: SqlCommenterPlugin = (context) => ({
  application: 'my-service',
  environment: process.env.NODE_ENV ?? 'development',
  operation: context.query.action,
  model: context.query.modelName,
});

const prisma = new PrismaClient({
  adapter,
  comments: [applicationTags],
});
Framework integration

SQL comments work seamlessly with popular frameworks, e.g., Hono:

import { createMiddleware } from 'hono/factory';
import { withQueryTags } from '@prisma/sqlcommenter-query-tags';

app.use(
  createMiddleware(async (c, next) => {
    await withQueryTags(
      {
        route: c.req.path,
        method: c.req.method,
        requestId: c.req.header('x-request-id') ?? crypto.randomUUID(),
      },
      () => next(),
    );
  }),
);

Additional framework examples for Express, Koa, Fastify, and NestJS are available in the documentation.

For complete documentation, see SQL Comments. We'd love to hear your feedback on this feature! Please open an issue on GitHub or join the discussion in our Discord community.

Open roles at Prisma

Interested in joining Prisma? We’re growing and have several exciting opportunities across the company for developers who are passionate about building with Prisma. Explore our open positions on our Careers page and find the role that’s right for you.

Enterprise support

Thousands of teams use Prisma and many of them already tap into our Enterprise & Agency Support Program for hands-on help with everything from schema integrations and performance tuning to security and compliance.

With this program you also get priority issue triage and bug fixes, expert scalability advice, and custom training so that your Prisma-powered apps stay rock-solid at any scale. Learn more or join: https://prisma.io/enterprise.

v7.0.1

Compare Source

Today, we are issuing a 7.0.1 patch release focused on quality of life improvements, and bug fixes.

🛠 Fixes
  • Prisma Studio:
    • Support Deno >= 1.4 <2.2 and Bun >= 1 (via [#​28583](https

Note

PR body was truncated to here.


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate Bot added the dependencies Pull requests that update a dependency file label Mar 2, 2026
@renovate
renovate Bot force-pushed the renovate/major-prisma-monorepo branch from f0d2a30 to ec449a7 Compare March 11, 2026 17:27
@renovate renovate Bot changed the title Update prisma monorepo from 6.19.2 to 7.4.2 (major) Update prisma monorepo from 6.19.2 to 7.5.0 (major) Mar 11, 2026
@renovate
renovate Bot force-pushed the renovate/major-prisma-monorepo branch 2 times, most recently from fd42c41 to 42e3631 Compare March 27, 2026 14:50
@renovate renovate Bot changed the title Update prisma monorepo from 6.19.2 to 7.5.0 (major) Update prisma monorepo from 6.19.2 to 7.6.0 (major) Mar 27, 2026
@renovate
renovate Bot force-pushed the renovate/major-prisma-monorepo branch from 42e3631 to 1f4194f Compare April 7, 2026 16:50
@renovate renovate Bot changed the title Update prisma monorepo from 6.19.2 to 7.6.0 (major) Update prisma monorepo from 6.19.2 to 7.7.0 (major) Apr 7, 2026
@renovate
renovate Bot force-pushed the renovate/major-prisma-monorepo branch from 1f4194f to dfe8711 Compare April 8, 2026 21:31
@renovate
renovate Bot force-pushed the renovate/major-prisma-monorepo branch from dfe8711 to dd65cef Compare April 22, 2026 21:01
@renovate renovate Bot changed the title Update prisma monorepo from 6.19.2 to 7.7.0 (major) Update prisma monorepo from 6.19.2 to 7.8.0 (major) Apr 22, 2026
@renovate
renovate Bot force-pushed the renovate/major-prisma-monorepo branch from dd65cef to b850ee3 Compare April 29, 2026 11:44
@renovate
renovate Bot force-pushed the renovate/major-prisma-monorepo branch from b850ee3 to 4010c6c Compare May 12, 2026 12:54
@renovate renovate Bot changed the title Update prisma monorepo from 6.19.2 to 7.8.0 (major) Update prisma monorepo from 6.19.2 to 7.8.0 May 12, 2026
@renovate
renovate Bot force-pushed the renovate/major-prisma-monorepo branch from 4010c6c to 7c918cb Compare May 18, 2026 12:50
@renovate
renovate Bot force-pushed the renovate/major-prisma-monorepo branch from 7c918cb to 6871879 Compare May 28, 2026 13:47
@renovate
renovate Bot force-pushed the renovate/major-prisma-monorepo branch from 6871879 to f0d7952 Compare June 11, 2026 15:10
@renovate
renovate Bot force-pushed the renovate/major-prisma-monorepo branch 2 times, most recently from 098562b to c8f55fc Compare July 16, 2026 16:01
@renovate
renovate Bot force-pushed the renovate/major-prisma-monorepo branch from c8f55fc to c72bce5 Compare July 20, 2026 21:17
@renovate renovate Bot changed the title Update prisma monorepo from 6.19.2 to 7.8.0 Update prisma monorepo from 6.19.2 to 7.9.0 Jul 20, 2026
@renovate
renovate Bot force-pushed the renovate/major-prisma-monorepo branch from c72bce5 to 4fc69a8 Compare July 27, 2026 17:05
@renovate renovate Bot changed the title Update prisma monorepo from 6.19.2 to 7.9.0 Update prisma monorepo from 6.19.2 to 7.9.1 Jul 27, 2026
@renovate
renovate Bot force-pushed the renovate/major-prisma-monorepo branch from 4fc69a8 to 3460ff2 Compare August 11, 2026 20:55
@renovate
renovate Bot force-pushed the renovate/major-prisma-monorepo branch from 3460ff2 to ef1926f Compare August 25, 2026 13:50
@renovate renovate Bot changed the title Update prisma monorepo from 6.19.2 to 7.9.1 Update dependency @prisma/client from 6.19.2 to 7.10.0 Aug 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants