Impact Score: 5/10
Vitest v3.2.0 โ 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 v3.2.0. Source highlight: ๐ 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 (6)
- Provide `ctx.signal` - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/7878 <samp>(e761f)</samp>
- Support custom colors for `test.name` - by @AriPerkkio in https://github.com/vitest-dev/vitest/issues/7809 <samp>(4af5d)</samp>
- Add `vi.mockObject` to automock any object - by @hi-ogawa and @sheremet-va in https://github.com/vitest-dev/vitest/issues/7761 <samp>(465bd)</samp>
- Introduce `watchTriggerPatterns` option - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/7778 <samp>(a0675)</samp>
- Deprecate `workspace` in favor of `projects` - by @sheremet-va and @AriPerkkio in https://github.com/vitest-dev/vitest/issues/7923 <samp>(41beb)</samp>
- Explicit Resource Management support in mocked functions - by @EskiMojo14 in https://github.com/vitest-dev/vitest/issues/7927 <samp>(b67d3)</samp>
๐ง Bug Fixes & Patches (6)
- Replace `micromatch` with `picomatch` - by @sapphi-red in https://github.com/vitest-dev/vitest/issues/7951 <samp>(df076)</samp>
- Try to catch unhandled error outside of a test - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/7968 <samp>(46421)</samp>
- Generate a separate config for "vitest init browser" instead of a workspace file - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/7934 <samp>(e84e2)</samp>
- Switch ExpectStatic `any` types to `AsymmetricMatcher<unknown>`, with `DeeplyAllowMatchers<T>` - by @JoshuaKGoldberg in https://github.com/vitest-dev/vitest/issues/7016 <samp>(8ec44)</samp>
- Remove unused exports - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/7618 <samp>(33d05)</samp>
- Throw an error if typechecker failed to spawn - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/7990 <samp>(0e960)</samp>
๐ View Raw Release Notes (Original Developer Log)
### ๐ Features
- Provide `ctx.signal` - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/7878 [<samp>(e761f)</samp>](https://github.com/vitest-dev/vitest/commit/e761f27d7)
- Support custom colors for `test.name` - by @AriPerkkio in https://github.com/vitest-dev/vitest/issues/7809 [<samp>(4af5d)</samp>](https://github.com/vitest-dev/vitest/commit/4af5df33b)
- Add `vi.mockObject` to automock any object - by @hi-ogawa and @sheremet-va in https://github.com/vitest-dev/vitest/issues/7761 [<samp>(465bd)</samp>](https://github.com/vitest-dev/vitest/commit/465bdb3d7)
- Introduce `watchTriggerPatterns` option - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/7778 [<samp>(a0675)</samp>](https://github.com/vitest-dev/vitest/commit/a067531ac)
- Deprecate `workspace` in favor of `projects` - by @sheremet-va and @AriPerkkio in https://github.com/vitest-dev/vitest/issues/7923 [<samp>(41beb)</samp>](https://github.com/vitest-dev/vitest/commit/41beb261e)
- Explicit Resource Management support in mocked functions - by @EskiMojo14 in https://github.com/vitest-dev/vitest/issues/7927 [<samp>(b67d3)</samp>](https://github.com/vitest-dev/vitest/commit/b67d307de)
- Add `sequence.groupOrder` option - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/7852 [<samp>(d1a1d)</samp>](https://github.com/vitest-dev/vitest/commit/d1a1df036)
- Initial support for Temporal equality - by @dirkluijk in https://github.com/vitest-dev/vitest/issues/8007 [<samp>(52bd7)</samp>](https://github.com/vitest-dev/vitest/commit/52bd78965)
- Support Vite 7 - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/8003 [<samp>(1716b)</samp>](https://github.com/vitest-dev/vitest/commit/1716b61c5)
- Track module execution totalTime and selfTime - by @abrenneke in https://github.com/vitest-dev/vitest/issues/8027 [<samp>(95961)</samp>](https://github.com/vitest-dev/vitest/commit/95961e40a)
- Annotation API - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/7953 [<samp>(b03f2)</samp>](https://github.com/vitest-dev/vitest/commit/b03f2098a)
- **browser**:
- Implement `connect` option for `playwright` browser provider - by @egfx-notifications and @sheremet-va in https://github.com/vitest-dev/vitest/issues/7915 [<samp>(029c0)</samp>](https://github.com/vitest-dev/vitest/commit/029c0788c)
- Add `screenshot.save` option - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/7777 [<samp>(d9f51)</samp>](https://github.com/vitest-dev/vitest/commit/d9f516353)
- Custom locators API - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/7993 [<samp>(e6fbd)</samp>](https://github.com/vitest-dev/vitest/commit/e6fbd8d25)
- **coverage**:
- V8 experimental AST-aware remapping - by @AriPerkkio in https://github.com/vitest-dev/vitest/issues/7736 [<samp>(78a3d)</samp>](https://github.com/vitest-dev/vitest/commit/78a3d2787)
- **reporter**:
- Add `onWritePath` option to `github-actions` - by @nwalters512 and @AriPerkkio in https://github.com/vitest-dev/vitest/issues/8015 [<samp>(abd3b)</samp>](https://github.com/vitest-dev/vitest/commit/abd3bb76a)
- **vitest**:
- Allow per-file and per-worker fixtures - by @sheremet-va and @AriPerkkio in https://github.com/vitest-dev/vitest/issues/7704 [<samp>(9cbfc)</samp>](https://github.com/vitest-dev/vitest/commit/9cbfc231a)
### ๐ Bug Fixes
- Replace `micromatch` with `picomatch` - by @sapphi-red in https://github.com/vitest-dev/vitest/issues/7951 [<samp>(df076)</samp>](https://github.com/vitest-dev/vitest/commit/df07611f0)
- Try to catch unhandled error outside of a test - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/7968 [<samp>(46421)</samp>](https://github.com/vitest-dev/vitest/commit/464218f42)
- Generate a separate config for "vitest init browser" instead of a workspace file - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/7934 [<samp>(e84e2)</samp>](https://github.com/vitest-dev/vitest/commit/e84e2184e)
- Switch ExpectStatic `any` types to `AsymmetricMatcher<unknown>`, with `DeeplyAllowMatchers<T>` - by @JoshuaKGoldberg in https://github.com/vitest-dev/vitest/issues/7016 [<samp>(8ec44)</samp>](https://github.com/vitest-dev/vitest/commit/8ec448db6)
- Remove unused exports - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/7618 [<samp>(33d05)</samp>](https://github.com/vitest-dev/vitest/commit/33d053852)
- Throw an error if typechecker failed to spawn - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/7990 [<samp>(0e960)</samp>](https://github.com/vitest-dev/vitest/commit/0e960aa78)
- Ignore non-string `stack` properties - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/7995 [<samp>(330f9)</samp>](https://github.com/vitest-dev/vitest/commit/330f9a40b)
- Apply browser CLI options only if the project has the browser set in the config already - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/7984 [<samp>(70358)</samp>](https://github.com/vitest-dev/vitest/commit/703581b62)
- Ensure errors keep their message and stack after `toJSON` serialisation - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/8053 [<samp>(3bdf0)</samp>](https://github.com/vitest-dev/vitest/commit/3bdf05d19)
- **browser**:
- Resolve FS commands relative to the project root - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/7896 [<samp>(69ac9)</samp>](https://github.com/vitest-dev/vitest/commit/69ac92cb7)
- Run tests serially if provider doesn't provide a mocker - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/8032 [<samp>(227a9)</samp>](https://github.com/vitest-dev/vitest/commit/227a992ad)
- Resolve `upload` files relative to the project root - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/8042 [<samp>(b9a31)</samp>](https://github.com/vitest-dev/vitest/commit/b9a312a8a)
- Await mocker invalidation to avoid race condition with "mock wasn't registered" - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/8021 [<samp>(b34ff)</samp>](https://github.com/vitest-dev/vitest/commit/b34ffada3)
- Share vite cache with the project cache - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/8049 [<samp>(0cbad)</samp>](https://github.com/vitest-dev/vitest/commit/0cbad1b0d)
- Add `this` type to `locators.extend` - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/8069 [<samp>(70fb0)</samp>](https://github.com/vitest-dev/vitest/commit/70fb03c38)
- **cache**:
- Preserve test results from previous runs - by @macko911 in https://github.com/vitest-dev/vitest/issues/8043 [<samp>(d6ef0)</samp>](https://github.com/vitest-dev/vitest/commit/d6ef0da11)
- **cli**:
- Add built-in reporters list to --help output - by @pengooseDev in https://github.com/vitest-dev/vitest/issues/7955 [<samp>(ef6ef)</samp>](https://github.com/vitest-dev/vitest/commit/ef6ef542b)
- Parse `--silent` values properly - by @AriPerkkio in https://github.com/vitest-dev/vitest/issues/8055 [<samp>(8fad7)</samp>](https://github.com/vitest-dev/vitest/commit/8fad73563)
- **coverage**:
- Istanbul provider to not use Vite preserved query params - by @AriPerkkio in https://github.com/vitest-dev/vitest/issues/7939 [<samp>(a05d4)</samp>](https://github.com/vitest-dev/vitest/commit/a05d48c25)
- Browser + v8 in source tests missing - by @AriPerkkio in https://github.com/vitest-dev/vitest/issues/7946 [<samp>(51cd8)</samp>](https://github.com/vitest-dev/vitest/commit/51cd81444)
- In-source test cases excluded - by @AriPerkkio in https://github.com/vitest-dev/vitest/issues/7985 [<samp>(407c0)</samp>](https://github.com/vitest-dev/vitest/commit/407c0e4d2)
- **dev**:
- Fix relay of custom equality testers - by @StefanLiebscher in https://github.com/vitest-dev/vitest/issues/6140 [<samp>(6dc1d)</samp>](https://github.com/vitest-dev/vitest/commit/6dc1d1858)
- **expect**:
- Unbundle `@types/chai` - by @hi-ogawa in https://github.com/vitest-dev/vitest/issues/7937 [<samp>(525f5)</samp>](https://github.com/vitest-dev/vitest/commit/525f524c7)
- Support type-safe declaration of custom matchers - by @kettanaito and @sheremet-va in https://github.com/vitest-dev/vitest/issues/7656 [<samp>(e996b)</samp>](https://github.com/vitest-dev/vitest/commit/e996b4103)
- **reporters**:
- Check the test result again when tests are rerunning - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/8063 [<samp>(35e31)</samp>](https://github.com/vitest-dev/vitest/commit/35e313f8c)
- **spy**:
- Copy over static properties from the function - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/7780 [<samp>(9b9f0)</samp>](https://github.com/vitest-dev/vitest/commit/9b9f09bcb)
- **typecheck**:
- Don't panic during `vitest list` command - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/7933 [<samp>(ba6da)</samp>](https://github.com/vitest-dev/vitest/commit/ba6da4d07)
- Avoid creating a temporary tsconfig file when typechecking - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/7967 [<samp>(34f43)</samp>](https://github.com/vitest-dev/vitest/commit/34f43ae68)
- **vite-node**:
- Add `__vite_ssr_exportName__` - by @hi-ogawa in https://github.com/vitest-dev/vitest/issues/7925 [<samp>(76091)</samp>](https://github.com/vitest-dev/vitest/commit/76091074a)
- **vitest**:
- Adjust `getWorkerMemoryLimit` priority for vmForks - by @pengooseDev in https://github.com/vitest-dev/vitest/issues/7960 [<samp>(5a91e)</samp>](https://github.com/vitest-dev/vitest/commit/5a91eca20)
- **wdio**:
- Don't scale browser in headless mode - by @sheremet-va in https://github.com/vitest-dev/vitest/issues/8033 [<samp>(c23b0)</samp>](https://github.com/vitest-dev/vitest/commit/c23b0f78f)
##### [View changes on GitHub](https://github.com/vitest-dev/vitest/compare/v3.1.3...v3.2.0)