nx 21.0.0-beta.1 → 21.0.0-beta.11

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 (250) hide show
  1. package/.eslintrc.json +5 -1
  2. package/migrations.json +15 -35
  3. package/package.json +12 -12
  4. package/release/index.d.ts +1 -1
  5. package/release/index.js +2 -1
  6. package/schemas/nx-schema.json +187 -35
  7. package/schemas/project-schema.json +5 -0
  8. package/src/adapter/angular-json.js +11 -0
  9. package/src/adapter/compat.d.ts +1 -1
  10. package/src/adapter/compat.js +3 -0
  11. package/src/command-line/add/add.js +6 -16
  12. package/src/command-line/affected/command-object.js +6 -6
  13. package/src/command-line/examples.js +0 -4
  14. package/src/command-line/exec/command-object.js +1 -1
  15. package/src/command-line/generate/generator-utils.js +8 -3
  16. package/src/command-line/import/import.js +1 -1
  17. package/src/command-line/init/command-object.js +18 -6
  18. package/src/command-line/init/configure-plugins.d.ts +6 -7
  19. package/src/command-line/init/configure-plugins.js +52 -38
  20. package/src/command-line/init/implementation/add-nx-to-turborepo.d.ts +4 -0
  21. package/src/command-line/init/implementation/add-nx-to-turborepo.js +49 -0
  22. package/src/command-line/init/implementation/check-compatible-with-plugins.js +7 -1
  23. package/src/command-line/init/implementation/deduce-default-base.d.ts +1 -0
  24. package/src/command-line/init/implementation/deduce-default-base.js +53 -0
  25. package/src/command-line/init/implementation/react/add-vite-commands-to-package-scripts.js +6 -4
  26. package/src/command-line/init/implementation/react/index.d.ts +1 -1
  27. package/src/command-line/init/implementation/react/index.js +32 -185
  28. package/src/command-line/init/implementation/react/write-vite-config.js +19 -3
  29. package/src/command-line/init/implementation/utils.d.ts +6 -2
  30. package/src/command-line/init/implementation/utils.js +110 -45
  31. package/src/command-line/init/init-v1.js +1 -1
  32. package/src/command-line/init/init-v2.d.ts +1 -0
  33. package/src/command-line/init/init-v2.js +70 -39
  34. package/src/command-line/migrate/migrate-ui-api.d.ts +58 -0
  35. package/src/command-line/migrate/migrate-ui-api.js +227 -0
  36. package/src/command-line/migrate/migrate.d.ts +23 -4
  37. package/src/command-line/migrate/migrate.js +138 -86
  38. package/src/command-line/nx-commands.js +19 -5
  39. package/src/command-line/register/command-object.d.ts +6 -0
  40. package/src/command-line/{activate-powerpack → register}/command-object.js +9 -9
  41. package/src/command-line/register/register.d.ts +2 -0
  42. package/src/command-line/register/register.js +9 -0
  43. package/src/command-line/release/changelog.js +18 -15
  44. package/src/command-line/release/command-object.d.ts +8 -0
  45. package/src/command-line/release/command-object.js +9 -0
  46. package/src/command-line/release/config/config.d.ts +8 -7
  47. package/src/command-line/release/config/config.js +139 -45
  48. package/src/command-line/release/config/use-legacy-versioning.d.ts +2 -0
  49. package/src/command-line/release/config/use-legacy-versioning.js +9 -0
  50. package/src/command-line/release/index.d.ts +4 -0
  51. package/src/command-line/release/index.js +6 -1
  52. package/src/command-line/release/plan-check.js +6 -3
  53. package/src/command-line/release/plan.js +7 -3
  54. package/src/command-line/release/publish.js +7 -3
  55. package/src/command-line/release/release.js +8 -3
  56. package/src/command-line/release/utils/batch-projects-by-generator-config.js +6 -3
  57. package/src/command-line/release/utils/git.d.ts +3 -2
  58. package/src/command-line/release/utils/git.js +65 -9
  59. package/src/command-line/release/utils/github.js +3 -1
  60. package/src/command-line/release/utils/resolve-semver-specifier.d.ts +2 -1
  61. package/src/command-line/release/utils/resolve-semver-specifier.js +2 -1
  62. package/src/command-line/release/utils/semver.d.ts +8 -0
  63. package/src/command-line/release/utils/semver.js +8 -0
  64. package/src/command-line/release/utils/shared-legacy.d.ts +25 -0
  65. package/src/command-line/release/utils/shared-legacy.js +2 -0
  66. package/src/command-line/release/utils/shared.d.ts +11 -17
  67. package/src/command-line/release/version/derive-specifier-from-conventional-commits.d.ts +7 -0
  68. package/src/command-line/release/version/derive-specifier-from-conventional-commits.js +47 -0
  69. package/src/command-line/release/version/deriver-specifier-from-version-plans.d.ts +8 -0
  70. package/src/command-line/release/version/deriver-specifier-from-version-plans.js +59 -0
  71. package/src/command-line/release/version/project-logger.d.ts +8 -0
  72. package/src/command-line/release/version/project-logger.js +45 -0
  73. package/src/command-line/release/version/release-group-processor.d.ts +252 -0
  74. package/src/command-line/release/version/release-group-processor.js +1057 -0
  75. package/src/command-line/release/version/resolve-current-version.d.ts +32 -0
  76. package/src/command-line/release/version/resolve-current-version.js +241 -0
  77. package/src/command-line/release/version/test-utils.d.ts +93 -0
  78. package/src/command-line/release/version/test-utils.js +415 -0
  79. package/src/command-line/release/version/topological-sort.d.ts +9 -0
  80. package/src/command-line/release/version/topological-sort.js +41 -0
  81. package/src/command-line/release/version/version-actions.d.ts +171 -0
  82. package/src/command-line/release/version/version-actions.js +195 -0
  83. package/src/command-line/release/version-legacy.d.ts +46 -0
  84. package/src/command-line/release/version-legacy.js +453 -0
  85. package/src/command-line/release/version.d.ts +0 -40
  86. package/src/command-line/release/version.js +84 -262
  87. package/src/command-line/repair/repair.js +8 -3
  88. package/src/command-line/report/report.d.ts +7 -3
  89. package/src/command-line/report/report.js +52 -18
  90. package/src/command-line/run/command-object.js +2 -2
  91. package/src/command-line/run/executor-utils.d.ts +6 -1
  92. package/src/command-line/run/executor-utils.js +10 -1
  93. package/src/command-line/run/run.js +2 -2
  94. package/src/command-line/run-many/command-object.js +2 -2
  95. package/src/command-line/yargs-utils/shared-options.d.ts +4 -0
  96. package/src/command-line/yargs-utils/shared-options.js +20 -0
  97. package/src/config/misc-interfaces.d.ts +20 -2
  98. package/src/config/nx-json.d.ts +158 -18
  99. package/src/config/project-graph.d.ts +4 -2
  100. package/src/config/project-graph.js +8 -0
  101. package/src/config/workspace-json-project-json.d.ts +2 -2
  102. package/src/core/graph/main.js +1 -1
  103. package/src/core/graph/runtime.js +1 -1
  104. package/src/core/graph/styles.css +2 -2
  105. package/src/core/graph/styles.js +1 -1
  106. package/src/daemon/client/client.d.ts +2 -0
  107. package/src/daemon/client/client.js +15 -0
  108. package/src/daemon/message-types/glob.d.ts +7 -0
  109. package/src/daemon/message-types/glob.js +9 -1
  110. package/src/daemon/message-types/hash-glob.d.ts +6 -0
  111. package/src/daemon/message-types/hash-glob.js +9 -1
  112. package/src/daemon/server/handle-glob.d.ts +1 -0
  113. package/src/daemon/server/handle-glob.js +8 -0
  114. package/src/daemon/server/handle-hash-glob.d.ts +1 -0
  115. package/src/daemon/server/handle-hash-glob.js +8 -0
  116. package/src/daemon/server/logger.js +2 -1
  117. package/src/daemon/server/server.js +7 -0
  118. package/src/devkit-exports.d.ts +1 -1
  119. package/src/devkit-internals.d.ts +3 -2
  120. package/src/devkit-internals.js +5 -1
  121. package/src/executors/run-commands/run-commands.impl.d.ts +2 -5
  122. package/src/executors/run-commands/run-commands.impl.js +14 -42
  123. package/src/executors/run-commands/running-tasks.d.ts +9 -4
  124. package/src/executors/run-commands/running-tasks.js +103 -30
  125. package/src/executors/run-script/run-script.impl.js +4 -3
  126. package/src/generators/internal-utils/format-changed-files-with-prettier-if-available.js +8 -0
  127. package/src/generators/testing-utils/create-tree.js +5 -1
  128. package/src/migrations/update-21-0-0/release-version-config-changes.d.ts +2 -0
  129. package/src/migrations/update-21-0-0/release-version-config-changes.js +111 -0
  130. package/src/migrations/update-21-0-0/remove-custom-tasks-runner.d.ts +2 -0
  131. package/src/migrations/update-21-0-0/remove-custom-tasks-runner.js +38 -0
  132. package/src/migrations/{update-18-0-0/disable-crystal-for-existing-workspaces.js → update-21-0-0/remove-legacy-cache.js} +10 -4
  133. package/src/native/index.d.ts +98 -19
  134. package/src/native/index.js +16 -2
  135. package/src/native/native-bindings.js +7 -0
  136. package/src/native/nx.wasi-browser.js +20 -19
  137. package/src/native/nx.wasi.cjs +20 -19
  138. package/src/native/nx.wasm32-wasi.wasm +0 -0
  139. package/src/nx-cloud/nx-cloud-tasks-runner-shell.js +3 -3
  140. package/src/plugins/js/index.d.ts +2 -1
  141. package/src/plugins/js/index.js +8 -1
  142. package/src/plugins/js/lock-file/lock-file.js +28 -13
  143. package/src/plugins/js/lock-file/utils/package-json.d.ts +1 -1
  144. package/src/plugins/js/lock-file/utils/package-json.js +8 -6
  145. package/src/plugins/js/lock-file/utils/pnpm-normalizer.js +3 -3
  146. package/src/plugins/js/lock-file/yarn-parser.js +85 -39
  147. package/src/plugins/js/project-graph/affected/lock-file-changes.js +1 -0
  148. package/src/plugins/js/project-graph/build-dependencies/explicit-project-dependencies.js +1 -1
  149. package/src/plugins/js/project-graph/build-dependencies/target-project-locator.d.ts +10 -1
  150. package/src/plugins/js/project-graph/build-dependencies/target-project-locator.js +59 -6
  151. package/src/plugins/js/utils/packages.js +22 -3
  152. package/src/plugins/js/utils/register.js +1 -0
  153. package/src/plugins/js/utils/typescript.js +3 -3
  154. package/src/plugins/package-json/create-nodes.d.ts +1 -1
  155. package/src/plugins/package-json/create-nodes.js +4 -2
  156. package/src/project-graph/affected/locators/project-glob-changes.js +2 -2
  157. package/src/project-graph/error-types.js +32 -2
  158. package/src/project-graph/file-utils.d.ts +1 -10
  159. package/src/project-graph/file-utils.js +2 -77
  160. package/src/project-graph/plugins/get-plugins.js +2 -1
  161. package/src/project-graph/plugins/in-process-loader.js +1 -1
  162. package/src/project-graph/plugins/isolation/plugin-worker.js +12 -6
  163. package/src/project-graph/plugins/loaded-nx-plugin.d.ts +2 -1
  164. package/src/project-graph/plugins/loaded-nx-plugin.js +1 -5
  165. package/src/project-graph/plugins/public-api.d.ts +1 -1
  166. package/src/project-graph/plugins/utils.d.ts +2 -2
  167. package/src/project-graph/plugins/utils.js +2 -2
  168. package/src/project-graph/project-graph.js +1 -1
  169. package/src/project-graph/utils/project-configuration-utils.d.ts +3 -3
  170. package/src/project-graph/utils/project-configuration-utils.js +54 -21
  171. package/src/project-graph/utils/retrieve-workspace-files.d.ts +1 -1
  172. package/src/project-graph/utils/retrieve-workspace-files.js +14 -18
  173. package/src/tasks-runner/batch/batch-messages.d.ts +2 -0
  174. package/src/tasks-runner/batch/run-batch.js +4 -5
  175. package/src/tasks-runner/cache.d.ts +21 -8
  176. package/src/tasks-runner/cache.js +106 -38
  177. package/src/tasks-runner/create-task-graph.d.ts +0 -1
  178. package/src/tasks-runner/create-task-graph.js +11 -11
  179. package/src/tasks-runner/default-tasks-runner.js +5 -14
  180. package/src/tasks-runner/forked-process-task-runner.d.ts +8 -3
  181. package/src/tasks-runner/forked-process-task-runner.js +59 -46
  182. package/src/tasks-runner/init-tasks-runner.d.ts +15 -1
  183. package/src/tasks-runner/init-tasks-runner.js +62 -2
  184. package/src/tasks-runner/is-tui-enabled.d.ts +2 -0
  185. package/src/tasks-runner/is-tui-enabled.js +64 -0
  186. package/src/tasks-runner/life-cycle.d.ts +14 -3
  187. package/src/tasks-runner/life-cycle.js +37 -2
  188. package/src/tasks-runner/life-cycles/task-history-life-cycle-old.d.ts +2 -0
  189. package/src/tasks-runner/life-cycles/task-history-life-cycle-old.js +15 -7
  190. package/src/tasks-runner/life-cycles/task-history-life-cycle.d.ts +5 -0
  191. package/src/tasks-runner/life-cycles/task-history-life-cycle.js +35 -5
  192. package/src/tasks-runner/life-cycles/tui-summary-life-cycle.d.ts +18 -0
  193. package/src/tasks-runner/life-cycles/tui-summary-life-cycle.js +230 -0
  194. package/src/tasks-runner/pseudo-terminal.d.ts +11 -7
  195. package/src/tasks-runner/pseudo-terminal.js +47 -35
  196. package/src/tasks-runner/run-command.d.ts +4 -1
  197. package/src/tasks-runner/run-command.js +219 -63
  198. package/src/tasks-runner/running-tasks/node-child-process.js +4 -11
  199. package/src/tasks-runner/running-tasks/running-task.d.ts +3 -0
  200. package/src/tasks-runner/running-tasks/shared-running-task.d.ts +14 -0
  201. package/src/tasks-runner/running-tasks/shared-running-task.js +30 -0
  202. package/src/tasks-runner/task-env.d.ts +1 -4
  203. package/src/tasks-runner/task-env.js +2 -0
  204. package/src/tasks-runner/task-graph-utils.d.ts +3 -0
  205. package/src/tasks-runner/task-graph-utils.js +31 -2
  206. package/src/tasks-runner/task-orchestrator.d.ts +26 -10
  207. package/src/tasks-runner/task-orchestrator.js +221 -57
  208. package/src/tasks-runner/tasks-runner.d.ts +1 -0
  209. package/src/tasks-runner/tasks-schedule.d.ts +1 -0
  210. package/src/tasks-runner/tasks-schedule.js +9 -0
  211. package/src/tasks-runner/utils.d.ts +2 -2
  212. package/src/tasks-runner/utils.js +18 -12
  213. package/src/utils/child-process.d.ts +4 -0
  214. package/src/utils/child-process.js +23 -30
  215. package/src/utils/command-line-utils.d.ts +1 -1
  216. package/src/utils/find-matching-projects.js +2 -2
  217. package/src/utils/git-utils.d.ts +1 -1
  218. package/src/utils/git-utils.js +8 -3
  219. package/src/utils/handle-errors.js +15 -0
  220. package/src/utils/is-ci.js +4 -1
  221. package/src/utils/is-using-prettier.d.ts +3 -0
  222. package/src/utils/is-using-prettier.js +62 -0
  223. package/src/utils/nx-key.d.ts +7 -0
  224. package/src/utils/nx-key.js +52 -0
  225. package/src/utils/package-json.d.ts +1 -1
  226. package/src/utils/package-json.js +16 -2
  227. package/src/utils/package-manager.js +2 -2
  228. package/src/utils/path.js +1 -1
  229. package/src/utils/require-nx-key.d.ts +1 -0
  230. package/src/utils/require-nx-key.js +22 -0
  231. package/src/utils/workspace-context.d.ts +2 -0
  232. package/src/utils/workspace-context.js +16 -0
  233. package/src/command-line/activate-powerpack/activate-powerpack.d.ts +0 -2
  234. package/src/command-line/activate-powerpack/activate-powerpack.js +0 -34
  235. package/src/command-line/activate-powerpack/command-object.d.ts +0 -6
  236. package/src/command-line/init/implementation/react/write-craco-config.d.ts +0 -1
  237. package/src/command-line/init/implementation/react/write-craco-config.js +0 -61
  238. package/src/migrations/update-17-0-0/move-cache-directory.d.ts +0 -2
  239. package/src/migrations/update-17-0-0/move-cache-directory.js +0 -35
  240. package/src/migrations/update-17-0-0/rm-default-collection-npm-scope.js +0 -72
  241. package/src/migrations/update-17-0-0/use-minimal-config-for-tasks-runner-options.d.ts +0 -2
  242. package/src/migrations/update-17-0-0/use-minimal-config-for-tasks-runner-options.js +0 -122
  243. package/src/migrations/update-17-2-0/move-default-base.d.ts +0 -5
  244. package/src/migrations/update-17-2-0/move-default-base.js +0 -21
  245. package/src/migrations/update-17-3-0/nx-release-path.d.ts +0 -3
  246. package/src/migrations/update-17-3-0/nx-release-path.js +0 -47
  247. package/src/migrations/update-18-0-0/disable-crystal-for-existing-workspaces.d.ts +0 -2
  248. package/src/utils/powerpack.d.ts +0 -5
  249. package/src/utils/powerpack.js +0 -33
  250. /package/src/migrations/{update-17-0-0/rm-default-collection-npm-scope.d.ts → update-21-0-0/remove-legacy-cache.d.ts} +0 -0
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SharedRunningTask = void 0;
4
+ class SharedRunningTask {
5
+ constructor(runningTasksService, taskId) {
6
+ this.runningTasksService = runningTasksService;
7
+ this.exitCallbacks = [];
8
+ this.waitForTaskToFinish(taskId).then(() => {
9
+ // notify exit callbacks
10
+ this.exitCallbacks.forEach((cb) => cb(0));
11
+ });
12
+ }
13
+ async getResults() {
14
+ throw new Error('Results cannot be retrieved from a shared task');
15
+ }
16
+ kill() {
17
+ this.exitCallbacks.forEach((cb) => cb(0));
18
+ }
19
+ onExit(cb) {
20
+ this.exitCallbacks.push(cb);
21
+ }
22
+ async waitForTaskToFinish(taskId) {
23
+ console.log(`Waiting for ${taskId} in another nx process`);
24
+ // wait for the running task to finish
25
+ do {
26
+ await new Promise((resolve) => setTimeout(resolve, 100));
27
+ } while (this.runningTasksService.getRunningTasks([taskId]).length);
28
+ }
29
+ }
30
+ exports.SharedRunningTask = SharedRunningTask;
@@ -1,10 +1,7 @@
1
1
  import { Task } from '../config/task-graph';
