Impact Score: 5/10
Vitest v4.0.14 โ Release Notes & Engineering Impact
Source available โ automated, not human-reviewed
Component: vitest ยท Channel: stable. Automated analysis, not a compatibility certification. How this works.
Analysis updated: 2026-11-01.
โก Executive Summary (TL;DR)
Vitest v4.0.14. Source highlight: ๐ Experimental Features
Who Does This Impact? (Role-Based Analysis)
๐ป Software Engineers & Devs
Check the source notes against the package and APIs you use before upgrading.
๐ Product & Engineering Leads
Use the documented changes to assess relevance to your product; release frequency alone is not a quality measure.
โ๏ธ DevOps & Security
Verify the target version, runtime requirements and rollback procedure in the official documentation.
โจ New Features & Capabilities (3)
- **browser**: Expose `utils.configurePrettyDOM` - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/9103 <samp>(2cc34)</samp>
- **runner**: Add full names to tasks - by @macarie in https://github.com/vitest-dev/vitest/issues/9087 <samp>(821aa)</samp>
- **ui**: Add tabbed failure view for `toMatchScreenshot` with comparison slider - by @macarie in https://github.com/vitest-dev/vitest/issues/8813 <samp>(c37c2)</samp>
๐ง Bug Fixes & Patches (6)
- Externalize before caching - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/9077 <samp>(e1b2e)</samp>
- Collect the duration of external imports - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/9097 <samp>(3326c)</samp>
- Rename `collect` to `import`, remove `prepare` - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/9091 <samp>(1256b)</samp>
- Unsubscribe `onCancel` on rpc destroy - by @AriPerkkio in https://github.com/vitest-dev/vitest/issues/9088 <samp>(f5b72)</samp>
- Revert the viewport scaling in non-ui mode #9018 - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/9072 and https://github.com/vitest-dev/vitest/issues/9018 <samp>(64502)</samp>
- Invalidate circular modules correctly on rerun with coverage - by @aicest in https://github.com/vitest-dev/vitest/issues/9096 <samp>(6f22c)</samp>
๐ View Raw Release Notes (Original Developer Log)
### ๐ Experimental Features
- **browser**: Expose `utils.configurePrettyDOM` - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/9103 [<samp>(2cc34)</samp>](https://github.com/vitest-dev/vitest/commit/2cc34e0d4)
- **runner**: Add full names to tasks - by @macarie in https://github.com/vitest-dev/vitest/issues/9087 [<samp>(821aa)</samp>](https://github.com/vitest-dev/vitest/commit/821aa2002)
- **ui**: Add tabbed failure view for `toMatchScreenshot` with comparison slider - by @macarie in https://github.com/vitest-dev/vitest/issues/8813 [<samp>(c37c2)</samp>](https://github.com/vitest-dev/vitest/commit/c37c2eb0b)
### ๐ Bug Fixes
- Externalize before caching - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/9077 [<samp>(e1b2e)</samp>](https://github.com/vitest-dev/vitest/commit/e1b2e086a)
- Collect the duration of external imports - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/9097 [<samp>(3326c)</samp>](https://github.com/vitest-dev/vitest/commit/3326cc9f4)
- Rename `collect` to `import`, remove `prepare` - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/9091 [<samp>(1256b)</samp>](https://github.com/vitest-dev/vitest/commit/1256b5ca3)
- **browser**:
- Unsubscribe `onCancel` on rpc destroy - by @AriPerkkio in https://github.com/vitest-dev/vitest/issues/9088 [<samp>(f5b72)</samp>](https://github.com/vitest-dev/vitest/commit/f5b72374b)
- Revert the viewport scaling in non-ui mode #9018 - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/9072 and https://github.com/vitest-dev/vitest/issues/9018 [<samp>(64502)</samp>](https://github.com/vitest-dev/vitest/commit/64502a2c4)
- **coverage**:
- Invalidate circular modules correctly on rerun with coverage - by @aicest in https://github.com/vitest-dev/vitest/issues/9096 [<samp>(6f22c)</samp>](https://github.com/vitest-dev/vitest/commit/6f22c675f)
- **expect**:
- Allow function as standard schema - by @hi-ogawa in https://github.com/vitest-dev/vitest/issues/9099 [<samp>(ed8a2)</samp>](https://github.com/vitest-dev/vitest/commit/ed8a2ebbd)
- **jsdom**:
- Reuse abort signals if possible - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/9090 [<samp>(2c468)</samp>](https://github.com/vitest-dev/vitest/commit/2c468ee95)
- **pool**:
- Init `VITEST_POOL_ID` + `VITEST_WORKER_ID` before environment setup - by @AriPerkkio in https://github.com/vitest-dev/vitest/issues/9085 [<samp>(37918)</samp>](https://github.com/vitest-dev/vitest/commit/379185b40)
- **web-worker**:
- `postMessage` to send ports to workers - by @whitphx and @AriPerkkio in https://github.com/vitest-dev/vitest/issues/9078 [<samp>(9d176)</samp>](https://github.com/vitest-dev/vitest/commit/9d1763d11)
### ๐ Performance
- Replace `debug` with `obug` - by @sxzz and @AriPerkkio in https://github.com/vitest-dev/vitest/issues/9057 [<samp>(acc51)</samp>](https://github.com/vitest-dev/vitest/commit/acc5152b9)
##### [View changes on GitHub](https://github.com/vitest-dev/vitest/compare/v4.0.13...v4.0.14)