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
package/.eslintrc.json CHANGED
@@ -138,6 +138,8 @@
138
138
  // Powerpack plugin conditionally available dynamically at runtime
139
139
  "@nx/powerpack-conformance",
140
140
  "@nx/conformance",
141
+ // Nx Docker plugin conditionally available dynamically at runtime
142
+ "@nx/docker",
141
143
  // Only used in test-utils at the time of writing
142
144
  "@ltd/j-toml"
143
145
  ]
package/bin/nx.js CHANGED
@@ -68,7 +68,12 @@ async function main() {
68
68
  handleMissingLocalInstallation(workspace ? workspace.dir : null);
69
69
  }
70
70
  // this file is already in the local workspace
71
- if (isLocalInstall) {
71
+ if (isNxCloudCommand(process.argv[2])) {
72
+ // nx-cloud commands can run without local Nx installation
73
+ process.env.NX_DAEMON = 'false';
74
+ require('nx/src/command-line/nx-commands').commandsObject.argv;
75
+ }
76
+ else if (isLocalInstall) {
72
77
  await (0, init_local_1.initLocal)(workspace);
73
78
  }
74
79
  else if (localNx) {
@@ -82,11 +87,6 @@ async function main() {
82
87
  require(localNx);
83
88
  }
84
89
  }
85
- else if (isNxCloudCommand(process.argv[2])) {
86
- // nx-cloud commands can run without local Nx installation
87
- process.env.NX_DAEMON = 'false';
88
- require('nx/src/command-line/nx-commands').commandsObject.argv;
89
- }
90
90
  }
91
91
  }
