fix(deps): update prisma monorepo to v6 (major) #243
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
^5.16.1
->^6.1.0
^5.16.1
->^6.1.0
Release Notes
prisma/prisma (@prisma/client)
v6.1.0
Compare Source
Today we're releasing Prisma ORM version 6.1.0
In this version our
tracing
Preview feature is being graduated to GA!Highlights
Tracing goes GA
The
tracing
Preview feature is now stable. You now no longer have to includetracing
in your set of enabled preview features.generator client { provider = "prisma-client-js" - previewFeatures = ["tracing"] }
We have also changed some of the spans generated by Prisma Client. Previously, a trace would report the following spans:
Now, the following are reported:
Additionally, we have made a few changes to our dependencies:
@opentelemetry/api
is now a peer dependency instead of a regular dependencyregisterInstrumentations
in@opentelemetry/instrumentation
is now re-exported by@prisma/instrumentation
After upgrading to Prisma ORM 6.1.0 you will need to add
@opentelemetry/api
to your dependencies if you haven't already:You will also no longer need to have
@opentelemetry/instrumentation
if you only useregisterInstrumentations
. In this case you can importregisterInstrumentations
from@prisma/instrumentation
Bug fixes
Tracing related
As we're moving our
tracing
preview to GA, a number of issues have been resolved. Here are a few highlights:suppressTracing
Other issues
We also have a number of other issues that were resolved outside of our
tracing
feature.PrismaNeonHTTP
adapterfindUnique
returnsnull
when used instead ofPromise.all
Fixes and improvements
Prisma
TypeError: parentTracer.getSpanLimits is not a function
Span
constructorprisma:engine
spans do not respectsuppressTracing()
tracing: engine
spans don't pass throughSampler
prisma:client:operation
prisma:engine
spans are missing when there are multiplenew PrismaClient()
invocationsparentTracer.getSpanLimits is not a function
opentelemetry-sdk-trace-base
(e.g. Datadog tracer)traceparent
comments with multiple SQL statements@prisma/instrumentation
dependencies peer dependenciesdb.statement
attribute doesn't include thetraceparent
commentregisterInstrumentations
uses the global provider instead of the one passed inPrismaNeonHTTP
adapter breaks on some types e.g. timestampPrisma failed to detect the libssl/openssl version to use
Prisma Client
@prisma/instrumentation
Type Error:'InstrumentionNodeModuleDefintion' is not generic
v6.0.1
Compare Source
v6.0.0
Compare Source
We’re excited to share the Prisma ORM v6 release today 🎉
As this is a major release, it includes a few breaking changes that may affect your application. Before upgrading, we recommend that you check out our upgrade guide to understand the impact on your application.
If you want to have an overview of what we accomplished since v5, check out our announcement blog post: Prisma 6: Better Performance, More Flexibility & Type-Safe SQL.
🌟 Help us spread the word about Prisma by starring the repo ☝️ or posting on X about the release.
Breaking changes
Minimum supported Node.js versions
The new minimum supported Node.js versions for Prisma ORM v6 are:
There is no official support for Node.js <18.18.0, 19, 21, 23.
Minimum supported TypeScript version
The new minimum supported TypeScript version for Prisma ORM v6 is: 5.1.0.
Schema change for implicit m-n relations on PostgreSQL
If you're using PostgreSQL and are defining implicit many-to-many relations in your Prisma schema, Prisma ORM maintains the relation table for you under the hood. This relation table has
A
andB
columns to represent the tables of the models that are part of this relation.Previous versions of Prisma ORM used to create a unique index on these two columns. In Prisma v6, this unique index is changing to a primary key in order to simplify for the default replica identity behaviour.
If you're defining implicit m-n relations in your Prisma schema, the next migration you'll create will contain
ALTER TABLE
statements for all the relation tables that belong to these relations.Full-text search on PostgreSQL
The
fullTextSearch
Preview feature is promoted to General Availability only for MySQL. This means that if you're using PostgreSQL and currently make use of this Preview feature, you now need to use the newfullTextSearchPostgres
Preview feature.Usage of
Buffer
Prisma v6 replaces the usage of
Buffer
withUint8Array
to represent fields of typeBytes
. Make sure to replace all your occurrences of theBuffer
type with the newUint8Array
.Removed
NotFoundError
In Prisma v6, we removed the
NotFoundError
in favor ofPrismaClientKnownRequestError
with error codeP2025
infindUniqueOrThrow()
andfindFirstOrThrow()
. If you've relied on catchingNotFoundError
instances in your code, you need to adjust the code accordingly.New keywords that can't be used as model names:
async
,await
,using
With this release, you can't use
async
,await
andusing
as model names any more.Preview features promoted to General Availability
In this release, we are promoting a number of Preview features to General Availability.
fullTextIndex
If you use the full-text index feature in your app, you can now remove
fullTextIndex
from thepreviewFeatures
in your Prisma schema:generator client { provider = "prisma-client-js" - previewFeatures = ["fullTextIndex"] }
fullTextSearch
If you use the full-text search feature with MySQL in your app, you can now remove
fullTextSearch
from thepreviewFeatures
in your Prisma schema:generator client { provider = "prisma-client-js" - previewFeatures = ["fullTextSearch"] }
If you are using it with PostgreSQL, you need to update the name of the feature flag to
fullTextSearchPostgres
:New features
We are also releasing new features with this release:
prisma generate
's outputCompany news
🚀 Prisma Postgres is free during Early Access
In case you missed it: We recently launched Prisma Postgres, a serverless database with zero cold starts, a generous free tier, connection pooling, real-time events, and a lot more! It’s entirely free during the Early Access phase, try it now!
✨ Let us know what you think of Prisma ORM
We're always trying to improve! If you've recently used Prisma ORM, we'd appreciate hearing your thoughts about your experience via this 2min survey.
v5.22.0
Compare Source
Today, we are excited to share the
5.22.0
stable release 🎉🌟 Help us spread the word about Prisma by starring the repo ☝️ or posting on X about the release.
Highlights
Further Tracing Improvements
In our ongoing effort to stabilize the
tracing
Preview feature, we’ve made our spans compliant with OpenTelemetry Semantic Conventions for Database Client Calls. This should lead to better compatibility with tools such as DataDog and Sentry.We’ve also included numerous bug fixes that should make this Preview feature easier to work with.
Metrics bug fix
Occasionally, connection pool metrics would become negative or grow unbounded. In this release, connection pool metrics should stay consistent.
Connection Pool Timeout fix
In a specific case, there could be issues where fetching a new connection from the connection pool would time out, regardless of the state of the application and connection pool. If you have experience connection pool issues accessing a PostgreSQL database with TLS encryption in a resource-constrained environment (such as Function-as-a-Service offerings or very small VPS) this should resolve those issues.
Special thanks to @youxq for their pull request and help resolving this issue!
Join us
Looking to make an impact on Prisma in a big way? We're hiring!
Learn more on our careers page: https://www.prisma.io/careers
Fixes and improvements
Prisma Migrate
@unique
inschema.prisma
does not generate SQL to do soPrisma
libquery_engine-debian-openssl-1.1.x.so.node
prisma:engine:connection
spans have no parentprisma:engine:itx_runner
are disconnected from the treeitx_runner
span and it's children are missing sometimeslibquery_engine-debian-openssl-1.1.x.so.node
Credits
Huge thanks to @tmm1, @Takur0, @hinaloe, @andyjy, and @youxq for helping!
v5.21.1
Compare Source
v5.21.0
Compare Source
Today, we are excited to share the
5.21.0
release 🎉🌟 Help us spread the word about Prisma by starring the repo ☝️ or posting on X about the release.
Highlights
Better support for tracing in MongoDB
The
tracing
Preview feature now has full support for MongoDB with previously missing functionality now implemented. This is a part of the ongoing effort to stabilize this Preview feature and release it in General Availability.tracing
is a Preview feature that enables built-in support for OpenTelemetry instrumentation inside the Prisma Client and provides deep insights into the performance and timing of your queries. See our documentation for more information.For an easy to use and zero-configuration tracing instrumentation tool with a dashboard that provides an overview of your queries, statistics, and AI-powered recommendations, try Prisma Optimize.
WebAssembly engine size decrease for edge functions
Due to recent changes, some users experienced a steep increase of the bundle size in Prisma 5.20 when using the
driverAdapters
Preview feature, going over the 1 MB limit on the free tier of Cloudflare Workers. This has now been fixed.Fixes and improvements
Prisma Engines
Credits
Huge thanks to @austin-tildei, @LucianBuzzo, @mcuelenaere, @pagewang0, @key-moon, @pranayat, @yubrot, @skyzh for helping!
v5.20.0
Compare Source
🌟 Help us spread the word about Prisma by starring the repo or posting on X about the release. 🌟
Highlights
strictUndefinedChecks
in PreviewWith Prisma ORM 5.20.0, the Preview feature
strictUndefinedChecks
will disallow any value that is explicitlyundefined
and will be a runtime error. This change is direct feedback from this GitHub issue and follows our latest proposal on the same issue.To demonstrate the change, take the following code snippet:
In Prisma ORM 5.19.0 and below, this could result in unintended behavior. In Prisma ORM 5.20.0, if the
strictUndefinedChecks
Preview feature is enabled, you will get a runtime error instead:We have also introduced the
Prisma.skip
symbol, which will allow you to get the previous behavior if desired.From Prisma ORM 5.20.0 onward, we recommend enabling
strictUndefinedChecks
, along with the TypeScript compiler optionexactOptionalPropertyTypes
, which will help catch cases of undefined values at compile time. Together, these two changes will help protect your Prisma queries from potentially destructive behavior.strictUndefinedChecks
will be a valid Preview feature for the remainder of Prisma ORM 5. With our next major version, this behavior will become the default and the Preview feature will be “graduated” to Generally Available.If you have any questions or feedback about
strictUndefinedChecks
, please ask/comment in our dedicated Preview feature GitHub discussion.typedSql
bug fixThank you to everyone who has tried out our
typedSql
Preview feature and provided feedback! This release has a quick fix for typescript files generated when Prisma Schema enums had hyphens.Fixes and improvements
Prisma
not available
.generate
when typedSql is enabled and enum contains hyphens.@prisma/internals
didn't listts-toolbelt
in dependencies.$extends
prevents model comments from being passed to TypeScriptPrisma Engines
Credits
Huge thanks to @mcuelenaere, @pagewang0, @key-moon, @pranayat, @yubrot, @thijmenjk, @mydea, @HRM, @haaawk, @baileywickham, @brian-dlee, @nickcarnival, @eruditmorina, @nzakas, and @gutyerrez for helping!
v5.19.1
Compare Source
Today, we are issuing the
5.19.1
patch release.What's Changed
We've fixed the following issues:
Full Changelog: prisma/prisma@5.19.0...5.19.x, prisma/prisma-engines@5.19.0...5.19.x
v5.19.0
Compare Source
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 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 newsql
subdirectory of yourprisma
directory. These queries are then checked by Prisma during using the new--sql
flag ofprisma generate
and added to your client for use in your code.To get started with TypedSQL:
Make sure that you have the latest version of
prisma
and@prisma/client
installed:Enable the
typedSql
Preview feature in your Prisma Schema.Create a
sql
subdirectory of yourprisma
directory.You can now add
.sql
files to thesql
directory! Each file can contain one sql query and the name must be a valid JS identifier. For this example, say you had the filegetUsersWithPosts.sql
with the following contents:Import your SQL query into your code with the
@prisma/client/sql
import: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.
For docs, check out our new TypedSQL section.
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 and https://github.com/prisma/prisma/pull/24922max
,min
,eq
, etc in queries when using Cloudflare D1.BigInt
IDs whenrelationMode="prisma"
was enabled and Cloudflare D1 was being used.Joins
some
clauses when therelationJoins
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!
prisma-engines
Rust codebase. TypeScript knowledge (or, again, a desire to learn) is a plus.Credits
Huge thanks to @mcuelenaere, @pagewang0, @Druue, @key-moon, @Jolg42, @pranayat, @ospfranco, @yubrot, @skyzh for helping!
v5.18.0
Compare Source
🌟 Help us spread the word about Prisma by starring the repo or tweeting about the release. 🌟
Highlights
Native support for UUIDv7
Previous to this release, the Prisma Schema function
uuid()
did not accept any arguments and created a UUIDv4 ID. While sufficient in many cases, UUIDv4 has a few drawbacks, namely that it is not temporally sortable.UUIDv7 attempts to resolve this issue, making it easy to temporally sort your database rows by ID!
To support this, we’ve updated the
uuid()
function in Prisma Schema to accept an optional, integer argument. Right now, the only valid values are4
and7
, with4
being the default.Bug squashing
We’ve squashed a number of bugs this release, special thanks to everyone who helped us! A few select highlights are:
prismaSchemaFolder
.Json[]
fields will now return[]
instead ofnull
when accessed through a join using therelationJoins
Preview feature.Fixes and improvements
Prisma
Language tools (e.g. VS Code)
Credits
Huge thanks to @mcuelenaere, @pagewang0, @Druue, @key-moon, @Jolg42, @pranayat, @ospfranco, @yubrot, @skyzh, @haaawk for helping!
v5.17.0
Compare Source
🌟 Help us spread the word about Prisma by starring the repo or tweeting about the release. 🌟
Highlights
VSCode extension improvements
We’re happy to introduce some cool new features that will make your experience with the Prisma VSCode extension even better!
Find references across schema files
The ability to hop between references of a given symbol is really useful in application code and now with the introduction of multi-file schema, we think it’s the perfect time to bring this feature to the VSCode extension!
With the 5.17.0 release, you’ll now have the ability to use the native “find references” feature to find any usage of a given symbol
Added context on hover
When hovering over a symbol that references a view, type, enum, or any other block with multiple values, you’ll now see a handy pop out that shows what is in that block at a glance.
Additional quick fixes
We’ve taken some fixes made by the
prisma format
cli command and made them quick fixes available to the VSCode Extension. Now, when you have forget a back relation or relation scalar field, you’ll now see in real time what is wrong and have the option to fix it via the extension.QueryRaw performance improvements
We’ve changed the response format of
queryRaw
to decrease its average size which reduces serialization CPU overhead.When querying large data sets, we expect you to see improved memory usage and up to 2x performance improvements.
Fixes and improvements
Prisma Client
This is the 10th instance of Prisma Client being started. Make sure this is intentional.
warningPrisma
Language tools (e.g. VS Code)
Credits
Huge thanks to @key-moon, @pranayat, @yubrot, @skyzh for helping!
v5.16.2
Compare Source
Today, we are issuing the 5.16.2 patch release to fix an issue in Prisma client.
Fix in Prisma Client
Configuration
📅 Schedule: Branch creation - "before 6am" in timezone Asia/Jakarta, Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, 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.