Skip to content

Releases: vitest-dev/vitest

v0.34.3

25 Aug 07:29
Compare
Choose a tag to compare

   🚀 Features

   🐞 Bug Fixes

    View changes on GitHub

v0.34.2

17 Aug 10:09
Compare
Choose a tag to compare

   🚀 Features

   🐞 Bug Fixes

   🏎 Performance

    View changes on GitHub

v0.34.1

01 Aug 16:53
Compare
Choose a tag to compare

   🐞 Bug Fixes

    View changes on GitHub

v0.34.0

01 Aug 15:40
Compare
Choose a tag to compare

   🚨 Breaking Changes

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

   🚀 Features

   🐞 Bug Fixes

   🏎 Performance

  • Deprecate deps.registerNodeLoader  -  by @sheremet-va (7f45b)
    • This option was introduced to support aliasing inside external packages. Please, use deps.optimizer.web instead. If you test Node.js applications, consider adding external packages to server.deps.inline.
    View changes on GitHub

v0.33.0

06 Jul 14:10
Compare
Choose a tag to compare

   🚨 Breaking Changes

  • Revert default include patterns  -  by @so1ve #3729
    • 0.32.0 changed the default include globs to be compatible with Jest. After a discussion with the community, we are reverting this change because it turned out to be non-intuitive.

   🐞 Bug Fixes

    View changes on GitHub

v0.32.4

03 Jul 11:05
Compare
Choose a tag to compare

   🐞 Bug Fixes

    View changes on GitHub

v0.32.3

03 Jul 08:35
Compare
Choose a tag to compare

   🚀 Features

   🐞 Bug Fixes

    View changes on GitHub

v0.32.2

16 Jun 16:05
Compare
Choose a tag to compare

   🐞 Bug Fixes

    View changes on GitHub

v0.32.1

16 Jun 12:21
Compare
Choose a tag to compare

   🚀 Features

   🐞 Bug Fixes

    View changes on GitHub

v0.32.0

06 Jun 17:03
Compare
Choose a tag to compare

   🚨 Breaking Changes

  • Throw an error, if the module cannot be resolved  -  by @sheremet-va in #3307 (1ad63)
    • Vitest used to fall back to the original import when it could not resolve it to the file path or the virtual module. This leads to hard-to-find module graph mismatches if you had incorrect alias or relied on relative imports to be resolved to the project root (which is usual behavior in TypeScript) because the code accidentally "worked". With this release, Vitest will now throw an error if it cannot resolve the module - there are possible edge cases that are not covered yet, so if you have any problems with this, please open a separate issue with reproduction.
  • Improve globs  -  by @nickmccurdy in #3392 (19ecc)
    • Vitest now has glob patterns similar to Jest for better compatibility. It's possible that some files will be considered test files when previously they were not. For example, Vitest now considers test.js to be a test file. Also any file in __tests__ is now considered to be a test, not just files with test or spec suffix.
  • Add @vitest/coverage-v8 package  -  by @AriPerkkio in #3339 (82112)
    • Vitest now uses v8 code coverage directly for better performance. @vitest/coverage-c8 is deprecated as Vitest no longer uses c8 package for coverage output. It will not be updated anymore, and Vitest will fail in the next version if the user has c8 as their coverage provider. Please, install the new @vitest/coverage-v8 package if you previously used @vitest/coverage-c8.
  • mocker: Don't restore mock to the original if the module is automocked  -  by @sheremet-va in #3518 (c1004)
    • spy.mockRestore on auto-mocked named exports will no longer restore their implementation to the actual function. This behavior better matches what Jest does.

   🚀 Features

   🐞 Bug Fixes

    View changes on GitHub