92
92
  function handleNoWorkspace(globalNxVersion) {
@@ -1,43 +1,28 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const project_graph_1 = require("../src/project-graph/project-graph");
4
3
  const workspace_root_1 = require("../src/utils/workspace-root");
5
4
  const fileutils_1 = require("../src/utils/fileutils");
6
5
  const path_1 = require("path");
7
- const client_1 = require("../src/daemon/client/client");
8
6
  const assert_supported_platform_1 = require("../src/native/assert-supported-platform");
9
7
  const update_manager_1 = require("../src/nx-cloud/update-manager");
10
8
  const get_cloud_options_1 = require("../src/nx-cloud/utilities/get-cloud-options");
11
9
  const nx_cloud_utils_1 = require("../src/utils/nx-cloud-utils");
12
10
  const nx_json_1 = require("../src/config/nx-json");
13
11
  const logger_1 = require("../src/utils/logger");
14
- const workspace_context_1 = require("../src/utils/workspace-context");
12
+ // The post install is not critical, to avoid any chance that it may hang
13
+ // we will kill this process after 30 seconds.
14
+ const postinstallTimeout = setTimeout(() => {
15
+ logger_1.logger.verbose('Nx post-install timed out.');
16
+ process.exit(0);
17
+ }, 30_000);
15
18
  (async () => {
16
19
  const start = new Date();
17
20
  try {
18
21
  if (isMainNxPackage() && (0, fileutils_1.fileExists)((0, path_1.join)(workspace_root_1.workspaceRoot, 'nx.json'))) {
19
22
  (0, assert_supported_platform_1.assertSupportedPlatform)();
20
- (0, workspace_context_1.setupWorkspaceContext)(workspace_root_1.workspaceRoot);
21
- if (client_1.daemonClient.enabled()) {
22
- try {
23
- await client_1.daemonClient.stop();
24
- }
25
- catch (e) { }
26
- }
27
- const tasks = [
28
- (0, project_graph_1.buildProjectGraphAndSourceMapsWithoutDaemon)(),
29
- ];
30
23
  if ((0, nx_cloud_utils_1.isNxCloudUsed)((0, nx_json_1.readNxJson)())) {
31
- tasks.push((0, update_manager_1.verifyOrUpdateNxCloudClient)((0, get_cloud_options_1.getCloudOptions)()));
24
+ await (0, update_manager_1.verifyOrUpdateNxCloudClient)((0, get_cloud_options_1.getCloudOptions)());
32
25
  }
33
- process.env.NX_DAEMON = 'false';
34
- await Promise.all(tasks.map((promise) => {
35
- return promise.catch((e) => {
36
- if (process.env.NX_VERBOSE_LOGGING === 'true') {
37
- console.warn(e);
38
- }
39
- });
40
- }));
41
26
  }
42
27
  }
43
28
  catch (e) {
@@ -46,6 +31,7 @@ const workspace_context_1 = require("../src/utils/workspace-context");
46
31
  finally {
47
32
  const end = new Date();
48
33
  logger_1.logger.verbose(`Nx postinstall steps took ${end.getTime() - start.getTime()}ms`);
34
+ clearTimeout(postinstallTimeout);
49
35
  process.exit(0);
50
36
  }
51
37
  })();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nx",
3
- "version": "21.4.0-canary.20250725-0359f0d",
3
+ "version": "21.4.0-canary.20250729-c2d0ecf",
4
4
  "private": false,
5
5
  "description": "The core Nx plugin contains the core functionality of Nx like the project graph, nx commands and task orchestration.",
6
6
  "repository": {
@@ -83,16 +83,16 @@
83
83
  }
84
84
  },
85
85
  "optionalDependencies": {
86
- "@nx/nx-darwin-arm64": "21.4.0-canary.20250725-0359f0d",
87
- "@nx/nx-darwin-x64": "21.4.0-canary.20250725-0359f0d",
88
- "@nx/nx-freebsd-x64": "21.4.0-canary.20250725-0359f0d",
89
- "@nx/nx-linux-arm-gnueabihf": "21.4.0-canary.20250725-0359f0d",
90
- "@nx/nx-linux-arm64-gnu": "21.4.0-canary.20250725-0359f0d",
91
- "@nx/nx-linux-arm64-musl": "21.4.0-canary.20250725-0359f0d",
92
- "@nx/nx-linux-x64-gnu": "21.4.0-canary.20250725-0359f0d",
93
- "@nx/nx-linux-x64-musl": "21.4.0-canary.20250725-0359f0d",
94
- "@nx/nx-win32-arm64-msvc": "21.4.0-canary.20250725-0359f0d",
95
- "@nx/nx-win32-x64-msvc": "21.4.0-canary.20250725-0359f0d"
86
+ "@nx/nx-darwin-arm64": "21.4.0-canary.20250729-c2d0ecf",
87
+ "@nx/nx-darwin-x64": "21.4.0-canary.20250729-c2d0ecf",
88
+ "@nx/nx-freebsd-x64": "21.4.0-canary.20250729-c2d0ecf",
89
+ "@nx/nx-linux-arm-gnueabihf": "21.4.0-canary.20250729-c2d0ecf",
90
+ "@nx/nx-linux-arm64-gnu": "21.4.0-canary.20250729-c2d0ecf",
91
+ "@nx/nx-linux-arm64-musl": "21.4.0-canary.20250729-c2d0ecf",
92
+ "@nx/nx-linux-x64-gnu": "21.4.0-canary.20250729-c2d0ecf",
93
+ "@nx/nx-linux-x64-musl": "21.4.0-canary.20250729-c2d0ecf",
94
+ "@nx/nx-win32-arm64-msvc": "21.4.0-canary.20250729-c2d0ecf",
95
+ "@nx/nx-win32-x64-msvc": "21.4.0-canary.20250729-c2d0ecf"
96
96
  },
97
97
  "nx-migrations": {
98
98
  "migrations": "./migrations.json",
@@ -129,6 +129,7 @@
129
129
  "@nx/vue",
130
130
  "@nx/web",
131
131
  "@nx/webpack",
132
+ "@nx/docker",
132
133
  {
133
134
  "package": "nx-cloud",
134
135
  "version": "latest"
@@ -224,6 +224,18 @@
224
224
  "description": "Enables using version plans as a specifier source for versioning and to determine changes for changelog generation."
225
225
  }
226
226
  ]
227
+ },
228
+ "docker": {
229
+ "oneOf": [
230
+ {
231
+ "type": "boolean",
232
+ "enum": [true],
233
+ "description": "Enable docker configuration with default settings. Warning: Docker support is experimental. Breaking changes may occur and not adhere to semver versioning. "
234
+ },
235
+ {
236
+ "$ref": "#/definitions/NxReleaseGroupDockerConfiguration"
237
+ }
238
+ ]
227
239
  }
228
240
  },
229
241
  "required": ["projects"]
@@ -309,6 +321,18 @@
309
321
  },
310
322
  "releaseTagPatternStrictPreid": {
311
323
  "$ref": "#/definitions/NxReleaseReleaseTagPatternStrictPreidConfiguration"
324
+ },
325
+ "docker": {
326
+ "oneOf": [
327
+ {
328
+ "type": "boolean",
329
+ "enum": [true],
330
+ "description": "Enable docker configuration with default settings. Warning: Docker support is experimental. Breaking changes may occur and not adhere to semver versioning."
331
+ },
332
+ {
333
+ "$ref": "#/definitions/NxReleaseDockerConfiguration"
334
+ }
335
+ ]
312
336
  }
313
337
  }
314
338
  },
@@ -995,6 +1019,59 @@
995
1019
  }
996
1020
  }
997
1021
  }
