vitest-dev/vitest
### [`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 Source](https://togithub.com/vitest-dev/vitest/compare/v0.28.4...v0.28.5)
##### 🚀 Features
- Add --script option to vite-node - by [@jgoux](https://togithub.com/jgoux) and [@dammy001](https://togithub.com/dammy001) in [https://github.com/vitest-dev/vitest/issues/2793](https://togithub.com/vitest-dev/vitest/issues/2793) [(d3d6b)](https://togithub.com/vitest-dev/vitest/commit/d3d6b1fc)
- Inject executor directly into runner - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2858](https://togithub.com/vitest-dev/vitest/issues/2858) [(62c43)](https://togithub.com/vitest-dev/vitest/commit/62c43420)
##### 🐞 Bug Fixes
- Don't call "afterAll" hooks, if suite was skipped - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2802](https://togithub.com/vitest-dev/vitest/issues/2802) [(aa1aa)](https://togithub.com/vitest-dev/vitest/commit/aa1aa4da)
- Always display serialized error, even if it doesn't have stack - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2829](https://togithub.com/vitest-dev/vitest/issues/2829) [(ab5f8)](https://togithub.com/vitest-dev/vitest/commit/ab5f8927)
- Clear mocks between tests - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2857](https://togithub.com/vitest-dev/vitest/issues/2857) [(c420c)](https://togithub.com/vitest-dev/vitest/commit/c420cb7b)
- **expect**:
- Check for no 'throw' type in toHaveReturned - by [@trivikr](https://togithub.com/trivikr) in [https://github.com/vitest-dev/vitest/issues/2850](https://togithub.com/vitest-dev/vitest/issues/2850) [(1164c)](https://togithub.com/vitest-dev/vitest/commit/1164c478)
- Accept array index as number in toHaveProperty - by [@trivikr](https://togithub.com/trivikr) in [https://github.com/vitest-dev/vitest/issues/2808](https://togithub.com/vitest-dev/vitest/issues/2808) [(8705e)](https://togithub.com/vitest-dev/vitest/commit/8705e6b2)
##### 🏎 Performance
- Don't inline Vitest entry - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2819](https://togithub.com/vitest-dev/vitest/issues/2819) [(570c6)](https://togithub.com/vitest-dev/vitest/commit/570c639e)
##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.28.4...v0.28.5)
### [`v0.28.4`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.28.4)
[Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.28.3...v0.28.4)
##### 🐞 Bug Fixes
- Setup correct utils inside asymmetric matchers - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2768](https://togithub.com/vitest-dev/vitest/issues/2768) [(415c8)](https://togithub.com/vitest-dev/vitest/commit/415c8a93)
- Cjs exports has Object.prototype instead of null - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2769](https://togithub.com/vitest-dev/vitest/issues/2769) [(4fc49)](https://togithub.com/vitest-dev/vitest/commit/4fc492c6)
- Duplicate callbacks in vite-node HMR - by [@jgoux](https://togithub.com/jgoux) in [https://github.com/vitest-dev/vitest/issues/2792](https://togithub.com/vitest-dev/vitest/issues/2792) [(f0333)](https://togithub.com/vitest-dev/vitest/commit/f03337ae)
- Do not include source files in `onWatcherStart` when `typecheck.ignoreSourceErrors` is true - by [@mascii](https://togithub.com/mascii) and [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2774](https://togithub.com/vitest-dev/vitest/issues/2774) [(d612e)](https://togithub.com/vitest-dev/vitest/commit/d612efdf)
##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.28.3...v0.28.4)
### [`v0.28.3`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.28.3)
[Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.28.2...v0.28.3)
##### 🚀 Features
- Allow using atomics to communicate between threads - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2758](https://togithub.com/vitest-dev/vitest/issues/2758) [(3679c)](https://togithub.com/vitest-dev/vitest/commit/3679cf25)
- Show active filename pattern on CLI - by [@AriPerkkio](https://togithub.com/AriPerkkio) [(a0455)](https://togithub.com/vitest-dev/vitest/commit/a0455917)
- Show active test name pattern on CLI - by [@AriPerkkio](https://togithub.com/AriPerkkio) [(df7c4)](https://togithub.com/vitest-dev/vitest/commit/df7c410a)
- Allow `config` option to be false - by [@antfu](https://togithub.com/antfu) in [https://github.com/vitest-dev/vitest/issues/2749](https://togithub.com/vitest-dev/vitest/issues/2749) [(c66e3)](https://togithub.com/vitest-dev/vitest/commit/c66e335b)
##### 🐞 Bug Fixes
- Watch mode's filename pattern to persist on unrelated file changes - by [@AriPerkkio](https://togithub.com/AriPerkkio) [(712ac)](https://togithub.com/vitest-dev/vitest/commit/712ac15b)
- Watch mode's filename pattern to persist re-run of failed tests, snapshot updates and testname filter changes - by [@AriPerkkio](https://togithub.com/AriPerkkio) [(1c65a)](https://togithub.com/vitest-dev/vitest/commit/1c65ac48)
- Dont incorrectly mark run failed if filename pattern excludes previously failed tests - by [@AriPerkkio](https://togithub.com/AriPerkkio) [(61cf9)](https://togithub.com/vitest-dev/vitest/commit/61cf9a7a)
- **coverage**: Istanbul crashes when no tests were run - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2753](https://togithub.com/vitest-dev/vitest/issues/2753) [(ebc95)](https://togithub.com/vitest-dev/vitest/commit/ebc95add)
##### 🏎 Performance
- Don't import vite in worker - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2759](https://togithub.com/vitest-dev/vitest/issues/2759) [(e49c1)](https://togithub.com/vitest-dev/vitest/commit/e49c13fa)
##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.28.2...v0.28.3)
### [`v0.28.2`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.28.2)
[Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.28.1...v0.28.2)
##### 🐞 Bug Fixes
- Send stderr header log to stderr - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2736](https://togithub.com/vitest-dev/vitest/issues/2736) [(998ea)](https://togithub.com/vitest-dev/vitest/commit/998ea804)
- Call afterAll, if beforeAll failed - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2737](https://togithub.com/vitest-dev/vitest/issues/2737) [(1904c)](https://togithub.com/vitest-dev/vitest/commit/1904c9c4)
- **vite-node**: Don't cache modules with `timestamp: 0` - by [@danielroe](https://togithub.com/danielroe) in [https://github.com/vitest-dev/vitest/issues/2747](https://togithub.com/vitest-dev/vitest/issues/2747) [(e88c0)](https://togithub.com/vitest-dev/vitest/commit/e88c04c4)
##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.28.1...v0.28.2)
### [`v0.28.1`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.28.1)
[Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.28.0...v0.28.1)
##### 🐞 Bug Fixes
- Remove UI from Vitest dependencies - by [@sheremet-va](https://togithub.com/sheremet-va) [(b120c)](https://togithub.com/vitest-dev/vitest/commit/b120ca3f)
##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.28.0...v0.28.1)
### [`v0.28.0`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.28.0)
[Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.27.3...v0.28.0)
##### 🚨 Breaking Changes
- Don't rely on environment for interopDefault - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2682](https://togithub.com/vitest-dev/vitest/issues/2682) [(3f20c)](https://togithub.com/vitest-dev/vitest/commit/3f20cf5a)
- Move test runner into a separate package - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2721](https://togithub.com/vitest-dev/vitest/issues/2721) [(482b7)](https://togithub.com/vitest-dev/vitest/commit/482b72fc)
- To extend text context, you need to augment `@vitet/runner` package instead of `vitest`
##### 🐞 Bug Fixes
- **coverage**: C8 to log warning when run in Stackblitz - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2735](https://togithub.com/vitest-dev/vitest/issues/2735) [(b6c41)](https://togithub.com/vitest-dev/vitest/commit/b6c41caa)
##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.27.3...v0.28.0)
### [`v0.27.3`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.27.3)
[Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.27.2...v0.27.3)
##### 🚀 Features
- Throw unhandled exception, if code throws "error" event - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2691](https://togithub.com/vitest-dev/vitest/issues/2691) [(6a30c)](https://togithub.com/vitest-dev/vitest/commit/6a30cdd3)
- New `environmentMatchGlobs` option to auto infer env based on glob - by [@antfu](https://togithub.com/antfu) in [https://github.com/vitest-dev/vitest/issues/2714](https://togithub.com/vitest-dev/vitest/issues/2714) [(3e142)](https://togithub.com/vitest-dev/vitest/commit/3e1429e5)
- Add basic reporter which allow user to use reporter in ci - by [@trim21](https://togithub.com/trim21) and [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2612](https://togithub.com/vitest-dev/vitest/issues/2612) [(5df52)](https://togithub.com/vitest-dev/vitest/commit/5df522f7)
- Improve "isCI" check - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2705](https://togithub.com/vitest-dev/vitest/issues/2705) [(e6457)](https://togithub.com/vitest-dev/vitest/commit/e64570df)
##### 🐞 Bug Fixes
- Show error in the terminal, if "only" flag is used - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2696](https://togithub.com/vitest-dev/vitest/issues/2696) [(24d63)](https://togithub.com/vitest-dev/vitest/commit/24d63809)
- Cpu and heap profiling options for workers - by [@AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2702](https://togithub.com/vitest-dev/vitest/issues/2702) [(c31a0)](https://togithub.com/vitest-dev/vitest/commit/c31a0b20)
- Show correct number of tests in test summary - by [@poyoho](https://togithub.com/poyoho) in [https://github.com/vitest-dev/vitest/issues/2703](https://togithub.com/vitest-dev/vitest/issues/2703) [(859e7)](https://togithub.com/vitest-dev/vitest/commit/859e7f01)
- Don't terminate workers on Node 14 to not trigger fatal error - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2697](https://togithub.com/vitest-dev/vitest/issues/2697) [(db9b6)](https://togithub.com/vitest-dev/vitest/commit/db9b6bb7)
- Allow custom async matchers - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2707](https://togithub.com/vitest-dev/vitest/issues/2707) [(b5669)](https://togithub.com/vitest-dev/vitest/commit/b566912d)
- Remove setup files from coverage - by [@g4rry420](https://togithub.com/g4rry420) in [https://github.com/vitest-dev/vitest/issues/2574](https://togithub.com/vitest-dev/vitest/issues/2574) [(488e4)](https://togithub.com/vitest-dev/vitest/commit/488e4b9f)
- `reportCoverage` context can be optional - by [@antfu](https://togithub.com/antfu) [(4cd1e)](https://togithub.com/vitest-dev/vitest/commit/4cd1e5d7)
- ENOENT assets when htmldir exists - by [@everett1992](https://togithub.com/everett1992) in [https://github.com/vitest-dev/vitest/issues/2701](https://togithub.com/vitest-dev/vitest/issues/2701) [(5a656)](https://togithub.com/vitest-dev/vitest/commit/5a656753)
- Correctly resolve paths relative to root, when used outside of root directory - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2687](https://togithub.com/vitest-dev/vitest/issues/2687) [(703aa)](https://togithub.com/vitest-dev/vitest/commit/703aab46)
- **typecheck**: Store tmp tsconfig close to original one - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2660](https://togithub.com/vitest-dev/vitest/issues/2660) [(26f91)](https://togithub.com/vitest-dev/vitest/commit/26f915ad)
##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.27.2...v0.27.3)
### [`v0.27.2`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.27.2)
[Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.27.1...v0.27.2)
##### 🚀 Features
- Add runAllTimersAsync from sinonjs - by [@guillaumeduboc](https://togithub.com/guillaumeduboc) in [https://github.com/vitest-dev/vitest/issues/2209](https://togithub.com/vitest-dev/vitest/issues/2209) [(40187)](https://togithub.com/vitest-dev/vitest/commit/40187bdb)
##### 🐞 Bug Fixes
- Document.defaultView references the same window as the global one - by [@sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2649](https://togithub.com/vitest-dev/vitest/issues/2649) [(1ac4b)](https://togithub.com/vitest-dev/vitest/commit/1ac4bb8d)
- Trim input filename and test name - by [@btea](https://togithub.com/btea) in [https://github.com
Configuration
📅 Schedule: Branch creation - "before 5am on Monday" in timezone Europe/Warsaw, Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates 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.8
->0.31.1
0.25.8
->0.31.1
Release Notes
vitest-dev/vitest
### [`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 - "before 5am on Monday" in timezone Europe/Warsaw, Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR has been generated by Mend Renovate. View repository job log here.