vitest 4.0.0-beta.11 → 4.0.0-beta.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/LICENSE.md +4 -101
  2. package/dist/browser.d.ts +3 -3
  3. package/dist/browser.js +2 -2
  4. package/dist/chunks/{benchmark.LXhJ0F0X.js → benchmark.DHKMYAts.js} +1 -1
  5. package/dist/chunks/{browser.d.Dx7DO_Ce.d.ts → browser.d.D9YV3JvA.d.ts} +1 -1
  6. package/dist/chunks/{cac.elvK37c9.js → cac.r1gel_VZ.js} +16 -9
  7. package/dist/chunks/{cli-api.C7plPyhs.js → cli-api.CpywZzJV.js} +95 -148
  8. package/dist/chunks/{config.d.B_LthbQq.d.ts → config.d.DGazh2r6.d.ts} +3 -1
  9. package/dist/chunks/{console.CiTi59Jy.js → console.CTJL2nuH.js} +3 -5
  10. package/dist/chunks/{coverage.CG6Uhorw.js → coverage.CiB0fs_7.js} +44 -62
  11. package/dist/chunks/{creator.08Gi-vCA.js → creator.DfXDsUyL.js} +6 -8
  12. package/dist/chunks/{global.d.BK3X7FW1.d.ts → global.d.BcFPD2LN.d.ts} +0 -13
  13. package/dist/chunks/{globals.BjvYA-AD.js → globals.DC4ntO86.js} +5 -5
  14. package/dist/chunks/{index.DIWhzsUh.js → index.Bt-upxGS.js} +6 -12
  15. package/dist/chunks/{index.BwBttQPf.js → index.CHrBLuEH.js} +33 -38
  16. package/dist/chunks/{index.X0nbfr6-.js → index.Dc3xnDvT.js} +48 -289
  17. package/dist/chunks/{index.AZOjjqWP.js → index.Dnl38iQ_.js} +2 -2
  18. package/dist/chunks/{index.BhY64fF0.js → index.uLUz1RDt.js} +1 -1
  19. package/dist/chunks/{inspector.CvQD-Nie.js → inspector.Br76Q2Mb.js} +1 -4
  20. package/dist/chunks/{moduleRunner.d.BNa-CL9e.d.ts → moduleRunner.d.CeYc7nZ0.d.ts} +1 -1
  21. package/dist/chunks/{node.BsdMi6DV.js → node.BwAWWjHZ.js} +2 -3
  22. package/dist/chunks/{plugin.d.C5phQR6o.d.ts → plugin.d.XreRXLXS.d.ts} +1 -1
  23. package/dist/chunks/{reporters.d.CVzhsTvK.d.ts → reporters.d.CJVTaaWb.d.ts} +39 -3
  24. package/dist/chunks/{resolveSnapshotEnvironment.DQVamkje.js → resolveSnapshotEnvironment.BsJpmVZR.js} +7 -8
  25. package/dist/chunks/{rpc.jKGRSXIH.js → rpc.cD77ENhU.js} +12 -13
  26. package/dist/chunks/{setup-common.NAWRuMRP.js → setup-common.BewgbkTd.js} +5 -5
  27. package/dist/chunks/{startModuleRunner.oAuCu1yL.js → startModuleRunner.DPBo3mme.js} +40 -48
  28. package/dist/chunks/{test.KC5tH8hC.js → test.CTuWuHYH.js} +5 -5
  29. package/dist/chunks/{typechecker.gXq-5P3n.js → typechecker.BfOQ86_a.js} +54 -77
  30. package/dist/chunks/{utils.DGKhod2J.js → utils.CG9h5ccR.js} +1 -4
  31. package/dist/chunks/{vi.CiJ0Laa6.js → vi.B2--mG9U.js} +35 -144
  32. package/dist/chunks/{worker.rPGLlbkW.js → worker.DVTUM2IW.js} +11 -15
  33. package/dist/chunks/{worker.d.B_Fd9M_w.d.ts → worker.d.buwuBpBt.d.ts} +1 -1
  34. package/dist/cli.js +3 -3
  35. package/dist/config.d.ts +6 -6
  36. package/dist/coverage.d.ts +5 -5
  37. package/dist/coverage.js +3 -3
  38. package/dist/environments.js +1 -1
  39. package/dist/index.d.ts +8 -8
  40. package/dist/index.js +5 -5
  41. package/dist/module-evaluator.d.ts +3 -3
  42. package/dist/module-evaluator.js +10 -12
  43. package/dist/module-runner.js +2 -2
  44. package/dist/node.d.ts +8 -8
  45. package/dist/node.js +10 -10
  46. package/dist/reporters.d.ts +5 -5
  47. package/dist/reporters.js +3 -3
  48. package/dist/runners.d.ts +1 -1
  49. package/dist/runners.js +6 -6
  50. package/dist/snapshot.js +2 -2
  51. package/dist/suite.js +2 -2
  52. package/dist/worker-base.js +30 -32
  53. package/dist/worker-vm.js +19 -30
  54. package/dist/workers/runVmTests.js +10 -10
  55. package/package.json +18 -19
