Skip to content
verdict:

Biome 2.4.11

digest

note: no summary for this digest release

Digest releases are listed without a summary. The original release notes for this version are below.

release-notesgithub.com/biomejs/biome · 279 lines
  1. ## 2.4.11
  2. ### Patch Changes
  3. - [#9350](https://github.com/biomejs/biome/pull/9350) [`4af4a3a`](https://github.com/biomejs/biome/commit/4af4a3a9ca31a598e9836997b7811992eae53387) Thanks [@dyc3](https://github.com/dyc3)! - Added the new nursery rule [useConsistentTestIt](https://biomejs.dev/linter/rules/use-consistent-test-it/) in the `test` domain. The rule enforces consistent use of either `it` or `test` for test functions in Jest/Vitest suites, with separate control for top-level tests and tests inside `describe` blocks.
  4. Invalid:
  5. ```js
  6. test("should fly", () => {}); // Top-level test using 'test' flagged, convert to 'it'
  7. describe("pig", () => {
  8. test("should fly", () => {}); // Test inside 'describe' using 'test' flagged, convert to 'it'
  9. });
  10. ```
  11. - [#9429](https://github.com/biomejs/biome/pull/9429) [`a2f3f7e`](https://github.com/biomejs/biome/commit/a2f3f7eb3a134ccc6851ed0eec19d1ff1636ec72) Thanks [@ematipico](https://github.com/ematipico)! - Added the new nursery lint rule [`useExplicitReturnType`](https://biomejs.dev/linter/rules/use-explicit-return-type). It reports TypeScript functions and methods that omit an explicit return type.
  12. ```ts
  13. function toString(x: any) {
  14. // rule triggered, it doesn't declare a return type
  15. return x.toString();
  16. }
  17. ```
  18. - [#9828](https://github.com/biomejs/biome/pull/9828) [`9e40844`](https://github.com/biomejs/biome/commit/9e40844261cf7b8c573e340e11e3297ef08bcd60) Thanks [@ematipico](https://github.com/ematipico)! - Fixed [#9484](https://github.com/biomejs/biome/issues/9484): the formatter no longer panics when formatting files that contain `graphql` tagged template literals combined with parenthesized expressions.
  19. - [#9886](https://github.com/biomejs/biome/pull/9886) [`e7c681e`](https://github.com/biomejs/biome/commit/e7c681ecbb6aed471c914167f5d067d327792f44) Thanks [@ematipico](https://github.com/ematipico)! - Fixed an issue where, occasionally, some bindings and references were not properly tracked, causing false positives from [`noUnusedVariables`](https://biomejs.dev/linter/rules/no-unused-variables/) and [`noUndeclaredVariables`](https://biomejs.dev/linter/rules/no-undeclared-variables/) in Svelte, Vue, and Astro files.
  20. - [#9760](https://github.com/biomejs/biome/pull/9760) [`5b16d18`](https://github.com/biomejs/biome/commit/5b16d187ba63800f4b6ea5057d551ae3f2fbc68c) Thanks [@myx0m0p](https://github.com/myx0m0p)! - Fixed [#4093](https://github.com/biomejs/biome/issues/4093): the [`noDelete`](https://biomejs.dev/linter/rules/no-delete/) rule no longer triggers for `delete process.env.FOO`, since `delete` is the documented way to remove environment variables in Node.js.
  21. - [#9799](https://github.com/biomejs/biome/pull/9799) [`2af8efd`](https://github.com/biomejs/biome/commit/2af8efd348cfa992bc7d35683de55bb8cc583260) Thanks [@minseong0324](https://github.com/minseong0324)! - Added the rule [`noMisleadingReturnType`](https://biomejs.dev/linter/rules/no-misleading-return-type/). The rule detects when a function's return type annotation is wider than what the implementation actually returns.
  22. ```ts
  23. // Flagged: `: string` is wider than `"loading" | "idle"`
  24. function getStatus(b: boolean): string {
  25. if (b) return "loading";
  26. return "idle";
  27. }
  28. ```
  29. - [#9880](https://github.com/biomejs/biome/pull/9880) [`7f67749`](https://github.com/biomejs/biome/commit/7f67749e77af6e5af3dfc72a02bb99718695612e) Thanks [@dyc3](https://github.com/dyc3)! - Improved the diagnostics for [`useFind`](https://biomejs.dev/linter/rules/use-find/) to better explain the problem, why it matters, and how to fix it.
  30. - [#9755](https://github.com/biomejs/biome/pull/9755) [`bff7bdb`](https://github.com/biomejs/biome/commit/bff7bdb1355cdf7d219a288e31c5c5a0357e3aad) Thanks [@ematipico](https://github.com/ematipico)! - Improved performance of fix-all operations (`--write`). Biome is now smarter when it runs lint rules and assist actions. First, it runs only rules that have code fixes, and then runs the rest of the rules.
  31. - [#8651](https://github.com/biomejs/biome/pull/8651) [`aafca2d`](https://github.com/biomejs/biome/commit/aafca2d086eb24226a9cf1a69179561f70d02773) Thanks [@siketyan](https://github.com/siketyan)! - Add a new lint rule `useDisposables` for JavaScript, which detects disposable objects assigned to variables without `using` or `await using` syntax. Disposable objects that implement the `Disposable` or `AsyncDisposable` interface are intended to be disposed of after use. Not disposing them can lead to resource or memory leaks, depending on the implementation.
  32. **Invalid:**
  33. ```js
  34. function createDisposable(): Disposable {
  35. return {
  36. [Symbol.dispose]() {
  37. // do something
  38. },
  39. };
  40. }
  41. const disposable = createDisposable();
  42. ```
  43. **Valid:**
  44. ```js
  45. function createDisposable(): Disposable {
  46. return {
  47. [Symbol.dispose]() {
  48. // do something
  49. },
  50. };
  51. }
  52. using disposable = createDisposable();
  53. ```
  54. - [#9788](https://github.com/biomejs/biome/pull/9788) [`53b8e57`](https://github.com/biomejs/biome/commit/53b8e5768e33b87298f8e0e4c896957dee6f2eb6) Thanks [@MeGaNeKoS](https://github.com/MeGaNeKoS)! - Fixed [#7760](https://github.com/biomejs/biome/issues/7760): Added support for CSS scroll-driven animation `timeline-range-name` keyframe selectors (`cover`, `contain`, `entry`, `exit`, `entry-crossing`, `exit-crossing`). Biome no longer reports parse errors on keyframes like `entry 0% { ... }` or `exit 100% { ... }`.
  55. - [#9728](https://github.com/biomejs/biome/pull/9728) [`5085424`](https://github.com/biomejs/biome/commit/5085424db427c7874eef7ca732f237febb49fdb1) Thanks [@mkosei](https://github.com/mkosei)! - Fixed [#9696](https://github.com/biomejs/biome/issues/9696): Astro frontmatter now correctly parses regular expression literals like `/\d{4}/`.
  56. - [#9261](https://github.com/biomejs/biome/pull/9261) [`16b6c49`](https://github.com/biomejs/biome/commit/16b6c4951793c820d109a9b502e1812fcbfca764) Thanks [@ematipico](https://github.com/ematipico)! - Fixed [#8409](https://github.com/biomejs/biome/issues/8409): CSS formatter now correctly places comments after the colon in property declarations.
  57. Previously, comments that appeared after the colon in CSS property values were incorrectly moved before the property name:
  58. ```diff
  59. [lang]:lang(ja) {
  60. - /* system-ui,*/ font-family:
  61. + font-family: /* system-ui,*/
  62. Hiragino Sans,
  63. sans-serif;
  64. }
  65. ```
  66. - [#9441](https://github.com/biomejs/biome/pull/9441) [`957ea4c`](https://github.com/biomejs/biome/commit/957ea4c8ebe75083ba68a98f70616c88368883c5) Thanks [@soconnor-seeq](https://github.com/soconnor-seeq)! - Fixed [#1630](https://github.com/biomejs/biome/issues/1630): LSP project selection now prefers the most specific project root in nested workspaces.
  67. - [#9878](https://github.com/biomejs/biome/pull/9878) [`de6210f`](https://github.com/biomejs/biome/commit/de6210f80fa6d1dc0ca3edd395e9d8e571766bb8) Thanks [@ematipico](https://github.com/ematipico)! - Fixed [#9118](https://github.com/biomejs/biome/issues/9118): [`noUnusedImports`](https://biomejs.dev/linter/rules/no-unused-imports/) no longer reports false positives for default imports used inside Svelte, Vue and Astro components.
  68. - [#9879](https://github.com/biomejs/biome/pull/9879) [`ce7e2b7`](https://github.com/biomejs/biome/commit/ce7e2b762bc82319c39027d15e84a26f8708fc92) Thanks [@dyc3](https://github.com/dyc3)! - Fixed a parser diagnostic's message when vue syntax is disabled so that it no longer references the non-existant `html.parser.vue` option. This option will become available in 2.5.
  69. - [#9880](https://github.com/biomejs/biome/pull/9880) [`7f67749`](https://github.com/biomejs/biome/commit/7f67749e77af6e5af3dfc72a02bb99718695612e) Thanks [@dyc3](https://github.com/dyc3)! - Improved the diagnostics for [`useRegexpExec`](https://biomejs.dev/linter/rules/use-regexp-exec/) to better explain the problem, why it matters, and how to fix it.
  70. - [#9846](https://github.com/biomejs/biome/pull/9846) [`b7134d9`](https://github.com/biomejs/biome/commit/b7134d92413991c4394574353b76b1891160bc38) Thanks [@ematipico](https://github.com/ematipico)! - Fixed [#9140](https://github.com/biomejs/biome/issues/9140): Biome now parses Astro's attribute shorthand inside `.astro` files. The following snippet no longer reports a parse error:
  71. ```astro
  72. ---
  73. const items = ['a', 'b'];
  74. ---
  75. <ul>
  76. {items.map((item) => <li {item}>row</li>)}
  77. </ul>
  78. ```
  79. - [#9790](https://github.com/biomejs/biome/pull/9790) [`67df09d`](https://github.com/biomejs/biome/commit/67df09d524fe49d3bb08dc45b7dfb99771e25bdd) Thanks [@dyc3](https://github.com/dyc3)! - Fixed [#9781](https://github.com/biomejs/biome/issues/9781): Trailing comments after a top-level `biome-ignore-all format` suppression are now preserved instead of being dropped. This applies to JavaScript, CSS, HTML, JSONC, GraphQL, and Grit files.
  80. - [#9745](https://github.com/biomejs/biome/pull/9745) [`d87073e`](https://github.com/biomejs/biome/commit/d87073ef5586f0cf7eb74fd0d7390a3444c591ff) Thanks [@ematipico](https://github.com/ematipico)! - Fixed [#9741](https://github.com/biomejs/biome/issues/9741): the LSP server now correctly returns the [`organizeImports`](https://biomejs.dev/assist/actions/organize-imports/) code action when the client requests it via `source.organizeImports.biome` in the `only` filter. Previously, editors with `codeAction/resolve` support (e.g. Zed) received an empty response because the action was serialized with the wrong kind (`source.biome.organizeImports` instead of `source.organizeImports.biome`).
  81. - [#9880](https://github.com/biomejs/biome/pull/9880) [`7f67749`](https://github.com/biomejs/biome/commit/7f67749e77af6e5af3dfc72a02bb99718695612e) Thanks [@dyc3](https://github.com/dyc3)! - Improved the diagnostics for [`useArraySome`](https://biomejs.dev/linter/rules/use-array-some/) to better explain the problem, why it matters, and how to fix it.
  82. - [#9795](https://github.com/biomejs/biome/pull/9795) [`1d09f0f`](https://github.com/biomejs/biome/commit/1d09f0fae1d0270ad603e7b494d8dffb979125aa) Thanks [@dyc3](https://github.com/dyc3)! - Relaxed [`useExplicitType`](https://biomejs.dev/linter/rules/use-explicit-type/) for trivially inferrable types.
  83. Type annotations can now be omitted when types are trivially inferrable from:
  84. - Binary expressions (`const sum = 1 + 1`)
  85. - Comparison expressions (`const isEqual = 'a' === 'b'`, `const isTest = process.env.NODE_ENV === 'test'`)
  86. - Logical expressions (`const and = true && false`)
  87. - Class instantiation (`const date = new Date()`)
  88. - Array literals (`const arr = [1, 2, 3]`)
  89. - Conditional expressions (`const val = true ? 'yes' : 'no'`)
  90. - Function calls (`const num = Math.random()`)
  91. - Parameter defaults - any expression is now allowed (`const fn = (max = MAX_ATTEMPTS) => ...`)
  92. Comparison expressions always return `boolean`, so any operands are now allowed
  93. (including property access like `process.env.NODE_ENV`).
  94. Parameters with default values no longer require type annotations, as TypeScript
  95. can infer the type from the default value (even when referencing variables).
  96. Also removed the redundant `any` type validation from this rule. The `any` type
  97. is now only validated by the dedicated `noExplicitAny` rule, following the
  98. Single Responsibility Principle.
  99. - [#9809](https://github.com/biomejs/biome/pull/9809) [`e8cad58`](https://github.com/biomejs/biome/commit/e8cad58a1baf8f8c935e8547da88905cfbfb05be) Thanks [@Netail](https://github.com/Netail)! - Added the new nursery rule [`useQwikLoaderLocation`](https://biomejs.dev/linter/rules/use-qwik-loader-location/), which enforces that Qwik loader functions are declared in the correct location.
  100. - [#9877](https://github.com/biomejs/biome/pull/9877) [`fc9d715`](https://github.com/biomejs/biome/commit/fc9d715a904d382fcd7fb932a05896cfbafaaa44) Thanks [@ematipico](https://github.com/ematipico)! - Fixed [#9136](https://github.com/biomejs/biome/issues/9136) and [#9653](https://github.com/biomejs/biome/issues/9653): [`noUndeclaredVariables`](https://biomejs.dev/linter/rules/no-undeclared-variables/) and [`noUnusedVariables`](https://biomejs.dev/linter/rules/no-unused-variables/) no longer report false positives on several Svelte template constructs that declare or reference bindings in the host grammar:
  101. - `{#snippet name(params)}` — the snippet name and its parameters (including object, array, rest, and nested destructuring) are now tracked.
  102. - `{@render name(args)}` — the snippet name used at the render site is now resolved against the snippet declaration.
  103. - `{#each items as item, index (key)}` — the `item` binding (plain identifier or destructured), the optional `index`, and the optional `key` expression are now tracked.
  104. - `{@const name = value}` — the declared name is now tracked as a binding and the initializer is analyzed for undeclared references.
  105. - `{@debug a, b, c}` — each debugged identifier is now analyzed and reported if undeclared.
  106. - Shorthand attributes `<img {src} />` — the curly-shorthand attribute is now analyzed as an expression, so undeclared references inside it are reported.
  107. For example, the following template no longer triggers either rule:
  108. ```svelte
  109. <script>
  110. let items = [];
  111. let total = 0;
  112. </script>
  113. {#snippet figure(image)}
  114. <figure>
  115. <img src={image.src} alt={image.caption} />
  116. <figcaption>{image.caption}</figcaption>
  117. </figure>
  118. {/snippet}
  119. {#each items as item}
  120. {@const price = item.price}
  121. {@render figure(item)}
  122. <span>{price}</span>
  123. {/each}
  124. {@debug items, total}
  125. ```
  126. - [#9869](https://github.com/biomejs/biome/pull/9869) [`78bce77`](https://github.com/biomejs/biome/commit/78bce773a2d8776991c93a239d462fd42bf24cc4) Thanks [@Netail](https://github.com/Netail)! - Updated [`noDuplicateFieldDefinitionNames`](https://biomejs.dev/linter/rules/no-duplicate-field-definition-names/) to also flag duplicate fields within type extensions, interface extensions & input extensions.
  127. - [#9739](https://github.com/biomejs/biome/pull/9739) [`0bc2198`](https://github.com/biomejs/biome/commit/0bc2198735230c3bad14a831652543bd304fa0d6) Thanks [@dyc3](https://github.com/dyc3)! - Fixed Grit queries that use native Biome AST node names with the native field names that are in our `.ungram` grammar files. Queries such as `JsConditionalExpression(consequent = $cons, alternate = $alt)` now compile successfully in `biome search` and grit plugins.
  128. - [#9811](https://github.com/biomejs/biome/pull/9811) [`2dddca3`](https://github.com/biomejs/biome/commit/2dddca3f09bda92f7f43bbaf482796f5aec7a970) Thanks [@dyc3](https://github.com/dyc3)! - Updated `noImpliedEval` to flag `new Function()` usages, as its a form of indirect `eval`, and to include `no-new-func` as a rule source.
  129. - [#9870](https://github.com/biomejs/biome/pull/9870) [`ccf9770`](https://github.com/biomejs/biome/commit/ccf9770b37cf2d04205a5914db72c86137bca50f) Thanks [@Netail](https://github.com/Netail)! - Marked eslint-qwik-plugin's `unused-server` as redundant since it was covered by `noUnusedVariables`.
  130. - [#9701](https://github.com/biomejs/biome/pull/9701) [`1417c3b`](https://github.com/biomejs/biome/commit/1417c3b4ece262b1500b12c9f1da1429e4d53fc4) Thanks [@dyc3](https://github.com/dyc3)! - Added the new nursery rule [`noUselessTypeConversion`](https://biomejs.dev/linter/rules/no-useless-type-conversion/), which reports redundant primitive conversion patterns such as `String(value)` when `value` is already a string.
  131. - [#9248](https://github.com/biomejs/biome/pull/9248) [`49f00a3`](https://github.com/biomejs/biome/commit/49f00a38d64af131178ba4e096155d22055aa1c4) Thanks [@pkallos](https://github.com/pkallos)! - `useNullishCoalescing` now also detects ternary expressions that check for `null` or `undefined` and suggests rewriting them with `??`. A new `ignoreTernaryTests` option allows disabling this behavior.
  132. - [#9863](https://github.com/biomejs/biome/pull/9863) [`6a44619`](https://github.com/biomejs/biome/commit/6a4461915f1f5f161795081706b84cc8992b12dd) Thanks [@ematipico](https://github.com/ematipico)! - Fixed [#9690](https://github.com/biomejs/biome/issues/9690): `biome check --write` is now idempotent on HTML files that contain embedded `<style>` or `<script>` blocks. Previously, each run reported "Fixed 1 file" even when the file content did not actually change, because the embedded language formatter's output was not re-indented to match the surrounding HTML block.
  133. ## What's Changed
  134. * feat(md/fmt): format more nodes by @ematipico in https://github.com/biomejs/biome/pull/9713
  135. * fix(markdown): preserve nested list indent tokens by @jfmcdowell in https://github.com/biomejs/biome/pull/9717
  136. * fix(html): handle escaped regex literals in astro frontmatter by @mkosei in https://github.com/biomejs/biome/pull/9728
  137. * test(markdown): add regression tests for mixed list markers across blank lines by @jfmcdowell in https://github.com/biomejs/biome/pull/9732
  138. * fix(lsp): prefer most specific project root by @soconnor-seeq in https://github.com/biomejs/biome/pull/9441
  139. * fix(markdown): fix fenced code block closing inside list items by @jfmcdowell in https://github.com/biomejs/biome/pull/9730
  140. * fix(markdown): fix HTML block parsing inside list item continuations by @jfmcdowell in https://github.com/biomejs/biome/pull/9740
  141. * fix(markdown): fix panic on multi-byte characters in emphasis context by @jfmcdowell in https://github.com/biomejs/biome/pull/9735
  142. * refactor(markdown): replace skipped trivia with formatter-safe recovery by @jfmcdowell in https://github.com/biomejs/biome/pull/9746
  143. * refactor(markdown): cleanup nits from #9746 by @jfmcdowell in https://github.com/biomejs/biome/pull/9751
  144. * fix(lsp): regression codeAction/resolve by @ematipico in https://github.com/biomejs/biome/pull/9745
  145. * feat(lint/js): add `noUselessTypeConversion` by @dyc3 in https://github.com/biomejs/biome/pull/9701
  146. * fix(markdown): replace panicking code with safe fallbacks in lexer by @jfmcdowell in https://github.com/biomejs/biome/pull/9753
  147. * refactor(markdown): emit continuation indent as structural CST node by @jfmcdowell in https://github.com/biomejs/biome/pull/9737
  148. * fix(markdown): fix false diagnostic on nested lists with double blank lines by @jfmcdowell in https://github.com/biomejs/biome/pull/9764
  149. * feat(css): add support for SCSS string interpolation by @denbezrukov in https://github.com/biomejs/biome/pull/9756
  150. * refactor(markdown): deduplicate shared helper functions by @jfmcdowell in https://github.com/biomejs/biome/pull/9766
  151. * fix(markdown): remove debug scaffolding and parser cleanup by @jfmcdowell in https://github.com/biomejs/biome/pull/9765
  152. * refactor(flags): make variables predictable by @ematipico in https://github.com/biomejs/biome/pull/9769
  153. * fix(markdown_parser): emit MdIndentTokenList for headers inside list items by @jfmcdowell in https://github.com/biomejs/biome/pull/9774
  154. * fix(markdown_parser): fix lazy continuation at nested list marker indent by @jfmcdowell in https://github.com/biomejs/biome/pull/9776
  155. * docs: clarify that elements in scope for useAltText is not configurable by @yogaraptor in https://github.com/biomejs/biome/pull/9773
  156. * fix(markdown_parser): fix multi-byte character panic in emphasis context by @jfmcdowell in https://github.com/biomejs/biome/pull/9775
  157. * perf(core): refactor fix-all logic by @ematipico in https://github.com/biomejs/biome/pull/9755
  158. * feat(css): add support for scroll-driven animation keyframe selectors by @MeGaNeKoS in https://github.com/biomejs/biome/pull/9788
  159. * fix(format): don't remove trailing comments when formatting is suppressed by @dyc3 in https://github.com/biomejs/biome/pull/9790
  160. * test(markdown_parser): add reference HTML validation and structural invariants by @jfmcdowell in https://github.com/biomejs/biome/pull/9779
  161. * fix(markdown_parser): reject multiline inline HTML open tag when > at line start is blockquote marker by @jfmcdowell in https://github.com/biomejs/biome/pull/9783
  162. * fix: noDelete should not suggest undefined assignment for process.env by @myx0m0p in https://github.com/biomejs/biome/pull/9760
  163. * feat(lint/js): add `useConsistentTestIt` by @dyc3 in https://github.com/biomejs/biome/pull/9350
  164. * feat(useExplicitType): relax rule for trivially inferrable types by @dyc3 in https://github.com/biomejs/biome/pull/9795
  165. * chore(deps): update dependency tombi to v0.9.13 by @renovate[bot] in https://github.com/biomejs/biome/pull/9819
  166. * fix(markdown_parser): split bullet lists when marker type changes across blank lines by @jfmcdowell in https://github.com/biomejs/biome/pull/9785
  167. * fix(markdown_parser): recognize setext heading inside blockquote by @jfmcdowell in https://github.com/biomejs/biome/pull/9782
  168. * chore(deps): update github-actions by @renovate[bot] in https://github.com/biomejs/biome/pull/9823
  169. * fix(deps): update @biomejs packages by @renovate[bot] in https://github.com/biomejs/biome/pull/9822
  170. * chore(deps): update rust crate libc to 0.2.184 by @renovate[bot] in https://github.com/biomejs/biome/pull/9821
  171. * chore(deps): update dependency dprint to v0.53.2 by @renovate[bot] in https://github.com/biomejs/biome/pull/9818
  172. * refactor(useConsistentTestIt): review feedback by @dyc3 in https://github.com/biomejs/biome/pull/9827
  173. * fix(cli): fix codeAction/resolve not considering assist actions by @elliotcourant in https://github.com/biomejs/biome/pull/9812
  174. * test(markdown_parser): add differential fuzzer against commonmark.js by @jfmcdowell in https://github.com/biomejs/biome/pull/9784
  175. * feat(markdown): implement basic formatter features by @tidefield in https://github.com/biomejs/biome/pull/9693
  176. * feat(lint): add ternary expression detection to useNullishCoalescing by @pkallos in https://github.com/biomejs/biome/pull/9248
  177. * chore(deps): update rust crate indexmap to 2.13.1 by @renovate[bot] in https://github.com/biomejs/biome/pull/9820
  178. * fix: embedded snippets with parenthesis by @ematipico in https://github.com/biomejs/biome/pull/9828
  179. * feat(js/lint): implement rule `useDisposables` by @siketyan in https://github.com/biomejs/biome/pull/8651
  180. * fix(markdown_parser): reject link reference definition with trailing text after destination by @jfmcdowell in https://github.com/biomejs/biome/pull/9780
  181. * feat(lint): rule `useExplicitReturnType` by @ematipico in https://github.com/biomejs/biome/pull/9429
  182. * fix(markdown_parser): incorrect tight/loose list classification at marker boundaries by @jfmcdowell in https://github.com/biomejs/biome/pull/9787
  183. * ci: add cargo-deny for `paste` crate by @dyc3 in https://github.com/biomejs/biome/pull/9579
  184. * chore: format by @dyc3 in https://github.com/biomejs/biome/pull/9834
  185. * chore(skills): better diagnostic advice by @dyc3 in https://github.com/biomejs/biome/pull/9830
  186. * feat(lint): add nursery rule `noMisleadingReturnType` by @minseong0324 in https://github.com/biomejs/biome/pull/9799
  187. * chore: update guidelines to protect maintainers by @ematipico in https://github.com/biomejs/biome/pull/9825
  188. * chore(deps): update dependency vite to v7.3.2 [security] by @renovate[bot] in https://github.com/biomejs/biome/pull/9844
  189. * refactor(markdown_parser): deduplicate normalize_html test helper by @jfmcdowell in https://github.com/biomejs/biome/pull/9833
  190. * chore(deps): update rust crate tokio to 1.51.0 by @renovate[bot] in https://github.com/biomejs/biome/pull/9602
  191. * fix(deps): update rust crates by @renovate[bot] in https://github.com/biomejs/biome/pull/9708
  192. * refactor(migrate): auto derive `variant_index()` function by @dyc3 in https://github.com/biomejs/biome/pull/9803
  193. * feat(noImpliedEval): flag `new Function(...)` by @dyc3 in https://github.com/biomejs/biome/pull/9811
  194. * test: infra for custom rule migrators by @dyc3 in https://github.com/biomejs/biome/pull/9836
  195. * refactor(markdown_parser): deduplicate link helper functions by @jfmcdowell in https://github.com/biomejs/biome/pull/9840
  196. * fix(js): parse short hand identifier in Astro JSX files by @ematipico in https://github.com/biomejs/biome/pull/9846
  197. * fix(ci): remove unused import: `JsFileSource` by @tidefield in https://github.com/biomejs/biome/pull/9858
  198. * fix(grit): biome native node field names now work by @dyc3 in https://github.com/biomejs/biome/pull/9739
  199. * fix(md-formatter): remove last hard line break by @tidefield in https://github.com/biomejs/biome/pull/9856
  200. * feat(lint): detect tuple widening and inferred unions in noMisleadingReturnType by @minseong0324 in https://github.com/biomejs/biome/pull/9843
  201. * docs: improve useSimplifiedLogicExpression docs by @ematipico in https://github.com/biomejs/biome/pull/9864
  202. * fix(core): update snippet via fix all by @ematipico in https://github.com/biomejs/biome/pull/9863
  203. * feat(js_analyze): implement useQwikLoaderLocation by @Netail in https://github.com/biomejs/biome/pull/9809
  204. * chore: missing rule source by @Netail in https://github.com/biomejs/biome/pull/9871
  205. * chore: unsupported covered by by @Netail in https://github.com/biomejs/biome/pull/9870
  206. * fix(graphql_analyze): also flag duplicate fields within extensions by @Netail in https://github.com/biomejs/biome/pull/9869
  207. * fix(css/formatter): comment placement in lists by @ematipico in https://github.com/biomejs/biome/pull/9261
  208. * fix(core): track of default specifiers by @ematipico in https://github.com/biomejs/biome/pull/9878
  209. * fix(parse/html): fix disabled vue error message by @dyc3 in https://github.com/biomejs/biome/pull/9879
  210. * fix(core): tracking of snippet and render function calls by @ematipico in https://github.com/biomejs/biome/pull/9877
  211. * fix(lint/js): improve diagnostics to better follow rule pillars by @dyc3 in https://github.com/biomejs/biome/pull/9880
  212. * fix(core): tracking of bindings and value references by @ematipico in https://github.com/biomejs/biome/pull/9886
  213. * ci: release by @github-actions[bot] in https://github.com/biomejs/biome/pull/9733
  214. ## New Contributors
  215. * @soconnor-seeq made their first contribution in https://github.com/biomejs/biome/pull/9441
  216. * @yogaraptor made their first contribution in https://github.com/biomejs/biome/pull/9773
  217. * @myx0m0p made their first contribution in https://github.com/biomejs/biome/pull/9760
  218. * @elliotcourant made their first contribution in https://github.com/biomejs/biome/pull/9812
  219. * @minseong0324 made their first contribution in https://github.com/biomejs/biome/pull/9799
  220. **Full Changelog**: https://github.com/biomejs/biome/compare/@biomejs/biome@2.4.10...@biomejs/biome@2.4.11

view on githubimported 2026-09-28 via npm