-
-
Notifications
You must be signed in to change notification settings - Fork 8
chore(dev-deps): update dev dependencies (major) #83
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
base: main
Are you sure you want to change the base?
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
🦋 Changeset detectedLatest commit: 1f57b8d The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
|
Claude finished @renovate[bot]'s task —— View job PR Review - Major Dev Dependency Updates📋 Review SummaryThis Renovate PR updates major dev dependencies with one critical configuration issue that needs to be addressed before merging. 🔥 Critical Issues
|
508d7f9 to
44d5510
Compare
|
Claude finished @renovate[bot]'s task —— View job PR Review - Major Dev Dependency Updates📋 Review SummaryThis Renovate PR updates major dev dependencies with one critical configuration issue that needs to be addressed before merging. 🔥 Critical Issues
|
44d5510 to
30b2431
Compare
|
Claude finished @renovate[bot]'s task —— View job 📋 PR Review - Major Dev Dependency Updates📋 Review SummaryThis Renovate PR updates major dev dependencies with one critical configuration issue that needs to be addressed before merging. 🔥 Critical Issues
|
30b2431 to
07ec325
Compare
|
Claude finished @renovate[bot]'s task —— View job 📋 PR Review - Major Dev Dependency Updates📋 Review SummaryThis Renovate PR updates major dev dependencies with one critical configuration issue that needs to be addressed before merging. 🔥 Critical Issues
|
07ec325 to
0c5621c
Compare
|
Claude finished @renovate[bot]'s task —— View job 📋 PR Review - Major Dev Dependency Updates📋 Review SummaryThis Renovate PR updates major dev dependencies with one critical configuration issue that needs to be addressed before merging. 🔥 Critical Issues
|
0c5621c to
e7019cc
Compare
|
Claude finished @renovate[bot]'s task —— View job 📋 PR Review - Major Dev Dependency Updates📋 Review SummaryThis Renovate PR updates major dev dependencies with one critical configuration issue that needs to be addressed before merging. 🔥 Critical Issues
|
e7019cc to
fcf9bcd
Compare
|
Claude finished @renovate[bot]'s task —— View job 📋 PR Review - Major Dev Dependency Updates📋 Review SummaryThis Renovate PR updates major dev dependencies with one critical configuration issue that needs to be addressed before merging. 🔥 Critical Issues
|
fcf9bcd to
3eca09a
Compare
|
Claude finished @renovate[bot]'s task —— View job 📋 PR Review - Major Dev Dependency UpdatesAnalysis Tasks:
🔥 Critical Issues
|
| datasource | package | from | to | | ---------- | -------------------- | ------- | ------ | | npm | @biomejs/biome | 1.9.4 | 2.2.0 | | npm | @types/jest | 29.5.14 | 30.0.0 | | npm | @vitejs/plugin-react | 4.7.0 | 5.0.1 | | npm | vite | 6.3.5 | 7.1.3 |
7ee05c4 to
a66aef0
Compare
|
Claude finished @renovate[bot]'s task —— View job 📋 PR Review - Major Dev Dependency UpdatesAnalysis Tasks:
📋 Review SummaryThis Renovate PR updates major dev dependencies with one critical configuration issue that needs to be addressed before merging. 🔥 Critical Issues
|
Edited/Blocked NotificationRenovate 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. |
This PR contains the following updates:
^1.9.4->^2.2.0^29.5.14->^30.0.0^4.7.0->^5.0.1^6.3.5->^7.1.3Release Notes
biomejs/biome (@biomejs/biome)
v2.2.0Compare Source
Minor Changes
#5506
1f8755bThanks @sakai-ast! - ThenoRestrictedImportsrule has been enhanced with a newpatternsoption. This option allows for more flexible and powerful import restrictions using gitignore-style patterns.You can now define patterns to restrict entire groups of modules. For example, you can disallow imports from any path under
import-foo/except forimport-foo/baz.{ "options": { "patterns": [ { "group": ["import-foo/*", "!import-foo/baz"], "message": "import-foo is deprecated, except for modules in import-foo/baz." } ] } }Invalid examples
Valid examples
Additionally, the
patternsoption introducesimportNamePatternto restrict specific import names using regular expressions.The following example restricts the import names that match
x,yorzletters from modules underimport-foo/.{ "options": { "patterns": [ { "group": ["import-foo/*"], "importNamePattern": "[xyz]" } ] } }Invalid examples
Valid examples
Furthermore, you can use the
invertImportNamePatternboolean option to reverse this logic. When set to true, only the import names that match theimportNamePatternwill be allowed. The following configuration only allows the import names that matchx,yorzletters from modules underimport-foo/.{ "options": { "patterns": [ { "group": ["import-foo/*"], "importNamePattern": "[xyz]", "invertImportNamePattern": true } ] } }Invalid examples
Valid examples
#6506
90c5d6bThanks @nazarhussain! - Allow customization of the sort order for different sorting actions. These actions now support a sort option:assist/source/useSortedKeysnow has asortOrderoptionassist/source/useSortedAttributesnow has asortOrderoptionassist/source/organizeImportsnow has anidentifierOrderoptionFor each of these options, the supported values are the same:
natural. Compares two strings using a natural ASCII order. Uppercase letters come first (e.g.A < a < B < b) and number are compared in a human way (e.g.9<10). This is the default value.lexicographic. Strings are ordered lexicographically by their byte values. This orders Unicode code points based on their positions in the code charts. This is not necessarily the same as “alphabetical” order, which varies by language and locale.#7159
df3afdfThanks @ematipico! - Added the new ruleuseBiomeIgnoreFolder. Since v2.2, Biome correctly prevents the indexing and crawling of folders.However, the correct pattern has changed. This rule attempts to detect incorrect usage, and promote the new pattern:
// biome.json { "files": { "includes": [ - "!dist/**", - "!**/fixtures/**", + "!dist", + "!**/fixtures", ] } }#6989
85b1128Thanks @arendjr! - Fixed minor inconsistencies in howfiles.includeswas being handled.Previously, Biome sometimes failed to properly ignore the contents of a folder if you didn't specify the
/**at the end of a glob pattern. This was unfortunate, because it meant we still had to traverse the folder and then apply the glob to every entry inside it.This is no longer an issue and we now recommend to ignore folders without using the
/**suffix.#7118
a78e878Thanks @avshalomt2! - Added support for.graphqlsfiles. Biome can now format and lint GraphQL files that have the extension.graphqls#6159
f02a296Thanks @bavalpey! - Added a new option to Biome's JavaScript formatter,javascript.formatter.operatorLinebreak, to configure whether long lines should be broken before or after binary operators.For example, the following configuration:
Will cause this JavaScript file:
to be formatted like this:
#7137
a653a0fThanks @ematipico! - Promoted multiple lint rules from nursery to stable groups and renamed several rules for consistency.Promoted rules
The following rules have been promoted from nursery to stable groups:
CSS
noImportantStylesto thecomplexitygroup.noUnknownAtRulesto thesuspiciousgroup.GraphQL
useGraphqlNamedOperationsto thecorrectnessgroup.useGraphqlNamingConventionto thestylegroup.JavaScript/TypeScript
noExcessiveLinesPerFunctionto thecomplexitygroup.noImplicitCoercionsto thecomplexitygroup.useIndexOfto thecomplexitygroup.noGlobalDirnameFilenameto thecorrectnessgroup.noNestedComponentDefinitionsto thecorrectnessgroup.noProcessGlobalto thecorrectnessgroup.noReactPropAssignmentsto thecorrectnessgroup.noRestrictedElementsto thecorrectnessgroup.noSolidDestructuredPropsto thecorrectnessgroup.useJsonImportAttributesto thecorrectnessgroup.useParseIntRadixto thecorrectnessgroup.useSingleJsDocAsteriskto thecorrectnessgroup.useUniqueElementIdsto thecorrectnessgroup.noAwaitInLoopsto theperformancegroup.noUnwantedPolyfillioto theperformancegroup.useGoogleFontPreconnectto theperformancegroup.useSolidForComponentto theperformancegroup.noMagicNumbersto thestylegroup.useConsistentObjectDefinitionsto thestylegroup.useExportsLastto thestylegroup.useGroupedAccessorPairsto thestylegroup.useNumericSeparatorsto thestylegroup.useObjectSpreadto thestylegroup.useReadonlyClassPropertiesto thestylegroup.useSymbolDescriptionto thestylegroup.useUnifiedTypeSignaturesto thestylegroup.noBitwiseOperatorsto thesuspiciousgroup.noConstantBinaryExpressionsto thesuspiciousgroup.noTsIgnoreto thesuspiciousgroup.noUnassignedVariablesto thesuspiciousgroup.noUselessRegexBackrefsto thesuspiciousgroup.noUselessStringEscapesto thesuspiciousgroup.useConsistentIterableCallbackReturnValuesto thesuspiciousgroup.useStaticResponseMethodsto thesuspiciousgroup.Renamed rules
The following rules have been renamed during promotion. The migration tool will automatically update your configuration:
noAwaitInLooptonoAwaitInLoops.noConstantBinaryExpressiontonoConstantBinaryExpressions.noDestructuredPropstonoSolidDestructuredProps.noImplicitCoerciontonoImplicitCoercions.noReactPropAssigntonoReactPropAssignments.noUnknownAtRuletonoUnknownAtRules.noUselessBackrefInRegextonoUselessRegexBackrefs.useAdjacentGetterSettertouseGroupedAccessorPairs.useConsistentObjectDefinitiontouseConsistentObjectDefinitions.useConsistentResponsetouseStaticResponseMethods.useForComponenttouseSolidForComponent.useJsonImportAttributetouseJsonImportAttributes.useNamedOperationtouseGraphqlNamedOperations.useNamingConventiontouseGraphqlNamingConvention.useUnifiedTypeSignaturetouseUnifiedTypeSignatures.Configuration files using the old rule names will need to be updated. Use the migration tool to automatically update your configuration:
#7159
df3afdfThanks @ematipico! - Added the new rulenoBiomeFirstException. This rule prevents the incorrect usage of patterns insidefiles.includes.This rule catches if the first element of the array contains
!. This mistake will cause Biome to analyze no files:#6923
0589f08Thanks @ptkagori! - Added Qwik Domain to BiomeThis release introduces Qwik domain support in Biome, enabling Qwik developers to use Biome as a linter and formatter for their projects.
useJsxKeyInIterablenoReactSpecificProps#6989
85b1128Thanks @arendjr! - Fixed #6965: Implemented smarter scanner for project rules.Previously, if project rules were enabled, Biome's scanner would scan all dependencies regardless of whether they were used by/reachable from source files or not. While this worked for a first version, it was far from optimal.
The new scanner first scans everything listed under the
files.includessetting, and then descends into the dependencies that were discovered there, including transitive dependencies. This has three main advantages:vcs.useIgnoreFileis enabled,.gitignoregets respected as well. Assuming you have folders such asbuild/ordist/configured there, those will be automatically ignored by the scanner.The change in the scanner also has a more nuanced impact: Previously, if you used
files.includesto ignore a file in an included folder, the scanner would still index this file. Now the file is fully ignored, unless you import it.As a user you should notice better scanner performance (if you have project rules enabled), and hopefully you need to worry less about configuring
files.experimentalScannerIgnores. Eventually our goal is still to deprecate that setting, so if you're using it today, we encourage you to see which ignores are still necessary there, and whether you can achieve the same effect by ignoring paths usingfiles.includesinstead.None of these changes affect the scanner if no project rules are enabled.
#6731
d6a05b5Thanks @ematipico! - The--reporter=summaryhas been greatly enhanced. It now shows the list of files that contains violations, the files shown are clickable and can be opened from the editor.Below an example of the new version:
#6896
527db7fThanks @ematipico! - Added new functions to the@biomejs/wasm-*packages:fileExists: returns whether the input file exists in the workspace.isPathIgnored: returns whether the input path is ignored.updateModuleGraph: updates the internal module graph of the input path.getModuleGraph: it returns a serialized version of the internal module graph.scanProject: scans the files and directories in the project to build the internal module graph.#6398
d1a315dThanks @josh-! - Added support for tracking stable results in user-provided React hooks that return objects touseExhaustiveDependenciesto compliment existing support for array return values. For example:This will allow the following to be validated:
#7201
2afaa49Thanks @Conaclos! - Implemented #7174.useConstno longer reports variables that are read before being written.Previously,
useConstreported uninitialised variables that were read in an inner function before being written, as shown in the following example:This can produce false positives in the case where
fis called beforevhas been written, as in the following code:Although this is an expected behavior of the original implementation, we consider it problematic since the rule’s fix is marked as safe.
To avoid false positives like this, the rule now ignores the previous examples.
However, this has the disadvantage of resulting in false negatives, such as not reporting the first example.
Patch Changes
#7156
137d111Thanks @ematipico! - Fixed #7152. Now the rulenoDuplicateFontNamescorrectly detects font names with spaces e.g.Liberation Mono. The diagnostic of the rule now points to the first instances of the repeated font.The following example doesn't trigger the rule anymore:
#6907
7331bb9Thanks @ematipico! - Added a new experimental option that allows parsing of.htmlfiles that contain interpolation syntax.#7124
3f436b8Thanks @Jayllyz! - Added the ruleuseMaxParams.This rule enforces a maximum number of parameters for functions to improve code readability and maintainability. Functions with many parameters are difficult to read, understand, and maintain because they require memorizing parameter order and types.
#7161
1a14a59Thanks @ematipico! - Fixed #7160. Now Biome correctly computes ignored files when usingformatter.includes,linter.includesandassist.includesinside nested configurations that use"extends": "//".#7081
a081bbeThanks @Jayllyz! - Added the rulenoNextAsyncClientComponent.This rule prevents the use of async functions for client components in Next.js applications. Client components marked with "use client" directive should not be async as this can cause hydration mismatches, break component rendering lifecycle, and lead to unexpected behavior with React's concurrent features.
#7171
5241690Thanks @siketyan! - Fixed #7162: ThenoUndeclaredDependenciesrule now considers a type-only import as a dev dependency.For example, the following code is no longer reported:
package.json:{ "devDependencies": { "type-fest": "*" } }foo.ts:Note that you still need to declare the package in the
devDependenciessection inpackage.json.v2.1.4Compare Source
Patch Changes
#7121
b9642abThanks @arendjr! - Fixed #7111: Imported symbols using aliases are now correctly recognised.#7103
80515ecThanks @omasakun! - Fixed #6933 and #6994.When the values of private member assignment expressions, increment expressions, etc. are used, those private members are no longer marked as unused.
#6887
0cc38f5Thanks @ptkagori! - Added thenoQwikUseVisibleTaskrule to Qwik.This rule is intended for use in Qwik applications to warn about the use of
useVisibleTask$()functions which require careful consideration before use.Invalid:
Valid:
#7084
50ca155Thanks @ematipico! - Added the new nursery rulenoUnnecessararyConditions, which detects whenever some conditions don'tchange during the life cycle of the program, and truthy or false, hence deemed redundant.
For example, the following snippets will trigger the rule:
#6887
0cc38f5Thanks @ptkagori! - Added theuseImageSizerule to Biome.The
useImageSizerule enforces the use of width and height attributes on<img>elements for performance reasons. This rule is intended to prevent layout shifts and improve Core Web Vitals by ensuring images have explicit dimensions.Invalid:
Valid:
#6887
0cc38f5Thanks @ptkagori! - Added theuseAnchorHrefrule to Biome.The
useAnchorHrefrule enforces the presence of anhrefattribute on<a>elements in JSX. This rule is intended to ensure that anchor elements are always valid and accessible.Invalid:
Valid:
#7100
29fcb05Thanks @Jayllyz! - Added the rulenoNonNullAssertedOptionalChain.This rule prevents the use of non-null assertions (
!) immediately after optional chaining expressions (?.). Optional chaining is designed to safely handle nullable values by returningundefinedwhen the chain encountersnullorundefined. Using a non-null assertion defeats this purpose and can lead to runtime errors.#7129
9f4538aThanks @drwpow! - Removed option, combobox, listbox roles from useSemanticElements suggestions#7106
236deaaThanks @arendjr! - Fixed #6985: Inference of return types no longer mistakenly picks up return types of nested functions.#7102
d3118c6Thanks @omasakun! - Fixed #7101:noUnusedPrivateClassMembersnow handles members declared as part of constructor arguments:privatemodifier and makes it a plain method argument.noUnusedFunctionParameter.#7104
5395297Thanks @harxki! - Reverting to prevent regressions around ref handling#7143
1a6933aThanks @siketyan! - Fixed #6799: ThenoImportCyclesrule now ignores type-only imports if the newignoreTypesoption is enabled (enabled by default).#7099
6cc84cbThanks @arendjr! - Fixed #7062: Biome now correctly considers extended configs when determining the mode for the scanner.#6887
0cc38f5Thanks @ptkagori! - Added theuseQwikClasslistrule to Biome.This rule is intended for use in Qwik applications to encourage the use of the built-in
classprop (which accepts a string, object, or array) instead of theclassnamesutility library.Invalid:
Valid:
#7019
57c15e6Thanks @fireairforce! - Added support in the JS parser forimport source(a stage3 proposal). The syntax looks like:#7053
655049eThanks @jakeleventhal! - Added theuseConsistentTypeDefinitionsrule.This rule enforces consistent usage of either
interfaceortypefor object type definitions in TypeScript.The rule accepts an option to specify the preferred style:
interface(default): Prefer usinginterfacefor object type definitionstype: Prefer usingtypefor object type definitionsExamples:
The rule will automatically fix simple cases where conversion is straightforward.
v2.1.3Compare Source
Patch Changes
#7057
634a667Thanks @mdevils! - Added the rulenoVueReservedKeys, which prevents the use of reserved Vue keys.It prevents the use of Vue reserved keys such as those starting with
# @​biomejs/biome (like$el,$data,$props) and keys starting with_` in data properties, which can cause conflicts and unexpected behavior in Vue components.Invalid example
Valid examples
#6941
734d708Thanks @JamBalaya56562! - Added@eslint-react/no-nested-component-definitionsas a rule source fornoNestedComponentDefinitions. Now it will get picked up bybiome migrate --eslint.#6463
0a16d54Thanks @JamBalaya56562! - Fixed a website link for theuseComponentExportOnlyModuleslinter rule to point to the correct URL.#6944
e53f2feThanks @sterliakov! - Fixed #6910: Biome now ignores type casts and assertions when evaluating numbers fornoMagicNumbersrule.#6991
476cd55Thanks @denbezrukov! - Fixed #6973: Add support for parsing the :active-view-transition-type() pseudo-class#6992
0b1e194Thanks @ematipico! - Added a new JSON rule callednoQuickfixBiome, which disallow the use of code actionquickfix.biomeinside code editor settings.#6943
249306dThanks @JamBalaya56562! - Fixed@vitest/eslint-pluginsource url.#6947
4c7ed0fThanks @JamBalaya56562! - Fixed ESLint migration for the ruleprefer-forfromeslint-plugin-solidto Biome'suseForComponent.#6976
72ebadcThanks @siketyan! - Fixed #6692: The rulesnoUnusedVariablesandnoUnusedFunctionParametersno longer cause an infinite loop when the suggested name is not applicable (e.g. the suggested name is already declared in the scope).#6990
333f5d0Thanks @rvanlaarhoven! - Fixed the documentation URL forlint/correctness/noUnknownPseudoClass#7000
4021165Thanks @harxki! - Fixed #6795:noUnassignedVariablesnow correctly recognizes variables used in JSXrefattributes.#7044
b091ddfThanks @ematipico! - Fixed #6622, now the ruleuseSemanticElementsworks for JSX self-closing elements too.#7014
c4864e8Thanks @siketyan! - Fixed #6516: Thebiome migratecommand no longer break the member list with trailing comments.#6979
29cb6daThanks @unvalley! - Fixed #6767:useSortedClassesnow correctly removes leading and trailing whitespace in className.Previously, trailing spaces in className were not fully removed.
#7055
ee4828dThanks @dyc3! - Added the nursery ruleuseReactFunctionComponents. This rule enforces the preference to use function components instead of class components.Valid:
Invalid:
#6924
2d21be9Thanks @ematipico! - Fixed #113, where the Biome Language Server didn't correctly update the diagnostics when the configuration file is modified in the editor. Now the diagnostics are correctly updated every time the configuration file is modified and saved.#6931
e6b2380Thanks @arendjr! - Fixed #6915:useHookAtTopLevelno longer hangs when rules call themselves recursively.#7012
01c0ab4Thanks @siketyan! - Fixed #5837: Invalid suppression comments such asbiome-ignore-all-startorbiome-ignore-all-endno longer causes a panic.#6949
48462f8Thanks @fireairforce! - Support parseimport defer(which is a stage3 proposal). The syntax look like this:#6938
5feb5a6Thanks @vladimir-ivanov! - Fixed #6919 and #6920:useReadonlyClassPropertiesnow does checks for mutations in async class methods.Example:
#6942
cfda528Thanks @sterliakov! - Fixed #6939. Biome now understandsthisbinding in classes outside of methods.v2.1.2Compare Source
Patch Changes
#6865
b35bf64Thanks @denbezrukov! - Fix #6485: Handle multiple semicolons correctly in blocks (#6485)#6798
3579ffaThanks @dyc3! - Fixed #6762, Biome now knows that~/.config/zed/settings.jsonand~/.config/Code/User/settings.jsonallows comments by default.#6839
4cd62d8Thanks @ematipico! - Fixed #6838, where the Biome File Watcher incorrectly watched and stored ignored files, causing possible memory leaks when those files were dynamically created (e.g. built files).#6879
0059cd9Thanks @denbezrukov! - Refactor: remove one level of indirection for CSS declarations with semicolonPreviously, accessing a declaration from a list required an extra step:
Now, it can be done directly with:
#6839
4cd62d8Thanks @ematipico! - Fixed a bug where the Biome Language Server didn't correctly ignore specific files whenvcs.useIgnoreFileis set totrue.#6884
5ff50f8Thanks @arendjr! - Improved the performance ofnoImportCyclesby ~30%.#6903
241dd9eThanks @arendjr! - Fixed #6829: Fixed a false positive reported byuseImportExtensionswhen importing a.jsfile that had a matching.d.tsfile in the same folder.#6846
446112eThanks @darricheng! - Fixed an issue where biome was using the wrong string quotes when the classes string has quotes, resulting in invalid code after applying the fix.#6823
eebc48eThanks @arendjr! - Improved #6172: Optimised the way function arguments are stored in Biome's type inference. This led to about 10% performance improvement inRedisCommander.d.tsand about 2% on@next/fonttype definitions.#6878
3402976Thanks @ematipico! - Fixed a bug where the Biome Language Server would apply an unsafe fix when using the code actionquickfix.biome.Now Biome no longer applies an unsafe code fix when using the code action
quickfix.biome.#6794
4d5fc0eThanks @vladimir-ivanov! - Fixed #6719: ThenoInvalidUseBeforeDeclarationrule covers additional use cases.Examples:
[#6863](h
Configuration
📅 Schedule: Branch creation - Between 12:00 AM and 03:59 AM, on day 1 of the month ( * 0-3 1 * * ) in timezone America/New_York, Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ 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.