5.0.4
🚀 Features
- experimental:
- Tag cache directories with CACHEDIR.TAG - by @lifeiscontent in https://github.com/vitest-dev/vitest/issues/11461 (a8ea3)
- Support
test.ui.themeoption - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/11499 (1da66) - Highlight selector multiple matches in trace view - by @hi-ogawa, Hiroshi Ogawa and Claude Opus 5.5 in https://github.com/vitest-dev/vitest/issues/11489 (5abba)
- Print how many tests were affected and a total when running
--changed- by @sheremet-va in https://github.com/vitest-dev/vitest/issues/11424 (a2336) - Add an option to cache dependencies instead of statically parsing them - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/11515 (c0601)
- Add fit and zoom controls to trace viewer - by @hi-ogawa, Hiroshi Ogawa and Claude Opus 5.5 in https://github.com/vitest-dev/vitest/issues/11490 (f5dd9)
🐞 Bug Fixes
- Fail the run on git and location filter errors - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/11430 (30d03)
- Enable fsModuleCache by default - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/11435 (ad208)
- Track project files and mocks with --changed - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/11432 (b0f2b)
- Refactor caching, fix
:in project and change the shape ofresultscache - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/11453 (9673c) - Keep full
$string values whentaskTitleValueFormatTruncateis 0 - by @hi-ogawa, Hiroshi Ogawa and Claude Opus 5.5 in https://github.com/vitest-dev/vitest/issues/11485 (4f7e1) - Resolve node builtins in client environments - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/11417 (56b31)
- Fix module graph builtin externals after #11421 - by @hi-ogawa, Hiroshi Ogawa and Claude Opus 5.5 in https://github.com/vitest-dev/vitest/issues/11491 and https://github.com/vitest-dev/vitest/issues/11421 (008e1)
- Wrap module mocks during in-source testing - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/11505 (36d19)
- Handle line endings in snapshot - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/11522 (4c468)
- Respect root in projects - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/11521 (26642)
- Resolve mocks in directories with spaces - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/11539 (caaef)
- api:
- Publish the api token atomically - by @umairnawaz333 in https://github.com/vitest-dev/vitest/issues/11323 (6f990)
- browser:
- Close the mock route interception race - by @cplieger and @sheremet-va in https://github.com/vitest-dev/vitest/issues/8339 and https://github.com/vitest-dev/vitest/issues/11083 (d6620)
- Allow toHaveTextContent without arguments - by @nomadical in https://github.com/vitest-dev/vitest/issues/11425 (8ebcf)
- Apply API options without browser config - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/10852 (ad055)
- Preserve undefined command arguments - by @sheremet-va and @AriPerkkio in https://github.com/vitest-dev/vitest/issues/11497 (1576d)
- Wait for setup mocks before importing a test file - by @kasperpeulen in https://github.com/vitest-dev/vitest/issues/11520 (b61d1)
- Avoid extra scroll outside the iframe - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/11523 (662e8)
- Run browser instances as workers - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/11525 (bf04b)
- Open one cdp session per tester - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/11542 (69e63)
- Clean up unmocked and pending mocks - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/11537 (5c955)
- coverage:
- V8 browser memory leak between test files - by @AriPerkkio in https://github.com/vitest-dev/vitest/issues/11466 (2297d)
allowExternalfails to include uncovered files - by @AriPerkkio in https://github.com/vitest-dev/vitest/issues/11513 (4ef00)- Filenames containing brackets incorrectly showing as uncovered - by @AriPerkkio in https://github.com/vitest-dev/vitest/issues/11531 (0fa80)
- Istanbul coverage wrong when module transform warmups - by @AriPerkkio in https://github.com/vitest-dev/vitest/issues/11529 (9f61d)
- deps:
- Update all non-major dependencies - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/11167 (c74e0)
- expect:
- Fix
MapandSetdeep equality in some assertions - by @hi-ogawa, Hiroshi Ogawa and Claude Opus 5.5 in https://github.com/vitest-dev/vitest/issues/11402 (b4e79) - Check value in chai-style returned - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/11500 (1aca0)
- Fix
- mocker:
- Fix native loader mocking edge cases - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/11540 (cd423)
- pretty-format:
- Support boxed symbols - by @lehni in https://github.com/vitest-dev/vitest/issues/11445 and https://github.com/vitest-dev/vitest/issues/11446 (eba44)
- reporters:
- Junit to strip ANSI sequences from all XML attributes - by @meganemura and Claude Opus 5.5 in https://github.com/vitest-dev/vitest/issues/11407 (e1a73)
- runner:
- Don't cache failed fixture setups - by @hamed-bavar in https://github.com/vitest-dev/vitest/issues/11237 and https://github.com/vitest-dev/vitest/issues/11238 (4ee66)
- typecheck:
- Use typescript pool in toTestSpecification - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/11451 (5f273)
- ui:
- Remove duplicate browser-open call opening two tabs - by @feastyr69 in https://github.com/vitest-dev/vitest/issues/11356 and https://github.com/vitest-dev/vitest/issues/11358 (d7e13)
- Simplify explorer filtering + fix nested tests when search matches a suite - by @hi-ogawa, Hiroshi Ogawa, Codex and Claude Opus 5.5 in https://github.com/vitest-dev/vitest/issues/11262 (a627b)
- Store module graph once per environment - by @hi-ogawa, Hiroshi Ogawa and Claude Opus 5.5 in https://github.com/vitest-dev/vitest/issues/11421 (af903)
- Mount index.html handler on the ui base path - by @hi-ogawa, Hiroshi Ogawa and Claude Opus 5.5 in https://github.com/vitest-dev/vitest/issues/11517 (1bc24)
- Center split pane resize handle - by @hi-ogawa, Hiroshi Ogawa and Claude Opus 5.5 in https://github.com/vitest-dev/vitest/issues/11506 (e658b)
- vm:
- Bind
thistomodule.exports- by @sheremet-va in https://github.com/vitest-dev/vitest/issues/11504 (b618a)
- Bind
🏎 Performance
- Reuse fsModuleCache when filtering by source - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/11428 (7ebd9)
- spy: Reset only mocks that were called or reconfigured - by @johan-gorter and Claude Opus 5.5 in https://github.com/vitest-dev/vitest/issues/11197 (28ef9)