-
Notifications
You must be signed in to change notification settings - Fork 0
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
fix(deps): update prisma monorepo to v5.17.0 #68
base: main
Are you sure you want to change the base?
Conversation
5d6a60a
to
3236a3f
Compare
3236a3f
to
826cdd0
Compare
826cdd0
to
f7c1ebc
Compare
f7c1ebc
to
0267f4e
Compare
0267f4e
to
2d21edd
Compare
2d21edd
to
0bed0ca
Compare
0bed0ca
to
c60c69f
Compare
c60c69f
to
885f1da
Compare
4a0fc67
to
2addfd2
Compare
d4eb1b9
to
348f87c
Compare
348f87c
to
ea06d17
Compare
ea06d17
to
5494754
Compare
5494754
to
e830e76
Compare
|
|
This PR contains the following updates:
5.8.0
->5.17.0
5.8.0
->5.17.0
Warning
Some dependencies could not be looked up. Check the Dependency Dashboard for more information.
Release Notes
prisma/prisma (@prisma/client)
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
v5.16.1
Compare Source
Today, we are issuing the 5.16.1 patch release to fix an issue in Prisma client.
Fix in Prisma Client
v5.16.0
Compare Source
🌟 Help us spread the word about Prisma by starring the repo or tweeting about the release. 🌟
Highlights
Omit model fields globally
With Prisma ORM 5.16.0 we’re more than happy to announce that we’re expanding the
omitApi
Preview feature to also include the ability to omit fields globally.When the Preview feature is enabled, you’re able to define fields to omit when instantiating Prisma Client.
You’re also able to omit fields from multiple models and multiple fields from the same model
With both local and global
omit
, you now have the flexibility to completely remove sensitive fields while also tailoring individual queries. If you need the ability to generally omit a field except in a specific query, you can also overwrite a global omit locallyChanges to
prismaSchemaFolder
In
5.15.0
we released theprismaSchemaFolder
Preview feature, allowing you to create multiple Prisma Schema files in aprisma/schema
directory. We’ve gotten a lot of great feedback and are really excited with how the community has been using the feature.To continue improving our multi-file schema support, we have a few breaking changes to the
prismaSchemaFolder
feature:prismaSchemaFolder
feature, a path is now relative to the file it is defined in rather than relative to theprisma/schema
folder. This means that if you have a generator block in/project/prisma/schema/config/generator.prisma
with anoutput
of./foo
the output will be resolved to/project/prisma/schema/config/foo
rather than/project/prisma/foo
. The path to a SQLite file will be resolved in the same manner.prisma/schema
as well asprisma/schema.prisma
. Our initial implementation looked for a.prisma
file first and would ignore theschema
folder if it exists. This is now an error.Changes to
fullTextSearch
In order to improve our full-text search implementation we have made a breaking change to the
fullTextSearch
Preview feature.Previously, when the feature was enabled we updated the
<Model>OrderByWithRelationInput
TypeScript type with the<Model>OrderByWithRelationAndSearchRelevanceInput
type. However, we have noted that there are no cases where relational ordering is needed but search relevance is not. Thus, we have decided to remove the<Model>OrderByWithRelationAndSearchRelevanceInput
naming and only use the<Model>OrderByWithRelationInput
naming.Fixes and improvements
Prisma
Prisma has no exported member named OrderByWithRelationInput. Did you mean OrderByWithAggregationInput?
prisma generate
@prisma/adapter-pg
modifies node-postgres global type parsersdb pull
fails with[libs\user-facing-errors\src\quaint.rs:136:18] internal error: entered unreachable code
on invalid credentialsLanguage tools (e.g. VS Code)
Prisma Engines
Credits
Huge thanks to @key-moon, @pranayat, @yubrot, @skyzh, @brian-dlee, @mydea, @nickcarnival, @eruditmorina, @nzakas, @gutyerrez, @avallete, @ceddy4395, @Kayoshi-dev, @yehonatanz for helping!
v5.15.1
Compare Source
Today, we are issuing the
5.15.1
patch release.Fixes in Prisma Client
ConnectionError(Timed out during query execution.)
during seedingConnectionError(Timed out during query execution.)
error when usingPromise.all
for SQLitePromise.all()
/ concurrentv5.15.0
Compare Source
Today, we are excited to share the
5.15.0
stable release 🎉🌟 Help us spread the word about Prisma by starring the repo or tweeting about the release. 🌟
Highlights
Multi-File Prisma Schema support
Prisma ORM 5.15.0 features support for multi-file Prisma Schema in Preview.
This closes a long standing issue and does so in a clean and easy to migrate way.
To get started:
prismaSchemaFolder
Preview feature by including it in thepreviewFeatures
field of yourgenerator
.schema
subdirectory under yourprisma
directory.schema.prisma
into this directory.You are now set up with a multi-file Prisma Schema! Add as many or as few
.prisma
files to the newprisma/schema
directory.When running commands where a Prisma Schema file is expected to be provided, you can now define a Prisma Schema directory. This includes Prisma CLI commands that use the
--schema
option as well as defining schema viapackage.json
Our tooling has also been updated to handle multiple Prisma Schema files. This includes our Visual Studio Code extension and tools like database introspection, which will deposit new models in a
introspected.prisma
file. Existing models will be updated in the file they are found.To learn more, please refer to our official documentation and announcement blog post. If you try out
prismaSchemaFolder
, please let us know!Interesting Bug Fixes
Fix for PostgreSQL prepared statement caching for raw queries
This release fixes a nasty bug with the caching of prepared statements in raw Prisma Client queries that affected PostgreSQL when you ran the same SQL statement with differently typed paramters. This should not fail any more.
Fix for SQL Server introspection of (deprecated)
CREATE DEFAULT
Our Introspection logic crashed on encountering certain multi-line
CREATE DEFAULT
, a deprecated way to define defaults in SQL Server. As many SQL Server users are working with established databases, this happened frequently enough that we now explicitly ignore these defaults instead of crashing.Fix for Cloudflare D1’s lower parameter limit
Cloudflare’s D1 has a lower parameter limit than local SQLite, which caused bigger queries to fail. We adapted that limit to the D1 default for
@prisma/adapter-d1
, which will avoid such failures.Fix for Cloudflare D1’s different
PRAGMA
supportOur generated migration SQL for SQLite did not always work for Cloudflare D1, because of differences in the supported pragmas. We adapted the SQL to work in both local SQLite and Cloudflare D1.
Fixes and improvements
Prisma Migrate
Result::unwrap()
on anErr
value: "Couldn't parse default value:create default [dbo].[member_notification_cancel_flags] as 0\r\n
"Result::unwrap()
on anErr
value: "Couldn't parse default value:create default d_password as 'D,73'
"DEFAULT
sResult::unwrap()
on anErr
value: "Couldn't parse default value:\r\ncreate default D_BIT_OFF\r\nas 0\r\n
"Result::unwrap()
on anErr
value: "Couldn't parse default value in SQL ServerError: [libs\sql-schema-describer\src\mssql.rs:336:30] called
Result::unwrap()on an
Errvalue: "Couldn't parse default value: [...]
Result::unwrap()
on anErr
value: "Couldn't parse default value:\r\ncreate default [va_nulla] as 0\r\n
"db pull
can't parse script setting default valuePrisma Client
22P03
. Message:db error: ERROR: incorrect binary data format in bind parameter 1
incorrect binary data format in bind parameter 1
incorrect binary data format in bind parameter x
)_count
leads to errorwarn(prisma-client) This is the 10th instance of Prisma Client being started.
warning in Edge (and potentially) other envs)incorrect binary data format in bind parameter 6
Inconsistent column data: Unexpected conversion failure from Number to BigInt
error when using@prisma/adapter-pg
Int
switched to beingInt32
for MongoDBLanguage tools (e.g. VS Code)
Generate
codelens fails on WindowsCredits
Huge thanks to @pranayat, @yubrot, and @skyzh for helping!
v5.14.0
Compare Source
Today, we are excited to share the
5.14.0
stable release 🎉🌟 Help us spread the word about Prisma by starring the repo ☝️ or posting on X about the release. 🌟
Highlights
Share your feedback about Prisma ORM
We want to know how you like working with Prisma ORM in your projects! Please take our 2min survey and let us know what you like or where we can improve 🙏
createManyAndReturn()
We’re happy to announce the availability of a new, top-level Prisma Client query:
createManyAndReturn()
. It works similarly tocreateMany()
but uses aRETURNING
clause in the SQL query to retrieve the records that were just created.Here’s an example of creating multiple posts and then immediately returning those posts.
Additionally,
createManyAndReturn()
supports the same options asfindMany()
, such as the ability to return only specific fields.Note: Because
createManyAndReturn()
uses theRETURNING
clause, it is only supported by PostgreSQL, CockroachDB, and SQLite databases. At this time,relationLoadStrategy: join
is not supported increateManyAndReturn()
queries.MongoDB performance improvements
Previously, Prisma ORM suffered from performance issues when using the
in
operator or when including related models in queries against a MongoDB database. These queries were translated by the Prisma query engine in such a way that indexes were skipped and collection scans were used, leading to slower queries especially on large datasets.With 5.14.0, Prisma ORM now rewrites queries to use a combination of
$or
and$eq
operators, leading to dramatic performance increases for queries that includein
operators or relation loading.Fixes and improvements
Prisma Client
createMany()
should return the created recordstake
on many-to-one relationshipinclude
for relationsfindMany()
query execution within
include
query slowonDelete: SetNull
prisma init --with-model
@opentelemetry/*
dependenciesThe required connected records were not found.
when using indicesPrisma Migrate
dbgenerated()
still breaking forUnsupported()
typesshadowDatabaseUrl
is identical tourl
(ordirectUrl
)PRAGMA foreign_key_check;
Language tools (e.g. VS Code)
Company news
Prisma Changelog
Curious about all things Prisma? Be sure to check out the Prisma Changelog for updates across Prisma's products, including ORM, Accelerate, and Pulse!
Credits
Huge thanks to @pranayat, @yubrot, @skyzh, @anuraaga, @gutyerrez, @avallete, @ceddy4395, @Kayoshi-dev for helping!
v5.13.0
Compare Source
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 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-requestedomit
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
can be used to return specific fields, whileomit
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 asselect
. Note, however, thatomit
andselect
are mutually exclusive. In other words, you can’t use both in the same query.To get started using
omit
, enable theomitApi
Preview feature in your Prisma schema:Be sure to re-generate Prisma Client afterwards:
Here is an example of using
omit
:Here is an example of using
omit
withinclude
:Expand to view the example Prisma schema
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.📣 Share your feedback:
omitApi
Preview feature📚 Documentation:
omit
- Prisma Client API ReferenceFixes and improvements
Prisma Migrate
Prisma Client
✘ [ERROR] near "��": syntax error at offset 0
when runningwrangler d1 migrations apply
with Prisma generated migration (on Windows, using Powershell)Credits
Huge thanks to @ospfranco, @pranayat, @yubrot, @skyzh, @anuraaga, @yehonatanz, @arthurfiorette, @elithrar, @tockn, @Kuhave, @obiwac for helping!
v5.12.1
Compare Source
Today, we are issuing the
5.12.1
patch release to fix two small problems with our new Cloudflare D1 support.Fixes in Prisma CLI
Windows-only fix for new D1 specific flags for
migrate diff
anddb pull
The flags
--from-local-d1
and--to-local-d1
formigrate diff
and--local-d1
todb pull
we added in 5.12.0 were not working as expected when running on Windows only. This is now fixed.📚 Documentation: Deploying a Cloudflare worker with D1 and Prisma ORM
New option for
migrate diff
:-o
or--output
We added a new parameter
--output
tomigrate diff
that can be used to provide a filename into which the output of the command will be written. This is particularly useful for Windows users, using PowerShell, as using>
to write into a file creates a UTF-16 LE file that can not be read bywrangler d1 migrations apply
. Using this new option, this problem can be avoided:Related issues:
✘ [ERROR] near "��": syntax error at offset 0
when runningwrangler d1 migrations apply
with Prisma generated migration (on Windows, using PowerShell) #23702[prisma migrate resolve --applied
not working on new project,migration ... could not be found.
][https://github.com/prisma/prisma/issues/17558](https://togithub.com/prisma/prisma/issues/17558)8)v5.12.0
Compare Source
Today, we are excited to share the
5.12.0
stable release 🎉🌟 Help us spread the word about Prisma by starring the repo or posting on X about the release.
Highlights
Cloudflare D1 (Preview)
This release brings Preview support for Cloudflare D1 with Prisma ORM 🥳
D1 is Cloudflare’s SQLite database that can be used when deploying applications with Cloudflare.
When using Prisma ORM with D1, you can continue to: model your database with Prisma schema language, specify
sqlite
as your database provider in your Prisma schema, and interact with your database using Prisma Client.To use Prisma ORM and D1 on Cloudflare Workers or Cloudflare Pages, you need to set
sqlite
as your database provider and use the@prisma/adapter-d1
database adapter via thedriverAdapters
Preview feature, released back in version 5.4.0.Here is an example of sending a query to your D1 database using Prisma Client in your Worker:
📚 Documentation: Deploying a Cloudflare worker with D1 and Prisma ORM
✍️ Blog post: Build Applications at the Edge with Prisma ORM & Cloudflare D1 (Preview)
📣 Share your feedback: D1 Driver Adapter
🚀 Example project: Deploy a Cloudflare Worker with D1
createMany()
for SQLiteBringing support for
createMany()
in SQLite has been a long-awaited and highly requested feature ⭐createMany()
is a method on Prisma Client, released back in version 2.16.0, that lets you insert multiple records into your database at once. This can be really useful when seeding your database or inserting bulk data.Here is an example of using
createMany()
to create new users:Before this release, if you wanted to perform bulk inserts with SQLite, you would have most likely used
$queryRawUnsafe
to execute raw SQL queries. But now you don’t have to go through all that trouble 🙂With SQLite,
createMany()
works exactly the same way from an API standpoint as it does with other databases except it does not support theskipDuplicates
option. At the behavior level, SQLite will splitcreateMany()
entries into multipleINSERT
queries when the model in your schema contains fields with attributes like@default(dbgenerated())
or@default(autoincrement())
and when the fields are not consistently provided with values across the entries.📚Documentation:
createMany()
- Prisma Client API ReferenceFixes and Improvements
Prisma Client
Decimal
data type and combining queries (batching)findUnique()
error out when the field is ofBoolean
typerelationJoins
MySQL converts nested Decimal to floatfindUnique()
node-postgres
(pg) errors with misleadingP2010 PrismaClientKnownRequestError
when using@prisma/adapter-pg
with SSL (?sslmode=require
)Credits
Huge thanks to @yubrot, @skyzh, @anuraaga, @onichandame, @LucianBuzzo, @RobertCraigie, @arthurfiorette, @elithrar for helping!
v5.11.0
Compare Source
Today, we are excited to share the
5.11.0
stable release 🎉🌟 Help us spread the word about Prisma by starring the repo ☝️ or posting on X about the release.
Highlights
Edge function support for Cloudflare and Vercel (Preview)
We’re thrilled to announce that support for edge function deployments with Prisma ORM is now in Preview 🥳 As of this release, you can deploy your apps that are using Prisma ORM to:
In order to deploy to an edge function, you’ll need to use a compatible database driver (along with its Prisma driver adapter):
pg
driver (for traditional PostgreSQL databases)@libsql/client
driver (for SQLite databases hosted via Turso)Check out our documentation to learn how you can deploy an edge function using any combination of supported edge function provider and database.
Performance improvements in nested
create
operationsWith Prisma ORM, you can create multiple new records in nested queries, for example:
In previous versions, Prisma ORM would translate this into multiple SQL
INSERT
queries, each requiring its own roundtrip to the database. As of this release, these nestedcreate
queries are optimized and theINSERT
queries are sent to the database in bulk in a single roundtrip. These optimizations apply to one-to-many as well as many-to-many relations.With this change, using the nested
create
option to create multiple records effectively becomes equivalent to using a nestedcreateMany
operation (except thatcreateMany
only works with one-to-many relations, whereascreate
works both with one-to-many and many-to-many).Fixes and improvements
Prisma Client
console.log(new PrismaClient())
enum
throws error (collationcp1250_czech_cs
or similar)NOT
condition leaks out of its desired boundsPrismaClient
object is slowprisma generate
on Litespeed Web Server cPanel with sshtsc
:Cannot find namespace 'debug'.
push
method still unimplemented for scalar lists in CockroachDBInvalid character
error persists on 5.10.1 in Prisma StudioruntimeDescription
is not defined errorPrisma Migrate
npx prisma db pull
with DeepinOS 20.9GNU/LInuxLinux Mint
Error: Invalid character
whenschema.prisma
includes Chinese/Non-ASCII characters in a commentPrisma Engines
v5.10.2
Compare Source
Today, we are issuing the
5.10.2
patch release.Fix in Prisma CLI
Invalid character
error persists on 5.10.1 in Prisma Studiov5.10.1
Compare Source
Today, we are issuing the
5.10.1
patch release.Fix in Prisma Client / Prisma CLI
v5.10.0
Compare Source
Today, we are excited to share the
5.10.0
stable release 🎉🌟 Help us spread the word about Prisma by starring the repo ☝️ or posting on X about the 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 themysql
database provider, you now also get access to therelationLoadStrategy
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 thejoin
andquery
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:
Be sure to re-generate Prisma Client afterwards:
And finally, specify the relation loading strategy for your relation query via the
relationLoadStrategy
option as follows:Note that in the example above, the
relationLoadStrategy
could be omitted altogether becausejoin
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.LATERAL
JOINs which are used on PostgreSQL).Configure transaction options in the
PrismaClient
constructorThis 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:
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.
New
P2037
code for “Too many database connections opened” errorsWe 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
Option::unwrap()
on aNone
value when using the relationJoins preview feature with driver adaptersPrisma.TransactionClient
appears to be missing types@prisma/client
in Next.js middleware$extends
always returnany
Error: Prisma Client is unable to run in an edge runtime. As an alternative, try Accelerate: https://pris.ly/d/accelerate.
t3.bookGenreTitle
does not exist in the current database"relationJoins
preview feature: calledOption::unwrap()
on aNone
valuev5.9.1
Compare Source
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 ofmodule
/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-reportError: Prisma Client is unable to run in an edge runtime. As an alternative, try Accelerate: https://pris.ly/d/accelerate.
#22889Note: many issues are duplicates.
v5.9.0
Compare Source
Today, we are excited to share the
5.9.0
stable release 🎉🌟 Help us spread the word about Prisma by starring the repo ☝️ or posting on X about the release.
This release brings a number of small improvements as we continue our work on larger features which you will hear more about in the coming weeks:
Highlights
Optimized result sets for more efficient queries
We continue our efforts of the performance of Prisma Client queries. In
5.1.0
, we introduced theRETURNING
keyword for several queries on PostrgeSQL and CockroachDB. We now expanded the use ofRETURNING
to SQLite and a broader range of queries for existing databases (e.g.delete
on PostgreSQL and MongoDB). You can learn more about the optimizations of the result sets in these PRs:SQL Server: Return proper error for unreachable database
When trying migrate/introspect a SQL server instance that’s unreachable, Prisma ORM now returns the correct
P1001
error instead of failing without an error. Learn more in this PR: SQL Server: Migrate/Introspection engine doesn't return P1001 error for unreachable url.Fixes and improvements
Prisma Client
select
queries on create/update/deletePrisma Migrate
ERROR: column "..." being dropped, try again later
when applying migrations with CRDB 23.1Language tools (e.g. VS Code)
Company news
Test edge functions support in Early Access
Today, the only way how to use Prisma ORM in edge functions (e.g. Cloudflare Workers or Vercel Edge Functions) is by using Prisma Accelerate. However, we are actively working on making Prisma ORM compatible with edge functions natively as well. If you want to become an early tester, you can apply for the private Early Accessing program by taking this survey.
We Transitioned Prisma Accelerate to IPv6 Without Anyone Noticing
Last year, AWS announced the decision to begin charging for IPv4 addresses beginning in February 2024. This move had a major impact on Prisma Accelerate, prompting us to go all-in on I
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), 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.