Skip to content

fix: prefix expect.poll message to all errors - #11756

Merged
sheremet-va merged 7 commits into
mainfrom
fix/poll-message-all-errors
Oct 28, 2026
Merged

sheremet-va merged 7 commits into
mainfrom
fix/poll-message-all-errors

Conversation

@hi-ogawa

@hi-ogawa hi-ogawa commented Oct 27, 2026 •

Copy link
Copy Markdown
Collaborator

Currently expect.poll adds its message to the error only when the matcher fails on the last attempt. When the callback throws on the last attempt, or doesn't resolve before the timeout, the error has no message. So the same flaky poll can fail with or without its label, depending on timing.

This PR adds the message to every error the poll fails with. Errors whose message can't be changed, such as DOMException, are thrown without it. It also documents the option, which was only in the type signature.


For example, this poll labels its failure with queue drained:

await expect.poll(() => queue.count(), { message: 'queue drained' }).toBe(0)

The table shows the error this poll fails with, before and after this PR, depending on how its last attempt ended:

last attempt before after
matcher toBe failed queue drained: expected 3 to be 0 // Object.is equality same
callback queue.count threw connect ECONNREFUSED queue drained: connect ECONNREFUSED
callback queue.count didn't resolve expect.poll() function didn't resolve in time. queue drained: expect.poll() function didn't resolve in time.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
@netlify

netlify Bot commented Oct 27, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for vitest-dev ready!

Name Link
🔨 Latest commit c50a01a
🔍 Latest deploy log https://app.netlify.com/projects/vitest-dev/deploys/6ae03d155bbfd4aec87acd80
😎 Deploy Preview https://deploy-preview-11756--vitest-dev.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

hi-ogawa and others added 3 commits October 27, 2026 13:44
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
@hi-ogawa
hi-ogawa marked this pull request as ready for review October 27, 2026 05:58
@hi-ogawa
hi-ogawa marked this pull request as draft October 28, 2026 00:52
@hi-ogawa
hi-ogawa marked this pull request as ready for review October 28, 2026 01:25
@sheremet-va
sheremet-va merged commit cab5877 into main Oct 28, 2026
28 of 29 checks passed
@sheremet-va
sheremet-va deleted the fix/poll-message-all-errors branch October 28, 2026 06:29
renovate Bot added a commit to cigaleapp/cigale that referenced this pull request Nov 9, 2026
##### [v5.1.0](https://github.com/vitest-dev/vitest/releases/tag/v5.1.0)

#####    🚀 Features

- Add `--last-failed` to run only failed tests  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11558](https://github.com/vitest-dev/vitest/issues/11558) [<samp>(82f63)</samp>](https://github.com/vitest-dev/vitest/commit/82f634220)
- Support `Temporal.Instant` and `Temporal.ZonedDateTime` in `vi.setSystemTime()`  -  by [@Prajwal2246](https://github.com/Prajwal2246), **Prajwal2246**, **Claude Opus 5.5 (1M context)**, [@hi-ogawa](https://github.com/hi-ogawa) and **Codex (GPT-6)** in [#11321](https://github.com/vitest-dev/vitest/issues/11321) [<samp>(f150f)</samp>](https://github.com/vitest-dev/vitest/commit/f150f5108)
- Introduce `--since-last-run` flag  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11516](https://github.com/vitest-dev/vitest/issues/11516) [<samp>(08bd9)</samp>](https://github.com/vitest-dev/vitest/commit/08bd93b7e)
- Expose per-retry/repeat attempt result  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Codex (GPT-6)** and **Claude Opus 5.5 (1M context)** in [#11232](https://github.com/vitest-dev/vitest/issues/11232) [<samp>(21be4)</samp>](https://github.com/vitest-dev/vitest/commit/21be412ed)
- Support fake timers for `node:timers` and `node:timers/promise`  -  by [@hi-ogawa](https://github.com/hi-ogawa), **OpenCode** and **Codex (GPT-6)** in [#10899](https://github.com/vitest-dev/vitest/issues/10899) [<samp>(fbe97)</samp>](https://github.com/vitest-dev/vitest/commit/fbe973cae)
- Allow coverage providers to store data in fs module cache  -  by [@AriPerkkio](https://github.com/AriPerkkio) in [#11747](https://github.com/vitest-dev/vitest/issues/11747) [<samp>(54a2b)</samp>](https://github.com/vitest-dev/vitest/commit/54a2bdb81)
- Interactively review failed snapshots  -  by [@macarie](https://github.com/macarie) and [@hi-ogawa](https://github.com/hi-ogawa) in [#11325](https://github.com/vitest-dev/vitest/issues/11325) [<samp>(54e5b)</samp>](https://github.com/vitest-dev/vitest/commit/54e5b8a8a)
- **browser**:
  - Mock modules through an import map  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11534](https://github.com/vitest-dev/vitest/issues/11534) [<samp>(707f8)</samp>](https://github.com/vitest-dev/vitest/commit/707f8adf4)
  - Drop experimental label from trace view  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#11518](https://github.com/vitest-dev/vitest/issues/11518) [<samp>(44c3c)</samp>](https://github.com/vitest-dev/vitest/commit/44c3c2fcf)
  - Introduce experimental `pointer` API  -  by [@macarie](https://github.com/macarie) in [#10780](https://github.com/vitest-dev/vitest/issues/10780) [<samp>(5dc09)</samp>](https://github.com/vitest-dev/vitest/commit/5dc09f0ea)
  - Capture aria snapshot in trace view  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#11492](https://github.com/vitest-dev/vitest/issues/11492) [<samp>(0cc39)</samp>](https://github.com/vitest-dev/vitest/commit/0cc39fb90)
  - Show trace steps timeline on terminal on test failure  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#11594](https://github.com/vitest-dev/vitest/issues/11594) [<samp>(973dc)</samp>](https://github.com/vitest-dev/vitest/commit/973dc84be)
  - Add failure-only trace view mode  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#11612](https://github.com/vitest-dev/vitest/issues/11612) [<samp>(d5d7d)</samp>](https://github.com/vitest-dev/vitest/commit/d5d7d2f06)
  - Enable failure-only trace view by default  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#11766](https://github.com/vitest-dev/vitest/issues/11766) [<samp>(f37b6)</samp>](https://github.com/vitest-dev/vitest/commit/f37b6b707)
- **coverage**:
  - V8 to support `ignoreNode` option  -  by [@erickserra](https://github.com/erickserra) and [@AriPerkkio](https://github.com/AriPerkkio) in [#11688](https://github.com/vitest-dev/vitest/issues/11688) [<samp>(e02db)</samp>](https://github.com/vitest-dev/vitest/commit/e02db0869)
- **experimental**:
  - Add trace timeline for node  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#11753](https://github.com/vitest-dev/vitest/issues/11753) [<samp>(4e985)</samp>](https://github.com/vitest-dev/vitest/commit/4e9855151)
  - Add message option to vi.waitFor and vi.waitUntil  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#11754](https://github.com/vitest-dev/vitest/issues/11754) [<samp>(fd145)</samp>](https://github.com/vitest-dev/vitest/commit/fd145d8d6)

#####    🐞 Bug Fixes

- Rerun setup files after `--changed` filtering  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11621](https://github.com/vitest-dev/vitest/issues/11621) [<samp>(3a39c)</samp>](https://github.com/vitest-dev/vitest/commit/3a39cfc54)
- Return the mock to concurrent imports  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11623](https://github.com/vitest-dev/vitest/issues/11623) [<samp>(1453b)</samp>](https://github.com/vitest-dev/vitest/commit/1453ba690)
- Don't fail on console log pending at teardown  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11619](https://github.com/vitest-dev/vitest/issues/11619) [<samp>(a60b8)</samp>](https://github.com/vitest-dev/vitest/commit/a60b8e132)
- Reference chai types in every d.ts chunk  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11618](https://github.com/vitest-dev/vitest/issues/11618) [<samp>(fb150)</samp>](https://github.com/vitest-dev/vitest/commit/fb150158b)
- Detect mock factory cycles that form later  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11642](https://github.com/vitest-dev/vitest/issues/11642) [<samp>(e9554)</samp>](https://github.com/vitest-dev/vitest/commit/e95541584)
- Skip fs module cache for typed import.meta.glob  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11666](https://github.com/vitest-dev/vitest/issues/11666) [<samp>(79501)</samp>](https://github.com/vitest-dev/vitest/commit/79501f3a1)
- Run tests that import a deleted file  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11669](https://github.com/vitest-dev/vitest/issues/11669) [<samp>(80aa1)</samp>](https://github.com/vitest-dev/vitest/commit/80aa13dd6)
- Keep syntax highlighting in code frames  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11705](https://github.com/vitest-dev/vitest/issues/11705) [<samp>(d39f5)</samp>](https://github.com/vitest-dev/vitest/commit/d39f51548)
- Respect CLI filters when prewarming browsers  -  by [@sheremet-va](https://github.com/sheremet-va) and **Benjamin Tang** in [#11706](https://github.com/vitest-dev/vitest/issues/11706) [<samp>(10947)</samp>](https://github.com/vitest-dev/vitest/commit/109474892)
- Read cached source as utf-8  -  by [@juan-fernandez](https://github.com/juan-fernandez) in [#11682](https://github.com/vitest-dev/vitest/issues/11682) and [#11709](https://github.com/vitest-dev/vitest/issues/11709) [<samp>(867a5)</samp>](https://github.com/vitest-dev/vitest/commit/867a5e41c)
- Inherit `watch` from the root config in projects  -  by [@nstepien](https://github.com/nstepien) and **Claude Opus 5.5 (1M context)** in [#11724](https://github.com/vitest-dev/vitest/issues/11724) [<samp>(77c12)</samp>](https://github.com/vitest-dev/vitest/commit/77c122c6b)
- Prefix expect.poll message to all errors  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#11756](https://github.com/vitest-dev/vitest/issues/11756) [<samp>(cab58)</samp>](https://github.com/vitest-dev/vitest/commit/cab5877db)
- Support api.port 0  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#11641](https://github.com/vitest-dev/vitest/issues/11641) [<samp>(3667c)</samp>](https://github.com/vitest-dev/vitest/commit/3667cf8a3)
- Show attempts in test error logs of retried tests  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#11696](https://github.com/vitest-dev/vitest/issues/11696) [<samp>(77a94)</samp>](https://github.com/vitest-dev/vitest/commit/77a94328a)
- Preserve rootDir in project paths  -  by [@btea](https://github.com/btea) in [#11816](https://github.com/vitest-dev/vitest/issues/11816) [<samp>(bf96d)</samp>](https://github.com/vitest-dev/vitest/commit/bf96dad6a)
- **browser**:
  - Change default port to 23315  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#11640](https://github.com/vitest-dev/vitest/issues/11640) [<samp>(a2ec4)</samp>](https://github.com/vitest-dev/vitest/commit/a2ec4166d)
  - Advance fake timers in actions and expect.element  -  by [@julienw](https://github.com/julienw), [@hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#11242](https://github.com/vitest-dev/vitest/issues/11242) [<samp>(68190)</samp>](https://github.com/vitest-dev/vitest/commit/6819008ce)
  - Drop trace view warning without html reporter  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#11665](https://github.com/vitest-dev/vitest/issues/11665) [<samp>(e6407)</samp>](https://github.com/vitest-dev/vitest/commit/e64075ef5)
  - Detect shared chunks via the optimizer  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11661](https://github.com/vitest-dev/vitest/issues/11661) [<samp>(e2e9c)</samp>](https://github.com/vitest-dev/vitest/commit/e2e9c64b0)
  - Clear screenshot stability timeout  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11659](https://github.com/vitest-dev/vitest/issues/11659) [<samp>(fbe37)</samp>](https://github.com/vitest-dev/vitest/commit/fbe37c083)
  - Measure prepare duration with one clock  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11667](https://github.com/vitest-dev/vitest/issues/11667) [<samp>(a3ed4)</samp>](https://github.com/vitest-dev/vitest/commit/a3ed42a14)
  - Keep failure screenshot per attempt  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#11694](https://github.com/vitest-dev/vitest/issues/11694) [<samp>(a5022)</samp>](https://github.com/vitest-dev/vitest/commit/a5022655d)
  - Print trace timeline of each attempt  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#11695](https://github.com/vitest-dev/vitest/issues/11695) [<samp>(27229)</samp>](https://github.com/vitest-dev/vitest/commit/272296e5d)
  - Don't hang in `page.viewport()`  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11738](https://github.com/vitest-dev/vitest/issues/11738) [<samp>(49ff4)</samp>](https://github.com/vitest-dev/vitest/commit/49ff4420c)
  - Skip trace entries after their attempt ended  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#11771](https://github.com/vitest-dev/vitest/issues/11771) [<samp>(7a56f)</samp>](https://github.com/vitest-dev/vitest/commit/7a56fea53)
  - Focus the iframe before clicking in playwright  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11798](https://github.com/vitest-dev/vitest/issues/11798) [<samp>(eb20a)</samp>](https://github.com/vitest-dev/vitest/commit/eb20a3af1)
  - Fail the run when a tester cannot connect  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11802](https://github.com/vitest-dev/vitest/issues/11802) [<samp>(605bf)</samp>](https://github.com/vitest-dev/vitest/commit/605bf22b7)
  - Treat edge as chromium in toHaveStyle  -  by [@aliamanatali](https://github.com/aliamanatali) in [#11813](https://github.com/vitest-dev/vitest/issues/11813) [<samp>(f4dd9)</samp>](https://github.com/vitest-dev/vitest/commit/f4dd97652)
- **cache**:
  - Handle concurrent cache clearing  -  by [@7rulnik](https://github.com/7rulnik) in [#11697](https://github.com/vitest-dev/vitest/issues/11697) [<samp>(09076)</samp>](https://github.com/vitest-dev/vitest/commit/090766a42)
  - Key module cache on the deps optimizer  -  by [@MO2k4](https://github.com/MO2k4) and **Martin Oehlert** in [#11775](https://github.com/vitest-dev/vitest/issues/11775) [<samp>(52485)</samp>](https://github.com/vitest-dev/vitest/commit/524856ed0)
  - Do not fail when the cache dir is unwritable  -  by [@ezefernandezyf](https://github.com/ezefernandezyf) in [#11781](https://github.com/vitest-dev/vitest/issues/11781) [<samp>(274ab)</samp>](https://github.com/vitest-dev/vitest/commit/274ab70c4)
- **cli**:
  - Use camelCase for sinceLastRun help  -  by [@fengmk2](https://github.com/fengmk2) in [#11707](https://github.com/vitest-dev/vitest/issues/11707) [<samp>(5c674)</samp>](https://github.com/vitest-dev/vitest/commit/5c674859b)
- **coverage**:
  - V8 `autoAttachSubprocess` to use `.tmp` directory  -  by [@AriPerkkio](https://github.com/AriPerkkio) in [#11632](https://github.com/vitest-dev/vitest/issues/11632) [<samp>(de5af)</samp>](https://github.com/vitest-dev/vitest/commit/de5af2939)
  - V8 to ignore Vite's generated CJS namespace import helper  -  by [@AriPerkkio](https://github.com/AriPerkkio) in [#11676](https://github.com/vitest-dev/vitest/issues/11676) [<samp>(5901f)</samp>](https://github.com/vitest-dev/vitest/commit/5901fb458)
- **deps**:
  - Update all non-major dependencies  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11637](https://github.com/vitest-dev/vitest/issues/11637) [<samp>(2b18e)</samp>](https://github.com/vitest-dev/vitest/commit/2b18e3724)
- **expect**:
  - Keep soft .resolves/.rejects error location  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#11792](https://github.com/vitest-dev/vitest/issues/11792) [<samp>(42770)</samp>](https://github.com/vitest-dev/vitest/commit/42770759f)
- **mocker**:
  - Don't change the original prototype chain  -  by [@sheremet-va](https://github.com/sheremet-va) and **Max Schwenk** in [#11737](https://github.com/vitest-dev/vitest/issues/11737) [<samp>(cca42)</samp>](https://github.com/vitest-dev/vitest/commit/cca423de9)
  - Use root **mocks** for linked packages  -  by [@sheremet-va](https://github.com/sheremet-va) in [#7708](https://github.com/vitest-dev/vitest/issues/7708) and [#11739](https://github.com/vitest-dev/vitest/issues/11739) [<samp>(810ec)</samp>](https://github.com/vitest-dev/vitest/commit/810ec66e1)
- **runner**:
  - Don't drop throttled task updates  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11795](https://github.com/vitest-dev/vitest/issues/11795) [<samp>(8e837)</samp>](https://github.com/vitest-dev/vitest/commit/8e837b87a)
- **ui**:
  - Escape search text in explorer highlight  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11672](https://github.com/vitest-dev/vitest/issues/11672) [<samp>(3c6d6)</samp>](https://github.com/vitest-dev/vitest/commit/3c6d6dd24)
  - Fix html reporter crash when --bail cancels files  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#11693](https://github.com/vitest-dev/vitest/issues/11693) [<samp>(36a5f)</samp>](https://github.com/vitest-dev/vitest/commit/36a5fa132)
  - Fix quirks mode in trace view replay  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#11744](https://github.com/vitest-dev/vitest/issues/11744) [<samp>(b9b73)</samp>](https://github.com/vitest-dev/vitest/commit/b9b73596c)
  - Let coverage report follow UI color scheme  -  by [@AriPerkkio](https://github.com/AriPerkkio) in [#11765](https://github.com/vitest-dev/vitest/issues/11765) [<samp>(59c2d)</samp>](https://github.com/vitest-dev/vitest/commit/59c2dd3a7)
  - Open trace view only for tests with a trace  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#11770](https://github.com/vitest-dev/vitest/issues/11770) [<samp>(c022d)</samp>](https://github.com/vitest-dev/vitest/commit/c022d630f)
- **vm**:
  - Strip hashbang before compiling CommonJS dependencies  -  by [@cwoebker](https://github.com/cwoebker) in [#11731](https://github.com/vitest-dev/vitest/issues/11731) [<samp>(1a77c)</samp>](https://github.com/vitest-dev/vitest/commit/1a77c6cbc)
  - Keep node globals after teardown  -  by [@francesco-agnoletto](https://github.com/francesco-agnoletto) in [#11380](https://github.com/vitest-dev/vitest/issues/11380) and [#11681](https://github.com/vitest-dev/vitest/issues/11681) [<samp>(a57b4)</samp>](https://github.com/vitest-dev/vitest/commit/a57b4d8a3)
  - Reset fake timers after each test file  -  by [@francesco-agnoletto](https://github.com/francesco-agnoletto) in [#11679](https://github.com/vitest-dev/vitest/issues/11679) and [#11779](https://github.com/vitest-dev/vitest/issues/11779) [<samp>(78c46)</samp>](https://github.com/vitest-dev/vitest/commit/78c46acdf)
  - Keep assignable accessor globals writable in node environment  -  by [@MO2k4](https://github.com/MO2k4) and **Martin Oehlert** in [#11834](https://github.com/vitest-dev/vitest/issues/11834) [<samp>(a5ec3)</samp>](https://github.com/vitest-dev/vitest/commit/a5ec316f8)

#####    🏎 Performance

- Reuse fsModuleCache in static collection  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11622](https://github.com/vitest-dev/vitest/issues/11622) [<samp>(1766c)</samp>](https://github.com/vitest-dev/vitest/commit/1766c257d)
- Cache setup/mock resolves in reused workers  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#11760](https://github.com/vitest-dev/vitest/issues/11760) [<samp>(5de10)</samp>](https://github.com/vitest-dev/vitest/commit/5de103a9c)
- Don't refetch warm modules in reused runners  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#11761](https://github.com/vitest-dev/vitest/issues/11761) [<samp>(4f135)</samp>](https://github.com/vitest-dev/vitest/commit/4f135cc1d)
- **browser**:
  - Map only first frame for trace locations  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#11613](https://github.com/vitest-dev/vitest/issues/11613) [<samp>(a967d)</samp>](https://github.com/vitest-dev/vitest/commit/a967d8f39)
  - Disable WebSocketServer's allowSynchronousEvents  -  by [@nstepien](https://github.com/nstepien) in [#11794](https://github.com/vitest-dev/vitest/issues/11794) [<samp>(d4572)</samp>](https://github.com/vitest-dev/vitest/commit/d4572032f)
- **coverage**:
  - Istanbul to use `magic-string`+`rolldown` for instrumentation  -  by [@AriPerkkio](https://github.com/AriPerkkio) in [#11648](https://github.com/vitest-dev/vitest/issues/11648) [<samp>(2470b)</samp>](https://github.com/vitest-dev/vitest/commit/2470befec)
  - Istanbul to collect uncovered files in `Promise.all`  -  by [@AriPerkkio](https://github.com/AriPerkkio) in [#11713](https://github.com/vitest-dev/vitest/issues/11713) [<samp>(f1092)</samp>](https://github.com/vitest-dev/vitest/commit/f1092b34b)
  - Istanbul to not store input source maps in coverage data  -  by [@AriPerkkio](https://github.com/AriPerkkio) in [#11686](https://github.com/vitest-dev/vitest/issues/11686) [<samp>(2debb)</samp>](https://github.com/vitest-dev/vitest/commit/2debb4e51)
- **expect**:
  - Compare typed arrays in one loop  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11658](https://github.com/vitest-dev/vitest/issues/11658) [<samp>(908eb)</samp>](https://github.com/vitest-dev/vitest/commit/908eb573f)

#####     [View changes on GitHub](https://github.com/vitest-dev/vitest/compare/v5.0.5...v5.1.0)
##### [v5.0.5](https://github.com/vitest-dev/vitest/releases/tag/v5.0.5)

#####    🐞 Bug Fixes

- Keep vite default `fs.deny` with api token file  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Hiroshi Ogawa** and **Claude Opus 5.5** in [#11578](https://github.com/vitest-dev/vitest/issues/11578) [<samp>(28dc1)</samp>](https://github.com/vitest-dev/vitest/commit/28dc1edfb)
- Handle quoted file names in `--changed`  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11583](https://github.com/vitest-dev/vitest/issues/11583) [<samp>(14921)</samp>](https://github.com/vitest-dev/vitest/commit/14921e962)
- Add `data` to the `import.meta.hot` stub  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11590](https://github.com/vitest-dev/vitest/issues/11590) [<samp>(3a828)</samp>](https://github.com/vitest-dev/vitest/commit/3a8289ac3)
- Set `skip` in `skipIf`, ignore `undefined` options  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11591](https://github.com/vitest-dev/vitest/issues/11591) [<samp>(d523a)</samp>](https://github.com/vitest-dev/vitest/commit/d523a15f2)
- Skip builtin loading in async leak detector  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11598](https://github.com/vitest-dev/vitest/issues/11598) [<samp>(fe86a)</samp>](https://github.com/vitest-dev/vitest/commit/fe86a64c6)
- Keep the import frame in native loader errors  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11599](https://github.com/vitest-dev/vitest/issues/11599) [<samp>(9697b)</samp>](https://github.com/vitest-dev/vitest/commit/9697b3894)
- Run hook cleanups when a later hook fails  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11605](https://github.com/vitest-dev/vitest/issues/11605) [<samp>(6c5a4)</samp>](https://github.com/vitest-dev/vitest/commit/6c5a44720)
- Release mocks of finished test files  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11607](https://github.com/vitest-dev/vitest/issues/11607) [<samp>(e9c3d)</samp>](https://github.com/vitest-dev/vitest/commit/e9c3d72f0)
- Abort all running tests on cancel  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11606](https://github.com/vitest-dev/vitest/issues/11606) [<samp>(6621a)</samp>](https://github.com/vitest-dev/vitest/commit/6621a72d6)
- **browser**:
  - Ignore synthetic pagehide events  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11582](https://github.com/vitest-dev/vitest/issues/11582) [<samp>(ca081)</samp>](https://github.com/vitest-dev/vitest/commit/ca0813584)
  - Run plugin buildStart on server creation  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11593](https://github.com/vitest-dev/vitest/issues/11593) [<samp>(ea611)</samp>](https://github.com/vitest-dev/vitest/commit/ea611e44c)
  - Drop late connections of closed sessions  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11600](https://github.com/vitest-dev/vitest/issues/11600) [<samp>(f161e)</samp>](https://github.com/vitest-dev/vitest/commit/f161e6df2)
  - Wait 30s for the browser to close  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11601](https://github.com/vitest-dev/vitest/issues/11601) [<samp>(6498b)</samp>](https://github.com/vitest-dev/vitest/commit/6498b666a)
  - Run global setup once with instances  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11596](https://github.com/vitest-dev/vitest/issues/11596) [<samp>(8dd67)</samp>](https://github.com/vitest-dev/vitest/commit/8dd67c262)
- **reporter**:
  - End reason `&#39;failed&#39;` on worker crash  -  by [@AriPerkkio](https://github.com/AriPerkkio) in [#11568](https://github.com/vitest-dev/vitest/issues/11568) [<samp>(6ae8e)</samp>](https://github.com/vitest-dev/vitest/commit/6ae8e89ff)

#####     [View changes on GitHub](https://github.com/vitest-dev/vitest/compare/v5.0.4...v5.0.5)
##### [v5.0.4](https://github.com/vitest-dev/vitest/releases/tag/v5.0.4)

#####    🚀 Features

- **experimental**:
  - Tag cache directories with CACHEDIR.TAG  -  by [@lifeiscontent](https://github.com/lifeiscontent) in [#11461](https://github.com/vitest-dev/vitest/issues/11461) [<samp>(a8ea3)</samp>](https://github.com/vitest-dev/vitest/commit/a8ea3c8fd)
  - Support `test.ui.theme` option  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11499](https://github.com/vitest-dev/vitest/issues/11499) [<samp>(1da66)</samp>](https://github.com/vitest-dev/vitest/commit/1da66405d)
  - Highlight selector multiple matches in trace view  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Hiroshi Ogawa** and **Claude Opus 5.5** in [#11489](https://github.com/vitest-dev/vitest/issues/11489) [<samp>(5abba)</samp>](https://github.com/vitest-dev/vitest/commit/5abba1e1b)
  - Print how many tests were affected and a total when running `--changed`  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11424](https://github.com/vitest-dev/vitest/issues/11424) [<samp>(a2336)</samp>](https://github.com/vitest-dev/vitest/commit/a23368585)
  - Add an option to cache dependencies instead of statically parsing them  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11515](https://github.com/vitest-dev/vitest/issues/11515) [<samp>(c0601)</samp>](https://github.com/vitest-dev/vitest/commit/c06012ac8)
  - Add fit and zoom controls to trace viewer  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Hiroshi Ogawa** and **Claude Opus 5.5** in [#11490](https://github.com/vitest-dev/vitest/issues/11490) [<samp>(f5dd9)</samp>](https://github.com/vitest-dev/vitest/commit/f5dd99ed0)

#####    🐞 Bug Fixes

- Fail the run on git and location filter errors  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11430](https://github.com/vitest-dev/vitest/issues/11430) [<samp>(30d03)</samp>](https://github.com/vitest-dev/vitest/commit/30d0304d2)
- Enable fsModuleCache by default  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11435](https://github.com/vitest-dev/vitest/issues/11435) [<samp>(ad208)</samp>](https://github.com/vitest-dev/vitest/commit/ad208cc29)
- Track project files and mocks with --changed  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11432](https://github.com/vitest-dev/vitest/issues/11432) [<samp>(b0f2b)</samp>](https://github.com/vitest-dev/vitest/commit/b0f2b3bb9)
- Refactor caching, fix `:` in project and change the shape of `results` cache  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11453](https://github.com/vitest-dev/vitest/issues/11453) [<samp>(9673c)</samp>](https://github.com/vitest-dev/vitest/commit/9673c49a4)
- Keep full `$` string values when `taskTitleValueFormatTruncate` is 0  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Hiroshi Ogawa** and **Claude Opus 5.5** in [#11485](https://github.com/vitest-dev/vitest/issues/11485) [<samp>(4f7e1)</samp>](https://github.com/vitest-dev/vitest/commit/4f7e1799b)
- Resolve node builtins in client environments  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11417](https://github.com/vitest-dev/vitest/issues/11417) [<samp>(56b31)</samp>](https://github.com/vitest-dev/vitest/commit/56b319ac6)
- Fix module graph builtin externals after [#11421](https://github.com/vitest-dev/vitest/issues/11421)  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Hiroshi Ogawa** and **Claude Opus 5.5** in [#11491](https://github.com/vitest-dev/vitest/issues/11491) and [#11421](https://github.com/vitest-dev/vitest/issues/11421) [<samp>(008e1)</samp>](https://github.com/vitest-dev/vitest/commit/008e184cb)
- Wrap module mocks during in-source testing  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11505](https://github.com/vitest-dev/vitest/issues/11505) [<samp>(36d19)</samp>](https://github.com/vitest-dev/vitest/commit/36d19cb00)
- Handle line endings in snapshot  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11522](https://github.com/vitest-dev/vitest/issues/11522) [<samp>(4c468)</samp>](https://github.com/vitest-dev/vitest/commit/4c468aa40)
- Respect root in projects  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11521](https://github.com/vitest-dev/vitest/issues/11521) [<samp>(26642)</samp>](https://github.com/vitest-dev/vitest/commit/26642f793)
- Resolve mocks in directories with spaces  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11539](https://github.com/vitest-dev/vitest/issues/11539) [<samp>(caaef)</samp>](https://github.com/vitest-dev/vitest/commit/caaef9416)
- **api**:
  - Publish the api token atomically  -  by [@umairnawaz333](https://github.com/umairnawaz333) in [#11323](https://github.com/vitest-dev/vitest/issues/11323) [<samp>(6f990)</samp>](https://github.com/vitest-dev/vitest/commit/6f990fef1)
- **browser**:
  - Close the mock route interception race  -  by [@cplieger](https://github.com/cplieger) and [@sheremet-va](https://github.com/sheremet-va) in [#8339](https://github.com/vitest-dev/vitest/issues/8339) and [#11083](https://github.com/vitest-dev/vitest/issues/11083) [<samp>(d6620)</samp>](https://github.com/vitest-dev/vitest/commit/d6620fae6)
  - Allow toHaveTextContent without arguments  -  by [@nomadical](https://github.com/nomadical) in [#11425](https://github.com/vitest-dev/vitest/issues/11425) [<samp>(8ebcf)</samp>](https://github.com/vitest-dev/vitest/commit/8ebcf5f8a)
  - Apply API options without browser config  -  by [@sheremet-va](https://github.com/sheremet-va) in [#10852](https://github.com/vitest-dev/vitest/issues/10852) [<samp>(ad055)</samp>](https://github.com/vitest-dev/vitest/commit/ad055837b)
  - Preserve undefined command arguments  -  by [@sheremet-va](https://github.com/sheremet-va) and [@AriPerkkio](https://github.com/AriPerkkio) in [#11497](https://github.com/vitest-dev/vitest/issues/11497) [<samp>(1576d)</samp>](https://github.com/vitest-dev/vitest/commit/1576d3d89)
  - Wait for setup mocks before importing a test file  -  by [@kasperpeulen](https://github.com/kasperpeulen) in [#11520](https://github.com/vitest-dev/vitest/issues/11520) [<samp>(b61d1)</samp>](https://github.com/vitest-dev/vitest/commit/b61d1ced3)
  - Avoid extra scroll outside the iframe  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11523](https://github.com/vitest-dev/vitest/issues/11523) [<samp>(662e8)</samp>](https://github.com/vitest-dev/vitest/commit/662e8a363)
  - Run browser instances as workers  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11525](https://github.com/vitest-dev/vitest/issues/11525) [<samp>(bf04b)</samp>](https://github.com/vitest-dev/vitest/commit/bf04b9ccc)
    - ⚠️ This can degrade performance if you have a custom `maxWorkers` setting. Previously, it was applied incorrectly and could lead to Vitest using too many resources. For example, a lower number would still open too many browsers. Fixing it means Vitest opens less instances by default now.
  - Open one cdp session per tester  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11542](https://github.com/vitest-dev/vitest/issues/11542) [<samp>(69e63)</samp>](https://github.com/vitest-dev/vitest/commit/69e6369f6)
  - Clean up unmocked and pending mocks  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11537](https://github.com/vitest-dev/vitest/issues/11537) [<samp>(5c955)</samp>](https://github.com/vitest-dev/vitest/commit/5c9552173)
- **coverage**:
  - V8 browser memory leak between test files  -  by [@AriPerkkio](https://github.com/AriPerkkio) in [#11466](https://github.com/vitest-dev/vitest/issues/11466) [<samp>(2297d)</samp>](https://github.com/vitest-dev/vitest/commit/2297d93a8)
  - `allowExternal` fails to include uncovered files  -  by [@AriPerkkio](https://github.com/AriPerkkio) in [#11513](https://github.com/vitest-dev/vitest/issues/11513) [<samp>(4ef00)</samp>](https://github.com/vitest-dev/vitest/commit/4ef000a93)
  - Filenames containing brackets incorrectly showing as uncovered  -  by [@AriPerkkio](https://github.com/AriPerkkio) in [#11531](https://github.com/vitest-dev/vitest/issues/11531) [<samp>(0fa80)</samp>](https://github.com/vitest-dev/vitest/commit/0fa80f53c)
  - Istanbul coverage wrong when module transform warmups  -  by [@AriPerkkio](https://github.com/AriPerkkio) in [#11529](https://github.com/vitest-dev/vitest/issues/11529) [<samp>(9f61d)</samp>](https://github.com/vitest-dev/vitest/commit/9f61dcca2)
- **deps**:
  - Update all non-major dependencies  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11167](https://github.com/vitest-dev/vitest/issues/11167) [<samp>(c74e0)</samp>](https://github.com/vitest-dev/vitest/commit/c74e099a9)
- **expect**:
  - Fix `Map` and `Set` deep equality in some assertions  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Hiroshi Ogawa** and **Claude Opus 5.5** in [#11402](https://github.com/vitest-dev/vitest/issues/11402) [<samp>(b4e79)</samp>](https://github.com/vitest-dev/vitest/commit/b4e79fd7a)
  - Check value in chai-style returned  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11500](https://github.com/vitest-dev/vitest/issues/11500) [<samp>(1aca0)</samp>](https://github.com/vitest-dev/vitest/commit/1aca02a21)
- **mocker**:
  - Fix native loader mocking edge cases  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11540](https://github.com/vitest-dev/vitest/issues/11540) [<samp>(cd423)</samp>](https://github.com/vitest-dev/vitest/commit/cd423ba04)
- **pretty-format**:
  - Support boxed symbols  -  by [@lehni](https://github.com/lehni) in [#11445](https://github.com/vitest-dev/vitest/issues/11445) and [#11446](https://github.com/vitest-dev/vitest/issues/11446) [<samp>(eba44)</samp>](https://github.com/vitest-dev/vitest/commit/eba44926e)
- **reporters**:
  - Junit to strip ANSI sequences from all XML attributes  -  by [@meganemura](https://github.com/meganemura) and **Claude Opus 5.5** in [#11407](https://github.com/vitest-dev/vitest/issues/11407) [<samp>(e1a73)</samp>](https://github.com/vitest-dev/vitest/commit/e1a731470)
- **runner**:
  - Don't cache failed fixture setups  -  by [@hamed-bavar](https://github.com/hamed-bavar) in [#11237](https://github.com/vitest-dev/vitest/issues/11237) and [#11238](https://github.com/vitest-dev/vitest/issues/11238) [<samp>(4ee66)</samp>](https://github.com/vitest-dev/vitest/commit/4ee66c021)
- **typecheck**:
  - Use typescript pool in toTestSpecification  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11451](https://github.com/vitest-dev/vitest/issues/11451) [<samp>(5f273)</samp>](https://github.com/vitest-dev/vitest/commit/5f2739e74)
- **ui**:
  - Remove duplicate browser-open call opening two tabs  -  by [@feastyr69](https://github.com/feastyr69) in [#11356](https://github.com/vitest-dev/vitest/issues/11356) and [#11358](https://github.com/vitest-dev/vitest/issues/11358) [<samp>(d7e13)</samp>](https://github.com/vitest-dev/vitest/commit/d7e1315c1)
  - Simplify explorer filtering + fix nested tests when search matches a suite  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Hiroshi Ogawa**, **Codex** and **Claude Opus 5.5** in [#11262](https://github.com/vitest-dev/vitest/issues/11262) [<samp>(a627b)</samp>](https://github.com/vitest-dev/vitest/commit/a627be498)
  - Store module graph once per environment  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Hiroshi Ogawa** and **Claude Opus 5.5** in [#11421](https://github.com/vitest-dev/vitest/issues/11421) [<samp>(af903)</samp>](https://github.com/vitest-dev/vitest/commit/af903c65e)
  - Mount index.html handler on the ui base path  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Hiroshi Ogawa** and **Claude Opus 5.5** in [#11517](https://github.com/vitest-dev/vitest/issues/11517) [<samp>(1bc24)</samp>](https://github.com/vitest-dev/vitest/commit/1bc2495c7)
  - Center split pane resize handle  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Hiroshi Ogawa** and **Claude Opus 5.5** in [#11506](https://github.com/vitest-dev/vitest/issues/11506) [<samp>(e658b)</samp>](https://github.com/vitest-dev/vitest/commit/e658b9b6a)
- **vm**:
  - Bind `this` to `module.exports`  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11504](https://github.com/vitest-dev/vitest/issues/11504) [<samp>(b618a)</samp>](https://github.com/vitest-dev/vitest/commit/b618afd5c)

#####    🏎 Performance

- Reuse fsModuleCache when filtering by source  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11428](https://github.com/vitest-dev/vitest/issues/11428) [<samp>(7ebd9)</samp>](https://github.com/vitest-dev/vitest/commit/7ebd95fdd)
- **spy**: Reset only mocks that were called or reconfigured  -  by [@johan-gorter](https://github.com/johan-gorter) and **Claude Opus 5.5** in [#11197](https://github.com/vitest-dev/vitest/issues/11197) [<samp>(28ef9)</samp>](https://github.com/vitest-dev/vitest/commit/28ef93df2)

#####     [View changes on GitHub](https://github.com/vitest-dev/vitest/compare/v5.0.3...v5.0.4)
##### [v5.0.3](https://github.com/vitest-dev/vitest/releases/tag/v5.0.3)

#####    🐞 Bug Fixes

- Isolate `result.status` between `repeats` runs  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Hiroshi Ogawa** and **Codex (GPT-6)** in [#11218](https://github.com/vitest-dev/vitest/issues/11218) [<samp>(5dbeb)</samp>](https://github.com/vitest-dev/vitest/commit/5dbebe9e3)
- Don't print an interceptor warning in browser mode  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11377](https://github.com/vitest-dev/vitest/issues/11377) [<samp>(15cc0)</samp>](https://github.com/vitest-dev/vitest/commit/15cc006aa)
- Don't retry when `test.fails` expectedly failed  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Hiroshi Ogawa** and **Codex (GPT-6)** in [#11219](https://github.com/vitest-dev/vitest/issues/11219) [<samp>(b2458)</samp>](https://github.com/vitest-dev/vitest/commit/b24585f08)
- Scope cache key generators to projects  -  by [@ecoyoung](https://github.com/ecoyoung) in [#11281](https://github.com/vitest-dev/vitest/issues/11281) and [#11301](https://github.com/vitest-dev/vitest/issues/11301) [<samp>(92ba7)</samp>](https://github.com/vitest-dev/vitest/commit/92ba7fc1d)
- **browser**:
  - Delay server `listen` until tests start running  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11366](https://github.com/vitest-dev/vitest/issues/11366) [<samp>(7d8ed)</samp>](https://github.com/vitest-dev/vitest/commit/7d8ed3e9b)
  - Check mock path boundaries  -  by [@saryn17](https://github.com/saryn17), **Ryosei Sato** and [@sheremet-va](https://github.com/sheremet-va) in [#11361](https://github.com/vitest-dev/vitest/issues/11361) and [#11362](https://github.com/vitest-dev/vitest/issues/11362) [<samp>(1c388)</samp>](https://github.com/vitest-dev/vitest/commit/1c3888bce)
  - Keep config of browser-consumed environments  -  by [@kasperpeulen](https://github.com/kasperpeulen) and **Claude** in [#11378](https://github.com/vitest-dev/vitest/issues/11378) [<samp>(aafc0)</samp>](https://github.com/vitest-dev/vitest/commit/aafc0996f)
  - Ignore page crash while cancelling  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11386](https://github.com/vitest-dev/vitest/issues/11386) [<samp>(7c367)</samp>](https://github.com/vitest-dev/vitest/commit/7c36748fa)
  - `toMatchScreenshot` uses wrong reference on retried tests  -  by [@macarie](https://github.com/macarie) in [#11393](https://github.com/vitest-dev/vitest/issues/11393) [<samp>(c22ab)</samp>](https://github.com/vitest-dev/vitest/commit/c22aba992)
- **cache**:
  - Revalidate imports of cached modules  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11381](https://github.com/vitest-dev/vitest/issues/11381) [<samp>(38f98)</samp>](https://github.com/vitest-dev/vitest/commit/38f98855f)
- **deps**:
  - Pin `why-is-node-running` to `3.2.1` to avoid users running into `ERR_PNPM_TRUST_DOWNGRADE`  -  by [@AriPerkkio](https://github.com/AriPerkkio) in [#11403](https://github.com/vitest-dev/vitest/issues/11403) [<samp>(f6c9a)</samp>](https://github.com/vitest-dev/vitest/commit/f6c9a4977)
- **expect**:
  - Pass current equality testers to `expect.extend` asymmetric matchers  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Hiroshi Ogawa** and **Claude** in [#11401](https://github.com/vitest-dev/vitest/issues/11401) [<samp>(3e794)</samp>](https://github.com/vitest-dev/vitest/commit/3e794a96b)
- **jsdom**:
  - Support Blob on jsdom 30.1  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11379](https://github.com/vitest-dev/vitest/issues/11379) [<samp>(6c49b)</samp>](https://github.com/vitest-dev/vitest/commit/6c49b7197)
- **pool**:
  - Preserve unique pool ids when `groupOrder` is set  -  by [@mtorp](https://github.com/mtorp) in [#11392](https://github.com/vitest-dev/vitest/issues/11392) [<samp>(50312)</samp>](https://github.com/vitest-dev/vitest/commit/50312ebb4)
- **ui**:
  - Split-pane handle overlapping iframe  -  by [@macarie](https://github.com/macarie) in [#11221](https://github.com/vitest-dev/vitest/issues/11221) [<samp>(f91db)</samp>](https://github.com/vitest-dev/vitest/commit/f91db0dfd)
- **vitest**:
  - Remove root temp dir on close  -  by [@abhinav-phi](https://github.com/abhinav-phi) in [#11248](https://github.com/vitest-dev/vitest/issues/11248) [<samp>(7c711)</samp>](https://github.com/vitest-dev/vitest/commit/7c7119cf7)
- **vm**:
  - Do not optimize deps from index.html  -  by [@ezefernandezyf](https://github.com/ezefernandezyf), **Hiroshi Ogawa** and **Codex (GPT-6)** in [#11329](https://github.com/vitest-dev/vitest/issues/11329) and [#11360](https://github.com/vitest-dev/vitest/issues/11360) [<samp>(caf28)</samp>](https://github.com/vitest-dev/vitest/commit/caf2887de)
  - Don't reuse scripts across vite environments  -  by [@MO2k4](https://github.com/MO2k4), **Martin Oehlert** and **Claude** in [#11395](https://github.com/vitest-dev/vitest/issues/11395) [<samp>(346d3)</samp>](https://github.com/vitest-dev/vitest/commit/346d3896b)

#####     [View changes on GitHub](https://github.com/vitest-dev/vitest/compare/v5.0.2...v5.0.3)
##### [v5.0.2](https://github.com/vitest-dev/vitest/releases/tag/v5.0.2)

#####    🐞 Bug Fixes

- Bind `process` in case global is overwritten  -  by [@AriPerkkio](https://github.com/AriPerkkio) in [#11343](https://github.com/vitest-dev/vitest/issues/11343) [<samp>(0b792)</samp>](https://github.com/vitest-dev/vitest/commit/0b79231ad)
- **detect-async-leaks**:
  - Ignore `process.stdio` handles  -  by [@AriPerkkio](https://github.com/AriPerkkio) in [#11333](https://github.com/vitest-dev/vitest/issues/11333) [<samp>(0fd6b)</samp>](https://github.com/vitest-dev/vitest/commit/0fd6b9790)
- **expect**:
  - Fix `toMatchObject` with asymmetric matchers  -  by [@ShreeBohara](https://github.com/ShreeBohara), **Claude Opus 5**, [@hi-ogawa](https://github.com/hi-ogawa), **Hiroshi Ogawa** and **Codex (GPT-5)** in [#11100](https://github.com/vitest-dev/vitest/issues/11100) [<samp>(42523)</samp>](https://github.com/vitest-dev/vitest/commit/42523289e)
- **jsdom**:
  - Fix `Request` with `Blob` body on jsdom 28+  -  by [@harshit-d3v](https://github.com/harshit-d3v) in [#11295](https://github.com/vitest-dev/vitest/issues/11295) [<samp>(d1c3e)</samp>](https://github.com/vitest-dev/vitest/commit/d1c3ecc93)
- **reporter**:
  - `agent` to respect `--silent`  -  by [@Raj4478](https://github.com/Raj4478) and [@AriPerkkio](https://github.com/AriPerkkio) in [#11271](https://github.com/vitest-dev/vitest/issues/11271) [<samp>(5b95e)</samp>](https://github.com/vitest-dev/vitest/commit/5b95efb6d)
- **reporters**:
  - Handle concurrent `createReport` calls  -  by [@7rulnik](https://github.com/7rulnik) in [#11278](https://github.com/vitest-dev/vitest/issues/11278) [<samp>(e8e55)</samp>](https://github.com/vitest-dev/vitest/commit/e8e556ff7)
  - `hanging-process` to use ESM entrypoint  -  by [@AriPerkkio](https://github.com/AriPerkkio) in [#11316](https://github.com/vitest-dev/vitest/issues/11316) [<samp>(4e91e)</samp>](https://github.com/vitest-dev/vitest/commit/4e91e5668)
- **spy**:
  - Fix stack overflow when spying `Set.prototype.add`  -  by [@fengmk2](https://github.com/fengmk2) in [#11299](https://github.com/vitest-dev/vitest/issues/11299) [<samp>(a0a93)</samp>](https://github.com/vitest-dev/vitest/commit/a0a939653)
- **ui**:
  - Persist authentication cookie beyond current browser session  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Hiroshi Ogawa** and **OpenCode (gpt-5.6-sol)** in [#11066](https://github.com/vitest-dev/vitest/issues/11066) [<samp>(f8819)</samp>](https://github.com/vitest-dev/vitest/commit/f88195e16)

#####     [View changes on GitHub](https://github.com/vitest-dev/vitest/compare/v5.0.1...v5.0.2)
##### [v5.0.1](https://github.com/vitest-dev/vitest/releases/tag/v5.0.1)

#####    🚀 Features

- **ui**:
  - Move trace attempts selector to viewer header  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Hiroshi Ogawa** and **Codex** in [#11189](https://github.com/vitest-dev/vitest/issues/11189) [<samp>(5dc4b)</samp>](https://github.com/vitest-dev/vitest/commit/5dc4b5c92)
  - Add focused trace view layout mode  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Hiroshi Ogawa**, **OpenCode (gpt-5.6-sol)** and **Codex** in [#11190](https://github.com/vitest-dev/vitest/issues/11190) [<samp>(376dc)</samp>](https://github.com/vitest-dev/vitest/commit/376dc3bc1)

#####    🐞 Bug Fixes

- Exit 1 when vitest list fails collection  -  by [@hamed-bavar](https://github.com/hamed-bavar) in [#11145](https://github.com/vitest-dev/vitest/issues/11145) and [#11146](https://github.com/vitest-dev/vitest/issues/11146) [<samp>(6108b)</samp>](https://github.com/vitest-dev/vitest/commit/6108b8197)
- Keep parse error details in static collection  -  by [@hamed-bavar](https://github.com/hamed-bavar) in [#11150](https://github.com/vitest-dev/vitest/issues/11150) and [#11151](https://github.com/vitest-dev/vitest/issues/11151) [<samp>(7c818)</samp>](https://github.com/vitest-dev/vitest/commit/7c818153a)
- Avoid recursive prototype in automocking  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11195](https://github.com/vitest-dev/vitest/issues/11195) [<samp>(99fc5)</samp>](https://github.com/vitest-dev/vitest/commit/99fc52591)
- Prevent false Vitest import resolution  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11196](https://github.com/vitest-dev/vitest/issues/11196) [<samp>(b426c)</samp>](https://github.com/vitest-dev/vitest/commit/b426c1976)
- Keep metadata file when clearing the cache  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11199](https://github.com/vitest-dev/vitest/issues/11199) [<samp>(73614)</samp>](https://github.com/vitest-dev/vitest/commit/73614654a)
- Correct typos in error message and comments  -  by [@shinji00222](https://github.com/shinji00222) and **Shinji** in [#11187](https://github.com/vitest-dev/vitest/issues/11187) [<samp>(115c3)</samp>](https://github.com/vitest-dev/vitest/commit/115c3f6d2)
- Resolve ResolvedConfig exactOptionalPropertyTypes errors  -  by [@LukeAbby](https://github.com/LukeAbby) in [#11175](https://github.com/vitest-dev/vitest/issues/11175) [<samp>(498fb)</samp>](https://github.com/vitest-dev/vitest/commit/498fbe922)
- Share the server on self-referencing `extends`  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11034](https://github.com/vitest-dev/vitest/issues/11034) [<samp>(23dda)</samp>](https://github.com/vitest-dev/vitest/commit/23dda738c)
- Warn when deprecated `deps.optimizer.web` is used  -  by [@im10furry](https://github.com/im10furry) in [#11214](https://github.com/vitest-dev/vitest/issues/11214) [<samp>(2ce29)</samp>](https://github.com/vitest-dev/vitest/commit/2ce29d5fa)
- **browser**:
  - Avoid double quotes in `config.define`  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11198](https://github.com/vitest-dev/vitest/issues/11198) [<samp>(972e2)</samp>](https://github.com/vitest-dev/vitest/commit/972e24bab)
- **doctor**:
  - Measure vm pools for custom environments  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11212](https://github.com/vitest-dev/vitest/issues/11212) [<samp>(91ab1)</samp>](https://github.com/vitest-dev/vitest/commit/91ab1588c)
- **expect**:
  - Correct return value in `toMatchAriaSnapshot`  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11208](https://github.com/vitest-dev/vitest/issues/11208) [<samp>(c119b)</samp>](https://github.com/vitest-dev/vitest/commit/c119be016)
- **fakeTimers**:
  - Force `queueMicrotask` and `nextTick` in `toNotFake`  -  by [@kingmakeruix](https://github.com/kingmakeruix), **kingmakeruix**, **Hiroshi Ogawa**, **Codex** and [@hi-ogawa](https://github.com/hi-ogawa) in [#11261](https://github.com/vitest-dev/vitest/issues/11261) [<samp>(a47d7)</samp>](https://github.com/vitest-dev/vitest/commit/a47d7908f)
- **snapshot**:
  - Report obsolete keys next to skipped tests  -  by [@hamed-bavar](https://github.com/hamed-bavar), **Hiroshi Ogawa** and **OpenCode (gpt-5.6-sol)** in [#11157](https://github.com/vitest-dev/vitest/issues/11157) and [#11158](https://github.com/vitest-dev/vitest/issues/11158) [<samp>(17e2b)</samp>](https://github.com/vitest-dev/vitest/commit/17e2b22dd)
- **types**:
  - Make public declarations self-contained  -  by [@ZoeySigel](https://github.com/ZoeySigel) in [#11141](https://github.com/vitest-dev/vitest/issues/11141) [<samp>(45546)</samp>](https://github.com/vitest-dev/vitest/commit/455466c16)
- **ui**:
  - Fix collapse/expand suite with file name search  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Hiroshi Ogawa** and **Codex** in [#11260](https://github.com/vitest-dev/vitest/issues/11260) [<samp>(0a712)</samp>](https://github.com/vitest-dev/vitest/commit/0a7122daa)
  - Fix explorer file summary count  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Hiroshi Ogawa**, **OpenCode (gpt-5.6-sol)** and **Codex** in [#11125](https://github.com/vitest-dev/vitest/issues/11125) [<samp>(05982)</samp>](https://github.com/vitest-dev/vitest/commit/05982297d)
- **utils**:
  - Fix `deepMerge` to handle prototype  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Hiroshi Ogawa** and **Codex** in [#11215](https://github.com/vitest-dev/vitest/issues/11215) [<samp>(4944c)</samp>](https://github.com/vitest-dev/vitest/commit/4944cf498)

#####     [View changes on GitHub](https://github.com/vitest-dev/vitest/compare/v5.0.0...v5.0.1)
##### [v5.0.0](https://github.com/vitest-dev/vitest/releases/tag/v5.0.0)

Vitest 5 is officially out! This release focuses on performance and brings a lot of new features while fixing long-standing bugs. See our [blog post](https://vitest.dev/blog/vitest-5.html) for the official announcement.

#####    🚨 Breaking Changes

- Replace `loupe.inspect` with pretty-format  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Claude Opus 5 (1M context)** and **OpenAI Codex** in [#9609](https://github.com/vitest-dev/vitest/issues/9609) [<samp>(3f802)</samp>](https://github.com/vitest-dev/vitest/commit/3f802da4b)
- Remove quotes from string values in `test.for/each` title `$` variable (take 2)  -  by [@hi-ogawa](https://github.com/hi-ogawa) in [#10170](https://github.com/vitest-dev/vitest/issues/10170) [<samp>(04d37)</samp>](https://github.com/vitest-dev/vitest/commit/04d37e9d7)
- Default `attachmentsDir` from `.vitest-attachements/` to `.vitest/attachments/`  -  by [@MdSadiqMd](https://github.com/MdSadiqMd) in [#10186](https://github.com/vitest-dev/vitest/issues/10186) [<samp>(1ba73)</samp>](https://github.com/vitest-dev/vitest/commit/1ba7338c3)
- Remove `sequential` test/suite options in favor of `concurrent`  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **OpenAI Codex** in [#10198](https://github.com/vitest-dev/vitest/issues/10198) [<samp>(9229f)</samp>](https://github.com/vitest-dev/vitest/commit/9229f2edc)
- Represent locator as an object instead of a string  -  by [@sheremet-va](https://github.com/sheremet-va) in [#10212](https://github.com/vitest-dev/vitest/issues/10212) [<samp>(80f07)</samp>](https://github.com/vitest-dev/vitest/commit/80f07edf6)
- Inline `expect` package  -  by [@sheremet-va](https://github.com/sheremet-va) in [#10221](https://github.com/vitest-dev/vitest/issues/10221) [<samp>(ad162)</samp>](https://github.com/vitest-dev/vitest/commit/ad16223e7)
- Remove deprecated entry points  -  by [@sheremet-va](https://github.com/sheremet-va) in [#10222](https://github.com/vitest-dev/vitest/issues/10222) [<samp>(994c6)</samp>](https://github.com/vitest-dev/vitest/commit/994c6ddb9)
- Require Node.js 22 and Vite 6.4  -  by [@sheremet-va](https://github.com/sheremet-va) in [#10178](https://github.com/vitest-dev/vitest/issues/10178) [<samp>(38762)</samp>](https://github.com/vitest-dev/vitest/commit/3876283e8)
- Fail `expect.poll` when function didn't resolve in time  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **OpenAI Codex** in [#10233](https://github.com/vitest-dev/vitest/issues/10233) [<samp>(4df04)</samp>](https://github.com/vitest-dev/vitest/commit/4df048c11)
- Throw an error if hoistable methods are outside the top level scope  -  by [@sheremet-va](https://github.com/sheremet-va) in [#10460](https://github.com/vitest-dev/vitest/issues/10460) [<samp>(d0b4f)</samp>](https://github.com/vitest-dev/vitest/commit/d0b4fddcb)
- `toHaveTextContent` is strict, add `toMatchTextContent` as alternative  -  by [@sheremet-va](https://github.com/sheremet-va) in [#10473](https://github.com/vitest-dev/vitest/issues/10473) [<samp>(18f30)</samp>](https://github.com/vitest-dev/vitest/commit/18f303079)
- Don't lookup config file from ancestor directories  -  by [@hi-ogawa](https://github.com/hi-ogawa), **OpenAI Codex** and **Hiroshi Ogawa** in [#10428](https://github.com/vitest-dev/vitest/issues/10428) [<samp>(945d9)</samp>](https://github.com/vitest-dev/vitest/commit/945d9090e)
- Inline `@vitest/runner` package, do not publish it anymore  -  by [@sheremet-va](https://github.com/sheremet-va) in [#10511](https://github.com/vitest-dev/vitest/issues/10511) [<samp>(6d6e4)</samp>](https://github.com/vitest-dev/vitest/commit/6d6e46b1e)
- Allow mutating happy-dom/jsdom window object  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Hiroshi Ogawa** and **OpenAI Codex** in [#10373](https://github.com/vitest-dev/vitest/issues/10373) [<samp>(206e8)</samp>](https://github.com/vitest-dev/vitest/commit/206e8cff8)
- Expose `concurrencyId`/`workerId` on TestModule's diagnostics, make id 1-based  -  by [@sheremet-va](https://github.com/sheremet-va) in [#10516](https://github.com/vitest-dev/vitest/issues/10516) [<samp>(bdd98)</samp>](https://github.com/vitest-dev/vitest/commit/bdd985433)
- Add `screenshotDirectory` config to `browser.expect.toMatchScreenshot`  -  by [@macarie](https://github.com/macarie) in [#10592](https://github.com/vitest-dev/vitest/issues/10592) [<samp>(a60de)</samp>](https://github.com/vitest-dev/vitest/commit/a60ded0fb)
- Update `@sinonjs/fake-timers` and support mocking `Temporal`  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Hiroshi Ogawa** and **OpenCode (gpt-5.6-sol)** in [#10654](https://github.com/vitest-dev/vitest/issues/10654) [<samp>(f8b15)</samp>](https://github.com/vitest-dev/vitest/commit/f8b1532fe)
- Remove webdriverio package  -  by [@sheremet-va](https://github.com/sheremet-va) in [#10675](https://github.com/vitest-dev/vitest/issues/10675) [<samp>(5fed6)</samp>](https://github.com/vitest-dev/vitest/commit/5fed68f72)
- Clear mocks by default before each test  -  by [@sheremet-va](https://github.com/sheremet-va) in [#10613](https://github.com/vitest-dev/vitest/issues/10613) [<samp>(0f646)</samp>](https://github.com/vitest-dev/vitest/commit/0f6463bf2)
- Don't emit localStorage warnings on Node 26, fail gracefully when worker fails to start  -  by [@sheremet-va](https://github.com/sheremet-va) in [#10293](https://github.com/vitest-dev/vitest/issues/10293) [<samp>(334ed)</samp>](https://github.com/vitest-dev/vitest/commit/334edef92)
- Separate config resolution from the server creation  -  by [@sheremet-va](https://github.com/sheremet-va) in [#10554](https://github.com/vitest-dev/vitest/issues/10554) [<samp>(1c0ec)</samp>](https://github.com/vitest-dev/vitest/commit/1c0ec3444)
- Inline projects extend the root config by default  -  by [@sheremet-va](https://github.com/sheremet-va) in [#10750](https://github.com/vitest-dev/vitest/issues/10750) [<samp>(fec00)</samp>](https://github.com/vitest-dev/vitest/commit/fec001ad3)
- Enable mocking Temporal without fake timers  -  by [@fabon-f](https://github.com/fabon-f), **Hiroshi Ogawa** and **OpenCode (gpt-5.6-sol)** in [#10757](https://github.com/vitest-dev/vitest/issues/10757) [<samp>(ac2d4)</samp>](https://github.com/vitest-dev/vitest/commit/ac2d46b42)
- Support nested projects  -  by [@sheremet-va](https://github.com/sheremet-va) in [#10846](https://github.com/vitest-dev/vitest/issues/10846) [<samp>(ec367)</samp>](https://github.com/vitest-dev/vitest/commit/ec367cf2a)
- Use `>` as separator in `-t`, calculate `only` once  -  by [@sheremet-va](https://github.com/sheremet-va) in [#10686](https://github.com/vitest-dev/vitest/issues/10686) [<samp>(a0b20)</samp>](https://github.com/vitest-dev/vitest/commit/a0b20bc86)
- Fail the test when an asynchronous assertion is not awaited  -  by [@sheremet-va](https://github.com/sheremet-va) in [#10868](https://github.com/vitest-dev/vitest/issues/10868) [<samp>(86d4a)</samp>](https://github.com/vitest-dev/vitest/commit/86d4a9da9)
- Share the Vite server between inline projects  -  by [@sheremet-va](https://github.com/sheremet-va) in [#10848](https://github.com/vitest-dev/vitest/issues/10848) [<samp>(d87c9)</samp>](https://github.com/vitest-dev/vitest/commit/d87c96ee4)
- Parse files statically in vitest list by default  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11088](https://github.com/vitest-dev/vitest/issues/11088) [<samp>(51e94)</samp>](https://github.com/vitest-dev/vitest/commit/51e949416)
- **benchmark**:
  - Rewrite the public API  -  by [@sheremet-va](https://github.com/sheremet-va) in [#10113](https://github.com/vitest-dev/vitest/issues/10113) [<samp>(19f6e)</samp>](https://github.com/vitest-dev/vitest/commit/19f6e8947)
- **browser**:
  - Iframe scale  -  by [@macarie](https://github.com/macarie) in [#9745](https://github.com/vitest-dev/vitest/issues/9745) [<samp>(b6398)</samp>](https://github.com/vitest-dev/vitest/commit/b639852cc)
  - Enable `locators.exact` by default  -  by [@sheremet-va](https://github.com/sheremet-va) in [#10430](https://github.com/vitest-dev/vitest/issues/10430) [<samp>(e2032)</samp>](https://github.com/vitest-dev/vitest/commit/e203202f9)
  - Require `sessionId` for orchestrator html request  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Hiroshi Ogawa** and **OpenAI Codex** in [#10522](https://github.com/vitest-dev/vitest/issues/10522) [<samp>(79b7d)</samp>](https://github.com/vitest-dev/vitest/commit/79b7d8fcc)
  - Save failure screenshots in `attachmentsDir`  -  by [@macarie](https://github.com/macarie) in [#10917](https://github.com/vitest-dev/vitest/issues/10917) [<samp>(3b5bb)</samp>](https://github.com/vitest-dev/vitest/commit/3b5bbd8b4)
- **coverage**:
  - `include/exclude` globs too eager  -  by [@AriPerkkio](https://github.com/AriPerkkio) in [#9818](https://github.com/vitest-dev/vitest/issues/9818) [<samp>(edacb)</samp>](https://github.com/vitest-dev/vitest/commit/edacb0fd4)
  - Allow `thresholds.perFile` to accept an object  -  by [@vladlenskiy](https://github.com/vladlenskiy) and [@AriPerkkio](https://github.com/AriPerkkio) in [#10190](https://github.com/vitest-dev/vitest/issues/10190) [<samp>(13b78)</samp>](https://github.com/vitest-dev/vitest/commit/13b78d98b)
- **expect**:
  - Fix `toThrow("")` behavior by reverting [#6710](https://github.com/vitest-dev/vitest/issues/6710)  -  by [@hi-ogawa](https://github.com/hi-ogawa) in [#9643](https://github.com/vitest-dev/vitest/issues/9643) and [#6710](https://github.com/vitest-dev/vitest/issues/6710) [<samp>(6c3e4)</samp>](https://github.com/vitest-dev/vitest/commit/6c3e4bdbf)
- **mocker**:
  - Deserialize automock as automock  -  by [@nami8824](https://github.com/nami8824) in [#10192](https://github.com/vitest-dev/vitest/issues/10192) [<samp>(2f892)</samp>](https://github.com/vitest-dev/vitest/commit/2f892712d)
- **reporters**:
  - `blob` reporter and `--merge-reports` default to `.vitest/blob/`  -  by [@AriPerkkio](https://github.com/AriPerkkio) in [#10232](https://github.com/vitest-dev/vitest/issues/10232) [<samp>(d22b0)</samp>](https://github.com/vitest-dev/vitest/commit/d22b029ae)
  - Write json and junit reporter output files to `.vitest` by default  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Hiroshi Ogawa**, **OpenCode (gpt-5.6-sol)** and [@AriPerkkio](https://github.com/AriPerkkio) in [#10621](https://github.com/vitest-dev/vitest/issues/10621) [<samp>(58577)</samp>](https://github.com/vitest-dev/vitest/commit/58577290a)
- **spy**:
  - Preserve class mock prototype methods on instances  -  by [@sheremet-va](https://github.com/sheremet-va) in [#10910](https://github.com/vitest-dev/vitest/issues/10910) [<samp>(6093d)</samp>](https://github.com/vitest-dev/vitest/commit/6093d764a)
- **types**:
  - Add better promise support in expects and matchers  -  by [@samchungy](https://github.com/samchungy) and [@sheremet-va](https://github.com/sheremet-va) in [#8266](https://github.com/vitest-dev/vitest/issues/8266) [<samp>(41f55)</samp>](https://github.com/vitest-dev/vitest/commit/41f551bce)
- **ui**:
  - Harden UI API access  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Hiroshi Ogawa** and **OpenAI Codex** in [#10583](https://github.com/vitest-dev/vitest/issues/10583) [<samp>(4c26d)</samp>](https://github.com/vitest-dev/vitest/commit/4c26d7675)
  - Change html reporter default output to `.vitest`  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **Hiroshi Ogawa** in [#10620](https://github.com/vitest-dev/vitest/issues/10620) [<samp>(29c36)</samp>](https://github.com/vitest-dev/vitest/commit/29c364d50)

#####    🚀 Features

- Add `createReport` and `.vitest` report directory convention  -  by [@AriPerkkio](https://github.com/AriPerkkio) in [#9993](https://github.com/vitest-dev/vitest/issues/9993) [<samp>(72a6d)</samp>](https://github.com/vitest-dev/vitest/commit/72a6dc257)
- Expose default reporters through `configDefaults.reporters`  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5 (1M context)** in [#10219](https://github.com/vitest-dev/vitest/issues/10219) [<samp>(083f6)</samp>](https://github.com/vitest-dev/vitest/commit/083f6bdd6)
- Support merge reports for non-sharded multi-environment runs (take 2)  -  by [@hi-ogawa](https://github.com/hi-ogawa), **Claude Opus 5 (1M context)**, **OpenAI Codex** and [@AriPerkkio](https://github.com/AriPerkkio) in [#10031](https://github.com/vitest-dev/vitest/issues/10031) [<samp>(e60b2)</samp>](https://github.com/vitest-dev/vitest/commit/e60b2f49e)
- Add `logger.formatError`  -  by [@hi-ogawa](https://github.com/hi-ogawa) and **OpenAI Codex** in [#10268](https://github.com/vitest-dev/vitest/issues/10268) [<samp>(2c5f3)</samp>](https://github.com/vitest-dev/vitest/commit/2c5f3ee2f)
- Support typescript build mode  -  by [@lishaduck](https://github.com/lishaduck) in [#9870](https://github.com/vitest-dev/vitest/issues/9870) [<samp>(106da)</samp>](https://github.com/vitest-dev/vitest/commit/106da5896)
- Add toggable `injectCjsGlobals` option  -  by [@sheremet-va](https://github.com/sheremet-va) in [#10709](https://github.com/vitest-dev/vitest/issues/10709) [<samp>(82671)</samp>](https://github.com/vitest-dev/vitest/commit/826714ece)
- Promote fsModuleCache to a top-level option  -  by [@sheremet-va](https://github.com/sheremet-va) in [#10734](https://github.com/vitest-dev/vitest/issues/10734) [<samp>(78ed7)</samp>](https://github.com/vitest-dev/vitest/commit/78ed73afd)
- Support non-ascii characters in `for/each` title placeholders  -  by [@k-yle](https://github.com/k-yle) in [#10773](https://github.com/vitest-dev/vitest/issues/10773) [<samp>(15e0a)</samp>](https://github.com/vitest-dev/vitest/commit/15e0af953)
- Report the duration breakdown as percentages  -  by [@sheremet-va](https://github.com/sheremet-va) and [@AriPerkkio](https://github.com/AriPerkkio) in [#10820](https://github.com/vitest-dev/vitest/issues/10820) [<samp>(c67d2)</samp>](https://github.com/vitest-dev/vitest/commit/c67d296f4)
- Promote parseSpecifications out of experimental  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11087](https://github.com/vitest-dev/vitest/issues/11087) [<samp>(b628c)</samp>](https://github.com/vitest-dev/vitest/commit/b628cb680)
- Promote clearCache out of experimental  -  by [@sheremet-va](https://github.com/sheremet-va) in [#11086](https://github.com/vitest-dev/vitest/issues/11086) [<samp>(d4fe1)</samp>](https://github.com/vitest-dev/vitest/commit/d4fe1986f)
- **api**:
  - Expose logs recorded during the test  -  by [@sheremet-va](https://github.com/sheremet-va) in [#10277](https://github.com/vitest-dev/vitest/issues/10277) [<samp>(cba20)</samp>](https://github.com/vitest-dev/vitest/commit/cba2036a1)
- **benchmark**:
  - Add pluggable benchmark provider API  -  by [@GuillaumeLagrange](https://github.com/GuillaumeLagrange) and [@sheremet-va](https://github.com/sheremet-va) in [#10799](https://github.com/vitest-dev/vitest/issues/10…
markharding pushed a commit to futo-org/Harbor that referenced this pull request Nov 10, 2026
This PR contains the following updates:

| Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [@vitest/browser](https://vitest.dev/guide/browser/) ([source](https://github.com/vitest-dev/vitest/tree/HEAD/packages/browser)) | [`5.0.5` → `5.1.0`](https://renovatebot.com/diffs/npm/@vitest%2fbrowser/5.0.5/5.1.0) | ![age](https://developer.mend.io/api/mc/badges/age/npm/@vitest%2fbrowser/5.1.0?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitest%2fbrowser/5.0.5/5.1.0?slim=true) |
| [vitest](https://vitest.dev) ([source](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest)) | [`5.0.5` → `5.1.0`](https://renovatebot.com/diffs/npm/vitest/5.0.5/5.1.0) | ![age](https://developer.mend.io/api/mc/badges/age/npm/vitest/5.1.0?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vitest/5.0.5/5.1.0?slim=true) |

---

> ⚠️ **Warning**
>
> Some dependencies could not be looked up. Check the [Dependency Dashboard](issues/2097) for more information.

---

### Release Notes

<details>
<summary>vitest-dev/vitest (@&#8203;vitest/browser)</summary>

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

[Compare Source](vitest-dev/vitest@v5.0.5...v5.1.0)

#####    🚀 Features

- Add `--last-failed` to run only failed tests  -  by [@&#8203;sheremet-va](https://github.com/sheremet-va) in [#&#8203;11558](vitest-dev/vitest#11558) [<samp>(82f63)</samp>](vitest-dev/vitest@82f634220)
- Support `Temporal.Instant` and `Temporal.ZonedDateTime` in `vi.setSystemTime()`  -  by [@&#8203;Prajwal2246](https://github.com/Prajwal2246), **Prajwal2246**, **Claude Opus 5.5 (1M context)**, [@&#8203;hi-ogawa](https://github.com/hi-ogawa) and **Codex (GPT-6)** in [#&#8203;11321](vitest-dev/vitest#11321) [<samp>(f150f)</samp>](vitest-dev/vitest@f150f5108)
- Introduce `--since-last-run` flag  -  by [@&#8203;sheremet-va](https://github.com/sheremet-va) in [#&#8203;11516](vitest-dev/vitest#11516) [<samp>(08bd9)</samp>](vitest-dev/vitest@08bd93b7e)
- Expose per-retry/repeat attempt result  -  by [@&#8203;hi-ogawa](https://github.com/hi-ogawa), **Codex (GPT-6)** and **Claude Opus 5.5 (1M context)** in [#&#8203;11232](vitest-dev/vitest#11232) [<samp>(21be4)</samp>](vitest-dev/vitest@21be412ed)
- Support fake timers for `node:timers` and `node:timers/promise`  -  by [@&#8203;hi-ogawa](https://github.com/hi-ogawa), **OpenCode** and **Codex (GPT-6)** in [#&#8203;10899](vitest-dev/vitest#10899) [<samp>(fbe97)</samp>](vitest-dev/vitest@fbe973cae)
- Allow coverage providers to store data in fs module cache  -  by [@&#8203;AriPerkkio](https://github.com/AriPerkkio) in [#&#8203;11747](vitest-dev/vitest#11747) [<samp>(54a2b)</samp>](vitest-dev/vitest@54a2bdb81)
- Interactively review failed snapshots  -  by [@&#8203;macarie](https://github.com/macarie) and [@&#8203;hi-ogawa](https://github.com/hi-ogawa) in [#&#8203;11325](vitest-dev/vitest#11325) [<samp>(54e5b)</samp>](vitest-dev/vitest@54e5b8a8a)
- **browser**:
  - Mock modules through an import map  -  by [@&#8203;sheremet-va](https://github.com/sheremet-va) in [#&#8203;11534](vitest-dev/vitest#11534) [<samp>(707f8)</samp>](vitest-dev/vitest@707f8adf4)
  - Drop experimental label from trace view  -  by [@&#8203;hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#&#8203;11518](vitest-dev/vitest#11518) [<samp>(44c3c)</samp>](vitest-dev/vitest@44c3c2fcf)
  - Introduce experimental `pointer` API  -  by [@&#8203;macarie](https://github.com/macarie) in [#&#8203;10780](vitest-dev/vitest#10780) [<samp>(5dc09)</samp>](vitest-dev/vitest@5dc09f0ea)
  - Capture aria snapshot in trace view  -  by [@&#8203;hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#&#8203;11492](vitest-dev/vitest#11492) [<samp>(0cc39)</samp>](vitest-dev/vitest@0cc39fb90)
  - Show trace steps timeline on terminal on test failure  -  by [@&#8203;hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#&#8203;11594](vitest-dev/vitest#11594) [<samp>(973dc)</samp>](vitest-dev/vitest@973dc84be)
  - Add failure-only trace view mode  -  by [@&#8203;hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#&#8203;11612](vitest-dev/vitest#11612) [<samp>(d5d7d)</samp>](vitest-dev/vitest@d5d7d2f06)
  - Enable failure-only trace view by default  -  by [@&#8203;hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#&#8203;11766](vitest-dev/vitest#11766) [<samp>(f37b6)</samp>](vitest-dev/vitest@f37b6b707)
- **coverage**:
  - V8 to support `ignoreNode` option  -  by [@&#8203;erickserra](https://github.com/erickserra) and [@&#8203;AriPerkkio](https://github.com/AriPerkkio) in [#&#8203;11688](vitest-dev/vitest#11688) [<samp>(e02db)</samp>](vitest-dev/vitest@e02db0869)
- **experimental**:
  - Add trace timeline for node  -  by [@&#8203;hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#&#8203;11753](vitest-dev/vitest#11753) [<samp>(4e985)</samp>](vitest-dev/vitest@4e9855151)
  - Add message option to vi.waitFor and vi.waitUntil  -  by [@&#8203;hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#&#8203;11754](vitest-dev/vitest#11754) [<samp>(fd145)</samp>](vitest-dev/vitest@fd145d8d6)

#####    🐞 Bug Fixes

- Rerun setup files after `--changed` filtering  -  by [@&#8203;sheremet-va](https://github.com/sheremet-va) in [#&#8203;11621](vitest-dev/vitest#11621) [<samp>(3a39c)</samp>](vitest-dev/vitest@3a39cfc54)
- Return the mock to concurrent imports  -  by [@&#8203;sheremet-va](https://github.com/sheremet-va) in [#&#8203;11623](vitest-dev/vitest#11623) [<samp>(1453b)</samp>](vitest-dev/vitest@1453ba690)
- Don't fail on console log pending at teardown  -  by [@&#8203;sheremet-va](https://github.com/sheremet-va) in [#&#8203;11619](vitest-dev/vitest#11619) [<samp>(a60b8)</samp>](vitest-dev/vitest@a60b8e132)
- Reference chai types in every d.ts chunk  -  by [@&#8203;sheremet-va](https://github.com/sheremet-va) in [#&#8203;11618](vitest-dev/vitest#11618) [<samp>(fb150)</samp>](vitest-dev/vitest@fb150158b)
- Detect mock factory cycles that form later  -  by [@&#8203;sheremet-va](https://github.com/sheremet-va) in [#&#8203;11642](vitest-dev/vitest#11642) [<samp>(e9554)</samp>](vitest-dev/vitest@e95541584)
- Skip fs module cache for typed import.meta.glob  -  by [@&#8203;sheremet-va](https://github.com/sheremet-va) in [#&#8203;11666](vitest-dev/vitest#11666) [<samp>(79501)</samp>](vitest-dev/vitest@79501f3a1)
- Run tests that import a deleted file  -  by [@&#8203;sheremet-va](https://github.com/sheremet-va) in [#&#8203;11669](vitest-dev/vitest#11669) [<samp>(80aa1)</samp>](vitest-dev/vitest@80aa13dd6)
- Keep syntax highlighting in code frames  -  by [@&#8203;sheremet-va](https://github.com/sheremet-va) in [#&#8203;11705](vitest-dev/vitest#11705) [<samp>(d39f5)</samp>](vitest-dev/vitest@d39f51548)
- Respect CLI filters when prewarming browsers  -  by [@&#8203;sheremet-va](https://github.com/sheremet-va) and **Benjamin Tang** in [#&#8203;11706](vitest-dev/vitest#11706) [<samp>(10947)</samp>](vitest-dev/vitest@109474892)
- Read cached source as utf-8  -  by [@&#8203;juan-fernandez](https://github.com/juan-fernandez) in [#&#8203;11682](vitest-dev/vitest#11682) and [#&#8203;11709](vitest-dev/vitest#11709) [<samp>(867a5)</samp>](vitest-dev/vitest@867a5e41c)
- Inherit `watch` from the root config in projects  -  by [@&#8203;nstepien](https://github.com/nstepien) and **Claude Opus 5.5 (1M context)** in [#&#8203;11724](vitest-dev/vitest#11724) [<samp>(77c12)</samp>](vitest-dev/vitest@77c122c6b)
- Prefix expect.poll message to all errors  -  by [@&#8203;hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#&#8203;11756](vitest-dev/vitest#11756) [<samp>(cab58)</samp>](vitest-dev/vitest@cab5877db)
- Support api.port 0  -  by [@&#8203;hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#&#8203;11641](vitest-dev/vitest#11641) [<samp>(3667c)</samp>](vitest-dev/vitest@3667cf8a3)
- Show attempts in test error logs of retried tests  -  by [@&#8203;hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#&#8203;11696](vitest-dev/vitest#11696) [<samp>(77a94)</samp>](vitest-dev/vitest@77a94328a)
- Preserve rootDir in project paths  -  by [@&#8203;btea](https://github.com/btea) in [#&#8203;11816](vitest-dev/vitest#11816) [<samp>(bf96d)</samp>](vitest-dev/vitest@bf96dad6a)
- **browser**:
  - Change default port to 23315  -  by [@&#8203;hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#&#8203;11640](vitest-dev/vitest#11640) [<samp>(a2ec4)</samp>](vitest-dev/vitest@a2ec4166d)
  - Advance fake timers in actions and expect.element  -  by [@&#8203;julienw](https://github.com/julienw), [@&#8203;hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#&#8203;11242](vitest-dev/vitest#11242) [<samp>(68190)</samp>](vitest-dev/vitest@6819008ce)
  - Drop trace view warning without html reporter  -  by [@&#8203;hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#&#8203;11665](vitest-dev/vitest#11665) [<samp>(e6407)</samp>](vitest-dev/vitest@e64075ef5)
  - Detect shared chunks via the optimizer  -  by [@&#8203;sheremet-va](https://github.com/sheremet-va) in [#&#8203;11661](vitest-dev/vitest#11661) [<samp>(e2e9c)</samp>](vitest-dev/vitest@e2e9c64b0)
  - Clear screenshot stability timeout  -  by [@&#8203;sheremet-va](https://github.com/sheremet-va) in [#&#8203;11659](vitest-dev/vitest#11659) [<samp>(fbe37)</samp>](vitest-dev/vitest@fbe37c083)
  - Measure prepare duration with one clock  -  by [@&#8203;sheremet-va](https://github.com/sheremet-va) in [#&#8203;11667](vitest-dev/vitest#11667) [<samp>(a3ed4)</samp>](vitest-dev/vitest@a3ed42a14)
  - Keep failure screenshot per attempt  -  by [@&#8203;hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#&#8203;11694](vitest-dev/vitest#11694) [<samp>(a5022)</samp>](vitest-dev/vitest@a5022655d)
  - Print trace timeline of each attempt  -  by [@&#8203;hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#&#8203;11695](vitest-dev/vitest#11695) [<samp>(27229)</samp>](vitest-dev/vitest@272296e5d)
  - Don't hang in `page.viewport()`  -  by [@&#8203;sheremet-va](https://github.com/sheremet-va) in [#&#8203;11738](vitest-dev/vitest#11738) [<samp>(49ff4)</samp>](vitest-dev/vitest@49ff4420c)
  - Skip trace entries after their attempt ended  -  by [@&#8203;hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#&#8203;11771](vitest-dev/vitest#11771) [<samp>(7a56f)</samp>](vitest-dev/vitest@7a56fea53)
  - Focus the iframe before clicking in playwright  -  by [@&#8203;sheremet-va](https://github.com/sheremet-va) in [#&#8203;11798](vitest-dev/vitest#11798) [<samp>(eb20a)</samp>](vitest-dev/vitest@eb20a3af1)
  - Fail the run when a tester cannot connect  -  by [@&#8203;sheremet-va](https://github.com/sheremet-va) in [#&#8203;11802](vitest-dev/vitest#11802) [<samp>(605bf)</samp>](vitest-dev/vitest@605bf22b7)
  - Treat edge as chromium in toHaveStyle  -  by [@&#8203;aliamanatali](https://github.com/aliamanatali) in [#&#8203;11813](vitest-dev/vitest#11813) [<samp>(f4dd9)</samp>](vitest-dev/vitest@f4dd97652)
- **cache**:
  - Handle concurrent cache clearing  -  by [@&#8203;7rulnik](https://github.com/7rulnik) in [#&#8203;11697](vitest-dev/vitest#11697) [<samp>(09076)</samp>](vitest-dev/vitest@090766a42)
  - Key module cache on the deps optimizer  -  by [@&#8203;MO2k4](https://github.com/MO2k4) and **Martin Oehlert** in [#&#8203;11775](vitest-dev/vitest#11775) [<samp>(52485)</samp>](vitest-dev/vitest@524856ed0)
  - Do not fail when the cache dir is unwritable  -  by [@&#8203;ezefernandezyf](https://github.com/ezefernandezyf) in [#&#8203;11781](vitest-dev/vitest#11781) [<samp>(274ab)</samp>](vitest-dev/vitest@274ab70c4)
- **cli**:
  - Use camelCase for sinceLastRun help  -  by [@&#8203;fengmk2](https://github.com/fengmk2) in [#&#8203;11707](vitest-dev/vitest#11707) [<samp>(5c674)</samp>](vitest-dev/vitest@5c674859b)
- **coverage**:
  - V8 `autoAttachSubprocess` to use `.tmp` directory  -  by [@&#8203;AriPerkkio](https://github.com/AriPerkkio) in [#&#8203;11632](vitest-dev/vitest#11632) [<samp>(de5af)</samp>](vitest-dev/vitest@de5af2939)
  - V8 to ignore Vite's generated CJS namespace import helper  -  by [@&#8203;AriPerkkio](https://github.com/AriPerkkio) in [#&#8203;11676](vitest-dev/vitest#11676) [<samp>(5901f)</samp>](vitest-dev/vitest@5901fb458)
- **deps**:
  - Update all non-major dependencies  -  by [@&#8203;sheremet-va](https://github.com/sheremet-va) in [#&#8203;11637](vitest-dev/vitest#11637) [<samp>(2b18e)</samp>](vitest-dev/vitest@2b18e3724)
- **expect**:
  - Keep soft .resolves/.rejects error location  -  by [@&#8203;hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#&#8203;11792](vitest-dev/vitest#11792) [<samp>(42770)</samp>](vitest-dev/vitest@42770759f)
- **mocker**:
  - Don't change the original prototype chain  -  by [@&#8203;sheremet-va](https://github.com/sheremet-va) and **Max Schwenk** in [#&#8203;11737](vitest-dev/vitest#11737) [<samp>(cca42)</samp>](vitest-dev/vitest@cca423de9)
  - Use root **mocks** for linked packages  -  by [@&#8203;sheremet-va](https://github.com/sheremet-va) in [#&#8203;7708](vitest-dev/vitest#7708) and [#&#8203;11739](vitest-dev/vitest#11739) [<samp>(810ec)</samp>](vitest-dev/vitest@810ec66e1)
- **runner**:
  - Don't drop throttled task updates  -  by [@&#8203;sheremet-va](https://github.com/sheremet-va) in [#&#8203;11795](vitest-dev/vitest#11795) [<samp>(8e837)</samp>](vitest-dev/vitest@8e837b87a)
- **ui**:
  - Escape search text in explorer highlight  -  by [@&#8203;sheremet-va](https://github.com/sheremet-va) in [#&#8203;11672](vitest-dev/vitest#11672) [<samp>(3c6d6)</samp>](vitest-dev/vitest@3c6d6dd24)
  - Fix html reporter crash when --bail cancels files  -  by [@&#8203;hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#&#8203;11693](vitest-dev/vitest#11693) [<samp>(36a5f)</samp>](vitest-dev/vitest@36a5fa132)
  - Fix quirks mode in trace view replay  -  by [@&#8203;hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#&#8203;11744](vitest-dev/vitest#11744) [<samp>(b9b73)</samp>](vitest-dev/vitest@b9b73596c)
  - Let coverage report follow UI color scheme  -  by [@&#8203;AriPerkkio](https://github.com/AriPerkkio) in [#&#8203;11765](vitest-dev/vitest#11765) [<samp>(59c2d)</samp>](vitest-dev/vitest@59c2dd3a7)
  - Open trace view only for tests with a trace  -  by [@&#8203;hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#&#8203;11770](vitest-dev/vitest#11770) [<samp>(c022d)</samp>](vitest-dev/vitest@c022d630f)
- **vm**:
  - Strip hashbang before compiling CommonJS dependencies  -  by [@&#8203;cwoebker](https://github.com/cwoebker) in [#&#8203;11731](vitest-dev/vitest#11731) [<samp>(1a77c)</samp>](vitest-dev/vitest@1a77c6cbc)
  - Keep node globals after teardown  -  by [@&#8203;francesco-agnoletto](https://github.com/francesco-agnoletto) in [#&#8203;11380](vitest-dev/vitest#11380) and [#&#8203;11681](vitest-dev/vitest#11681) [<samp>(a57b4)</samp>](vitest-dev/vitest@a57b4d8a3)
  - Reset fake timers after each test file  -  by [@&#8203;francesco-agnoletto](https://github.com/francesco-agnoletto) in [#&#8203;11679](vitest-dev/vitest#11679) and [#&#8203;11779](vitest-dev/vitest#11779) [<samp>(78c46)</samp>](vitest-dev/vitest@78c46acdf)
  - Keep assignable accessor globals writable in node environment  -  by [@&#8203;MO2k4](https://github.com/MO2k4) and **Martin Oehlert** in [#&#8203;11834](vitest-dev/vitest#11834) [<samp>(a5ec3)</samp>](vitest-dev/vitest@a5ec316f8)

#####    🏎 Performance

- Reuse fsModuleCache in static collection  -  by [@&#8203;sheremet-va](https://github.com/sheremet-va) in [#&#8203;11622](vitest-dev/vitest#11622) [<samp>(1766c)</samp>](vitest-dev/vitest@1766c257d)
- Cache setup/mock resolves in reused workers  -  by [@&#8203;hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#&#8203;11760](vitest-dev/vitest#11760) [<samp>(5de10)</samp>](vitest-dev/vitest@5de103a9c)
- Don't refetch warm modules in reused runners  -  by [@&#8203;hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#&#8203;11761](vitest-dev/vitest#11761) [<samp>(4f135)</samp>](vitest-dev/vitest@4f135cc1d)
- **browser**:
  - Map only first frame for trace locations  -  by [@&#8203;hi-ogawa](https://github.com/hi-ogawa) and **Claude Opus 5.5 (1M context)** in [#&#8203;11613](vitest-dev/vitest#11613) [<samp>(a967d)</samp>](vitest-dev/vitest@a967d8f39)
  - Disable WebSocketServer's allowSynchronousEvents  -  by [@&#8203;nstepien](https://github.com/nstepien) in [#&#8203;11794](vitest-dev/vitest#11794) [<samp>(d4572)</samp>](vitest-dev/vitest@d4572032f)
- **coverage**:
  - Istanbul to use `magic-string`+`rolldown` for instrumentation  -  by [@&#8203;AriPerkkio](https://github.com/AriPerkkio) in [#&#8203;11648](vitest-dev/vitest#11648) [<samp>(2470b)</samp>](vitest-dev/vitest@2470befec)
  - Istanbul to collect uncovered files in `Promise.all`  -  by [@&#8203;AriPerkkio](https://github.com/AriPerkkio) in [#&#8203;11713](vitest-dev/vitest#11713) [<samp>(f1092)</samp>](vitest-dev/vitest@f1092b34b)
  - Istanbul to not store input source maps in coverage data  -  by [@&#8203;AriPerkkio](https://github.com/AriPerkkio) in [#&#8203;11686](vitest-dev/vitest#11686) [<samp>(2debb)</samp>](vitest-dev/vitest@2debb4e51)
- **expect**:
  - Compare typed arrays in one loop  -  by [@&#8203;sheremet-va](https://github.com/sheremet-va) in [#&#8203;11658](vitest-dev/vitest#11658) [<samp>(908eb)</samp>](vitest-dev/vitest@908eb573f)

#####     [View changes on GitHub](vitest-dev/vitest@v5.0.5...v5.1.0)

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - "before 9am on tuesday"
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about these updates again.

---

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

---

This PR has been generated by [Mend Renovate CLI](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4yMDYuMiIsInVwZGF0ZWRJblZlciI6IjQ0LjIwNi4yIiwidGFyZ2V0QnJhbmNoIjoiZGV2ZWxvcCIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiLCJyZW5vdmF0ZSJdfQ==-->

Reviewed-on: https://code.futo.org/harbor/harbor/pulls/2269
@github-actions github-actions Bot locked and limited conversation to collaborators Nov 12, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants