nx 22.5.0-beta.3 → 22.5.0-beta.4
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.
- package/package.json +11 -11
- package/src/ai/constants.d.ts +1 -0
- package/src/ai/constants.d.ts.map +1 -1
- package/src/ai/constants.js +4 -0
- package/src/ai/set-up-ai-agents/set-up-ai-agents.d.ts.map +1 -1
- package/src/ai/set-up-ai-agents/set-up-ai-agents.js +22 -0
- package/src/command-line/configure-ai-agents/configure-ai-agents.d.ts.map +1 -1
- package/src/command-line/configure-ai-agents/configure-ai-agents.js +77 -43
- package/src/command-line/run/run-one.d.ts +1 -1
- package/src/command-line/run/run-one.d.ts.map +1 -1
- package/src/command-line/run/run-one.js +12 -9
- package/src/core/graph/main.js +1 -1
- package/src/daemon/server/server.d.ts.map +1 -1
- package/src/daemon/server/server.js +3 -2
- package/src/daemon/server/shutdown-utils.d.ts.map +1 -1
- package/src/daemon/server/shutdown-utils.js +1 -1
- package/src/executors/run-commands/running-tasks.d.ts.map +1 -1
- package/src/executors/run-commands/running-tasks.js +4 -4
- package/src/hasher/hash-task.d.ts +3 -3
- package/src/hasher/hash-task.d.ts.map +1 -1
- package/src/hasher/hash-task.js +24 -5
- package/src/hasher/native-task-hasher-impl.d.ts +1 -1
- package/src/hasher/native-task-hasher-impl.d.ts.map +1 -1
- package/src/hasher/native-task-hasher-impl.js +2 -2
- package/src/hasher/task-hasher.d.ts +4 -1
- package/src/hasher/task-hasher.d.ts.map +1 -1
- package/src/hasher/task-hasher.js +1 -0
- package/src/native/index.d.ts +18 -2
- package/src/native/nx.wasi.cjs +29 -28
- package/src/native/nx.wasm32-wasi.wasm +0 -0
- package/src/tasks-runner/cache.d.ts +2 -2
- package/src/tasks-runner/cache.d.ts.map +1 -1
- package/src/tasks-runner/cache.js +14 -11
- package/src/tasks-runner/forked-process-task-runner.d.ts +3 -3
- package/src/tasks-runner/forked-process-task-runner.d.ts.map +1 -1
- package/src/tasks-runner/forked-process-task-runner.js +12 -11
- package/src/tasks-runner/process-metrics-service.d.ts +2 -2
- package/src/tasks-runner/process-metrics-service.d.ts.map +1 -1
- package/src/tasks-runner/process-metrics-service.js +2 -2
- package/src/tasks-runner/run-command.d.ts.map +1 -1
- package/src/tasks-runner/task-io-service.d.ts +97 -0
- package/src/tasks-runner/task-io-service.d.ts.map +1 -0
- package/src/tasks-runner/task-io-service.js +146 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/daemon/server/server.ts"],"names":[],"mappings":"AACA,OAAO,EAAgB,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAwKnD,MAAM,MAAM,aAAa,GAAG;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;CACtC,CAAC;AAGF,eAAO,MAAM,WAAW,EAAE,GAAG,CAAC,MAAM,CAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/daemon/server/server.ts"],"names":[],"mappings":"AACA,OAAO,EAAgB,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAwKnD,MAAM,MAAM,aAAa,GAAG;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;CACtC,CAAC;AAGF,eAAO,MAAM,WAAW,EAAE,GAAG,CAAC,MAAM,CAAa,CAAC;AAuRlD,wBAAsB,YAAY,CAChC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,EAClC,IAAI,EAAE,MAAM,GAAG,IAAI,iBA6BpB;AA+KD,wBAAsB,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC,CA2GnD"}
|
|
@@ -80,8 +80,9 @@ const server = (0, net_1.createServer)(async (socket) => {
|
|
|
80
80
|
await handleMessage(socket, message);
|
|
81
81
|
}));
|
|
82
82
|
socket.on('error', (e) => {
|
|
83
|
-
logger_1.serverLogger.log(
|
|
84
|
-
|
|
83
|
+
logger_1.serverLogger.log(`Socket error: ${e.message}`);
|
|
84
|
+
(0, file_watcher_sockets_1.removeRegisteredFileWatcherSocket)(socket);
|
|
85
|
+
(0, project_graph_listener_sockets_1.removeRegisteredProjectGraphListenerSocket)(socket);
|
|
85
86
|
});
|
|
86
87
|
socket.on('close', () => {
|
|
87
88
|
numberOfOpenConnections -= 1;
|
|
@@ -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;AAkB5C,eAAO,MAAM,4BAA4B,EAAG,QAAiB,CAAC;AA6C9D,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,iBAEtC;AAED,wBAAsB,yCAAyC,CAAC,EAC9D,MAAM,EACN,MAAM,EACN,OAAO,GACR,EAAE,oCAAoC,iBAMtC;AAgDD,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,
|
|
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;AAkB5C,eAAO,MAAM,4BAA4B,EAAG,QAAiB,CAAC;AA6C9D,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,iBAEtC;AAED,wBAAsB,yCAAyC,CAAC,EAC9D,MAAM,EACN,MAAM,EACN,OAAO,GACR,EAAE,oCAAoC,iBAMtC;AAgDD,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,oBAgBpB;AAED,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,KAAK,iBAsBb"}
|
|
@@ -127,7 +127,7 @@ function respondToClient(socket, response, description) {
|
|
|
127
127
|
}
|
|
128
128
|
socket.write(response + consume_messages_from_socket_1.MESSAGE_END_SEQ, (err) => {
|
|
129
129
|
if (err) {
|
|
130
|
-
|
|
130
|
+
logger_1.serverLogger.log(`Socket write error (client likely disconnected): ${err.message}`);
|
|
131
131
|
}
|
|
132
132
|
logger_1.serverLogger.log(`Done responding to the client`, description);
|
|
133
133
|
res(null);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"running-tasks.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/executors/run-commands/running-tasks.ts"],"names":[],"mappings":"AACA,OAAO,EAAsB,YAAY,EAAE,MAAM,eAAe,CAAC;AAIjE,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAGL,gBAAgB,EACjB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAO5E,OAAO,EAEL,4BAA4B,EAE7B,MAAM,qBAAqB,CAAC;AAE7B,qBAAa,oBAAqB,YAAW,WAAW;IACtD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAuB;IACtD,OAAO,CAAC,eAAe,CAA8C;IACrE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAU;IAEvC,OAAO,CAAC,aAAa,CAChB;IACL,OAAO,CAAC,eAAe,CAA+C;gBAGpE,OAAO,EAAE,4BAA4B,EACrC,OAAO,EAAE,eAAe,EACxB,MAAM,EAAE,MAAM;IAqBV,UAAU,IAAI,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,CAAC;IAQrE,QAAQ,CAAC,EAAE,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,IAAI;IAI7C,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIhE,IAAI,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI;IAM3B,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,OAAO;YAYpB,GAAG;YAiGH,2BAA2B;CAkC1C;AAED,qBAAa,oBAAqB,YAAW,WAAW;IAYpD,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,MAAM;IAZzB,OAAO,CAAC,cAAc,CAAM;IAC5B,OAAO,CAAC,cAAc,CAA+C;IACrE,OAAO,CAAC,aAAa,CAChB;IACL,OAAO,CAAC,IAAI,CAAoB;IAChC,OAAO,CAAC,KAAK,CAAM;IACnB,OAAO,CAAC,eAAe,CAA+C;gBAGpE,OAAO,EAAE,4BAA4B,EACrC,OAAO,EAAE,eAAe,EACP,UAAU,EAAE,OAAO,EACnB,MAAM,EAAE,MAAM;IAajC,UAAU,IAAI,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,CAAC;IAY/D,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIhE,QAAQ,CAAC,EAAE,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,IAAI;IAI7C,IAAI,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI;IAIjC,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,OAAO;YAId,GAAG;YAyCH,aAAa;CAsD5B;
|
|
1
|
+
{"version":3,"file":"running-tasks.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/executors/run-commands/running-tasks.ts"],"names":[],"mappings":"AACA,OAAO,EAAsB,YAAY,EAAE,MAAM,eAAe,CAAC;AAIjE,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAGL,gBAAgB,EACjB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAO5E,OAAO,EAEL,4BAA4B,EAE7B,MAAM,qBAAqB,CAAC;AAE7B,qBAAa,oBAAqB,YAAW,WAAW;IACtD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAuB;IACtD,OAAO,CAAC,eAAe,CAA8C;IACrE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAU;IAEvC,OAAO,CAAC,aAAa,CAChB;IACL,OAAO,CAAC,eAAe,CAA+C;gBAGpE,OAAO,EAAE,4BAA4B,EACrC,OAAO,EAAE,eAAe,EACxB,MAAM,EAAE,MAAM;IAqBV,UAAU,IAAI,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,CAAC;IAQrE,QAAQ,CAAC,EAAE,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,IAAI;IAI7C,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIhE,IAAI,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI;IAM3B,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,OAAO;YAYpB,GAAG;YAiGH,2BAA2B;CAkC1C;AAED,qBAAa,oBAAqB,YAAW,WAAW;IAYpD,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,MAAM;IAZzB,OAAO,CAAC,cAAc,CAAM;IAC5B,OAAO,CAAC,cAAc,CAA+C;IACrE,OAAO,CAAC,aAAa,CAChB;IACL,OAAO,CAAC,IAAI,CAAoB;IAChC,OAAO,CAAC,KAAK,CAAM;IACnB,OAAO,CAAC,eAAe,CAA+C;gBAGpE,OAAO,EAAE,4BAA4B,EACrC,OAAO,EAAE,eAAe,EACP,UAAU,EAAE,OAAO,EACnB,MAAM,EAAE,MAAM;IAajC,UAAU,IAAI,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,CAAC;IAY/D,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIhE,QAAQ,CAAC,EAAE,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,IAAI;IAI7C,IAAI,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI;IAIjC,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,OAAO;YAId,GAAG;YAyCH,aAAa;CAsD5B;AAiKD,wBAAsB,kCAAkC,CACtD,UAAU,EAAE,4BAA4B,EACxC,OAAO,EAAE,eAAe,EACxB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,gBAAgB,CAAC,CAsB3B"}
|
|
@@ -9,7 +9,7 @@ const path_1 = require("path");
|
|
|
9
9
|
const treeKill = require("tree-kill");
|
|
10
10
|
const pseudo_terminal_1 = require("../../tasks-runner/pseudo-terminal");
|
|
11
11
|
const task_env_1 = require("../../tasks-runner/task-env");
|
|
12
|
-
const
|
|
12
|
+
const task_io_service_1 = require("../../tasks-runner/task-io-service");
|
|
13
13
|
const exit_codes_1 = require("../../utils/exit-codes");
|
|
14
14
|
const run_commands_impl_1 = require("./run-commands.impl");
|
|
15
15
|
class ParallelRunningTasks {
|
|
@@ -220,7 +220,7 @@ class SeriallyRunningTasks {
|
|
|
220
220
|
// Skip registration if we're in a forked executor - the fork wrapper already registered
|
|
221
221
|
const pid = pseudoTtyProcess.getPid();
|
|
222
222
|
if (pid && !process.env.NX_FORKED_TASK_EXECUTOR) {
|
|
223
|
-
(0,
|
|
223
|
+
(0, task_io_service_1.registerTaskProcessStart)(taskId, pid);
|
|
224
224
|
}
|
|
225
225
|
return pseudoTtyProcess;
|
|
226
226
|
}
|
|
@@ -250,7 +250,7 @@ class RunningNodeProcess {
|
|
|
250
250
|
// Register process for metrics collection
|
|
251
251
|
// Skip registration if we're in a forked executor - the fork wrapper already registered
|
|
252
252
|
if (this.childProcess.pid && !process.env.NX_FORKED_TASK_EXECUTOR) {
|
|
253
|
-
(0,
|
|
253
|
+
(0, task_io_service_1.registerTaskProcessStart)(taskId, this.childProcess.pid);
|
|
254
254
|
}
|
|
255
255
|
this.addListeners(commandConfig, streamOutput);
|
|
256
256
|
}
|
|
@@ -363,7 +363,7 @@ async function runSingleCommandWithPseudoTerminal(normalized, context, taskId) {
|
|
|
363
363
|
// Skip registration if we're in a forked executor - the fork wrapper already registered
|
|
364
364
|
const pid = pseudoTtyProcess.getPid();
|
|
365
365
|
if (pid && !process.env.NX_FORKED_TASK_EXECUTOR) {
|
|
366
|
-
(0,
|
|
366
|
+
(0, task_io_service_1.registerTaskProcessStart)(taskId, pid);
|
|
367
367
|
}
|
|
368
368
|
registerProcessListener(pseudoTtyProcess, pseudoTerminal);
|
|
369
369
|
return pseudoTtyProcess;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { Task, TaskGraph } from '../config/task-graph';
|
|
2
|
-
import { TaskHasher } from './task-hasher';
|
|
3
|
-
import { ProjectGraph } from '../config/project-graph';
|
|
4
1
|
import { NxJsonConfiguration } from '../config/nx-json';
|
|
2
|
+
import { ProjectGraph } from '../config/project-graph';
|
|
3
|
+
import { Task, TaskGraph } from '../config/task-graph';
|
|
5
4
|
import { TaskDetails } from '../native';
|
|
5
|
+
import { TaskHasher } from './task-hasher';
|
|
6
6
|
export declare function getTaskDetails(): TaskDetails | null;
|
|
7
7
|
export declare function hashTasksThatDoNotDependOnOutputsOfOtherTasks(hasher: TaskHasher, projectGraph: ProjectGraph, taskGraph: TaskGraph, nxJson: NxJsonConfiguration, tasksDetails: TaskDetails | null): Promise<void>;
|
|
8
8
|
export declare function hashTask(hasher: TaskHasher, projectGraph: ProjectGraph, taskGraph: TaskGraph, task: Task, env: NodeJS.ProcessEnv, taskDetails: TaskDetails | null): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hash-task.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/hasher/hash-task.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"hash-task.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/hasher/hash-task.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAc,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAW,WAAW,EAAE,MAAM,WAAW,CAAC;AAKjD,OAAO,EAAa,UAAU,EAAE,MAAM,eAAe,CAAC;AAItD,wBAAgB,cAAc,IAAI,WAAW,GAAG,IAAI,CASnD;AAED,wBAAsB,6CAA6C,CACjE,MAAM,EAAE,UAAU,EAClB,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,mBAAmB,EAC3B,YAAY,EAAE,WAAW,GAAG,IAAI,iBAsDjC;AAED,wBAAsB,QAAQ,CAC5B,MAAM,EAAE,UAAU,EAClB,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,WAAW,EAAE,WAAW,GAAG,IAAI,iBA4ChC;AAED,wBAAsB,SAAS,CAC7B,MAAM,EAAE,UAAU,EAClB,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,WAAW,EAAE,WAAW,GAAG,IAAI,iBAqFhC"}
|
package/src/hasher/hash-task.js
CHANGED
|
@@ -4,12 +4,13 @@ exports.getTaskDetails = getTaskDetails;
|
|
|
4
4
|
exports.hashTasksThatDoNotDependOnOutputsOfOtherTasks = hashTasksThatDoNotDependOnOutputsOfOtherTasks;
|
|
5
5
|
exports.hashTask = hashTask;
|
|
6
6
|
exports.hashTasks = hashTasks;
|
|
7
|
-
const utils_1 = require("../tasks-runner/utils");
|
|
8
|
-
const project_graph_1 = require("../project-graph/project-graph");
|
|
9
|
-
const task_hasher_1 = require("./task-hasher");
|
|
10
7
|
const nx_json_1 = require("../config/nx-json");
|
|
11
8
|
const native_1 = require("../native");
|
|
9
|
+
const project_graph_1 = require("../project-graph/project-graph");
|
|
10
|
+
const task_io_service_1 = require("../tasks-runner/task-io-service");
|
|
11
|
+
const utils_1 = require("../tasks-runner/utils");
|
|
12
12
|
const db_connection_1 = require("../utils/db-connection");
|
|
13
|
+
const task_hasher_1 = require("./task-hasher");
|
|
13
14
|
let taskDetails;
|
|
14
15
|
function getTaskDetails() {
|
|
15
16
|
// TODO: Remove when wasm supports sqlite
|
|
@@ -39,9 +40,14 @@ async function hashTasksThatDoNotDependOnOutputsOfOtherTasks(hasher, projectGrap
|
|
|
39
40
|
})
|
|
40
41
|
.map((t) => t.task);
|
|
41
42
|
const hashes = await hasher.hashTasks(tasksToHash, taskGraph, process.env);
|
|
43
|
+
const ioService = (0, task_io_service_1.getTaskIOService)();
|
|
42
44
|
for (let i = 0; i < tasksToHash.length; i++) {
|
|
43
45
|
tasksToHash[i].hash = hashes[i].value;
|
|
44
46
|
tasksToHash[i].hashDetails = hashes[i].details;
|
|
47
|
+
// Notify TaskIOService of hash inputs
|
|
48
|
+
if (hashes[i].inputs) {
|
|
49
|
+
ioService.notifyTaskInputs(tasksToHash[i].id, hashes[i].inputs);
|
|
50
|
+
}
|
|
45
51
|
}
|
|
46
52
|
if (tasksDetails?.recordTaskDetails) {
|
|
47
53
|
tasksDetails.recordTaskDetails(tasksToHash.map((task) => ({
|
|
@@ -58,7 +64,7 @@ async function hashTask(hasher, projectGraph, taskGraph, task, env, taskDetails)
|
|
|
58
64
|
performance.mark('hashSingleTask:start');
|
|
59
65
|
const customHasher = (0, utils_1.getCustomHasher)(task, projectGraph);
|
|
60
66
|
const projectsConfigurations = (0, project_graph_1.readProjectsConfigurationFromProjectGraph)(projectGraph);
|
|
61
|
-
const { value, details } = await (customHasher
|
|
67
|
+
const { value, details, inputs } = await (customHasher
|
|
62
68
|
? customHasher(task, {
|
|
63
69
|
hasher,
|
|
64
70
|
projectGraph,
|
|
@@ -71,6 +77,10 @@ async function hashTask(hasher, projectGraph, taskGraph, task, env, taskDetails)
|
|
|
71
77
|
: hasher.hashTask(task, taskGraph, env));
|
|
72
78
|
task.hash = value;
|
|
73
79
|
task.hashDetails = details;
|
|
80
|
+
// Notify TaskIOService of hash inputs
|
|
81
|
+
if (inputs) {
|
|
82
|
+
(0, task_io_service_1.getTaskIOService)().notifyTaskInputs(task.id, inputs);
|
|
83
|
+
}
|
|
74
84
|
if (taskDetails?.recordTaskDetails) {
|
|
75
85
|
taskDetails.recordTaskDetails([
|
|
76
86
|
{
|
|
@@ -102,9 +112,10 @@ async function hashTasks(hasher, projectGraph, taskGraph, env, taskDetails) {
|
|
|
102
112
|
}
|
|
103
113
|
}
|
|
104
114
|
// Hash tasks with custom hashers individually
|
|
115
|
+
const ioService = (0, task_io_service_1.getTaskIOService)();
|
|
105
116
|
const customHasherPromises = tasksWithCustomHashers.map(async (task) => {
|
|
106
117
|
const customHasher = (0, utils_1.getCustomHasher)(task, projectGraph);
|
|
107
|
-
const { value, details } = await customHasher(task, {
|
|
118
|
+
const { value, details, inputs } = await customHasher(task, {
|
|
108
119
|
hasher,
|
|
109
120
|
projectGraph,
|
|
110
121
|
taskGraph,
|
|
@@ -115,6 +126,10 @@ async function hashTasks(hasher, projectGraph, taskGraph, env, taskDetails) {
|
|
|
115
126
|
});
|
|
116
127
|
task.hash = value;
|
|
117
128
|
task.hashDetails = details;
|
|
129
|
+
// Notify TaskIOService of hash inputs
|
|
130
|
+
if (inputs) {
|
|
131
|
+
ioService.notifyTaskInputs(task.id, inputs);
|
|
132
|
+
}
|
|
118
133
|
});
|
|
119
134
|
// Hash tasks without custom hashers in batch
|
|
120
135
|
let batchHashPromise = Promise.resolve();
|
|
@@ -125,6 +140,10 @@ async function hashTasks(hasher, projectGraph, taskGraph, env, taskDetails) {
|
|
|
125
140
|
for (let i = 0; i < tasksWithoutCustomHashers.length; i++) {
|
|
126
141
|
tasksWithoutCustomHashers[i].hash = hashes[i].value;
|
|
127
142
|
tasksWithoutCustomHashers[i].hashDetails = hashes[i].details;
|
|
143
|
+
// Notify TaskIOService of hash inputs
|
|
144
|
+
if (hashes[i].inputs) {
|
|
145
|
+
ioService.notifyTaskInputs(tasksWithoutCustomHashers[i].id, hashes[i].inputs);
|
|
146
|
+
}
|
|
128
147
|
}
|
|
129
148
|
});
|
|
130
149
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { NxJsonConfiguration } from '../config/nx-json';
|
|
2
2
|
import { ProjectGraph } from '../config/project-graph';
|
|
3
3
|
import { Task, TaskGraph } from '../config/task-graph';
|
|
4
|
-
import { ExternalObject, FileData, HasherOptions, HashPlanner,
|
|
4
|
+
import { ExternalObject, FileData, HasherOptions, HashPlanner, ProjectGraph as NativeProjectGraph, NxWorkspaceFilesExternals, TaskHasher } from '../native';
|
|
5
5
|
import { PartialHash, TaskHasherImpl } from './task-hasher';
|
|
6
6
|
export declare class NativeTaskHasherImpl implements TaskHasherImpl {
|
|
7
7
|
hasher: TaskHasher;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"native-task-hasher-impl.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/hasher/native-task-hasher-impl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EACL,cAAc,EACd,QAAQ,EACR,aAAa,EACb,WAAW,EACX,
|
|
1
|
+
{"version":3,"file":"native-task-hasher-impl.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/hasher/native-task-hasher-impl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EACL,cAAc,EACd,QAAQ,EACR,aAAa,EACb,WAAW,EACX,YAAY,IAAI,kBAAkB,EAClC,yBAAyB,EACzB,UAAU,EAEX,MAAM,WAAW,CAAC;AAInB,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE5D,qBAAa,oBAAqB,YAAW,cAAc;IACzD,MAAM,EAAE,UAAU,CAAC;IACnB,OAAO,EAAE,WAAW,CAAC;IACrB,eAAe,EAAE,cAAc,CAAC,kBAAkB,CAAC,CAAC;IACpD,oBAAoB,EAAE,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC;IACjD,iBAAiB,EAAE,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;IAC9D,OAAO,EAAE,aAAa,GAAG,SAAS,CAAC;gBAGjC,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,mBAAmB,EAC3B,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,yBAAyB,EACpC,OAAO,EAAE;QAAE,uBAAuB,EAAE,OAAO,CAAA;KAAE;IAkCzC,QAAQ,CACZ,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,GAAG,CAAC,EAAE,MAAM,GACX,OAAO,CAAC,WAAW,CAAC;IAOjB,SAAS,CACb,KAAK,EAAE,IAAI,EAAE,EACb,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,GAAG,CAAC,EAAE,MAAM,GACX,OAAO,CAAC,WAAW,EAAE,CAAC;CAQ1B"}
|
|
@@ -3,8 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.NativeTaskHasherImpl = void 0;
|
|
4
4
|
const native_1 = require("../native");
|
|
5
5
|
const transform_objects_1 = require("../native/transform-objects");
|
|
6
|
-
const fileutils_1 = require("../utils/fileutils");
|
|
7
6
|
const typescript_1 = require("../plugins/js/utils/typescript");
|
|
7
|
+
const fileutils_1 = require("../utils/fileutils");
|
|
8
8
|
class NativeTaskHasherImpl {
|
|
9
9
|
constructor(workspaceRoot, nxJson, projectGraph, externals, options) {
|
|
10
10
|
this.projectGraphRef = (0, native_1.transferProjectGraph)((0, transform_objects_1.transformProjectGraphForRust)(projectGraph));
|
|
@@ -21,7 +21,7 @@ class NativeTaskHasherImpl {
|
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
23
|
this.planner = new native_1.HashPlanner(nxJson, this.projectGraphRef);
|
|
24
|
-
this.hasher = new native_1.TaskHasher(workspaceRoot, this.projectGraphRef, this.projectFileMapRef, this.allWorkspaceFilesRef, Buffer.from(JSON.stringify(tsconfig)), paths, options);
|
|
24
|
+
this.hasher = new native_1.TaskHasher(workspaceRoot, this.projectGraphRef, this.projectFileMapRef, this.allWorkspaceFilesRef, Buffer.from(JSON.stringify(tsconfig)), paths, rootTsConfigPath, options);
|
|
25
25
|
}
|
|
26
26
|
async hashTask(task, taskGraph, env, cwd) {
|
|
27
27
|
const plans = this.planner.getPlansReference([task.id], taskGraph);
|
|
@@ -3,7 +3,8 @@ import { NxJsonConfiguration } from '../config/nx-json';
|
|
|
3
3
|
import { Task, TaskGraph } from '../config/task-graph';
|
|
4
4
|
import { DaemonClient } from '../daemon/client/client';
|
|
5
5
|
import { InputDefinition } from '../config/workspace-json-project-json';
|
|
6
|
-
import { NxWorkspaceFilesExternals } from '../native';
|
|
6
|
+
import { HashInputs, NxWorkspaceFilesExternals } from '../native';
|
|
7
|
+
export { HashInputs };
|
|
7
8
|
/**
|
|
8
9
|
* A data structure returned by the default hasher.
|
|
9
10
|
*/
|
|
@@ -12,6 +13,7 @@ export interface PartialHash {
|
|
|
12
13
|
details: {
|
|
13
14
|
[name: string]: string;
|
|
14
15
|
};
|
|
16
|
+
inputs: HashInputs;
|
|
15
17
|
}
|
|
16
18
|
/**
|
|
17
19
|
* A data structure returned by the default hasher.
|
|
@@ -30,6 +32,7 @@ export interface Hash {
|
|
|
30
32
|
[input: string]: string;
|
|
31
33
|
};
|
|
32
34
|
};
|
|
35
|
+
inputs?: HashInputs;
|
|
33
36
|
}
|
|
34
37
|
export interface TaskHasher {
|
|
35
38
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-hasher.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/hasher/task-hasher.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,uBAAuB,EACxB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAIxE,OAAO,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"task-hasher.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/hasher/task-hasher.ts"],"names":[],"mappings":"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"}
|
package/src/native/index.d.ts
CHANGED
|
@@ -74,7 +74,7 @@ export declare class NxCache {
|
|
|
74
74
|
cacheDirectory: string
|
|
75
75
|
constructor(workspaceRoot: string, cachePath: string, dbConnection: ExternalObject<NxDbConnection>, linkTaskDetails?: boolean | undefined | null, maxCacheSize?: number | undefined | null)
|
|
76
76
|
get(hash: string): CachedResult | null
|
|
77
|
-
put(hash: string, terminalOutput: string, outputs: Array<string>, code: number):
|
|
77
|
+
put(hash: string, terminalOutput: string, outputs: Array<string>, code: number): Array<string>
|
|
78
78
|
applyRemoteCacheResults(hash: string, result: CachedResult, outputs?: Array<string> | undefined | null): void
|
|
79
79
|
getTaskOutputsPath(hash: string): string
|
|
80
80
|
getCacheSize(): number
|
|
@@ -158,7 +158,7 @@ export declare class TaskDetails {
|
|
|
158
158
|
}
|
|
159
159
|
|
|
160
160
|
export declare class TaskHasher {
|
|
161
|
-
constructor(workspaceRoot: string, projectGraph: ExternalObject<ProjectGraph>, projectFileMap: ExternalObject<ProjectFiles>, allWorkspaceFiles: ExternalObject<Array<FileData>>, tsConfig: Buffer, tsConfigPaths: Record<string, Array<string>>, options?: HasherOptions | undefined | null)
|
|
161
|
+
constructor(workspaceRoot: string, projectGraph: ExternalObject<ProjectGraph>, projectFileMap: ExternalObject<ProjectFiles>, allWorkspaceFiles: ExternalObject<Array<FileData>>, tsConfig: Buffer, tsConfigPaths: Record<string, Array<string>>, rootTsconfigPath?: string | undefined | null, options?: HasherOptions | undefined | null)
|
|
162
162
|
hashPlans(hashPlans: ExternalObject<Record<string, Array<HashInstruction>>>, jsEnv: Record<string, string>, cwd: string): NapiDashMap
|
|
163
163
|
}
|
|
164
164
|
|
|
@@ -309,6 +309,8 @@ export declare export declare function hashArray(input: Array<string | undefined
|
|
|
309
309
|
export interface HashDetails {
|
|
310
310
|
value: string
|
|
311
311
|
details: Record<string, string>
|
|
312
|
+
/** Structured inputs used for hashing (file patterns, env vars, etc.) */
|
|
313
|
+
inputs: HashInputs
|
|
312
314
|
}
|
|
313
315
|
|
|
314
316
|
export interface HashedTask {
|
|
@@ -324,6 +326,20 @@ export interface HasherOptions {
|
|
|
324
326
|
|
|
325
327
|
export declare export declare function hashFile(file: string): string | null
|
|
326
328
|
|
|
329
|
+
/** NAPI-compatible struct for returning hash inputs to JavaScript */
|
|
330
|
+
export interface HashInputs {
|
|
331
|
+
/** Expanded file paths that were used as inputs */
|
|
332
|
+
files: Array<string>
|
|
333
|
+
/** Runtime commands */
|
|
334
|
+
runtime: Array<string>
|
|
335
|
+
/** Environment variable names */
|
|
336
|
+
environment: Array<string>
|
|
337
|
+
/** Dependent task outputs */
|
|
338
|
+
depOutputs: Array<string>
|
|
339
|
+
/** External dependencies */
|
|
340
|
+
external: Array<string>
|
|
341
|
+
}
|
|
342
|
+
|
|
327
343
|
export interface InputsInput {
|
|
328
344
|
input: string
|
|
329
345
|
dependencies?: boolean
|
package/src/native/nx.wasi.cjs
CHANGED
|
@@ -112,34 +112,35 @@ function __napi_rs_initialize_modules(__napiInstance) {
|
|
|
112
112
|
__napiInstance.exports['__napi_register__HashPlanInspector_impl_32']?.()
|
|
113
113
|
__napiInstance.exports['__napi_register__HashPlanner_struct_33']?.()
|
|
114
114
|
__napiInstance.exports['__napi_register__HashPlanner_impl_37']?.()
|
|
115
|
-
__napiInstance.exports['
|
|
116
|
-
__napiInstance.exports['
|
|
117
|
-
__napiInstance.exports['
|
|
118
|
-
__napiInstance.exports['
|
|
119
|
-
__napiInstance.exports['
|
|
120
|
-
__napiInstance.exports['
|
|
121
|
-
__napiInstance.exports['
|
|
122
|
-
__napiInstance.exports['
|
|
123
|
-
__napiInstance.exports['
|
|
124
|
-
__napiInstance.exports['
|
|
125
|
-
__napiInstance.exports['
|
|
126
|
-
__napiInstance.exports['
|
|
127
|
-
__napiInstance.exports['
|
|
128
|
-
__napiInstance.exports['
|
|
129
|
-
__napiInstance.exports['
|
|
130
|
-
__napiInstance.exports['
|
|
131
|
-
__napiInstance.exports['
|
|
132
|
-
__napiInstance.exports['
|
|
133
|
-
__napiInstance.exports['
|
|
134
|
-
__napiInstance.exports['
|
|
135
|
-
__napiInstance.exports['
|
|
136
|
-
__napiInstance.exports['
|
|
137
|
-
__napiInstance.exports['
|
|
138
|
-
__napiInstance.exports['
|
|
139
|
-
__napiInstance.exports['
|
|
140
|
-
__napiInstance.exports['
|
|
141
|
-
__napiInstance.exports['
|
|
142
|
-
__napiInstance.exports['
|
|
115
|
+
__napiInstance.exports['__napi_register__HashInputs_struct_38']?.()
|
|
116
|
+
__napiInstance.exports['__napi_register__HashDetails_struct_39']?.()
|
|
117
|
+
__napiInstance.exports['__napi_register__HasherOptions_struct_40']?.()
|
|
118
|
+
__napiInstance.exports['__napi_register__TaskHasher_struct_41']?.()
|
|
119
|
+
__napiInstance.exports['__napi_register__TaskHasher_impl_44']?.()
|
|
120
|
+
__napiInstance.exports['__napi_register__Task_struct_45']?.()
|
|
121
|
+
__napiInstance.exports['__napi_register__TaskTarget_struct_46']?.()
|
|
122
|
+
__napiInstance.exports['__napi_register__TaskResult_struct_47']?.()
|
|
123
|
+
__napiInstance.exports['__napi_register__TaskGraph_struct_48']?.()
|
|
124
|
+
__napiInstance.exports['__napi_register__FileData_struct_49']?.()
|
|
125
|
+
__napiInstance.exports['__napi_register__InputsInput_struct_50']?.()
|
|
126
|
+
__napiInstance.exports['__napi_register__FileSetInput_struct_51']?.()
|
|
127
|
+
__napiInstance.exports['__napi_register__RuntimeInput_struct_52']?.()
|
|
128
|
+
__napiInstance.exports['__napi_register__EnvironmentInput_struct_53']?.()
|
|
129
|
+
__napiInstance.exports['__napi_register__ExternalDependenciesInput_struct_54']?.()
|
|
130
|
+
__napiInstance.exports['__napi_register__DepsOutputsInput_struct_55']?.()
|
|
131
|
+
__napiInstance.exports['__napi_register__WorkingDirectoryInput_struct_56']?.()
|
|
132
|
+
__napiInstance.exports['__napi_register__NxJson_struct_57']?.()
|
|
133
|
+
__napiInstance.exports['__napi_register__is_ai_agent_58']?.()
|
|
134
|
+
__napiInstance.exports['__napi_register__FileLock_struct_59']?.()
|
|
135
|
+
__napiInstance.exports['__napi_register__FileLock_impl_61']?.()
|
|
136
|
+
__napiInstance.exports['__napi_register__WorkspaceContext_struct_62']?.()
|
|
137
|
+
__napiInstance.exports['__napi_register__WorkspaceContext_impl_73']?.()
|
|
138
|
+
__napiInstance.exports['__napi_register__WorkspaceErrors_74']?.()
|
|
139
|
+
__napiInstance.exports['__napi_register__NxWorkspaceFiles_struct_75']?.()
|
|
140
|
+
__napiInstance.exports['__napi_register__NxWorkspaceFilesExternals_struct_76']?.()
|
|
141
|
+
__napiInstance.exports['__napi_register__UpdatedWorkspaceFiles_struct_77']?.()
|
|
142
|
+
__napiInstance.exports['__napi_register__FileMap_struct_78']?.()
|
|
143
|
+
__napiInstance.exports['__napi_register____test_only_transfer_file_map_79']?.()
|
|
143
144
|
}
|
|
144
145
|
module.exports.FileLock = __napiModule.exports.FileLock
|
|
145
146
|
module.exports.HashPlanInspector = __napiModule.exports.HashPlanInspector
|
|
Binary file
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { DefaultTasksRunnerOptions, RemoteCache } from './default-tasks-runner';
|
|
2
|
-
import { Task } from '../config/task-graph';
|
|
3
1
|
import { NxJsonConfiguration } from '../config/nx-json';
|
|
2
|
+
import { Task } from '../config/task-graph';
|
|
3
|
+
import { DefaultTasksRunnerOptions, RemoteCache } from './default-tasks-runner';
|
|
4
4
|
export type CachedResult = {
|
|
5
5
|
terminalOutput: string;
|
|
6
6
|
outputsPath: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/tasks-runner/cache.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/tasks-runner/cache.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,mBAAmB,EAAc,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAoB5C,OAAO,EACL,yBAAyB,EACzB,WAAW,EAEZ,MAAM,wBAAwB,CAAC;AAGhC,MAAM,MAAM,YAAY,GAAG;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AACF,MAAM,MAAM,oBAAoB,GAAG;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,YAAY,EAAE,YAAY,CAAA;CAAE,CAAC;AAG9E,wBAAgB,cAAc,YAkB7B;AAGD,wBAAgB,QAAQ,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,GAAG,KAAK,CAS5E;AAED,qBAAa,OAAO;IAgBhB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAf1B,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,KAAK,CAMX;IAEF,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,kBAAkB,CAAyB;IAEnD,OAAO,CAAC,SAAS,CAA6C;gBAG3C,OAAO,EAAE;QACxB,kBAAkB,EAAE,WAAW,CAAC;QAChC,eAAe,CAAC,EAAE,OAAO,CAAC;KAC3B;IAGG,IAAI;IAQJ,GAAG,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAkCnD,iBAAiB;IAIjB,OAAO,CAAC,uBAAuB;IAQzB,GAAG,CACP,IAAI,EAAE,IAAI,EACV,cAAc,EAAE,MAAM,GAAG,IAAI,EAC7B,OAAO,EAAE,MAAM,EAAE,EACjB,IAAI,EAAE,MAAM;IAwBd,kBAAkB,CAAC,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE;IAM3E,qBAAqB;IAIrB,mBAAmB,CAAC,IAAI,EAAE,IAAI;YAIhB,cAAc;YASd,eAAe;YAiDf,UAAU;YAMV,cAAc;YAMd,WAAW;YAMX,aAAa;IAM3B,OAAO,CAAC,YAAY;YAaN,kBAAkB;IAUhC,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,kBAAkB;CAoB3B;AAED;;GAEG;AACH,qBAAa,KAAK;IAOJ,OAAO,CAAC,QAAQ,CAAC,OAAO;IANpC,IAAI,SAAiB;IACrB,SAAS,SAAyB;IAClC,kBAAkB,SAAmC;IAErD,OAAO,CAAC,iBAAiB,CAAgB;gBAEZ,OAAO,EAAE,yBAAyB;IAW/D,qBAAqB;IAuBf,gBAAgB;IAchB,GAAG,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAkB7C,GAAG,CACP,IAAI,EAAE,IAAI,EACV,cAAc,EAAE,MAAM,GAAG,IAAI,EAC7B,OAAO,EAAE,MAAM,EAAE,EACjB,IAAI,EAAE,MAAM;IAkDR,kBAAkB,CACtB,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,MAAM,EAAE;IAoBnB,mBAAmB,CAAC,IAAI,EAAE,IAAI;YAIhB,wBAAwB;YAIxB,oBAAoB;YAOpB,cAAc;YAiBd,IAAI;YAiBJ,MAAM;YAYN,eAAe;YAwBf,wBAAwB;IAyBtC,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,wBAAwB;CAKjC;AA0BD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,mBAAmB,GAAG,MAAM,CAKvE;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,MAAM,GAAG,MAAM,GAC5B,MAAM,GAAG,SAAS,CAqCpB;AAED,wBAAgB,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,QAAQ,SAAI,GAAG,MAAM,CAS1E"}
|
|
@@ -6,24 +6,25 @@ exports.getCache = getCache;
|
|
|
6
6
|
exports.resolveMaxCacheSize = resolveMaxCacheSize;
|
|
7
7
|
exports.parseMaxCacheSize = parseMaxCacheSize;
|
|
8
8
|
exports.formatCacheSize = formatCacheSize;
|
|
9
|
-
const workspace_root_1 = require("../utils/workspace-root");
|
|
10
|
-
const path_1 = require("path");
|
|
11
|
-
const perf_hooks_1 = require("perf_hooks");
|
|
12
|
-
const default_tasks_runner_1 = require("./default-tasks-runner");
|
|
13
9
|
const child_process_1 = require("child_process");
|
|
10
|
+
const node_machine_id_1 = require("node-machine-id");
|
|
14
11
|
const node_fs_1 = require("node:fs");
|
|
15
12
|
const promises_1 = require("node:fs/promises");
|
|
16
|
-
const
|
|
17
|
-
const
|
|
18
|
-
const native_1 = require("../native");
|
|
19
|
-
const db_connection_1 = require("../utils/db-connection");
|
|
20
|
-
const nx_cloud_utils_1 = require("../utils/nx-cloud-utils");
|
|
13
|
+
const path_1 = require("path");
|
|
14
|
+
const perf_hooks_1 = require("perf_hooks");
|
|
21
15
|
const nx_json_1 = require("../config/nx-json");
|
|
16
|
+
const native_1 = require("../native");
|
|
22
17
|
const update_manager_1 = require("../nx-cloud/update-manager");
|
|
23
18
|
const get_cloud_options_1 = require("../nx-cloud/utilities/get-cloud-options");
|
|
19
|
+
const cache_directory_1 = require("../utils/cache-directory");
|
|
20
|
+
const db_connection_1 = require("../utils/db-connection");
|
|
24
21
|
const is_ci_1 = require("../utils/is-ci");
|
|
25
|
-
const output_1 = require("../utils/output");
|
|
26
22
|
const logger_1 = require("../utils/logger");
|
|
23
|
+
const nx_cloud_utils_1 = require("../utils/nx-cloud-utils");
|
|
24
|
+
const output_1 = require("../utils/output");
|
|
25
|
+
const workspace_root_1 = require("../utils/workspace-root");
|
|
26
|
+
const default_tasks_runner_1 = require("./default-tasks-runner");
|
|
27
|
+
const task_io_service_1 = require("./task-io-service");
|
|
27
28
|
// This function is called once during tasks runner initialization. It checks if the db cache is enabled and logs a warning if it is not.
|
|
28
29
|
function dbCacheEnabled() {
|
|
29
30
|
// ...but if on wasm and the the db cache isnt supported we shouldn't warn
|
|
@@ -103,7 +104,9 @@ class DbCache {
|
|
|
103
104
|
}
|
|
104
105
|
async put(task, terminalOutput, outputs, code) {
|
|
105
106
|
return tryAndRetry(async () => {
|
|
106
|
-
this.cache.put(task.hash, terminalOutput, outputs, code);
|
|
107
|
+
const expandedOutputs = this.cache.put(task.hash, terminalOutput, outputs, code);
|
|
108
|
+
// Notify TaskIOService of actual output files
|
|
109
|
+
(0, task_io_service_1.getTaskIOService)().notifyTaskOutputs(task.id, expandedOutputs);
|
|
107
110
|
if (this.remoteCache) {
|
|
108
111
|
await this.remoteCache.store(task.hash, this.cache.cacheDirectory, terminalOutput, code);
|
|
109
112
|
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { Batch } from './tasks-schedule';
|
|
1
|
+
import { ProjectGraph } from '../config/project-graph';
|
|
3
2
|
import { Task, TaskGraph } from '../config/task-graph';
|
|
3
|
+
import { DefaultTasksRunnerOptions } from './default-tasks-runner';
|
|
4
4
|
import { PseudoTtyProcess } from './pseudo-terminal';
|
|
5
|
-
import { ProjectGraph } from '../config/project-graph';
|
|
6
5
|
import { BatchProcess } from './running-tasks/batch-process';
|
|
7
6
|
import { RunningTask } from './running-tasks/running-task';
|
|
7
|
+
import { Batch } from './tasks-schedule';
|
|
8
8
|
export declare class ForkedProcessTaskRunner {
|
|
9
9
|
private readonly options;
|
|
10
10
|
private readonly tuiEnabled;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"forked-process-task-runner.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/tasks-runner/forked-process-task-runner.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"forked-process-task-runner.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/tasks-runner/forked-process-task-runner.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAMvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAEnE,OAAO,EAAkB,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAK7D,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAOzC,qBAAa,uBAAuB;IAShC,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAT7B,OAAO,SAAgB;IAEvB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA6C;IACrE,OAAO,CAAC,SAAS,CAAyC;IAC1D,OAAO,CAAC,iBAAiB,CAA2B;IACpD,OAAO,CAAC,eAAe,CAA6B;gBAGjC,OAAO,EAAE,yBAAyB,EAClC,UAAU,EAAE,OAAO;IAGhC,IAAI;IAKG,mBAAmB,CAC9B,EAAE,YAAY,EAAE,SAAS,EAAE,cAAc,EAAE,EAAE,KAAK,EAClD,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,SAAS,EACxB,GAAG,EAAE,MAAM,CAAC,UAAU,GACrB,OAAO,CAAC,YAAY,CAAC;IAiDjB,qBAAqB;IASf,iBAAiB,CAC5B,IAAI,EAAE,IAAI,EACV,EACE,mBAAmB,EACnB,YAAY,EACZ,UAAU,EACV,SAAS,EACT,GAAG,GACJ,EAAE;QACD,mBAAmB,EAAE,MAAM,CAAC;QAC5B,YAAY,EAAE,OAAO,CAAC;QACtB,UAAU,EAAE,OAAO,CAAC;QACpB,SAAS,EAAE,SAAS,CAAC;QACrB,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;KACxB,GACA,OAAO,CAAC,WAAW,CAAC;IAgBV,WAAW,CACtB,IAAI,EAAE,IAAI,EACV,EACE,mBAAmB,EACnB,YAAY,EACZ,SAAS,EACT,GAAG,EACH,qBAAqB,GACtB,EAAE;QACD,mBAAmB,EAAE,MAAM,CAAC;QAC5B,YAAY,EAAE,OAAO,CAAC;QACtB,UAAU,EAAE,OAAO,CAAC;QACpB,SAAS,EAAE,SAAS,CAAC;QACrB,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;QACvB,qBAAqB,EAAE,OAAO,CAAC;KAChC,GACA,OAAO,CAAC,WAAW,GAAG,gBAAgB,CAAC;YAiC5B,oBAAoB;YAYpB,6BAA6B;IAkE3C,OAAO,CAAC,8BAA8B;IAmEtC,OAAO,CAAC,8BAA8B;IA2EtC,OAAO,CAAC,mBAAmB;IAI3B,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,OAAO;IAO/B,OAAO,CAAC,0BAA0B;CAwCnC"}
|
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ForkedProcessTaskRunner = void 0;
|
|
4
|
-
const fs_1 = require("fs");
|
|
5
4
|
const child_process_1 = require("child_process");
|
|
6
|
-
const
|
|
7
|
-
const utils_1 = require("./utils");
|
|
5
|
+
const fs_1 = require("fs");
|
|
8
6
|
const path_1 = require("path");
|
|
9
|
-
const
|
|
7
|
+
const native_1 = require("../native");
|
|
8
|
+
const exit_codes_1 = require("../utils/exit-codes");
|
|
9
|
+
const output_1 = require("../utils/output");
|
|
10
10
|
const strip_indents_1 = require("../utils/strip-indents");
|
|
11
|
+
const batch_messages_1 = require("./batch/batch-messages");
|
|
12
|
+
const process_metrics_service_1 = require("./process-metrics-service");
|
|
11
13
|
const pseudo_terminal_1 = require("./pseudo-terminal");
|
|
12
|
-
const exit_codes_1 = require("../utils/exit-codes");
|
|
13
|
-
const node_child_process_1 = require("./running-tasks/node-child-process");
|
|
14
14
|
const batch_process_1 = require("./running-tasks/batch-process");
|
|
15
|
-
const
|
|
16
|
-
const
|
|
15
|
+
const node_child_process_1 = require("./running-tasks/node-child-process");
|
|
16
|
+
const task_io_service_1 = require("./task-io-service");
|
|
17
|
+
const utils_1 = require("./utils");
|
|
17
18
|
const forkScript = (0, path_1.join)(__dirname, './fork.js');
|
|
18
19
|
const workerPath = (0, path_1.join)(__dirname, './batch/run-batch.js');
|
|
19
20
|
class ForkedProcessTaskRunner {
|
|
@@ -144,7 +145,7 @@ class ForkedProcessTaskRunner {
|
|
|
144
145
|
// Register forked process for metrics collection
|
|
145
146
|
const pid = p.getPid();
|
|
146
147
|
if (pid) {
|
|
147
|
-
(0,
|
|
148
|
+
(0, task_io_service_1.registerTaskProcessStart)(task.id, pid);
|
|
148
149
|
}
|
|
149
150
|
p.send({
|
|
150
151
|
targetDescription: task.target,
|
|
@@ -185,7 +186,7 @@ class ForkedProcessTaskRunner {
|
|
|
185
186
|
});
|
|
186
187
|
// Register forked process for metrics collection
|
|
187
188
|
if (p.pid) {
|
|
188
|
-
(0,
|
|
189
|
+
(0, task_io_service_1.registerTaskProcessStart)(task.id, p.pid);
|
|
189
190
|
}
|
|
190
191
|
// Send message to run the executor
|
|
191
192
|
p.send({
|
|
@@ -228,7 +229,7 @@ class ForkedProcessTaskRunner {
|
|
|
228
229
|
});
|
|
229
230
|
// Register forked process for metrics collection
|
|
230
231
|
if (p.pid) {
|
|
231
|
-
(0,
|
|
232
|
+
(0, task_io_service_1.registerTaskProcessStart)(task.id, p.pid);
|
|
232
233
|
}
|
|
233
234
|
const cp = new node_child_process_1.NodeChildProcessWithDirectOutput(p, temporaryOutputPath);
|
|
234
235
|
this.processes.add(cp);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export type {
|
|
1
|
+
import { GroupInfo, GroupType, Metadata, MetricsUpdate, ProcessMetadata, ProcessMetrics, SystemInfo } from '../native';
|
|
2
|
+
export type { GroupInfo, GroupType, Metadata, MetricsUpdate, ProcessMetadata, ProcessMetrics, SystemInfo, };
|
|
3
3
|
export type MetricsCallback = (event: MetricsUpdate) => void;
|
|
4
4
|
/**
|
|
5
5
|
* Simplified service providing subscription-based access to Rust metrics collector
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-metrics-service.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/tasks-runner/process-metrics-service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"process-metrics-service.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/tasks-runner/process-metrics-service.ts"],"names":[],"mappings":"AACA,OAAO,EACL,SAAS,EACT,SAAS,EACT,QAAQ,EACR,aAAa,EACb,eAAe,EACf,cAAc,EAEd,UAAU,EACX,MAAM,WAAW,CAAC;AAEnB,YAAY,EACV,SAAS,EACT,SAAS,EACT,QAAQ,EACR,aAAa,EACb,eAAe,EACf,cAAc,EACd,UAAU,GACX,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;AAE7D;;;;GAIG;AACH,cAAM,qBAAqB;IACzB,OAAO,CAAC,SAAS,CAAwC;IACzD,OAAO,CAAC,iBAAiB,CAAS;;IAmBlC;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAe/B;;;OAGG;IACH,SAAS,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI;IA+B1C;;;OAGG;IACH,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI;IAQtD;;OAEG;IACH,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI;IAQpE;;OAEG;IACH,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAQxC;;OAEG;IACH,yBAAyB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAQ5D;;OAEG;IACH,aAAa,IAAI,UAAU,GAAG,IAAI;IASlC;;OAEG;IACH,QAAQ,IAAI,IAAI;CAOjB;AAOD;;;GAGG;AACH,wBAAgB,wBAAwB,IAAI,qBAAqB,CAKhE"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getProcessMetricsService = getProcessMetricsService;
|
|
4
|
-
const native_1 = require("../native");
|
|
5
4
|
const cache_1 = require("../daemon/cache");
|
|
5
|
+
const native_1 = require("../native");
|
|
6
6
|
/**
|
|
7
7
|
* Simplified service providing subscription-based access to Rust metrics collector
|
|
8
8
|
* Manages singleton access pattern for metrics collection during execution of tasks and CLI commands
|
|
@@ -50,7 +50,7 @@ class ProcessMetricsService {
|
|
|
50
50
|
*/
|
|
51
51
|
subscribe(callback) {
|
|
52
52
|
if (!this.collector) {
|
|
53
|
-
|
|
53
|
+
throw new Error('Metrics collector not initialized');
|
|
54
54
|
}
|
|
55
55
|
try {
|
|
56
56
|
// Start collection on first subscription (idempotent - safe to call multiple times)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-command.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/tasks-runner/run-command.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,mBAAmB,EAGpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAChF,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAa/E,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAkBrD,OAAO,EAEL,SAAS,EACT,UAAU,EACV,WAAW,EACZ,MAAM,cAAc,CAAC;AAkBtB,OAAO,EAAE,WAAW,EAAc,MAAM,gBAAgB,CAAC;AAuWzD,wBAAsB,UAAU,CAC9B,aAAa,EAAE,uBAAuB,EAAE,EACxC,mBAAmB,EAAE,YAAY,EACjC,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,mBAAmB,CAAA;CAAE,EAC3C,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,GAAG,EACd,iBAAiB,EAAE,MAAM,GAAG,IAAI,EAChC,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,sBAAsB,GAAG,MAAM,CAAC,EAAE,CAAC,EAC5E,YAAY,EAAE;IAAE,uBAAuB,EAAE,OAAO,CAAC;IAAC,eAAe,EAAE,OAAO,CAAA;CAAE,GAC3E,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAwDrC;AAED,wBAAsB,kBAAkB,CACtC,aAAa,EAAE,uBAAuB,EAAE,EACxC,mBAAmB,EAAE,YAAY,EACjC,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,mBAAmB,CAAA;CAAE,EAC3C,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,GAAG,EACd,iBAAiB,EAAE,MAAM,GAAG,IAAI,EAChC,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,sBAAsB,GAAG,MAAM,CAAC,EAAE,CAAC,EAC5E,YAAY,EAAE;IAAE,uBAAuB,EAAE,OAAO,CAAC;IAAC,eAAe,EAAE,OAAO,CAAA;CAAE,GAC3E,OAAO,CAAC;IAAE,WAAW,EAAE,WAAW,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"run-command.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/tasks-runner/run-command.ts"],"names":[],"mappings":"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"}
|