New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: add repeat method to tests #2652
Conversation
c130bcc
to
1d4d1e6
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please, add tests and documentation to demonstrate how it works
Hey @sheremet-va can you take a look again? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We rewrote test runner into a runner
package, please rebase the main
5836160
to
7bc7d52
Compare
The tests are passing when I run them locally, do you know why they're failing here? @sheremet-va |
I don't know why. Maybe @AriPerkkio can help? 👀 |
Those tests are also failing locally. Use I don't think this is coverage related error. It looks like every test is simply skipped. When running a locally linked project with some simple tests, it simply skips all tests:
Even if I add |
fc2eb15
to
47ff3d5
Compare
c078364
to
f8a3305
Compare
2a16dd0
to
1fa8795
Compare
Some tests are failing again. Any idea what might be causing this? @sheremet-va |
It says in the error that there is an additional property in the test object, which you added. You need to update snapshots. You can thee the errors, if you click on "details" in the CI view. |
e0559a4
to
a5a60c4
Compare
@samkevin1 sorry it took so long. I made some edits, should be fine to merge soon. |
[](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@vitest/coverage-istanbul](https://togithub.com/vitest-dev/vitest/tree/main/packages/coverage-istanbul#readme) ([source](https://togithub.com/vitest-dev/vitest)) | [`^0.30.1` -> `^0.31.0`](https://renovatebot.com/diffs/npm/@vitest%2fcoverage-istanbul/0.30.1/0.31.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>vitest-dev/vitest</summary> ### [`v0.31.0`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.31.0) [Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.30.1...v0.31.0) ##### 🚨 Breaking Changes - Update mock implementation to support ESM runtime, introduce "vi.hoisted" - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3258 [<samp>(0c09a)</samp>](https://togithub.com/vitest-dev/vitest/commit/0c09a40d) - Bypass ESM import order restriction with `vi.hoisted` to run code before imports are executed: ```ts vi.hoisted(() => vi.setSystemTime(new Date(2022, 1, 1))) ``` You can also use it to pass variables to `vi.mock`: ```ts const { mockedMethod } = vi.hoisted(() => { return { mockedMethod: vi.fn() } }) vi.mocked('./path/to/module.js', () => { return { originalMethod: mockedMethod } }) ``` - Move assertion declarations to expect package - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3294 [<samp>(cf3af)</samp>](https://togithub.com/vitest-dev/vitest/commit/cf3afe2b) - The change should be minor: ```diff - declare namespace Vi { + declare module '@​vitest/expect' { interface Assertion<T = any> extends CustomMatchers<T> {} interface AsymmetricMatchersContaining extends CustomMatchers {} } ``` ##### 🚀 Features - Add repeat method to tests - by [@​samkevin1](https://togithub.com/samkevin1) in [vitest-dev/vitest#2652 [<samp>(7c8f0)</samp>](https://togithub.com/vitest-dev/vitest/commit/7c8f0ba9) - Add an option to hide skipped test lines - by [@​g4rry420](https://togithub.com/g4rry420) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#2745 [<samp>(9bdb1)</samp>](https://togithub.com/vitest-dev/vitest/commit/9bdb1603) - **coverage**: Watermarks for c8 - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3254 [<samp>(730af)</samp>](https://togithub.com/vitest-dev/vitest/commit/730af0b4) - **ui**: Add html coverage - by [@​userquin](https://togithub.com/userquin) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3071 [<samp>(e24cd)</samp>](https://togithub.com/vitest-dev/vitest/commit/e24cd9b2) - **watch**: Test run cancelling, feat: `--bail` option for cancelling test run - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3163 [<samp>(8d460)</samp>](https://togithub.com/vitest-dev/vitest/commit/8d4606eb) ##### 🐞 Bug Fixes - Don't call global setup teardown twice - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3188 [<samp>(ba3d1)</samp>](https://togithub.com/vitest-dev/vitest/commit/ba3d1338) - Reporter to log version before provider initalizations - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3131 [<samp>(481b1)</samp>](https://togithub.com/vitest-dev/vitest/commit/481b1fd2) - Throw an error if Vitest cannot access its internal state - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3250 [<samp>(fbb14)</samp>](https://togithub.com/vitest-dev/vitest/commit/fbb1468e) - Warning suppression broken - by [@​IceQub3](https://togithub.com/IceQub3) in [vitest-dev/vitest#3270 and [vitest-dev/vitest#3271 [<samp>(036de)</samp>](https://togithub.com/vitest-dev/vitest/commit/036de797) - Show correct diff in "toHaveBeenCalledWith" - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3289 [<samp>(19fcd)</samp>](https://togithub.com/vitest-dev/vitest/commit/19fcd8df) - Don't print esm warning, if package name is not found - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3292 [<samp>(62c14)</samp>](https://togithub.com/vitest-dev/vitest/commit/62c14cba) - Support exactOptionalPropertyTypes - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3293 [<samp>(ba81d)</samp>](https://togithub.com/vitest-dev/vitest/commit/ba81d8a3) - Don't inline vite hmr and rollup types - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3291 [<samp>(1f118)</samp>](https://togithub.com/vitest-dev/vitest/commit/1f1189bc) - **browser**: - Failing to load vitest/utils - by [@​userquin](https://togithub.com/userquin) in [vitest-dev/vitest#3190 [<samp>(78bad)</samp>](https://togithub.com/vitest-dev/vitest/commit/78bad4ab) - **coverage**: - `thresholdAutoUpdate` to work with `perFile` - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3182 [<samp>(29eeb)</samp>](https://togithub.com/vitest-dev/vitest/commit/29eebf65) - Throw error if fail to load built-in provider - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3217 [<samp>(0a287)</samp>](https://togithub.com/vitest-dev/vitest/commit/0a2875e3) - Stackblitz hangs with c8 - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3225 [<samp>(d9fda)</samp>](https://togithub.com/vitest-dev/vitest/commit/d9fda2a1) - C8 to ignore vite's generated helpers - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3241 [<samp>(21942)</samp>](https://togithub.com/vitest-dev/vitest/commit/21942db0) - Workspaces c8 source maps - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3226 [<samp>(efce3)</samp>](https://togithub.com/vitest-dev/vitest/commit/efce3b4d) - **docs**: - Correct typo and broken link to WebdriverIO - by [@​nathanbabcock](https://togithub.com/nathanbabcock) in [vitest-dev/vitest#3275 [<samp>(c7da1)</samp>](https://togithub.com/vitest-dev/vitest/commit/c7da155f) - **spy**: - Update to set initial implementation through normal logic - by [@​Codex-](https://togithub.com/Codex-) in [vitest-dev/vitest#3260 and [vitest-dev/vitest#3263 [<samp>(c759a)</samp>](https://togithub.com/vitest-dev/vitest/commit/c759a9aa) - **vite-node**: - Circular imports - by [@​antfu](https://togithub.com/antfu) in [vitest-dev/vitest#3196 [<samp>(cbb59)</samp>](https://togithub.com/vitest-dev/vitest/commit/cbb593a8) - Add missing `import.meta.hot.send` mock - by [@​antfu](https://togithub.com/antfu) [<samp>(b1624)</samp>](https://togithub.com/vitest-dev/vitest/commit/b1624db5) - **vitest**: - Also check for vite relative to vitest package - by [@​JoshuaKGoldberg](https://togithub.com/JoshuaKGoldberg) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3274 [<samp>(a3393)</samp>](https://togithub.com/vitest-dev/vitest/commit/a3393b15) - **watch**: - Run test files when added to filesystem - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3189 [<samp>(7b2c8)</samp>](https://togithub.com/vitest-dev/vitest/commit/7b2c81bc) ##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.30.1...v0.31.0) </details> --- ### Configuration 📅 **Schedule**: Branch creation - 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/dermoumi/crafts). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS42OS4zIiwidXBkYXRlZEluVmVyIjoiMzUuNjkuMyIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
[](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [vitest](https://togithub.com/vitest-dev/vitest) | [`^0.30.1` -> `^0.31.0`](https://renovatebot.com/diffs/npm/vitest/0.30.1/0.31.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>vitest-dev/vitest</summary> ### [`v0.31.0`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.31.0) [Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.30.1...v0.31.0) ##### 🚨 Breaking Changes - Update mock implementation to support ESM runtime, introduce "vi.hoisted" - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3258 [<samp>(0c09a)</samp>](https://togithub.com/vitest-dev/vitest/commit/0c09a40d) - Bypass ESM import order restriction with `vi.hoisted` to run code before imports are executed: ```ts vi.hoisted(() => vi.setSystemTime(new Date(2022, 1, 1))) ``` You can also use it to pass variables to `vi.mock`: ```ts const { mockedMethod } = vi.hoisted(() => { return { mockedMethod: vi.fn() } }) vi.mocked('./path/to/module.js', () => { return { originalMethod: mockedMethod } }) ``` - Move assertion declarations to expect package - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3294 [<samp>(cf3af)</samp>](https://togithub.com/vitest-dev/vitest/commit/cf3afe2b) - The change should be minor: ```diff - declare namespace Vi { + declare module '@​vitest/expect' { interface Assertion<T = any> extends CustomMatchers<T> {} interface AsymmetricMatchersContaining extends CustomMatchers {} } ``` ##### 🚀 Features - Add repeat method to tests - by [@​samkevin1](https://togithub.com/samkevin1) in [vitest-dev/vitest#2652 [<samp>(7c8f0)</samp>](https://togithub.com/vitest-dev/vitest/commit/7c8f0ba9) - Add an option to hide skipped test lines - by [@​g4rry420](https://togithub.com/g4rry420) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#2745 [<samp>(9bdb1)</samp>](https://togithub.com/vitest-dev/vitest/commit/9bdb1603) - **coverage**: Watermarks for c8 - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3254 [<samp>(730af)</samp>](https://togithub.com/vitest-dev/vitest/commit/730af0b4) - **ui**: Add html coverage - by [@​userquin](https://togithub.com/userquin) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3071 [<samp>(e24cd)</samp>](https://togithub.com/vitest-dev/vitest/commit/e24cd9b2) - **watch**: Test run cancelling, feat: `--bail` option for cancelling test run - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3163 [<samp>(8d460)</samp>](https://togithub.com/vitest-dev/vitest/commit/8d4606eb) ##### 🐞 Bug Fixes - Don't call global setup teardown twice - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3188 [<samp>(ba3d1)</samp>](https://togithub.com/vitest-dev/vitest/commit/ba3d1338) - Reporter to log version before provider initalizations - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3131 [<samp>(481b1)</samp>](https://togithub.com/vitest-dev/vitest/commit/481b1fd2) - Throw an error if Vitest cannot access its internal state - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3250 [<samp>(fbb14)</samp>](https://togithub.com/vitest-dev/vitest/commit/fbb1468e) - Warning suppression broken - by [@​IceQub3](https://togithub.com/IceQub3) in [vitest-dev/vitest#3270 and [vitest-dev/vitest#3271 [<samp>(036de)</samp>](https://togithub.com/vitest-dev/vitest/commit/036de797) - Show correct diff in "toHaveBeenCalledWith" - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3289 [<samp>(19fcd)</samp>](https://togithub.com/vitest-dev/vitest/commit/19fcd8df) - Don't print esm warning, if package name is not found - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3292 [<samp>(62c14)</samp>](https://togithub.com/vitest-dev/vitest/commit/62c14cba) - Support exactOptionalPropertyTypes - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3293 [<samp>(ba81d)</samp>](https://togithub.com/vitest-dev/vitest/commit/ba81d8a3) - Don't inline vite hmr and rollup types - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3291 [<samp>(1f118)</samp>](https://togithub.com/vitest-dev/vitest/commit/1f1189bc) - **browser**: - Failing to load vitest/utils - by [@​userquin](https://togithub.com/userquin) in [vitest-dev/vitest#3190 [<samp>(78bad)</samp>](https://togithub.com/vitest-dev/vitest/commit/78bad4ab) - **coverage**: - `thresholdAutoUpdate` to work with `perFile` - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3182 [<samp>(29eeb)</samp>](https://togithub.com/vitest-dev/vitest/commit/29eebf65) - Throw error if fail to load built-in provider - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3217 [<samp>(0a287)</samp>](https://togithub.com/vitest-dev/vitest/commit/0a2875e3) - Stackblitz hangs with c8 - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3225 [<samp>(d9fda)</samp>](https://togithub.com/vitest-dev/vitest/commit/d9fda2a1) - C8 to ignore vite's generated helpers - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3241 [<samp>(21942)</samp>](https://togithub.com/vitest-dev/vitest/commit/21942db0) - Workspaces c8 source maps - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3226 [<samp>(efce3)</samp>](https://togithub.com/vitest-dev/vitest/commit/efce3b4d) - **docs**: - Correct typo and broken link to WebdriverIO - by [@​nathanbabcock](https://togithub.com/nathanbabcock) in [vitest-dev/vitest#3275 [<samp>(c7da1)</samp>](https://togithub.com/vitest-dev/vitest/commit/c7da155f) - **spy**: - Update to set initial implementation through normal logic - by [@​Codex-](https://togithub.com/Codex-) in [vitest-dev/vitest#3260 and [vitest-dev/vitest#3263 [<samp>(c759a)</samp>](https://togithub.com/vitest-dev/vitest/commit/c759a9aa) - **vite-node**: - Circular imports - by [@​antfu](https://togithub.com/antfu) in [vitest-dev/vitest#3196 [<samp>(cbb59)</samp>](https://togithub.com/vitest-dev/vitest/commit/cbb593a8) - Add missing `import.meta.hot.send` mock - by [@​antfu](https://togithub.com/antfu) [<samp>(b1624)</samp>](https://togithub.com/vitest-dev/vitest/commit/b1624db5) - **vitest**: - Also check for vite relative to vitest package - by [@​JoshuaKGoldberg](https://togithub.com/JoshuaKGoldberg) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3274 [<samp>(a3393)</samp>](https://togithub.com/vitest-dev/vitest/commit/a3393b15) - **watch**: - Run test files when added to filesystem - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3189 [<samp>(7b2c8)</samp>](https://togithub.com/vitest-dev/vitest/commit/7b2c81bc) ##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.30.1...v0.31.0) </details> --- ### Configuration 📅 **Schedule**: Branch creation - 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/creatorsgarten/contentsgarten). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS42OS4zIiwidXBkYXRlZEluVmVyIjoiMzUuNjkuMyIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
[](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [vite-node](https://togithub.com/vitest-dev/vitest/blob/main/packages/vite-node#readme) ([source](https://togithub.com/vitest-dev/vitest)) | [`^0.30.1` -> `^0.31.0`](https://renovatebot.com/diffs/npm/vite-node/0.30.1/0.31.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>vitest-dev/vitest</summary> ### [`v0.31.0`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.31.0) [Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.30.1...v0.31.0) ##### 🚨 Breaking Changes - Update mock implementation to support ESM runtime, introduce "vi.hoisted" - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3258 [<samp>(0c09a)</samp>](https://togithub.com/vitest-dev/vitest/commit/0c09a40d) - Bypass ESM import order restriction with `vi.hoisted` to run code before imports are executed: ```ts vi.hoisted(() => vi.setSystemTime(new Date(2022, 1, 1))) ``` You can also use it to pass variables to `vi.mock`: ```ts const { mockedMethod } = vi.hoisted(() => { return { mockedMethod: vi.fn() } }) vi.mocked('./path/to/module.js', () => { return { originalMethod: mockedMethod } }) ``` - Move assertion declarations to expect package - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3294 [<samp>(cf3af)</samp>](https://togithub.com/vitest-dev/vitest/commit/cf3afe2b) - The change should be minor: ```diff - declare namespace Vi { + declare module '@​vitest/expect' { interface Assertion<T = any> extends CustomMatchers<T> {} interface AsymmetricMatchersContaining extends CustomMatchers {} } ``` ##### 🚀 Features - Add repeat method to tests - by [@​samkevin1](https://togithub.com/samkevin1) in [vitest-dev/vitest#2652 [<samp>(7c8f0)</samp>](https://togithub.com/vitest-dev/vitest/commit/7c8f0ba9) - Add an option to hide skipped test lines - by [@​g4rry420](https://togithub.com/g4rry420) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#2745 [<samp>(9bdb1)</samp>](https://togithub.com/vitest-dev/vitest/commit/9bdb1603) - **coverage**: Watermarks for c8 - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3254 [<samp>(730af)</samp>](https://togithub.com/vitest-dev/vitest/commit/730af0b4) - **ui**: Add html coverage - by [@​userquin](https://togithub.com/userquin) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3071 [<samp>(e24cd)</samp>](https://togithub.com/vitest-dev/vitest/commit/e24cd9b2) - **watch**: Test run cancelling, feat: `--bail` option for cancelling test run - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3163 [<samp>(8d460)</samp>](https://togithub.com/vitest-dev/vitest/commit/8d4606eb) ##### 🐞 Bug Fixes - Don't call global setup teardown twice - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3188 [<samp>(ba3d1)</samp>](https://togithub.com/vitest-dev/vitest/commit/ba3d1338) - Reporter to log version before provider initalizations - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3131 [<samp>(481b1)</samp>](https://togithub.com/vitest-dev/vitest/commit/481b1fd2) - Throw an error if Vitest cannot access its internal state - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3250 [<samp>(fbb14)</samp>](https://togithub.com/vitest-dev/vitest/commit/fbb1468e) - Warning suppression broken - by [@​IceQub3](https://togithub.com/IceQub3) in [vitest-dev/vitest#3270 and [vitest-dev/vitest#3271 [<samp>(036de)</samp>](https://togithub.com/vitest-dev/vitest/commit/036de797) - Show correct diff in "toHaveBeenCalledWith" - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3289 [<samp>(19fcd)</samp>](https://togithub.com/vitest-dev/vitest/commit/19fcd8df) - Don't print esm warning, if package name is not found - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3292 [<samp>(62c14)</samp>](https://togithub.com/vitest-dev/vitest/commit/62c14cba) - Support exactOptionalPropertyTypes - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3293 [<samp>(ba81d)</samp>](https://togithub.com/vitest-dev/vitest/commit/ba81d8a3) - Don't inline vite hmr and rollup types - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3291 [<samp>(1f118)</samp>](https://togithub.com/vitest-dev/vitest/commit/1f1189bc) - **browser**: - Failing to load vitest/utils - by [@​userquin](https://togithub.com/userquin) in [vitest-dev/vitest#3190 [<samp>(78bad)</samp>](https://togithub.com/vitest-dev/vitest/commit/78bad4ab) - **coverage**: - `thresholdAutoUpdate` to work with `perFile` - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3182 [<samp>(29eeb)</samp>](https://togithub.com/vitest-dev/vitest/commit/29eebf65) - Throw error if fail to load built-in provider - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3217 [<samp>(0a287)</samp>](https://togithub.com/vitest-dev/vitest/commit/0a2875e3) - Stackblitz hangs with c8 - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3225 [<samp>(d9fda)</samp>](https://togithub.com/vitest-dev/vitest/commit/d9fda2a1) - C8 to ignore vite's generated helpers - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3241 [<samp>(21942)</samp>](https://togithub.com/vitest-dev/vitest/commit/21942db0) - Workspaces c8 source maps - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3226 [<samp>(efce3)</samp>](https://togithub.com/vitest-dev/vitest/commit/efce3b4d) - **docs**: - Correct typo and broken link to WebdriverIO - by [@​nathanbabcock](https://togithub.com/nathanbabcock) in [vitest-dev/vitest#3275 [<samp>(c7da1)</samp>](https://togithub.com/vitest-dev/vitest/commit/c7da155f) - **spy**: - Update to set initial implementation through normal logic - by [@​Codex-](https://togithub.com/Codex-) in [vitest-dev/vitest#3260 and [vitest-dev/vitest#3263 [<samp>(c759a)</samp>](https://togithub.com/vitest-dev/vitest/commit/c759a9aa) - **vite-node**: - Circular imports - by [@​antfu](https://togithub.com/antfu) in [vitest-dev/vitest#3196 [<samp>(cbb59)</samp>](https://togithub.com/vitest-dev/vitest/commit/cbb593a8) - Add missing `import.meta.hot.send` mock - by [@​antfu](https://togithub.com/antfu) [<samp>(b1624)</samp>](https://togithub.com/vitest-dev/vitest/commit/b1624db5) - **vitest**: - Also check for vite relative to vitest package - by [@​JoshuaKGoldberg](https://togithub.com/JoshuaKGoldberg) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3274 [<samp>(a3393)</samp>](https://togithub.com/vitest-dev/vitest/commit/a3393b15) - **watch**: - Run test files when added to filesystem - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3189 [<samp>(7b2c8)</samp>](https://togithub.com/vitest-dev/vitest/commit/7b2c81bc) ##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.30.1...v0.31.0) </details> --- ### Configuration 📅 **Schedule**: Branch creation - 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/dermoumi/crafts). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS42OS4zIiwidXBkYXRlZEluVmVyIjoiMzUuNjkuMyIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
[](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [vitest](https://togithub.com/vitest-dev/vitest) | [`^0.30.1` -> `^0.31.0`](https://renovatebot.com/diffs/npm/vitest/0.30.1/0.31.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>vitest-dev/vitest</summary> ### [`v0.31.0`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.31.0) [Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.30.1...v0.31.0) ##### 🚨 Breaking Changes - Update mock implementation to support ESM runtime, introduce "vi.hoisted" - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3258 [<samp>(0c09a)</samp>](https://togithub.com/vitest-dev/vitest/commit/0c09a40d) - Bypass ESM import order restriction with `vi.hoisted` to run code before imports are executed: ```ts vi.hoisted(() => vi.setSystemTime(new Date(2022, 1, 1))) ``` You can also use it to pass variables to `vi.mock`: ```ts const { mockedMethod } = vi.hoisted(() => { return { mockedMethod: vi.fn() } }) vi.mocked('./path/to/module.js', () => { return { originalMethod: mockedMethod } }) ``` - Move assertion declarations to expect package - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3294 [<samp>(cf3af)</samp>](https://togithub.com/vitest-dev/vitest/commit/cf3afe2b) - The change should be minor: ```diff - declare namespace Vi { + declare module 'vitest' { interface Assertion<T = any> extends CustomMatchers<T> {} interface AsymmetricMatchersContaining extends CustomMatchers {} } ``` ##### 🚀 Features - Add repeat method to tests - by [@​samkevin1](https://togithub.com/samkevin1) in [vitest-dev/vitest#2652 [<samp>(7c8f0)</samp>](https://togithub.com/vitest-dev/vitest/commit/7c8f0ba9) - Add an option to hide skipped test lines - by [@​g4rry420](https://togithub.com/g4rry420) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#2745 [<samp>(9bdb1)</samp>](https://togithub.com/vitest-dev/vitest/commit/9bdb1603) - **coverage**: Watermarks for c8 - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3254 [<samp>(730af)</samp>](https://togithub.com/vitest-dev/vitest/commit/730af0b4) - **ui**: Add html coverage - by [@​userquin](https://togithub.com/userquin) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3071 [<samp>(e24cd)</samp>](https://togithub.com/vitest-dev/vitest/commit/e24cd9b2) - **watch**: Test run cancelling, feat: `--bail` option for cancelling test run - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3163 [<samp>(8d460)</samp>](https://togithub.com/vitest-dev/vitest/commit/8d4606eb) ##### 🐞 Bug Fixes - Don't call global setup teardown twice - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3188 [<samp>(ba3d1)</samp>](https://togithub.com/vitest-dev/vitest/commit/ba3d1338) - Reporter to log version before provider initalizations - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3131 [<samp>(481b1)</samp>](https://togithub.com/vitest-dev/vitest/commit/481b1fd2) - Throw an error if Vitest cannot access its internal state - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3250 [<samp>(fbb14)</samp>](https://togithub.com/vitest-dev/vitest/commit/fbb1468e) - Warning suppression broken - by [@​IceQub3](https://togithub.com/IceQub3) in [vitest-dev/vitest#3270 and [vitest-dev/vitest#3271 [<samp>(036de)</samp>](https://togithub.com/vitest-dev/vitest/commit/036de797) - Show correct diff in "toHaveBeenCalledWith" - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3289 [<samp>(19fcd)</samp>](https://togithub.com/vitest-dev/vitest/commit/19fcd8df) - Don't print esm warning, if package name is not found - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3292 [<samp>(62c14)</samp>](https://togithub.com/vitest-dev/vitest/commit/62c14cba) - Support exactOptionalPropertyTypes - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3293 [<samp>(ba81d)</samp>](https://togithub.com/vitest-dev/vitest/commit/ba81d8a3) - Don't inline vite hmr and rollup types - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3291 [<samp>(1f118)</samp>](https://togithub.com/vitest-dev/vitest/commit/1f1189bc) - **browser**: - Failing to load vitest/utils - by [@​userquin](https://togithub.com/userquin) in [vitest-dev/vitest#3190 [<samp>(78bad)</samp>](https://togithub.com/vitest-dev/vitest/commit/78bad4ab) - **coverage**: - `thresholdAutoUpdate` to work with `perFile` - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3182 [<samp>(29eeb)</samp>](https://togithub.com/vitest-dev/vitest/commit/29eebf65) - Throw error if fail to load built-in provider - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3217 [<samp>(0a287)</samp>](https://togithub.com/vitest-dev/vitest/commit/0a2875e3) - Stackblitz hangs with c8 - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3225 [<samp>(d9fda)</samp>](https://togithub.com/vitest-dev/vitest/commit/d9fda2a1) - C8 to ignore vite's generated helpers - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3241 [<samp>(21942)</samp>](https://togithub.com/vitest-dev/vitest/commit/21942db0) - Workspaces c8 source maps - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3226 [<samp>(efce3)</samp>](https://togithub.com/vitest-dev/vitest/commit/efce3b4d) - **docs**: - Correct typo and broken link to WebdriverIO - by [@​nathanbabcock](https://togithub.com/nathanbabcock) in [vitest-dev/vitest#3275 [<samp>(c7da1)</samp>](https://togithub.com/vitest-dev/vitest/commit/c7da155f) - **spy**: - Update to set initial implementation through normal logic - by [@​Codex-](https://togithub.com/Codex-) in [vitest-dev/vitest#3260 and [vitest-dev/vitest#3263 [<samp>(c759a)</samp>](https://togithub.com/vitest-dev/vitest/commit/c759a9aa) - **vite-node**: - Circular imports - by [@​antfu](https://togithub.com/antfu) in [vitest-dev/vitest#3196 [<samp>(cbb59)</samp>](https://togithub.com/vitest-dev/vitest/commit/cbb593a8) - Add missing `import.meta.hot.send` mock - by [@​antfu](https://togithub.com/antfu) [<samp>(b1624)</samp>](https://togithub.com/vitest-dev/vitest/commit/b1624db5) - **vitest**: - Also check for vite relative to vitest package - by [@​JoshuaKGoldberg](https://togithub.com/JoshuaKGoldberg) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3274 [<samp>(a3393)</samp>](https://togithub.com/vitest-dev/vitest/commit/a3393b15) - **watch**: - Run test files when added to filesystem - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3189 [<samp>(7b2c8)</samp>](https://togithub.com/vitest-dev/vitest/commit/7b2c81bc) ##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.30.1...v0.31.0) </details> --- ### Configuration 📅 **Schedule**: Branch creation - 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:eyJjcmVhdGVkSW5WZXIiOiIzNS42OS4zIiwidXBkYXRlZEluVmVyIjoiMzUuNjkuMyIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
[](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@types/eslint](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/eslint) ([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped)) | [`8.21.1` -> `8.37.0`](https://renovatebot.com/diffs/npm/@types%2feslint/8.21.1/8.37.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | [@types/node](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node) ([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped)) | [`18.14.6` -> `18.16.3`](https://renovatebot.com/diffs/npm/@types%2fnode/18.14.6/18.16.3) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | [eslint](https://eslint.org) ([source](https://togithub.com/eslint/eslint)) | [`8.35.0` -> `8.39.0`](https://renovatebot.com/diffs/npm/eslint/8.35.0/8.39.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | [prettier](https://prettier.io) ([source](https://togithub.com/prettier/prettier)) | [`2.8.4` -> `2.8.8`](https://renovatebot.com/diffs/npm/prettier/2.8.4/2.8.8) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | [typescript](https://www.typescriptlang.org/) ([source](https://togithub.com/Microsoft/TypeScript)) | [`5.0.2` -> `5.0.4`](https://renovatebot.com/diffs/npm/typescript/5.0.2/5.0.4) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | [vitest](https://togithub.com/vitest-dev/vitest) | [`^0.30.0` -> `^0.31.0`](https://renovatebot.com/diffs/npm/vitest/0.30.1/0.31.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>eslint/eslint</summary> ### [`v8.39.0`](https://togithub.com/eslint/eslint/releases/tag/v8.39.0) [Compare Source](https://togithub.com/eslint/eslint/compare/v8.38.0...v8.39.0) #### Features - [`3f7af9f`](https://togithub.com/eslint/eslint/commit/3f7af9f408625dbc486af914706d34c4b483b5ba) feat: Implement `SourceCode#markVariableAsUsed()` ([#​17086](https://togithub.com/eslint/eslint/issues/17086)) (Nicholas C. Zakas) #### Documentation - [`6987dc5`](https://togithub.com/eslint/eslint/commit/6987dc59e46f4e345d0d6c20c1f2c6846bbd7acc) docs: Fix formatting in Custom Rules docs ([#​17097](https://togithub.com/eslint/eslint/issues/17097)) (Milos Djermanovic) - [`4ee92e5`](https://togithub.com/eslint/eslint/commit/4ee92e5cbdeba6fea2147901ce926de16946958a) docs: Update README (GitHub Actions Bot) - [`d8e9887`](https://togithub.com/eslint/eslint/commit/d8e9887c2c384d24d586d08ee9ae2ada79bd234c) docs: Custom Rules cleanup/expansion ([#​16906](https://togithub.com/eslint/eslint/issues/16906)) (Ben Perlmutter) - [`1fea279`](https://togithub.com/eslint/eslint/commit/1fea2797801a82a2718814c83dad641dab092bcc) docs: Clarify how to add to tsc agenda ([#​17084](https://togithub.com/eslint/eslint/issues/17084)) (Nicholas C. Zakas) - [`970ef1c`](https://togithub.com/eslint/eslint/commit/970ef1c868235a58297682513842f1256cdfbd03) docs: Update triage board location (Nicholas C. Zakas) - [`6d8bffd`](https://togithub.com/eslint/eslint/commit/6d8bffdf45d50e272dc45e6d2d05b4a737514468) docs: Update README (GitHub Actions Bot) #### Chores - [`60a6f26`](https://togithub.com/eslint/eslint/commit/60a6f2694deb4aa1c54de2a28d0357cddfd16644) chore: upgrade [@​eslint/js](https://togithub.com/eslint/js)[@​8](https://togithub.com/8).39.0 ([#​17102](https://togithub.com/eslint/eslint/issues/17102)) (Milos Djermanovic) - [`d5ba5c0`](https://togithub.com/eslint/eslint/commit/d5ba5c0a85e7a10777761f5d46c104ab7f25845b) chore: package.json update for [@​eslint/js](https://togithub.com/eslint/js) release (ESLint Jenkins) - [`f57eff2`](https://togithub.com/eslint/eslint/commit/f57eff20f5789408e95061f1af5354bb9b4f4784) ci: run tests on Node.js v20 ([#​17093](https://togithub.com/eslint/eslint/issues/17093)) (Nitin Kumar) - [`9d1b8fc`](https://togithub.com/eslint/eslint/commit/9d1b8fc60cc31f12618e58c10a2669506b7ce9bf) perf: Binary search in token store `utils.search` ([#​17066](https://togithub.com/eslint/eslint/issues/17066)) (Francesco Trotta) - [`07a4435`](https://togithub.com/eslint/eslint/commit/07a4435a0c08cb63ebf11b71f735bac20318829b) chore: Add request for minimal repro to bug report ([#​17081](https://togithub.com/eslint/eslint/issues/17081)) (Nicholas C. Zakas) - [`eac4943`](https://togithub.com/eslint/eslint/commit/eac4943ba2e4edb3dbfea0470e5d4b15a4926c40) refactor: remove unnecessary use of `SourceCode#getAncestors` in rules ([#​17075](https://togithub.com/eslint/eslint/issues/17075)) (Milos Djermanovic) - [`0a7b60a`](https://togithub.com/eslint/eslint/commit/0a7b60a9d5621dbbc1a8a8adda3b7c2060c779ca) chore: update description of `SourceCode#getDeclaredVariables` ([#​17072](https://togithub.com/eslint/eslint/issues/17072)) (Milos Djermanovic) - [`6e2df71`](https://togithub.com/eslint/eslint/commit/6e2df71cc390252aaca212abe3dc0467fe397450) chore: remove unnecessary references to the LICENSE file ([#​17071](https://togithub.com/eslint/eslint/issues/17071)) (Milos Djermanovic) ### [`v8.38.0`](https://togithub.com/eslint/eslint/releases/tag/v8.38.0) [Compare Source](https://togithub.com/eslint/eslint/compare/v8.37.0...v8.38.0) #### Features - [`a1d561d`](https://togithub.com/eslint/eslint/commit/a1d561d18ed653b56bddbfb1bab1ebe957293563) feat: Move getDeclaredVariables and getAncestors to SourceCode ([#​17059](https://togithub.com/eslint/eslint/issues/17059)) (Nicholas C. Zakas) #### Bug Fixes - [`1c1ece2`](https://togithub.com/eslint/eslint/commit/1c1ece26d1da61e523b83dda25353ec9379eb6c9) fix: do not report on `RegExp(...args)` in `require-unicode-regexp` ([#​17037](https://togithub.com/eslint/eslint/issues/17037)) (Francesco Trotta) #### Documentation - [`7162d34`](https://togithub.com/eslint/eslint/commit/7162d34df9a66c817c3bd4aafd3a03d226b58dd5) docs: Mention new config system is complete ([#​17068](https://togithub.com/eslint/eslint/issues/17068)) (Nicholas C. Zakas) - [`0fd6bb2`](https://togithub.com/eslint/eslint/commit/0fd6bb213ad2de77543c936eda21501653182e52) docs: Update README (GitHub Actions Bot) - [`c83531c`](https://togithub.com/eslint/eslint/commit/c83531c1a6026675f36aa9e33fef14458043974a) docs: Update/remove external links, eg. point to `eslint-community` ([#​17061](https://togithub.com/eslint/eslint/issues/17061)) (Pelle Wessman) - [`a3aa6f5`](https://togithub.com/eslint/eslint/commit/a3aa6f5f146534ed7999ebf8930c524a4871ec0b) docs: Clarify `no-div-regex` rule docs ([#​17051](https://togithub.com/eslint/eslint/issues/17051)) (Francesco Trotta) - [`b0f11cf`](https://togithub.com/eslint/eslint/commit/b0f11cf977a4180bf7c3042e7faeaaa067ffafd0) docs: Update README (GitHub Actions Bot) - [`da8d52a`](https://togithub.com/eslint/eslint/commit/da8d52a9d4edd9b2016cd4a15cd78f1ddadf20c7) docs: Update the second object instance for the "no-new" rule ([#​17020](https://togithub.com/eslint/eslint/issues/17020)) (Ahmadou Waly NDIAYE) - [`518130a`](https://togithub.com/eslint/eslint/commit/518130ae79a16d7bf4d752c211ae88152cc5a6f0) docs: switch language based on current path ([#​16687](https://togithub.com/eslint/eslint/issues/16687)) (Percy Ma) - [`24206c4`](https://togithub.com/eslint/eslint/commit/24206c49a138d4390f815ae122ee12f564bc604b) docs: Update README (GitHub Actions Bot) #### Chores - [`59ed060`](https://togithub.com/eslint/eslint/commit/59ed06041d4670781956221086ea0fca6683788d) chore: upgrade [@​eslint/js](https://togithub.com/eslint/js)[@​8](https://togithub.com/8).38.0 ([#​17069](https://togithub.com/eslint/eslint/issues/17069)) (Milos Djermanovic) - [`88c0898`](https://togithub.com/eslint/eslint/commit/88c08984ec259ac22d839397c06beec8ef213120) chore: package.json update for [@​eslint/js](https://togithub.com/eslint/js) release (ESLint Jenkins) - [`cf682d2`](https://togithub.com/eslint/eslint/commit/cf682d249f04a6a304407d5b9ddbbc4a9714dd62) refactor: simplify new-parens rule schema ([#​17060](https://togithub.com/eslint/eslint/issues/17060)) (MHO) - [`0dde022`](https://togithub.com/eslint/eslint/commit/0dde02211268394bcbc2b0beef55ea2409b6f55d) ci: bump actions/add-to-project from 0.4.1 to 0.5.0 ([#​17055](https://togithub.com/eslint/eslint/issues/17055)) (dependabot\[bot]) ### [`v8.37.0`](https://togithub.com/eslint/eslint/releases/tag/v8.37.0) [Compare Source](https://togithub.com/eslint/eslint/compare/v8.36.0...v8.37.0) #### Features - [`b6ab8b2`](https://togithub.com/eslint/eslint/commit/b6ab8b2a2ca8807baca121407f5bfb0a0a839427) feat: `require-unicode-regexp` add suggestions ([#​17007](https://togithub.com/eslint/eslint/issues/17007)) (Josh Goldberg) - [`10022b1`](https://togithub.com/eslint/eslint/commit/10022b1f4bda1ad89193512ecf18c2ee61db8202) feat: Copy getScope() to SourceCode ([#​17004](https://togithub.com/eslint/eslint/issues/17004)) (Nicholas C. Zakas) - [`1665c02`](https://togithub.com/eslint/eslint/commit/1665c029acb92bf8812267f1647ad1a7054cbcb4) feat: Use plugin metadata for flat config serialization ([#​16992](https://togithub.com/eslint/eslint/issues/16992)) (Nicholas C. Zakas) - [`b3634f6`](https://togithub.com/eslint/eslint/commit/b3634f695ddab6a82c0a9b1d8695e62b60d23366) feat: docs license ([#​17010](https://togithub.com/eslint/eslint/issues/17010)) (Samuel Roldan) - [`892e6e5`](https://togithub.com/eslint/eslint/commit/892e6e58c5a07a549d3104de3b6b5879797dc97f) feat: languageOptions.parser must be an object. ([#​16985](https://togithub.com/eslint/eslint/issues/16985)) (Nicholas C. Zakas) #### Bug Fixes - [`619f3fd`](https://togithub.com/eslint/eslint/commit/619f3fd17324c7b71bf17e02047d0c6dc7e5109e) fix: correctly handle `null` default config in `RuleTester` ([#​17023](https://togithub.com/eslint/eslint/issues/17023)) (Brad Zacher) - [`1fbf118`](https://togithub.com/eslint/eslint/commit/1fbf1184fed57df02640aad4659afb54dc26a2e9) fix: `getFirstToken`/`getLastToken` on comment-only node ([#​16889](https://togithub.com/eslint/eslint/issues/16889)) (Francesco Trotta) - [`129e252`](https://togithub.com/eslint/eslint/commit/129e252132c7c476d7de17f40b54a333ddb2e6bb) fix: Fix typo in `logical-assignment-operators` rule description ([#​17000](https://togithub.com/eslint/eslint/issues/17000)) (Francesco Trotta) #### Documentation - [`75339df`](https://togithub.com/eslint/eslint/commit/75339df99418df4d7e05a77e42ed7e22eabcc9e0) docs: fix typos and missing info in id-match docs ([#​17029](https://togithub.com/eslint/eslint/issues/17029)) (Ed Lucas) - [`ec2d830`](https://togithub.com/eslint/eslint/commit/ec2d8307850dd039e118c001416606e1e0342bc8) docs: Fix typos in the `semi` rule docs ([#​17012](https://togithub.com/eslint/eslint/issues/17012)) (Andrii Lundiak) - [`e39f28d`](https://togithub.com/eslint/eslint/commit/e39f28d8578a00f4da8d4ddad559547950128a0d) docs: add back to top button ([#​16979](https://togithub.com/eslint/eslint/issues/16979)) (Tanuj Kanti) - [`721c717`](https://togithub.com/eslint/eslint/commit/721c71782a7c11025689a1500e7690fb3794fcce) docs: Custom Processors cleanup and expansion ([#​16838](https://togithub.com/eslint/eslint/issues/16838)) (Ben Perlmutter) - [`d049f97`](https://togithub.com/eslint/eslint/commit/d049f974103e530ef76ede25af701635caf1f405) docs: 'How ESLint is Maintained' page ([#​16961](https://togithub.com/eslint/eslint/issues/16961)) (Ben Perlmutter) - [`5251a92`](https://togithub.com/eslint/eslint/commit/5251a921866e8d3b380dfe8db8a6e6ab97773d5e) docs: Describe guard options for guard-for-in ([#​16986](https://togithub.com/eslint/eslint/issues/16986)) (alope107) - [`6157d81`](https://togithub.com/eslint/eslint/commit/6157d813e19b80481a46f8cbdf9eae18a55e5619) docs: Add example to guard-for-in docs. ([#​16983](https://togithub.com/eslint/eslint/issues/16983)) (alope107) - [`fd47998`](https://togithub.com/eslint/eslint/commit/fd47998af6efadcdf5ba93e0bd1f4c02d97d22b3) docs: update `Array.prototype.toSorted` specification link ([#​16982](https://togithub.com/eslint/eslint/issues/16982)) (Milos Djermanovic) - [`3e1cf6b`](https://togithub.com/eslint/eslint/commit/3e1cf6bfc5ebc29314ddbe462d6cb580e9ab085c) docs: Copy edits on Maintain ESLint docs ([#​16939](https://togithub.com/eslint/eslint/issues/16939)) (Ben Perlmutter) #### Chores - [`c67f299`](https://togithub.com/eslint/eslint/commit/c67f2992a743de4765bb6f11c12622e3651324b9) chore: upgrade [@​eslint/js](https://togithub.com/eslint/js)[@​8](https://togithub.com/8).37.0 ([#​17033](https://togithub.com/eslint/eslint/issues/17033)) (Milos Djermanovic) - [`ee9ddbd`](https://togithub.com/eslint/eslint/commit/ee9ddbd63e262aed0052853760866c7a054af561) chore: package.json update for [@​eslint/js](https://togithub.com/eslint/js) release (ESLint Jenkins) - [`dddb475`](https://togithub.com/eslint/eslint/commit/dddb47528816cd7e2e737bfde108ed4d62e6a219) chore: upgrade [@​eslint/eslintrc](https://togithub.com/eslint/eslintrc)[@​2](https://togithub.com/2).0.2 ([#​17032](https://togithub.com/eslint/eslint/issues/17032)) (Milos Djermanovic) - [`522431e`](https://togithub.com/eslint/eslint/commit/522431e5206bac2fcb41c0d6dc98a84929203bee) chore: upgrade espree@9.5.1 ([#​17031](https://togithub.com/eslint/eslint/issues/17031)) (Milos Djermanovic) - [`f5f9a88`](https://togithub.com/eslint/eslint/commit/f5f9a88c79b32222c0331a9bac1c02571d953b69) chore: upgrade eslint-visitor-keys@3.4.0 ([#​17030](https://togithub.com/eslint/eslint/issues/17030)) (Milos Djermanovic) - [`4dd8d52`](https://togithub.com/eslint/eslint/commit/4dd8d524e0fc9e8e2019df13f8b968021600e85c) ci: bump actions/stale from 7 to 8 ([#​17026](https://togithub.com/eslint/eslint/issues/17026)) (dependabot\[bot]) - [`ad9dd6a`](https://togithub.com/eslint/eslint/commit/ad9dd6a933fd098a0d99c6a9aa059850535c23ee) chore: remove duplicate scss, ([#​17005](https://togithub.com/eslint/eslint/issues/17005)) (Strek) - [`ada6a3e`](https://togithub.com/eslint/eslint/commit/ada6a3e6e3607523958f35e1260537630ec0e976) ci: unpin Node 19 ([#​16993](https://togithub.com/eslint/eslint/issues/16993)) (Milos Djermanovic) - [`c3da975`](https://togithub.com/eslint/eslint/commit/c3da975e69fde46f35338ce48528841a8dc1ffd2) chore: Remove triage label from template ([#​16990](https://togithub.com/eslint/eslint/issues/16990)) (Nicholas C. Zakas) - [`69bc0e2`](https://togithub.com/eslint/eslint/commit/69bc0e2f4412998f9384600a100d7882ea4dd3f3) ci: pin Node 19 to 19.7.0 ([#​16987](https://togithub.com/eslint/eslint/issues/16987)) (Milos Djermanovic) ### [`v8.36.0`](https://togithub.com/eslint/eslint/releases/tag/v8.36.0) [Compare Source](https://togithub.com/eslint/eslint/compare/v8.35.0...v8.36.0) #### Features - [`c89a485`](https://togithub.com/eslint/eslint/commit/c89a485c49450532ee3db74f2638429f1f37d0dd) feat: Add `checkJSDoc` option to multiline-comment-style ([#​16807](https://togithub.com/eslint/eslint/issues/16807)) (Laurent Cozic) - [`f5f5e11`](https://togithub.com/eslint/eslint/commit/f5f5e11bd5fd3daab9ccae41e270739c836c305e) feat: Serialize parsers/processors in flat config ([#​16944](https://togithub.com/eslint/eslint/issues/16944)) (Nicholas C. Zakas) - [`4799297`](https://togithub.com/eslint/eslint/commit/4799297ea582c81fd1e5623d32a7ddf7a7f3a126) feat: use [@​eslint-community](https://togithub.com/eslint-community) dependencies ([#​16784](https://togithub.com/eslint/eslint/issues/16784)) (Michaël De Boey) #### Bug Fixes - [`92c1943`](https://togithub.com/eslint/eslint/commit/92c1943ba73ea01e87086236e8736539b0eed558) fix: correctly iterate files matched by glob patterns ([#​16831](https://togithub.com/eslint/eslint/issues/16831)) (Nitin Kumar) #### Documentation - [`b98fdd4`](https://togithub.com/eslint/eslint/commit/b98fdd413a3b07b262bfce6f704c1c1bb8582770) docs: Update README (GitHub Actions Bot) - [`caf08ce`](https://togithub.com/eslint/eslint/commit/caf08ce0cc74917f7c0eec92d25fd784dc33ac4d) docs: fix estree link in custom formatters docs ([#​16967](https://togithub.com/eslint/eslint/issues/16967)) (Milos Djermanovic) - [`3398431`](https://togithub.com/eslint/eslint/commit/3398431574b903757bc78b08c8ed36b7b9fce8eb) docs: Custom Parsers cleanup/expansion ([#​16887](https://togithub.com/eslint/eslint/issues/16887)) (Ben Perlmutter) - [`19d3531`](https://togithub.com/eslint/eslint/commit/19d3531d9b54e1004318d28f9a6e18305c5bcc18) docs: Update README (GitHub Actions Bot) - [`b09a512`](https://togithub.com/eslint/eslint/commit/b09a512107249a4eb19ef5a37b0bd672266eafdb) docs: detect and fix broken links ([#​16837](https://togithub.com/eslint/eslint/issues/16837)) (Nitin Kumar) #### Chores - [`602b111`](https://togithub.com/eslint/eslint/commit/602b11121910a97ab2bc4a95a46dd0ccd0a89309) chore: upgrade [@​eslint/js](https://togithub.com/eslint/js)[@​8](https://togithub.com/8).36.0 ([#​16978](https://togithub.com/eslint/eslint/issues/16978)) (Milos Djermanovic) - [`43c2345`](https://togithub.com/eslint/eslint/commit/43c2345c27024aeab6127e6bbfd55c8b70bd317e) chore: package.json update for [@​eslint/js](https://togithub.com/eslint/js) release (ESLint Jenkins) - [`00afb84`](https://togithub.com/eslint/eslint/commit/00afb84e5039874c8745a45c953fceaf0c71c454) chore: upgrade [@​eslint/eslintrc](https://togithub.com/eslint/eslintrc)[@​2](https://togithub.com/2).0.1 ([#​16977](https://togithub.com/eslint/eslint/issues/16977)) (Milos Djermanovic) - [`698c5aa`](https://togithub.com/eslint/eslint/commit/698c5aad50e628ff00281dbc786e42de79834035) chore: upgrade espree@9.5.0 ([#​16976](https://togithub.com/eslint/eslint/issues/16976)) (Milos Djermanovic) - [`75acdd2`](https://togithub.com/eslint/eslint/commit/75acdd21c5ce7024252e9d41ed77d2f30587caac) chore: lint more js files in docs ([#​16964](https://togithub.com/eslint/eslint/issues/16964)) (Milos Djermanovic) - [`89d9844`](https://togithub.com/eslint/eslint/commit/89d9844b3151f09b5b21b6eeeda671009ec301e9) ci: bump actions/add-to-project from 0.4.0 to 0.4.1 ([#​16943](https://togithub.com/eslint/eslint/issues/16943)) (dependabot\[bot]) </details> <details> <summary>prettier/prettier</summary> ### [`v2.8.8`](https://togithub.com/prettier/prettier/blob/HEAD/CHANGELOG.md#​288) [Compare Source](https://togithub.com/prettier/prettier/compare/2.8.7...2.8.8) This version is a republished version of v2.8.7. A bad version was accidentally published and [it can't be unpublished](https://togithub.com/npm/cli/issues/1686), apologies for the churn. ### [`v2.8.7`](https://togithub.com/prettier/prettier/blob/HEAD/CHANGELOG.md#​287) [Compare Source](https://togithub.com/prettier/prettier/compare/2.8.6...2.8.7) [diff](https://togithub.com/prettier/prettier/compare/2.8.6...2.8.7) ##### Allow multiple decorators on same getter/setter ([#​14584](https://togithub.com/prettier/prettier/pull/14584) by [@​fisker](https://togithub.com/fisker)) <!-- prettier-ignore --> ```ts // Input class A { @​decorator() get foo () {} @​decorator() set foo (value) {} } // Prettier 2.8.6 SyntaxError: Decorators cannot be applied to multiple get/set accessors of the same name. (5:3) 3 | get foo () {} 4 | > 5 | @​decorator() | ^^^^^^^^^^^^ 6 | set foo (value) {} 7 | } // Prettier 2.8.7 class A { @​decorator() get foo() {} @​decorator() set foo(value) {} } ``` ### [`v2.8.6`](https://togithub.com/prettier/prettier/blob/HEAD/CHANGELOG.md#​286) [Compare Source](https://togithub.com/prettier/prettier/compare/2.8.5...2.8.6) [diff](https://togithub.com/prettier/prettier/compare/2.8.5...2.8.6) ##### Allow decorators on private members and class expressions ([#​14548](https://togithub.com/prettier/prettier/pull/14548) by [@​fisker](https://togithub.com/fisker)) <!-- prettier-ignore --> ```ts // Input class A { @​decorator() #privateMethod () {} } // Prettier 2.8.5 SyntaxError: Decorators are not valid here. (2:3) 1 | class A { > 2 | @​decorator() | ^^^^^^^^^^^^ 3 | #privateMethod () {} 4 | } // Prettier 2.8.6 class A { @​decorator() #privateMethod() {} } ``` ### [`v2.8.5`](https://togithub.com/prettier/prettier/blob/HEAD/CHANGELOG.md#​285) [Compare Source](https://togithub.com/prettier/prettier/compare/2.8.4...2.8.5) [diff](https://togithub.com/prettier/prettier/compare/2.8.4...2.8.5) ##### Support TypeScript 5.0 ([#​14391](https://togithub.com/prettier/prettier/pull/14391) by [@​fisker](https://togithub.com/fisker), [#​13819](https://togithub.com/prettier/prettier/pull/13819) by [@​fisker](https://togithub.com/fisker), [@​sosukesuzuki](https://togithub.com/sosukesuzuki)) TypeScript 5.0 introduces two new syntactic features: - `const` modifiers for type parameters - `export type *` declarations ##### Add missing parentheses for decorator ([#​14393](https://togithub.com/prettier/prettier/pull/14393) by [@​fisker](https://togithub.com/fisker)) <!-- prettier-ignore --> ```jsx // Input class Person { @​(myDecoratorArray[0]) greet() {} } // Prettier 2.8.4 class Person { @​myDecoratorArray[0] greet() {} } // Prettier 2.8.5 class Person { @​(myDecoratorArray[0]) greet() {} } ``` ##### Add parentheses for `TypeofTypeAnnotation` to improve readability ([#​14458](https://togithub.com/prettier/prettier/pull/14458) by [@​fisker](https://togithub.com/fisker)) <!-- prettier-ignore --> ```tsx // Input type A = (typeof node.children)[]; // Prettier 2.8.4 type A = typeof node.children[]; // Prettier 2.8.5 type A = (typeof node.children)[]; ``` ##### Support `max_line_length=off` when parsing `.editorconfig` ([#​14516](https://togithub.com/prettier/prettier/pull/14516) by [@​josephfrazier](https://togithub.com/josephfrazier)) If an .editorconfig file is in your project and it sets `max_line_length=off` for the file you're formatting, it will be interpreted as a `printWidth` of `Infinity` rather than being ignored (which previously resulted in the default `printWidth` of 80 being applied, if not overridden by Prettier-specific configuration). <!-- prettier-ignore --> ```html <!-- Input --> <div className='HelloWorld' title={`You are visitor number ${ num }`} onMouseOver={onMouseOver}/> <!-- Prettier 2.8.4 --> <div className="HelloWorld" title={`You are visitor number ${num}`} onMouseOver={onMouseOver} />; <!-- Prettier 2.8.5 --> <div className="HelloWorld" title={`You are visitor number ${num}`} onMouseOver={onMouseOver} />; ``` </details> <details> <summary>Microsoft/TypeScript</summary> ### [`v5.0.4`](https://togithub.com/microsoft/TypeScript/releases/tag/v5.0.4): TypeScript 5.0.4 [Compare Source](https://togithub.com/Microsoft/TypeScript/compare/v5.0.3...v5.0.4) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-5-0/). For the complete list of fixed issues, check out the - [fixed issues query for Typescript v5.0.0 (Beta)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.0.0%22+is%3Aclosed+). - [fixed issues query for Typescript v5.0.1 (RC)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.0.1%22+is%3Aclosed+). - [fixed issues query for Typescript v5.0.2 (Stable)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.0.2%22+is%3Aclosed+). - [fixed issues query for Typescript v5.0.3 (Stable)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.0.3%22+is%3Aclosed+). - [fixed issues query for Typescript v5.0.4 (Stable)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.0.4%22+is%3Aclosed+). Downloads are available on: - [npm](https://www.npmjs.com/package/typescript) - [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) ### [`v5.0.3`](https://togithub.com/microsoft/TypeScript/releases/tag/v5.0.3): TypeScript 5.0.3 [Compare Source](https://togithub.com/Microsoft/TypeScript/compare/v5.0.2...v5.0.3) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-5-0/). For the complete list of fixed issues, check out the - [fixed issues query for Typescript v5.0.0 (Beta)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.0.0%22+is%3Aclosed+). - [fixed issues query for Typescript v5.0.1 (RC)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.0.1%22+is%3Aclosed+). - [fixed issues query for Typescript v5.0.2 (Stable)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.0.2%22+is%3Aclosed+). - [fixed issues query for Typescript v5.0.3 (Stable)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.0.3%22+is%3Aclosed+). Downloads are available on: - [npm](https://www.npmjs.com/package/typescript) - [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) </details> <details> <summary>vitest-dev/vitest</summary> ### [`v0.31.0`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.31.0) [Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.30.1...v0.31.0) ##### 🚨 Breaking Changes - Update mock implementation to support ESM runtime, introduce "vi.hoisted" - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3258 [<samp>(0c09a)</samp>](https://togithub.com/vitest-dev/vitest/commit/0c09a40d) - Bypass ESM import order restriction with `vi.hoisted` to run code before imports are executed: ```ts vi.hoisted(() => vi.setSystemTime(new Date(2022, 1, 1))) ``` You can also use it to pass variables to `vi.mock`: ```ts const { mockedMethod } = vi.hoisted(() => { return { mockedMethod: vi.fn() } }) vi.mocked('./path/to/module.js', () => { return { originalMethod: mockedMethod } }) ``` - Move assertion declarations to expect package - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3294 [<samp>(cf3af)</samp>](https://togithub.com/vitest-dev/vitest/commit/cf3afe2b) - The change should be minor: ```diff - declare namespace Vi { + declare module '@​vitest/expect' { interface Assertion<T = any> extends CustomMatchers<T> {} interface AsymmetricMatchersContaining extends CustomMatchers {} } ``` ##### 🚀 Features - Add repeat method to tests - by [@​samkevin1](https://togithub.com/samkevin1) in [vitest-dev/vitest#2652 [<samp>(7c8f0)</samp>](https://togithub.com/vitest-dev/vitest/commit/7c8f0ba9) - Add an option to hide skipped test lines - by [@​g4rry420](https://togithub.com/g4rry420) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#2745 [<samp>(9bdb1)</samp>](https://togithub.com/vitest-dev/vitest/commit/9bdb1603) - **coverage**: Watermarks for c8 - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3254 [<samp>(730af)</samp>](https://togithub.com/vitest-dev/vitest/commit/730af0b4) - **ui**: Add html coverage - by [@​userquin](https://togithub.com/userquin) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3071 [<samp>(e24cd)</samp>](https://togithub.com/vitest-dev/vitest/commit/e24cd9b2) - **watch**: Test run cancelling, feat: `--bail` option for cancelling test run - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3163 [<samp>(8d460)</samp>](https://togithub.com/vitest-dev/vitest/commit/8d4606eb) ##### 🐞 Bug Fixes - Don't call global setup teardown twice - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3188 [<samp>(ba3d1)</samp>](https://togithub.com/vitest-dev/vitest/commit/ba3d1338) - Reporter to log version before provider initalizations - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3131 [<samp>(481b1)</samp>](https://togithub.com/vitest-dev/vitest/commit/481b1fd2) - Throw an error if Vitest cannot access its internal state - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3250 [<samp>(fbb14)</samp>](https://togithub.com/vitest-dev/vitest/commit/fbb1468e) - Warning suppression broken - by [@​IceQub3](https://togithub.com/IceQub3) in [vitest-dev/vitest#3270 and [vitest-dev/vitest#3271 [<samp>(036de)</samp>](https://togithub.com/vitest-dev/vitest/commit/036de797) - Show correct diff in "toHaveBeenCalledWith" - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3289 [<samp>(19fcd)</samp>](https://togithub.com/vitest-dev/vitest/commit/19fcd8df) - Don't print esm warning, if package name is not found - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3292 [<samp>(62c14)</samp>](https://togithub.com/vitest-dev/vitest/commit/62c14cba) - Support exactOptionalPropertyTypes - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3293 [<samp>(ba81d)</samp>](https://togithub.com/vitest-dev/vitest/commit/ba81d8a3) - Don't inline vite hmr and rollup types - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3291 [<samp>(1f118)</samp>](https://togithub.com/vitest-dev/vitest/commit/1f1189bc) - **browser**: - Failing to load vitest/utils - by [@​userquin](https://togithub.com/userquin) in [vitest-dev/vitest#3190 [<samp>(78bad)</samp>](https://togithub.com/vitest-dev/vitest/commit/78bad4ab) - **coverage**: - `thresholdAutoUpdate` to work with `perFile` - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3182 [<samp>(29eeb)</samp>](https://togithub.com/vitest-dev/vitest/commit/29eebf65) - Throw error if fail to load built-in provider - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3217 [<samp>(0a287)</samp>](https://togithub.com/vitest-dev/vitest/commit/0a2875e3) - Stackblitz hangs with c8 - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3225 [<samp>(d9fda)</samp>](https://togithub.com/vitest-dev/vitest/commit/d9fda2a1) - C8 to ignore vite's generated helpers - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3241 [<samp>(21942)</samp>](https://togithub.com/vitest-dev/vitest/commit/21942db0) - Workspaces c8 source maps - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3226 [<samp>(efce3)</samp>](https://togithub.com/vitest-dev/vitest/commit/efce3b4d) - **docs**: - Correct typo and broken link to WebdriverIO - by [@​nathanbabcock](https://togithub.com/nathanbabcock) in [vitest-dev/vitest#3275 [<samp>(c7da1)</samp>](https://togithub.com/vitest-dev/vitest/commit/c7da155f) - **spy**: - Update to set initial implementation through normal logic - by [@​Codex-](https://togithub.com/Codex-) in [vitest-dev/vitest#3260 and [vitest-dev/vitest#3263 [<samp>(c759a)</samp>](https://togithub.com/vitest-dev/vitest/commit/c759a9aa) - **vite-node**: - Circular imports - by [@​antfu](https://togithub.com/antfu) in [vitest-dev/vitest#3196 [<samp>(cbb59)</samp>](https://togithub.com/vitest-dev/vitest/commit/cbb593a8) - Add missing `import.meta.hot.send` mock - by [@​antfu](https://togithub.com/antfu) [<samp>(b1624)</samp>](https://togithub.com/vitest-dev/vitest/commit/b1624db5) - **vitest**: - Also check for vite relative to vitest package - by [@​JoshuaKGoldberg](https://togithub.com/JoshuaKGoldberg) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3274 [<samp>(a3393)</samp>](https://togithub.com/vitest-dev/vitest/commit/a3393b15) - **watch**: - Run test files when added to filesystem - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3189 [<samp>(7b2c8)</samp>](https://togithub.com/vitest-dev/vitest/commit/7b2c81bc) ##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.30.1...v0.31.0) </details> --- ### Configuration 📅 **Schedule**: Branch creation - 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. 👻 **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/christianemmert/ts-starter). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS42OS4zIiwidXBkYXRlZEluVmVyIjoiMzUuNjkuMyIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
…209) [](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@vitest/coverage-istanbul](https://togithub.com/vitest-dev/vitest/tree/main/packages/coverage-istanbul#readme) ([source](https://togithub.com/vitest-dev/vitest)) | [`^0.30.0` -> `^0.31.0`](https://renovatebot.com/diffs/npm/@vitest%2fcoverage-istanbul/0.30.1/0.31.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>vitest-dev/vitest</summary> ### [`v0.31.0`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.31.0) [Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.30.1...v0.31.0) ##### 🚨 Breaking Changes - Update mock implementation to support ESM runtime, introduce "vi.hoisted" - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3258 [<samp>(0c09a)</samp>](https://togithub.com/vitest-dev/vitest/commit/0c09a40d) - Bypass ESM import order restriction with `vi.hoisted` to run code before imports are executed: ```ts vi.hoisted(() => vi.setSystemTime(new Date(2022, 1, 1))) ``` You can also use it to pass variables to `vi.mock`: ```ts const { mockedMethod } = vi.hoisted(() => { return { mockedMethod: vi.fn() } }) vi.mocked('./path/to/module.js', () => { return { originalMethod: mockedMethod } }) ``` - Move assertion declarations to expect package - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3294 [<samp>(cf3af)</samp>](https://togithub.com/vitest-dev/vitest/commit/cf3afe2b) - The change should be minor: ```diff - declare namespace Vi { + declare module 'vitest' { interface Assertion<T = any> extends CustomMatchers<T> {} interface AsymmetricMatchersContaining extends CustomMatchers {} } ``` ##### 🚀 Features - Add repeat method to tests - by [@​samkevin1](https://togithub.com/samkevin1) in [vitest-dev/vitest#2652 [<samp>(7c8f0)</samp>](https://togithub.com/vitest-dev/vitest/commit/7c8f0ba9) - Add an option to hide skipped test lines - by [@​g4rry420](https://togithub.com/g4rry420) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#2745 [<samp>(9bdb1)</samp>](https://togithub.com/vitest-dev/vitest/commit/9bdb1603) - **coverage**: Watermarks for c8 - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3254 [<samp>(730af)</samp>](https://togithub.com/vitest-dev/vitest/commit/730af0b4) - **ui**: Add html coverage - by [@​userquin](https://togithub.com/userquin) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3071 [<samp>(e24cd)</samp>](https://togithub.com/vitest-dev/vitest/commit/e24cd9b2) - **watch**: Test run cancelling, feat: `--bail` option for cancelling test run - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3163 [<samp>(8d460)</samp>](https://togithub.com/vitest-dev/vitest/commit/8d4606eb) ##### 🐞 Bug Fixes - Don't call global setup teardown twice - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3188 [<samp>(ba3d1)</samp>](https://togithub.com/vitest-dev/vitest/commit/ba3d1338) - Reporter to log version before provider initalizations - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3131 [<samp>(481b1)</samp>](https://togithub.com/vitest-dev/vitest/commit/481b1fd2) - Throw an error if Vitest cannot access its internal state - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3250 [<samp>(fbb14)</samp>](https://togithub.com/vitest-dev/vitest/commit/fbb1468e) - Warning suppression broken - by [@​IceQub3](https://togithub.com/IceQub3) in [vitest-dev/vitest#3270 and [vitest-dev/vitest#3271 [<samp>(036de)</samp>](https://togithub.com/vitest-dev/vitest/commit/036de797) - Show correct diff in "toHaveBeenCalledWith" - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3289 [<samp>(19fcd)</samp>](https://togithub.com/vitest-dev/vitest/commit/19fcd8df) - Don't print esm warning, if package name is not found - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3292 [<samp>(62c14)</samp>](https://togithub.com/vitest-dev/vitest/commit/62c14cba) - Support exactOptionalPropertyTypes - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3293 [<samp>(ba81d)</samp>](https://togithub.com/vitest-dev/vitest/commit/ba81d8a3) - Don't inline vite hmr and rollup types - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3291 [<samp>(1f118)</samp>](https://togithub.com/vitest-dev/vitest/commit/1f1189bc) - **browser**: - Failing to load vitest/utils - by [@​userquin](https://togithub.com/userquin) in [vitest-dev/vitest#3190 [<samp>(78bad)</samp>](https://togithub.com/vitest-dev/vitest/commit/78bad4ab) - **coverage**: - `thresholdAutoUpdate` to work with `perFile` - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3182 [<samp>(29eeb)</samp>](https://togithub.com/vitest-dev/vitest/commit/29eebf65) - Throw error if fail to load built-in provider - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3217 [<samp>(0a287)</samp>](https://togithub.com/vitest-dev/vitest/commit/0a2875e3) - Stackblitz hangs with c8 - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3225 [<samp>(d9fda)</samp>](https://togithub.com/vitest-dev/vitest/commit/d9fda2a1) - C8 to ignore vite's generated helpers - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3241 [<samp>(21942)</samp>](https://togithub.com/vitest-dev/vitest/commit/21942db0) - Workspaces c8 source maps - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3226 [<samp>(efce3)</samp>](https://togithub.com/vitest-dev/vitest/commit/efce3b4d) - **docs**: - Correct typo and broken link to WebdriverIO - by [@​nathanbabcock](https://togithub.com/nathanbabcock) in [vitest-dev/vitest#3275 [<samp>(c7da1)</samp>](https://togithub.com/vitest-dev/vitest/commit/c7da155f) - **spy**: - Update to set initial implementation through normal logic - by [@​Codex-](https://togithub.com/Codex-) in [vitest-dev/vitest#3260 and [vitest-dev/vitest#3263 [<samp>(c759a)</samp>](https://togithub.com/vitest-dev/vitest/commit/c759a9aa) - **vite-node**: - Circular imports - by [@​antfu](https://togithub.com/antfu) in [vitest-dev/vitest#3196 [<samp>(cbb59)</samp>](https://togithub.com/vitest-dev/vitest/commit/cbb593a8) - Add missing `import.meta.hot.send` mock - by [@​antfu](https://togithub.com/antfu) [<samp>(b1624)</samp>](https://togithub.com/vitest-dev/vitest/commit/b1624db5) - **vitest**: - Also check for vite relative to vitest package - by [@​JoshuaKGoldberg](https://togithub.com/JoshuaKGoldberg) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3274 [<samp>(a3393)</samp>](https://togithub.com/vitest-dev/vitest/commit/a3393b15) - **watch**: - Run test files when added to filesystem - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3189 [<samp>(7b2c8)</samp>](https://togithub.com/vitest-dev/vitest/commit/7b2c81bc) ##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.30.1...v0.31.0) </details> --- ### Configuration 📅 **Schedule**: Branch creation - 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/JoshuaKGoldberg/ts-api-utils). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS43MS40IiwidXBkYXRlZEluVmVyIjoiMzUuNzEuNCIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
…408) [](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@vitest/coverage-istanbul](https://togithub.com/vitest-dev/vitest/tree/main/packages/coverage-istanbul#readme) ([source](https://togithub.com/vitest-dev/vitest)) | [`^0.30.0` -> `^0.31.0`](https://renovatebot.com/diffs/npm/@vitest%2fcoverage-istanbul/0.30.1/0.31.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>vitest-dev/vitest</summary> ### [`v0.31.0`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.31.0) [Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.30.1...v0.31.0) ##### 🚨 Breaking Changes - Update mock implementation to support ESM runtime, introduce "vi.hoisted" - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3258 [<samp>(0c09a)</samp>](https://togithub.com/vitest-dev/vitest/commit/0c09a40d) - Bypass ESM import order restriction with `vi.hoisted` to run code before imports are executed: ```ts vi.hoisted(() => vi.setSystemTime(new Date(2022, 1, 1))) ``` You can also use it to pass variables to `vi.mock`: ```ts const { mockedMethod } = vi.hoisted(() => { return { mockedMethod: vi.fn() } }) vi.mocked('./path/to/module.js', () => { return { originalMethod: mockedMethod } }) ``` - Move assertion declarations to expect package - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3294 [<samp>(cf3af)</samp>](https://togithub.com/vitest-dev/vitest/commit/cf3afe2b) - The change should be minor: ```diff - declare namespace Vi { + declare module 'vitest' { interface Assertion<T = any> extends CustomMatchers<T> {} interface AsymmetricMatchersContaining extends CustomMatchers {} } ``` ##### 🚀 Features - Add repeat method to tests - by [@​samkevin1](https://togithub.com/samkevin1) in [vitest-dev/vitest#2652 [<samp>(7c8f0)</samp>](https://togithub.com/vitest-dev/vitest/commit/7c8f0ba9) - Add an option to hide skipped test lines - by [@​g4rry420](https://togithub.com/g4rry420) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#2745 [<samp>(9bdb1)</samp>](https://togithub.com/vitest-dev/vitest/commit/9bdb1603) - **coverage**: Watermarks for c8 - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3254 [<samp>(730af)</samp>](https://togithub.com/vitest-dev/vitest/commit/730af0b4) - **ui**: Add html coverage - by [@​userquin](https://togithub.com/userquin) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3071 [<samp>(e24cd)</samp>](https://togithub.com/vitest-dev/vitest/commit/e24cd9b2) - **watch**: Test run cancelling, feat: `--bail` option for cancelling test run - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3163 [<samp>(8d460)</samp>](https://togithub.com/vitest-dev/vitest/commit/8d4606eb) ##### 🐞 Bug Fixes - Don't call global setup teardown twice - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3188 [<samp>(ba3d1)</samp>](https://togithub.com/vitest-dev/vitest/commit/ba3d1338) - Reporter to log version before provider initalizations - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3131 [<samp>(481b1)</samp>](https://togithub.com/vitest-dev/vitest/commit/481b1fd2) - Throw an error if Vitest cannot access its internal state - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3250 [<samp>(fbb14)</samp>](https://togithub.com/vitest-dev/vitest/commit/fbb1468e) - Warning suppression broken - by [@​IceQub3](https://togithub.com/IceQub3) in [vitest-dev/vitest#3270 and [vitest-dev/vitest#3271 [<samp>(036de)</samp>](https://togithub.com/vitest-dev/vitest/commit/036de797) - Show correct diff in "toHaveBeenCalledWith" - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3289 [<samp>(19fcd)</samp>](https://togithub.com/vitest-dev/vitest/commit/19fcd8df) - Don't print esm warning, if package name is not found - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3292 [<samp>(62c14)</samp>](https://togithub.com/vitest-dev/vitest/commit/62c14cba) - Support exactOptionalPropertyTypes - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3293 [<samp>(ba81d)</samp>](https://togithub.com/vitest-dev/vitest/commit/ba81d8a3) - Don't inline vite hmr and rollup types - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3291 [<samp>(1f118)</samp>](https://togithub.com/vitest-dev/vitest/commit/1f1189bc) - **browser**: - Failing to load vitest/utils - by [@​userquin](https://togithub.com/userquin) in [vitest-dev/vitest#3190 [<samp>(78bad)</samp>](https://togithub.com/vitest-dev/vitest/commit/78bad4ab) - **coverage**: - `thresholdAutoUpdate` to work with `perFile` - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3182 [<samp>(29eeb)</samp>](https://togithub.com/vitest-dev/vitest/commit/29eebf65) - Throw error if fail to load built-in provider - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3217 [<samp>(0a287)</samp>](https://togithub.com/vitest-dev/vitest/commit/0a2875e3) - Stackblitz hangs with c8 - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3225 [<samp>(d9fda)</samp>](https://togithub.com/vitest-dev/vitest/commit/d9fda2a1) - C8 to ignore vite's generated helpers - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3241 [<samp>(21942)</samp>](https://togithub.com/vitest-dev/vitest/commit/21942db0) - Workspaces c8 source maps - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3226 [<samp>(efce3)</samp>](https://togithub.com/vitest-dev/vitest/commit/efce3b4d) - **docs**: - Correct typo and broken link to WebdriverIO - by [@​nathanbabcock](https://togithub.com/nathanbabcock) in [vitest-dev/vitest#3275 [<samp>(c7da1)</samp>](https://togithub.com/vitest-dev/vitest/commit/c7da155f) - **spy**: - Update to set initial implementation through normal logic - by [@​Codex-](https://togithub.com/Codex-) in [vitest-dev/vitest#3260 and [vitest-dev/vitest#3263 [<samp>(c759a)</samp>](https://togithub.com/vitest-dev/vitest/commit/c759a9aa) - **vite-node**: - Circular imports - by [@​antfu](https://togithub.com/antfu) in [vitest-dev/vitest#3196 [<samp>(cbb59)</samp>](https://togithub.com/vitest-dev/vitest/commit/cbb593a8) - Add missing `import.meta.hot.send` mock - by [@​antfu](https://togithub.com/antfu) [<samp>(b1624)</samp>](https://togithub.com/vitest-dev/vitest/commit/b1624db5) - **vitest**: - Also check for vite relative to vitest package - by [@​JoshuaKGoldberg](https://togithub.com/JoshuaKGoldberg) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3274 [<samp>(a3393)</samp>](https://togithub.com/vitest-dev/vitest/commit/a3393b15) - **watch**: - Run test files when added to filesystem - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3189 [<samp>(7b2c8)</samp>](https://togithub.com/vitest-dev/vitest/commit/7b2c81bc) ##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.30.1...v0.31.0) </details> --- ### Configuration 📅 **Schedule**: Branch creation - 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/JoshuaKGoldberg/template-typescript-node-package). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS43MS40IiwidXBkYXRlZEluVmVyIjoiMzUuNzEuNCIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
[](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [vitest](https://togithub.com/vitest-dev/vitest) | [`^0.30.0` -> `^0.31.0`](https://renovatebot.com/diffs/npm/vitest/0.30.0/0.31.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>vitest-dev/vitest</summary> ### [`v0.31.0`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.31.0) [Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.30.1...v0.31.0) ##### 🚨 Breaking Changes - Update mock implementation to support ESM runtime, introduce "vi.hoisted" - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3258 [<samp>(0c09a)</samp>](https://togithub.com/vitest-dev/vitest/commit/0c09a40d) - Bypass ESM import order restriction with `vi.hoisted` to run code before imports are executed: ```ts vi.hoisted(() => vi.setSystemTime(new Date(2022, 1, 1))) ``` You can also use it to pass variables to `vi.mock`: ```ts const { mockedMethod } = vi.hoisted(() => { return { mockedMethod: vi.fn() } }) vi.mocked('./path/to/module.js', () => { return { originalMethod: mockedMethod } }) ``` - Move assertion declarations to expect package - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3294 [<samp>(cf3af)</samp>](https://togithub.com/vitest-dev/vitest/commit/cf3afe2b) - The change should be minor: ```diff - declare namespace Vi { + declare module 'vitest' { interface Assertion<T = any> extends CustomMatchers<T> {} interface AsymmetricMatchersContaining extends CustomMatchers {} } ``` ##### 🚀 Features - Add repeat method to tests - by [@​samkevin1](https://togithub.com/samkevin1) in [vitest-dev/vitest#2652 [<samp>(7c8f0)</samp>](https://togithub.com/vitest-dev/vitest/commit/7c8f0ba9) - Add an option to hide skipped test lines - by [@​g4rry420](https://togithub.com/g4rry420) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#2745 [<samp>(9bdb1)</samp>](https://togithub.com/vitest-dev/vitest/commit/9bdb1603) - **coverage**: Watermarks for c8 - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3254 [<samp>(730af)</samp>](https://togithub.com/vitest-dev/vitest/commit/730af0b4) - **ui**: Add html coverage - by [@​userquin](https://togithub.com/userquin) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3071 [<samp>(e24cd)</samp>](https://togithub.com/vitest-dev/vitest/commit/e24cd9b2) - **watch**: Test run cancelling, feat: `--bail` option for cancelling test run - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3163 [<samp>(8d460)</samp>](https://togithub.com/vitest-dev/vitest/commit/8d4606eb) ##### 🐞 Bug Fixes - Don't call global setup teardown twice - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3188 [<samp>(ba3d1)</samp>](https://togithub.com/vitest-dev/vitest/commit/ba3d1338) - Reporter to log version before provider initalizations - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3131 [<samp>(481b1)</samp>](https://togithub.com/vitest-dev/vitest/commit/481b1fd2) - Throw an error if Vitest cannot access its internal state - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3250 [<samp>(fbb14)</samp>](https://togithub.com/vitest-dev/vitest/commit/fbb1468e) - Warning suppression broken - by [@​IceQub3](https://togithub.com/IceQub3) in [vitest-dev/vitest#3270 and [vitest-dev/vitest#3271 [<samp>(036de)</samp>](https://togithub.com/vitest-dev/vitest/commit/036de797) - Show correct diff in "toHaveBeenCalledWith" - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3289 [<samp>(19fcd)</samp>](https://togithub.com/vitest-dev/vitest/commit/19fcd8df) - Don't print esm warning, if package name is not found - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3292 [<samp>(62c14)</samp>](https://togithub.com/vitest-dev/vitest/commit/62c14cba) - Support exactOptionalPropertyTypes - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3293 [<samp>(ba81d)</samp>](https://togithub.com/vitest-dev/vitest/commit/ba81d8a3) - Don't inline vite hmr and rollup types - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3291 [<samp>(1f118)</samp>](https://togithub.com/vitest-dev/vitest/commit/1f1189bc) - **browser**: - Failing to load vitest/utils - by [@​userquin](https://togithub.com/userquin) in [vitest-dev/vitest#3190 [<samp>(78bad)</samp>](https://togithub.com/vitest-dev/vitest/commit/78bad4ab) - **coverage**: - `thresholdAutoUpdate` to work with `perFile` - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3182 [<samp>(29eeb)</samp>](https://togithub.com/vitest-dev/vitest/commit/29eebf65) - Throw error if fail to load built-in provider - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3217 [<samp>(0a287)</samp>](https://togithub.com/vitest-dev/vitest/commit/0a2875e3) - Stackblitz hangs with c8 - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3225 [<samp>(d9fda)</samp>](https://togithub.com/vitest-dev/vitest/commit/d9fda2a1) - C8 to ignore vite's generated helpers - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3241 [<samp>(21942)</samp>](https://togithub.com/vitest-dev/vitest/commit/21942db0) - Workspaces c8 source maps - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3226 [<samp>(efce3)</samp>](https://togithub.com/vitest-dev/vitest/commit/efce3b4d) - **docs**: - Correct typo and broken link to WebdriverIO - by [@​nathanbabcock](https://togithub.com/nathanbabcock) in [vitest-dev/vitest#3275 [<samp>(c7da1)</samp>](https://togithub.com/vitest-dev/vitest/commit/c7da155f) - **spy**: - Update to set initial implementation through normal logic - by [@​Codex-](https://togithub.com/Codex-) in [vitest-dev/vitest#3260 and [vitest-dev/vitest#3263 [<samp>(c759a)</samp>](https://togithub.com/vitest-dev/vitest/commit/c759a9aa) - **vite-node**: - Circular imports - by [@​antfu](https://togithub.com/antfu) in [vitest-dev/vitest#3196 [<samp>(cbb59)</samp>](https://togithub.com/vitest-dev/vitest/commit/cbb593a8) - Add missing `import.meta.hot.send` mock - by [@​antfu](https://togithub.com/antfu) [<samp>(b1624)</samp>](https://togithub.com/vitest-dev/vitest/commit/b1624db5) - **vitest**: - Also check for vite relative to vitest package - by [@​JoshuaKGoldberg](https://togithub.com/JoshuaKGoldberg) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3274 [<samp>(a3393)</samp>](https://togithub.com/vitest-dev/vitest/commit/a3393b15) - **watch**: - Run test files when added to filesystem - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3189 [<samp>(7b2c8)</samp>](https://togithub.com/vitest-dev/vitest/commit/7b2c81bc) ##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.30.1...v0.31.0) ### [`v0.30.1`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.30.1) [Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.30.0...v0.30.1) ##### 🐞 Bug Fixes - Do not rely on global `performance` and `AggregateError` - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3171 [<samp>(cce45)</samp>](https://togithub.com/vitest-dev/vitest/commit/cce45496) - Allow workspace without a config in the root - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3173 [<samp>(06852)</samp>](https://togithub.com/vitest-dev/vitest/commit/06852f18) - `test.each` respects `chaiConfig` - by [@​sheremet-va](https://togithub.com/sheremet-va) [<samp>(4f6c1)</samp>](https://togithub.com/vitest-dev/vitest/commit/4f6c1340) - Use relative paths in source map's "sources" field - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3177 [<samp>(6b1b4)</samp>](https://togithub.com/vitest-dev/vitest/commit/6b1b4e68) - **types**: - Allow augmenting jest namespace for custom assertions - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3169 [<samp>(905ec)</samp>](https://togithub.com/vitest-dev/vitest/commit/905ec05a) - Publish utils and snapshot .d.ts files for typescript - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3172 [<samp>(7af64)</samp>](https://togithub.com/vitest-dev/vitest/commit/7af64444) - **snapshot**: - `toMatchFileSnapshot` ensure dir exists - by [@​antfu](https://togithub.com/antfu) in [vitest-dev/vitest#3155 [<samp>(31168)</samp>](https://togithub.com/vitest-dev/vitest/commit/311682a8) - Improve `skipWriting` check - by [@​antfu](https://togithub.com/antfu) [<samp>(5436c)</samp>](https://togithub.com/vitest-dev/vitest/commit/5436c736) - Normalize EOL for `toMatchFileSnapshot` - by [@​antfu](https://togithub.com/antfu) in [vitest-dev/vitest#3164 [<samp>(df3f2)</samp>](https://togithub.com/vitest-dev/vitest/commit/df3f2b50) ##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.30.0...v0.30.1) </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/JoshuaKGoldberg/template-typescript-node-package). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS43MS40IiwidXBkYXRlZEluVmVyIjoiMzUuNzEuNCIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
[](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [vitest](https://togithub.com/vitest-dev/vitest) | [`^0.30.0` -> `^0.31.0`](https://renovatebot.com/diffs/npm/vitest/0.30.1/0.31.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>vitest-dev/vitest</summary> ### [`v0.31.0`](https://togithub.com/vitest-dev/vitest/releases/tag/v0.31.0) [Compare Source](https://togithub.com/vitest-dev/vitest/compare/v0.30.1...v0.31.0) ##### 🚨 Breaking Changes - Update mock implementation to support ESM runtime, introduce "vi.hoisted" - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3258 [<samp>(0c09a)</samp>](https://togithub.com/vitest-dev/vitest/commit/0c09a40d) - Bypass ESM import order restriction with `vi.hoisted` to run code before imports are executed: ```ts vi.hoisted(() => vi.setSystemTime(new Date(2022, 1, 1))) ``` You can also use it to pass variables to `vi.mock`: ```ts const { mockedMethod } = vi.hoisted(() => { return { mockedMethod: vi.fn() } }) vi.mocked('./path/to/module.js', () => { return { originalMethod: mockedMethod } }) ``` - Move assertion declarations to expect package - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3294 [<samp>(cf3af)</samp>](https://togithub.com/vitest-dev/vitest/commit/cf3afe2b) - The change should be minor: ```diff - declare namespace Vi { + declare module 'vitest' { interface Assertion<T = any> extends CustomMatchers<T> {} interface AsymmetricMatchersContaining extends CustomMatchers {} } ``` ##### 🚀 Features - Add repeat method to tests - by [@​samkevin1](https://togithub.com/samkevin1) in [vitest-dev/vitest#2652 [<samp>(7c8f0)</samp>](https://togithub.com/vitest-dev/vitest/commit/7c8f0ba9) - Add an option to hide skipped test lines - by [@​g4rry420](https://togithub.com/g4rry420) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#2745 [<samp>(9bdb1)</samp>](https://togithub.com/vitest-dev/vitest/commit/9bdb1603) - **coverage**: Watermarks for c8 - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3254 [<samp>(730af)</samp>](https://togithub.com/vitest-dev/vitest/commit/730af0b4) - **ui**: Add html coverage - by [@​userquin](https://togithub.com/userquin) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3071 [<samp>(e24cd)</samp>](https://togithub.com/vitest-dev/vitest/commit/e24cd9b2) - **watch**: Test run cancelling, feat: `--bail` option for cancelling test run - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3163 [<samp>(8d460)</samp>](https://togithub.com/vitest-dev/vitest/commit/8d4606eb) ##### 🐞 Bug Fixes - Don't call global setup teardown twice - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3188 [<samp>(ba3d1)</samp>](https://togithub.com/vitest-dev/vitest/commit/ba3d1338) - Reporter to log version before provider initalizations - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3131 [<samp>(481b1)</samp>](https://togithub.com/vitest-dev/vitest/commit/481b1fd2) - Throw an error if Vitest cannot access its internal state - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3250 [<samp>(fbb14)</samp>](https://togithub.com/vitest-dev/vitest/commit/fbb1468e) - Warning suppression broken - by [@​IceQub3](https://togithub.com/IceQub3) in [vitest-dev/vitest#3270 and [vitest-dev/vitest#3271 [<samp>(036de)</samp>](https://togithub.com/vitest-dev/vitest/commit/036de797) - Show correct diff in "toHaveBeenCalledWith" - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3289 [<samp>(19fcd)</samp>](https://togithub.com/vitest-dev/vitest/commit/19fcd8df) - Don't print esm warning, if package name is not found - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3292 [<samp>(62c14)</samp>](https://togithub.com/vitest-dev/vitest/commit/62c14cba) - Support exactOptionalPropertyTypes - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3293 [<samp>(ba81d)</samp>](https://togithub.com/vitest-dev/vitest/commit/ba81d8a3) - Don't inline vite hmr and rollup types - by [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3291 [<samp>(1f118)</samp>](https://togithub.com/vitest-dev/vitest/commit/1f1189bc) - **browser**: - Failing to load vitest/utils - by [@​userquin](https://togithub.com/userquin) in [vitest-dev/vitest#3190 [<samp>(78bad)</samp>](https://togithub.com/vitest-dev/vitest/commit/78bad4ab) - **coverage**: - `thresholdAutoUpdate` to work with `perFile` - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3182 [<samp>(29eeb)</samp>](https://togithub.com/vitest-dev/vitest/commit/29eebf65) - Throw error if fail to load built-in provider - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3217 [<samp>(0a287)</samp>](https://togithub.com/vitest-dev/vitest/commit/0a2875e3) - Stackblitz hangs with c8 - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3225 [<samp>(d9fda)</samp>](https://togithub.com/vitest-dev/vitest/commit/d9fda2a1) - C8 to ignore vite's generated helpers - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3241 [<samp>(21942)</samp>](https://togithub.com/vitest-dev/vitest/commit/21942db0) - Workspaces c8 source maps - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3226 [<samp>(efce3)</samp>](https://togithub.com/vitest-dev/vitest/commit/efce3b4d) - **docs**: - Correct typo and broken link to WebdriverIO - by [@​nathanbabcock](https://togithub.com/nathanbabcock) in [vitest-dev/vitest#3275 [<samp>(c7da1)</samp>](https://togithub.com/vitest-dev/vitest/commit/c7da155f) - **spy**: - Update to set initial implementation through normal logic - by [@​Codex-](https://togithub.com/Codex-) in [vitest-dev/vitest#3260 and [vitest-dev/vitest#3263 [<samp>(c759a)</samp>](https://togithub.com/vitest-dev/vitest/commit/c759a9aa) - **vite-node**: - Circular imports - by [@​antfu](https://togithub.com/antfu) in [vitest-dev/vitest#3196 [<samp>(cbb59)</samp>](https://togithub.com/vitest-dev/vitest/commit/cbb593a8) - Add missing `import.meta.hot.send` mock - by [@​antfu](https://togithub.com/antfu) [<samp>(b1624)</samp>](https://togithub.com/vitest-dev/vitest/commit/b1624db5) - **vitest**: - Also check for vite relative to vitest package - by [@​JoshuaKGoldberg](https://togithub.com/JoshuaKGoldberg) and [@​sheremet-va](https://togithub.com/sheremet-va) in [vitest-dev/vitest#3274 [<samp>(a3393)</samp>](https://togithub.com/vitest-dev/vitest/commit/a3393b15) - **watch**: - Run test files when added to filesystem - by [@​AriPerkkio](https://togithub.com/AriPerkkio) in [vitest-dev/vitest#3189 [<samp>(7b2c8)</samp>](https://togithub.com/vitest-dev/vitest/commit/7b2c81bc) ##### [View changes on GitHub](https://togithub.com/vitest-dev/vitest/compare/v0.30.1...v0.31.0) </details> --- ### Configuration 📅 **Schedule**: Branch creation - 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/JoshuaKGoldberg/ts-api-utils). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS43MS40IiwidXBkYXRlZEluVmVyIjoiMzUuNzEuNCIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Method to repeat a test multiple times.
repeats
has no value in the test optionsHow it appears in the terminal:

Closes #2317