Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat!: add @vitest/coverage-v8 package #3339

Merged

Conversation

AriPerkkio
Copy link
Member

@AriPerkkio AriPerkkio commented May 10, 2023

  • Adds new coverage provider package @vitest/coverage-v8. For end-users it should provide identical coverage results as @vitest/coverage-c8.
    • This package does not implement the coverage options excludeNodeModules, allowExternal and src. I think we can implement these if needed, but at the moment even the @vitest/coverage-istanbul doesn't have these.
  • Adds deprecation warning to @vitest/coverage-c8. This package is still around but will be removed in future breaking-change releases.
  • Changes default coverage.provider from 'c8' to 'v8'

Migration

npm uninstall @vitest/coverage-c8
npm install --save-dev @vitest/coverage-v8
// vitest.config.ts
export default defineConfig({
  test: {
    coverage: {
-      provider: 'c8'
+      provider: 'v8'

Troubleshooting

  • If your coverage report is completely empty, please check that your test.root does not exclude the source files. The root is now resolved correctly, identical to @vitest/coverage-istanbul: Provider v8 does not show test coverage #3555

Motivation for new package

The @vitest/coverage-c8 has always had to utilize some private APIs of c8. This has been required since c8 isn't really intended for libraries as it's rather for standalone usage. Non-breaking changes in c8 like bcoe/c8#469 can break @vitest/coverage-c8 without major version bumps.

The @vitest/coverage-c8 is using c8 only for merging, processing and converting the V8 coverage reports, and for creating the final reports. Code instrumentation moved from expensive process.env.NODE_V8_COVERAGE to node:inspector usage already in #2786.

Now with @vitest/coverage-v8 we don't use c8 package at all. New dependencies compared to @vitest/coverage-c8 are added to preserve the functionality:

  • bunch of istanbul packages to process coverage results and create reports. Same packages are used by @vitest/coverage-istanbul already.
  • @bcoe/v8-coverage for merging V8 coverage reports - this package is also used by c8 and jest
  • v8-to-istanbul for converting the coverage reports from V8 to istanbul format

Enables (or at least makes it easier to implement) #3251 as now we have more control over c8.

BREAKING CHANGES:

  • @vitest/coverage-istanbul requires latest vitest version. Some utilities were moved to vitest package for sharing them with the new v8 provider.
  • Default coverage.provider is now 'v8' instead of 'c8'

Next steps

Once this PR is released we can:

  • Remove @vitest/coverage-c8 package completely. The old releases will still remain in NPM registry. Latest release has deprecation warning in place.
  • Remove all mentions of c8 from documentation

Testing:

Compare results between existing @vitest/coverage-c8 and the new @vitest/coverage-v8.

  • test/coverage-test
  • test/workspaces
  • Manual testing with third party projects:
    • zustand: 100% coverage match
    • vuejs/core: 99% coverage match. Some conditional T extends U types are not considered as branches anymore. Earlier we didn't pass source maps for files containing only typings (not sure why), and let c8 resolve the source map. Now we correctly pass the source map from vite-node.
    • netlify/cli: 100% coverage match

@stackblitz
Copy link

stackblitz bot commented May 10, 2023

Review PR in StackBlitz Codeflow Run & review this pull request in StackBlitz Codeflow.

@AriPerkkio
Copy link
Member Author

Does the package name @vitest/coverage-c8 make any sense anymore? Maybe @vitest/coverage-v8 instead?

@AriPerkkio AriPerkkio force-pushed the feat/remove-c8-private-api-usage branch from 7cb6ecf to 91c096b Compare May 10, 2023 12:21
@dammy001
Copy link
Member

Does the package name @vitest/coverage-c8 make any sense anymore? Maybe @vitest/coverage-v8 instead?

@AriPerkkio if changed, @vitest/coverage-c8 will be depreciated at first right?

@AriPerkkio
Copy link
Member Author

if changed, @vitest/coverage-c8 will be depreciated at first right?

Yes, I think we would simply add a warning to be logged in its next minor/breaking-change-release and leave the package as is. This possible new package would be published as separate package with new name.

@AriPerkkio AriPerkkio force-pushed the feat/remove-c8-private-api-usage branch 4 times, most recently from 0c7ce68 to fccb094 Compare May 15, 2023 14:14
@AriPerkkio AriPerkkio changed the title feat!: remove usage of c8 private APIs feat!: add @vitest/coverage-v8 package May 15, 2023
@AriPerkkio AriPerkkio force-pushed the feat/remove-c8-private-api-usage branch 3 times, most recently from 257aeb3 to c22898b Compare May 16, 2023 07:33
@AriPerkkio AriPerkkio force-pushed the feat/remove-c8-private-api-usage branch from c22898b to 37d0fb7 Compare May 16, 2023 07:51
@AriPerkkio AriPerkkio marked this pull request as ready for review May 16, 2023 07:52
@AriPerkkio
Copy link
Member Author

Moved all changes of @vitest/coverage-c8 package to new package @vitest/coverage-v8 instead. This PR does not remove anything c8 related - it only adds a deprecation warning message to @vitest/coverage-c8 initializer.

Small breaking change in @vitest/coverage-istanbul which now requires latest vitest version.

Copy link
Member

@antfu antfu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The direction SGTM 👍

docs/config/index.md Outdated Show resolved Hide resolved
docs/config/index.md Outdated Show resolved Hide resolved
docs/config/index.md Outdated Show resolved Hide resolved
@AriPerkkio AriPerkkio force-pushed the feat/remove-c8-private-api-usage branch 2 times, most recently from 177c95f to fabc25c Compare May 16, 2023 12:53
docs/guide/coverage.md Outdated Show resolved Hide resolved
@AriPerkkio AriPerkkio force-pushed the feat/remove-c8-private-api-usage branch from fabc25c to 5fa068b Compare May 17, 2023 08:39
@AriPerkkio AriPerkkio force-pushed the feat/remove-c8-private-api-usage branch 3 times, most recently from 85920b8 to a1c40bc Compare May 30, 2023 13:49
@AriPerkkio AriPerkkio force-pushed the feat/remove-c8-private-api-usage branch from a1c40bc to 406230e Compare May 31, 2023 15:21
@sheremet-va sheremet-va added this to the 0.32.0 milestone Jun 1, 2023
rluders pushed a commit to themesberg/flowbite-react that referenced this pull request Jun 22, 2023
)

* chore(package.json): upgrade `react-icons` -> `4.10.1`

* fix(src/components/navbar): change default `<Navbar.Toggle/>` icon

fixes #818

* chore(vitest.config.ts): fix `vitest` config typing error

This is an annoying common problem with configuring `vitest`. See
https://stackoverflow.com/questions/72146352/vitest-defineconfig-test-does-not-exist-in-type-userconfigexport/73106019#73106019

* chore(package.json): migrate `vitest` coverage provider

see vitest-dev/vitest#3339
andreasphil added a commit to digitalservicebund/ris-backend-service that referenced this pull request Jun 22, 2023
@vitest/coverage-c8 -> @vitest/coverage-v8
See vitest-dev/vitest#3339

RISDEV-0000
HPrinz pushed a commit to digitalservicebund/ris-backend-service that referenced this pull request Jun 23, 2023
@vitest/coverage-c8 -> @vitest/coverage-v8
See vitest-dev/vitest#3339

RISDEV-0000
hmones pushed a commit to digitalservicebund/ris-backend-service that referenced this pull request Jun 23, 2023
* Replace deprecated vitest coverage reporter

@vitest/coverage-c8 -> @vitest/coverage-v8
See vitest-dev/vitest#3339

RISDEV-0000

* Bump eslint from 8.38.0 to 8.43.0 in /frontend

Bumps [eslint](https://github.com/eslint/eslint) from 8.38.0 to 8.43.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](eslint/eslint@v8.38.0...v8.43.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Andreas Philippi <andreas.philippi@digitalservice.bund.de>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
renovate bot added a commit to Unleash/unleash that referenced this pull request Jun 27, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [vitest](https://togithub.com/vitest-dev/vitest) | [`0.31.4` ->
`0.32.2`](https://renovatebot.com/diffs/npm/vitest/0.31.4/0.32.2) |
[![age](https://badges.renovateapi.com/packages/npm/vitest/0.32.2/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/npm/vitest/0.32.2/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/npm/vitest/0.32.2/compatibility-slim/0.31.4)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/npm/vitest/0.32.2/confidence-slim/0.31.4)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>vitest-dev/vitest</summary>

###
[`v0.32.2`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.32.2)

[Compare
Source](https://togithub.com/vitest-dev/vitest/compare/v0.32.1...v0.32.2)

#####    🐞 Bug Fixes

- **browser**: Don't fail on importing diff-sequences  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va)
[<samp>(00b0e)</samp>](https://togithub.com/vitest-dev/vitest/commit/00b0e6a3)

#####     [View changes on
GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.32.1...v0.32.2)

###
[`v0.32.1`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.32.1)

[Compare
Source](https://togithub.com/vitest-dev/vitest/compare/v0.32.0...v0.32.1)

#####    🚀 Features

- Export `registerConsoleShortcuts` from `vitest/node`  -  by
[@&#8203;deot](https://togithub.com/deot) in
[vitest-dev/vitest#3563
[<samp>(bc49b)</samp>](https://togithub.com/vitest-dev/vitest/commit/bc49bac7)
- **expect**: Support `expect.unreachable`  -  by
[@&#8203;fenghan34](https://togithub.com/fenghan34) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3556
[<samp>(8e385)</samp>](https://togithub.com/vitest-dev/vitest/commit/8e385bb0)
- **runner**: `describe`/`test` name support anonymous function  -  by
[@&#8203;btea](https://togithub.com/btea) in
[vitest-dev/vitest#3562
[<samp>(3d436)</samp>](https://togithub.com/vitest-dev/vitest/commit/3d43638c)

#####    🐞 Bug Fixes

- Avoid call stack recursion with large error (fix:
[#&#8203;3060](https://togithub.com/vitest-dev/vitest/issues/3060))  - 
by [@&#8203;nathanmmiller](https://togithub.com/nathanmmiller) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3078
and
[vitest-dev/vitest#3060
[<samp>(02196)</samp>](https://togithub.com/vitest-dev/vitest/commit/02196f9d)
- Automatically remove define related configuration  -  by
[@&#8203;btea](https://togithub.com/btea) in
[vitest-dev/vitest#3552
[<samp>(368b8)</samp>](https://togithub.com/vitest-dev/vitest/commit/368b8259)
- Import `performance` from `perf_hooks`  -  by
[@&#8203;Max10240](https://togithub.com/Max10240) and
**wangbaolong.wbl** in
[vitest-dev/vitest#3578
and
[vitest-dev/vitest#3579
[<samp>(24ec8)</samp>](https://togithub.com/vitest-dev/vitest/commit/24ec85a8)
- Revert concordance diff, use jest's diff output  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3582
[<samp>(9c7ea)</samp>](https://togithub.com/vitest-dev/vitest/commit/9c7ea382)
- Typo in config suggestion  -  by
[@&#8203;Krisell](https://togithub.com/Krisell) in
[vitest-dev/vitest#3583
[<samp>(68985)</samp>](https://togithub.com/vitest-dev/vitest/commit/689855bb)
-   **browser**:
- Change optimized deps to use `vitest`  -  by
[@&#8203;userquin](https://togithub.com/userquin) in
[vitest-dev/vitest#3580
[<samp>(b4ac8)</samp>](https://togithub.com/vitest-dev/vitest/commit/b4ac88e9)
- Access **vi_inject** only if it was injected  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3587
[<samp>(d9e14)</samp>](https://togithub.com/vitest-dev/vitest/commit/d9e1419a)
-   **mocker**:
- Respect namespace import when hoisting vi.mock  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3547
[<samp>(158c4)</samp>](https://togithub.com/vitest-dev/vitest/commit/158c4bb0)
-   **ui**:
- Navigate to dashboard when re-running tests from coverage page  -  by
[@&#8203;userquin](https://togithub.com/userquin) in
[vitest-dev/vitest#3529
[<samp>(bc283)</samp>](https://togithub.com/vitest-dev/vitest/commit/bc283ae3)
-   **vite-node**:
- Correctly resolve virtual modules  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3544
[<samp>(0cbb0)</samp>](https://togithub.com/vitest-dev/vitest/commit/0cbb07b4)
- Fix errors caused by commonjs export circular references  -  by
[@&#8203;rxliuli](https://togithub.com/rxliuli) in
[vitest-dev/vitest#3570
[<samp>(b097c)</samp>](https://togithub.com/vitest-dev/vitest/commit/b097cef8)

#####     [View changes on
GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.32.0...v0.32.1)

###
[`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
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3307
[<samp>(1ad63)</samp>](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
[@&#8203;nickmccurdy](https://togithub.com/nickmccurdy) in
[vitest-dev/vitest#3392
[<samp>(19ecc)</samp>](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
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3339
[<samp>(82112)</samp>](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
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3518
[<samp>(c1004)</samp>](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
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3490
[<samp>(89842)</samp>](https://togithub.com/vitest-dev/vitest/commit/898422b0)
- Image type add apng  -  by [@&#8203;btea](https://togithub.com/btea)
in
[vitest-dev/vitest#3498
[<samp>(a53c2)</samp>](https://togithub.com/vitest-dev/vitest/commit/a53c2151)
- **expect**: Support `expect.soft`  -  by
[@&#8203;Dunqing](https://togithub.com/Dunqing) in
[vitest-dev/vitest#3507
[<samp>(7c687)</samp>](https://togithub.com/vitest-dev/vitest/commit/7c687ada)
- **runner**: Support using function/class as `describe`/`test` name  - 
by [@&#8203;fenghan34](https://togithub.com/fenghan34) in
[vitest-dev/vitest#3497
[<samp>(15253)</samp>](https://togithub.com/vitest-dev/vitest/commit/15253890)

#####    🐞 Bug Fixes

- The cli option is passed to coverage.exclude  -  by
[@&#8203;btea](https://togithub.com/btea) in
[vitest-dev/vitest#3506
[<samp>(c37cd)</samp>](https://togithub.com/vitest-dev/vitest/commit/c37cdebe)
- **optimizer**: Always respect optimizeDeps even if include/exclude is
overridden  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3488
[<samp>(eb285)</samp>](https://togithub.com/vitest-dev/vitest/commit/eb285ea0)
- **runner**: Ensure Vitest is deduped  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3489
[<samp>(2deb7)</samp>](https://togithub.com/vitest-dev/vitest/commit/2deb70ab)
- **ui**: Don't cache coverage assets  -  by
[@&#8203;userquin](https://togithub.com/userquin) in
[vitest-dev/vitest#3508
[<samp>(952b5)</samp>](https://togithub.com/vitest-dev/vitest/commit/952b5be6)
- **vite-node**: Circular import stuck  -  by
[@&#8203;Dunqing](https://togithub.com/Dunqing) in
[vitest-dev/vitest#3480
[<samp>(50f07)</samp>](https://togithub.com/vitest-dev/vitest/commit/50f0700d)
- **watch**: Junit reporter fails to re-generate report  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3496
[<samp>(5b73c)</samp>](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)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
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 this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/Unleash/unleash).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS4xMzEuMCIsInVwZGF0ZWRJblZlciI6IjM1LjEzMS4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
alexandresoro added a commit to alexandresoro/ouca that referenced this pull request Jun 27, 2023
kodiakhq bot pushed a commit to ascorbic/unpic-img that referenced this pull request Jul 5, 2023
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [vitest](https://togithub.com/vitest-dev/vitest) | [`^0.30.1` -> `^0.32.0`](https://renovatebot.com/diffs/npm/vitest/0.30.1/0.32.2) | [![age](https://badges.renovateapi.com/packages/npm/vitest/0.32.2/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/vitest/0.32.2/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/vitest/0.32.2/compatibility-slim/0.30.1)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/vitest/0.32.2/confidence-slim/0.30.1)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>vitest-dev/vitest</summary>

### [`v0.32.2`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.32.2)

[Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.32.1...v0.32.2)

#####    🐞 Bug Fixes

-   **browser**: Don't fail on importing diff-sequences  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) [<samp>(00b0e)</samp>](https://togithub.com/vitest-dev/vitest/commit/00b0e6a3)

#####     [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.32.1...v0.32.2)

### [`v0.32.1`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.32.1)

[Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.32.0...v0.32.1)

#####    🚀 Features

-   Export `registerConsoleShortcuts` from `vitest/node`  -  by [@&#8203;deot](https://togithub.com/deot) in [vitest-dev/vitest#3563 [<samp>(bc49b)</samp>](https://togithub.com/vitest-dev/vitest/commit/bc49bac7)
-   **expect**: Support `expect.unreachable`  -  by [@&#8203;fenghan34](https://togithub.com/fenghan34) and [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3556 [<samp>(8e385)</samp>](https://togithub.com/vitest-dev/vitest/commit/8e385bb0)
-   **runner**: `describe`/`test` name support anonymous function  -  by [@&#8203;btea](https://togithub.com/btea) in [vitest-dev/vitest#3562 [<samp>(3d436)</samp>](https://togithub.com/vitest-dev/vitest/commit/3d43638c)

#####    🐞 Bug Fixes

-   Avoid call stack recursion with large error (fix: [#&#8203;3060](https://togithub.com/vitest-dev/vitest/issues/3060))  -  by [@&#8203;nathanmmiller](https://togithub.com/nathanmmiller) and [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3078 and [vitest-dev/vitest#3060 [<samp>(02196)</samp>](https://togithub.com/vitest-dev/vitest/commit/02196f9d)
-   Automatically remove define related configuration  -  by [@&#8203;btea](https://togithub.com/btea) in [vitest-dev/vitest#3552 [<samp>(368b8)</samp>](https://togithub.com/vitest-dev/vitest/commit/368b8259)
-   Import `performance` from `perf_hooks`  -  by [@&#8203;Max10240](https://togithub.com/Max10240) and **wangbaolong.wbl** in [vitest-dev/vitest#3578 and [vitest-dev/vitest#3579 [<samp>(24ec8)</samp>](https://togithub.com/vitest-dev/vitest/commit/24ec85a8)
-   Revert concordance diff, use jest's diff output  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3582 [<samp>(9c7ea)</samp>](https://togithub.com/vitest-dev/vitest/commit/9c7ea382)
-   Typo in config suggestion  -  by [@&#8203;Krisell](https://togithub.com/Krisell) in [vitest-dev/vitest#3583 [<samp>(68985)</samp>](https://togithub.com/vitest-dev/vitest/commit/689855bb)
-   **browser**:
    -   Change optimized deps to use `vitest`  -  by [@&#8203;userquin](https://togithub.com/userquin) in [vitest-dev/vitest#3580 [<samp>(b4ac8)</samp>](https://togithub.com/vitest-dev/vitest/commit/b4ac88e9)
    -   Access **vi_inject** only if it was injected  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3587 [<samp>(d9e14)</samp>](https://togithub.com/vitest-dev/vitest/commit/d9e1419a)
-   **mocker**:
    -   Respect namespace import when hoisting vi.mock  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3547 [<samp>(158c4)</samp>](https://togithub.com/vitest-dev/vitest/commit/158c4bb0)
-   **ui**:
    -   Navigate to dashboard when re-running tests from coverage page  -  by [@&#8203;userquin](https://togithub.com/userquin) in [vitest-dev/vitest#3529 [<samp>(bc283)</samp>](https://togithub.com/vitest-dev/vitest/commit/bc283ae3)
-   **vite-node**:
    -   Correctly resolve virtual modules  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3544 [<samp>(0cbb0)</samp>](https://togithub.com/vitest-dev/vitest/commit/0cbb07b4)
    -   Fix errors caused by commonjs export circular references  -  by [@&#8203;rxliuli](https://togithub.com/rxliuli) in [vitest-dev/vitest#3570 [<samp>(b097c)</samp>](https://togithub.com/vitest-dev/vitest/commit/b097cef8)

#####     [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.32.0...v0.32.1)

### [`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 [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3307 [<samp>(1ad63)</samp>](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 [@&#8203;nickmccurdy](https://togithub.com/nickmccurdy) in [vitest-dev/vitest#3392 [<samp>(19ecc)</samp>](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 [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3339 [<samp>(82112)</samp>](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 [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3518 [<samp>(c1004)</samp>](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 [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3490 [<samp>(89842)</samp>](https://togithub.com/vitest-dev/vitest/commit/898422b0)
-   Image type add apng  -  by [@&#8203;btea](https://togithub.com/btea) in [vitest-dev/vitest#3498 [<samp>(a53c2)</samp>](https://togithub.com/vitest-dev/vitest/commit/a53c2151)
-   **expect**: Support `expect.soft`  -  by [@&#8203;Dunqing](https://togithub.com/Dunqing) in [vitest-dev/vitest#3507 [<samp>(7c687)</samp>](https://togithub.com/vitest-dev/vitest/commit/7c687ada)
-   **runner**: Support using function/class as `describe`/`test` name  -  by [@&#8203;fenghan34](https://togithub.com/fenghan34) in [vitest-dev/vitest#3497 [<samp>(15253)</samp>](https://togithub.com/vitest-dev/vitest/commit/15253890)

#####    🐞 Bug Fixes

-   The cli option is passed to coverage.exclude  -  by [@&#8203;btea](https://togithub.com/btea) in [vitest-dev/vitest#3506 [<samp>(c37cd)</samp>](https://togithub.com/vitest-dev/vitest/commit/c37cdebe)
-   **optimizer**: Always respect optimizeDeps even if include/exclude is overridden  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3488 [<samp>(eb285)</samp>](https://togithub.com/vitest-dev/vitest/commit/eb285ea0)
-   **runner**: Ensure Vitest is deduped  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3489 [<samp>(2deb7)</samp>](https://togithub.com/vitest-dev/vitest/commit/2deb70ab)
-   **ui**: Don't cache coverage assets  -  by [@&#8203;userquin](https://togithub.com/userquin) in [vitest-dev/vitest#3508 [<samp>(952b5)</samp>](https://togithub.com/vitest-dev/vitest/commit/952b5be6)
-   **vite-node**: Circular import stuck  -  by [@&#8203;Dunqing](https://togithub.com/Dunqing) in [vitest-dev/vitest#3480 [<samp>(50f07)</samp>](https://togithub.com/vitest-dev/vitest/commit/50f0700d)
-   **watch**: Junit reporter fails to re-generate report  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3496 [<samp>(5b73c)</samp>](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 [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3413 [<samp>(5a894)</samp>](https://togithub.com/vitest-dev/vitest/commit/5a894aa2)

#####    🐞 Bug Fixes

-   **vite-node**: Deps.inline doesn't work  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3485 [<samp>(be930)</samp>](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 [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3471 [<samp>(393bf)</samp>](https://togithub.com/vitest-dev/vitest/commit/393bf60c)

#####    🐞 Bug Fixes

-   **logger**: Print unhandled errors before summary  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3474 [<samp>(4c9a7)</samp>](https://togithub.com/vitest-dev/vitest/commit/4c9a7d58)
-   **runner**: Suite options do not propagate to nested suites (fix: [#&#8203;3467](https://togithub.com/vitest-dev/vitest/issues/3467))  -  by [@&#8203;xsjcTony](https://togithub.com/xsjcTony) in [vitest-dev/vitest#3473 and [vitest-dev/vitest#3467 [<samp>(9fb9d)</samp>](https://togithub.com/vitest-dev/vitest/commit/9fb9dacb)
-   **vite-node**: Clear importers when invalidating module  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3475 [<samp>(add29)</samp>](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 [@&#8203;fenghan34](https://togithub.com/fenghan34) and [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3360 [<samp>(7c2f7)</samp>](https://togithub.com/vitest-dev/vitest/commit/7c2f7088)
-   Pass down meta information to Node.js process  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) and [@&#8203;dammy001](https://togithub.com/dammy001) in [vitest-dev/vitest#3449 [<samp>(e39ad)</samp>](https://togithub.com/vitest-dev/vitest/commit/e39adea8)
-   **coverage**: Add `reportOnFailure` option  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) and [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3453 [<samp>(1988f)</samp>](https://togithub.com/vitest-dev/vitest/commit/1988fcb4)
-   **dev**: Add moduleDirectories option to the vitest config  -  by [@&#8203;fooddilsn](https://togithub.com/fooddilsn) and [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3337 [<samp>(b3602)</samp>](https://togithub.com/vitest-dev/vitest/commit/b3602bcc)

#####    🐞 Bug Fixes

-   Don't print empty diff  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3437 [<samp>(32b53)</samp>](https://togithub.com/vitest-dev/vitest/commit/32b5361f)
-   Don't restore methods in automocked dependencies  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3438 [<samp>(d1afd)</samp>](https://togithub.com/vitest-dev/vitest/commit/d1afd262)
-   Dot reporter scrollback buffer spam  -  by [@&#8203;gtm-nayan](https://togithub.com/gtm-nayan) in [vitest-dev/vitest#3415 [<samp>(e6792)</samp>](https://togithub.com/vitest-dev/vitest/commit/e6792a94)
-   Gracefully exit when first `SIGINT` is received  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3407 [<samp>(a2cc2)</samp>](https://togithub.com/vitest-dev/vitest/commit/a2cc2b38)
-   `rejects` & `resolves` breaks with thenable objects  -  by [@&#8203;fenghan34](https://togithub.com/fenghan34) in [vitest-dev/vitest#3456 [<samp>(4e996)</samp>](https://togithub.com/vitest-dev/vitest/commit/4e996ae5)
-   Prevent `birpc` timeouts when `Math.random` mock is not restored  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3460 [<samp>(cd5d5)</samp>](https://togithub.com/vitest-dev/vitest/commit/cd5d58b7)
-   Assertion diff message now handle non writable property correctly  -  by [@&#8203;PCreations](https://togithub.com/PCreations) in [vitest-dev/vitest#3422 [<samp>(f75ab)</samp>](https://togithub.com/vitest-dev/vitest/commit/f75ab650)
-   Extend logging of process timeout errors  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3452 [<samp>(42643)</samp>](https://togithub.com/vitest-dev/vitest/commit/42643904)
-   Support requiring files with `less` extension  -  by [@&#8203;rluvaton](https://togithub.com/rluvaton) in [vitest-dev/vitest#3465 [<samp>(4d045)</samp>](https://togithub.com/vitest-dev/vitest/commit/4d045695)
-   **cli**:
    -   Improve colors used when erroring  -  by [@&#8203;ghiscoding](https://togithub.com/ghiscoding) and [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3349 [<samp>(16681)</samp>](https://togithub.com/vitest-dev/vitest/commit/16681791)
-   **runner**:
    -   Suite timeout does not take effect  -  by [@&#8203;btea](https://togithub.com/btea) in [vitest-dev/vitest#3455 [<samp>(82547)</samp>](https://togithub.com/vitest-dev/vitest/commit/82547376)
-   **spy**:
    -   Don't print received calls if there are no calls  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3405 [<samp>(41e11)</samp>](https://togithub.com/vitest-dev/vitest/commit/41e11dad)
-   **typecheck**:
    -   Show tsc errors not related to test files  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3441 [<samp>(a1da5)</samp>](https://togithub.com/vitest-dev/vitest/commit/a1da5714)
-   **types**:
    -   Fix `PartialMock` with async TReturns  -  by [@&#8203;ghry5](https://togithub.com/ghry5) in [vitest-dev/vitest#3462 [<samp>(b664d)</samp>](https://togithub.com/vitest-dev/vitest/commit/b664d42c)
-   **vite-node**:
    -   Circular import stuck  -  by [@&#8203;Dunqing](https://togithub.com/Dunqing) in [vitest-dev/vitest#3418 [<samp>(632ee)</samp>](https://togithub.com/vitest-dev/vitest/commit/632eef40)
    -   Coerce to string in import(dep)  -  by [@&#8203;jcbhmr](https://togithub.com/jcbhmr) and [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3430 [<samp>(b72eb)</samp>](https://togithub.com/vitest-dev/vitest/commit/b72ebdb9)
    -   Don't remove sourcemap string in source code  -  by [@&#8203;rxliuli](https://togithub.com/rxliuli) and [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#2918 and [vitest-dev/vitest#3379 [<samp>(02dc9)</samp>](https://togithub.com/vitest-dev/vitest/commit/02dc9ea7)
    -   Don't externalize "dist" by default  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3446 [<samp>(306b2)</samp>](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 [@&#8203;Dunqing](https://togithub.com/Dunqing) and [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3305 [<samp>(69d27)</samp>](https://togithub.com/vitest-dev/vitest/commit/69d27117)

#####    🐞 Bug Fixes

-   Make sure thrown error is an object  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3298 [<samp>(a93be)</samp>](https://togithub.com/vitest-dev/vitest/commit/a93be56c)
-   Remove duplicate type  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3303 [<samp>(5382e)</samp>](https://togithub.com/vitest-dev/vitest/commit/5382e8b6)
-   Throw an error, if tests are collected with a different vitest version  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3301 [<samp>(708b1)</samp>](https://togithub.com/vitest-dev/vitest/commit/708b10fe)
-   Support application/x-gzip metadata in html report  -  by [@&#8203;mzanelee](https://togithub.com/mzanelee) and **Michael Lee** in [vitest-dev/vitest#3333 [<samp>(5bf7e)</samp>](https://togithub.com/vitest-dev/vitest/commit/5bf7eb6e)
-   Correctly restore vi.fn implementation  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3341 [<samp>(2aff8)</samp>](https://togithub.com/vitest-dev/vitest/commit/2aff8c5f)
-   Display error message correctly  -  by [@&#8203;btea](https://togithub.com/btea) in [vitest-dev/vitest#3314 [<samp>(a5b3d)</samp>](https://togithub.com/vitest-dev/vitest/commit/a5b3d78e)
-   Exclude `cwd` from test name filter  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3353 [<samp>(324a9)</samp>](https://togithub.com/vitest-dev/vitest/commit/324a9b54)
-   Check error type before modifying it  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3385 [<samp>(c44d9)</samp>](https://togithub.com/vitest-dev/vitest/commit/c44d9912)
-   `toMatchInlineSnapshot` fails when file path includes parentheses  -  by [@&#8203;pacexy](https://togithub.com/pacexy) in [vitest-dev/vitest#3370 and [vitest-dev/vitest#3371 [<samp>(dcf13)</samp>](https://togithub.com/vitest-dev/vitest/commit/dcf1346a)
-   Stop spying on a method, when it's restored  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3386 [<samp>(2cb1a)</samp>](https://togithub.com/vitest-dev/vitest/commit/2cb1a15a)
-   Test repeats  -  by [@&#8203;fenghan34](https://togithub.com/fenghan34) in [vitest-dev/vitest#3369 [<samp>(fb8fc)</samp>](https://togithub.com/vitest-dev/vitest/commit/fb8fc7ab)
-   **browser**:
    -   Throw an error if test failed to load  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3390 [<samp>(b354b)</samp>](https://togithub.com/vitest-dev/vitest/commit/b354bc1c)
    -   Keep default export when rewriting exports  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3389 [<samp>(6501d)</samp>](https://togithub.com/vitest-dev/vitest/commit/6501d2e3)
-   **cli**:
    -   Improve cac errors when mixing boolean and dot notation  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3302 [<samp>(93fbd)</samp>](https://togithub.com/vitest-dev/vitest/commit/93fbd02d)
-   **reporter**:
    -   Prevent deleting test reports stored in coverage directory  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3331 [<samp>(ddbba)</samp>](https://togithub.com/vitest-dev/vitest/commit/ddbba396)
-   **typecheck**:
    -   Correctly resolve custom tsconfig path  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3342 [<samp>(c53ae)</samp>](https://togithub.com/vitest-dev/vitest/commit/c53ae079)
-   **vite-node**:
    -   Allow returning id not wrapped in promise  -  by [@&#8203;danielroe](https://togithub.com/danielroe) in [vitest-dev/vitest#3312 [<samp>(9836c)</samp>](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 [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3294 [<samp>(cf3af)</samp>](https://togithub.com/vitest-dev/vitest/commit/cf3afe2b)

    -   The change should be minor:

    ```diff
    - declare namespace Vi {
    + declare module 'vitest' {
       interface Assertion<T = any> extends CustomMatchers<T> {}
       interface AsymmetricMatchersContaining extends CustomMatchers {}
    }
    ```

#####    🚀 Features

-   Update mock implementation to support ESM runtime, introduce "vi.hoisted"  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3258 [<samp>(0c09a)</samp>](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 [@&#8203;samkevin1](https://togithub.com/samkevin1) in [vitest-dev/vitest#2652 [<samp>(7c8f0)</samp>](https://togithub.com/vitest-dev/vitest/commit/7c8f0ba9)
-   Add an option to hide skipped test lines  -  by [@&#8203;g4rry420](https://togithub.com/g4rry420) and [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#2745 [<samp>(9bdb1)</samp>](https://togithub.com/vitest-dev/vitest/commit/9bdb1603)
-   **coverage**: Watermarks for c8  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3254 [<samp>(730af)</samp>](https://togithub.com/vitest-dev/vitest/commit/730af0b4)
-   **ui**: Add html coverage  -  by [@&#8203;userquin](https://togithub.com/userquin) and [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3071 [<samp>(e24cd)</samp>](https://togithub.com/vitest-dev/vitest/commit/e24cd9b2)
-   **watch**: Test run cancelling, feat: `--bail` option for cancelling test run  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3163 [<samp>(8d460)</samp>](https://togithub.com/vitest-dev/vitest/commit/8d4606eb)

#####    🐞 Bug Fixes

-   Don't call global setup teardown twice  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3188 [<samp>(ba3d1)</samp>](https://togithub.com/vitest-dev/vitest/commit/ba3d1338)
-   Reporter to log version before provider initalizations  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3131 [<samp>(481b1)</samp>](https://togithub.com/vitest-dev/vitest/commit/481b1fd2)
-   Throw an error if Vitest cannot access its internal state  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3250 [<samp>(fbb14)</samp>](https://togithub.com/vitest-dev/vitest/commit/fbb1468e)
-   Warning suppression broken  -  by [@&#8203;IceQub3](https://togithub.com/IceQub3) in [vitest-dev/vitest#3270 and [vitest-dev/vitest#3271 [<samp>(036de)</samp>](https://togithub.com/vitest-dev/vitest/commit/036de797)
-   Show correct diff in "toHaveBeenCalledWith"  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3289 [<samp>(19fcd)</samp>](https://togithub.com/vitest-dev/vitest/commit/19fcd8df)
-   Don't print esm warning, if package name is not found  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3292 [<samp>(62c14)</samp>](https://togithub.com/vitest-dev/vitest/commit/62c14cba)
-   Support exactOptionalPropertyTypes  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3293 [<samp>(ba81d)</samp>](https://togithub.com/vitest-dev/vitest/commit/ba81d8a3)
-   Don't inline vite hmr and rollup types  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3291 [<samp>(1f118)</samp>](https://togithub.com/vitest-dev/vitest/commit/1f1189bc)
-   **browser**:
    -   Failing to load vitest/utils  -  by [@&#8203;userquin](https://togithub.com/userquin) in [vitest-dev/vitest#3190 [<samp>(78bad)</samp>](https://togithub.com/vitest-dev/vitest/commit/78bad4ab)
-   **coverage**:
    -   `thresholdAutoUpdate` to work with `perFile`  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3182 [<samp>(29eeb)</samp>](https://togithub.com/vitest-dev/vitest/commit/29eebf65)
    -   Throw error if fail to load built-in provider  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3217 [<samp>(0a287)</samp>](https://togithub.com/vitest-dev/vitest/commit/0a2875e3)
    -   Stackblitz hangs with c8  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3225 [<samp>(d9fda)</samp>](https://togithub.com/vitest-dev/vitest/commit/d9fda2a1)
    -   C8 to ignore vite's generated helpers  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3241 [<samp>(21942)</samp>](https://togithub.com/vitest-dev/vitest/commit/21942db0)
    -   Workspaces c8 source maps  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3226 [<samp>(efce3)</samp>](https://togithub.com/vitest-dev/vitest/commit/efce3b4d)
-   **docs**:
    -   Correct typo and broken link to WebdriverIO  -  by [@&#8203;nathanbabcock](https://togithub.com/nathanbabcock) in [vitest-dev/vitest#3275 [<samp>(c7da1)</samp>](https://togithub.com/vitest-dev/vitest/commit/c7da155f)
-   **spy**:
    -   Update to set initial implementation through normal logic  -  by [@&#8203;Codex-](https://togithub.com/Codex-) in [vitest-dev/vitest#3260 and [vitest-dev/vitest#3263 [<samp>(c759a)</samp>](https://togithub.com/vitest-dev/vitest/commit/c759a9aa)
-   **vite-node**:
    -   Circular imports  -  by [@&#8203;antfu](https://togithub.com/antfu) in [vitest-dev/vitest#3196 [<samp>(cbb59)</samp>](https://togithub.com/vitest-dev/vitest/commit/cbb593a8)
    -   Add missing `import.meta.hot.send` mock  -  by [@&#8203;antfu](https://togithub.com/antfu) [<samp>(b1624)</samp>](https://togithub.com/vitest-dev/vitest/commit/b1624db5)
-   **vitest**:
    -   Also check for vite relative to vitest package  -  by [@&#8203;JoshuaKGoldberg](https://togithub.com/JoshuaKGoldberg) and [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3274 [<samp>(a3393)</samp>](https://togithub.com/vitest-dev/vitest/commit/a3393b15)
-   **watch**:
    -   Run test files when added to filesystem  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3189 [<samp>(7b2c8)</samp>](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)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 9pm on sunday" (UTC), 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.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/ascorbic/unpic-img).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS4xMzEuMCIsInVwZGF0ZWRJblZlciI6IjM1LjEzMS4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->
bodinsamuel added a commit to specfy/stack-analyser that referenced this pull request Jul 9, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[@vitest/coverage-c8](https://togithub.com/vitest-dev/vitest/tree/main/packages/coverage-c8#readme)
([source](https://togithub.com/vitest-dev/vitest)) | [`0.30.1` ->
`0.33.0`](https://renovatebot.com/diffs/npm/@vitest%2fcoverage-c8/0.30.1/0.33.0)
|
[![age](https://badges.renovateapi.com/packages/npm/@vitest%2fcoverage-c8/0.33.0/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/npm/@vitest%2fcoverage-c8/0.33.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/npm/@vitest%2fcoverage-c8/0.33.0/compatibility-slim/0.30.1)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/npm/@vitest%2fcoverage-c8/0.33.0/confidence-slim/0.30.1)](https://docs.renovatebot.com/merge-confidence/)
|
| [vitest](https://togithub.com/vitest-dev/vitest) | [`0.30.1` ->
`0.33.0`](https://renovatebot.com/diffs/npm/vitest/0.30.1/0.33.0) |
[![age](https://badges.renovateapi.com/packages/npm/vitest/0.33.0/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/npm/vitest/0.33.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/npm/vitest/0.33.0/compatibility-slim/0.30.1)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/npm/vitest/0.33.0/confidence-slim/0.30.1)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>vitest-dev/vitest (@&#8203;vitest/coverage-c8)</summary>

###
[`v0.33.0`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.33.0)

[Compare
Source](https://togithub.com/vitest-dev/vitest/compare/v0.32.4...v0.33.0)

#####    🚨 Breaking Changes

- Revert default include patterns  -  by
[@&#8203;so1ve](https://togithub.com/so1ve)
[#&#8203;3729](https://togithub.com/vitest-dev/vitest/issues/3729)
- `0.32.0` changed the default `include` globs to be compatible with
Jest. After a discussion with the community, we are reverting this
change because it turned out to be non-intuitive.

#####    🐞 Bug Fixes

- Add missing JSDom living keys  -  by
[@&#8203;DerZade](https://togithub.com/DerZade) in
[vitest-dev/vitest#3702
[<samp>(83a86)</samp>](https://togithub.com/vitest-dev/vitest/commit/83a86a75)
-   **vite-node**:
- Don't fail when importing Promise module  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va)
[<samp>(08192)</samp>](https://togithub.com/vitest-dev/vitest/commit/0819275a)
- Allow importing node:test  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va)
[<samp>(db22c)</samp>](https://togithub.com/vitest-dev/vitest/commit/db22c677)

#####     [View changes on
GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.32.4...v0.33.0)

###
[`v0.32.4`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.32.4)

[Compare
Source](https://togithub.com/vitest-dev/vitest/compare/v0.32.3...v0.32.4)

#####    🐞 Bug Fixes

- **browser**: Correctly optimize CJS dependencies  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va)
[<samp>(3d090)</samp>](https://togithub.com/vitest-dev/vitest/commit/3d0908e7)

#####     [View changes on
GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.32.3...v0.32.4)

###
[`v0.32.3`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.32.3)

[Compare
Source](https://togithub.com/vitest-dev/vitest/compare/v0.32.2...v0.32.3)

#####    🚀 Features

- Add `concurrent` option to `sequence` config  -  by
[@&#8203;fenghan34](https://togithub.com/fenghan34) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3604
[<samp>(f427f)</samp>](https://togithub.com/vitest-dev/vitest/commit/f427f004)
- Introduce global configuration for retry setting  -  by
[@&#8203;imentu](https://togithub.com/imentu) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3598
and
[vitest-dev/vitest#3603
[<samp>(9a117)</samp>](https://togithub.com/vitest-dev/vitest/commit/9a117627)
- Don't rely on util package in
[@&#8203;vitest/utils](https://togithub.com/vitest/utils)  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3685
[<samp>(f91da)</samp>](https://togithub.com/vitest-dev/vitest/commit/f91da484)
- Support accessing other fixtures in fixture function  -  by
[@&#8203;fenghan34](https://togithub.com/fenghan34) in
[vitest-dev/vitest#3651
[<samp>(1621c)</samp>](https://togithub.com/vitest-dev/vitest/commit/1621cc63)
- Support use function/class as `bench` name  -  by
[@&#8203;fenghan34](https://togithub.com/fenghan34) in
[vitest-dev/vitest#3711
[<samp>(a749a)</samp>](https://togithub.com/vitest-dev/vitest/commit/a749a6c0)
- **reporters**: Show full test suite when testing 1 spec file at a time
 -  by [@&#8203;Dunqing](https://togithub.com/Dunqing) in
[vitest-dev/vitest#3543
[<samp>(7531c)</samp>](https://togithub.com/vitest-dev/vitest/commit/7531c292)
- **runner**: Support `test.extend`  -  by
[@&#8203;fenghan34](https://togithub.com/fenghan34) in
[vitest-dev/vitest#3554
[<samp>(2db1a)</samp>](https://togithub.com/vitest-dev/vitest/commit/2db1a737)

#####    🐞 Bug Fixes

- Remove "concordance" from dependencies list  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3597
[<samp>(969dc)</samp>](https://togithub.com/vitest-dev/vitest/commit/969dcc14)
- Show diff correctly  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3620
[<samp>(73dd4)</samp>](https://togithub.com/vitest-dev/vitest/commit/73dd4ab5)
- Util import  -  by [@&#8203;fubhy](https://togithub.com/fubhy) in
[vitest-dev/vitest#3621
[<samp>(2fb4c)</samp>](https://togithub.com/vitest-dev/vitest/commit/2fb4ceff)
- Compat with frozen Math  -  by
[@&#8203;turadg](https://togithub.com/turadg) in
[vitest-dev/vitest#3527
[<samp>(0db67)</samp>](https://togithub.com/vitest-dev/vitest/commit/0db67098)
- `CTRL+C` to terminate run  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3642
[<samp>(fa663)</samp>](https://togithub.com/vitest-dev/vitest/commit/fa6637d3)
- Run mode stuck in TTY terminals  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3690
[<samp>(141a8)</samp>](https://togithub.com/vitest-dev/vitest/commit/141a86ac)
- Use first stack frame in json reporter  -  by
[@&#8203;tim-smart](https://togithub.com/tim-smart) in
[vitest-dev/vitest#3645
[<samp>(80ea7)</samp>](https://togithub.com/vitest-dev/vitest/commit/80ea7ef6)
- Print actual number for `toBeCalledTimes`  -  by
[@&#8203;antfu](https://togithub.com/antfu) in
[vitest-dev/vitest#3696
[<samp>(d3640)</samp>](https://togithub.com/vitest-dev/vitest/commit/d3640437)
-   **benchmark**:
- Don't fail when running correct benchmarks  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3629
[<samp>(edad9)</samp>](https://togithub.com/vitest-dev/vitest/commit/edad9b19)
-   **browser**:
- Correctly print diff  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3627
[<samp>(d756e)</samp>](https://togithub.com/vitest-dev/vitest/commit/d756ee24)
- Esm injector doesn't replace class expressions  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3641
[<samp>(5c0ac)</samp>](https://togithub.com/vitest-dev/vitest/commit/5c0ac4ad)
- Transform superclass identifier  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3681
[<samp>(a1e04)</samp>](https://togithub.com/vitest-dev/vitest/commit/a1e043bd)
-   **coverage**:
- `v8` to prevent crash on dynamic CJS files  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3657
[<samp>(40f18)</samp>](https://togithub.com/vitest-dev/vitest/commit/40f18a07)
-   **runner**:
- Make the default value of `retry` and `repeats` 0  -  by
[@&#8203;Dunqing](https://togithub.com/Dunqing) in
[vitest-dev/vitest#3638
[<samp>(6d146)</samp>](https://togithub.com/vitest-dev/vitest/commit/6d146d16)
-   **utils**:
- Respect all flags in format function  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3695
[<samp>(91e16)</samp>](https://togithub.com/vitest-dev/vitest/commit/91e1650e)
-   **watch**:
- Cancel using `h` key  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3618
[<samp>(60c36)</samp>](https://togithub.com/vitest-dev/vitest/commit/60c36faf)

#####     [View changes on
GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.32.2...v0.32.3)

###
[`v0.32.2`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.32.2)

[Compare
Source](https://togithub.com/vitest-dev/vitest/compare/v0.32.1...v0.32.2)

#####    🐞 Bug Fixes

- **browser**: Don't fail on importing diff-sequences  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va)
[<samp>(00b0e)</samp>](https://togithub.com/vitest-dev/vitest/commit/00b0e6a3)

#####     [View changes on
GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.32.1...v0.32.2)

###
[`v0.32.1`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.32.1)

[Compare
Source](https://togithub.com/vitest-dev/vitest/compare/v0.32.0...v0.32.1)

#####    🚀 Features

- Export `registerConsoleShortcuts` from `vitest/node`  -  by
[@&#8203;deot](https://togithub.com/deot) in
[vitest-dev/vitest#3563
[<samp>(bc49b)</samp>](https://togithub.com/vitest-dev/vitest/commit/bc49bac7)
- **expect**: Support `expect.unreachable`  -  by
[@&#8203;fenghan34](https://togithub.com/fenghan34) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3556
[<samp>(8e385)</samp>](https://togithub.com/vitest-dev/vitest/commit/8e385bb0)
- **runner**: `describe`/`test` name support anonymous function  -  by
[@&#8203;btea](https://togithub.com/btea) in
[vitest-dev/vitest#3562
[<samp>(3d436)</samp>](https://togithub.com/vitest-dev/vitest/commit/3d43638c)

#####    🐞 Bug Fixes

- Avoid call stack recursion with large error (fix:
[#&#8203;3060](https://togithub.com/vitest-dev/vitest/issues/3060))  - 
by [@&#8203;nathanmmiller](https://togithub.com/nathanmmiller) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3078
and
[vitest-dev/vitest#3060
[<samp>(02196)</samp>](https://togithub.com/vitest-dev/vitest/commit/02196f9d)
- Automatically remove define related configuration  -  by
[@&#8203;btea](https://togithub.com/btea) in
[vitest-dev/vitest#3552
[<samp>(368b8)</samp>](https://togithub.com/vitest-dev/vitest/commit/368b8259)
- Import `performance` from `perf_hooks`  -  by
[@&#8203;Max10240](https://togithub.com/Max10240) and
**wangbaolong.wbl** in
[vitest-dev/vitest#3578
and
[vitest-dev/vitest#3579
[<samp>(24ec8)</samp>](https://togithub.com/vitest-dev/vitest/commit/24ec85a8)
- Revert concordance diff, use jest's diff output  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3582
[<samp>(9c7ea)</samp>](https://togithub.com/vitest-dev/vitest/commit/9c7ea382)
- Typo in config suggestion  -  by
[@&#8203;Krisell](https://togithub.com/Krisell) in
[vitest-dev/vitest#3583
[<samp>(68985)</samp>](https://togithub.com/vitest-dev/vitest/commit/689855bb)
-   **browser**:
- Change optimized deps to use `vitest`  -  by
[@&#8203;userquin](https://togithub.com/userquin) in
[vitest-dev/vitest#3580
[<samp>(b4ac8)</samp>](https://togithub.com/vitest-dev/vitest/commit/b4ac88e9)
- Access **vi_inject** only if it was injected  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3587
[<samp>(d9e14)</samp>](https://togithub.com/vitest-dev/vitest/commit/d9e1419a)
-   **mocker**:
- Respect namespace import when hoisting vi.mock  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3547
[<samp>(158c4)</samp>](https://togithub.com/vitest-dev/vitest/commit/158c4bb0)
-   **ui**:
- Navigate to dashboard when re-running tests from coverage page  -  by
[@&#8203;userquin](https://togithub.com/userquin) in
[vitest-dev/vitest#3529
[<samp>(bc283)</samp>](https://togithub.com/vitest-dev/vitest/commit/bc283ae3)
-   **vite-node**:
- Correctly resolve virtual modules  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3544
[<samp>(0cbb0)</samp>](https://togithub.com/vitest-dev/vitest/commit/0cbb07b4)
- Fix errors caused by commonjs export circular references  -  by
[@&#8203;rxliuli](https://togithub.com/rxliuli) in
[vitest-dev/vitest#3570
[<samp>(b097c)</samp>](https://togithub.com/vitest-dev/vitest/commit/b097cef8)

#####     [View changes on
GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.32.0...v0.32.1)

###
[`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
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3307
[<samp>(1ad63)</samp>](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
[@&#8203;nickmccurdy](https://togithub.com/nickmccurdy) in
[vitest-dev/vitest#3392
[<samp>(19ecc)</samp>](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
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3339
[<samp>(82112)</samp>](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
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3518
[<samp>(c1004)</samp>](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
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3490
[<samp>(89842)</samp>](https://togithub.com/vitest-dev/vitest/commit/898422b0)
- Image type add apng  -  by [@&#8203;btea](https://togithub.com/btea)
in
[vitest-dev/vitest#3498
[<samp>(a53c2)</samp>](https://togithub.com/vitest-dev/vitest/commit/a53c2151)
- **expect**: Support `expect.soft`  -  by
[@&#8203;Dunqing](https://togithub.com/Dunqing) in
[vitest-dev/vitest#3507
[<samp>(7c687)</samp>](https://togithub.com/vitest-dev/vitest/commit/7c687ada)
- **runner**: Support using function/class as `describe`/`test` name  - 
by [@&#8203;fenghan34](https://togithub.com/fenghan34) in
[vitest-dev/vitest#3497
[<samp>(15253)</samp>](https://togithub.com/vitest-dev/vitest/commit/15253890)

#####    🐞 Bug Fixes

- The cli option is passed to coverage.exclude  -  by
[@&#8203;btea](https://togithub.com/btea) in
[vitest-dev/vitest#3506
[<samp>(c37cd)</samp>](https://togithub.com/vitest-dev/vitest/commit/c37cdebe)
- **optimizer**: Always respect optimizeDeps even if include/exclude is
overridden  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3488
[<samp>(eb285)</samp>](https://togithub.com/vitest-dev/vitest/commit/eb285ea0)
- **runner**: Ensure Vitest is deduped  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3489
[<samp>(2deb7)</samp>](https://togithub.com/vitest-dev/vitest/commit/2deb70ab)
- **ui**: Don't cache coverage assets  -  by
[@&#8203;userquin](https://togithub.com/userquin) in
[vitest-dev/vitest#3508
[<samp>(952b5)</samp>](https://togithub.com/vitest-dev/vitest/commit/952b5be6)
- **vite-node**: Circular import stuck  -  by
[@&#8203;Dunqing](https://togithub.com/Dunqing) in
[vitest-dev/vitest#3480
[<samp>(50f07)</samp>](https://togithub.com/vitest-dev/vitest/commit/50f0700d)
- **watch**: Junit reporter fails to re-generate report  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3496
[<samp>(5b73c)</samp>](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
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3413
[<samp>(5a894)</samp>](https://togithub.com/vitest-dev/vitest/commit/5a894aa2)

#####    🐞 Bug Fixes

- **vite-node**: Deps.inline doesn't work  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3485
[<samp>(be930)</samp>](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
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3471
[<samp>(393bf)</samp>](https://togithub.com/vitest-dev/vitest/commit/393bf60c)

#####    🐞 Bug Fixes

- **logger**: Print unhandled errors before summary  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3474
[<samp>(4c9a7)</samp>](https://togithub.com/vitest-dev/vitest/commit/4c9a7d58)
- **runner**: Suite options do not propagate to nested suites (fix:
[#&#8203;3467](https://togithub.com/vitest-dev/vitest/issues/3467))  - 
by [@&#8203;xsjcTony](https://togithub.com/xsjcTony) in
[vitest-dev/vitest#3473
and
[vitest-dev/vitest#3467
[<samp>(9fb9d)</samp>](https://togithub.com/vitest-dev/vitest/commit/9fb9dacb)
- **vite-node**: Clear importers when invalidating module  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3475
[<samp>(add29)</samp>](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
[@&#8203;fenghan34](https://togithub.com/fenghan34) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3360
[<samp>(7c2f7)</samp>](https://togithub.com/vitest-dev/vitest/commit/7c2f7088)
- Pass down meta information to Node.js process  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) and
[@&#8203;dammy001](https://togithub.com/dammy001) in
[vitest-dev/vitest#3449
[<samp>(e39ad)</samp>](https://togithub.com/vitest-dev/vitest/commit/e39adea8)
- **coverage**: Add `reportOnFailure` option  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3453
[<samp>(1988f)</samp>](https://togithub.com/vitest-dev/vitest/commit/1988fcb4)
- **dev**: Add moduleDirectories option to the vitest config  -  by
[@&#8203;fooddilsn](https://togithub.com/fooddilsn) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3337
[<samp>(b3602)</samp>](https://togithub.com/vitest-dev/vitest/commit/b3602bcc)

#####    🐞 Bug Fixes

- Don't print empty diff  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3437
[<samp>(32b53)</samp>](https://togithub.com/vitest-dev/vitest/commit/32b5361f)
- Don't restore methods in automocked dependencies  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3438
[<samp>(d1afd)</samp>](https://togithub.com/vitest-dev/vitest/commit/d1afd262)
- Dot reporter scrollback buffer spam  -  by
[@&#8203;gtm-nayan](https://togithub.com/gtm-nayan) in
[vitest-dev/vitest#3415
[<samp>(e6792)</samp>](https://togithub.com/vitest-dev/vitest/commit/e6792a94)
- Gracefully exit when first `SIGINT` is received  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3407
[<samp>(a2cc2)</samp>](https://togithub.com/vitest-dev/vitest/commit/a2cc2b38)
- `rejects` & `resolves` breaks with thenable objects  -  by
[@&#8203;fenghan34](https://togithub.com/fenghan34) in
[vitest-dev/vitest#3456
[<samp>(4e996)</samp>](https://togithub.com/vitest-dev/vitest/commit/4e996ae5)
- Prevent `birpc` timeouts when `Math.random` mock is not restored  - 
by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3460
[<samp>(cd5d5)</samp>](https://togithub.com/vitest-dev/vitest/commit/cd5d58b7)
- Assertion diff message now handle non writable property correctly  - 
by [@&#8203;PCreations](https://togithub.com/PCreations) in
[vitest-dev/vitest#3422
[<samp>(f75ab)</samp>](https://togithub.com/vitest-dev/vitest/commit/f75ab650)
- Extend logging of process timeout errors  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3452
[<samp>(42643)</samp>](https://togithub.com/vitest-dev/vitest/commit/42643904)
- Support requiring files with `less` extension  -  by
[@&#8203;rluvaton](https://togithub.com/rluvaton) in
[vitest-dev/vitest#3465
[<samp>(4d045)</samp>](https://togithub.com/vitest-dev/vitest/commit/4d045695)
-   **cli**:
- Improve colors used when erroring  -  by
[@&#8203;ghiscoding](https://togithub.com/ghiscoding) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3349
[<samp>(16681)</samp>](https://togithub.com/vitest-dev/vitest/commit/16681791)
-   **runner**:
- Suite timeout does not take effect  -  by
[@&#8203;btea](https://togithub.com/btea) in
[vitest-dev/vitest#3455
[<samp>(82547)</samp>](https://togithub.com/vitest-dev/vitest/commit/82547376)
-   **spy**:
- Don't print received calls if there are no calls  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3405
[<samp>(41e11)</samp>](https://togithub.com/vitest-dev/vitest/commit/41e11dad)
-   **typecheck**:
- Show tsc errors not related to test files  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3441
[<samp>(a1da5)</samp>](https://togithub.com/vitest-dev/vitest/commit/a1da5714)
-   **types**:
- Fix `PartialMock` with async TReturns  -  by
[@&#8203;ghry5](https://togithub.com/ghry5) in
[vitest-dev/vitest#3462
[<samp>(b664d)</samp>](https://togithub.com/vitest-dev/vitest/commit/b664d42c)
-   **vite-node**:
- Circular import stuck  -  by
[@&#8203;Dunqing](https://togithub.com/Dunqing) in
[vitest-dev/vitest#3418
[<samp>(632ee)</samp>](https://togithub.com/vitest-dev/vitest/commit/632eef40)
- Coerce to string in import(dep)  -  by
[@&#8203;jcbhmr](https://togithub.com/jcbhmr) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3430
[<samp>(b72eb)</samp>](https://togithub.com/vitest-dev/vitest/commit/b72ebdb9)
- Don't remove sourcemap string in source code  -  by
[@&#8203;rxliuli](https://togithub.com/rxliuli) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#2918
and
[vitest-dev/vitest#3379
[<samp>(02dc9)</samp>](https://togithub.com/vitest-dev/vitest/commit/02dc9ea7)
- Don't externalize "dist" by default  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3446
[<samp>(306b2)</samp>](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
[@&#8203;Dunqing](https://togithub.com/Dunqing) and
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3305
[<samp>(69d27)</samp>](https://togithub.com/vitest-dev/vitest/commit/69d27117)

#####    🐞 Bug Fixes

- Make sure thrown error is an object  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3298
[<samp>(a93be)</samp>](https://togithub.com/vitest-dev/vitest/commit/a93be56c)
- Remove duplicate type  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3303
[<samp>(5382e)</samp>](https://togithub.com/vitest-dev/vitest/commit/5382e8b6)
- Throw an error, if tests are collected with a different vitest version
 -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3301
[<samp>(708b1)</samp>](https://togithub.com/vitest-dev/vitest/commit/708b10fe)
- Support application/x-gzip metadata in html report  -  by
[@&#8203;mzanelee](https://togithub.com/mzanelee) and **Michael Lee** in
[vitest-dev/vitest#3333
[<samp>(5bf7e)</samp>](https://togithub.com/vitest-dev/vitest/commit/5bf7eb6e)
- Correctly restore vi.fn implementation  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3341
[<samp>(2aff8)</samp>](https://togithub.com/vitest-dev/vitest/commit/2aff8c5f)
- Display error message correctly  -  by
[@&#8203;btea](https://togithub.com/btea) in
[vitest-dev/vitest#3314
[<samp>(a5b3d)</samp>](https://togithub.com/vitest-dev/vitest/commit/a5b3d78e)
- Exclude `cwd` from test name filter  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3353
[<samp>(324a9)</samp>](https://togithub.com/vitest-dev/vitest/commit/324a9b54)
- Check error type before modifying it  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3385
[<samp>(c44d9)</samp>](https://togithub.com/vitest-dev/vitest/commit/c44d9912)
- `toMatchInlineSnapshot` fails when file path includes parentheses  - 
by [@&#8203;pacexy](https://togithub.com/pacexy) in
[vitest-dev/vitest#3370
and
[vitest-dev/vitest#3371
[<samp>(dcf13)</samp>](https://togithub.com/vitest-dev/vitest/commit/dcf1346a)
- Stop spying on a method, when it's restored  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3386
[<samp>(2cb1a)</samp>](https://togithub.com/vitest-dev/vitest/commit/2cb1a15a)
- Test repeats  -  by
[@&#8203;fenghan34](https://togithub.com/fenghan34) in
[vitest-dev/vitest#3369
[<samp>(fb8fc)</samp>](https://togithub.com/vitest-dev/vitest/commit/fb8fc7ab)
-   **browser**:
- Throw an error if test failed to load  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3390
[<samp>(b354b)</samp>](https://togithub.com/vitest-dev/vitest/commit/b354bc1c)
- Keep default export when rewriting exports  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3389
[<samp>(6501d)</samp>](https://togithub.com/vitest-dev/vitest/commit/6501d2e3)
-   **cli**:
- Improve cac errors when mixing boolean and dot notation  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3302
[<samp>(93fbd)</samp>](https://togithub.com/vitest-dev/vitest/commit/93fbd02d)
-   **reporter**:
- Prevent deleting test reports stored in coverage directory  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3331
[<samp>(ddbba)</samp>](https://togithub.com/vitest-dev/vitest/commit/ddbba396)
-   **typecheck**:
- Correctly resolve custom tsconfig path  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3342
[<samp>(c53ae)</samp>](https://togithub.com/vitest-dev/vitest/commit/c53ae079)
-   **vite-node**:
- Allow returning id not wrapped in promise  -  by
[@&#8203;danielroe](https://togithub.com/danielroe) in
[vitest-dev/vitest#3312
[<samp>(9836c)</samp>](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
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3294
[<samp>(cf3af)</samp>](https://togithub.com/vitest-dev/vitest/commit/cf3afe2b)

    -   The change should be minor:

    ```diff
    - declare namespace Vi {
    + declare module 'vitest' {
       interface Assertion<T = any> extends CustomMatchers<T> {}
       interface AsymmetricMatchersContaining extends CustomMatchers {}
    }
    ```

#####    🚀 Features

- Update mock implementation to support ESM runtime, introduce
"vi.hoisted"  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3258
[<samp>(0c09a)</samp>](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
[@&#8203;samkevin1](https://togithub.com/samkevin1) in
[vitest-dev/vitest#2652
[<samp>(7c8f0)</samp>](https://togithub.com/vitest-dev/vitest/commit/7c8f0ba9)
- Add an option to hide skipped test lines  -  by
[@&#8203;g4rry420](https://togithub.com/g4rry420) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#2745
[<samp>(9bdb1)</samp>](https://togithub.com/vitest-dev/vitest/commit/9bdb1603)
- **coverage**: Watermarks for c8  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3254
[<samp>(730af)</samp>](https://togithub.com/vitest-dev/vitest/commit/730af0b4)
- **ui**: Add html coverage  -  by
[@&#8203;userquin](https://togithub.com/userquin) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3071
[<samp>(e24cd)</samp>](https://togithub.com/vitest-dev/vitest/commit/e24cd9b2)
- **watch**: Test run cancelling, feat: `--bail` option for cancelling
test run  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3163
[<samp>(8d460)</samp>](https://togithub.com/vitest-dev/vitest/commit/8d4606eb)

#####    🐞 Bug Fixes

- Don't call global setup teardown twice  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3188
[<samp>(ba3d1)</samp>](https://togithub.com/vitest-dev/vitest/commit/ba3d1338)
- Reporter to log version before provider initalizations  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3131
[<samp>(481b1)</samp>](https://togithub.com/vitest-dev/vitest/commit/481b1fd2)
- Throw an error if Vitest cannot access its internal state  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3250
[<samp>(fbb14)</samp>](https://togithub.com/vitest-dev/vitest/commit/fbb1468e)
- Warning suppression broken  -  by
[@&#8203;IceQub3](https://togithub.com/IceQub3) in
[vitest-dev/vitest#3270
and
[vitest-dev/vitest#3271
[<samp>(036de)</samp>](https://togithub.com/vitest-dev/vitest/commit/036de797)
- Show correct diff in "toHaveBeenCalledWith"  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3289
[<samp>(19fcd)</samp>](https://togithub.com/vitest-dev/vitest/commit/19fcd8df)
- Don't print esm warning, if package name is not found  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3292
[<samp>(62c14)</samp>](https://togithub.com/vitest-dev/vitest/commit/62c14cba)
- Support exactOptionalPropertyTypes  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3293
[<samp>(ba81d)</samp>](https://togithub.com/vitest-dev/vitest/commit/ba81d8a3)
- Don't inline vite hmr and rollup types  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3291
[<samp>(1f118)</samp>](https://togithub.com/vitest-dev/vitest/commit/1f1189bc)
-   **browser**:
- Failing to load vitest/utils  -  by
[@&#8203;userquin](https://togithub.com/userquin) in
[vitest-dev/vitest#3190
[<samp>(78bad)</samp>](https://togithub.com/vitest-dev/vitest/commit/78bad4ab)
-   **coverage**:
- `thresholdAutoUpdate` to work with `perFile`  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3182
[<samp>(29eeb)</samp>](https://togithub.com/vitest-dev/vitest/commit/29eebf65)
- Throw error if fail to load built-in provider  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3217
[<samp>(0a287)</samp>](https://togithub.com/vitest-dev/vitest/commit/0a2875e3)
- Stackblitz hangs with c8  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3225
[<samp>(d9fda)</samp>](https://togithub.com/vitest-dev/vitest/commit/d9fda2a1)
- C8 to ignore vite's generated helpers  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3241
[<samp>(21942)</samp>](https://togithub.com/vitest-dev/vitest/commit/21942db0)
- Workspaces c8 source maps  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3226
[<samp>(efce3)</samp>](https://togithub.com/vitest-dev/vitest/commit/efce3b4d)
-   **docs**:
- Correct typo and broken link to WebdriverIO  -  by
[@&#8203;nathanbabcock](https://togithub.com/nathanbabcock) in
[vitest-dev/vitest#3275
[<samp>(c7da1)</samp>](https://togithub.com/vitest-dev/vitest/commit/c7da155f)
-   **spy**:
- Update to set initial implementation through normal logic  -  by
[@&#8203;Codex-](https://togithub.com/Codex-) in
[vitest-dev/vitest#3260
and
[vitest-dev/vitest#3263
[<samp>(c759a)</samp>](https://togithub.com/vitest-dev/vitest/commit/c759a9aa)
-   **vite-node**:
- Circular imports  -  by [@&#8203;antfu](https://togithub.com/antfu) in
[vitest-dev/vitest#3196
[<samp>(cbb59)</samp>](https://togithub.com/vitest-dev/vitest/commit/cbb593a8)
- Add missing `import.meta.hot.send` mock  -  by
[@&#8203;antfu](https://togithub.com/antfu)
[<samp>(b1624)</samp>](https://togithub.com/vitest-dev/vitest/commit/b1624db5)
-   **vitest**:
- Also check for vite relative to vitest package  -  by
[@&#8203;JoshuaKGoldberg](https://togithub.com/JoshuaKGoldberg) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3274
[<samp>(a3393)</samp>](https://togithub.com/vitest-dev/vitest/commit/a3393b15)
-   **watch**:
- Run test files when added to filesystem  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3189
[<samp>(7b2c8)</samp>](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)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 4pm on friday,before 9am on
monday,every weekend" in timezone Europe/Paris, 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.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/specfy/stack-analyser).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi41LjMiLCJ1cGRhdGVkSW5WZXIiOiIzNi41LjMiLCJ0YXJnZXRCcmFuY2giOiJjaG9yZS9yZW5vdmF0ZUJhc2VCcmFuY2gifQ==-->

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Samuel Bodin <1637651+bodinsamuel@users.noreply.github.com>
unicornware added a commit to flex-development/tutils that referenced this pull request Jul 18, 2023
- bump vite from 4.3.9 to 4.4.4
- bump vitest from 0.32.2 to 0.33.0
- drop @vitest/ui and serve
- reorganize fixtures
- replace @vitest/coverage-c8 with @vitest/coverage-v8
- vitest-dev/vitest#3339

Signed-off-by: Lexus Drumgold <unicornware@flexdevelopment.llc>
unicornware added a commit to flex-development/tutils that referenced this pull request Jul 18, 2023
- bump vite from 4.3.9 to 4.4.4
- bump vitest from 0.32.2 to 0.33.0
- drop @vitest/ui and serve
- reorganize fixtures
- replace @vitest/coverage-c8 with @vitest/coverage-v8
- vitest-dev/vitest#3339

Signed-off-by: Lexus Drumgold <unicornware@flexdevelopment.llc>
alanwhy added a commit to NI-Web-Infra-Team/common-utils that referenced this pull request Jul 19, 2023
* ci: 新增 action 手动触发

* ci: 新增手动 action 提示

* chore(release): 1.1.0-beta.1 [skip ci]

# [1.1.0-beta.1](v1.0.0...v1.1.0-beta.1) (2023-06-14)

### Features

* 添加文档搜索功能 ([#24](#24)) ([9248fb6](9248fb6))

* docs: update README.md (#17)

* feat: 计算文字宽度

✅ Closes: #15

* chore(release): 1.0.0-development.1 [skip ci]

# 1.0.0-development.1 (2023-05-25)

### Features

* 清除历史日志,项目迁移 ([5ec0f43](5ec0f43))
* 计算文字宽度 ([b916185](b916185)), closes [#15](#15)
* 重置版本号 ([55def4a](55def4a))

* docs: update README.md

---------

Co-authored-by: liu <liunian@2077tech.com>
Co-authored-by: liu <liunian7965@navinfo.com>
Co-authored-by: semantic-release-bot <semantic-release-bot@martynus.net>
Co-authored-by: wuhaoyuan <wuhaoyuan@cennavi.com.cn>

* ci: 修改触发单元测试覆盖率的分支

old:main -> new:development

* ci: 兼容新版 vitest

vitest-dev/vitest#3339

* ci: 测试覆盖率前生成 banner

* test: 单元测试更新 (#28)

Co-authored-by: lyj <liyanjie@cennavi.com.cn>

* docs: readme update (#30)

Co-authored-by: wuhaoyuan <wuhaoyuan@cennavi.com.cn>

* build: 使用 pnpm 替代 yarn (#31)

* feat: 异步加载文件成功提示信息 (#32)

Co-authored-by: wuhaoyuan <wuhaoyuan@cennavi.com.cn>
Co-authored-by: liu <liunian@2077tech.com>

* feature: 更新 load 方法,并修改 vite 打包暴露的全局变量名称为 niUtils (#33)

* refactor: 修改默认暴露名称

* fix: 修改load的函数

---------

Co-authored-by: wuhaoyuan <wuhaoyuan@cennavi.com.cn>
Co-authored-by: wuhaoyuan <wuhaoyuan11101@navinfo.com>

* feat: 补充单元测试并增加 e2e 相关测试 (#34)

* feat: 单元测试增加jsdom相关测试

* test: 添加 e2e 的测试并使用 eslint 重新格式化整个项目

* feat: 新增获取元素样式的值的函数

* test: 修复错误的 computedTextWidth 测试用例逻辑

* ci: 添加 cypress 的缓存

---------

Co-authored-by: lyj <liyanjie@cennavi.com.cn>
Co-authored-by: liunian <liunian@2077tech.com>

---------

Co-authored-by: liunian <liunian@2077tech.com>
Co-authored-by: semantic-release-bot <semantic-release-bot@martynus.net>
Co-authored-by: liu <liunian7965@navinfo.com>
Co-authored-by: wuhaoyuan <wuhaoyuan@cennavi.com.cn>
Co-authored-by: 李彦杰 <1132925293@qq.com>
Co-authored-by: lyj <liyanjie@cennavi.com.cn>
Co-authored-by: wuhaoyuan <wuhaoyuan11101@navinfo.com>
liunnn1994 added a commit to NI-Web-Infra-Team/common-utils that referenced this pull request Jul 19, 2023
* publish (#38)

* ci: 新增 action 手动触发

* ci: 新增手动 action 提示

* chore(release): 1.1.0-beta.1 [skip ci]

# [1.1.0-beta.1](v1.0.0...v1.1.0-beta.1) (2023-06-14)

### Features

* 添加文档搜索功能 ([#24](#24)) ([9248fb6](9248fb6))

* docs: update README.md (#17)

* feat: 计算文字宽度

✅ Closes: #15

* chore(release): 1.0.0-development.1 [skip ci]

# 1.0.0-development.1 (2023-05-25)

### Features

* 清除历史日志,项目迁移 ([5ec0f43](5ec0f43))
* 计算文字宽度 ([b916185](b916185)), closes [#15](#15)
* 重置版本号 ([55def4a](55def4a))

* docs: update README.md

---------

Co-authored-by: liu <liunian@2077tech.com>
Co-authored-by: liu <liunian7965@navinfo.com>
Co-authored-by: semantic-release-bot <semantic-release-bot@martynus.net>
Co-authored-by: wuhaoyuan <wuhaoyuan@cennavi.com.cn>

* ci: 修改触发单元测试覆盖率的分支

old:main -> new:development

* ci: 兼容新版 vitest

vitest-dev/vitest#3339

* ci: 测试覆盖率前生成 banner

* test: 单元测试更新 (#28)

Co-authored-by: lyj <liyanjie@cennavi.com.cn>

* docs: readme update (#30)

Co-authored-by: wuhaoyuan <wuhaoyuan@cennavi.com.cn>

* build: 使用 pnpm 替代 yarn (#31)

* feat: 异步加载文件成功提示信息 (#32)

Co-authored-by: wuhaoyuan <wuhaoyuan@cennavi.com.cn>
Co-authored-by: liu <liunian@2077tech.com>

* feature: 更新 load 方法,并修改 vite 打包暴露的全局变量名称为 niUtils (#33)

* refactor: 修改默认暴露名称

* fix: 修改load的函数

---------

Co-authored-by: wuhaoyuan <wuhaoyuan@cennavi.com.cn>
Co-authored-by: wuhaoyuan <wuhaoyuan11101@navinfo.com>

* feat: 补充单元测试并增加 e2e 相关测试 (#34)

* feat: 单元测试增加jsdom相关测试

* test: 添加 e2e 的测试并使用 eslint 重新格式化整个项目

* feat: 新增获取元素样式的值的函数

* test: 修复错误的 computedTextWidth 测试用例逻辑

* ci: 添加 cypress 的缓存

---------

Co-authored-by: lyj <liyanjie@cennavi.com.cn>
Co-authored-by: liunian <liunian@2077tech.com>

---------

Co-authored-by: liunian <liunian@2077tech.com>
Co-authored-by: semantic-release-bot <semantic-release-bot@martynus.net>
Co-authored-by: liu <liunian7965@navinfo.com>
Co-authored-by: wuhaoyuan <wuhaoyuan@cennavi.com.cn>
Co-authored-by: 李彦杰 <1132925293@qq.com>
Co-authored-by: lyj <liyanjie@cennavi.com.cn>
Co-authored-by: wuhaoyuan <wuhaoyuan11101@navinfo.com>

* feat: 修改 keywords

* chore(release): 1.1.0 [skip ci]

# [1.1.0](v1.0.0...v1.1.0) (2023-07-19)

### Features

* 修改 keywords ([11c4e02](11c4e02))
* 添加文档搜索功能 ([#24](#24)) ([9248fb6](9248fb6))

* fix: 修复 preinstall 导致的错误

---------

Co-authored-by: alanwhy <34852024+alanwhy@users.noreply.github.com>
Co-authored-by: semantic-release-bot <semantic-release-bot@martynus.net>
Co-authored-by: liu <liunian7965@navinfo.com>
Co-authored-by: wuhaoyuan <wuhaoyuan@cennavi.com.cn>
Co-authored-by: 李彦杰 <1132925293@qq.com>
Co-authored-by: lyj <liyanjie@cennavi.com.cn>
Co-authored-by: wuhaoyuan <wuhaoyuan11101@navinfo.com>
marcustisater-kivra added a commit to kivra/toybox that referenced this pull request Aug 15, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [vitest](https://togithub.com/vitest-dev/vitest) | [`0.31.0` ->
`0.34.1`](https://renovatebot.com/diffs/npm/vitest/0.31.0/0.34.1) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/vitest/0.34.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vitest/0.34.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vitest/0.31.0/0.34.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vitest/0.31.0/0.34.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>vitest-dev/vitest (vitest)</summary>

###
[`v0.34.1`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.34.1)

[Compare
Source](https://togithub.com/vitest-dev/vitest/compare/v0.34.0...v0.34.1)

#####    🐞 Bug Fixes

- Pass `--experimental-vm-worker-memory-limit` to `tinypool`  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3856
[<samp>(3c67a)</samp>](https://togithub.com/vitest-dev/vitest/commit/3c67a4cb)

#####     [View changes on
GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.34.0...v0.34.1)

###
[`v0.34.0`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.34.0)

[Compare
Source](https://togithub.com/vitest-dev/vitest/compare/v0.33.0...v0.34.0)

#####    🚨 Breaking Changes

- Transform mode affects only test files, not regular files  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3491
[<samp>(9608b)</samp>](https://togithub.com/vitest-dev/vitest/commit/9608bf72)
- `transformMode` is now moved to `server.transformMode`. This option is
highly discouraged to use. If you need to change the transform mode, use
the new option `testTransformMode` instead to control the mode based on
the running test, not the current file path. By default, tests with
`jsdom` or `happy-dom` use `web` transform mode, and tests using `node`
or `edge` environment use `ssr` mode. If you have a custom environment,
it should provide `transformMode` property.
- Disable `coverage.reportOnFailure` by default  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3615
[<samp>(0c6f6)</samp>](https://togithub.com/vitest-dev/vitest/commit/0c6f624f)
- Remove `@vitest/coverage-c8` package  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3614
[<samp>(a90d6)</samp>](https://togithub.com/vitest-dev/vitest/commit/a90d64fe)
- `@vitest/coverage-c8` is no longer supported. Please, use
`@vitest/coverage-v8` instead.
- Support running tests using VM context  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) and
[@&#8203;dammy001](https://togithub.com/dammy001) in
[vitest-dev/vitest#3203
[<samp>(b0929)</samp>](https://togithub.com/vitest-dev/vitest/commit/b0929852)
- To address speed issues in some applications, Vitest now provides
`experimentalVmThreads` pool to run your tests using VM Sandboxes
environment. Make sure you understand [all
pitfalls](https://vitest.dev/config/#experimentalvmthreads) of this pool
before opening an issue.
- Introduce `server` option  -  by
[@&#8203;fenghan34](https://togithub.com/fenghan34) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3725
[<samp>(dc4fa)</samp>](https://togithub.com/vitest-dev/vitest/commit/dc4faf64)
- Most of `deps.` options are now moved to `server.deps` with a
deprecation warning. Please, consider using `deps.optimizer` instead of
`deps.inline`/`deps.external`. Ideally, we would like to move away from
using `server.deps.inline` altogether.
- **vite-node**: Make CLI arguments parsing behavior consistent with
node/tsx/ts-node  -  by [@&#8203;rxliuli](https://togithub.com/rxliuli)
in
[vitest-dev/vitest#3574
[<samp>(1cd4e)</samp>](https://togithub.com/vitest-dev/vitest/commit/1cd4eb0f)
- You now have to provide CLI arguments before the entry point. For
example, instead of `vite-node index.ts --watch`, you now have to do
`vite-node --watch index.ts`.
- Add preact example, remove optimizer experimental status, enable by
default  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va)
and [@&#8203;eryue0220](https://togithub.com/eryue0220) in
[vitest-dev/vitest#3854
[<samp>(4b946)</samp>](https://togithub.com/vitest-dev/vitest/commit/4b946ca9)
- `deps.optimizer` is now enabled by default. This means that Vitest
will bundle specified dependencies before running your tests. This field
inherits options from `optimizeDeps` and `ssr.optimizeDeps` which are
populated by other plugins (like, Svelte).

#####    🚀 Features

- Support `describe.sequential`  -  by
[@&#8203;fenghan34](https://togithub.com/fenghan34) and
[@&#8203;dammy001](https://togithub.com/dammy001) in
[vitest-dev/vitest#3771
[<samp>(86934)</samp>](https://togithub.com/vitest-dev/vitest/commit/8693449b)
- Support config junit reporter className with env  -  by
[@&#8203;InfiniteXyy](https://togithub.com/InfiniteXyy) in
[vitest-dev/vitest#3808
[<samp>(e8bc4)</samp>](https://togithub.com/vitest-dev/vitest/commit/e8bc46b6)
- Running vitest with `--related --watch` reruns non-affected tests if
they were changed during a run  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3844
[<samp>(c9aea)</samp>](https://togithub.com/vitest-dev/vitest/commit/c9aeac4c)

#####    🐞 Bug Fixes

- Isolate workers between envs and workspaces  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio)
[<samp>(ed4e0)</samp>](https://togithub.com/vitest-dev/vitest/commit/ed4e0424)
- Modify condition  -  by [@&#8203;btea](https://togithub.com/btea)
[<samp>(a78e6)</samp>](https://togithub.com/vitest-dev/vitest/commit/a78e6bd0)
- Module Graph view is blocking the Console view  -  by
[@&#8203;g4rry420](https://togithub.com/g4rry420)
[<samp>(3b5f9)</samp>](https://togithub.com/vitest-dev/vitest/commit/3b5f96bc)
- Port the latest `defineConfig` type from vite  -  by
[@&#8203;sodatea](https://togithub.com/sodatea) in
[vitest-dev/vitest#3804
[<samp>(9c8e3)</samp>](https://togithub.com/vitest-dev/vitest/commit/9c8e3083)
- Don't overwrite Node.js URL global  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3828
[<samp>(cdab4)</samp>](https://togithub.com/vitest-dev/vitest/commit/cdab4651)
- ForceRerunTriggers correctly triggers a rerun  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3829
[<samp>(17988)</samp>](https://togithub.com/vitest-dev/vitest/commit/17988e51)
-   **browser**:
- Don't inline magic-string and estree-walker  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3726
[<samp>(ee937)</samp>](https://togithub.com/vitest-dev/vitest/commit/ee93762a)
- Multi-suite coverage  -  by
[@&#8203;elby22](https://togithub.com/elby22) in
[vitest-dev/vitest#3806
[<samp>(5de9a)</samp>](https://togithub.com/vitest-dev/vitest/commit/5de9af26)
-   **core**:
- DataView comparison does not work in `toStrictEqual`  -  by
[@&#8203;Dunqing](https://togithub.com/Dunqing)
[<samp>(52aef)</samp>](https://togithub.com/vitest-dev/vitest/commit/52aef92e)
-   **coverage**:
- V8 provider to pick source maps without url query params  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3784
[<samp>(280e6)</samp>](https://togithub.com/vitest-dev/vitest/commit/280e6745)
- Update `istanbul-lib-instrument` to v6 to fix vulnerable dependency
 -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3814
[<samp>(f3bd9)</samp>](https://togithub.com/vitest-dev/vitest/commit/f3bd9102)
- Exclude vite virtual modules by default  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3794
[<samp>(3c851)</samp>](https://togithub.com/vitest-dev/vitest/commit/3c851872)
-   **node**:
- Guard error info  -  by [@&#8203;btea](https://togithub.com/btea)
[<samp>(88b39)</samp>](https://togithub.com/vitest-dev/vitest/commit/88b39758)
-   **vite-node**:
- Always treat node_modules as modulesDirectory  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3830
[<samp>(51ab8)</samp>](https://togithub.com/vitest-dev/vitest/commit/51ab8d6c)
- Normalize drive letter to keep the same reference to a module  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3836
[<samp>(45521)</samp>](https://togithub.com/vitest-dev/vitest/commit/45521859)
- Correctly resolve hmr filepath  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3834
[<samp>(711a6)</samp>](https://togithub.com/vitest-dev/vitest/commit/711a6249)
-   **watch**:
- Clear screen on all terminals  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3661
[<samp>(8bd26)</samp>](https://togithub.com/vitest-dev/vitest/commit/8bd26b01)

#####    🏎 Performance

- Deprecate deps.registerNodeLoader  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va)
[<samp>(7f45b)</samp>](https://togithub.com/vitest-dev/vitest/commit/7f45bf2d)
- This option was introduced to support aliasing inside external
packages. Please, use `deps.optimizer.web` instead. If you test Node.js
applications, consider adding external packages to `server.deps.inline`.

#####     [View changes on
GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.33.0...v0.34.0)

###
[`v0.33.0`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.33.0)

[Compare
Source](https://togithub.com/vitest-dev/vitest/compare/v0.32.4...v0.33.0)

#####    🚨 Breaking Changes

- Revert default include patterns  -  by
[@&#8203;so1ve](https://togithub.com/so1ve)
[#&#8203;3729](https://togithub.com/vitest-dev/vitest/issues/3729)
- `0.32.0` changed the default `include` globs to be compatible with
Jest. After a discussion with the community, we are reverting this
change because it turned out to be non-intuitive.

#####    🐞 Bug Fixes

- Add missing JSDom living keys  -  by
[@&#8203;DerZade](https://togithub.com/DerZade) in
[vitest-dev/vitest#3702
[<samp>(83a86)</samp>](https://togithub.com/vitest-dev/vitest/commit/83a86a75)
-   **vite-node**:
- Don't fail when importing Promise module  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va)
[<samp>(08192)</samp>](https://togithub.com/vitest-dev/vitest/commit/0819275a)
- Allow importing node:test  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va)
[<samp>(db22c)</samp>](https://togithub.com/vitest-dev/vitest/commit/db22c677)

#####     [View changes on
GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.32.4...v0.33.0)

###
[`v0.32.4`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.32.4)

[Compare
Source](https://togithub.com/vitest-dev/vitest/compare/v0.32.3...v0.32.4)

#####    🐞 Bug Fixes

- **browser**: Correctly optimize CJS dependencies  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va)
[<samp>(3d090)</samp>](https://togithub.com/vitest-dev/vitest/commit/3d0908e7)

#####     [View changes on
GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.32.3...v0.32.4)

###
[`v0.32.3`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.32.3)

[Compare
Source](https://togithub.com/vitest-dev/vitest/compare/v0.32.2...v0.32.3)

#####    🚀 Features

- Add `concurrent` option to `sequence` config  -  by
[@&#8203;fenghan34](https://togithub.com/fenghan34) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3604
[<samp>(f427f)</samp>](https://togithub.com/vitest-dev/vitest/commit/f427f004)
- Introduce global configuration for retry setting  -  by
[@&#8203;imentu](https://togithub.com/imentu) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3598
and
[vitest-dev/vitest#3603
[<samp>(9a117)</samp>](https://togithub.com/vitest-dev/vitest/commit/9a117627)
- Don't rely on util package in
[@&#8203;vitest/utils](https://togithub.com/vitest/utils)  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3685
[<samp>(f91da)</samp>](https://togithub.com/vitest-dev/vitest/commit/f91da484)
- Support accessing other fixtures in fixture function  -  by
[@&#8203;fenghan34](https://togithub.com/fenghan34) in
[vitest-dev/vitest#3651
[<samp>(1621c)</samp>](https://togithub.com/vitest-dev/vitest/commit/1621cc63)
- Support use function/class as `bench` name  -  by
[@&#8203;fenghan34](https://togithub.com/fenghan34) in
[vitest-dev/vitest#3711
[<samp>(a749a)</samp>](https://togithub.com/vitest-dev/vitest/commit/a749a6c0)
- **reporters**: Show full test suite when testing 1 spec file at a time
 -  by [@&#8203;Dunqing](https://togithub.com/Dunqing) in
[vitest-dev/vitest#3543
[<samp>(7531c)</samp>](https://togithub.com/vitest-dev/vitest/commit/7531c292)
- **runner**: Support `test.extend`  -  by
[@&#8203;fenghan34](https://togithub.com/fenghan34) in
[vitest-dev/vitest#3554
[<samp>(2db1a)</samp>](https://togithub.com/vitest-dev/vitest/commit/2db1a737)

#####    🐞 Bug Fixes

- Remove "concordance" from dependencies list  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3597
[<samp>(969dc)</samp>](https://togithub.com/vitest-dev/vitest/commit/969dcc14)
- Show diff correctly  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3620
[<samp>(73dd4)</samp>](https://togithub.com/vitest-dev/vitest/commit/73dd4ab5)
- Util import  -  by [@&#8203;fubhy](https://togithub.com/fubhy) in
[vitest-dev/vitest#3621
[<samp>(2fb4c)</samp>](https://togithub.com/vitest-dev/vitest/commit/2fb4ceff)
- Compat with frozen Math  -  by
[@&#8203;turadg](https://togithub.com/turadg) in
[vitest-dev/vitest#3527
[<samp>(0db67)</samp>](https://togithub.com/vitest-dev/vitest/commit/0db67098)
- `CTRL+C` to terminate run  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3642
[<samp>(fa663)</samp>](https://togithub.com/vitest-dev/vitest/commit/fa6637d3)
- Run mode stuck in TTY terminals  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3690
[<samp>(141a8)</samp>](https://togithub.com/vitest-dev/vitest/commit/141a86ac)
- Use first stack frame in json reporter  -  by
[@&#8203;tim-smart](https://togithub.com/tim-smart) in
[vitest-dev/vitest#3645
[<samp>(80ea7)</samp>](https://togithub.com/vitest-dev/vitest/commit/80ea7ef6)
- Print actual number for `toBeCalledTimes`  -  by
[@&#8203;antfu](https://togithub.com/antfu) in
[vitest-dev/vitest#3696
[<samp>(d3640)</samp>](https://togithub.com/vitest-dev/vitest/commit/d3640437)
-   **benchmark**:
- Don't fail when running correct benchmarks  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3629
[<samp>(edad9)</samp>](https://togithub.com/vitest-dev/vitest/commit/edad9b19)
-   **browser**:
- Correctly print diff  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3627
[<samp>(d756e)</samp>](https://togithub.com/vitest-dev/vitest/commit/d756ee24)
- Esm injector doesn't replace class expressions  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3641
[<samp>(5c0ac)</samp>](https://togithub.com/vitest-dev/vitest/commit/5c0ac4ad)
- Transform superclass identifier  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3681
[<samp>(a1e04)</samp>](https://togithub.com/vitest-dev/vitest/commit/a1e043bd)
-   **coverage**:
- `v8` to prevent crash on dynamic CJS files  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3657
[<samp>(40f18)</samp>](https://togithub.com/vitest-dev/vitest/commit/40f18a07)
-   **runner**:
- Make the default value of `retry` and `repeats` 0  -  by
[@&#8203;Dunqing](https://togithub.com/Dunqing) in
[vitest-dev/vitest#3638
[<samp>(6d146)</samp>](https://togithub.com/vitest-dev/vitest/commit/6d146d16)
-   **utils**:
- Respect all flags in format function  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3695
[<samp>(91e16)</samp>](https://togithub.com/vitest-dev/vitest/commit/91e1650e)
-   **watch**:
- Cancel using `h` key  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3618
[<samp>(60c36)</samp>](https://togithub.com/vitest-dev/vitest/commit/60c36faf)

#####     [View changes on
GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.32.2...v0.32.3)

###
[`v0.32.2`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.32.2)

[Compare
Source](https://togithub.com/vitest-dev/vitest/compare/v0.32.1...v0.32.2)

#####    🐞 Bug Fixes

- **browser**: Don't fail on importing diff-sequences  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va)
[<samp>(00b0e)</samp>](https://togithub.com/vitest-dev/vitest/commit/00b0e6a3)

#####     [View changes on
GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.32.1...v0.32.2)

###
[`v0.32.1`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.32.1)

[Compare
Source](https://togithub.com/vitest-dev/vitest/compare/v0.32.0...v0.32.1)

#####    🚀 Features

- Export `registerConsoleShortcuts` from `vitest/node`  -  by
[@&#8203;deot](https://togithub.com/deot) in
[vitest-dev/vitest#3563
[<samp>(bc49b)</samp>](https://togithub.com/vitest-dev/vitest/commit/bc49bac7)
- **expect**: Support `expect.unreachable`  -  by
[@&#8203;fenghan34](https://togithub.com/fenghan34) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3556
[<samp>(8e385)</samp>](https://togithub.com/vitest-dev/vitest/commit/8e385bb0)
- **runner**: `describe`/`test` name support anonymous function  -  by
[@&#8203;btea](https://togithub.com/btea) in
[vitest-dev/vitest#3562
[<samp>(3d436)</samp>](https://togithub.com/vitest-dev/vitest/commit/3d43638c)

#####    🐞 Bug Fixes

- Avoid call stack recursion with large error (fix:
[#&#8203;3060](https://togithub.com/vitest-dev/vitest/issues/3060))  - 
by [@&#8203;nathanmmiller](https://togithub.com/nathanmmiller) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3078
and
[vitest-dev/vitest#3060
[<samp>(02196)</samp>](https://togithub.com/vitest-dev/vitest/commit/02196f9d)
- Automatically remove define related configuration  -  by
[@&#8203;btea](https://togithub.com/btea) in
[vitest-dev/vitest#3552
[<samp>(368b8)</samp>](https://togithub.com/vitest-dev/vitest/commit/368b8259)
- Import `performance` from `perf_hooks`  -  by
[@&#8203;Max10240](https://togithub.com/Max10240) and
**wangbaolong.wbl** in
[vitest-dev/vitest#3578
and
[vitest-dev/vitest#3579
[<samp>(24ec8)</samp>](https://togithub.com/vitest-dev/vitest/commit/24ec85a8)
- Revert concordance diff, use jest's diff output  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3582
[<samp>(9c7ea)</samp>](https://togithub.com/vitest-dev/vitest/commit/9c7ea382)
- Typo in config suggestion  -  by
[@&#8203;Krisell](https://togithub.com/Krisell) in
[vitest-dev/vitest#3583
[<samp>(68985)</samp>](https://togithub.com/vitest-dev/vitest/commit/689855bb)
-   **browser**:
- Change optimized deps to use `vitest`  -  by
[@&#8203;userquin](https://togithub.com/userquin) in
[vitest-dev/vitest#3580
[<samp>(b4ac8)</samp>](https://togithub.com/vitest-dev/vitest/commit/b4ac88e9)
- Access **vi_inject** only if it was injected  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3587
[<samp>(d9e14)</samp>](https://togithub.com/vitest-dev/vitest/commit/d9e1419a)
-   **mocker**:
- Respect namespace import when hoisting vi.mock  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3547
[<samp>(158c4)</samp>](https://togithub.com/vitest-dev/vitest/commit/158c4bb0)
-   **ui**:
- Navigate to dashboard when re-running tests from coverage page  -  by
[@&#8203;userquin](https://togithub.com/userquin) in
[vitest-dev/vitest#3529
[<samp>(bc283)</samp>](https://togithub.com/vitest-dev/vitest/commit/bc283ae3)
-   **vite-node**:
- Correctly resolve virtual modules  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3544
[<samp>(0cbb0)</samp>](https://togithub.com/vitest-dev/vitest/commit/0cbb07b4)
- Fix errors caused by commonjs export circular references  -  by
[@&#8203;rxliuli](https://togithub.com/rxliuli) in
[vitest-dev/vitest#3570
[<samp>(b097c)</samp>](https://togithub.com/vitest-dev/vitest/commit/b097cef8)

#####     [View changes on
GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.32.0...v0.32.1)

###
[`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
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3307
[<samp>(1ad63)</samp>](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
[@&#8203;nickmccurdy](https://togithub.com/nickmccurdy) in
[vitest-dev/vitest#3392
[<samp>(19ecc)</samp>](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
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3339
[<samp>(82112)</samp>](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
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3518
[<samp>(c1004)</samp>](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
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3490
[<samp>(89842)</samp>](https://togithub.com/vitest-dev/vitest/commit/898422b0)
- Image type add apng  -  by [@&#8203;btea](https://togithub.com/btea)
in
[vitest-dev/vitest#3498
[<samp>(a53c2)</samp>](https://togithub.com/vitest-dev/vitest/commit/a53c2151)
- **expect**: Support `expect.soft`  -  by
[@&#8203;Dunqing](https://togithub.com/Dunqing) in
[vitest-dev/vitest#3507
[<samp>(7c687)</samp>](https://togithub.com/vitest-dev/vitest/commit/7c687ada)
- **runner**: Support using function/class as `describe`/`test` name  - 
by [@&#8203;fenghan34](https://togithub.com/fenghan34) in
[vitest-dev/vitest#3497
[<samp>(15253)</samp>](https://togithub.com/vitest-dev/vitest/commit/15253890)

#####    🐞 Bug Fixes

- The cli option is passed to coverage.exclude  -  by
[@&#8203;btea](https://togithub.com/btea) in
[vitest-dev/vitest#3506
[<samp>(c37cd)</samp>](https://togithub.com/vitest-dev/vitest/commit/c37cdebe)
- **optimizer**: Always respect optimizeDeps even if include/exclude is
overridden  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3488
[<samp>(eb285)</samp>](https://togithub.com/vitest-dev/vitest/commit/eb285ea0)
- **runner**: Ensure Vitest is deduped  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3489
[<samp>(2deb7)</samp>](https://togithub.com/vitest-dev/vitest/commit/2deb70ab)
- **ui**: Don't cache coverage assets  -  by
[@&#8203;userquin](https://togithub.com/userquin) in
[vitest-dev/vitest#3508
[<samp>(952b5)</samp>](https://togithub.com/vitest-dev/vitest/commit/952b5be6)
- **vite-node**: Circular import stuck  -  by
[@&#8203;Dunqing](https://togithub.com/Dunqing) in
[vitest-dev/vitest#3480
[<samp>(50f07)</samp>](https://togithub.com/vitest-dev/vitest/commit/50f0700d)
- **watch**: Junit reporter fails to re-generate report  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3496
[<samp>(5b73c)</samp>](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
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3413
[<samp>(5a894)</samp>](https://togithub.com/vitest-dev/vitest/commit/5a894aa2)

#####    🐞 Bug Fixes

- **vite-node**: Deps.inline doesn't work  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3485
[<samp>(be930)</samp>](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
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3471
[<samp>(393bf)</samp>](https://togithub.com/vitest-dev/vitest/commit/393bf60c)

#####    🐞 Bug Fixes

- **logger**: Print unhandled errors before summary  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3474
[<samp>(4c9a7)</samp>](https://togithub.com/vitest-dev/vitest/commit/4c9a7d58)
- **runner**: Suite options do not propagate to nested suites (fix:
[#&#8203;3467](https://togithub.com/vitest-dev/vitest/issues/3467))  - 
by [@&#8203;xsjcTony](https://togithub.com/xsjcTony) in
[vitest-dev/vitest#3473
and
[vitest-dev/vitest#3467
[<samp>(9fb9d)</samp>](https://togithub.com/vitest-dev/vitest/commit/9fb9dacb)
- **vite-node**: Clear importers when invalidating module  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3475
[<samp>(add29)</samp>](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
[@&#8203;fenghan34](https://togithub.com/fenghan34) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3360
[<samp>(7c2f7)</samp>](https://togithub.com/vitest-dev/vitest/commit/7c2f7088)
- Pass down meta information to Node.js process  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) and
[@&#8203;dammy001](https://togithub.com/dammy001) in
[vitest-dev/vitest#3449
[<samp>(e39ad)</samp>](https://togithub.com/vitest-dev/vitest/commit/e39adea8)
- **coverage**: Add `reportOnFailure` option  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3453
[<samp>(1988f)</samp>](https://togithub.com/vitest-dev/vitest/commit/1988fcb4)
- **dev**: Add moduleDirectories option to the vitest config  -  by
[@&#8203;fooddilsn](https://togithub.com/fooddilsn) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3337
[<samp>(b3602)</samp>](https://togithub.com/vitest-dev/vitest/commit/b3602bcc)

#####    🐞 Bug Fixes

- Don't print empty diff  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3437
[<samp>(32b53)</samp>](https://togithub.com/vitest-dev/vitest/commit/32b5361f)
- Don't restore methods in automocked dependencies  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3438
[<samp>(d1afd)</samp>](https://togithub.com/vitest-dev/vitest/commit/d1afd262)
- Dot reporter scrollback buffer spam  -  by
[@&#8203;gtm-nayan](https://togithub.com/gtm-nayan) in
[vitest-dev/vitest#3415
[<samp>(e6792)</samp>](https://togithub.com/vitest-dev/vitest/commit/e6792a94)
- Gracefully exit when first `SIGINT` is received  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3407
[<samp>(a2cc2)</samp>](https://togithub.com/vitest-dev/vitest/commit/a2cc2b38)
- `rejects` & `resolves` breaks with thenable objects  -  by
[@&#8203;fenghan34](https://togithub.com/fenghan34) in
[vitest-dev/vitest#3456
[<samp>(4e996)</samp>](https://togithub.com/vitest-dev/vitest/commit/4e996ae5)
- Prevent `birpc` timeouts when `Math.random` mock is not restored  - 
by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3460
[<samp>(cd5d5)</samp>](https://togithub.com/vitest-dev/vitest/commit/cd5d58b7)
- Assertion diff message now handle non writable property correctly  - 
by [@&#8203;PCreations](https://togithub.com/PCreations) in
[vitest-dev/vitest#3422
[<samp>(f75ab)</samp>](https://togithub.com/vitest-dev/vitest/commit/f75ab650)
- Extend logging of process timeout errors  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3452
[<samp>(42643)</samp>](https://togithub.com/vitest-dev/vitest/commit/42643904)
- Support requiring files with `less` extension  -  by
[@&#8203;rluvaton](https://togithub.com/rluvaton) in
[vitest-dev/vitest#3465
[<samp>(4d045)</samp>](https://togithub.com/vitest-dev/vitest/commit/4d045695)
-   **cli**:
- Improve colors used when erroring  -  by
[@&#8203;ghiscoding](https://togithub.com/ghiscoding) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3349
[<samp>(16681)</samp>](https://togithub.com/vitest-dev/vitest/commit/16681791)
-   **runner**:
- Suite timeout does not take effect  -  by
[@&#8203;btea](https://togithub.com/btea) in
[vitest-dev/vitest#3455
[<samp>(82547)</samp>](https://togithub.com/vitest-dev/vitest/commit/82547376)
-   **spy**:
- Don't print received calls if there are no calls  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3405
[<samp>(41e11)</samp>](https://togithub.com/vitest-dev/vitest/commit/41e11dad)
-   **typecheck**:
- Show tsc errors not related to test files  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3441
[<samp>(a1da5)</samp>](https://togithub.com/vitest-dev/vitest/commit/a1da5714)
-   **types**:
- Fix `PartialMock` with async TReturns  -  by
[@&#8203;ghry5](https://togithub.com/ghry5) in
[vitest-dev/vitest#3462
[<samp>(b664d)</samp>](https://togithub.com/vitest-dev/vitest/commit/b664d42c)
-   **vite-node**:
- Circular import stuck  -  by
[@&#8203;Dunqing](https://togithub.com/Dunqing) in
[vitest-dev/vitest#3418
[<samp>(632ee)</samp>](https://togithub.com/vitest-dev/vitest/commit/632eef40)
- Coerce to string in import(dep)  -  by
[@&#8203;jcbhmr](https://togithub.com/jcbhmr) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3430
[<samp>(b72eb)</samp>](https://togithub.com/vitest-dev/vitest/commit/b72ebdb9)
- Don't remove sourcemap string in source code  -  by
[@&#8203;rxliuli](https://togithub.com/rxliuli) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#2918
and
[vitest-dev/vitest#3379
[<samp>(02dc9)</samp>](https://togithub.com/vitest-dev/vitest/commit/02dc9ea7)
- Don't externalize "dist" by default  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3446
[<samp>(306b2)</samp>](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
[@&#8203;Dunqing](https://togithub.com/Dunqing) and
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3305
[<samp>(69d27)</samp>](https://togithub.com/vitest-dev/vitest/commit/69d27117)

#####    🐞 Bug Fixes

- Make sure thrown error is an object  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3298
[<samp>(a93be)</samp>](https://togithub.com/vitest-dev/vitest/commit/a93be56c)
- Remove duplicate type  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3303
[<samp>(5382e)</samp>](https://togithub.com/vitest-dev/vitest/commit/5382e8b6)
- Throw an error, if tests are collected with a different vitest version
 -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3301
[<samp>(708b1)</samp>](https://togithub.com/vitest-dev/vitest/commit/708b10fe)
- Support application/x-gzip metadata in html report  -  by
[@&#8203;mzanelee](https://togithub.com/mzanelee) and **Michael Lee** in
[vitest-dev/vitest#3333
[<samp>(5bf7e)</samp>](https://togithub.com/vitest-dev/vitest/commit/5bf7eb6e)
- Correctly restore vi.fn implementation  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3341
[<samp>(2aff8)</samp>](https://togithub.com/vitest-dev/vitest/commit/2aff8c5f)
- Display error message correctly  -  by
[@&#8203;btea](https://togithub.com/btea) in
[vitest-dev/vitest#3314
[<samp>(a5b3d)</samp>](https://togithub.com/vitest-dev/vitest/commit/a5b3d78e)
- Exclude `cwd` from test name filter  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3353
[<samp>(324a9)</samp>](https://togithub.com/vitest-dev/vitest/commit/324a9b54)
- Check error type before modifying it  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3385
[<samp>(c44d9)</samp>](https://togithub.com/vitest-dev/vitest/commit/c44d9912)
- `toMatchInlineSnapshot` fails when file path includes parentheses  - 
by [@&#8203;pacexy](https://togithub.com/pacexy) in
[vitest-dev/vitest#3370
and
[vitest-dev/vitest#3371
[<samp>(dcf13)</samp>](https://togithub.com/vitest-dev/vitest/commit/dcf1346a)
- Stop spying on a method, when it's restored  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3386
[<samp>(2cb1a)</samp>](https://togithub.com/vitest-dev/vitest/commit/2cb1a15a)
- Test repeats  -  by
[@&#8203;fenghan34](https://togithub.com/fenghan34) in
[vitest-dev/vitest#3369
[<samp>(fb8fc)</samp>](https://togithub.com/vitest-dev/vitest/commit/fb8fc7ab)
-   **browser**:
- Throw an error if test failed to load  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3390
[<samp>(b354b)</samp>](https://togithub.com/vitest-dev/vitest/commit/b354bc1c)
- Keep default export when rewriting exports  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3389
[<samp>(6501d)</samp>](https://togithub.com/vitest-dev/vitest/commit/6501d2e3)
-   **cli**:
- Improve cac errors when mixing boolean and dot notation  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3302
[<samp>(93fbd)</samp>](https://togithub.com/vitest-dev/vitest/commit/93fbd02d)
-   **reporter**:
- Prevent deleting test reports stored in coverage directory  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[vitest-dev/vitest#3331
[<samp>(ddbba)</samp>](https://togithub.com/vitest-dev/vitest/commit/ddbba396)
-   **typecheck**:
- Correctly resolve custom tsconfig path  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[vitest-dev/vitest#3342
[<samp>(c53ae)</samp>](https://togithub.com/vitest-dev/vitest/commit/c53ae079)
-   **vite-node**:
- Allow returning id not wrapped in promise  -  by
[@&#8203;danielroe](https://togithub.com/danielroe) in
[vitest-dev/vitest#3312
[<samp>(9836c)</samp>](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)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on Monday" (UTC),
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.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/kivra/toybox).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi4yNy4xIiwidXBkYXRlZEluVmVyIjoiMzYuMjcuMSIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Marcus Tisäter <77273035+marcustisater-kivra@users.noreply.github.com>
Apple-Tree-Tim added a commit to Apple-Tree-Tim/my-jumpstart that referenced this pull request Oct 11, 2023
@aentwist aentwist mentioned this pull request Oct 24, 2023
4 tasks
Devhunter416 pushed a commit to Devhunter416/jumpstart that referenced this pull request Mar 6, 2024
topsuperdev added a commit to topsuperdev/flowbite_React that referenced this pull request Mar 9, 2024
…819)

* chore(package.json): upgrade `react-icons` -> `4.10.1`

* fix(src/components/navbar): change default `<Navbar.Toggle/>` icon

fixes #818

* chore(vitest.config.ts): fix `vitest` config typing error

This is an annoying common problem with configuring `vitest`. See
https://stackoverflow.com/questions/72146352/vitest-defineconfig-test-does-not-exist-in-type-userconfigexport/73106019#73106019

* chore(package.json): migrate `vitest` coverage provider

see vitest-dev/vitest#3339
4K416 added a commit to 4K416/jumpstart that referenced this pull request Mar 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants