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 prisma monorepo to v2.30.3 #38

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Jul 13, 2021

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
@prisma/client (source) 2.26.0 -> 2.30.3 age adoption passing confidence
prisma (source) 2.26.0 -> 2.30.3 age adoption passing confidence

Release Notes

prisma/prisma

v2.30.3

Compare Source

Today, we are issuing the 2.30.3 patch release.

Improvements

Prisma CLI

Fixes

Prisma Studio

v2.30.2

Today, we are issuing the 2.30.2 patch release.

Fixes

Prisma Client

v2.30.0

Compare Source

Today, we are excited to share the 2.30.0 stable release 🎉

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

New features & improvements

Full-Text Search for PostgreSQL is now in Preview 🚀

We're excited to announce that Prisma Client now has preview support for Full-Text Search on PostgreSQL.

You can give this a whirl in 2.30.0 by enabling the fullTextSearch preview flag:

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

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

model Post {
  id     Int    @​id @​default(autoincrement())
  title  String @​unique
  body   String
  status Status
}

enum Status {
  Draft
  Published
}

After you regenerate your client, you'll see a new search field on your String fields that you can query on. Here are a few examples:

// returns all posts that contain the words cat *or* dog.
const result = await prisma.post.findMany({
  where: {
    body: {
      search: 'cat | dog',
    },
  },
})

// All drafts that contain the words cat *and* dog.
const result = await prisma.posts.findMany({
  where: {
    status: "Draft",
    body: {
      search: 'cat & dog',
    },
  },
})

You can learn more about how the query format works in our documentation. We would love to know your feedback! If you have any comments or run into any problems we're available in this in this Github issue.

Validation errors for referential action cycles on Microsoft SQL Server ℹ

Microsoft SQL Server has validation rules for your schema migrations that reject schema changes that introduce referential action cycles.
These scenarios tend to show up often for developers using the referentialActions preview feature, which will become the default. The database error you get is not really helpful, so to provide a better experience, Prisma now checks for referential cycle actions when it validates your schema file and shows you the exact location of the cycle in your schema.

To learn more, check out the documentation.

prisma introspect is being deprecated in favor of prisma db pull 👋🏻

The prisma introspect command is an alias for prisma db pull so they are the same command. However, prisma db pull is more intuitive since it pulls the schema from the database into your local schema.prisma file. This naming also works as the counterpart of prisma db push.

Starting with this release, you will get a warning that encourages you to use prisma db pull instead of prisma introspect.

Prisma Adopts Semantic Versioning (SemVer)

As previously announced, we are adjusting our release policy to adhere more strictly to Semantic Versioning.

In the future, breaking changes in the stable development surface i.e. General Availability will only be rolled out with major version increments.

You can learn more about the change in the announcement blog post.

Fixes and improvements

Prisma Client
Prisma Migrate
Language tools (e.g. VS Code)
@​prisma/engines npm package

Credits

Huge thanks to @​saintmalik 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" livestream.

The stream takes place on Youtube on Thursday, August 26 at 5pm Berlin | 8am San Francisco.

v2.29.1

Compare Source

Today, we are issuing the 2.29.1 patch release.

Fixes

Prisma Client

v2.29.0

Compare Source

Today, we are excited to share the 2.29.0 stable release 🎉

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

Major improvements & new features

Interactive Transactions are now in Preview

Today we’re introducing Interactive Transactions – one of our most debated feature requests.

Interactive Transactions are a double-edged sword. While they allow you to ignore a class of errors that could otherwise occur with concurrent database access, they impose constraints on performance and scalability.

While we believe there are better alternative approaches, we certainly want to ensure people who absolutely need them have the option available.

You can opt-in to Interactive Transactions by setting the interactiveTransactions preview feature in your Prisma Schema:

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

Note that the interactive transactions API does not support controlling isolation levels or locking for now.

You can find out more about implementing use cases with transactions in the docs, and share your feedback.

Named Constraints are now in Preview

Named Constraints allow you to represent (when using introspection) and specify (when using Prisma Migrate) the names of constraints of the underlying database schema in your Prisma schema.

Before this release, you could only specify the underlying database constraint names for @@​unique and @@​index. This meant that you didn't have control over all constraint names in the database schema. In projects that adopted Prisma with introspection, some constraint names from the database were not represented in the Prisma schema. This could lead to the database schema across environments getting out of sync when one environment was introspected, and another was created with Prisma Migrate and had different constraint names.

Starting with this release, you can specify the underlying database constraint names for @id, @@​id, @unique, and @relation constraints.

You can opt-in to Named Constraints by adding the namedConstraints preview feature to your Prisma Schema:

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

After enabling the namedConstraints preview flag, you can specify the names of constraints in the database schema using the map attribute:

  • @id(map: "custom_primary_key_constraint_name")
  • @@​id([field1, field2], map: "custom_compound_primary_key_name")
  • @unique(map: "custom_unique_constraint_name")
  • @@​unique([field1, field2], map: "custom_compound_unique_constraint_name")
  • @@​index([field1, field2], map: "custom_index_name")
  • @relation(fields: [fieldId], references: [id], map: "custom_foreign_key_name")

After specifying the map attribute, Prisma Migrate will use it when creating migrations.

When using prisma db pull with namedConstraints, these names will be automatically populated in your Prisma schema unless they match our default naming convention (which follows the Postgres convention). When handwriting a Prisma schema, these names are optional and will alternatively be filled with the default names by Prisma under the hood.

The name argument in @@​unique and @@​id

In addition to the map argument, the @@​unique and the @@​id attributes have the name argument (optional) that Prisma uses to generate the WhereUnique argument in the Prisma Client API.

Note: You can use both name and map together, e.g. @@​unique([firstName, lastName], name: "NameOfWhereUniqueArg", map: "NameOfUniqueConstraintInDB")

For example, given the following model:

model User {
  firstName String
  lastName  String

  @​@​id([firstName, lastName])
}

The following Prisma Client query is valid:

const user = await prisma.user.findUnique({
  where: {
    // firstName_lastName is the default `name`
    firstName_lastName: {
      firstName: 'Ada',
      lastName: 'Lovelace',
    },
  },
})

By adding the name argument to the @@​id attribute:

model User {
  firstName String
  lastName  String

-  @​@​id([firstName, lastName])
+  @​@​id([firstName, lastName], name: "fullname")
}

The following query is valid:

const user = await prisma.user.findUnique({
  where: {
    // fullname comes from the name argument
    fullname: {
      firstName: 'Ada',
      lastName: 'Lovelace',
    },
  },
})

Note: For the @@​unique attribute this functionality was already available in previous releases. For @@​id this is new.


You can learn more about namedConstraints in our documentation.

Please check our upgrade guide before enabling the preview flag and running migrate operations for the first time. It explains what to do if you either want to keep the existing names in your database or want to switch to the default names for a cleaner Prisma schema.

Prisma Adopts Semantic Versioning (SemVer)

As previously announced, we are adjusting our release policy to adhere more strictly to Semantic Versioning.

In the future, breaking changes in the stable development surface i.e. General Availability will only be rolled out with major version increments.

You can learn more about the change in the announcement blog post.

Fixes and improvements

Prisma Client
Prisma Migrate

Credits

Huge thanks to @​benkenawell 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" livestream.

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

v2.28.0

Compare Source

Today, we are excited to share the 2.28.0 stable release 🎉

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

MongoDB improvements 🚀

Thanks to your feedback, we fixed a handful of bugs reported on the MongoDB connector (Preview):

  • Concurrent findUnique queries leading to an error #​8276
  • Filtering by relations wasn't working properly #​7057
  • Filtering on an array of IDs #​6998

Please keep reporting issues to our team and help to bring MongoDB support closer to GA!

Prisma Adopts Semantic Versioning (SemVer)

We are adjusting our release policy to adhere more strictly to Semantic Versioning.

In the future, breaking changes in the stable development surface i.e. General Availability will only be rolled out with major version increments.

You can learn more about the change in the announcement blog post.

Create new Prisma projects in under 3 minutes ⏳

The latest release of the Prisma Data Platform enables you to create new Prisma projects and provision a database in under 3 minutes.

The Prisma Data Platform already allows you to:

  • Explore data in the database using the data browser.
  • Add other users to it, such as your teammates or your clients.
  • Assign users one of four roles: Admin, Developer, Collaborator, Viewer.
  • View and edit your data collaboratively online.

The new onboarding flow makes it possible to get started with Prisma quickly for new Prisma projects! 🚀

When creating a new Prisma project, the Prisma Data Platform allows you to:

  • Choose a Prisma schema from a selection of our templates.
  • Create a free PostgreSQL database on Heroku.
  • Populate the database with seed data.

If you already have a Prisma project, you can continue to import it from GitHub and connect it to your database.

This whole process now takes less than 3 minutes to set up, so we’re looking forward to seeing how you will use this feature for your prototyping and production needs.

If you have any issues or questions, let us know by opening a GitHub issue.

Quick overview

If you have a Heroku account, we can create a free Postgres database for you:

Prisma cloud onboarding

Start your project with a schema from our templates:

schema_templates

Interested in Prisma’s upcoming Data Proxy for serverless backends? Get notified! 👀

Database connection management in serverless backends is challenging: taming the number of database connections, additional query latencies for setting up connections, etc.

At Prisma, we are working on a Prisma Data Proxy that makes integrating traditional relational and NoSQL databases in serverless Prisma-backed applications a breeze. If you are interested, you can sign up to get notified of our upcoming Early Access Program here:

https://pris.ly/prisma-data-proxy

Fixes and improvements

Prisma Client
Prisma Migrate
Prisma Studio

Credits

Huge thanks to @​ShubhankarKG, @​hehex9 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" livestream.

The stream takes place on Youtube on Thursday, July 15 at 5pm Berlin | 8am San Francisco.

v2.27.0

Compare Source

Today, we are excited to share the 2.27.0 stable release 🎉

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

Major improvements & new features

MongoDB is Now in Preview 🎉

We're thrilled to announce that Prisma now has Preview support for MongoDB. Here's how to get started:

Inside your schema.prisma file, you'll need to set the database provider to mongodb. You'll also need to add mongoDb to the previewFeatures property in the generator block:

// Set the database provider to "mongodb"
datasource db {
  provider = "mongodb"
  url      = env("DATABASE_URL")
}

// We want to generate a Prisma Client
// Since mongodb is a preview feature, we need to enable it.
generator client {
  provider        = "prisma-client-js"
  previewFeatures = ["mongoDb"]
}

// Create our Post model which will be mapped to a collection in the database.
// All posts have a required `title`, `slug` and `body` fields.
// The id attributes tell Prisma it's a primary key and to generate 
// object ids by default when inserting posts.
model Post {
  id    String @​id @​default(dbgenerated()) @​map("_id") @​db.ObjectId
  slug  String @​unique
  title String
  body  String
}

Next, you'll need to add a database connection string to your .env file. We recommend using MongoDB Atlas to spin up a MongoDB database for free. Set the DATABASE_URL to the connection string you got from MongoDB Atlas, it should be similar to the following string:

DATABASE_URL="mongodb+srv://admin:<password>@&#8203;cluster0.quvqo.mongodb.net/myFirstDatabase?retryWrites=true&w=majority"

❗️ Don't forget to include the username and password you set while creating the database in the connection string, otherwise you won't be able to connect to it.

Then you can run npx prisma generate to generate a MongoDB-compatible Prisma Client. The Prisma Client API is the same for Mongo as it is for other supported relational databases (PostgreSQL, MySQL, SQLite and Microsoft SQL Server).

To test that everything works, you can run the following script:

import { PrismaClient } from "@&#8203;prisma/client"
const prisma = new PrismaClient()