2
2
  export declare function getEnvVariablesForBatchProcess(skipNxCache: boolean, captureStderr: boolean): NodeJS.ProcessEnv;
3
3
  export declare function getTaskSpecificEnv(task: Task): NodeJS.ProcessEnv;
4
- export declare function getEnvVariablesForTask(task: Task, taskSpecificEnv: NodeJS.ProcessEnv, forceColor: string, skipNxCache: boolean, captureStderr: boolean, outputPath: string, streamOutput: boolean): {
5
- [x: string]: string;
6
- TZ?: string;
7
- };
4
+ export declare function getEnvVariablesForTask(task: Task, taskSpecificEnv: NodeJS.ProcessEnv, forceColor: string, skipNxCache: boolean, captureStderr: boolean, outputPath: string, streamOutput: boolean): NodeJS.ProcessEnv;
8
5
  /**
9
6
  * This function loads a .env file and expands the variables in it.
10
7
  * @param filename the .env file to load
@@ -75,6 +75,8 @@ function getNxEnvVariablesForTask(task, forceColor, skipNxCache, captureStderr,
75
75
  return {
76
76
  ...getNxEnvVariablesForForkedProcess(forceColor, skipNxCache, captureStderr, outputPath, streamOutput),
77
77
  ...env,
78
+ // Ensure the TUI does not get spawned within the TUI if ever tasks invoke Nx again
79
+ NX_TUI: 'false',
78
80
  };
79
81
  }
80
82
  /**
@@ -6,6 +6,7 @@ import { TaskGraph } from '../config/task-graph';
6
6
  */
