prisma/prisma (@prisma/client)
### [`v5.19.0`](https://togithub.com/prisma/prisma/releases/tag/5.19.0)
[Compare Source](https://togithub.com/prisma/prisma/compare/5.18.0...5.19.0)
Today, we are excited to share the `5.19.0` stable release 🎉
🌟 **Help us spread the word about Prisma by starring the repo or [posting on X](https://twitter.com/intent/tweet?text=Check%20out%20the%20latest%20@prisma%20release%20v5.19.0%20%F0%9F%9A%80%0D%0A%0D%0Ahttps://github.com/prisma/prisma/releases/tag/5.19.0) about the release.** 🌟
#### Highlights
##### Introducing TypedSQL
TypedSQL is a brand new way to interact with your database from Prisma Client. After enabling the `typedSql` Preview feature, you’re able to write SQL queries in a new `sql` subdirectory of your `prisma` directory. These queries are then checked by Prisma during using the new `--sql` flag of `prisma generate` and added to your client for use in your code.
To get started with TypedSQL:
1. Make sure that you have the latest version of `prisma` and `@prisma/client` installed:
npm install -D prisma@latest
npm install @prisma/client@latest
2. Enable the `typedSql` Preview feature in your Prisma Schema.
generator client {
provider = "prisma-client-js"
previewFeatures = ["typedSql"]
}
3. Create a `sql` subdirectory of your `prisma` directory.
mkdir -p prisma/sql
4. You can now add `.sql` files to the `sql` directory! Each file can contain one sql query and the name must be a valid JS identifier. For this example, say you had the file `getUsersWithPosts.sql` with the following contents:
```sql
SELECT u.id, u.name, COUNT(p.id) as "postCount"
FROM "User" u
LEFT JOIN "Post" p ON u.id = p."authorId"
GROUP BY u.id, u.name
```
5. Import your SQL query into your code with the `@prisma/client/sql` import:
```tsx
import { PrismaClient } from '@prisma/client'
import { getUsersWithPosts } from '@prisma/client/sql'
const prisma = new PrismaClient()
const usersWithPostCounts = await prisma.$queryRawTyped(getUsersWithPosts)
console.log(usersWithPostCounts)
```
There’s a lot more to talk about with TypedSQL. We think that the combination of the high-level Prisma Client API and the low-level TypedSQL will make for a great developer experience for all of our users.
To learn more about behind the “why” of TypedSQL [be sure to check out our announcement blog post](https://pris.ly/typedsql-blog).
For docs, check out our new [TypedSQL section](https://pris.ly/d/typedsql).
#### Bug fixes
##### Driver adapters and D1
A few issues with our `driverAdapters` Preview feature and Cloudflare D1 support were resolved via [https://github.com/prisma/prisma-engines/pull/4970](https://togithub.com/prisma/prisma-engines/pull/4970) and [https://github.com/prisma/prisma/pull/24922](https://togithub.com/prisma/prisma/pull/24922)
- Mathematic operations such as `max`, `min`, `eq`, etc in queries when using Cloudflare D1.
- Resolved issues when comparing `BigInt` IDs when `relationMode="prisma"` was enabled and Cloudflare D1 was being used.
##### Joins
- [https://github.com/prisma/prisma/issues/23742](https://togithub.com/prisma/prisma/issues/23742) fixes Prisma Client not supporting deeply nested `some` clauses when the `relationJoins` Preview feature was enabled.
#### Join us
Looking to make an impact on Prisma in a big way? We're now hiring engineers for the ORM team!
- [Senior Engineer (TypeScript)](https://boards.greenhouse.io/prisma/jobs/5350820002): This person will be primarily working on the TypeScript side and evolving our Prisma client. Rust knowledge (or desire to learn Rust) is a plus.
- [Senior Engineer (Rust)](https://boards.greenhouse.io/prisma/jobs/6940273002): This person will be focused on the `prisma-engines` Rust codebase. TypeScript knowledge (or, again, a desire to learn) is a plus.
#### Credits
Huge thanks to [@mcuelenaere](https://togithub.com/mcuelenaere), [@pagewang0](https://togithub.com/pagewang0), [@Druue](https://togithub.com/Druue), [@key-moon](https://togithub.com/key-moon), [@Jolg42](https://togithub.com/Jolg42), [@pranayat](https://togithub.com/pranayat), [@ospfranco](https://togithub.com/ospfranco), [@yubrot](https://togithub.com/yubrot), [@skyzh](https://togithub.com/skyzh) for helping!
Configuration
📅 Schedule: Branch creation - "every weekend" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
[ ] If you want to rebase/retry this PR, check this box
This PR contains the following updates:
5.18.0
->5.19.0
5.18.0
->5.19.0
Release Notes
prisma/prisma (@prisma/client)
### [`v5.19.0`](https://togithub.com/prisma/prisma/releases/tag/5.19.0) [Compare Source](https://togithub.com/prisma/prisma/compare/5.18.0...5.19.0) Today, we are excited to share the `5.19.0` stable release 🎉 🌟 **Help us spread the word about Prisma by starring the repo or [posting on X](https://twitter.com/intent/tweet?text=Check%20out%20the%20latest%20@prisma%20release%20v5.19.0%20%F0%9F%9A%80%0D%0A%0D%0Ahttps://github.com/prisma/prisma/releases/tag/5.19.0) about the release.** 🌟 #### Highlights ##### Introducing TypedSQL TypedSQL is a brand new way to interact with your database from Prisma Client. After enabling the `typedSql` Preview feature, you’re able to write SQL queries in a new `sql` subdirectory of your `prisma` directory. These queries are then checked by Prisma during using the new `--sql` flag of `prisma generate` and added to your client for use in your code. To get started with TypedSQL: 1. Make sure that you have the latest version of `prisma` and `@prisma/client` installed: npm install -D prisma@latest npm install @prisma/client@latest 2. Enable the `typedSql` Preview feature in your Prisma Schema. generator client { provider = "prisma-client-js" previewFeatures = ["typedSql"] } 3. Create a `sql` subdirectory of your `prisma` directory. mkdir -p prisma/sql 4. You can now add `.sql` files to the `sql` directory! Each file can contain one sql query and the name must be a valid JS identifier. For this example, say you had the file `getUsersWithPosts.sql` with the following contents: ```sql SELECT u.id, u.name, COUNT(p.id) as "postCount" FROM "User" u LEFT JOIN "Post" p ON u.id = p."authorId" GROUP BY u.id, u.name ``` 5. Import your SQL query into your code with the `@prisma/client/sql` import: ```tsx import { PrismaClient } from '@prisma/client' import { getUsersWithPosts } from '@prisma/client/sql' const prisma = new PrismaClient() const usersWithPostCounts = await prisma.$queryRawTyped(getUsersWithPosts) console.log(usersWithPostCounts) ``` There’s a lot more to talk about with TypedSQL. We think that the combination of the high-level Prisma Client API and the low-level TypedSQL will make for a great developer experience for all of our users. To learn more about behind the “why” of TypedSQL [be sure to check out our announcement blog post](https://pris.ly/typedsql-blog). For docs, check out our new [TypedSQL section](https://pris.ly/d/typedsql). #### Bug fixes ##### Driver adapters and D1 A few issues with our `driverAdapters` Preview feature and Cloudflare D1 support were resolved via [https://github.com/prisma/prisma-engines/pull/4970](https://togithub.com/prisma/prisma-engines/pull/4970) and [https://github.com/prisma/prisma/pull/24922](https://togithub.com/prisma/prisma/pull/24922) - Mathematic operations such as `max`, `min`, `eq`, etc in queries when using Cloudflare D1. - Resolved issues when comparing `BigInt` IDs when `relationMode="prisma"` was enabled and Cloudflare D1 was being used. ##### Joins - [https://github.com/prisma/prisma/issues/23742](https://togithub.com/prisma/prisma/issues/23742) fixes Prisma Client not supporting deeply nested `some` clauses when the `relationJoins` Preview feature was enabled. #### Join us Looking to make an impact on Prisma in a big way? We're now hiring engineers for the ORM team! - [Senior Engineer (TypeScript)](https://boards.greenhouse.io/prisma/jobs/5350820002): This person will be primarily working on the TypeScript side and evolving our Prisma client. Rust knowledge (or desire to learn Rust) is a plus. - [Senior Engineer (Rust)](https://boards.greenhouse.io/prisma/jobs/6940273002): This person will be focused on the `prisma-engines` Rust codebase. TypeScript knowledge (or, again, a desire to learn) is a plus. #### Credits Huge thanks to [@mcuelenaere](https://togithub.com/mcuelenaere), [@pagewang0](https://togithub.com/pagewang0), [@Druue](https://togithub.com/Druue), [@key-moon](https://togithub.com/key-moon), [@Jolg42](https://togithub.com/Jolg42), [@pranayat](https://togithub.com/pranayat), [@ospfranco](https://togithub.com/ospfranco), [@yubrot](https://togithub.com/yubrot), [@skyzh](https://togithub.com/skyzh) for helping!Configuration
📅 Schedule: Branch creation - "every weekend" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR was generated by Mend Renovate. View the repository job log.