PackageTrack

npm · #3659

@prisma/client

7.10.0prisma/prisma

Prisma Client is an auto-generated, type-safe and modern JavaScript/TypeScript ORM for Node.js that's tailored to your data. Supports PostgreSQL, CockroachDB, MySQL, MariaDB, SQL Server, SQLite & MongoDB databases.

Release timeline

10652 releases since 2020
2020202120222023202420252026

Releases

  1. 7.1.0-dev.1525 Nov 2025pre-release

    Nothing published for this version

  2. 7.1.0-dev.1425 Nov 2025pre-release

    Nothing published for this version

  3. 7.1.0-dev.1325 Nov 2025pre-release

    Nothing published for this version

  4. 7.1.0-dev.1225 Nov 2025pre-release

    Nothing published for this version

  5. 7.1.0-dev.1125 Nov 2025pre-release

    Nothing published for this version

  6. 7.1.0-dev.1024 Nov 2025pre-release

    Nothing published for this version

  7. 7.1.0-dev.924 Nov 2025pre-release

    Nothing published for this version

  8. 7.1.0-dev.824 Nov 2025pre-release

    Nothing published for this version

  9. 7.1.0-dev.724 Nov 2025pre-release

    Nothing published for this version

  10. 7.1.0-dev.624 Nov 2025pre-release

    Nothing published for this version

  11. 7.1.0-dev.524 Nov 2025pre-release

    Nothing published for this version

  12. 7.1.0-dev.421 Nov 2025pre-release

    Nothing published for this version

  13. 7.1.0-dev.320 Nov 2025pre-release

    Nothing published for this version

  14. 7.1.0-dev.220 Nov 2025pre-release

    Nothing published for this version

  15. 7.1.0-dev.120 Nov 2025pre-release

    Nothing published for this version

  16. 7.0.125 Nov 2025
    Release notes

    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 https://github.com/prisma/prisma/pull/28583)
      • Fix collisions between user and internal Studio columns when querying (via https://github.com/prisma/prisma/pull/28677)
      • Warn when SQLite file doesn't exist (via https://github.com/prisma/prisma/pull/28711/commits/c33a1ea9e5a94e6a5c876bc4567915cc5f354658)
      • Fix https://github.com/prisma/studio/issues/1363 (via https://github.com/prisma/prisma/pull/28711/commits/07224d4651d043f4b08735eeaa144aa9d75f9fe3)
      • Sort tables alphabetically (via https://github.com/prisma/prisma/pull/28702)
    • Prisma CLI

      • Fix potential vulnerabilities in installed dependencies (via https://github.com/prisma/prisma/pull/28592)
      • Fix https://github.com/prisma/prisma/issues/28240, an exit code regression affecting prisma migrate diff (via https://github.com/prisma/prisma-engines/pull/5699)
      • Show informative message when prisma db seed is run, but no migrations.seed command is specified in the Prisma config file (via https://github.com/prisma/prisma/pull/28711)
      • Relax engines check in package.json, to let Node.js 25+ users adopt Prisma, although Node.js 25+ isn't considered stable yet (via https://github.com/prisma/prisma/pull/28600). Thanks @Sajito!
    • Prisma Client

      • Restore cockroachdb support in prisma-client-js generator, after it was accidentally not shipped in Prisma 7.0.0 (via https://github.com/prisma/prisma/pull/28690)
    • @prisma/better-sqlite3

      • Bump underlying version of better-sqlite3 to ^12.4.5, fixing https://github.com/prisma/prisma/issues/28624 (via https://github.com/prisma/prisma/pull/28625). Thank you @bhbs!
    Open source →
  17. 7.0.1-dev.225 Nov 2025pre-release

    Nothing published for this version

  18. 7.0.1-dev.125 Nov 2025pre-release

    Nothing published for this version

  19. 7.0.019 Nov 2025
    Release notes

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

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

    Highlights

    Over the past year we focused on making it simpler and faster to build applications with Prisma, no matter what tools you use or where you deploy, with exceptional developer experience at it’s core. This release makes many features introduced over the past year as the new defaults moving forward.

    Prisma ORM

    ESM Prisma Client as the default

    The Rust-free/ESM Prisma Client has been in the works for some time now, all the way back to v6.16.0, with early iterations being available for developers to adopt. Now with version 7.0, we’re making this the default for all new projects. With this, developers are able to get:

    • ~90% smaller bundle sizes
    • Up to 3x faster queries
    • Significantly simpler deployments

    Adopting the new client is as simple as swapping the prisma-client-js provider for prisma-client in your main schema.prisma :

    // schema.prisma
    generator client {
    - provider = "prisma-client-js"
    + provider = "prisma-client"
    }
    

    Prisma Client changes

    In v7, we've moved to requiring users pass either an adapter or accelerteUrl when creating a new instance of PrismaClient.

    For Driver Adapters

    import { PrismaClient } from './generated/prisma/client';
    import { PrismaPg } from '@prisma/adapter-pg';
    
    const adapter = new PrismaPg({ 
      connectionString: process.env.DATABASE_URL 
    });
    const prisma = new PrismaClient({ adapter });
    

    For other databases:

    // If using SQLite
    import { PrismaBetterSqlite3 } from '@prisma/adapter-better-sqlite3';
    const adapter = new PrismaBetterSqlite3({
      url: process.env.DATABASE_URL || 'file:./dev.db'
    })
    
    // If using MySql
    import { PrismaMariaDb } from '@prisma/adapter-mariadb';
    const adapter = new PrismaMariaDb({
      host: "localhost",
      port: 3306,
      connectionLimit: 5
    });
    

    We’ve also removed support for additional options when configuring your Prisma Client

    • new PrismaClient({ datasources: .. }) support has been removed
    • new PrismaClient({datasourceUrl: ..}) support has been removed
    • new PrismaClient() support has been removed
    • new PrismaClient({}) support has been removed

    For Prisma Accelerate users:

    import { PrismaClient } from "./generated/prisma/client"
    import { withAccelerate } from "@prisma/extension-accelerate"
    
    const prisma = new PrismaClient({
      accelerateUrl: process.env.DATABASE_URL,
    }).$extends(withAccelerate()) 
    

    Generated Client and types move out of node_modules

    When running prisma generate, the generated Client runtime and project types will now require a output path to be set in your project’s main schema.prisma. We recommend that they be generated inside of your project’s src directory to ensure that your existing tools are able to consume them like any other piece of code you might have.

    // schema.prisma
    generator client {
      provider = "prisma-client"
      // Generate my Client and Project types 
      output   = "../src/generated/prisma"
    }
    

    Update your code to import PrismaClient from this generated output:

    // Import from the generated prisma client
    import { PrismaClient } from './generated/prisma/client';
    

    For developers who still need to stay on the prisma-client-js but are using the new output option, theres’s a new required package, @prisma/client-runtime-utils , which needs to be installed:

    # for prisma-client-js users only
    npm install @prisma/client-runtime-utils
    

    Removal of implicit Prisma commands

    In previous releases, Prisma would run generate and seed in various situations:

    • post-install hook would run prisma generate
    • prisma migrate would run prisma generate and prisma seed

    This behaviour has been removed in favor of explicitly requiring commands to be run by users.

    Removal of prisma generate flags

    For prisma generate , we’ve removed a few flags that were no longer needed:

    • prisma generate --data-proxy
    • prisma generate --accelerate
    • prisma generate --no-engine
    • prisma generate --allow-no-models

    Removal of prisma db flags

    For prisma db, we’ve removed the following flag:

    • prisma db pull --local-d1 This parameter no longer exists but equivalent functionality can be implemented by defining a config file with a connection string for the local D1 database. We provide a helper function listLocalDatabases in the D1 adapter to simplify the migration:
    import { defineConfig } from '@prisma/config'
    import { listLocalDatabases } from '@prisma/adapter-d1'
    
    export default defineConfig({
      datasource: {
        url: `file://${listLocalDatabases().pop()}`,
      },
    })
    

    Removal of prisma migrate flags

    For prisma migrate diff, we’ve removed the following flags:

    • prisma --[from/to]-schema-datamodel
      • This is now replaced with just --[from/to]-schema. The usage is otherwise the same.
    • prisma --[from/to]-url, prisma --[from/to]-schema-datasource
      • These are now replaced with --[from/to]-config-datasource. The user is expected to populate the datasource in the config file and use the new flag. We no longer support diffing two different URLs/datasources, since only one config can be used at a time.
    • prisma --[from/to]-local-d1
      • These are now replaced with --[from/to]-config-datasource. The user is expected to populate the datasource in the config file and use the new flag with a minor complication due to the fact that it needs to reference the local D1 database. Our listLocalDatabases helper function can be used for that, analogously to the db pull --local-d1 example above (where the user sets the datasource URL to file://${listLocalDatabases().pop()})

    MongoDB support in Prisma 7

    Currently, MongoDB is not supported in Prisma 7. For folks using MongoDB, please stay on Prisma v6. We aim to add support for MongoDB in a future release.

    Driver Adapter naming updates

    We’ve standardized our naming conventions for the various driver adapters internally. The following driver adapters have been updated:

    • PrismaBetterSQLite3PrismaBetterSqlite3
    • PrismaD1HTTPPrismaD1Http
    • PrismaLibSQLPrismaLibSql
    • PrismaNeonHTTPPrismaNeonHttp

    Schema and config file updates

    As part of a larger change in how the Prisma CLI reads your project configuration, we’ve updated what get’s set the schema, and what gets set in the prisma.config.ts . Also as part of this release, prisma.config.ts is now required for projects looking to perform introspection and migration.

    Schema changes

    • datasource.url is now configured in the config file
    • datasource.shadowDatabaseUrl is now configured in the config file
    • datasource.directUrl has been made unnecessary and has removed
    • generator.runtime=”react-native” has been removed

    For early adopters of the config file, a few things have been removed with this release

    • engine: 'js'| 'classic' has been removed
    • adapter has been removed

    A brief before/after:

    // schema.prisma
    datasource db {
      provider = "postgresql"
      url = ".."
      directUrl = ".."
      shadowDatabaseUrl = ".."
    }
    
    // ./prisma.config.ts
    export default defineConfig({
      datasource: {
        url: '..',
        shadowDatabaseUrl: '..',
      }
    })
    

    Explicit loading of environment variables

    As part of the move to Prisma config, we’re no longer automatically loading environment variables when invoking the Prisma CLI. Instead, developers can utilize libraries like dotenv to manage their environment variables and load them as they need. This means you can have dedicated local environment variables or ones set only for production. This removes any accidental loading of environment variables while giving developers full control.

    Removed support for prisma keyword in package.json

    In previous releases, users could configure their schema entry point and seed script in a prisma block in the package.json of their project. With the move to prisma.config.ts, this no longer makes sense and has been removed. To migrate, use the Prisma config file instead:

    {
      "name": "my-project",
      "version": "1.0.0",
      "prisma": {
        "schema": "./custom-path-to-schema/schema.prisma",
        "seed": "tsx ./prisma/seed.ts"
      }
    }
    
    import 'dotenv/config'
    import { defineConfig, env } from "prisma/config";
    export default defineConfig({
      schema: "prisma/schema.prisma",
      migrations: {
          seed: "tsx prisma/seed.ts"
      },
      datasource: {...},
    });
    

    Removed Client Engines:

    We’ve removed the following client engines:

    • LibraryEngine (engineType = "library", the Node-API Client)
    • BinaryEngine (engineType = "binary", the long-running executable binary)
    • DataProxyEngine and AccelerateEngine (Accelerate uses a new RemoteExecutor now)
    • ReactNativeEngine

    Deprecated metrics feature has been removed

    We deprecated the previewFeature metrics some time ago, and have removed it fully for version 7. If you need metrics related data available, you can use the underlying driver adapter itself, like the Pool metric from the Postgres driver.

    Miscellaneous

    • #28493: Stop shimming WeakRef in Cloudflare Workers. This will now avoid any unexpected memory leaks.
    • #28297: Remove hardcoded URL validation. Users are now required to make sure they don’t include sensitive information in their config files.
    • #28273: Removed Prisma v1 detection
    • #28343: Remove undocumented --url flag from prisma db pull
    • #28286: Remove deprecated prisma introspect command.
    • #28480: Rename /wasm to /edge
      • This change only affects prisma-client-js
      • Before:
        • /edge → meant “for Prisma Accelerate”
        • /wasm → meant “for Edge JS runtimes (e.g., Cloudflare, Vercel Edge)”
      • After:
        • /edge → means “for Edge JS runtimes (e.g., Cloudflare, Vercel Edge)”
    • The following Prisma-specific environment variables have been removed
      • PRISMA_CLI_QUERY_ENGINE_TYPE
      • PRISMA_CLIENT_ENGINE_TYPE
      • PRISMA_QUERY_ENGINE_BINARY
      • PRISMA_QUERY_ENGINE_LIBRARY
      • PRISMA_GENERATE_SKIP_AUTOINSTALL
      • PRISMA_SKIP_POSTINSTALL_GENERATE
      • PRISMA_GENERATE_IN_POSTINSTALL
      • PRISMA_GENERATE_DATAPROXY
      • PRISMA_GENERATE_NO_ENGINE
      • PRISMA_CLIENT_NO_RETRY
      • PRISMA_MIGRATE_SKIP_GENERATE
      • PRISMA_MIGRATE_SKIP_SEED

    Mapped enums

    If you followed along on twitter, you will have seen that we teased a highly-request user feature was coming to v7.0. That highly-requested feature is…. mapped emuns! We now support the @map attribute for enum members, which can be used to set their expected runtime values

    enum PaymentProvider {
      MixplatSMS    @map("mixplat/sms")
      InternalToken @map("internal/token")
      Offline       @map("offline")
    
      @@map("payment_provider")
    }
    
    export const PaymentProvider: {
      MixplatSMS: 'mixplat/sms'
      InternalToken: 'internal/token'
      Offline: 'offline'
    }
    

    New Prisma Studio comes to the CLI

    We launched a new version of Prisma Studio to our Console and VS Code extension a while back, but the Prisma CLI still shipped with the older version.

    Now, with v7.0, we’ve updated the Prisma CLI to include the new Prisma Studio. Not only are you able to inspect your database, but you get rich visualization to help you understand connected relationships in your database. It’s customizable, much smaller, and can inspect remote database by passing a --url flag. This new version of Prisma Studio is not tied to the Prisma ORM, and establishes a new foundation for what comes next.

    Currently, the new studio only supports Postgres, MySQL, and SQLite, with support for other databases coming in a future release.

    For issues related to Prisma Studio, please direct them to the Studio repo on github.

    Prisma Postgres

    Prisma Postgres is our managed Postgres service, designed with the same philosophy of great DX that has guided Prisma for close to a decade. It works great with serverless, it’s fast, and with simple pricing and a generous free tier. Here’s what’s new:

    Connection Pooling Changes with Prisma Accelerate

    With support for connection pooling being added natively to Prisma Postgres, Prisma Accelerate now serves as a dedicated caching layer. If you were using Accelerate for the connection pooling features, don’t worry! Your existing connection string via Accelerate will continue to work, and you can switch to the new connection pool when you’re ready.

    Simplified connection flow

    We've made connecting to Prisma Postgres even simpler. Now, when you go to connect to a database, you’ll get new options to enable connection pooling, or to enable Prisma Accelerate for caching. Below, you’ll get code snippets for getting things configured in your project right away.

    Serverless driver

    For those who want to connect to Prisma Postgres but are deploying to environments like Cloudflare Workers, we have a new version of the serverless client library to support these runtimes.

    • Compatible with Cloudflare Workers, Vercel Edge Functions, Deno Deploy, AWS Lambda, and Bun
    • Stream results row-by-row to handle large datasets with constant memory usage
    • Pipeline multiple queries over a single connection, reducing latency by up to 3x
    • SQL template literals with automatic parameterization and full TypeScript support
    • Built-in transactions, batch operations, and extensible type system

    Check out the serverless driver docs for more details

    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.

    Open source →
  20. 6.20.0-integration-oidc-truster-publishers.26 Nov 2025pre-release

    Nothing published for this version

  21. 6.20.0-integration-oidc-truster-publishers.16 Nov 2025pre-release

    Nothing published for this version

  22. 6.20.0-integration-next.2017 Nov 2025pre-release

    Nothing published for this version

  23. 6.20.0-integration-next.1917 Nov 2025pre-release

    Nothing published for this version

  24. 6.20.0-integration-next.1817 Nov 2025pre-release

    Nothing published for this version

  25. 6.20.0-integration-next.1717 Nov 2025pre-release

    Nothing published for this version

  26. 6.20.0-integration-next.1617 Nov 2025pre-release

    Nothing published for this version

  27. 6.20.0-integration-next.1517 Nov 2025pre-release

    Nothing published for this version

  28. 6.20.0-integration-next.1417 Nov 2025pre-release

    Nothing published for this version

  29. 6.20.0-integration-next.1317 Nov 2025pre-release

    Nothing published for this version

  30. 6.20.0-integration-next.1217 Nov 2025pre-release

    Nothing published for this version

  31. 6.20.0-integration-next.1117 Nov 2025pre-release

    Nothing published for this version

  32. 6.20.0-integration-next.1017 Nov 2025pre-release

    Nothing published for this version

  33. 6.20.0-integration-next.914 Nov 2025pre-release

    Nothing published for this version

  34. 6.20.0-integration-next.811 Nov 2025pre-release

    Nothing published for this version

  35. 6.20.0-integration-next.711 Nov 2025pre-release

    Nothing published for this version

  36. 6.20.0-integration-next.611 Nov 2025pre-release

    Nothing published for this version

  37. 6.20.0-integration-next.510 Nov 2025pre-release

    Nothing published for this version

  38. 6.20.0-integration-next.410 Nov 2025pre-release

    Nothing published for this version

  39. 6.20.0-integration-next.36 Nov 2025pre-release

    Nothing published for this version

  40. 6.20.0-integration-next.26 Nov 2025pre-release

    Nothing published for this version

  41. 6.20.0-integration-next.16 Nov 2025pre-release

    Nothing published for this version

  42. 6.20.0-integration-merge-release-workflows2.16 Nov 2025pre-release

    Nothing published for this version

  43. 6.20.0-integration-merge-release-workflows.26 Nov 2025pre-release

    Nothing published for this version

  44. 6.20.0-integration-merge-release-workflows.16 Nov 2025pre-release

    Nothing published for this version

  45. 6.20.0-integration-feat-prisma-7-config.46 Nov 2025pre-release

    Nothing published for this version

  46. 6.20.0-integration-feat-prisma-7-config.36 Nov 2025pre-release

    Nothing published for this version

  47. 6.20.0-integration-feat-prisma-7-config.26 Nov 2025pre-release

    Nothing published for this version

  48. 6.20.0-integration-feat-prisma-7-config.16 Nov 2025pre-release

    Nothing published for this version

  49. 6.20.0-integration-engines-6-20-0-1-integration-oidc-truster-publishers-e28d8c7807dc95db08a9a866250934b3aac2c89b.26 Nov 2025pre-release

    Nothing published for this version

  50. 6.20.0-integration-engines-6-20-0-1-integration-oidc-truster-publishers-e28d8c7807dc95db08a9a866250934b3aac2c89b.16 Nov 2025pre-release

    Nothing published for this version

  51. 6.20.0-integration-aqrln-wpvsvmvvnylq.114 Nov 2025pre-release

    Nothing published for this version

  52. 6.20.0-dev.1619 Nov 2025pre-release

    Nothing published for this version

  53. 6.20.0-dev.1519 Nov 2025pre-release

    Nothing published for this version

  54. 6.20.0-dev.1419 Nov 2025pre-release

    Nothing published for this version

  55. 6.20.0-dev.1318 Nov 2025pre-release

    Nothing published for this version

  56. 6.20.0-dev.1218 Nov 2025pre-release

    Nothing published for this version

  57. 6.20.0-dev.1118 Nov 2025pre-release

    Nothing published for this version

  58. 6.20.0-dev.1018 Nov 2025pre-release

    Nothing published for this version

  59. 6.20.0-dev.917 Nov 2025pre-release

    Nothing published for this version

  60. 6.20.0-dev.817 Nov 2025pre-release

    Nothing published for this version