Skip to content
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

chore(deps): update all non-major dev dependencies (minor) #460

Closed
wants to merge 1 commit into from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Mar 1, 2024

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
@types/node (source) 20.10.3 -> 20.11.30 age adoption passing confidence
prettier-plugin-tailwindcss ^0.4.0 -> ^0.5.0 age adoption passing confidence
prisma (source) 5.6.0 -> 5.11.0 age adoption passing confidence
typescript (source) 5.3.2 -> 5.4.3 age adoption passing confidence

Release Notes

tailwindlabs/prettier-plugin-tailwindcss (prettier-plugin-tailwindcss)

v0.5.12

Compare Source

Added
  • Add support for prettier-plugin-sort-imports (#​241)
  • Add support for Tailwind CSS v4.0 (#​249)

v0.5.11

Compare Source

Changed
  • Bumped bundled version of Tailwind CSS to v3.4.1 (#​240)

v0.5.10

Compare Source

Changed
  • Bumped bundled version of Tailwind CSS to v3.4 (#​235)

v0.5.9

Compare Source

Fixed
  • Fixed location of embedded preflight CSS file (#​231)

v0.5.8

Compare Source

Added
  • Re-enable support for prettier-plugin-marko (#​229)

v0.5.7

Compare Source

Fixed
  • Fix sorting inside dynamic custom attributes (#​225)

v0.5.6

Compare Source

Fixed
  • Fix sorting inside {{ … }} expressions when using @shopify/prettier-plugin-liquid v1.3+ (#​222)

v0.5.5

Compare Source

Fixed
  • Sort classes inside className in Astro (#​215)
  • Support member access on function calls (#​218)

v0.5.4

Compare Source

Fixed
  • Type tailwindFunctions and tailwindAttributes as optional (#​206)
  • Don’t break @apply … #{'!important'} sorting in SCSS (#​212)

v0.5.3

Compare Source

Fixed
  • Fix CJS __dirname interop on Windows (#​204)

v0.5.2

Compare Source

Fixed
  • Fix intertop with bundled CJS dependencies (#​199)

v0.5.1

Compare Source

Fixed
  • Updated Prettier peer dependency (#​197)

v0.5.0

Compare Source

Added
  • Sort expressions in Astro's class:list attribute (#​192)
  • Re-enabled support for plugins when using Prettier v3+ (#​195)
prisma/prisma (prisma)

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:

  • Vercel Edge Functions and Vercel Edge Middleware
  • Cloudflare Workers and Cloudflare Pages

In order to deploy to an edge function, you’ll need to use a compatible database driver (along with its Prisma driver adapter):

  • Neon Serverless Driver (for PostgreSQL databases hosted via Neon)
  • PlanetScale Serverless Driver (for MySQL databases hosted via PlanetScale)
  • 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 operations

With Prisma ORM, you can create multiple new records in nested queries, for example:

const user = await prisma.user.update({
  where: { id: 9 },
  data: {
    name: 'Elliott',
    posts: {
      create: {
        data: [{ title: 'My first post' }, { title: 'My second post' }],
      },
    },
  },
})

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 nested create queries are optimized and the INSERT 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 nested createMany operation (except that createMany only works with one-to-many relations, whereas create works both with one-to-many and many-to-many).

Note: Only the deepest nested operation is optimized. If a user specified create (1) -> create (2) -> create (3) in their query, only create (3) will be optimized.

Fixes and improvements
Prisma Client
Prisma Migrate
Prisma Engines

v5.10.2

Compare Source

Today, we are issuing the 5.10.2 patch release.

Fix in Prisma CLI

v5.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 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).
Configure transaction options in the PrismaClient constructor

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.

New P2037 code for “Too many database connections opened” errors

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

v5.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 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

Note: 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:

  • Improve the performance of relation queries by introducing JOINs (see last release).
  • Support deployment to edge functions (already available in Early Access, you can apply for trying it out by taking our survey).
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 the RETURNING keyword for several queries on PostrgeSQL and CockroachDB. We now expanded the use of RETURNING 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
Prisma Migrate
Language 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 IPv6. Learn more in this technical deep dive into how we approached our IPv6 migration, lessons learned, and the outcome for users of Prisma Accelerate.

Credits

Huge thanks to @​laplab, @​Druue, @​anuraaga, @​onichandame, @​LucianBuzzo, @​RobertCraigie, @​almeidx, @​victorgdb, @​tinola, @​sampolahtinen, @​AikoRamalho, @​petradonka for helping!

v5.8.1

Compare Source

Today, we are issuing the 5.8.1 patch release.

Fix in Prisma Client

v5.8.0

Compare Source

🌟 Help us spread the word about Prisma by starring the repo or posting on X about the release. 🌟

Highlights

Happy New Year from your friends at Prisma! 🎊

In the last 4 weeks, we resolved some bugs on the ORM and made some progress on some exciting features that we’re not yet ready to announce. Stay tuned for the upcoming releases, in which we’ll be announcing new features. 😉

relationJoins improvements: Relation loading strategy per query (Preview)

In version 5.7.0, we released relationJoins into Preview. The relationJoins feature enables support for JOINs for relation queries.

This release adds support for the ability to specify the strategy used to fetch relational data per query when the Preview feature is enabled. This will enable you to choose the most efficient strategy for fetching relation data depending on your use case.

You can now load relation data using either of the following strategies:

  • join — uses JOINs to fetch relation data
  • query — uses sub-queries to fetch relation data

When the relationJoins Preview feature is enabled, by default, the relation fetching strategy used is join. You can override the default behavior by using the relationLoadStrategy query option.

To get started, enable the Preview feature:

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

… and specify the relation loading strategy for your query as follows:

await prisma.user.findMany({
  relationLoadStrategy: 'query',
  include: {
    posts: true,
  },
})

Try it out and share your feedback and create a bug report if you encounter any issues.

Survey: Edge functions support

We’re working on bringing Edge function support to Prisma ORM and we would appreciate your input by submitting a response to our survey. By filling out the survey, you will be considered for our Early Access cohort as soon as we have something for you to try out.

Fixes and improvements
Prisma Client
Prisma Migrate
Language tools (e.g. VS Code)
Credits

Huge thanks to @​anuraaga, @​onichandame, @​LucianBuzzo, @​RobertCraigie, @​fqazi, @​KhooHaoYit, @​alencardc, @​Oreilles, @​tinola, @​AikoRamalho, @​luxaritas for helping!

Company news
🎉 A billion queries and counting: Prisma Accelerate

Prisma Accelerate, our global database cache has served over 1 billion queries since its General Availability launch.

We’d like to give a shoutout to our team and everyone who’s been with us on this journey. Stay tuned for some exciting products and features in the pipeline for 2024!

🔮 Prisma ORM Ecosystem

Are you building a cool tool, extension, generator, CLI tool or anything else, for Prisma ORM? Let us know.

We would like to learn about it and feature it on our Ecosystem page.

💼 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. Check out our Careers page for open positions.

v5.7.1

Compare Source

Today, we are issuing the 5.7.1 patch release.

This patch fixes multiple small problems in our relationJoins preview feature. If you ran into problems when testing relationJoins before, please give it another go with 5.7.1 and share your feedback or create a bug report if you encounter any issues.

Fixes in Prisma Client

v5.7.0

Compare Source

🌟 Help us spread the word about Prisma by starring the repo or posting on X (formerly Twitter) about the release.

Highlights

✨ In this release, we improved the SQL queries Prisma Client generates for you with two new Preview features, the 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 JOINs for relation queries for PostgreSQL and CockroachDB

We’re excited to announce Preview support for JOINs in Prisma Client when querying relations. Support for JOINs has been a long-standing feature request, and this release adds support for PostgreSQL and CockroachDB. The upcoming releases will expand support for other databases Prisma supports.

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

// 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

1-1 relation queries example

Prisma Client query

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

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
1-m relation queries example

Prisma Client query

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

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
m-n relation queries example

Prisma Client query

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

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

Share your feedback and create a bug report 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. 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:

// 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:

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:

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

After 5.7.0

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

Share your feedback and create a bug report 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 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
Prisma
Prisma Migrate
Credits

Huge thanks to @​anuraaga, @​onichandame, @​LucianBuzzo, @​RobertCraigie, @​fqazi, @​KhooHaoYit, @​alencardc, @​Oreilles, @​christianledgard, @​skyzh, @​alula, @​AikoRamalho, @​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:

Microsoft/TypeScript (typescript)

v5.4.3: TypeScript 5.4.3

Compare Source

For release notes, check out the release announcement.

For the complete list of fixed issues, check out the

Downloads are available on:

v5.4.2: TypeScript 5.4

Compare Source

For release notes, check out the release announcement.

For the complete list of fixed issues, check out the

Downloads are available on:

v5.3.3: TypeScript 5.3.3

Compare Source

For release notes, check out the release announcement.

For the complete list of fixed issues, check out the

Downloads are available on:


Configuration

📅 Schedule: Branch creation - "before 4am on the first day of the month" in timezone Europe/Paris, 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.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

@renovate renovate bot added the dependencies Pull requests that update a dependency file label Mar 1, 2024
@renovate renovate bot force-pushed the renovate/all-devdependencies-minor-patch branch from 2f9e300 to 9e6906c Compare March 6, 2024 17:27
Copy link

socket-security bot commented Mar 6, 2024

👍 Dependency issues cleared. Learn more about Socket for GitHub ↗︎

This PR previously contained dependency changes with security issues that have been resolved, removed, or ignored.

View full report↗︎

@renovate renovate bot force-pushed the renovate/all-devdependencies-minor-patch branch 4 times, most recently from 2e141ee to d0fce32 Compare March 13, 2024 17:43
@renovate renovate bot force-pushed the renovate/all-devdependencies-minor-patch branch 3 times, most recently from 9e3a13f to 8e20f78 Compare March 18, 2024 20:29
Copy link
Contributor Author

renovate bot commented Mar 18, 2024

⚠ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: package-lock.json
undefined

@renovate renovate bot force-pushed the renovate/all-devdependencies-minor-patch branch from 8e20f78 to 43622de Compare March 19, 2024 13:51
@renovate renovate bot force-pushed the renovate/all-devdependencies-minor-patch branch from 43622de to 5ebca41 Compare March 20, 2024 20:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant