trigger.dev 0.0.0-v3-prerelease-20240628191401 → 0.0.0-v3-prerelease-20240701153550

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.
@@ -8,7 +8,7 @@ import { ZodMessageSender } from "@trigger.dev/core/v3/zodMessageHandler";
8
8
  import "source-map-support/register.js";
9
9
 
10
10
  // package.json
11
- var version = "0.0.0-v3-prerelease-20240628191401";
11
+ var version = "0.0.0-v3-prerelease-20240701153550";
12
12
 
13
13
  // src/workers/dev/worker-setup.ts
14
14
  __SETUP_IMPORTED_PROJECT_CONFIG__;
@@ -3,7 +3,8 @@ import {
3
3
  CoordinatorToProdWorkerMessages,
4
4
  PostStartCauses,
5
5
  PreStopCauses,
6
- ProdWorkerToCoordinatorMessages
6
+ ProdWorkerToCoordinatorMessages,
7
+ TaskRunErrorCodes as TaskRunErrorCodes2
7
8
  } from "@trigger.dev/core/v3";
8
9
  import { ZodSocketConnection } from "@trigger.dev/core/v3/zodSocket";
9
10
 
@@ -65,6 +66,10 @@ var SimpleLogger = class {
65
66
  }
66
67
  };
67
68
 
69
+ // ../core-apps/src/process.ts
70
+ var EXIT_CODE_ALREADY_HANDLED = 111;
71
+ var EXIT_CODE_CHILD_NONZERO = 112;
72
+
68
73
  // src/workers/prod/entry-point.ts
69
74
  import { readFile } from "node:fs/promises";
70
75
  import { createServer } from "node:http";
@@ -131,7 +136,7 @@ var GracefulExitTimeoutError = class extends Error {
131
136
  this.name = "GracefulExitTimeoutError";
132
137
  }
133
138
  };
134
- function getFriendlyErrorMessage(code, signal, stderr) {
139
+ function getFriendlyErrorMessage(code, signal, stderr, dockerMode = true) {
135
140
  const message = (text) => {
136
141
  if (signal) {
137
142
  return `[${signal}] ${text}`;
@@ -139,7 +144,18 @@ function getFriendlyErrorMessage(code, signal, stderr) {
139
144
  return text;
140
145
  }
141
146
  };
142
- if (code === 137 || stderr?.includes("OOMErrorHandler")) {
147
+ if (code === 137) {
148
+ if (dockerMode) {
149
+ return message(
150
+ "Process ran out of memory! Try choosing a machine preset with more memory for this task."
151
+ );
152
+ } else {
153
+ return message(
154
+ "Process most likely ran out of memory, but we can't be certain. Try choosing a machine preset with more memory for this task."
155
+ );
156
+ }
157
+ }
158
+ if (stderr?.includes("OOMErrorHandler")) {
143
159
  return message(
144
160
  "Process ran out of memory! Try choosing a machine preset with more memory for this task."
145
161
  );
@@ -877,10 +893,10 @@ var ProdWorker = class {
877
893
  }
878
894
  logger.log("Unhandled signal", { signal });
879
895
  }
880
- async #exitGracefully(gracefulExitTimeoutElapsed = false) {
896
+ async #exitGracefully(gracefulExitTimeoutElapsed = false, exitCode = 0) {
881
897
  await this.#backgroundWorker.close(gracefulExitTimeoutElapsed);
882
898
  if (!gracefulExitTimeoutElapsed) {
883
- process.exit(0);
899
+ process.exit(exitCode);
884
900
  }
885
901
  }
886
902
  async #reconnect(isPostStart = false, reconnectImmediately = false) {
@@ -1043,13 +1059,13 @@ var ProdWorker = class {
1043
1059
  }
1044
1060
  }
1045
1061
  }
1046
- async #prepareForRetry(willCheckpointAndRestore, shouldExit) {
1062
+ async #prepareForRetry(willCheckpointAndRestore, shouldExit, exitCode) {
1047
1063
  logger.log("prepare for retry", { willCheckpointAndRestore, shouldExit });
1048
1064
  if (shouldExit) {
1049
1065
  if (willCheckpointAndRestore) {
1050
1066
  logger.log("WARNING: Will checkpoint but also requested exit. This won't end well.");
1051
1067
  }
1052
- await this.#exitGracefully();
1068
+ await this.#exitGracefully(false, exitCode);
1053
1069
  return;
1054
1070
  }
1055
1071
  this.paused = false;
@@ -1195,7 +1211,8 @@ var ProdWorker = class {
1195
1211
  completion
1196
1212
  });
1197
1213
  logger.log("completion acknowledged", { willCheckpointAndRestore, shouldExit });
1198
- this.#prepareForRetry(willCheckpointAndRestore, shouldExit);
1214
+ const exitCode = !completion.ok && completion.error.type === "INTERNAL_ERROR" && completion.error.code === TaskRunErrorCodes2.TASK_PROCESS_EXITED_WITH_NON_ZERO_CODE ? EXIT_CODE_CHILD_NONZERO : 0;
1215
+ this.#prepareForRetry(willCheckpointAndRestore, shouldExit, exitCode);
1199
1216
  } catch (error) {
1200
1217
  const completion = {
1201
1218
  ok: false,
@@ -1277,6 +1294,13 @@ var ProdWorker = class {
1277
1294
  return;
1278
1295
  }
1279
1296
  if (process.env.INDEX_TASKS === "true") {
1297
+ const failIndex = (error) => {
1298
+ socket.emit("INDEXING_FAILED", {
1299
+ version: "v1",
1300
+ deploymentId: this.deploymentId,
1301
+ error
1302
+ });
1303
+ };
1280
1304
  try {
1281
1305
  const taskResources = await this.#initializeWorker();
1282
1306
  const { success } = await socket.emitWithAck("INDEX_TASKS", {
@@ -1299,15 +1323,11 @@ var ProdWorker = class {
1299
1323
  zodIssues: e.zodIssues,
1300
1324
  tasks: e.tasks
1301
1325
  });
1302
- socket.emit("INDEXING_FAILED", {
1303
- version: "v1",
1304
- deploymentId: this.deploymentId,
1305
- error: {
1306
- name: "TaskMetadataParseError",
1307
- message: "There was an error parsing the task metadata",
1308
- stack: JSON.stringify({ zodIssues: e.zodIssues, tasks: e.tasks }),
1309
- stderr
1310
- }
1326
+ failIndex({
1327
+ name: "TaskMetadataParseError",
1328
+ message: "There was an error parsing the task metadata",
1329
+ stack: JSON.stringify({ zodIssues: e.zodIssues, tasks: e.tasks }),
1330
+ stderr
1311
1331
  });
1312
1332
  } else if (e instanceof UncaughtExceptionError) {
1313
1333
  const error = {
@@ -1317,11 +1337,7 @@ var ProdWorker = class {
1317
1337
  stderr
1318
1338
  };
1319
1339
  logger2.error("uncaught exception", { originalError: error });
1320
- socket.emit("INDEXING_FAILED", {
1321
- version: "v1",
1322
- deploymentId: this.deploymentId,
1323
- error
1324
- });
1340
+ failIndex(error);
1325
1341
  } else if (e instanceof Error) {
1326
1342
  const error = {
1327
1343
  name: e.name,
@@ -1330,36 +1346,24 @@ var ProdWorker = class {
1330
1346
  stderr
1331
1347
  };
1332
1348
  logger2.error("error", { error });
1333
- socket.emit("INDEXING_FAILED", {
1334
- version: "v1",
1335
- deploymentId: this.deploymentId,
1336
- error
1337
- });
1349
+ failIndex(error);
1338
1350
  } else if (typeof e === "string") {
1339
1351
  logger2.error("string error", { error: { message: e } });
1340
- socket.emit("INDEXING_FAILED", {
1341
- version: "v1",
1342
- deploymentId: this.deploymentId,
1343
- error: {
1344
- name: "Error",
1345
- message: e,
1346
- stderr
1347
- }
1352
+ failIndex({
1353
+ name: "Error",
1354
+ message: e,
1355
+ stderr
1348
1356
  });
1349
1357
  } else {
1350
1358
  logger2.error("unknown error", { error: e });
1351
- socket.emit("INDEXING_FAILED", {
1352
- version: "v1",
1353
- deploymentId: this.deploymentId,
1354
- error: {
1355
- name: "Error",
1356
- message: "Unknown error",
1357
- stderr
1358
- }
1359
+ failIndex({
1360
+ name: "Error",
1361
+ message: "Unknown error",
1362
+ stderr
1359
1363
  });
1360
1364
  }
1361
1365
  await setTimeout2(200);
1362
- process.exit(111);
1366
+ process.exit(EXIT_CODE_ALREADY_HANDLED);
1363
1367
  }
1364
1368
  }
1365
1369
  if (this.executing) {
@@ -1,5 +1,5 @@
1
1
  // package.json
2
- var version = "0.0.0-v3-prerelease-20240628191401";
2
+ var version = "0.0.0-v3-prerelease-20240701153550";
3
3
 
4
4
  // src/workers/prod/worker-setup.ts
5
5
  import { taskCatalog } from "@trigger.dev/core/v3";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "trigger.dev",
3
- "version": "0.0.0-v3-prerelease-20240628191401",
3
+ "version": "0.0.0-v3-prerelease-20240701153550",
4
4
  "description": "A Command-Line Interface for Trigger.dev (v3) projects",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -53,8 +53,8 @@
53
53
  "typescript": "^5.3.3",
54
54
  "vitest": "^1.6.0",
55
55
  "xdg-app-paths": "^8.3.0",
56
- "@trigger.dev/tsconfig": "0.0.0",
57
- "@trigger.dev/core-apps": "0.0.0-v3-prerelease-20240628191401"
56
+ "@trigger.dev/core-apps": "0.0.0-v3-prerelease-20240701153550",
57
+ "@trigger.dev/tsconfig": "0.0.0"
58
58
  },
59
59
  "dependencies": {
60
60
  "@anatine/esbuild-decorators": "^0.2.19",
@@ -72,7 +72,7 @@
72
72
  "@opentelemetry/sdk-trace-base": "^1.22.0",
73
73
  "@opentelemetry/sdk-trace-node": "^1.22.0",
74
74
  "@opentelemetry/semantic-conventions": "^1.22.0",
75
- "@trigger.dev/core": "0.0.0-v3-prerelease-20240628191401",
75
+ "@trigger.dev/core": "0.0.0-v3-prerelease-20240701153550",
76
76
  "@types/degit": "^2.8.3",
77
77
  "chalk": "^5.2.0",
78
78
  "chokidar": "^3.5.3",