nx 21.4.0-canary.20250725-0359f0d → 21.4.0-canary.20250729-c2d0ecf

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 (87) hide show
  1. package/.eslintrc.json +2 -0
  2. package/bin/nx.js +6 -6
  3. package/bin/post-install.js +8 -22
  4. package/package.json +12 -11
  5. package/schemas/nx-schema.json +77 -0
  6. package/src/command-line/init/implementation/utils.d.ts.map +1 -1
  7. package/src/command-line/init/implementation/utils.js +1 -2
  8. package/src/command-line/nx-cloud/connect/command-object.d.ts.map +1 -1
  9. package/src/command-line/nx-cloud/connect/command-object.js +2 -1
  10. package/src/command-line/nx-cloud/connect/connect-to-nx-cloud.d.ts +1 -0
  11. package/src/command-line/nx-cloud/connect/connect-to-nx-cloud.d.ts.map +1 -1
  12. package/src/command-line/nx-cloud/connect/connect-to-nx-cloud.js +14 -2
  13. package/src/command-line/nx-cloud/connect/view-logs.d.ts.map +1 -1
  14. package/src/command-line/nx-cloud/connect/view-logs.js +3 -5
  15. package/src/command-line/release/changelog.d.ts.map +1 -1
  16. package/src/command-line/release/changelog.js +6 -2
  17. package/src/command-line/release/command-object.d.ts +1 -0
  18. package/src/command-line/release/command-object.d.ts.map +1 -1
  19. package/src/command-line/release/command-object.js +4 -0
  20. package/src/command-line/release/config/config.d.ts +10 -3
  21. package/src/command-line/release/config/config.d.ts.map +1 -1
  22. package/src/command-line/release/config/config.js +103 -0
  23. package/src/command-line/release/config/filter-release-groups.d.ts +5 -1
  24. package/src/command-line/release/config/filter-release-groups.d.ts.map +1 -1
  25. package/src/command-line/release/release.d.ts.map +1 -1
  26. package/src/command-line/release/release.js +6 -1
  27. package/src/command-line/release/utils/shared.d.ts +9 -0
  28. package/src/command-line/release/utils/shared.d.ts.map +1 -1
  29. package/src/command-line/release/utils/shared.js +25 -4
  30. package/src/command-line/release/version/project-logger.d.ts.map +1 -1
  31. package/src/command-line/release/version/project-logger.js +1 -0
  32. package/src/command-line/release/version/release-group-processor.d.ts +6 -1
  33. package/src/command-line/release/version/release-group-processor.d.ts.map +1 -1
  34. package/src/command-line/release/version/release-group-processor.js +73 -3
  35. package/src/command-line/release/version/version-actions.d.ts +21 -0
  36. package/src/command-line/release/version/version-actions.d.ts.map +1 -1
  37. package/src/command-line/release/version/version-actions.js +32 -1
  38. package/src/command-line/release/version.d.ts.map +1 -1
  39. package/src/command-line/release/version.js +42 -11
  40. package/src/command-line/sync/sync.d.ts.map +1 -1
  41. package/src/command-line/sync/sync.js +8 -2
  42. package/src/config/nx-json.d.ts +58 -0
  43. package/src/config/nx-json.d.ts.map +1 -1
  44. package/src/config/workspace-json-project-json.d.ts +2 -1
  45. package/src/config/workspace-json-project-json.d.ts.map +1 -1
  46. package/src/core/graph/main.js +1 -1
  47. package/src/daemon/server/handle-get-sync-generator-changes.d.ts.map +1 -1
  48. package/src/daemon/server/handle-get-sync-generator-changes.js +1 -0
  49. package/src/native/index.d.ts +1 -0
  50. package/src/native/nx.wasm32-wasi.wasm +0 -0
  51. package/src/nx-cloud/generators/connect-to-nx-cloud/connect-to-nx-cloud.d.ts +1 -1
  52. package/src/nx-cloud/generators/connect-to-nx-cloud/connect-to-nx-cloud.d.ts.map +1 -1
  53. package/src/nx-cloud/generators/connect-to-nx-cloud/connect-to-nx-cloud.js +5 -3
  54. package/src/nx-cloud/utilities/onboarding.d.ts.map +1 -1
  55. package/src/nx-cloud/utilities/onboarding.js +1 -1
  56. package/src/nx-cloud/utilities/url-shorten.d.ts +1 -2
  57. package/src/nx-cloud/utilities/url-shorten.d.ts.map +1 -1
  58. package/src/nx-cloud/utilities/url-shorten.js +17 -21
  59. package/src/plugins/js/index.d.ts.map +1 -1
  60. package/src/plugins/js/index.js +10 -16
  61. package/src/plugins/js/lock-file/bun-parser.d.ts +15 -0
  62. package/src/plugins/js/lock-file/bun-parser.d.ts.map +1 -0
  63. package/src/plugins/js/lock-file/bun-parser.js +964 -0
  64. package/src/plugins/js/lock-file/lock-file.d.ts +2 -2
  65. package/src/plugins/js/lock-file/lock-file.d.ts.map +1 -1
  66. package/src/plugins/js/lock-file/lock-file.js +40 -17
  67. package/src/plugins/js/lock-file/pnpm-parser.js +2 -1
  68. package/src/project-graph/utils/normalize-project-nodes.d.ts +5 -5
  69. package/src/project-graph/utils/normalize-project-nodes.d.ts.map +1 -1
  70. package/src/project-graph/utils/normalize-project-nodes.js +35 -6
  71. package/src/tasks-runner/life-cycle.d.ts +2 -0
  72. package/src/tasks-runner/life-cycle.d.ts.map +1 -1
  73. package/src/tasks-runner/life-cycle.js +7 -0
  74. package/src/tasks-runner/task-orchestrator.d.ts.map +1 -1
  75. package/src/tasks-runner/task-orchestrator.js +5 -0
  76. package/src/tasks-runner/tasks-schedule.d.ts +1 -0
  77. package/src/tasks-runner/tasks-schedule.d.ts.map +1 -1
  78. package/src/tasks-runner/tasks-schedule.js +3 -0
  79. package/src/utils/ab-testing.d.ts +1 -1
  80. package/src/utils/ab-testing.d.ts.map +1 -1
  81. package/src/utils/ab-testing.js +1 -1
  82. package/src/utils/git-utils.d.ts +6 -5
  83. package/src/utils/git-utils.d.ts.map +1 -1
  84. package/src/utils/git-utils.js +73 -41
  85. package/src/utils/sync-generators.d.ts +3 -1
  86. package/src/utils/sync-generators.d.ts.map +1 -1
  87. package/src/utils/sync-generators.js +7 -1
