@nx/vite 16.4.0 → 16.5.0-beta.0

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.
package/migrations.json CHANGED
@@ -23,6 +23,12 @@
23
23
  "version": "16.0.0-beta.1",
24
24
  "description": "Replace @nrwl/vite with @nx/vite",
25
25
  "implementation": "./src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages"
26
+ },
27
+ "update-16-4-1-test-file-config": {
28
+ "version": "16.4.1-beta.0",
29
+ "description": "Changes the testFile config in the vite:test exectutor from a string to an array of strings",
30
+ "cli": "nx",
31
+ "implementation": "./src/migrations/update-16-4-1-update-test-file-config/update-16-4-1-test-file-config"
26
32
  }
27
33
  },
28
34
  "packageJsonUpdates": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nx/vite",
3
- "version": "16.4.0",
3
+ "version": "16.5.0-beta.0",
4
4
  "private": false,
5
5
  "description": "The Nx Plugin for building and testing applications using Vite",
6
6
  "repository": {
@@ -29,9 +29,9 @@
29
29
  "migrations": "./migrations.json"
30
30
  },
31
31
  "dependencies": {
32
- "@nrwl/vite": "16.4.0",
33
- "@nx/devkit": "16.4.0",
34
- "@nx/js": "16.4.0",
32
+ "@nrwl/vite": "16.5.0-beta.0",
33
+ "@nx/devkit": "16.5.0-beta.0",
34
+ "@nx/js": "16.5.0-beta.0",
35
35
  "@phenomnomnominal/tsquery": "~5.0.1",
36
36
  "@swc/helpers": "~0.5.0",
37
37
  "dotenv": "~10.0.0",
@@ -59,5 +59,5 @@
59
59
  "./src/executors/*.impl": "./src/executors/*.impl.js",
60
60
  "./src/executors/*/compat": "./src/executors/*/compat.js"
61
61
  },
62
- "gitHead": "ae698a72748d9f33aa5395aeeaa7b7af436a1dc5"
62
+ "gitHead": "376d656cfc7f6390ff1cd6d9de348baf7bccbf33"
63
63
  }
@@ -8,5 +8,5 @@ export interface VitestExecutorOptions {
8
8
  update?: boolean;
9
9
  reportsDirectory?: string;
10
10
  coverage?: boolean;
11
- testFile?: string;
11
+ testFiles?: string[];
12
12
  }
@@ -57,9 +57,10 @@
57
57
  "type": "string",
58
58
  "description": "Directory to write coverage report to."
59
59
  },
60
- "testFile": {
61
- "description": "The name of the file to test.",
62
- "type": "string"
60
+ "testFiles": {
61
+ "aliases": ["testFile"],
62
+ "type": "array",
63
+ "items": { "type": "string" }
63
64
  }
64
65
  },
65
66
  "required": [],
