chore(deps): update npm-non-major-dev-dependencies #294
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
1.9.1
->1.9.4
4.20240909.0
->4.20241106.0
0.24.2
->0.28.0
5.6.2
->5.6.3
5.4.6
->5.4.10
2.1.1
->2.1.4
3.78.4
->3.85.0
Release Notes
biomejs/biome (@biomejs/biome)
v1.9.4
Compare Source
Analyzer
Bug fixes
Implement GraphQL suppression action. Contributed by @vohoanglong0107
Improved the message for unused suppression comments. Contributed by @dyc3
Fix #4228, where the rule
a11y/noInteractiveElementToNoninteractiveRole
incorrectly reports arole
for non-interactive elements. Contributed by @eryue0220noSuspiciousSemicolonInJsx
now catches suspicious semicolons in React fragments. Contributed by @vasucp1207CLI
Enhancements
The
--summary
reporter now reports parsing diagnostics too. Contributed by @ematipicoImproved performance of GritQL queries by roughly 25-30%. Contributed by @arendjr
Configuration
Bug fixes
Editors
Formatter
Bug fixes
JavaScript APIs
Linter
New features
Bug Fixes
Biome no longer crashes when it encounters a string that contain a multibyte character (#4181).
This fixes a regression introduced in Biome 1.9.3
The regression affected the following linter rules:
nursery/useSortedClasses
nursery/useTrimStartEnd
style/useTemplate
suspicious/noMisleadingCharacterClass
Contributed by @Conaclos
Fix #4190, where the rule
noMissingVarFunction
wrongly reported a variable as missing when used inside avar()
function that was a newline. Contributed by @ematipicoFix #4041. Now the rule
useSortedClasses
won't be triggered ifclassName
is composed only by inlined variables. Contributed by @ematipicouseImportType and useExportType now report useless inline type qualifiers (#4178).
The following fix is now proposed:
Contributed by @Conaclos
useExportType now reports ungrouped
export from
.The following fix is now proposed:
Contributed by @Conaclos
noVoidTypeReturn now accepts
void
expressions in return position (#4173).The following code is now accepted:
Contributed by @Conaclos
noUselessFragments now correctly handles fragments containing HTML escapes (e.g.
) inside expression escapes{ ... }
(#4059).The following code is no longer reported:
Contributed by @fireairforce
noUnusedFunctionParameters and noUnusedVariables no longer reports a parameter as unused when another parameter has a constructor type with the same parameter name (#4227).
In the following code, the
name
parameter is no longer reported as unused.Contributed by @Conaclos
noUndeclaredDependencies now accepts dependency names with dots. Contributed by @Conaclos
useFilenamingConvention now correctly handles renamed exports (#4254).
The rule allows the filename to be named as one of the exports of the module.
For instance, the file containing the following export can be named
Button
.The rule now correctly handles the renaming of an export.
For example, the file containing the following export can only be named
Button
.Previously the rule expected the file to be named
A
.Contributed by @Conaclos
useConsistentMemberAccessibility now ignore private class members such as
#property
(#4276). Contributed by @ConaclosnoUnknownFunction correctly handles
calc-size
function (#4212).The following code
calc-size
is no longer reported as unknown:Contributed by @fireairforce
useNamingConvention now allows configuring conventions for readonly index signatures.
Contributed by @sepruko
Previously, the rule incorrectly reported duplicates for all properties, including non-custom ones. Contributed by @togami2864
Parser
Bug Fixes
The CSS parser now accepts more emoji in identifiers (#3627).
Browsers accept more emoji than the standard allows.
Biome now accepts these additional emojis.
The following code is now correctly parsed:
Contributed by @Conaclos
Add support for parsing typescript's
resolution-mode
in Import Types(#2115)Contributed by @fireairforce
v1.9.3
Compare Source
CLI
New features
GritQL queries that match functions or methods will now match async functions or methods as well.
If this is not what you want, you can capture the
async
keyword (or its absence) in a metavariable and assert its emptiness:Contributed by @arendjr
Bug fixes
Fix #4077: Grit queries no longer need to match the statement's trailing semicolon. Contributed by @arendjr
Fix #4102. Now the CLI command
lint
doesn't exit with an error code when using--write
/--fix
. Contributed by @ematipicoConfiguration
Bug fixes
noLabelWithoutControl
options where incorrectly marked as mandatory. Contributed by @ematipicoEditors
Formatter
Bug fixes
Fix #3924 where GraphQL formatter panics in block comments with empty line. Contributed by @vohoanglong0107
Fix a case where raw values inside
url()
functions weren't properly trimmed.Contributed by @ematipico
Fixed #4076, where a media query wasn't correctly formatted:
Contributed by @blaze-d83
JavaScript API
Bug fixes
Linter
New features
Add noDescendingSpecificity. Contributed by @tunamaguro
Add noNestedTernary. Contributed by @kaykdm
Add noTemplateCurlyInString. Contributed by @fireairforce
Add noOctalEscape. Contributed by @fireairforce
Enhancements
Add an option
reportUnnecessaryDependencies
to useExhaustiveDependencies.Defaults to true. When set to false, errors will be suppressed for React hooks that declare dependencies but do not use them.
Contributed by @simon-paris
Add an option
reportMissingDependenciesArray
to useExhaustiveDependencies. Contributed by @simon-parisBug fixes
noControlCharactersInRegex no longer panics on regexes with incomplete escape sequences. Contributed by @Conaclos
noMisleadingCharacterClass no longer reports issues outside of character classes.
The following code is no longer reported:
Contributed by @Conaclos
noUndeclaredDependencies no longer reports Node.js builtin modules as undeclared dependencies.
The rule no longer reports the following code:
Contributed by @Conaclos
noUnusedVariables no longer panics when suggesting the renaming of a variable at the start of a file (#4114). Contributed by @Conaclos
noUselessEscapeInRegex no longer panics on regexes that start with an empty character class. Contributed by @Conaclos
noUselessStringConcat no longer panics when it encounters malformed code. Contributed by @Conaclos
noUnusedFunctionParameters no longer reports unused parameters inside an object pattern with a rest parameter.
In the following code, the rule no longer reports
a
as unused.This matches the behavior of noUnusedVariables.
Contributed by @Conaclos
useButtonType no longer reports dynamically created button with a valid type (#4072).
The following code is no longer reported:
Contributed by @Conaclos
useSemanticElements now ignores elements with the
img
role (#3994).MDN recommends using
role="img"
for grouping images or creating an image from other elements.The following code is no longer reported:
Contributed by @Conaclos
useSemanticElements now ignores
alert
andalertdialog
roles (#3858). Contributed by @ConaclosnoUselessFragments don't create invaild JSX code when Fragments children contains JSX Expression and in a LogicalExpression. Contributed by @fireairforce
Parser
Bug fixes
v1.9.2
Compare Source
CLI
New features
Added support for custom GritQL definitions, including:
Contributed by @arendjr
Bug fixes
contains
queries to report false positives when the matchednode appeared inside a sibling node. Contributed by @arendjr
Editors
Bug fixes
Fix #3923. Now the
.editorconfig
is correctly parsed by the LSP, and the options are correctly applied to files when formatting is triggered.Plus, the Biome LSP now watches for any change to the
.editorconfig
, and updates the formatting settings.Reduced the number of log files generated by the LSP server. Now the maximum number of logs saved on disk is seven. Contributed by @ematipico
Fix the code actions capabilities available in the LSP Biome server. Before, the LSP was using the default capabilities, which resulted in pulling code actions even when they were disabled by the editor.
This means that the code actions are pulled by the client only when the editor enables
quickfix.biome
,source.organizeImports.biome
andsource.fixAll.biome
.Now, if you enable
organizeImports.enabled: true
in thebiome.json
, and then you configure your editor with the following code actionsource.organizeImports.biome: false
, the editor won't sort the imports.Contributed by @ematipico
Linter
New features
Bug fixes
noLabelWithoutControl now accept JSX expression as label value (#3875). Contributed by @Conaclos
useFilenamingConvention no longer suggests names with a disallowed case (#3952). Contributed by @Conaclos
useFilenamingConvention now recognizes file names starting with ASCII digits as lowercase (#3952).
Thus,
2024-09-17-filename
,2024_09_17_filename
and20240917FileName
are inkebab-case
,snake_case
, andcamelCase
respectively.Contributed by @Conaclos
useFilenamingConvention now applies the configured formats to the file extensions (#3650). Contributed by @Conaclos
Parser
Bug fixes
useStrictMode now reports Script files with some directives, but without the
use strict
directive. Contributed by @ConaclosThe CSS parser now accepts the characters U+FFDCF and U+FFFD in identifiers. Contributed by @Conaclos
cloudflare/workerd (@cloudflare/workers-types)
v4.20241106.0
Compare Source
v4.20241022.0
Compare Source
v4.20241018.0
Compare Source
v4.20241011.0
Compare Source
v4.20241004.0
Compare Source
v4.20240925.0
Compare Source
v4.20240924.0
Compare Source
v4.20240919.0
Compare Source
drizzle-team/drizzle-orm (drizzle-kit)
v0.28.0
Compare Source
Breaking changes
Removed support for filtering by nested relations
Current example won't work in
0.28.0
:The
table
object in thewhere
callback won't have fields fromwith
andextras
. We removed them to be able to build more efficient relational queries, which improved row reads and performance.If you have used those fields in the
where
callback before, there are several workarounds:Added Relational Queries
mode
config formysql2
driverDrizzle relational queries always generate exactly one SQL statement to run on the database and it has certain caveats. To have best in class support for every database out there we've introduced modes.
Drizzle relational queries use lateral joins of subqueries under the hood and for now PlanetScale does not support them.
When using
mysql2
driver with regular MySQL database - you should specify mode: "default".When using
mysql2
driver with PlanetScale - you need to specify mode: "planetscale".Improved IntelliSense performance for large schemas
We've run the diagnostics on a database schema with 85 tables, 666 columns, 26 enums, 172 indexes and 133 foreign keys. We've optimized internal types which resulted in 430% speed up in IntelliSense.
Improved Relational Queries Permormance and Read Usage
In this release we've fully changed a way query is generated for Relational Queri API.
As a summary we've made current set of changes in query generation startegy:
Lateral Joins: In the new version we're utilizing lateral joins, denoted by the "LEFT JOIN LATERAL" clauses, to retrieve specific data from related tables efficiently For MySQL in PlanetScale and SQLite, we've used simple subquery selects, which improved a query plan and overall performance
Selective Data Retrieval: In the new version we're retrieving only the necessary data from tables. This targeted data retrieval reduces the amount of unnecessary information fetched, resulting in a smaller dataset to process and faster execution.
Reduced Aggregations: In the new version we've reduced the number of aggregation functions (e.g., COUNT, json_agg). By using json_build_array directly within the lateral joins, drizzle is aggregating the data in a more streamlined manner, leading to improved query performance.
Simplified Grouping: In the new version the GROUP BY clause is removed, as the lateral joins and subqueries already handle data aggregation more efficiently.
For this drizzle query
Query that Drizzle generates now
Query generated before:
Possibility to insert rows with default values for all columns
You can now provide an empty object or an array of empty objects, and Drizzle will insert all defaults into the database.
v0.27.2
Compare Source
🎉 Added support for
UNIQUE
constraints in PostgreSQL, MySQL, SQLiteFor PostgreSQL, unique constraints can be defined at the column level for single-column constraints, and in the third parameter for multi-column constraints. In both cases, it will be possible to define a custom name for the constraint. Additionally, PostgreSQL will receive the
NULLS NOT DISTINCT
option to restrict having more than one NULL value in a table. ReferenceExamples that just shows a different
unique
usage. Please don't search a real usage for those tablesFor MySQL, everything will be the same except for the
NULLS NOT DISTINCT
option. It appears that MySQL does not support itExamples that just shows a different
unique
usage. Please don't search a real usage for those tablesIn SQLite unique constraints are the same as unique indexes. As long as you can specify a name for the unique index in SQLite - we will treat all unique constraints as unique indexes in internal implementation
v0.27.1
Compare Source
v0.27.0
Compare Source
Correct behavior when installed in a monorepo (multiple Drizzle instances)
Replacing all
instanceof
statements with a customis()
function allowed us to handle multiple Drizzle packages interacting properly.It also fixes one of our biggest Discord tickets:
maximum call stack exceeded
🎉You should now use
is()
instead ofinstanceof
to check if specific objects are instances of specific Drizzle types. It might be useful if you are building something on top of the Drizzle API.distinct
clause supportAlso,
distinct on
clause is available for PostgreSQL:bigint
andboolean
support for SQLiteContributed by @MrRahulRamkumar (#558), @raducristianpopa (#411) and @meech-ward (#725)
DX improvements
where
callback in RQB for tables without relationsVarious docs improvements
v0.26.2
Compare Source
v0.26.1
Compare Source
data is malformed
for viewsv0.26.0
Compare Source
New Features
Checks support in
drizzle-kit
You can use drizzle-kit to manage your
check
constraint defined in drizzle-orm schema definitionFor example current drizzle table:
will be generated into
The same is supported in all dialects
Limitations
generate
will work as expected for all check constraint changes.push
will detect only check renames and will recreate the constraint. All other changes to SQL won't be detected and will be ignored.So, if you want to change the constraint's SQL definition using only
push
, you would need to manually comment out the constraint,push
, then put it back with the new SQL definition andpush
one more time.Views support in
drizzle-kit
You can use drizzle-kit to manage your
views
defined in drizzle-orm schema definition. It will work with all existing dialects and view optionsPostgreSQL
For example current drizzle table:
will be generated into
Views supported in all dialects, but materialized views are supported only in PostgreSQL
Limitations
generate
will work as expected for all view changespush
limitations:push
, you would need to manually comment out the view,push
, then put it back with the new SQL definition andpush
one more time.Updates for PostgreSQL enums behavior
We've updated enum behavior in Drizzle with PostgreSQL:
Add value after or before in enum: With this change, Drizzle will now respect the order of values in the enum and allow adding new values after or before a specific one.
Support for dropping a value from an enum: In this case, Drizzle will attempt to alter all columns using the enum to text, then drop the existing enum and create a new one with the updated set of values. After that, all columns previously using the enum will be altered back to the new enum.
Support for dropping an enum
Support for moving enums between schemas
Support for renaming enums
v0.25.0
Compare Source
Breaking changes and migrate guide for Turso users
If you are using Turso and libsql, you will need to upgrade your
drizzle.config
and@libsql/client
package.@libsql/client@0.10.0
or higher if you are using themigrate
function. For other use cases, you can continue using previous versions(But the suggestion is to upgrade)To install the latest version, use the command:
drizzle.config
for SQLite and Turso users, which allowed a shared strategy for both dialects. Starting with this release, we are introducing the turso dialect in drizzle-kit. We will evolve and improve Turso as a separate dialect with its own migration strategies.Before
After
If you are using only SQLite, you can use
dialect: "sqlite"
LibSQL/Turso and Sqlite migration updates
SQLite "generate" and "push" statements updates
Starting from this release, we will no longer generate comments like this:
We will generate a set of statements, and you can decide if it's appropriate to create data-moving statements instead. Here is an example of the SQL file you'll receive now:
LibSQL/Turso "generate" and "push" statements updates
Since LibSQL supports more ALTER statements than SQLite, we can generate more statements without recreating your schema and moving all the data, which can be potentially dangerous for production environments.
LibSQL and Turso will now have a separate dialect in the Drizzle config file, meaning that we will evolve Turso and LibSQL independently from SQLite and will aim to support as many features as Turso/LibSQL offer.
With the updated LibSQL migration strategy, you will have the ability to:
You can find more information in the LibSQL documentation
LIMITATIONS
This is because LibSQL/Turso does not support dropping this type of foreign key.
If the table has indexes, altering columns will cause index recreation:
Drizzle-Kit will drop the indexes, modify the columns, and then create the indexes.
Adding or dropping composite foreign keys is not supported and will cause table recreation.
Primary key columns can not be altered and will cause table recreation.
Altering columns that are part of foreign key will cause table recreation.
NOTES
See more: https://www.sqlite.org/foreignkeys.html
New
casing
param indrizzle-orm
anddrizzle-kit
There are more improvements you can make to your schema definition. The most common way to name your variables in a database and in TypeScript code is usually
snake_case
in the database andcamelCase
in the code. For this case, in Drizzle, you can now define a naming strategy in your database to help Drizzle map column keys automatically. Let's take a table from the previous example and make it work with the new casing API in DrizzleTable can now become:
As you can see,
inStock
doesn't have a database name alias, but by defining the casing configuration at the connection level, all queries will automatically map it tosnake_case
For
drizzle-kit
migrations generation you should also specifycasing
param in drizzle config, so you can be sure you casing strategy will be applied to drizzle-kit as wellmicrosoft/TypeScript (typescript)
v5.6.3
Compare Source
vitejs/vite (vite)
v5.4.10
Compare Source
Please refer to CHANGELOG.md for details.
v5.4.9
Compare Source
Please refer to CHANGELOG.md for details.
v5.4.8
Compare Source
Please refer to CHANGELOG.md for details.
v5.4.7
Compare Source
Please refer to [CHANGELOG.md](https://redirect.github.com/vitejs/vite/blob/v5.4.7/pa
Configuration
📅 Schedule: Branch creation - "on wednesday" in timezone Asia/Tokyo, Automerge - "on friday" in timezone Asia/Tokyo.
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR was generated by Mend Renovate. View the repository job log.