vitest-dev/vitest
### [`v0.32.0`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.32.0)
[Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.31.4...v0.32.0)
##### 🚨 Breaking Changes
- Throw an error, if the module cannot be resolved - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3307](https://togithub.com/vitest-dev/vitest/issues/3307) [(1ad63)](https://togithub.com/vitest-dev/vitest/commit/1ad63b0c)
- Vitest used to fall back to the original import when it could not resolve it to the file path or the virtual module. This leads to hard-to-find module graph mismatches if you had incorrect alias or relied on relative imports to be resolved to the project root (which is usual behavior in TypeScript) because the code accidentally "worked". With this release, Vitest will now throw an error if it cannot resolve the module - there are possible edge cases that are not covered yet, so if you have any problems with this, please open a separate issue with reproduction.
- Improve globs - by [@nickmccurdy](https://togithub.com/nickmccurdy) in [https://github.com/vitest-dev/vitest/issues/3392](https://togithub.com/vitest-dev/vitest/issues/3392) [(19ecc)](https://togithub.com/vitest-dev/vitest/commit/19ecc6c7)
- Vitest now has glob patterns similar to Jest for better compatibility. It's possible that some files will be considered test files when previously they were not. For example, Vitest now considers `test.js` to be a test file. Also any file in `__tests__` is now considered to be a test, not just files with `test` or `spec` suffix.
- Add `@vitest/coverage-v8` package - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3339](https://togithub.com/vitest-dev/vitest/issues/3339) [(82112)](https://togithub.com/vitest-dev/vitest/commit/821126f1)
- Vitest now uses v8 code coverage directly for better performance. `@vitest/coverage-c8` is deprecated as Vitest no longer uses c8 package for coverage output. It will not be updated anymore, and Vitest will fail in the next version if the user has `c8` as their coverage provider. Please, install the new `@vitest/coverage-v8` package if you previously used `@vitest/coverage-c8`.
- **mocker**: Don't restore mock to the original if the module is automocked - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3518](https://togithub.com/vitest-dev/vitest/issues/3518) [(c1004)](https://togithub.com/vitest-dev/vitest/commit/c1004e14)
- `spy.mockRestore` on auto-mocked named exports will no longer restore their implementation to the actual function. This behavior better matches what Jest does.
##### 🚀 Features
- Support ssr optimizer - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3490](https://togithub.com/vitest-dev/vitest/issues/3490) [(89842)](https://togithub.com/vitest-dev/vitest/commit/898422b0)
- Image type add apng - by [@btea](https://togithub.com/btea) in [https://github.com/vitest-dev/vitest/issues/3498](https://togithub.com/vitest-dev/vitest/issues/3498) [(a53c2)](https://togithub.com/vitest-dev/vitest/commit/a53c2151)
- **expect**: Support `expect.soft` - by [@Dunqing](https://togithub.com/Dunqing) in [https://github.com/vitest-dev/vitest/issues/3507](https://togithub.com/vitest-dev/vitest/issues/3507) [(7c687)](https://togithub.com/vitest-dev/vitest/commit/7c687ada)
- **runner**: Support using function/class as `describe`/`test` name - by [@fenghan34](https://togithub.com/fenghan34) in [https://github.com/vitest-dev/vitest/issues/3497](https://togithub.com/vitest-dev/vitest/issues/3497) [(15253)](https://togithub.com/vitest-dev/vitest/commit/15253890)
##### 🐞 Bug Fixes
- The cli option is passed to coverage.exclude - by [@btea](https://togithub.com/btea) in [https://github.com/vitest-dev/vitest/issues/3506](https://togithub.com/vitest-dev/vitest/issues/3506) [(c37cd)](https://togithub.com/vitest-dev/vitest/commit/c37cdebe)
- **optimizer**: Always respect optimizeDeps even if include/exclude is overridden - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3488](https://togithub.com/vitest-dev/vitest/issues/3488) [(eb285)](https://togithub.com/vitest-dev/vitest/commit/eb285ea0)
- **runner**: Ensure Vitest is deduped - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3489](https://togithub.com/vitest-dev/vitest/issues/3489) [(2deb7)](https://togithub.com/vitest-dev/vitest/commit/2deb70ab)
- **ui**: Don't cache coverage assets - by [@userquin](https://togithub.com/userquin) in [https://github.com/vitest-dev/vitest/issues/3508](https://togithub.com/vitest-dev/vitest/issues/3508) [(952b5)](https://togithub.com/vitest-dev/vitest/commit/952b5be6)
- **vite-node**: Circular import stuck - by [@Dunqing](https://togithub.com/Dunqing) in [https://github.com/vitest-dev/vitest/issues/3480](https://togithub.com/vitest-dev/vitest/issues/3480) [(50f07)](https://togithub.com/vitest-dev/vitest/commit/50f0700d)
- **watch**: Junit reporter fails to re-generate report - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3496](https://togithub.com/vitest-dev/vitest/issues/3496) [(5b73c)](https://togithub.com/vitest-dev/vitest/commit/5b73cbf8)
##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.31.4...v0.32.0)
### [`v0.31.4`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.31.4)
[Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.31.3...v0.31.4)
##### 🚀 Features
- Enable experimentalOptimizer - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3413](https://togithub.com/vitest-dev/vitest/issues/3413) [(5a894)](https://togithub.com/vitest-dev/vitest/commit/5a894aa2)
##### 🐞 Bug Fixes
- **vite-node**: Deps.inline doesn't work - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3485](https://togithub.com/vitest-dev/vitest/issues/3485) [(be930)](https://togithub.com/vitest-dev/vitest/commit/be93032f)
##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.31.3...v0.31.4)
### [`v0.31.3`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.31.3)
[Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.31.2...v0.31.3)
##### 🚀 Features
- Support `VITE_NODE_DEPS_MODULE_DIRECTORIES` from .npmrc - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3471](https://togithub.com/vitest-dev/vitest/issues/3471) [(393bf)](https://togithub.com/vitest-dev/vitest/commit/393bf60c)
##### 🐞 Bug Fixes
- **logger**: Print unhandled errors before summary - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3474](https://togithub.com/vitest-dev/vitest/issues/3474) [(4c9a7)](https://togithub.com/vitest-dev/vitest/commit/4c9a7d58)
- **runner**: Suite options do not propagate to nested suites (fix: [#3467](https://togithub.com/vitest-dev/vitest/issues/3467)) - by [@xsjcTony](https://togithub.com/xsjcTony) in [https://github.com/vitest-dev/vitest/issues/3473](https://togithub.com/vitest-dev/vitest/issues/3473) and [https://github.com/vitest-dev/vitest/issues/3467](https://togithub.com/vitest-dev/vitest/issues/3467) [(9fb9d)](https://togithub.com/vitest-dev/vitest/commit/9fb9dacb)
- **vite-node**: Clear importers when invalidating module - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3475](https://togithub.com/vitest-dev/vitest/issues/3475) [(add29)](https://togithub.com/vitest-dev/vitest/commit/add29c86)
##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.31.2...v0.31.3)
### [`v0.31.2`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.31.2)
[Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.31.1...v0.31.2)
##### 🚀 Features
- Throw error if using inline snapshot inside of `test.each` or `describe.each` - by [@fenghan34](https://togithub.com/fenghan34) and [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3360](https://togithub.com/vitest-dev/vitest/issues/3360) [(7c2f7)](https://togithub.com/vitest-dev/vitest/commit/7c2f7088)
- Pass down meta information to Node.js process - by [@sheremet-va](https://togithub.com/sheremet-va) and [@dammy001](https://togithub.com/dammy001) in [https://github.com/vitest-dev/vitest/issues/3449](https://togithub.com/vitest-dev/vitest/issues/3449) [(e39ad)](https://togithub.com/vitest-dev/vitest/commit/e39adea8)
- **coverage**: Add `reportOnFailure` option - by [@AriPerkkio](https://togithub.com/AriPerkkio) and [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3453](https://togithub.com/vitest-dev/vitest/issues/3453) [(1988f)](https://togithub.com/vitest-dev/vitest/commit/1988fcb4)
- **dev**: Add moduleDirectories option to the vitest config - by [@fooddilsn](https://togithub.com/fooddilsn) and [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3337](https://togithub.com/vitest-dev/vitest/issues/3337) [(b3602)](https://togithub.com/vitest-dev/vitest/commit/b3602bcc)
##### 🐞 Bug Fixes
- Don't print empty diff - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3437](https://togithub.com/vitest-dev/vitest/issues/3437) [(32b53)](https://togithub.com/vitest-dev/vitest/commit/32b5361f)
- Don't restore methods in automocked dependencies - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3438](https://togithub.com/vitest-dev/vitest/issues/3438) [(d1afd)](https://togithub.com/vitest-dev/vitest/commit/d1afd262)
- Dot reporter scrollback buffer spam - by [@gtm-nayan](https://togithub.com/gtm-nayan) in [https://github.com/vitest-dev/vitest/issues/3415](https://togithub.com/vitest-dev/vitest/issues/3415) [(e6792)](https://togithub.com/vitest-dev/vitest/commit/e6792a94)
- Gracefully exit when first `SIGINT` is received - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3407](https://togithub.com/vitest-dev/vitest/issues/3407) [(a2cc2)](https://togithub.com/vitest-dev/vitest/commit/a2cc2b38)
- `rejects` & `resolves` breaks with thenable objects - by [@fenghan34](https://togithub.com/fenghan34) in [https://github.com/vitest-dev/vitest/issues/3456](https://togithub.com/vitest-dev/vitest/issues/3456) [(4e996)](https://togithub.com/vitest-dev/vitest/commit/4e996ae5)
- Prevent `birpc` timeouts when `Math.random` mock is not restored - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3460](https://togithub.com/vitest-dev/vitest/issues/3460) [(cd5d5)](https://togithub.com/vitest-dev/vitest/commit/cd5d58b7)
- Assertion diff message now handle non writable property correctly - by [@PCreations](https://togithub.com/PCreations) in [https://github.com/vitest-dev/vitest/issues/3422](https://togithub.com/vitest-dev/vitest/issues/3422) [(f75ab)](https://togithub.com/vitest-dev/vitest/commit/f75ab650)
- Extend logging of process timeout errors - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3452](https://togithub.com/vitest-dev/vitest/issues/3452) [(42643)](https://togithub.com/vitest-dev/vitest/commit/42643904)
- Support requiring files with `less` extension - by [@rluvaton](https://togithub.com/rluvaton) in [https://github.com/vitest-dev/vitest/issues/3465](https://togithub.com/vitest-dev/vitest/issues/3465) [(4d045)](https://togithub.com/vitest-dev/vitest/commit/4d045695)
- **cli**:
- Improve colors used when erroring - by [@ghiscoding](https://togithub.com/ghiscoding) and [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3349](https://togithub.com/vitest-dev/vitest/issues/3349) [(16681)](https://togithub.com/vitest-dev/vitest/commit/16681791)
- **runner**:
- Suite timeout does not take effect - by [@btea](https://togithub.com/btea) in [https://github.com/vitest-dev/vitest/issues/3455](https://togithub.com/vitest-dev/vitest/issues/3455) [(82547)](https://togithub.com/vitest-dev/vitest/commit/82547376)
- **spy**:
- Don't print received calls if there are no calls - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3405](https://togithub.com/vitest-dev/vitest/issues/3405) [(41e11)](https://togithub.com/vitest-dev/vitest/commit/41e11dad)
- **typecheck**:
- Show tsc errors not related to test files - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3441](https://togithub.com/vitest-dev/vitest/issues/3441) [(a1da5)](https://togithub.com/vitest-dev/vitest/commit/a1da5714)
- **types**:
- Fix `PartialMock` with async TReturns - by [@ghry5](https://togithub.com/ghry5) in [https://github.com/vitest-dev/vitest/issues/3462](https://togithub.com/vitest-dev/vitest/issues/3462) [(b664d)](https://togithub.com/vitest-dev/vitest/commit/b664d42c)
- **vite-node**:
- Circular import stuck - by [@Dunqing](https://togithub.com/Dunqing) in [https://github.com/vitest-dev/vitest/issues/3418](https://togithub.com/vitest-dev/vitest/issues/3418) [(632ee)](https://togithub.com/vitest-dev/vitest/commit/632eef40)
- Coerce to string in import(dep) - by [@jcbhmr](https://togithub.com/jcbhmr) and [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3430](https://togithub.com/vitest-dev/vitest/issues/3430) [(b72eb)](https://togithub.com/vitest-dev/vitest/commit/b72ebdb9)
- Don't remove sourcemap string in source code - by [@rxliuli](https://togithub.com/rxliuli) and [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2918](https://togithub.com/vitest-dev/vitest/issues/2918) and [https://github.com/vitest-dev/vitest/issues/3379](https://togithub.com/vitest-dev/vitest/issues/3379) [(02dc9)](https://togithub.com/vitest-dev/vitest/commit/02dc9ea7)
- Don't externalize "dist" by default - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3446](https://togithub.com/vitest-dev/vitest/issues/3446) [(306b2)](https://togithub.com/vitest-dev/vitest/commit/306b2337)
##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.31.1...v0.31.2)
### [`v0.31.1`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.31.1)
[Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.31.0...v0.31.1)
##### 🚀 Features
- **watch**: Press `r` should rerun current pattern tests - by [@Dunqing](https://togithub.com/Dunqing) and [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3305](https://togithub.com/vitest-dev/vitest/issues/3305) [(69d27)](https://togithub.com/vitest-dev/vitest/commit/69d27117)
##### 🐞 Bug Fixes
- Make sure thrown error is an object - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3298](https://togithub.com/vitest-dev/vitest/issues/3298) [(a93be)](https://togithub.com/vitest-dev/vitest/commit/a93be56c)
- Remove duplicate type - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3303](https://togithub.com/vitest-dev/vitest/issues/3303) [(5382e)](https://togithub.com/vitest-dev/vitest/commit/5382e8b6)
- Throw an error, if tests are collected with a different vitest version - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3301](https://togithub.com/vitest-dev/vitest/issues/3301) [(708b1)](https://togithub.com/vitest-dev/vitest/commit/708b10fe)
- Support application/x-gzip metadata in html report - by [@mzanelee](https://togithub.com/mzanelee) and **Michael Lee** in [https://github.com/vitest-dev/vitest/issues/3333](https://togithub.com/vitest-dev/vitest/issues/3333) [(5bf7e)](https://togithub.com/vitest-dev/vitest/commit/5bf7eb6e)
- Correctly restore vi.fn implementation - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3341](https://togithub.com/vitest-dev/vitest/issues/3341) [(2aff8)](https://togithub.com/vitest-dev/vitest/commit/2aff8c5f)
- Display error message correctly - by [@btea](https://togithub.com/btea) in [https://github.com/vitest-dev/vitest/issues/3314](https://togithub.com/vitest-dev/vitest/issues/3314) [(a5b3d)](https://togithub.com/vitest-dev/vitest/commit/a5b3d78e)
- Exclude `cwd` from test name filter - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3353](https://togithub.com/vitest-dev/vitest/issues/3353) [(324a9)](https://togithub.com/vitest-dev/vitest/commit/324a9b54)
- Check error type before modifying it - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3385](https://togithub.com/vitest-dev/vitest/issues/3385) [(c44d9)](https://togithub.com/vitest-dev/vitest/commit/c44d9912)
- `toMatchInlineSnapshot` fails when file path includes parentheses - by [@pacexy](https://togithub.com/pacexy) in [https://github.com/vitest-dev/vitest/issues/3370](https://togithub.com/vitest-dev/vitest/issues/3370) and [https://github.com/vitest-dev/vitest/issues/3371](https://togithub.com/vitest-dev/vitest/issues/3371) [(dcf13)](https://togithub.com/vitest-dev/vitest/commit/dcf1346a)
- Stop spying on a method, when it's restored - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3386](https://togithub.com/vitest-dev/vitest/issues/3386) [(2cb1a)](https://togithub.com/vitest-dev/vitest/commit/2cb1a15a)
- Test repeats - by [@fenghan34](https://togithub.com/fenghan34) in [https://github.com/vitest-dev/vitest/issues/3369](https://togithub.com/vitest-dev/vitest/issues/3369) [(fb8fc)](https://togithub.com/vitest-dev/vitest/commit/fb8fc7ab)
- **browser**:
- Throw an error if test failed to load - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3390](https://togithub.com/vitest-dev/vitest/issues/3390) [(b354b)](https://togithub.com/vitest-dev/vitest/commit/b354bc1c)
- Keep default export when rewriting exports - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3389](https://togithub.com/vitest-dev/vitest/issues/3389) [(6501d)](https://togithub.com/vitest-dev/vitest/commit/6501d2e3)
- **cli**:
- Improve cac errors when mixing boolean and dot notation - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3302](https://togithub.com/vitest-dev/vitest/issues/3302) [(93fbd)](https://togithub.com/vitest-dev/vitest/commit/93fbd02d)
- **reporter**:
- Prevent deleting test reports stored in coverage directory - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3331](https://togithub.com/vitest-dev/vitest/issues/3331) [(ddbba)](https://togithub.com/vitest-dev/vitest/commit/ddbba396)
- **typecheck**:
- Correctly resolve custom tsconfig path - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3342](https://togithub.com/vitest-dev/vitest/issues/3342) [(c53ae)](https://togithub.com/vitest-dev/vitest/commit/c53ae079)
- **vite-node**:
- Allow returning id not wrapped in promise - by [@danielroe](https://togithub.com/danielroe) in [https://github.com/vitest-dev/vitest/issues/3312](https://togithub.com/vitest-dev/vitest/issues/3312) [(9836c)](https://togithub.com/vitest-dev/vitest/commit/9836ccb4)
##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.31.0...v0.31.1)
### [`v0.31.0`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.31.0)
[Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.30.1...v0.31.0)
##### 🚨 Breaking Changes
- Remove `browser` from allowed pools inside `poolMatchGlob` config option. Please, use Vitest workspaces for running tests in the browser.
- Move assertion declarations to expect package - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3294](https://togithub.com/vitest-dev/vitest/issues/3294) [(cf3af)](https://togithub.com/vitest-dev/vitest/commit/cf3afe2b)
- The change should be minor:
```diff
- declare namespace Vi {
+ declare module 'vitest' {
interface Assertion extends CustomMatchers {}
interface AsymmetricMatchersContaining extends CustomMatchers {}
}
```
##### 🚀 Features
- Update mock implementation to support ESM runtime, introduce "vi.hoisted" - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3258](https://togithub.com/vitest-dev/vitest/issues/3258) [(0c09a)](https://togithub.com/vitest-dev/vitest/commit/0c09a40d)
- Bypass ESM import order restriction with `vi.hoisted` to run code before imports are executed:
```ts
vi.hoisted(() => vi.setSystemTime(new Date(2022, 1, 1)))
```
You can also use it to pass variables to `vi.mock`:
```ts
const { mockedMethod } = vi.hoisted(() => {
return { mockedMethod: vi.fn() }
})
vi.mock('./path/to/module.js', () => {
return { originalMethod: mockedMethod }
})
```
- Add repeat method to tests - by [@samkevin1](https://togithub.com/samkevin1) in [https://github.com/vitest-dev/vitest/issues/2652](https://togithub.com/vitest-dev/vitest/issues/2652) [(7c8f0)](https://togithub.com/vitest-dev/vitest/commit/7c8f0ba9)
- Add an option to hide skipped test lines - by [@g4rry420](https://togithub.com/g4rry420) and [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2745](https://togithub.com/vitest-dev/vitest/issues/2745) [(9bdb1)](https://togithub.com/vitest-dev/vitest/commit/9bdb1603)
- **coverage**: Watermarks for c8 - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3254](https://togithub.com/vitest-dev/vitest/issues/3254) [(730af)](https://togithub.com/vitest-dev/vitest/commit/730af0b4)
- **ui**: Add html coverage - by [@userquin](https://togithub.com/userquin) and [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3071](https://togithub.com/vitest-dev/vitest/issues/3071) [(e24cd)](https://togithub.com/vitest-dev/vitest/commit/e24cd9b2)
- **watch**: Test run cancelling, feat: `--bail` option for cancelling test run - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3163](https://togithub.com/vitest-dev/vitest/issues/3163) [(8d460)](https://togithub.com/vitest-dev/vitest/commit/8d4606eb)
##### 🐞 Bug Fixes
- Don't call global setup teardown twice - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3188](https://togithub.com/vitest-dev/vitest/issues/3188) [(ba3d1)](https://togithub.com/vitest-dev/vitest/commit/ba3d1338)
- Reporter to log version before provider initalizations - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3131](https://togithub.com/vitest-dev/vitest/issues/3131) [(481b1)](https://togithub.com/vitest-dev/vitest/commit/481b1fd2)
- Throw an error if Vitest cannot access its internal state - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3250](https://togithub.com/vitest-dev/vitest/issues/3250) [(fbb14)](https://togithub.com/vitest-dev/vitest/commit/fbb1468e)
- Warning suppression broken - by [@IceQub3](https://togithub.com/IceQub3) in [https://github.com/vitest-dev/vitest/issues/3270](https://togithub.com/vitest-dev/vitest/issues/3270) and [https://github.com/vitest-dev/vitest/issues/3271](https://togithub.com/vitest-dev/vitest/issues/3271) [(036de)](https://togithub.com/vitest-dev/vitest/commit/036de797)
- Show correct diff in "toHaveBeenCalledWith" - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3289](https://togithub.com/vitest-dev/vitest/issues/3289) [(19fcd)](https://togithub.com/vitest-dev/vitest/commit/19fcd8df)
- Don't print esm warning, if package name is not found - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3292](https://togithub.com/vitest-dev/vitest/issues/3292) [(62c14)](https://togithub.com/vitest-dev/vitest/commit/62c14cba)
- Support exactOptionalPropertyTypes - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3293](https://togithub.com/vitest-dev/vitest/issues/3293) [(ba81d)](https://togithub.com/vitest-dev/vitest/commit/ba81d8a3)
- Don't inline vite hmr and rollup types - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3291](https://togithub.com/vitest-dev/vitest/issues/3291) [(1f118)](https://togithub.com/vitest-dev/vitest/commit/1f1189bc)
- **browser**:
- Failing to load vitest/utils - by [@userquin](https://togithub.com/userquin) in [https://github.com/vitest-dev/vitest/issues/3190](https://togithub.com/vitest-dev/vitest/issues/3190) [(78bad)](https://togithub.com/vitest-dev/vitest/commit/78bad4ab)
- **coverage**:
- `thresholdAutoUpdate` to work with `perFile` - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3182](https://togithub.com/vitest-dev/vitest/issues/3182) [(29eeb)](https://togithub.com/vitest-dev/vitest/commit/29eebf65)
- Throw error if fail to load built-in provider - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3217](https://togithub.com/vitest-dev/vitest/issues/3217) [(0a287)](https://togithub.com/vitest-dev/vitest/commit/0a2875e3)
- Stackblitz hangs with c8 - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3225](https://togithub.com/vitest-dev/vitest/issues/3225) [(d9fda)](https://togithub.com/vitest-dev/vitest/commit/d9fda2a1)
- C8 to ignore vite's generated helpers - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3241](https://togithub.com/vitest-dev/vitest/issues/3241) [(21942)](https://togithub.com/vitest-dev/vitest/commit/21942db0)
- Workspaces c8 source maps - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3226](https://togithub.com/vitest-dev/vitest/issues/3226) [(efce3)](https://togithub.com/vitest-dev/vitest/commit/efce3b4d)
- **docs**:
- Correct typo and broken link to WebdriverIO - by [@nathanbabcock](https://togithub.com/nathanbabcock) in [https://github.com/vitest-dev/vitest/issues/3275](https://togithub.com/vitest-dev/vitest/issues/3275) [(c7da1)](https://togithub.com/vitest-dev/vitest/commit/c7da155f)
- **spy**:
- Update to set initial implementation through normal logic - by [@Codex-](https://togithub.com/Codex-) in [https://github.com/vitest-dev/vitest/issues/3260](https://togithub.com/vitest-dev/vitest/issues/3260) and [https://github.com/vitest-dev/vitest/issues/3263](https://togithub.com/vitest-dev/vitest/issues/3263) [(c759a)](https://togithub.com/vitest-dev/vitest/commit/c759a9aa)
- **vite-node**:
- Circular imports - by [@antfu](https://togithub.com/antfu) in [https://github.com/vitest-dev/vitest/issues/3196](https://togithub.com/vitest-dev/vitest/issues/3196) [(cbb59)](https://togithub.com/vitest-dev/vitest/commit/cbb593a8)
- Add missing `import.meta.hot.send` mock - by [@antfu](https://togithub.com/antfu) [(b1624)](https://togithub.com/vitest-dev/vitest/commit/b1624db5)
- **vitest**:
- Also check for vite relative to vitest package - by [@JoshuaKGoldberg](https://togithub.com/JoshuaKGoldberg) and [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3274](https://togithub.com/vitest-dev/vitest/issues/3274) [(a3393)](https://togithub.com/vitest-dev/vitest/commit/a3393b15)
- **watch**:
- Run test files when added to filesystem - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3189](https://togithub.com/vitest-dev/vitest/issues/3189) [(7b2c8)](https://togithub.com/vitest-dev/vitest/commit/7b2c81bc)
##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.30.1...v0.31.0)
### [`v0.30.1`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.30.1)
[Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.30.0...v0.30.1)
##### 🐞 Bug Fixes
- Do not rely on global `performance` and `AggregateError` - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3171](https://togithub.com/vitest-dev/vitest/issues/3171) [(cce45)](https://togithub.com/vitest-dev/vitest/commit/cce45496)
- Allow workspace without a config in the root - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3173](https://togithub.com/vitest-dev/vitest/issues/3173) [(06852)](https://togithub.com/vitest-dev/vitest/commit/06852f18)
- `test.each` respects `chaiConfig` - by [@sheremet-va](https://togithub.com/sheremet-va) [(4f6c1)](https://togithub.com/vitest-dev/vitest/commit/4f6c1340)
- Use relative paths in source map's "sources" field - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3177](https://togithub.com/vitest-dev/vitest/issues/3177) [(6b1b4)](https://togithub.com/vitest-dev/vitest/commit/6b1b4e68)
- **types**:
- Allow augmenting jest namespace for custom assertions - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3169](https://togithub.com/vitest-dev/vitest/issues/3169) [(905ec)](https://togithub.com/vitest-dev/vitest/commit/905ec05a)
- Publish utils and snapshot .d.ts files for typescript - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3172](https://togithub.com/vitest-dev/vitest/issues/3172) [(7af64)](https://togithub.com/vitest-dev/vitest/commit/7af64444)
- **snapshot**:
- `toMatchFileSnapshot` ensure dir exists - by [@antfu](https://togithub.com/antfu) in [https://github.com/vitest-dev/vitest/issues/3155](https://togithub.com/vitest-dev/vitest/issues/3155) [(31168)](https://togithub.com/vitest-dev/vitest/commit/311682a8)
- Improve `skipWriting` check - by [@antfu](https://togithub.com/antfu) [(5436c)](https://togithub.com/vitest-dev/vitest/commit/5436c736)
- Normalize EOL for `toMatchFileSnapshot` - by [@antfu](https://togithub.com/antfu) in [https://github.com/vitest-dev/vitest/issues/3164](https://togithub.com/vitest-dev/vitest/issues/3164) [(df3f2)](https://togithub.com/vitest-dev/vitest/commit/df3f2b50)
##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.30.0...v0.30.1)
### [`v0.30.0`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.30.0)
[Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.29.8...v0.30.0)
##### 🚨 Breaking Changes
- Remove tinyspy internal properties on Vitest spies - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3069](https://togithub.com/vitest-dev/vitest/issues/3069) [(2f1dc)](https://togithub.com/vitest-dev/vitest/commit/2f1dc5ce)
- Only support Node.js 14.18.0 or newer - by [@danez](https://togithub.com/danez) in [https://github.com/vitest-dev/vitest/issues/2985](https://togithub.com/vitest-dev/vitest/issues/2985) [(287dc)](https://togithub.com/vitest-dev/vitest/commit/287dc205)
- Use "concordance" package to display diff instead of using custom diff - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2828](https://togithub.com/vitest-dev/vitest/issues/2828) [(44630)](https://togithub.com/vitest-dev/vitest/commit/446308da)
- Move snapshot implementation into [@vitest/snapshot](https://togithub.com/vitest/snapshot) - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3032](https://togithub.com/vitest-dev/vitest/issues/3032) [(6aff0)](https://togithub.com/vitest-dev/vitest/commit/6aff0176)
- Bump coverage packages vitest peer dependency - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3126](https://togithub.com/vitest-dev/vitest/issues/3126) [(be1bf)](https://togithub.com/vitest-dev/vitest/commit/be1bf08d)
- Add workspace support - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3103](https://togithub.com/vitest-dev/vitest/issues/3103) [(b9d1a)](https://togithub.com/vitest-dev/vitest/commit/b9d1a975)
- Experimental optimizer introduced in 0.29.0 is temporarily disabled.
##### 🚀 Features
- Gzip html reporter's metadata - by [@7rulnik](https://togithub.com/7rulnik) in [https://github.com/vitest-dev/vitest/issues/3113](https://togithub.com/vitest-dev/vitest/issues/3113) [(7856e)](https://togithub.com/vitest-dev/vitest/commit/7856ec12)
- Add chai config - by [@btea](https://togithub.com/btea) in [https://github.com/vitest-dev/vitest/issues/3066](https://togithub.com/vitest-dev/vitest/issues/3066) [(6fcba)](https://togithub.com/vitest-dev/vitest/commit/6fcba9ba)
- **snapshot**: Introduce `toMatchFileSnapshot` and auto queuing expect promise - by [@antfu](https://togithub.com/antfu) in [https://github.com/vitest-dev/vitest/issues/3116](https://togithub.com/vitest-dev/vitest/issues/3116) [(bdc06)](https://togithub.com/vitest-dev/vitest/commit/bdc06dcb)
##### 🐞 Bug Fixes
- Resolve reporters passed down to the CLI relative to the running directory - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3097](https://togithub.com/vitest-dev/vitest/issues/3097) [(93c7e)](https://togithub.com/vitest-dev/vitest/commit/93c7e39d)
- Don't show "diff" in "serialized error" section - by [@sheremet-va](https://togithub.com/sheremet-va) [(326b2)](https://togithub.com/vitest-dev/vitest/commit/326b242d)
- Convert '--single-thread' and '--inspect' cli args to boolean - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3111](https://togithub.com/vitest-dev/vitest/issues/3111) [(83a9a)](https://togithub.com/vitest-dev/vitest/commit/83a9aa74)
- Stack trace point to incorrect file - by [@ChenKS12138](https://togithub.com/ChenKS12138) and [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3004](https://togithub.com/vitest-dev/vitest/issues/3004) and [https://github.com/vitest-dev/vitest/issues/3115](https://togithub.com/vitest-dev/vitest/issues/3115) [(5cee4)](https://togithub.com/vitest-dev/vitest/commit/5cee4fbf)
- Run benchmarks sequentially - by [@thecodrr](https://togithub.com/thecodrr) in [https://github.com/vitest-dev/vitest/issues/2004](https://togithub.com/vitest-dev/vitest/issues/2004) and [https://github.com/vitest-dev/vitest/issues/3151](https://togithub.com/vitest-dev/vitest/issues/3151) [(430b4)](https://togithub.com/vitest-dev/vitest/commit/430b4ecb)
##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.29.8...v0.30.0)
### [`v0.29.8`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.29.8)
[Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.29.7...v0.29.8)
##### 🚀 Features
- Allow accessing "vi" methods without context, don't fail when mocker is not available - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3047](https://togithub.com/vitest-dev/vitest/issues/3047) [(1531c)](https://togithub.com/vitest-dev/vitest/commit/1531c420)
- Show browser console in the terminal - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3048](https://togithub.com/vitest-dev/vitest/issues/3048) [(ee6f5)](https://togithub.com/vitest-dev/vitest/commit/ee6f590d)
- Playwright as browser provider - by [@Aslemammad](https://togithub.com/Aslemammad) and [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3079](https://togithub.com/vitest-dev/vitest/issues/3079) [(9dc69)](https://togithub.com/vitest-dev/vitest/commit/9dc69293)
- Implement `istanbul` coverage support for browser testing - by [@sheremet-va](https://togithub.com/sheremet-va) and [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3040](https://togithub.com/vitest-dev/vitest/issues/3040) [(0f44d)](https://togithub.com/vitest-dev/vitest/commit/0f44d2c8)
##### 🐞 Bug Fixes
- Add generic to expect.objectContaining type - by [@ArtyMaury](https://togithub.com/ArtyMaury) in [https://github.com/vitest-dev/vitest/issues/3053](https://togithub.com/vitest-dev/vitest/issues/3053) [(69d2c)](https://togithub.com/vitest-dev/vitest/commit/69d2cc93)
- Do not fail, when primitive error is thrown - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3074](https://togithub.com/vitest-dev/vitest/issues/3074) [(6efe6)](https://togithub.com/vitest-dev/vitest/commit/6efe61ab)
- Handle cloning proxied classes w/ enumerable getters - by [@tgriesser](https://togithub.com/tgriesser) in [https://github.com/vitest-dev/vitest/issues/3026](https://togithub.com/vitest-dev/vitest/issues/3026) [(196a0)](https://togithub.com/vitest-dev/vitest/commit/196a067a)
- Spy on popup apis like alert - by [@Aslemammad](https://togithub.com/Aslemammad) and [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3076](https://togithub.com/vitest-dev/vitest/issues/3076) [(280ad)](https://togithub.com/vitest-dev/vitest/commit/280ad1ed)
- Report coverage even when no tests found - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3091](https://togithub.com/vitest-dev/vitest/issues/3091) [(2cb91)](https://togithub.com/vitest-dev/vitest/commit/2cb91211)
##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.29.7...v0.29.8)
### [`v0.29.7`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.29.7)
[Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.29.6...v0.29.7)
##### 🐞 Bug Fixes
- Import [@vite/client](https://togithub.com/vite/client) in browser code for handling optimizer - by [@sheremet-va](https://togithub.com/sheremet-va) [(20c51)](https://togithub.com/vitest-dev/vitest/commit/20c510c4)
##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.29.6...v0.29.7)
### [`v0.29.6`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.29.6)
[Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.29.5...v0.29.6)
##### 🐞 Bug Fixes
- Bundle UI with [@vitest/browser](https://togithub.com/vitest/browser) - by [@sheremet-va](https://togithub.com/sheremet-va) [(14091)](https://togithub.com/vitest-dev/vitest/commit/14091c59)
##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.29.5...v0.29.6)
### [`v0.29.5`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.29.5)
[Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.29.4...v0.29.5)
##### 🐞 Bug Fixes
- **browser**: Relax vitest peer dependency - by [@cexbrayat](https://togithub.com/cexbrayat) in [https://github.com/vitest-dev/vitest/issues/3039](https://togithub.com/vitest-dev/vitest/issues/3039) [(865d1)](https://togithub.com/vitest-dev/vitest/commit/865d1afd)
##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.29.4...v0.29.5)
### [`v0.29.4`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.29.4)
[Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.29.3...v0.29.4)
##### 🚀 Features
- `--test-timeout` CLI argument - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3019](https://togithub.com/vitest-dev/vitest/issues/3019) [(63c62)](https://togithub.com/vitest-dev/vitest/commit/63c62f9e)
- Add an option to control Vitest pool with filepath - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3029](https://togithub.com/vitest-dev/vitest/issues/3029) [(c7f0c)](https://togithub.com/vitest-dev/vitest/commit/c7f0c86b)
- Process timeout to log names of stuck test files - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3031](https://togithub.com/vitest-dev/vitest/issues/3031) [(0ddf7)](https://togithub.com/vitest-dev/vitest/commit/0ddf7220)
- Support relative path in html report - by [@poyoho](https://togithub.com/poyoho) and [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2695](https://togithub.com/vitest-dev/vitest/issues/2695) [(a7680)](https://togithub.com/vitest-dev/vitest/commit/a768015e)
- Webdriverio (+ custom providers) integration for browser mode - by [@Aslemammad](https://togithub.com/Aslemammad), **Christian Bromann**, [@sheremet-va](https://togithub.com/sheremet-va), [@userquin](https://togithub.com/userquin) and [@dammy001](https://togithub.com/dammy001) in [https://github.com/vitest-dev/vitest/issues/2999](https://togithub.com/vitest-dev/vitest/issues/2999) [(9cdc8)](https://togithub.com/vitest-dev/vitest/commit/9cdc8030)
##### 🐞 Bug Fixes
- Show correct line numbers in stack trace when using vi.resetModules() - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3020](https://togithub.com/vitest-dev/vitest/issues/3020) [(35730)](https://togithub.com/vitest-dev/vitest/commit/35730328)
- Mocking value proxy filter Symbol static properties - by [@ChpShy](https://togithub.com/ChpShy) in [https://github.com/vitest-dev/vitest/issues/3036](https://togithub.com/vitest-dev/vitest/issues/3036) [(0cf44)](https://togithub.com/vitest-dev/vitest/commit/0cf44098)
- Escape XML in error stack trace when using junit reporter - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3038](https://togithub.com/vitest-dev/vitest/issues/3038) [(cc577)](https://togithub.com/vitest-dev/vitest/commit/cc5779d6)
##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.29.3...v0.29.4)
### [`v0.29.3`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.29.3)
[Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.29.2...v0.29.3)
##### 🚀 Features
- Use custom colors implementation instead of picocolors - by [@sheremet-va](https://togithub.com/sheremet-va) [(427b0)](https://togithub.com/vitest-dev/vitest/commit/427b0622)
- Uncaught errors to indicate env teardown - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2982](https://togithub.com/vitest-dev/vitest/issues/2982) [(1fe82)](https://togithub.com/vitest-dev/vitest/commit/1fe8286c)
- **config**: Add an option to run setupFiles in sequence - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3008](https://togithub.com/vitest-dev/vitest/issues/3008) [(c2e25)](https://togithub.com/vitest-dev/vitest/commit/c2e25bb9)
##### 🐞 Bug Fixes
- Console log not visible - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2943](https://togithub.com/vitest-dev/vitest/issues/2943) [(02808)](https://togithub.com/vitest-dev/vitest/commit/0280825f)
- Remove duplicate execArgv when deps.registerNodeLoader: true - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2965](https://togithub.com/vitest-dev/vitest/issues/2965) [(a1954)](https://togithub.com/vitest-dev/vitest/commit/a1954cc0)
- Prevent running test cases timers after environment teardown - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2971](https://togithub.com/vitest-dev/vitest/issues/2971) [(bde75)](https://togithub.com/vitest-dev/vitest/commit/bde75a34)
- Don't mark setupFiles as test files, if experimentaOptimizer is used - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2974](https://togithub.com/vitest-dev/vitest/issues/2974) [(819c6)](https://togithub.com/vitest-dev/vitest/commit/819c6cbe)
- Config errors not visible - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2995](https://togithub.com/vitest-dev/vitest/issues/2995) [(f01c7)](https://togithub.com/vitest-dev/vitest/commit/f01c7833)
- \--inspect to work inside workers - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2983](https://togithub.com/vitest-dev/vitest/issues/2983) [(36087)](https://togithub.com/vitest-dev/vitest/commit/36087d1e)
- **types**: Use `any` as default value for TArgs in vi.fn() - by [@jessevanassen](https://togithub.com/jessevanassen) in [https://github.com/vitest-dev/vitest/issues/2947](https://togithub.com/vitest-dev/vitest/issues/2947) [(1bdcc)](https://togithub.com/vitest-dev/vitest/commit/1bdcc212)
##### 🏎 Performance
- **reporters**: Overall improvements - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3006](https://togithub.com/vitest-dev/vitest/issues/3006) [(22ca0)](https://togithub.com/vitest-dev/vitest/commit/22ca0b6b)
##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.29.2...v0.29.3)
### [`v0.29.2`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.29.2)
[Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.29.1...v0.29.2)
##### 🐞 Bug Fixes
- Optimize dependencies in setup files - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2935](https://togithub.com/vitest-dev/vitest/issues/2935) [(c169f)](https://togithub.com/vitest-dev/vitest/commit/c169f980)
- **coverage**: C8 provider to work when isolate:false - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2929](https://togithub.com/vitest-dev/vitest/issues/2929) [(86538)](https://togithub.com/vitest-dev/vitest/commit/8653830b)
##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.29.1...v0.29.2)
### [`v0.29.1`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.29.1)
[Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.29.0...v0.29.1)
##### 🐞 Bug Fixes
- Wait for optimized dependency to be bundled in non-pnpm package managers - by [@sheremet-va](https://togithub.com/sheremet-va) [(d2460)](https://togithub.com/vitest-dev/vitest/commit/d2460b7a)
##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.29.0...v0.29.1)
### [`v0.29.0`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.29.0)
[Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.28.5...v0.29.0)
This release makes some significant changes to how tests are running. If you were using `--no-threads` before, you might consider enabling `--single-thread` instead (because your tests are now running in `child_process` instead of a worker thread) or try our new performance optimization feature (discussed later). If you were relying on API that was not available inside a worker (like `process.chdir()`, you can now use this option.
One of the potential breaking bug fixes is that environments do not share the same global scope anymore if you run them with `--no-isolate`, `--no-threads` or `--single-thread` - you might need to update your setup files if you were relying on a global variable before.
If you had performance issues on large code bases before, try the new [`deps.experimentalOptimizer`](https://vitest.dev/config/#deps-experimentaloptimizer) option instead of disabling threads. Feedback is welcome!
One of the breaking changes includes adding a link to snapshots inside snapshot files, meaning you will need to update all your snapshots.
##### 🚨 Breaking Changes
- Vitest as peer dependency for coverage packages - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2836](https://togithub.com/vitest-dev/vitest/issues/2836) [(94247)](https://togithub.com/vitest-dev/vitest/commit/94247f1b)
- Coverage-c8 to use V8 profiler directly instead of `NODE_V8_COVERAGE` - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2786](https://togithub.com/vitest-dev/vitest/issues/2786) [(095c6)](https://togithub.com/vitest-dev/vitest/commit/095c6390)
- Add a link to the comment at the top of the snapshot file - by [@btea](https://togithub.com/btea) in [https://github.com/vitest-dev/vitest/issues/2867](https://togithub.com/vitest-dev/vitest/issues/2867) [(615e1)](https://togithub.com/vitest-dev/vitest/commit/615e150b)
- Always run separate environments in isolation - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2860](https://togithub.com/vitest-dev/vitest/issues/2860) [(1f858)](https://togithub.com/vitest-dev/vitest/commit/1f858e0c)
- Tests with `node` and `jsdom` (and other environments) now don't share the same global scope, if you run them with `--no-isolate` or `--no-threads` flag. Vitest doesn't provide a way to restore the previous behavior as it is considered a bug.
- Use child_process when --no-threads is used - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2772](https://togithub.com/vitest-dev/vitest/issues/2772) [(7bf54)](https://togithub.com/vitest-dev/vitest/commit/7bf54505)
- Tests inside `chid_process` might run longer due to the communication overhead. If you want to restore the previous behavior, use `--single-thread`.
##### 🚀 Features
- Add test seed to banner - by [@btkostner](https://togithub.com/btkostner) in [https://github.com/vitest-dev/vitest/issues/2877](https://togithub.com/vitest-dev/vitest/issues/2877) [(bdb39)](https://togithub.com/vitest-dev/vitest/commit/bdb39569)
- Use custom source-map-support implementation - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2905](https://togithub.com/vitest-dev/vitest/issues/2905) [(6ff6c)](https://togithub.com/vitest-dev/vitest/commit/6ff6c6eb)
- Add an option to enable Vite optimizer - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2912](https://togithub.com/vitest-dev/vitest/issues/2912) [(af8de)](https://togithub.com/vitest-dev/vitest/commit/af8de362)
- **coverage**:
- Add support for coverage reporter options - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2690](https://togithub.com/vitest-dev/vitest/issues/2690) [(f8176)](https://togithub.com/vitest-dev/vitest/commit/f8176182)
- Automatic threshold updating - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2886](https://togithub.com/vitest-dev/vitest/issues/2886) [(e1652)](https://togithub.com/vitest-dev/vitest/commit/e1652163)
- **spy**:
- Implement mock.withImplementation API - by [@obadakhalili](https://togithub.com/obadakhalili) and [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2835](https://togithub.com/vitest-dev/vitest/issues/2835) [(610b1)](https://togithub.com/vitest-dev/vitest/commit/610b1d46)
- **vite-node**:
- Cli option for vite mode - by [@abarke](https://togithub.com/abarke) in [https://github.com/vitest-dev/vitest/issues/2893](https://togithub.com/vitest-dev/vitest/issues/2893) [(0fc08)](https://togithub.com/vitest-dev/vitest/commit/0fc08032)
##### 🐞 Bug Fixes
- Wait for console.log to print a message before terminating a worker - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2861](https://togithub.com/vitest-dev/vitest/issues/2861) [(fbc54)](https://togithub.com/vitest-dev/vitest/commit/fbc54c91)
- Cleanup last mocked cache when call vi.doMock - by [@mysteryven](https://togithub.com/mysteryven) in [https://github.com/vitest-dev/vitest/issues/2872](https://togithub.com/vitest-dev/vitest/issues/2872) [(65d71)](https://togithub.com/vitest-dev/vitest/commit/65d71b9e)
- Reload changed configuration file on watch mode - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2889](https://togithub.com/vitest-dev/vitest/issues/2889) [(4d277)](https://togithub.com/vitest-dev/vitest/commit/4d277d8d)
- **coverage**: Custom providers to work inside worker threads - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2817](https://togithub.com/vitest-dev/vitest/issues/2817) [(81604)](https://togithub.com/vitest-dev/vitest/commit/81604bce)
##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.28.5...v0.29.0)
### [`v0.28.5`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.28.5)
[Compare
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), 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 this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
^0.25.3
->^0.32.0
Release Notes
vitest-dev/vitest
### [`v0.32.0`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.32.0) [Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.31.4...v0.32.0) ##### 🚨 Breaking Changes - Throw an error, if the module cannot be resolved - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3307](https://togithub.com/vitest-dev/vitest/issues/3307) [(1ad63)](https://togithub.com/vitest-dev/vitest/commit/1ad63b0c) - Vitest used to fall back to the original import when it could not resolve it to the file path or the virtual module. This leads to hard-to-find module graph mismatches if you had incorrect alias or relied on relative imports to be resolved to the project root (which is usual behavior in TypeScript) because the code accidentally "worked". With this release, Vitest will now throw an error if it cannot resolve the module - there are possible edge cases that are not covered yet, so if you have any problems with this, please open a separate issue with reproduction. - Improve globs - by [@nickmccurdy](https://togithub.com/nickmccurdy) in [https://github.com/vitest-dev/vitest/issues/3392](https://togithub.com/vitest-dev/vitest/issues/3392) [(19ecc)](https://togithub.com/vitest-dev/vitest/commit/19ecc6c7) - Vitest now has glob patterns similar to Jest for better compatibility. It's possible that some files will be considered test files when previously they were not. For example, Vitest now considers `test.js` to be a test file. Also any file in `__tests__` is now considered to be a test, not just files with `test` or `spec` suffix. - Add `@vitest/coverage-v8` package - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3339](https://togithub.com/vitest-dev/vitest/issues/3339) [(82112)](https://togithub.com/vitest-dev/vitest/commit/821126f1) - Vitest now uses v8 code coverage directly for better performance. `@vitest/coverage-c8` is deprecated as Vitest no longer uses c8 package for coverage output. It will not be updated anymore, and Vitest will fail in the next version if the user has `c8` as their coverage provider. Please, install the new `@vitest/coverage-v8` package if you previously used `@vitest/coverage-c8`. - **mocker**: Don't restore mock to the original if the module is automocked - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3518](https://togithub.com/vitest-dev/vitest/issues/3518) [(c1004)](https://togithub.com/vitest-dev/vitest/commit/c1004e14) - `spy.mockRestore` on auto-mocked named exports will no longer restore their implementation to the actual function. This behavior better matches what Jest does. ##### 🚀 Features - Support ssr optimizer - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3490](https://togithub.com/vitest-dev/vitest/issues/3490) [(89842)](https://togithub.com/vitest-dev/vitest/commit/898422b0) - Image type add apng - by [@btea](https://togithub.com/btea) in [https://github.com/vitest-dev/vitest/issues/3498](https://togithub.com/vitest-dev/vitest/issues/3498) [(a53c2)](https://togithub.com/vitest-dev/vitest/commit/a53c2151) - **expect**: Support `expect.soft` - by [@Dunqing](https://togithub.com/Dunqing) in [https://github.com/vitest-dev/vitest/issues/3507](https://togithub.com/vitest-dev/vitest/issues/3507) [(7c687)](https://togithub.com/vitest-dev/vitest/commit/7c687ada) - **runner**: Support using function/class as `describe`/`test` name - by [@fenghan34](https://togithub.com/fenghan34) in [https://github.com/vitest-dev/vitest/issues/3497](https://togithub.com/vitest-dev/vitest/issues/3497) [(15253)](https://togithub.com/vitest-dev/vitest/commit/15253890) ##### 🐞 Bug Fixes - The cli option is passed to coverage.exclude - by [@btea](https://togithub.com/btea) in [https://github.com/vitest-dev/vitest/issues/3506](https://togithub.com/vitest-dev/vitest/issues/3506) [(c37cd)](https://togithub.com/vitest-dev/vitest/commit/c37cdebe) - **optimizer**: Always respect optimizeDeps even if include/exclude is overridden - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3488](https://togithub.com/vitest-dev/vitest/issues/3488) [(eb285)](https://togithub.com/vitest-dev/vitest/commit/eb285ea0) - **runner**: Ensure Vitest is deduped - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3489](https://togithub.com/vitest-dev/vitest/issues/3489) [(2deb7)](https://togithub.com/vitest-dev/vitest/commit/2deb70ab) - **ui**: Don't cache coverage assets - by [@userquin](https://togithub.com/userquin) in [https://github.com/vitest-dev/vitest/issues/3508](https://togithub.com/vitest-dev/vitest/issues/3508) [(952b5)](https://togithub.com/vitest-dev/vitest/commit/952b5be6) - **vite-node**: Circular import stuck - by [@Dunqing](https://togithub.com/Dunqing) in [https://github.com/vitest-dev/vitest/issues/3480](https://togithub.com/vitest-dev/vitest/issues/3480) [(50f07)](https://togithub.com/vitest-dev/vitest/commit/50f0700d) - **watch**: Junit reporter fails to re-generate report - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3496](https://togithub.com/vitest-dev/vitest/issues/3496) [(5b73c)](https://togithub.com/vitest-dev/vitest/commit/5b73cbf8) ##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.31.4...v0.32.0) ### [`v0.31.4`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.31.4) [Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.31.3...v0.31.4) ##### 🚀 Features - Enable experimentalOptimizer - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3413](https://togithub.com/vitest-dev/vitest/issues/3413) [(5a894)](https://togithub.com/vitest-dev/vitest/commit/5a894aa2) ##### 🐞 Bug Fixes - **vite-node**: Deps.inline doesn't work - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3485](https://togithub.com/vitest-dev/vitest/issues/3485) [(be930)](https://togithub.com/vitest-dev/vitest/commit/be93032f) ##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.31.3...v0.31.4) ### [`v0.31.3`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.31.3) [Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.31.2...v0.31.3) ##### 🚀 Features - Support `VITE_NODE_DEPS_MODULE_DIRECTORIES` from .npmrc - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3471](https://togithub.com/vitest-dev/vitest/issues/3471) [(393bf)](https://togithub.com/vitest-dev/vitest/commit/393bf60c) ##### 🐞 Bug Fixes - **logger**: Print unhandled errors before summary - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3474](https://togithub.com/vitest-dev/vitest/issues/3474) [(4c9a7)](https://togithub.com/vitest-dev/vitest/commit/4c9a7d58) - **runner**: Suite options do not propagate to nested suites (fix: [#3467](https://togithub.com/vitest-dev/vitest/issues/3467)) - by [@xsjcTony](https://togithub.com/xsjcTony) in [https://github.com/vitest-dev/vitest/issues/3473](https://togithub.com/vitest-dev/vitest/issues/3473) and [https://github.com/vitest-dev/vitest/issues/3467](https://togithub.com/vitest-dev/vitest/issues/3467) [(9fb9d)](https://togithub.com/vitest-dev/vitest/commit/9fb9dacb) - **vite-node**: Clear importers when invalidating module - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3475](https://togithub.com/vitest-dev/vitest/issues/3475) [(add29)](https://togithub.com/vitest-dev/vitest/commit/add29c86) ##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.31.2...v0.31.3) ### [`v0.31.2`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.31.2) [Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.31.1...v0.31.2) ##### 🚀 Features - Throw error if using inline snapshot inside of `test.each` or `describe.each` - by [@fenghan34](https://togithub.com/fenghan34) and [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3360](https://togithub.com/vitest-dev/vitest/issues/3360) [(7c2f7)](https://togithub.com/vitest-dev/vitest/commit/7c2f7088) - Pass down meta information to Node.js process - by [@sheremet-va](https://togithub.com/sheremet-va) and [@dammy001](https://togithub.com/dammy001) in [https://github.com/vitest-dev/vitest/issues/3449](https://togithub.com/vitest-dev/vitest/issues/3449) [(e39ad)](https://togithub.com/vitest-dev/vitest/commit/e39adea8) - **coverage**: Add `reportOnFailure` option - by [@AriPerkkio](https://togithub.com/AriPerkkio) and [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3453](https://togithub.com/vitest-dev/vitest/issues/3453) [(1988f)](https://togithub.com/vitest-dev/vitest/commit/1988fcb4) - **dev**: Add moduleDirectories option to the vitest config - by [@fooddilsn](https://togithub.com/fooddilsn) and [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3337](https://togithub.com/vitest-dev/vitest/issues/3337) [(b3602)](https://togithub.com/vitest-dev/vitest/commit/b3602bcc) ##### 🐞 Bug Fixes - Don't print empty diff - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3437](https://togithub.com/vitest-dev/vitest/issues/3437) [(32b53)](https://togithub.com/vitest-dev/vitest/commit/32b5361f) - Don't restore methods in automocked dependencies - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3438](https://togithub.com/vitest-dev/vitest/issues/3438) [(d1afd)](https://togithub.com/vitest-dev/vitest/commit/d1afd262) - Dot reporter scrollback buffer spam - by [@gtm-nayan](https://togithub.com/gtm-nayan) in [https://github.com/vitest-dev/vitest/issues/3415](https://togithub.com/vitest-dev/vitest/issues/3415) [(e6792)](https://togithub.com/vitest-dev/vitest/commit/e6792a94) - Gracefully exit when first `SIGINT` is received - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3407](https://togithub.com/vitest-dev/vitest/issues/3407) [(a2cc2)](https://togithub.com/vitest-dev/vitest/commit/a2cc2b38) - `rejects` & `resolves` breaks with thenable objects - by [@fenghan34](https://togithub.com/fenghan34) in [https://github.com/vitest-dev/vitest/issues/3456](https://togithub.com/vitest-dev/vitest/issues/3456) [(4e996)](https://togithub.com/vitest-dev/vitest/commit/4e996ae5) - Prevent `birpc` timeouts when `Math.random` mock is not restored - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3460](https://togithub.com/vitest-dev/vitest/issues/3460) [(cd5d5)](https://togithub.com/vitest-dev/vitest/commit/cd5d58b7) - Assertion diff message now handle non writable property correctly - by [@PCreations](https://togithub.com/PCreations) in [https://github.com/vitest-dev/vitest/issues/3422](https://togithub.com/vitest-dev/vitest/issues/3422) [(f75ab)](https://togithub.com/vitest-dev/vitest/commit/f75ab650) - Extend logging of process timeout errors - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3452](https://togithub.com/vitest-dev/vitest/issues/3452) [(42643)](https://togithub.com/vitest-dev/vitest/commit/42643904) - Support requiring files with `less` extension - by [@rluvaton](https://togithub.com/rluvaton) in [https://github.com/vitest-dev/vitest/issues/3465](https://togithub.com/vitest-dev/vitest/issues/3465) [(4d045)](https://togithub.com/vitest-dev/vitest/commit/4d045695) - **cli**: - Improve colors used when erroring - by [@ghiscoding](https://togithub.com/ghiscoding) and [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3349](https://togithub.com/vitest-dev/vitest/issues/3349) [(16681)](https://togithub.com/vitest-dev/vitest/commit/16681791) - **runner**: - Suite timeout does not take effect - by [@btea](https://togithub.com/btea) in [https://github.com/vitest-dev/vitest/issues/3455](https://togithub.com/vitest-dev/vitest/issues/3455) [(82547)](https://togithub.com/vitest-dev/vitest/commit/82547376) - **spy**: - Don't print received calls if there are no calls - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3405](https://togithub.com/vitest-dev/vitest/issues/3405) [(41e11)](https://togithub.com/vitest-dev/vitest/commit/41e11dad) - **typecheck**: - Show tsc errors not related to test files - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3441](https://togithub.com/vitest-dev/vitest/issues/3441) [(a1da5)](https://togithub.com/vitest-dev/vitest/commit/a1da5714) - **types**: - Fix `PartialMock` with async TReturns - by [@ghry5](https://togithub.com/ghry5) in [https://github.com/vitest-dev/vitest/issues/3462](https://togithub.com/vitest-dev/vitest/issues/3462) [(b664d)](https://togithub.com/vitest-dev/vitest/commit/b664d42c) - **vite-node**: - Circular import stuck - by [@Dunqing](https://togithub.com/Dunqing) in [https://github.com/vitest-dev/vitest/issues/3418](https://togithub.com/vitest-dev/vitest/issues/3418) [(632ee)](https://togithub.com/vitest-dev/vitest/commit/632eef40) - Coerce to string in import(dep) - by [@jcbhmr](https://togithub.com/jcbhmr) and [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3430](https://togithub.com/vitest-dev/vitest/issues/3430) [(b72eb)](https://togithub.com/vitest-dev/vitest/commit/b72ebdb9) - Don't remove sourcemap string in source code - by [@rxliuli](https://togithub.com/rxliuli) and [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2918](https://togithub.com/vitest-dev/vitest/issues/2918) and [https://github.com/vitest-dev/vitest/issues/3379](https://togithub.com/vitest-dev/vitest/issues/3379) [(02dc9)](https://togithub.com/vitest-dev/vitest/commit/02dc9ea7) - Don't externalize "dist" by default - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3446](https://togithub.com/vitest-dev/vitest/issues/3446) [(306b2)](https://togithub.com/vitest-dev/vitest/commit/306b2337) ##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.31.1...v0.31.2) ### [`v0.31.1`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.31.1) [Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.31.0...v0.31.1) ##### 🚀 Features - **watch**: Press `r` should rerun current pattern tests - by [@Dunqing](https://togithub.com/Dunqing) and [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3305](https://togithub.com/vitest-dev/vitest/issues/3305) [(69d27)](https://togithub.com/vitest-dev/vitest/commit/69d27117) ##### 🐞 Bug Fixes - Make sure thrown error is an object - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3298](https://togithub.com/vitest-dev/vitest/issues/3298) [(a93be)](https://togithub.com/vitest-dev/vitest/commit/a93be56c) - Remove duplicate type - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3303](https://togithub.com/vitest-dev/vitest/issues/3303) [(5382e)](https://togithub.com/vitest-dev/vitest/commit/5382e8b6) - Throw an error, if tests are collected with a different vitest version - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3301](https://togithub.com/vitest-dev/vitest/issues/3301) [(708b1)](https://togithub.com/vitest-dev/vitest/commit/708b10fe) - Support application/x-gzip metadata in html report - by [@mzanelee](https://togithub.com/mzanelee) and **Michael Lee** in [https://github.com/vitest-dev/vitest/issues/3333](https://togithub.com/vitest-dev/vitest/issues/3333) [(5bf7e)](https://togithub.com/vitest-dev/vitest/commit/5bf7eb6e) - Correctly restore vi.fn implementation - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3341](https://togithub.com/vitest-dev/vitest/issues/3341) [(2aff8)](https://togithub.com/vitest-dev/vitest/commit/2aff8c5f) - Display error message correctly - by [@btea](https://togithub.com/btea) in [https://github.com/vitest-dev/vitest/issues/3314](https://togithub.com/vitest-dev/vitest/issues/3314) [(a5b3d)](https://togithub.com/vitest-dev/vitest/commit/a5b3d78e) - Exclude `cwd` from test name filter - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3353](https://togithub.com/vitest-dev/vitest/issues/3353) [(324a9)](https://togithub.com/vitest-dev/vitest/commit/324a9b54) - Check error type before modifying it - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3385](https://togithub.com/vitest-dev/vitest/issues/3385) [(c44d9)](https://togithub.com/vitest-dev/vitest/commit/c44d9912) - `toMatchInlineSnapshot` fails when file path includes parentheses - by [@pacexy](https://togithub.com/pacexy) in [https://github.com/vitest-dev/vitest/issues/3370](https://togithub.com/vitest-dev/vitest/issues/3370) and [https://github.com/vitest-dev/vitest/issues/3371](https://togithub.com/vitest-dev/vitest/issues/3371) [(dcf13)](https://togithub.com/vitest-dev/vitest/commit/dcf1346a) - Stop spying on a method, when it's restored - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3386](https://togithub.com/vitest-dev/vitest/issues/3386) [(2cb1a)](https://togithub.com/vitest-dev/vitest/commit/2cb1a15a) - Test repeats - by [@fenghan34](https://togithub.com/fenghan34) in [https://github.com/vitest-dev/vitest/issues/3369](https://togithub.com/vitest-dev/vitest/issues/3369) [(fb8fc)](https://togithub.com/vitest-dev/vitest/commit/fb8fc7ab) - **browser**: - Throw an error if test failed to load - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3390](https://togithub.com/vitest-dev/vitest/issues/3390) [(b354b)](https://togithub.com/vitest-dev/vitest/commit/b354bc1c) - Keep default export when rewriting exports - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3389](https://togithub.com/vitest-dev/vitest/issues/3389) [(6501d)](https://togithub.com/vitest-dev/vitest/commit/6501d2e3) - **cli**: - Improve cac errors when mixing boolean and dot notation - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3302](https://togithub.com/vitest-dev/vitest/issues/3302) [(93fbd)](https://togithub.com/vitest-dev/vitest/commit/93fbd02d) - **reporter**: - Prevent deleting test reports stored in coverage directory - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3331](https://togithub.com/vitest-dev/vitest/issues/3331) [(ddbba)](https://togithub.com/vitest-dev/vitest/commit/ddbba396) - **typecheck**: - Correctly resolve custom tsconfig path - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3342](https://togithub.com/vitest-dev/vitest/issues/3342) [(c53ae)](https://togithub.com/vitest-dev/vitest/commit/c53ae079) - **vite-node**: - Allow returning id not wrapped in promise - by [@danielroe](https://togithub.com/danielroe) in [https://github.com/vitest-dev/vitest/issues/3312](https://togithub.com/vitest-dev/vitest/issues/3312) [(9836c)](https://togithub.com/vitest-dev/vitest/commit/9836ccb4) ##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.31.0...v0.31.1) ### [`v0.31.0`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.31.0) [Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.30.1...v0.31.0) ##### 🚨 Breaking Changes - Remove `browser` from allowed pools inside `poolMatchGlob` config option. Please, use Vitest workspaces for running tests in the browser. - Move assertion declarations to expect package - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3294](https://togithub.com/vitest-dev/vitest/issues/3294) [(cf3af)](https://togithub.com/vitest-dev/vitest/commit/cf3afe2b) - The change should be minor: ```diff - declare namespace Vi { + declare module 'vitest' { interface AssertionConfiguration
📅 Schedule: Branch creation - At any time (no schedule defined), 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 this update again.
This PR has been generated by Mend Renovate. View repository job log here.