fix(deps): update prisma monorepo to v5.10.2
This MR contains the following updates:
Package | Type | Update | Change |
---|---|---|---|
@prisma/client (source) | dependencies | minor | 5.9.0 -> 5.10.2 |
prisma (source) | devDependencies | minor | 5.9.0 -> 5.10.2 |
⚠ WarningSome dependencies could not be looked up. Check the Dependency Dashboard for more information.
Release Notes
prisma/prisma (@prisma/client)
v5.10.2
Today, we are issuing the 5.10.2
patch release.
Fix in Prisma CLI
v5.10.1
Today, we are issuing the 5.10.1
patch release.
Fix in Prisma Client / Prisma CLI
v5.10.0
Today, we are excited to share the 5.10.0
stable release
Highlights
Optimized relation queries in MySQL (Preview)
This release brings the optimizations for relation queries from the previous releases to MySQL as well! This means that by enabling the relationJoins
Preview feature with the mysql
database provider, you now also get access to the relationLoadStrategy
option in relation queries that let you choose whether you want to merged relations on the application- or database-level.
If you enable the relationJoins
Preview feature, you can choose between the join
and query
options:
-
join
(default): Sends a single query to the database and joins the data on the database-level. -
query
: Sends multiple queries to the database and joins the data on the application-level.
To get started, enable the Preview feature in your Prisma schema:
// schema.prisma
generator client {
provider = "prisma-client-js"
previewFeatures = ["relationJoins"]
}
Be sure to re-generate Prisma Client afterwards:
npx prisma generate
And finally, specify the relation loading strategy for your relation query via the relationLoadStrategy
option as follows:
await prisma.user.findMany({
relationLoadStrategy: 'join', // or 'query'
include: {
posts: true,
},
})
Note that in the example above, the relationLoadStrategy
could be omitted altogether because join
is used as the default value.
A few notes about relationLoadStrategy
support on MySQL:
-
relationLoadStrategy
is supported for MySQL v8.0.14 and higher. MariaDB is not supported. - Prisma ORM uses correlated sub-queries for MySQL (as opposed to
LATERAL
JOINs which are used on PostgreSQL).
PrismaClient
constructor
Configure transaction options in the This feature enables you to configure the following transaction options on a global level via the PrismaClient
constructor:
-
isolationLevel
: Sets the transaction isolation level. By default, this is set to the value currently configured in your database. -
timeout
: The maximum amount of time the interactive transaction can run before being canceled and rolled back. The default value is 5 seconds. -
maxWait
: The maximum amount of time Prisma Client will wait to acquire a transaction from the database. The default value is 2 seconds.
Here is an example of how you can set this value globally for all transactions:
const prisma = new PrismaClient({
transactionOptions: {
isolationLevel: 'ReadCommitted',
timeout: 1_000, // 1 sec
maxWait: 2_000 // 2 sec
}
})
Thanks a lot to our fantastic community member @tockn
, who took the initiative to implement this feature in Prisma ORM
Note that you can still override the global values by setting them on a particular transaction.
P2037
code for “Too many database connections opened” errors
New We introduced a new error code for “Too many database connections opened” errors: P2037
. You can find all error codes in our documentation.
Access the Prisma Data Platform via Prisma CLI
Now available in Early Access, you can manage your workspace and configure Prisma Accelerate and Prisma Pulse directly from the terminal.
Visit our docs to learn more about the integration and try it out for yourself!
Fixes and improvements
Prisma Client
- called
Option::unwrap()
on aNone
value when using the relationJoins preview feature with driver adapters - [5.9.0 Bug]
Prisma.TransactionClient
appears to be missing types - Error after Upgrading from 5.8.1 to 5.9.0
- [5.9.0]
@prisma/client
in Next.js middleware - [v5.9.0]
$extends
always returnany
- Prisma edge runtime error
- [5.9.0] All queries result in any type
Error: Prisma Client is unable to run in an edge runtime. As an alternative, try Accelerate: https://pris.ly/d/accelerate.
- [5.9.0] Error: Prisma Client is unable to run in an edge runtime. As an alternative, try Accelerate: https://pris.ly/d/accelerate.
- v5.9.0 / Don't generate type. And the error from the previous version is still there
- [5.9.0] Getting strange types after generating
- relationJoins: "The column
t3.bookGenreTitle
does not exist in the current database" - Missing export @prisma/client/generator-build
relationJoins
preview feature: calledOption::unwrap()
on aNone
value
v5.9.1
Today, we are issuing the 5.9.1
patch release.
Fixes in Prisma Client
In 5.9.0
we have changed our conditional exports in @prisma/client
. This resulted in broken types for TypesScript users using certain combinations of module
/moduleResolution
settings. Additionally, it also caused a regression for Next.js users which have encountered invalid error messages from our side.
You can now try out 5.9.1
and let us know if you find a bug at https://pris.ly/prisma-prisma-bug-report
- [5.9.0] Getting strange types after generating #22903
- v5.9.0 / Don't generate type. And the error from the previous version is still there #22896
- [5.9.0] Error: Prisma Client is unable to run in an edge runtime. As an alternative, try Accelerate: https://pris.ly/d/accelerate. #22893
Error: Prisma Client is unable to run in an edge runtime. As an alternative, try Accelerate: https://pris.ly/d/accelerate.
#22889- [5.9.0] All queries result in any type #22888
- Prisma edge runtime error #22886
- please how i cant fix this message issues #22885
- [v5.9.0] $extends always return any #22884
- [5.9.0] @prisma/client in Next.js middleware #22877
- Error after Upgrading from 5.8.1 to 5.9.0 #22875
- [5.9.0 Bug] Prisma.TransactionClient appears to be missing types #22870
Note: many issues are duplicates.
Configuration
-
If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot.