Skip to content

chore(deps): update npm packages#8718

Merged
renovate[bot] merged 1 commit intomainfrom
renovate/npm-packages
Mar 15, 2026
Merged

chore(deps): update npm packages#8718
renovate[bot] merged 1 commit intomainfrom
renovate/npm-packages

Conversation

@renovate
Copy link
Copy Markdown
Contributor

@renovate renovate bot commented Mar 15, 2026

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
@oxlint/plugins (source) 1.49.01.55.0 age adoption passing confidence
@rollup/plugin-commonjs (source) 29.0.029.0.2 age adoption passing confidence
@​voidzero-dev/vitepress-theme 4.8.24.8.3 age adoption passing confidence
dedent 1.7.11.7.2 age adoption passing confidence
esbuild 0.27.30.27.4 age adoption passing confidence
fs-extra 11.3.311.3.4 age adoption passing confidence
knip (source) 5.84.15.86.0 age adoption passing confidence
lint-staged 16.2.716.3.3 age adoption passing confidence
publint (source) 0.3.170.3.18 age adoption passing confidence
vitest (source) 4.0.184.1.0 age adoption passing confidence
vue (source) 3.5.283.5.30 age adoption passing confidence
web-tree-sitter (source) 0.26.50.26.6 age adoption passing confidence

Release Notes

rollup/plugins (@​rollup/plugin-commonjs)

v29.0.2

2026-03-06

Bugfixes
  • commonjs: conditional exports (#​1952)

v29.0.1

2026-03-05

Bugfixes
  • commonjs: correctly replaces shorthand "global" property in object (#​1957)
dmnd/dedent (dedent)

v1.7.2

Compare Source

What's Changed

New Contributors

Full Changelog: dmnd/dedent@v1.7.1...v1.7.2

evanw/esbuild (esbuild)

v0.27.4

Compare Source

  • Fix a regression with CSS media queries (#​4395, #​4405, #​4406)

    Version 0.25.11 of esbuild introduced support for parsing media queries. This unintentionally introduced a regression with printing media queries that use the <media-type> and <media-condition-without-or> grammar. Specifically, esbuild was failing to wrap an or clause with parentheses when inside <media-condition-without-or>. This release fixes the regression.

    Here is an example:

    /* Original code */
    @&#8203;media only screen and ((min-width: 10px) or (min-height: 10px)) {
      a { color: red }
    }
    
    /* Old output (incorrect) */
    @&#8203;media only screen and (min-width: 10px) or (min-height: 10px) {
      a {
        color: red;
      }
    }
    
    /* New output (correct) */
    @&#8203;media only screen and ((min-width: 10px) or (min-height: 10px)) {
      a {
        color: red;
      }
    }
  • Fix an edge case with the inject feature (#​4407)

    This release fixes an edge case where esbuild's inject feature could not be used with arbitrary module namespace names exported using an export {} from statement with bundling disabled and a target environment where arbitrary module namespace names is unsupported.

    With the fix, the following inject file:

    import jquery from 'jquery';
    export { jquery as 'window.jQuery' };

    Can now always be rewritten as this without esbuild sometimes incorrectly generating an error:

    export { default as 'window.jQuery' } from 'jquery';
  • Attempt to improve API handling of huge metafiles (#​4329, #​4415)

    This release contains a few changes that attempt to improve the behavior of esbuild's JavaScript API with huge metafiles (esbuild's name for the build metadata, formatted as a JSON object). The JavaScript API is designed to return the metafile JSON as a JavaScript object in memory, which makes it easy to access from within a JavaScript-based plugin. Multiple people have encountered issues where this API breaks down with a pathologically-large metafile.

    The primary issue is that V8 has an implementation-specific maximum string length, so using the JSON.parse API with large enough strings is impossible. This release will now attempt to use a fallback JavaScript-based JSON parser that operates directly on the UTF8-encoded JSON bytes instead of using JSON.parse when the JSON metafile is too big to fit in a JavaScript string. The new fallback path has not yet been heavily-tested. The metafile will also now be generated with whitespace removed if the bundle is significantly large, which will reduce the size of the metafile JSON slightly.

    However, hitting this case is potentially a sign that something else is wrong. Ideally you wouldn't be building something so enormous that the build metadata can't even fit inside a JavaScript string. You may want to consider optimizing your project, or breaking up your project into multiple parts that are built independently. Another option could potentially be to use esbuild's command-line API instead of its JavaScript API, which is more efficient (although of course then you can't use JavaScript plugins, so it may not be an option).

jprichardson/node-fs-extra (fs-extra)

v11.3.4