7
7
  export declare function findCycle(graph: {
8
8
  dependencies: Record<string, string[]>;
9
+ continuousDependencies?: Record<string, string[]>;
9
10
  }): string[] | null;
10
11
  /**
11
12
  * This function finds all cycles in the graph.
@@ -13,9 +14,11 @@ export declare function findCycle(graph: {
13
14
  */
14
15
  export declare function findCycles(graph: {
15
16
  dependencies: Record<string, string[]>;
17
+ continuousDependencies?: Record<string, string[]>;
16
18
  }): Set<string> | null;
17
19
  export declare function makeAcyclic(graph: {
18
20
  roots: string[];
19
21
  dependencies: Record<string, string[]>;
20
22
  }): void;
21
23
  export declare function validateNoAtomizedTasks(taskGraph: TaskGraph, projectGraph: ProjectGraph): void;
24
+ export declare function assertTaskGraphDoesNotContainInvalidTargets(taskGraph: TaskGraph): void;
@@ -4,12 +4,16 @@ exports.findCycle = findCycle;
4
4
  exports.findCycles = findCycles;
5
5
  exports.makeAcyclic = makeAcyclic;
6
6
  exports.validateNoAtomizedTasks = validateNoAtomizedTasks;
7
+ exports.assertTaskGraphDoesNotContainInvalidTargets = assertTaskGraphDoesNotContainInvalidTargets;
7
8
  const output_1 = require("../utils/output");
