3.6.0 #10513
Closed
Jolg42
announced in
Announcements
3.6.0
#10513
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Today, we are excited to share the
3.6.0stable release 🎉🌟 Help us spread the word about Prisma by starring the repo or tweeting about the release. 🌟
Major improvements & new features
Prisma Migrate
Full-text index support in MySQL and MongoDB (Preview)
In this version we introduce support for full-text indexes in the
db pull,db pushandmigratecommands for MySQL and MongoDB databases as a Preview feature. This allows using them in the Prisma schema and prevents validation errors in some database schemas.For now we do not enable the full-text search commands in the Prisma Client. They will be implemented separately, and the progress can be followed in the MongoDB and MySQL issues.
Add the preview feature
fullTextIndexto the Prisma schema, after which the@@fulltextattribute is allowed in the Prisma schema:Please note that it is mandatory to do
db pullwith the preview feature enabled before using Prisma Migrate on existing MySQL databases, so the index types can be converted and will not get overwritten in the next migration.For more details check out our documentation.
Hash index support for PostgreSQL (Preview)
With the
extendedIndexespreview feature, it is now possible to useHashinstead of the defaultBTreeas the index algorithm on PostgreSQL databases. A hash index can be much faster for inserts, but it only supports equals operation in the database.An example of using a hash index:
For more details check out our documentation.
VS Code extension now uses a Wasm module
Until this release, the language server powering the Prisma VS Code extension relied on logic from the Prisma engines in the form of a native binary. Downloading and running the native binary required a large amount of custom logic and led to problems due to network failures, operating system permissions and malicious code detection issues.
Starting with
3.6.0, the language server and the VS Code extension use logic compiled to WebAssembly and distributed through npm. There is no runtime binary download and no external process involved anymore. We expect this new distribution model to be more robust and hence provide a better experience for our users.If you have any feedback, please leave an issue in the
prisma/language-toolsrepository.Prisma Client
Bytescan now be filtered withinandnotInYou can now use
inandnotInoperations on theBytestype:Thanks @serejkaaa512 for your contribution!
Jsonfields now accept read-only typesThis is a small quality-of-life improvement. You can now pass immutable values into
Jsonfields. In the following example,auditis aJsonfield that accepts a read-only array:Learn more in this issue.
Reducing interactive transactions timeouts for binary engine
If you've spent some time using the new Interactive Transaction API with the binary engine, you may have encountered this timeout error:
This could happen if you had two concurrent requests modifying the same resource at the same time using the binary engine type.
It took us a while to track down the source of this error, but it turned out to be a low-level misconfiguration in our HTTP client. We disabled HTTP pipelining to fix this problem.
Fix
notInfilters for large queriesThis most likely didn't affect you, but if you ever tried using
notInwith a large query, you may have received an incorrect result.The query engine automatically breaks up large queries into smaller queries and intersects the results. Most of the time this works as expected but for certain queries like
notIn, the intersection of results is incorrect.We fixed this in
3.6.0. You can now useinandnotInoperations on theBytestype:This query will break up the query into chunks that your database can manage:
... and return the correct results. Learn more in this issue.
Fixes and improvements
Prisma Client
innatively for bytesThe provided database string is invalid. Invalid MongoDB connection string in database URL.insteadPrisma Migrate
prisma migrate devwith timeout but works withprisma db seeddbgeneratedmigrations in MySQL are broken (since 3.4.x)Language tools (e.g. VS Code)
Prisma engines
Credits
Huge thanks to @Akxe, @safareli 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, December 02 at 5pm Berlin | 8am San Francisco.
This discussion was created from the release 3.6.0.
All reactions