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: show error, when process.exit is called #2643

Merged
merged 2 commits into from
Jan 11, 2023

Conversation

sheremet-va
Copy link
Member

@sheremet-va sheremet-va commented Jan 11, 2023

Closes #2615

Users should not rely on "process.exit" in their test code, because it will exit Vitest process. It should be mocked in the best case scenario.

@sheremet-va sheremet-va changed the title feat!: throw error, when process.exit is called feat: throw error, when process.exit is called Jan 11, 2023
@sheremet-va sheremet-va changed the title feat: throw error, when process.exit is called feat: show error, when process.exit is called Jan 11, 2023
@sheremet-va sheremet-va merged commit 866f449 into vitest-dev:main Jan 11, 2023
@sheremet-va sheremet-va deleted the feat/throw-on-exit branch January 11, 2023 16:30
renovate bot referenced this pull request in fwouts/previewjs Jan 16, 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.26.3` ->
`^0.27.1`](https://renovatebot.com/diffs/npm/vitest/0.26.3/0.27.1) |
[![age](https://badges.renovateapi.com/packages/npm/vitest/0.27.1/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/npm/vitest/0.27.1/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/npm/vitest/0.27.1/compatibility-slim/0.26.3)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/npm/vitest/0.27.1/confidence-slim/0.26.3)](https://docs.renovatebot.com/merge-confidence/)
|

---

### ⚠ Dependency Lookup Warnings ⚠

Warnings were logged while processing this repo. Please check the
Dependency Dashboard for more information.

---

### Release Notes

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

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

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

#####    🚀 Features

- Show error, when process.exit is called  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2643](https://togithub.com/vitest-dev/vitest/issues/2643)
[<samp>(866f4)</samp>](https://togithub.com/vitest-dev/vitest/commit/866f4494)
- Add more information about unhandler error  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2642](https://togithub.com/vitest-dev/vitest/issues/2642)
[<samp>(1ffb0)</samp>](https://togithub.com/vitest-dev/vitest/commit/1ffb0ef5)
- Display running processes, if vitest closes with timeout  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2633](https://togithub.com/vitest-dev/vitest/issues/2633)
[<samp>(94968)</samp>](https://togithub.com/vitest-dev/vitest/commit/94968a6f)

#####    🐞 Bug Fixes

- Type issue with spyOn method  -  by
[@&#8203;samkevin1](https://togithub.com/samkevin1) in
[https://github.com/vitest-dev/vitest/issues/2365](https://togithub.com/vitest-dev/vitest/issues/2365)
and
[https://github.com/vitest-dev/vitest/issues/2582](https://togithub.com/vitest-dev/vitest/issues/2582)
[<samp>(1aaa7)</samp>](https://togithub.com/vitest-dev/vitest/commit/1aaa79d7)
- Add missing types in TS project when global is true  -  by
[@&#8203;Sneaken](https://togithub.com/Sneaken) in
[https://github.com/vitest-dev/vitest/issues/2631](https://togithub.com/vitest-dev/vitest/issues/2631)
[<samp>(4745e)</samp>](https://togithub.com/vitest-dev/vitest/commit/4745eaa2)
- Always report failed test in junit reporter  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2632](https://togithub.com/vitest-dev/vitest/issues/2632)
[<samp>(83da2)</samp>](https://togithub.com/vitest-dev/vitest/commit/83da2ec4)
- Change Vite root, if test.root is used  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2637](https://togithub.com/vitest-dev/vitest/issues/2637)
[<samp>(efbff)</samp>](https://togithub.com/vitest-dev/vitest/commit/efbff2a2)
- Don't use ownKeys, when interoping a module  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2629](https://togithub.com/vitest-dev/vitest/issues/2629)
[<samp>(a186a)</samp>](https://togithub.com/vitest-dev/vitest/commit/a186a7e1)
- Cut duplicate error in negated toHaveBeenCalled  -  by
[@&#8203;richardboehme](https://togithub.com/richardboehme) in
[https://github.com/vitest-dev/vitest/issues/2638](https://togithub.com/vitest-dev/vitest/issues/2638)
[<samp>(09d62)</samp>](https://togithub.com/vitest-dev/vitest/commit/09d62226)
- Always update last HMR ms on a module  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va)
[<samp>(99676)</samp>](https://togithub.com/vitest-dev/vitest/commit/9967645a)
- Terminate workers, when closing process  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2645](https://togithub.com/vitest-dev/vitest/issues/2645)
[<samp>(ece43)</samp>](https://togithub.com/vitest-dev/vitest/commit/ece434a3)
-   **coverage**:
- Prevent c8 from crashing on invalid sourcemaps  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[https://github.com/vitest-dev/vitest/issues/2634](https://togithub.com/vitest-dev/vitest/issues/2634)
[<samp>(0163d)</samp>](https://togithub.com/vitest-dev/vitest/commit/0163dc80)
- Istanbul provider to use `coverage.extension`  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[https://github.com/vitest-dev/vitest/issues/2641](https://togithub.com/vitest-dev/vitest/issues/2641)
[<samp>(7e388)</samp>](https://togithub.com/vitest-dev/vitest/commit/7e388903)

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

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

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

#####    🚨 Breaking Changes

- Deprecate "error" on result, store errors in "errors"  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2586](https://togithub.com/vitest-dev/vitest/issues/2586)
[<samp>(e641a)</samp>](https://togithub.com/vitest-dev/vitest/commit/e641a110)
- Split vitest into separate packages, but still bundle them for the
time being  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2575](https://togithub.com/vitest-dev/vitest/issues/2575)
[<samp>(c8e6f)</samp>](https://togithub.com/vitest-dev/vitest/commit/c8e6fb69)

#####    🚀 Features

- **coverage**: report only changed files when using istanbul coverage
with watch mode  -  by [@&#8203;g4rry420](https://togithub.com/g4rry420)
in
[https://github.com/vitest-dev/vitest/issues/2385](https://togithub.com/vitest-dev/vitest/issues/2385)
[<samp>(bf872)</samp>](https://togithub.com/vitest-dev/vitest/commit/bf87282c)

#####    🐞 Bug Fixes

- Return mock path only when mocked  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2619](https://togithub.com/vitest-dev/vitest/issues/2619)
[<samp>(f8ac2)</samp>](https://togithub.com/vitest-dev/vitest/commit/f8ac2094)
- Allow mocking CJS module with interoped default  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2598](https://togithub.com/vitest-dev/vitest/issues/2598)
[<samp>(6b3e3)</samp>](https://togithub.com/vitest-dev/vitest/commit/6b3e36d4)
- Avoid random ENOTEMPTY errors  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[https://github.com/vitest-dev/vitest/issues/2620](https://togithub.com/vitest-dev/vitest/issues/2620)
[<samp>(59766)</samp>](https://togithub.com/vitest-dev/vitest/commit/59766fa4)
- Always inline assets and modules with special Vite queries  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2617](https://togithub.com/vitest-dev/vitest/issues/2617)
[<samp>(fed1c)</samp>](https://togithub.com/vitest-dev/vitest/commit/fed1cd60)
-   **cli**:
- Allow overrides reporter via cli option  -  by
[@&#8203;mysteryven](https://togithub.com/mysteryven) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2573](https://togithub.com/vitest-dev/vitest/issues/2573)
[<samp>(894f1)</samp>](https://togithub.com/vitest-dev/vitest/commit/894f155a)
-   **coverage**:
- Flaky c8 coverage caused by parallel sourcemap constructing  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2591](https://togithub.com/vitest-dev/vitest/issues/2591)
[<samp>(9a29f)</samp>](https://togithub.com/vitest-dev/vitest/commit/9a29f984)
- Validate extension, when reporting c8 coverage  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2626](https://togithub.com/vitest-dev/vitest/issues/2626)
[<samp>(74463)</samp>](https://togithub.com/vitest-dev/vitest/commit/7446370c)

#####    🏎 Performance

- Improve vi.mock performance  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2594](https://togithub.com/vitest-dev/vitest/issues/2594)
[<samp>(09d19)</samp>](https://togithub.com/vitest-dev/vitest/commit/09d19892)

#####     [View changes on
GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.26.3...v0.27.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://app.renovatebot.com/dashboard#github/fwouts/previewjs).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate bot referenced this pull request in Unleash/unleash Jan 19, 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.27.0` ->
`0.27.1`](https://renovatebot.com/diffs/npm/vitest/0.27.0/0.27.1) |
[![age](https://badges.renovateapi.com/packages/npm/vitest/0.27.1/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/npm/vitest/0.27.1/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/npm/vitest/0.27.1/compatibility-slim/0.27.0)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/npm/vitest/0.27.1/confidence-slim/0.27.0)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

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

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

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

#####    🚀 Features

- Show error, when process.exit is called  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2643](https://togithub.com/vitest-dev/vitest/issues/2643)
[<samp>(866f4)</samp>](https://togithub.com/vitest-dev/vitest/commit/866f4494)
- Add more information about unhandler error  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2642](https://togithub.com/vitest-dev/vitest/issues/2642)
[<samp>(1ffb0)</samp>](https://togithub.com/vitest-dev/vitest/commit/1ffb0ef5)
- Display running processes, if vitest closes with timeout  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2633](https://togithub.com/vitest-dev/vitest/issues/2633)
[<samp>(94968)</samp>](https://togithub.com/vitest-dev/vitest/commit/94968a6f)

#####    🐞 Bug Fixes

- Type issue with spyOn method  -  by
[@&#8203;samkevin1](https://togithub.com/samkevin1) in
[https://github.com/vitest-dev/vitest/issues/2365](https://togithub.com/vitest-dev/vitest/issues/2365)
and
[https://github.com/vitest-dev/vitest/issues/2582](https://togithub.com/vitest-dev/vitest/issues/2582)
[<samp>(1aaa7)</samp>](https://togithub.com/vitest-dev/vitest/commit/1aaa79d7)
- Add missing types in TS project when global is true  -  by
[@&#8203;Sneaken](https://togithub.com/Sneaken) in
[https://github.com/vitest-dev/vitest/issues/2631](https://togithub.com/vitest-dev/vitest/issues/2631)
[<samp>(4745e)</samp>](https://togithub.com/vitest-dev/vitest/commit/4745eaa2)
- Always report failed test in junit reporter  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2632](https://togithub.com/vitest-dev/vitest/issues/2632)
[<samp>(83da2)</samp>](https://togithub.com/vitest-dev/vitest/commit/83da2ec4)
- Change Vite root, if test.root is used  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2637](https://togithub.com/vitest-dev/vitest/issues/2637)
[<samp>(efbff)</samp>](https://togithub.com/vitest-dev/vitest/commit/efbff2a2)
- Don't use ownKeys, when interoping a module  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2629](https://togithub.com/vitest-dev/vitest/issues/2629)
[<samp>(a186a)</samp>](https://togithub.com/vitest-dev/vitest/commit/a186a7e1)
- Cut duplicate error in negated toHaveBeenCalled  -  by
[@&#8203;richardboehme](https://togithub.com/richardboehme) in
[https://github.com/vitest-dev/vitest/issues/2638](https://togithub.com/vitest-dev/vitest/issues/2638)
[<samp>(09d62)</samp>](https://togithub.com/vitest-dev/vitest/commit/09d62226)
- Always update last HMR ms on a module  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va)
[<samp>(99676)</samp>](https://togithub.com/vitest-dev/vitest/commit/9967645a)
- Terminate workers, when closing process  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2645](https://togithub.com/vitest-dev/vitest/issues/2645)
[<samp>(ece43)</samp>](https://togithub.com/vitest-dev/vitest/commit/ece434a3)
-   **coverage**:
- Prevent c8 from crashing on invalid sourcemaps  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[https://github.com/vitest-dev/vitest/issues/2634](https://togithub.com/vitest-dev/vitest/issues/2634)
[<samp>(0163d)</samp>](https://togithub.com/vitest-dev/vitest/commit/0163dc80)
- Istanbul provider to use `coverage.extension`  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[https://github.com/vitest-dev/vitest/issues/2641](https://togithub.com/vitest-dev/vitest/issues/2641)
[<samp>(7e388)</samp>](https://togithub.com/vitest-dev/vitest/commit/7e388903)

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

</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://app.renovatebot.com/dashboard#github/Unleash/unleash).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
andipaetzold referenced this pull request in andipaetzold/react-firehooks Feb 10, 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 |
|---|---|---|---|---|---|
| [@tsconfig/recommended](https://togithub.com/tsconfig/bases) |
[`1.0.1` ->
`1.0.2`](https://renovatebot.com/diffs/npm/@tsconfig%2frecommended/1.0.1/1.0.2)
|
[![age](https://badges.renovateapi.com/packages/npm/@tsconfig%2frecommended/1.0.2/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/npm/@tsconfig%2frecommended/1.0.2/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/npm/@tsconfig%2frecommended/1.0.2/compatibility-slim/1.0.1)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/npm/@tsconfig%2frecommended/1.0.2/confidence-slim/1.0.1)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@types/react](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react)
([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped)) |
[`18.0.26` ->
`18.0.27`](https://renovatebot.com/diffs/npm/@types%2freact/18.0.26/18.0.27)
|
[![age](https://badges.renovateapi.com/packages/npm/@types%2freact/18.0.27/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/npm/@types%2freact/18.0.27/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/npm/@types%2freact/18.0.27/compatibility-slim/18.0.26)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/npm/@types%2freact/18.0.27/confidence-slim/18.0.26)](https://docs.renovatebot.com/merge-confidence/)
|
| [@vitest/coverage-c8](https://togithub.com/vitest-dev/vitest) |
[`0.26.3` ->
`0.28.4`](https://renovatebot.com/diffs/npm/@vitest%2fcoverage-c8/0.26.3/0.28.4)
|
[![age](https://badges.renovateapi.com/packages/npm/@vitest%2fcoverage-c8/0.28.4/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/npm/@vitest%2fcoverage-c8/0.28.4/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/npm/@vitest%2fcoverage-c8/0.28.4/compatibility-slim/0.26.3)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/npm/@vitest%2fcoverage-c8/0.28.4/confidence-slim/0.26.3)](https://docs.renovatebot.com/merge-confidence/)
|
| [happy-dom](https://togithub.com/capricorn86/happy-dom) | [`8.1.1` ->
`8.2.6`](https://renovatebot.com/diffs/npm/happy-dom/8.1.1/8.2.6) |
[![age](https://badges.renovateapi.com/packages/npm/happy-dom/8.2.6/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/npm/happy-dom/8.2.6/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/npm/happy-dom/8.2.6/compatibility-slim/8.1.1)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/npm/happy-dom/8.2.6/confidence-slim/8.1.1)](https://docs.renovatebot.com/merge-confidence/)
|
| [lint-staged](https://togithub.com/okonet/lint-staged) | [`13.1.0` ->
`13.1.1`](https://renovatebot.com/diffs/npm/lint-staged/13.1.0/13.1.1) |
[![age](https://badges.renovateapi.com/packages/npm/lint-staged/13.1.1/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/npm/lint-staged/13.1.1/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/npm/lint-staged/13.1.1/compatibility-slim/13.1.0)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/npm/lint-staged/13.1.1/confidence-slim/13.1.0)](https://docs.renovatebot.com/merge-confidence/)
|
| [prettier](https://prettier.io)
([source](https://togithub.com/prettier/prettier)) | [`2.8.1` ->
`2.8.4`](https://renovatebot.com/diffs/npm/prettier/2.8.1/2.8.4) |
[![age](https://badges.renovateapi.com/packages/npm/prettier/2.8.4/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/npm/prettier/2.8.4/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/npm/prettier/2.8.4/compatibility-slim/2.8.1)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/npm/prettier/2.8.4/confidence-slim/2.8.1)](https://docs.renovatebot.com/merge-confidence/)
|
|
[semantic-release](https://togithub.com/semantic-release/semantic-release)
| [`20.0.0` ->
`20.1.0`](https://renovatebot.com/diffs/npm/semantic-release/20.0.0/20.1.0)
|
[![age](https://badges.renovateapi.com/packages/npm/semantic-release/20.1.0/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/npm/semantic-release/20.1.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/npm/semantic-release/20.1.0/compatibility-slim/20.0.0)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/npm/semantic-release/20.1.0/confidence-slim/20.0.0)](https://docs.renovatebot.com/merge-confidence/)
|
| [typedoc](https://typedoc.org)
([source](https://togithub.com/TypeStrong/TypeDoc)) | [`0.23.23` ->
`0.23.24`](https://renovatebot.com/diffs/npm/typedoc/0.23.23/0.23.24) |
[![age](https://badges.renovateapi.com/packages/npm/typedoc/0.23.24/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/npm/typedoc/0.23.24/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/npm/typedoc/0.23.24/compatibility-slim/0.23.23)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/npm/typedoc/0.23.24/confidence-slim/0.23.23)](https://docs.renovatebot.com/merge-confidence/)
|
| [typescript](https://www.typescriptlang.org/)
([source](https://togithub.com/Microsoft/TypeScript)) | [`4.9.4` ->
`4.9.5`](https://renovatebot.com/diffs/npm/typescript/4.9.4/4.9.5) |
[![age](https://badges.renovateapi.com/packages/npm/typescript/4.9.5/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/npm/typescript/4.9.5/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/npm/typescript/4.9.5/compatibility-slim/4.9.4)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/npm/typescript/4.9.5/confidence-slim/4.9.4)](https://docs.renovatebot.com/merge-confidence/)
|
| [vitest](https://togithub.com/vitest-dev/vitest) | [`0.26.3` ->
`0.28.4`](https://renovatebot.com/diffs/npm/vitest/0.26.3/0.28.4) |
[![age](https://badges.renovateapi.com/packages/npm/vitest/0.28.4/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/npm/vitest/0.28.4/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/npm/vitest/0.28.4/compatibility-slim/0.26.3)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/npm/vitest/0.28.4/confidence-slim/0.26.3)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

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

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

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

#####    🐞 Bug Fixes

- Setup correct utils inside asymmetric matchers  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2768](https://togithub.com/vitest-dev/vitest/issues/2768)
[<samp>(415c8)</samp>](https://togithub.com/vitest-dev/vitest/commit/415c8a93)
- Cjs exports has Object.prototype instead of null  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2769](https://togithub.com/vitest-dev/vitest/issues/2769)
[<samp>(4fc49)</samp>](https://togithub.com/vitest-dev/vitest/commit/4fc492c6)
- Duplicate callbacks in vite-node HMR  -  by
[@&#8203;jgoux](https://togithub.com/jgoux) in
[https://github.com/vitest-dev/vitest/issues/2792](https://togithub.com/vitest-dev/vitest/issues/2792)
[<samp>(f0333)</samp>](https://togithub.com/vitest-dev/vitest/commit/f03337ae)
- Do not include source files in `onWatcherStart` when
`typecheck.ignoreSourceErrors` is true  -  by
[@&#8203;mascii](https://togithub.com/mascii) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2774](https://togithub.com/vitest-dev/vitest/issues/2774)
[<samp>(d612e)</samp>](https://togithub.com/vitest-dev/vitest/commit/d612efdf)

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

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

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

#####    🚀 Features

- Allow using atomics to communicate between threads  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2758](https://togithub.com/vitest-dev/vitest/issues/2758)
[<samp>(3679c)</samp>](https://togithub.com/vitest-dev/vitest/commit/3679cf25)
- Show active filename pattern on CLI  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio)
[<samp>(a0455)</samp>](https://togithub.com/vitest-dev/vitest/commit/a0455917)
- Show active test name pattern on CLI  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio)
[<samp>(df7c4)</samp>](https://togithub.com/vitest-dev/vitest/commit/df7c410a)
- Allow `config` option to be false  -  by
[@&#8203;antfu](https://togithub.com/antfu) in
[https://github.com/vitest-dev/vitest/issues/2749](https://togithub.com/vitest-dev/vitest/issues/2749)
[<samp>(c66e3)</samp>](https://togithub.com/vitest-dev/vitest/commit/c66e335b)

#####    🐞 Bug Fixes

- Watch mode's filename pattern to persist on unrelated file changes  - 
by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio)
[<samp>(712ac)</samp>](https://togithub.com/vitest-dev/vitest/commit/712ac15b)
- Watch mode's filename pattern to persist re-run of failed tests,
snapshot updates and testname filter changes  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio)
[<samp>(1c65a)</samp>](https://togithub.com/vitest-dev/vitest/commit/1c65ac48)
- Dont incorrectly mark run failed if filename pattern excludes
previously failed tests  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio)
[<samp>(61cf9)</samp>](https://togithub.com/vitest-dev/vitest/commit/61cf9a7a)
- **coverage**: Istanbul crashes when no tests were run  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[https://github.com/vitest-dev/vitest/issues/2753](https://togithub.com/vitest-dev/vitest/issues/2753)
[<samp>(ebc95)</samp>](https://togithub.com/vitest-dev/vitest/commit/ebc95add)

#####    🏎 Performance

- Don't import vite in worker  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2759](https://togithub.com/vitest-dev/vitest/issues/2759)
[<samp>(e49c1)</samp>](https://togithub.com/vitest-dev/vitest/commit/e49c13fa)

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

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

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

#####    🐞 Bug Fixes

- Send stderr header log to stderr  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2736](https://togithub.com/vitest-dev/vitest/issues/2736)
[<samp>(998ea)</samp>](https://togithub.com/vitest-dev/vitest/commit/998ea804)
- Call afterAll, if beforeAll failed  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2737](https://togithub.com/vitest-dev/vitest/issues/2737)
[<samp>(1904c)</samp>](https://togithub.com/vitest-dev/vitest/commit/1904c9c4)
- **vite-node**: Don't cache modules with `timestamp: 0`  -  by
[@&#8203;danielroe](https://togithub.com/danielroe) in
[https://github.com/vitest-dev/vitest/issues/2747](https://togithub.com/vitest-dev/vitest/issues/2747)
[<samp>(e88c0)</samp>](https://togithub.com/vitest-dev/vitest/commit/e88c04c4)

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

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

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

#####    🐞 Bug Fixes

- Remove UI from Vitest dependencies  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va)
[<samp>(b120c)</samp>](https://togithub.com/vitest-dev/vitest/commit/b120ca3f)

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

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

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

#####    🚨 Breaking Changes

- Don't rely on environment for interopDefault  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2682](https://togithub.com/vitest-dev/vitest/issues/2682)
[<samp>(3f20c)</samp>](https://togithub.com/vitest-dev/vitest/commit/3f20cf5a)
- Move test runner into a separate package  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2721](https://togithub.com/vitest-dev/vitest/issues/2721)
[<samp>(482b7)</samp>](https://togithub.com/vitest-dev/vitest/commit/482b72fc)
- To extend text context, you need to augment `@vitet/runner` package
instead of `vitest`

#####    🐞 Bug Fixes

- **coverage**: C8 to log warning when run in Stackblitz  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[https://github.com/vitest-dev/vitest/issues/2735](https://togithub.com/vitest-dev/vitest/issues/2735)
[<samp>(b6c41)</samp>](https://togithub.com/vitest-dev/vitest/commit/b6c41caa)

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

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

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

#####    🚀 Features

- Throw unhandled exception, if code throws "error" event  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2691](https://togithub.com/vitest-dev/vitest/issues/2691)
[<samp>(6a30c)</samp>](https://togithub.com/vitest-dev/vitest/commit/6a30cdd3)
- New `environmentMatchGlobs` option to auto infer env based on glob  - 
by [@&#8203;antfu](https://togithub.com/antfu) in
[https://github.com/vitest-dev/vitest/issues/2714](https://togithub.com/vitest-dev/vitest/issues/2714)
[<samp>(3e142)</samp>](https://togithub.com/vitest-dev/vitest/commit/3e1429e5)
- Add basic reporter which allow user to use reporter in ci  -  by
[@&#8203;trim21](https://togithub.com/trim21) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2612](https://togithub.com/vitest-dev/vitest/issues/2612)
[<samp>(5df52)</samp>](https://togithub.com/vitest-dev/vitest/commit/5df522f7)
- Improve "isCI" check  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2705](https://togithub.com/vitest-dev/vitest/issues/2705)
[<samp>(e6457)</samp>](https://togithub.com/vitest-dev/vitest/commit/e64570df)

#####    🐞 Bug Fixes

- Show error in the terminal, if "only" flag is used  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2696](https://togithub.com/vitest-dev/vitest/issues/2696)
[<samp>(24d63)</samp>](https://togithub.com/vitest-dev/vitest/commit/24d63809)
- Cpu and heap profiling options for workers  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[https://github.com/vitest-dev/vitest/issues/2702](https://togithub.com/vitest-dev/vitest/issues/2702)
[<samp>(c31a0)</samp>](https://togithub.com/vitest-dev/vitest/commit/c31a0b20)
- Show correct number of tests in test summary  -  by
[@&#8203;poyoho](https://togithub.com/poyoho) in
[https://github.com/vitest-dev/vitest/issues/2703](https://togithub.com/vitest-dev/vitest/issues/2703)
[<samp>(859e7)</samp>](https://togithub.com/vitest-dev/vitest/commit/859e7f01)
- Don't terminate workers on Node 14 to not trigger fatal error  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2697](https://togithub.com/vitest-dev/vitest/issues/2697)
[<samp>(db9b6)</samp>](https://togithub.com/vitest-dev/vitest/commit/db9b6bb7)
- Allow custom async matchers  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2707](https://togithub.com/vitest-dev/vitest/issues/2707)
[<samp>(b5669)</samp>](https://togithub.com/vitest-dev/vitest/commit/b566912d)
- Remove setup files from coverage  -  by
[@&#8203;g4rry420](https://togithub.com/g4rry420) in
[https://github.com/vitest-dev/vitest/issues/2574](https://togithub.com/vitest-dev/vitest/issues/2574)
[<samp>(488e4)</samp>](https://togithub.com/vitest-dev/vitest/commit/488e4b9f)
- `reportCoverage` context can be optional  -  by
[@&#8203;antfu](https://togithub.com/antfu)
[<samp>(4cd1e)</samp>](https://togithub.com/vitest-dev/vitest/commit/4cd1e5d7)
- ENOENT assets when htmldir exists  -  by
[@&#8203;everett1992](https://togithub.com/everett1992) in
[https://github.com/vitest-dev/vitest/issues/2701](https://togithub.com/vitest-dev/vitest/issues/2701)
[<samp>(5a656)</samp>](https://togithub.com/vitest-dev/vitest/commit/5a656753)
- Correctly resolve paths relative to root, when used outside of root
directory  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va)
in
[https://github.com/vitest-dev/vitest/issues/2687](https://togithub.com/vitest-dev/vitest/issues/2687)
[<samp>(703aa)</samp>](https://togithub.com/vitest-dev/vitest/commit/703aab46)
- **typecheck**: Store tmp tsconfig close to original one  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2660](https://togithub.com/vitest-dev/vitest/issues/2660)
[<samp>(26f91)</samp>](https://togithub.com/vitest-dev/vitest/commit/26f915ad)

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

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

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

#####    🚀 Features

- Add runAllTimersAsync from sinonjs  -  by
[@&#8203;guillaumeduboc](https://togithub.com/guillaumeduboc) in
[https://github.com/vitest-dev/vitest/issues/2209](https://togithub.com/vitest-dev/vitest/issues/2209)
[<samp>(40187)</samp>](https://togithub.com/vitest-dev/vitest/commit/40187bdb)

#####    🐞 Bug Fixes

- Document.defaultView references the same window as the global one  - 
by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2649](https://togithub.com/vitest-dev/vitest/issues/2649)
[<samp>(1ac4b)</samp>](https://togithub.com/vitest-dev/vitest/commit/1ac4bb8d)
- Trim input filename and test name  -  by
[@&#8203;btea](https://togithub.com/btea) in
[https://github.com/vitest-dev/vitest/issues/2650](https://togithub.com/vitest-dev/vitest/issues/2650)
[<samp>(d3dcb)</samp>](https://togithub.com/vitest-dev/vitest/commit/d3dcbdc8)
- Increase default teardownTimeout  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va)
[<samp>(13e53)</samp>](https://togithub.com/vitest-dev/vitest/commit/13e53ac7)
- Mock css files imported with "require"  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2679](https://togithub.com/vitest-dev/vitest/issues/2679)
[<samp>(6c1a2)</samp>](https://togithub.com/vitest-dev/vitest/commit/6c1a26a6)
- Don't start watching files in "run" mode  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2680](https://togithub.com/vitest-dev/vitest/issues/2680)
[<samp>(0a31e)</samp>](https://togithub.com/vitest-dev/vitest/commit/0a31e85c)
- Rerun tests, when setup file is edited  -  by
[@&#8203;mysteryven](https://togithub.com/mysteryven) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2625](https://togithub.com/vitest-dev/vitest/issues/2625)
[<samp>(019a6)</samp>](https://togithub.com/vitest-dev/vitest/commit/019a6d57)
- Always show filename for unhandled errors  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2689](https://togithub.com/vitest-dev/vitest/issues/2689)
[<samp>(15aa0)</samp>](https://togithub.com/vitest-dev/vitest/commit/15aa0156)
- Define property instead of assigning it in vi.stubGlobal  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2685](https://togithub.com/vitest-dev/vitest/issues/2685)
[<samp>(8a1d7)</samp>](https://togithub.com/vitest-dev/vitest/commit/8a1d7590)
- **coverage**: Watch mode to use `coverage.all` only when all tests are
run  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[https://github.com/vitest-dev/vitest/issues/2665](https://togithub.com/vitest-dev/vitest/issues/2665)
[<samp>(85096)</samp>](https://togithub.com/vitest-dev/vitest/commit/85096281)
- **typecheck**: Log tests with verbose reporter, correctly show "pass"
tests  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2656](https://togithub.com/vitest-dev/vitest/issues/2656)
[<samp>(61dde)</samp>](https://togithub.com/vitest-dev/vitest/commit/61ddebae)
- **ui**: Don't show "connecting" screen in html reporter  -  by
[@&#8203;poyoho](https://togithub.com/poyoho) in
[https://github.com/vitest-dev/vitest/issues/2693](https://togithub.com/vitest-dev/vitest/issues/2693)
[<samp>(d8548)</samp>](https://togithub.com/vitest-dev/vitest/commit/d8548c69)

#####    🏎 Performance

- Don't resolve import path, if it was already resolved  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2659](https://togithub.com/vitest-dev/vitest/issues/2659)
[<samp>(45cc3)</samp>](https://togithub.com/vitest-dev/vitest/commit/45cc3423)

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

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

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

#####    🚀 Features

- Show error, when process.exit is called  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2643](https://togithub.com/vitest-dev/vitest/issues/2643)
[<samp>(866f4)</samp>](https://togithub.com/vitest-dev/vitest/commit/866f4494)
- Add more information about unhandler error  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2642](https://togithub.com/vitest-dev/vitest/issues/2642)
[<samp>(1ffb0)</samp>](https://togithub.com/vitest-dev/vitest/commit/1ffb0ef5)
- Display running processes, if vitest closes with timeout  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2633](https://togithub.com/vitest-dev/vitest/issues/2633)
[<samp>(94968)</samp>](https://togithub.com/vitest-dev/vitest/commit/94968a6f)

#####    🐞 Bug Fixes

- Type issue with spyOn method  -  by
[@&#8203;samkevin1](https://togithub.com/samkevin1) in
[https://github.com/vitest-dev/vitest/issues/2365](https://togithub.com/vitest-dev/vitest/issues/2365)
and
[https://github.com/vitest-dev/vitest/issues/2582](https://togithub.com/vitest-dev/vitest/issues/2582)
[<samp>(1aaa7)</samp>](https://togithub.com/vitest-dev/vitest/commit/1aaa79d7)
- Add missing types in TS project when global is true  -  by
[@&#8203;Sneaken](https://togithub.com/Sneaken) in
[https://github.com/vitest-dev/vitest/issues/2631](https://togithub.com/vitest-dev/vitest/issues/2631)
[<samp>(4745e)</samp>](https://togithub.com/vitest-dev/vitest/commit/4745eaa2)
- Always report failed test in junit reporter  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2632](https://togithub.com/vitest-dev/vitest/issues/2632)
[<samp>(83da2)</samp>](https://togithub.com/vitest-dev/vitest/commit/83da2ec4)
- Change Vite root, if test.root is used  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2637](https://togithub.com/vitest-dev/vitest/issues/2637)
[<samp>(efbff)</samp>](https://togithub.com/vitest-dev/vitest/commit/efbff2a2)
- Don't use ownKeys, when interoping a module  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2629](https://togithub.com/vitest-dev/vitest/issues/2629)
[<samp>(a186a)</samp>](https://togithub.com/vitest-dev/vitest/commit/a186a7e1)
- Cut duplicate error in negated toHaveBeenCalled  -  by
[@&#8203;richardboehme](https://togithub.com/richardboehme) in
[https://github.com/vitest-dev/vitest/issues/2638](https://togithub.com/vitest-dev/vitest/issues/2638)
[<samp>(09d62)</samp>](https://togithub.com/vitest-dev/vitest/commit/09d62226)
- Always update last HMR ms on a module  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va)
[<samp>(99676)</samp>](https://togithub.com/vitest-dev/vitest/commit/9967645a)
- Terminate workers, when closing process  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2645](https://togithub.com/vitest-dev/vitest/issues/2645)
[<samp>(ece43)</samp>](https://togithub.com/vitest-dev/vitest/commit/ece434a3)
-   **coverage**:
- Prevent c8 from crashing on invalid sourcemaps  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[https://github.com/vitest-dev/vitest/issues/2634](https://togithub.com/vitest-dev/vitest/issues/2634)
[<samp>(0163d)</samp>](https://togithub.com/vitest-dev/vitest/commit/0163dc80)
- Istanbul provider to use `coverage.extension`  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[https://github.com/vitest-dev/vitest/issues/2641](https://togithub.com/vitest-dev/vitest/issues/2641)
[<samp>(7e388)</samp>](https://togithub.com/vitest-dev/vitest/commit/7e388903)

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

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

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

#####    🚨 Breaking Changes

- Deprecate "error" on result, store errors in "errors"  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2586](https://togithub.com/vitest-dev/vitest/issues/2586)
[<samp>(e641a)</samp>](https://togithub.com/vitest-dev/vitest/commit/e641a110)
- Split vitest into separate packages, but still bundle them for the
time being  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2575](https://togithub.com/vitest-dev/vitest/issues/2575)
[<samp>(c8e6f)</samp>](https://togithub.com/vitest-dev/vitest/commit/c8e6fb69)

#####    🚀 Features

- **coverage**: report only changed files when using istanbul coverage
with watch mode  -  by [@&#8203;g4rry420](https://togithub.com/g4rry420)
in
[https://github.com/vitest-dev/vitest/issues/2385](https://togithub.com/vitest-dev/vitest/issues/2385)
[<samp>(bf872)</samp>](https://togithub.com/vitest-dev/vitest/commit/bf87282c)

#####    🐞 Bug Fixes

- Return mock path only when mocked  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2619](https://togithub.com/vitest-dev/vitest/issues/2619)
[<samp>(f8ac2)</samp>](https://togithub.com/vitest-dev/vitest/commit/f8ac2094)
- Allow mocking CJS module with interoped default  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2598](https://togithub.com/vitest-dev/vitest/issues/2598)
[<samp>(6b3e3)</samp>](https://togithub.com/vitest-dev/vitest/commit/6b3e36d4)
- Avoid random ENOTEMPTY errors  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in
[https://github.com/vitest-dev/vitest/issues/2620](https://togithub.com/vitest-dev/vitest/issues/2620)
[<samp>(59766)</samp>](https://togithub.com/vitest-dev/vitest/commit/59766fa4)
- Always inline assets and modules with special Vite queries  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2617](https://togithub.com/vitest-dev/vitest/issues/2617)
[<samp>(fed1c)</samp>](https://togithub.com/vitest-dev/vitest/commit/fed1cd60)
-   **cli**:
- Allow overrides reporter via cli option  -  by
[@&#8203;mysteryven](https://togithub.com/mysteryven) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2573](https://togithub.com/vitest-dev/vitest/issues/2573)
[<samp>(894f1)</samp>](https://togithub.com/vitest-dev/vitest/commit/894f155a)
-   **coverage**:
- Flaky c8 coverage caused by parallel sourcemap constructing  -  by
[@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) and
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2591](https://togithub.com/vitest-dev/vitest/issues/2591)
[<samp>(9a29f)</samp>](https://togithub.com/vitest-dev/vitest/commit/9a29f984)
- Validate extension, when reporting c8 coverage  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2626](https://togithub.com/vitest-dev/vitest/issues/2626)
[<samp>(74463)</samp>](https://togithub.com/vitest-dev/vitest/commit/7446370c)

#####    🏎 Performance

- Improve vi.mock performance  -  by
[@&#8203;sheremet-va](https://togithub.com/sheremet-va) in
[https://github.com/vitest-dev/vitest/issues/2594](https://togithub.com/vitest-dev/vitest/issues/2594)
[<samp>(09d19)</samp>](https://togithub.com/vitest-dev/vitest/commit/09d19892)

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

</details>

<details>
<summary>capricorn86/happy-dom</summary>

###
[`v8.2.6`](https://togithub.com/capricorn86/happy-dom/compare/v8.2.5...v8.2.6)

[Compare
Source](https://togithub.com/capricorn86/happy-dom/compare/v8.2.5...v8.2.6)

###
[`v8.2.5`](https://togithub.com/capricorn86/happy-dom/releases/tag/v8.2.5)

[Compare
Source](https://togithub.com/capricorn86/happy-dom/compare/v8.2.4...v8.2.5)

##### :construction_worker_man: Patch fixes

- Adds support for passing arguments to the callback in
`Window.setTimeout()` and `Window.setInterval()`.
([#&#8203;712](https://togithub.com/capricorn86/happy-dom/issues/712))

###
[`v8.2.4`](https://togithub.com/capricorn86/happy-dom/releases/tag/v8.2.4)

[Compare
Source](https://togithub.com/capricorn86/happy-dom/compare/v8.2.3...v8.2.4)

##### :construction_worker_man: Patch fixes

- Fixes handling of falsy values in `CustomEvent.detail`.
([#&#8203;701](https://togithub.com/capricorn86/happy-dom/issues/701))

###
[`v8.2.3`](https://togithub.com/capricorn86/happy-dom/releases/tag/v8.2.3)

[Compare
Source](https://togithub.com/capricorn86/happy-dom/compare/v8.2.2...v8.2.3)

##### :construction_worker_man: Patch fixes

- Properly detect ShadowRoot boundary when constructing composed path in
`Event.composedPath()`.
([#&#8203;709](https://togithub.com/capricorn86/happy-dom/issues/709))

###
[`v8.2.2`](https://togithub.com/capricorn86/happy-dom/releases/tag/v8.2.2)

[Compare
Source](https://togithub.com/capricorn86/happy-dom/compare/v8.2.1...v8.2.2)

##### :construction_worker_man: Patch fixes

- Fixes an issue in `MutationObserver.disconnect()` where it throws an
error if `MutationObserver.observe()` has not been called first.
([#&#8203;659](https://togithub.com/capricorn86/happy-dom/issues/659))

###
[`v8.2.1`](https://togithub.com/capricorn86/happy-dom/releases/tag/v8.2.1)

[Compare
Source](https://togithub.com/capricorn86/happy-dom/compare/v8.2.0...v8.2.1)

##### :construction_worker_man: Patch fixes

- Upgrades Jest dependencies to 29.4.0.
([#&#8203;697](https://togithub.com/capricorn86/happy-dom/issues/697))

###
[`v8.2.0`](https://togithub.com/capricorn86/happy-dom/releases/tag/v8.2.0)

[Compare
Source](https://togithub.com/capricorn86/happy-dom/compare/v8.1.5...v8.2.0)

##### :art: Features

- Renames `NodeUtility.nodeEquals()` to `NodeUtility.isEqualNode()` to
make it easier to find, as `isEqualNode` is how it is named in the spec.
([#&#8203;656](https://togithub.com/capricorn86/happy-dom/issues/656))

###
[`v8.1.5`](https://togithub.com/capricorn86/happy-dom/releases/tag/v8.1.5)

[Compare
Source](https://togithub.com/capricorn86/happy-dom/compare/v8.1.4...v8.1.5)

##### :construction_worker_man: Patch fixes

- Renames the `conditionalText` property to `conditionText` in
`CSSContainerRule` and `CSSMediaRule` according to spec.
([#&#8203;692](https://togithub.com/capricorn86/happy-dom/issues/692))

##### :art: Features

- Adds support for `CSSSupportsRule` (`@supports`) to the CSS parser.
([#&#8203;693](https://togithub.com/capricorn86/happy-dom/issues/693))

###
[`v8.1.4`](https://togithub.com/capricorn86/happy-dom/releases/tag/v8.1.4)

[Compare
Source](https://togithub.com/capricorn86/happy-dom/compare/v8.1.3...v8.1.4)

##### :construction_worker_man: Patch fixes

- Returns the correct result when deleting a property in
`HTMLElement.dataset`.
([#&#8203;652](https://togithub.com/capricorn86/happy-dom/issues/652))

###
[`v8.1.3`](https://togithub.com/capricorn86/happy-dom/releases/tag/v8.1.3)

[Compare
Source](https://togithub.com/capricorn86/happy-dom/compare/v8.1.2...v8.1.3)

##### :construction_worker_man: Patch fixes

- Fixed infinite loop bug when there is no number before "n" in an
":nth-child" query selector.
([#&#8203;686](https://togithub.com/capricorn86/happy-dom/issues/686))

###
[`v8.1.2`](https://togithub.com/capricorn86/happy-dom/releases/tag/v8.1.2)

[Compare
Source](https://togithub.com/capricorn86/happy-dom/compare/v8.1.1...v8.1.2)

##### :construction_worker_man: Patch fixes

- Adds support for `Window.scrollX`, `Window.scrollY`,
`Window.pageXOffset` and `Window.pageYOffset`.
([#&#8203;681](https://togithub.com/capricorn86/happy-dom/issues/681))

</details>

<details>
<summary>okonet/lint-staged</summary>

###
[`v13.1.1`](https://togithub.com/okonet/lint-staged/releases/tag/v13.1.1)

[Compare
Source](https://togithub.com/okonet/lint-staged/compare/v13.1.0...v13.1.1)

##### Bug Fixes

- allow re-enabling `--stash` when using the `--diff` option
([99390c3](https://togithub.com/okonet/lint-staged/commit/99390c31a856154e380f04d5c3603d2e6428f1e5))

</details>

<details>
<summary>prettier/prettier</summary>

###
[`v2.8.4`](https://togithub.com/prettier/prettier/blob/HEAD/CHANGELOG.md#&#8203;284)

[Compare
Source](https://togithub.com/prettier/prettier/compare/2.8.3...2.8.4)

[diff](https://togithub.com/prettier/prettier/compare/2.8.3...2.8.4)

##### Fix leading comments in mapped types with `readonly`
([#&#8203;13427](https://togithub.com/prettier/prettier/pull/13427) by
[@&#8203;thorn0](https://togithub.com/thorn0),
[@&#8203;sosukesuzuki](https://togithub.com/sosukesuzuki))

<!-- prettier-ignore -->

```tsx
// Input
type Type = {
  // comment
  readonly [key in Foo];
};

// Prettier 2.8.3
type Type = {
  readonly // comment
  [key in Foo];
};

// Prettier 2.8.4
type Type = {
  // comment
  readonly [key in Foo];
};
```

##### Group params in opening block statements
([#&#8203;14067](https://togithub.com/prettier/prettier/pull/14067) by
[@&#8203;jamescdavis](https://togithub.com/jamescdavis))

This is a follow-up to
[#&#8203;13930](https://togithub.com/prettier/prettier/issues/13930) to
establish wrapping consistency between opening block statements and else
blocks by
grouping params in opening blocks. This causes params to break to a new
line together and not be split across lines
unless the length of params exceeds the print width. This also updates
the else block wrapping to behave exactly the
same as opening blocks.

<!-- prettier-ignore -->

```hbs
{{! Input }}
{{#block param param param param param param param param param param as |blockParam|}}
  Hello
{{else block param param param param param param param param param param as |blockParam|}}
  There
{{/block}}

{{! Prettier 2.8.3 }}
{{#block
  param
  param
  param
  param
  param
  param
  param
  param
  param
  param
  as |blockParam|
}}
  Hello
{{else block param
param
param
param
param
param
param
param
param
param}}
  There
{{/block}}

{{! Prettier 2.8.4 }}
{{#block
  param param param param param param param param param param
  as |blockParam|
}}
  Hello
{{else block
  param param param param param param param param param param
  as |blockParam|
}}
  There
{{/block}}
```

##### Ignore files in `.sl/`
([#&#8203;14206](https://togithub.com/prettier/prettier/pull/14206) by
[@&#8203;bolinfest](https://togithub.com/bolinfest))

In [Sapling SCM](https://sapling-scm.com/), `.sl/` is the folder where
it stores its state, analogous to `.git/` in Git. It should be ignored
in Prettier like the other SCM folders.

##### Recognize `@satisfies` in Closure-style type casts
([#&#8203;14262](https://togithub.com/prettier/prettier/pull/14262) by
[@&#8203;fisker](https://togithub.com/fisker))

<!-- prettier-ignore -->

```jsx
// Input
const a = /** @&#8203;satisfies {Record<string, string>} */ ({hello: 1337});
const b = /** @&#8203;type {Record<string, string>} */ ({hello: 1337});

// Prettier 2.8.3
const a = /** @&#8203;satisfies {Record<string, string>} */ { hello: 1337 };
const b = /** @&#8203;type {Record<string, string>} */ ({ hello: 1337 });

// Prettier 2.8.4
const a = /** @&#8203;satisfies {Record<string, string>} */ ({hello: 1337});
const b = /** @&#8203;type {Record<string, string>} */ ({hello: 1337});
```

##### Fix parens in inferred function return types with `extends`
([#&#8203;14279](https://togithub.com/prettier/prettier/pull/14279) by
[@&#8203;fisker](https://togithub.com/fisker))

<!-- prettier-ignore -->

```ts
// Input
type Foo<T> = T extends ((a) => a is infer R extends string) ? R : never;

// Prettier 2.8.3 (First format)
type Foo<T> = T extends (a) => a is infer R extends string ? R : never;

// Prettier 2.8.3 (Second format)
SyntaxError: '?' expected. 

// Prettier 2.8.4
type Foo<T> = T extends ((a) => a is infer R extends string) ? R : never;
```

###
[`v2.8.3`](https://togithub.com/prettier/prettier/blob/HEAD/CHANGELOG.md#&#8203;283)

[Compare
Source](https://togithub.com/prettier/prettier/compare/2.8.2...2.8.3)

[diff](https://togithub.com/prettier/prettier/compare/2.8.2...2.8.3)

##### Allow self-closing tags on custom elements
([#&#8203;14170](https://togithub.com/prettier/prettier/pull/14170) by
[@&#8203;fisker](https://togithub.com/fisker))

See [Angular v15.1.0 release
note](https://togithub.com/angular/angular/releases/tag/15.1.0) for
details.

<!-- prettier-ignore -->

```html
// Input
<app-test/>

// Prettier 2.8.2
SyntaxError: Only void and foreign elements can be self closed "app-test" (1:1)
> 1 | <app-test/>
    | ^^^^^^^^^
  2 |

// Prettier 2.8.3
<app-test />
```

###
[`v2.8.2`](https://togithub.com/prettier/prettier/blob/HEAD/CHANGELOG.md#&#8203;282)

[Compare
Source](https://togithub.com/prettier/prettier/compare/2.8.1...2.8.2)

[diff](https://togithub.com/prettier/prettier/compare/2.8.1...2.8.2)

##### Don't lowercase link references
([#&#8203;13155](https://togithub.com/prettier/prettier/pull/13155) by
[@&#8203;DerekNonGeneric](https://togithub.com/DerekNonGeneric) &
[@&#8203;fisker](https://togithub.com/fisker))

<!-- prettier-ignore -->

```markdown
<!-- Input -->
We now don't strictly follow the release notes format suggested by [Keep a Changelog].

[Keep a Changelog]: https://example.com/

<!-- Prettier 2.8.1 -->
We now don't strictly follow the release notes format suggested by [Keep a Changelog].

[keep a changelog]: https://example.com/
<!--
^^^^^^^^^^^^^^^^^^ lowercased
-->

<!-- Prettier 2.8.2 -->
<Same as input>
```

##### Preserve self-closing tags
([#&#8203;13691](https://togithub.com/prettier/prettier/pull/13691) by
[@&#8203;dcyriller](https://togithub.com/dcyriller))

<!-- prettier-ignore -->

```hbs
{{! Input }}
<div />
<div></div>
<custom-component />
<custom-component></custom-component>
<i />
<i></i>
<Component />
<Component></Component>

{{! Prettier 2.8.1 }}
<div></div>
<div></div>
<custom-component></custom-component>
<custom-component></custom-component>
<i></i>
<i></i>
<Component />
<Component />

{{! Prettier 2.8.2 }}
<div />
<div></div>
<custom-component />
<custom-component></custom-component>
<i />
<i></i>
<Component />
<Component />
```

##### Allow custom "else if"-like blocks with block params
([#&#8203;13930](https://togithub.com/prettier/prettier/pull/13930) by
[@&#8203;jamescdavis](https://togithub.com/jamescdavis))

[#&#8203;13507](https://togithub.com/prettier/prettier/issues/13507)
added support for custom block keywords used with `else`, but failed to
allow block params. This updates printer-glimmer to allow block params
with custom "else if"-like blocks.

<!-- prettier-ignore -->

```hbs
{{! Input }}
{{#when isAtWork as |work|}}
  Ship that
  {{work}}!
{{else when isReading as |book|}}
  You can finish
  {{book}}
  eventually...
{{else}}
  Go to bed!
{{/when}}

{{! Prettier 2.8.1 }}
{{#when isAtWork as |work|}}
  Ship that
  {{work}}!
{{else when isReading}}
  You can finish
  {{book}}
  eventually...
{{else}}
  Go to bed!
{{/when}}

{{! Prettier 2.8.2 }}
{{#when isAtWork as |work|}}
  Ship that
  {{work}}!
{{else when isReading as |book|}}
  You can finish
  {{book}}
  eventually...
{{else}}
  Go to bed!
{{/when}}
```

##### Preserve empty lines between nested SCSS maps
([#&#8203;13931](https://togithub.com/prettier/prettier/pull/13931) by
[@&#8203;jneander](https://togithub.com/jneander))

<!-- prettier-ignore -->

```scss
/* Input */
$map: (
  'one': (
     'key': 'value',
  ),

  'two': (
     'key': 'value',
  ),
)

/* Prettier 2.8.1 */
$map: (
  'one': (
     'key': 'value',
  ),
  'two': (
     'key': 'value',
  ),
)

/* Prettier 2.8.2 */
$map: (
  'one': (
     'key': 'value',
  ),

  'two': (
     'key': 'value',
  ),
)
```

##### Fix missing parentheses when an expression statement starts with
`let[`
([#&#8203;14000](https://togithub.com/prettier/prettier/pull/14000),
[#&#8203;14044](https://togithub.com/prettier/prettier/pull/14044) by
[@&#8203;fisker](https://togithub.com/fisker),
[@&#8203;thorn0](https://togithub.com/thorn0))

<!-- prettier-ignore -->

```jsx
// Input
(let[0] = 2);

// Prettier 2.8.1
let[0] = 2;

// Prettier 2.8.1 (second format)
SyntaxError: Unexpected token (1:5)
> 1 | let[0] = 2;
    |     ^
  2 |

// Prettier 2.8.2
(let)[0] = 2;
```

##### Fix semicolon duplicated at the end of LESS file
([#&#8203;14007](https://togithub.com/prettier/prettier/pull/14007) by
[@&#8203;mvorisek](https://togithub.com/mvorisek))

<!-- prettier-ignore -->

```less
// Input
@&#8203;variable: {
  field: something;
};

// Prettier 2.8.1
@&#8203;variable: {
  field: something;
}; ;

// Prettier 2.8.2
@&#8203;variable: {
  field: something;
};
```

##### Fix no space after unary minus when followed by opening
parenthesis in LESS
([#&#8203;14008](https://togithub.com/prettier/prettier/pull/14008) by
[@&#8203;mvorisek](https://togithub.com/mvorisek))

<!-- prettier-ignore -->

```less
// Input
.unary_minus_single {
  margin: -(@&#8203;a);
}

.unary_minus_multi {
  margin: 0 -(@&#8203;a);
}

.binary_minus {
  margin: 0 - (@&#8203;a);
}

// Prettier 2.8.1
.unary_minus_single {
  margin: - (@&#8203;a);
}

.unary_minus_multi {
  margin: 0 - (@&#8203;a);
}

.binary_minus {
  margin: 0 - (@&#8203;a);
}

// Prettier 2.8.2
.unary_minus_single {
  margin: -(@&#8203;a);
}

.unary_minus_multi {
  margin: 0 -(@&#8203;a);
}

.binary_minus {
  margin: 0 - (@&#8203;a);
}
```

##### Do not change case of property name if inside a variable
declaration in LESS
([#&#8203;14034](https://togithub.com/prettier/prettier/pull/14034) by
[@&#8203;mvorisek](https://togithub.com/mvorisek))

<!-- prettier-ignore -->

```less
// Input
@&#8203;var: {
  preserveCase: 0;
};

// Prettier 2.8.1
@&#8203;var: {
  preservecase: 0;
};

// Prettier 2.8.2
@&#8203;var: {
  preserveCase: 0;
};
```

##### Fix formatting for auto-accessors with comments
([#&#8203;14038](https://togithub.com/prettier/prettier/pull/14038) by
[@&#8203;fisker](https://togithub.com/fisker))

<!-- prettier-ignore -->

```jsx
// Input
class A {
  @&#8203;dec()
  // comment
  accessor b;
}

// Prettier 2.8.1
class A {
  @&#8203;dec()
  accessor // comment
  b;
}

// Prettier 2.8.1 (second format)
class A {
  @&#8203;dec()
  accessor; // comment
  b;
}

// Prettier 2.8.2
class A {
  @&#8203;dec()
  // comment
  accessor b;
}
```

##### Add parentheses for TSTypeQuery to improve readability
([#&#8203;14042](https://togithub.com/prettier/prettier/pull/14042) by
[@&#8203;onishi-kohei](https://togithub.com/onishi-kohei))

<!-- prettier-ignore -->

```tsx
// Input
a as (typeof node.children)[number]
a as (typeof node.children)[]
a as ((typeof node.children)[number])[]

// Prettier 2.8.1
a as typeof node.children[number];
a as typeof node.children[];
a as typeof node.children[number][];

// Prettier 2.8.2
a as (typeof node.children)[number];
a as (typeof node.children)[];
a as (typeof node.children)[number][];
```

##### Fix displacing of comments in default switch case
([#&#8203;14047](https://togithub.com/prettier/prettier/pull/14047) by
[@&#8203;thorn0](https://togithub.com/thorn0))

It was a regression in Prettier 2.6.0.

<!-- prettier-ignore -->

```jsx
// Input
switch (state) {
  default:
    result = state; // no change
    break;
}

// Prettier 2.8.1
switch (state) {
  default: // no change
    result = state;
    break;
}

// Prettier 2.8.2
switch (state) {
  default:
    result = state; // no change
    break;
}
```

##### Support type annotations on auto accessors via `babel-ts`
([#&#8203;14049](https://togithub.com/prettier/prettier/pull/14049) by
[@&#8203;sosukesuzuki](https://togithub.com/sosukesuzuki))

[The bug that `@babel/parser` cannot parse auto accessors with type
annotations](https://togithub.com/babel/babel/issues/15205) has been
fixed. So we now support it via `babel-ts` parser.

<!-- prettier-ignore -->

```tsx
class Foo {
  accessor prop: number;
}
```

##### Fix formatting of empty type parameters
([#&#8203;14073](https://togithub.com/prettier/prettier/pull/14073) by
[@&#8203;fisker](https://togithub.com/fisker))

<!-- prettier-ignore -->

```jsx
// Input
const foo: bar</* comment */> = () => baz;

// Prettier 2.8.1
Error: Comment "comment" was not printed. Please report this error!

// Prettier 2.8.2
const foo: bar</* comment */> = () => baz;
```

##### Add parentheses to head of `ExpressionStatement` instead of the
whole statement
([#&#8203;14077](https://togithub.com/prettier/prettier/pull/14077) by
[@&#8203;fisker](https://togithub.com/fisker))

<!-- prettier-ignore -->

```jsx
// Input
({}).toString.call(foo) === "[object Array]"
  ? foo.forEach(iterateArray)
  : iterateObject(foo);

// Prettier 2.8.1
({}.toString.call(foo) === "[object Array]"
  ? foo.forEach(iterateArray)
  : iterateObject(foo));

// Prettier 2.8.2
({}).toString.call(foo.forEach) === "[object Array]"
  ? foo.forEach(iterateArray)
  : iterateObject(foo);
```

##### Fix comments after directive
([#&#8203;14081](https://togithub.com/prettier/prettier/pull/14081) by
[@&#8203;fisker](https://togithub.com/fisker))

<!-- prettier-ignore -->

```jsx
// Input
"use strict" /* comment */;

// Prettier 2.8.1 (with other js parsers except `babel`)
Error: Comment "comment" was not printed. Please report this error!

// Prettier 2.8.2
<Same as input>
```

##### Fix formatting for comments inside JSX attribute
([#&#8203;14082](https://togithub.com/prettier/prettier/pull/14082) with
by [@&#8203;fisker](https://togithub.com/fisker))

<!-- prettier-ignore -->

```jsx
// Input
function MyFunctionComponent() {
  <button label=/*old*/"new">button</button>
}

// Prettier 2.8.1
Error: Comment "old" was not printed. Please report this error!

// Prettier 2.8.2
function MyFunctionComponent() {
  <button label=/*old*/ "new">button</button>;
}
```

##### Quote numeric keys for json-stringify parser
([#&#8203;14083](https://togithub.com/prettier/prettier/pull/14083) by
[@&#8203;fisker](https://togithub.com/fisker))

<!-- prettier-ignore -->

```jsx
// Input
{0: 'value'}

// Prettier 2.8.1
{
  0: "value"
}

// Prettier 2.8.2
{
  "0": "value"
}
```

##### Fix removing commas from function arguments in maps
([#&#8203;14089](https://togithub.com/prettier/prettier/pull/14089) by
[@&#8203;sosukesuzuki](https://togithub.com/sosukesuzuki))

<!-- prettier-ignore -->

```scss
/* Input */
$foo: map-fn(
  (
    "#{prop}": inner-fn($first, $second),
  )
);

/* Prettier 2.8.1 */
$foo: map-fn(("#{prop}": inner-fn($first $second)));

/* Prettier 2.8.2 */
$foo: map-fn(
  (
    "#{prop}": inner-fn($first, $second),
  )
);

```

##### Do not insert space in LESS property access
([#&#8203;14103](https://togithub.com/prettier/prettier/pull/14103) by
[@&#8203;fisker](https://togithub.com/fisker))

<!-- prettier-ignore -->

```less
// Input
a {
  color: @&#8203;colors[@&#8203;white];
}

// Prettier 2.8.1
a {
  color: @&#8203;colors[ @&#8203;white];
}

// Prettier 2.8.2
<Same as input>
```

</details>

<details>
<summary>semantic-release/semantic-release</summary>

###
[`v20.1.0`](https://togithub.com/semantic-release/semantic-release/releases/tag/v20.1.0)

[Compare
Source](https://togithub.com/semantic-release/semantic-release/compare/v20.0.4...v20.1.0)

##### Features

- **plugins:** add support for loading ESM plugins
([#&#8203;2688](https://togithub.com/semantic-release/semantic-release/issues/2688))
([d170f73](https://togithub.com/semantic-release/semantic-release/commit/d170f73e0b2a8a853a7bc58977a6b4b0887d8f17))

###
[`v20.0.4`](https://togithub.com/semantic-release/semantic-release/releases/tag/v20.0.4)

[Compare
Source](https://togithub.com/semantic-release/semantic-release/compare/v20.0.3...v20.0.4)

##### Bug Fixes

- **windows:** fixed issues preventing execution from windows
([#&#8203;2672](https://togithub.com/semantic-release/semantic-release/issues/2672))
([5df624c](https://togithub.com/semantic-release/semantic-release/commit/5df624c6e50304743ca40e82958cae825452574f))

###
[`v20.0.3`](https://togithub.com/semantic-release/semantic-release/releases/tag/v20.0.3)

[Compare
Source](https://togithub.com/semantic-release/semantic-release/compare/v20.0.2...v20.0.3)

##### Reverts

- Revert "chore(deps): update dependency ava to v5.1.1"
([#&#8203;2682](https://togithub.com/semantic-release/semantic-release/issues/2682))
([914b0a2](https://togithub.com/semantic-release/semantic-release/commit/914b0a26424065e036c792f48c0179fb888ad810)),
closes
[#&#8203;2682](https://togithub.com/semantic-release/semantic-release/issues/2682)

###
[`v20.0.2`](https://togithub.com/semantic-release/semantic-release/releases/tag/v20.0.2)

[Compare
Source](https://togithub.com/semantic-release/semantic-release/compare/v20.0.1...v20.0.2)

##### Bug Fixes

- **deps:** update dependency semver-diff to v4
([#&#8203;1915](https://togithub.com/semantic-release/semantic-release/issues/1915))
([cb45d27](https://togithub.com/semantic-release/semantic-release/commit/cb45d27726418f27b20c9b7f2d50225c7a0028f6))

###
[`v20.0.1`](https://togithub.com/semantic-release/semantic-release/releases/tag/v20.0.1)

[Compare
Source](https://togithub.com/semantic-release/semantic-release/compare/v20.0.0...v20.0.1)

##### Bug Fixes

- **deps:** update dependency cosmiconfig to v8
([f914c1e](https://togithub.com/semantic-release/semantic-release/commit/f914c1ed86d6b1a8b797664d84c1bd095a21ddb4))
- **deps:** update dependency hosted-git-info to v6
([c4da008](https://togithub.com/semantic-release/semantic-release/commit/c4da008e29ccb3976385c446b317f7732218035a))

</details>

<details>
<summary>TypeStrong/TypeDoc</summary>

###
[`v0.23.24`](https://togithub.com/TypeStrong/TypeDoc/blob/HEAD/CHANGELOG.md#v02324-2023-01-07)

[Compare
Source](https://togithub.com/TypeStrong/TypeDoc/compare/v0.23.23...v0.23.24)

##### Bug Fixes

- Fixed an issue where signature comments were preferred over property
comments for indirectly created function-properties,
[#&#8203;2135](https://togithub.com/TypeStrong/TypeDoc/issues/2135).
- Fixed symlink handling when expanding entry points,
[#&#8203;2130](https://togithub.com/TypeStrong/TypeDoc/issues/2130).

##### Thanks!

-   [@&#8203;boneskull](https://togithub.com/boneskull)

</details>

<details>
<summary>Microsoft/TypeScript</summary>

###
[`v4.9.5`](https://togithub.com/microsoft/TypeScript/releases/tag/v4.9.5):
TypeScript 4.9.5

[Compare
Source](https://togithub.com/Microsoft/TypeScript/compare/v4.9.4...v4.9.5)

For release notes, check out the [release
announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-4-9/).

Downloads are available on:

-   [npm](https://www.npmjs.com/package/typescript)
- [NuGet
package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild)

#### Changes:

-
[`69e88ef`](https://togithub.com/Microsoft/TypeScript/commit/69e88ef5513a81acf69ec78f4af1f927da0d0584)
Port ignore deprecations to 4.9
([#&#8203;52419](https://togithub.com/Microsoft/TypeScript/issues/52419))
-
[`daf4e81`](https://togithub.com/Microsoft/TypeScript/commit/daf4e817a18def96b70ac34703b158ff0e6d58df)
Port timestamp fix to 4.9
([#&#8203;52426](https://togithub.com/Microsoft/TypeScript/issues/52426))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- 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://app.renovatebot.com/dashboard#github/andipaetzold/react-firehooks).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
kodiakhq bot referenced this pull request in mheob/changeset-changelog Apr 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 |
|---|---|---|---|---|---|
| [@changesets/cli](https://togithub.com/changesets/changesets/tree/main#readme) ([source](https://togithub.com/changesets/changesets)) | [`^2.26.0` -> `^2.26.1`](https://renovatebot.com/diffs/npm/@changesets%2fcli/2.26.0/2.26.1) | [![age](https://badges.renovateapi.com/packages/npm/@changesets%2fcli/2.26.1/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/@changesets%2fcli/2.26.1/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/@changesets%2fcli/2.26.1/compatibility-slim/2.26.0)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/@changesets%2fcli/2.26.1/confidence-slim/2.26.0)](https://docs.renovatebot.com/merge-confidence/) |
| [@commitlint/cli](https://commitlint.js.org/) ([source](https://togithub.com/conventional-changelog/commitlint)) | [`^17.3.0` -> `^17.5.0`](https://renovatebot.com/diffs/npm/@commitlint%2fcli/17.3.0/17.5.0) | [![age](https://badges.renovateapi.com/packages/npm/@commitlint%2fcli/17.5.0/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/@commitlint%2fcli/17.5.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/@commitlint%2fcli/17.5.0/compatibility-slim/17.3.0)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/@commitlint%2fcli/17.5.0/confidence-slim/17.3.0)](https://docs.renovatebot.com/merge-confidence/) |
| [@commitlint/config-conventional](https://commitlint.js.org/) ([source](https://togithub.com/conventional-changelog/commitlint)) | [`^17.3.0` -> `^17.4.4`](https://renovatebot.com/diffs/npm/@commitlint%2fconfig-conventional/17.3.0/17.4.4) | [![age](https://badges.renovateapi.com/packages/npm/@commitlint%2fconfig-conventional/17.4.4/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/@commitlint%2fconfig-conventional/17.4.4/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/@commitlint%2fconfig-conventional/17.4.4/compatibility-slim/17.3.0)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/@commitlint%2fconfig-conventional/17.4.4/confidence-slim/17.3.0)](https://docs.renovatebot.com/merge-confidence/) |
| [@mheob/eslint-config](https://togithub.com/mheob/config/tree/main/packages/eslint-config) ([source](https://togithub.com/mheob/config)) | [`^4.0.0` -> `^4.2.1`](https://renovatebot.com/diffs/npm/@mheob%2feslint-config/4.0.0/4.2.1) | [![age](https://badges.renovateapi.com/packages/npm/@mheob%2feslint-config/4.2.1/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/@mheob%2feslint-config/4.2.1/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/@mheob%2feslint-config/4.2.1/compatibility-slim/4.0.0)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/@mheob%2feslint-config/4.2.1/confidence-slim/4.0.0)](https://docs.renovatebot.com/merge-confidence/) |
| [@mheob/prettier-config](https://togithub.com/mheob/config/tree/main/packages/prettier-config) ([source](https://togithub.com/mheob/config)) | [`^3.0.0` -> `^3.0.1`](https://renovatebot.com/diffs/npm/@mheob%2fprettier-config/3.0.0/3.0.1) | [![age](https://badges.renovateapi.com/packages/npm/@mheob%2fprettier-config/3.0.1/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/@mheob%2fprettier-config/3.0.1/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/@mheob%2fprettier-config/3.0.1/compatibility-slim/3.0.0)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/@mheob%2fprettier-config/3.0.1/confidence-slim/3.0.0)](https://docs.renovatebot.com/merge-confidence/) |
| [@types/node](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node) ([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped)) | [`^18.11.18` -> `^18.15.9`](https://renovatebot.com/diffs/npm/@types%2fnode/18.11.18/18.15.9) | [![age](https://badges.renovateapi.com/packages/npm/@types%2fnode/18.15.9/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/@types%2fnode/18.15.9/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/@types%2fnode/18.15.9/compatibility-slim/18.11.18)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/@types%2fnode/18.15.9/confidence-slim/18.11.18)](https://docs.renovatebot.com/merge-confidence/) |
| [@vitest/coverage-istanbul](https://togithub.com/vitest-dev/vitest) | [`^0.26.3` -> `^0.29.7`](https://renovatebot.com/diffs/npm/@vitest%2fcoverage-istanbul/0.26.3/0.29.7) | [![age](https://badges.renovateapi.com/packages/npm/@vitest%2fcoverage-istanbul/0.29.7/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/@vitest%2fcoverage-istanbul/0.29.7/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/@vitest%2fcoverage-istanbul/0.29.7/compatibility-slim/0.26.3)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/@vitest%2fcoverage-istanbul/0.29.7/confidence-slim/0.26.3)](https://docs.renovatebot.com/merge-confidence/) |
| [eslint](https://eslint.org) ([source](https://togithub.com/eslint/eslint)) | [`^8.31.0` -> `^8.36.0`](https://renovatebot.com/diffs/npm/eslint/8.31.0/8.36.0) | [![age](https://badges.renovateapi.com/packages/npm/eslint/8.36.0/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/eslint/8.36.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/eslint/8.36.0/compatibility-slim/8.31.0)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/eslint/8.36.0/confidence-slim/8.31.0)](https://docs.renovatebot.com/merge-confidence/) |
| [lint-staged](https://togithub.com/okonet/lint-staged) | [`^13.1.0` -> `^13.2.0`](https://renovatebot.com/diffs/npm/lint-staged/13.1.0/13.2.0) | [![age](https://badges.renovateapi.com/packages/npm/lint-staged/13.2.0/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/lint-staged/13.2.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/lint-staged/13.2.0/compatibility-slim/13.1.0)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/lint-staged/13.2.0/confidence-slim/13.1.0)](https://docs.renovatebot.com/merge-confidence/) |
| [tsup](https://tsup.egoist.dev/) ([source](https://togithub.com/egoist/tsup)) | [`^6.5.0` -> `^6.7.0`](https://renovatebot.com/diffs/npm/tsup/6.5.0/6.7.0) | [![age](https://badges.renovateapi.com/packages/npm/tsup/6.7.0/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/tsup/6.7.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/tsup/6.7.0/compatibility-slim/6.5.0)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/tsup/6.7.0/confidence-slim/6.5.0)](https://docs.renovatebot.com/merge-confidence/) |
| [typescript](https://www.typescriptlang.org/) ([source](https://togithub.com/Microsoft/TypeScript)) | [`^4.9.4` -> `^4.9.5`](https://renovatebot.com/diffs/npm/typescript/4.9.4/4.9.5) | [![age](https://badges.renovateapi.com/packages/npm/typescript/4.9.5/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/typescript/4.9.5/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/typescript/4.9.5/compatibility-slim/4.9.4)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/typescript/4.9.5/confidence-slim/4.9.4)](https://docs.renovatebot.com/merge-confidence/) |
| [vite](https://togithub.com/vitejs/vite/tree/main/#readme) ([source](https://togithub.com/vitejs/vite)) | [`^4.0.4` -> `^4.2.1`](https://renovatebot.com/diffs/npm/vite/4.0.4/4.2.1) | [![age](https://badges.renovateapi.com/packages/npm/vite/4.2.1/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/vite/4.2.1/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/vite/4.2.1/compatibility-slim/4.0.4)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/vite/4.2.1/confidence-slim/4.0.4)](https://docs.renovatebot.com/merge-confidence/) |
| [vitest](https://togithub.com/vitest-dev/vitest) | [`^0.26.3` -> `^0.29.7`](https://renovatebot.com/diffs/npm/vitest/0.26.3/0.29.7) | [![age](https://badges.renovateapi.com/packages/npm/vitest/0.29.7/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/vitest/0.29.7/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/vitest/0.29.7/compatibility-slim/0.26.3)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/vitest/0.29.7/confidence-slim/0.26.3)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>changesets/changesets</summary>

### [`v2.26.1`](https://togithub.com/changesets/changesets/releases/tag/%40changesets/cli%402.26.1)

[Compare Source](https://togithub.com/changesets/changesets/compare/@changesets/cli@2.26.0...@changesets/cli@2.26.1)

##### Patch Changes

-   [#&#8203;1115](https://togithub.com/changesets/changesets/pull/1115) [`feddc88`](https://togithub.com/changesets/changesets/commit/feddc88d74781a448855a5a0b0ffa50917489b15) Thanks [@&#8203;Andarist](https://togithub.com/Andarist)! - Call `pnpm publish` directly from the directory of the published package. This allows `pnpm` to correctly handle configured `publishConfig.directory`.

</details>

<details>
<summary>conventional-changelog/commitlint (@&#8203;commitlint/cli)</summary>

### [`v17.5.0`](https://togithub.com/conventional-changelog/commitlint/blob/HEAD/@&#8203;commitlint/cli/CHANGELOG.md#&#8203;1750-httpsgithubcomconventional-changelogcommitlintcomparev1744v1750-2023-03-22)

[Compare Source](https://togithub.com/conventional-changelog/commitlint/compare/v17.4.4...v17.5.0)

**Note:** Version bump only for package [@&#8203;commitlint/cli](https://togithub.com/commitlint/cli)

#### [17.4.4](https://togithub.com/conventional-changelog/commitlint/compare/v17.4.3...v17.4.4) (2023-02-17)

**Note:** Version bump only for package [@&#8203;commitlint/cli](https://togithub.com/commitlint/cli)

#### [17.4.3](https://togithub.com/conventional-changelog/commitlint/compare/v17.4.2...v17.4.3) (2023-02-13)

**Note:** Version bump only for package [@&#8203;commitlint/cli](https://togithub.com/commitlint/cli)

#### [17.4.2](https://togithub.com/conventional-changelog/commitlint/compare/v17.4.1...v17.4.2) (2023-01-12)

**Note:** Version bump only for package [@&#8203;commitlint/cli](https://togithub.com/commitlint/cli)

#### [17.4.1](https://togithub.com/conventional-changelog/commitlint/compare/v17.4.0...v17.4.1) (2023-01-09)

**Note:** Version bump only for package [@&#8203;commitlint/cli](https://togithub.com/commitlint/cli)

### [`v17.4.4`](https://togithub.com/conventional-changelog/commitlint/blob/HEAD/@&#8203;commitlint/cli/CHANGELOG.md#&#8203;1744-httpsgithubcomconventional-changelogcommitlintcomparev1743v1744-2023-02-17)

[Compare Source](https://togithub.com/conventional-changelog/commitlint/compare/v17.4.3...v17.4.4)

**Note:** Version bump only for package [@&#8203;commitlint/cli](https://togithub.com/commitlint/cli)

### [`v17.4.3`](https://togithub.com/conventional-changelog/commitlint/blob/HEAD/@&#8203;commitlint/cli/CHANGELOG.md#&#8203;1743-httpsgithubcomconventional-changelogcommitlintcomparev1742v1743-2023-02-13)

[Compare Source](https://togithub.com/conventional-changelog/commitlint/compare/v17.4.2...v17.4.3)

**Note:** Version bump only for package [@&#8203;commitlint/cli](https://togithub.com/commitlint/cli)

### [`v17.4.2`](https://togithub.com/conventional-changelog/commitlint/blob/HEAD/@&#8203;commitlint/cli/CHANGELOG.md#&#8203;1742-httpsgithubcomconventional-changelogcommitlintcomparev1741v1742-2023-01-12)

[Compare Source](https://togithub.com/conventional-changelog/commitlint/compare/v17.4.1...v17.4.2)

**Note:** Version bump only for package [@&#8203;commitlint/cli](https://togithub.com/commitlint/cli)

### [`v17.4.1`](https://togithub.com/conventional-changelog/commitlint/blob/HEAD/@&#8203;commitlint/cli/CHANGELOG.md#&#8203;1741-httpsgithubcomconventional-changelogcommitlintcomparev1740v1741-2023-01-09)

[Compare Source](https://togithub.com/conventional-changelog/commitlint/compare/v17.4.0...v17.4.1)

**Note:** Version bump only for package [@&#8203;commitlint/cli](https://togithub.com/commitlint/cli)

### [`v17.4.0`](https://togithub.com/conventional-changelog/commitlint/blob/HEAD/@&#8203;commitlint/cli/CHANGELOG.md#&#8203;1740-httpsgithubcomconventional-changelogcommitlintcomparev1730v1740-2023-01-04)

[Compare Source](https://togithub.com/conventional-changelog/commitlint/compare/v17.3.0...v17.4.0)

##### Bug Fixes

-   update dependency fs-extra to v11 ([#&#8203;3460](https://togithub.com/conventional-changelog/commitlint/issues/3460)) ([a437923](https://togithub.com/conventional-changelog/commitlint/commit/a43792388e0d9707da770b26592c5e31553384a1))

</details>

<details>
<summary>conventional-changelog/commitlint (@&#8203;commitlint/config-conventional)</summary>

### [`v17.4.4`](https://togithub.com/conventional-changelog/commitlint/blob/HEAD/@&#8203;commitlint/config-conventional/CHANGELOG.md#&#8203;1744-httpsgithubcomconventional-changelogcommitlintcomparev1743v1744-2023-02-17)

[Compare Source](https://togithub.com/conventional-changelog/commitlint/compare/v17.4.3...v17.4.4)

**Note:** Version bump only for package [@&#8203;commitlint/config-conventional](https://togithub.com/commitlint/config-conventional)

### [`v17.4.3`](https://togithub.com/conventional-changelog/commitlint/blob/HEAD/@&#8203;commitlint/config-conventional/CHANGELOG.md#&#8203;1743-httpsgithubcomconventional-changelogcommitlintcomparev1742v1743-2023-02-13)

[Compare Source](https://togithub.com/conventional-changelog/commitlint/compare/v17.4.2...v17.4.3)

**Note:** Version bump only for package [@&#8203;commitlint/config-conventional](https://togithub.com/commitlint/config-conventional)

### [`v17.4.2`](https://togithub.com/conventional-changelog/commitlint/blob/HEAD/@&#8203;commitlint/config-conventional/CHANGELOG.md#&#8203;1742-httpsgithubcomconventional-changelogcommitlintcomparev1741v1742-2023-01-12)

[Compare Source](https://togithub.com/conventional-changelog/commitlint/compare/v17.4.0...v17.4.2)

**Note:** Version bump only for package [@&#8203;commitlint/config-conventional](https://togithub.com/commitlint/config-conventional)

### [`v17.4.0`](https://togithub.com/conventional-changelog/commitlint/blob/HEAD/@&#8203;commitlint/config-conventional/CHANGELOG.md#&#8203;1740-httpsgithubcomconventional-changelogcommitlintcomparev1730v1740-2023-01-04)

[Compare Source](https://togithub.com/conventional-changelog/commitlint/compare/v17.3.0...v17.4.0)

**Note:** Version bump only for package [@&#8203;commitlint/config-conventional](https://togithub.com/commitlint/config-conventional)

</details>

<details>
<summary>mheob/config</summary>

### [`v4.2.1`](https://togithub.com/mheob/config/releases/tag/%40mheob/eslint-config%404.2.1)

[Compare Source](https://togithub.com/mheob/config/compare/@mheob/eslint-config@4.2.0...@mheob/eslint-config@4.2.1)

##### Patch Changes

-   update dependencies --> ([#&#8203;121](https://togithub.com/mheob/config/pull/121)) by
    [@&#8203;mheob](https://togithub.com/mheob)

### [`v4.2.0`](https://togithub.com/mheob/config/releases/tag/%40mheob/eslint-config%404.2.0)

[Compare Source](https://togithub.com/mheob/config/compare/@mheob/eslint-config@4.1.0...@mheob/eslint-config@4.2.0)

##### Minor Changes

-   remove explicit return rule --> ([#&#8203;113](https://togithub.com/mheob/config/pull/113)) by
    [@&#8203;mheob](https://togithub.com/mheob)

-   move `explicit-function-return-type` rule to base config -->
    ([#&#8203;116](https://togithub.com/mheob/config/pull/116)) by [@&#8203;mheob](https://togithub.com/mheob)

##### Patch Changes

-   update dependencies --> ([#&#8203;112](https://togithub.com/mheob/config/pull/112)) by
    [@&#8203;mheob](https://togithub.com/mheob)

-   fix the README files after the change of using ESLint to fix the imports -->
    ([#&#8203;109](https://togithub.com/mheob/config/pull/109)) by [@&#8203;mheob](https://togithub.com/mheob)

### [`v4.1.0`](https://togithub.com/mheob/config/releases/tag/%40mheob/eslint-config%404.1.0)

[Compare Source](https://togithub.com/mheob/config/compare/@mheob/eslint-config@4.0.0...@mheob/eslint-config@4.1.0)

##### Minor Changes

-   add auto-fix for unused imports and vars --> ([#&#8203;106](https://togithub.com/mheob/config/pull/106)) by [@&#8203;mheob](https://togithub.com/mheob)

##### Patch Changes

-   bump `eslint-config-next` to `13.1.0` --> ([#&#8203;106](https://togithub.com/mheob/config/pull/106)) by [@&#8203;mheob](https://togithub.com/mheob)

</details>

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

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

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

#####    🐞 Bug Fixes

-   Import [@&#8203;vite/client](https://togithub.com/vite/client) in browser code for handling optimizer  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) [<samp>(20c51)</samp>](https://togithub.com/vitest-dev/vitest/commit/20c510c4)

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

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

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

#####    🐞 Bug Fixes

-   Bundle UI with [@&#8203;vitest/browser](https://togithub.com/vitest/browser)  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) [<samp>(14091)</samp>](https://togithub.com/vitest-dev/vitest/commit/14091c59)

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

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

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

#####    🐞 Bug Fixes

-   **browser**: Relax vitest peer dependency  -  by [@&#8203;cexbrayat](https://togithub.com/cexbrayat) in [https://github.com/vitest-dev/vitest/issues/3039](https://togithub.com/vitest-dev/vitest/issues/3039) [<samp>(865d1)</samp>](https://togithub.com/vitest-dev/vitest/commit/865d1afd)

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

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

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

#####    🚀 Features

-   `--test-timeout` CLI argument  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3019](https://togithub.com/vitest-dev/vitest/issues/3019) [<samp>(63c62)</samp>](https://togithub.com/vitest-dev/vitest/commit/63c62f9e)
-   Add an option to control Vitest pool with filepath  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3029](https://togithub.com/vitest-dev/vitest/issues/3029) [<samp>(c7f0c)</samp>](https://togithub.com/vitest-dev/vitest/commit/c7f0c86b)
-   Process timeout to log names of stuck test files  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3031](https://togithub.com/vitest-dev/vitest/issues/3031) [<samp>(0ddf7)</samp>](https://togithub.com/vitest-dev/vitest/commit/0ddf7220)
-   Support relative path in html report  -  by [@&#8203;poyoho](https://togithub.com/poyoho) and [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2695](https://togithub.com/vitest-dev/vitest/issues/2695) [<samp>(a7680)</samp>](https://togithub.com/vitest-dev/vitest/commit/a768015e)
-   Webdriverio (+ custom providers) integration for browser mode  -  by [@&#8203;Aslemammad](https://togithub.com/Aslemammad), **Christian Bromann**, [@&#8203;sheremet-va](https://togithub.com/sheremet-va), [@&#8203;userquin](https://togithub.com/userquin) and [@&#8203;dammy001](https://togithub.com/dammy001) in [https://github.com/vitest-dev/vitest/issues/2999](https://togithub.com/vitest-dev/vitest/issues/2999) [<samp>(9cdc8)</samp>](https://togithub.com/vitest-dev/vitest/commit/9cdc8030)

#####    🐞 Bug Fixes

-   Show correct line numbers in stack trace when using vi.resetModules()  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3020](https://togithub.com/vitest-dev/vitest/issues/3020) [<samp>(35730)</samp>](https://togithub.com/vitest-dev/vitest/commit/35730328)
-   Mocking value proxy filter Symbol static properties  -  by [@&#8203;ChpShy](https://togithub.com/ChpShy) in [https://github.com/vitest-dev/vitest/issues/3036](https://togithub.com/vitest-dev/vitest/issues/3036) [<samp>(0cf44)</samp>](https://togithub.com/vitest-dev/vitest/commit/0cf44098)
-   Escape XML in error stack trace when using junit reporter  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3038](https://togithub.com/vitest-dev/vitest/issues/3038) [<samp>(cc577)</samp>](https://togithub.com/vitest-dev/vitest/commit/cc5779d6)

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

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

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

#####    🚀 Features

-   Use custom colors implementation instead of picocolors  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) [<samp>(427b0)</samp>](https://togithub.com/vitest-dev/vitest/commit/427b0622)
-   Uncaught errors to indicate env teardown  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2982](https://togithub.com/vitest-dev/vitest/issues/2982) [<samp>(1fe82)</samp>](https://togithub.com/vitest-dev/vitest/commit/1fe8286c)
-   **config**: Add an option to run setupFiles in sequence  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/3008](https://togithub.com/vitest-dev/vitest/issues/3008) [<samp>(c2e25)</samp>](https://togithub.com/vitest-dev/vitest/commit/c2e25bb9)

#####    🐞 Bug Fixes

-   Console log not visible  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2943](https://togithub.com/vitest-dev/vitest/issues/2943) [<samp>(02808)</samp>](https://togithub.com/vitest-dev/vitest/commit/0280825f)
-   Remove duplicate execArgv when deps.registerNodeLoader: true  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2965](https://togithub.com/vitest-dev/vitest/issues/2965) [<samp>(a1954)</samp>](https://togithub.com/vitest-dev/vitest/commit/a1954cc0)
-   Prevent running test cases timers after environment teardown  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2971](https://togithub.com/vitest-dev/vitest/issues/2971) [<samp>(bde75)</samp>](https://togithub.com/vitest-dev/vitest/commit/bde75a34)
-   Don't mark setupFiles as test files, if experimentaOptimizer is used  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2974](https://togithub.com/vitest-dev/vitest/issues/2974) [<samp>(819c6)</samp>](https://togithub.com/vitest-dev/vitest/commit/819c6cbe)
-   Config errors not visible  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2995](https://togithub.com/vitest-dev/vitest/issues/2995) [<samp>(f01c7)</samp>](https://togithub.com/vitest-dev/vitest/commit/f01c7833)
-   \--inspect to work inside workers  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2983](https://togithub.com/vitest-dev/vitest/issues/2983) [<samp>(36087)</samp>](https://togithub.com/vitest-dev/vitest/commit/36087d1e)
-   **types**: Use `any` as default value for TArgs in vi.fn()  -  by [@&#8203;jessevanassen](https://togithub.com/jessevanassen) in [https://github.com/vitest-dev/vitest/issues/2947](https://togithub.com/vitest-dev/vitest/issues/2947) [<samp>(1bdcc)</samp>](https://togithub.com/vitest-dev/vitest/commit/1bdcc212)

#####    🏎 Performance

-   **reporters**: Overall improvements  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/3006](https://togithub.com/vitest-dev/vitest/issues/3006) [<samp>(22ca0)</samp>](https://togithub.com/vitest-dev/vitest/commit/22ca0b6b)

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

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

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

#####    🐞 Bug Fixes

-   Optimize dependencies in setup files  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2935](https://togithub.com/vitest-dev/vitest/issues/2935) [<samp>(c169f)</samp>](https://togithub.com/vitest-dev/vitest/commit/c169f980)
-   **coverage**: C8 provider to work when isolate:false  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2929](https://togithub.com/vitest-dev/vitest/issues/2929) [<samp>(86538)</samp>](https://togithub.com/vitest-dev/vitest/commit/8653830b)

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

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

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

#####    🐞 Bug Fixes

-   Wait for optimized dependency to be bundled in non-pnpm package managers  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) [<samp>(d2460)</samp>](https://togithub.com/vitest-dev/vitest/commit/d2460b7a)

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

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

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

This release makes some significant changes to how tests are running. If you were using `--no-threads` before, you might consider enabling `--single-thread` instead (because your tests are now running in `child_process` instead of a worker thread) or try our new performance optimization feature (discussed later). If you were relying on API that was not available inside a worker (like `process.chdir()`, you can now use this option.

One of the potential breaking bug fixes is that environments do not share the same global scope anymore if you run them with `--no-isolate`, `--no-threads` or `--single-thread` - you might need to update your setup files if you were relying on a global variable before.

If you had performance issues on large code bases before, try the new [`deps.experimentalOptimizer`](https://vitest.dev/config/#deps-experimentaloptimizer) option instead of disabling threads. Feedback is welcome!

One of the breaking changes includes adding a link to snapshots inside snapshot files, meaning you will need to update all your snapshots.

#####    🚨 Breaking Changes

-   Vitest as peer dependency for coverage packages  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2836](https://togithub.com/vitest-dev/vitest/issues/2836) [<samp>(94247)</samp>](https://togithub.com/vitest-dev/vitest/commit/94247f1b)
-   Coverage-c8 to use V8 profiler directly instead of `NODE_V8_COVERAGE`  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2786](https://togithub.com/vitest-dev/vitest/issues/2786) [<samp>(095c6)</samp>](https://togithub.com/vitest-dev/vitest/commit/095c6390)
-   Add a link to the comment at the top of the snapshot file  -  by [@&#8203;btea](https://togithub.com/btea) in [https://github.com/vitest-dev/vitest/issues/2867](https://togithub.com/vitest-dev/vitest/issues/2867) [<samp>(615e1)</samp>](https://togithub.com/vitest-dev/vitest/commit/615e150b)
-   Always run separate environments in isolation  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2860](https://togithub.com/vitest-dev/vitest/issues/2860) [<samp>(1f858)</samp>](https://togithub.com/vitest-dev/vitest/commit/1f858e0c)
    -   Tests with `node` and `jsdom` (and other environments) now don't share the same global scope, if you run them with `--no-isolate` or `--no-threads` flag. Vitest doesn't provide a way to restore the previous behavior as it is considered a bug.
-   Use child_process when --no-threads is used  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2772](https://togithub.com/vitest-dev/vitest/issues/2772) [<samp>(7bf54)</samp>](https://togithub.com/vitest-dev/vitest/commit/7bf54505)
    -   Tests inside `chid_process` might run longer due to the communication overhead. If you want to restore the previous behavior, use `--single-thread`.

#####    🚀 Features

-   Add test seed to banner  -  by [@&#8203;btkostner](https://togithub.com/btkostner) in [https://github.com/vitest-dev/vitest/issues/2877](https://togithub.com/vitest-dev/vitest/issues/2877) [<samp>(bdb39)</samp>](https://togithub.com/vitest-dev/vitest/commit/bdb39569)
-   Use custom source-map-support implementation  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2905](https://togithub.com/vitest-dev/vitest/issues/2905) [<samp>(6ff6c)</samp>](https://togithub.com/vitest-dev/vitest/commit/6ff6c6eb)
-   Add an option to enable Vite optimizer  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2912](https://togithub.com/vitest-dev/vitest/issues/2912) [<samp>(af8de)</samp>](https://togithub.com/vitest-dev/vitest/commit/af8de362)
-   **coverage**:
    -   Add support for coverage reporter options  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2690](https://togithub.com/vitest-dev/vitest/issues/2690) [<samp>(f8176)</samp>](https://togithub.com/vitest-dev/vitest/commit/f8176182)
    -   Automatic threshold updating  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2886](https://togithub.com/vitest-dev/vitest/issues/2886) [<samp>(e1652)</samp>](https://togithub.com/vitest-dev/vitest/commit/e1652163)
-   **spy**:
    -   Implement mock.withImplementation API  -  by [@&#8203;obadakhalili](https://togithub.com/obadakhalili) and [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2835](https://togithub.com/vitest-dev/vitest/issues/2835) [<samp>(610b1)</samp>](https://togithub.com/vitest-dev/vitest/commit/610b1d46)
-   **vite-node**:
    -   Cli option for vite mode  -  by [@&#8203;abarke](https://togithub.com/abarke) in [https://github.com/vitest-dev/vitest/issues/2893](https://togithub.com/vitest-dev/vitest/issues/2893) [<samp>(0fc08)</samp>](https://togithub.com/vitest-dev/vitest/commit/0fc08032)

#####    🐞 Bug Fixes

-   Wait for console.log to print a message before terminating a worker  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2861](https://togithub.com/vitest-dev/vitest/issues/2861) [<samp>(fbc54)</samp>](https://togithub.com/vitest-dev/vitest/commit/fbc54c91)
-   Cleanup last mocked cache when call vi.doMock  -  by [@&#8203;mysteryven](https://togithub.com/mysteryven) in [https://github.com/vitest-dev/vitest/issues/2872](https://togithub.com/vitest-dev/vitest/issues/2872) [<samp>(65d71)</samp>](https://togithub.com/vitest-dev/vitest/commit/65d71b9e)
-   Reload changed configuration file on watch mode  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2889](https://togithub.com/vitest-dev/vitest/issues/2889) [<samp>(4d277)</samp>](https://togithub.com/vitest-dev/vitest/commit/4d277d8d)
-   **coverage**: Custom providers to work inside worker threads  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2817](https://togithub.com/vitest-dev/vitest/issues/2817) [<samp>(81604)</samp>](https://togithub.com/vitest-dev/vitest/commit/81604bce)

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

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

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

#####    🚀 Features

-   Add --script option to vite-node  -  by [@&#8203;jgoux](https://togithub.com/jgoux) and [@&#8203;dammy001](https://togithub.com/dammy001) in [https://github.com/vitest-dev/vitest/issues/2793](https://togithub.com/vitest-dev/vitest/issues/2793) [<samp>(d3d6b)</samp>](https://togithub.com/vitest-dev/vitest/commit/d3d6b1fc)
-   Inject executor directly into runner  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2858](https://togithub.com/vitest-dev/vitest/issues/2858) [<samp>(62c43)</samp>](https://togithub.com/vitest-dev/vitest/commit/62c43420)

#####    🐞 Bug Fixes

-   Don't call "afterAll" hooks, if suite was skipped  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2802](https://togithub.com/vitest-dev/vitest/issues/2802) [<samp>(aa1aa)</samp>](https://togithub.com/vitest-dev/vitest/commit/aa1aa4da)
-   Always display serialized error, even if it doesn't have stack  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2829](https://togithub.com/vitest-dev/vitest/issues/2829) [<samp>(ab5f8)</samp>](https://togithub.com/vitest-dev/vitest/commit/ab5f8927)
-   Clear mocks between tests  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2857](https://togithub.com/vitest-dev/vitest/issues/2857) [<samp>(c420c)</samp>](https://togithub.com/vitest-dev/vitest/commit/c420cb7b)
-   **expect**:
    -   Check for no 'throw' type in toHaveReturned  -  by [@&#8203;trivikr](https://togithub.com/trivikr) in [https://github.com/vitest-dev/vitest/issues/2850](https://togithub.com/vitest-dev/vitest/issues/2850) [<samp>(1164c)</samp>](https://togithub.com/vitest-dev/vitest/commit/1164c478)
    -   Accept array index as number in toHaveProperty  -  by [@&#8203;trivikr](https://togithub.com/trivikr) in [https://github.com/vitest-dev/vitest/issues/2808](https://togithub.com/vitest-dev/vitest/issues/2808) [<samp>(8705e)</samp>](https://togithub.com/vitest-dev/vitest/commit/8705e6b2)

#####    🏎 Performance

-   Don't inline Vitest entry  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2819](https://togithub.com/vitest-dev/vitest/issues/2819) [<samp>(570c6)</samp>](https://togithub.com/vitest-dev/vitest/commit/570c639e)

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

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

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

#####    🐞 Bug Fixes

-   Setup correct utils inside asymmetric matchers  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2768](https://togithub.com/vitest-dev/vitest/issues/2768) [<samp>(415c8)</samp>](https://togithub.com/vitest-dev/vitest/commit/415c8a93)
-   Cjs exports has Object.prototype instead of null  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2769](https://togithub.com/vitest-dev/vitest/issues/2769) [<samp>(4fc49)</samp>](https://togithub.com/vitest-dev/vitest/commit/4fc492c6)
-   Duplicate callbacks in vite-node HMR  -  by [@&#8203;jgoux](https://togithub.com/jgoux) in [https://github.com/vitest-dev/vitest/issues/2792](https://togithub.com/vitest-dev/vitest/issues/2792) [<samp>(f0333)</samp>](https://togithub.com/vitest-dev/vitest/commit/f03337ae)
-   Do not include source files in `onWatcherStart` when `typecheck.ignoreSourceErrors` is true  -  by [@&#8203;mascii](https://togithub.com/mascii) and [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2774](https://togithub.com/vitest-dev/vitest/issues/2774) [<samp>(d612e)</samp>](https://togithub.com/vitest-dev/vitest/commit/d612efdf)

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

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

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

#####    🚀 Features

-   Allow using atomics to communicate between threads  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2758](https://togithub.com/vitest-dev/vitest/issues/2758) [<samp>(3679c)</samp>](https://togithub.com/vitest-dev/vitest/commit/3679cf25)
-   Show active filename pattern on CLI  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) [<samp>(a0455)</samp>](https://togithub.com/vitest-dev/vitest/commit/a0455917)
-   Show active test name pattern on CLI  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) [<samp>(df7c4)</samp>](https://togithub.com/vitest-dev/vitest/commit/df7c410a)
-   Allow `config` option to be false  -  by [@&#8203;antfu](https://togithub.com/antfu) in [https://github.com/vitest-dev/vitest/issues/2749](https://togithub.com/vitest-dev/vitest/issues/2749) [<samp>(c66e3)</samp>](https://togithub.com/vitest-dev/vitest/commit/c66e335b)

#####    🐞 Bug Fixes

-   Watch mode's filename pattern to persist on unrelated file changes  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) [<samp>(712ac)</samp>](https://togithub.com/vitest-dev/vitest/commit/712ac15b)
-   Watch mode's filename pattern to persist re-run of failed tests, snapshot updates and testname filter changes  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) [<samp>(1c65a)</samp>](https://togithub.com/vitest-dev/vitest/commit/1c65ac48)
-   Dont incorrectly mark run failed if filename pattern excludes previously failed tests  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) [<samp>(61cf9)</samp>](https://togithub.com/vitest-dev/vitest/commit/61cf9a7a)
-   **coverage**: Istanbul crashes when no tests were run  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2753](https://togithub.com/vitest-dev/vitest/issues/2753) [<samp>(ebc95)</samp>](https://togithub.com/vitest-dev/vitest/commit/ebc95add)

#####    🏎 Performance

-   Don't import vite in worker  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2759](https://togithub.com/vitest-dev/vitest/issues/2759) [<samp>(e49c1)</samp>](https://togithub.com/vitest-dev/vitest/commit/e49c13fa)

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

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

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

#####    🐞 Bug Fixes

-   Send stderr header log to stderr  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2736](https://togithub.com/vitest-dev/vitest/issues/2736) [<samp>(998ea)</samp>](https://togithub.com/vitest-dev/vitest/commit/998ea804)
-   Call afterAll, if beforeAll failed  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2737](https://togithub.com/vitest-dev/vitest/issues/2737) [<samp>(1904c)</samp>](https://togithub.com/vitest-dev/vitest/commit/1904c9c4)
-   **vite-node**: Don't cache modules with `timestamp: 0`  -  by [@&#8203;danielroe](https://togithub.com/danielroe) in [https://github.com/vitest-dev/vitest/issues/2747](https://togithub.com/vitest-dev/vitest/issues/2747) [<samp>(e88c0)</samp>](https://togithub.com/vitest-dev/vitest/commit/e88c04c4)

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

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

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

#####    🐞 Bug Fixes

-   Remove UI from Vitest dependencies  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) [<samp>(b120c)</samp>](https://togithub.com/vitest-dev/vitest/commit/b120ca3f)

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

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

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

#####    🚨 Breaking Changes

-   Don't rely on environment for interopDefault  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2682](https://togithub.com/vitest-dev/vitest/issues/2682) [<samp>(3f20c)</samp>](https://togithub.com/vitest-dev/vitest/commit/3f20cf5a)
-   Move test runner into a separate package  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2721](https://togithub.com/vitest-dev/vitest/issues/2721) [<samp>(482b7)</samp>](https://togithub.com/vitest-dev/vitest/commit/482b72fc)
    -   To extend text context, you need to augment `@vitet/runner` package instead of `vitest`

#####    🐞 Bug Fixes

-   **coverage**: C8 to log warning when run in Stackblitz  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2735](https://togithub.com/vitest-dev/vitest/issues/2735) [<samp>(b6c41)</samp>](https://togithub.com/vitest-dev/vitest/commit/b6c41caa)

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

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

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

#####    🚀 Features

-   Throw unhandled exception, if code throws "error" event  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2691](https://togithub.com/vitest-dev/vitest/issues/2691) [<samp>(6a30c)</samp>](https://togithub.com/vitest-dev/vitest/commit/6a30cdd3)
-   New `environmentMatchGlobs` option to auto infer env based on glob  -  by [@&#8203;antfu](https://togithub.com/antfu) in [https://github.com/vitest-dev/vitest/issues/2714](https://togithub.com/vitest-dev/vitest/issues/2714) [<samp>(3e142)</samp>](https://togithub.com/vitest-dev/vitest/commit/3e1429e5)
-   Add basic reporter which allow user to use reporter in ci  -  by [@&#8203;trim21](https://togithub.com/trim21) and [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2612](https://togithub.com/vitest-dev/vitest/issues/2612) [<samp>(5df52)</samp>](https://togithub.com/vitest-dev/vitest/commit/5df522f7)
-   Improve "isCI" check  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2705](https://togithub.com/vitest-dev/vitest/issues/2705) [<samp>(e6457)</samp>](https://togithub.com/vitest-dev/vitest/commit/e64570df)

#####    🐞 Bug Fixes

-   Show error in the terminal, if "only" flag is used  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2696](https://togithub.com/vitest-dev/vitest/issues/2696) [<samp>(24d63)</samp>](https://togithub.com/vitest-dev/vitest/commit/24d63809)
-   Cpu and heap profiling options for workers  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2702](https://togithub.com/vitest-dev/vitest/issues/2702) [<samp>(c31a0)</samp>](https://togithub.com/vitest-dev/vitest/commit/c31a0b20)
-   Show correct number of tests in test summary  -  by [@&#8203;poyoho](https://togithub.com/poyoho) in [https://github.com/vitest-dev/vitest/issues/2703](https://togithub.com/vitest-dev/vitest/issues/2703) [<samp>(859e7)</samp>](https://togithub.com/vitest-dev/vitest/commit/859e7f01)
-   Don't terminate workers on Node 14 to not trigger fatal error  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2697](https://togithub.com/vitest-dev/vitest/issues/2697) [<samp>(db9b6)</samp>](https://togithub.com/vitest-dev/vitest/commit/db9b6bb7)
-   Allow custom async matchers  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2707](https://togithub.com/vitest-dev/vitest/issues/2707) [<samp>(b5669)</samp>](https://togithub.com/vitest-dev/vitest/commit/b566912d)
-   Remove setup files from coverage  -  by [@&#8203;g4rry420](https://togithub.com/g4rry420) in [https://github.com/vitest-dev/vitest/issues/2574](https://togithub.com/vitest-dev/vitest/issues/2574) [<samp>(488e4)</samp>](https://togithub.com/vitest-dev/vitest/commit/488e4b9f)
-   `reportCoverage` context can be optional  -  by [@&#8203;antfu](https://togithub.com/antfu) [<samp>(4cd1e)</samp>](https://togithub.com/vitest-dev/vitest/commit/4cd1e5d7)
-   ENOENT assets when htmldir exists  -  by [@&#8203;everett1992](https://togithub.com/everett1992) in [https://github.com/vitest-dev/vitest/issues/2701](https://togithub.com/vitest-dev/vitest/issues/2701) [<samp>(5a656)</samp>](https://togithub.com/vitest-dev/vitest/commit/5a656753)
-   Correctly resolve paths relative to root, when used outside of root directory  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2687](https://togithub.com/vitest-dev/vitest/issues/2687) [<samp>(703aa)</samp>](https://togithub.com/vitest-dev/vitest/commit/703aab46)
-   **typecheck**: Store tmp tsconfig close to original one  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2660](https://togithub.com/vitest-dev/vitest/issues/2660) [<samp>(26f91)</samp>](https://togithub.com/vitest-dev/vitest/commit/26f915ad)

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

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

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

#####    🚀 Features

-   Add runAllTimersAsync from sinonjs  -  by [@&#8203;guillaumeduboc](https://togithub.com/guillaumeduboc) in [https://github.com/vitest-dev/vitest/issues/2209](https://togithub.com/vitest-dev/vitest/issues/2209) [<samp>(40187)</samp>](https://togithub.com/vitest-dev/vitest/commit/40187bdb)

#####    🐞 Bug Fixes

-   Document.defaultView references the same window as the global one  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2649](https://togithub.com/vitest-dev/vitest/issues/2649) [<samp>(1ac4b)</samp>](https://togithub.com/vitest-dev/vitest/commit/1ac4bb8d)
-   Trim input filename and test name  -  by [@&#8203;btea](https://togithub.com/btea) in [https://github.com/vitest-dev/vitest/issues/2650](https://togithub.com/vitest-dev/vitest/issues/2650) [<samp>(d3dcb)</samp>](https://togithub.com/vitest-dev/vitest/commit/d3dcbdc8)
-   Increase default teardownTimeout  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) [<samp>(13e53)</samp>](https://togithub.com/vitest-dev/vitest/commit/13e53ac7)
-   Mock css files imported with "require"  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2679](https://togithub.com/vitest-dev/vitest/issues/2679) [<samp>(6c1a2)</samp>](https://togithub.com/vitest-dev/vitest/commit/6c1a26a6)
-   Don't start watching files in "run" mode  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2680](https://togithub.com/vitest-dev/vitest/issues/2680) [<samp>(0a31e)</samp>](https://togithub.com/vitest-dev/vitest/commit/0a31e85c)
-   Rerun tests, when setup file is edited  -  by [@&#8203;mysteryven](https://togithub.com/mysteryven) and [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2625](https://togithub.com/vitest-dev/vitest/issues/2625) [<samp>(019a6)</samp>](https://togithub.com/vitest-dev/vitest/commit/019a6d57)
-   Always show filename for unhandled errors  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2689](https://togithub.com/vitest-dev/vitest/issues/2689) [<samp>(15aa0)</samp>](https://togithub.com/vitest-dev/vitest/commit/15aa0156)
-   Define property instead of assigning it in vi.stubGlobal  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2685](https://togithub.com/vitest-dev/vitest/issues/2685) [<samp>(8a1d7)</samp>](https://togithub.com/vitest-dev/vitest/commit/8a1d7590)
-   **coverage**: Watch mode to use `coverage.all` only when all tests are run  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2665](https://togithub.com/vitest-dev/vitest/issues/2665) [<samp>(85096)</samp>](https://togithub.com/vitest-dev/vitest/commit/85096281)
-   **typecheck**: Log tests with verbose reporter, correctly show "pass" tests  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2656](https://togithub.com/vitest-dev/vitest/issues/2656) [<samp>(61dde)</samp>](https://togithub.com/vitest-dev/vitest/commit/61ddebae)
-   **ui**: Don't show "connecting" screen in html reporter  -  by [@&#8203;poyoho](https://togithub.com/poyoho) in [https://github.com/vitest-dev/vitest/issues/2693](https://togithub.com/vitest-dev/vitest/issues/2693) [<samp>(d8548)</samp>](https://togithub.com/vitest-dev/vitest/commit/d8548c69)

#####    🏎 Performance

-   Don't resolve import path, if it was already resolved  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2659](https://togithub.com/vitest-dev/vitest/issues/2659) [<samp>(45cc3)</samp>](https://togithub.com/vitest-dev/vitest/commit/45cc3423)

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

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

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

#####    🚀 Features

-   Show error, when process.exit is called  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2643](https://togithub.com/vitest-dev/vitest/issues/2643) [<samp>(866f4)</samp>](https://togithub.com/vitest-dev/vitest/commit/866f4494)
-   Add more information about unhandler error  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2642](https://togithub.com/vitest-dev/vitest/issues/2642) [<samp>(1ffb0)</samp>](https://togithub.com/vitest-dev/vitest/commit/1ffb0ef5)
-   Display running processes, if vitest closes with timeout  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2633](https://togithub.com/vitest-dev/vitest/issues/2633) [<samp>(94968)</samp>](https://togithub.com/vitest-dev/vitest/commit/94968a6f)

#####    🐞 Bug Fixes

-   Type issue with spyOn method  -  by [@&#8203;samkevin1](https://togithub.com/samkevin1) in [https://github.com/vitest-dev/vitest/issues/2365](https://togithub.com/vitest-dev/vitest/issues/2365) and [https://github.com/vitest-dev/vitest/issues/2582](https://togithub.com/vitest-dev/vitest/issues/2582) [<samp>(1aaa7)</samp>](https://togithub.com/vitest-dev/vitest/commit/1aaa79d7)
-   Add missing types in TS project when global is true  -  by [@&#8203;Sneaken](https://togithub.com/Sneaken) in [https://github.com/vitest-dev/vitest/issues/2631](https://togithub.com/vitest-dev/vitest/issues/2631) [<samp>(4745e)</samp>](https://togithub.com/vitest-dev/vitest/commit/4745eaa2)
-   Always report failed test in junit reporter  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2632](https://togithub.com/vitest-dev/vitest/issues/2632) [<samp>(83da2)</samp>](https://togithub.com/vitest-dev/vitest/commit/83da2ec4)
-   Change Vite root, if test.root is used  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2637](https://togithub.com/vitest-dev/vitest/issues/2637) [<samp>(efbff)</samp>](https://togithub.com/vitest-dev/vitest/commit/efbff2a2)
-   Don't use ownKeys, when interoping a module  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2629](https://togithub.com/vitest-dev/vitest/issues/2629) [<samp>(a186a)</samp>](https://togithub.com/vitest-dev/vitest/commit/a186a7e1)
-   Cut duplicate error in negated toHaveBeenCalled  -  by [@&#8203;richardboehme](https://togithub.com/richardboehme) in [https://github.com/vitest-dev/vitest/issues/2638](https://togithub.com/vitest-dev/vitest/issues/2638) [<samp>(09d62)</samp>](https://togithub.com/vitest-dev/vitest/commit/09d62226)
-   Always update last HMR ms on a module  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) [<samp>(99676)</samp>](https://togithub.com/vitest-dev/vitest/commit/9967645a)
-   Terminate workers, when closing process  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2645](https://togithub.com/vitest-dev/vitest/issues/2645) [<samp>(ece43)</samp>](https://togithub.com/vitest-dev/vitest/commit/ece434a3)
-   **coverage**:
    -   Prevent c8 from crashing on invalid sourcemaps  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2634](https://togithub.com/vitest-dev/vitest/issues/2634) [<samp>(0163d)</samp>](https://togithub.com/vitest-dev/vitest/commit/0163dc80)
    -   Istanbul provider to use `coverage.extension`  -  by [@&#8203;AriPerkkio](https://togithub.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/2641](https://togithub.com/vitest-dev/vitest/issues/2641) [<samp>(7e388)</samp>](https://togithub.com/vitest-dev/vitest/commit/7e388903)

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

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

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

#####    🚨 Breaking Changes

-   Deprecate "error" on result, store errors in "errors"  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2586](https://togithub.com/vitest-dev/vitest/issues/2586) [<samp>(e641a)</samp>](https://togithub.com/vitest-dev/vitest/commit/e641a110)
-   Split vitest into separate packages, but still bundle them for the time being  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2575](https://togithub.com/vitest-dev/vitest/issues/2575) [<samp>(c8e6f)</samp>](https://togithub.com/vitest-dev/vitest/commit/c8e6fb69)

#####    🚀 Features

-   **coverage**: report only changed files when using istanbul coverage with watch mode  -  by [@&#8203;g4rry420](https://togithub.com/g4rry420) in [https://github.com/vitest-dev/vitest/issues/2385](https://togithub.com/vitest-dev/vitest/issues/2385) [<samp>(bf872)</samp>](https://togithub.com/vitest-dev/vitest/commit/bf87282c)

#####    🐞 Bug Fixes

-   Return mock path only when mocked  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2619](https://togithub.com/vitest-dev/vitest/issues/2619) [<samp>(f8ac2)</samp>](https://togithub.com/vitest-dev/vitest/commit/f8ac2094)
-   Allow mocking CJS module with interoped default  -  by [@&#8203;sheremet-va](https://togithub.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2598](https://togithub.com/vitest-dev/vitest/issues/2598

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on Wednesday" in timezone Europe/Berlin, 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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://togithub.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] 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://app.renovatebot.com/dashboard#github/mheob/changeset-changelog).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

vitest simply exits when met process exit
1 participant