Impact Score: 5/10
Prisma 5.13.0 — Release Notes & Engineering Impact
Source available — automated, not human-reviewed
Component: prisma · Channel: stable. Automated analysis, not a compatibility certification. How this works.
Analysis updated: 2026-11-01.
⚡ Executive Summary (TL;DR)
Prisma 5.13.0. Source highlight: Today, we are excited to share the `5.13.0` stable release 🎉
Who Does This Impact? (Role-Based Analysis)
💻 Software Engineers & Devs
Check the source notes against the package and APIs you use before upgrading.
📊 Product & Engineering Leads
Use the documented changes to assess relevance to your product; release frequency alone is not a quality measure.
⚙️ DevOps & Security
Verify the target version, runtime requirements and rollback procedure in the official documentation.
📄 View Raw Release Notes (Original Developer Log)
Today, we are excited to share the `5.13.0` stable release 🎉
🌟 **Help us spread the word about Prisma by starring the repo or [posting on X](https://twitter.com/intent/post?text=Check%20out%20the%20latest%20%40prisma%20release%20v5.13.0%20%F0%9F%9A%80%0D%0A%0D%0Ahttps%3A%2F%2Fgithub.com%2Fprisma%2Fprisma%2Freleases%2Ftag%2F5.13.0) about the release.**
## Highlights
### `omit` fields from Prisma Client queries (Preview)
We’re excited to announce Preview support for the `omit` option within the Prisma Client query options. The [highly-requested](https://github.com/prisma/prisma/issues/5042) `omit` feature now allows you to exclude fields that you don’t want to retrieve from the database on a ***per-query basis*.**
By default, when a query returns records, the result includes all scalar fields of the models defined in the Prisma schema. [`select`](https://www.prisma.io/docs/orm/reference/prisma-client-reference#select) can be used to return specific fields, while `omit` can now be used to exclude specific fields. `omit` lives at the same API level and works on all of the same [Prisma Client model queries](https://www.prisma.io/docs/orm/reference/prisma-client-reference#model-queries) as `select`. Note, however, that `omit` and `select` are mutually exclusive. In other words, you can’t use both in the same query.
To get started using `omit`, enable the `omitApi` Preview feature in your Prisma schema:
```prisma
// schema.prisma
generator client {
provider = "prisma-client-js"
previewFeatures = ["omitApi"]
}
```
Be sure to re-generate Prisma Client afterwards:
```bash
npx prisma generate
```
Here is an example of using `omit`:
```ts
// Includes all fields except password
await prisma.user.findMany({
omit: {
password: true
},
})
```
Here is an example of using `omit` with `include`:
```ts
// Includes all user fields except user's password and title of user's posts
await prisma.user.findMany({
omit: {
password: true
},
include: {
posts: {
omit: {
title: true
},
},
},
})
```
<details>
<summary>Expand to view the example Prisma schema</summary>
```prisma
model User {
id Int @id @default(autoincrement())
email String @unique
name String?
password String
posts Post[]
}
model Post {
id Int @id @default(autoincrement())
title String
author User @relation(fields: [authorId], references: [id])
authorId Int
}
```
</details>
Many users have requested a global implementation of `omit`. This request will be accommodated in the future. In the meantime, you can follow the issue [here](https://github.com/prisma/prisma/issues/5042).
**📣 Share your feedback:** [`omitApi` Preview feature](https://github.com/prisma/prisma/discussions/23924)
**📚 Documentation:** [`omit` - Prisma Client API Reference](https://www.prisma.io/docs/orm/reference/prisma-client-reference#omit-preview)
## Fixes and improvements
### Prisma Migrate
- [Nicer Datamodel Type validation](https://github.com/prisma/prisma/issues/15174)
### Prisma Client
- [MySQL `upsert()`: `Internal error: Attempted to serialize empty result.`](https://github.com/prisma/prisma/issues/17982)
- [Mysql `upsert()` fails with "Attempted to serialize empty result."](https://github.com/prisma/prisma/issues/18285)
- [Interactive Transaction API timing out after upgrading from 4.7.0 and above](https://github.com/prisma/prisma/issues/18393)
- [MySQL and SQLite `upsert()`: `Internal error: Attempted to serialize empty result.`](https://github.com/prisma/prisma/issues/19868)
- [MySQL `upsert()`: `Internal error: Attempted to serialize empty result.`](https://github.com/prisma/prisma/issues/20042)
- [MongoDB `upsert()`: `Internal error: Attempted to serialize empty result.`](https://github.com/prisma/prisma/issues/20527)
- [MongoDB `upsert()`: `Internal error: Attempted to serialize empty result`](https://github.com/prisma/prisma/issues/21612)
- [Relation mode + `upsert()`: `Internal error: Attempted to serialize empty result.`](https://github.com/prisma/prisma/issues/22562)
- [`Internal error: Attempted to serialize empty result.` on `upsert()` for `update` case in different databases (when using `relationMode=prisma` explicitly or implicitly [MongoDB])](https://github.com/prisma/prisma/issues/22916)
- [Postgres `upsert(): Internal error: Attempted to serialize empty result` when `relationMode = "prisma"` is used](https://github.com/prisma/prisma/issues/23359)
- [`✘ [ERROR] near "��": syntax error at offset 0` when running `wrangler d1 migrations apply` with Prisma generated migration (on Windows, using Powershell)](https://github.com/prisma/prisma/issues/23702)
## Credits
Huge thanks to @ospfranco, @pranayat, @yubrot, @skyzh, @anuraaga, @yehonatanz, @arthurfiorette, @elithrar, @tockn, @Kuhave, @obiwac for helping!