Skip to content

Commit

Permalink
fix(deps): update prisma monorepo to v5.7.0 (redwoodjs#9642)
Browse files Browse the repository at this point in the history
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@prisma/client](https://www.prisma.io)
([source](https://togithub.com/prisma/prisma/tree/HEAD/packages/client))
| [`5.6.0` ->
`5.7.0`](https://renovatebot.com/diffs/npm/@prisma%2fclient/5.6.0/5.7.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@prisma%2fclient/5.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@prisma%2fclient/5.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@prisma%2fclient/5.6.0/5.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@prisma%2fclient/5.6.0/5.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [@prisma/internals](https://www.prisma.io)
([source](https://togithub.com/prisma/prisma/tree/HEAD/packages/internals))
| [`5.6.0` ->
`5.7.0`](https://renovatebot.com/diffs/npm/@prisma%2finternals/5.6.0/5.7.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@prisma%2finternals/5.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@prisma%2finternals/5.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@prisma%2finternals/5.6.0/5.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@prisma%2finternals/5.6.0/5.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [prisma](https://www.prisma.io)
([source](https://togithub.com/prisma/prisma/tree/HEAD/packages/cli)) |
[`5.6.0` ->
`5.7.0`](https://renovatebot.com/diffs/npm/prisma/5.6.0/5.7.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/prisma/5.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/prisma/5.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/prisma/5.6.0/5.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/prisma/5.6.0/5.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>prisma/prisma (@&redwoodjs#8203;prisma/client)</summary>

### [`v5.7.0`](https://togithub.com/prisma/prisma/compare/5.6.0...5.7.0)

[Compare
Source](https://togithub.com/prisma/prisma/compare/5.6.0...5.7.0)

</details>

<details>
<summary>prisma/prisma (@&redwoodjs#8203;prisma/internals)</summary>

### [`v5.7.0`](https://togithub.com/prisma/prisma/releases/tag/5.7.0)

[Compare
Source](https://togithub.com/prisma/prisma/compare/5.6.0...5.7.0)

🌟 **Help us spread the word about Prisma by starring the repo or
[posting on X (formerly
Twitter)](https://twitter.com/intent/tweet?text=Check%20out%20the%20latest%20@&#8203;prisma%20release%20v5.7.0%20%F0%9F%9A%80%0D%0A%0D%0Ahttps://github.com/prisma/prisma/releases/tag/5.7.0)
about the release.**

##### Highlights

✨ In this release, we improved the SQL queries Prisma Client generates
for you with two
new [Preview](https://www.prisma.io/docs/about/prisma/releases#preview) features,
the [driver
adapters](https://www.prisma.io/docs/concepts/components/database-drivers#driver-adapters),
and support for the database drivers we currently support. 5.7.0 will be
the last release of the year. Stay tuned for the next one in January! ✨

##### Preview support for `JOIN`s for relation queries for PostgreSQL
and CockroachDB

We’re excited to announce Preview support for `JOIN`s in Prisma Client
when querying relations. Support for `JOIN`s has been a [long-standing
feature request](https://togithub.com/prisma/prisma/issues/5184), and
this release adds support for PostgreSQL and CockroachDB. The upcoming
releases will expand support for other databases Prisma supports.

To get started using `JOIN`s, enable the Preview feature in your Prisma
schema:

```prisma
// schema.prisma
generator client {
  provider        = "prisma-client-js"
  previewFeatures = ["relationJoins"]
}
```

Run `prisma generate` to regenerate Prisma Client and enable the Preview
feature.

Prisma Client will use a `JOIN` in your query to fetch relation data for
a majority of the cases.

**Example queries**

<details>

<summary><b>1-1 relation queries example</b></summary>

**Prisma Client query**

```tsx
await prisma.user.findUnique({
	where: {
		id: 1
	},
	include: {
		profile: true
	}
})
```

**SQL**

```sql
SELECT
	"t1"."id",
	"t1"."name",
	"User_profile"."__prisma_data__" AS "profile"
FROM
	"public"."User" AS "t1"
	LEFT JOIN LATERAL (
		SELECT
			COALESCE(JSON_AGG("__prisma_data__"), '[]') AS "__prisma_data__"
		FROM
			(
				SELECT
					"t4"."__prisma_data__"
				FROM
					(
						SELECT
							JSON_BUILD_OBJECT(
								'id',
								"t3"."id",
								'bio',
								"t3"."bio",
								'userId',
								"t3"."userId"
							) AS "__prisma_data__"
						FROM
							(
								SELECT
									"t2".*
								FROM
									"public"."Profile" AS "t2"
								WHERE
									"t1"."id" = "t2"."userId"
							) AS "t3"
					) AS "t4"
			) AS "t5"
	) AS "User_profile" ON TRUE
WHERE "t1"."id" = $1
LIMIT $2
```

</details>

<details>

<summary><b>1-m relation queries example</b></summary>

**Prisma Client query**

```tsx
await prisma.user.findUnique({
	where: {
		id: 1
	},
	include: {
		posts: true
	}
})
```

**SQL**

```sql
SELECT
	"t1"."id",
	"t1"."name",
	"User_posts"."__prisma_data__" AS "posts"
FROM
	"public"."User" AS "t1"
	LEFT JOIN LATERAL (
		SELECT
			COALESCE(JSON_AGG("__prisma_data__"), '[]') AS "__prisma_data__"
		FROM
			(
				SELECT
					"t4"."__prisma_data__"
				FROM
					(
						SELECT
							JSON_BUILD_OBJECT(
								'id',
								"t3"."id",
								'title',
								"t3"."title",
								'content',
								"t3"."content",
								'published',
								"t3"."published",
								'authorId',
								"t3"."authorId"
							) AS "__prisma_data__"
						FROM
							(
								SELECT
									"t2".*
								FROM
									"public"."Post" AS "t2"
								WHERE
									"t1"."id" = "t2"."authorId"
									/* root select */
							) AS "t3"
							/* inner select */
					) AS "t4"
					/* middle select */
			) AS "t5"
			/* outer select */
	) AS "User_posts" ON TRUE
WHERE "t1"."id" = $1
LIMIT $2
```

</details>

<details>

<summary><b>m-n relation queries example</b></summary>

**Prisma Client query**

```tsx
await prisma.post.findUnique({
	where: {
		id: 1
	},
	include: {
		tags: true
	}
})
```

**SQL**

```sql
SELECT
	"t1"."id",
	"t1"."title",
	"t1"."content",
	"t1"."published",
	"t1"."authorId",
	"Post_tags_m2m"."__prisma_data__" AS "tags"
FROM
	"public"."Post" AS "t1"
	LEFT JOIN LATERAL (
		SELECT
			COALESCE(JSON_AGG("__prisma_data__"), '[]') AS "__prisma_data__"
		FROM
			(
				SELECT
					"Post_tags"."__prisma_data__"
				FROM
					"public"."_PostToTag" AS "t2"
					LEFT JOIN LATERAL (
						SELECT
							JSON_BUILD_OBJECT('id', "t4"."id", 'name', "t4"."name") AS "__prisma_data__",
							"t4"."id"
						FROM
							(
								SELECT
									"t3".*
								FROM
									"public"."Tag" AS "t3"
								WHERE
									"t2"."B" = "t3"."id"
									/* root select */
							) AS "t4"
					) AS "Post_tags" ON TRUE
				WHERE
					"t2"."A" = "t1"."id"
			) AS "Post_tags_m2m_1"
	) AS "Post_tags_m2m" ON TRUE
WHERE "t1"."id" = $1
LIMIT $2
```

</details>

[Share your
feedback](https://togithub.com/prisma/prisma/discussions/22288) and
create a [bug
report](https://togithub.com/prisma/prisma/issues/new?assignees=\&labels=kind/bug\&projects=\&template=bug_report.yml)
if you encounter any issues.

##### Prisma’s `distinct` option now uses SQL queries (Preview)

From this release, Prisma Client’s `distinct` option now uses the native
SQL `DISTINCT ON` for unordered queries with PostgreSQL and CockroachDB.
The upcoming releases will expand support for the other databases that
Prisma supports.

Prisma Client already supports [querying for distinct
records](https://www.prisma.io/docs/concepts/components/prisma-client/aggregation-grouping-summarizing#select-distinct).
However, Prisma Client took care of the post-processing for distinct
records in memory.

To get started, enable the Preview feature in your Prisma schema:

```prisma
// schema.prisma
generator client {
  provider        = "prisma-client-js"
  previewFeatures = ["nativeDistinct"]
}
```

Regenerate your Prisma Client to get started using the Preview feature.

Given the following Prisma Client query:

```tsx
await prisma.user.findMany({
    distinct: ['role'],
    select: {
      role: true,
    },
})
```

**Before 5.7.0**

Previously, Prisma Client handled the post-processing to select distinct
records in-memory. Therefore, the following query was generated and
executed against your database:

```sql
SELECT
	"public"."User"."id",
	"public"."User"."role"::text
FROM
	"public"."User"
WHERE
	1 = 1 OFFSET $1
```

**After 5.7.0**

```sql
SELECT DISTINCT ON ("public"."User"."role")
	"public"."User"."id",
	"public"."User"."role"::text
FROM
	"public"."User"
WHERE
	1 = 1 OFFSET $1
```

[Share your
feedback](https://togithub.com/prisma/prisma/discussions/22287) and
create a [bug
report](https://togithub.com/prisma/prisma/issues/new?assignees=\&labels=kind/bug\&projects=\&template=bug_report.yml)
if you encounter any issues.

##### Improved support for Netlify using Node.js v20

In this release, we improved Prisma support when deploying to Netlify on
Node.js v20. Previously, the Prisma Client could not resolve the
location of the Query Engine after deploying to Netlify when using
Node.js v20. If you run into this issue, we recommend updating to Prisma
v5.7.0.

We recommend giving [this
comment](https://togithub.com/prisma/prisma/issues/22244#issuecomment-1842847194)
on GitHub a read if you are not yet able to upgrade Prisma, to learn how
to get around the error.

##### Fixes and improvements

##### Prisma Client

- [Update: `InterpretationError("Unable to convert expression result
into a set of selection results", None)` (starting with
5.2.0)](https://togithub.com/prisma/prisma/issues/21182)
- [Error when inserting record with array enum column after
`TRUNCATE`ing the table on CockroachDB: `placeholder $1 already has type
string, cannot assign
Color`](https://togithub.com/prisma/prisma/issues/21901)
- [Netlify deployment with Node 20 break Prisma (`Prisma Client could
not locate the Query Engine for runtime
"rhel-openssl-3.0.x"`)](https://togithub.com/prisma/prisma/issues/22244)

##### Prisma

- [Planetscale Driver doesn't work anymore after updating to 5.6.0
](https://togithub.com/prisma/prisma/issues/21956)

##### Prisma Migrate

- [`prisma debug` command does not show env variables declared in `.env`
file](https://togithub.com/prisma/prisma/issues/21968)

##### Credits

Huge thanks to [@&redwoodjs#8203;anuraaga](https://togithub.com/anuraaga),
[@&redwoodjs#8203;onichandame](https://togithub.com/onichandame),
[@&redwoodjs#8203;LucianBuzzo](https://togithub.com/LucianBuzzo),
[@&redwoodjs#8203;RobertCraigie](https://togithub.com/RobertCraigie),
[@&redwoodjs#8203;fqazi](https://togithub.com/fqazi),
[@&redwoodjs#8203;KhooHaoYit](https://togithub.com/KhooHaoYit),
[@&redwoodjs#8203;alencardc](https://togithub.com/alencardc),
[@&redwoodjs#8203;Oreilles](https://togithub.com/Oreilles),
[@&redwoodjs#8203;christianledgard](https://togithub.com/christianledgard),
[@&redwoodjs#8203;skyzh](https://togithub.com/skyzh),
[@&redwoodjs#8203;alula](https://togithub.com/alula),
[@&redwoodjs#8203;AikoRamalho](https://togithub.com/AikoRamalho),
[@&redwoodjs#8203;petradonka](https://togithub.com/petradonka) for helping!

##### Company news

##### 💼 We’re hiring!

If you're interested in joining our growing team to help empower
developers to build data-intensive applications, Prisma is the place for
you.

We're hiring for the following roles:

- [Manager: Developer
Advocacy](https://boards.greenhouse.io/prisma/jobs/7051313002)
- [Software
Engineer](https://boards.greenhouse.io/prisma/jobs/7034499002)

</details>

<details>
<summary>prisma/prisma (prisma)</summary>

### [`v5.7.0`](https://togithub.com/prisma/prisma/compare/5.6.0...5.7.0)

[Compare
Source](https://togithub.com/prisma/prisma/compare/5.6.0...5.7.0)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **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.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/redwoodjs/redwood).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy44Ny4yIiwidXBkYXRlZEluVmVyIjoiMzcuODcuMiIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Dominic Saadi <[email protected]>
  • Loading branch information
renovate[bot] and jtoar authored Dec 7, 2023
1 parent 3ca1f03 commit 3bcc0a6
Show file tree
Hide file tree
Showing 9 changed files with 231 additions and 450 deletions.
4 changes: 3 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -94,10 +94,12 @@ jobs:

- uses: actions/checkout@v4

# Temporarily pinned to `18.18` because `18.19` has a breaking change
# related to loaders affecting one of our tests.
- name: ⬢ Set up Node.js
uses: actions/setup-node@v4
with:
node-version: 18
node-version: 18.18

- name: 🐈 Set up yarn cache
uses: ./.github/actions/set-up-yarn-cache
Expand Down
4 changes: 3 additions & 1 deletion .github/workflows/publish-canary.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,10 +28,12 @@ jobs:
with:
fetch-depth: 0

# Temporarily pinned to `18.18` because `18.19` has a breaking change
# related to loaders affecting one of our tests.
- name: ⬢ Set up Node.js
uses: actions/setup-node@v4
with:
node-version: 18
node-version: 18.18

- name: 🐈 Set up yarn cache
uses: ./.github/actions/set-up-yarn-cache
Expand Down
4 changes: 3 additions & 1 deletion .github/workflows/publish-release-candidate.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,10 +62,12 @@ jobs:
# This is required because lerna uses tags to determine the version.
fetch-depth: 0

# Temporarily pinned to `18.18` because `18.19` has a breaking change
# related to loaders affecting one of our tests.
- name: ⬢ Set up Node.js
uses: actions/setup-node@v4
with:
node-version: 18
node-version: 18.18

- name: 🐈 Set up yarn cache
uses: ./.github/actions/set-up-yarn-cache
Expand Down
2 changes: 1 addition & 1 deletion packages/api/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
},
"dependencies": {
"@babel/runtime-corejs3": "7.23.5",
"@prisma/client": "5.6.0",
"@prisma/client": "5.7.0",
"@whatwg-node/fetch": "0.9.14",
"core-js": "3.33.3",
"humanize-string": "2.1.0",
Expand Down
2 changes: 1 addition & 1 deletion packages/cli-packages/dataMigrate/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
"yargs": "17.7.2"
},
"devDependencies": {
"@prisma/client": "5.6.0",
"@prisma/client": "5.7.0",
"@types/fs-extra": "11.0.4",
"@types/yargs": "17.0.31",
"esbuild": "0.19.5",
Expand Down
6 changes: 4 additions & 2 deletions packages/cli/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
"@opentelemetry/resources": "1.18.1",
"@opentelemetry/sdk-trace-node": "1.18.1",
"@opentelemetry/semantic-conventions": "1.18.1",
"@prisma/internals": "5.6.0",
"@prisma/internals": "5.7.0",
"@redwoodjs/api-server": "6.0.7",
"@redwoodjs/cli-helpers": "6.0.7",
"@redwoodjs/fastify": "6.0.7",
Expand All @@ -45,6 +45,7 @@
"@redwoodjs/project-config": "6.0.7",
"@redwoodjs/structure": "6.0.7",
"@redwoodjs/telemetry": "6.0.7",
"archiver": "6.0.1",
"boxen": "5.1.2",
"camelcase": "6.3.0",
"chalk": "4.1.2",
Expand All @@ -69,7 +70,7 @@
"pluralize": "8.0.0",
"portfinder": "1.0.32",
"prettier": "2.8.8",
"prisma": "5.6.0",
"prisma": "5.7.0",
"prompts": "2.4.2",
"rimraf": "5.0.5",
"semver": "7.5.4",
Expand All @@ -83,6 +84,7 @@
"devDependencies": {
"@babel/cli": "7.23.4",
"@babel/core": "^7.22.20",
"@types/archiver": "^6",
"jest": "29.7.0",
"typescript": "5.3.2"
},
Expand Down
4 changes: 2 additions & 2 deletions packages/record/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,14 +28,14 @@
},
"dependencies": {
"@babel/runtime-corejs3": "7.23.5",
"@prisma/client": "5.6.0",
"@prisma/client": "5.7.0",
"@redwoodjs/project-config": "6.0.7",
"core-js": "3.33.3"
},
"devDependencies": {
"@babel/cli": "7.23.4",
"@babel/core": "^7.22.20",
"@prisma/internals": "5.6.0",
"@prisma/internals": "5.7.0",
"esbuild": "0.19.5",
"jest": "29.7.0"
},
Expand Down
2 changes: 1 addition & 1 deletion packages/structure/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
"dependencies": {
"@babel/runtime-corejs3": "7.23.5",
"@iarna/toml": "2.2.5",
"@prisma/internals": "5.6.0",
"@prisma/internals": "5.7.0",
"@redwoodjs/project-config": "6.0.7",
"@types/line-column": "1.0.0",
"camelcase": "6.3.0",
Expand Down
Loading

0 comments on commit 3bcc0a6

Please sign in to comment.