nx 20.0.0-beta.6 → 20.0.0-beta.8
Sign up to get free protection for your applications and to get access to all the features.
- package/bin/init-local.js +0 -39
- package/bin/nx.js +3 -13
- package/migrations.json +5 -0
- package/package.json +11 -11
- package/release/changelog-renderer/index.d.ts +60 -38
- package/release/changelog-renderer/index.js +260 -236
- package/src/adapter/compat.d.ts +1 -1
- package/src/adapter/compat.js +1 -1
- package/src/command-line/add/add.js +2 -2
- package/src/command-line/affected/affected.js +0 -2
- package/src/command-line/nx-commands.js +31 -10
- package/src/command-line/release/changelog.d.ts +2 -2
- package/src/command-line/release/changelog.js +28 -29
- package/src/command-line/release/utils/git.js +2 -2
- package/src/command-line/release/utils/resolve-changelog-renderer.d.ts +2 -2
- package/src/command-line/release/utils/resolve-changelog-renderer.js +3 -3
- package/src/command-line/run/run-one.js +0 -2
- package/src/command-line/run/run.js +0 -1
- package/src/command-line/run-many/run-many.js +1 -4
- package/src/command-line/yargs-utils/shared-options.js +2 -2
- package/src/config/misc-interfaces.d.ts +3 -15
- package/src/config/nx-json.d.ts +4 -3
- package/src/config/project-graph.d.ts +0 -2
- package/src/core/graph/main.js +1 -1
- package/src/daemon/client/client.js +1 -3
- package/src/devkit-exports.d.ts +3 -4
- package/src/devkit-exports.js +3 -6
- package/src/executors/utils/convert-nx-executor.js +0 -1
- package/src/generators/utils/nx-json.d.ts +1 -1
- package/src/migrations/update-20-0-0/move-use-daemon-process.d.ts +2 -0
- package/src/migrations/update-20-0-0/move-use-daemon-process.js +25 -0
- package/src/native/nx.wasm32-wasi.wasm +0 -0
- package/src/plugins/js/project-graph/build-dependencies/target-project-locator.js +2 -12
- package/src/project-graph/build-project-graph.js +3 -41
- package/src/project-graph/error-types.d.ts +4 -10
- package/src/project-graph/error-types.js +1 -12
- package/src/project-graph/file-utils.js +1 -1
- package/src/project-graph/nx-deps-cache.d.ts +0 -1
- package/src/project-graph/nx-deps-cache.js +0 -1
- package/src/project-graph/plugins/internal-api.d.ts +2 -5
- package/src/project-graph/plugins/internal-api.js +0 -1
- package/src/project-graph/plugins/isolation/messaging.d.ts +3 -23
- package/src/project-graph/plugins/isolation/plugin-pool.js +0 -23
- package/src/project-graph/plugins/isolation/plugin-worker.js +0 -19
- package/src/project-graph/plugins/loader.js +2 -3
- package/src/project-graph/plugins/public-api.d.ts +6 -7
- package/src/project-graph/plugins/utils.d.ts +1 -7
- package/src/project-graph/plugins/utils.js +0 -37
- package/src/project-graph/utils/project-configuration-utils.js +1 -1
- package/src/tasks-runner/batch/run-batch.js +0 -1
- package/src/tasks-runner/cache.d.ts +2 -0
- package/src/tasks-runner/cache.js +7 -2
- package/src/tasks-runner/create-task-graph.js +4 -4
- package/src/tasks-runner/init-tasks-runner.js +0 -2
- package/src/tasks-runner/run-command.js +15 -2
- package/src/utils/command-line-utils.d.ts +3 -0
- package/src/utils/command-line-utils.js +24 -33
- package/src/utils/plugins/plugin-capabilities.js +2 -3
- package/src/utils/app-root.d.ts +0 -8
- package/src/utils/app-root.js +0 -12
- package/src/utils/nx-plugin.deprecated.d.ts +0 -31
- package/src/utils/nx-plugin.deprecated.js +0 -20
- package/src/utils/workspace-configuration-check.d.ts +0 -1
- package/src/utils/workspace-configuration-check.js +0 -36
@@ -29,6 +29,7 @@ const command_object_23 = require("./login/command-object");
|
|
29
29
|
const command_object_24 = require("./logout/command-object");
|
30
30
|
const command_objects_1 = require("./deprecated/command-objects");
|
31
31
|
const command_object_25 = require("./sync/command-object");
|
32
|
+
const output_1 = require("../utils/output");
|
32
33
|
// Ensure that the output takes up the available width of the terminal.
|
33
34
|
yargs.wrap(yargs.terminalWidth());
|
34
35
|
exports.parserConfiguration = {
|
@@ -82,26 +83,46 @@ exports.commandsObject = yargs
|
|
82
83
|
.command(command_object_23.yargsLoginCommand)
|
83
84
|
.command(command_object_24.yargsLogoutCommand)
|
84
85
|
.command(resolveConformanceCommandObject())
|
86
|
+
.command(resolveConformanceCheckCommandObject())
|
85
87
|
.scriptName('nx')
|
86
88
|
.help()
|
87
89
|
// NOTE: we handle --version in nx.ts, this just tells yargs that the option exists
|
88
90
|
// so that it shows up in help. The default yargs implementation of --version is not
|
89
91
|
// hit, as the implementation in nx.ts is hit first and calls process.exit(0).
|
90
92
|
.version();
|
93
|
+
function createMissingConformanceCommand(command) {
|
94
|
+
return {
|
95
|
+
command,
|
96
|
+
// Hide from --help output in the common case of not having the plugin installed
|
97
|
+
describe: false,
|
98
|
+
handler: () => {
|
99
|
+
output_1.output.error({
|
100
|
+
title: `${command} is not available`,
|
101
|
+
bodyLines: [
|
102
|
+
`In order to use the \`nx ${command}\` command you must have an active Powerpack license and the \`@nx/powerpack-conformance\` plugin installed.`,
|
103
|
+
'',
|
104
|
+
'To learn more, visit https://nx.dev/features/powerpack/conformance',
|
105
|
+
],
|
106
|
+
});
|
107
|
+
process.exit(1);
|
108
|
+
},
|
109
|
+
};
|
110
|
+
}
|
91
111
|
function resolveConformanceCommandObject() {
|
92
112
|
try {
|
93
113
|
const { yargsConformanceCommand } = require('@nx/powerpack-conformance');
|
94
114
|
return yargsConformanceCommand;
|
95
115
|
}
|
96
|
-
catch
|
97
|
-
return
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
116
|
+
catch {
|
117
|
+
return createMissingConformanceCommand('conformance');
|
118
|
+
}
|
119
|
+
}
|
120
|
+
function resolveConformanceCheckCommandObject() {
|
121
|
+
try {
|
122
|
+
const { yargsConformanceCheckCommand, } = require('@nx/powerpack-conformance');
|
123
|
+
return yargsConformanceCheckCommand;
|
124
|
+
}
|
125
|
+
catch {
|
126
|
+
return createMissingConformanceCommand('conformance:check');
|
106
127
|
}
|
107
128
|
}
|
@@ -22,10 +22,10 @@ export interface ChangelogChange {
|
|
22
22
|
body?: string;
|
23
23
|
isBreaking?: boolean;
|
24
24
|
githubReferences?: Reference[];
|
25
|
-
|
25
|
+
authors?: {
|
26
26
|
name: string;
|
27
27
|
email: string;
|
28
|
-
};
|
28
|
+
}[];
|
29
29
|
shortHash?: string;
|
30
30
|
revertedHashes?: string[];
|
31
31
|
}
|
@@ -162,7 +162,8 @@ function createAPI(overrideReleaseConfig) {
|
|
162
162
|
body: '',
|
163
163
|
isBreaking: releaseType.isBreaking,
|
164
164
|
githubReferences,
|
165
|
-
|
165
|
+
// TODO(JamesHenry): Implement support for Co-authored-by and adding multiple authors
|
166
|
+
authors: [author],
|
166
167
|
affectedProjects: '*',
|
167
168
|
}
|
168
169
|
: vp.triggeredByProjects.map((project) => {
|
@@ -173,7 +174,8 @@ function createAPI(overrideReleaseConfig) {
|
|
173
174
|
body: '',
|
174
175
|
isBreaking: releaseType.isBreaking,
|
175
176
|
githubReferences,
|
176
|
-
|
177
|
+
// TODO(JamesHenry): Implement support for Co-authored-by and adding multiple authors
|
178
|
+
authors: [author],
|
177
179
|
affectedProjects: [project],
|
178
180
|
};
|
179
181
|
});
|
@@ -209,7 +211,7 @@ function createAPI(overrideReleaseConfig) {
|
|
209
211
|
body: c.body,
|
210
212
|
isBreaking: c.isBreaking,
|
211
213
|
githubReferences: c.references,
|
212
|
-
|
214
|
+
authors: [c.author],
|
213
215
|
shortHash: c.shortHash,
|
214
216
|
revertedHashes: c.revertedHashes,
|
215
217
|
affectedProjects: '*',
|
@@ -313,13 +315,14 @@ function createAPI(overrideReleaseConfig) {
|
|
313
315
|
}
|
314
316
|
const releaseType = versionPlanSemverReleaseTypeToChangelogType(bumpForProject);
|
315
317
|
let githubReferences = [];
|
316
|
-
let
|
318
|
+
let authors = [];
|
317
319
|
const parsedCommit = vp.commit
|
318
320
|
? (0, git_1.parseGitCommit)(vp.commit, true)
|
319
321
|
: null;
|
320
322
|
if (parsedCommit) {
|
321
323
|
githubReferences = parsedCommit.references;
|
322
|
-
|
324
|
+
// TODO(JamesHenry): Implement support for Co-authored-by and adding multiple authors
|
325
|
+
authors = [parsedCommit.author];
|
323
326
|
}
|
324
327
|
return {
|
325
328
|
type: releaseType.type,
|
@@ -329,7 +332,7 @@ function createAPI(overrideReleaseConfig) {
|
|
329
332
|
isBreaking: releaseType.isBreaking,
|
330
333
|
affectedProjects: Object.keys(vp.projectVersionBumps),
|
331
334
|
githubReferences,
|
332
|
-
|
335
|
+
authors,
|
333
336
|
};
|
334
337
|
})
|
335
338
|
.filter(Boolean);
|
@@ -365,7 +368,8 @@ function createAPI(overrideReleaseConfig) {
|
|
365
368
|
body: c.body,
|
366
369
|
isBreaking: c.isBreaking,
|
367
370
|
githubReferences: c.references,
|
368
|
-
|
371
|
+
// TODO(JamesHenry): Implement support for Co-authored-by and adding multiple authors
|
372
|
+
authors: [c.author],
|
369
373
|
shortHash: c.shortHash,
|
370
374
|
revertedHashes: c.revertedHashes,
|
371
375
|
affectedProjects: commitChangesNonProjectFiles(c, fileMap.nonProjectFiles)
|
@@ -376,15 +380,12 @@ function createAPI(overrideReleaseConfig) {
|
|
376
380
|
const projectChangelogs = await generateChangelogForProjects({
|
377
381
|
tree,
|
378
382
|
args,
|
379
|
-
projectGraph,
|
380
383
|
changes,
|
381
384
|
projectsVersionData,
|
382
385
|
releaseGroup,
|
383
386
|
projects: [project],
|
384
387
|
nxReleaseConfig,
|
385
388
|
projectToAdditionalDependencyBumps,
|
386
|
-
// TODO: remove this after the changelog renderer is refactored to remove coupling with git commits
|
387
|
-
commits: filterHiddenCommits(commits, nxReleaseConfig.conventionalCommits),
|
388
389
|
});
|
389
390
|
let hasPushed = false;
|
390
391
|
for (const [projectName, projectChangelog] of Object.entries(projectChangelogs)) {
|
@@ -436,7 +437,8 @@ function createAPI(overrideReleaseConfig) {
|
|
436
437
|
body: '',
|
437
438
|
isBreaking: releaseType.isBreaking,
|
438
439
|
githubReferences,
|
439
|
-
|
440
|
+
// TODO(JamesHenry): Implement support for Co-authored-by and adding multiple authors
|
441
|
+
authors: [author],
|
440
442
|
affectedProjects: '*',
|
441
443
|
}
|
442
444
|
: vp.triggeredByProjects.map((project) => {
|
@@ -447,7 +449,8 @@ function createAPI(overrideReleaseConfig) {
|
|
447
449
|
body: '',
|
448
450
|
isBreaking: releaseType.isBreaking,
|
449
451
|
githubReferences,
|
450
|
-
|
452
|
+
// TODO(JamesHenry): Implement support for Co-authored-by and adding multiple authors
|
453
|
+
authors: [author],
|
451
454
|
affectedProjects: [project],
|
452
455
|
};
|
453
456
|
});
|
@@ -482,7 +485,8 @@ function createAPI(overrideReleaseConfig) {
|
|
482
485
|
body: c.body,
|
483
486
|
isBreaking: c.isBreaking,
|
484
487
|
githubReferences: c.references,
|
485
|
-
|
488
|
+
// TODO(JamesHenry): Implement support for Co-authored-by and adding multiple authors
|
489
|
+
authors: [c.author],
|
486
490
|
shortHash: c.shortHash,
|
487
491
|
revertedHashes: c.revertedHashes,
|
488
492
|
affectedProjects: commitChangesNonProjectFiles(c, fileMap.nonProjectFiles)
|
@@ -493,15 +497,12 @@ function createAPI(overrideReleaseConfig) {
|
|
493
497
|
const projectChangelogs = await generateChangelogForProjects({
|
494
498
|
tree,
|
495
499
|
args,
|
496
|
-
projectGraph,
|
497
500
|
changes,
|
498
501
|
projectsVersionData,
|
499
502
|
releaseGroup,
|
500
503
|
projects: projectNodes,
|
501
504
|
nxReleaseConfig,
|
502
505
|
projectToAdditionalDependencyBumps,
|
503
|
-
// TODO: remove this after the changelog renderer is refactored to remove coupling with git commits
|
504
|
-
commits: filterHiddenCommits(commits, nxReleaseConfig.conventionalCommits),
|
505
506
|
});
|
506
507
|
let hasPushed = false;
|
507
508
|
for (const [projectName, projectChangelog] of Object.entries(projectChangelogs)) {
|
@@ -716,7 +717,7 @@ async function generateChangelogForWorkspace({ tree, args, projectGraph, nxRelea
|
|
716
717
|
const interactive = args.interactive === 'all' || args.interactive === 'workspace';
|
717
718
|
const dryRun = !!args.dryRun;
|
718
719
|
const gitRemote = args.gitRemote;
|
719
|
-
const
|
720
|
+
const ChangelogRendererClass = (0, resolve_changelog_renderer_1.resolveChangelogRenderer)(config.renderer);
|
720
721
|
let interpolatedTreePath = config.file || '';
|
721
722
|
if (interpolatedTreePath) {
|
722
723
|
interpolatedTreePath = (0, utils_1.interpolate)(interpolatedTreePath, {
|
@@ -736,18 +737,17 @@ async function generateChangelogForWorkspace({ tree, args, projectGraph, nxRelea
|
|
736
737
|
});
|
737
738
|
}
|
738
739
|
const githubRepoData = (0, github_1.getGitHubRepoData)(gitRemote, config.createRelease);
|
739
|
-
|
740
|
-
projectGraph,
|
740
|
+
const changelogRenderer = new ChangelogRendererClass({
|
741
741
|
changes,
|
742
|
-
|
743
|
-
releaseVersion: releaseVersion.rawVersion,
|
742
|
+
changelogEntryVersion: releaseVersion.rawVersion,
|
744
743
|
project: null,
|
745
|
-
|
744
|
+
isVersionPlans: false,
|
746
745
|
repoData: githubRepoData,
|
747
746
|
entryWhenNoChanges: config.entryWhenNoChanges,
|
748
747
|
changelogRenderOptions: config.renderOptions,
|
749
748
|
conventionalCommitsConfig: nxReleaseConfig.conventionalCommits,
|
750
749
|
});
|
750
|
+
let contents = await changelogRenderer.render();
|
751
751
|
/**
|
752
752
|
* If interactive mode, make the changelog contents available for the user to modify in their editor of choice,
|
753
753
|
* in a similar style to git interactive rebases/merges.
|
@@ -789,7 +789,7 @@ async function generateChangelogForWorkspace({ tree, args, projectGraph, nxRelea
|
|
789
789
|
contents,
|
790
790
|
};
|
791
791
|
}
|
792
|
-
async function generateChangelogForProjects({ tree, args,
|
792
|
+
async function generateChangelogForProjects({ tree, args, changes, projectsVersionData, releaseGroup, projects, nxReleaseConfig, projectToAdditionalDependencyBumps, }) {
|
793
793
|
const config = releaseGroup.changelog;
|
794
794
|
// The entire feature is disabled at the release group level, exit early
|
795
795
|
if (config === false) {
|
@@ -799,7 +799,7 @@ async function generateChangelogForProjects({ tree, args, projectGraph, changes,
|
|
799
799
|
const interactive = args.interactive === 'all' || args.interactive === 'projects';
|
800
800
|
const dryRun = !!args.dryRun;
|
801
801
|
const gitRemote = args.gitRemote;
|
802
|
-
const
|
802
|
+
const ChangelogRendererClass = (0, resolve_changelog_renderer_1.resolveChangelogRenderer)(config.renderer);
|
803
803
|
const projectChangelogs = {};
|
804
804
|
for (const project of projects) {
|
805
805
|
let interpolatedTreePath = config.file || '';
|
@@ -829,13 +829,10 @@ async function generateChangelogForProjects({ tree, args, projectGraph, changes,
|
|
829
829
|
});
|
830
830
|
}
|
831
831
|
const githubRepoData = (0, github_1.getGitHubRepoData)(gitRemote, config.createRelease);
|
832
|
-
|
833
|
-
projectGraph,
|
832
|
+
const changelogRenderer = new ChangelogRendererClass({
|
834
833
|
changes,
|
835
|
-
|
836
|
-
releaseVersion: releaseVersion.rawVersion,
|
834
|
+
changelogEntryVersion: releaseVersion.rawVersion,
|
837
835
|
project: project.name,
|
838
|
-
repoSlug: githubRepoData?.slug,
|
839
836
|
repoData: githubRepoData,
|
840
837
|
entryWhenNoChanges: typeof config.entryWhenNoChanges === 'string'
|
841
838
|
? (0, utils_1.interpolate)(config.entryWhenNoChanges, {
|
@@ -845,11 +842,13 @@ async function generateChangelogForProjects({ tree, args, projectGraph, changes,
|
|
845
842
|
})
|
846
843
|
: false,
|
847
844
|
changelogRenderOptions: config.renderOptions,
|
845
|
+
isVersionPlans: !!releaseGroup.versionPlans,
|
848
846
|
conventionalCommitsConfig: releaseGroup.versionPlans
|
849
847
|
? null
|
850
848
|
: nxReleaseConfig.conventionalCommits,
|
851
849
|
dependencyBumps: projectToAdditionalDependencyBumps.get(project.name),
|
852
850
|
});
|
851
|
+
let contents = await changelogRenderer.render();
|
853
852
|
/**
|
854
853
|
* If interactive mode, make the changelog contents available for the user to modify in their editor of choice,
|
855
854
|
* in a similar style to git interactive rebases/merges.
|
@@ -16,7 +16,7 @@ exports.getFirstGitCommit = getFirstGitCommit;
|
|
16
16
|
* https://github.com/unjs/changelogen
|
17
17
|
*/
|
18
18
|
const utils_1 = require("../../../tasks-runner/utils");
|
19
|
-
const
|
19
|
+
const workspace_root_1 = require("../../../utils/workspace-root");
|
20
20
|
const exec_command_1 = require("./exec-command");
|
21
21
|
function escapeRegExp(string) {
|
22
22
|
return string.replace(/[/\-\\^$*+?.()|[\]{}]/g, '\\$&');
|
@@ -118,7 +118,7 @@ async function getChangedTrackedFiles(cwd) {
|
|
118
118
|
async function gitAdd({ changedFiles, deletedFiles, dryRun, verbose, logFn, cwd, }) {
|
119
119
|
logFn = logFn || console.log;
|
120
120
|
// Default to running git add related commands from the workspace root
|
121
|
-
cwd = cwd ||
|
121
|
+
cwd = cwd || workspace_root_1.workspaceRoot;
|
122
122
|
let ignoredFiles = [];
|
123
123
|
let filesToAdd = [];
|
124
124
|
for (const f of changedFiles ?? []) {
|
@@ -1,2 +1,2 @@
|
|
1
|
-
import type
|
2
|
-
export declare function resolveChangelogRenderer(changelogRendererPath: string): ChangelogRenderer;
|
1
|
+
import type ChangelogRenderer from '../../../../release/changelog-renderer';
|
2
|
+
export declare function resolveChangelogRenderer(changelogRendererPath: string): typeof ChangelogRenderer;
|
@@ -10,7 +10,7 @@ function resolveChangelogRenderer(changelogRendererPath) {
|
|
10
10
|
workspaceRoot: workspace_root_1.workspaceRoot,
|
11
11
|
});
|
12
12
|
// Try and load the provided (or default) changelog renderer
|
13
|
-
let
|
13
|
+
let ChangelogRendererClass;
|
14
14
|
let cleanupTranspiler = () => { };
|
15
15
|
try {
|
16
16
|
const rootTsconfigPath = (0, typescript_1.getRootTsConfigPath)();
|
@@ -18,7 +18,7 @@ function resolveChangelogRenderer(changelogRendererPath) {
|
|
18
18
|
cleanupTranspiler = (0, register_1.registerTsProject)(rootTsconfigPath);
|
19
19
|
}
|
20
20
|
const r = require(interpolatedChangelogRendererPath);
|
21
|
-
|
21
|
+
ChangelogRendererClass = r.default || r;
|
22
22
|
}
|
23
23
|
catch (err) {
|
24
24
|
throw err;
|
@@ -26,5 +26,5 @@ function resolveChangelogRenderer(changelogRendererPath) {
|
|
26
26
|
finally {
|
27
27
|
cleanupTranspiler();
|
28
28
|
}
|
29
|
-
return
|
29
|
+
return ChangelogRendererClass;
|
30
30
|
}
|
@@ -11,7 +11,6 @@ const split_target_1 = require("../../utils/split-target");
|
|
11
11
|
const output_1 = require("../../utils/output");
|
12
12
|
const configuration_1 = require("../../config/configuration");
|
13
13
|
const calculate_default_project_name_1 = require("../../config/calculate-default-project-name");
|
14
|
-
const workspace_configuration_check_1 = require("../../utils/workspace-configuration-check");
|
15
14
|
const graph_1 = require("../graph/graph");
|
16
15
|
async function runOne(cwd, args, extraTargetDependencies = {}, extraOptions = {
|
17
16
|
excludeTaskDependencies: args.excludeTaskDependencies,
|
@@ -19,7 +18,6 @@ async function runOne(cwd, args, extraTargetDependencies = {}, extraOptions = {
|
|
19
18
|
}) {
|
20
19
|
perf_hooks_1.performance.mark('code-loading:end');
|
21
20
|
perf_hooks_1.performance.measure('code-loading', 'init-local', 'code-loading:end');
|
22
|
-
(0, workspace_configuration_check_1.workspaceConfigurationCheck)();
|
23
21
|
const nxJson = (0, configuration_1.readNxJson)();
|
24
22
|
const projectGraph = await (0, project_graph_1.createProjectGraphAsync)();
|
25
23
|
const opts = parseRunOneOptions(cwd, args, projectGraph, nxJson);
|
@@ -100,7 +100,6 @@ async function runExecutorInternal({ project, target, configuration }, overrides
|
|
100
100
|
target: targetConfig,
|
101
101
|
projectsConfigurations,
|
102
102
|
nxJsonConfiguration,
|
103
|
-
workspace: { ...projectsConfigurations, ...nxJsonConfiguration },
|
104
103
|
projectName: project,
|
105
104
|
targetName: target,
|
106
105
|
configurationName: configuration,
|
@@ -4,7 +4,6 @@ exports.runMany = runMany;
|
|
4
4
|
exports.projectsToRun = projectsToRun;
|
5
5
|
const run_command_1 = require("../../tasks-runner/run-command");
|
6
6
|
const command_line_utils_1 = require("../../utils/command-line-utils");
|
7
|
-
const command_line_utils_2 = require("../../utils/command-line-utils");
|
8
7
|
const project_graph_utils_1 = require("../../utils/project-graph-utils");
|
9
8
|
const connect_to_nx_cloud_1 = require("../connect/connect-to-nx-cloud");
|
10
9
|
const perf_hooks_1 = require("perf_hooks");
|
@@ -12,7 +11,6 @@ const project_graph_1 = require("../../project-graph/project-graph");
|
|
12
11
|
const configuration_1 = require("../../config/configuration");
|
13
12
|
const output_1 = require("../../utils/output");
|
14
13
|
const find_matching_projects_1 = require("../../utils/find-matching-projects");
|
15
|
-
const workspace_configuration_check_1 = require("../../utils/workspace-configuration-check");
|
16
14
|
const graph_1 = require("../graph/graph");
|
17
15
|
async function runMany(args, extraTargetDependencies = {}, extraOptions = {
|
18
16
|
excludeTaskDependencies: args.excludeTaskDependencies,
|
@@ -20,9 +18,8 @@ async function runMany(args, extraTargetDependencies = {}, extraOptions = {
|
|
20
18
|
}) {
|
21
19
|
perf_hooks_1.performance.mark('code-loading:end');
|
22
20
|
perf_hooks_1.performance.measure('code-loading', 'init-local', 'code-loading:end');
|
23
|
-
(0, workspace_configuration_check_1.workspaceConfigurationCheck)();
|
24
21
|
const nxJson = (0, configuration_1.readNxJson)();
|
25
|
-
const { nxArgs, overrides } = (0,
|
22
|
+
const { nxArgs, overrides } = (0, command_line_utils_1.splitArgsIntoNxArgsAndOverrides)(args, 'run-many', { printWarnings: args.graph !== 'stdout' }, nxJson);
|
26
23
|
if (nxArgs.verbose) {
|
27
24
|
process.env.NX_VERBOSE_LOGGING = 'true';
|
28
25
|
}
|
@@ -81,9 +81,9 @@ function withRunOptions(yargs) {
|
|
81
81
|
default: false,
|
82
82
|
})
|
83
83
|
.option('skipSync', {
|
84
|
+
describe: 'Skips running the sync generators associated with the tasks.',
|
84
85
|
type: 'boolean',
|
85
|
-
|
86
|
-
hidden: true,
|
86
|
+
default: false,
|
87
87
|
})
|
88
88
|
.options('cloud', {
|
89
89
|
type: 'boolean',
|
@@ -173,16 +173,12 @@ export interface ExecutorContext {
|
|
173
173
|
target?: TargetConfiguration;
|
174
174
|
/**
|
175
175
|
* Projects config
|
176
|
-
*
|
177
|
-
* @todo(vsavkin): mark this as required for v17
|
178
176
|
*/
|
179
|
-
projectsConfigurations
|
177
|
+
projectsConfigurations: ProjectsConfigurations;
|
180
178
|
/**
|
181
179
|
* The contents of nx.json.
|
182
|
-
*
|
183
|
-
* @todo(vsavkin): mark this as required for v17
|
184
180
|
*/
|
185
|
-
nxJsonConfiguration
|
181
|
+
nxJsonConfiguration: NxJsonConfiguration;
|
186
182
|
/**
|
187
183
|
* The current working directory
|
188
184
|
*/
|
@@ -194,19 +190,11 @@ export interface ExecutorContext {
|
|
194
190
|
/**
|
195
191
|
* A snapshot of the project graph as
|
196
192
|
* it existed when the Nx command was kicked off
|
197
|
-
*
|
198
|
-
* @todo(vsavkin) mark this required for v17
|
199
193
|
*/
|
200
|
-
projectGraph
|
194
|
+
projectGraph: ProjectGraph;
|
201
195
|
/**
|
202
196
|
* A snapshot of the task graph as
|
203
197
|
* it existed when the Nx command was kicked off
|
204
198
|
*/
|
205
199
|
taskGraph?: TaskGraph;
|
206
|
-
/**
|
207
|
-
* Deprecated. Use projectsConfigurations or nxJsonConfiguration
|
208
|
-
* The full workspace configuration
|
209
|
-
* @todo(vsavkin): remove after v17
|
210
|
-
*/
|
211
|
-
workspace?: ProjectsConfigurations & NxJsonConfiguration;
|
212
200
|
}
|
package/src/config/nx-json.d.ts
CHANGED
@@ -353,7 +353,8 @@ export interface NxJsonConfiguration<T = '*' | string[]> {
|
|
353
353
|
appsDir?: string;
|
354
354
|
};
|
355
355
|
/**
|
356
|
-
*
|
356
|
+
* @deprecated Custom task runners will no longer be supported in Nx 21. Use Nx Cloud or Nx Powerpack instead.
|
357
|
+
* Available Task Runners for Nx to use
|
357
358
|
*/
|
358
359
|
tasksRunnerOptions?: {
|
359
360
|
[tasksRunnerName: string]: {
|
@@ -463,9 +464,9 @@ export interface NxJsonConfiguration<T = '*' | string[]> {
|
|
463
464
|
*/
|
464
465
|
sync?: NxSyncConfiguration;
|
465
466
|
/**
|
466
|
-
*
|
467
|
+
* Use the legacy file system cache instead of the db cache
|
467
468
|
*/
|
468
|
-
|
469
|
+
useLegacyCache?: boolean;
|
469
470
|
}
|
470
471
|
export type PluginConfiguration = string | ExpandedPluginConfiguration;
|
471
472
|
export type ExpandedPluginConfiguration<T = unknown> = {
|
@@ -61,8 +61,6 @@ export declare enum DependencyType {
|
|
61
61
|
*/
|
62
62
|
implicit = "implicit"
|
63
63
|
}
|
64
|
-
/** @deprecated this type will be removed in v16. Use {@link ProjectGraphProjectNode} or {@link ProjectGraphExternalNode} instead */
|
65
|
-
export type ProjectGraphNode = ProjectGraphProjectNode | ProjectGraphExternalNode;
|
66
64
|
/**
|
67
65
|
* A node describing a project in a workspace
|
68
66
|
*/
|