1022
+ },
1023
+ "NxReleaseDockerConfiguration": {
1024
+ "type": "object",
1025
+ "description": "Configuration for handling Docker projects during nx release.",
1026
+ "properties": {
1027
+ "preVersionCommand": {
1028
+ "type": "string",
1029
+ "description": "A command to run after validation of nx release configuration, but before docker versioning begins. Useful for preparing docker build artifacts. If --dry-run is passed, the command is still executed, but with the NX_DRY_RUN environment variable set to 'true'."
1030
+ },
1031
+ "skipVersionActions": {
1032
+ "oneOf": [
1033
+ {
1034
+ "type": "array",
1035
+ "items": {
1036
+ "type": "string"
1037
+ },
1038
+ "description": "Array of projects which should use a no-op VersionActions implementation rather than any potentially inferred by default or via Inference Plugins."
1039
+ },
1040
+ {
1041
+ "type": "boolean",
1042
+ "description": "When set to true, all projects in the release setup/release group will use a no-op VersionActions implementation."
1043
+ }
1044
+ ],
1045
+ "description": "Projects which should use a no-op VersionActions implementation rather than any potentially inferred by default or via Inference Plugins. Can be an array of project names (subset of projects in the release setup/release group) or a boolean (true means all projects)."
1046
+ },
1047
+ "versionSchemes": {
1048
+ "type": "object",
1049
+ "additionalProperties": {
1050
+ "type": "string"
1051
+ },
1052
+ "description": "Record of named version patterns to choose between when versioning docker projects. e.g. \"production\": \"{currentDate|YYMM.DD}.{shortCommitSha}\", \"hotfix\": \"{currentDate|YYMM.DD}-hotfix\""
1053
+ },
1054
+ "repositoryName": {
1055
+ "type": "string",
1056
+ "description": "Repository name for the image on the configured registry"
1057
+ },
1058
+ "registryUrl": {
1059
+ "type": "string",
1060
+ "description": "Url of the Docker Image/Container Registry to push images to. Defaults to Docker Hub."
1061
+ }
1062
+ },
1063
+ "additionalProperties": false
1064
+ },
1065
+ "NxReleaseGroupDockerConfiguration": {
1066
+ "type": "object",
1067
+ "$comment": "We need to improve this configuration definition to be more precise once legacy versioning is removed. Right now it needs to be left open and runtime validation will ensure correct behavior.",
1068
+ "properties": {
1069
+ "groupPreVersionCommand": {
1070
+ "type": "string",
1071
+ "description": "A command to run after validation of nx release configuration, but before docker versioning begins. Used for preparing docker build artifacts. If --dry-run is passed, the command is still executed, but with the NX_DRY_RUN environment variable set to 'true'. It will run in addition to the global `preVersionCommand`"
1072
+ }
1073
+ },
1074
+ "additionalProperties": true
998
1075
  }
999
1076
  }
