Today, we are excited to share the 6.5.0
stable release 🎉
🌟 Help us spread the word about Prisma by starring the repo ☝️ or tweeting about the release. 🌟
Highlights
Databases can only be reset manually and explicitly
In previous versions, if Prisma ORM determined that a migrate
command could not be applied cleanly to the underlying database, you would get a message like this one:
? We need to reset the "public" schema at "db.url.com:5432"
Do you want to continue? All data will be lost. (y/N)
While "no" was the default, we've determined that having this prompt in the first place was a mistake. In this version we're removing the prompt entirely and instead exiting with an appropriate error message.
To get the previous behavior, you will need to run prisma migrate reset
directly.
Support for prisma.config.ts
in Prisma Studio
We've expanded support for our prisma.config.ts
file to include Prisma Studio!
To use the new config file, including the ability to connect to driver adapter enabled databases with Prisma Studio, add a studio
block to your prisma.config.ts
file:
import path from 'node:path'
import type { PrismaConfig } from 'prisma'
import { PrismaLibSQL } from '@prisma/adapter-libsql'
import { createClient } from '@libsql/client'
export default {
earlyAccess: true,
schema: {
kind: 'single',
filePath: './prisma/schema.prisma',
},
studio: {
adapter: async (env: unknown) => {
const connectionString = `file:./dev.db'
const libsql = createClient({
url: connectionString,
})
return new PrismaLibSQL(libsql)
},
},
} satisfies PrismaConfig
Notice how this looks a little different from last release! Instead of an @prisma/config
package there’s now two different options:
- Using the
defineConfig
helper exported byprisma/config
. - Using the
PrismaConfig
utility type exported byPrisma
.
All the relevant info for the prisma.config.ts
file, including these new ways of defining your config, can be found in our docs.
Allow for chaining $on
and $extends
.
In previous versions of Prisma ORM, the return type of the $on
client method was void
. This did not allow for chaining $on()
and $extends()
calls, as $on
is not available on extended clients.
In this version we've resolved this issue and $on
will now return the modified Prisma Client.
Community fixes
We have a number of community-submitted fixes that improve Prisma ORM:
- Allow for binaries to be loaded from local network. Thank you @RaHehl!
- Enhance type safety of the AtLeast utility type. Thank you @de-novo!
- Resolve a race condition in the NextJS monorepo plugin. Thank you @toniopelo!
- allow for filtering out spans with PrismaInstrumentation. Thank you @overbit!
Prisma is hiring
Join us at Prisma and work on our TypeScript ORM (now faster than ever) and our Cloud products like Prisma Postgres (now in GA!)
We currently have two open roles in our Engineering team:
If these don’t fit, you can still check out our jobs page and send a general application.
Enterprise support
Prisma offers an enterprise support plan for Prisma ORM. Get direct help from our team and a joint slack channel! With Prisma ORM 7 on the horizon this is a great time to upgrade your support today.