Pull Request Overview
- Opened on September 17, 2026
- Status Merged
- Commit count 1 with first commit September 17, 2026
Total Delta
Open Days
Test Delta
How long has this pull request spent in each phase of its lifecycle?
| Fraction of total time | Business days | Phase |
|---|---|---|
|
|
0.0 days | Authoring 0 commits before pull request opened for review |
|
|
0.0 days | Awaiting first review |
| Set up deploy tracking to begin tracking full PR start-to-deploy times | ||
Total time for pull request
0.0 business days
from first commit authored to merge
Deploy tracking has not been set up
chore(deps-dev): bump @biomejs/biome from 2.5.12 to 2.5.13
Bumps @biomejs/biome from 2.5.12 to 2.5.13.
Release notes
Sourced from @biomejs/biome's releases.
Biome CLI v2.5.13
2.5.13
Patch Changes
#11379
07a0073Thanks@Netail! - Added the nursery ruleuseLayeredStyles, which enforces that style rules are defined within a cascade layer and import rules to import its styles into a cascade layer./* Invalid /
@import 'foo.css';.my-style {
color: red;
}/
Valid /@import'foo.css' layer(base);
@layer base {
.my-style {
color: red;
}
}
#11667 e997900 Thanks @devtechedge! - Added the nursery rule useBetterDomTraversing, which prefers .firstChild, .firstElementChild, .closest(), and merged .querySelector() calls over positional DOM traversal.
element.childNodes[0];
element.children[0];
element.parentElement.parentElement;
element.querySelector("a").querySelector("b");
#11620 20e513a Thanks @jakeleventhal! - Fixed #11610, #11611, #11612, #11615, and #11616: Biome no longer fully infers an imported generic declaration just to apply its type arguments, restoring type-aware lint performance for large libraries such as Zod. This improves useRegexpExec, noFloatingPromises, noMisusedPromises, useNullishCoalescing, and noUnsafePlusOperands.
#11657 e322040 Thanks @ematipico! - Fixed #7495: noUselessConstructor now ignores TypeScript constructors that forward at least one argument to super, preserving constructors that narrow the subclass's accepted parameter types. The exemption also applies when the parent and child signatures are identical; JavaScript and zero-argument forwarding behavior are unchanged.
#11670 4969ee1 Thanks @ematipico! - Fixed #7076: useAriaPropsForRole and useFocusableInteractive no longer report non-focusable elements with role="separator". A separator with an explicit tabIndex or tabindex still requires aria-valuenow.
#11627 23aad6d Thanks @ematipico! - Fixed #6571 so Grit plugins can capture and inspect multiple named import specifiers.
#11631 00dbd3a Thanks @ematipico! - Reduced unnecessary type inference when type-aware lint rules inspect members of namespace imports from libraries such as Zod. Fixed type inference so blanket re-exports do not expose default exports.
#11628 a2f8ff7 Thanks @dyc3! - Added the nursery rule noXorAsExponentiation, which reports the bitwise XOR operator ^ between two decimal integer literals, where the exponentiation operator was likely intended.
const kibibyte = 2 ^ 10; // 8, not 1024
<!-- raw HTML omitted -->
... (truncated)
Changelog
Sourced from @biomejs/biome's changelog.
2.5.13
Patch Changes
#11379
07a0073Thanks@Netail! - Added the nursery ruleuseLayeredStyles, which enforces that style rules are defined within a cascade layer and import rules to import its styles into a cascade layer./ Invalid /
@import 'foo.css';.my-style {
color: red;
}/
Valid /@import'foo.css' layer(base);
@layerbase {
.my-style {
color: red;
}
}#11667
e997900Thanks@devtechedge! - Added the nursery ruleuseBetterDomTraversing, which prefers.firstChild,.firstElementChild,.closest(), and merged.querySelector()calls over positional DOM traversal.element.childNodes[0];
element.children[0];
element.parentElement.parentElement;
element.querySelector("a").querySelector("b");#11620
20e513aThanks@jakeleventhal! - Fixed #11610, #11611, #11612, #11615, and #11616: Biome no longer fully infers an imported generic declaration just to apply its type arguments, restoring type-aware lint performance for large libraries such as Zod. This improvesuseRegexpExec,noFloatingPromises,noMisusedPromises,useNullishCoalescing, andnoUnsafePlusOperands.#11657
e322040Thanks@ematipico! - Fixed #7495:noUselessConstructornow ignores TypeScript constructors that forward at least one argument tosuper, preserving constructors that narrow the subclass's accepted parameter types. The exemption also applies when the parent and child signatures are identical; JavaScript and zero-argument forwarding behavior are unchanged.#11670
4969ee1Thanks@ematipico! - Fixed #7076:useAriaPropsForRoleanduseFocusableInteractiveno longer report non-focusable elements withrole="separator". A separator with an explicittabIndexortabindexstill requiresaria-valuenow.#11627
23aad6dThanks@ematipico! - Fixed #6571 so Grit plugins can capture and inspect multiple named import specifiers.#11631
00dbd3aThanks@ematipico! - Reduced unnecessary type inference when type-aware lint rules inspect members of namespace imports from libraries such as Zod. Fixed type inference so blanket re-exports do not expose default exports.#11628
a2f8ff7Thanks@dyc3! - Added the nursery rulenoXorAsExponentiation, which reports the bitwise XOR operator^between two decimal integer literals, where the exponentiation operator*was likely intended.const kibibyte = 2 ^ 10; // 8, not 1024#11670
4969ee1Thanks@ematipico! - Fixed #7192:noUnusedPrivateClassMembersnow considers compound assignments such as??=to read and use private class members.
<!-- raw HTML omitted -->
... (truncated)
Commits
-
810ea56ci: release (#11614) -
e997900feat(linter): add useBetterDomTraversing nursery rule (#11667) -
de0528ffeat(lint/html/svelte): add noSvelteAtHtmlTags (#11606) -
07a0073feat(css_analyze): implement useLayeredStyles (#11379) -
c23e4c7feat: noUnsafeIframeSandbox (#11622) -
a2f8ff7feat(lint/js): add noXorAsExponentiation (#11628) -
a64d757feat(lint/js/vue): add useVueBaseImport (#11595) -
611767fchore: update depot logo (#11602) - See full diff in compare view
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Comments Threads Pending Resolution
Resolved Comment Threads
No resolved comments have been left on this PR.