Repository navigation
Update dependency @biomejs/biome to v2.6.6 - #10
Open
renovate[bot] wants to merge 1 commit into
Open
renovate[bot] wants to merge 1 commit into
renovate[bot] wants to merge 1 commit into
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Note
This PR body was truncated due to platform limits.
This PR contains the following updates:
2.6.4→2.6.6Release Notes
biomejs/biome (@biomejs/biome)
v2.6.6Compare Source
Patch Changes
#12887
da0422eThanks @dyc3! - Added the new nursery rulenoArrayMethodsOnArguments. It reports calls to array methods on theargumentsobject, which isn't an array, so these calls throw aTypeErrorwhen the code runs.#12877
cd9e10fThanks @dyc3! - Added the nursery rulenoConstantComparisons, which reports&&and||conditions that can never be true, are always true, or contain a check with no effect.#12876
a7c9586Thanks @dyc3! - Added the nursery rulenoErasingOperation, which disallows operations with0that always result in zero: multiplying by0, a bitwise AND with0, and dividing0by a number. The other value in these operations has no effect on the result, which usually means the code has a mistake.#12841
e954f55Thanks @dyc3! - Added the nursery rulenoNegatedArrayPredicate, which reports negated calls toArray#some()andArray#every()and suggests moving the negation into the callback function.#12888
15039f7Thanks @dyc3! - Added the new nursery rulenoNumberArgumentOutOfRange, which reports number literal arguments oftoString(),toFixed(),toExponential()andtoPrecision()that are outside the range the method accepts. These calls throw aRangeErrorat runtime.#12889
1cd7520Thanks @dyc3! - Added the nursery rulenoSharedBranchCode, which reports code that is repeated at the start or end of every branch of anifstatement. That code runs no matter which branch is taken, so it can be moved before or after theifstatement.#12842
d47fcfdThanks @dyc3! - Added the new nursery rulenoSubtractionComparison, which reports subtracting two values only to compare the difference with0, and suggests comparing the values directly.#12866
7c1cd5fThanks @dyc3! - Added the nursery rulenoSvelteIgnoredUnsubscribe, which reports calls to a store'ssubscribe()method when the returned function is ignored. Without that function, the subscription can never be stopped, which causes a memory leak.#12890
6b73fcfThanks @dyc3! - Added the new nursery rulenoUninvokedArrayCallback, which reports array methods such asmap()andforEach()called with a callback on an array that only has empty slots. The callback never runs in this case.#12886
3bb18d8Thanks @dyc3! - Added the nursery ruleuseNextScriptForGoogleAnalytics, which reports<script>elements that load Google Analytics or Google Tag Manager. Use theGoogleAnalyticsandGoogleTagManagercomponents from@next/third-parties/googleinstead, which load these scripts after the page becomes interactive.The rule belongs to the
nextdomain.#12309
0538e30Thanks @dyc3! - Added the new nursery ruleusePackageJsonCpu, which reportspackage.jsonfiles that have nocpufield. Thecpufield lists the processor types that the package supports.The following
package.jsonfile satisfies the rule:{ "name": "my-package", "version": "1.0.0", "cpu": ["x64", "arm64"] }#12310
191111dThanks @dyc3! - Added the nursery ruleusePackageJsonEngines, which reportspackage.jsonfiles that have noenginesfield.A
package.jsonpasses the rule once it declares the field:{ "name": "my-package", "engines": { "node": ">=20" } }#12986
cc929afThanks @dyc3! - Fixed #12954, where configuring rules in groups with more than 256 rules could enable or disable the wrong rule.#12931
fe9248eThanks @dyc3! - Improved the performance of linting. Each lint pass now spends less time stepping over syntax nodes that no enabled rule looks at.#12969
22d27e8Thanks @vibbix! - Improved the performance of CSS linting. Rules that compare selectors, such asnoDescendingSpecificityandnoDuplicateSelectors, now make fewer memory allocations.#12973
5a06df5Thanks @vibbix! - FixeduseGenericFontNamesreportingfont-familyinside@font-palette-values. There,font-familynames the font families the palette applies to, so it doesn't take a generic family.#12930
ce71284Thanks @dyc3! - Fixed #12073:useExhaustiveSwitchCasesnow reports non-exhaustive switches over values read fromfor...ofloops overArray.prototype.entries(),Map, andSet, and over properties of array elements indexed by anumbervariable.noMisusedPromisesnow also reports Promise-returning callbacks passed to array methods such asfindandevery.#12983
2987b54Thanks @ashokram-si! - Fixed #12957: Biome now correctly parses SCSS negative interpolation list items as separate values instead of an invalid subtraction operator.v2.6.5Compare Source
Patch Changes
#12755
bbc4887Thanks @dyc3! - Added the new nursery rulenoArrayForEach, which reportsforEach()calls that can be written asfor...ofloops. Values known not to be arrays, such as aMapor aSet, are ignored.#12777
ba692e4Thanks @dyc3! - Added the new nursery rulenoAwaitInPromiseMethods, which reportsawaitinside the array passed toPromise.all(),Promise.allSettled(),Promise.any(), orPromise.race(). Theawaitpauses the code before the method is called, so the promises no longer run at the same time.#12765
af84fb4Thanks @dyc3! - Added the new nursery rulenoChainedComparison, which reports comparisons chained likea < b < cora === b === c. JavaScript comparesawithbfirst, and then compares the resultingtrueorfalsewithc, so3 > 2 > 1isfalse.#12547
0a2073dThanks @dyc3! - Added the nursery rulenoDynamicDelete, which disallows usingdeletewith a property name that is computed at runtime. Fixed property names written as string or number literals are allowed.#12481
ed7adc2Thanks @dyc3! - Added the nursery rulenoLateEventControl, which reports calls topreventDefault(),stopPropagation(), andstopImmediatePropagation()that run after the browser has finished handling the event, where they have no effect.#12795
179666dThanks @dyc3! - Added the nursery rulenoMapSpread, which disallows spreading objects or arrays in the values returned bymap()andflatMap()callbacks. Each spread copies a whole object or array for every item, which is slow for large arrays. Its unsafe fix replaces an object that starts with a spread withObject.assign().#12793
d9a99fdThanks @dyc3! - Added the nursery rulenoMismatchedMapKey, which reportsget()andset()calls that use a different key than thehas()check before them. Checking one key and then using another is usually a copy-paste mistake.#12342
1db7c0dThanks @vibbix! - Added the nursery rulenoMissingScssInterpolation, which disallows Sass variables and function calls in custom property values without#{}interpolation. Sass copies these values into the CSS unchanged, so the browser receives$gapormath.div(8px, 2)instead of their results. Its unsafe fix wraps variables in#{}.#12792
de86b37Thanks @dyc3! - Added the nursery rulenoMissingThrow, which reports errors that are created withnewbut never thrown. Its unsafe fix adds the missingthrowkeyword.#12790
c23e4c3Thanks @dyc3! - Added the new nursery rulenoObjectLiteralComparison, which reports comparisons with an empty object{}or an empty array[]. These comparisons never check whether a value is empty, because objects and arrays are compared by reference.#12450
793f07dThanks @dyc3! - Added the new nursery rulenoPlaywrightUnsafeReferences, which reports functions passed topage.evaluate()orpage.addInitScript()that use variables declared outside of them. Playwright runs these functions in the browser page, where those variables don't exist.#12388
a0160a4Thanks @vibbix! - Added the nursery rulenoPseudoElementInFunctionalPseudoClass, which disallows pseudo-elements inside:is(),:where(),:not()and:has(). Browsers drop these selectors, so the styles never apply to the pseudo-element.#12779
bc1befbThanks @dyc3! - Added the new nursery rulenoSinglePromiseInPromiseMethods, which reports an array with a single element passed toPromise.all(),Promise.any(), orPromise.race(). The rule offers a fix that awaits the value directly or usesPromise.resolve().#12241
d96de1dThanks @dyc3! - Added the nursery rulenoSvelteBindValueOnCheckableInputs, which reportsbind:valueon checkbox and radio inputs in Svelte files. Users change whether these inputs are checked, not theirvalue, sobind:valuedoes not track their choice.#12764
e166d08Thanks @dyc3! - Added the new nursery rulenoSyncMethods, which reports calls to functions whose names end withSync, such asfs.readFileSync(). These calls block the program until they finish. TheallowAtRootLeveloption allows them outside of functions, and theignoreoption allows specific function names.#12515
c0a4174Thanks @dyc3! - Added the nursery rulenoTanstackQueryVoidQueryFn, which disallows TanStack Query functions that don't return any data. TanStack Query doesn't acceptundefinedas the data of a query, so the query fails with an error.The rule belongs to the
tanstackQueryandtypesdomains.#12482
1e6e407Thanks @dyc3! - Added the nursery rulenoUnnecessaryStringTrim, which reportstrim()calls beforestartsWith()orendsWith()when only one side of the string matters. UsetrimStart()ortrimEnd()instead.#12772
a108773Thanks @dyc3! - Added the nursery rulenoUselessAwait, which reportsawaiton values that are never promises, such as literals, arrays, and the results of comparisons.#12783
d0931b0Thanks @dyc3! - Added the new nursery rulenoUselessLengthCheck, which reports array length checks that don't change the result: a check that the array is empty next toevery(), a check that it isn't empty next tosome(), or a check that it isn't empty around afor...ofloop over the same array.#12488
93e0e73Thanks @dyc3! - Added the new nursery rulenoUselessTypeAssertion, which reports type assertions that don't change the type of an expression, such as a non-null assertion on a value that can't benullorundefined.#12632
0e197b4Thanks @dyc3! - Added the nursery rulenoVueChildContent, which disallows content inside elements that usev-htmlorv-text. These directives replace the content of their element, so Vue discards anything written there.#12616
cb7b888Thanks @dyc3! - Added the new nursery rulenoVueDeprecatedConfigKeyCodes, which reports uses ofVue.config.keyCodes. Vue 3 removed this option, so custom key names defined with it no longer work.#12568
59f3a42Thanks @dyc3! - Added the nursery rulenoVueDeprecatedDestroyedLifecycle, which reports thebeforeDestroyanddestroyedlifecycle hooks in Vue components. Vue 3 renamed them tobeforeUnmountandunmounted, and no longer calls hooks with the old names.#12654
bcb1e0fThanks @dyc3! - Added the nursery rulenoVueDeprecatedEventsApi, which reports calls to the$on,$off, and$onceinstance methods in Vue components. Vue 3 removed these methods, so calling them throws an error.#12590
b9872efThanks @dyc3! - Added the nursery rulenoVueDeprecatedFunctionalTemplate, which reports thefunctionalattribute on the<template>of a Vue component. Vue 3 no longer supports this attribute.#12552
b71b705Thanks @dyc3! - Added the nursery rulenoVueDeprecatedHtmlElementIs, which disallows theisattribute on HTML elements in Vue templates. Vue 3 no longer renders a component in place of these elements, unless the value starts withvue:.#12553
4a613e1Thanks @dyc3! - Added the nursery rulenoVueDeprecatedInlineTemplate, which disallows theinline-templateattribute on Vue components. Vue 3 removed this feature, so the content between the component's tags is no longer used as its template.#12617
0e9ca5bThanks @dyc3! - Added the nursery rulenoVueDeprecatedModelDefinition, which reports themodeloption in Vue components. Vue 3 ignores this option, sov-modelon the component always uses themodelValueprop and theupdate:modelValueevent.#12604
e998921Thanks @dyc3! - Added the nursery rulenoVueDeprecatedPropsDefaultThis, which reportsthisinside the function that computes the default value of a Vue prop. Vue doesn't give this function access to the component, sothisdoesn't point to it. Read other props from the function's first argument instead.#12633
f65fe1eThanks @dyc3! - Added the nursery rulenoVueDeprecatedSlotAttribute, which reports theslotattribute in Vue templates. Vue 3 no longer uses this attribute to fill named slots, so usev-slot(or#) on a<template>element instead.#12589
8ccb19aThanks @dyc3! - Added the new nursery rulenoVueDeprecatedVBindSync, which reports the.syncmodifier on Vuev-binddirectives. Vue 3 removed this modifier, so the rule suggestsv-modelwith the same argument instead.#12609
e1e102bThanks @dyc3! - Added the new nursery rulenoVueDeprecatedVOnNativeModifier, which disallows the.nativemodifier on Vue'sv-ondirective. Vue 3 removed this modifier.#12667
de354e7Thanks @dyc3! - Added the new nursery rulenoVueExcessiveProps, which reports Vue components that declare more props than themaxPropsoption allows. The default limit is10.#12666
c3dc557Thanks @dyc3! - Added the nursery rulenoVueLoneTemplate, which reports<template>elements inside a Vue template that don't usev-if,v-else-if,v-else,v-for, orv-slot. Vue renders these as regular HTML<template>elements, so their content isn't shown.#12533
4b1089dThanks @dyc3! - Added the new nursery rulenoVueMixin, which reports themixinsoption in Vue components. In Vue 3, composables are the recommended way to share logic between components. The rule is recommended and part of thevuedomain.#12658
807e358Thanks @dyc3! - Added the new nursery rulenoVueMultipleObjectsInClass, which reports:classarrays in Vue templates that contain more than one object. Merge the conditional classes into a single object instead.#12564
78c1dd5Thanks @dyc3! - Added the nursery rulenoVueRefObjectReactivityLoss, which reports reads of a Vue ref's value that run only once, in the same function that creates the ref. Such a read copies the current value, and the copy doesn't update when the ref changes.#12517
5044c56Thanks @dyc3! - Added the nursery rulenoVueRestrictedCallAfterAwait, which reports calls to configured functions that come after anawaitin a Vue component'ssetup()function.For example, with
{ "functions": [{ "module": "vue-i18n", "path": "useI18n" }] }, the following call is reported:#12558
e898da4Thanks @dyc3! - Added the nursery rulenoVueRestrictedVOn, which reportsv-onevent listeners that are disallowed through thelistenersoption. An entry can match an event name, a set of modifiers, and an element. For example, with{ "listeners": [{ "event": "click", "element": "MyButton" }] },<MyButton @click="onClick" />is now reported.#12573
65c6b0bThanks @dyc3! - Added the new nursery rulenoVueTemplateKey, which disallows thekeyattribute on<template>elements in Vue files. Akeyon a<template>that also usesv-foris still allowed.#12629
2a34da1Thanks @dyc3! - Added the new nursery rulenoVueTemplateShadow, which disallowsv-forandv-slotvariables that hide a variable with the same name from an outer scope of a Vue template.#12610
40de561Thanks @dyc3! - Added the new nursery rulenoVueTextareaMustache, which disallows{{ }}text interpolation inside a Vue<textarea>. Vue doesn't support it there; usev-modelinstead.#12665
7742209Thanks @dyc3! - Added the new nursery rulenoVueThisInBeforeRouteEnter, which reportsthisin thebeforeRouteEnternavigation guard of a Vue component. Vue Router calls this guard before it creates the component, sothisisundefinedthere.#12620
70d7173Thanks @dyc3! - Added the nursery rulenoVueThisInTemplate, which reportsthisin Vue templates. Templates can read the properties of the component directly, sothis.textcan be written astext:#12601
1d4ed92Thanks @dyc3! - Added the new nursery rulenoVueUndeclaredEmits, which reports events that a Vue component emits without declaring them in theemitsoption or indefineEmits().#12583
4e870a8Thanks @dyc3! - Added the nursery rulenoVueUndeclaredProperties, which reports names that a Vue component uses but doesn't declare, in its template, inthis.name, and inprops.name.#12657
b45fe79Thanks @dyc3! - Added the new nursery rulenoVueUndeclaredSlots, which reports<slot>elements in Vue components written in TypeScript when the slot isn't declared withdefineSlots()or with theslotsoption.#12789
041c800Thanks @dyc3! - Added the new nursery rulenoVueUselessTemplateAttributes, which reports attributes and directives that have no effect on a<template>element withv-if,v-else-if,v-else,v-for, orv-slotin Vue files. Vue renders only the content of such an element, so it ignores the other attributes.#12592
36531ccThanks @dyc3! - Added the nursery rulenoVueUselessVBind, which reportsv-binddirectives whose value is a fixed string. A plain attribute does the same thing.#12522
59838bbThanks @dyc3! - Added the nursery rulenoVueVForTemplateKeyOnChild, which reports akeyplaced on a child element of a<template v-for>instead of on the<template>tag.#12516
2d9e57eThanks @dyc3! - Added the nursery ruleuseAccessorPairs. The rule reports setters that have no matching getter in object literals, classes, and property descriptors.#12756
1c6e3efThanks @dyc3! - Added the new nursery ruleuseObjectFromEntries, which reports code that builds an object from a list of key-value pairs withreduce(), afor...ofloop, or_.fromPairs()instead ofObject.fromEntries(). Thefunctionsoption adds other helper functions to report.#12778
5432756Thanks @dyc3! - Added the new nursery ruleuseSetSize, which reports code that copies aSetinto an array only to read the array'slength, and suggests reading thesizeproperty of theSetinstead.#12302
b0d3390Thanks @dyc3! - Added the nursery ruleuseSvelteStoreInitialValue, which requireswritable(),readable(), andderived()stores fromsvelte/storeto be created with an initial value.#12290
c973fedThanks @dyc3! - Added the nursery ruleuseTailwindVariablesShorthandfor JavaScript and HTML. It reports Tailwind CSS classes that read a CSS variable with[var()], and fixes them to the shorthand that Tailwind CSS v4 added.#12518
e9d9616Thanks @dyc3! - Added the nursery ruleuseTanstackQueryStableQueryClient, which reports a TanStack QueryQueryClientcreated inside a React component or custom hook. Such a client is created again on every render, and its cache starts empty each time.#12650
0ddd08fThanks @dyc3! - Added the nursery ruleuseVueBlockOrder, which enforces the order of the top-level blocks in Vue components. By default,<script>and<template>blocks come first, in any order, followed by<style>blocks. The order can be changed with theorderoption.#12715
7863f32Thanks @dyc3! - Added the nursery ruleuseVueBooleanPropTypeFirst, which requiresBooleanto come first in the list of types of a Vue prop. WhenStringcomes beforeBoolean, a prop written in a template without a value is set to an empty string instead oftrue.#12563
91ac4cbThanks @dyc3! - Added the nursery ruleuseVueComputedPropertyReturn, which requires the getters of Vue computed properties to return a value on every path.[#12716](https://redirect.github.co
Configuration
📅 Schedule: (UTC)
🚦 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 this update again.
This PR was generated by Mend Renovate. View the repository job log.