Skip to content


Choose a tag to compare
@github-actions github-actions released this 01 Aug 15:40
· 383 commits to main since this release

   🚨 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