8
9
  function _findCycle(graph, id, visited, path) {
9
10
  if (visited[id])
10
11
  return null;
11
12
  visited[id] = true;
12
- for (const d of graph.dependencies[id]) {
13
+ for (const d of [
14
+ ...graph.dependencies[id],
15
+ ...(graph.continuousDependencies?.[id] ?? []),
16
+ ]) {
13
17
  if (path.includes(d))
14
18
  return [...path, d];
15
19
  const cycle = _findCycle(graph, d, visited, [...path, d]);
@@ -57,9 +61,11 @@ function _makeAcyclic(graph, id, visited, path) {
57
61
  return;
58
62
  visited[id] = true;
59
63
  const deps = graph.dependencies[id];
60
- for (const d of [...deps]) {
64
+ const continuousDeps = graph.continuousDependencies?.[id] ?? [];
65
+ for (const d of [...deps, ...continuousDeps]) {
61
66
  if (path.includes(d)) {
62
67
  deps.splice(deps.indexOf(d), 1);
68
+ continuousDeps.splice(continuousDeps.indexOf(d), 1);
63
69
  }
64
70
  else {
65
71
  _makeAcyclic(graph, d, visited, [...path, d]);
@@ -109,3 +115,26 @@ function validateNoAtomizedTasks(taskGraph, projectGraph) {
109
115
  }
110
116
  process.exit(1);
111
117
  }
118
+ function assertTaskGraphDoesNotContainInvalidTargets(taskGraph) {
119
+ const invalidTasks = [];
120
+ for (const task of Object.values(taskGraph.tasks)) {
121
+ if (task.parallelism === false &&
122
+ taskGraph.continuousDependencies[task.id].length > 0) {
123
+ invalidTasks.push(task);
124
+ }
125
+ }
126
+ if (invalidTasks.length > 0) {
127
+ throw new NonParallelTaskDependsOnContinuousTasksError(invalidTasks, taskGraph);
128
+ }
129
+ }
130
+ class NonParallelTaskDependsOnContinuousTasksError extends Error {
131
+ constructor(invalidTasks, taskGraph) {
132
+ let message = 'The following tasks do not support parallelism but depend on continuous tasks:';
133
+ for (const task of invalidTasks) {
134
+ message += `\n - ${task.id} -> ${taskGraph.continuousDependencies[task.id].join(', ')}`;
135
+ }
136
+ super(message);
137
+ this.invalidTasks = invalidTasks;
138
+ this.name = 'NonParallelTaskDependsOnContinuousTasksError';
139
+ }
140
+ }
@@ -1,14 +1,17 @@
1
- import { TaskHasher } from '../hasher/task-hasher';
2
- import { DefaultTasksRunnerOptions } from './default-tasks-runner';
3
- import { TaskStatus } from './tasks-runner';
1
+ import { NxJsonConfiguration } from '../config/nx-json';
4
2
  import { ProjectGraph } from '../config/project-graph';
5
- import { TaskGraph } from '../config/task-graph';
3
+ import { Task, TaskGraph } from '../config/task-graph';
6
4
  import { DaemonClient } from '../daemon/client/client';
7
- import { NxJsonConfiguration } from '../config/nx-json';
5
+ import { TaskHasher } from '../hasher/task-hasher';
8
6
  import { NxArgs } from '../utils/command-line-utils';
7
+ import { DefaultTasksRunnerOptions } from './default-tasks-runner';
8
+ import { RunningTask } from './running-tasks/running-task';
9
+ import { TaskStatus } from './tasks-runner';
10
+ import { SharedRunningTask } from './running-tasks/shared-running-task';
9
11
  export declare class TaskOrchestrator {
10
12
  private readonly hasher;
11
13
  private readonly initiatingProject;
14
+ private readonly initiatingTasks;
12
15
  private readonly projectGraph;
13
16
  private readonly taskGraph;
14
17
  private readonly nxJson;
@@ -16,12 +19,16 @@ export declare class TaskOrchestrator {
16
19
  private readonly bail;
17
20
  private readonly daemon;
18
21
  private readonly outputStyle;
22
+ private readonly taskGraphForHashing;
19
23
  private taskDetails;
20
24
  private cache;
25
+ private readonly tuiEnabled;
21
26
  private forkedProcessTaskRunner;
27
+ private runningTasksService;
22
28
  private tasksSchedule;
23
29
  private batchEnv;
24
30
  private reverseTaskDeps;
31
+ private initializingTaskIds;
25
32
  private processedTasks;
26
33
  private processedBatches;
27
34
  private completedTasks;
@@ -29,25 +36,32 @@ export declare class TaskOrchestrator {
29
36
  private groups;
30
37
  private bailed;
31
38
  private runningContinuousTasks;
32
- private cleaningUp;
33
- constructor(hasher: TaskHasher, initiatingProject: string | undefined, projectGraph: ProjectGraph, taskGraph: TaskGraph, nxJson: NxJsonConfiguration, options: NxArgs & DefaultTasksRunnerOptions, bail: boolean, daemon: DaemonClient, outputStyle: string);
39
+ constructor(hasher: TaskHasher, initiatingProject: string | undefined, initiatingTasks: Task[], projectGraph: ProjectGraph, taskGraph: TaskGraph, nxJson: NxJsonConfiguration, options: NxArgs & DefaultTasksRunnerOptions, bail: boolean, daemon: DaemonClient, outputStyle: string, taskGraphForHashing?: TaskGraph);
40
+ init(): Promise<void>;
34
41
  run(): Promise<{
35
42
  [id: string]: TaskStatus;
36
43
  }>;
37
44
  private executeNextBatchOfTasksUsingTaskSchedule;
38
- private processScheduledTask;
45
+ processTasks(taskIds: string[]): void;
46
+ private processTask;
39
47
  private processScheduledBatch;
40
48
  private processAllScheduledTasks;
41
49
  private applyCachedResults;
42
50
  private applyCachedResult;
43
51
  private applyFromCacheOrRunBatch;
44
52
  private runBatch;
45
- private applyFromCacheOrRunTask;
53
+ applyFromCacheOrRunTask(doNotSkipCache: boolean, task: Task, groupId: number): Promise<{
54
+ task: Task;
55
+ code: number;
56
+ status: TaskStatus;
57
+ terminalOutput?: string;
58
+ }>;
46
59
  private runTask;
47
60
  private runTaskInForkedProcess;
48
- private startContinuousTask;
61
+ startContinuousTask(task: Task, groupId: number): Promise<RunningTask | SharedRunningTask>;
49
62
  private preRunSteps;
50
63
  private postRunSteps;
64
+ private scheduleNextTasksAndReleaseThreads;
51
65
  private complete;
52
66
  private pipeOutputCapture;
53
67
  private shouldCacheTaskResult;
@@ -56,4 +70,6 @@ export declare class TaskOrchestrator {
56
70
  private shouldCopyOutputsFromCache;
57
71
  private recordOutputsHash;
58
72
  private cleanup;
73
+ private cleanUpUnneededContinuousTasks;
59
74
  }
75
+ export declare function getThreadCount(options: NxArgs & DefaultTasksRunnerOptions, taskGraph: TaskGraph): number;