Prisma

Latest version: v0.15.0

Safety actively analyzes 685670 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 13 of 44

3.12.0

Changes

* chore(deps): bump amannn/action-semantic-pull-request from 4.0.1 to 4.1.0 (723) dependabot
* chore(deps): bump amannn/action-semantic-pull-request from 4.1.0 to 4.2.0 (724) dependabot
* chore(deps): bump golang from 1.17.6 to 1.17.7 in /test/integration (725) dependabot
* chore(deps): bump golang from 1.17.7 to 1.17.8 in /test/integration (728) dependabot
* chore(deps): bump actions/checkout from 2.4.0 to 3 (726) dependabot
* chore(deps): bump github.com/stretchr/testify from 1.7.0 to 1.7.1 (729) dependabot
* chore(deps): bump actions/cache from 2 to 3 (731) dependabot
* chore(deps): bump golang from 1.17.8 to 1.18.0 in /test/integration (730) dependabot
* chore(prisma): upgrade prisma to 3.12.0 (732) steebchen

Contributors

dependabot, dependabot[bot] and steebchen

3.11.1

Today, we are issuing the `3.11.1` patch release.

MongoDB (Preview)

Breaking: Filters no longer return `undefined` fields by default

In `3.11.1`, we've changed what data is returned when filtering MongoDB documents on `undefined` fields. The new rule is that `undefined` fields are excluded by default unless explicitly filtered for. This allows you to query for undefined and null values separately.

Let's take a look at a concrete example. Given the following Prisma schema:

prisma
model Address {
id Int id map("_id")
city String
street String? // Note that street is optional
}


For Mongo, optional fields can either be `null` or `undefined` (absent). The following documents are all valid for the schema above:

ts
{ "_id": 1, "city": "San Fransisco", "street": "Market st." }
{ "_id": 2, "city": "Seattle", "street": null }
{ "_id": 3, "city": "Chicago" }


Prior to `3.11.1`, if you queried for `where: { street: null }`, you'd get `_id: 2` and `_id: 3`. In `3.11.1`, you'll only get `_id: 2`. The ability to _also_ query for the missing fields has also been added. For details, refer to the new `isSet` below to learn more.

There are a few exceptions to this new default:
- A `having` filter on an aggregated field *will* return `undefined` fields. This is because aggregation on undefined fields yields `null`, not `undefined`, thus matching the filter.
- Filters on undefined to-many relations (e.g., the backing array of a many-to-many is `undefined`) will currently include those relations in the result set.

New `isSet` filter operation

To compensate for missing fields on documents no longer being returned by the filters above, we’ve added a new `isSet: bool` filter. This filter can be used to include fields that are `undefined` on documents.

Using the example above, to include the `undefined` fields, you can use an `OR`:

ts
await prisma.address.findMany({
where: {
OR: [
{ street: { isSet: false } },
{ street: null }
]
}
})


The `isSet` operation has been added to all scalar and embedded fields that are optional.

New `unset` operation

In `3.11.1`, you can also remove a field with the `unset` operation.

Using the example above, let's write a query to remove the street field:

ts
await prisma.address.update({
where: {
id: 10,
},
data: {
street: {
unset: true,
},
},
})


This effectively sets the `street` field to `undefined` in the database.

New `updateMany` operation

We now support updating embedded documents that match specific criteria.

For example, given the following schema:

prisma
model Product {
id Int id map("_id")
name String unique
photos Photo[]
}

type Photo {
height Int default(200)
width Int default(100)
url String
}


Let's update the photo with a `url` of `1.jpg` to `2.png`:

ts
const product = prisma.product.update({
where: {
id: 10,
},
data: {
photos: {
updateMany: {
where: {
url: '1.jpg',
},
data: {
url: '2.png',
},
},
},
},
})


New `deleteMany` operation

Similar to `updateMany`, you can also remove embeds that match specific criteria.

Using the Prisma Schema above, let's delete all photos with a `height` of 100:

