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

fix(deps): update all non-major dependencies to ^4.11.0 #287

Merged
merged 1 commit into from
Mar 1, 2023

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Feb 28, 2023

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
@prisma/client (source) ^4.10.1 -> ^4.11.0 age adoption passing confidence
prisma (source) 4.10.1 -> 4.11.0 age adoption passing confidence

Release Notes

prisma/prisma

v4.11.0

Compare Source

🌟 Help us spread the word about Prisma by starring the repo or tweeting about the release. 🌟

Highlights

JSON protocol Early Preview

This release introduces an early Preview feature: JSON protocol.

If you have been using Prisma for a while, read our documentation about our Query Engine or peeked at our codebase, you might be aware that Prisma Client uses a GraphQL-like protocol to communicate to the Query Engine when you execute a query. This was mainly because of historical reasons (Prisma was born initially from the GraphQL backend-as-a-service “Graphcool”) and wasn't changed as it worked well.

During performance investigations and optimizations, though, we noticed that GraphQL added a CPU and memory overhead that was especially noticeable for larger Prisma schemas. Therefore, we found an alternative way to express our queries without needing that overhead: JSON.

To try out the new protocol, enable the jsonProtocol Preview feature in your Prisma schema:

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

Regenerate Prisma Client to use the new JSON protocol.

For environments or situations where it is not viable to enable the Preview feature flag to your Prisma schema file, we also added an environment variable that you can use to force the use of the JSON Protocol Preview feature: PRISMA_ENGINE_PROTOCOL=json.

Note: This is an early Preview feature with a significant limitation: Invalid input to Prisma Client will throw unpolished, internal errors that are less descriptive and user-friendly than our usual ones. We intend to improve these future releases.

We expect using jsonProtocol to improve Prisma Client's startup performance significantly. This will likely have a more significant impact on applications with larger Prisma schemas.

We would appreciate your feedback on this feature on the following particularly:

  1. Does using this preview feature introduce any regressions or problems in your application?
  2. If not, how does it influence the performance of your application? Can you share before and after measurements?

For feedback, please comment on the GitHub feedback issue.

Introspection support for MySQL, SQL Server, and CockroachDB views

You can now run prisma db pull against your database to populate your Prisma schema with your views in MySQL, SQL Server, and CockroachDB.

To learn more, refer to our documentation on views introspection. Try it out and let us know your thoughts in this GitHub issue.

Webpack plugin for Next.js apps using Prisma in monorepo setups

If you've been using Prisma Client in a Next.js app in a monorepo setup, you might have seen this infamous error message:

Error: ENOENT: no such file or directory, open schema.prisma

We finally pinpointed the problem's source to the Next.js bundling step and opened an issue in the Next.js repository for Vercel to investigate and hopefully fix it.

In the meantime, we've created a workaround via a webpack plugin that makes sure your Prisma schema is copied to the correct location: @prisma/nextjs-monorepo-workaround-plugin.

To use the plugin, first install it:

npm install -D @​prisma/nextjs-monorepo-workaround-plugin

Import the plugin into your next.config.js file and use it in config.plugins:

const { PrismaPlugin } = require('@​prisma/nextjs-monorepo-workaround-plugin')
module.exports = {
  webpack: (config, { isServer }) => {
    if (isServer) {
      config.plugins = [...config.plugins, new PrismaPlugin()]
    }
    return config
  },
}

For further information, refer to our documentation to learn how to use it and open an issue if it doesn't work as expected.

Fixes and improvements

Prisma Client
Prisma Migrate

Credits

Huge thanks to @​KhooHaoYit, @​rintaun, @​ivan, @​Mini256, @​Lioness100, @​yukukotani, @​sandrewTx08, @​fubhy, @​zachtil, @​unflxw, @​Mosaab-Emam for helping!

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

Learn about the latest release and other news from the Prisma community by joining us for another "What's new in Prisma" live stream.

The stream takes place on YouTube on Thursday, March 2 at 5 pm Berlin | 8 am San Francisco.


Configuration

📅 Schedule: Branch creation - "every weekend" (UTC), 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.


  • 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 requested review from JaronZ and mcpsbot as code owners February 28, 2023 22:06
@JaronZ JaronZ added this pull request to the merge queue Mar 1, 2023
Merged via the queue into main with commit d5b2cdb Mar 1, 2023
@renovate renovate bot deleted the renovate/all-minor-patch branch March 1, 2023 06:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant