$
npx @buildinternet/releases get vitestRecently Shipped6 releases · updated Oct 13, 2026
Recently shipped Vitest 5.0.4 with trace-view selector highlighting, a --changed test count, and a test.ui.theme option.
Trace view got sharper. When several elements match a selector in trace view, each match is now highlighted. The attempts selector sits in the viewer header, with a focused layout mode that collapses surrounding chrome. Trace state persists across keyboard navigation of steps, with links out to Playwright traces, and the VS Code extension opens trace view directly.
--changed now says how much it touched. Runs print the number of affected tests plus a total.
Config and defaults kept moving.
- A
test.ui.themeoption sets the UI theme. - Cache directories can be tagged with
CACHEDIR.TAG. - Assertion inspection uses pretty-format;
test.for/each$titles no longer quote string values. - Attachments moved to
.vitest/attachments/. - Nested projects are supported,
clearCacheandparseSpecificationsgraduated out of experimental, and coverage runs on@vitest/istanbuljs.
Patch wrap-up. v5.0.2 and v5.0.3 bound process when a global overwrites it, fixed toMatchObject with asymmetric matchers, isolated result.status between repeats runs, and stopped retrying when test.fails already failed. The VS Code extension no longer crashes on newer editor versions.
fsModuleCache now on by default; trace viewer gets fit and zoom
This release6 featuresNew capabilities1 enhancementImprovements to existing features25 fixesBug fixesAI-tallied from the release notesvitest · v5.0.4
fsModuleCache is now enabled by default, and the trace viewer gains fit and zoom controls plus highlighting of multiple selector matches. Fixed coverage memory leaks, V8 browser leak between test files, module mock resolution in directories with spaces, and Map/Set deep equality in assertions.
vscode · v1.52.2
No significant changes
View changes on GitHub
Browser mock paths checked; repeat-run status isolated
This release16 fixesBug fixesAI-tallied from the release notesvitest · v5.0.3
Fixed result.status leaking between repeats runs and mock path boundary checks in browser mode, where configs of browser-consumed environments are now kept and the server listen is delayed until tests start. Also revalidates imports of cached modules and scopes cache key generators to projects.
Crash in new VS Code version fixed; coverage failures prevented
This release4 fixesBug fixesAI-tallied from the release notesvscode · v1.52.1
Fixes a crash occurring in the new VS Code version, prevents failures on unexpected coverage output, and corrects watcher scoping and setup timing.
toMatchObject asymmetric matchers fixed; spy stack overflow fixed
This release9 fixesBug fixesAI-tallied from the release notesvitest · v5.0.2
Fixed toMatchObject handling of asymmetric matchers and a stack overflow when spying Set.prototype.add. Also fixes jsdom 28+ Request with Blob body, concurrent createReport calls, agent reporter --silent, and UI auth cookie persistence.
vitest list exits 1 on collection failure; deepMerge prototype fixed
This release2 featuresNew capabilities1 enhancementImprovements to existing features16 fixesBug fixesAI-tallied from the release notesvitest · v5.0.1
vitest list now exits with code 1 when collection fails, parse error details are preserved in static collection, and deepMerge no longer mishandles prototypes. Also adds a focused trace view layout mode and a trace attempts selector in the UI header, plus a warning when the deprecated deps.optimizer.web is used.
Trace view support; Vitest 5 name pattern fixes
This release1 featureNew capabilities2 fixesBug fixesAI-tallied from the release notesvscode · v1.52.0
Adds a trace view for debugging and fixes compatibility with Vitest 5's testNamePattern. Also fixes an issue with the legacy AST collector ignoring computed member calls from esbuild's using helper.
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 for the official announcement.
🚨 Breaking Changes
- Replace…
vitest list now parses files statically
preThis release2 featuresNew capabilities1 enhancementImprovements to existing features5 fixesBug fixesAI-tallied from the release notesvitest · v5.0.0-rc.4
vitest list now parses files statically by default, replacing the previous behavior that relied on running the test files. Also promotes clearCache out of experimental, adds a link to open Playwright traces in the UI, and includes several bug fixes.
parseSpecifications stable; UI trace improvements land
preThis release2 featuresNew capabilities4 enhancementsImprovements to existing features14 fixesBug fixesAI-tallied from the release notesvitest · v5.0.0-rc.3
parseSpecifications is no longer experimental. Coverage now uses @vitest/istanbuljs packages, and UI features include source-location highlighting and keyboard navigation for trace steps. Several bug fixes roll in across browser, coverage, snapshot, and worker handling.
Global concurrency revived; mock redirects allowlisted
This release4 fixesBug fixesAI-tallied from the release notesvitest · v4.1.11
Revived the global concurrency limit for test lifecycle in a backport to v4. Also backported fixes that encode iframeId in tester iframe URLs, trigger playwright/chromium gc on low disk availability, and restrict redirect mocks to the fs allowlist.
Browser tests fail instead of hanging; GHA report title customizable
preThis release1 featureNew capabilities15 fixesBug fixesAI-tallied from the release notesvitest · v5.0.0-rc.2
Browser tests now fail instead of hanging when the browser stops responding, and the GitHub Actions reporter supports a custom summary title and displays test names. Multiple fixes across browser, pool, and UI, including requiring auth for coverage report requests and preserving the root during config resolution.
Assertions must be awaited; inline projects extend root config; nested projects supported
preThis release3 featuresNew capabilities8 enhancementsImprovements to existing features18 fixesBug fixesAI-tallied from the release notesvitest · v5.0.0-rc.1
Tests now fail when an asynchronous assertion is not awaited, inline projects extend the root config by default, and nested projects are now supported. Also enables Temporal mocking without fake timers, uses > as separator in -t test filtering, shares the Vite server between inline projects, and preserves class mock prototype methods on instances.
Config resolution decoupled from server; pluggable benchmark API
preThis release4 featuresNew capabilities10 enhancementsImprovements to existing features13 fixesBug fixesAI-tallied from the release notesvitest · v5.0.0-beta.7
Config resolution is now separated from server creation, a breaking change for programmatic usage. New features include a pluggable benchmark provider API, toggable injectCjsGlobals option, and performance improvements through warm modules, Node compile cache, and bundled dependencies.
Diagnostics now labeled as "Vitest"
This release1 fixBug fixesAI-tallied from the release notesvscode · v1.50.8
Diagnostic entries are now tagged with source="Vitest" instead of the default, making them identifiable in the Problems panel and other tooling.