@@ -57,9 +57,8 @@ async function* vitestExecutor(options, context) {
57
57
  const nxReporter = new NxReporter(options.watch);
58
58
  const settings = await getSettings(options, context, projectRoot);
59
59
  settings.reporters.push(nxReporter);
60
- const cliFilters = options.testFile ? [
61
- options.testFile
62
- ] : [];
60
+ var _options_testFiles;
61
+ const cliFilters = (_options_testFiles = options.testFiles) != null ? _options_testFiles : [];
63
62
  const ctx = await startVitest(options.mode, cliFilters, settings);
64
63
  let hasErrors = false;
65
64
  const processExit = ()=>{
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../packages/vite/src/executors/test/vitest.impl.ts"],"sourcesContent":["import {\n ExecutorContext,\n joinPathFragments,\n logger,\n stripIndents,\n workspaceRoot,\n} from '@nx/devkit';\nimport { CoverageOptions, File, Reporter } from 'vitest';\nimport { loadConfigFromFile } from 'vite';\nimport { VitestExecutorOptions } from './schema';\nimport { relative, resolve } from 'path';\nimport { existsSync } from 'fs';\nimport { registerTsConfigPaths } from '@nx/js/src/internal';\n\nclass NxReporter implements Reporter {\n deferred: {\n promise: Promise<boolean>;\n resolve: (val: boolean) => void;\n };\n\n constructor(private watch: boolean) {\n this.setupDeferred();\n }\n\n async *[Symbol.asyncIterator]() {\n do {\n const hasErrors = await this.deferred.promise;\n yield { hasErrors };\n this.setupDeferred();\n } while (this.watch);\n }\n\n private setupDeferred() {\n let resolve: (val: boolean) => void;\n this.deferred = {\n promise: new Promise((res) => {\n resolve = res;\n }),\n resolve,\n };\n }\n\n onFinished(files: File[], errors?: unknown[]) {\n const hasErrors =\n files.some((f) => f.result?.state === 'fail') || errors?.length > 0;\n this.deferred.resolve(hasErrors);\n }\n}\n\nexport async function* vitestExecutor(\n options: VitestExecutorOptions,\n context: ExecutorContext\n) {\n const projectRoot =\n context.projectsConfigurations.projects[context.projectName].root;\n registerTsConfigPaths(resolve(workspaceRoot, projectRoot, 'tsconfig.json'));\n\n const { startVitest } = await (Function(\n 'return import(\"vitest/node\")'\n )() as Promise<typeof import('vitest/node')>);\n\n const nxReporter = new NxReporter(options.watch);\n const settings = await getSettings(options, context, projectRoot);\n settings.reporters.push(nxReporter);\n const cliFilters = options.testFile ? [options.testFile] : [];\n\n const ctx = await startVitest(options.mode, cliFilters, settings);\n\n let hasErrors = false;\n\n const processExit = () => {\n ctx.exit();\n if (hasErrors) {\n process.exit(1);\n } else {\n process.exit(0);\n }\n };\n\n if (options.watch) {\n process.on('SIGINT', processExit);\n process.on('SIGTERM', processExit);\n process.on('exit', processExit);\n }\n\n for await (const report of nxReporter) {\n // vitest sets the exitCode = 1 when code coverage isn't met\n hasErrors =\n report.hasErrors || (process.exitCode && process.exitCode !== 0);\n }\n\n return {\n success: !hasErrors,\n };\n}\n\nasync function getSettings(\n options: VitestExecutorOptions,\n context: ExecutorContext,\n projectRoot: string\n) {\n const offset = relative(workspaceRoot, context.cwd);\n // if reportsDirectory is not provided vitest will remove all files in the project root\n // when coverage is enabled in the vite.config.ts\n const coverage: CoverageOptions = options.reportsDirectory\n ? {\n enabled: options.coverage,\n reportsDirectory: options.reportsDirectory,\n provider: 'c8',\n }\n : ({} as CoverageOptions);\n\n const viteConfigPath = options.config\n ? options.config // config is expected to be from the workspace root\n : findViteConfig(joinPathFragments(context.root, projectRoot));\n\n const resolvedProjectRoot = resolve(workspaceRoot, projectRoot);\n const resolvedViteConfigPath = resolve(\n workspaceRoot,\n projectRoot,\n relative(resolvedProjectRoot, viteConfigPath)\n );\n\n const resolved = await loadConfigFromFile(\n {\n mode: options.mode,\n command: 'serve',\n },\n resolvedViteConfigPath,\n resolvedProjectRoot\n );\n\n if (!viteConfigPath || !resolved?.config?.['test']) {\n logger.warn(stripIndents`Unable to load test config from config file ${\n resolved?.path ?? viteConfigPath\n }\nSome settings may not be applied as expected.\nYou can manually set the config in the project, ${\n context.projectName\n }, configuration.\n `);\n }\n\n const settings = {\n ...options,\n // when running nx from the project root, the root will get appended to the cwd.\n // creating an invalid path and no tests will be found.\n // instead if we are not at the root, let the cwd be root.\n root: offset === '' ? resolvedProjectRoot : workspaceRoot,\n config: resolvedViteConfigPath,\n reporters: [\n ...(options.reporters ?? []),\n ...((resolved?.config?.['test']?.reporters as string[]) ?? []),\n 'default',\n ] as (string | Reporter)[],\n coverage: { ...coverage, ...resolved?.config?.['test']?.coverage },\n };\n\n return settings;\n}\n\nfunction findViteConfig(projectRootFullPath: string): string {\n const allowsExt = ['js', 'mjs', 'ts', 'cjs', 'mts', 'cts'];\n\n for (const ext of allowsExt) {\n if (\n existsSync(joinPathFragments(projectRootFullPath, `vite.config.${ext}`))\n ) {\n return joinPathFragments(projectRootFullPath, `vite.config.${ext}`);\n }\n }\n}\n\nexport default vitestExecutor;\n"],"names":["vitestExecutor","NxReporter","Symbol","asyncIterator","hasErrors","deferred","promise","setupDeferred","watch","resolve","Promise","res","onFinished","files","errors","some","f","result","state","length","constructor","options","context","projectRoot","projectsConfigurations","projects","projectName","root","registerTsConfigPaths","workspaceRoot","startVitest","Function","nxReporter","settings","getSettings","reporters","push","cliFilters","testFile","ctx","mode","processExit","exit","process","on","report","exitCode","success","resolved","offset","relative","cwd","coverage","reportsDirectory","enabled","provider","viteConfigPath","config","findViteConfig","joinPathFragments","resolvedProjectRoot","resolvedViteConfigPath","loadConfigFromFile","command","logger","warn","stripIndents","path","projectRootFullPath","allowsExt","ext","existsSync"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../../../packages/vite/src/executors/test/vitest.impl.ts"],"sourcesContent":["import {\n ExecutorContext,\n joinPathFragments,\n logger,\n stripIndents,\n workspaceRoot,\n} from '@nx/devkit';\nimport { CoverageOptions, File, Reporter } from 'vitest';\nimport { loadConfigFromFile } from 'vite';\nimport { VitestExecutorOptions } from './schema';\nimport { relative, resolve } from 'path';\nimport { existsSync } from 'fs';\nimport { registerTsConfigPaths } from '@nx/js/src/internal';\n\nclass NxReporter implements Reporter {\n deferred: {\n promise: Promise<boolean>;\n resolve: (val: boolean) => void;\n };\n\n constructor(private watch: boolean) {\n this.setupDeferred();\n }\n\n async *[Symbol.asyncIterator]() {\n do {\n const hasErrors = await this.deferred.promise;\n yield { hasErrors };\n this.setupDeferred();\n } while (this.watch);\n }\n\n private setupDeferred() {\n let resolve: (val: boolean) => void;\n this.deferred = {\n promise: new Promise((res) => {\n resolve = res;\n }),\n resolve,\n };\n }\n\n onFinished(files: File[], errors?: unknown[]) {\n const hasErrors =\n files.some((f) => f.result?.state === 'fail') || errors?.length > 0;\n this.deferred.resolve(hasErrors);\n }\n}\n\nexport async function* vitestExecutor(\n options: VitestExecutorOptions,\n context: ExecutorContext\n) {\n const projectRoot =\n context.projectsConfigurations.projects[context.projectName].root;\n registerTsConfigPaths(resolve(workspaceRoot, projectRoot, 'tsconfig.json'));\n\n const { startVitest } = await (Function(\n 'return import(\"vitest/node\")'\n )() as Promise<typeof import('vitest/node')>);\n\n const nxReporter = new NxReporter(options.watch);\n const settings = await getSettings(options, context, projectRoot);\n settings.reporters.push(nxReporter);\n const cliFilters = options.testFiles ?? [];\n\n const ctx = await startVitest(options.mode, cliFilters, settings);\n\n let hasErrors = false;\n\n const processExit = () => {\n ctx.exit();\n if (hasErrors) {\n process.exit(1);\n } else {\n process.exit(0);\n }\n };\n\n if (options.watch) {\n process.on('SIGINT', processExit);\n process.on('SIGTERM', processExit);\n process.on('exit', processExit);\n }\n\n for await (const report of nxReporter) {\n // vitest sets the exitCode = 1 when code coverage isn't met\n hasErrors =\n report.hasErrors || (process.exitCode && process.exitCode !== 0);\n }\n\n return {\n success: !hasErrors,\n };\n}\n\nasync function getSettings(\n options: VitestExecutorOptions,\n context: ExecutorContext,\n projectRoot: string\n) {\n const offset = relative(workspaceRoot, context.cwd);\n // if reportsDirectory is not provided vitest will remove all files in the project root\n // when coverage is enabled in the vite.config.ts\n const coverage: CoverageOptions = options.reportsDirectory\n ? {\n enabled: options.coverage,\n reportsDirectory: options.reportsDirectory,\n provider: 'c8',\n }\n : ({} as CoverageOptions);\n\n const viteConfigPath = options.config\n ? options.config // config is expected to be from the workspace root\n : findViteConfig(joinPathFragments(context.root, projectRoot));\n\n const resolvedProjectRoot = resolve(workspaceRoot, projectRoot);\n const resolvedViteConfigPath = resolve(\n workspaceRoot,\n projectRoot,\n relative(resolvedProjectRoot, viteConfigPath)\n );\n\n const resolved = await loadConfigFromFile(\n {\n mode: options.mode,\n command: 'serve',\n },\n resolvedViteConfigPath,\n resolvedProjectRoot\n );\n\n if (!viteConfigPath || !resolved?.config?.['test']) {\n logger.warn(stripIndents`Unable to load test config from config file ${\n resolved?.path ?? viteConfigPath\n }\nSome settings may not be applied as expected.\nYou can manually set the config in the project, ${\n context.projectName\n }, configuration.\n `);\n }\n\n const settings = {\n ...options,\n // when running nx from the project root, the root will get appended to the cwd.\n // creating an invalid path and no tests will be found.\n // instead if we are not at the root, let the cwd be root.\n root: offset === '' ? resolvedProjectRoot : workspaceRoot,\n config: resolvedViteConfigPath,\n reporters: [\n ...(options.reporters ?? []),\n ...((resolved?.config?.['test']?.reporters as string[]) ?? []),\n 'default',\n ] as (string | Reporter)[],\n coverage: { ...coverage, ...resolved?.config?.['test']?.coverage },\n };\n\n return settings;\n}\n\nfunction findViteConfig(projectRootFullPath: string): string {\n const allowsExt = ['js', 'mjs', 'ts', 'cjs', 'mts', 'cts'];\n\n for (const ext of allowsExt) {\n if (\n existsSync(joinPathFragments(projectRootFullPath, `vite.config.${ext}`))\n ) {\n return joinPathFragments(projectRootFullPath, `vite.config.${ext}`);\n }\n }\n}\n\nexport default vitestExecutor;\n"],"names":["vitestExecutor","NxReporter","Symbol","asyncIterator","hasErrors","deferred","promise","setupDeferred","watch","resolve","Promise","res","onFinished","files","errors","some","f","result","state","length","constructor","options","context","projectRoot","projectsConfigurations","projects","projectName","root","registerTsConfigPaths","workspaceRoot","startVitest","Function","nxReporter","settings","getSettings","reporters","push","cliFilters","testFiles","ctx","mode","processExit","exit","process","on","report","exitCode","success","resolved","offset","relative","cwd","coverage","reportsDirectory","enabled","provider","viteConfigPath","config","findViteConfig","joinPathFragments","resolvedProjectRoot","resolvedViteConfigPath","loadConfigFromFile","command","logger","warn","stripIndents","path","projectRootFullPath","allowsExt","ext","existsSync"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { Tree } from '@nx/devkit';
2
+ export default function update(tree: Tree): void;
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "default", {
3
+ enumerable: true,
4
+ get: function() {
5
+ return update;
6
+ }
7
+ });
8
+ const _extends = require("@swc/helpers/_/_extends");
9
+ const _devkit = require("@nx/devkit");
10
+ const _executoroptionsutils = require("@nx/devkit/src/generators/executor-options-utils");
11
+ function update(tree) {
12
+ const projects = (0, _devkit.getProjects)(tree);
13
+ (0, _executoroptionsutils.forEachExecutorOptions)(tree, '@nx/vite:test', (options, projectName, targetName, configuration)=>{
14
+ const projectConfig = projects.get(projectName);
15
+ if (!options.testFile) {
16
+ return;
17
+ }
18
+ const newTestFileArgs = [
19
+ options.testFile
20
+ ];
21
+ delete options.testFile;
22
+ if (configuration) {
23
+ projectConfig.targets[targetName].configurations[configuration] = _extends._({}, options, {
24
+ testFiles: newTestFileArgs
25
+ });
26
+ } else {
27
+ projectConfig.targets[targetName].options = _extends._({}, options, {
28
+ testFiles: newTestFileArgs
29
+ });
30
+ }
31
+ (0, _devkit.updateProjectConfiguration)(tree, projectName, projectConfig);
32
+ });
33
+ }
34
+
35
+ //# sourceMappingURL=update-16-4-1-test-file-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../packages/vite/src/migrations/update-16-4-1-update-test-file-config/update-16-4-1-test-file-config.ts"],"sourcesContent":["import { Tree, getProjects, updateProjectConfiguration } from '@nx/devkit';\nimport { forEachExecutorOptions } from '@nx/devkit/src/generators/executor-options-utils';\nimport { VitestExecutorOptions } from '../../executors/test/schema';\n\ntype OldVitestExecutorOptions = Omit<VitestExecutorOptions, 'testFiles'> & {\n testFile: string;\n};\n\nexport default function update(tree: Tree) {\n const projects = getProjects(tree);\n\n forEachExecutorOptions<OldVitestExecutorOptions>(\n tree,\n '@nx/vite:test',\n (options, projectName, targetName, configuration) => {\n const projectConfig = projects.get(projectName);\n\n if (!options.testFile) {\n return;\n }\n\n const newTestFileArgs = [options.testFile];\n\n delete options.testFile;\n\n if (configuration) {\n projectConfig.targets[targetName].configurations[configuration] = {\n ...options,\n testFiles: newTestFileArgs,\n };\n } else {\n projectConfig.targets[targetName].options = {\n ...options,\n testFiles: newTestFileArgs,\n };\n }\n\n updateProjectConfiguration(tree, projectName, projectConfig);\n }\n );\n}\n"],"names":["update","tree","projects","getProjects","forEachExecutorOptions","options","projectName","targetName","configuration","projectConfig","get","testFile","newTestFileArgs","targets","configurations","testFiles","updateProjectConfiguration"],"mappings":";+BAQA;;;eAAwBA;;;;wBARsC;sCACvB;AAOxB,SAASA,OAAOC,IAAU,EAAE;IACzC,MAAMC,WAAWC,IAAAA,mBAAW,EAACF;IAE7BG,IAAAA,4CAAsB,EACpBH,MACA,iBACA,CAACI,SAASC,aAAaC,YAAYC,gBAAkB;QACnD,MAAMC,gBAAgBP,SAASQ,GAAG,CAACJ;QAEnC,IAAI,CAACD,QAAQM,QAAQ,EAAE;YACrB;QACF,CAAC;QAED,MAAMC,kBAAkB;YAACP,QAAQM,QAAQ;SAAC;QAE1C,OAAON,QAAQM,QAAQ;QAEvB,IAAIH,eAAe;YACjBC,cAAcI,OAAO,CAACN,WAAW,CAACO,cAAc,CAACN,cAAc,GAAG,eAC7DH;gBACHU,WAAWH;;QAEf,OAAO;YACLH,cAAcI,OAAO,CAACN,WAAW,CAACF,OAAO,GAAG,eACvCA;gBACHU,WAAWH;;QAEf,CAAC;QAEDI,IAAAA,kCAA0B,EAACf,MAAMK,aAAaG;IAChD;AAEJ"}