async function main() {
  // Create the first post
  await prisma.post.create({
    data: {
      title: "Prisma <3 MongoDB",
      slug: "prisma-loves-mongodb",
      body: "This is my first post. Isn't MongoDB + Prisma awesome?!",
    },
  })
  // Log our posts showing nested structures
  console.dir(posts, { depth: Infinity })
}

main()
  .catch(console.error)
  .finally(() => prisma.$disconnect())

You should see a new post created and added to your database! You can use Prisma Studio to view the record you just added by running npx prisma studio.

This is just the tip of the iceberg. Learn more in our Getting Started Guide.

We would love to know your feedback! If you have any comments or run into any problems we're available in this issue. You can also browse existing issues that have the MongoDB label.

Prisma native support for M1 Macs 🚀

This one's for our Mac users. Prisma now runs natively on the new M1 chips. Best of all, there's nothing to configure, it just works. Enjoy the speed bump!

Fixes and improvements

Prisma Client
Prisma Migrate

📺 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" livestream.

The stream takes place on Youtube on Thursday, July 15 at 5pm Berlin | 8am San Francisco.


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), 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.

🔕 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 force-pushed the renovate/prisma-monorepo branch from 1e60dfe to efa1749 Compare July 27, 2021 09:33
@renovate renovate bot changed the title fix(deps): update prisma monorepo to v2.27.0 fix(deps): update prisma monorepo to v2.28.0 Jul 27, 2021
@renovate renovate bot changed the title fix(deps): update prisma monorepo to v2.28.0 fix(deps): update prisma monorepo to v2.29.0 Aug 10, 2021
@renovate renovate bot force-pushed the renovate/prisma-monorepo branch 2 times, most recently from 49264f4 to 058a980 Compare August 13, 2021 13:37
@renovate renovate bot changed the title fix(deps): update prisma monorepo to v2.29.0 fix(deps): update prisma monorepo Aug 13, 2021
@renovate renovate bot force-pushed the renovate/prisma-monorepo branch from 058a980 to 89ce2e9 Compare August 13, 2021 14:41
@renovate renovate bot changed the title fix(deps): update prisma monorepo fix(deps): update prisma monorepo to v2.29.1 Aug 13, 2021
@renovate renovate bot force-pushed the renovate/prisma-monorepo branch from 89ce2e9 to f3c6ad3 Compare August 24, 2021 16:24
@renovate renovate bot changed the title fix(deps): update prisma monorepo to v2.29.1 fix(deps): update prisma monorepo to v2.30.0 Aug 24, 2021
@renovate renovate bot force-pushed the renovate/prisma-monorepo branch from f3c6ad3 to 2842af3 Compare August 30, 2021 15:28
@renovate renovate bot changed the title fix(deps): update prisma monorepo to v2.30.0 fix(deps): update prisma monorepo to v2.30.1 Aug 30, 2021
@renovate renovate bot force-pushed the renovate/prisma-monorepo branch from 2842af3 to b5fe488 Compare August 30, 2021 16:29
@renovate renovate bot changed the title fix(deps): update prisma monorepo to v2.30.1 fix(deps): update prisma monorepo Aug 30, 2021
@renovate renovate bot force-pushed the renovate/prisma-monorepo branch from b5fe488 to a5f335e Compare August 30, 2021 18:35
@renovate renovate bot changed the title fix(deps): update prisma monorepo fix(deps): update prisma monorepo to v2.30.2 Aug 30, 2021
@renovate renovate bot force-pushed the renovate/prisma-monorepo branch from a5f335e to ce13b9d Compare September 2, 2021 17:20
@renovate renovate bot changed the title fix(deps): update prisma monorepo to v2.30.2 fix(deps): update prisma monorepo to v2.30.3 Sep 2, 2021
@renovate
Copy link
Contributor Author

renovate bot commented Mar 23, 2023

Edited/Blocked Notification

Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.

You can manually request rebase by checking the rebase/retry box above.

⚠️ Warning: custom changes will be lost.

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