-
Notifications
You must be signed in to change notification settings - Fork 856
feat: add more callouts to the rust-free prisma orm #7066
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
WalkthroughDocumentation adds recurring "Use Prisma ORM without Rust binaries" tips across setup, deployment (general, serverless, edge), and reference pages, and introduces a new troubleshooting page. Tips instruct enabling previewFeatures ["queryCompiler","driverAdapters"], note no Rust query engine binary is downloaded/shipped and DB pooling is handled by native JS drivers, and link to related docs. Changes
Sequence Diagram(s)sequenceDiagram
participant Dev as Developer
participant Docs as Documentation
participant PrismaGen as Prisma Generator
participant JSDriver as Native JS DB Driver
Dev->>Docs: Reads "Use Prisma ORM without Rust binaries" tip
Dev->>PrismaGen: Enable previewFeatures ["queryCompiler","driverAdapters"]
PrismaGen--x RustEngine: (no Rust binary downloaded/shipped)
PrismaGen->>JSDriver: Use native driver for DB pool (e.g., @prisma/adapter-pg)
JSDriver->>Runtime: Manages DB connections in serverless/edge
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Suggested reviewers
✨ Finishing Touches🧪 Generate unit tests
🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
Dangerous URL checkNo absolute URLs to prisma.io/docs found. |
Redirect checkThis PR probably requires the following redirects to be added to static/_redirects:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 3
🧹 Nitpick comments (9)
content/200-orm/200-prisma-client/500-deployment/201-serverless/500-deploy-to-netlify.mdx (3)
11-32: Clarify interaction with “Binary targets” section when using queryCompilerTo prevent confusion, add a note that the “Binary targets in
schema.prisma” section below is not applicable whenqueryCompiler+driverAdaptersare enabled (no Rust engine is used).Apply this addition just before the closing of the tip:
This setup can simplify deployments in serverless or edge runtimes. Learn more in the [docs here](/orm/prisma-client/setup-and-configuration/no-rust-engine). +If you enable `queryCompiler` with `driverAdapters`, you can ignore the “Binary targets in `schema.prisma`” section below, as no Rust engine binary is used or downloaded. :::
66-66: Typo: “sensitives” → “sensitive”-We recommend keeping `.env` files in your `.gitignore` in order to prevent leakage of sensitives connection strings. +We recommend keeping `.env` files in your `.gitignore` in order to prevent leakage of sensitive connection strings.
105-105: Typo: “Netlfiy’s” → “Netlify’s”-... are [discussed in Netlfiy's documentation](https://docs.netlify.com/environment-variables/get-started/) ... +... are [discussed in Netlify's documentation](https://docs.netlify.com/environment-variables/get-started/) ...content/200-orm/200-prisma-client/500-deployment/301-edge/550-deploy-to-deno-deploy.mdx (1)
13-18: Minor wording improvement“in conjunction with” is wordy; “with” reads cleaner.
-This guide demonstrates how to deploy an application to Deno Deploy in conjunction with a Prisma Postgres database, but you can also use ... +This guide demonstrates how to deploy an application to Deno Deploy with a Prisma Postgres database, but you can also use ...content/200-orm/200-prisma-client/500-deployment/001-deploy-prisma.mdx (1)
10-31: Add a short disclaimer to avoid mixing guidance with Rust-engine sections belowReaders may be confused because later sections on this page still describe Rust engine flows (binaryTargets, packaging engines, etc.). Add a one-liner here to clarify that those sections are not needed when using queryCompiler.
Apply this diff inside the tip after the bullet list:
* No Rust query engine binary is downloaded or shipped. * The database connection pool is maintained by the native JS database driver you install (e.g., `@prisma/adapter-pg` for PostgreSQL). -This setup can simplify deployments in serverless or edge runtimes. Learn more in the [docs here](/orm/prisma-client/setup-and-configuration/no-rust-engine). +This setup can simplify deployments in serverless or edge runtimes. Learn more in the [docs here](/orm/prisma-client/setup-and-configuration/no-rust-engine). + +Note: If you adopt this “no Rust engine” setup, you can ignore Rust-engine-specific steps below (for example, setting `binaryTargets`, bundling native engines, or packaging engine files).Also consider standardizing “native JS” → “native JavaScript” for consistency across pages.
content/200-orm/200-prisma-client/500-deployment/index.mdx (1)
10-38: Clarify interaction with Rust-engine instructions and link supported databases
- Add a one-line note that Rust-engine-specific steps in related pages aren’t needed if using
queryCompiler.- Consider linking “supported databases” directly from this tip to set expectations upfront.
- Learn more in the [docs here](/orm/prisma-client/setup-and-configuration/no-rust-engine). + Learn more in the [docs here](/orm/prisma-client/setup-and-configuration/no-rust-engine), including the list of [supported databases](/orm/prisma-client/setup-and-configuration/no-rust-engine#supported-databases). + +Note: If you adopt this setup, you can ignore Rust-engine-specific steps elsewhere (e.g., `binaryTargets`, packaging native binaries).content/200-orm/200-prisma-client/500-deployment/201-serverless/150-deploy-to-azure-functions.mdx (1)
11-32: Prevent mixed guidance with a targeted Azure Functions disclaimerThis page later instructs setting
binaryTargetsand packaging native engines. Add a note here that those steps are not needed when usingqueryCompiler.This setup can simplify deployments in serverless or edge runtimes. Learn more in the [docs here](/orm/prisma-client/setup-and-configuration/no-rust-engine). +Note: If you enable `queryCompiler` + `driverAdapters`, you can skip the Rust-engine-specific sections below (for example, “Define multiple binary targets” and packaging native engines). Those sections apply only when using the Rust engine.Also consider “native JS” → “native JavaScript” for consistency.
content/200-orm/500-reference/050-prisma-client-reference.mdx (1)
10-31: Content is correct; consider deduplicating via a shared MDX componentThe tip is accurate and valuable, but it’s repeated across many pages. To avoid drift, consider extracting it into a shared MDX component (e.g.,
<NoRustEngineTip />) and include it where needed.Happy to draft a reusable MDX component and replace the inline blocks across the touched pages.
content/200-orm/200-prisma-client/500-deployment/301-edge/485-deploy-to-vercel.mdx (1)
14-35: Minor clarity and consistency tweaks
- Standardize “native JS” → “native JavaScript”.
- Optionally, add a cross-reference to the “Using an edge-compatible driver” section below to reinforce driver requirements on Edge.
-* The database connection pool is maintained by the native JS database driver you install (e.g., `@prisma/adapter-pg` for PostgreSQL). +* The database connection pool is maintained by the native JavaScript database driver you install (e.g., `@prisma/adapter-pg` for PostgreSQL).Optionally add after the bullet list:
+See “Using an edge-compatible driver” below for driver compatibility details on Vercel Edge.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (15)
content/200-orm/200-prisma-client/000-setup-and-configuration/010-generating-prisma-client.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/001-deploy-prisma.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/201-serverless/150-deploy-to-azure-functions.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/201-serverless/300-deploy-to-vercel.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/201-serverless/400-deploy-to-aws-lambda.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/201-serverless/500-deploy-to-netlify.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/201-serverless/index.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/301-edge/100-overview.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/301-edge/450-deploy-to-cloudflare.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/301-edge/485-deploy-to-vercel.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/301-edge/550-deploy-to-deno-deploy.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/301-edge/index.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/index.mdx(1 hunks)content/200-orm/200-prisma-client/700-debugging-and-troubleshooting/245-troubleshooting-binary-size-issues.mdx(1 hunks)content/200-orm/500-reference/050-prisma-client-reference.mdx(1 hunks)
🧰 Additional context used
🪛 LanguageTool
content/200-orm/200-prisma-client/500-deployment/301-edge/550-deploy-to-deno-deploy.mdx
[style] ~15-~15: ‘in conjunction with’ might be wordy. Consider a shorter alternative.
Context: ...to deploy an application to Deno Deploy in conjunction with a Prisma Postgres database, but you can...
(EN_WORDINESS_PREMIUM_IN_CONJUNCTION_WITH)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (4)
- GitHub Check: runner / linkspector
- GitHub Check: Check internal links
- GitHub Check: Lost Pixel
- GitHub Check: Cloudflare Pages
🔇 Additional comments (8)
content/200-orm/200-prisma-client/500-deployment/301-edge/100-overview.mdx (1)
23-51: LGTM: concise and accurate guidance for no-Rust Prisma Client on edgeThe tip correctly covers enabling
queryCompiler+driverAdapters, outcomes, contexts where it helps, and links further reading.content/200-orm/200-prisma-client/500-deployment/201-serverless/index.mdx (1)
10-38: LGTM: serverless tip is clear and consistent with related pagesAccurately describes enabling
queryCompiler+driverAdapters, expected outcomes, and where it helps. Consistent with cross-linked docs.content/200-orm/200-prisma-client/500-deployment/301-edge/index.mdx (1)
12-33: LGTM: clear callout for running without Rust engines on edgeContent is accurate and aligns with the broader docs pattern in this PR.
content/200-orm/200-prisma-client/500-deployment/301-edge/450-deploy-to-cloudflare.mdx (1)
12-33: LGTM: Cloudflare tip is correct and well-placedAccurately explains enabling
queryCompiler+driverAdaptersand links to details. Examples further down already show adapter usage, so this is cohesive.content/200-orm/200-prisma-client/000-setup-and-configuration/010-generating-prisma-client.mdx (1)
15-37: LGTM: great addition to generation pageClear explanation of running Prisma Client without Rust engines, with correct generator snippet and required flags. The link to the dedicated page is helpful.
content/200-orm/200-prisma-client/500-deployment/201-serverless/300-deploy-to-vercel.mdx (1)
15-37: LGTM: Vercel guide tip is accurate and consistentThe tip is consistent with other deployment docs and appropriately references
queryCompiler+driverAdapters.content/200-orm/200-prisma-client/500-deployment/001-deploy-prisma.mdx (1)
12-13: No changes needed forqueryCompilerguidanceI’ve confirmed that as of late July–August 2025, Prisma’s Rust-free
queryCompilerremains in Preview (GA still targeted for June–August 2025) and continues to require thedriverAdapterspreview feature alongside it. The existing tip pointing to v6.7.0 Preview is still accurate—no updates required.content/200-orm/200-prisma-client/500-deployment/index.mdx (1)
43-43: LGTM on section listing
<Subsections depth="3" />is consistent with the page structure.
content/200-orm/200-prisma-client/500-deployment/201-serverless/400-deploy-to-aws-lambda.mdx
Show resolved
Hide resolved
content/200-orm/200-prisma-client/500-deployment/301-edge/550-deploy-to-deno-deploy.mdx
Show resolved
Hide resolved
...0-prisma-client/700-debugging-and-troubleshooting/245-troubleshooting-binary-size-issues.mdx
Show resolved
Hide resolved
Deploying docs with
|
| Latest commit: |
6e82d9c
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://94a8377c.docs-51g.pages.dev |
| Branch Preview URL: | https://dc-4641.docs-51g.pages.dev |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (3)
content/200-orm/200-prisma-client/500-deployment/301-edge/550-deploy-to-deno-deploy.mdx (3)
13-17: Tighten phrasing in the info callout“in conjunction with” is wordy. Suggest a concise alternative.
-This guide demonstrates how to deploy an application to Deno Deploy in conjunction with a Prisma Postgres database, but you can also use [your own database with Prisma Accelerate](/accelerate/getting-started#prerequisites). +This guide demonstrates how to deploy an application to Deno Deploy alongside a Prisma Postgres database, and you can also use [your own database with Prisma Accelerate](/accelerate/getting-started#prerequisites).
21-24: Clarify that CLI tools also avoid Rust engines with queryCompilerTo prevent confusion, explicitly note that prisma migrate/db pull also don’t download Rust engines when queryCompiler is enabled (v6.7.0+).
-**When enabled, Prisma Client is generated without a Rust-based query engine binary**, reducing build artifacts and removing native binary dependencies: +**When enabled, Prisma Client is generated without a Rust-based query engine binary**, reducing build artifacts and removing native binary dependencies: + +Additionally, Prisma CLI commands (for example, `prisma migrate` and `prisma db pull`) do not download or use Rust engines when `queryCompiler` is enabled.
25-31: Generator snippet now matches Deno usage — niceProvider changed to prisma-client and runtime=deno is correct for this page. Optionally mirror the later section by adding an output line for consistency.
generator client { provider = "prisma-client" runtime = "deno" previewFeatures = ["queryCompiler", "driverAdapters"] + # Optional: align with the section below + # output = "../generated/prisma" }
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
content/200-orm/200-prisma-client/500-deployment/201-serverless/400-deploy-to-aws-lambda.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/301-edge/550-deploy-to-deno-deploy.mdx(1 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
- content/200-orm/200-prisma-client/500-deployment/201-serverless/400-deploy-to-aws-lambda.mdx
🧰 Additional context used
🧠 Learnings (2)
📓 Common learnings
Learnt from: ankur-arch
PR: prisma/docs#7066
File: content/200-orm/200-prisma-client/700-debugging-and-troubleshooting/245-troubleshooting-binary-size-issues.mdx:8-22
Timestamp: 2025-08-11T09:40:55.220Z
Learning: When the queryCompiler preview feature is enabled in Prisma ORM (v6.7.0+), it does not require Rust engines for CLI tools like `prisma migrate` or `prisma db pull`. The previous understanding that CLI tools would still need Rust binaries even with queryCompiler enabled is incorrect.
📚 Learning: 2025-08-11T09:40:55.220Z
Learnt from: ankur-arch
PR: prisma/docs#7066
File: content/200-orm/200-prisma-client/700-debugging-and-troubleshooting/245-troubleshooting-binary-size-issues.mdx:8-22
Timestamp: 2025-08-11T09:40:55.220Z
Learning: When the queryCompiler preview feature is enabled in Prisma ORM (v6.7.0+), it does not require Rust engines for CLI tools like `prisma migrate` or `prisma db pull`. The previous understanding that CLI tools would still need Rust binaries even with queryCompiler enabled is incorrect.
Applied to files:
content/200-orm/200-prisma-client/500-deployment/301-edge/550-deploy-to-deno-deploy.mdx
🪛 LanguageTool
content/200-orm/200-prisma-client/500-deployment/301-edge/550-deploy-to-deno-deploy.mdx
[style] ~15-~15: ‘in conjunction with’ might be wordy. Consider a shorter alternative.
Context: ...to deploy an application to Deno Deploy in conjunction with a Prisma Postgres database, but you can...
(EN_WORDINESS_PREMIUM_IN_CONJUNCTION_WITH)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (3)
- GitHub Check: runner / linkspector
- GitHub Check: Check internal links
- GitHub Check: Lost Pixel
🔇 Additional comments (1)
content/200-orm/200-prisma-client/500-deployment/301-edge/550-deploy-to-deno-deploy.mdx (1)
33-38: Ignore softened requirement;driverAdaptersis always required withqueryCompilerThe Prisma docs and implementation confirm that whenever
queryCompileris enabled, you must also enable thedriverAdapterspreview feature—this applies equally to Prisma Accelerate/Data Proxy flows and direct driver connections. The original suggestion to make it conditional only for “direct DB connections” is incorrect.Suggested update for clarity and edge guidance:
File: content/200-orm/200-prisma-client/500-deployment/301-edge/550-deploy-to-deno-deploy.mdx Lines: 33-38 -Note that the [`driverAdapters`](/orm/overview/databases/database-drivers#driver-adapters) Preview feature is **required** alongside `queryCompiler`. +Note that the [`driverAdapters`](/orm/overview/databases/database-drivers#driver-adapters) Preview feature is **required** alongside `queryCompiler`. When using this architecture: * No Rust query engine binary is downloaded or shipped. -* The database connection pool is maintained by the native JS database driver you install (e.g., `@prisma/adapter-pg` for PostgreSQL). +* Connections are handled by the adapter and its underlying driver. + On Deno Deploy and other edge runtimes, install an HTTP-based adapter such as: + - `@prisma/adapter-neon` (Neon) + - `@prisma/adapter-libsql` (libSQL/Turso)Likely an incorrect or invalid review comment.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🔭 Outside diff range comments (1)
content/200-orm/200-prisma-client/500-deployment/201-serverless/500-deploy-to-netlify.mdx (1)
39-62: Avoid contradictory guidance with queryCompiler: gate binaryTargets behind a noteIf readers choose the no-Rust path, the binaryTargets section does not apply. Add an admonition so they don’t configure unnecessary targets.
## Binary targets in `schema.prisma` -Since your code is being deployed to Netlify's environment, which isn't necessarily the same as your development environment, you will need to set [`binaryTargets`](/orm/reference/prisma-schema-reference#binarytargets-options) in order to download the query engine that is compatible with the Netlify runtime during your build step. If you do not set this option, your deployed code will have an incorrect query engine deployed with it and will not function. +:::note +If you enabled the Rust-free path (`previewFeatures = ["queryCompiler", "driverAdapters"]`), you can skip this section — no Rust query engine binary is downloaded and `binaryTargets` is not required. +::: + +Since your code is being deployed to Netlify's environment, which isn't necessarily the same as your development environment, you will need to set [`binaryTargets`](/orm/reference/prisma-schema-reference#binarytargets-options) to download the query engine compatible with the Netlify runtime during your build step. If you do not set this option, your deployed code will have an incorrect query engine and will not function.
♻️ Duplicate comments (1)
content/200-orm/200-prisma-client/500-deployment/301-edge/550-deploy-to-deno-deploy.mdx (1)
19-40: Align the tip with Deno context: adapter example and optional output line
- The parenthetical
@prisma/adapter-pgexample doesn’t fit this Deno + Prisma Postgres guide; suggest removing or replacing with wording consistent with Prisma Postgres/Accelerate.- Optionally mirror the later generator by adding
output = "../generated/prisma"here for consistency.- Add that CLI also avoids Rust engines with queryCompiler.
:::tip Use Prisma ORM without Rust binaries If Prisma's Rust engine binaries cause large bundle sizes, slow builds, or deployment issues (for example, in serverless or edge environments), you can switch to the [`queryCompiler`](/orm/prisma-client/setup-and-configuration/no-rust-engine) Preview feature introduced in [v6.7.0](https://pris.ly/release/6.7.0). **When enabled, Prisma Client is generated without a Rust-based query engine binary**, reducing build artifacts and removing native binary dependencies: ```prisma generator client { provider = "prisma-client" runtime = "deno" + output = "../generated/prisma" previewFeatures = ["queryCompiler", "driverAdapters"] }Note that the
driverAdaptersPreview feature is required alongsidequeryCompiler.
When using this architecture:
- No Rust query engine binary is downloaded or shipped.
-* The database connection pool is maintained by the native JS database driver you install (e.g.,@prisma/adapter-pgfor PostgreSQL).
+* The database connection pool is maintained by your configured data access layer (e.g., Prisma Postgres via Accelerate, or an edge-compatible driver/adapter as applicable).
+* Prisma CLI commands (e.g.,prisma migrate,prisma db pull,prisma generate) also run without downloading Rust engines whenqueryCompileris enabled.This setup can simplify deployments in serverless or edge runtimes. Learn more in the docs here. To understand the reasoning behind eventually removing the Rust engine from Prisma ORM, read our blog post.
:::</blockquote></details> </blockquote></details> <details> <summary>🧹 Nitpick comments (6)</summary><blockquote> <details> <summary>content/200-orm/200-prisma-client/500-deployment/201-serverless/500-deploy-to-netlify.mdx (2)</summary><blockquote> `11-33`: **Clarify that CLI also runs without Rust engines when queryCompiler is enabled** Add a note that prisma migrate / db pull / generate won’t download Rust engines with queryCompiler, to set correct expectations. ```diff :::tip Use Prisma ORM without Rust binaries If Prisma’s Rust engine binaries cause large bundle sizes, slow builds, or deployment issues (for example, in serverless or edge environments), you can switch to the [`queryCompiler`](/orm/prisma-client/setup-and-configuration/no-rust-engine) Preview feature introduced in [v6.7.0](https://pris.ly/release/6.7.0). **When enabled, Prisma Client is generated without a Rust-based query engine binary**, reducing build artifacts and removing native binary dependencies: ```prisma generator client { provider = "prisma-client-js" previewFeatures = ["queryCompiler", "driverAdapters"] }Note that the
driverAdaptersPreview feature is required alongsidequeryCompiler.
When using this architecture:
- No Rust query engine binary is downloaded or shipped.
- The database connection pool is maintained by the native JS database driver you install (e.g.,
@prisma/adapter-pgfor PostgreSQL).
+* Prisma CLI commands (e.g.,prisma migrate,prisma db pull,prisma generate) also run without downloading Rust engines whenqueryCompileris enabled.This setup can simplify deployments in serverless or edge runtimes. Learn more in the docs here. To understand the reasoning behind eventually removing the Rust engine from Prisma ORM, read our blog post.
:::
--- `66-66`: **Tighten phrasing (“in order to” → “to”)** Minor wording improvement. ```diff -We recommend keeping `.env` files in your `.gitignore` in order to prevent leakage of sensitive connection strings. Instead, you can use the Netlify CLI to [import values into netlify directly](https://docs.netlify.com/environment-variables/get-started/#import-variables-with-the-netlify-cli). +We recommend keeping `.env` files in your `.gitignore` to prevent leakage of sensitive connection strings. Instead, you can use the Netlify CLI to [import values into Netlify directly](https://docs.netlify.com/environment-variables/get-started/#import-variables-with-the-netlify-cli).content/200-orm/200-prisma-client/500-deployment/301-edge/index.mdx (1)
12-33: Use an edge-compatible adapter in the example and mention CLI is Rust-free“@prisma/adapter-pg” isn’t edge-compatible. Prefer an edge adapter example and add a note that CLI also avoids Rust engines with queryCompiler.
:::tip Use Prisma ORM without Rust binaries If Prisma's Rust engine binaries cause large bundle sizes, slow builds, or deployment issues (for example, in serverless or edge environments), you can switch to the [`queryCompiler`](/orm/prisma-client/setup-and-configuration/no-rust-engine) Preview feature introduced in [v6.7.0](https://pris.ly/release/6.7.0). **When enabled, Prisma Client is generated without a Rust-based query engine binary**, reducing build artifacts and removing native binary dependencies: ```prisma generator client { provider = "prisma-client-js" previewFeatures = ["queryCompiler", "driverAdapters"] }Note that the
driverAdaptersPreview feature is required alongsidequeryCompiler.
When using this architecture:
- No Rust query engine binary is downloaded or shipped.
-* The database connection pool is maintained by the native JS database driver you install (e.g.,@prisma/adapter-pgfor PostgreSQL).
+* The database connection pool is maintained by the native JS driver you install (for edge, use an edge-compatible adapter such as@prisma/adapter-neon,@prisma/adapter-planetscale, or@libsql/client).
+* Prisma CLI commands (e.g.,prisma migrate,prisma db pull,prisma generate) also run without downloading Rust engines whenqueryCompileris enabled.-This setup can simplify deployments in serverless or edge runtimes. Learn more in the docs here. To understand the reasoning behind eventually removing the Rust engine from Prisma ORM, read our blog post.
+This setup can simplify deployments in serverless or edge runtimes. Learn more in the docs here and about edge-compatible drivers. To understand the reasoning behind eventually removing the Rust engine from Prisma ORM, read our blog post.:::
</blockquote></details> <details> <summary>content/200-orm/200-prisma-client/500-deployment/301-edge/485-deploy-to-vercel.mdx (1)</summary><blockquote> `14-35`: **Tailor adapter example for Vercel Edge and note CLI is Rust-free** On Vercel Edge, `pg` isn’t supported. Use an edge adapter in the example, and add a note that CLI doesn’t download Rust engines with queryCompiler. ```diff :::tip Use Prisma ORM without Rust binaries If Prisma's Rust engine binaries cause large bundle sizes, slow builds, or deployment issues (for example, in serverless or edge environments), you can switch to the [`queryCompiler`](/orm/prisma-client/setup-and-configuration/no-rust-engine) Preview feature introduced in [v6.7.0](https://pris.ly/release/6.7.0). **When enabled, Prisma Client is generated without a Rust-based query engine binary**, reducing build artifacts and removing native binary dependencies: ```prisma generator client { provider = "prisma-client-js" previewFeatures = ["queryCompiler", "driverAdapters"] }Note that the
driverAdaptersPreview feature is required alongsidequeryCompiler.
When using this architecture:
- No Rust query engine binary is downloaded or shipped.
-* The database connection pool is maintained by the native JS database driver you install (e.g.,@prisma/adapter-pgfor PostgreSQL).
+* The database connection pool is maintained by the native JS driver you install (for Vercel Edge, use an edge-compatible adapter such as@prisma/adapter-neon,@prisma/adapter-planetscale, or@libsql/client).
+* Prisma CLI commands (e.g.,prisma migrate,prisma db pull,prisma generate) also run without downloading Rust engines whenqueryCompileris enabled.This setup can simplify deployments in serverless or edge runtimes. Learn more in the docs here. To understand the reasoning behind eventually removing the Rust engine from Prisma ORM, read our blog post.
:::
</blockquote></details> <details> <summary>content/200-orm/200-prisma-client/500-deployment/301-edge/550-deploy-to-deno-deploy.mdx (2)</summary><blockquote> `138-138`: **Grammar: singular “side effect”** Minor grammar fix. ```diff -At this point, the command has an additional side effects. The command installs Prisma Client and creates the `package.json` file for the project. +At this point, the command has an additional side effect. The command installs Prisma Client and creates the `package.json` file for the project.
247-247: Typo: “re-dployment” → “re-deployment”Fix the typo.
-You have to add some code and create another commit to trigger a re-dployment. +You have to add some code and create another commit to trigger a re-deployment.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (13)
content/200-orm/200-prisma-client/500-deployment/201-serverless/150-deploy-to-azure-functions.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/201-serverless/300-deploy-to-vercel.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/201-serverless/400-deploy-to-aws-lambda.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/201-serverless/500-deploy-to-netlify.mdx(3 hunks)content/200-orm/200-prisma-client/500-deployment/201-serverless/index.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/301-edge/100-overview.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/301-edge/450-deploy-to-cloudflare.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/301-edge/485-deploy-to-vercel.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/301-edge/550-deploy-to-deno-deploy.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/301-edge/index.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/700-deploy-to-a-different-os.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/index.mdx(1 hunks)content/200-orm/200-prisma-client/700-debugging-and-troubleshooting/245-troubleshooting-binary-size-issues.mdx(1 hunks)
✅ Files skipped from review due to trivial changes (1)
- content/200-orm/200-prisma-client/500-deployment/700-deploy-to-a-different-os.mdx
🚧 Files skipped from review as they are similar to previous changes (8)
- content/200-orm/200-prisma-client/700-debugging-and-troubleshooting/245-troubleshooting-binary-size-issues.mdx
- content/200-orm/200-prisma-client/500-deployment/201-serverless/300-deploy-to-vercel.mdx
- content/200-orm/200-prisma-client/500-deployment/301-edge/450-deploy-to-cloudflare.mdx
- content/200-orm/200-prisma-client/500-deployment/index.mdx
- content/200-orm/200-prisma-client/500-deployment/201-serverless/400-deploy-to-aws-lambda.mdx
- content/200-orm/200-prisma-client/500-deployment/201-serverless/150-deploy-to-azure-functions.mdx
- content/200-orm/200-prisma-client/500-deployment/301-edge/100-overview.mdx
- content/200-orm/200-prisma-client/500-deployment/201-serverless/index.mdx
🧰 Additional context used
🧠 Learnings (2)
📓 Common learnings
Learnt from: ankur-arch
PR: prisma/docs#7066
File: content/200-orm/200-prisma-client/700-debugging-and-troubleshooting/245-troubleshooting-binary-size-issues.mdx:8-22
Timestamp: 2025-08-11T09:40:55.220Z
Learning: When the queryCompiler preview feature is enabled in Prisma ORM (v6.7.0+), it does not require Rust engines for CLI tools like `prisma migrate` or `prisma db pull`. The previous understanding that CLI tools would still need Rust binaries even with queryCompiler enabled is incorrect.
📚 Learning: 2025-08-11T09:40:55.220Z
Learnt from: ankur-arch
PR: prisma/docs#7066
File: content/200-orm/200-prisma-client/700-debugging-and-troubleshooting/245-troubleshooting-binary-size-issues.mdx:8-22
Timestamp: 2025-08-11T09:40:55.220Z
Learning: When the queryCompiler preview feature is enabled in Prisma ORM (v6.7.0+), it does not require Rust engines for CLI tools like `prisma migrate` or `prisma db pull`. The previous understanding that CLI tools would still need Rust binaries even with queryCompiler enabled is incorrect.
Applied to files:
content/200-orm/200-prisma-client/500-deployment/301-edge/index.mdxcontent/200-orm/200-prisma-client/500-deployment/301-edge/485-deploy-to-vercel.mdxcontent/200-orm/200-prisma-client/500-deployment/301-edge/550-deploy-to-deno-deploy.mdxcontent/200-orm/200-prisma-client/500-deployment/201-serverless/500-deploy-to-netlify.mdx
🪛 LanguageTool
content/200-orm/200-prisma-client/500-deployment/201-serverless/500-deploy-to-netlify.mdx
[style] ~66-~66: Consider a more concise word here.
Context: ...eping .env files in your .gitignore in order to prevent leakage of sensitive connection...
(IN_ORDER_TO_PREMIUM)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (3)
- GitHub Check: runner / linkspector
- GitHub Check: Check internal links
- GitHub Check: Lost Pixel
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
♻️ Duplicate comments (1)
content/200-orm/200-prisma-client/500-deployment/301-edge/550-deploy-to-deno-deploy.mdx (1)
25-31: Generator snippet now correctly targets Deno (nice fix).Provider set to "prisma-client" with runtime "deno" matches the guide’s Deno setup.
🧹 Nitpick comments (4)
content/200-orm/200-prisma-client/500-deployment/301-edge/550-deploy-to-deno-deploy.mdx (2)
33-39: Clarify driver adapter guidance for Deno Deploy.The example mentions installing a native JS driver like
@prisma/adapter-pg. On Deno Deploy, direct TCP DB drivers typically aren’t usable; you’re already using Prisma Postgres/Accelerate which handles pooling over HTTP. Suggest narrowing the example to Node/serverless and calling out Deno explicitly to avoid confusion.- * The database connection pool is maintained by the native JS database driver you install (e.g., `@prisma/adapter-pg` for PostgreSQL). + * In Node/serverless (not Edge/Deno Deploy), the database connection pool is maintained by the native JS driver you install (for example, `@prisma/adapter-pg` for PostgreSQL). + * On Deno Deploy, prefer Prisma Postgres or Prisma Accelerate (as used in this guide), which provide managed, HTTP-based connection management compatible with the Deno runtime.
19-41: Optional: call out that CLI commands also run without Rust when queryCompiler is enabled.To set correct expectations (and per current behavior), add a sentence that Prisma CLI commands (e.g.,
prisma migrate,prisma db pull) do not require Rust engines whenqueryCompileris enabled.**When enabled, Prisma Client is generated without a Rust-based query engine binary**, reducing build artifacts and removing native binary dependencies: + CLI commands like `prisma migrate` and `prisma db pull` also run without Rust engines when `queryCompiler` is enabled.content/200-orm/200-prisma-client/500-deployment/201-serverless/500-deploy-to-netlify.mdx (2)
30-33: Remove duplicate “Learn more” sentence.The “Learn more in the docs here” line appears twice back-to-back.
-This setup can simplify deployments in serverless or edge runtimes. Learn more in the [docs here](/orm/prisma-client/setup-and-configuration/no-rust-engine). - -Learn more in the [docs here](/orm/prisma-client/setup-and-configuration/no-rust-engine). Curious why we're moving away from the Rust engine? Take a look at why we're transitioning from Rust binary engines to an all-TypeScript approach for a faster, lighter Prisma ORM in our [blog post](https://www.prisma.io/blog/try-the-new-rust-free-version-of-prisma-orm-early-access). +This setup can simplify deployments in serverless or edge runtimes. Learn more in the [docs here](/orm/prisma-client/setup-and-configuration/no-rust-engine). Curious why we're moving away from the Rust engine? Take a look at why we're transitioning from Rust binary engines to an all-TypeScript approach for a faster, lighter Prisma ORM in our [blog post](https://www.prisma.io/blog/try-the-new-rust-free-version-of-prisma-orm-early-access).
68-68: Style: simplify wording.Use “to prevent” instead of “in order to prevent”.
-We recommend keeping `.env` files in your `.gitignore` in order to prevent leakage of sensitive connection strings. +We recommend keeping `.env` files in your `.gitignore` to prevent leakage of sensitive connection strings.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (14)
content/200-orm/200-prisma-client/500-deployment/001-deploy-prisma.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/201-serverless/150-deploy-to-azure-functions.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/201-serverless/300-deploy-to-vercel.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/201-serverless/400-deploy-to-aws-lambda.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/201-serverless/500-deploy-to-netlify.mdx(3 hunks)content/200-orm/200-prisma-client/500-deployment/201-serverless/index.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/301-edge/100-overview.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/301-edge/450-deploy-to-cloudflare.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/301-edge/485-deploy-to-vercel.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/301-edge/550-deploy-to-deno-deploy.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/301-edge/index.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/700-deploy-to-a-different-os.mdx(1 hunks)content/200-orm/200-prisma-client/500-deployment/index.mdx(1 hunks)content/200-orm/200-prisma-client/700-debugging-and-troubleshooting/245-troubleshooting-binary-size-issues.mdx(1 hunks)
✅ Files skipped from review due to trivial changes (1)
- content/200-orm/200-prisma-client/500-deployment/index.mdx
🚧 Files skipped from review as they are similar to previous changes (11)
- content/200-orm/200-prisma-client/500-deployment/301-edge/450-deploy-to-cloudflare.mdx
- content/200-orm/200-prisma-client/500-deployment/201-serverless/300-deploy-to-vercel.mdx
- content/200-orm/200-prisma-client/500-deployment/301-edge/485-deploy-to-vercel.mdx
- content/200-orm/200-prisma-client/500-deployment/700-deploy-to-a-different-os.mdx
- content/200-orm/200-prisma-client/500-deployment/201-serverless/150-deploy-to-azure-functions.mdx
- content/200-orm/200-prisma-client/500-deployment/201-serverless/400-deploy-to-aws-lambda.mdx
- content/200-orm/200-prisma-client/500-deployment/301-edge/index.mdx
- content/200-orm/200-prisma-client/700-debugging-and-troubleshooting/245-troubleshooting-binary-size-issues.mdx
- content/200-orm/200-prisma-client/500-deployment/201-serverless/index.mdx
- content/200-orm/200-prisma-client/500-deployment/301-edge/100-overview.mdx
- content/200-orm/200-prisma-client/500-deployment/001-deploy-prisma.mdx
🧰 Additional context used
🧠 Learnings (2)
📓 Common learnings
Learnt from: ankur-arch
PR: prisma/docs#7066
File: content/200-orm/200-prisma-client/700-debugging-and-troubleshooting/245-troubleshooting-binary-size-issues.mdx:8-22
Timestamp: 2025-08-11T09:40:55.220Z
Learning: When the queryCompiler preview feature is enabled in Prisma ORM (v6.7.0+), it does not require Rust engines for CLI tools like `prisma migrate` or `prisma db pull`. The previous understanding that CLI tools would still need Rust binaries even with queryCompiler enabled is incorrect.
📚 Learning: 2025-08-11T09:40:55.220Z
Learnt from: ankur-arch
PR: prisma/docs#7066
File: content/200-orm/200-prisma-client/700-debugging-and-troubleshooting/245-troubleshooting-binary-size-issues.mdx:8-22
Timestamp: 2025-08-11T09:40:55.220Z
Learning: When the queryCompiler preview feature is enabled in Prisma ORM (v6.7.0+), it does not require Rust engines for CLI tools like `prisma migrate` or `prisma db pull`. The previous understanding that CLI tools would still need Rust binaries even with queryCompiler enabled is incorrect.
Applied to files:
content/200-orm/200-prisma-client/500-deployment/301-edge/550-deploy-to-deno-deploy.mdxcontent/200-orm/200-prisma-client/500-deployment/201-serverless/500-deploy-to-netlify.mdx
🪛 LanguageTool
content/200-orm/200-prisma-client/500-deployment/201-serverless/500-deploy-to-netlify.mdx
[style] ~68-~68: Consider a more concise word here.
Context: ...eping .env files in your .gitignore in order to prevent leakage of sensitive connection...
(IN_ORDER_TO_PREMIUM)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (3)
- GitHub Check: Check internal links
- GitHub Check: runner / linkspector
- GitHub Check: Lost Pixel
🔇 Additional comments (1)
content/200-orm/200-prisma-client/500-deployment/201-serverless/500-deploy-to-netlify.mdx (1)
11-22: Netlify tip: generator snippet looks correct.Using
prisma-client-jsfor Netlify’s Node/serverless runtime is appropriate here.
content/200-orm/200-prisma-client/500-deployment/201-serverless/500-deploy-to-netlify.mdx
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
♻️ Duplicate comments (1)
content/200-orm/200-prisma-client/500-deployment/201-serverless/500-deploy-to-netlify.mdx (1)
11-35: Great callout; tighten copy, avoid duplication, and close the loop with binaryTargets and CLI tools.
The tip is solid and aligns with our Rust-free guidance. Two tweaks:
- Deduplicate “Learn more in the docs here” (Lines 30 and 32) and keep both the docs and blog links once.
- Add one sentence clarifying that with
queryCompilerenabled, CLI commands likeprisma migrateandprisma db pullalso do not require Rust engines (per v6.7.0+), which helps CI readers.To prevent confusion with the “Binary targets” section below, add a one-line note at that section’s top instructing readers using
queryCompiler+driverAdaptersto skip it. You already added a sentence at Line 30, but an inline note in the section header will further reduce misconfigurations.Apply this diff to remove duplication and keep both links while retaining the
binaryTargetsnote:-This setup can simplify deployments in serverless or edge runtimes. Learn more in the [docs here](/orm/prisma-client/setup-and-configuration/no-rust-engine). If you use this setup, you do not need to configure `binaryTargets` in your Prisma schema below. - -Learn more in the [docs here](/orm/prisma-client/setup-and-configuration/no-rust-engine). Curious why we're moving away from the Rust engine? Take a look at why we're transitioning from Rust binary engines to an all-TypeScript approach for a faster, lighter Prisma ORM in our [blog post](https://www.prisma.io/blog/try-the-new-rust-free-version-of-prisma-orm-early-access). +This setup can simplify deployments in serverless or edge runtimes. If you use this setup, you do not need to configure `binaryTargets` in your Prisma schema below. Learn more in the [docs](/orm/prisma-client/setup-and-configuration/no-rust-engine), and for background on the transition, read our [blog post](https://www.prisma.io/blog/try-the-new-rust-free-version-of-prisma-orm-early-access).Consider adding this one-liner after Line 25 to reflect CLI behavior with
queryCompiler(v6.7.0+):When `queryCompiler` is enabled, Prisma CLI commands (for example, `prisma migrate`, `prisma db pull`) also do not require Rust engines in your builds and CI.Additionally, at the top of the “Binary targets in
schema.prisma” section, add::::note If you’re using `queryCompiler` together with `driverAdapters`, you can skip this section—no Rust query engine or `binaryTargets` configuration is required. :::
🧹 Nitpick comments (2)
content/200-orm/200-prisma-client/500-deployment/201-serverless/500-deploy-to-netlify.mdx (2)
68-68: Style nit: prefer concise phrasing.Change “in order to prevent” to “to prevent”.
-We recommend keeping `.env` files in your `.gitignore` in order to prevent leakage of sensitive connection strings. Instead, you can use the Netlify CLI to [import values into netlify directly](https://docs.netlify.com/environment-variables/get-started/#import-variables-with-the-netlify-cli). +We recommend keeping `.env` files in your `.gitignore` to prevent leakage of sensitive connection strings. Instead, you can use the Netlify CLI to [import values into Netlify directly](https://docs.netlify.com/environment-variables/get-started/#import-variables-with-the-netlify-cli).
107-107: Minor clarity improvement (optional).“a different method” → “another method” reads smoother.
-If you are storing your database connection string and other environment variables in a different method, you will need to manually upload your environment variables to Netlify. +If you are storing your database connection string and other environment variables another way, you will need to manually upload your environment variables to Netlify.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
content/200-orm/200-prisma-client/500-deployment/201-serverless/500-deploy-to-netlify.mdx(3 hunks)
🧰 Additional context used
🧠 Learnings (2)
📓 Common learnings
Learnt from: ankur-arch
PR: prisma/docs#7066
File: content/200-orm/200-prisma-client/700-debugging-and-troubleshooting/245-troubleshooting-binary-size-issues.mdx:8-22
Timestamp: 2025-08-11T09:40:55.220Z
Learning: When the queryCompiler preview feature is enabled in Prisma ORM (v6.7.0+), it does not require Rust engines for CLI tools like `prisma migrate` or `prisma db pull`. The previous understanding that CLI tools would still need Rust binaries even with queryCompiler enabled is incorrect.
📚 Learning: 2025-08-11T09:40:55.220Z
Learnt from: ankur-arch
PR: prisma/docs#7066
File: content/200-orm/200-prisma-client/700-debugging-and-troubleshooting/245-troubleshooting-binary-size-issues.mdx:8-22
Timestamp: 2025-08-11T09:40:55.220Z
Learning: When the queryCompiler preview feature is enabled in Prisma ORM (v6.7.0+), it does not require Rust engines for CLI tools like `prisma migrate` or `prisma db pull`. The previous understanding that CLI tools would still need Rust binaries even with queryCompiler enabled is incorrect.
Applied to files:
content/200-orm/200-prisma-client/500-deployment/201-serverless/500-deploy-to-netlify.mdx
🪛 LanguageTool
content/200-orm/200-prisma-client/500-deployment/201-serverless/500-deploy-to-netlify.mdx
[style] ~68-~68: Consider a more concise word here.
Context: ...eping .env files in your .gitignore in order to prevent leakage of sensitive connection...
(IN_ORDER_TO_PREMIUM)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (3)
- GitHub Check: Check internal links
- GitHub Check: runner / linkspector
- GitHub Check: Lost Pixel
* feat: add more callouts to the rust-free prisma orm * fix: add refinements * fix: minor nits * fix: add note to blog * fix: add curious statements * fix: add cleanup
Summary by CodeRabbit