npm @prisma/client 3.13.0

latest releases: 5.21.0-dev.3, 5.21.0-integration-itx-refactor.16, 5.21.0-integration-itx-refactor.15...
2 years ago

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

🌟 Help us spread the word about Prisma by starring the repo or tweeting about the release. 🌟

Major improvements

migrate diff and db execute are now Generally Available!

We released two new Preview CLI commands in version 3.9.0prisma migrate diff and prisma db execute – to enable our users to create and understand migrations and build their workflows using the commands.

We're proud to announce that the commands are now Generally Available and can now be used without the --preview-feature flag. 🎉

The prisma migrate diff command creates a diff of your database schema, Prisma schema file, or the migration history. All you have to do is feed the command with a schema from state and a schema to state to get an SQL script or human-readable diff.

In addition to prisma migrate diff, prisma db execute is used to execute SQL scripts against a database. You can directly execute prisma migrate diff's output using prisma db execute --stdin.

Both commands are non-interactive, so it's possible to build many new workflows such as forward and backward migrations with some automation tooling. Take a look at our documentation to learn some of the popular workflows these commands unlock:

Let us know what tools, automation, and scripts you build using these commands.

SQL Server index clustering (Preview)

In version 3.5.0, we introduced the extendedIndexes Preview feature which we have constantly been adding new configuration options for indexes. In this release, we added support for enabling or disabling index/constraint clustering in SQL Server.

By default, indexes will be clustered by default. You can update this in your schema as follows to disable index clustering:

datasource db {
  provider = "sqlserver"
  url      = env("DATABASE_URL")
}

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

model Post {
  id      Int     @default(autoincrement()) @id(clustered: false)
  title   String
  content String?
}

The following SQL will be generated in your migration when you run prisma migrate dev

CREATE TABLE [Post] (
  id INT NOT NULL,
  [title] VARCHAR(255) NOT NULL,
  [content] NVARCHAR(1000),
  CONSTRAINT [Post_pkey] PRIMARY KEY NONCLUSTERED (id)
)

If you've enabled the extendedIndexes Preview feature, this is potentially a breaking change. Refer to our documentation to learn how you can upgrade from a previous version.

Updated native types for CockroachDB (Preview)

We have revamped the native types available in the CockroachDB connector. We initially re-used the PostgreSQL native types because they were close enough, but we have now adapted our list of the supported native types to match what CockroachDB supports.

If you are already using CockroachDB in your project, you can run prisma db pull to update all the native types in your Prisma schema. Refer to our documentation for the complete list of all CockroachDB native types.

OpenSSL 3.0 Support

We're excited to announce that version 3.13.0 now supports OpenSSL 3.0. Operating systems such as Ubuntu 22.04 default to OpenSSL 3.0, and when running prisma generate, you would run into the following error:

Error: Unknown binaryTarget debian-openssl-3.0.x

If you've run into a similar error, bump up to the latest Prisma version and give it another try!

Fixes and improvements

Prisma Client

Prisma

Language tools (e.g. VS Code)

Prisma Engines

Credits

Huge thanks to @ever0de, @jacobhq, @dkantereivin, @CommanderRoot for helping!

💼 We're hiring!

If you're interested in joining our growing team to help empower developers to build data-intensive applications, Prisma is the place for you.

We're looking for a Technical Support Engineer and Senior Software Engineer (Prisma Data Platform).

Feel free to read through the job descriptions and apply using the links provided.

📺 Join us for another "What's new in Prisma" livestream

Learn about the latest release and other news from the Prisma community by joining us for another "What's new in Prisma" livestream.

The stream takes place on YouTube on Thursday, April 28 at 5 pm Berlin | 8 am San Francisco.

Don't miss a new client release

NewReleases is sending notifications on new releases.