1000
1077
  }
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/init/implementation/utils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAQ9D,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAEL,sBAAsB,EACvB,MAAM,gCAAgC,CAAC;AAUxC,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAChB,kBAAkB,EAAE,MAAM,EAAE,EAC5B,mBAAmB,EAAE,MAAM,EAAE,EAC7B,aAAa,EAAE;IAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,QA0C1C;AAED,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC7B,mBAAmB,CA+GrB;AAED,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,kBAAkB,CAAC,EAAE,MAAM,EAAE,QAY9B;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,QAqC3C;AAED,wBAAgB,UAAU,CACxB,QAAQ,EAAE,MAAM,EAChB,GAAG,GAAE,sBAAmD,QAOzD;AAED,wBAAsB,SAAS,CAC7B,kBAAkB,EACd,SAAS,GACT,iBAAiB,GACjB,aAAa,GACb,kBAAkB,GAClB,cAAc,GACd,kBAAkB,GAClB,mBAAmB,iBAMxB;AAED,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAAE,GACnB,IAAI,CAiBN;AAED,wBAAgB,oCAAoC,CAClD,QAAQ,EAAE,MAAM,EAChB,gBAAgB,EAAE,MAAM,EAAE,EAC1B,GAAG,EAAE,sBAAsB,QAqB5B;AAED,wBAAgB,0BAA0B,CAAC,eAAe,EAAE,MAAM,QAQjE;AAED,wBAAgB,iBAAiB,CAAC,EAChC,aAAa,EACb,WAAW,GACZ,EAAE;IACD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB,GAAG,IAAI,CAUP;AAED,wBAAgB,UAAU,CAAC,WAAW,EAAE,WAAW,WASlD;AAED,wBAAgB,KAAK,CAAC,WAAW,EAAE,WAAW,WAa7C"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/init/implementation/utils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAQ9D,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAEL,sBAAsB,EACvB,MAAM,gCAAgC,CAAC;AASxC,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAChB,kBAAkB,EAAE,MAAM,EAAE,EAC5B,mBAAmB,EAAE,MAAM,EAAE,EAC7B,aAAa,EAAE;IAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,QA0C1C;AAED,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC7B,mBAAmB,CA+GrB;AAED,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,kBAAkB,CAAC,EAAE,MAAM,EAAE,QAY9B;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,QAqC3C;AAED,wBAAgB,UAAU,CACxB,QAAQ,EAAE,MAAM,EAChB,GAAG,GAAE,sBAAmD,QAOzD;AAED,wBAAsB,SAAS,CAC7B,kBAAkB,EACd,SAAS,GACT,iBAAiB,GACjB,aAAa,GACb,kBAAkB,GAClB,cAAc,GACd,kBAAkB,GAClB,mBAAmB,iBAMxB;AAED,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAAE,GACnB,IAAI,CAiBN;AAED,wBAAgB,oCAAoC,CAClD,QAAQ,EAAE,MAAM,EAChB,gBAAgB,EAAE,MAAM,EAAE,EAC1B,GAAG,EAAE,sBAAsB,QAqB5B;AAED,wBAAgB,0BAA0B,CAAC,eAAe,EAAE,MAAM,QAQjE;AAED,wBAAgB,iBAAiB,CAAC,EAChC,aAAa,EACb,WAAW,GACZ,EAAE;IACD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB,GAAG,IAAI,CAUP;AAED,wBAAgB,UAAU,CAAC,WAAW,EAAE,WAAW,WASlD;AAED,wBAAgB,KAAK,CAAC,WAAW,EAAE,WAAW,WAa7C"}
@@ -21,7 +21,6 @@ const path_2 = require("../../../utils/path");
21
21
  const versions_1 = require("../../../utils/versions");
22
22
  const fs_1 = require("fs");
23
23
  const connect_to_nx_cloud_1 = require("../../../nx-cloud/generators/connect-to-nx-cloud/connect-to-nx-cloud");
24
- const url_shorten_1 = require("../../../nx-cloud/utilities/url-shorten");
25
24
  const connect_to_nx_cloud_2 = require("../../nx-cloud/connect/connect-to-nx-cloud");
26
25
  const deduce_default_base_1 = require("./deduce-default-base");