package/dist/node.d.ts CHANGED
@@ -3,24 +3,24 @@ import { InlineConfig, UserConfig as UserConfig$1, Plugin, ResolvedConfig as Res
3
3
  export { vite as Vite };
4
4
  export { esbuildVersion, isCSSRequest, isFileServingAllowed, parseAst, parseAstAsync, rollupVersion, version as viteVersion } from 'vite';
5
5
  import { IncomingMessage } from 'node:http';
6
- import { h as ResolvedConfig, f as UserConfig, i as VitestRunMode, j as VitestOptions, V as Vitest, A as ApiConfig, k as TestSpecification, T as TestProject, P as Pool, l as TestSequencer, L as Logger } from './chunks/reporters.d.CVzhsTvK.js';
7
- export { al as BaseCoverageOptions, G as BenchmarkUserOptions, K as BrowserBuiltinProvider, N as BrowserCommand, Q as BrowserCommandContext, X as BrowserConfigOptions, Y as BrowserInstanceOption, Z as BrowserModuleMocker, _ as BrowserOrchestrator, $ as BrowserProvider, a0 as BrowserProviderOption, a1 as BrowserScript, a2 as BrowserServerState, a3 as BrowserServerStateSession, aa as BuiltinEnvironment, a4 as CDPSession, ab as CSSModuleScopeStrategy, am as CoverageIstanbulOptions, an as CoverageOptions, ao as CoverageProvider, ap as CoverageProviderModule, aq as CoverageReporter, c as CoverageV8Options, ar as CustomProviderOptions, ac as DepsOptimizationOptions, ad as EnvironmentOptions, H as HTMLOptions, I as InlineConfig, o as JUnitOptions, J as JsonOptions, M as ModuleDiagnostic, O as OnServerRestartHandler, m as OnTestsRerunHandler, a5 as ParentProjectBrowser, ae as PoolOptions, a6 as ProjectBrowser, af as ProjectConfig, b as ReportContext, at as ReportedHookContext, au as Reporter, ah as ResolveSnapshotPathHandler, ai as ResolveSnapshotPathHandlerContext, a7 as ResolvedBrowserOptions, R as ResolvedCoverageOptions, ag as ResolvedProjectConfig, S as SerializedTestProject, p as TaskOptions, q as TestCase, r as TestCollection, s as TestDiagnostic, t as TestModule, u as TestModuleState, v as TestResult, w as TestResultFailed, x as TestResultPassed, y as TestResultSkipped, av as TestRunEndReason, as as TestRunResult, F as TestSequencerConstructor, z as TestState, B as TestSuite, D as TestSuiteState, a8 as ToMatchScreenshotComparators, a9 as ToMatchScreenshotOptions, aj as TypecheckConfig, U as UserWorkspaceConfig, ak as VitestEnvironment, n as VitestPackageInstaller, W as WatcherTriggerPattern, E as experimental_getRunnerTask } from './chunks/reporters.d.CVzhsTvK.js';
6
+ import { h as ResolvedConfig, f as UserConfig, i as VitestRunMode, j as VitestOptions, V as Vitest, A as ApiConfig, k as TestSpecification, T as TestProject, P as Pool, l as TestSequencer, L as Logger } from './chunks/reporters.d.CJVTaaWb.js';
7
+ export { al as BaseCoverageOptions, G as BenchmarkUserOptions, K as BrowserBuiltinProvider, N as BrowserCommand, Q as BrowserCommandContext, X as BrowserConfigOptions, Y as BrowserInstanceOption, Z as BrowserModuleMocker, _ as BrowserOrchestrator, $ as BrowserProvider, a0 as BrowserProviderOption, a1 as BrowserScript, a2 as BrowserServerState, a3 as BrowserServerStateSession, aa as BuiltinEnvironment, a4 as CDPSession, ab as CSSModuleScopeStrategy, am as CoverageIstanbulOptions, an as CoverageOptions, ao as CoverageProvider, ap as CoverageProviderModule, aq as CoverageReporter, c as CoverageV8Options, ar as CustomProviderOptions, ac as DepsOptimizationOptions, ad as EnvironmentOptions, H as HTMLOptions, I as InlineConfig, o as JUnitOptions, J as JsonOptions, M as ModuleDiagnostic, O as OnServerRestartHandler, m as OnTestsRerunHandler, a5 as ParentProjectBrowser, ae as PoolOptions, a6 as ProjectBrowser, af as ProjectConfig, b as ReportContext, at as ReportedHookContext, au as Reporter, ah as ResolveSnapshotPathHandler, ai as ResolveSnapshotPathHandlerContext, a7 as ResolvedBrowserOptions, R as ResolvedCoverageOptions, ag as ResolvedProjectConfig, S as SerializedTestProject, p as TaskOptions, q as TestCase, r as TestCollection, s as TestDiagnostic, t as TestModule, u as TestModuleState, v as TestResult, w as TestResultFailed, x as TestResultPassed, y as TestResultSkipped, av as TestRunEndReason, as as TestRunResult, F as TestSequencerConstructor, z as TestState, B as TestSuite, D as TestSuiteState, a8 as ToMatchScreenshotComparators, a9 as ToMatchScreenshotOptions, aj as TypecheckConfig, U as UserWorkspaceConfig, ak as VitestEnvironment, n as VitestPackageInstaller, W as WatcherTriggerPattern, E as experimental_getRunnerTask } from './chunks/reporters.d.CJVTaaWb.js';
8
8
  import { Awaitable } from '@vitest/utils';
9
9
  export { SerializedError } from '@vitest/utils';
10
- import { a as RuntimeRPC, C as ContextRPC } from './chunks/worker.d.B_Fd9M_w.js';
11
- export { T as TestExecutionType } from './chunks/worker.d.B_Fd9M_w.js';
10
+ import { a as RuntimeRPC, C as ContextRPC } from './chunks/worker.d.buwuBpBt.js';
11
+ export { T as TestExecutionType } from './chunks/worker.d.buwuBpBt.js';
12
12
  import { Writable } from 'node:stream';
13
- export { V as VitestPluginContext } from './chunks/plugin.d.C5phQR6o.js';
13
+ export { V as VitestPluginContext } from './chunks/plugin.d.XreRXLXS.js';
14
14
  import { MessagePort } from 'node:worker_threads';
15
15
  import { Debugger } from 'debug';
16
- import './chunks/global.d.BK3X7FW1.js';
16
+ import './chunks/global.d.BcFPD2LN.js';
17
17
  export { Task as RunnerTask, TaskResult as RunnerTaskResult, TaskResultPack as RunnerTaskResultPack, Test as RunnerTestCase, File as RunnerTestFile, Suite as RunnerTestSuite, SequenceHooks, SequenceSetupFiles } from '@vitest/runner';
18
- export { b as RuntimeConfig } from './chunks/config.d.B_LthbQq.js';
18
+ export { b as RuntimeConfig } from './chunks/config.d.DGazh2r6.js';
19
19
  export { generateFileHash } from '@vitest/runner/utils';
20
20
  import './chunks/environment.d.BsToaxti.js';
21
21
  import '@vitest/mocker';
22
22
  import '@vitest/utils/source-map';
23
- import './chunks/browser.d.Dx7DO_Ce.js';
23
+ import './chunks/browser.d.D9YV3JvA.js';
24
24
  import '@vitest/pretty-format';
25
25
  import '@vitest/snapshot';
26
26
  import '@vitest/utils/diff';
package/dist/node.js CHANGED
@@ -1,13 +1,13 @@
1
1
  import * as vite from 'vite';
2
2
  import { resolveConfig as resolveConfig$1, mergeConfig } from 'vite';
3
3
  export { esbuildVersion, isCSSRequest, isFileServingAllowed, parseAst, parseAstAsync, rollupVersion, version as viteVersion } from 'vite';
4
- import { V as Vitest, a as VitestPlugin } from './chunks/cli-api.C7plPyhs.js';
5
- export { G as GitNotFoundError, F as TestsNotFoundError, b as VitestPackageInstaller, h as createDebugger, g as createViteLogger, c as createVitest, e as escapeTestName, d as experimental_getRunnerTask, i as isValidApiRequest, f as registerConsoleShortcuts, r as resolveFsAllow, s as startVitest } from './chunks/cli-api.C7plPyhs.js';
6
- export { p as parseCLI } from './chunks/cac.elvK37c9.js';
7
- import { r as resolveConfig$2 } from './chunks/coverage.CG6Uhorw.js';
8
- export { b as BaseSequencer, c as createMethodsRPC, g as getFilePoolName, a as resolveApiServerConfig } from './chunks/coverage.CG6Uhorw.js';
4
+ import { V as Vitest, a as VitestPlugin } from './chunks/cli-api.CpywZzJV.js';
5
+ export { G as GitNotFoundError, F as TestsNotFoundError, b as VitestPackageInstaller, h as createDebugger, g as createViteLogger, c as createVitest, e as escapeTestName, d as experimental_getRunnerTask, i as isValidApiRequest, f as registerConsoleShortcuts, r as resolveFsAllow, s as startVitest } from './chunks/cli-api.CpywZzJV.js';
6
+ export { p as parseCLI } from './chunks/cac.r1gel_VZ.js';
7
+ import { r as resolveConfig$2 } from './chunks/coverage.CiB0fs_7.js';
8
+ export { b as BaseSequencer, c as createMethodsRPC, g as getFilePoolName, a as resolveApiServerConfig } from './chunks/coverage.CiB0fs_7.js';
9
9
  import { slash, deepClone } from '@vitest/utils/helpers';
10
- import { f as findUp } from './chunks/index.X0nbfr6-.js';
10
+ import { a as any } from './chunks/index.Dc3xnDvT.js';
11
11
  import { resolve } from 'pathe';
12
12
  import { c as configFiles } from './chunks/constants.D_Q9UYh-.js';
13
13
  export { distDir, rootDir } from './path.js';
@@ -18,9 +18,9 @@ import 'node:path';
18
18
  import 'node:os';
19
19
  import '@vitest/snapshot/manager';
20
20
  import './chunks/index.Bgo3tNWt.js';
21
- import './chunks/index.BwBttQPf.js';
21
+ import './chunks/index.CHrBLuEH.js';
22
22
  import 'node:fs/promises';
23
- import './chunks/typechecker.gXq-5P3n.js';
23
+ import './chunks/typechecker.BfOQ86_a.js';
24
24
  import 'node:perf_hooks';
25
25
  import 'tinyexec';
26
26
  import '@vitest/utils/source-map';
@@ -58,7 +58,7 @@ import './chunks/defaults.CXFFjsi8.js';
58
58
  import '@vitest/utils/constants';
59
59
  import '@vitest/utils/resolver';
60
60
  import 'es-module-lexer';
61
- import './chunks/index.BhY64fF0.js';
61
+ import './chunks/index.uLUz1RDt.js';
62
62
  import 'node:assert';
63
63
  import '@vitest/utils/serialize';
64
64
  import 'node:readline';
@@ -72,7 +72,7 @@ import 'readline';
72
72
 
73
73
  // this is only exported as a public function and not used inside vitest
74
74
  async function resolveConfig(options = {}, viteOverrides = {}) {
75
- const root = slash(resolve(options.root || process.cwd())), configPath = options.config === false ? false : options.config ? resolve(root, options.config) : await findUp(configFiles, { cwd: root });
75
+ const root = slash(resolve(options.root || process.cwd())), configPath = options.config === false ? false : options.config ? resolve(root, options.config) : any(configFiles, { cwd: root });
76
76
  options.config = configPath;
77
77
  const vitest = new Vitest("test", deepClone(options)), config = await resolveConfig$1(mergeConfig({
78
78
  configFile: configPath,
@@ -1,4 +1,4 @@
1
- export { aJ as BaseReporter, aK as BenchmarkBuiltinReporters, aw as BenchmarkReporter, ax as BenchmarkReportsMap, aL as BuiltinReporterOptions, aM as BuiltinReporters, ay as DefaultReporter, az as DotReporter, aA as GithubActionsReporter, aB as HangingProcessReporter, aD as JUnitReporter, aN as JsonAssertionResult, aC as JsonReporter, aO as JsonTestResult, aP as JsonTestResults, at as ReportedHookContext, au as Reporter, aE as ReportersMap, aF as TapFlatReporter, aG as TapReporter, av as TestRunEndReason, aH as VerboseBenchmarkReporter, aI as VerboseReporter } from './chunks/reporters.d.CVzhsTvK.js';
1
+ export { aJ as BaseReporter, aK as BenchmarkBuiltinReporters, aw as BenchmarkReporter, ax as BenchmarkReportsMap, aL as BuiltinReporterOptions, aM as BuiltinReporters, ay as DefaultReporter, az as DotReporter, aA as GithubActionsReporter, aB as HangingProcessReporter, aD as JUnitReporter, aN as JsonAssertionResult, aC as JsonReporter, aO as JsonTestResult, aP as JsonTestResults, at as ReportedHookContext, au as Reporter, aE as ReportersMap, aF as TapFlatReporter, aG as TapReporter, av as TestRunEndReason, aH as VerboseBenchmarkReporter, aI as VerboseReporter } from './chunks/reporters.d.CJVTaaWb.js';
2
2
  import '@vitest/runner';
3
3
  import '@vitest/utils';
4
4
  import './chunks/environment.d.BsToaxti.js';
@@ -6,13 +6,13 @@ import 'node:stream';
6
6
  import 'vite';
7
7
  import '@vitest/mocker';
8
8
  import '@vitest/utils/source-map';
9
- import './chunks/browser.d.Dx7DO_Ce.js';
10
- import './chunks/worker.d.B_Fd9M_w.js';
11
- import 'vite/module-runner';
12
- import './chunks/config.d.B_LthbQq.js';
9
+ import './chunks/config.d.DGazh2r6.js';
13
10
  import '@vitest/pretty-format';
14
11
  import '@vitest/snapshot';
15
12
  import '@vitest/utils/diff';
13
+ import './chunks/browser.d.D9YV3JvA.js';
14
+ import './chunks/worker.d.buwuBpBt.js';
15
+ import 'vite/module-runner';
16
16
  import '@vitest/expect';
17
17
  import 'vitest/optional-types.js';
18
18
  import './chunks/benchmark.d.DAaHLpsq.js';
package/dist/reporters.js CHANGED
@@ -1,9 +1,9 @@
1
- export { D as DefaultReporter, a as DotReporter, G as GithubActionsReporter, H as HangingProcessReporter, b as JUnitReporter, J as JsonReporter, R as ReportersMap, T as TapFlatReporter, c as TapReporter, V as VerboseReporter } from './chunks/index.BwBttQPf.js';
2
- export { B as BenchmarkReporter, a as BenchmarkReportsMap, V as VerboseBenchmarkReporter } from './chunks/index.BhY64fF0.js';
1
+ export { D as DefaultReporter, a as DotReporter, G as GithubActionsReporter, H as HangingProcessReporter, b as JUnitReporter, J as JsonReporter, R as ReportersMap, T as TapFlatReporter, c as TapReporter, V as VerboseReporter } from './chunks/index.CHrBLuEH.js';
2
+ export { B as BenchmarkReporter, a as BenchmarkReportsMap, V as VerboseBenchmarkReporter } from './chunks/index.uLUz1RDt.js';
3
3
  import 'node:fs';
4
4
  import 'node:fs/promises';
5
5
  import 'pathe';
6
- import './chunks/typechecker.gXq-5P3n.js';
6
+ import './chunks/typechecker.BfOQ86_a.js';
7
7
  import 'node:os';
8
8
  import 'node:perf_hooks';
9
9
  import 'tinyexec';
package/dist/runners.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import * as tinybench from 'tinybench';
2
2
  import { VitestRunner, VitestRunnerImportSource, Suite, File, Task, CancelReason, Test, TestContext, ImportDuration } from '@vitest/runner';
3
3
  export { VitestRunner } from '@vitest/runner';
4
- import { a as SerializedConfig } from './chunks/config.d.B_LthbQq.js';
4
+ import { a as SerializedConfig } from './chunks/config.d.DGazh2r6.js';
5
5
  import '@vitest/pretty-format';
6
6
  import '@vitest/snapshot';
7
7
  import '@vitest/utils/diff';
package/dist/runners.js CHANGED
@@ -1,19 +1,19 @@
1
- export { N as NodeBenchmarkRunner, V as VitestTestRunner } from './chunks/test.KC5tH8hC.js';
1
+ export { N as NodeBenchmarkRunner, V as VitestTestRunner } from './chunks/test.CTuWuHYH.js';
2
2
  import '@vitest/runner';
3
3
  import '@vitest/utils/helpers';
4
4
  import '@vitest/utils/timers';
5
- import './chunks/benchmark.LXhJ0F0X.js';
5
+ import './chunks/benchmark.DHKMYAts.js';
6
6
  import '@vitest/runner/utils';
7
- import './chunks/utils.DGKhod2J.js';
7
+ import './chunks/utils.CG9h5ccR.js';
8
8
  import '@vitest/expect';
9
9
  import '@vitest/utils/error';
10
10
  import 'pathe';
11
- import './chunks/vi.CiJ0Laa6.js';
12
- import './chunks/_commonjsHelpers.BFTU3MAI.js';
11
+ import './chunks/vi.B2--mG9U.js';
13
12
  import '@vitest/snapshot';
14
13
  import '@vitest/spy';
15
14
  import '@vitest/utils/offset';
16
15
  import '@vitest/utils/source-map';
16
+ import './chunks/_commonjsHelpers.BFTU3MAI.js';
17
17
  import './chunks/date.-jtEtIeV.js';
18
- import './chunks/rpc.jKGRSXIH.js';
18
+ import './chunks/rpc.cD77ENhU.js';
19
19
  import './chunks/index.Bgo3tNWt.js';
package/dist/snapshot.js CHANGED
@@ -1,4 +1,4 @@
1
- export { VitestNodeSnapshotEnvironment as VitestSnapshotEnvironment } from './chunks/node.BsdMi6DV.js';
1
+ export { VitestNodeSnapshotEnvironment as VitestSnapshotEnvironment } from './chunks/node.BwAWWjHZ.js';
2
2
  import '@vitest/snapshot/environment';
3
- import './chunks/utils.DGKhod2J.js';
3
+ import './chunks/utils.CG9h5ccR.js';
4
4
  import '@vitest/utils/timers';
package/dist/suite.js CHANGED
@@ -1,6 +1,6 @@
1
- export { g as getBenchFn, a as getBenchOptions } from './chunks/benchmark.LXhJ0F0X.js';
1
+ export { g as getBenchFn, a as getBenchOptions } from './chunks/benchmark.DHKMYAts.js';
2
2
  export { createTaskCollector, getCurrentSuite, getCurrentTest, getFn, getHooks, setFn, setHooks } from '@vitest/runner';
3
3
  export { createChainable } from '@vitest/runner/utils';
4
4
  import '@vitest/utils/helpers';
5
- import './chunks/utils.DGKhod2J.js';
5
+ import './chunks/utils.CG9h5ccR.js';
6
6
  import '@vitest/utils/timers';
@@ -1,30 +1,30 @@
1
- import { c as createForksRpcOptions, u as unwrapSerializableConfig, a as createThreadsRpcOptions, e as execute, t as teardown$1 } from './chunks/worker.rPGLlbkW.js';
1
+ import { c as createForksRpcOptions, u as unwrapSerializableConfig, a as createThreadsRpcOptions, e as execute, t as teardown$1 } from './chunks/worker.DVTUM2IW.js';
2
2
  import v8 from 'node:v8';
3
3
  import { runInThisContext } from 'node:vm';
4
4
  import * as spyModule from '@vitest/spy';
5
5
  import { EvaluatedModules } from 'vite/module-runner';
6
- import { s as startVitestModuleRunner, c as createNodeImportMeta } from './chunks/startModuleRunner.oAuCu1yL.js';
6
+ import { s as startVitestModuleRunner, c as createNodeImportMeta } from './chunks/startModuleRunner.DPBo3mme.js';
7
7
  import { performance } from 'node:perf_hooks';
8
8
  import { startTests, collectTests } from '@vitest/runner';
9
- import { a as resolveSnapshotEnvironment, s as setupChaiConfig, r as resolveTestRunner } from './chunks/resolveSnapshotEnvironment.DQVamkje.js';
10
- import { c as setupCommonEnv, s as startCoverageInsideWorker, a as stopCoverageInsideWorker } from './chunks/setup-common.NAWRuMRP.js';
11
- import { g as globalExpect, v as vi } from './chunks/vi.CiJ0Laa6.js';
12
- import { c as closeInspector } from './chunks/inspector.CvQD-Nie.js';
9
+ import { a as resolveSnapshotEnvironment, s as setupChaiConfig, r as resolveTestRunner } from './chunks/resolveSnapshotEnvironment.BsJpmVZR.js';
10
+ import { c as setupCommonEnv, s as startCoverageInsideWorker, a as stopCoverageInsideWorker } from './chunks/setup-common.BewgbkTd.js';
11
+ import { g as globalExpect, v as vi } from './chunks/vi.B2--mG9U.js';
12
+ import { c as closeInspector } from './chunks/inspector.Br76Q2Mb.js';
13
13
  import { createRequire } from 'node:module';
14
14
  import timers from 'node:timers';
15
15
  import timersPromises from 'node:timers/promises';
16
16
  import util from 'node:util';
17
17
  import { KNOWN_ASSET_TYPES } from '@vitest/utils/constants';
18
18
  import { getSafeTimers } from '@vitest/utils/timers';
19
- import { i as index } from './chunks/index.AZOjjqWP.js';
20
- import { g as getWorkerState, r as resetModules, p as provideWorkerState } from './chunks/utils.DGKhod2J.js';
19
+ import { i as index } from './chunks/index.Dnl38iQ_.js';
20
+ import { g as getWorkerState, r as resetModules, p as provideWorkerState } from './chunks/utils.CG9h5ccR.js';
21
21
  import '@vitest/utils/source-map';
22
22
  import 'node:fs';
23
23
  import 'node:url';
24
24
  import 'pathe';
25
- import './chunks/index.DIWhzsUh.js';
25
+ import './chunks/index.Bt-upxGS.js';
26
26
  import 'node:console';
27
- import './chunks/rpc.jKGRSXIH.js';
27
+ import './chunks/rpc.cD77ENhU.js';
28
28
  import './chunks/index.Bgo3tNWt.js';
29
29
  import '@vitest/utils/helpers';
30
30
  import './path.js';
@@ -33,14 +33,14 @@ import '@vitest/utils/serialize';
33
33
  import './module-evaluator.js';
34
34
  import '@vitest/mocker';
35
35
  import '@vitest/expect';
36
- import './chunks/test.KC5tH8hC.js';
37
- import './chunks/benchmark.LXhJ0F0X.js';
36
+ import './chunks/test.CTuWuHYH.js';
37
+ import './chunks/benchmark.DHKMYAts.js';
38
38
  import '@vitest/runner/utils';
39
39
  import '@vitest/utils/error';
40
40
  import './chunks/coverage.D_JHT54q.js';
41
41
  import '@vitest/snapshot';
42
- import './chunks/_commonjsHelpers.BFTU3MAI.js';
43
42
  import '@vitest/utils/offset';
43
+ import './chunks/_commonjsHelpers.BFTU3MAI.js';
44
44
  import './chunks/date.-jtEtIeV.js';
45
45
  import 'expect-type';
46
46
 
@@ -53,20 +53,19 @@ async function setupGlobalEnv(config, { environment }, moduleRunner) {
53
53
  });
54
54
  const state = getWorkerState();
55
55
  if (!state.config.snapshotOptions.snapshotEnvironment) state.config.snapshotOptions.snapshotEnvironment = await resolveSnapshotEnvironment(config, moduleRunner);
56
- if (globalSetup) return;
57
- globalSetup = true;
58
- const viteEnvironment = environment.viteEnvironment || environment.name;
59
- if (viteEnvironment === "client") {
60
- const _require = createRequire(import.meta.url);
61
- _require.extensions[".css"] = resolveCss, _require.extensions[".scss"] = resolveCss, _require.extensions[".sass"] = resolveCss, _require.extensions[".less"] = resolveCss, KNOWN_ASSET_TYPES.forEach((type) => {
62
- _require.extensions[`.${type}`] = resolveAsset;
63
- }), process.env.SSR = "";
64
- } else process.env.SSR = "1";
65
- if (globalThis.__vitest_required__ = {
66
- util,
67
- timers,
68
- timersPromises
69
- }, !config.disableConsoleIntercept) await setupConsoleLogSpy();
56
+ if (!globalSetup) {
57
+ if (globalSetup = true, (environment.viteEnvironment || environment.name) === "client") {
58
+ const _require = createRequire(import.meta.url);
59
+ _require.extensions[".css"] = resolveCss, _require.extensions[".scss"] = resolveCss, _require.extensions[".sass"] = resolveCss, _require.extensions[".less"] = resolveCss, KNOWN_ASSET_TYPES.forEach((type) => {
60
+ _require.extensions[`.${type}`] = resolveAsset;
61
+ }), process.env.SSR = "";
62
+ } else process.env.SSR = "1";
63
+ if (globalThis.__vitest_required__ = {
64
+ util,
65
+ timers,
66
+ timersPromises
67
+ }, !config.disableConsoleIntercept) await setupConsoleLogSpy();
68
+ }
70
69
  }
71
70
  function resolveCss(mod) {
72
71
  mod.exports = "";
@@ -75,7 +74,7 @@ function resolveAsset(mod, url) {
75
74
  mod.exports = url;
76
75
  }
77
76
  async function setupConsoleLogSpy() {
78
- const { createCustomConsole } = await import('./chunks/console.CiTi59Jy.js');
77
+ const { createCustomConsole } = await import('./chunks/console.CTJL2nuH.js');
79
78
  globalThis.console = createCustomConsole();
80
79
  }
81
80
  async function withEnv({ environment }, options, fn) {
@@ -118,14 +117,13 @@ function startModuleRunner(options) {
118
117
  async function runBaseTests(method, state) {
119
118
  const { ctx } = state;
120
119
  if (state.evaluatedModules = evaluatedModules, state.moduleExecutionInfo = moduleExecutionInfo, provideWorkerState(globalThis, state), ctx.invalidates) ctx.invalidates.forEach((filepath) => {
121
- const modules = state.evaluatedModules.fileToModulesMap.get(filepath) || [];
122
- modules.forEach((module) => {
120
+ (state.evaluatedModules.fileToModulesMap.get(filepath) || []).forEach((module) => {
123
121
  state.evaluatedModules.invalidateModule(module);
124
122
  });
125
123
  });
126
124
  ctx.files.forEach((i) => {
127
- const filepath = typeof i === "string" ? i : i.filepath, modules = state.evaluatedModules.fileToModulesMap.get(filepath) || [];
128
- modules.forEach((module) => {
125
+ const filepath = typeof i === "string" ? i : i.filepath;
126
+ (state.evaluatedModules.fileToModulesMap.get(filepath) || []).forEach((module) => {
129
127
  state.evaluatedModules.invalidateModule(module);
130
128
  });
131
129
  });
package/dist/worker-vm.js CHANGED
@@ -1,10 +1,10 @@
1
- import { c as createForksRpcOptions, u as unwrapSerializableConfig, a as createThreadsRpcOptions, e as execute, t as teardown$1 } from './chunks/worker.rPGLlbkW.js';
1
+ import { c as createForksRpcOptions, u as unwrapSerializableConfig, a as createThreadsRpcOptions, e as execute, t as teardown$1 } from './chunks/worker.DVTUM2IW.js';
2
2
  import v8 from 'node:v8';
3
3
  import { fileURLToPath, pathToFileURL } from 'node:url';
4
4
  import vm, { isContext, runInContext } from 'node:vm';
5
5
  import { dirname, basename, extname, normalize, resolve } from 'pathe';
6
6
  import { distDir } from './path.js';
7
- import { createCustomConsole } from './chunks/console.CiTi59Jy.js';
7
+ import { createCustomConsole } from './chunks/console.CTJL2nuH.js';
8
8
  import fs from 'node:fs';
9
9
  import { createRequire, Module, isBuiltin } from 'node:module';
10
10
  import { toArray, isBareImport } from '@vitest/utils/helpers';
@@ -12,14 +12,14 @@ import { findNearestPackageData } from '@vitest/utils/resolver';
12
12
  import { dirname as dirname$1 } from 'node:path';
13
13
  import { CSS_LANGS_RE, KNOWN_ASSET_RE } from '@vitest/utils/constants';
14
14
  import { getDefaultRequestStubs } from './module-evaluator.js';
15
- import { s as startVitestModuleRunner, c as createNodeImportMeta, a as VITEST_VM_CONTEXT_SYMBOL } from './chunks/startModuleRunner.oAuCu1yL.js';
16
- import { p as provideWorkerState } from './chunks/utils.DGKhod2J.js';
15
+ import { s as startVitestModuleRunner, c as createNodeImportMeta, a as VITEST_VM_CONTEXT_SYMBOL } from './chunks/startModuleRunner.DPBo3mme.js';
16
+ import { p as provideWorkerState } from './chunks/utils.CG9h5ccR.js';
17
17
  import '@vitest/utils/source-map';
18
18
  import 'vite/module-runner';
19
- import './chunks/index.DIWhzsUh.js';
19
+ import './chunks/index.Bt-upxGS.js';
20
20
  import 'node:console';
21
- import './chunks/inspector.CvQD-Nie.js';
22
- import './chunks/rpc.jKGRSXIH.js';
21
+ import './chunks/inspector.Br76Q2Mb.js';
22
+ import './chunks/rpc.cD77ENhU.js';
23
23
  import '@vitest/utils/timers';
24
24
  import './chunks/index.Bgo3tNWt.js';
25
25
  import 'node:stream';
@@ -51,8 +51,7 @@ function interopCommonJsModule(interopDefault, mod) {
51
51
  };
52
52
  }
53
53
  function isPrimitive(obj) {
54
- const isObject = obj != null && (typeof obj === "object" || typeof obj === "function");
55
- return !isObject;
54
+ return !(obj != null && (typeof obj === "object" || typeof obj === "function"));
56
55
  }
57
56
  const SyntheticModule = vm.SyntheticModule;
58
57
  const SourceTextModule = vm.SourceTextModule;
@@ -121,8 +120,7 @@ class CommonjsExecutor {
121
120
  }
122
121
  // exposed for external use, Node.js does the opposite
123
122
  static _load = (request, parent, _isMain) => {
124
- const require = Module$1.createRequire(parent?.filename ?? request);
125
- return require(request);
123
+ return Module$1.createRequire(parent?.filename ?? request)(request);
126
124
  };
127
125
  static wrap = (script) => {
128
126
  return Module$1.wrapper[0] + script + Module$1.wrapper[1];
@@ -172,8 +170,8 @@ class CommonjsExecutor {
172
170
  };
173
171
  createRequire = (filename) => {
174
172
  const _require = createRequire(filename), require = ((id) => {
175
- const resolved = _require.resolve(id), ext = extname(resolved);
176
- if (ext === ".node" || isBuiltin(resolved)) return this.requireCoreModule(resolved);
173
+ const resolved = _require.resolve(id);
174
+ if (extname(resolved) === ".node" || isBuiltin(resolved)) return this.requireCoreModule(resolved);
177
175
  const module = new this.Module(resolved);
178
176
  return this.loadCommonJSModule(module, resolved);
179
177
  });
@@ -203,8 +201,8 @@ class CommonjsExecutor {
203
201
  loadCommonJSModule(module, filename) {
204
202
  const cached = this.requireCache.get(filename);
205
203
  if (cached) return cached.exports;
206
- const extension = this.findLongestRegisteredExtension(filename), loader = this.extensions[extension] || this.extensions[".js"];
207
- return loader(module, filename), module.exports;
204
+ const extension = this.findLongestRegisteredExtension(filename);
205
+ return (this.extensions[extension] || this.extensions[".js"])(module, filename), module.exports;
208
206
  }
209
207
  findLongestRegisteredExtension(filename) {
210
208
  const name = basename(filename);
@@ -275,8 +273,7 @@ class CommonjsExecutor {
275
273
  // return namedExports
276
274
  // }
277
275
  require(identifier) {
278
- const ext = extname(identifier);
279
- if (ext === ".node" || isBuiltin(identifier)) return this.requireCoreModule(identifier);
276
+ if (extname(identifier) === ".node" || isBuiltin(identifier)) return this.requireCoreModule(identifier);
280
277
  const module = new this.Module(identifier);
281
278
  return this.loadCommonJSModule(module, identifier);
282
279
  }
@@ -361,7 +358,8 @@ class EsmExecutor {
361
358
  if (cached) return cached;
362
359
  const wasmModule = await WebAssembly.compile(source), exports = WebAssembly.Module.exports(wasmModule), imports = WebAssembly.Module.imports(wasmModule), moduleLookup = {};
363
360
  for (const { module } of imports) if (moduleLookup[module] === void 0) moduleLookup[module] = await this.executor.resolveModule(module, identifier);
364
- const evaluateModule = (module) => this.evaluateModule(module), syntheticModule = new SyntheticModule(exports.map(({ name }) => name), async function() {
361
+ const evaluateModule = (module) => this.evaluateModule(module);
362
+ return new SyntheticModule(exports.map(({ name }) => name), async function() {
365
363
  const importsObject = {};
366
364
  for (const { module, name } of imports) {
367
365
  if (!importsObject[module]) importsObject[module] = {};
@@ -373,7 +371,6 @@ class EsmExecutor {
373
371
  context: this.context,
374
372
  identifier
375
373
  });
376
- return syntheticModule;
377
374
  }
378
375
  cacheModule(identifier, module) {
379
376
  this.moduleCache.set(identifier, module);
@@ -432,9 +429,7 @@ class ViteExecutor {
432
429
  return this.options.context.__vitest_worker__;
433
430
  }
434
431
  async createViteModule(fileUrl) {
435
- if (fileUrl === CLIENT_FILE || fileUrl === CLIENT_ID) return this.createViteClientModule();
436
- const cached = this.esm.resolveCachedModule(fileUrl);
437
- return cached || this.esm.createEsModule(fileUrl, async () => {
432
+ return fileUrl === CLIENT_FILE || fileUrl === CLIENT_ID ? this.createViteClientModule() : this.esm.resolveCachedModule(fileUrl) || this.esm.createEsModule(fileUrl, async () => {
438
433
  try {
439
434
  const result = await this.options.transform(fileUrl);
440
435
  if (result.code) return result.code;
@@ -545,10 +540,7 @@ class ExternalModulesExecutor {
545
540
  // still experimental on NodeJS --experimental-wasm-modules
546
541
  // cf. ESM_FILE_FORMAT(url) in https://nodejs.org/docs/latest-v20.x/api/esm.html#resolution-algorithm
547
542
  type = "wasm";
548
- else {
549
- const pkgData = findNearestPackageData(normalize(pathUrl));
550
- type = pkgData.type === "module" ? "module" : "commonjs";
551
- }
543
+ else type = findNearestPackageData(normalize(pathUrl)).type === "module" ? "module" : "commonjs";
552
544
  return {
553
545
  type,
554
546
  path: pathUrl,
@@ -571,10 +563,7 @@ class ExternalModulesExecutor {
571
563
  case "module": return this.esm.createEsModule(url, () => this.fs.readFileAsync(path));
572
564
  case "commonjs": return this.cjs.getCjsSyntheticModule(path, identifier);
573
565
  case "network": return this.esm.createNetworkModule(url);
574
- default: {
575
- const _deadend = type;
576
- return _deadend;
577
- }
566
+ default: return type;
578
567
  }
579
568
  }
580
569
  get isNetworkSupported() {
@@ -5,19 +5,19 @@ import timersPromises from 'node:timers/promises';
5
5
  import util from 'node:util';
6
6
  import { startTests, collectTests } from '@vitest/runner';
7
7
  import { KNOWN_ASSET_TYPES } from '@vitest/utils/constants';
8
- import { s as setupChaiConfig, r as resolveTestRunner, a as resolveSnapshotEnvironment } from '../chunks/resolveSnapshotEnvironment.DQVamkje.js';
9
- import { c as setupCommonEnv, s as startCoverageInsideWorker, a as stopCoverageInsideWorker } from '../chunks/setup-common.NAWRuMRP.js';
10
- import { i as index } from '../chunks/index.AZOjjqWP.js';
11
- import { c as closeInspector } from '../chunks/inspector.CvQD-Nie.js';
12
- import { g as getWorkerState } from '../chunks/utils.DGKhod2J.js';
13
- import { g as globalExpect } from '../chunks/vi.CiJ0Laa6.js';
8
+ import { s as setupChaiConfig, r as resolveTestRunner, a as resolveSnapshotEnvironment } from '../chunks/resolveSnapshotEnvironment.BsJpmVZR.js';
9
+ import { c as setupCommonEnv, s as startCoverageInsideWorker, a as stopCoverageInsideWorker } from '../chunks/setup-common.BewgbkTd.js';
10
+ import { i as index } from '../chunks/index.Dnl38iQ_.js';
11
+ import { c as closeInspector } from '../chunks/inspector.Br76Q2Mb.js';
12
+ import { g as getWorkerState } from '../chunks/utils.CG9h5ccR.js';
13
+ import { g as globalExpect } from '../chunks/vi.B2--mG9U.js';
14
14
  import '@vitest/expect';
15
- import '../chunks/rpc.jKGRSXIH.js';
15
+ import '../chunks/rpc.cD77ENhU.js';
16
16
  import '@vitest/utils/timers';
17
17
  import '../chunks/index.Bgo3tNWt.js';
18
- import '../chunks/test.KC5tH8hC.js';
18
+ import '../chunks/test.CTuWuHYH.js';
19
19
  import '@vitest/utils/helpers';
20
- import '../chunks/benchmark.LXhJ0F0X.js';
20
+ import '../chunks/benchmark.DHKMYAts.js';
21
21
  import '@vitest/runner/utils';
22
22
  import '@vitest/utils/error';
23
23
  import 'pathe';
@@ -26,10 +26,10 @@ import '@vitest/snapshot';
26
26
  import 'expect-type';
27
27
  import 'vite/module-runner';
28
28
  import 'node:url';
29
- import '../chunks/_commonjsHelpers.BFTU3MAI.js';
30
29
  import '@vitest/spy';
31
30
  import '@vitest/utils/offset';
32
31
  import '@vitest/utils/source-map';
32
+ import '../chunks/_commonjsHelpers.BFTU3MAI.js';
33
33
  import '../chunks/date.-jtEtIeV.js';
34
34
 
35
35
  async function run(method, files, config, moduleRunner) {
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "vitest",
3
3
  "type": "module",
4
- "version": "4.0.0-beta.11",
4
+ "version": "4.0.0-beta.12",
5
5
  "description": "Next generation testing framework powered by Vite",
6
6
  "author": "Anthony Fu <anthonyfu117@hotmail.com>",
7
7
  "license": "MIT",
8
8
  "funding": "https://opencollective.com/vitest",
9
- "homepage": "https://github.com/vitest-dev/vitest#readme",
9
+ "homepage": "https://vitest.dev",
10
10
  "repository": {
11
11
  "type": "git",
12
12
  "url": "git+https://github.com/vitest-dev/vitest.git",
@@ -117,7 +117,7 @@
117
117
  "dist"
118
118
  ],
119
119
  "engines": {
120
- "node": "^18.0.0 || ^20.0.0 || >=22.0.0"
120
+ "node": "^20.0.0 || ^22.0.0 || >=24.0.0"
121
121
  },
122
122
  "peerDependencies": {
123
123
  "@edge-runtime/vm": "*",
@@ -125,8 +125,8 @@
125
125
  "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0",
126
126
  "happy-dom": "*",
127
127
  "jsdom": "*",
128
- "@vitest/browser": "4.0.0-beta.11",
129
- "@vitest/ui": "4.0.0-beta.11"
128
+ "@vitest/browser": "4.0.0-beta.12",
129
+ "@vitest/ui": "4.0.0-beta.12"
130
130
  },
131
131
  "peerDependenciesMeta": {
132
132
  "@edge-runtime/vm": {
@@ -152,7 +152,7 @@
152
152
  }
153
153
  },
154
154
  "dependencies": {
155
- "debug": "^4.4.1",
155
+ "debug": "^4.4.3",
156
156
  "es-module-lexer": "^1.7.0",
157
157
  "expect-type": "^1.2.2",
158
158
  "magic-string": "^0.30.19",
@@ -166,44 +166,43 @@
166
166
  "tinyrainbow": "^3.0.3",
167
167
  "vite": "^6.0.0 || ^7.0.0-0",
168
168
  "why-is-node-running": "^2.3.0",
169
- "@vitest/expect": "4.0.0-beta.11",
170
- "@vitest/mocker": "4.0.0-beta.11",
171
- "@vitest/pretty-format": "^4.0.0-beta.11",
172
- "@vitest/snapshot": "4.0.0-beta.11",
173
- "@vitest/spy": "4.0.0-beta.11",
174
- "@vitest/utils": "4.0.0-beta.11",
175
- "@vitest/runner": "4.0.0-beta.11"
169
+ "@vitest/expect": "4.0.0-beta.12",
170
+ "@vitest/mocker": "4.0.0-beta.12",
171
+ "@vitest/pretty-format": "4.0.0-beta.12",
172
+ "@vitest/runner": "4.0.0-beta.12",
173
+ "@vitest/snapshot": "4.0.0-beta.12",
174
+ "@vitest/utils": "4.0.0-beta.12",
175
+ "@vitest/spy": "4.0.0-beta.12"
176
176
  },
177
177
  "devDependencies": {
178
178
  "@antfu/install-pkg": "^1.1.0",
179
179
  "@edge-runtime/vm": "^5.0.0",
180
- "@jridgewell/trace-mapping": "0.3.30",
180
+ "@jridgewell/trace-mapping": "0.3.31",
181
181
  "@sinonjs/fake-timers": "14.0.0",
182
182
  "@types/debug": "^4.1.12",
183
183
  "@types/estree": "^1.0.8",
184
184
  "@types/istanbul-lib-coverage": "^2.0.6",
185
185
  "@types/istanbul-reports": "^3.0.4",
186
186
  "@types/jsdom": "^21.1.7",
187
- "@types/node": "^22.18.1",
187
+ "@types/node": "^22.18.6",
188
188
  "@types/picomatch": "^4.0.2",
189
189
  "@types/prompts": "^2.4.9",
190
190
  "@types/sinonjs__fake-timers": "^8.1.5",
191
191
  "acorn-walk": "^8.3.4",
192
192
  "birpc": "^2.5.0",
193
193
  "cac": "^6.7.14",
194
- "chai-subset": "^1.6.0",
195
- "find-up": "^6.3.0",
194
+ "empathic": "^2.0.0",
196
195
  "flatted": "^3.3.3",
197
196
  "happy-dom": "^18.0.1",
198
197
  "jsdom": "^26.1.0",
199
198
  "local-pkg": "^1.1.2",
200
- "mime": "^4.0.7",
199
+ "mime": "^4.1.0",
201
200
  "prompts": "^2.4.2",
202
201
  "strip-literal": "^3.0.0",
203
202
  "ws": "^8.18.3"
204
203
  },
205
204
  "scripts": {
206
- "build": "rimraf dist && rollup -c",
205
+ "build": "premove dist && rollup -c",
207
206
  "dev": "NODE_OPTIONS=\"--max-old-space-size=8192\" rollup -c --watch -m inline"
208
207
  }
209
208
  }