@@ -139,9 +139,56 @@ async function createNxReleaseConfig(projectGraph, projectFileMap, userConfig =
139
139
  (userConfig.projectsRelationship === 'independent' &&
140
140
  !userGroups.some((g) => g.projectsRelationship === 'fixed'));
141
141
  const defaultRendererPath = (0, node_path_1.join)(__dirname, '../../../../release/changelog-renderer');
142
+ // Helper function to create meaningful docker defaults when user opts in
143
+ function createDockerDefaults(userDockerConfig) {
144
+ const defaultVersionSchemes = {
145
+ production: '{currentDate|YYMM.DD}.{shortCommitSha}',
146
+ hotfix: '{currentDate|YYMM.DD}.{shortCommitSha}-hotfix',
147
+ };
148
+ const defaultPreVersionCommand = 'npx nx run-many -t docker:build';
149
+ // If user explicitly sets docker: true, apply meaningful defaults
150
+ if (userDockerConfig === true) {
151
+ return {
152
+ preVersionCommand: defaultPreVersionCommand,
153
+ skipVersionActions: undefined,
154
+ versionSchemes: defaultVersionSchemes,
155
+ repositoryName: undefined,
156
+ registryUrl: undefined,
157
+ };
158
+ }
159
+ // If user provides docker configuration object, merge with base defaults
160
+ return {
161
+ preVersionCommand: userDockerConfig.preVersionCommand ?? defaultPreVersionCommand,
162
+ skipVersionActions: userDockerConfig.skipVersionActions
163
+ ? Array.isArray(userDockerConfig.skipVersionActions)
164
+ ? (0, find_matching_projects_1.findMatchingProjects)(userDockerConfig.skipVersionActions, projectGraph.nodes)
165
+ : userDockerConfig.skipVersionActions
166
+ : undefined,
167
+ versionSchemes: userDockerConfig.versionSchemes ?? defaultVersionSchemes,
168
+ repositoryName: userDockerConfig.repositoryName,
169
+ registryUrl: userDockerConfig.registryUrl,
170
+ };
171
+ }
172
+ // Helper function to normalize docker config at group level
173
+ function normalizeDockerConfig(dockerConfig) {
174
+ // If user explicitly sets docker: true at group level, apply meaningful defaults
175
+ if (dockerConfig === true) {
176
+ return createDockerDefaults(true);
177
+ }
178
+ // If user provides docker configuration object at group level, return it
179
+ if (dockerConfig && typeof dockerConfig === 'object') {
180
+ return createDockerDefaults(dockerConfig);
181
+ }
182
+ // No group-level docker config
183
+ return undefined;
184
+ }
142
185
  const WORKSPACE_DEFAULTS = {
143
186
  // By default all projects in all groups are released together
144
187
  projectsRelationship: workspaceProjectsRelationship,
188
+ // Create docker defaults only if user has explicitly configured it, otherwise undefined
189
+ docker: userConfig.docker !== undefined
190
+ ? createDockerDefaults(userConfig.docker)
191
+ : undefined,
145
192
  git: gitDefaults,
146
193
  version: {
147
194
  useLegacyVersioning: USE_LEGACY_VERSIONING,
@@ -218,8 +265,16 @@ async function createNxReleaseConfig(projectGraph, projectFileMap, userConfig =
218
265
  WORKSPACE_DEFAULTS.releaseTagPatternRequireSemver;
219
266
  const groupReleaseTagPatternStrictPreid = userConfig.releaseTagPatternStrictPreid ??
220
267
  defaultReleaseTagPatternStrictPreid;
268
+ const groupDocker = normalizeDockerConfig(userConfig.docker ?? WORKSPACE_DEFAULTS.docker);
221
269
  const GROUP_DEFAULTS = {
222
270
  projectsRelationship: groupProjectsRelationship,
271
+ // Only include docker configuration if user has explicitly configured it
272
+ docker: groupDocker && Object.keys(groupDocker).length > 0
273
+ ? {
274
+ ...groupDocker,
275
+ groupPreVersionCommand: '',
276
+ }
277
+ : undefined,
223
278
  version: USE_LEGACY_VERSIONING
224
279
  ? {
225
280
  conventionalCommits: false,
@@ -270,6 +325,10 @@ async function createNxReleaseConfig(projectGraph, projectFileMap, userConfig =
270
325
  git: userConfig.git,
271
326
  },
272
327
  ], userConfig.version);
328
+ const rootDockerConfig = userConfig.docker && {
329
+ ...normalizeDockerConfig(WORKSPACE_DEFAULTS.docker),
330
+ ...normalizeDockerConfig(userConfig.docker),
331
+ };
273
332
  if (userConfig.changelog?.workspaceChangelog) {
274
333
  userConfig.changelog.workspaceChangelog = normalizeTrueToEmptyObject(userConfig.changelog.workspaceChangelog);
275
334
  }
@@ -333,6 +392,8 @@ async function createNxReleaseConfig(projectGraph, projectFileMap, userConfig =
333
392
  delete rootVersionWithoutGlobalOptions
334
393
  .specifierSource;
335
394
  }
395
+ const rootDockerWithoutGlobalOptions = { ...rootDockerConfig };
396
+ delete rootDockerWithoutGlobalOptions.preVersionCommand;
336
397
  const groups = userConfig.groups && Object.keys(userConfig.groups).length
337
398
  ? ensureProjectsConfigIsArray(userConfig.groups)
338
399
  : /**
@@ -342,6 +403,10 @@ async function createNxReleaseConfig(projectGraph, projectFileMap, userConfig =
342
403
  {
343
404
  [exports.IMPLICIT_DEFAULT_RELEASE_GROUP]: {
344
405
  projectsRelationship: GROUP_DEFAULTS.projectsRelationship,
406
+ // Only include docker configuration if user has explicitly configured it
407
+ docker: Object.keys(rootDockerWithoutGlobalOptions).length > 0
408
+ ? deepMergeDefaults([GROUP_DEFAULTS.docker], rootDockerWithoutGlobalOptions)
409
+ : undefined,
345
410
  projects: userConfig.projects
346
411
  ? // user-defined top level "projects" config takes priority if set
347
412
  (0, find_matching_projects_1.findMatchingProjects)(ensureArray(userConfig.projects), projectGraph.nodes)
@@ -414,8 +479,21 @@ async function createNxReleaseConfig(projectGraph, projectFileMap, userConfig =
414
479
  if (releaseGroup.changelog) {
415
480
  releaseGroup.changelog = normalizeTrueToEmptyObject(releaseGroup.changelog);
416
481
  }
482
+ const normalizedGroupDockerConfig = normalizeDockerConfig(releaseGroup.docker);
483
+ // Only include docker configuration if user has explicitly configured it at root or group level
484
+ const shouldIncludeDockerConfig = Object.keys(rootDockerWithoutGlobalOptions).length > 0 ||
485
+ normalizedGroupDockerConfig !== undefined;
417
486
  const groupDefaults = {
418
487
  projectsRelationship,
488
+ // Only include docker configuration if user has explicitly configured it
489
+ docker: shouldIncludeDockerConfig
490
+ ? {
491
+ ...GROUP_DEFAULTS.docker,
492
+ ...rootDockerWithoutGlobalOptions,
493
+ groupPreVersionCommand: '',
494
+ ...releaseGroup.docker,
495
+ }
496
+ : undefined,
419
497
  projects: matchingProjects,
420
498
  version: deepMergeDefaults(
421
499
  // First apply any group level defaults, then apply actual root level config, then group level config
@@ -450,6 +528,10 @@ async function createNxReleaseConfig(projectGraph, projectFileMap, userConfig =
450
528
  });
451
529
  finalReleaseGroup.version =
452
530
  finalReleaseGroup.version;
531
+ // Clean up docker global options that are not supported at the group level
532
+ if (finalReleaseGroup.docker) {
533
+ delete finalReleaseGroup.docker.preVersionCommand;
534
+ }
453
535
  // Apply conventionalCommits shorthand to the final group if explicitly configured in the original group
454
536
  if (releaseGroup.version?.conventionalCommits === true) {
455
537
  if (USE_LEGACY_VERSIONING) {
@@ -501,6 +583,22 @@ async function createNxReleaseConfig(projectGraph, projectFileMap, userConfig =
501
583
  }
502
584
  releaseGroups[releaseGroupName] = finalReleaseGroup;
503
585
  }
586
+ // Infer docker-related properties based on project configurations
587
+ for (const [releaseGroupName, releaseGroup] of Object.entries(releaseGroups)) {
588
+ const hasDockerProjects = releaseGroup.projects.some((projectName) => {
589
+ const projectNode = projectGraph.nodes[projectName];
590
+ // Check if project has meaningful docker config (not just undefined/empty values)
591
+ const projectDockerConfig = projectNode?.data.release?.docker;
592
+ const hasProjectDockerConfig = projectDockerConfig !== undefined;
593
+ // Check if release group has docker config at all (since we now only include it when explicitly configured)
594
+ const hasGroupDockerConfig = !!releaseGroup.docker;
595
+ return hasProjectDockerConfig || hasGroupDockerConfig;
596
+ });
597
+ if (hasDockerProjects) {
598
+ // If any project in the group has docker configuration, disable semver requirement
599
+ releaseGroup.releaseTagPatternRequireSemver = false;
600
+ }
601
+ }
504
602
  const configError = validateChangelogConfig(releaseGroups, rootChangelogConfig);
505
603
  if (configError) {
506
604
  return {
@@ -512,11 +610,16 @@ async function createNxReleaseConfig(projectGraph, projectFileMap, userConfig =
512
610
  error: null,
513
611
  nxReleaseConfig: {
514
612
  projectsRelationship: WORKSPACE_DEFAULTS.projectsRelationship,
613
+ // Only include docker configuration if user has explicitly configured it
614
+ ...(WORKSPACE_DEFAULTS.docker
615
+ ? { docker: WORKSPACE_DEFAULTS.docker }
616
+ : {}),
515
617
  releaseTagPattern: WORKSPACE_DEFAULTS.releaseTagPattern,
516
618
  releaseTagPatternCheckAllBranchesWhen: WORKSPACE_DEFAULTS.releaseTagPatternCheckAllBranchesWhen,
517
619
  releaseTagPatternRequireSemver: WORKSPACE_DEFAULTS.releaseTagPatternRequireSemver,
518
620
  releaseTagPatternStrictPreid: WORKSPACE_DEFAULTS.releaseTagPatternStrictPreid,
519
621
  git: rootGitConfig,
622
+ docker: rootDockerConfig,
520
623
  version: rootVersionConfig,
521
624
  changelog: rootChangelogConfig,
522
625
  groups: releaseGroups,
@@ -1,9 +1,13 @@
1
1
  import { ProjectGraph } from '../../../config/project-graph';
2
2
  import { NxReleaseConfig } from './config';
3
3
  import { GroupVersionPlan, ProjectsVersionPlan } from './version-plans';
4
- export type ReleaseGroupWithName = NxReleaseConfig['groups'][string] & {
4
+ import { NxReleaseDockerConfiguration } from '../../../config/nx-json';
5
+ export type ReleaseGroupWithName = Omit<NxReleaseConfig['groups'][string], 'docker'> & {
5
6
  name: string;
6
7
  resolvedVersionPlans: (ProjectsVersionPlan | GroupVersionPlan)[] | false;
8
+ docker?: NxReleaseDockerConfiguration & {
9
+ groupPreVersionCommand?: string;
10
+ };
7
11
  };
8
12
  export declare function filterReleaseGroups(projectGraph: ProjectGraph, nxReleaseConfig: NxReleaseConfig, projectsFilter?: string[], groupsFilter?: string[]): {
9
13
  error: null | {
@@ -1 +1 @@
1
- {"version":3,"file":"filter-release-groups.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/release/config/filter-release-groups.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAG7D,OAAO,EAAkC,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAExE,MAAM,MAAM,oBAAoB,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG;IACrE,IAAI,EAAE,MAAM,CAAC;IACb,oBAAoB,EAAE,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,EAAE,GAAG,KAAK,CAAC;CAC1E,CAAC;AAEF,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,YAAY,EAC1B,eAAe,EAAE,eAAe,EAChC,cAAc,CAAC,EAAE,MAAM,EAAE,EACzB,YAAY,CAAC,EAAE,MAAM,EAAE,GACtB;IACD,KAAK,EAAE,IAAI,GAAG;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IACtD,SAAS,EAAE;QACT,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,MAAM,EAAE,CAAC;KACrB,GAAG,IAAI,CAAC;IACT,aAAa,EAAE,oBAAoB,EAAE,CAAC;IACtC,8BAA8B,EAAE,GAAG,CAAC,oBAAoB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;CACxE,CAgMA"}
1
+ {"version":3,"file":"filter-release-groups.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/release/config/filter-release-groups.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAG7D,OAAO,EAAkC,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACxE,OAAO,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AAEvE,MAAM,MAAM,oBAAoB,GAAG,IAAI,CACrC,eAAe,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,EACjC,QAAQ,CACT,GAAG;IACF,IAAI,EAAE,MAAM,CAAC;IACb,oBAAoB,EAAE,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,EAAE,GAAG,KAAK,CAAC;IACzE,MAAM,CAAC,EAAE,4BAA4B,GAAG;QAAE,sBAAsB,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC7E,CAAC;AAEF,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,YAAY,EAC1B,eAAe,EAAE,eAAe,EAChC,cAAc,CAAC,EAAE,MAAM,EAAE,EACzB,YAAY,CAAC,EAAE,MAAM,EAAE,GACtB;IACD,KAAK,EAAE,IAAI,GAAG;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IACtD,SAAS,EAAE;QACT,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,MAAM,EAAE,CAAC;KACrB,GAAG,IAAI,CAAC;IACT,aAAa,EAAE,oBAAoB,EAAE,CAAC;IACtC,8BAA8B,EAAE,GAAG,CAAC,oBAAoB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;CACxE,CAgMA"}
@@ -1 +1 @@
1
- {"version":3,"file":"release.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/command-line/release/release.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAc,MAAM,sBAAsB,CAAC;AAM1E,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAyBlE,OAAO,EACL,sBAAsB,EAEvB,MAAM,WAAW,CAAC;AAEnB,eAAO,MAAM,iBAAiB,GAAI,MAAM,cAAc,oBACC,CAAC;AAExD,wBAAgB,SAAS,CAAC,qBAAqB,EAAE,sBAAsB,IAMnE,MAAM,cAAc,KACnB,OAAO,CAAC,sBAAsB,GAAG,MAAM,CAAC,CA4U5C"}
1
+ {"version":3,"file":"release.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/command-line/release/release.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAc,MAAM,sBAAsB,CAAC;AAM1E,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAyBlE,OAAO,EACL,sBAAsB,EAEvB,MAAM,WAAW,CAAC;AAEnB,eAAO,MAAM,iBAAiB,GAAI,MAAM,cAAc,oBACC,CAAC;AAExD,wBAAgB,SAAS,CAAC,qBAAqB,EAAE,sBAAsB,IAMnE,MAAM,cAAc,KACnB,OAAO,CAAC,sBAAsB,GAAG,MAAM,CAAC,CAkV5C"}
@@ -225,7 +225,12 @@ function createAPI(overrideReleaseConfig) {
225
225
  let hasNewVersion = false;
226
226
  // null means that all projects are versioned together but there were no changes
227
227
  if (versionResult.workspaceVersion !== null) {
228
- hasNewVersion = Object.values(versionResult.projectsVersionData).some((version) => version.newVersion !== null);
228
+ hasNewVersion = Object.values(versionResult.projectsVersionData).some((version) =>
229
+ /**
230
+ * There is a scenario where applications will not have a newVersion created by VerisonActions,
231
+ * however, there will still be a dockerVersion created from the docker release.
232
+ */
233
+ version.newVersion !== null || version.dockerVersion !== null);
229
234
  }
230
235
  let shouldPublish = !!args.yes && !args.skipPublish && hasNewVersion;
231
236
  const shouldPromptPublishing = !args.yes && !args.skipPublish && !args.dryRun && hasNewVersion;
@@ -10,6 +10,11 @@ export interface VersionDataEntry {
10
10
  * e.g. when using conventional commits
11
11
  */
12
12
  newVersion: string | null;
13
+ /**
14
+ * dockerVersion will be populated if the project is a docker project and has been
15
+ * included within this release.
16
+ */
17
+ dockerVersion?: string;
13
18
  /**
14
19
  * The list of projects which depend upon the current project.
15
20
  */
@@ -43,6 +48,10 @@ export declare function commitChanges({ changedFiles, deletedFiles, isDryRun, is
43
48
  gitCommitArgs?: string | string[];
44
49
  }): Promise<void>;
45
50
  export declare function createCommitMessageValues(releaseGroups: ReleaseGroupWithName[], releaseGroupToFilteredProjects: Map<ReleaseGroupWithName, Set<string>>, versionData: VersionData, commitMessage: string): string[];
51
+ export declare function shouldPreferDockerVersionForReleaseGroup(releaseGroup: ReleaseGroupWithName): boolean;
52
+ export declare function shouldSkipVersionActions(dockerOptions: {
53
+ skipVersionActions?: string[] | boolean;
54
+ }, projectName: string): boolean;
46
55
  export declare function createGitTagValues(releaseGroups: ReleaseGroupWithName[], releaseGroupToFilteredProjects: Map<ReleaseGroupWithName, Set<string>>, versionData: VersionData): string[];
47
56
  export declare function handleDuplicateGitTags(gitTagValues: string[]): void;
48
57
  export declare function getCommitsRelevantToProjects(projectGraph: ProjectGraph, commits: GitCommit[], projects: string[]): Promise<GitCommit[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/release/utils/shared.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAI7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,SAAS,EAAqB,MAAM,OAAO,CAAC;AAErD,eAAO,MAAM,wBAAwB,QAEpC,CAAC;AAGF,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;AAE3D,MAAM,WAAW,gBAAgB;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B;;OAEG;IACH,iBAAiB,EAAE;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;QACb,oBAAoB,EAAE,MAAM,CAAC;QAC7B,cAAc,EAAE,MAAM,CAAC;KACxB,EAAE,CAAC;CACL;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAQrD;AAED,qBAAa,cAAc;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,OAAO,CAAC;gBAEV,EACV,OAAO,EAAE,qEAAqE;IAC9E,iBAAiB,EAAE,8EAA8E;IACjG,WAAW,GACZ,EAAE;QACD,OAAO,EAAE,MAAM,CAAC;QAChB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB;CAQF;AAED,wBAAsB,aAAa,CAAC,EAClC,YAAY,EACZ,YAAY,EACZ,QAAQ,EACR,SAAS,EACT,iBAAiB,EACjB,aAAa,GACd,EAAE;IACD,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CACnC,iBAsBA;AAED,wBAAgB,yBAAyB,CACvC,aAAa,EAAE,oBAAoB,EAAE,EACrC,8BAA8B,EAAE,GAAG,CAAC,oBAAoB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EACtE,WAAW,EAAE,WAAW,EACxB,aAAa,EAAE,MAAM,GACpB,MAAM,EAAE,CA0GV;AAcD,wBAAgB,kBAAkB,CAChC,aAAa,EAAE,oBAAoB,EAAE,EACrC,8BAA8B,EAAE,GAAG,CAAC,oBAAoB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EACtE,WAAW,EAAE,WAAW,GACvB,MAAM,EAAE,CAmCV;AAeD,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,IAAI,CAcnE;AAED,wBAAsB,4BAA4B,CAChD,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,SAAS,EAAE,EACpB,QAAQ,EAAE,MAAM,EAAE,GACjB,OAAO,CAAC,SAAS,EAAE,CAAC,CAwBtB"}
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/release/utils/shared.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAI7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,SAAS,EAAqB,MAAM,OAAO,CAAC;AAErD,eAAO,MAAM,wBAAwB,QAEpC,CAAC;AAGF,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;AAE3D,MAAM,WAAW,gBAAgB;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,iBAAiB,EAAE;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;QACb,oBAAoB,EAAE,MAAM,CAAC;QAC7B,cAAc,EAAE,MAAM,CAAC;KACxB,EAAE,CAAC;CACL;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAQrD;AAED,qBAAa,cAAc;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,OAAO,CAAC;gBAEV,EACV,OAAO,EAAE,qEAAqE;IAC9E,iBAAiB,EAAE,8EAA8E;IACjG,WAAW,GACZ,EAAE;QACD,OAAO,EAAE,MAAM,CAAC;QAChB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB;CAQF;AAED,wBAAsB,aAAa,CAAC,EAClC,YAAY,EACZ,YAAY,EACZ,QAAQ,EACR,SAAS,EACT,iBAAiB,EACjB,aAAa,GACd,EAAE;IACD,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CACnC,iBAsBA;AAED,wBAAgB,yBAAyB,CACvC,aAAa,EAAE,oBAAoB,EAAE,EACrC,8BAA8B,EAAE,GAAG,CAAC,oBAAoB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EACtE,WAAW,EAAE,WAAW,EACxB,aAAa,EAAE,MAAM,GACpB,MAAM,EAAE,CA0GV;AAcD,wBAAgB,wCAAwC,CACtD,YAAY,EAAE,oBAAoB,GACjC,OAAO,CAIT;AAED,wBAAgB,wBAAwB,CACtC,aAAa,EAAE;IAAE,kBAAkB,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAA;CAAE,EAC1D,WAAW,EAAE,MAAM,GAClB,OAAO,CAOT;AAED,wBAAgB,kBAAkB,CAChC,aAAa,EAAE,oBAAoB,EAAE,EACrC,8BAA8B,EAAE,GAAG,CAAC,oBAAoB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EACtE,WAAW,EAAE,WAAW,GACvB,MAAM,EAAE,CAiDV;AAeD,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,IAAI,CAcnE;AAED,wBAAsB,4BAA4B,CAChD,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,SAAS,EAAE,EACpB,QAAQ,EAAE,MAAM,EAAE,GACjB,OAAO,CAAC,SAAS,EAAE,CAAC,CAwBtB"}
@@ -4,6 +4,8 @@ exports.ReleaseVersion = exports.noDiffInChangelogMessage = void 0;
4
4
  exports.isPrerelease = isPrerelease;
5
5
  exports.commitChanges = commitChanges;
6
6
  exports.createCommitMessageValues = createCommitMessageValues;
7
+ exports.shouldPreferDockerVersionForReleaseGroup = shouldPreferDockerVersionForReleaseGroup;
8
+ exports.shouldSkipVersionActions = shouldSkipVersionActions;
7
9
  exports.createGitTagValues = createGitTagValues;
8
10
  exports.handleDuplicateGitTags = handleDuplicateGitTags;
9
11
  exports.getCommitsRelevantToProjects = getCommitsRelevantToProjects;
@@ -156,6 +158,17 @@ function stripPlaceholders(str, placeholders) {
156
158
  }
157
159
  return str;
158
160
  }
161
+ function shouldPreferDockerVersionForReleaseGroup(releaseGroup) {
162
+ // The inference was already done in the config phase, so if docker projects exist,
163
+ // releaseTagPatternRequireSemver would be false
164
+ return !releaseGroup.releaseTagPatternRequireSemver;
165
+ }
166
+ function shouldSkipVersionActions(dockerOptions, projectName) {
167
+ return (dockerOptions.skipVersionActions === true ||
168
+ (Array.isArray(dockerOptions.skipVersionActions) &&
169
+ // skipVersionActions as string[] already normalized to matching projects in config.ts
170
+ dockerOptions.skipVersionActions.includes(projectName)));
171
+ }
159
172
  function createGitTagValues(releaseGroups, releaseGroupToFilteredProjects, versionData) {
160
173
  const tags = [];
161
174
  for (const releaseGroup of releaseGroups) {
@@ -164,9 +177,13 @@ function createGitTagValues(releaseGroups, releaseGroupToFilteredProjects, versi
164
177
  if (releaseGroup.projectsRelationship === 'independent') {
165
178
  for (const project of releaseGroupProjectNames) {
166
179
  const projectVersionData = versionData[project];
167
- if (projectVersionData.newVersion !== null) {
180
+ if (projectVersionData.newVersion !== null ||
181
+ projectVersionData.dockerVersion !== null) {
182
+ const preferDockerVersion = shouldPreferDockerVersionForReleaseGroup(releaseGroup);
168
183
  tags.push((0, utils_1.interpolate)(releaseGroup.releaseTagPattern, {
169
- version: projectVersionData.newVersion,
184
+ version: preferDockerVersion
185
+ ? projectVersionData.dockerVersion
186
+ : projectVersionData.newVersion,
170
187
  projectName: project,
171
188
  }));
172
189
  }
@@ -175,9 +192,13 @@ function createGitTagValues(releaseGroups, releaseGroupToFilteredProjects, versi
175
192
  }
176
193
  // For fixed groups we want one tag for the overall group
177
194
  const projectVersionData = versionData[releaseGroupProjectNames[0]]; // all at the same version, so we can just pick the first one
178
- if (projectVersionData.newVersion !== null) {
195
+ if (projectVersionData.newVersion !== null ||
196
+ projectVersionData.dockerVersion !== null) {
197
+ const preferDockerVersion = shouldPreferDockerVersionForReleaseGroup(releaseGroup);
179
198
  tags.push((0, utils_1.interpolate)(releaseGroup.releaseTagPattern, {
180
- version: projectVersionData.newVersion,
199
+ version: preferDockerVersion
200
+ ? projectVersionData.dockerVersion
201
+ : projectVersionData.newVersion,
181
202
  releaseGroupName: releaseGroup.name,
182
203
  }));
183
204
  }
@@ -1 +1 @@
1
- {"version":3,"file":"project-logger.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/release/version/project-logger.ts"],"names":[],"mappings":"AA0BA,qBAAa,aAAa;IAIZ,OAAO,CAAC,WAAW;IAH/B,OAAO,CAAC,IAAI,CAAgB;IAC5B,OAAO,CAAC,KAAK,CAA0B;gBAEnB,WAAW,EAAE,MAAM;IAIvC,MAAM,CAAC,GAAG,EAAE,MAAM;IAIlB,KAAK;CAaN"}
1
+ {"version":3,"file":"project-logger.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/release/version/project-logger.ts"],"names":[],"mappings":"AA0BA,qBAAa,aAAa;IAIZ,OAAO,CAAC,WAAW;IAH/B,OAAO,CAAC,IAAI,CAAgB;IAC5B,OAAO,CAAC,KAAK,CAA0B;gBAEnB,WAAW,EAAE,MAAM;IAIvC,MAAM,CAAC,GAAG,EAAE,MAAM;IAIlB,KAAK;CAcN"}
@@ -40,6 +40,7 @@ class ProjectLogger {
40
40
  this.logs.forEach((msg) => {
41
41
  console.log(this.color.instance.bold(this.projectName) + ' ' + msg);
42
42
  });
43
+ this.logs = [];
43
44
  }
44
45
  }
45
46
  exports.ProjectLogger = ProjectLogger;
@@ -1,4 +1,4 @@
1
- import { ManifestRootToUpdate, NxReleaseVersionConfiguration } from '../../../config/nx-json';
1
+ import { ManifestRootToUpdate, NxReleaseDockerConfiguration, NxReleaseVersionConfiguration } from '../../../config/nx-json';
2
2
  import { ProjectGraph } from '../../../config/project-graph';
3
3
  import { Tree } from '../../../generators/tree';
4
4
  import { type NxReleaseConfig } from '../config/config';
@@ -18,6 +18,9 @@ export interface FinalConfigForProject {
18
18
  preserveLocalDependencyProtocols: NxReleaseVersionConfiguration['preserveLocalDependencyProtocols'];
19
19
  versionActionsOptions: NxReleaseVersionConfiguration['versionActionsOptions'];
20
20
  manifestRootsToUpdate: Array<Exclude<ManifestRootToUpdate, string>>;
21
+ dockerOptions: NxReleaseDockerConfiguration & {
22
+ groupPreVersionCommand?: string;
23
+ };
21
24
  }
22
25
  export declare const BUMP_TYPE_REASON_TEXT: {
23
26
  readonly DEPENDENCY_WAS_BUMPED: ", because a dependency was bumped, ";
@@ -27,6 +30,7 @@ export declare const BUMP_TYPE_REASON_TEXT: {
27
30
  readonly VERSION_PLANS: ", read from version plan {versionPlanPath}, ";
28
31
  readonly DEPENDENCY_ACROSS_GROUPS_WAS_BUMPED: ", because a dependency project belonging to another release group was bumped, ";
29
32
  readonly OTHER_PROJECT_IN_FIXED_GROUP_WAS_BUMPED_DUE_TO_DEPENDENCY: ", because of a dependency-only bump to another project in the same fixed release group, ";
33
+ readonly NOOP_VERSION_ACTIONS: ", because this project uses docker and has been configured to skip VersionActions, ";
30
34
  };
31
35
  interface ReleaseGroupProcessorOptions {
32
36
  dryRun: boolean;
@@ -213,6 +217,7 @@ export declare class ReleaseGroupProcessor {
213
217
  changedFiles: string[];
214
218
  deletedFiles: string[];
215
219
  }>;
220
+ processDockerProjects(dockerVersionScheme?: string): Promise<void>;
216
221
  private processGroup;
217
222
  private propagateChangesToDependentGroups;
218
223
  private bumpVersions;
@@ -1 +1 @@
1
- {"version":3,"file":"release-group-processor.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/release/version/release-group-processor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"release-group-processor.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/release/version/release-group-processor.ts"],"names":[],"mappings":"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"}
@@ -3,8 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ReleaseGroupProcessor = exports.BUMP_TYPE_REASON_TEXT = void 0;
4
4
  const semver = require("semver");
5
5
  const config_1 = require("../config/config");
6
+ const workspace_root_1 = require("../../../utils/workspace-root");
6
7
  const git_1 = require("../utils/git");
7
8
  const resolve_semver_specifier_1 = require("../utils/resolve-semver-specifier");
9
+ const shared_1 = require("../utils/shared");
8
10
  const version_1 = require("../version");
9
11
  const derive_specifier_from_conventional_commits_1 = require("./derive-specifier-from-conventional-commits");
10
12
  const deriver_specifier_from_version_plans_1 = require("./deriver-specifier-from-version-plans");
@@ -20,6 +22,7 @@ exports.BUMP_TYPE_REASON_TEXT = {
20
22
  VERSION_PLANS: ', read from version plan {versionPlanPath}, ',
21
23
  DEPENDENCY_ACROSS_GROUPS_WAS_BUMPED: ', because a dependency project belonging to another release group was bumped, ',
22
24
  OTHER_PROJECT_IN_FIXED_GROUP_WAS_BUMPED_DUE_TO_DEPENDENCY: ', because of a dependency-only bump to another project in the same fixed release group, ',
25
+ NOOP_VERSION_ACTIONS: ', because this project uses docker and has been configured to skip VersionActions, ',
23
26
  };
24
27
  class ReleaseGroupProcessor {
25
28
  constructor(tree, projectGraph, nxReleaseConfig, releaseGroups, releaseGroupToFilteredProjects, options) {
@@ -215,6 +218,7 @@ class ReleaseGroupProcessor {
215
218
  this.versionData.set(projectName, {
216
219
  currentVersion: this.getCurrentCachedVersionForProject(projectName),
217
220
  newVersion: null,
221
+ dockerVersion: null,
218
222
  dependentProjects: this.getOriginalDependentProjects(projectName),
219
223
  });
220
224
  }
@@ -296,7 +300,13 @@ class ReleaseGroupProcessor {
296
300
  if (!this.uniqueAfterAllProjectsVersioned.has(versionActionsPath)) {
297
301
  this.uniqueAfterAllProjectsVersioned.set(versionActionsPath, afterAllProjectsVersioned);
298
302
  }
299
- this.projectsToVersionActions.set(project, versionActions);
303
+ let versionActionsToUse = versionActions;
304
+ // Check if this project should skip version actions based on docker configuration
305
+ const shouldSkip = (0, shared_1.shouldSkipVersionActions)(finalConfigForProject.dockerOptions, project);
306
+ if (shouldSkip) {
307
+ versionActionsToUse = new version_actions_1.NOOP_VERSION_ACTIONS(releaseGroup, projectGraphNode, finalConfigForProject);
308
+ }
309
+ this.projectsToVersionActions.set(project, versionActionsToUse);
300
310
  });
301
311
  }
302
312
  }
@@ -476,6 +486,43 @@ class ReleaseGroupProcessor {
476
486
  deletedFiles: Array.from(deletedFiles),
477
487
  };
478
488
  }
489
+ async processDockerProjects(dockerVersionScheme) {
490
+ const dockerProjects = new Map();
491
+ for (const project of this.versionData.keys()) {
492
+ const finalConfigForProject = this.finalConfigsByProject.get(project);
493
+ if (Object.keys(finalConfigForProject.dockerOptions).length === 0) {
494
+ continue;
495
+ }
496
+ dockerProjects.set(project, finalConfigForProject);
497
+ }
498
+ // If no docker projects to process, exit early to avoid unnecessary loading of docker handling
499
+ if (dockerProjects.size === 0) {
500
+ return;
501
+ }
502
+ let handleDockerVersion;
503
+ try {
504
+ const { handleDockerVersion: _handleDockerVersion,
505
+ // nx-ignore-next-line
506
+ } = require(// @ts-ignore
507
+ '@nx/docker/release/version-utils');
508
+ handleDockerVersion = _handleDockerVersion;
509
+ }
510
+ catch (e) {
511
+ console.error('Could not find `@nx/docker`. Please run `nx add @nx/docker` before attempting to release Docker images.');
512
+ throw e;
513
+ }
514
+ for (const [project, finalConfigForProject] of dockerProjects.entries()) {
515
+ const projectNode = this.projectGraph.nodes[project];
516
+ const { newVersion, logs } = await handleDockerVersion(workspace_root_1.workspaceRoot, projectNode, finalConfigForProject, dockerVersionScheme);
517
+ logs.forEach((log) => this.getProjectLoggerForProject(project).buffer(log));
518
+ const newVersionData = {
519
+ ...this.versionData.get(project),
520
+ dockerVersion: newVersion,
521
+ };
522
+ this.versionData.set(project, newVersionData);
523
+ }
524
+ this.flushAllProjectLoggers();
525
+ }
479
526
  async processGroup(releaseGroupName) {
480
527
  const groupNode = this.groupGraph.get(releaseGroupName);
481
528
  const bumped = await this.bumpVersions(groupNode.group);
@@ -559,6 +606,7 @@ class ReleaseGroupProcessor {
559
606
  this.versionData.set(project, {
560
607
  currentVersion: this.getCurrentCachedVersionForProject(project),
561
608
  newVersion: null,
609
+ dockerVersion: null,
562
610
  dependentProjects: this.getOriginalDependentProjects(project),
563
611
  });
564
612
  if (project === firstProject) {
@@ -691,6 +739,14 @@ class ReleaseGroupProcessor {
691
739
  }
692
740
  return `${log} within release group "${releaseGroup.name}"`;
693
741
  };
742
+ const versionActions = this.getVersionActionsForProject(projectName);
743
+ if (versionActions instanceof version_actions_1.NOOP_VERSION_ACTIONS) {
744
+ return {
745
+ newVersionInput: 'none',
746
+ newVersionInputReason: 'NOOP_VERSION_ACTIONS',
747
+ newVersionInputReasonData: {},
748
+ };
749
+ }
694
750
  if (cachedFinalConfigForProject.specifierSource === 'prompt') {
695
751
  let specifier;
696
752
  if (releaseGroup.projectsRelationship === 'independent') {
@@ -745,6 +801,7 @@ class ReleaseGroupProcessor {
745
801
  resolveFinalConfigForProject(releaseGroup, projectGraphNode) {
746
802
  const releaseGroupVersionConfig = releaseGroup.version;
747
803
  const projectVersionConfig = projectGraphNode.data.release?.version;
804
+ const projectDockerConfig = projectGraphNode.data.release?.docker;
748
805
  /**
749
806
  * specifierSource
750
807
  *
@@ -770,13 +827,25 @@ Valid values are: ${version_1.validReleaseVersionPrefixes
770
827
  .map((s) => `"${s}"`)
771
828
  .join(', ')}`);
772
829
  }
830
+ // Merge docker options configured in project with release group config
831
+ // Project level configuration should take preference
832
+ const dockerOptions = {
833
+ ...(releaseGroup.docker ?? {}),
834
+ ...(projectDockerConfig ?? {}),
835
+ };
773
836
  /**
774
837
  * currentVersionResolver, defaults to disk
775
838
  */
776
- const currentVersionResolver = projectVersionConfig?.currentVersionResolver ??
839
+ let currentVersionResolver = projectVersionConfig?.currentVersionResolver ??
777
840
  releaseGroupVersionConfig?.currentVersionResolver ??
778
841
  'disk';
779
- if (specifierSource === 'conventional-commits' &&
842
+ // Check if this project should skip version actions based on docker configuration
843
+ const shouldSkip = (0, shared_1.shouldSkipVersionActions)(dockerOptions, projectGraphNode.name);
844
+ if (shouldSkip) {
845
+ // If the project skips version actions, it doesn't need to resolve a current version
846
+ currentVersionResolver = 'none';
847
+ }
848
+ else if (specifierSource === 'conventional-commits' &&
780
849
  currentVersionResolver !== 'git-tag') {
781
850
  throw new Error(`Invalid currentVersionResolver "${currentVersionResolver}" provided for project "${projectGraphNode.name}". Must be "git-tag" when "specifierSource" is "conventional-commits"`);
782
851
  }
@@ -833,6 +902,7 @@ Valid values are: ${version_1.validReleaseVersionPrefixes
833
902
  preserveLocalDependencyProtocols,
834
903
  versionActionsOptions,
835
904
  manifestRootsToUpdate,
905
+ dockerOptions,
836
906
  };
837
907
  }
838
908
  async calculateNewVersion(project, newVersionInput, // any arbitrary string, whether or not it is valid is dependent upon the version actions implementation
@@ -169,4 +169,25 @@ export declare abstract class VersionActions {
169
169
  */
170
170
  abstract updateProjectDependencies(tree: Tree, projectGraph: ProjectGraph, dependenciesToUpdate: Record<string, string>): Promise<string[]>;
171
171
  }
172
+ export declare class NOOP_VERSION_ACTIONS extends VersionActions {
173
+ validManifestFilenames: any;
174
+ readCurrentVersionFromRegistry(tree: Tree, currentVersionResolverMetadata: NxReleaseVersionConfiguration['currentVersionResolverMetadata']): Promise<{
175
+ currentVersion: string | null;
176
+ logText: string;
177
+ } | null>;
178
+ readCurrentVersionFromSourceManifest(tree: Tree): Promise<{
179
+ currentVersion: string;
180
+ manifestPath: string;
181
+ } | null>;
182
+ readCurrentVersionOfDependency(tree: Tree, projectGraph: ProjectGraph, dependencyProjectName: string): Promise<{
183
+ currentVersion: string | null;
184
+ dependencyCollection: string | null;
185
+ }>;
186
+ calculateNewVersion(currentVersion: string | null, newVersionInput: string, newVersionInputReason: string, newVersionInputReasonData: Record<string, unknown>, preid: string): Promise<{
187
+ newVersion: string;
188
+ logText: string;
189
+ }>;
190
+ updateProjectDependencies(tree: Tree, projectGraph: ProjectGraph, dependenciesToUpdate: Record<string, string>): Promise<string[]>;
191
+ updateProjectVersion(tree: Tree, newVersion: string): Promise<string[]>;
192
+ }
172
193
  //# sourceMappingURL=version-actions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"version-actions.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/release/version/version-actions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"version-actions.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/release/version/version-actions.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.VersionActions = void 0;
3
+ exports.NOOP_VERSION_ACTIONS = exports.VersionActions = void 0;
4
4
  exports.resolveVersionActionsForProject = resolveVersionActionsForProject;
5
5
  const node_path_1 = require("node:path");
6
6
  const register_1 = require("../../../plugins/js/utils/register");
@@ -199,3 +199,34 @@ It is also possible that the project is being processed because of a dependency
199
199
  }
200
200
  }
201
201
  exports.VersionActions = VersionActions;
202
+ class NOOP_VERSION_ACTIONS extends VersionActions {
203
+ constructor() {
204
+ super(...arguments);
205
+ this.validManifestFilenames = null;
206
+ }
207
+ readCurrentVersionFromRegistry(tree, currentVersionResolverMetadata) {
208
+ return Promise.resolve(null);
209
+ }
210
+ readCurrentVersionFromSourceManifest(tree) {
211
+ return Promise.resolve(null);
212
+ }
213
+ readCurrentVersionOfDependency(tree, projectGraph, dependencyProjectName) {
214
+ return Promise.resolve({
215
+ currentVersion: null,
216
+ dependencyCollection: null,
217
+ });
218
+ }
219
+ async calculateNewVersion(currentVersion, newVersionInput, newVersionInputReason, newVersionInputReasonData, preid) {
220
+ return Promise.resolve({
221
+ newVersion: '0.0.0',
222
+ logText: 'Skipped default versioning as no-op.',
223
+ });
224
+ }
225
+ updateProjectDependencies(tree, projectGraph, dependenciesToUpdate) {
226
+ return Promise.resolve([]);
227
+ }
228
+ updateProjectVersion(tree, newVersion) {
229
+ return Promise.resolve([]);
230
+ }
231
+ }
232
+ exports.NOOP_VERSION_ACTIONS = NOOP_VERSION_ACTIONS;
@@ -1 +1 @@
1
- {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/command-line/release/version.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,sBAAsB,EAGvB,MAAM,sBAAsB,CAAC;AAS9B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAkBlD,OAAO,EACL,WAAW,EAKZ,MAAM,gBAAgB,CAAC;AAUxB,eAAO,MAAM,2BAA2B,sCAAuC,CAAC;AAEhF,MAAM,WAAW,sBAAsB;IACrC;;;;;;;;;OASG;IACH,gBAAgB,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,SAAS,CAAC;IAC9C,mBAAmB,EAAE,WAAW,CAAC;CAClC;AAED,eAAO,MAAM,wBAAwB,GAAI,MAAM,cAAc,oBACN,CAAC;AAExD,wBAAgB,SAAS,CAAC,qBAAqB,EAAE,sBAAsB,IAOnE,MAAM,cAAc,KACnB,OAAO,CAAC,sBAAsB,CAAC,CAiSnC"}
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/command-line/release/version.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,sBAAsB,EAGvB,MAAM,sBAAsB,CAAC;AAS9B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAkBlD,OAAO,EACL,WAAW,EAKZ,MAAM,gBAAgB,CAAC;AAUxB,eAAO,MAAM,2BAA2B,sCAAuC,CAAC;AAEhF,MAAM,WAAW,sBAAsB;IACrC;;;;;;;;;OASG;IACH,gBAAgB,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,SAAS,CAAC;IAC9C,mBAAmB,EAAE,WAAW,CAAC;CAClC;AAED,eAAO,MAAM,wBAAwB,GAAI,MAAM,cAAc,oBACN,CAAC;AAExD,wBAAgB,SAAS,CAAC,qBAAqB,EAAE,sBAAsB,IAOnE,MAAM,cAAc,KACnB,OAAO,CAAC,sBAAsB,CAAC,CA6UnC"}