note: la síntesis y las notas de la versión están en inglés
note: sin síntesis para esta release digest
Las releases digest se listan sin síntesis. Las notas de la versión originales de esta versión están aquí abajo.
release-notesgithub.com/biomejs/biome · 109 líneas
- ## 2.3.15
- ### Patch Changes
- - [#9019](https://github.com/biomejs/biome/pull/9019) [`043b67c`](https://github.com/biomejs/biome/commit/043b67c608f99a27c775deefb9f00b43839251ae) Thanks [@dyc3](https://github.com/dyc3)! - Added the lint rule [`noNestedPromises`](https://biomejs.dev/linter/rules/no-nested-promises/). This rule detects nested `.then()` or `.catch()` calls that could be refactored into flat promise chains.
- ```js
- // Invalid: nested promise that can be flattened
- doThing().then(function () {
- return doOtherThing().then(console.log);
- });
- // Valid: flat promise chain
- doThing()
- .then(() => doOtherThing())
- .then(console.log);
- ```
- The rule intelligently allows nesting when the inner callback references variables from the outer scope, as these cases cannot be safely flattened.
- - [#9029](https://github.com/biomejs/biome/pull/9029) [`6ebf6c6`](https://github.com/biomejs/biome/commit/6ebf6c605f20a504aa5f23477f2e9be32437fb90) Thanks [@ff1451](https://github.com/ff1451)! - Added the nursery rule [`noUselessReturn`](https://biomejs.dev/linter/rules/no-useless-return/). The rule reports redundant `return;` statements that don't affect the function's control flow.
- ```js
- // Invalid: return at end of function is redundant
- function foo() {
- doSomething();
- return;
- }
- ```
- - [#9017](https://github.com/biomejs/biome/pull/9017) [`8bac2da`](https://github.com/biomejs/biome/commit/8bac2da137bb1b697be1ebf41a11088c0220ce65) Thanks [@mdevils](https://github.com/mdevils)! - Reverted a behavior change in [`useExhaustiveDependencies`](https://biomejs.dev/linter/rules/use-exhaustive-dependencies/) that was accidentally included as part of the [#8802](https://github.com/biomejs/biome/issues/8802) fix. The change made method calls on objects (e.g., `props.data.forEach(...)`) report only the object (`props.data`) as a missing dependency instead of the full member expression. This behavior change will be reconsidered separately.
- - [#9005](https://github.com/biomejs/biome/pull/9005) [`c8dbbbe`](https://github.com/biomejs/biome/commit/c8dbbbe9363fb156a29de174ba7735154f6bc783) Thanks [@corvid-agent](https://github.com/corvid-agent)! - Fixed [#8790](https://github.com/biomejs/biome/issues/8790): The [`noAssignInExpressions`](https://biomejs.dev/linter/rules/no-assign-in-expressions/) rule no longer reports a false positive when an assignment is used as the expression body of an arrow function (e.g., `const f = b => a += b`).
- - [#8519](https://github.com/biomejs/biome/pull/8519) [`ccdc602`](https://github.com/biomejs/biome/commit/ccdc602d8ab8e7b14b7cbae2b12cdf396edb8301) Thanks [@ruidosujeira](https://github.com/ruidosujeira)! - Fixed [#8518](https://github.com/biomejs/biome/issues/8518), where globally excluded files in a monorepo were still being processed when using `"extends": "//"`.
- When a package-level configuration extends the root configuration with `"extends": "//"`, glob patterns (such as those in `files.includes`) are now correctly resolved relative to the project root directory, instead of the current workspace directory.
- - [#9033](https://github.com/biomejs/biome/pull/9033) [`0628e0a`](https://github.com/biomejs/biome/commit/0628e0a238d9c9c750e4f44c460455183a0ff70e) Thanks [@mdevils](https://github.com/mdevils)! - Fixed [#8967](https://github.com/biomejs/biome/issues/8967). [useExhaustiveDependencies](https://biomejs.dev/linter/rules/use-exhaustive-dependencies/) no longer reports false positives for variables destructured from a rest pattern.
- - [#9023](https://github.com/biomejs/biome/pull/9023) [`8ef9d1d`](https://github.com/biomejs/biome/commit/8ef9d1d81c416a9f4d42527f4c263bc3f2e423b1) Thanks [@siketyan](https://github.com/siketyan)! - Fixed [#9020](https://github.com/biomejs/biome/issues/9020): When `javascript.jsxRuntime` is set to `reactClassic`, `noUnusedImports` and `useImportType` rules now allow importing the `React` identifier from a package other than `react`. This aligns the behavior with `tsc` (`--jsx=react`), which also allows importing `React` from any package.
- - [#8646](https://github.com/biomejs/biome/pull/8646) [`16fd71d`](https://github.com/biomejs/biome/commit/16fd71da5692f863112e302078325d3be4d79b24) Thanks [@siketyan](https://github.com/siketyan)! - Fixed [#8605](https://github.com/biomejs/biome/issues/8605): Text expressions in some template languages (`{{ expr }}` or `{ expr }`) at the top level of an HTML document no longer causes panicking.
- - [#8930](https://github.com/biomejs/biome/pull/8930) [`51c158e`](https://github.com/biomejs/biome/commit/51c158e803f9bad561cf5b79365c339e9069d614) Thanks [@ANKANJAGTAP](https://github.com/ANKANJAGTAP)! - Fixed #8917
- [useExhaustiveDependencies](https://biomejs.dev/linter/rules/use-exhaustive-dependencies/) now correctly detects JSX component identifiers as hook dependencies.
- - [#9009](https://github.com/biomejs/biome/pull/9009) [`7d229c7`](https://github.com/biomejs/biome/commit/7d229c7ca3930ff56e3a229a70b994f1d5fd1086) Thanks [@Netail](https://github.com/Netail)! - Fixed typo in [noPositiveTabindex](https://biomejs.dev/linter/rules/no-positive-tabindex/)'s quick fix text.
- - [#8758](https://github.com/biomejs/biome/pull/8758) [`8c789f1`](https://github.com/biomejs/biome/commit/8c789f15e2129874450a29a55d376efe17dbcf5b) Thanks [@Pranav2612000](https://github.com/Pranav2612000)! - Updated the useJsxKeyInIterable rule to not run inside Map constructors
- - [#8977](https://github.com/biomejs/biome/pull/8977) [`bbe0e0c`](https://github.com/biomejs/biome/commit/bbe0e0c319f78b484d11649cc473ebca92f5e3af) Thanks [@FrankFMY](https://github.com/FrankFMY)! - Fixed [#4888](https://github.com/biomejs/biome/issues/4888).
- [noUnusedImports](https://biomejs.dev/linter/rules/no-unused-imports/) now adds `export {}` when removing the last import in a TypeScript file to prevent it from becoming an ambient module. This does not apply to embedded scripts in Vue, Svelte, or Astro files, which are already in a module context.
- - [#9016](https://github.com/biomejs/biome/pull/9016) [`9d4cfa3`](https://github.com/biomejs/biome/commit/9d4cfa304268579361639c3d2301f1e38526dd00) Thanks [@dyc3](https://github.com/dyc3)! - Added eslint migration metadata for the rules `@typescript/no-var-requires`, `@typescript/keyword-spacing`, `@typescript/func-call-spacing`, `vue/keyword-spacing`, `vue/func-call-spacing`, and `unicorn/empty-brace-spaces`,
- - [#8848](https://github.com/biomejs/biome/pull/8848) [`2cba2b3`](https://github.com/biomejs/biome/commit/2cba2b3996447dab1d653dd8c8ee97eddd0bb63b) Thanks [@LouisLau-art](https://github.com/LouisLau-art)! - Fixed [#8845](https://github.com/biomejs/biome/issues/8845). Now `useGenericFontNames` doesn't trigger when `font` is declared inside the `@supports` at-rule.
- - [#8997](https://github.com/biomejs/biome/pull/8997) [`a5f3212`](https://github.com/biomejs/biome/commit/a5f321284249e21b9dda9fdc9130974c47df8a99) Thanks [@mldangelo](https://github.com/mldangelo)! - Fixed [#8476](https://github.com/biomejs/biome/issues/8476).
- [useAwaitThenable](https://biomejs.dev/linter/rules/use-await-thenable/) no longer reports false positives for `await` on call expressions whose return type cannot be resolved (e.g., cross-module function calls to Node.js builtins or npm packages).
- - [#8978](https://github.com/biomejs/biome/pull/8978) [`cc7a478`](https://github.com/biomejs/biome/commit/cc7a4785f47a2c2a5ba3ea4ef90937742a2cd347) Thanks [@FrankFMY](https://github.com/FrankFMY)! - Fixed [#8645](https://github.com/biomejs/biome/issues/8645).
- [useAwait](https://biomejs.dev/linter/rules/use-await/) no longer reports `async` generator functions that use `yield*`, since `yield*` in an async generator delegates to an `AsyncIterable` and requires the `async` modifier.
- ## What's Changed
- * docs: fix website sync by @dyc3 in https://github.com/biomejs/biome/pull/8957
- * chore(deps): update rust crate git2 to v0.20.4 [security] by @renovate[bot] in https://github.com/biomejs/biome/pull/8965
- * fix: jsx dependency detection in useexhaustivedependencies (#8917) by @ANKANJAGTAP in https://github.com/biomejs/biome/pull/8930
- * chore(doc): update formatter contributing doc by @tidefield in https://github.com/biomejs/biome/pull/8972
- * fix(useAwait): treat yield* as async operation in async generators by @FrankFMY in https://github.com/biomejs/biome/pull/8978
- * fix(css): ignore @supports queries in useGenericFontNames rule by @LouisLau-art in https://github.com/biomejs/biome/pull/8848
- * fix(html/parser): distinguish interpolations inside and outside tags by @siketyan in https://github.com/biomejs/biome/pull/8646
- * chore(deps): update rust:1.93.0-bookworm docker digest to d0a4aa3 by @renovate[bot] in https://github.com/biomejs/biome/pull/8999
- * chore(deps): update rust:1.93.0-bullseye docker digest to 3ebcc2d by @renovate[bot] in https://github.com/biomejs/biome/pull/9000
- * fix(codegen): remove duplicate preamble in generated analyzer files by @mldangelo in https://github.com/biomejs/biome/pull/8993
- * chore(deps): update rust crate anyhow to 1.0.101 by @renovate[bot] in https://github.com/biomejs/biome/pull/9004
- * chore(deps): update rust crate bpaf to 0.9.23 by @renovate[bot] in https://github.com/biomejs/biome/pull/9006
- * chore(deps): update rust crate insta to 1.46.3 by @renovate[bot] in https://github.com/biomejs/biome/pull/9007
- * chore(deps): update dependency tombi to v0.7.27 by @renovate[bot] in https://github.com/biomejs/biome/pull/9002
- * chore(deps): update github-actions by @renovate[bot] in https://github.com/biomejs/biome/pull/9003
- * chore(deps): update dependency @types/node to v24.10.11 by @renovate[bot] in https://github.com/biomejs/biome/pull/9001
- * fix(js_analyze): typo in noPositiveTabindex's action suggestion by @Netail in https://github.com/biomejs/biome/pull/9009
- * fix(useAwaitThenable): treat unresolved call expressions as uninferred by @mldangelo in https://github.com/biomejs/biome/pull/8997
- * fix(linter): allow assignment in arrow function expression body by @corvid-agent in https://github.com/biomejs/biome/pull/9005
- * feat(migrate): some more migration metadata by @dyc3 in https://github.com/biomejs/biome/pull/9016
- * fix(linter): `useExhaustiveDependencies` revert object method call behavior change, fixes #8958 by @mdevils in https://github.com/biomejs/biome/pull/9017
- * fix(linter): add `export {}` when noUnusedImports removes last import in TypeScript by @FrankFMY in https://github.com/biomejs/biome/pull/8977
- * fix(useJsxKeyInIterable): ignore rule in Map constructor by @Pranav2612000 in https://github.com/biomejs/biome/pull/8758
- * docs: correct default value for `useEditorconfig` schema setting by @lgaspari in https://github.com/biomejs/biome/pull/9025
- * fix(lint): remove import source check from is_global_react_import() by @siketyan in https://github.com/biomejs/biome/pull/9023
- * chore: upgrade CVE'ed crates, remove unmaintaned crates by @ematipico in https://github.com/biomejs/biome/pull/9032
- * feat(lint/js): add `noNestedPromises` by @dyc3 in https://github.com/biomejs/biome/pull/9019
- * fix: resolve glob patterns relative to project root when extending by @ruidosujeira in https://github.com/biomejs/biome/pull/8519
- * feat(lint): add nursery rule noUselessReturn by @ff1451 in https://github.com/biomejs/biome/pull/9029
- * fix(linter): `useExhaustiveDependencies` proper rest parameters handling, fixes #8967 by @mdevils in https://github.com/biomejs/biome/pull/9033
- * ci: release by @github-actions[bot] in https://github.com/biomejs/biome/pull/8973
- ## New Contributors
- * @ANKANJAGTAP made their first contribution in https://github.com/biomejs/biome/pull/8930
- * @FrankFMY made their first contribution in https://github.com/biomejs/biome/pull/8978
- * @LouisLau-art made their first contribution in https://github.com/biomejs/biome/pull/8848
- * @corvid-agent made their first contribution in https://github.com/biomejs/biome/pull/9005
- * @Pranav2612000 made their first contribution in https://github.com/biomejs/biome/pull/8758
- * @lgaspari made their first contribution in https://github.com/biomejs/biome/pull/9025
- * @ff1451 made their first contribution in https://github.com/biomejs/biome/pull/9029
- **Full Changelog**: https://github.com/biomejs/biome/compare/@biomejs/biome@2.3.14...@biomejs/biome@2.3.15