Compare Source

  • Fix bug where calling ensureSymlink/ensureSymlinkSync with a relative srcPath would fail if the symlink already existed (#​1038, #​1064)
webpro-nl/knip (knip)

v5.86.0: Release 5.86.0

Compare Source

v5.85.0: Release 5.85.0

Compare Source

lint-staged/lint-staged (lint-staged)

v16.3.3

Compare Source

Patch Changes
  • #​1740 0109e8d Thanks @​iiroj! - Make sure Git's warning about CRLF line-endings doesn't interfere with creating initial backup stash.

v16.3.2

Compare Source

Patch Changes
  • #​1735 2adaf6c Thanks @​iiroj! - Hide the extra cmd window on Windows by spawning tasks without the detached option.

v16.3.1

Compare Source

Patch Changes
  • #​1729 cd5d762 Thanks @​iiroj! - Remove nano-spawn as a dependency from package.json as it was replaced with tinyexec and is no longer used.

v16.3.0

Compare Source

Minor Changes
  • #​1698 feda37a Thanks @​iiroj! - Run external processes with tinyexec instead of nano-spawn. nano-spawn replaced execa in lint-staged version 16 to limit the amount of npm dependencies required, but caused some unknown issues related to spawning tasks. Let's hope tinyexec improves the situation.

  • #​1699 1346d16 Thanks @​iiroj! - Remove pidtree as a dependency. When a task fails, its sub-processes are killed more efficiently via the process group on Unix systems, and the taskkill command on Windows.

Patch Changes
  • #​1726 87467aa Thanks @​iiroj! - Incorrect brace expansions like *.{js} (nothing to expand) are detected exhaustively, instead of just a single pass.
publint/publint (publint)

v0.3.18

Compare Source

Patch Changes
  • Fix deprecated subpath mapping check crash and make getPkgPathValue from publint/utils return undefined if the path is invalid (ad2aa9c)
vitest-dev/vitest (vitest)

v4.1.0

Compare Source

Vitest 4.1 is out!

This release page lists all changes made to the project during the 4.1 beta. To get a review of all the new features, read our blog post.

   🚀 Features
   🐞 Bug Fixes

Configuration

📅 Schedule: Branch creation - "before 10am on monday" in timezone Asia/Shanghai, Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

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.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot enabled auto-merge (squash) March 15, 2026 16:07
@netlify
Copy link
Copy Markdown

netlify bot commented Mar 15, 2026

Deploy Preview for rolldown-rs canceled.

Name Link
🔨 Latest commit 17b98f3
🔍 Latest deploy log https://app.netlify.com/projects/rolldown-rs/deploys/69b6dbd4ce662f0008a3898c

@socket-security
Copy link
Copy Markdown

socket-security bot commented Mar 15, 2026

Copy link
Copy Markdown
Member

Boshen commented Mar 15, 2026

Merge activity

  • Mar 15, 4:10 PM UTC: The merge label 'graphite: merge-when-ready' was detected. This PR will be added to the Graphite merge queue once it meets the requirements.
  • Mar 15, 4:13 PM UTC: Boshen added this pull request to the Graphite merge queue.

@renovate renovate bot force-pushed the renovate/npm-packages branch from 5ab25f5 to accf4dc Compare March 15, 2026 16:13
> ℹ️ **Note**
>
> This PR body was truncated due to platform limits.

This PR contains the following updates:

| Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Adoption](https://docs.renovatebot.com/merge-confidence/) | [Passing](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|---|---|
| [@oxlint/plugins](https://oxc.rs/docs/guide/usage/linter/js-plugins) ([source](https://redirect.github.com/oxc-project/oxc/tree/HEAD/npm/oxlint-plugins)) | [`1.49.0` → `1.55.0`](https://renovatebot.com/diffs/npm/@oxlint%2fplugins/1.49.0/1.55.0) | ![age](https://developer.mend.io/api/mc/badges/age/npm/@oxlint%2fplugins/1.55.0?slim=true) | ![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@oxlint%2fplugins/1.55.0?slim=true) | ![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@oxlint%2fplugins/1.49.0/1.55.0?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@oxlint%2fplugins/1.49.0/1.55.0?slim=true) |
| [@rollup/plugin-commonjs](https://redirect.github.com/rollup/plugins/tree/master/packages/commonjs/#readme) ([source](https://redirect.github.com/rollup/plugins/tree/HEAD/packages/commonjs)) | [`29.0.0` → `29.0.2`](https://renovatebot.com/diffs/npm/@rollup%2fplugin-commonjs/29.0.0/29.0.2) | ![age](https://developer.mend.io/api/mc/badges/age/npm/@rollup%2fplugin-commonjs/29.0.2?slim=true) | ![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@rollup%2fplugin-commonjs/29.0.2?slim=true) | ![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@rollup%2fplugin-commonjs/29.0.0/29.0.2?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@rollup%2fplugin-commonjs/29.0.0/29.0.2?slim=true) |
| @&#8203;voidzero-dev/vitepress-theme | [`4.8.2` → `4.8.3`](https://renovatebot.com/diffs/npm/@voidzero-dev%2fvitepress-theme/4.8.2/4.8.3) | ![age](https://developer.mend.io/api/mc/badges/age/npm/@voidzero-dev%2fvitepress-theme/4.8.3?slim=true) | ![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@voidzero-dev%2fvitepress-theme/4.8.3?slim=true) | ![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@voidzero-dev%2fvitepress-theme/4.8.2/4.8.3?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@voidzero-dev%2fvitepress-theme/4.8.2/4.8.3?slim=true) |
| [dedent](https://redirect.github.com/dmnd/dedent) | [`1.7.1` → `1.7.2`](https://renovatebot.com/diffs/npm/dedent/1.7.1/1.7.2) | ![age](https://developer.mend.io/api/mc/badges/age/npm/dedent/1.7.2?slim=true) | ![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/dedent/1.7.2?slim=true) | ![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/dedent/1.7.1/1.7.2?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/dedent/1.7.1/1.7.2?slim=true) |
| [esbuild](https://redirect.github.com/evanw/esbuild) | [`0.27.3` → `0.27.4`](https://renovatebot.com/diffs/npm/esbuild/0.27.3/0.27.4) | ![age](https://developer.mend.io/api/mc/badges/age/npm/esbuild/0.27.4?slim=true) | ![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/esbuild/0.27.4?slim=true) | ![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/esbuild/0.27.3/0.27.4?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/esbuild/0.27.3/0.27.4?slim=true) |
| [fs-extra](https://redirect.github.com/jprichardson/node-fs-extra) | [`11.3.3` → `11.3.4`](https://renovatebot.com/diffs/npm/fs-extra/11.3.3/11.3.4) | ![age](https://developer.mend.io/api/mc/badges/age/npm/fs-extra/11.3.4?slim=true) | ![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/fs-extra/11.3.4?slim=true) | ![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/fs-extra/11.3.3/11.3.4?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/fs-extra/11.3.3/11.3.4?slim=true) |
| [knip](https://knip.dev) ([source](https://redirect.github.com/webpro-nl/knip/tree/HEAD/packages/knip)) | [`5.84.1` → `5.86.0`](https://renovatebot.com/diffs/npm/knip/5.84.1/5.86.0) | ![age](https://developer.mend.io/api/mc/badges/age/npm/knip/5.86.0?slim=true) | ![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/knip/5.86.0?slim=true) | ![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/knip/5.84.1/5.86.0?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/knip/5.84.1/5.86.0?slim=true) |
| [lint-staged](https://redirect.github.com/lint-staged/lint-staged) | [`16.2.7` → `16.3.3`](https://renovatebot.com/diffs/npm/lint-staged/16.2.7/16.3.3) | ![age](https://developer.mend.io/api/mc/badges/age/npm/lint-staged/16.3.3?slim=true) | ![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/lint-staged/16.3.3?slim=true) | ![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/lint-staged/16.2.7/16.3.3?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/lint-staged/16.2.7/16.3.3?slim=true) |
| [publint](https://publint.dev) ([source](https://redirect.github.com/publint/publint/tree/HEAD/packages/publint)) | [`0.3.17` → `0.3.18`](https://renovatebot.com/diffs/npm/publint/0.3.17/0.3.18) | ![age](https://developer.mend.io/api/mc/badges/age/npm/publint/0.3.18?slim=true) | ![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/publint/0.3.18?slim=true) | ![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/publint/0.3.17/0.3.18?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/publint/0.3.17/0.3.18?slim=true) |
| [vitest](https://vitest.dev) ([source](https://redirect.github.com/vitest-dev/vitest/tree/HEAD/packages/vitest)) | [`4.0.18` → `4.1.0`](https://renovatebot.com/diffs/npm/vitest/4.0.18/4.1.0) | ![age](https://developer.mend.io/api/mc/badges/age/npm/vitest/4.1.0?slim=true) | ![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vitest/4.1.0?slim=true) | ![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vitest/4.0.18/4.1.0?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vitest/4.0.18/4.1.0?slim=true) |
| [vue](https://redirect.github.com/vuejs/core/tree/main/packages/vue#readme) ([source](https://redirect.github.com/vuejs/core)) | [`3.5.28` → `3.5.30`](https://renovatebot.com/diffs/npm/vue/3.5.28/3.5.30) | ![age](https://developer.mend.io/api/mc/badges/age/npm/vue/3.5.30?slim=true) | ![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vue/3.5.30?slim=true) | ![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vue/3.5.28/3.5.30?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vue/3.5.28/3.5.30?slim=true) |
| [web-tree-sitter](https://redirect.github.com/tree-sitter/tree-sitter) ([source](https://redirect.github.com/tree-sitter/tree-sitter/tree/HEAD/lib/binding_web)) | [`0.26.5` → `0.26.6`](https://renovatebot.com/diffs/npm/web-tree-sitter/0.26.5/0.26.6) | ![age](https://developer.mend.io/api/mc/badges/age/npm/web-tree-sitter/0.26.6?slim=true) | ![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/web-tree-sitter/0.26.6?slim=true) | ![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/web-tree-sitter/0.26.5/0.26.6?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/web-tree-sitter/0.26.5/0.26.6?slim=true) |

---

### Release Notes

<details>
<summary>rollup/plugins (@&#8203;rollup/plugin-commonjs)</summary>

### [`v29.0.2`](https://redirect.github.com/rollup/plugins/blob/HEAD/packages/commonjs/CHANGELOG.md#v2902)

*2026-03-06*

##### Bugfixes

- commonjs: conditional exports ([#&#8203;1952](https://redirect.github.com/rollup/plugins/issues/1952))

### [`v29.0.1`](https://redirect.github.com/rollup/plugins/blob/HEAD/packages/commonjs/CHANGELOG.md#v2901)

*2026-03-05*

##### Bugfixes

- commonjs: correctly replaces shorthand "global" property in object ([#&#8203;1957](https://redirect.github.com/rollup/plugins/issues/1957))

</details>

<details>
<summary>dmnd/dedent (dedent)</summary>

### [`v1.7.2`](https://redirect.github.com/dmnd/dedent/releases/tag/v1.7.2)

[Compare Source](https://redirect.github.com/dmnd/dedent/compare/v1.7.1...v1.7.2)

#### What's Changed

- fix: support escape sequences in tagged templates by [@&#8203;marcalexiei](https://redirect.github.com/marcalexiei) in [#&#8203;107](https://redirect.github.com/dmnd/dedent/pull/107)

#### New Contributors

- [@&#8203;marcalexiei](https://redirect.github.com/marcalexiei) made their first contribution in [#&#8203;107](https://redirect.github.com/dmnd/dedent/pull/107)

**Full Changelog**: <https://github.com/dmnd/dedent/compare/v1.7.1...v1.7.2>

</details>

<details>
<summary>evanw/esbuild (esbuild)</summary>

### [`v0.27.4`](https://redirect.github.com/evanw/esbuild/blob/HEAD/CHANGELOG.md#0274)

[Compare Source](https://redirect.github.com/evanw/esbuild/compare/v0.27.3...v0.27.4)

- Fix a regression with CSS media queries ([#&#8203;4395](https://redirect.github.com/evanw/esbuild/issues/4395), [#&#8203;4405](https://redirect.github.com/evanw/esbuild/issues/4405), [#&#8203;4406](https://redirect.github.com/evanw/esbuild/issues/4406))

  Version 0.25.11 of esbuild introduced support for parsing media queries. This unintentionally introduced a regression with printing media queries that use the `<media-type> and <media-condition-without-or>` grammar. Specifically, esbuild was failing to wrap an `or` clause with parentheses when inside `<media-condition-without-or>`. This release fixes the regression.

  Here is an example:

  ```css
  /* Original code */
  @&#8203;media only screen and ((min-width: 10px) or (min-height: 10px)) {
    a { color: red }
  }

  /* Old output (incorrect) */
  @&#8203;media only screen and (min-width: 10px) or (min-height: 10px) {
    a {
      color: red;
    }
  }

  /* New output (correct) */
  @&#8203;media only screen and ((min-width: 10px) or (min-height: 10px)) {
    a {
      color: red;
    }
  }
  ```

- Fix an edge case with the `inject` feature ([#&#8203;4407](https://redirect.github.com/evanw/esbuild/issues/4407))

  This release fixes an edge case where esbuild's `inject` feature could not be used with arbitrary module namespace names exported using an `export {} from` statement with bundling disabled and a target environment where arbitrary module namespace names is unsupported.

  With the fix, the following `inject` file:

  ```js
  import jquery from 'jquery';
  export { jquery as 'window.jQuery' };
  ```

  Can now always be rewritten as this without esbuild sometimes incorrectly generating an error:

  ```js
  export { default as 'window.jQuery' } from 'jquery';
  ```

- Attempt to improve API handling of huge metafiles ([#&#8203;4329](https://redirect.github.com/evanw/esbuild/issues/4329), [#&#8203;4415](https://redirect.github.com/evanw/esbuild/issues/4415))

  This release contains a few changes that attempt to improve the behavior of esbuild's JavaScript API with huge metafiles (esbuild's name for the build metadata, formatted as a JSON object). The JavaScript API is designed to return the metafile JSON as a JavaScript object in memory, which makes it easy to access from within a JavaScript-based plugin. Multiple people have encountered issues where this API breaks down with a pathologically-large metafile.

  The primary issue is that V8 has an implementation-specific maximum string length, so using the `JSON.parse` API with large enough strings is impossible. This release will now attempt to use a fallback JavaScript-based JSON parser that operates directly on the UTF8-encoded JSON bytes instead of using `JSON.parse` when the JSON metafile is too big to fit in a JavaScript string. The new fallback path has not yet been heavily-tested. The metafile will also now be generated with whitespace removed if the bundle is significantly large, which will reduce the size of the metafile JSON slightly.

  However, hitting this case is potentially a sign that something else is wrong. Ideally you wouldn't be building something so enormous that the build metadata can't even fit inside a JavaScript string. You may want to consider optimizing your project, or breaking up your project into multiple parts that are built independently. Another option could potentially be to use esbuild's command-line API instead of its JavaScript API, which is more efficient (although of course then you can't use JavaScript plugins, so it may not be an option).

</details>

<details>
<summary>jprichardson/node-fs-extra (fs-extra)</summary>

### [`v11.3.4`](https://redirect.github.com/jprichardson/node-fs-extra/blob/HEAD/CHANGELOG.md#1134--2026-03-03)

[Compare Source](https://redirect.github.com/jprichardson/node-fs-extra/compare/11.3.3...11.3.4)

- Fix bug where calling `ensureSymlink`/`ensureSymlinkSync` with a relative `srcPath` would fail if the symlink already existed ([#&#8203;1038](https://redirect.github.com/jprichardson/node-fs-extra/issues/1038), [#&#8203;1064](https://redirect.github.com/jprichardson/node-fs-extra/pull/1064))

</details>

<details>
<summary>webpro-nl/knip (knip)</summary>

### [`v5.86.0`](https://redirect.github.com/webpro-nl/knip/releases/tag/knip%405.86.0): Release 5.86.0

[Compare Source](https://redirect.github.com/webpro-nl/knip/compare/knip@5.85.0...knip@5.86.0)

- Rewrite import specifiers to use .ts extensions, remove tsx ([#&#8203;1548](https://redirect.github.com/webpro-nl/knip/issues/1548)) ([`58674ad`](https://redirect.github.com/webpro-nl/knip/commit/58674ade551d04ca38eea5b8273e8843eed7659d)) - thanks [@&#8203;wojtekmaj](https://redirect.github.com/wojtekmaj)!
- Add .spec-d to vitest entry files ([#&#8203;1556](https://redirect.github.com/webpro-nl/knip/issues/1556)) ([`3123ab7`](https://redirect.github.com/webpro-nl/knip/commit/3123ab76745990b2483f9c8f26c9c9ad4500d4aa)) - thanks [@&#8203;yamachi4416](https://redirect.github.com/yamachi4416)!
- Update docs for tsx → node ([`0418eba`](https://redirect.github.com/webpro-nl/knip/commit/0418eba6dc6a0d5e1e56cce1c037b0ae6846bc64))
- Auto-format ([`7142fd7`](https://redirect.github.com/webpro-nl/knip/commit/7142fd701f97f8a4115c4094d1007f2551c33537))
- Add Qwik plugin ([#&#8203;1557](https://redirect.github.com/webpro-nl/knip/issues/1557)) ([`fc668f4`](https://redirect.github.com/webpro-nl/knip/commit/fc668f4b59e40caddf8e9904fb50dc59de1a86f8)) - thanks [@&#8203;azat-io](https://redirect.github.com/azat-io)!
- Fix Bun plugin to handle directory arguments in `bun test` ([`c112b6c`](https://redirect.github.com/webpro-nl/knip/commit/c112b6c68b13976e4b601c5169a09e748e67fd4f))
- Update FAQ ([`b105a42`](https://redirect.github.com/webpro-nl/knip/commit/b105a42610346f7b9a07071ab8f5d2d7c60b004f))
- fix(plugin): swc with `externalHelpers` setting ignores `@swc/helpers` dependency ([#&#8203;1560](https://redirect.github.com/webpro-nl/knip/issues/1560)) ([`4bcb1f5`](https://redirect.github.com/webpro-nl/knip/commit/4bcb1f5429d003e6e2b28e2bd65a64c849fe0786)) - thanks [@&#8203;bobaaaaa](https://redirect.github.com/bobaaaaa)!
- chore: git ignore artifacts ([#&#8203;1563](https://redirect.github.com/webpro-nl/knip/issues/1563)) ([`4878724`](https://redirect.github.com/webpro-nl/knip/commit/4878724a6599bc80a9ef9c62d86d2805d7d8a914)) - thanks [@&#8203;unional](https://redirect.github.com/unional)!
- Fix Vite plugin to respect root option for index.html entries ([#&#8203;1561](https://redirect.github.com/webpro-nl/knip/issues/1561)) ([`67a5647`](https://redirect.github.com/webpro-nl/knip/commit/67a56470f61cadfe1e771adc87385a98e398da2e)) - thanks [@&#8203;azat-io](https://redirect.github.com/azat-io)!
- Fix Astro sharpImageService() false positive for unused sharp ([#&#8203;1559](https://redirect.github.com/webpro-nl/knip/issues/1559)) ([`c36247c`](https://redirect.github.com/webpro-nl/knip/commit/c36247cc034a14a846e94faafbdd2097f9a5d7d2)) - thanks [@&#8203;azat-io](https://redirect.github.com/azat-io)!
- Fix up gitignore test ([`b2c3d08`](https://redirect.github.com/webpro-nl/knip/commit/b2c3d086be6c76791d2b60b10944df3b7b52d9fc))
- fix: normalize Windows backslash paths in fs.watch listener to fix --watch on Windows ([#&#8203;1558](https://redirect.github.com/webpro-nl/knip/issues/1558)) ([`b86b421`](https://redirect.github.com/webpro-nl/knip/commit/b86b421ec9f6bf1c930600c5109511712af3d224)) - thanks [@&#8203;Aiudadadadf](https://redirect.github.com/Aiudadadadf)!
- Fix wrangler plugin not enabled by jsonc config ([#&#8203;1564](https://redirect.github.com/webpro-nl/knip/issues/1564)) ([`00bb1be`](https://redirect.github.com/webpro-nl/knip/commit/00bb1be35386300e6ea302c14a9b15e3f6e03b35)) - thanks [@&#8203;DaniFoldi](https://redirect.github.com/DaniFoldi)!
- Edit AGENTS.md ([`a2aaf2f`](https://redirect.github.com/webpro-nl/knip/commit/a2aaf2f9983e24b881191403bd716bd1ee791c70))
- Fix tsconfig presets marked as unlisted in strict mode (resolve [#&#8203;1568](https://redirect.github.com/webpro-nl/knip/issues/1568)) ([`463d67d`](https://redirect.github.com/webpro-nl/knip/commit/463d67dad5f105cc2a76ce847192a9a7d1fb8498))
- oxcellent ([`8a602c7`](https://redirect.github.com/webpro-nl/knip/commit/8a602c7863b63b1a940584e2a0436b70d8650be8))
- Refactor format test and use prettier for consistent results ([`b6afc01`](https://redirect.github.com/webpro-nl/knip/commit/b6afc01828f884f579747e6d8e425aa1b07a068f))
- Sort package.json ([`d3a521b`](https://redirect.github.com/webpro-nl/knip/commit/d3a521b62d4ba5de05d3497b456cf9d225a743c8))
- Add .git to GLOBAL\_IGNORE\_PATTERNS (resolve [#&#8203;1571](https://redirect.github.com/webpro-nl/knip/issues/1571)) ([`4e95ffb`](https://redirect.github.com/webpro-nl/knip/commit/4e95ffb45748fa1ae84548c1992d2947826d2667))
- Detect Yarn plugins that are listed by their path alone ([#&#8203;1574](https://redirect.github.com/webpro-nl/knip/issues/1574)) ([`de4c7d8`](https://redirect.github.com/webpro-nl/knip/commit/de4c7d898f83a52ea80a374d9395bcb109f39c23)) - thanks [@&#8203;robintown](https://redirect.github.com/robintown)!
- Start using unbash ([`a5de2c4`](https://redirect.github.com/webpro-nl/knip/commit/a5de2c4e49bda454f0e42b4e5bfae54024d27772))
- Bump unbash & simplify bash parser further ([`57896d3`](https://redirect.github.com/webpro-nl/knip/commit/57896d32c86412ad5941c67fbb2fc29882a5bafa))
- Fix refs in workspaces fixture ([#&#8203;1578](https://redirect.github.com/webpro-nl/knip/issues/1578)) ([`fbee342`](https://redirect.github.com/webpro-nl/knip/commit/fbee3426ccc05eaf2fcaa069826cd3594f946db9))
- Include a few more entry patterns with `pageExtensions` (resolve [#&#8203;1581](https://redirect.github.com/webpro-nl/knip/issues/1581)) ([`c6a6d9e`](https://redirect.github.com/webpro-nl/knip/commit/c6a6d9e72b7674392cb58675befcc4c6bbb64e11))
- Clean exit if --fix fixes all issues (resolve [#&#8203;1577](https://redirect.github.com/webpro-nl/knip/issues/1577)) ([`c182c29`](https://redirect.github.com/webpro-nl/knip/commit/c182c29e35748ff044048c578b6bf7dd99dae9a8))
- Document JSDoc tag hints ([`0e7b6ae`](https://redirect.github.com/webpro-nl/knip/commit/0e7b6ae8d66650da9e4aad81aa2bb7cfbd985e57))
- Update AGENTS.md ([`f845462`](https://redirect.github.com/webpro-nl/knip/commit/f845462736f9fb6349c7e4bfd0f72d76df473f8c))
- Add openapi-ts plugin ([#&#8203;1579](https://redirect.github.com/webpro-nl/knip/issues/1579)) ([`42d1b3f`](https://redirect.github.com/webpro-nl/knip/commit/42d1b3f5f912b37ed73ab46dc0fe07a93135413b)) - thanks [@&#8203;jonahsnider](https://redirect.github.com/jonahsnider)!
- Migrate from `js-yaml` → `yaml` ([`fb042ae`](https://redirect.github.com/webpro-nl/knip/commit/fb042ae235e57b340d167bb7bb7d7ddb0fa5b1fb))
- pnpm dedupe ([`2586254`](https://redirect.github.com/webpro-nl/knip/commit/2586254448e28bd54025f5726d23bf4f95c2e886))
- Fix plugin list order ([#&#8203;1587](https://redirect.github.com/webpro-nl/knip/issues/1587)) ([`519ae3a`](https://redirect.github.com/webpro-nl/knip/commit/519ae3aca72333978c674aab0e7376c7007deaaf)) - thanks [@&#8203;ikeyan](https://redirect.github.com/ikeyan)!
- Fix confusing test fixtures for openapi-ts plugin ([#&#8203;1591](https://redirect.github.com/webpro-nl/knip/issues/1591)) ([`f0083ca`](https://redirect.github.com/webpro-nl/knip/commit/f0083cac6c51337b1b53ee499dadcd5fa5e209ba)) - thanks [@&#8203;jonahsnider](https://redirect.github.com/jonahsnider)!
- Off-by-1 ([`7d7dec6`](https://redirect.github.com/webpro-nl/knip/commit/7d7dec6fec59ab8cddca09688d4ad05cdece1aea))
- Don't fix compiled files (pos off) ([`a9fdc77`](https://redirect.github.com/webpro-nl/knip/commit/a9fdc77fa6321e469b718131df556c37289a7dbd))
- Add aliases from any tsconfig file in typescript plugin (resolve [#&#8203;1347](https://redirect.github.com/webpro-nl/knip/issues/1347)) ([`ced77c7`](https://redirect.github.com/webpro-nl/knip/commit/ced77c707d064c5067b6dc331e76d878dc4add87))
- Support auto-imports in Nuxt plugin ([#&#8203;1517](https://redirect.github.com/webpro-nl/knip/issues/1517)) ([`4ce27b2`](https://redirect.github.com/webpro-nl/knip/commit/4ce27b2f793882bc3fc8f72813b4c0c6152e5168))
- Fix + lint .ts extension in import specifiers ([`d349de3`](https://redirect.github.com/webpro-nl/knip/commit/d349de315a37f5ae208522abe830f1c41732779a))
- Safe `ts.isInTopLevelContext` → `isInTopLevelScope` ([`1819c20`](https://redirect.github.com/webpro-nl/knip/commit/1819c2050440f82eb30e7be9d271298e6b4c8f14))
- Wrap `session.handleFileChanges` in try/catch ([`185afb8`](https://redirect.github.com/webpro-nl/knip/commit/185afb8cc6b914df31ca0c22315190e44c2834da))
- Improve MDX compiler ([`9205e2a`](https://redirect.github.com/webpro-nl/knip/commit/9205e2a9480182605975687ebc4282f9805da58b))
- fix(playwright): Add missing built-in `null` reporter ([#&#8203;1596](https://redirect.github.com/webpro-nl/knip/issues/1596)) ([`0f1ce7d`](https://redirect.github.com/webpro-nl/knip/commit/0f1ce7d1bba7a80ce0697378efd2be0968383a86)) - thanks [@&#8203;shrink](https://redirect.github.com/shrink)!
- Add package.json#imports as entry points ([`1fbe286`](https://redirect.github.com/webpro-nl/knip/commit/1fbe286046bd51653fff4139b4b8a0ef1ea04193))
- Update some dependencies + dedupe ([`381241e`](https://redirect.github.com/webpro-nl/knip/commit/381241e2e1e1875da7e34baee6b5d00f0aef0295))
- Add support for `extends` in nuxt plugin ([`9fcbdf5`](https://redirect.github.com/webpro-nl/knip/commit/9fcbdf5244f81820b9a2f53d5b320e6c54fba792))
- Update release script ([`f446b4f`](https://redirect.github.com/webpro-nl/knip/commit/f446b4f08ca48f7b135eb9da34a6388249598f1e))

### [`v5.85.0`](https://redirect.github.com/webpro-nl/knip/releases/tag/knip%405.85.0): Release 5.85.0

[Compare Source](https://redirect.github.com/webpro-nl/knip/compare/knip@5.84.1...knip@5.85.0)

- Fix require.context regex matching for path-aware patterns ([#&#8203;1547](https://redirect.github.com/webpro-nl/knip/issues/1547)) ([`c33d93a`](https://redirect.github.com/webpro-nl/knip/commit/c33d93ae24dc1304baa49f85b25beb24af803dd8)) - thanks [@&#8203;jstaab](https://redirect.github.com/jstaab)!
- Make knip compatible with erasableSyntaxOnly ([#&#8203;1541](https://redirect.github.com/webpro-nl/knip/issues/1541)) ([`f63089b`](https://redirect.github.com/webpro-nl/knip/commit/f63089bdadb2cea47d22fa27b22c16003e1a4b61)) - thanks [@&#8203;wojtekmaj](https://redirect.github.com/wojtekmaj)!
- feat: add Payload CMS plugin ([#&#8203;1546](https://redirect.github.com/webpro-nl/knip/issues/1546)) ([`58d99de`](https://redirect.github.com/webpro-nl/knip/commit/58d99de46ee3a9e15cd77e3806b5de55931cebf2)) - thanks [@&#8203;Robot-Inventor](https://redirect.github.com/Robot-Inventor)!
- Look everywhere for manifest/robots file in next plugin ([`9da6205`](https://redirect.github.com/webpro-nl/knip/commit/9da6205fdc45fdc992919d3e246415829025ea46))
- Merge some next glob patterns ([`8c5f35f`](https://redirect.github.com/webpro-nl/knip/commit/8c5f35fa81ccccc4faceb6a1d8329d562927d450))
- Add SAP & Google Gemini to projects using Knip ([`c8ab895`](https://redirect.github.com/webpro-nl/knip/commit/c8ab8957ad1f15ee9ff67f13f5029f213e464ada))
- Bump remark-preset-webpro & dedupe ([`b9372cd`](https://redirect.github.com/webpro-nl/knip/commit/b9372cd7a0dc1a1ab54b7baa7b8a939a399ccc14))
- Document CLI usage for LS ([`97fe1cf`](https://redirect.github.com/webpro-nl/knip/commit/97fe1cfe8a18af145eff9ca1f040e4c756acd270))
- fix: tsdown entry compatibility issues [#&#8203;1550](https://redirect.github.com/webpro-nl/knip/issues/1550) ([#&#8203;1554](https://redirect.github.com/webpro-nl/knip/issues/1554)) ([`95051eb`](https://redirect.github.com/webpro-nl/knip/commit/95051ebf3aa44a2db722837acf3ce73e03f72fc5)) - thanks [@&#8203;huijiewei](https://redirect.github.com/huijiewei)!
- Fix incorrect coverage provider being reported ([#&#8203;1552](https://redirect.github.com/webpro-nl/knip/issues/1552)) ([`2d0b5cd`](https://redirect.github.com/webpro-nl/knip/commit/2d0b5cda41f994116c6e211fc68c95b44c21b2cb)) - thanks [@&#8203;rexxars](https://redirect.github.com/rexxars)!
- Temp disable npmx in ecosystem run ([`a5cd986`](https://redirect.github.com/webpro-nl/knip/commit/a5cd9862943dcca1b217bcec2895553ba23dbe34))
- Fix OOM in gitignore walk for large monorepos ([`f192a6b`](https://redirect.github.com/webpro-nl/knip/commit/f192a6ba3fbe9fc303f48e3901db918f5bcd5164))
- Release knip\@&#8203;5.85.0 ([`e28a3e7`](https://redirect.github.com/webpro-nl/knip/commit/e28a3e7ce7e8efaf40b99c9e6a1839647d0a5083))

</details>

<details>
<summary>lint-staged/lint-staged (lint-staged)</summary>

### [`v16.3.3`](https://redirect.github.com/lint-staged/lint-staged/blob/HEAD/CHANGELOG.md#1633)

[Compare Source](https://redirect.github.com/lint-staged/lint-staged/compare/v16.3.2...v16.3.3)

##### Patch Changes

- [#&#8203;1740](https://redirect.github.com/lint-staged/lint-staged/pull/1740) [`0109e8d`](https://redirect.github.com/lint-staged/lint-staged/commit/0109e8d1507409d950dab0d65ce27bd40b1137c7) Thanks [@&#8203;iiroj](https://redirect.github.com/iiroj)! - Make sure Git's warning about CRLF line-endings doesn't interfere with creating initial backup stash.

### [`v16.3.2`](https://redirect.github.com/lint-staged/lint-staged/blob/HEAD/CHANGELOG.md#1632)

[Compare Source](https://redirect.github.com/lint-staged/lint-staged/compare/v16.3.1...v16.3.2)

##### Patch Changes

- [#&#8203;1735](https://redirect.github.com/lint-staged/lint-staged/pull/1735) [`2adaf6c`](https://redirect.github.com/lint-staged/lint-staged/commit/2adaf6c3a76152abddbf23b749dfa5d62982f3cf) Thanks [@&#8203;iiroj](https://redirect.github.com/iiroj)! - Hide the extra `cmd` window on Windows by spawning tasks without the `detached` option.

### [`v16.3.1`](https://redirect.github.com/lint-staged/lint-staged/blob/HEAD/CHANGELOG.md#1631)

[Compare Source](https://redirect.github.com/lint-staged/lint-staged/compare/v16.3.0...v16.3.1)

##### Patch Changes

- [#&#8203;1729](https://redirect.github.com/lint-staged/lint-staged/pull/1729) [`cd5d762`](https://redirect.github.com/lint-staged/lint-staged/commit/cd5d762c288bcfe36274c32f018cea97dfe11280) Thanks [@&#8203;iiroj](https://redirect.github.com/iiroj)! - Remove `nano-spawn` as a dependency from `package.json` as it was replaced with `tinyexec` and is no longer used.

### [`v16.3.0`](https://redirect.github.com/lint-staged/lint-staged/blob/HEAD/CHANGELOG.md#1630)

[Compare Source](https://redirect.github.com/lint-staged/lint-staged/compare/v16.2.7...v16.3.0)

##### Minor Changes

- [#&#8203;1698](https://redirect.github.com/lint-staged/lint-staged/pull/1698) [`feda37a`](https://redirect.github.com/lint-staged/lint-staged/commit/feda37aa590789e847f32a4aabc346af1d79c547) Thanks [@&#8203;iiroj](https://redirect.github.com/iiroj)! - Run external processes with [`tinyexec`](https://redirect.github.com/tinylibs/tinyexec) instead of [`nano-spawn`](https://redirect.github.com/sindresorhus/nano-spawn). `nano-spawn` replaced [`execa`](https://redirect.github.com/sindresorhus/execa) in *lint-staged* version 16 to limit the amount of npm dependencies required, but caused some unknown issues related to spawning tasks. Let's hope `tinyexec` improves the situation.

- [#&#8203;1699](https://redirect.github.com/lint-staged/lint-staged/pull/1699) [`1346d16`](https://redirect.github.com/lint-staged/lint-staged/commit/1346d16387e188911ef64e8bad6b8a6252cb6d71) Thanks [@&#8203;iiroj](https://redirect.github.com/iiroj)! - Remove `pidtree` as a dependency. When a task fails, its sub-processes are killed more efficiently via the process group on Unix systems, and the `taskkill` command on Windows.

##### Patch Changes

- [#&#8203;1726](https://redirect.github.com/lint-staged/lint-staged/pull/1726) [`87467aa`](https://redirect.github.com/lint-staged/lint-staged/commit/87467aaa76e1edc2547f3f3d462a4495afa5337d) Thanks [@&#8203;iiroj](https://redirect.github.com/iiroj)! - Incorrect brace expansions like `*.{js}` (*nothing to expand*) are detected exhaustively, instead of just a single pass.

</details>

<details>
<summary>publint/publint (publint)</summary>

### [`v0.3.18`](https://redirect.github.com/publint/publint/blob/HEAD/packages/publint/CHANGELOG.md#0318)

[Compare Source](https://redirect.github.com/publint/publint/compare/publint@0.3.17...publint@0.3.18)

##### Patch Changes

- Fix deprecated subpath mapping check crash and make `getPkgPathValue` from `publint/utils` return undefined if the path is invalid ([`ad2aa9c`](https://redirect.github.com/publint/publint/commit/ad2aa9c71d25f5cfbeade8c6585aec6f8bbd532b))

</details>

<details>
<summary>vitest-dev/vitest (vitest)</summary>

### [`v4.1.0`](https://redirect.github.com/vitest-dev/vitest/releases/tag/v4.1.0)

[Compare Source](https://redirect.github.com/vitest-dev/vitest/compare/v4.0.18...v4.1.0)

Vitest 4.1 is out!

This release page lists all changes made to the project during the 4.1 beta. To get a review of all the new features, read our [blog post](https://vitest.dev/blog/vitest-4).

#####    🚀 Features

- Return a disposable from doMock()  -  by [@&#8203;kirkwaiblinger](https://redirect.github.com/kirkwaiblinger) in [#&#8203;9332](https://redirect.github.com/vitest-dev/vitest/issues/9332) [<samp>(e3e65)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/e3e659a96)
- Added chai style assertions  -  by [@&#8203;ronnakamoto](https://redirect.github.com/ronnakamoto) and [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;8842](https://redirect.github.com/vitest-dev/vitest/issues/8842) [<samp>(841df)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/841df9ac5)
- Update to sinon/fake-timers v15 and add `setTickMode` to timer controls  -  by [@&#8203;atscott](https://redirect.github.com/atscott) and [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;8726](https://redirect.github.com/vitest-dev/vitest/issues/8726) [<samp>(4b480)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/4b480aaed)
- Expose matcher types  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9448](https://redirect.github.com/vitest-dev/vitest/issues/9448) [<samp>(3e4b9)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/3e4b913b1)
- Add `toTestSpecification` to reported tasks  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9464](https://redirect.github.com/vitest-dev/vitest/issues/9464) [<samp>(1a470)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/1a4705da9)
- Show a warning if `vi.mock` or `vi.hoisted` are declared outside of top level of the module  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9387](https://redirect.github.com/vitest-dev/vitest/issues/9387) [<samp>(5db54)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/5db54a468)
- Track and display expectedly failed tests (.fails) in UI and CLI  -  by [@&#8203;Copilot](https://redirect.github.com/Copilot), **sheremet-va** and [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9476](https://redirect.github.com/vitest-dev/vitest/issues/9476) [<samp>(77d75)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/77d75fd34)
- Support tags  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9478](https://redirect.github.com/vitest-dev/vitest/issues/9478) [<samp>(de7c8)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/de7c8a521)
- Implement `aroundEach` and `aroundAll` hooks  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9450](https://redirect.github.com/vitest-dev/vitest/issues/9450) [<samp>(2a8cb)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/2a8cb9dc2)
- Stabilize experimental features  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9529](https://redirect.github.com/vitest-dev/vitest/issues/9529) [<samp>(b5fd2)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/b5fd2a16a)
- Accept `new` or `all` in `--update` flag  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9543](https://redirect.github.com/vitest-dev/vitest/issues/9543) [<samp>(a5acf)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/a5acf28a5)
- Support `meta` in test options  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9535](https://redirect.github.com/vitest-dev/vitest/issues/9535) [<samp>(7d622)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/7d622e3d1)
- Support type inference with a new `test.extend` syntax  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9550](https://redirect.github.com/vitest-dev/vitest/issues/9550) [<samp>(e5385)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/e53854fcc)
- Support vite 8 beta, fix type issues in the config with different vite versions  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9587](https://redirect.github.com/vitest-dev/vitest/issues/9587) [<samp>(99028)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/990281dfd)
- Add assertion helper to hide internal stack traces  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) and **Claude Opus 4.6** in [#&#8203;9594](https://redirect.github.com/vitest-dev/vitest/issues/9594) [<samp>(eeb0a)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/eeb0ae2f8)
- Store failure screenshots using artifacts API  -  by [@&#8203;macarie](https://redirect.github.com/macarie) in [#&#8203;9588](https://redirect.github.com/vitest-dev/vitest/issues/9588) [<samp>(24603)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/24603e3c4)
- Allow `vitest list` to statically collect tests instead of running files to collect them  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9630](https://redirect.github.com/vitest-dev/vitest/issues/9630) [<samp>(7a8e7)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/7a8e7fc20)
- Add `--detect-async-leaks`  -  by [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [#&#8203;9528](https://redirect.github.com/vitest-dev/vitest/issues/9528) [<samp>(c594d)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/c594d4af3)
- Implement `mockThrow` and `mockThrowOnce`  -  by [@&#8203;thor-juhasz](https://redirect.github.com/thor-juhasz) and [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9512](https://redirect.github.com/vitest-dev/vitest/issues/9512) [<samp>(61917)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/619179fb7)
- Support `update: "none"` and add docs about snapshots behavior on CI  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [#&#8203;9700](https://redirect.github.com/vitest-dev/vitest/issues/9700) [<samp>(05f18)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/05f1854e2)
- Support playwright `launchOptions` with `connectOptions`  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [#&#8203;9702](https://redirect.github.com/vitest-dev/vitest/issues/9702) [<samp>(f0ff1)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/f0ff1b2a0)
- Add `page/locator.mark` API to enhance playwright trace  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [#&#8203;9652](https://redirect.github.com/vitest-dev/vitest/issues/9652) [<samp>(d0ee5)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/d0ee546fe)
- **api**:
  - Support tests starting or ending with `test` in `experimental_parseSpecification`  -  by [@&#8203;jgillick](https://redirect.github.com/jgillick) and **Jeremy Gillick** in [#&#8203;9235](https://redirect.github.com/vitest-dev/vitest/issues/9235) [<samp>(2f367)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/2f367fad3)
  - Add filters to `createSpecification`  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9336](https://redirect.github.com/vitest-dev/vitest/issues/9336) [<samp>(c8e6c)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/c8e6c7fbf)
  - Expose `runTestFiles` as alternative to `runTestSpecifications`  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9443](https://redirect.github.com/vitest-dev/vitest/issues/9443) [<samp>(43d76)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/43d761821)
  - Add `allowWrite` and `allowExec` options to `api`  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9350](https://redirect.github.com/vitest-dev/vitest/issues/9350) [<samp>(20e00)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/20e00ef78)
  - Allow passing down test cases to `toTestSpecification`  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9627](https://redirect.github.com/vitest-dev/vitest/issues/9627) [<samp>(6f17d)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/6f17d5ddf)
- **browser**:
  - Add `userEvent.wheel` API  -  by [@&#8203;macarie](https://redirect.github.com/macarie) in [#&#8203;9188](https://redirect.github.com/vitest-dev/vitest/issues/9188) [<samp>(66080)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/660801979)
  - Add `filterNode` option to prettyDOM for filtering browser assertion error output  -  by [@&#8203;Copilot](https://redirect.github.com/Copilot), **sheremet-va** and [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9475](https://redirect.github.com/vitest-dev/vitest/issues/9475) [<samp>(d3220)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/d3220fcd8)
  - Support playwright persistent context  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa), **Claude Opus 4.6** and [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9229](https://redirect.github.com/vitest-dev/vitest/issues/9229) [<samp>(f865d)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/f865d2ba4)
  - Added `detailsPanelPosition` option and button  -  by [@&#8203;shairez](https://redirect.github.com/shairez) in [#&#8203;9525](https://redirect.github.com/vitest-dev/vitest/issues/9525) [<samp>(c8a31)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/c8a31147c)
  - Use BlazeDiff instead of pixelmatch  -  by [@&#8203;macarie](https://redirect.github.com/macarie) in [#&#8203;9514](https://redirect.github.com/vitest-dev/vitest/issues/9514) [<samp>(30936)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/309362089)
  - Add `findElement` and enable strict mode in webdriverio and preview  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9677](https://redirect.github.com/vitest-dev/vitest/issues/9677) [<samp>(c3f37)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/c3f37721c)
- **cli**:
  - Add [@&#8203;bomb](https://redirect.github.com/bomb).sh/tab completions  -  by [@&#8203;AmirSa12](https://redirect.github.com/AmirSa12) and [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;8639](https://redirect.github.com/vitest-dev/vitest/issues/8639) [<samp>(200f3)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/200f31704)
- **coverage**:
  - Support `ignore start/stop` ignore hints  -  by [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [#&#8203;9204](https://redirect.github.com/vitest-dev/vitest/issues/9204) [<samp>(e59c9)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/e59c94ba6)
  - Add `coverage.changed` option to report only changed files  -  by [@&#8203;kykim00](https://redirect.github.com/kykim00) and [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [#&#8203;9521](https://redirect.github.com/vitest-dev/vitest/issues/9521) [<samp>(1d939)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/1d9392c67)
- **experimental**:
  - Add `onModuleRunner` hook to `worker.init`  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9286](https://redirect.github.com/vitest-dev/vitest/issues/9286) [<samp>(e977f)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/e977f3deb)
  - Option to disable the module runner  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) and [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [#&#8203;9210](https://redirect.github.com/vitest-dev/vitest/issues/9210) [<samp>(9be61)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/9be6121ee)
  - Add `importDurations: { limit, print }` options  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa), **Claude Opus 4.6** and [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9401](https://redirect.github.com/vitest-dev/vitest/issues/9401) [<samp>(7e10f)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/7e10fb356)
  - Add print and fail thresholds for `importDurations`  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) and **Claude Opus 4.6** in [#&#8203;9533](https://redirect.github.com/vitest-dev/vitest/issues/9533) [<samp>(3f7a5)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/3f7a5f8f8)
- **fixtures**:
  - Pass down file context to `beforeAll`/`afterAll`  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9572](https://redirect.github.com/vitest-dev/vitest/issues/9572) [<samp>(c8339)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/c83395f2c)
- **reporters**:
  - Add `agent` reporter to reduce ai agent token usage  -  by [@&#8203;cpojer](https://redirect.github.com/cpojer) in [#&#8203;9779](https://redirect.github.com/vitest-dev/vitest/issues/9779) [<samp>(3e9e0)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/3e9e096a2)
- **runner**:
  - Enhance `retry` options  -  by [@&#8203;MazenSamehR](https://redirect.github.com/MazenSamehR), **Matan Shavit**, [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) and [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9370](https://redirect.github.com/vitest-dev/vitest/issues/9370) [<samp>(9e4cf)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/9e4cfd295)
- **ui**:
  - Allow run individual test/suites  -  by [@&#8203;userquin](https://redirect.github.com/userquin) in [#&#8203;9465](https://redirect.github.com/vitest-dev/vitest/issues/9465) [<samp>(73b10)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/73b10f1b9)
  - Add project filter/sort support  -  by [@&#8203;userquin](https://redirect.github.com/userquin) in [#&#8203;8689](https://redirect.github.com/vitest-dev/vitest/issues/8689) [<samp>(0c7ea)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/0c7eaac16)
  - Add duration sorting to explorer  -  by [@&#8203;julianhahn](https://redirect.github.com/julianhahn) and [@&#8203;cursoragent](https://redirect.github.com/cursoragent) in [#&#8203;9603](https://redirect.github.com/vitest-dev/vitest/issues/9603) [<samp>(209b1)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/209b1b0e1)
  - Implement filter for slow tests  -  by [@&#8203;DerYeger](https://redirect.github.com/DerYeger) and [@&#8203;userquin](https://redirect.github.com/userquin) in [#&#8203;9705](https://redirect.github.com/vitest-dev/vitest/issues/9705) [<samp>(8880c)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/8880c907a)
- **vitest**:
  - Add run summary in GitHub Actions Reporter  -  by [@&#8203;macarie](https://redirect.github.com/macarie) and **jhnance** in [#&#8203;9579](https://redirect.github.com/vitest-dev/vitest/issues/9579) [<samp>(96bfc)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/96bfc8345)

#####    🐞 Bug Fixes

- Deprecate several vitest/\* entry points  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9347](https://redirect.github.com/vitest-dev/vitest/issues/9347) [<samp>(fd459)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/fd45928be)
- Use `meta.url` in `createRequire`  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9441](https://redirect.github.com/vitest-dev/vitest/issues/9441) [<samp>(e3422)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/e34225563)
- Preact browser mode init example of render function not async  -  by [@&#8203;WuMingDao](https://redirect.github.com/WuMingDao) in [#&#8203;9375](https://redirect.github.com/vitest-dev/vitest/issues/9375) [<samp>(2bea5)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/2bea549c7)
- Deprecate unused types in matcher context  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9449](https://redirect.github.com/vitest-dev/vitest/issues/9449) [<samp>(20f87)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/20f8753a2)
- Handle `external/noExternal` during `configEnvironment` hook  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) and **Claude Opus 4.6** in [#&#8203;9508](https://redirect.github.com/vitest-dev/vitest/issues/9508) [<samp>(59ea2)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/59ea27c1c)
- Replace default ssr environment runner with Vitest server module runner  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) and **Claude Opus 4.6** in [#&#8203;9506](https://redirect.github.com/vitest-dev/vitest/issues/9506) [<samp>(cd5db)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/cd5db660c)
- Propagate experimental CLI options to child projects  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) and **Claude Opus 4.6** in [#&#8203;9531](https://redirect.github.com/vitest-dev/vitest/issues/9531) [<samp>(b624f)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/b624fae53)
- Show a warning when `browser.isolate` is used  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9410](https://redirect.github.com/vitest-dev/vitest/issues/9410) [<samp>(3d48e)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/3d48ebcb9)
- Fix `vi.mock({ spy: true })` node v8 coverage  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa), **hi-ogawa** and **Claude Opus 4.6** in [#&#8203;9541](https://redirect.github.com/vitest-dev/vitest/issues/9541) [<samp>(687b6)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/687b633c1)
- Don't show internal ssr handler in errors  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9547](https://redirect.github.com/vitest-dev/vitest/issues/9547) [<samp>(76c43)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/76c4397b5)
- Close vitest if it failed to start  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9573](https://redirect.github.com/vitest-dev/vitest/issues/9573) [<samp>(728ba)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/728ba617f)
- Fix ssr environment runner in project  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [#&#8203;9584](https://redirect.github.com/vitest-dev/vitest/issues/9584) [<samp>(09006)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/090064f97)
- Trim trailing white spaces in code block  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [#&#8203;9591](https://redirect.github.com/vitest-dev/vitest/issues/9591) [<samp>(f78be)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/f78bea992)
- Support inline snapshot inside test.for/each  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [#&#8203;9590](https://redirect.github.com/vitest-dev/vitest/issues/9590) [<samp>(615fd)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/615fd521e)
- Apply source maps for external module stack trace  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [#&#8203;9152](https://redirect.github.com/vitest-dev/vitest/issues/9152) [<samp>(79e20)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/79e20d5a3)
- Remove the `.name` from statically collected test  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9596](https://redirect.github.com/vitest-dev/vitest/issues/9596) [<samp>(b66ff)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/b66ff691a)
- Don't suppress warnings on pnp  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9602](https://redirect.github.com/vitest-dev/vitest/issues/9602) [<samp>(89cbd)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/89cbdaea3)
- Support snapshot with `expect.soft`  -  by [@&#8203;iumehara](https://redirect.github.com/iumehara), [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) and **Claude Opus 4.6** in [#&#8203;9231](https://redirect.github.com/vitest-dev/vitest/issues/9231) [<samp>(3eb2c)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/3eb2cd541)
- Log seed when only `sequence.shuffle.tests` is enabled  -  by [@&#8203;kaigritun](https://redirect.github.com/kaigritun), **Kai Gritun** and [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9576](https://redirect.github.com/vitest-dev/vitest/issues/9576) [<samp>(8182b)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/8182b77ad)
- Externalize `expect/src/utils` from `vitest`  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [#&#8203;9616](https://redirect.github.com/vitest-dev/vitest/issues/9616) [<samp>(48739)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/487398422)
- Ignore test.override during static collection  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9620](https://redirect.github.com/vitest-dev/vitest/issues/9620) [<samp>(09174)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/0917470ce)
- Increase stacktrace limit for `--detect-async-leaks`  -  by [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [#&#8203;9638](https://redirect.github.com/vitest-dev/vitest/issues/9638) [<samp>(9fd4c)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/9fd4ce533)
- Hanging-reporter link in cli  -  by [@&#8203;flx-sta](https://redirect.github.com/flx-sta) in [#&#8203;9649](https://redirect.github.com/vitest-dev/vitest/issues/9649) [<samp>(7c103)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/7c103055c)
- Fix teardown timeout of `aroundEach/All` when inner `aroundEach/All` throws  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [#&#8203;9657](https://redirect.github.com/vitest-dev/vitest/issues/9657) [<samp>(4ec6c)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/4ec6cb305)
- Fix ui mode / html reporter and coverage integration  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) and **Claude Opus 4.6** in [#&#8203;9626](https://redirect.github.com/vitest-dev/vitest/issues/9626) [<samp>(86fad)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/86fad4b42)
- Don't continue when `aroundEach/All` setup timed out  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [#&#8203;9670](https://redirect.github.com/vitest-dev/vitest/issues/9670) [<samp>(bb013)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/bb013d54b)
- Align `VitestRunnerConfig` optional fields with `SerializedConfig`  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [#&#8203;9661](https://redirect.github.com/vitest-dev/vitest/issues/9661) [<samp>(79520)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/79520d82d)
- Handle Symbol values in format utility  -  by [@&#8203;nami8824](https://redirect.github.com/nami8824) in [#&#8203;9658](https://redirect.github.com/vitest-dev/vitest/issues/9658) [<samp>(0583f)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/0583f067e)
- Deprecate `toBe*` spy assertions in favor of `toHaveBeen*` (and `toThrowError`)  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9665](https://redirect.github.com/vitest-dev/vitest/issues/9665) [<samp>(4d390)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/4d390dfe9)
- Don't propagate nested `aroundEach/All` errors but aggregate them on runner  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [#&#8203;9673](https://redirect.github.com/vitest-dev/vitest/issues/9673) [<samp>(b6365)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/b63653f5a)
- Show a better error if there is a pending dynamic import  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9676](https://redirect.github.com/vitest-dev/vitest/issues/9676) [<samp>(7ef5c)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/7ef5cf4b7)
- Preserve stack trace of `resolves/rejects` chained assertion error  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [#&#8203;9679](https://redirect.github.com/vitest-dev/vitest/issues/9679) [<samp>(c6151)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/c61511d4a)
- Handle module-sync condition in vmThreads/vmForks require  -  by [@&#8203;lesleh](https://redirect.github.com/lesleh) in [#&#8203;9650](https://redirect.github.com/vitest-dev/vitest/issues/9650) and [#&#8203;9651](https://redirect.github.com/vitest-dev/vitest/issues/9651) [<samp>(bb203)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/bb20389f4)
- Hooks should respect `maxConcurrency`  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [#&#8203;9653](https://redirect.github.com/vitest-dev/vitest/issues/9653) [<samp>(16d13)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/16d13d981)
- Recursively autospy module object  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [#&#8203;9687](https://redirect.github.com/vitest-dev/vitest/issues/9687) [<samp>(695a8)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/695a86b41)
- Remove trailing spaces from diff error log  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) and [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9680](https://redirect.github.com/vitest-dev/vitest/issues/9680) [<samp>(395d1)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/395d1a29e)
- Respect project `resolve.conditions` for externals  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [#&#8203;9717](https://redirect.github.com/vitest-dev/vitest/issues/9717) [<samp>(1d498)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/1d4987498)
- Use object for WeakMap instead of a symbol to support webcontainers  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9731](https://redirect.github.com/vitest-dev/vitest/issues/9731) [<samp>(c5225)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/c52259330)
- Fix re-mocking virtual module  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [#&#8203;9748](https://redirect.github.com/vitest-dev/vitest/issues/9748) [<samp>(3cbbb)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/3cbbb17f1)
- Cancelling should stop current test immediately  -  by [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [#&#8203;9729](https://redirect.github.com/vitest-dev/vitest/issues/9729) [<samp>(0cb2f)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/0cb2f7239)
- Make `mockObject` change backwards compatible  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [#&#8203;9744](https://redirect.github.com/vitest-dev/vitest/issues/9744) [<samp>(84c69)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/84c69497f)
- Fix `URL.name` on jsdom  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [#&#8203;9767](https://redirect.github.com/vitest-dev/vitest/issues/9767) [<samp>(031f3)</samp>](https://re

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 10am on monday" in timezone Asia/Shanghai, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **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](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/rolldown/rolldown).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My42Ni40IiwidXBkYXRlZEluVmVyIjoiNDMuNjYuNCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->
@graphite-app graphite-app bot force-pushed the renovate/npm-packages branch from accf4dc to 17b98f3 Compare March 15, 2026 16:18
@renovate renovate bot merged commit dff6613 into main Mar 15, 2026
51 checks passed
@renovate renovate bot deleted the renovate/npm-packages branch March 15, 2026 16:23
This was referenced Mar 18, 2026
shulaoda added a commit that referenced this pull request Mar 18, 2026
## [1.0.0-rc.10] - 2026-03-18

### 🚀 Features

- add indentExclusionRanges property to MagicString (#8746) by @IWANABETHATGUY
- expose `oxcRuntimePlugin` (#8654) by @sapphi-red
- rust: make bundler generic over FileSystem for in-memory benchmarks (#8652) by @Boshen

### 🐛 Bug Fixes

- rolldown_plugin_vite_dynamic_import_vars: align dynamic import fast check with Vite (#8760) by @shulaoda
- renamer: handle existing bindings in nested scopes when finding unique names (#8741) by @drewolson
- pass `yarn_pnp` option where needed (#8736) by @sapphi-red
- preserve optional chaining in namespace member expr rewrite (#8712) by @Copilot
- correct UTF-16 index handling in native MagicString (#8693) by @IWANABETHATGUY
- mark failing doctests as ignore (#8700) by @Boshen
- prevent may_partial_namespace from leaking through include_module (#8682) by @IWANABETHATGUY
- ci: bump native-build cache key to invalidate stale napi-rs artifacts (#8678) by @Boshen
- `comments.annotation: false` breaking tree-shaking (#8657) by @IWANABETHATGUY
- validate filenames for NUL bytes from chunkFileNames/entryFileNames (#8644) by @IWANABETHATGUY
- dce-only minify should not set NODE_ENV to production (#8651) by @IWANABETHATGUY

### 🚜 Refactor

- rust: remove dead `CrossModuleOptimizationConfig::side_effects_free_function_optimization` (#8673) by @Dunqing
- rust: simplify `cross_module_optimization` by removing redundant scope tracking (#8672) by @Dunqing
- simplify string repeat in guess_indentor (#8753) by @IWANABETHATGUY
- consolidate custom magic-string tests into one file (#8696) by @IWANABETHATGUY
- extract CJS bailout checks from include_symbol (#8683) by @IWANABETHATGUY
- rust: remove `BindingIdentifierExt` to use `BindingIdentifier::symbol_id()` instead (#8667) by @Dunqing
- bench: add bench_preset helper and inline presets (#8658) by @Boshen
- rust: filter external modules from entries instead of mapping bit positions (#8637) by @Dunqing

### 📚 Documentation

- clarify watch mode behavior and its limitations (#8751) by @sapphi-red
- add external link icon to GitHub button in Hero section (#8731) by @thisisnkc
- guide: clarify that `inject` option is only conceptually similar to esbuild's one (#8743) by @sapphi-red
- meta/design: add `devtools.md` (#8663) by @hyf0
- add viteplus alpha announcement banner (#8668) by @shulaoda

### ⚡ Performance

- rolldown: some minor perf optimization found by autoresearch (#8730) by @Brooooooklyn
- replace Vec allocation with lazy iterator in find_hash_placeholders (#8703) by @Boshen
- replace TypedDashMap with TypedMap in CustomField (#8708) by @Boshen
- bench: remove scan benchmark binary to halve LTO link time (#8694) by @Boshen

### 🧪 Testing

- watch: increase timeout for error output (#8766) by @sapphi-red
- vite-tests: remove JS plugin tests (#8767) by @sapphi-red
- watch: add CLI exit code test (#8752) by @sapphi-red
- normalize paths on Windows even if `resolve.symlinks` is false (#8483) by @sapphi-red

### ⚙️ Miscellaneous Tasks

- correct comment in bundle-analyzer-plugin.ts (#8770) by @origami-z
- upgrade oxc to 0.120.0 (#8764) by @Boshen
- enable all test for `reset` category in MagicString.test.ts (#8749) by @IWANABETHATGUY
- deps: update test262 submodule for tests (#8742) by @sapphi-red
- deps: update oxc apps (#8734) by @renovate[bot]
- deps: update softprops/action-gh-release action to v2.6.1 (#8724) by @renovate[bot]
- deps: update npm packages (major) (#8722) by @renovate[bot]
- deps: update github-actions (major) (#8721) by @renovate[bot]
- deps: update softprops/action-gh-release action to v2.6.0 (#8720) by @renovate[bot]
- deps: update npm packages (#8718) by @renovate[bot]
- deps: update rust crates (#8717) by @renovate[bot]
- deps: update github-actions (#8716) by @renovate[bot]
- deps: update dependency oxlint-tsgolint to v0.17.0 (#8713) by @renovate[bot]
- deps: bump cargo-shear to v1.11.2 (#8711) by @Boshen
- use org level `CODE_OF_CONDUCT.md` (#8706) by @sapphi-red
- fix cache key mismatch and remove redundant cache saves (#8695) by @Boshen
- deps: update oxc apps (#8692) by @renovate[bot]
- deps: update oxc apps (#8649) by @renovate[bot]
- should do matrix out side of reusable workflows 2 (#8691) by @hyf0
- should do matrix out side of reusable workflows (#8690) by @hyf0
- deps: update dependency rolldown-plugin-dts to v0.22.5 (#8689) by @renovate[bot]
- upgrade oxc to 0.119.0 and oxc_resolver to 11.19.1 (#8686) by @Boshen
- correct if condition of `type-check` job (#8677) by @hyf0
- Gate CI type-check job on node changes (#8669) by @Copilot
- benchmark: improve codspeed build (#8665) by @Boshen
- deps: update oxc to v0.118.0 (#8650) by @renovate[bot]
- deps: update crate-ci/typos action to v1.44.0 (#8647) by @renovate[bot]
- deps: update oxc resolver to v11.19.1 (#8646) by @renovate[bot]
- deps: update dependency rust to v1.94.0 (#8648) by @renovate[bot]
- deps: update dependency rolldown-plugin-dts to v0.22.4 (#8645) by @renovate[bot]

### ◀️ Revert

- Revert "ci: Gate CI type-check job on node changes" (#8674) by @hyf0
- "chore(deps): update dependency rust to v1.94.0 (#8648)" (#8660) by @shulaoda

### ❤️ New Contributors

* @origami-z made their first contribution in [#8770](#8770)
* @drewolson made their first contribution in [#8741](#8741)
* @thisisnkc made their first contribution in [#8731](#8731)

Co-authored-by: shulaoda <165626830+shulaoda@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant