nx 21.5.1 → 21.5.3

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 (38) hide show
  1. package/package.json +11 -11
  2. package/schemas/nx-schema.json +14 -0
  3. package/src/command-line/migrate/command-object.js +1 -1
  4. package/src/command-line/migrate/migrate.d.ts +2 -2
  5. package/src/command-line/migrate/migrate.d.ts.map +1 -1
  6. package/src/command-line/migrate/migrate.js +15 -6
  7. package/src/command-line/release/config/config.d.ts.map +1 -1
  8. package/src/command-line/release/config/config.js +3 -0
  9. package/src/command-line/release/version/release-group-processor.d.ts +1 -2
  10. package/src/command-line/release/version/release-group-processor.d.ts.map +1 -1
  11. package/src/command-line/release/version/release-group-processor.js +5 -47
  12. package/src/config/nx-json.d.ts +9 -0
  13. package/src/config/nx-json.d.ts.map +1 -1
  14. package/src/core/graph/main.js +1 -1
  15. package/src/daemon/client/client.d.ts.map +1 -1
  16. package/src/daemon/client/client.js +6 -4
  17. package/src/daemon/server/shutdown-utils.d.ts.map +1 -1
  18. package/src/daemon/server/shutdown-utils.js +6 -2
  19. package/src/executors/run-script/run-script.impl.d.ts.map +1 -1
  20. package/src/executors/run-script/run-script.impl.js +33 -8
  21. package/src/native/nx.wasi-browser.js +42 -39
  22. package/src/native/nx.wasm32-wasi.wasm +0 -0
  23. package/src/project-graph/build-project-graph.d.ts.map +1 -1
  24. package/src/project-graph/build-project-graph.js +10 -2
  25. package/src/project-graph/nx-deps-cache.d.ts +4 -3
  26. package/src/project-graph/nx-deps-cache.d.ts.map +1 -1
  27. package/src/project-graph/nx-deps-cache.js +7 -2
  28. package/src/tasks-runner/fork.js +31 -5
  29. package/src/tasks-runner/task-orchestrator.d.ts.map +1 -1
  30. package/src/tasks-runner/task-orchestrator.js +8 -5
  31. package/src/utils/nx-console-prompt.d.ts.map +1 -1
  32. package/src/utils/nx-console-prompt.js +8 -0
  33. package/src/utils/package-manager.d.ts +1 -0
  34. package/src/utils/package-manager.d.ts.map +1 -1
  35. package/src/utils/package-manager.js +6 -1
  36. package/src/utils/provenance.d.ts +48 -0
  37. package/src/utils/provenance.d.ts.map +1 -0
  38. package/src/utils/provenance.js +85 -0
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/daemon/client/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/daemon/client/client.ts"],"names":[],"mappings":"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"}
@@ -525,10 +525,12 @@ class DaemonClient {
525
525
  }
526
526
  }
527
527
  catch (err) {
528
- output_1.output.error({
529
- title: err?.message ||
530
- 'Something unexpected went wrong when stopping the daemon server',
531
- });
528
+ if (err.code !== 'ESRCH') {
529
+ output_1.output.error({
530
+ title: err?.message ||
531
+ 'Something unexpected went wrong when stopping the daemon server',
532
+ });
533
+ }
532
534
  }
533
535
  (0, tmp_dir_1.removeSocketDir)();
534
536
  }
@@ -1 +1 @@
1
- {"version":3,"file":"shutdown-utils.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/daemon/server/shutdown-utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAI1C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAQ5C,eAAO,MAAM,4BAA4B,EAAG,QAAiB,CAAC;AAI9D,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,OAAO,QAErD;AAED,wBAAgB,kBAAkB,YAEjC;AAID,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,OAAO,QAE3D;AAED,wBAAgB,wBAAwB,YAEvC;AAED,UAAU,oCAAoC;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;CAC3B;AAED,wBAAsB,8BAA8B,CAAC,EACnD,MAAM,EACN,MAAM,EACN,OAAO,GACR,EAAE,oCAAoC,iBAmCtC;AAID,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI,CAK3D;AAED,wBAAgB,eAAe,CAC7B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,oBAcpB;AAED,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,KAAK,iBAkBb"}
1
+ {"version":3,"file":"shutdown-utils.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/daemon/server/shutdown-utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAI1C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAQ5C,eAAO,MAAM,4BAA4B,EAAG,QAAiB,CAAC;AAI9D,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,OAAO,QAErD;AAED,wBAAgB,kBAAkB,YAEjC;AAID,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,OAAO,QAE3D;AAED,wBAAgB,wBAAwB,YAEvC;AAED,UAAU,oCAAoC;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;CAC3B;AAED,wBAAsB,8BAA8B,CAAC,EACnD,MAAM,EACN,MAAM,EACN,OAAO,GACR,EAAE,oCAAoC,iBAmCtC;AAID,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI,CAK3D;AAED,wBAAgB,eAAe,CAC7B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,oBAcpB;AAED,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,KAAK,iBAsBb"}
@@ -80,7 +80,8 @@ function respondToClient(socket, response, description) {
80
80
  });
81
81
  }
82
82
  async function respondWithErrorAndExit(socket, description, error) {
83
- const normalizedError = error instanceof error_types_1.DaemonProjectGraphError
83
+ const isProjectGraphError = error instanceof error_types_1.DaemonProjectGraphError;
84
+ const normalizedError = isProjectGraphError
84
85
  ? error_types_1.ProjectGraphError.fromDaemonProjectGraphError(error)
85
86
  : error;
86
87
  // print some extra stuff in the error message
@@ -88,5 +89,8 @@ async function respondWithErrorAndExit(socket, description, error) {
88
89
  console.error(normalizedError.stack);
89
90
  // Respond with the original error
90
91
  await respondToClient(socket, (0, socket_utils_1.serializeResult)(error, null, null), null);
91
- process.exit(1);
92
+ // Project Graph errors are okay. Restarting the daemon won't help with this.
93
+ if (!isProjectGraphError) {
94
+ process.exit(1);
95
+ }
92
96
  }
@@ -1 +1 @@
1
- {"version":3,"file":"run-script.impl.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/executors/run-script/run-script.impl.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AASpE,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,yBACE,OAAO,EAAE,gBAAgB,EACzB,OAAO,EAAE,eAAe;;GA6BzB"}
1
+ {"version":3,"file":"run-script.impl.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/executors/run-script/run-script.impl.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AASpE,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,yBACE,OAAO,EAAE,gBAAgB,EACzB,OAAO,EAAE,eAAe;;GA6BzB"}
@@ -3,8 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.default = default_1;
4
4
  const child_process_1 = require("child_process");
5
5
  const path = require("path");
6
+ const treeKill = require("tree-kill");
6
7
  const pseudo_terminal_1 = require("../../tasks-runner/pseudo-terminal");
7
8
  const package_manager_1 = require("../../utils/package-manager");
9
+ const LARGE_BUFFER = 1024 * 1000000;
8
10
  async function default_1(options, context) {
9
11
  const pm = (0, package_manager_1.getPackageManagerCommand)();
10
12
  try {
@@ -22,7 +24,7 @@ async function default_1(options, context) {
22
24
  await ptyProcess(command, cwd, env);
23
25
  }
24
26
  else {
25
- nodeProcess(command, cwd, env);
27
+ await nodeProcess(command, cwd, env);
26
28
  }
27
29
  return { success: true };
28
30
  }
@@ -31,19 +33,42 @@ async function default_1(options, context) {
31
33
  }
32
34
  }
33
35
  function nodeProcess(command, cwd, env) {
34
- (0, child_process_1.execSync)(command, {
35
- stdio: ['inherit', 'inherit', 'inherit'],
36
- cwd,
37
- env,
38
- windowsHide: false,
36
+ return new Promise((res, rej) => {
37
+ let cp = (0, child_process_1.exec)(command, { cwd, env, maxBuffer: LARGE_BUFFER, windowsHide: false }, (error) => {
38
+ if (error) {
39
+ rej(error);
40
+ }
41
+ else {
42
+ res();
43
+ }
44
+ });
45
+ // Forward stdout/stderr to parent process
46
+ cp.stdout.pipe(process.stdout);
47
+ cp.stderr.pipe(process.stderr);
48
+ const exitHandler = (signal) => {
49
+ if (cp && cp.pid && !cp.killed) {
50
+ treeKill(cp.pid, signal, (error) => {
51
+ // On Windows, tree-kill (which uses taskkill) may fail when the process or its child process is already terminated.
52
+ // Ignore the errors, otherwise we will log them unnecessarily.
53
+ if (error && process.platform !== 'win32') {
54
+ rej(error);
55
+ }
56
+ else {
57
+ res();
58
+ }
59
+ });
60
+ }
61
+ };
62
+ process.on('SIGINT', () => exitHandler('SIGINT'));
63
+ process.on('SIGTERM', () => exitHandler('SIGTERM'));
64
+ process.on('SIGHUP', () => exitHandler('SIGHUP'));
39
65
  });
40
66
  }
41
- let cp;
42
67
  async function ptyProcess(command, cwd, env) {
43
68
  const terminal = (0, pseudo_terminal_1.createPseudoTerminal)();
44
69
  await terminal.init();
45
70
  return new Promise((res, rej) => {
46
- cp = terminal.runCommand(command, { cwd, jsEnv: env });
71
+ let cp = terminal.runCommand(command, { cwd, jsEnv: env });
47
72
  cp.onExit((code) => {
48
73
  if (code === 0) {
49
74
  res();
@@ -64,46 +64,49 @@ function __napi_rs_initialize_modules(__napiInstance) {
64
64
  __napiInstance.exports['__napi_register__NxConsolePreferences_struct_10']?.()
65
65
  __napiInstance.exports['__napi_register__NxConsolePreferences_impl_14']?.()
66
66
  __napiInstance.exports['__napi_register__log_debug_15']?.()
67
- __napiInstance.exports['__napi_register__log_error_16']?.()
68
- __napiInstance.exports['__napi_register__IS_WASM_17']?.()
69
- __napiInstance.exports['__napi_register__get_binary_target_18']?.()
70
- __napiInstance.exports['__napi_register__ImportResult_struct_19']?.()
71
- __napiInstance.exports['__napi_register__find_imports_20']?.()
72
- __napiInstance.exports['__napi_register__transfer_project_graph_21']?.()
73
- __napiInstance.exports['__napi_register__ExternalNode_struct_22']?.()
74
- __napiInstance.exports['__napi_register__Target_struct_23']?.()
75
- __napiInstance.exports['__napi_register__Project_struct_24']?.()
76
- __napiInstance.exports['__napi_register__ProjectGraph_struct_25']?.()
77
- __napiInstance.exports['__napi_register__HashPlanner_struct_26']?.()
78
- __napiInstance.exports['__napi_register__HashPlanner_impl_30']?.()
79
- __napiInstance.exports['__napi_register__HashDetails_struct_31']?.()
80
- __napiInstance.exports['__napi_register__HasherOptions_struct_32']?.()
81
- __napiInstance.exports['__napi_register__TaskHasher_struct_33']?.()
82
- __napiInstance.exports['__napi_register__TaskHasher_impl_36']?.()
83
- __napiInstance.exports['__napi_register__Task_struct_37']?.()
84
- __napiInstance.exports['__napi_register__TaskTarget_struct_38']?.()
85
- __napiInstance.exports['__napi_register__TaskResult_struct_39']?.()
86
- __napiInstance.exports['__napi_register__TaskGraph_struct_40']?.()
87
- __napiInstance.exports['__napi_register__FileData_struct_41']?.()
88
- __napiInstance.exports['__napi_register__InputsInput_struct_42']?.()
89
- __napiInstance.exports['__napi_register__FileSetInput_struct_43']?.()
90
- __napiInstance.exports['__napi_register__RuntimeInput_struct_44']?.()
91
- __napiInstance.exports['__napi_register__EnvironmentInput_struct_45']?.()
92
- __napiInstance.exports['__napi_register__ExternalDependenciesInput_struct_46']?.()
93
- __napiInstance.exports['__napi_register__DepsOutputsInput_struct_47']?.()
94
- __napiInstance.exports['__napi_register__NxJson_struct_48']?.()
95
- __napiInstance.exports['__napi_register__FileLock_struct_49']?.()
96
- __napiInstance.exports['__napi_register__FileLock_impl_51']?.()
97
- __napiInstance.exports['__napi_register__WorkspaceContext_struct_52']?.()
98
- __napiInstance.exports['__napi_register__WorkspaceContext_impl_63']?.()
99
- __napiInstance.exports['__napi_register__WorkspaceErrors_64']?.()
100
- __napiInstance.exports['__napi_register__NxWorkspaceFiles_struct_65']?.()
101
- __napiInstance.exports['__napi_register__NxWorkspaceFilesExternals_struct_66']?.()
102
- __napiInstance.exports['__napi_register__UpdatedWorkspaceFiles_struct_67']?.()
103
- __napiInstance.exports['__napi_register__FileMap_struct_68']?.()
104
- __napiInstance.exports['__napi_register____test_only_transfer_file_map_69']?.()
67
+ __napiInstance.exports['__napi_register__IS_WASM_16']?.()
68
+ __napiInstance.exports['__napi_register__get_binary_target_17']?.()
69
+ __napiInstance.exports['__napi_register__ImportResult_struct_18']?.()
70
+ __napiInstance.exports['__napi_register__find_imports_19']?.()
71
+ __napiInstance.exports['__napi_register__transfer_project_graph_20']?.()
72
+ __napiInstance.exports['__napi_register__ExternalNode_struct_21']?.()
73
+ __napiInstance.exports['__napi_register__Target_struct_22']?.()
74
+ __napiInstance.exports['__napi_register__Project_struct_23']?.()
75
+ __napiInstance.exports['__napi_register__ProjectGraph_struct_24']?.()
76
+ __napiInstance.exports['__napi_register__HashPlanInspector_struct_25']?.()
77
+ __napiInstance.exports['__napi_register__HashPlanInspector_impl_28']?.()
78
+ __napiInstance.exports['__napi_register__HashPlanner_struct_29']?.()
79
+ __napiInstance.exports['__napi_register__HashPlanner_impl_33']?.()
80
+ __napiInstance.exports['__napi_register__HashDetails_struct_34']?.()
81
+ __napiInstance.exports['__napi_register__HasherOptions_struct_35']?.()
82
+ __napiInstance.exports['__napi_register__TaskHasher_struct_36']?.()
83
+ __napiInstance.exports['__napi_register__TaskHasher_impl_39']?.()
84
+ __napiInstance.exports['__napi_register__Task_struct_40']?.()
85
+ __napiInstance.exports['__napi_register__TaskTarget_struct_41']?.()
86
+ __napiInstance.exports['__napi_register__TaskResult_struct_42']?.()
87
+ __napiInstance.exports['__napi_register__TaskGraph_struct_43']?.()
88
+ __napiInstance.exports['__napi_register__FileData_struct_44']?.()
89
+ __napiInstance.exports['__napi_register__InputsInput_struct_45']?.()
90
+ __napiInstance.exports['__napi_register__FileSetInput_struct_46']?.()
91
+ __napiInstance.exports['__napi_register__RuntimeInput_struct_47']?.()
92
+ __napiInstance.exports['__napi_register__EnvironmentInput_struct_48']?.()
93
+ __napiInstance.exports['__napi_register__ExternalDependenciesInput_struct_49']?.()
94
+ __napiInstance.exports['__napi_register__DepsOutputsInput_struct_50']?.()
95
+ __napiInstance.exports['__napi_register__NxJson_struct_51']?.()
96
+ __napiInstance.exports['__napi_register__is_ai_agent_52']?.()
97
+ __napiInstance.exports['__napi_register__FileLock_struct_53']?.()
98
+ __napiInstance.exports['__napi_register__FileLock_impl_55']?.()
99
+ __napiInstance.exports['__napi_register__WorkspaceContext_struct_56']?.()
100
+ __napiInstance.exports['__napi_register__WorkspaceContext_impl_67']?.()
101
+ __napiInstance.exports['__napi_register__WorkspaceErrors_68']?.()
102
+ __napiInstance.exports['__napi_register__NxWorkspaceFiles_struct_69']?.()
103
+ __napiInstance.exports['__napi_register__NxWorkspaceFilesExternals_struct_70']?.()
104
+ __napiInstance.exports['__napi_register__UpdatedWorkspaceFiles_struct_71']?.()
105
+ __napiInstance.exports['__napi_register__FileMap_struct_72']?.()
106
+ __napiInstance.exports['__napi_register____test_only_transfer_file_map_73']?.()
105
107
  }
106
108
  export const FileLock = __napiModule.exports.FileLock
109
+ export const HashPlanInspector = __napiModule.exports.HashPlanInspector
107
110
  export const HashPlanner = __napiModule.exports.HashPlanner
108
111
  export const ImportResult = __napiModule.exports.ImportResult
109
112
  export const NxConsolePreferences = __napiModule.exports.NxConsolePreferences
@@ -120,8 +123,8 @@ export const hashArray = __napiModule.exports.hashArray
120
123
  export const hashFile = __napiModule.exports.hashFile
121
124
  export const installNxConsole = __napiModule.exports.installNxConsole
122
125
  export const IS_WASM = __napiModule.exports.IS_WASM
126
+ export const isAiAgent = __napiModule.exports.isAiAgent
123
127
  export const logDebug = __napiModule.exports.logDebug
124
- export const logError = __napiModule.exports.logError
125
128
  export const remove = __napiModule.exports.remove
126
129
  export const testOnlyTransferFileMap = __napiModule.exports.testOnlyTransferFileMap
127
130
  export const transferProjectGraph = __napiModule.exports.transferProjectGraph
Binary file
@@ -1 +1 @@
1
- {"version":3,"file":"build-project-graph.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/project-graph/build-project-graph.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAIL,YAAY,EAEb,MAAM,iBAAiB,CAAC;AAGzB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAEL,qBAAqB,EAEtB,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,OAAO,EACP,YAAY,EACZ,wBAAwB,EACzB,MAAM,yBAAyB,CAAC;AAIjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAI7E,OAAO,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAC;AACtD,OAAO,EAEL,mBAAmB,EAKpB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,uBAAuB,EAExB,MAAM,qCAAqC,CAAC;AAO7C,wBAAgB,UAAU,IAAI;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,iBAAiB,EAAE,QAAQ,EAAE,CAAC;IAC9B,cAAc,EAAE,yBAAyB,GAAG,IAAI,CAAC;CAClD,CAiBA;AAED,wBAAgB,cAAc,CAC5B,OAAO,EAAE,OAAO,EAChB,iBAAiB,EAAE,QAAQ,EAAE,EAC7B,cAAc,EAAE,yBAAyB,QAK1C;AAED,wBAAsB,oCAAoC,CACxD,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,EACpD,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,wBAAwB,CAAC,EACvD,OAAO,EAAE,OAAO,EAChB,iBAAiB,EAAE,QAAQ,EAAE,EAC7B,cAAc,EAAE,yBAAyB,EACzC,YAAY,EAAE,YAAY,GAAG,IAAI,EACjC,OAAO,EAAE,cAAc,EAAE,EACzB,SAAS,EAAE,uBAAuB,GACjC,OAAO,CAAC;IACT,YAAY,EAAE,YAAY,CAAC;IAC3B,mBAAmB,EAAE,YAAY,CAAC;CACnC,CAAC,CA4FD;AA+OD,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,cAAc,EAAE,EACzB,OAAO,EAAE,qBAAqB,EAC9B,SAAS,EAAE,uBAAuB,GACjC,OAAO,CAAC;IAAE,KAAK,EAAE,YAAY,CAAC;IAAC,MAAM,CAAC,EAAE,mBAAmB,EAAE,CAAA;CAAE,CAAC,CAuFlE"}
1
+ {"version":3,"file":"build-project-graph.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/project-graph/build-project-graph.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAIL,YAAY,EAEb,MAAM,iBAAiB,CAAC;AAGzB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAEL,qBAAqB,EAEtB,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,OAAO,EACP,YAAY,EACZ,wBAAwB,EACzB,MAAM,yBAAyB,CAAC;AAIjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAI7E,OAAO,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAC;AACtD,OAAO,EAEL,mBAAmB,EAKpB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,uBAAuB,EAExB,MAAM,qCAAqC,CAAC;AAQ7C,wBAAgB,UAAU,IAAI;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,iBAAiB,EAAE,QAAQ,EAAE,CAAC;IAC9B,cAAc,EAAE,yBAAyB,GAAG,IAAI,CAAC;CAClD,CAiBA;AAED,wBAAgB,cAAc,CAC5B,OAAO,EAAE,OAAO,EAChB,iBAAiB,EAAE,QAAQ,EAAE,EAC7B,cAAc,EAAE,yBAAyB,QAK1C;AAED,wBAAsB,oCAAoC,CACxD,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,EACpD,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,wBAAwB,CAAC,EACvD,OAAO,EAAE,OAAO,EAChB,iBAAiB,EAAE,QAAQ,EAAE,EAC7B,cAAc,EAAE,yBAAyB,EACzC,YAAY,EAAE,YAAY,GAAG,IAAI,EACjC,OAAO,EAAE,cAAc,EAAE,EACzB,SAAS,EAAE,uBAAuB,GACjC,OAAO,CAAC;IACT,YAAY,EAAE,YAAY,CAAC;IAC3B,mBAAmB,EAAE,YAAY,CAAC;CACnC,CAAC,CA+FD;AA+OD,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,cAAc,EAAE,EACzB,OAAO,EAAE,qBAAqB,EAC9B,SAAS,EAAE,uBAAuB,GACjC,OAAO,CAAC;IAAE,KAAK,EAAE,YAAY,CAAC;IAAC,MAAM,CAAC,EAAE,mBAAmB,EAAE,CAAA;CAAE,CAAC,CAuFlE"}
@@ -19,6 +19,7 @@ const fs_1 = require("fs");
19
19
  const error_types_1 = require("./error-types");
20
20
  const project_configuration_utils_1 = require("./utils/project-configuration-utils");
21
21
  const delayed_spinner_1 = require("../utils/delayed-spinner");
22
+ const file_hasher_1 = require("../hasher/file-hasher");
22
23
  let storedFileMap = null;
23
24
  let storedAllWorkspaceFiles = null;
24
25
  let storedRustReferences = null;
@@ -68,10 +69,11 @@ async function buildProjectGraphUsingProjectFileMap(projectRootMap, externalNode
68
69
  }
69
70
  const packageJsonDeps = readCombinedDeps();
70
71
  const rootTsConfig = readRootTsConfig();
72
+ const externalNodesHash = hashExternalNodes(externalNodes);
71
73
  let filesToProcess;
72
74
  let cachedFileData;
73
75
  const useCacheData = fileMapCache &&
74
- !(0, nx_deps_cache_1.shouldRecomputeWholeGraph)(fileMapCache, packageJsonDeps, projects, nxJson, rootTsConfig);
76
+ !(0, nx_deps_cache_1.shouldRecomputeWholeGraph)(fileMapCache, packageJsonDeps, projects, nxJson, rootTsConfig, externalNodesHash);
75
77
  if (useCacheData) {
76
78
  const fromCache = (0, nx_deps_cache_1.extractCachedFileData)(fileMap, fileMapCache);
77
79
  filesToProcess = fromCache.filesToProcess;
@@ -89,7 +91,7 @@ async function buildProjectGraphUsingProjectFileMap(projectRootMap, externalNode
89
91
  try {
90
92
  const context = createContext(projects, nxJson, externalNodes, fileMap, filesToProcess);
91
93
  projectGraph = await buildProjectGraphUsingContext(externalNodes, context, cachedFileData, projectGraphVersion, plugins, sourceMap);
92
- projectFileMapCache = (0, nx_deps_cache_1.createProjectFileMapCache)(nxJson, packageJsonDeps, fileMap, rootTsConfig);
94
+ projectFileMapCache = (0, nx_deps_cache_1.createProjectFileMapCache)(nxJson, packageJsonDeps, fileMap, rootTsConfig, externalNodesHash);
93
95
  }
94
96
  catch (e) {
95
97
  // we need to include the workspace validity errors in the final error
@@ -313,3 +315,9 @@ async function applyProjectMetadata(graph, plugins, context, sourceMap) {
313
315
  perf_hooks_1.performance.measure(`createMetadata`, `createMetadata:start`, `createMetadata:end`);
314
316
  return { errors, graph };
315
317
  }
318
+ function hashExternalNodes(externalNodes) {
319
+ return (0, file_hasher_1.hashObject)(Object.entries(externalNodes).reduce((acc, [name, node]) => {
320
+ acc[name] = node.data.version;
321
+ return acc;
322
+ }, {}));
323
+ }
@@ -1,5 +1,5 @@
1
1
  import { NxJsonConfiguration } from '../config/nx-json';
2
- import { FileData, FileMap, ProjectGraph } from '../config/project-graph';
2
+ import type { FileData, FileMap, ProjectGraph } from '../config/project-graph';
3
3
  import { ProjectConfiguration } from '../config/workspace-json-project-json';
4
4
  import { ConfigurationSourceMaps } from './utils/project-configuration-utils';
5
5
  import { ProjectGraphErrorTypes } from './error-types';
@@ -10,6 +10,7 @@ export interface FileMapCache {
10
10
  nxJsonPlugins: PluginData[];
11
11
  pluginsConfig?: any;
12
12
  fileMap: FileMap;
13
+ externalNodesHash?: string;
13
14
  }
14
15
  export declare const nxProjectGraph: string;
15
16
  export declare const nxFileMap: string;
@@ -24,7 +25,7 @@ export declare function createProjectFileMapCache(nxJson: NxJsonConfiguration<'*
24
25
  [p: string]: any;
25
26
  };
26
27
  };
27
- }): FileMapCache;
28
+ }, externalNodesHash: string): FileMapCache;
28
29
  export declare function writeCache(cache: FileMapCache, projectGraph: ProjectGraph, sourceMaps: ConfigurationSourceMaps, errors: ProjectGraphErrorTypes[]): void;
29
30
  export declare function shouldRecomputeWholeGraph(cache: FileMapCache, packageJsonDeps: Record<string, string>, projects: Record<string, ProjectConfiguration>, nxJson: NxJsonConfiguration, tsConfig: {
30
31
  compilerOptions: {
@@ -32,7 +33,7 @@ export declare function shouldRecomputeWholeGraph(cache: FileMapCache, packageJs
32
33
  [k: string]: any;
33
34
  };
34
35
  };
35
- }): boolean;
36
+ }, externalNodesHash: string): boolean;
36
37
  export type CachedFileData = {
37
38
  nonProjectFiles: Record<string, FileData>;
38
39
  projectFileMap: {
@@ -1 +1 @@
1
- {"version":3,"file":"nx-deps-cache.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/project-graph/nx-deps-cache.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAuB,MAAM,mBAAmB,CAAC;AAC7E,OAAO,EACL,QAAQ,EACR,OAAO,EAEP,YAAY,EACb,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAU7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAEL,sBAAsB,EAEvB,MAAM,eAAe,CAAC;AAIvB,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAClC,aAAa,EAAE,UAAU,EAAE,CAAC;IAC5B,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,eAAO,MAAM,cAAc,QAG1B,CAAC;AACF,eAAO,MAAM,SAAS,QAAgD,CAAC;AAEvE,eAAO,MAAM,YAAY,QAAmD,CAAC;AAE7E,wBAAgB,oBAAoB,IAAI,IAAI,CAoB3C;AAED,wBAAgB,gBAAgB,IAAI,IAAI,GAAG,YAAY,CAmBtD;AAED,wBAAgB,qBAAqB,CACnC,iBAAiB,CAAC,EAAE,MAAM,GACzB,IAAI,GAAG,YAAY,CA8DrB;AAED,wBAAgB,mBAAmB,IAAI,IAAI,GAAG,uBAAuB,CAuBpE;AAED,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,mBAAmB,CAAC,GAAG,GAAG,MAAM,EAAE,CAAC,EAC3C,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACvC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE;IAAE,eAAe,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE;YAAE,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;SAAE,CAAA;KAAE,CAAA;CAAE,gBAajE;AAED,wBAAgB,UAAU,CACxB,KAAK,EAAE,YAAY,EACnB,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,uBAAuB,EACnC,MAAM,EAAE,sBAAsB,EAAE,GAC/B,IAAI,CA+DN;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,YAAY,EACnB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACvC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,EAC9C,MAAM,EAAE,mBAAmB,EAC3B,QAAQ,EAAE;IAAE,eAAe,EAAE;QAAE,KAAK,EAAE;YAAE,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;SAAE,CAAA;KAAE,CAAA;CAAE,GAC7D,OAAO,CA+CT;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC1C,cAAc,EAAE;QAAE,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;KAAE,CAAC;CACjE,CAAC;AAOF,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,OAAO,EAChB,CAAC,EAAE,YAAY,GACd;IACD,cAAc,EAAE,OAAO,CAAC;IACxB,cAAc,EAAE,cAAc,CAAC;CAChC,CAkCA;AAqDD,KAAK,UAAU,GAAG;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC"}
1
+ {"version":3,"file":"nx-deps-cache.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/project-graph/nx-deps-cache.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EACV,QAAQ,EACR,OAAO,EAEP,YAAY,EACb,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAS7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAEL,sBAAsB,EAEvB,MAAM,eAAe,CAAC;AAIvB,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAClC,aAAa,EAAE,UAAU,EAAE,CAAC;IAC5B,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,eAAO,MAAM,cAAc,QAG1B,CAAC;AACF,eAAO,MAAM,SAAS,QAAgD,CAAC;AAEvE,eAAO,MAAM,YAAY,QAAmD,CAAC;AAE7E,wBAAgB,oBAAoB,IAAI,IAAI,CAoB3C;AAED,wBAAgB,gBAAgB,IAAI,IAAI,GAAG,YAAY,CAmBtD;AAED,wBAAgB,qBAAqB,CACnC,iBAAiB,CAAC,EAAE,MAAM,GACzB,IAAI,GAAG,YAAY,CA8DrB;AAED,wBAAgB,mBAAmB,IAAI,IAAI,GAAG,uBAAuB,CAuBpE;AAED,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,mBAAmB,CAAC,GAAG,GAAG,MAAM,EAAE,CAAC,EAC3C,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACvC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE;IAAE,eAAe,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE;YAAE,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;SAAE,CAAA;KAAE,CAAA;CAAE,EAChE,iBAAiB,EAAE,MAAM,gBAc1B;AAED,wBAAgB,UAAU,CACxB,KAAK,EAAE,YAAY,EACnB,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,uBAAuB,EACnC,MAAM,EAAE,sBAAsB,EAAE,GAC/B,IAAI,CA+DN;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,YAAY,EACnB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACvC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,EAC9C,MAAM,EAAE,mBAAmB,EAC3B,QAAQ,EAAE;IAAE,eAAe,EAAE;QAAE,KAAK,EAAE;YAAE,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;SAAE,CAAA;KAAE,CAAA;CAAE,EAC9D,iBAAiB,EAAE,MAAM,GACxB,OAAO,CAoDT;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC1C,cAAc,EAAE;QAAE,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;KAAE,CAAC;CACjE,CAAC;AAOF,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,OAAO,EAChB,CAAC,EAAE,YAAY,GACd;IACD,cAAc,EAAE,OAAO,CAAC;IACxB,cAAc,EAAE,cAAc,CAAC;CAChC,CAkCA;AAqDD,KAAK,UAAU,GAAG;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC"}
@@ -118,7 +118,7 @@ function readSourceMapsCache() {
118
118
  perf_hooks_1.performance.measure('read cache', 'read source-maps:start', 'read source-maps:end');
119
119
  return data ?? null;
120
120
  }
121
- function createProjectFileMapCache(nxJson, packageJsonDeps, fileMap, tsConfig) {
121
+ function createProjectFileMapCache(nxJson, packageJsonDeps, fileMap, tsConfig, externalNodesHash) {
122
122
  const nxJsonPlugins = getNxJsonPluginsData(nxJson, packageJsonDeps);
123
123
  const newValue = {
124
124
  version: '6.0',
@@ -128,6 +128,7 @@ function createProjectFileMapCache(nxJson, packageJsonDeps, fileMap, tsConfig) {
128
128
  nxJsonPlugins,
129
129
  pluginsConfig: nxJson?.pluginsConfig,
130
130
  fileMap,
131
+ externalNodesHash,
131
132
  };
132
133
  return newValue;
133
134
  }
@@ -182,7 +183,7 @@ function writeCache(cache, projectGraph, sourceMaps, errors) {
182
183
  perf_hooks_1.performance.mark('write cache:end');
183
184
  perf_hooks_1.performance.measure('write cache', 'write cache:start', 'write cache:end');
184
185
  }
185
- function shouldRecomputeWholeGraph(cache, packageJsonDeps, projects, nxJson, tsConfig) {
186
+ function shouldRecomputeWholeGraph(cache, packageJsonDeps, projects, nxJson, tsConfig, externalNodesHash) {
186
187
  if (cache.version !== '6.0') {
187
188
  return true;
188
189
  }
@@ -215,6 +216,10 @@ function shouldRecomputeWholeGraph(cache, packageJsonDeps, projects, nxJson, tsC
215
216
  JSON.stringify(cache.pluginsConfig)) {
216
217
  return true;
217
218
  }
219
+ // Check if external nodes have changed
220
+ if (externalNodesHash !== cache.externalNodesHash) {
221
+ return true;
222
+ }
218
223
  return false;
219
224
  }
220
225
  /*
@@ -20,26 +20,52 @@ const childProcess = (0, child_process_1.fork)(script, {
20
20
  const pseudoIPC = new pseudo_ipc_1.PseudoIPCClient(pseudoIPCPath);
21
21
  pseudoIPC.onMessageFromParent(forkId, (message) => {
22
22
  childProcess.send(message);
23
+ }, () => {
24
+ // IPC connection closed
25
+ cleanup();
26
+ process.exit(0);
27
+ }, () => {
28
+ // IPC connection error
29
+ cleanup();
30
+ process.exit(0);
23
31
  });
24
32
  pseudoIPC.notifyChildIsReady(forkId);
25
33
  process.on('message', (message) => {
26
34
  pseudoIPC.sendMessageToParent(message);
27
35
  });
28
36
  childProcess.on('exit', (code) => {
29
- pseudoIPC.close();
37
+ cleanup();
30
38
  process.exit(code);
31
39
  });
40
+ let isCleaningUp = false;
41
+ function cleanup() {
42
+ if (isCleaningUp) {
43
+ return;
44
+ }
45
+ isCleaningUp = true;
46
+ // Kill child process if still running
47
+ if (childProcess && !childProcess.killed) {
48
+ childProcess.kill('SIGTERM');
49
+ }
50
+ // Close IPC connection
51
+ try {
52
+ pseudoIPC.close();
53
+ }
54
+ catch {
55
+ // Ignore errors when closing, connection might already be broken
56
+ }
57
+ }
32
58
  // Terminate the child process when exiting
33
59
  process.on('exit', () => {
34
- childProcess.kill();
60
+ cleanup();
35
61
  });
36
62
  process.on('SIGINT', () => {
37
- childProcess.kill('SIGTERM');
63
+ cleanup();
38
64
  process.exit((0, exit_codes_1.signalToCode)('SIGINT'));
39
65
  });
40
66
  process.on('SIGTERM', () => {
41
- childProcess.kill('SIGTERM');
67
+ cleanup();
42
68
  });
43
69
  process.on('SIGHUP', () => {
44
- childProcess.kill('SIGTERM');
70
+ cleanup();
45
71
  });
@@ -1 +1 @@
1
- {"version":3,"file":"task-orchestrator.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/tasks-runner/task-orchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task-orchestrator.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/tasks-runner/task-orchestrator.ts"],"names":[],"mappings":"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"}
@@ -505,8 +505,9 @@ class TaskOrchestrator {
505
505
  if (this.tuiEnabled) {
506
506
  this.options.lifeCycle.setTaskStatus(task.id, 9 /* NativeTaskStatus.Stopped */);
507
507
  }
508
- this.runningTasksService.removeRunningTask(task.id);
509
- this.runningContinuousTasks.delete(task.id);
508
+ if (this.runningContinuousTasks.delete(task.id)) {
509
+ this.runningTasksService.removeRunningTask(task.id);
510
+ }
510
511
  });
511
512
  await this.scheduleNextTasksAndReleaseThreads();
512
513
  if (this.initializingTaskIds.has(task.id)) {
@@ -667,13 +668,15 @@ class TaskOrchestrator {
667
668
  ...Array.from(this.runningContinuousTasks).map(async ([taskId, t]) => {
668
669
  try {
669
670
  await t.kill();
670
- this.options.lifeCycle.setTaskStatus(taskId, 9 /* NativeTaskStatus.Stopped */);
671
+ this.options.lifeCycle.setTaskStatus?.(taskId, 9 /* NativeTaskStatus.Stopped */);
671
672
  }
672
673
  catch (e) {
673
674
  console.error(`Unable to terminate ${taskId}\nError:`, e);
674
675
  }
675
676
  finally {
676
- this.runningTasksService.removeRunningTask(taskId);
677
+ if (this.runningContinuousTasks.delete(taskId)) {
678
+ this.runningTasksService.removeRunningTask(taskId);
679
+ }
677
680
  }
678
681
  }),
679
682
  ...Array.from(this.runningRunCommandsTasks).map(async ([taskId, t]) => {
@@ -700,7 +703,7 @@ class TaskOrchestrator {
700
703
  const runningTask = this.runningContinuousTasks.get(taskId);
701
704
  if (runningTask) {
702
705
  runningTask.kill();
703
- this.options.lifeCycle.setTaskStatus(taskId, 9 /* NativeTaskStatus.Stopped */);
706
+ this.options.lifeCycle.setTaskStatus?.(taskId, 9 /* NativeTaskStatus.Stopped */);
704
707
  }
705
708
  }
706
709
  }
@@ -1 +1 @@
1
- {"version":3,"file":"nx-console-prompt.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/utils/nx-console-prompt.ts"],"names":[],"mappings":"AASA,wBAAsB,wBAAwB,kBAmB7C"}
1
+ {"version":3,"file":"nx-console-prompt.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/utils/nx-console-prompt.ts"],"names":[],"mappings":"AASA,wBAAsB,wBAAwB,kBA4B7C"}
@@ -9,6 +9,14 @@ async function ensureNxConsoleInstalled() {
9
9
  const preferences = new native_1.NxConsolePreferences((0, os_1.homedir)());
10
10
  let setting = preferences.getAutoInstallPreference();
11
11
  const canInstallConsole = (0, native_1.canInstallNxConsole)();
12
+ // If user previously opted in but extension is not installed,
13
+ // they must have manually uninstalled it - respect that choice
14
+ if (setting === true && canInstallConsole) {
15
+ // User had auto-install enabled but extension is missing
16
+ // This means they manually uninstalled it
17
+ preferences.setAutoInstallPreference(false);
18
+ return;
19
+ }
12
20
  // Noop
13
21
  if (!canInstallConsole) {
14
22
  return;
@@ -13,6 +13,7 @@ export interface PackageManagerCommands {
13
13
  run: (script: string, args?: string) => string;
14
14
  getRegistryUrl?: string;
15
15
  publish: (packageRoot: string, registry: string, registryConfigKey: string, tag: string) => string;
16
+ ignoreScriptsFlag?: string;
16
17
  }
17
18
  /**
18
19
  * Detects which package manager is used in the workspace based on the lock file.
@@ -1 +1 @@
1
- {"version":3,"file":"package-manager.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/utils/package-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"package-manager.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/utils/package-manager.ts"],"names":[],"mappings":"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"}
@@ -95,6 +95,7 @@ function getPackageManagerCommand(packageManager = detectPackageManager(), root
95
95
  yarnVersion = 'latest';
96
96
  useBerry = true;
97
97
  }
98
+ // new versions of yarn only support ignoring scripts via .yarnrc.yml
98
99
  return {
99
100
  preInstall: `yarn set version ${yarnVersion}`,
100
101
  install: 'yarn',
@@ -108,13 +109,14 @@ function getPackageManagerCommand(packageManager = detectPackageManager(), root
108
109
  addDev: useBerry ? 'yarn add -D' : 'yarn add -D -W',
109
110
  rm: 'yarn remove',
110
111
  exec: 'yarn',
111
- dlx: useBerry ? 'yarn dlx' : 'yarn',
112
+ dlx: useBerry ? 'yarn dlx' : 'npx',
112
113
  run: (script, args) => `yarn ${script}${args ? ` ${args}` : ''}`,
113
114
  list: useBerry ? 'yarn info --name-only' : 'yarn list',
114
115
  getRegistryUrl: useBerry
115
116
  ? 'yarn config get npmRegistryServer'
116
117
  : 'yarn config get registry',
117
118
  publish: (packageRoot, registry, registryConfigKey, tag) => `npm publish "${packageRoot}" --json --"${registryConfigKey}=${registry}" --tag=${tag}`,
119
+ ignoreScriptsFlag: useBerry ? undefined : `--ignore-scripts`,
118
120
  };
119
121
  },
120
122
  pnpm: () => {
@@ -150,6 +152,7 @@ function getPackageManagerCommand(packageManager = detectPackageManager(), root
150
152
  list: 'pnpm ls --depth 100',
151
153
  getRegistryUrl: 'pnpm config get registry',
152
154
  publish: (packageRoot, registry, registryConfigKey, tag) => `pnpm publish "${packageRoot}" --json --"${allowRegistryConfigKey ? registryConfigKey : 'registry'}=${registry}" --tag=${tag} --no-git-checks`,
155
+ ignoreScriptsFlag: '--ignore-scripts',
153
156
  };
154
157
  },
155
158
  npm: () => {
@@ -168,6 +171,7 @@ function getPackageManagerCommand(packageManager = detectPackageManager(), root
168
171
  list: 'npm ls',
169
172
  getRegistryUrl: 'npm config get registry',
170
173
  publish: (packageRoot, registry, registryConfigKey, tag) => `npm publish "${packageRoot}" --json --"${registryConfigKey}=${registry}" --tag=${tag}`,
174
+ ignoreScriptsFlag: '--ignore-scripts',
171
175
  };
172
176
  },
173
177
  bun: () => {
@@ -185,6 +189,7 @@ function getPackageManagerCommand(packageManager = detectPackageManager(), root
185
189
  list: 'bun pm ls',
186
190
  // Unlike npm, bun publish does not support a custom registryConfigKey option
187
191
  publish: (packageRoot, registry, registryConfigKey, tag) => `bun publish --cwd="${packageRoot}" --json --registry="${registry}" --tag=${tag}`,
192
+ ignoreScriptsFlag: '--ignore-scripts',
188
193
  };
189
194
  },
190
195
  };
@@ -0,0 +1,48 @@
1
+ export declare function ensurePackageHasProvenance(packageName: string, packageVersion: string): Promise<void>;
2
+ export declare class ProvenanceError extends Error {
3
+ constructor(packageName: string, packageVersion: string, error?: string);
4
+ }
5
+ export declare function getNxPackageGroup(): string[];
6
+ export type DecodedAttestationPayload = {
7
+ _type: 'https://in-toto.io/Statement/v1';
8
+ subject: unknown[];
9
+ predicateType: 'https://slsa.dev/provenance/v1';
10
+ predicate: {
11
+ buildDefinition: {
12
+ buildType: string;
13
+ externalParameters: Record<string, any>;
14
+ internalParameters?: Record<string, any>;
15
+ resolvedDependencies?: ResourceDescriptor[];
16
+ };
17
+ runDetails: {
18
+ builder: {
19
+ id: string;
20
+ builderDependencies?: ResourceDescriptor[];
21
+ version?: Record<string, string>;
22
+ };
23
+ metadata?: {
24
+ invocationId?: string;
25
+ startedOn?: string;
26
+ finishedOn?: string;
27
+ };
28
+ byproducts?: ResourceDescriptor[];
29
+ };
30
+ };
31
+ };
32
+ export interface ResourceDescriptor {
33
+ uri?: string;
34
+ digest?: {
35
+ sha256?: string;
36
+ sha512?: string;
37
+ gitCommit?: string;
38
+ [key: string]: string | undefined;
39
+ };
40
+ name?: string;
41
+ downloadLocation?: string;
42
+ mediaType?: string;
43
+ content?: string;
44
+ annotations?: {
45
+ [key: string]: any;
46
+ };
47
+ }
48
+ //# sourceMappingURL=provenance.d.ts.map