ts
const product = prisma.product.update({
where: {
id: 10,
},
data: {
photos: {
deleteMany: {
where: {
height: 100,
},
},
},
},
})

3.11.0

Today, we are excited to share the `3.11.0` stable release 🎉

🌟 **Help us spread the word about Prisma by starring the repo or [tweeting](https://twitter.com/intent/tweet?text=Check%20out%20the%20latest%20prisma%20release%20v3.11.0%20%F0%9F%9A%80%0D%0A%0D%0Ahttps://github.com/prisma/prisma/releases/tag/3.11.0) about the release.** 🌟

Major improvements and new features

Experimental support for Embedded Document Filters

In the previous release, we added embedded document support for creates, updates, and deletes. In version `3.11.0`, we’re adding the ability to filter embedded documents.

Given the following schema:

prisma
datasource db {
provider = "mongodb"
url = env("DATABASE_URL")
}

generator client {
provider = "prisma-client-js"
previewFeatures = ["mongoDb"]
}

model Product {
id String id default(auto()) map("_id") db.ObjectId
photos Photo[]
}

model Order {
id String id default(auto()) map("_id") db.ObjectId
shippingAddress Address
billingAddress Address?
}

type Photo {
height Int
width Int
url String
}

type Address {
street String
city String
zip String
}


You can now filter within an embedded document:

ts
// find all orders with the same shipping address
const orders = await prisma.order.findMany({
where: {
shippingAddress: {
equals: {
street: "555 Candy Cane Lane",
city: "Wonderland",
zip: "52337",
},
},
},
})

You can also filter on a "contains many" relationship:

ts
// find all products that don't have photos
const product = prisma.product.findMany({
where: {
photos: {
isEmpty: true
}
},
})


This scratches the surface of what's possible. For a complete list of available operations, have a look at [our documentation](https://www.prisma.io/docs/concepts/components/prisma-client/composite-types). Please share your feedback in [this issue](https://github.com/prisma/prisma/issues/8241).

Ordering by embedded documents is in Preview

In addition to filtering, Prisma version `3.11.0` now supports sorting by an embedded document.

Using the example schema above, you can sort orders by their zip code:

ts
// sort orders by zip code in ascending order
const orders = await prisma.order.findMany({
orderBy: {
shippingAddress: {
zip: "asc",
},
},
})

Learn more about this feature in [our documentation](https://www.prisma.io/docs/concepts/components/prisma-client/composite-types) and don’t hesitate to reach out in [this issue](https://github.com/prisma/prisma/issues/8241).

MongoDB query logging support

In this release, we’ve added the ability to log MongoDB queries. You can enable query logging in the `PrismaClient` constructor:

ts
const prisma = new PrismaClient({
log: [
{
emit: 'event',
level: 'query',
},
]
})

prisma.$on('query', (e) => console.log(e.query))


After enabling query logging, you'll start to see logs that resemble this in your console:

bash
db.User.deleteMany({ _id: ( $in: [ “62261e0b18139c6099ba7097”, ], }, })
db.User.deleteMany({ _id: ( $in: [ “6226277a96069500743edcf9”, ], }, })


The logs output by Prisma have the same format as the `mongosh` console, so you can pipe the queries from your logs directly into your shell.

MongoDB introspection update

We've updated the type inference behavior for MongoDB on introspection.

Prisma samples a field's data to select an appropriate type on introspection. In the past, Prisma picked the type used most often for fields with data with multiple types. However, this could cause problems when retrieving mixed data during runtime and throw exceptions, such as Prisma Studio or in Prisma Client queries.

From `3.11.0`, Prisma defaults to the `Json` type to all fields with mixed data types instead. Additionally, Prisma will still show a warning on the console and add a comment to the introspected Prisma schema so it is clear where such cases occur and that you can do something to fix them.

Prisma Client logger revamp

In `3.11.0`, we’ve rewritten our internal logger to reduce [lock contention](https://en.wikipedia.org/wiki/Lock_(computer_science)#:~:text=lock%20contention%3A%20this%20occurs%20whenever,lock%20held%20by%20the%20other.) and enable future features like tracing. This is the first of many upcoming changes to improve the Prisma Client’s throughput, so if you were running into an upper limit on query performance, it’s time to update Prisma Client and give it a try!

If you're running into query performance issues, please [open an issue](https://github.com/prisma/prisma/issues/new/choose) or [connect with us on Slack](https://slack.prisma.io/).

CockroachDB now supports migrations (Preview)

We're excited to announce Preview support for migrations for CockroachDB. You can now evolve your Prisma schema and propagate the changes to your database using Prisma Migrate.

Give the feature a try and let us know what you think in [this issue](https://github.com/prisma/prisma/issues/11542).

Detecting state of a diff with `migrate diff` using exit code

Prisma version `3.11.0` includes a new `--exit-code` flag to the `migrate diff` command to detect the state of a diff in several ways.

You can use the flag as follows:

bash
npx prisma migrate diff --preview-feature \
--exit-code \
--from-[...] \
--to-[...]


Here's a list of the default and changed behavior of the error codes:

Default behavior of exit codes
0: Returned when the diff is empty or non-empty
1: Returned on error

Changed behavior when --exit-code is used
0: Returned when the diff is empty
1: Returned on error
2: Returned when the diff is non-empty


Read about it in the [reference documentation](https://www.prisma.io/docs/reference/api-reference/command-reference#migrate-diff).

Fixes and improvements

Prisma

- [Command to export SQL schema](https://github.com/prisma/prisma/issues/1992)
- [Waiting "too long" to input migration name leads to error message](https://github.com/prisma/prisma/issues/7742)
- [`db push` with empty `schema.prisma`: `Error: TypeError: Cannot read properties of undefined (reading 'url')`](https://github.com/prisma/prisma/issues/9518)
- [migrate diff: --{from,to}-schema-datamodel should not error on missing env vars in datasource blocks ](https://github.com/prisma/prisma/issues/11544)
- [migrate diff: Provide a reliable way to detect empty diffs / migrations](https://github.com/prisma/prisma/issues/11566)
- [`db execute` cannot resolve SQLite file path from schema](https://github.com/prisma/prisma/issues/11626)
- [[MDB] Implement version and describe RPC calls for the error reporting backend](https://github.com/prisma/prisma/issues/11691)
- [[MDB] Create fields referenced in index definitions as Json to enable display of indexes in datamodel ](https://github.com/prisma/prisma/issues/11933)
- [MongoDB many to many: `PANIC: called Option::unwrap() on a None`](https://github.com/prisma/prisma/issues/11970)


Prisma Client

- [PANIC in query-engine/connectors/mongodb-query-connector/src/value.rs:185:24not yet implemented: (Json, Json("[]"))](https://github.com/prisma/prisma/issues/6773)
- [Prisma Mongo Panic called `Option::unwrap()` on a `None` value](https://github.com/prisma/prisma/issues/8598)
- [Better error message for MongoDB replica sets](https://github.com/prisma/prisma/issues/8719)
- [MongoDB: Using `tlsCAFile` fails](https://github.com/prisma/prisma/issues/9072)
- [no such file or directory, open '/path/schema.prisma' since 3.1.1](https://github.com/prisma/prisma/issues/9435)
- [PANIC: called `Option::unwrap()` on a `None` value in query-engine/connectors/mongodb-query-connector/src/root_queries/write.rs:301:74](https://github.com/prisma/prisma/issues/9977)
- [`contains` string filter not working with mongoDB](https://github.com/prisma/prisma/issues/10267)
- [Referential integrity is not preserved when updating foreign key (in "prisma" mode)](https://github.com/prisma/prisma/issues/11100)
- [PANIC: called `Option::unwrap()` on a `None` value in query-engine\connectors\mongodb-query-connector\src\root_queries\read.rs:112:74](https://github.com/prisma/prisma/issues/11378)
- [HasReject not evaluating correctly for per operation handlers](https://github.com/prisma/prisma/issues/11403)
- [Support MongoDB "query" logging](https://github.com/prisma/prisma/issues/11419)
- [CONTRIBUTING: document Prisma Client workflow of using local link ](https://github.com/prisma/prisma/issues/11828)
- [MongoDB findRaw filter problem with ObjectId field.](https://github.com/prisma/prisma/issues/11830)
- [MongoDB: Better error message for when document does not match the defined schema](https://github.com/prisma/prisma/issues/11853)
- [Integrate orderBy for composite types](https://github.com/prisma/prisma/issues/12038)
- [Attempting to do a query in the Prisma Client on a model with a foreign key that has `map` panics on 3.10.0](https://github.com/prisma/prisma/issues/12105)
- [Use embedded documents attributes in where clause](https://github.com/prisma/prisma/issues/12186)
- [`'then' in PrimsaPromise` returns false](https://github.com/prisma/prisma/issues/12252)

Prisma Migrate

- [Detect schema drift helper / `migrate dev --exit-code`](https://github.com/prisma/prisma/issues/9707)
- [Migrate lock timeout on PlanetScale](https://github.com/prisma/prisma/issues/10997)

Language tools (e.g. VS Code)

- [MongoDB M:N relations get referential actions auto completion suggestions, then does not validate](https://github.com/prisma/language-tools/issues/1060)
- [Auto Completion: `map` does not exist for M:N in MongoDB](https://github.com/prisma/language-tools/issues/1061)
- [Autocomplete shows invalid suggestions for composite types](https://github.com/prisma/language-tools/issues/1063)
- [Suggest auto() in VSCode autocomplete](https://github.com/prisma/language-tools/issues/1064)
- [Clicking on a MongoDB composite type does not jump to definition](https://github.com/prisma/language-tools/issues/1069)

Prisma Engines

- [Implement order by composites](https://github.com/prisma/prisma-engines/issues/2514)
- [[Composites] Implement `equals` read operation](https://github.com/prisma/prisma-engines/issues/2675)
- [[Composites] Implement `is` read operation](https://github.com/prisma/prisma-engines/issues/2676)
- [[Composites] Implement `isNot` read operation](https://github.com/prisma/prisma-engines/issues/2677)
- [[Composites] Implement `isEmpty` read operation](https://github.com/prisma/prisma-engines/issues/2678)
- [[Composites] Implement `every` read operation](https://github.com/prisma/prisma-engines/issues/2679)
- [[Composites] Implement `some` read operation](https://github.com/prisma/prisma-engines/issues/2680)
- [[Composites] Implement `none` read operation](https://github.com/prisma/prisma-engines/issues/2681)

Credits

Huge thanks to hayes, maddhruv, jasimon for helping!


📺 Join us for another "What's new in Prisma" livestream

Learn about the latest release and other news from the Prisma community by joining us for another ["What's new in Prisma"](https://youtu.be/2dAtmHuT-30) livestream.

The stream takes place [on YouTube](https://youtu.be/2dAtmHuT-30) on **Thursday, March 17** at **5 pm Berlin | 8 am San Francisco**.

3.10.0

Today, we are excited to share the `3.10.0` stable release 🎉

🌟 **Help us spread the word about Prisma by starring the repo or [tweeting](https://twitter.com/intent/tweet?text=Check%20out%20the%20latest%20prisma%20release%20v3.10.0%20%F0%9F%9A%80%0D%0A%0D%0Ahttps://github.com/prisma/prisma/releases/tag/3.10.0) about the release.** 🌟

Major improvements and new features

We are working towards a stable release of MongoDB and are shipping lots of improvements. **All the new features and changes in this release therefore only apply to the MongoDB connector.** Take a closer look if you are using the [Preview](https://www.prisma.io/docs/about/prisma/releases#preview) of MongoDB as some of the changes are breaking.

Embedded documents support is now in Preview

We're super excited to announce that Prisma version `3.10.0` supports reading and modifying embedded documents. Embedded documents will provide access to a new `type` keyword in your Prisma schema that you can use to define composite types.

prisma
datasource db {
provider = "mongodb"
url = env("DATABASE_URL")
}

generator client {
provider = "prisma-client-js"
previewFeatures = ["mongoDb"]
}

model Product {
id String id default(auto()) map("_id") db.ObjectId
name String
photos Photo[]
}

type Photo {
height Int
width Int
url String
}


Given the schema above, you can now read and write to the embedded `photos` array:

ts
// Create a new product with an embedded list of photos
const product = await prisma.product.create({
data: {
name: "Forest Runners",
// Create an embedded list of photos in the product
photos: [
{ height: 100, width: 200, url: "1.jpg" },
{ height: 300, width: 400, url: "2.jpg" },
],
},
})

Best of all, the query is entirely type-safe! This scratches the surface of what's possible with embedded documents. You can read further in [our documentation](https://www.prisma.io/docs/concepts/components/prisma-client/composite-types).

If you run into anything, feel free to [open an issue](https://github.com/prisma/prisma/issues/new/choose), and we’ll give you a hand!

Introspection of embedded documents is now enabled by default

We added Preview support for Introspection of embedded documents in version `3.4.0` and are now activating it for all users. Running `prisma db pull` against your MongoDB database will generate `type` definitions within your Prisma schema.

When introspecting your database, you can switch off the depth with `--composite-type-depth=0`, or limit it with, for example, `--composite-type-depth=2`.

Feel free to drop your feedback on the feature on [GitHub](https://github.com/prisma/prisma/issues/10016).

`default(dbgenerated())` is now replaced with `default(auto())`

The original purpose of `dbgenerated` is to support SQL expressions Prisma doesn’t understand yet. However, MongoDB doesn’t have a concept of default value expressions like SQL does. We took this opportunity to simplify how we handle the default values in MongoDB:

diff
model Post {
- id String id default(dbgenerated()) map("_id") db.ObjectId
+ id String id default(auto()) map("_id") db.ObjectId
}


Many-to-Many relations now require a `references` argument

Prisma version `3.10.0` now enforces all arguments in a MongoDB many-to-many relation. This means a `relation` attribute must define `fields` and `references` arguments on both sides.

The `fields` argument must point to a scalar field in the same model, and this scalar field must be an array. The `references` arguments must point to a scalar field in the opposite model, and it must be a singular type of the same base type as the referencing array on the other side.

diff
model Post {
id String id map("_id") default(auto()) db.ObjectId
category_ids String[] db.ObjectId
- categories Category[] relation(fields: [category_ids])
+ categories Category[] relation(fields: [category_ids], references: [id])
}

model Category {
id String id map("_id") default(auto()) db.ObjectId
post_ids String[] db.ObjectId
- posts Post[] relation(fields: [post_ids])
+ posts Post[] relation(fields: [post_ids], references: [id])
}


`db.Array(ObjectId)` is now updated to `db.ObjectId`

We've adjusted the Prisma schema format for scalar lists with native types (like lists of Object IDs). This will likely affect those with many-to-many relationships in MongoDB. We made this change to align MongoDB with our existing SQL databases better:

diff
model Post {
id String id default(auto()) map("_id") db.ObjectId
- categoryIDs String[] db.Array(ObjectId)
+ categoryIDs String[] db.ObjectId
categories Category[] relation(fields: [categoryIDs], references: [id])
}

model Category {
id String id default(auto()) map("_id") db.ObjectId
- postIDs String[] db.Array(ObjectId)
+ postIDs String[] db.ObjectId
posts Post[] relation(fields: [postIDs], references: [id])
}


Fixes and improvements

Prisma Migrate

- [Ability to create SQL table logic from schema without doing a "migrate"](https://github.com/prisma/prisma/issues/6155)
- [Improve error on default values when `db.ObjectId` isn't present](https://github.com/prisma/prisma/issues/6429)
- [Validator accepts arbitrary properties in `datasource` blocks](https://github.com/prisma/prisma/issues/7342)
- [Programmatically create a MongoDB database](https://github.com/prisma/prisma/issues/8582)
- [`prisma init --url` does not like `mongodb+srv://`](https://github.com/prisma/prisma/issues/9644)
- [Test the error reporting backend with MongoDb](https://github.com/prisma/prisma/issues/10528)
- [Better Schema validation for MongoDB](https://github.com/prisma/prisma/issues/10809)
- [`Code 19` and unformatted list output during Re-Introspection](https://github.com/prisma/prisma/issues/11025)
- [MongoDB Introspection Multiple Types warning message in CLI output does not differentiate models and embedded documents](https://github.com/prisma/prisma/issues/11179)
- [MongoDB Introspection Embedded Documents do not require `id_` special case](https://github.com/prisma/prisma/issues/11180)
- [Introspection result `Unsupported("Unknown")` causes schema validation to crash](https://github.com/prisma/prisma/issues/11181)
- [Confidence Tooling run and result verification for embedded documents](https://github.com/prisma/prisma/issues/11182)
- [MongoDB Introspection connects to database even when failing with error message that should not require connection to database at all](https://github.com/prisma/prisma/issues/11185)
- [Change `db.Array(ObjectId)` to `db.ObjectId`](https://github.com/prisma/prisma/issues/11226)
- [Make sure `Unsupported(...)` fields are not rejected on composite types](https://github.com/prisma/prisma/issues/11282)
- [MongoDB PSL parsing should fail when using `default(autoincrement())`](https://github.com/prisma/prisma/issues/11291)
- [Error: [/root/build/libs/mongodb-schema-describer/src/lib.rs:35:41] called `Option::unwrap()` on a `None` value ](https://github.com/prisma/prisma/issues/11300)
- [MongoDB embedded documents Introspection does not give any names to fields with invalid names](https://github.com/prisma/prisma/issues/11390)
- [Embedded document `_id` of type `ObjectId` are introspected without native type ` db.ObjectId`](https://github.com/prisma/prisma/issues/11396)
- ["experimental feature, needs to be enabled"](https://github.com/prisma/prisma/issues/11482)
- [MongoDB: On ID fields, replace `default(dbgenerated())` with `default(auto())`](https://github.com/prisma/prisma/issues/11552)
- [Implement datamodel parser validations for two-way embedded many-to-many relations on MongoDB](https://github.com/prisma/prisma/issues/11553)
- [MongoDB: The connection string format and parameters are defined by mongo-rust-driver](https://github.com/prisma/prisma/issues/11567)
- [`prisma db pull` doesn't read `.env` file and errors with Environment variable not found: DATABASE_URL](https://github.com/prisma/prisma/issues/11570)
- [[MDB] Do not hardcode _id to ObjectId during Introspection](https://github.com/prisma/prisma/issues/11623)
- [[MDB] Schema validation error on valid composite type](https://github.com/prisma/prisma/issues/11625)
- [Turn on embedded document Introspection by default](https://github.com/prisma/prisma/issues/11797)
- [`Model "undefined", field: ...`](https://github.com/prisma/prisma/issues/11809)
- [MongoDB Introspection does not output how many embedded documents were introspected](https://github.com/prisma/prisma/issues/11827)
- [Sharded MongoDB connection string is not supported by Prisma Client](https://github.com/prisma/prisma/issues/11873)
- [Add mongodb 4.2 to tested versions on migrate & introspection](https://github.com/prisma/prisma/issues/11884)
- [Confirm sharded MongoDB connection string is supported by MongoDB Rust Driver](https://github.com/prisma/prisma/issues/11899)
- [MongoDB: Error when no database name supplied in connection string](https://github.com/prisma/prisma/issues/11909)
- [`Multiple data types found: Array(Array(Array(Double))): 86.2%, Array(Array(Array(Array(Double)))): 13.8% out of 195 sampled entries`](https://github.com/prisma/prisma/issues/11912)

Prisma Client

- [Unable to use dbgenerated uuid_to_bin for ID field: "Could not figure out an ID in create"](https://github.com/prisma/prisma/issues/7010)
- [groupBy is not usable with $transaction](https://github.com/prisma/prisma/issues/7918)
- [`InteractiveTransaction`: Middleware param `runInTransaction` set to `false`](https://github.com/prisma/prisma/issues/9073)
- [MDBGA: Support MongoDB Atlas Serverless](https://github.com/prisma/prisma/issues/9659)
- [Incorrect Typescript type for QueryEvent.timestamp](https://github.com/prisma/prisma/issues/10217)
- [Using "then ()" in "interactive Transactions" initiates another transaction](https://github.com/prisma/prisma/issues/10615)
- [MDBE: Write usage guide on MongoDB Embedded Documents Support](https://github.com/prisma/prisma/issues/11092)
- [MongoDB first request takes ~45s on Windows](https://github.com/prisma/prisma/issues/11340)
- [Prisma Client: `.count` does not work with where](https://github.com/prisma/prisma/issues/11556)
- [`interactiveTransactions` feature breaks long running transactions](https://github.com/prisma/prisma/issues/11565)
- [Go through the existing iTX and explore what needs to be worked on](https://github.com/prisma/prisma/issues/11574)
- [Cannot extend PrismaClient class](https://github.com/prisma/prisma/issues/11628)
- [MongoDB: add test on TS side for ObjectId arrays `a_ids String[] db.ObjectId`](https://github.com/prisma/prisma/issues/11632)
- [Prisma Client: Fluent API chaining not working for PascalCase columns in 3.9.1](https://github.com/prisma/prisma/issues/11641)
- [Interactive transaction: Sequential Prisma Client operations timeout but work when interactive transactions are disabled](https://github.com/prisma/prisma/issues/11654)
- [prisma v3.9.1: Get TypeError(read-only and non-configurable data property on the proxy target) when use jest.fn().mockReturnValue.](https://github.com/prisma/prisma/issues/11655)
- [Avoid shipping unused intermediary ESM files](https://github.com/prisma/prisma/issues/11683)
- [Unable to parse Connection String in Sharded MongoDB](https://github.com/prisma/prisma/issues/11684)
- [Prisma Client queries are executed multiple times in `3.9.1`](https://github.com/prisma/prisma/issues/11686)
- [Send `prisma` as `driverInfo` to MongoDB](https://github.com/prisma/prisma/issues/11855)
- [Fluent API is no longer supported at runtime for mutations](https://github.com/prisma/prisma/issues/11861)

Credits

Huge thanks to andyrichardson, xnerhu, Josh-a-e, dusandz, hyochan, cesconix, benkroeger, YassinEldeeb, chenkie for helping!

📺 Join us for another "What's new in Prisma" livestream

Learn about the latest release and other news from the Prisma community by joining us for another ["What's new in Prisma"](https://www.youtube.com/watch?v=OouLYZDveBU) livestream.

The stream takes place [on YouTube](https://www.youtube.com/watch?v=OouLYZDveBU) on **Thursday, February 03** at **5 pm Berlin | 8 am San Francisco**.

3.9.2

Today, we are issuing the `3.9.2` patch release.

Fixes

- [Prisma Client Fluent API chaining not working for PascalCase columns](https://github.com/prisma/prisma/issues/11641)
- [Prisma Client queries are executed multiple times](https://github.com/prisma/prisma/issues/11686)
- [prisma v3.9.1: Get TypeError(read-only and non-configurable data property on the proxy target) when use jest.fn().mockReturnValue](https://github.com/prisma/prisma/issues/11655)
- [Cannot extend PrismaClient class](https://github.com/prisma/prisma/issues/11628)

3.9.1

Today, we are issuing the `3.9.1` patch release.

Fixes

- [`prisma db pull` doesn't read `.env` file and errors with Environment variable not found: DATABASE_URL](https://github.com/prisma/prisma/issues/11570)
- [Prisma Client: `.count` does not work with where](https://github.com/prisma/prisma/issues/11556)

Page 13 of 44

Links

Releases

Has known vulnerabilities

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.