27
26
  function createNxJsonFile(repoRoot, topologicalTargets, cacheableOperations, scriptOutputs) {
@@ -216,7 +215,7 @@ async function initCloud(installationSource) {
216
215
  const token = await (0, connect_to_nx_cloud_2.connectWorkspaceToCloud)({
217
216
  installationSource,
218
217
  });
219
- await (0, connect_to_nx_cloud_1.printSuccessMessage)(token, installationSource, await (0, url_shorten_1.repoUsesGithub)());
218
+ await (0, connect_to_nx_cloud_1.printSuccessMessage)(token, installationSource);
220
219
  }
221
220
  function addVsCodeRecommendedExtensions(repoRoot, extensions) {
222
221
  const vsCodeExtensionsPath = (0, path_1.join)(repoRoot, '.vscode/extensions.json');
@@ -1 +1 @@
1
- {"version":3,"file":"command-object.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/nx-cloud/connect/command-object.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,aAAa,EAAE,MAAM,OAAO,CAAC;AAK5C,eAAO,MAAM,mBAAmB,EAAE,aAiBjC,CAAC;AAUF,eAAO,MAAM,oBAAoB,EAAE,aAMlC,CAAC"}
1
+ {"version":3,"file":"command-object.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/nx-cloud/connect/command-object.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,aAAa,EAAE,MAAM,OAAO,CAAC;AAK5C,eAAO,MAAM,mBAAmB,EAAE,aAoBjC,CAAC;AAUF,eAAO,MAAM,oBAAoB,EAAE,aAMlC,CAAC"}
@@ -10,7 +10,8 @@ exports.yargsConnectCommand = {
10
10
  describe: `Connect workspace to Nx Cloud.`,
11
11
  builder: (yargs) => (0, documentation_1.linkToNxDevAndExamples)(withConnectOptions(yargs), 'connect-to-nx-cloud'),
12
12
  handler: async (args) => {
13
- await (await Promise.resolve().then(() => require('./connect-to-nx-cloud'))).connectToNxCloudCommand(args);
13
+ const checkRemote = process.env.NX_SKIP_CHECK_REMOTE !== 'true';
14
+ await (await Promise.resolve().then(() => require('./connect-to-nx-cloud'))).connectToNxCloudCommand({ ...args, checkRemote });
14
15
  await (await Promise.resolve().then(() => require('../../../utils/ab-testing'))).recordStat({
15
16
  command: 'connect',
16
17
  nxVersion: versions_1.nxVersion,
@@ -7,6 +7,7 @@ export declare function connectToNxCloudIfExplicitlyAsked(opts: NxArgs): Promise
7
7
  export declare function connectWorkspaceToCloud(options: ConnectToNxCloudOptions, directory?: string): Promise<string>;
8
8
  export declare function connectToNxCloudCommand(options: {
9
9
  generateToken?: boolean;
10
+ checkRemote?: boolean;
10
11
  }, command?: string): Promise<boolean>;
11
12
  export declare function connectExistingRepoToNxCloudPrompt(command?: string, key?: MessageKey): Promise<boolean>;
12
13
  export declare function connectToNxCloudWithPrompt(command: string): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"connect-to-nx-cloud.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/nx-cloud/connect/connect-to-nx-cloud.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,uBAAuB,EACxB,MAAM,sEAAsE,CAAC;AAI9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,mCAAmC,CAAC;AAC3D,OAAO,EACL,UAAU,EAIX,MAAM,2BAA2B,CAAC;AAOnC,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,mBAAmB,WAclE;AAED,wBAAsB,iCAAiC,CACrD,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC,CAgBf;AAED,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,uBAAuB,EAChC,SAAS,SAAgB,mBAO1B;AAED,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE;IAAE,aAAa,CAAC,EAAE,OAAO,CAAA;CAAE,EACpC,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,OAAO,CAAC,CA+DlB;AAMD,wBAAsB,kCAAkC,CACtD,OAAO,SAAS,EAChB,GAAG,GAAE,UAA2B,GAC/B,OAAO,CAAC,OAAO,CAAC,CAWlB;AAED,wBAAsB,0BAA0B,CAAC,OAAO,EAAE,MAAM,iBAY/D"}
1
+ {"version":3,"file":"connect-to-nx-cloud.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/nx-cloud/connect/connect-to-nx-cloud.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,uBAAuB,EACxB,MAAM,sEAAsE,CAAC;AAI9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,mCAAmC,CAAC;AAC3D,OAAO,EACL,UAAU,EAIX,MAAM,2BAA2B,CAAC;AAQnC,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,mBAAmB,WAclE;AAED,wBAAsB,iCAAiC,CACrD,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC,CAgBf;AAED,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,uBAAuB,EAChC,SAAS,SAAgB,mBAO1B;AAED,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE;IAAE,aAAa,CAAC,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAA;CAAE,EAC3D,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,OAAO,CAAC,CA6ElB;AAMD,wBAAsB,kCAAkC,CACtD,OAAO,SAAS,EAChB,GAAG,GAAE,UAA2B,GAC/B,OAAO,CAAC,OAAO,CAAC,CAWlB;AAED,wBAAsB,0BAA0B,CAAC,OAAO,EAAE,MAAM,iBAY/D"}
@@ -16,6 +16,7 @@ const child_process_1 = require("../../../utils/child-process");
16
16
  const ab_testing_1 = require("../../../utils/ab-testing");
17
17
  const versions_1 = require("../../../utils/versions");
18
18
  const workspace_root_1 = require("../../../utils/workspace-root");
19
+ const git_utils_1 = require("../../../utils/git-utils");
19
20
  const chalk = require("chalk");
20
21
  const ora = require('ora');
21
22
  const open = require('open');
@@ -59,6 +60,17 @@ async function connectToNxCloudCommand(options, command) {
59
60
  const installationSource = process.env.NX_CONSOLE
60
61
  ? 'nx-console'
61
62
  : 'nx-connect';
63
+ const hasRemote = !!(0, git_utils_1.getVcsRemoteInfo)();
64
+ if (!hasRemote && options.checkRemote) {
65
+ output_1.output.error({
66
+ title: 'Missing VCS provider',
67
+ bodyLines: [
68
+ 'Push this repository to a VCS provider (e.g., GitHub) and try again.',
69
+ 'Go to https://github.com/new to create a repository on GitHub.',
70
+ ],
71
+ });
72
+ return false;
73
+ }
62
74
  if ((0, nx_cloud_utils_1.isNxCloudUsed)(nxJson)) {
63
75
  const token = process.env.NX_CLOUD_ACCESS_TOKEN ||
64
76
  nxJson.nxCloudAccessToken ||
@@ -66,7 +78,7 @@ async function connectToNxCloudCommand(options, command) {
66
78
  if (!token) {
67
79
  throw new Error(`Unable to authenticate. If you are connecting to Nx Cloud locally, set Nx Cloud ID in nx.json. If you are connecting in a CI context, either define accessToken in nx.json or set the NX_CLOUD_ACCESS_TOKEN env variable.`);
68
80
  }
69
- const connectCloudUrl = await (0, url_shorten_1.createNxCloudOnboardingURL)(installationSource, token, options?.generateToken !== true);
81
+ const connectCloudUrl = await (0, url_shorten_1.createNxCloudOnboardingURL)(installationSource, token, undefined, options?.generateToken === true);
70
82
  output_1.output.log({
71
83
  title: '✔ This workspace already has Nx Cloud set up',
72
84
  bodyLines: [
@@ -81,7 +93,7 @@ async function connectToNxCloudCommand(options, command) {
81
93
  generateToken: options?.generateToken,
82
94
  installationSource: command ?? installationSource,
83
95
  });
84
- const connectCloudUrl = await (0, url_shorten_1.createNxCloudOnboardingURL)('nx-connect', token, options?.generateToken !== true);
96
+ const connectCloudUrl = await (0, url_shorten_1.createNxCloudOnboardingURL)('nx-connect', token, undefined, options?.generateToken === true);
85
97
  try {
86
98
  const cloudConnectSpinner = ora(`Opening Nx Cloud ${connectCloudUrl} in your browser to connect your workspace.`).start();
87
99
  await sleep(2000);
@@ -1 +1 @@
1
- {"version":3,"file":"view-logs.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/nx-cloud/connect/view-logs.ts"],"names":[],"mappings":"AAYA,wBAAsB,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,CAkDhD"}
1
+ {"version":3,"file":"view-logs.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/nx-cloud/connect/view-logs.ts"],"names":[],"mappings":"AAWA,wBAAsB,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,CAiDhD"}
@@ -7,8 +7,6 @@ const nx_cloud_utils_1 = require("../../../utils/nx-cloud-utils");
7
7
  const output_1 = require("../../../utils/output");
8
8
  const nx_json_1 = require("../../../config/nx-json");
9
9
  const connect_to_nx_cloud_1 = require("./connect-to-nx-cloud");
10
- const connect_to_nx_cloud_2 = require("../../../nx-cloud/generators/connect-to-nx-cloud/connect-to-nx-cloud");
11
- const url_shorten_1 = require("../../../nx-cloud/utilities/url-shorten");
12
10
  async function viewLogs() {
13
11
  const cloudUsed = (0, nx_cloud_utils_1.isNxCloudUsed)((0, nx_json_1.readNxJson)());
14
12
  if (cloudUsed) {
@@ -28,10 +26,10 @@ async function viewLogs() {
28
26
  output_1.output.log({
29
27
  title: 'Connecting to Nx Cloud',
30
28
  });
31
- const token = await (0, connect_to_nx_cloud_1.connectWorkspaceToCloud)({
29
+ await (0, connect_to_nx_cloud_1.connectWorkspaceToCloud)({
32
30
  installationSource: 'view-logs',
31
+ generateToken: true,
33
32
  });
34
- await (0, connect_to_nx_cloud_2.printSuccessMessage)(token, 'view-logs', await (0, url_shorten_1.repoUsesGithub)());
35
33
  }
36
34
  catch (e) {
37
35
  output_1.output.log({
@@ -48,7 +46,7 @@ async function viewLogs() {
48
46
  if (!cloudUsed) {
49
47
  output_1.output.note({
50
48
  title: 'Your workspace is now connected to Nx Cloud',
51
- bodyLines: [`Learn more about Nx Cloud at https://nx.app`],
49
+ bodyLines: [`Learn more about Nx Cloud at https://nx.dev/nx-cloud`],
52
50
  });
53
51
  }
54
52
  return 0;
@@ -1 +1 @@
1
- {"version":3,"file":"changelog.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/command-line/release/changelog.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,sBAAsB,EAAc,MAAM,sBAAsB,CAAC;AAkB1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAmBpD,OAAO,EAEL,SAAS,EAUV,MAAM,aAAa,CAAC;AAQrB,OAAO,EACL,cAAc,EAQf,MAAM,gBAAgB,CAAC;AAExB,MAAM,WAAW,wBAAwB;IACvC,kBAAkB,CAAC,EAAE;QACnB,cAAc,EAAE,cAAc,CAAC;QAC/B,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;KACjC,CAAC;IACF,iBAAiB,CAAC,EAAE;QAClB,CAAC,WAAW,EAAE,MAAM,GAAG;YACrB,cAAc,EAAE,cAAc,CAAC;YAC/B,QAAQ,EAAE,MAAM,CAAC;YACjB,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;SACjC,CAAC;KACH,CAAC;CACH;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gBAAgB,CAAC,EAAE,SAAS,EAAE,CAAC;IAC/B,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED,MAAM,MAAM,WAAW,GAAG,CAAC,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAElE,eAAO,MAAM,0BAA0B,GAAI,MAAM,gBAAgB,oBACV,CAAC;AAExD,wBAAgB,SAAS,CAAC,qBAAqB,EAAE,sBAAsB,IAOnE,MAAM,gBAAgB,KACrB,OAAO,CAAC,wBAAwB,CAAC,CAqrBrC"}
1
+ {"version":3,"file":"changelog.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/command-line/release/changelog.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,sBAAsB,EAAc,MAAM,sBAAsB,CAAC;AAkB1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAmBpD,OAAO,EAEL,SAAS,EAUV,MAAM,aAAa,CAAC;AAQrB,OAAO,EACL,cAAc,EASf,MAAM,gBAAgB,CAAC;AAExB,MAAM,WAAW,wBAAwB;IACvC,kBAAkB,CAAC,EAAE;QACnB,cAAc,EAAE,cAAc,CAAC;QAC/B,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;KACjC,CAAC;IACF,iBAAiB,CAAC,EAAE;QAClB,CAAC,WAAW,EAAE,MAAM,GAAG;YACrB,cAAc,EAAE,cAAc,CAAC;YAC/B,QAAQ,EAAE,MAAM,CAAC;YACjB,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;SACjC,CAAC;KACH,CAAC;CACH;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gBAAgB,CAAC,EAAE,SAAS,EAAE,CAAC;IAC/B,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED,MAAM,MAAM,WAAW,GAAG,CAAC,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAElE,eAAO,MAAM,0BAA0B,GAAI,MAAM,gBAAgB,oBACV,CAAC;AAExD,wBAAgB,SAAS,CAAC,qBAAqB,EAAE,sBAAsB,IAOnE,MAAM,gBAAgB,KACrB,OAAO,CAAC,wBAAwB,CAAC,CAqrBrC"}
@@ -827,11 +827,15 @@ async function generateChangelogForProjects({ tree, args, changes, projectsVersi
827
827
  * no changelog entry is relevant in that case.
828
828
  */
829
829
  if (!projectsVersionData[project.name] ||
830
- projectsVersionData[project.name].newVersion === null) {
830
+ (projectsVersionData[project.name].newVersion === null &&
831
+ !projectsVersionData[project.name].dockerVersion)) {
831
832
  continue;
832
833
  }
834
+ const preferDockerVersion = (0, shared_1.shouldPreferDockerVersionForReleaseGroup)(releaseGroup);
833
835
  const releaseVersion = new shared_1.ReleaseVersion({
834
- version: projectsVersionData[project.name].newVersion,
836
+ version: preferDockerVersion && projectsVersionData[project.name].dockerVersion
837
+ ? projectsVersionData[project.name].dockerVersion
838
+ : projectsVersionData[project.name].newVersion,
835
839
  releaseTagPattern: releaseGroup.releaseTagPattern,
836
840
  projectName: project.name,
837
841
  });
@@ -33,6 +33,7 @@ export type VersionOptions = NxReleaseArgs & GitOptions & VersionPlanArgs & Firs
33
33
  */
34
34
  generatorOptionsOverrides?: Record<string, unknown>;
35
35
  versionActionsOptionsOverrides?: Record<string, unknown>;
36
+ dockerVersionScheme?: string;
36
37
  };
37
38
  export type ChangelogOptions = NxReleaseArgs & GitOptions & VersionPlanArgs & FirstReleaseArgs & {
38
39
  version?: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"command-object.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/command-line/release/command-object.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,aAAa,EAAY,MAAM,OAAO,CAAC;AAEtD,OAAO,EACL,WAAW,EACX,cAAc,EAQf,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,aAAc,SAAQ,iBAAiB;IACtD,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,UAAU,UAAU;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAClC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,cAAc,GAAG,aAAa,GACxC,UAAU,GACV,eAAe,GACf,gBAAgB,GAAG;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;OAIG;IACH,yBAAyB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpD,8BAA8B,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1D,CAAC;AAEJ,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAC1C,UAAU,GACV,eAAe,GACf,gBAAgB,GAAG;IAEjB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,QAAQ,CAAC;CAC7C,CAAC;AAEJ,MAAM,MAAM,cAAc,GAAG,aAAa,GACxC,OAAO,CAAC,cAAc,CAAC,GAAG;IAAE,WAAW,CAAC,EAAE,WAAW,CAAA;CAAE,GAAG,gBAAgB,GAAG;IAC3E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAEJ,MAAM,MAAM,WAAW,GAAG,aAAa,GAAG;IACxC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,iBAAiB,GAAG;IACjD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,aAAa,GACxC,gBAAgB,GAAG;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,KAAK,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IAChC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEJ,MAAM,MAAM,eAAe,GAAG;IAC5B,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,aAAa,CAC7C,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACvB,aAAa,CA0Ed,CAAC"}
1
+ {"version":3,"file":"command-object.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/command-line/release/command-object.ts"],"names":[],"mappings":"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"}
@@ -80,6 +80,10 @@ const releaseCommand = {
80
80
  type: 'string',
81
81
  describe: 'The optional prerelease identifier to apply to the version. This will only be applied in the case that the specifier argument has been set to `prerelease` OR when conventional commits are enabled, in which case it will modify the resolved specifier from conventional commits to be its prerelease equivalent. E.g. minor -> preminor.',
82
82
  default: '',
83
+ })
84
+ .options('dockerVersionScheme', {
85
+ type: 'string',
86
+ describe: 'Exact docker version scheme to apply to the selected release group. Warning: Docker support is experimental. Breaking changes may occur and not adhere to semver versioning.',
83
87
  })
84
88
  .option('yes', {
85
89
  type: 'boolean',
@@ -1,8 +1,13 @@
1
- import { NxJsonConfiguration, NxReleaseConfiguration } from '../../../config/nx-json';
1
+ import { NxJsonConfiguration, NxReleaseConfiguration, NxReleaseDockerConfiguration } from '../../../config/nx-json';
2
2
  import { ProjectFileMap, ProjectGraph } from '../../../config/project-graph';
3
3
  type DeepRequired<T> = Required<{
4
4
  [K in keyof T]: T[K] extends Required<T[K]> ? T[K] : DeepRequired<T[K]>;
5
5
  }>;
6
+ type EnsureDockerOptional<T> = {
7
+ [K in keyof T]: Omit<T[K], 'docker'> & {
8
+ docker: DeepRequired<NxReleaseDockerConfiguration> | undefined;
9
+ };
10
+ };
6
11
  type EnsureProjectsArray<T> = {
7
12
  [K in keyof T]: T[K] extends {
8
13
  projects: any;
@@ -36,12 +41,14 @@ export declare const DEFAULT_VERSION_ACTIONS_PATH = "@nx/js/src/release/version-
36
41
  * pattern such as directories and globs).
37
42
  */
38
43
  export type NxReleaseConfig = Omit<DeepRequired<NxReleaseConfiguration & {
39
- groups: DeepRequired<RemoveTrueFromPropertiesOnEach<EnsureProjectsArray<NxReleaseConfiguration['groups']>, 'changelog'>>;
44
+ groups: EnsureDockerOptional<DeepRequired<RemoveTrueFromPropertiesOnEach<EnsureProjectsArray<NxReleaseConfiguration['groups']>, 'changelog' | 'docker'>>>;
40
45
  changelog: RemoveTrueFromProperties<DeepRequired<NxReleaseConfiguration['changelog']>, 'workspaceChangelog' | 'projectChangelogs'>;
41
46
  conventionalCommits: {
42
47
  types: RemoveBooleanFromPropertiesOnEach<DeepRequired<RemoveBooleanFromProperties<DeepRequired<NxReleaseConfiguration['conventionalCommits']['types']>, string>>, 'changelog'>;
43
48
  };
44
- }>, 'projects'>;
49
+ }>, 'projects' | 'docker'> & {
50
+ docker: DeepRequired<NxReleaseDockerConfiguration> | undefined;
51
+ };
45
52
  export interface CreateNxReleaseConfigError {
46
53
  code: 'PROJECTS_AND_GROUPS_DEFINED' | 'RELEASE_GROUP_MATCHES_NO_PROJECTS' | 'RELEASE_GROUP_RELEASE_TAG_PATTERN_VERSION_PLACEHOLDER_MISSING_OR_EXCESSIVE' | 'PROJECT_MATCHES_MULTIPLE_GROUPS' | 'CONVENTIONAL_COMMITS_SHORTHAND_MIXED_WITH_OVERLAPPING_OPTIONS' | 'GLOBAL_GIT_CONFIG_MIXED_WITH_GRANULAR_GIT_CONFIG' | 'CANNOT_RESOLVE_CHANGELOG_RENDERER' | 'INVALID_CHANGELOG_CREATE_RELEASE_PROVIDER' | 'INVALID_CHANGELOG_CREATE_RELEASE_HOSTNAME' | 'INVALID_CHANGELOG_CREATE_RELEASE_API_BASE_URL' | 'GIT_PUSH_FALSE_WITH_CREATE_RELEASE';
47
54
  data: Record<string, string | string[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/release/config/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nx/src/command-line/release/config/config.ts"],"names":[],"mappings":"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"}