nx 22.0.1 → 22.0.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.
- package/migrations.json +6 -0
- package/package.json +12 -12
- package/project.json +5 -1
- package/src/ai/set-up-ai-agents/get-agent-rules.d.ts.map +1 -1
- package/src/ai/set-up-ai-agents/get-agent-rules.js +0 -11
- package/src/ai/utils.d.ts.map +1 -1
- package/src/ai/utils.js +3 -1
- package/src/command-line/init/ai-agent-prompts.d.ts.map +1 -1
- package/src/command-line/init/ai-agent-prompts.js +12 -11
- package/src/command-line/init/implementation/dot-nx/add-nx-scripts.d.ts +2 -0
- package/src/command-line/init/implementation/dot-nx/add-nx-scripts.d.ts.map +1 -1
- package/src/command-line/init/implementation/dot-nx/add-nx-scripts.js +11 -1
- package/src/command-line/init/init-v2.d.ts.map +1 -1
- package/src/command-line/init/init-v2.js +4 -0
- package/src/command-line/release/config/config.d.ts +1 -1
- package/src/command-line/release/config/config.d.ts.map +1 -1
- package/src/command-line/release/config/config.js +39 -0
- package/src/command-line/release/utils/release-graph.d.ts +1 -1
- package/src/command-line/release/version/release-group-processor.d.ts.map +1 -1
- package/src/command-line/release/version/release-group-processor.js +3 -2
- package/src/config/nx-json.d.ts +2 -0
- package/src/config/nx-json.d.ts.map +1 -1
- package/src/config/nx-json.js +2 -1
- package/src/core/graph/main.js +1 -1
- package/src/daemon/client/client.d.ts.map +1 -1
- package/src/daemon/client/client.js +25 -19
- package/src/daemon/client/daemon-socket-messenger.d.ts +1 -1
- package/src/daemon/client/daemon-socket-messenger.d.ts.map +1 -1
- package/src/daemon/client/daemon-socket-messenger.js +5 -3
- package/src/daemon/is-v8-serializer-enabled.d.ts +6 -0
- package/src/daemon/is-v8-serializer-enabled.d.ts.map +1 -0
- package/src/daemon/is-v8-serializer-enabled.js +10 -0
- package/src/daemon/server/file-watching/file-watcher-sockets.d.ts.map +1 -1
- package/src/daemon/server/file-watching/file-watcher-sockets.js +1 -1
- package/src/daemon/server/handle-context-file-data.js +1 -1
- package/src/daemon/server/handle-flush-sync-generator-changes-to-disk.js +1 -1
- package/src/daemon/server/handle-get-files-in-directory.js +1 -1
- package/src/daemon/server/handle-get-registered-sync-generators.js +1 -1
- package/src/daemon/server/handle-get-sync-generator-changes.js +1 -1
- package/src/daemon/server/handle-glob.js +2 -2
- package/src/daemon/server/handle-hash-tasks.d.ts +1 -1
- package/src/daemon/server/handle-hash-tasks.d.ts.map +1 -1
- package/src/daemon/server/handle-hash-tasks.js +1 -1
- package/src/daemon/server/handle-nx-workspace-files.js +1 -1
- package/src/daemon/server/handle-outputs-tracking.js +1 -1
- package/src/daemon/server/handle-task-history.d.ts +2 -2
- package/src/daemon/server/handle-task-history.js +2 -2
- package/src/daemon/server/handle-tasks-execution-hooks.d.ts +1 -1
- package/src/daemon/server/handle-tasks-execution-hooks.js +1 -1
- package/src/daemon/server/project-graph-incremental-recomputation.d.ts.map +1 -1
- package/src/daemon/server/project-graph-incremental-recomputation.js +14 -1
- package/src/daemon/server/project-graph-listener-sockets.d.ts.map +1 -1
- package/src/daemon/server/project-graph-listener-sockets.js +3 -2
- package/src/daemon/server/server.d.ts +2 -2
- package/src/daemon/server/server.d.ts.map +1 -1
- package/src/daemon/server/server.js +49 -28
- package/src/daemon/server/shutdown-utils.d.ts.map +1 -1
- package/src/daemon/server/shutdown-utils.js +2 -1
- package/src/daemon/socket-utils.d.ts +11 -0
- package/src/daemon/socket-utils.d.ts.map +1 -1
- package/src/daemon/socket-utils.js +41 -0
- package/src/devkit-internals.d.ts +2 -1
- package/src/devkit-internals.d.ts.map +1 -1
- package/src/devkit-internals.js +4 -1
- package/src/generators/internal-utils/format-changed-files-with-prettier-if-available.d.ts.map +1 -1
- package/src/generators/internal-utils/format-changed-files-with-prettier-if-available.js +5 -1
- package/src/hasher/hash-task.d.ts +1 -0
- package/src/hasher/hash-task.d.ts.map +1 -1
- package/src/hasher/hash-task.js +57 -0
- package/src/migrations/update-22-1-0/update-nx-wrapper.d.ts +3 -0
- package/src/migrations/update-22-1-0/update-nx-wrapper.d.ts.map +1 -0
- package/src/migrations/update-22-1-0/update-nx-wrapper.js +7 -0
- package/src/native/nx.wasi-browser.js +53 -45
- package/src/native/nx.wasm32-wasi.wasm +0 -0
- package/src/plugins/js/index.d.ts.map +1 -1
- package/src/plugins/js/index.js +34 -20
- package/src/plugins/js/lock-file/pnpm-parser.d.ts.map +1 -1
- package/src/plugins/js/lock-file/pnpm-parser.js +5 -3
- package/src/plugins/js/lock-file/project-graph-pruning.js +1 -1
- package/src/plugins/js/project-graph/build-dependencies/target-project-locator.js +1 -1
- package/src/project-graph/plugins/isolation/messaging.d.ts.map +1 -1
- package/src/project-graph/plugins/isolation/messaging.js +2 -1
- package/src/project-graph/plugins/isolation/plugin-pool.js +19 -5
- package/src/project-graph/plugins/loaded-nx-plugin.d.ts.map +1 -1
- package/src/project-graph/plugins/loaded-nx-plugin.js +2 -0
- package/src/project-graph/plugins/resolve-plugin.d.ts.map +1 -1
- package/src/project-graph/plugins/resolve-plugin.js +4 -2
- package/src/project-graph/utils/project-configuration-utils.d.ts +1 -1
- package/src/project-graph/utils/project-configuration-utils.d.ts.map +1 -1
- package/src/project-graph/utils/project-configuration-utils.js +7 -4
- package/src/tasks-runner/cache.d.ts.map +1 -1
- package/src/tasks-runner/cache.js +27 -14
- package/src/tasks-runner/fork.js +3 -1
- package/src/tasks-runner/is-tui-enabled.d.ts.map +1 -1
- package/src/tasks-runner/is-tui-enabled.js +1 -1
- package/src/tasks-runner/pseudo-ipc.d.ts.map +1 -1
- package/src/tasks-runner/pseudo-ipc.js +4 -4
- package/src/tasks-runner/run-command.d.ts.map +1 -1
- package/src/tasks-runner/run-command.js +4 -1
- package/src/tasks-runner/task-orchestrator.d.ts +1 -1
- package/src/tasks-runner/task-orchestrator.d.ts.map +1 -1
- package/src/tasks-runner/task-orchestrator.js +2 -6
- package/src/utils/consume-messages-from-socket.d.ts +2 -0
- package/src/utils/consume-messages-from-socket.d.ts.map +1 -1
- package/src/utils/consume-messages-from-socket.js +27 -8
- package/src/utils/exit-codes.d.ts +1 -1
- package/src/utils/exit-codes.d.ts.map +1 -1
- package/src/utils/git-utils.js +1 -1
- package/src/utils/package-json.js +1 -1
- package/src/utils/package-manager.js +2 -2
- package/src/utils/update-nxw.d.ts.map +1 -1
- package/src/utils/update-nxw.js +11 -0
|
@@ -54,6 +54,7 @@ const handle_flush_sync_generator_changes_to_disk_1 = require("./handle-flush-sy
|
|
|
54
54
|
const run_tasks_execution_hooks_1 = require("../message-types/run-tasks-execution-hooks");
|
|
55
55
|
const handle_tasks_execution_hooks_1 = require("./handle-tasks-execution-hooks");
|
|
56
56
|
const register_project_graph_listener_1 = require("../message-types/register-project-graph-listener");
|
|
57
|
+
const v8_1 = require("v8");
|
|
57
58
|
let performanceObserver;
|
|
58
59
|
let workspaceWatcherError;
|
|
59
60
|
let outputsWatcherError;
|
|
@@ -99,32 +100,41 @@ async function handleMessage(socket, data) {
|
|
|
99
100
|
(0, shutdown_utils_1.resetInactivityTimeout)(handleInactivityTimeout);
|
|
100
101
|
const unparsedPayload = data;
|
|
101
102
|
let payload;
|
|
103
|
+
let mode = 'json';
|
|
102
104
|
try {
|
|
103
|
-
|
|
105
|
+
// JSON Message
|
|
106
|
+
if ((0, consume_messages_from_socket_1.isJsonMessage)(unparsedPayload)) {
|
|
107
|
+
payload = JSON.parse(unparsedPayload);
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
110
|
+
// V8 Serialized Message
|
|
111
|
+
payload = (0, v8_1.deserialize)(Buffer.from(unparsedPayload, 'binary'));
|
|
112
|
+
mode = 'v8';
|
|
113
|
+
}
|
|
104
114
|
}
|
|
105
115
|
catch (e) {
|
|
106
116
|
await (0, shutdown_utils_1.respondWithErrorAndExit)(socket, `Invalid payload from the client`, new Error(`Unsupported payload sent to daemon server: ${unparsedPayload}`));
|
|
107
117
|
}
|
|
108
118
|
if (payload.type === 'PING') {
|
|
109
|
-
await handleResult(socket, 'PING', () => Promise.resolve({ response:
|
|
119
|
+
await handleResult(socket, 'PING', () => Promise.resolve({ response: true, description: 'ping' }), mode);
|
|
110
120
|
}
|
|
111
121
|
else if (payload.type === 'REQUEST_PROJECT_GRAPH') {
|
|
112
|
-
await handleResult(socket, 'REQUEST_PROJECT_GRAPH', () => (0, handle_request_project_graph_1.handleRequestProjectGraph)());
|
|
122
|
+
await handleResult(socket, 'REQUEST_PROJECT_GRAPH', () => (0, handle_request_project_graph_1.handleRequestProjectGraph)(), mode);
|
|
113
123
|
}
|
|
114
124
|
else if (payload.type === 'HASH_TASKS') {
|
|
115
|
-
await handleResult(socket, 'HASH_TASKS', () => (0, handle_hash_tasks_1.handleHashTasks)(payload));
|
|
125
|
+
await handleResult(socket, 'HASH_TASKS', () => (0, handle_hash_tasks_1.handleHashTasks)(payload), mode);
|
|
116
126
|
}
|
|
117
127
|
else if (payload.type === 'PROCESS_IN_BACKGROUND') {
|
|
118
|
-
await handleResult(socket, 'PROCESS_IN_BACKGROUND', () => (0, handle_process_in_background_1.handleProcessInBackground)(payload));
|
|
128
|
+
await handleResult(socket, 'PROCESS_IN_BACKGROUND', () => (0, handle_process_in_background_1.handleProcessInBackground)(payload), mode);
|
|
119
129
|
}
|
|
120
130
|
else if (payload.type === 'RECORD_OUTPUTS_HASH') {
|
|
121
|
-
await handleResult(socket, 'RECORD_OUTPUTS_HASH', () => (0, handle_outputs_tracking_1.handleRecordOutputsHash)(payload));
|
|
131
|
+
await handleResult(socket, 'RECORD_OUTPUTS_HASH', () => (0, handle_outputs_tracking_1.handleRecordOutputsHash)(payload), mode);
|
|
122
132
|
}
|
|
123
133
|
else if (payload.type === 'OUTPUTS_HASHES_MATCH') {
|
|
124
|
-
await handleResult(socket, 'OUTPUTS_HASHES_MATCH', () => (0, handle_outputs_tracking_1.handleOutputsHashesMatch)(payload));
|
|
134
|
+
await handleResult(socket, 'OUTPUTS_HASHES_MATCH', () => (0, handle_outputs_tracking_1.handleOutputsHashesMatch)(payload), mode);
|
|
125
135
|
}
|
|
126
136
|
else if (payload.type === 'REQUEST_SHUTDOWN') {
|
|
127
|
-
await handleResult(socket, 'REQUEST_SHUTDOWN', () => (0, handle_request_shutdown_1.handleRequestShutdown)(server, numberOfOpenConnections));
|
|
137
|
+
await handleResult(socket, 'REQUEST_SHUTDOWN', () => (0, handle_request_shutdown_1.handleRequestShutdown)(server, numberOfOpenConnections), mode);
|
|
128
138
|
}
|
|
129
139
|
else if (payload.type === 'REGISTER_FILE_WATCHER') {
|
|
130
140
|
file_watcher_sockets_1.registeredFileWatcherSockets.push({ socket, config: payload.config });
|
|
@@ -133,61 +143,61 @@ async function handleMessage(socket, data) {
|
|
|
133
143
|
project_graph_listener_sockets_1.registeredProjectGraphListenerSockets.push(socket);
|
|
134
144
|
}
|
|
135
145
|
else if ((0, glob_1.isHandleGlobMessage)(payload)) {
|
|
136
|
-
await handleResult(socket, glob_1.GLOB, () => (0, handle_glob_1.handleGlob)(payload.globs, payload.exclude));
|
|
146
|
+
await handleResult(socket, glob_1.GLOB, () => (0, handle_glob_1.handleGlob)(payload.globs, payload.exclude), mode);
|
|
137
147
|
}
|
|
138
148
|
else if ((0, glob_1.isHandleMultiGlobMessage)(payload)) {
|
|
139
|
-
await handleResult(socket, glob_1.MULTI_GLOB, () => (0, handle_glob_1.handleMultiGlob)(payload.globs, payload.exclude));
|
|
149
|
+
await handleResult(socket, glob_1.MULTI_GLOB, () => (0, handle_glob_1.handleMultiGlob)(payload.globs, payload.exclude), mode);
|
|
140
150
|
}
|
|
141
151
|
else if ((0, get_nx_workspace_files_1.isHandleNxWorkspaceFilesMessage)(payload)) {
|
|
142
|
-
await handleResult(socket, get_nx_workspace_files_1.GET_NX_WORKSPACE_FILES, () => (0, handle_nx_workspace_files_1.handleNxWorkspaceFiles)(payload.projectRootMap));
|
|
152
|
+
await handleResult(socket, get_nx_workspace_files_1.GET_NX_WORKSPACE_FILES, () => (0, handle_nx_workspace_files_1.handleNxWorkspaceFiles)(payload.projectRootMap), mode);
|
|
143
153
|
}
|
|
144
154
|
else if ((0, get_files_in_directory_1.isHandleGetFilesInDirectoryMessage)(payload)) {
|
|
145
|
-
await handleResult(socket, get_files_in_directory_1.GET_FILES_IN_DIRECTORY, () => (0, handle_get_files_in_directory_1.handleGetFilesInDirectory)(payload.dir));
|
|
155
|
+
await handleResult(socket, get_files_in_directory_1.GET_FILES_IN_DIRECTORY, () => (0, handle_get_files_in_directory_1.handleGetFilesInDirectory)(payload.dir), mode);
|
|
146
156
|
}
|
|
147
157
|
else if ((0, get_context_file_data_1.isHandleContextFileDataMessage)(payload)) {
|
|
148
|
-
await handleResult(socket, get_context_file_data_1.GET_CONTEXT_FILE_DATA, () => (0, handle_context_file_data_1.handleContextFileData)());
|
|
158
|
+
await handleResult(socket, get_context_file_data_1.GET_CONTEXT_FILE_DATA, () => (0, handle_context_file_data_1.handleContextFileData)(), mode);
|
|
149
159
|
}
|
|
150
160
|
else if ((0, hash_glob_1.isHandleHashGlobMessage)(payload)) {
|
|
151
|
-
await handleResult(socket, hash_glob_1.HASH_GLOB, () => (0, handle_hash_glob_1.handleHashGlob)(payload.globs, payload.exclude));
|
|
161
|
+
await handleResult(socket, hash_glob_1.HASH_GLOB, () => (0, handle_hash_glob_1.handleHashGlob)(payload.globs, payload.exclude), mode);
|
|
152
162
|
}
|
|
153
163
|
else if ((0, hash_glob_1.isHandleHashMultiGlobMessage)(payload)) {
|
|
154
|
-
await handleResult(socket, hash_glob_1.HASH_GLOB, () => (0, handle_hash_glob_1.handleHashMultiGlob)(payload.globGroups));
|
|
164
|
+
await handleResult(socket, hash_glob_1.HASH_GLOB, () => (0, handle_hash_glob_1.handleHashMultiGlob)(payload.globGroups), mode);
|
|
155
165
|
}
|
|
156
166
|
else if ((0, task_history_1.isHandleGetFlakyTasksMessage)(payload)) {
|
|
157
|
-
await handleResult(socket, task_history_1.GET_FLAKY_TASKS, () => (0, handle_task_history_1.handleGetFlakyTasks)(payload.hashes));
|
|
167
|
+
await handleResult(socket, task_history_1.GET_FLAKY_TASKS, () => (0, handle_task_history_1.handleGetFlakyTasks)(payload.hashes), mode);
|
|
158
168
|
}
|
|
159
169
|
else if ((0, task_history_1.isHandleGetEstimatedTaskTimings)(payload)) {
|
|
160
|
-
await handleResult(socket, task_history_1.GET_ESTIMATED_TASK_TIMINGS, () => (0, handle_task_history_1.handleGetEstimatedTaskTimings)(payload.targets));
|
|
170
|
+
await handleResult(socket, task_history_1.GET_ESTIMATED_TASK_TIMINGS, () => (0, handle_task_history_1.handleGetEstimatedTaskTimings)(payload.targets), mode);
|
|
161
171
|
}
|
|
162
172
|
else if ((0, task_history_1.isHandleWriteTaskRunsToHistoryMessage)(payload)) {
|
|
163
|
-
await handleResult(socket, task_history_1.RECORD_TASK_RUNS, () => (0, handle_task_history_1.handleRecordTaskRuns)(payload.taskRuns));
|
|
173
|
+
await handleResult(socket, task_history_1.RECORD_TASK_RUNS, () => (0, handle_task_history_1.handleRecordTaskRuns)(payload.taskRuns), mode);
|
|
164
174
|
}
|
|
165
175
|
else if ((0, force_shutdown_1.isHandleForceShutdownMessage)(payload)) {
|
|
166
|
-
await handleResult(socket, 'FORCE_SHUTDOWN', () => (0, handle_force_shutdown_1.handleForceShutdown)(server));
|
|
176
|
+
await handleResult(socket, 'FORCE_SHUTDOWN', () => (0, handle_force_shutdown_1.handleForceShutdown)(server), mode);
|
|
167
177
|
}
|
|
168
178
|
else if ((0, get_sync_generator_changes_1.isHandleGetSyncGeneratorChangesMessage)(payload)) {
|
|
169
|
-
await handleResult(socket, get_sync_generator_changes_1.GET_SYNC_GENERATOR_CHANGES, () => (0, handle_get_sync_generator_changes_1.handleGetSyncGeneratorChanges)(payload.generators));
|
|
179
|
+
await handleResult(socket, get_sync_generator_changes_1.GET_SYNC_GENERATOR_CHANGES, () => (0, handle_get_sync_generator_changes_1.handleGetSyncGeneratorChanges)(payload.generators), mode);
|
|
170
180
|
}
|
|
171
181
|
else if ((0, flush_sync_generator_changes_to_disk_1.isHandleFlushSyncGeneratorChangesToDiskMessage)(payload)) {
|
|
172
|
-
await handleResult(socket, flush_sync_generator_changes_to_disk_1.FLUSH_SYNC_GENERATOR_CHANGES_TO_DISK, () => (0, handle_flush_sync_generator_changes_to_disk_1.handleFlushSyncGeneratorChangesToDisk)(payload.generators));
|
|
182
|
+
await handleResult(socket, flush_sync_generator_changes_to_disk_1.FLUSH_SYNC_GENERATOR_CHANGES_TO_DISK, () => (0, handle_flush_sync_generator_changes_to_disk_1.handleFlushSyncGeneratorChangesToDisk)(payload.generators), mode);
|
|
173
183
|
}
|
|
174
184
|
else if ((0, get_registered_sync_generators_1.isHandleGetRegisteredSyncGeneratorsMessage)(payload)) {
|
|
175
|
-
await handleResult(socket, get_registered_sync_generators_1.GET_REGISTERED_SYNC_GENERATORS, () => (0, handle_get_registered_sync_generators_1.handleGetRegisteredSyncGenerators)());
|
|
185
|
+
await handleResult(socket, get_registered_sync_generators_1.GET_REGISTERED_SYNC_GENERATORS, () => (0, handle_get_registered_sync_generators_1.handleGetRegisteredSyncGenerators)(), mode);
|
|
176
186
|
}
|
|
177
187
|
else if ((0, update_workspace_context_1.isHandleUpdateWorkspaceContextMessage)(payload)) {
|
|
178
|
-
await handleResult(socket, update_workspace_context_1.UPDATE_WORKSPACE_CONTEXT, () => (0, handle_update_workspace_context_1.handleUpdateWorkspaceContext)(payload.createdFiles, payload.updatedFiles, payload.deletedFiles));
|
|
188
|
+
await handleResult(socket, update_workspace_context_1.UPDATE_WORKSPACE_CONTEXT, () => (0, handle_update_workspace_context_1.handleUpdateWorkspaceContext)(payload.createdFiles, payload.updatedFiles, payload.deletedFiles), mode);
|
|
179
189
|
}
|
|
180
190
|
else if ((0, run_tasks_execution_hooks_1.isHandlePreTasksExecutionMessage)(payload)) {
|
|
181
|
-
await handleResult(socket, run_tasks_execution_hooks_1.PRE_TASKS_EXECUTION, () => (0, handle_tasks_execution_hooks_1.handleRunPreTasksExecution)(payload.context));
|
|
191
|
+
await handleResult(socket, run_tasks_execution_hooks_1.PRE_TASKS_EXECUTION, () => (0, handle_tasks_execution_hooks_1.handleRunPreTasksExecution)(payload.context), mode);
|
|
182
192
|
}
|
|
183
193
|
else if ((0, run_tasks_execution_hooks_1.isHandlePostTasksExecutionMessage)(payload)) {
|
|
184
|
-
await handleResult(socket, run_tasks_execution_hooks_1.POST_TASKS_EXECUTION, () => (0, handle_tasks_execution_hooks_1.handleRunPostTasksExecution)(payload.context));
|
|
194
|
+
await handleResult(socket, run_tasks_execution_hooks_1.POST_TASKS_EXECUTION, () => (0, handle_tasks_execution_hooks_1.handleRunPostTasksExecution)(payload.context), mode);
|
|
185
195
|
}
|
|
186
196
|
else {
|
|
187
197
|
await (0, shutdown_utils_1.respondWithErrorAndExit)(socket, `Invalid payload from the client`, new Error(`Unsupported payload sent to daemon server: ${unparsedPayload}`));
|
|
188
198
|
}
|
|
189
199
|
}
|
|
190
|
-
async function handleResult(socket, type, hrFn) {
|
|
200
|
+
async function handleResult(socket, type, hrFn, mode) {
|
|
191
201
|
let hr;
|
|
192
202
|
const startMark = new Date();
|
|
193
203
|
try {
|
|
@@ -201,10 +211,13 @@ async function handleResult(socket, type, hrFn) {
|
|
|
201
211
|
await (0, shutdown_utils_1.respondWithErrorAndExit)(socket, hr.description, hr.error);
|
|
202
212
|
}
|
|
203
213
|
else {
|
|
204
|
-
|
|
214
|
+
const response = typeof hr.response === 'string'
|
|
215
|
+
? hr.response
|
|
216
|
+
: serializeUnserializedResult(hr.response, mode);
|
|
217
|
+
await (0, shutdown_utils_1.respondToClient)(socket, response, hr.description);
|
|
205
218
|
}
|
|
206
219
|
const endMark = new Date();
|
|
207
|
-
logger_1.serverLogger.log(`Handled ${type}. Handling time: ${doneHandlingMark.getTime() - startMark.getTime()}. Response time: ${endMark.getTime() - doneHandlingMark.getTime()}.`);
|
|
220
|
+
logger_1.serverLogger.log(`Handled ${mode} message ${type}. Handling time: ${doneHandlingMark.getTime() - startMark.getTime()}. Response time: ${endMark.getTime() - doneHandlingMark.getTime()}.`);
|
|
208
221
|
}
|
|
209
222
|
function handleInactivityTimeout() {
|
|
210
223
|
if ((0, file_watcher_sockets_1.hasRegisteredFileWatcherSockets)() ||
|
|
@@ -415,3 +428,11 @@ async function startServer() {
|
|
|
415
428
|
}
|
|
416
429
|
});
|
|
417
430
|
}
|
|
431
|
+
function serializeUnserializedResult(response, mode) {
|
|
432
|
+
if (mode === 'json') {
|
|
433
|
+
return JSON.stringify(response);
|
|
434
|
+
}
|
|
435
|
+
else {
|
|
436
|
+
return (0, v8_1.serialize)(response).toString('binary');
|
|
437
|
+
}
|
|
438
|
+
}
|
|
@@ -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;
|
|
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;AAS5C,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"}
|
|
@@ -16,6 +16,7 @@ const cache_1 = require("../cache");
|
|
|
16
16
|
const error_types_1 = require("../../project-graph/error-types");
|
|
17
17
|
const db_connection_1 = require("../../utils/db-connection");
|
|
18
18
|
const get_plugins_1 = require("../../project-graph/plugins/get-plugins");
|
|
19
|
+
const consume_messages_from_socket_1 = require("../../utils/consume-messages-from-socket");
|
|
19
20
|
exports.SERVER_INACTIVITY_TIMEOUT_MS = 10800000; // 10800000 ms = 3 hours
|
|
20
21
|
let watcherInstance;
|
|
21
22
|
function storeWatcherInstance(instance) {
|
|
@@ -70,7 +71,7 @@ function respondToClient(socket, response, description) {
|
|
|
70
71
|
if (description) {
|
|
71
72
|
logger_1.serverLogger.requestLog(`Responding to the client.`, description);
|
|
72
73
|
}
|
|
73
|
-
socket.write(
|
|
74
|
+
socket.write(response + consume_messages_from_socket_1.MESSAGE_END_SEQ, (err) => {
|
|
74
75
|
if (err) {
|
|
75
76
|
console.error(err);
|
|
76
77
|
}
|
|
@@ -10,4 +10,15 @@ export declare const getForkedProcessOsSocketPath: (id: string) => string;
|
|
|
10
10
|
export declare const getPluginOsSocketPath: (id: string) => string;
|
|
11
11
|
export declare function killSocketOrPath(): void;
|
|
12
12
|
export declare function serializeResult(error: Error | null, serializedProjectGraph: string | null, serializedSourceMaps: string | null): string | null;
|
|
13
|
+
/**
|
|
14
|
+
* Helper to serialize data either using v8 serialization or JSON serialization, based on
|
|
15
|
+
* the user's preference and the success of each method. Should only be used by "client" side
|
|
16
|
+
* connections, daemon or other servers should respond based on the type of serialization used
|
|
17
|
+
* by the client it is communicating with.
|
|
18
|
+
*
|
|
19
|
+
* @param data Data to serialize
|
|
20
|
+
* @param force Forces one serialization method over the other
|
|
21
|
+
* @returns Serialized data as a string
|
|
22
|
+
*/
|
|
23
|
+
export declare function serialize(data: any, force?: 'v8' | 'json'): string;
|
|
13
24
|
//# sourceMappingURL=socket-utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"socket-utils.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/daemon/socket-utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"socket-utils.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/daemon/socket-utils.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,SAAS,SAAyB,CAAC;AAEhD;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,cAM/B,CAAC;AAEF,eAAO,MAAM,4BAA4B,GAAI,IAAI,MAAM,WAMtD,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,IAAI,MAAM,WAM/C,CAAC;AAgBF,wBAAgB,gBAAgB,IAAI,IAAI,CAIvC;AAGD,wBAAgB,eAAe,CAC7B,KAAK,EAAE,KAAK,GAAG,IAAI,EACnB,sBAAsB,EAAE,MAAM,GAAG,IAAI,EACrC,oBAAoB,EAAE,MAAM,GAAG,IAAI,GAClC,MAAM,GAAG,IAAI,CAKf;AAED;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CA4BlE"}
|
|
@@ -3,11 +3,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.getPluginOsSocketPath = exports.getForkedProcessOsSocketPath = exports.getFullOsSocketPath = exports.isWindows = void 0;
|
|
4
4
|
exports.killSocketOrPath = killSocketOrPath;
|
|
5
5
|
exports.serializeResult = serializeResult;
|
|
6
|
+
exports.serialize = serialize;
|
|
6
7
|
const fs_1 = require("fs");
|
|
7
8
|
const os_1 = require("os");
|
|
8
9
|
const path_1 = require("path");
|
|
9
10
|
const tmp_dir_1 = require("./tmp-dir");
|
|
10
11
|
const serializable_error_1 = require("../utils/serializable-error");
|
|
12
|
+
const is_v8_serializer_enabled_1 = require("./is-v8-serializer-enabled");
|
|
13
|
+
const v8_1 = require("v8");
|
|
11
14
|
exports.isWindows = (0, os_1.platform)() === 'win32';
|
|
12
15
|
/**
|
|
13
16
|
* For IPC with the daemon server we use unix sockets or windows named pipes, depending on the user's operating system.
|
|
@@ -53,3 +56,41 @@ function serializeResult(error, serializedProjectGraph, serializedSourceMaps) {
|
|
|
53
56
|
// We do not want to repeat work `JSON.stringify`ing an object containing the potentially large project graph so merge as strings
|
|
54
57
|
return `{ "error": ${JSON.stringify(error ? (0, serializable_error_1.createSerializableError)(error) : error)}, "projectGraph": ${serializedProjectGraph}, "sourceMaps": ${serializedSourceMaps} }`;
|
|
55
58
|
}
|
|
59
|
+
/**
|
|
60
|
+
* Helper to serialize data either using v8 serialization or JSON serialization, based on
|
|
61
|
+
* the user's preference and the success of each method. Should only be used by "client" side
|
|
62
|
+
* connections, daemon or other servers should respond based on the type of serialization used
|
|
63
|
+
* by the client it is communicating with.
|
|
64
|
+
*
|
|
65
|
+
* @param data Data to serialize
|
|
66
|
+
* @param force Forces one serialization method over the other
|
|
67
|
+
* @returns Serialized data as a string
|
|
68
|
+
*/
|
|
69
|
+
function serialize(data, force) {
|
|
70
|
+
if (force === 'v8' || (0, is_v8_serializer_enabled_1.isV8SerializerEnabled)()) {
|
|
71
|
+
try {
|
|
72
|
+
return (0, v8_1.serialize)(data).toString('binary');
|
|
73
|
+
}
|
|
74
|
+
catch (e) {
|
|
75
|
+
if (force !== 'v8') {
|
|
76
|
+
console.warn(`Data could not be serialized using v8 serialization: ${e}. Falling back to JSON serialization.`);
|
|
77
|
+
// Fall back to JSON serialization
|
|
78
|
+
return JSON.stringify(data);
|
|
79
|
+
}
|
|
80
|
+
throw e;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
else {
|
|
84
|
+
try {
|
|
85
|
+
return JSON.stringify(data);
|
|
86
|
+
}
|
|
87
|
+
catch (e) {
|
|
88
|
+
if (force !== 'json') {
|
|
89
|
+
// Fall back to v8 serialization
|
|
90
|
+
console.warn(`Data could not be serialized using JSON.stringify: ${e}. Falling back to v8 serialization.`);
|
|
91
|
+
return (0, v8_1.serialize)(data).toString('binary');
|
|
92
|
+
}
|
|
93
|
+
throw e;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
@@ -19,7 +19,7 @@ export { readModulePackageJson, installPackageToTmp, } from './utils/package-jso
|
|
|
19
19
|
export { splitByColons } from './utils/split-target';
|
|
20
20
|
export { hashObject } from './hasher/file-hasher';
|
|
21
21
|
export { hashWithWorkspaceContext, hashMultiGlobWithWorkspaceContext, } from './utils/workspace-context';
|
|
22
|
-
export { createProjectRootMappingsFromProjectConfigurations, findProjectForPath, } from './project-graph/utils/find-project-for-path';
|
|
22
|
+
export { createProjectRootMappingsFromProjectConfigurations, createProjectRootMappings, findProjectForPath, } from './project-graph/utils/find-project-for-path';
|
|
23
23
|
export { retrieveProjectConfigurations } from './project-graph/utils/retrieve-workspace-files';
|
|
24
24
|
export { LoadedNxPlugin } from './project-graph/plugins/loaded-nx-plugin';
|
|
25
25
|
export * from './project-graph/error-types';
|
|
@@ -29,4 +29,5 @@ export { isCI } from './utils/is-ci';
|
|
|
29
29
|
export { isUsingPrettierInTree } from './utils/is-using-prettier';
|
|
30
30
|
export { readYamlFile } from './utils/fileutils';
|
|
31
31
|
export { globalSpinner } from './utils/spinner';
|
|
32
|
+
export { signalToCode } from './utils/exit-codes';
|
|
32
33
|
//# sourceMappingURL=devkit-internals.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"devkit-internals.d.ts","sourceRoot":"","sources":["../../../../packages/nx/src/devkit-internals.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EACL,sBAAsB,EACtB,aAAa,GACd,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,UAAU,IAAI,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,yCAAyC,CAAC;AACtF,OAAO,EAAE,gDAAgD,EAAE,MAAM,gDAAgD,CAAC;AAClH,OAAO,EAAE,yBAAyB,EAAE,MAAM,mDAAmD,CAAC;AAC9F,OAAO,EACL,oCAAoC,EACpC,uBAAuB,GACxB,MAAM,mDAAmD,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EACL,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EACL,wBAAwB,EACxB,iCAAiC,GAClC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,kDAAkD,EAClD,kBAAkB,GACnB,MAAM,6CAA6C,CAAC;AACrD,OAAO,EAAE,6BAA6B,EAAE,MAAM,gDAAgD,CAAC;AAC/F,OAAO,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAC1E,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"devkit-internals.d.ts","sourceRoot":"","sources":["../../../../packages/nx/src/devkit-internals.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EACL,sBAAsB,EACtB,aAAa,GACd,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,UAAU,IAAI,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,yCAAyC,CAAC;AACtF,OAAO,EAAE,gDAAgD,EAAE,MAAM,gDAAgD,CAAC;AAClH,OAAO,EAAE,yBAAyB,EAAE,MAAM,mDAAmD,CAAC;AAC9F,OAAO,EACL,oCAAoC,EACpC,uBAAuB,GACxB,MAAM,mDAAmD,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EACL,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EACL,wBAAwB,EACxB,iCAAiC,GAClC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,kDAAkD,EAClD,yBAAyB,EACzB,kBAAkB,GACnB,MAAM,6CAA6C,CAAC;AACrD,OAAO,EAAE,6BAA6B,EAAE,MAAM,gDAAgD,CAAC;AAC/F,OAAO,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAC1E,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC"}
|
package/src/devkit-internals.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.globalSpinner = exports.readYamlFile = exports.isUsingPrettierInTree = exports.isCI = exports.interpolate = exports.registerTsProject = exports.LoadedNxPlugin = exports.retrieveProjectConfigurations = exports.findProjectForPath = exports.createProjectRootMappingsFromProjectConfigurations = exports.hashMultiGlobWithWorkspaceContext = exports.hashWithWorkspaceContext = exports.hashObject = exports.splitByColons = exports.installPackageToTmp = exports.readModulePackageJson = exports.stripIndent = exports.sortObjectByKeys = exports.combineOptionsForExecutor = exports.splitTarget = exports.getIgnoreObjectForTree = exports.findMatchingConfigFiles = exports.readProjectConfigurationsFromRootMap = exports.mergeTargetConfigurations = exports.retrieveProjectConfigurationsWithAngularProjects = exports.calculateDefaultProjectName = exports.readNxJsonFromDisk = exports.parseExecutor = exports.getExecutorInformation = exports.createTempNpmDirectory = void 0;
|
|
3
|
+
exports.signalToCode = exports.globalSpinner = exports.readYamlFile = exports.isUsingPrettierInTree = exports.isCI = exports.interpolate = exports.registerTsProject = exports.LoadedNxPlugin = exports.retrieveProjectConfigurations = exports.findProjectForPath = exports.createProjectRootMappings = exports.createProjectRootMappingsFromProjectConfigurations = exports.hashMultiGlobWithWorkspaceContext = exports.hashWithWorkspaceContext = exports.hashObject = exports.splitByColons = exports.installPackageToTmp = exports.readModulePackageJson = exports.stripIndent = exports.sortObjectByKeys = exports.combineOptionsForExecutor = exports.splitTarget = exports.getIgnoreObjectForTree = exports.findMatchingConfigFiles = exports.readProjectConfigurationsFromRootMap = exports.mergeTargetConfigurations = exports.retrieveProjectConfigurationsWithAngularProjects = exports.calculateDefaultProjectName = exports.readNxJsonFromDisk = exports.parseExecutor = exports.getExecutorInformation = exports.createTempNpmDirectory = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
/**
|
|
6
6
|
* Note to developers: STOP! These exports are available via requireNx in @nx/devkit.
|
|
@@ -45,6 +45,7 @@ Object.defineProperty(exports, "hashWithWorkspaceContext", { enumerable: true, g
|
|
|
45
45
|
Object.defineProperty(exports, "hashMultiGlobWithWorkspaceContext", { enumerable: true, get: function () { return workspace_context_1.hashMultiGlobWithWorkspaceContext; } });
|
|
46
46
|
var find_project_for_path_1 = require("./project-graph/utils/find-project-for-path");
|
|
47
47
|
Object.defineProperty(exports, "createProjectRootMappingsFromProjectConfigurations", { enumerable: true, get: function () { return find_project_for_path_1.createProjectRootMappingsFromProjectConfigurations; } });
|
|
48
|
+
Object.defineProperty(exports, "createProjectRootMappings", { enumerable: true, get: function () { return find_project_for_path_1.createProjectRootMappings; } });
|
|
48
49
|
Object.defineProperty(exports, "findProjectForPath", { enumerable: true, get: function () { return find_project_for_path_1.findProjectForPath; } });
|
|
49
50
|
var retrieve_workspace_files_2 = require("./project-graph/utils/retrieve-workspace-files");
|
|
50
51
|
Object.defineProperty(exports, "retrieveProjectConfigurations", { enumerable: true, get: function () { return retrieve_workspace_files_2.retrieveProjectConfigurations; } });
|
|
@@ -63,3 +64,5 @@ var fileutils_1 = require("./utils/fileutils");
|
|
|
63
64
|
Object.defineProperty(exports, "readYamlFile", { enumerable: true, get: function () { return fileutils_1.readYamlFile; } });
|
|
64
65
|
var spinner_1 = require("./utils/spinner");
|
|
65
66
|
Object.defineProperty(exports, "globalSpinner", { enumerable: true, get: function () { return spinner_1.globalSpinner; } });
|
|
67
|
+
var exit_codes_1 = require("./utils/exit-codes");
|
|
68
|
+
Object.defineProperty(exports, "signalToCode", { enumerable: true, get: function () { return exit_codes_1.signalToCode; } });
|
package/src/generators/internal-utils/format-changed-files-with-prettier-if-available.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"format-changed-files-with-prettier-if-available.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/generators/internal-utils/format-changed-files-with-prettier-if-available.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"format-changed-files-with-prettier-if-available.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/generators/internal-utils/format-changed-files-with-prettier-if-available.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAGpC;;;GAGG;AACH,wBAAsB,yCAAyC,CAC7D,IAAI,EAAE,IAAI,EACV,OAAO,CAAC,EAAE;IACR,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,GACA,OAAO,CAAC,IAAI,CAAC,CAcf;AAED,wBAAsB,kCAAkC,CACtD,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EAAE,EACnD,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;IACR,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,GACA,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CA8D9B"}
|
|
@@ -4,6 +4,7 @@ exports.formatChangedFilesWithPrettierIfAvailable = formatChangedFilesWithPretti
|
|
|
4
4
|
exports.formatFilesWithPrettierIfAvailable = formatFilesWithPrettierIfAvailable;
|
|
5
5
|
const path = require("path");
|
|
6
6
|
const is_using_prettier_1 = require("../../utils/is-using-prettier");
|
|
7
|
+
const installation_directory_1 = require("../../utils/installation-directory");
|
|
7
8
|
/**
|
|
8
9
|
* Formats all the created or updated files using Prettier
|
|
9
10
|
* @param tree - the file system tree
|
|
@@ -19,7 +20,10 @@ async function formatFilesWithPrettierIfAvailable(files, root, options) {
|
|
|
19
20
|
const results = new Map();
|
|
20
21
|
let prettier;
|
|
21
22
|
try {
|
|
22
|
-
|
|
23
|
+
const prettierPath = require.resolve('prettier', {
|
|
24
|
+
paths: [...(0, installation_directory_1.getNxRequirePaths)(root), __dirname],
|
|
25
|
+
});
|
|
26
|
+
prettier = require(prettierPath);
|
|
23
27
|
/**
|
|
24
28
|
* Even after we discovered prettier in node_modules, we need to be sure that the user is intentionally using prettier
|
|
25
29
|
* before proceeding to format with it.
|
|
@@ -6,4 +6,5 @@ import { TaskDetails } from '../native';
|
|
|
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>;
|
|
9
|
+
export declare function hashTasks(hasher: TaskHasher, projectGraph: ProjectGraph, taskGraph: TaskGraph, env: NodeJS.ProcessEnv, taskDetails: TaskDetails | null): Promise<void>;
|
|
9
10
|
//# sourceMappingURL=hash-task.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hash-task.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/hasher/hash-task.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAGvD,OAAO,EAAa,UAAU,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,OAAO,EAAuB,WAAW,EAAE,MAAM,WAAW,CAAC;AAK7D,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,iBAgDjC;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,iBAuChC"}
|
|
1
|
+
{"version":3,"file":"hash-task.d.ts","sourceRoot":"","sources":["../../../../../packages/nx/src/hasher/hash-task.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAGvD,OAAO,EAAa,UAAU,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,OAAO,EAAuB,WAAW,EAAE,MAAM,WAAW,CAAC;AAK7D,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,iBAgDjC;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,iBAuChC;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,iBAuEhC"}
|
package/src/hasher/hash-task.js
CHANGED
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.getTaskDetails = getTaskDetails;
|
|
4
4
|
exports.hashTasksThatDoNotDependOnOutputsOfOtherTasks = hashTasksThatDoNotDependOnOutputsOfOtherTasks;
|
|
5
5
|
exports.hashTask = hashTask;
|
|
6
|
+
exports.hashTasks = hashTasks;
|
|
6
7
|
const utils_1 = require("../tasks-runner/utils");
|
|
7
8
|
const project_graph_1 = require("../project-graph/project-graph");
|
|
8
9
|
const task_hasher_1 = require("./task-hasher");
|
|
@@ -83,3 +84,59 @@ async function hashTask(hasher, projectGraph, taskGraph, task, env, taskDetails)
|
|
|
83
84
|
performance.mark('hashSingleTask:end');
|
|
84
85
|
performance.measure('hashSingleTask', 'hashSingleTask:start', 'hashSingleTask:end');
|
|
85
86
|
}
|
|
87
|
+
async function hashTasks(hasher, projectGraph, taskGraph, env, taskDetails) {
|
|
88
|
+
performance.mark('hashMultipleTasks:start');
|
|
89
|
+
const projectsConfigurations = (0, project_graph_1.readProjectsConfigurationFromProjectGraph)(projectGraph);
|
|
90
|
+
const nxJson = (0, nx_json_1.readNxJson)();
|
|
91
|
+
const tasks = Object.values(taskGraph.tasks).filter((task) => !task.hash);
|
|
92
|
+
// Separate tasks with custom hashers from those without
|
|
93
|
+
const tasksWithCustomHashers = [];
|
|
94
|
+
const tasksWithoutCustomHashers = [];
|
|
95
|
+
for (const task of tasks) {
|
|
96
|
+
const customHasher = (0, utils_1.getCustomHasher)(task, projectGraph);
|
|
97
|
+
if (customHasher) {
|
|
98
|
+
tasksWithCustomHashers.push(task);
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
tasksWithoutCustomHashers.push(task);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
// Hash tasks with custom hashers individually
|
|
105
|
+
const customHasherPromises = tasksWithCustomHashers.map(async (task) => {
|
|
106
|
+
const customHasher = (0, utils_1.getCustomHasher)(task, projectGraph);
|
|
107
|
+
const { value, details } = await customHasher(task, {
|
|
108
|
+
hasher,
|
|
109
|
+
projectGraph,
|
|
110
|
+
taskGraph,
|
|
111
|
+
workspaceConfig: projectsConfigurations,
|
|
112
|
+
projectsConfigurations,
|
|
113
|
+
nxJsonConfiguration: nxJson,
|
|
114
|
+
env,
|
|
115
|
+
});
|
|
116
|
+
task.hash = value;
|
|
117
|
+
task.hashDetails = details;
|
|
118
|
+
});
|
|
119
|
+
// Hash tasks without custom hashers in batch
|
|
120
|
+
let batchHashPromise = Promise.resolve();
|
|
121
|
+
if (tasksWithoutCustomHashers.length > 0) {
|
|
122
|
+
batchHashPromise = hasher
|
|
123
|
+
.hashTasks(tasksWithoutCustomHashers, taskGraph, env)
|
|
124
|
+
.then((hashes) => {
|
|
125
|
+
for (let i = 0; i < tasksWithoutCustomHashers.length; i++) {
|
|
126
|
+
tasksWithoutCustomHashers[i].hash = hashes[i].value;
|
|
127
|
+
tasksWithoutCustomHashers[i].hashDetails = hashes[i].details;
|
|
128
|
+
}
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
await Promise.all([...customHasherPromises, batchHashPromise]);
|
|
132
|
+
if (taskDetails?.recordTaskDetails) {
|
|
133
|
+
taskDetails.recordTaskDetails(tasks.map((task) => ({
|
|
134
|
+
hash: task.hash,
|
|
135
|
+
project: task.target.project,
|
|
136
|
+
target: task.target.target,
|
|
137
|
+
configuration: task.target.configuration,
|
|
138
|
+
})));
|
|
139
|
+
}
|
|
140
|
+
performance.mark('hashMultipleTasks:end');
|
|
141
|
+
performance.measure('hashMultipleTasks', 'hashMultipleTasks:start', 'hashMultipleTasks:end');
|
|
142
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-nx-wrapper.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/migrations/update-22-1-0/update-nx-wrapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAGlD,yBAA+B,IAAI,EAAE,IAAI,iBAExC"}
|
|
@@ -59,51 +59,55 @@ function __napi_rs_initialize_modules(__napiInstance) {
|
|
|
59
59
|
__napiInstance.exports['__napi_register__get_transformable_outputs_5']?.()
|
|
60
60
|
__napiInstance.exports['__napi_register__hash_array_6']?.()
|
|
61
61
|
__napiInstance.exports['__napi_register__hash_file_7']?.()
|
|
62
|
-
__napiInstance.exports['
|
|
63
|
-
__napiInstance.exports['
|
|
64
|
-
__napiInstance.exports['
|
|
65
|
-
__napiInstance.exports['
|
|
66
|
-
__napiInstance.exports['
|
|
67
|
-
__napiInstance.exports['
|
|
68
|
-
__napiInstance.exports['
|
|
69
|
-
__napiInstance.exports['
|
|
70
|
-
__napiInstance.exports['
|
|
71
|
-
__napiInstance.exports['
|
|
72
|
-
__napiInstance.exports['
|
|
73
|
-
__napiInstance.exports['
|
|
74
|
-
__napiInstance.exports['
|
|
75
|
-
__napiInstance.exports['
|
|
76
|
-
__napiInstance.exports['
|
|
77
|
-
__napiInstance.exports['
|
|
78
|
-
__napiInstance.exports['
|
|
79
|
-
__napiInstance.exports['
|
|
80
|
-
__napiInstance.exports['
|
|
81
|
-
__napiInstance.exports['
|
|
82
|
-
__napiInstance.exports['
|
|
83
|
-
__napiInstance.exports['
|
|
84
|
-
__napiInstance.exports['
|
|
85
|
-
__napiInstance.exports['
|
|
86
|
-
__napiInstance.exports['
|
|
87
|
-
__napiInstance.exports['
|
|
88
|
-
__napiInstance.exports['
|
|
89
|
-
__napiInstance.exports['
|
|
90
|
-
__napiInstance.exports['
|
|
91
|
-
__napiInstance.exports['
|
|
92
|
-
__napiInstance.exports['
|
|
93
|
-
__napiInstance.exports['
|
|
94
|
-
__napiInstance.exports['
|
|
95
|
-
__napiInstance.exports['
|
|
96
|
-
__napiInstance.exports['
|
|
97
|
-
__napiInstance.exports['
|
|
98
|
-
__napiInstance.exports['
|
|
99
|
-
__napiInstance.exports['
|
|
100
|
-
__napiInstance.exports['
|
|
101
|
-
__napiInstance.exports['
|
|
102
|
-
__napiInstance.exports['
|
|
103
|
-
__napiInstance.exports['
|
|
104
|
-
__napiInstance.exports['
|
|
105
|
-
__napiInstance.exports['
|
|
106
|
-
__napiInstance.exports['
|
|
62
|
+
__napiInstance.exports['__napi_register__SupportedEditor_8']?.()
|
|
63
|
+
__napiInstance.exports['__napi_register__can_install_nx_console_9']?.()
|
|
64
|
+
__napiInstance.exports['__napi_register__can_install_nx_console_for_editor_10']?.()
|
|
65
|
+
__napiInstance.exports['__napi_register__install_nx_console_11']?.()
|
|
66
|
+
__napiInstance.exports['__napi_register__install_nx_console_for_editor_12']?.()
|
|
67
|
+
__napiInstance.exports['__napi_register__is_editor_installed_13']?.()
|
|
68
|
+
__napiInstance.exports['__napi_register__NxConsolePreferences_struct_14']?.()
|
|
69
|
+
__napiInstance.exports['__napi_register__NxConsolePreferences_impl_18']?.()
|
|
70
|
+
__napiInstance.exports['__napi_register__log_debug_19']?.()
|
|
71
|
+
__napiInstance.exports['__napi_register__IS_WASM_20']?.()
|
|
72
|
+
__napiInstance.exports['__napi_register__get_binary_target_21']?.()
|
|
73
|
+
__napiInstance.exports['__napi_register__ImportResult_struct_22']?.()
|
|
74
|
+
__napiInstance.exports['__napi_register__find_imports_23']?.()
|
|
75
|
+
__napiInstance.exports['__napi_register__transfer_project_graph_24']?.()
|
|
76
|
+
__napiInstance.exports['__napi_register__ExternalNode_struct_25']?.()
|
|
77
|
+
__napiInstance.exports['__napi_register__Target_struct_26']?.()
|
|
78
|
+
__napiInstance.exports['__napi_register__Project_struct_27']?.()
|
|
79
|
+
__napiInstance.exports['__napi_register__ProjectGraph_struct_28']?.()
|
|
80
|
+
__napiInstance.exports['__napi_register__HashPlanInspector_struct_29']?.()
|
|
81
|
+
__napiInstance.exports['__napi_register__HashPlanInspector_impl_32']?.()
|
|
82
|
+
__napiInstance.exports['__napi_register__HashPlanner_struct_33']?.()
|
|
83
|
+
__napiInstance.exports['__napi_register__HashPlanner_impl_37']?.()
|
|
84
|
+
__napiInstance.exports['__napi_register__HashDetails_struct_38']?.()
|
|
85
|
+
__napiInstance.exports['__napi_register__HasherOptions_struct_39']?.()
|
|
86
|
+
__napiInstance.exports['__napi_register__TaskHasher_struct_40']?.()
|
|
87
|
+
__napiInstance.exports['__napi_register__TaskHasher_impl_43']?.()
|
|
88
|
+
__napiInstance.exports['__napi_register__Task_struct_44']?.()
|
|
89
|
+
__napiInstance.exports['__napi_register__TaskTarget_struct_45']?.()
|
|
90
|
+
__napiInstance.exports['__napi_register__TaskResult_struct_46']?.()
|
|
91
|
+
__napiInstance.exports['__napi_register__TaskGraph_struct_47']?.()
|
|
92
|
+
__napiInstance.exports['__napi_register__FileData_struct_48']?.()
|
|
93
|
+
__napiInstance.exports['__napi_register__InputsInput_struct_49']?.()
|
|
94
|
+
__napiInstance.exports['__napi_register__FileSetInput_struct_50']?.()
|
|
95
|
+
__napiInstance.exports['__napi_register__RuntimeInput_struct_51']?.()
|
|
96
|
+
__napiInstance.exports['__napi_register__EnvironmentInput_struct_52']?.()
|
|
97
|
+
__napiInstance.exports['__napi_register__ExternalDependenciesInput_struct_53']?.()
|
|
98
|
+
__napiInstance.exports['__napi_register__DepsOutputsInput_struct_54']?.()
|
|
99
|
+
__napiInstance.exports['__napi_register__NxJson_struct_55']?.()
|
|
100
|
+
__napiInstance.exports['__napi_register__is_ai_agent_56']?.()
|
|
101
|
+
__napiInstance.exports['__napi_register__FileLock_struct_57']?.()
|
|
102
|
+
__napiInstance.exports['__napi_register__FileLock_impl_59']?.()
|
|
103
|
+
__napiInstance.exports['__napi_register__WorkspaceContext_struct_60']?.()
|
|
104
|
+
__napiInstance.exports['__napi_register__WorkspaceContext_impl_71']?.()
|
|
105
|
+
__napiInstance.exports['__napi_register__WorkspaceErrors_72']?.()
|
|
106
|
+
__napiInstance.exports['__napi_register__NxWorkspaceFiles_struct_73']?.()
|
|
107
|
+
__napiInstance.exports['__napi_register__NxWorkspaceFilesExternals_struct_74']?.()
|
|
108
|
+
__napiInstance.exports['__napi_register__UpdatedWorkspaceFiles_struct_75']?.()
|
|
109
|
+
__napiInstance.exports['__napi_register__FileMap_struct_76']?.()
|
|
110
|
+
__napiInstance.exports['__napi_register____test_only_transfer_file_map_77']?.()
|
|
107
111
|
}
|
|
108
112
|
export const FileLock = __napiModule.exports.FileLock
|
|
109
113
|
export const HashPlanInspector = __napiModule.exports.HashPlanInspector
|
|
@@ -113,6 +117,7 @@ export const NxConsolePreferences = __napiModule.exports.NxConsolePreferences
|
|
|
113
117
|
export const TaskHasher = __napiModule.exports.TaskHasher
|
|
114
118
|
export const WorkspaceContext = __napiModule.exports.WorkspaceContext
|
|
115
119
|
export const canInstallNxConsole = __napiModule.exports.canInstallNxConsole
|
|
120
|
+
export const canInstallNxConsoleForEditor = __napiModule.exports.canInstallNxConsoleForEditor
|
|
116
121
|
export const copy = __napiModule.exports.copy
|
|
117
122
|
export const expandOutputs = __napiModule.exports.expandOutputs
|
|
118
123
|
export const findImports = __napiModule.exports.findImports
|
|
@@ -122,10 +127,13 @@ export const getTransformableOutputs = __napiModule.exports.getTransformableOutp
|
|
|
122
127
|
export const hashArray = __napiModule.exports.hashArray
|
|
123
128
|
export const hashFile = __napiModule.exports.hashFile
|
|
124
129
|
export const installNxConsole = __napiModule.exports.installNxConsole
|
|
130
|
+
export const installNxConsoleForEditor = __napiModule.exports.installNxConsoleForEditor
|
|
125
131
|
export const IS_WASM = __napiModule.exports.IS_WASM
|
|
126
132
|
export const isAiAgent = __napiModule.exports.isAiAgent
|
|
133
|
+
export const isEditorInstalled = __napiModule.exports.isEditorInstalled
|
|
127
134
|
export const logDebug = __napiModule.exports.logDebug
|
|
128
135
|
export const remove = __napiModule.exports.remove
|
|
136
|
+
export const SupportedEditor = __napiModule.exports.SupportedEditor
|
|
129
137
|
export const testOnlyTransferFileMap = __napiModule.exports.testOnlyTransferFileMap
|
|
130
138
|
export const transferProjectGraph = __napiModule.exports.transferProjectGraph
|
|
131
139
|
export const validateOutputs = __napiModule.exports.validateOutputs
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/plugins/js/index.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,kBAAkB,EAIlB,aAAa,EACd,MAAM,6BAA6B,CAAC;AAkBrC,eAAO,MAAM,IAAI,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../packages/nx/src/plugins/js/index.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,kBAAkB,EAIlB,aAAa,EACd,MAAM,6BAA6B,CAAC;AAkBrC,eAAO,MAAM,IAAI,oCAAoC,CAAC;AAKtD,eAAO,MAAM,aAAa,EAAE,aAK3B,CAAC;AAkDF,eAAO,MAAM,kBAAkB,EAAE,kBAgDhC,CAAC"}
|