[Snyk] Upgrade prisma from 4.10.0 to 5.22.0 #565
+1
−1
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.
Snyk has created this PR to upgrade prisma from 4.10.0 to 5.22.0.
ℹ️ Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.
The recommended version is 3235 versions ahead of your current version.
The recommended version was released on 21 days ago.
Issues fixed by the recommended upgrade:
SNYK-JS-DATALOADER-8248488
Release notes
Package name: prisma
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!
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!
🌟 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!
Today, we are issuing the
5.19.1
patch release.What's Changed
We've fixed the following issues:
Full Changelog: 5.19.0...5.19.x, prisma/prisma-engines@5.19.0...5.19.x
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:import { getUsersWithPosts } from '@prisma/client/sql'
const prisma = new PrismaClient()
const usersWithPostCounts = await prisma.$queryRawTyped(getUsersWithPosts)
console.log(usersWithPostCounts)
There’s a lot more to talk about with TypedSQL. We think that the combination of the high-level Prisma Client API and the low-level TypedSQL will make for a great developer experience for all of our users.
To learn more about behind the “why” of TypedSQL be sure to check out our announcement blog post.
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 prisma/prisma-engines#4970 and #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.MongoDB
The MongoDB driver for Rust (that our query engine users under the hood) had behavior that prioritized IPv4 connections over IPv6 connections. In IPv6-only environments, this could lead to significant "cold starts" where the query engine had to wait for IPv4 to fail before the driver would try IPv6.
With help from the MongoDB team, this has been resolved. The driver will now try IPv4 and IPv6 connections in parallel and then move forward with the first response. This should prevent cold start issues that have been seen with MongoDB in Prisma Accelerate.
Thank you to the MongoDB team!
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!