+
+
diff --git a/apps/webapp/app/routes/resources.runs.$runParam.ts b/apps/webapp/app/routes/resources.runs.$runParam.ts
index 733557675e..7866ee9327 100644
--- a/apps/webapp/app/routes/resources.runs.$runParam.ts
+++ b/apps/webapp/app/routes/resources.runs.$runParam.ts
@@ -76,7 +76,6 @@ export const loader = async ({ request, params }: LoaderFunctionArgs) => {
lockedBy: {
select: {
filePath: true,
- exportName: true,
},
},
},
@@ -150,7 +149,7 @@ export const loader = async ({ request, params }: LoaderFunctionArgs) => {
task: {
id: run.taskIdentifier,
filePath: run.lockedBy?.filePath,
- exportName: run.lockedBy?.exportName,
+ exportName: "@deprecated",
},
run: {
id: run.friendlyId,
diff --git a/apps/webapp/app/v3/marqs/sharedQueueConsumer.server.ts b/apps/webapp/app/v3/marqs/sharedQueueConsumer.server.ts
index a3adcefddb..c13e5062a0 100644
--- a/apps/webapp/app/v3/marqs/sharedQueueConsumer.server.ts
+++ b/apps/webapp/app/v3/marqs/sharedQueueConsumer.server.ts
@@ -1688,7 +1688,7 @@ class SharedQueueTasks {
task: {
id: backgroundWorkerTask.slug,
filePath: backgroundWorkerTask.filePath,
- exportName: backgroundWorkerTask.exportName,
+ exportName: backgroundWorkerTask.exportName ?? backgroundWorkerTask.slug,
},
attempt: {
id: attempt.friendlyId,
diff --git a/apps/webapp/app/v3/otlpExporter.server.ts b/apps/webapp/app/v3/otlpExporter.server.ts
index cfee68e88f..616bac9199 100644
--- a/apps/webapp/app/v3/otlpExporter.server.ts
+++ b/apps/webapp/app/v3/otlpExporter.server.ts
@@ -382,7 +382,7 @@ function extractResourceProperties(attributes: KeyValue[]) {
attemptNumber: extractNumberAttribute(attributes, SemanticInternalAttributes.ATTEMPT_NUMBER),
taskSlug: extractStringAttribute(attributes, SemanticInternalAttributes.TASK_SLUG, "unknown"),
taskPath: extractStringAttribute(attributes, SemanticInternalAttributes.TASK_PATH),
- taskExportName: extractStringAttribute(attributes, SemanticInternalAttributes.TASK_EXPORT_NAME),
+ taskExportName: "@deprecated",
workerId: extractStringAttribute(attributes, SemanticInternalAttributes.WORKER_ID),
workerVersion: extractStringAttribute(attributes, SemanticInternalAttributes.WORKER_VERSION),
queueId: extractStringAttribute(attributes, SemanticInternalAttributes.QUEUE_ID),
diff --git a/apps/webapp/app/v3/services/alerts/deliverAlert.server.ts b/apps/webapp/app/v3/services/alerts/deliverAlert.server.ts
index 5eff1a6c54..4297f6a72b 100644
--- a/apps/webapp/app/v3/services/alerts/deliverAlert.server.ts
+++ b/apps/webapp/app/v3/services/alerts/deliverAlert.server.ts
@@ -573,7 +573,7 @@ export class DeliverAlertService extends BaseService {
alert.workerDeployment.worker?.tasks.map((task) => ({
id: task.slug,
filePath: task.filePath,
- exportName: task.exportName,
+ exportName: task.exportName ?? "@deprecated",
triggerSource: task.triggerSource,
})) ?? [],
environment: {
diff --git a/apps/webapp/app/v3/services/createBackgroundWorker.server.ts b/apps/webapp/app/v3/services/createBackgroundWorker.server.ts
index d66f1102de..9daa4ed0a5 100644
--- a/apps/webapp/app/v3/services/createBackgroundWorker.server.ts
+++ b/apps/webapp/app/v3/services/createBackgroundWorker.server.ts
@@ -1,28 +1,31 @@
import {
+ BackgroundWorkerMetadata,
BackgroundWorkerSourceFileMetadata,
CreateBackgroundWorkerRequestBody,
+ QueueManifest,
TaskResource,
} from "@trigger.dev/core/v3";
-import type { BackgroundWorker } from "@trigger.dev/database";
+import { BackgroundWorkerId } from "@trigger.dev/core/v3/isomorphic";
+import type { BackgroundWorker, TaskQueue, TaskQueueType } from "@trigger.dev/database";
+import cronstrue from "cronstrue";
import { Prisma, PrismaClientOrTransaction } from "~/db.server";
+import { sanitizeQueueName } from "~/models/taskQueue.server";
import { AuthenticatedEnvironment } from "~/services/apiAuth.server";
import { logger } from "~/services/logger.server";
-import { marqs } from "~/v3/marqs/index.server";
import { generateFriendlyId } from "../friendlyIdentifiers";
-import { calculateNextBuildVersion } from "../utils/calculateNextBuildVersion";
-import { BaseService } from "./baseService.server";
-import { projectPubSub } from "./projectPubSub.server";
-import { RegisterNextTaskScheduleInstanceService } from "./registerNextTaskScheduleInstance.server";
-import cronstrue from "cronstrue";
-import { CheckScheduleService } from "./checkSchedule.server";
-import { clampMaxDuration } from "../utils/maxDuration";
import {
removeQueueConcurrencyLimits,
updateEnvConcurrencyLimits,
updateQueueConcurrencyLimits,
} from "../runQueue.server";
-import { BackgroundWorkerId } from "@trigger.dev/core/v3/isomorphic";
-import { sanitizeQueueName } from "~/models/taskQueue.server";
+import { calculateNextBuildVersion } from "../utils/calculateNextBuildVersion";
+import { clampMaxDuration } from "../utils/maxDuration";
+import { BaseService, ServiceValidationError } from "./baseService.server";
+import { CheckScheduleService } from "./checkSchedule.server";
+import { projectPubSub } from "./projectPubSub.server";
+import { RegisterNextTaskScheduleInstanceService } from "./registerNextTaskScheduleInstance.server";
+import { tryCatch } from "@trigger.dev/core/v3";
+import { engine } from "../runEngine.server";
export class CreateBackgroundWorkerService extends BaseService {
public async call(
@@ -95,58 +98,97 @@ export class CreateBackgroundWorkerService extends BaseService {
});
}
- const tasksToBackgroundFiles = await createBackgroundFiles(
- body.metadata.sourceFiles,
- backgroundWorker,
- environment,
- this._prisma
+ const [filesError, tasksToBackgroundFiles] = await tryCatch(
+ createBackgroundFiles(
+ body.metadata.sourceFiles,
+ backgroundWorker,
+ environment,
+ this._prisma
+ )
);
- await createBackgroundTasks(
- body.metadata.tasks,
- backgroundWorker,
- environment,
- this._prisma,
- tasksToBackgroundFiles
+
+ if (filesError) {
+ logger.error("Error creating background worker files", {
+ error: filesError,
+ backgroundWorker,
+ environment,
+ });
+
+ throw new ServiceValidationError("Error creating background worker files");
+ }
+
+ const [resourcesError] = await tryCatch(
+ createWorkerResources(
+ body.metadata,
+ backgroundWorker,
+ environment,
+ this._prisma,
+ tasksToBackgroundFiles
+ )
);
- await syncDeclarativeSchedules(
- body.metadata.tasks,
- backgroundWorker,
- environment,
- this._prisma
+
+ if (resourcesError) {
+ logger.error("Error creating worker resources", {
+ error: resourcesError,
+ backgroundWorker,
+ environment,
+ });
+ throw new ServiceValidationError("Error creating worker resources");
+ }
+
+ const [schedulesError] = await tryCatch(
+ syncDeclarativeSchedules(body.metadata.tasks, backgroundWorker, environment, this._prisma)
);
- try {
- //send a notification that a new worker has been created
- await projectPubSub.publish(
- `project:${project.id}:env:${environment.id}`,
- "WORKER_CREATED",
- {
- environmentId: environment.id,
- environmentType: environment.type,
- createdAt: backgroundWorker.createdAt,
- taskCount: body.metadata.tasks.length,
- type: "local",
- }
- );
+ if (schedulesError) {
+ logger.error("Error syncing declarative schedules", {
+ error: schedulesError,
+ backgroundWorker,
+ environment,
+ });
+ throw new ServiceValidationError("Error syncing declarative schedules");
+ }
+
+ const [updateConcurrencyLimitsError] = await tryCatch(
+ updateEnvConcurrencyLimits(environment)
+ );
+
+ if (updateConcurrencyLimitsError) {
+ logger.error("Error updating environment concurrency limits", {
+ error: updateConcurrencyLimitsError,
+ backgroundWorker,
+ environment,
+ });
+ }
+
+ const [publishError] = await tryCatch(
+ projectPubSub.publish(`project:${project.id}:env:${environment.id}`, "WORKER_CREATED", {
+ environmentId: environment.id,
+ environmentType: environment.type,
+ createdAt: backgroundWorker.createdAt,
+ taskCount: body.metadata.tasks.length,
+ type: "local",
+ })
+ );
- await updateEnvConcurrencyLimits(environment);
- } catch (err) {
- logger.error(
- "Error publishing WORKER_CREATED event or updating global concurrency limits",
- {
- error:
- err instanceof Error
- ? {
- name: err.name,
- message: err.message,
- stack: err.stack,
- }
- : err,
- project,
- environment,
- backgroundWorker,
- }
+ if (publishError) {
+ logger.error("Error publishing WORKER_CREATED event", {
+ error: publishError,
+ backgroundWorker,
+ environment,
+ });
+ }
+
+ if (backgroundWorker.engine === "V2") {
+ const [schedulePendingVersionsError] = await tryCatch(
+ engine.scheduleEnqueueRunsForBackgroundWorker(backgroundWorker.id)
);
+
+ if (schedulePendingVersionsError) {
+ logger.error("Error scheduling pending versions", {
+ error: schedulePendingVersionsError,
+ });
+ }
}
return backgroundWorker;
@@ -154,135 +196,234 @@ export class CreateBackgroundWorkerService extends BaseService {
}
}
-export async function createBackgroundTasks(
- tasks: TaskResource[],
+export async function createWorkerResources(
+ metadata: BackgroundWorkerMetadata,
worker: BackgroundWorker,
environment: AuthenticatedEnvironment,
prisma: PrismaClientOrTransaction,
tasksToBackgroundFiles?: Map
) {
- for (const task of tasks) {
- try {
- await prisma.backgroundWorkerTask.create({
- data: {
- friendlyId: generateFriendlyId("task"),
- projectId: worker.projectId,
- runtimeEnvironmentId: worker.runtimeEnvironmentId,
- workerId: worker.id,
- slug: task.id,
- description: task.description,
- filePath: task.filePath,
- exportName: task.exportName,
- retryConfig: task.retry,
- queueConfig: task.queue,
- machineConfig: task.machine,
- triggerSource: task.triggerSource === "schedule" ? "SCHEDULED" : "STANDARD",
- fileId: tasksToBackgroundFiles?.get(task.id) ?? null,
- maxDurationInSeconds: task.maxDuration ? clampMaxDuration(task.maxDuration) : null,
- },
- });
+ // Create the queues
+ const queues = await createWorkerQueues(metadata, worker, environment, prisma);
- let queueName = sanitizeQueueName(task.queue?.name ?? `task/${task.id}`);
+ // Create the tasks
+ await createWorkerTasks(metadata, queues, worker, environment, prisma, tasksToBackgroundFiles);
+}
- // Check that the queuename is not an empty string
- if (!queueName) {
- queueName = sanitizeQueueName(`task/${task.id}`);
- }
+async function createWorkerTasks(
+ metadata: BackgroundWorkerMetadata,
+ queues: Array,
+ worker: BackgroundWorker,
+ environment: AuthenticatedEnvironment,
+ prisma: PrismaClientOrTransaction,
+ tasksToBackgroundFiles?: Map
+) {
+ // Create tasks in chunks of 20
+ const CHUNK_SIZE = 20;
+ for (let i = 0; i < metadata.tasks.length; i += CHUNK_SIZE) {
+ const chunk = metadata.tasks.slice(i, i + CHUNK_SIZE);
+ await Promise.all(
+ chunk.map((task) =>
+ createWorkerTask(task, queues, worker, environment, prisma, tasksToBackgroundFiles)
+ )
+ );
+ }
+}
- const concurrencyLimit =
- typeof task.queue?.concurrencyLimit === "number"
- ? Math.max(
- Math.min(
- task.queue.concurrencyLimit,
- environment.maximumConcurrencyLimit,
- environment.organization.maximumConcurrencyLimit
- ),
- 0
- )
- : task.queue?.concurrencyLimit;
-
- let taskQueue = await prisma.taskQueue.findFirst({
- where: {
- runtimeEnvironmentId: worker.runtimeEnvironmentId,
- name: queueName,
+async function createWorkerTask(
+ task: TaskResource,
+ queues: Array,
+ worker: BackgroundWorker,
+ environment: AuthenticatedEnvironment,
+ prisma: PrismaClientOrTransaction,
+ tasksToBackgroundFiles?: Map
+) {
+ try {
+ let queue = queues.find((queue) => queue.name === task.queue?.name);
+
+ if (!queue) {
+ // Create a TaskQueue
+ queue = await createWorkerQueue(
+ {
+ name: `task/${task.id}`,
},
- });
-
- if (!taskQueue) {
- taskQueue = await prisma.taskQueue.create({
- data: {
- friendlyId: generateFriendlyId("queue"),
- name: queueName,
- concurrencyLimit,
- runtimeEnvironmentId: worker.runtimeEnvironmentId,
- projectId: worker.projectId,
- type: task.queue?.name ? "NAMED" : "VIRTUAL",
- },
- });
- }
+ task.id,
+ "VIRTUAL",
+ worker,
+ environment,
+ prisma
+ );
+ }
- if (typeof concurrencyLimit === "number") {
- logger.debug("CreateBackgroundWorkerService: updating concurrency limit", {
- workerId: worker.id,
- taskQueue,
- orgId: environment.organizationId,
- projectId: environment.projectId,
- environmentId: environment.id,
- concurrencyLimit,
- taskidentifier: task.id,
+ await prisma.backgroundWorkerTask.create({
+ data: {
+ friendlyId: generateFriendlyId("task"),
+ projectId: worker.projectId,
+ runtimeEnvironmentId: worker.runtimeEnvironmentId,
+ workerId: worker.id,
+ slug: task.id,
+ description: task.description,
+ filePath: task.filePath,
+ exportName: task.exportName,
+ retryConfig: task.retry,
+ queueConfig: task.queue,
+ machineConfig: task.machine,
+ triggerSource: task.triggerSource === "schedule" ? "SCHEDULED" : "STANDARD",
+ fileId: tasksToBackgroundFiles?.get(task.id) ?? null,
+ maxDurationInSeconds: task.maxDuration ? clampMaxDuration(task.maxDuration) : null,
+ queueId: queue.id,
+ },
+ });
+ } catch (error) {
+ if (error instanceof Prisma.PrismaClientKnownRequestError) {
+ // The error code for unique constraint violation in Prisma is P2002
+ if (error.code === "P2002") {
+ logger.warn("Task already exists", {
+ task,
+ worker,
});
- await updateQueueConcurrencyLimits(environment, taskQueue.name, concurrencyLimit);
} else {
- logger.debug("CreateBackgroundWorkerService: removing concurrency limit", {
- workerId: worker.id,
- taskQueue,
- orgId: environment.organizationId,
- projectId: environment.projectId,
- environmentId: environment.id,
- concurrencyLimit,
- taskidentifier: task.id,
- });
- await removeQueueConcurrencyLimits(environment, taskQueue.name);
- }
- } catch (error) {
- if (error instanceof Prisma.PrismaClientKnownRequestError) {
- // The error code for unique constraint violation in Prisma is P2002
- if (error.code === "P2002") {
- logger.warn("Task already exists", {
- task,
- worker,
- });
- } else {
- logger.error("Prisma Error creating background worker task", {
- error: {
- code: error.code,
- message: error.message,
- },
- task,
- worker,
- });
- }
- } else if (error instanceof Error) {
- logger.error("Error creating background worker task", {
+ logger.error("Prisma Error creating background worker task", {
error: {
- name: error.name,
+ code: error.code,
message: error.message,
- stack: error.stack,
},
task,
worker,
});
- } else {
- logger.error("Unknown error creating background worker task", {
- error,
- task,
- worker,
- });
}
+ } else if (error instanceof Error) {
+ logger.error("Error creating background worker task", {
+ error: {
+ name: error.name,
+ message: error.message,
+ stack: error.stack,
+ },
+ task,
+ worker,
+ });
+ } else {
+ logger.error("Unknown error creating background worker task", {
+ error,
+ task,
+ worker,
+ });
}
}
}
+async function createWorkerQueues(
+ metadata: BackgroundWorkerMetadata,
+ worker: BackgroundWorker,
+ environment: AuthenticatedEnvironment,
+ prisma: PrismaClientOrTransaction
+) {
+ if (!metadata.queues) {
+ return [];
+ }
+
+ const CHUNK_SIZE = 20;
+ const allQueues: Awaited>[] = [];
+
+ // Process queues in chunks
+ for (let i = 0; i < metadata.queues.length; i += CHUNK_SIZE) {
+ const chunk = metadata.queues.slice(i, i + CHUNK_SIZE);
+ const queueChunk = await Promise.all(
+ chunk.map(async (queue) => {
+ return createWorkerQueue(queue, queue.name, "NAMED", worker, environment, prisma);
+ })
+ );
+ allQueues.push(...queueChunk.filter(Boolean));
+ }
+
+ return allQueues;
+}
+
+async function createWorkerQueue(
+ queue: QueueManifest,
+ orderableName: string,
+ queueType: TaskQueueType,
+ worker: BackgroundWorker,
+ environment: AuthenticatedEnvironment,
+ prisma: PrismaClientOrTransaction
+) {
+ let queueName = sanitizeQueueName(queue.name);
+
+ const concurrencyLimit =
+ typeof queue.concurrencyLimit === "number"
+ ? Math.max(
+ Math.min(
+ queue.concurrencyLimit,
+ environment.maximumConcurrencyLimit,
+ environment.organization.maximumConcurrencyLimit
+ ),
+ 0
+ )
+ : queue.concurrencyLimit;
+
+ let taskQueue = await prisma.taskQueue.findFirst({
+ where: {
+ runtimeEnvironmentId: worker.runtimeEnvironmentId,
+ name: queueName,
+ },
+ });
+
+ if (!taskQueue) {
+ taskQueue = await prisma.taskQueue.create({
+ data: {
+ friendlyId: generateFriendlyId("queue"),
+ version: "V2",
+ name: queueName,
+ orderableName,
+ concurrencyLimit,
+ runtimeEnvironmentId: worker.runtimeEnvironmentId,
+ projectId: worker.projectId,
+ type: queueType,
+ workers: {
+ connect: {
+ id: worker.id,
+ },
+ },
+ },
+ });
+ } else {
+ await prisma.taskQueue.update({
+ where: {
+ id: taskQueue.id,
+ },
+ data: {
+ workers: { connect: { id: worker.id } },
+ version: "V2",
+ orderableName,
+ },
+ });
+ }
+
+ if (typeof concurrencyLimit === "number") {
+ logger.debug("createWorkerQueue: updating concurrency limit", {
+ workerId: worker.id,
+ taskQueue,
+ orgId: environment.organizationId,
+ projectId: environment.projectId,
+ environmentId: environment.id,
+ concurrencyLimit,
+ });
+ await updateQueueConcurrencyLimits(environment, taskQueue.name, concurrencyLimit);
+ } else {
+ logger.debug("createWorkerQueue: removing concurrency limit", {
+ workerId: worker.id,
+ taskQueue,
+ orgId: environment.organizationId,
+ projectId: environment.projectId,
+ environmentId: environment.id,
+ concurrencyLimit,
+ });
+ await removeQueueConcurrencyLimits(environment, taskQueue.name);
+ }
+
+ return taskQueue;
+}
+
//CreateDeclarativeScheduleError with a message
export class CreateDeclarativeScheduleError extends Error {
constructor(message: string) {
diff --git a/apps/webapp/app/v3/services/createDeployedBackgroundWorker.server.ts b/apps/webapp/app/v3/services/createDeployedBackgroundWorker.server.ts
index d3ff4e6c72..4ec6b7f56e 100644
--- a/apps/webapp/app/v3/services/createDeployedBackgroundWorker.server.ts
+++ b/apps/webapp/app/v3/services/createDeployedBackgroundWorker.server.ts
@@ -6,7 +6,7 @@ import { socketIo } from "../handleSocketIo.server";
import { updateEnvConcurrencyLimits } from "../runQueue.server";
import { PerformDeploymentAlertsService } from "./alerts/performDeploymentAlerts.server";
import { BaseService } from "./baseService.server";
-import { createBackgroundTasks, syncDeclarativeSchedules } from "./createBackgroundWorker.server";
+import { createWorkerResources, syncDeclarativeSchedules } from "./createBackgroundWorker.server";
import { ExecuteTasksWaitingForDeployService } from "./executeTasksWaitingForDeploy";
import { projectPubSub } from "./projectPubSub.server";
import { TimeoutDeploymentService } from "./timeoutDeployment.server";
@@ -64,12 +64,7 @@ export class CreateDeployedBackgroundWorkerService extends BaseService {
}
try {
- await createBackgroundTasks(
- body.metadata.tasks,
- backgroundWorker,
- environment,
- this._prisma
- );
+ await createWorkerResources(body.metadata, backgroundWorker, environment, this._prisma);
await syncDeclarativeSchedules(
body.metadata.tasks,
backgroundWorker,
diff --git a/apps/webapp/app/v3/services/createDeploymentBackgroundWorker.server.ts b/apps/webapp/app/v3/services/createDeploymentBackgroundWorker.server.ts
index e502e1cdaa..e85a59804f 100644
--- a/apps/webapp/app/v3/services/createDeploymentBackgroundWorker.server.ts
+++ b/apps/webapp/app/v3/services/createDeploymentBackgroundWorker.server.ts
@@ -1,15 +1,14 @@
-import { CreateBackgroundWorkerRequestBody } from "@trigger.dev/core/v3";
-import type { BackgroundWorker } from "@trigger.dev/database";
+import { CreateBackgroundWorkerRequestBody, logger, tryCatch } from "@trigger.dev/core/v3";
+import { BackgroundWorkerId } from "@trigger.dev/core/v3/isomorphic";
+import type { BackgroundWorker, WorkerDeployment } from "@trigger.dev/database";
import { AuthenticatedEnvironment } from "~/services/apiAuth.server";
-import { generateFriendlyId } from "../friendlyIdentifiers";
-import { BaseService } from "./baseService.server";
+import { BaseService, ServiceValidationError } from "./baseService.server";
import {
createBackgroundFiles,
- createBackgroundTasks,
+ createWorkerResources,
syncDeclarativeSchedules,
} from "./createBackgroundWorker.server";
import { TimeoutDeploymentService } from "./timeoutDeployment.server";
-import { BackgroundWorkerId } from "@trigger.dev/core/v3/isomorphic";
export class CreateDeploymentBackgroundWorkerService extends BaseService {
public async call(
@@ -61,45 +60,65 @@ export class CreateDeploymentBackgroundWorkerService extends BaseService {
});
}
- try {
- const tasksToBackgroundFiles = await createBackgroundFiles(
+ const [filesError, tasksToBackgroundFiles] = await tryCatch(
+ createBackgroundFiles(
body.metadata.sourceFiles,
backgroundWorker,
environment,
this._prisma
- );
- await createBackgroundTasks(
- body.metadata.tasks,
+ )
+ );
+
+ if (filesError) {
+ logger.error("Error creating background worker files", {
+ error: filesError,
+ });
+
+ const serviceError = new ServiceValidationError("Error creating background worker files");
+
+ await this.#failBackgroundWorkerDeployment(deployment, serviceError);
+
+ throw serviceError;
+ }
+
+ const [resourcesError] = await tryCatch(
+ createWorkerResources(
+ body.metadata,
backgroundWorker,
environment,
this._prisma,
tasksToBackgroundFiles
+ )
+ );
+
+ if (resourcesError) {
+ logger.error("Error creating background worker resources", {
+ error: resourcesError,
+ });
+
+ const serviceError = new ServiceValidationError(
+ "Error creating background worker resources"
);
- await syncDeclarativeSchedules(
- body.metadata.tasks,
- backgroundWorker,
- environment,
- this._prisma
- );
- } catch (error) {
- const name = error instanceof Error ? error.name : "UnknownError";
- const message = error instanceof Error ? error.message : JSON.stringify(error);
- await this._prisma.workerDeployment.update({
- where: {
- id: deployment.id,
- },
- data: {
- status: "FAILED",
- failedAt: new Date(),
- errorData: {
- name,
- message,
- },
- },
+ await this.#failBackgroundWorkerDeployment(deployment, serviceError);
+
+ throw serviceError;
+ }
+
+ const [schedulesError] = await tryCatch(
+ syncDeclarativeSchedules(body.metadata.tasks, backgroundWorker, environment, this._prisma)
+ );
+
+ if (schedulesError) {
+ logger.error("Error syncing declarative schedules", {
+ error: schedulesError,
});
- throw error;
+ const serviceError = new ServiceValidationError("Error syncing declarative schedules");
+
+ await this.#failBackgroundWorkerDeployment(deployment, serviceError);
+
+ throw serviceError;
}
// Link the deployment with the background worker
@@ -119,4 +138,24 @@ export class CreateDeploymentBackgroundWorkerService extends BaseService {
return backgroundWorker;
});
}
+
+ async #failBackgroundWorkerDeployment(deployment: WorkerDeployment, error: Error) {
+ await this._prisma.workerDeployment.update({
+ where: {
+ id: deployment.id,
+ },
+ data: {
+ status: "FAILED",
+ failedAt: new Date(),
+ errorData: {
+ name: error.name,
+ message: error.message,
+ },
+ },
+ });
+
+ await TimeoutDeploymentService.dequeue(deployment.id, this._prisma);
+
+ throw error;
+ }
}
diff --git a/apps/webapp/app/v3/services/createTaskRunAttempt.server.ts b/apps/webapp/app/v3/services/createTaskRunAttempt.server.ts
index e259378268..f8cad4fbf7 100644
--- a/apps/webapp/app/v3/services/createTaskRunAttempt.server.ts
+++ b/apps/webapp/app/v3/services/createTaskRunAttempt.server.ts
@@ -192,7 +192,7 @@ export class CreateTaskRunAttemptService extends BaseService {
task: {
id: lockedBy.slug,
filePath: lockedBy.filePath,
- exportName: lockedBy.exportName,
+ exportName: lockedBy.exportName ?? "@deprecated",
},
attempt: {
id: taskRunAttempt.friendlyId,
diff --git a/apps/webapp/app/v3/services/pauseEnvironment.server.ts b/apps/webapp/app/v3/services/pauseEnvironment.server.ts
index a3e029e565..de0216989d 100644
--- a/apps/webapp/app/v3/services/pauseEnvironment.server.ts
+++ b/apps/webapp/app/v3/services/pauseEnvironment.server.ts
@@ -1,9 +1,9 @@
-import { type AuthenticatedEnvironment } from "@internal/testcontainers";
import { type PrismaClientOrTransaction } from "@trigger.dev/database";
import { prisma } from "~/db.server";
import { logger } from "~/services/logger.server";
import { updateEnvConcurrencyLimits } from "../runQueue.server";
import { WithRunEngine } from "./baseService.server";
+import { AuthenticatedEnvironment } from "~/services/apiAuth.server";
export type PauseStatus = "paused" | "resumed";
diff --git a/apps/webapp/app/v3/services/pauseQueue.server.ts b/apps/webapp/app/v3/services/pauseQueue.server.ts
index f4e18eab4b..529756bed8 100644
--- a/apps/webapp/app/v3/services/pauseQueue.server.ts
+++ b/apps/webapp/app/v3/services/pauseQueue.server.ts
@@ -89,6 +89,7 @@ export class PauseQueueService extends BaseService {
queued: results[0]?.[updatedQueue.name] ?? 0,
concurrencyLimit: updatedQueue.concurrencyLimit ?? null,
paused: updatedQueue.paused,
+ releaseConcurrencyOnWaitpoint: updatedQueue.releaseConcurrencyOnWaitpoint,
}),
};
} catch (error) {
diff --git a/apps/webapp/app/v3/services/triggerTaskV1.server.ts b/apps/webapp/app/v3/services/triggerTaskV1.server.ts
index c8d85465d4..16038f9ddf 100644
--- a/apps/webapp/app/v3/services/triggerTaskV1.server.ts
+++ b/apps/webapp/app/v3/services/triggerTaskV1.server.ts
@@ -1,7 +1,6 @@
import {
IOPacket,
packetRequiresOffloading,
- QueueOptions,
SemanticInternalAttributes,
taskRunErrorToString,
taskRunErrorEnhancer,
@@ -43,6 +42,13 @@ import {
} from "./triggerTask.server";
import { getTaskEventStore } from "../taskEventStore.server";
import { enqueueRun } from "./enqueueRun.server";
+import { z } from "zod";
+
+// This is here for backwords compatibility for v3 users
+const QueueOptions = z.object({
+ name: z.string(),
+ concurrencyLimit: z.number().int().optional(),
+});
/** @deprecated Use TriggerTaskService in `triggerTask.server.ts` instead. */
export class TriggerTaskServiceV1 extends BaseService {
diff --git a/apps/webapp/app/v3/services/triggerTaskV2.server.ts b/apps/webapp/app/v3/services/triggerTaskV2.server.ts
index 4a3c5efe57..d7bc8b9f6a 100644
--- a/apps/webapp/app/v3/services/triggerTaskV2.server.ts
+++ b/apps/webapp/app/v3/services/triggerTaskV2.server.ts
@@ -2,7 +2,6 @@ import { RunEngine, RunDuplicateIdempotencyKeyError } from "@internal/run-engine
import {
IOPacket,
packetRequiresOffloading,
- QueueOptions,
SemanticInternalAttributes,
TaskRunError,
taskRunErrorEnhancer,
@@ -343,8 +342,7 @@ export class TriggerTaskServiceV2 extends WithRunEngine {
sdkVersion: lockedToBackgroundWorker?.sdkVersion,
cliVersion: lockedToBackgroundWorker?.cliVersion,
concurrencyKey: body.options?.concurrencyKey,
- queueName,
- queue: body.options?.queue,
+ queue: queueName,
masterQueue: masterQueue,
isTest: body.options?.test ?? false,
delayUntil,
@@ -492,6 +490,9 @@ export class TriggerTaskServiceV2 extends WithRunEngine {
workerId: worker.id,
slug: taskId,
},
+ include: {
+ queue: true,
+ },
});
if (!task) {
@@ -503,10 +504,8 @@ export class TriggerTaskServiceV2 extends WithRunEngine {
return defaultQueueName;
}
- const queueConfig = QueueOptions.optional().nullable().safeParse(task.queueConfig);
-
- if (!queueConfig.success) {
- console.log("Failed to get queue name: Invalid queue config", {
+ if (!task.queue) {
+ console.log("Failed to get queue name: No queue found", {
taskId,
environmentId: environment.id,
queueConfig: task.queueConfig,
@@ -515,7 +514,7 @@ export class TriggerTaskServiceV2 extends WithRunEngine {
return defaultQueueName;
}
- return queueConfig.data?.name ?? defaultQueueName;
+ return task.queue.name ?? defaultQueueName;
}
async #handlePayloadPacket(
diff --git a/apps/webapp/app/v3/taskRunHeartbeatFailed.server.ts b/apps/webapp/app/v3/taskRunHeartbeatFailed.server.ts
index fa564c06b8..8c1c4a7e39 100644
--- a/apps/webapp/app/v3/taskRunHeartbeatFailed.server.ts
+++ b/apps/webapp/app/v3/taskRunHeartbeatFailed.server.ts
@@ -98,6 +98,7 @@ export class TaskRunHeartbeatFailedService extends BaseService {
break;
}
case "DELAYED":
+ case "PENDING_VERSION":
case "WAITING_FOR_DEPLOY": {
logger.debug(
`[TaskRunHeartbeatFailedService] ${taskRun.status} Removing task run from queue`,
diff --git a/apps/webapp/app/v3/taskStatus.ts b/apps/webapp/app/v3/taskStatus.ts
index a360bde091..6b276bfc00 100644
--- a/apps/webapp/app/v3/taskStatus.ts
+++ b/apps/webapp/app/v3/taskStatus.ts
@@ -16,6 +16,7 @@ export type FINAL_RUN_STATUSES = (typeof FINAL_RUN_STATUSES)[number];
export const NON_FINAL_RUN_STATUSES = [
"DELAYED",
"PENDING",
+ "PENDING_VERSION",
"WAITING_FOR_DEPLOY",
"EXECUTING",
"WAITING_TO_RESUME",
@@ -25,6 +26,14 @@ export const NON_FINAL_RUN_STATUSES = [
export type NON_FINAL_RUN_STATUSES = (typeof NON_FINAL_RUN_STATUSES)[number];
+export const PENDING_STATUSES = [
+ "PENDING",
+ "PENDING_VERSION",
+ "WAITING_FOR_DEPLOY",
+] satisfies TaskRunStatus[];
+
+export type PENDING_STATUSES = (typeof PENDING_STATUSES)[number];
+
export const FINAL_ATTEMPT_STATUSES = [
"FAILED",
"CANCELED",
@@ -91,6 +100,10 @@ export function isCancellableAttemptStatus(status: TaskRunAttemptStatus): boolea
return CANCELLABLE_ATTEMPT_STATUSES.includes(status);
}
+export function isPendingRunStatus(status: TaskRunStatus): boolean {
+ return PENDING_STATUSES.includes(status);
+}
+
export function isCrashableRunStatus(status: TaskRunStatus): boolean {
return CRASHABLE_RUN_STATUSES.includes(status);
}
diff --git a/docs/v3-openapi.yaml b/docs/v3-openapi.yaml
index 1cc92a1740..b94280419b 100644
--- a/docs/v3-openapi.yaml
+++ b/docs/v3-openapi.yaml
@@ -1677,7 +1677,7 @@ components:
type: string
description: The status of the run
enum:
- - WAITING_FOR_DEPLOY
+ - PENDING_VERSION
- QUEUED
- EXECUTING
- REATTEMPTING
@@ -1752,7 +1752,7 @@ components:
type: string
description: The status of the run
enum:
- - WAITING_FOR_DEPLOY
+ - PENDING_VERSION
- QUEUED
- EXECUTING
- REATTEMPTING
@@ -1947,8 +1947,8 @@ components:
type: string
description: The status of the run
enum:
+ - PENDING_VERSION
- DELAYED
- - WAITING_FOR_DEPLOY
- QUEUED
- EXECUTING
- REATTEMPTING
diff --git a/internal-packages/database/prisma/migrations/20250319222954_add_task_queue_indexing_columns_for_v2/migration.sql b/internal-packages/database/prisma/migrations/20250319222954_add_task_queue_indexing_columns_for_v2/migration.sql
new file mode 100644
index 0000000000..c512d6774d
--- /dev/null
+++ b/internal-packages/database/prisma/migrations/20250319222954_add_task_queue_indexing_columns_for_v2/migration.sql
@@ -0,0 +1,10 @@
+-- CreateEnum
+CREATE TYPE "TaskQueueVersion" AS ENUM ('V1', 'V2');
+
+-- AlterTable
+ALTER TABLE
+ "TaskQueue"
+ADD
+ COLUMN "orderableName" TEXT,
+ADD
+ COLUMN "version" "TaskQueueVersion" NOT NULL DEFAULT 'V1';
\ No newline at end of file
diff --git a/internal-packages/database/prisma/migrations/20250320085824_add_queue_to_background_worker_task/migration.sql b/internal-packages/database/prisma/migrations/20250320085824_add_queue_to_background_worker_task/migration.sql
new file mode 100644
index 0000000000..d6b8171a2c
--- /dev/null
+++ b/internal-packages/database/prisma/migrations/20250320085824_add_queue_to_background_worker_task/migration.sql
@@ -0,0 +1,15 @@
+-- AlterTable
+ALTER TABLE
+ "BackgroundWorkerTask"
+ADD
+ COLUMN "queueId" TEXT,
+ALTER COLUMN
+ "exportName" DROP NOT NULL;
+
+-- AddForeignKey
+ALTER TABLE
+ "BackgroundWorkerTask"
+ADD
+ CONSTRAINT "BackgroundWorkerTask_queueId_fkey" FOREIGN KEY ("queueId") REFERENCES "TaskQueue"("id") ON DELETE
+SET
+ NULL ON UPDATE CASCADE;
\ No newline at end of file
diff --git a/internal-packages/database/prisma/migrations/20250320111737_add_pending_version_task_run_status/migration.sql b/internal-packages/database/prisma/migrations/20250320111737_add_pending_version_task_run_status/migration.sql
new file mode 100644
index 0000000000..82db748774
--- /dev/null
+++ b/internal-packages/database/prisma/migrations/20250320111737_add_pending_version_task_run_status/migration.sql
@@ -0,0 +1,4 @@
+-- AlterEnum
+ALTER TYPE "TaskRunStatus"
+ADD
+ VALUE 'PENDING_VERSION';
\ No newline at end of file
diff --git a/internal-packages/database/prisma/migrations/20250320130354_add_many_to_many_relationship_task_queue_background_worker/migration.sql b/internal-packages/database/prisma/migrations/20250320130354_add_many_to_many_relationship_task_queue_background_worker/migration.sql
new file mode 100644
index 0000000000..19360f89b7
--- /dev/null
+++ b/internal-packages/database/prisma/migrations/20250320130354_add_many_to_many_relationship_task_queue_background_worker/migration.sql
@@ -0,0 +1,20 @@
+-- CreateTable
+CREATE TABLE "_BackgroundWorkerToTaskQueue" ("A" TEXT NOT NULL, "B" TEXT NOT NULL);
+
+-- CreateIndex
+CREATE UNIQUE INDEX "_BackgroundWorkerToTaskQueue_AB_unique" ON "_BackgroundWorkerToTaskQueue"("A", "B");
+
+-- CreateIndex
+CREATE INDEX "_BackgroundWorkerToTaskQueue_B_index" ON "_BackgroundWorkerToTaskQueue"("B");
+
+-- AddForeignKey
+ALTER TABLE
+ "_BackgroundWorkerToTaskQueue"
+ADD
+ CONSTRAINT "_BackgroundWorkerToTaskQueue_A_fkey" FOREIGN KEY ("A") REFERENCES "BackgroundWorker"("id") ON DELETE CASCADE ON UPDATE CASCADE;
+
+-- AddForeignKey
+ALTER TABLE
+ "_BackgroundWorkerToTaskQueue"
+ADD
+ CONSTRAINT "_BackgroundWorkerToTaskQueue_B_fkey" FOREIGN KEY ("B") REFERENCES "TaskQueue"("id") ON DELETE CASCADE ON UPDATE CASCADE;
\ No newline at end of file
diff --git a/internal-packages/database/prisma/migrations/20250320223742_add_status_reason_to_task_run/migration.sql b/internal-packages/database/prisma/migrations/20250320223742_add_status_reason_to_task_run/migration.sql
new file mode 100644
index 0000000000..451e297e62
--- /dev/null
+++ b/internal-packages/database/prisma/migrations/20250320223742_add_status_reason_to_task_run/migration.sql
@@ -0,0 +1,5 @@
+-- AlterTable
+ALTER TABLE
+ "TaskRun"
+ADD
+ COLUMN "statusReason" TEXT;
\ No newline at end of file
diff --git a/internal-packages/database/prisma/schema.prisma b/internal-packages/database/prisma/schema.prisma
index 8b92c6448b..7073b1a823 100644
--- a/internal-packages/database/prisma/schema.prisma
+++ b/internal-packages/database/prisma/schema.prisma
@@ -1614,6 +1614,7 @@ model BackgroundWorker {
attempts TaskRunAttempt[]
lockedRuns TaskRun[]
files BackgroundWorkerFile[]
+ queues TaskQueue[]
deployment WorkerDeployment?
@@ -1656,7 +1657,7 @@ model BackgroundWorkerTask {
friendlyId String @unique
filePath String
- exportName String
+ exportName String?
worker BackgroundWorker @relation(fields: [workerId], references: [id], onDelete: Cascade, onUpdate: Cascade)
workerId String
@@ -1680,6 +1681,9 @@ model BackgroundWorkerTask {
retryConfig Json?
machineConfig Json?
+ queueId String?
+ queue TaskQueue? @relation(fields: [queueId], references: [id], onDelete: SetNull, onUpdate: Cascade)
+
maxDurationInSeconds Int?
triggerSource TaskTriggerSource @default(STANDARD)
@@ -1703,7 +1707,8 @@ model TaskRun {
engine RunEngineVersion @default(V1)
- status TaskRunStatus @default(PENDING)
+ status TaskRunStatus @default(PENDING)
+ statusReason String?
idempotencyKey String?
idempotencyKeyExpiresAt DateTime?
@@ -1899,7 +1904,10 @@ enum TaskRunStatus {
/// Task is waiting to be executed by a worker
PENDING
- /// Task hasn't been deployed yet but is waiting to be executed
+ /// The run is pending a version update because it cannot execute without additional information (task, queue, etc.). Replaces WAITING_FOR_DEPLOY
+ PENDING_VERSION
+
+ /// Task hasn't been deployed yet but is waiting to be executed. Deprecated in favor of PENDING_VERSION
WAITING_FOR_DEPLOY
/// Task is currently being executed by a worker
@@ -2533,6 +2541,9 @@ model TaskQueue {
name String
type TaskQueueType @default(VIRTUAL)
+ version TaskQueueVersion @default(V1)
+ orderableName String?
+
project Project @relation(fields: [projectId], references: [id], onDelete: Cascade, onUpdate: Cascade)
projectId String
@@ -2551,6 +2562,8 @@ model TaskQueue {
updatedAt DateTime @updatedAt
attempts TaskRunAttempt[]
+ tasks BackgroundWorkerTask[]
+ workers BackgroundWorker[]
@@unique([runtimeEnvironmentId, name])
}
@@ -2560,6 +2573,11 @@ enum TaskQueueType {
NAMED
}
+enum TaskQueueVersion {
+ V1
+ V2
+}
+
model BatchTaskRun {
id String @id @default(cuid())
friendlyId String @unique
diff --git a/internal-packages/redis/src/index.ts b/internal-packages/redis/src/index.ts
index a659e4c58f..fd0d4d25d6 100644
--- a/internal-packages/redis/src/index.ts
+++ b/internal-packages/redis/src/index.ts
@@ -8,7 +8,7 @@ const defaultOptions: Partial = {
const delay = Math.min(times * 50, 1000);
return delay;
},
- maxRetriesPerRequest: process.env.VITEST ? 1 : 20,
+ maxRetriesPerRequest: process.env.GITHUB_ACTIONS ? 50 : process.env.VITEST ? 1 : 20,
};
const logger = new Logger("Redis", "debug");
diff --git a/internal-packages/run-engine/src/engine/db/worker.ts b/internal-packages/run-engine/src/engine/db/worker.ts
index 2c3264615c..34abf2cd32 100644
--- a/internal-packages/run-engine/src/engine/db/worker.ts
+++ b/internal-packages/run-engine/src/engine/db/worker.ts
@@ -3,6 +3,7 @@ import {
BackgroundWorkerTask,
Prisma,
PrismaClientOrTransaction,
+ TaskQueue,
WorkerDeployment,
} from "@trigger.dev/database";
import { CURRENT_DEPLOYMENT_LABEL } from "@trigger.dev/core/v3/isomorphic";
@@ -30,7 +31,8 @@ type RunWithBackgroundWorkerTasksResult =
| "NO_WORKER"
| "TASK_NOT_IN_LATEST"
| "TASK_NEVER_REGISTERED"
- | "BACKGROUND_WORKER_MISMATCH";
+ | "BACKGROUND_WORKER_MISMATCH"
+ | "QUEUE_NOT_FOUND";
message: string;
run: RunWithMininimalEnvironment;
}
@@ -49,6 +51,7 @@ type RunWithBackgroundWorkerTasksResult =
run: RunWithMininimalEnvironment;
worker: BackgroundWorker;
task: BackgroundWorkerTask;
+ queue: TaskQueue;
deployment: WorkerDeployment | null;
};
@@ -158,11 +161,23 @@ export async function getRunWithBackgroundWorkerTasks(
}
}
+ const queue = workerWithTasks.queues.find((queue) => queue.name === run.queue);
+
+ if (!queue) {
+ return {
+ success: false as const,
+ code: "QUEUE_NOT_FOUND",
+ message: `Queue not found for run: ${run.id}`,
+ run,
+ };
+ }
+
return {
success: true as const,
run,
worker: workerWithTasks.worker,
task: backgroundTask,
+ queue,
deployment: workerWithTasks.deployment,
};
}
@@ -170,6 +185,7 @@ export async function getRunWithBackgroundWorkerTasks(
type WorkerDeploymentWithWorkerTasks = {
worker: BackgroundWorker;
tasks: BackgroundWorkerTask[];
+ queues: TaskQueue[];
deployment: WorkerDeployment | null;
};
@@ -184,6 +200,7 @@ export async function getWorkerDeploymentFromWorker(
include: {
deployment: true,
tasks: true,
+ queues: true,
},
});
@@ -191,7 +208,7 @@ export async function getWorkerDeploymentFromWorker(
return null;
}
- return { worker, tasks: worker.tasks, deployment: worker.deployment };
+ return { worker, tasks: worker.tasks, queues: worker.queues, deployment: worker.deployment };
}
export async function getMostRecentWorker(
@@ -204,6 +221,7 @@ export async function getMostRecentWorker(
},
include: {
tasks: true,
+ queues: true,
},
orderBy: {
id: "desc",
@@ -214,7 +232,7 @@ export async function getMostRecentWorker(
return null;
}
- return { worker, tasks: worker.tasks, deployment: null };
+ return { worker, tasks: worker.tasks, queues: worker.queues, deployment: null };
}
export async function getWorkerById(
@@ -228,6 +246,7 @@ export async function getWorkerById(
include: {
deployment: true,
tasks: true,
+ queues: true,
},
orderBy: {
id: "desc",
@@ -238,7 +257,7 @@ export async function getWorkerById(
return null;
}
- return { worker, tasks: worker.tasks, deployment: worker.deployment };
+ return { worker, tasks: worker.tasks, queues: worker.queues, deployment: worker.deployment };
}
export async function getWorkerFromCurrentlyPromotedDeployment(
@@ -258,6 +277,7 @@ export async function getWorkerFromCurrentlyPromotedDeployment(
worker: {
include: {
tasks: true,
+ queues: true,
},
},
},
@@ -272,6 +292,7 @@ export async function getWorkerFromCurrentlyPromotedDeployment(
return {
worker: promotion.deployment.worker,
tasks: promotion.deployment.worker.tasks,
+ queues: promotion.deployment.worker.queues,
deployment: promotion.deployment,
};
}
diff --git a/internal-packages/run-engine/src/engine/index.ts b/internal-packages/run-engine/src/engine/index.ts
index acc939cea5..80fa8f4607 100644
--- a/internal-packages/run-engine/src/engine/index.ts
+++ b/internal-packages/run-engine/src/engine/index.ts
@@ -48,20 +48,21 @@ import { ReleaseConcurrencySystem } from "./systems/releaseConcurrencySystem.js"
import { RunAttemptSystem } from "./systems/runAttemptSystem.js";
import { SystemResources } from "./systems/systems.js";
import { TtlSystem } from "./systems/ttlSystem.js";
-import { WaitingForWorkerSystem } from "./systems/waitingForWorkerSystem.js";
+import { PendingVersionSystem } from "./systems/pendingVersionSystem.js";
import { WaitpointSystem } from "./systems/waitpointSystem.js";
import { EngineWorker, HeartbeatTimeouts, RunEngineOptions, TriggerParams } from "./types.js";
import { workerCatalog } from "./workerCatalog.js";
export class RunEngine {
private runLockRedis: Redis;
- private prisma: PrismaClient;
private runLock: RunLocker;
- runQueue: RunQueue;
private worker: EngineWorker;
private logger = new Logger("RunEngine", "debug");
private tracer: Tracer;
private heartbeatTimeouts: HeartbeatTimeouts;
+
+ prisma: PrismaClient;
+ runQueue: RunQueue;
eventBus: EventBus = new EventEmitter();
executionSnapshotSystem: ExecutionSnapshotSystem;
runAttemptSystem: RunAttemptSystem;
@@ -72,7 +73,7 @@ export class RunEngine {
checkpointSystem: CheckpointSystem;
delayedRunSystem: DelayedRunSystem;
ttlSystem: TtlSystem;
- waitingForWorkerSystem: WaitingForWorkerSystem;
+ pendingVersionSystem: PendingVersionSystem;
releaseConcurrencySystem: ReleaseConcurrencySystem;
constructor(private readonly options: RunEngineOptions) {
@@ -147,10 +148,10 @@ export class RunEngine {
reason: payload.reason,
});
},
- queueRunsWaitingForWorker: async ({ payload }) => {
- await this.waitingForWorkerSystem.enqueueRunsWaitingForWorker({
- backgroundWorkerId: payload.backgroundWorkerId,
- });
+ queueRunsPendingVersion: async ({ payload }) => {
+ await this.pendingVersionSystem.enqueueRunsForBackgroundWorker(
+ payload.backgroundWorkerId
+ );
},
tryCompleteBatch: async ({ payload }) => {
await this.batchSystem.performCompleteBatch({ batchId: payload.batchId });
@@ -265,7 +266,7 @@ export class RunEngine {
enqueueSystem: this.enqueueSystem,
});
- this.waitingForWorkerSystem = new WaitingForWorkerSystem({
+ this.pendingVersionSystem = new PendingVersionSystem({
resources,
enqueueSystem: this.enqueueSystem,
});
@@ -326,7 +327,6 @@ export class RunEngine {
cliVersion,
concurrencyKey,
masterQueue,
- queueName,
queue,
isTest,
delayUntil,
@@ -405,7 +405,7 @@ export class RunEngine {
sdkVersion,
cliVersion,
concurrencyKey,
- queue: queueName,
+ queue,
masterQueue,
secondaryMasterQueue,
isTest,
@@ -510,66 +510,6 @@ export class RunEngine {
//Make sure lock extension succeeded
signal.throwIfAborted();
- if (queue) {
- const concurrencyLimit =
- typeof queue.concurrencyLimit === "number"
- ? Math.max(Math.min(queue.concurrencyLimit, environment.maximumConcurrencyLimit), 0)
- : queue.concurrencyLimit;
-
- let taskQueue = await prisma.taskQueue.findFirst({
- where: {
- runtimeEnvironmentId: environment.id,
- name: queueName,
- },
- });
-
- if (!taskQueue) {
- // handle conflicts with existing queues
- taskQueue = await prisma.taskQueue.create({
- data: {
- ...QueueId.generate(),
- name: queueName,
- concurrencyLimit,
- runtimeEnvironmentId: environment.id,
- projectId: environment.project.id,
- type: "NAMED",
- },
- });
- }
-
- if (typeof concurrencyLimit === "number") {
- this.logger.debug("TriggerTaskService: updating concurrency limit", {
- runId: taskRun.id,
- friendlyId: taskRun.friendlyId,
- taskQueue,
- orgId: environment.organization.id,
- projectId: environment.project.id,
- concurrencyLimit,
- queueOptions: queue,
- });
-
- await this.runQueue.updateQueueConcurrencyLimits(
- environment,
- taskQueue.name,
- concurrencyLimit
- );
- } else if (concurrencyLimit === null) {
- this.logger.debug("TriggerTaskService: removing concurrency limit", {
- runId: taskRun.id,
- friendlyId: taskRun.friendlyId,
- taskQueue,
- orgId: environment.organization.id,
- projectId: environment.project.id,
- queueOptions: queue,
- });
-
- await this.runQueue.removeQueueConcurrencyLimits(environment, taskQueue.name);
- }
- }
-
- //Make sure lock extension succeeded
- signal.throwIfAborted();
-
if (taskRun.delayUntil) {
// Schedule the run to be enqueued at the delayUntil time
await this.delayedRunSystem.scheduleDelayedRunEnqueuing({
@@ -784,14 +724,8 @@ export class RunEngine {
});
}
- async queueRunsWaitingForWorker({
- backgroundWorkerId,
- }: {
- backgroundWorkerId: string;
- }): Promise {
- return this.waitingForWorkerSystem.enqueueRunsWaitingForWorker({
- backgroundWorkerId,
- });
+ async scheduleEnqueueRunsForBackgroundWorker(backgroundWorkerId: string): Promise {
+ return this.pendingVersionSystem.scheduleResolvePendingVersionRuns(backgroundWorkerId);
}
/**
diff --git a/internal-packages/run-engine/src/engine/systems/dequeueSystem.ts b/internal-packages/run-engine/src/engine/systems/dequeueSystem.ts
index 33bdb56563..1d08154d65 100644
--- a/internal-packages/run-engine/src/engine/systems/dequeueSystem.ts
+++ b/internal-packages/run-engine/src/engine/systems/dequeueSystem.ts
@@ -186,6 +186,7 @@ export class DequeueSystem {
}
case "NO_WORKER":
case "TASK_NEVER_REGISTERED":
+ case "QUEUE_NOT_FOUND":
case "TASK_NOT_IN_LATEST": {
this.$.logger.warn(`RunEngine.dequeueFromMasterQueue(): ${result.code}`, {
runId,
@@ -194,10 +195,11 @@ export class DequeueSystem {
});
//not deployed yet, so we'll wait for the deploy
- await this.#waitingForDeploy({
+ await this.#pendingVersion({
orgId,
runId,
reason: result.message,
+ statusReason: result.code,
tx: prisma,
});
return null;
@@ -232,10 +234,11 @@ export class DequeueSystem {
result,
});
//not deployed yet, so we'll wait for the deploy
- await this.#waitingForDeploy({
+ await this.#pendingVersion({
orgId,
runId,
reason: "No deployment or deployment image reference found for deployed run",
+ statusReason: "NO_DEPLOYMENT",
tx: prisma,
});
@@ -340,43 +343,6 @@ export class DequeueSystem {
maxAttempts = parsedConfig.data.maxAttempts;
}
-
- const queue = await prisma.taskQueue.findUnique({
- where: {
- runtimeEnvironmentId_name: {
- runtimeEnvironmentId: result.run.runtimeEnvironmentId,
- name: sanitizeQueueName(result.run.queue),
- },
- },
- });
-
- if (!queue) {
- this.$.logger.debug(
- "RunEngine.dequeueFromMasterQueue(): queue not found, so nacking message",
- {
- queueMessage: message,
- taskRunQueue: result.run.queue,
- runtimeEnvironmentId: result.run.runtimeEnvironmentId,
- }
- );
-
- //will auto-retry
- const gotRequeued = await this.$.runQueue.nackMessage({ orgId, messageId: runId });
- if (!gotRequeued) {
- await this.runAttemptSystem.systemFailure({
- runId,
- error: {
- type: "INTERNAL_ERROR",
- code: "TASK_DEQUEUED_QUEUE_NOT_FOUND",
- message: `Tried to dequeue the run but the queue doesn't exist: ${result.run.queue}`,
- },
- tx: prisma,
- });
- }
-
- return null;
- }
-
//update the run
const lockedTaskRun = await prisma.taskRun.update({
where: {
@@ -386,7 +352,7 @@ export class DequeueSystem {
lockedAt: new Date(),
lockedById: result.task.id,
lockedToVersionId: result.worker.id,
- lockedQueueId: queue.id,
+ lockedQueueId: result.queue.id,
startedAt: result.run.startedAt ?? new Date(),
baseCostInCents: this.options.machines.baseCostInCents,
machinePreset: machinePreset.name,
@@ -547,16 +513,18 @@ export class DequeueSystem {
);
}
- async #waitingForDeploy({
+ async #pendingVersion({
orgId,
runId,
workerId,
runnerId,
reason,
+ statusReason,
tx,
}: {
orgId: string;
runId: string;
+ statusReason: string;
workerId?: string;
runnerId?: string;
reason?: string;
@@ -566,14 +534,15 @@ export class DequeueSystem {
return startSpan(
this.$.tracer,
- "#waitingForDeploy",
+ "#pendingVersion",
async (span) => {
return this.$.runLock.lock([runId], 5_000, async (signal) => {
//mark run as waiting for deploy
const run = await prisma.taskRun.update({
where: { id: runId },
data: {
- status: "WAITING_FOR_DEPLOY",
+ status: "PENDING_VERSION",
+ statusReason,
},
select: {
id: true,
@@ -590,6 +559,11 @@ export class DequeueSystem {
},
});
+ this.$.logger.debug("RunEngine.dequeueFromMasterQueue(): Pending version", {
+ runId,
+ run,
+ });
+
await this.executionSnapshotSystem.createExecutionSnapshot(prisma, {
run,
snapshot: {
diff --git a/internal-packages/run-engine/src/engine/systems/waitingForWorkerSystem.ts b/internal-packages/run-engine/src/engine/systems/pendingVersionSystem.ts
similarity index 54%
rename from internal-packages/run-engine/src/engine/systems/waitingForWorkerSystem.ts
rename to internal-packages/run-engine/src/engine/systems/pendingVersionSystem.ts
index 517e1c303d..991d8b9aa0 100644
--- a/internal-packages/run-engine/src/engine/systems/waitingForWorkerSystem.ts
+++ b/internal-packages/run-engine/src/engine/systems/pendingVersionSystem.ts
@@ -1,25 +1,25 @@
import { EnqueueSystem } from "./enqueueSystem.js";
import { SystemResources } from "./systems.js";
-export type WaitingForWorkerSystemOptions = {
+export type PendingVersionSystemOptions = {
resources: SystemResources;
enqueueSystem: EnqueueSystem;
- queueRunsWaitingForWorkerBatchSize?: number;
+ queueRunsPendingVersionBatchSize?: number;
};
-export class WaitingForWorkerSystem {
+export class PendingVersionSystem {
private readonly $: SystemResources;
private readonly enqueueSystem: EnqueueSystem;
- constructor(private readonly options: WaitingForWorkerSystemOptions) {
+ constructor(private readonly options: PendingVersionSystemOptions) {
this.$ = options.resources;
this.enqueueSystem = options.enqueueSystem;
}
- async enqueueRunsWaitingForWorker({ backgroundWorkerId }: { backgroundWorkerId: string }) {
+ async enqueueRunsForBackgroundWorker(backgroundWorkerId: string) {
//It could be a lot of runs, so we will process them in a batch
//if there are still more to process we will enqueue this function again
- const maxCount = this.options.queueRunsWaitingForWorkerBatchSize ?? 200;
+ const maxCount = this.options.queueRunsPendingVersionBatchSize ?? 200;
const backgroundWorker = await this.$.prisma.backgroundWorker.findFirst({
where: {
@@ -33,24 +33,34 @@ export class WaitingForWorkerSystem {
},
},
tasks: true,
+ queues: true,
},
});
if (!backgroundWorker) {
- this.$.logger.error("#queueRunsWaitingForWorker: background worker not found", {
+ this.$.logger.error("#enqueueRunsForBackgroundWorker: background worker not found", {
id: backgroundWorkerId,
});
return;
}
- const runsWaitingForDeploy = await this.$.prisma.taskRun.findMany({
+ this.$.logger.debug("Finding PENDING_VERSION runs for background worker", {
+ workerId: backgroundWorker.id,
+ taskIdentifiers: backgroundWorker.tasks.map((task) => task.slug),
+ queues: backgroundWorker.queues.map((queue) => queue.name),
+ });
+
+ const pendingRuns = await this.$.prisma.taskRun.findMany({
where: {
runtimeEnvironmentId: backgroundWorker.runtimeEnvironmentId,
projectId: backgroundWorker.projectId,
- status: "WAITING_FOR_DEPLOY",
+ status: "PENDING_VERSION",
taskIdentifier: {
in: backgroundWorker.tasks.map((task) => task.slug),
},
+ queue: {
+ in: backgroundWorker.queues.map((queue) => queue.name),
+ },
},
orderBy: {
createdAt: "asc",
@@ -59,9 +69,22 @@ export class WaitingForWorkerSystem {
});
//none to process
- if (!runsWaitingForDeploy.length) return;
+ if (!pendingRuns.length) return;
+
+ this.$.logger.debug("Enqueueing PENDING_VERSION runs for background worker", {
+ workerId: backgroundWorker.id,
+ taskIdentifiers: pendingRuns.map((run) => run.taskIdentifier),
+ queues: pendingRuns.map((run) => run.queue),
+ runs: pendingRuns.map((run) => ({
+ id: run.id,
+ taskIdentifier: run.taskIdentifier,
+ queue: run.queue,
+ createdAt: run.createdAt,
+ priorityMs: run.priorityMs,
+ })),
+ });
- for (const run of runsWaitingForDeploy) {
+ for (const run of pendingRuns) {
await this.$.prisma.$transaction(async (tx) => {
const updatedRun = await tx.taskRun.update({
where: {
@@ -83,19 +106,15 @@ export class WaitingForWorkerSystem {
}
//enqueue more if needed
- if (runsWaitingForDeploy.length > maxCount) {
- await this.scheduleEnqueueRunsWaitingForWorker({ backgroundWorkerId });
+ if (pendingRuns.length > maxCount) {
+ await this.scheduleResolvePendingVersionRuns(backgroundWorkerId);
}
}
- async scheduleEnqueueRunsWaitingForWorker({
- backgroundWorkerId,
- }: {
- backgroundWorkerId: string;
- }): Promise {
+ async scheduleResolvePendingVersionRuns(backgroundWorkerId: string): Promise {
//we want this to happen in the background
await this.$.worker.enqueue({
- job: "queueRunsWaitingForWorker",
+ job: "queueRunsPendingVersion",
payload: { backgroundWorkerId },
});
}
diff --git a/internal-packages/run-engine/src/engine/systems/runAttemptSystem.ts b/internal-packages/run-engine/src/engine/systems/runAttemptSystem.ts
index 0ba498d773..6d5c9028f6 100644
--- a/internal-packages/run-engine/src/engine/systems/runAttemptSystem.ts
+++ b/internal-packages/run-engine/src/engine/systems/runAttemptSystem.ts
@@ -270,7 +270,7 @@ export class RunAttemptSystem {
task: {
id: run.lockedBy!.slug,
filePath: run.lockedBy!.filePath,
- exportName: run.lockedBy!.exportName,
+ exportName: run.lockedBy!.exportName ?? undefined,
},
attempt: {
number: nextAttemptNumber,
diff --git a/internal-packages/run-engine/src/engine/tests/attemptFailures.test.ts b/internal-packages/run-engine/src/engine/tests/attemptFailures.test.ts
index 6ff3f4d7e8..bd7b465fe8 100644
--- a/internal-packages/run-engine/src/engine/tests/attemptFailures.test.ts
+++ b/internal-packages/run-engine/src/engine/tests/attemptFailures.test.ts
@@ -1,13 +1,9 @@
-import {
- assertNonNullable,
- containerTest,
- setupAuthenticatedEnvironment,
- setupBackgroundWorker,
-} from "@internal/testcontainers";
+import { assertNonNullable, containerTest } from "@internal/testcontainers";
import { trace } from "@internal/tracing";
import { setTimeout } from "node:timers/promises";
import { expect } from "vitest";
import { RunEngine } from "../index.js";
+import { setupAuthenticatedEnvironment, setupBackgroundWorker } from "./setup.js";
describe("RunEngine attempt failures", () => {
containerTest("Retry user error and succeed", async ({ prisma, redisOptions }) => {
@@ -48,7 +44,7 @@ describe("RunEngine attempt failures", () => {
//create background worker
const backgroundWorker = await setupBackgroundWorker(
- prisma,
+ engine,
authenticatedEnvironment,
taskIdentifier
);
@@ -67,7 +63,7 @@ describe("RunEngine attempt failures", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
},
@@ -200,7 +196,7 @@ describe("RunEngine attempt failures", () => {
const taskIdentifier = "test-task";
//create background worker
- await setupBackgroundWorker(prisma, authenticatedEnvironment, taskIdentifier, undefined, {
+ await setupBackgroundWorker(engine, authenticatedEnvironment, taskIdentifier, undefined, {
maxAttempts: 1,
});
@@ -218,7 +214,7 @@ describe("RunEngine attempt failures", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
},
@@ -311,7 +307,7 @@ describe("RunEngine attempt failures", () => {
const taskIdentifier = "test-task";
//create background worker
- await setupBackgroundWorker(prisma, authenticatedEnvironment, taskIdentifier, undefined, {
+ await setupBackgroundWorker(engine, authenticatedEnvironment, taskIdentifier, undefined, {
maxAttempts: 1,
});
@@ -329,7 +325,7 @@ describe("RunEngine attempt failures", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
},
@@ -420,7 +416,7 @@ describe("RunEngine attempt failures", () => {
const taskIdentifier = "test-task";
//create background worker
- await setupBackgroundWorker(prisma, authenticatedEnvironment, taskIdentifier);
+ await setupBackgroundWorker(engine, authenticatedEnvironment, taskIdentifier);
//trigger the run
const run = await engine.trigger(
@@ -436,7 +432,7 @@ describe("RunEngine attempt failures", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
},
@@ -533,7 +529,7 @@ describe("RunEngine attempt failures", () => {
const taskIdentifier = "test-task";
//create background worker
- await setupBackgroundWorker(prisma, authenticatedEnvironment, taskIdentifier, undefined, {
+ await setupBackgroundWorker(engine, authenticatedEnvironment, taskIdentifier, undefined, {
outOfMemory: {
machine: "small-2x",
},
@@ -553,7 +549,7 @@ describe("RunEngine attempt failures", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
},
@@ -690,7 +686,7 @@ describe("RunEngine attempt failures", () => {
const taskIdentifier = "test-task";
//create background worker
- await setupBackgroundWorker(prisma, authenticatedEnvironment, taskIdentifier, undefined, {
+ await setupBackgroundWorker(engine, authenticatedEnvironment, taskIdentifier, undefined, {
maxTimeoutInMs: 10,
maxAttempts: 10,
outOfMemory: {
@@ -712,7 +708,7 @@ describe("RunEngine attempt failures", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
},
diff --git a/internal-packages/run-engine/src/engine/tests/batchTrigger.test.ts b/internal-packages/run-engine/src/engine/tests/batchTrigger.test.ts
index 56f7a945b3..e3c9f2585e 100644
--- a/internal-packages/run-engine/src/engine/tests/batchTrigger.test.ts
+++ b/internal-packages/run-engine/src/engine/tests/batchTrigger.test.ts
@@ -1,13 +1,10 @@
-import {
- containerTest,
- setupAuthenticatedEnvironment,
- setupBackgroundWorker,
-} from "@internal/testcontainers";
+import { containerTest } from "@internal/testcontainers";
import { trace } from "@internal/tracing";
import { generateFriendlyId } from "@trigger.dev/core/v3/isomorphic";
import { expect } from "vitest";
import { RunEngine } from "../index.js";
import { setTimeout } from "node:timers/promises";
+import { setupAuthenticatedEnvironment, setupBackgroundWorker } from "./setup.js";
vi.setConfig({ testTimeout: 60_000 });
@@ -50,7 +47,7 @@ describe("RunEngine batchTrigger", () => {
//create background worker
const backgroundWorker = await setupBackgroundWorker(
- prisma,
+ engine,
authenticatedEnvironment,
taskIdentifier
);
@@ -76,7 +73,7 @@ describe("RunEngine batchTrigger", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
batch: { id: batch.id, index: 0 },
@@ -97,7 +94,7 @@ describe("RunEngine batchTrigger", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
batch: { id: batch.id, index: 1 },
diff --git a/internal-packages/run-engine/src/engine/tests/batchTriggerAndWait.test.ts b/internal-packages/run-engine/src/engine/tests/batchTriggerAndWait.test.ts
index d5b6d4d324..4af44861c8 100644
--- a/internal-packages/run-engine/src/engine/tests/batchTriggerAndWait.test.ts
+++ b/internal-packages/run-engine/src/engine/tests/batchTriggerAndWait.test.ts
@@ -1,14 +1,10 @@
-import {
- assertNonNullable,
- containerTest,
- setupAuthenticatedEnvironment,
- setupBackgroundWorker,
-} from "@internal/testcontainers";
+import { assertNonNullable, containerTest } from "@internal/testcontainers";
import { trace } from "@internal/tracing";
import { expect, describe } from "vitest";
import { RunEngine } from "../index.js";
import { setTimeout } from "node:timers/promises";
import { generateFriendlyId } from "@trigger.dev/core/v3/isomorphic";
+import { setupAuthenticatedEnvironment, setupBackgroundWorker } from "./setup.js";
vi.setConfig({ testTimeout: 60_000 });
@@ -51,7 +47,7 @@ describe("RunEngine batchTriggerAndWait", () => {
const childTask = "child-task";
//create background worker
- await setupBackgroundWorker(prisma, authenticatedEnvironment, [parentTask, childTask]);
+ await setupBackgroundWorker(engine, authenticatedEnvironment, [parentTask, childTask]);
//create a batch
const batch = await prisma.batchTaskRun.create({
@@ -75,7 +71,7 @@ describe("RunEngine batchTriggerAndWait", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: `task/${parentTask}`,
+ queue: `task/${parentTask}`,
isTest: false,
tags: [],
},
@@ -123,7 +119,7 @@ describe("RunEngine batchTriggerAndWait", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: `task/${childTask}`,
+ queue: `task/${childTask}`,
isTest: false,
tags: [],
resumeParentOnCompletion: true,
@@ -150,7 +146,7 @@ describe("RunEngine batchTriggerAndWait", () => {
traceId: "t123456",
spanId: "s123456",
masterQueue: "main",
- queueName: `task/${childTask}`,
+ queue: `task/${childTask}`,
isTest: false,
tags: [],
resumeParentOnCompletion: true,
diff --git a/internal-packages/run-engine/src/engine/tests/cancelling.test.ts b/internal-packages/run-engine/src/engine/tests/cancelling.test.ts
index c5288cfdc2..d4792d0b0c 100644
--- a/internal-packages/run-engine/src/engine/tests/cancelling.test.ts
+++ b/internal-packages/run-engine/src/engine/tests/cancelling.test.ts
@@ -1,14 +1,10 @@
-import {
- containerTest,
- setupAuthenticatedEnvironment,
- setupBackgroundWorker,
- assertNonNullable,
-} from "@internal/testcontainers";
+import { containerTest, assertNonNullable } from "@internal/testcontainers";
import { trace } from "@internal/tracing";
import { expect } from "vitest";
import { RunEngine } from "../index.js";
import { setTimeout } from "timers/promises";
import { EventBusEventArgs } from "../eventBus.js";
+import { setupAuthenticatedEnvironment, setupBackgroundWorker } from "./setup.js";
vi.setConfig({ testTimeout: 60_000 });
@@ -53,7 +49,7 @@ describe("RunEngine cancelling", () => {
const childTask = "child-task";
//create background worker
- await setupBackgroundWorker(prisma, authenticatedEnvironment, [parentTask, childTask]);
+ await setupBackgroundWorker(engine, authenticatedEnvironment, [parentTask, childTask]);
//trigger the run
const parentRun = await engine.trigger(
@@ -69,7 +65,7 @@ describe("RunEngine cancelling", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: `task/${parentTask}`,
+ queue: `task/${parentTask}`,
isTest: false,
tags: [],
},
@@ -104,7 +100,7 @@ describe("RunEngine cancelling", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: `task/${childTask}`,
+ queue: `task/${childTask}`,
isTest: false,
tags: [],
resumeParentOnCompletion: true,
@@ -266,7 +262,7 @@ describe("RunEngine cancelling", () => {
const parentTask = "parent-task";
//create background worker
- await setupBackgroundWorker(prisma, authenticatedEnvironment, [parentTask]);
+ await setupBackgroundWorker(engine, authenticatedEnvironment, [parentTask]);
//trigger the run
const parentRun = await engine.trigger(
@@ -282,7 +278,7 @@ describe("RunEngine cancelling", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: `task/${parentTask}`,
+ queue: `task/${parentTask}`,
isTest: false,
tags: [],
},
diff --git a/internal-packages/run-engine/src/engine/tests/checkpoints.test.ts b/internal-packages/run-engine/src/engine/tests/checkpoints.test.ts
index 50e6dea856..cb1a56d29a 100644
--- a/internal-packages/run-engine/src/engine/tests/checkpoints.test.ts
+++ b/internal-packages/run-engine/src/engine/tests/checkpoints.test.ts
@@ -1,15 +1,11 @@
//todo checkpoint tests
-import {
- containerTest,
- setupAuthenticatedEnvironment,
- setupBackgroundWorker,
- assertNonNullable,
-} from "@internal/testcontainers";
+import { containerTest, assertNonNullable } from "@internal/testcontainers";
import { trace } from "@internal/tracing";
import { expect } from "vitest";
import { RunEngine } from "../index.js";
import { setTimeout } from "node:timers/promises";
import { EventBusEventArgs } from "../eventBus.js";
+import { setupAuthenticatedEnvironment, setupBackgroundWorker } from "./setup.js";
vi.setConfig({ testTimeout: 60_000 });
@@ -52,7 +48,7 @@ describe("RunEngine checkpoints", () => {
// Create background worker
const backgroundWorker = await setupBackgroundWorker(
- prisma,
+ engine,
authenticatedEnvironment,
taskIdentifier
);
@@ -71,7 +67,7 @@ describe("RunEngine checkpoints", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
},
@@ -225,7 +221,7 @@ describe("RunEngine checkpoints", () => {
// Create background worker
const backgroundWorker = await setupBackgroundWorker(
- prisma,
+ engine,
authenticatedEnvironment,
taskIdentifier
);
@@ -244,7 +240,7 @@ describe("RunEngine checkpoints", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
},
@@ -311,7 +307,7 @@ describe("RunEngine checkpoints", () => {
try {
const taskIdentifier = "test-task";
const backgroundWorker = await setupBackgroundWorker(
- prisma,
+ engine,
authenticatedEnvironment,
taskIdentifier
);
@@ -330,7 +326,7 @@ describe("RunEngine checkpoints", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
},
@@ -512,7 +508,7 @@ describe("RunEngine checkpoints", () => {
// Create background worker
const backgroundWorker = await setupBackgroundWorker(
- prisma,
+ engine,
authenticatedEnvironment,
taskIdentifier
);
@@ -531,7 +527,7 @@ describe("RunEngine checkpoints", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
},
@@ -658,7 +654,7 @@ describe("RunEngine checkpoints", () => {
// Create background worker
const backgroundWorker = await setupBackgroundWorker(
- prisma,
+ engine,
authenticatedEnvironment,
taskIdentifier
);
@@ -677,7 +673,7 @@ describe("RunEngine checkpoints", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
},
@@ -797,10 +793,18 @@ describe("RunEngine checkpoints", () => {
try {
const taskIdentifier = "test-task";
- const queueName = "task/test-task-limited";
// Create background worker
- await setupBackgroundWorker(prisma, authenticatedEnvironment, taskIdentifier);
+ await setupBackgroundWorker(
+ engine,
+ authenticatedEnvironment,
+ taskIdentifier,
+ undefined,
+ undefined,
+ {
+ concurrencyLimit: 1,
+ }
+ );
// Create first run with queue concurrency limit of 1
const firstRun = await engine.trigger(
@@ -816,10 +820,9 @@ describe("RunEngine checkpoints", () => {
traceId: "t12345-first",
spanId: "s12345-first",
masterQueue: "main",
- queueName,
+ queue: "task/test-task",
isTest: false,
tags: [],
- queue: { concurrencyLimit: 1 },
},
prisma
);
@@ -871,10 +874,9 @@ describe("RunEngine checkpoints", () => {
traceId: "t12345-second",
spanId: "s12345-second",
masterQueue: "main",
- queueName,
+ queue: "task/test-task",
isTest: false,
tags: [],
- queue: { concurrencyLimit: 1 },
},
prisma
);
diff --git a/internal-packages/run-engine/src/engine/tests/delays.test.ts b/internal-packages/run-engine/src/engine/tests/delays.test.ts
index 655b01941d..b46c6d34dd 100644
--- a/internal-packages/run-engine/src/engine/tests/delays.test.ts
+++ b/internal-packages/run-engine/src/engine/tests/delays.test.ts
@@ -1,14 +1,9 @@
-import {
- containerTest,
- setupAuthenticatedEnvironment,
- setupBackgroundWorker,
- assertNonNullable,
-} from "@internal/testcontainers";
+import { containerTest, assertNonNullable } from "@internal/testcontainers";
import { trace } from "@internal/tracing";
import { expect } from "vitest";
import { RunEngine } from "../index.js";
import { setTimeout } from "timers/promises";
-import { TaskRunErrorCodes } from "@trigger.dev/core/v3";
+import { setupAuthenticatedEnvironment, setupBackgroundWorker } from "./setup.js";
vi.setConfig({ testTimeout: 60_000 });
@@ -51,7 +46,7 @@ describe("RunEngine delays", () => {
//create background worker
const backgroundWorker = await setupBackgroundWorker(
- prisma,
+ engine,
authenticatedEnvironment,
taskIdentifier
);
@@ -70,7 +65,7 @@ describe("RunEngine delays", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
delayUntil: new Date(Date.now() + 500),
@@ -133,7 +128,7 @@ describe("RunEngine delays", () => {
//create background worker
const backgroundWorker = await setupBackgroundWorker(
- prisma,
+ engine,
authenticatedEnvironment,
taskIdentifier
);
@@ -152,7 +147,7 @@ describe("RunEngine delays", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
delayUntil: new Date(Date.now() + 400),
@@ -230,7 +225,7 @@ describe("RunEngine delays", () => {
//create background worker
const backgroundWorker = await setupBackgroundWorker(
- prisma,
+ engine,
authenticatedEnvironment,
taskIdentifier
);
@@ -249,7 +244,7 @@ describe("RunEngine delays", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
delayUntil: new Date(Date.now() + 1000),
diff --git a/internal-packages/run-engine/src/engine/tests/dequeuing.test.ts b/internal-packages/run-engine/src/engine/tests/dequeuing.test.ts
index ae2de9d2f1..ec5a25a754 100644
--- a/internal-packages/run-engine/src/engine/tests/dequeuing.test.ts
+++ b/internal-packages/run-engine/src/engine/tests/dequeuing.test.ts
@@ -1,15 +1,11 @@
-import {
- containerTest,
- setupAuthenticatedEnvironment,
- setupBackgroundWorker,
-} from "@internal/testcontainers";
+import { containerTest } from "@internal/testcontainers";
import { trace } from "@internal/tracing";
import { generateFriendlyId } from "@trigger.dev/core/v3/isomorphic";
+import { PrismaClientOrTransaction } from "@trigger.dev/database";
import { expect } from "vitest";
-import { RunEngine } from "../index.js";
-import { setTimeout } from "node:timers/promises";
import { MinimalAuthenticatedEnvironment } from "../../shared/index.js";
-import { PrismaClientOrTransaction } from "@trigger.dev/database";
+import { RunEngine } from "../index.js";
+import { setupAuthenticatedEnvironment, setupBackgroundWorker } from "./setup.js";
vi.setConfig({ testTimeout: 60_000 });
@@ -50,7 +46,7 @@ describe("RunEngine dequeuing", () => {
const taskIdentifier = "test-task";
//create background worker
- await setupBackgroundWorker(prisma, authenticatedEnvironment, taskIdentifier);
+ await setupBackgroundWorker(engine, authenticatedEnvironment, taskIdentifier);
//trigger the runs
const runs = await triggerRuns({
@@ -115,7 +111,7 @@ describe("RunEngine dequeuing", () => {
const taskIdentifier = "test-task";
//create background worker
- await setupBackgroundWorker(prisma, authenticatedEnvironment, taskIdentifier, {
+ await setupBackgroundWorker(engine, authenticatedEnvironment, taskIdentifier, {
preset: "small-1x",
});
@@ -197,7 +193,7 @@ async function triggerRuns({
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: `task/${taskIdentifier}`,
+ queue: `task/${taskIdentifier}`,
isTest: false,
tags: [],
},
diff --git a/internal-packages/run-engine/src/engine/tests/heartbeats.test.ts b/internal-packages/run-engine/src/engine/tests/heartbeats.test.ts
index 89df4e0726..ba6010da2c 100644
--- a/internal-packages/run-engine/src/engine/tests/heartbeats.test.ts
+++ b/internal-packages/run-engine/src/engine/tests/heartbeats.test.ts
@@ -1,12 +1,8 @@
-import {
- containerTest,
- setupAuthenticatedEnvironment,
- setupBackgroundWorker,
- assertNonNullable,
-} from "@internal/testcontainers";
+import { containerTest, assertNonNullable } from "@internal/testcontainers";
import { trace } from "@internal/tracing";
import { RunEngine } from "../index.js";
import { setTimeout } from "timers/promises";
+import { setupAuthenticatedEnvironment, setupBackgroundWorker } from "./setup.js";
vi.setConfig({ testTimeout: 60_000 });
@@ -57,7 +53,7 @@ describe("RunEngine heartbeats", () => {
//create background worker
const backgroundWorker = await setupBackgroundWorker(
- prisma,
+ engine,
authenticatedEnvironment,
taskIdentifier
);
@@ -76,7 +72,7 @@ describe("RunEngine heartbeats", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
},
@@ -174,7 +170,7 @@ describe("RunEngine heartbeats", () => {
//create background worker
const backgroundWorker = await setupBackgroundWorker(
- prisma,
+ engine,
authenticatedEnvironment,
taskIdentifier
);
@@ -193,7 +189,7 @@ describe("RunEngine heartbeats", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
},
@@ -294,7 +290,7 @@ describe("RunEngine heartbeats", () => {
//create background worker
const backgroundWorker = await setupBackgroundWorker(
- prisma,
+ engine,
authenticatedEnvironment,
taskIdentifier
);
@@ -313,7 +309,7 @@ describe("RunEngine heartbeats", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
},
@@ -423,7 +419,7 @@ describe("RunEngine heartbeats", () => {
//create background worker
const backgroundWorker = await setupBackgroundWorker(
- prisma,
+ engine,
authenticatedEnvironment,
taskIdentifier
);
@@ -442,7 +438,7 @@ describe("RunEngine heartbeats", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
},
@@ -525,7 +521,7 @@ describe("RunEngine heartbeats", () => {
//create background worker
const backgroundWorker = await setupBackgroundWorker(
- prisma,
+ engine,
authenticatedEnvironment,
taskIdentifier
);
@@ -544,7 +540,7 @@ describe("RunEngine heartbeats", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
},
diff --git a/internal-packages/run-engine/src/engine/tests/notDeployed.test.ts b/internal-packages/run-engine/src/engine/tests/notDeployed.test.ts
deleted file mode 100644
index f27f23e95d..0000000000
--- a/internal-packages/run-engine/src/engine/tests/notDeployed.test.ts
+++ /dev/null
@@ -1,154 +0,0 @@
-import {
- containerTest,
- setupAuthenticatedEnvironment,
- setupBackgroundWorker,
- assertNonNullable,
-} from "@internal/testcontainers";
-import { trace } from "@internal/tracing";
-import { RunEngine } from "../index.js";
-import { setTimeout } from "timers/promises";
-
-vi.setConfig({ testTimeout: 60_000 });
-
-describe("RunEngine not deployed", () => {
- containerTest("Not yet deployed", async ({ prisma, redisOptions }) => {
- //create environment
- const authenticatedEnvironment = await setupAuthenticatedEnvironment(prisma, "PRODUCTION");
-
- const engine = new RunEngine({
- prisma,
- worker: {
- redis: redisOptions,
- workers: 1,
- tasksPerWorker: 10,
- pollIntervalMs: 100,
- },
- queue: {
- redis: redisOptions,
- },
- runLock: {
- redis: redisOptions,
- },
- machines: {
- defaultMachine: "small-1x",
- machines: {
- "small-1x": {
- name: "small-1x" as const,
- cpu: 0.5,
- memory: 0.5,
- centsPerMs: 0.0001,
- },
- },
- baseCostInCents: 0.0001,
- },
- //set this so we have to requeue the runs in two batches
- queueRunsWaitingForWorkerBatchSize: 1,
- tracer: trace.getTracer("test", "0.0.0"),
- });
-
- try {
- const taskIdentifier = "test-task";
-
- //trigger the run
- const run = await engine.trigger(
- {
- number: 1,
- friendlyId: "run_1234",
- environment: authenticatedEnvironment,
- taskIdentifier,
- payload: "{}",
- payloadType: "application/json",
- context: {},
- traceContext: {},
- traceId: "t12345",
- spanId: "s12345",
- masterQueue: "main",
- queueName: "task/test-task",
- isTest: false,
- tags: [],
- },
- prisma
- );
-
- //trigger another run
- const run2 = await engine.trigger(
- {
- number: 2,
- friendlyId: "run_1235",
- environment: authenticatedEnvironment,
- taskIdentifier,
- payload: "{}",
- payloadType: "application/json",
- context: {},
- traceContext: {},
- traceId: "t12346",
- spanId: "s12346",
- masterQueue: "main",
- queueName: "task/test-task",
- isTest: false,
- tags: [],
- },
- prisma
- );
-
- //should be queued
- const executionDataR1 = await engine.getRunExecutionData({ runId: run.id });
- const executionDataR2 = await engine.getRunExecutionData({ runId: run2.id });
- assertNonNullable(executionDataR1);
- assertNonNullable(executionDataR2);
- expect(executionDataR1.snapshot.executionStatus).toBe("QUEUED");
- expect(executionDataR2.snapshot.executionStatus).toBe("QUEUED");
-
- //dequeuing should fail
- const dequeued = await engine.dequeueFromMasterQueue({
- consumerId: "test_12345",
- masterQueue: run.masterQueue,
- maxRunCount: 10,
- });
- expect(dequeued.length).toBe(0);
-
- //queue should be empty
- const queueLength = await engine.runQueue.lengthOfQueue(authenticatedEnvironment, run.queue);
- expect(queueLength).toBe(0);
-
- //check the execution data now
- const executionData2R1 = await engine.getRunExecutionData({ runId: run.id });
- const executionData2R2 = await engine.getRunExecutionData({ runId: run2.id });
- assertNonNullable(executionData2R1);
- assertNonNullable(executionData2R2);
- expect(executionData2R1.snapshot.executionStatus).toBe("RUN_CREATED");
- expect(executionData2R2.snapshot.executionStatus).toBe("RUN_CREATED");
- expect(executionData2R1.run.status).toBe("WAITING_FOR_DEPLOY");
- expect(executionData2R2.run.status).toBe("WAITING_FOR_DEPLOY");
-
- //create background worker
- const backgroundWorker = await setupBackgroundWorker(
- prisma,
- authenticatedEnvironment,
- taskIdentifier
- );
-
- //now we deploy the background worker
- await engine.queueRunsWaitingForWorker({ backgroundWorkerId: backgroundWorker.worker.id });
-
- //it's async so we wait
- await setTimeout(500);
-
- //should now be queued
- const executionData3R1 = await engine.getRunExecutionData({ runId: run.id });
- const executionData3R2 = await engine.getRunExecutionData({ runId: run2.id });
- assertNonNullable(executionData3R1);
- assertNonNullable(executionData3R2);
- expect(executionData3R1.snapshot.executionStatus).toBe("QUEUED");
- expect(executionData3R2.snapshot.executionStatus).toBe("QUEUED");
- expect(executionData3R1.run.status).toBe("PENDING");
- expect(executionData3R2.run.status).toBe("PENDING");
-
- //queue should be empty
- const queueLength2 = await engine.runQueue.lengthOfQueue(authenticatedEnvironment, run.queue);
- expect(queueLength2).toBe(2);
- } finally {
- engine.quit();
- }
- });
-});
diff --git a/internal-packages/run-engine/src/engine/tests/pendingVersion.test.ts b/internal-packages/run-engine/src/engine/tests/pendingVersion.test.ts
new file mode 100644
index 0000000000..c2c1ae3382
--- /dev/null
+++ b/internal-packages/run-engine/src/engine/tests/pendingVersion.test.ts
@@ -0,0 +1,319 @@
+import { containerTest, assertNonNullable } from "@internal/testcontainers";
+import { trace } from "@internal/tracing";
+import { RunEngine } from "../index.js";
+import { setTimeout } from "timers/promises";
+import { setupAuthenticatedEnvironment, setupBackgroundWorker } from "./setup.js";
+
+vi.setConfig({ testTimeout: 60_000 });
+
+describe("RunEngine pending version", () => {
+ containerTest(
+ "When a run is triggered but the background task hasn't been created yet",
+ async ({ prisma, redisOptions }) => {
+ //create environment
+ const authenticatedEnvironment = await setupAuthenticatedEnvironment(prisma, "PRODUCTION");
+
+ const engine = new RunEngine({
+ prisma,
+ worker: {
+ redis: redisOptions,
+ workers: 1,
+ tasksPerWorker: 10,
+ pollIntervalMs: 100,
+ },
+ queue: {
+ redis: redisOptions,
+ },
+ runLock: {
+ redis: redisOptions,
+ },
+ machines: {
+ defaultMachine: "small-1x",
+ machines: {
+ "small-1x": {
+ name: "small-1x" as const,
+ cpu: 0.5,
+ memory: 0.5,
+ centsPerMs: 0.0001,
+ },
+ },
+ baseCostInCents: 0.0001,
+ },
+ //set this so we have to requeue the runs in two batches
+ queueRunsWaitingForWorkerBatchSize: 1,
+ tracer: trace.getTracer("test", "0.0.0"),
+ });
+
+ try {
+ const taskIdentifier = "test-task";
+
+ //trigger the run
+ const run = await engine.trigger(
+ {
+ number: 1,
+ friendlyId: "run_1234",
+ environment: authenticatedEnvironment,
+ taskIdentifier,
+ payload: "{}",
+ payloadType: "application/json",
+ context: {},
+ traceContext: {},
+ traceId: "t12345",
+ spanId: "s12345",
+ masterQueue: "main",
+ queue: "task/test-task",
+ isTest: false,
+ tags: [],
+ },
+ prisma
+ );
+
+ //trigger another run
+ const run2 = await engine.trigger(
+ {
+ number: 2,
+ friendlyId: "run_1235",
+ environment: authenticatedEnvironment,
+ taskIdentifier,
+ payload: "{}",
+ payloadType: "application/json",
+ context: {},
+ traceContext: {},
+ traceId: "t12346",
+ spanId: "s12346",
+ masterQueue: "main",
+ queue: "task/test-task",
+ isTest: false,
+ tags: [],
+ },
+ prisma
+ );
+
+ //should be queued
+ const executionDataR1 = await engine.getRunExecutionData({ runId: run.id });
+ const executionDataR2 = await engine.getRunExecutionData({ runId: run2.id });
+ assertNonNullable(executionDataR1);
+ assertNonNullable(executionDataR2);
+ expect(executionDataR1.snapshot.executionStatus).toBe("QUEUED");
+ expect(executionDataR2.snapshot.executionStatus).toBe("QUEUED");
+
+ await setupBackgroundWorker(engine, authenticatedEnvironment, ["test-task-other"]);
+
+ //dequeuing should fail
+ const dequeued = await engine.dequeueFromMasterQueue({
+ consumerId: "test_12345",
+ masterQueue: run.masterQueue,
+ maxRunCount: 10,
+ });
+ expect(dequeued.length).toBe(0);
+
+ //queue should be empty
+ const queueLength = await engine.runQueue.lengthOfQueue(
+ authenticatedEnvironment,
+ run.queue
+ );
+ expect(queueLength).toBe(0);
+
+ //check the execution data now
+ const executionData2R1 = await engine.getRunExecutionData({ runId: run.id });
+ const executionData2R2 = await engine.getRunExecutionData({ runId: run2.id });
+ assertNonNullable(executionData2R1);
+ assertNonNullable(executionData2R2);
+ expect(executionData2R1.snapshot.executionStatus).toBe("RUN_CREATED");
+ expect(executionData2R2.snapshot.executionStatus).toBe("RUN_CREATED");
+ expect(executionData2R1.run.status).toBe("PENDING_VERSION");
+ expect(executionData2R2.run.status).toBe("PENDING_VERSION");
+
+ //create background worker
+ const backgroundWorker = await setupBackgroundWorker(
+ engine,
+ authenticatedEnvironment,
+ taskIdentifier
+ );
+
+ //it's async so we wait
+ await setTimeout(500);
+
+ //should now be queued
+ const executionData3R1 = await engine.getRunExecutionData({ runId: run.id });
+ const executionData3R2 = await engine.getRunExecutionData({ runId: run2.id });
+ assertNonNullable(executionData3R1);
+ assertNonNullable(executionData3R2);
+ expect(executionData3R1.snapshot.executionStatus).toBe("QUEUED");
+ expect(executionData3R2.snapshot.executionStatus).toBe("QUEUED");
+ expect(executionData3R1.run.status).toBe("PENDING");
+ expect(executionData3R2.run.status).toBe("PENDING");
+
+ //queue should be empty
+ const queueLength2 = await engine.runQueue.lengthOfQueue(
+ authenticatedEnvironment,
+ run.queue
+ );
+ expect(queueLength2).toBe(2);
+ } finally {
+ engine.quit();
+ }
+ }
+ );
+
+ containerTest(
+ "When a run is triggered but the queue hasn't been created yet",
+ async ({ prisma, redisOptions }) => {
+ //create environment
+ const authenticatedEnvironment = await setupAuthenticatedEnvironment(prisma, "PRODUCTION");
+
+ const engine = new RunEngine({
+ prisma,
+ worker: {
+ redis: redisOptions,
+ workers: 1,
+ tasksPerWorker: 10,
+ pollIntervalMs: 100,
+ },
+ queue: {
+ redis: redisOptions,
+ },
+ runLock: {
+ redis: redisOptions,
+ },
+ machines: {
+ defaultMachine: "small-1x",
+ machines: {
+ "small-1x": {
+ name: "small-1x" as const,
+ cpu: 0.5,
+ memory: 0.5,
+ centsPerMs: 0.0001,
+ },
+ },
+ baseCostInCents: 0.0001,
+ },
+ //set this so we have to requeue the runs in two batches
+ queueRunsWaitingForWorkerBatchSize: 1,
+ tracer: trace.getTracer("test", "0.0.0"),
+ });
+
+ try {
+ const taskIdentifier = "test-task";
+
+ await setupBackgroundWorker(engine, authenticatedEnvironment, taskIdentifier);
+
+ //trigger the run
+ const run = await engine.trigger(
+ {
+ number: 1,
+ friendlyId: "run_1234",
+ environment: authenticatedEnvironment,
+ taskIdentifier,
+ payload: "{}",
+ payloadType: "application/json",
+ context: {},
+ traceContext: {},
+ traceId: "t12345",
+ spanId: "s12345",
+ masterQueue: "main",
+ queue: "custom-queue",
+ isTest: false,
+ tags: [],
+ },
+ prisma
+ );
+
+ //trigger another run
+ const run2 = await engine.trigger(
+ {
+ number: 2,
+ friendlyId: "run_1235",
+ environment: authenticatedEnvironment,
+ taskIdentifier,
+ payload: "{}",
+ payloadType: "application/json",
+ context: {},
+ traceContext: {},
+ traceId: "t12346",
+ spanId: "s12346",
+ masterQueue: "main",
+ queue: "custom-queue-2",
+ isTest: false,
+ tags: [],
+ },
+ prisma
+ );
+
+ //should be queued
+ const executionDataR1 = await engine.getRunExecutionData({ runId: run.id });
+ const executionDataR2 = await engine.getRunExecutionData({ runId: run2.id });
+ assertNonNullable(executionDataR1);
+ assertNonNullable(executionDataR2);
+ expect(executionDataR1.snapshot.executionStatus).toBe("QUEUED");
+ expect(executionDataR2.snapshot.executionStatus).toBe("QUEUED");
+
+ //dequeuing should fail
+ const dequeued = await engine.dequeueFromMasterQueue({
+ consumerId: "test_12345",
+ masterQueue: run.masterQueue,
+ maxRunCount: 10,
+ });
+ expect(dequeued.length).toBe(0);
+
+ //queue should be empty
+ const queueLength = await engine.runQueue.lengthOfQueue(
+ authenticatedEnvironment,
+ run.queue
+ );
+ expect(queueLength).toBe(0);
+
+ //check the execution data now
+ const executionData2R1 = await engine.getRunExecutionData({ runId: run.id });
+ const executionData2R2 = await engine.getRunExecutionData({ runId: run2.id });
+ assertNonNullable(executionData2R1);
+ assertNonNullable(executionData2R2);
+ expect(executionData2R1.snapshot.executionStatus).toBe("RUN_CREATED");
+ expect(executionData2R2.snapshot.executionStatus).toBe("RUN_CREATED");
+ expect(executionData2R1.run.status).toBe("PENDING_VERSION");
+ expect(executionData2R2.run.status).toBe("PENDING_VERSION");
+
+ //create background worker
+ const backgroundWorker = await setupBackgroundWorker(
+ engine,
+ authenticatedEnvironment,
+ taskIdentifier,
+ undefined,
+ undefined,
+ {
+ customQueues: ["custom-queue", "custom-queue-2"],
+ }
+ );
+
+ //it's async so we wait
+ await setTimeout(500);
+
+ //should now be queued
+ const executionData3R1 = await engine.getRunExecutionData({ runId: run.id });
+ const executionData3R2 = await engine.getRunExecutionData({ runId: run2.id });
+ assertNonNullable(executionData3R1);
+ assertNonNullable(executionData3R2);
+ expect(executionData3R1.snapshot.executionStatus).toBe("QUEUED");
+ expect(executionData3R2.snapshot.executionStatus).toBe("QUEUED");
+ expect(executionData3R1.run.status).toBe("PENDING");
+ expect(executionData3R2.run.status).toBe("PENDING");
+
+ // custom-queue should have 1 run
+ const queueLength2 = await engine.runQueue.lengthOfQueue(
+ authenticatedEnvironment,
+ "custom-queue"
+ );
+ expect(queueLength2).toBe(1);
+
+ // custom-queue-2 should have 1 run
+ const queueLength3 = await engine.runQueue.lengthOfQueue(
+ authenticatedEnvironment,
+ "custom-queue-2"
+ );
+ expect(queueLength3).toBe(1);
+ } finally {
+ engine.quit();
+ }
+ }
+ );
+});
diff --git a/internal-packages/run-engine/src/engine/tests/priority.test.ts b/internal-packages/run-engine/src/engine/tests/priority.test.ts
index 2b62544f3a..779238d0cf 100644
--- a/internal-packages/run-engine/src/engine/tests/priority.test.ts
+++ b/internal-packages/run-engine/src/engine/tests/priority.test.ts
@@ -1,14 +1,11 @@
-import {
- containerTest,
- setupAuthenticatedEnvironment,
- setupBackgroundWorker,
-} from "@internal/testcontainers";
+import { containerTest } from "@internal/testcontainers";
import { trace } from "@internal/tracing";
import { generateFriendlyId } from "@trigger.dev/core/v3/isomorphic";
import { RunEngine } from "../index.js";
import { PrismaClientOrTransaction } from "@trigger.dev/database";
import { MinimalAuthenticatedEnvironment } from "../../shared/index.js";
import { setTimeout } from "timers/promises";
+import { setupAuthenticatedEnvironment, setupBackgroundWorker } from "./setup.js";
vi.setConfig({ testTimeout: 60_000 });
@@ -51,7 +48,7 @@ describe("RunEngine priority", () => {
//create background worker
const backgroundWorker = await setupBackgroundWorker(
- prisma,
+ engine,
authenticatedEnvironment,
taskIdentifier
);
@@ -129,7 +126,7 @@ async function triggerRuns({
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: `task/${taskIdentifier}`,
+ queue: `task/${taskIdentifier}`,
isTest: false,
tags: [],
priorityMs: priorities[i],
diff --git a/internal-packages/run-engine/src/engine/tests/releaseConcurrency.test.ts b/internal-packages/run-engine/src/engine/tests/releaseConcurrency.test.ts
index 27d8e07172..43560d60f8 100644
--- a/internal-packages/run-engine/src/engine/tests/releaseConcurrency.test.ts
+++ b/internal-packages/run-engine/src/engine/tests/releaseConcurrency.test.ts
@@ -1,12 +1,8 @@
-import {
- assertNonNullable,
- containerTest,
- setupAuthenticatedEnvironment,
- setupBackgroundWorker,
-} from "@internal/testcontainers";
+import { assertNonNullable, containerTest } from "@internal/testcontainers";
import { trace } from "@internal/tracing";
import { RunEngine } from "../index.js";
import { setTimeout } from "node:timers/promises";
+import { setupAuthenticatedEnvironment, setupBackgroundWorker } from "./setup.js";
vi.setConfig({ testTimeout: 60_000 });
@@ -52,7 +48,7 @@ describe("RunEngine Releasing Concurrency", () => {
});
const taskIdentifier = "test-task";
- await setupBackgroundWorker(prisma, authenticatedEnvironment, taskIdentifier);
+ await setupBackgroundWorker(engine, authenticatedEnvironment, taskIdentifier);
const run = await engine.trigger(
{
@@ -67,7 +63,7 @@ describe("RunEngine Releasing Concurrency", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: `task/${taskIdentifier}`,
+ queue: `task/${taskIdentifier}`,
isTest: false,
tags: [],
},
@@ -244,7 +240,7 @@ describe("RunEngine Releasing Concurrency", () => {
const taskIdentifier = "test-task";
await setupBackgroundWorker(
- prisma,
+ engine,
authenticatedEnvironment,
taskIdentifier,
undefined,
@@ -267,7 +263,7 @@ describe("RunEngine Releasing Concurrency", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: `task/${taskIdentifier}`,
+ queue: `task/${taskIdentifier}`,
isTest: false,
tags: [],
},
@@ -431,7 +427,7 @@ describe("RunEngine Releasing Concurrency", () => {
const taskIdentifier = "test-task";
await setupBackgroundWorker(
- prisma,
+ engine,
authenticatedEnvironment,
taskIdentifier,
undefined,
@@ -455,7 +451,7 @@ describe("RunEngine Releasing Concurrency", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: `task/${taskIdentifier}`,
+ queue: `task/${taskIdentifier}`,
isTest: false,
tags: [],
},
@@ -618,7 +614,7 @@ describe("RunEngine Releasing Concurrency", () => {
});
const taskIdentifier = "test-task";
- await setupBackgroundWorker(prisma, authenticatedEnvironment, taskIdentifier);
+ await setupBackgroundWorker(engine, authenticatedEnvironment, taskIdentifier);
const run = await engine.trigger(
{
@@ -633,7 +629,7 @@ describe("RunEngine Releasing Concurrency", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: `task/${taskIdentifier}`,
+ queue: `task/${taskIdentifier}`,
isTest: false,
tags: [],
},
@@ -780,7 +776,7 @@ describe("RunEngine Releasing Concurrency", () => {
});
const taskIdentifier = "test-task";
- await setupBackgroundWorker(prisma, authenticatedEnvironment, taskIdentifier);
+ await setupBackgroundWorker(engine, authenticatedEnvironment, taskIdentifier);
const run = await engine.trigger(
{
@@ -795,7 +791,7 @@ describe("RunEngine Releasing Concurrency", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: `task/${taskIdentifier}`,
+ queue: `task/${taskIdentifier}`,
isTest: false,
tags: [],
},
@@ -962,7 +958,7 @@ describe("RunEngine Releasing Concurrency", () => {
});
const taskIdentifier = "test-task";
- await setupBackgroundWorker(prisma, authenticatedEnvironment, taskIdentifier);
+ await setupBackgroundWorker(engine, authenticatedEnvironment, taskIdentifier);
const run = await engine.trigger(
{
@@ -977,7 +973,7 @@ describe("RunEngine Releasing Concurrency", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: `task/${taskIdentifier}`,
+ queue: `task/${taskIdentifier}`,
isTest: false,
tags: [],
},
diff --git a/internal-packages/testcontainers/src/setup.ts b/internal-packages/run-engine/src/engine/tests/setup.ts
similarity index 51%
rename from internal-packages/testcontainers/src/setup.ts
rename to internal-packages/run-engine/src/engine/tests/setup.ts
index b77663f062..be8b331dbe 100644
--- a/internal-packages/testcontainers/src/setup.ts
+++ b/internal-packages/run-engine/src/engine/tests/setup.ts
@@ -11,6 +11,7 @@ import {
RunEngineVersion,
RuntimeEnvironmentType,
} from "@trigger.dev/database";
+import { RunEngine } from "../index.js";
export type AuthenticatedEnvironment = Prisma.RuntimeEnvironmentGetPayload<{
include: { project: true; organization: true; orgMember: true };
@@ -65,23 +66,36 @@ export async function setupAuthenticatedEnvironment(
}
export async function setupBackgroundWorker(
- prisma: PrismaClient,
+ engine: RunEngine,
environment: AuthenticatedEnvironment,
taskIdentifier: string | string[],
machineConfig?: MachineConfig,
retryOptions?: RetryOptions,
queueOptions?: {
+ customQueues?: string[];
releaseConcurrencyOnWaitpoint?: boolean;
concurrencyLimit?: number | null;
}
) {
- const worker = await prisma.backgroundWorker.create({
+ const latestWorkers = await engine.prisma.backgroundWorker.findMany({
+ where: {
+ runtimeEnvironmentId: environment.id,
+ },
+ orderBy: {
+ createdAt: "desc",
+ },
+ take: 1,
+ });
+
+ const nextVersion = calculateNextBuildVersion(latestWorkers[0]?.version);
+
+ const worker = await engine.prisma.backgroundWorker.create({
data: {
friendlyId: generateFriendlyId("worker"),
contentHash: "hash",
projectId: environment.project.id,
runtimeEnvironmentId: environment.id,
- version: "20241015.1",
+ version: nextVersion,
metadata: {},
},
});
@@ -98,7 +112,7 @@ export async function setupBackgroundWorker(
maxTimeoutInMs: 100,
randomize: false,
};
- const task = await prisma.backgroundWorkerTask.create({
+ const task = await engine.prisma.backgroundWorkerTask.create({
data: {
friendlyId: generateFriendlyId("task"),
slug: identifier,
@@ -115,8 +129,14 @@ export async function setupBackgroundWorker(
tasks.push(task);
const queueName = sanitizeQueueName(`task/${identifier}`);
- const taskQueue = await prisma.taskQueue.create({
- data: {
+ const taskQueue = await engine.prisma.taskQueue.upsert({
+ where: {
+ runtimeEnvironmentId_name: {
+ name: queueName,
+ runtimeEnvironmentId: worker.runtimeEnvironmentId,
+ },
+ },
+ create: {
friendlyId: generateFriendlyId("queue"),
name: queueName,
concurrencyLimit:
@@ -126,21 +146,89 @@ export async function setupBackgroundWorker(
runtimeEnvironmentId: worker.runtimeEnvironmentId,
projectId: worker.projectId,
type: "VIRTUAL",
+ workers: {
+ connect: {
+ id: worker.id,
+ },
+ },
releaseConcurrencyOnWaitpoint:
typeof queueOptions?.releaseConcurrencyOnWaitpoint === "boolean"
? queueOptions.releaseConcurrencyOnWaitpoint
: undefined,
},
+ update: {
+ concurrencyLimit:
+ typeof queueOptions?.concurrencyLimit === "undefined"
+ ? 10
+ : queueOptions.concurrencyLimit,
+ workers: {
+ connect: {
+ id: worker.id,
+ },
+ },
+ },
+ });
+
+ if (typeof taskQueue.concurrencyLimit === "number") {
+ await engine.runQueue.updateQueueConcurrencyLimits(
+ environment,
+ queueName,
+ taskQueue.concurrencyLimit
+ );
+ } else {
+ await engine.runQueue.removeQueueConcurrencyLimits(environment, queueName);
+ }
+ }
+
+ for (const queueName of queueOptions?.customQueues ?? []) {
+ const taskQueue = await engine.prisma.taskQueue.upsert({
+ where: {
+ runtimeEnvironmentId_name: {
+ name: queueName,
+ runtimeEnvironmentId: worker.runtimeEnvironmentId,
+ },
+ },
+ create: {
+ friendlyId: generateFriendlyId("queue"),
+ name: queueName,
+ concurrencyLimit:
+ typeof queueOptions?.concurrencyLimit === "undefined"
+ ? 10
+ : queueOptions.concurrencyLimit,
+ runtimeEnvironmentId: worker.runtimeEnvironmentId,
+ projectId: worker.projectId,
+ type: "VIRTUAL",
+ workers: {
+ connect: {
+ id: worker.id,
+ },
+ },
+ releaseConcurrencyOnWaitpoint:
+ typeof queueOptions?.releaseConcurrencyOnWaitpoint === "boolean"
+ ? queueOptions.releaseConcurrencyOnWaitpoint
+ : undefined,
+ },
+ update: {
+ concurrencyLimit:
+ typeof queueOptions?.concurrencyLimit === "undefined"
+ ? 10
+ : queueOptions.concurrencyLimit,
+ workers: {
+ connect: {
+ id: worker.id,
+ },
+ },
+ },
});
}
if (environment.type !== "DEVELOPMENT") {
- const deployment = await prisma.workerDeployment.create({
+ const deployment = await engine.prisma.workerDeployment.create({
data: {
friendlyId: generateFriendlyId("deployment"),
contentHash: worker.contentHash,
version: worker.version,
- shortCode: "short_code",
+ shortCode: `short_code_${worker.version}`,
imageReference: `trigger/${environment.project.externalRef}:${worker.version}.${environment.slug}`,
status: "DEPLOYED",
projectId: environment.project.id,
@@ -149,14 +237,26 @@ export async function setupBackgroundWorker(
},
});
- const promotion = await prisma.workerDeploymentPromotion.create({
- data: {
+ const promotion = await engine.prisma.workerDeploymentPromotion.upsert({
+ where: {
+ environmentId_label: {
+ environmentId: deployment.environmentId,
+ label: CURRENT_DEPLOYMENT_LABEL,
+ },
+ },
+ create: {
+ deploymentId: deployment.id,
+ environmentId: deployment.environmentId,
label: CURRENT_DEPLOYMENT_LABEL,
+ },
+ update: {
deploymentId: deployment.id,
- environmentId: environment.id,
},
});
+ //now we deploy the background worker
+ await engine.scheduleEnqueueRunsForBackgroundWorker(worker.id);
+
return {
worker,
tasks,
@@ -170,3 +270,24 @@ export async function setupBackgroundWorker(
tasks,
};
}
+
+function calculateNextBuildVersion(latestVersion?: string | null): string {
+ const today = new Date();
+ const year = today.getFullYear();
+ const month = today.getMonth() + 1;
+ const day = today.getDate();
+ const todayFormatted = `${year}${month < 10 ? "0" : ""}${month}${day < 10 ? "0" : ""}${day}`;
+
+ if (!latestVersion) {
+ return `${todayFormatted}.1`;
+ }
+
+ const [date, buildNumber] = latestVersion.split(".");
+
+ if (date === todayFormatted) {
+ const nextBuildNumber = parseInt(buildNumber, 10) + 1;
+ return `${date}.${nextBuildNumber}`;
+ }
+
+ return `${todayFormatted}.1`;
+}
diff --git a/internal-packages/run-engine/src/engine/tests/trigger.test.ts b/internal-packages/run-engine/src/engine/tests/trigger.test.ts
index ba795c3348..2736b27b0a 100644
--- a/internal-packages/run-engine/src/engine/tests/trigger.test.ts
+++ b/internal-packages/run-engine/src/engine/tests/trigger.test.ts
@@ -1,13 +1,9 @@
-import {
- assertNonNullable,
- containerTest,
- setupAuthenticatedEnvironment,
- setupBackgroundWorker,
-} from "@internal/testcontainers";
+import { assertNonNullable, containerTest } from "@internal/testcontainers";
import { trace } from "@internal/tracing";
import { expect } from "vitest";
import { EventBusEventArgs } from "../eventBus.js";
import { RunEngine } from "../index.js";
+import { setupAuthenticatedEnvironment, setupBackgroundWorker } from "./setup.js";
vi.setConfig({ testTimeout: 60_000 });
@@ -50,7 +46,7 @@ describe("RunEngine trigger()", () => {
//create background worker
const backgroundWorker = await setupBackgroundWorker(
- prisma,
+ engine,
authenticatedEnvironment,
taskIdentifier
);
@@ -69,7 +65,7 @@ describe("RunEngine trigger()", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
},
@@ -244,7 +240,7 @@ describe("RunEngine trigger()", () => {
//create background worker
const backgroundWorker = await setupBackgroundWorker(
- prisma,
+ engine,
authenticatedEnvironment,
taskIdentifier
);
@@ -263,7 +259,7 @@ describe("RunEngine trigger()", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
},
diff --git a/internal-packages/run-engine/src/engine/tests/triggerAndWait.test.ts b/internal-packages/run-engine/src/engine/tests/triggerAndWait.test.ts
index 7b24a6c27c..911b141622 100644
--- a/internal-packages/run-engine/src/engine/tests/triggerAndWait.test.ts
+++ b/internal-packages/run-engine/src/engine/tests/triggerAndWait.test.ts
@@ -1,13 +1,9 @@
-import {
- assertNonNullable,
- containerTest,
- setupAuthenticatedEnvironment,
- setupBackgroundWorker,
-} from "@internal/testcontainers";
+import { assertNonNullable, containerTest } from "@internal/testcontainers";
import { trace } from "@internal/tracing";
import { expect } from "vitest";
import { RunEngine } from "../index.js";
import { setTimeout } from "node:timers/promises";
+import { setupAuthenticatedEnvironment, setupBackgroundWorker } from "./setup.js";
vi.setConfig({ testTimeout: 60_000 });
@@ -50,7 +46,7 @@ describe("RunEngine triggerAndWait", () => {
const childTask = "child-task";
//create background worker
- await setupBackgroundWorker(prisma, authenticatedEnvironment, [parentTask, childTask]);
+ await setupBackgroundWorker(engine, authenticatedEnvironment, [parentTask, childTask]);
//trigger the run
const parentRun = await engine.trigger(
@@ -66,7 +62,7 @@ describe("RunEngine triggerAndWait", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: `task/${parentTask}`,
+ queue: `task/${parentTask}`,
isTest: false,
tags: [],
},
@@ -101,7 +97,7 @@ describe("RunEngine triggerAndWait", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: `task/${childTask}`,
+ queue: `task/${childTask}`,
isTest: false,
tags: [],
resumeParentOnCompletion: true,
@@ -238,7 +234,7 @@ describe("RunEngine triggerAndWait", () => {
const childTask = "child-task";
//create background worker
- await setupBackgroundWorker(prisma, authenticatedEnvironment, [parentTask, childTask]);
+ await setupBackgroundWorker(engine, authenticatedEnvironment, [parentTask, childTask]);
//trigger the run
const parentRun1 = await engine.trigger(
@@ -254,7 +250,7 @@ describe("RunEngine triggerAndWait", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: `task/${parentTask}`,
+ queue: `task/${parentTask}`,
isTest: false,
tags: [],
},
@@ -286,7 +282,7 @@ describe("RunEngine triggerAndWait", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: `task/${childTask}`,
+ queue: `task/${childTask}`,
isTest: false,
tags: [],
resumeParentOnCompletion: true,
@@ -343,7 +339,7 @@ describe("RunEngine triggerAndWait", () => {
traceId: "t12346",
spanId: "s12346",
masterQueue: "main",
- queueName: `task/${parentTask}`,
+ queue: `task/${parentTask}`,
isTest: false,
tags: [],
},
diff --git a/internal-packages/run-engine/src/engine/tests/ttl.test.ts b/internal-packages/run-engine/src/engine/tests/ttl.test.ts
index e46b93f449..2643f5cae7 100644
--- a/internal-packages/run-engine/src/engine/tests/ttl.test.ts
+++ b/internal-packages/run-engine/src/engine/tests/ttl.test.ts
@@ -1,14 +1,10 @@
-import {
- containerTest,
- setupAuthenticatedEnvironment,
- setupBackgroundWorker,
- assertNonNullable,
-} from "@internal/testcontainers";
+import { containerTest, assertNonNullable } from "@internal/testcontainers";
import { trace } from "@internal/tracing";
import { expect } from "vitest";
import { RunEngine } from "../index.js";
import { setTimeout } from "timers/promises";
import { EventBusEventArgs } from "../eventBus.js";
+import { setupAuthenticatedEnvironment, setupBackgroundWorker } from "./setup.js";
vi.setConfig({ testTimeout: 60_000 });
@@ -51,7 +47,7 @@ describe("RunEngine ttl", () => {
//create background worker
const backgroundWorker = await setupBackgroundWorker(
- prisma,
+ engine,
authenticatedEnvironment,
taskIdentifier
);
@@ -70,7 +66,7 @@ describe("RunEngine ttl", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
ttl: "1s",
diff --git a/internal-packages/run-engine/src/engine/tests/waitpoints.test.ts b/internal-packages/run-engine/src/engine/tests/waitpoints.test.ts
index 519212aedf..9fa70af020 100644
--- a/internal-packages/run-engine/src/engine/tests/waitpoints.test.ts
+++ b/internal-packages/run-engine/src/engine/tests/waitpoints.test.ts
@@ -1,15 +1,11 @@
-import {
- assertNonNullable,
- containerTest,
- setupAuthenticatedEnvironment,
- setupBackgroundWorker,
-} from "@internal/testcontainers";
+import { assertNonNullable, containerTest } from "@internal/testcontainers";
import { trace } from "@internal/tracing";
import { expect } from "vitest";
import { RunEngine } from "../index.js";
import { setTimeout } from "node:timers/promises";
import { EventBusEventArgs } from "../eventBus.js";
import { isWaitpointOutputTimeout } from "@trigger.dev/core/v3";
+import { setupAuthenticatedEnvironment, setupBackgroundWorker } from "./setup.js";
vi.setConfig({ testTimeout: 60_000 });
@@ -51,7 +47,7 @@ describe("RunEngine Waitpoints", () => {
const taskIdentifier = "test-task";
//create background worker
- await setupBackgroundWorker(prisma, authenticatedEnvironment, taskIdentifier);
+ await setupBackgroundWorker(engine, authenticatedEnvironment, taskIdentifier);
//trigger the run
const run = await engine.trigger(
@@ -67,7 +63,7 @@ describe("RunEngine Waitpoints", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
},
@@ -166,7 +162,7 @@ describe("RunEngine Waitpoints", () => {
const taskIdentifier = "test-task";
//create background worker
- await setupBackgroundWorker(prisma, authenticatedEnvironment, taskIdentifier);
+ await setupBackgroundWorker(engine, authenticatedEnvironment, taskIdentifier);
//trigger the run
const run = await engine.trigger(
@@ -182,7 +178,7 @@ describe("RunEngine Waitpoints", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
},
@@ -308,7 +304,7 @@ describe("RunEngine Waitpoints", () => {
const taskIdentifier = "test-task";
//create background worker
- await setupBackgroundWorker(prisma, authenticatedEnvironment, taskIdentifier);
+ await setupBackgroundWorker(engine, authenticatedEnvironment, taskIdentifier);
//trigger the run
const run = await engine.trigger(
@@ -324,7 +320,7 @@ describe("RunEngine Waitpoints", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
},
@@ -446,7 +442,7 @@ describe("RunEngine Waitpoints", () => {
const taskIdentifier = "test-task";
//create background worker
- await setupBackgroundWorker(prisma, authenticatedEnvironment, taskIdentifier);
+ await setupBackgroundWorker(engine, authenticatedEnvironment, taskIdentifier);
//trigger the run
const run = await engine.trigger(
@@ -462,7 +458,7 @@ describe("RunEngine Waitpoints", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
},
@@ -563,7 +559,7 @@ describe("RunEngine Waitpoints", () => {
const taskIdentifier = "test-task";
//create background worker
- await setupBackgroundWorker(prisma, authenticatedEnvironment, taskIdentifier);
+ await setupBackgroundWorker(engine, authenticatedEnvironment, taskIdentifier);
//trigger the run
const run = await engine.trigger(
@@ -579,7 +575,7 @@ describe("RunEngine Waitpoints", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
},
@@ -712,7 +708,7 @@ describe("RunEngine Waitpoints", () => {
const taskIdentifier = "test-task";
//create background worker
- await setupBackgroundWorker(prisma, authenticatedEnvironment, taskIdentifier);
+ await setupBackgroundWorker(engine, authenticatedEnvironment, taskIdentifier);
//trigger the run
const run = await engine.trigger(
@@ -728,7 +724,7 @@ describe("RunEngine Waitpoints", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
},
@@ -860,7 +856,7 @@ describe("RunEngine Waitpoints", () => {
const taskIdentifier = "test-task";
//create background worker
- await setupBackgroundWorker(prisma, authenticatedEnvironment, taskIdentifier);
+ await setupBackgroundWorker(engine, authenticatedEnvironment, taskIdentifier);
//trigger the run
const run = await engine.trigger(
@@ -876,7 +872,7 @@ describe("RunEngine Waitpoints", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
},
@@ -1011,7 +1007,7 @@ describe("RunEngine Waitpoints", () => {
const taskIdentifier = "test-task";
//create background worker
- await setupBackgroundWorker(prisma, authenticatedEnvironment, taskIdentifier);
+ await setupBackgroundWorker(engine, authenticatedEnvironment, taskIdentifier);
//trigger the run
const run = await engine.trigger(
@@ -1027,7 +1023,7 @@ describe("RunEngine Waitpoints", () => {
traceId: "t12345",
spanId: "s12345",
masterQueue: "main",
- queueName: "task/test-task",
+ queue: "task/test-task",
isTest: false,
tags: [],
},
@@ -1170,10 +1166,18 @@ describe("RunEngine Waitpoints", () => {
try {
const taskIdentifier = "test-task";
- const queueName = "task/test-task-limited";
// Create background worker
- await setupBackgroundWorker(prisma, authenticatedEnvironment, taskIdentifier);
+ await setupBackgroundWorker(
+ engine,
+ authenticatedEnvironment,
+ taskIdentifier,
+ undefined,
+ undefined,
+ {
+ concurrencyLimit: 1,
+ }
+ );
// Create first run with queue concurrency limit of 1
const firstRun = await engine.trigger(
@@ -1189,10 +1193,9 @@ describe("RunEngine Waitpoints", () => {
traceId: "t12345-first",
spanId: "s12345-first",
masterQueue: "main",
- queueName,
+ queue: "task/test-task",
isTest: false,
tags: [],
- queue: { concurrencyLimit: 1 },
},
prisma
);
@@ -1244,10 +1247,9 @@ describe("RunEngine Waitpoints", () => {
traceId: "t12345-second",
spanId: "s12345-second",
masterQueue: "main",
- queueName,
+ queue: "task/test-task",
isTest: false,
tags: [],
- queue: { concurrencyLimit: 1 },
},
prisma
);
diff --git a/internal-packages/run-engine/src/engine/types.ts b/internal-packages/run-engine/src/engine/types.ts
index bfb57988a5..c4ad4942c3 100644
--- a/internal-packages/run-engine/src/engine/types.ts
+++ b/internal-packages/run-engine/src/engine/types.ts
@@ -80,8 +80,7 @@ export type TriggerParams = {
cliVersion?: string;
concurrencyKey?: string;
masterQueue?: string;
- queueName: string;
- queue?: QueueOptions;
+ queue: string;
isTest: boolean;
delayUntil?: Date;
queuedAt?: Date;
diff --git a/internal-packages/run-engine/src/engine/workerCatalog.ts b/internal-packages/run-engine/src/engine/workerCatalog.ts
index e4d945d654..92eddce19e 100644
--- a/internal-packages/run-engine/src/engine/workerCatalog.ts
+++ b/internal-packages/run-engine/src/engine/workerCatalog.ts
@@ -29,7 +29,7 @@ export const workerCatalog = {
}),
visibilityTimeoutMs: 5000,
},
- queueRunsWaitingForWorker: {
+ queueRunsPendingVersion: {
schema: z.object({
backgroundWorkerId: z.string(),
}),
diff --git a/internal-packages/run-engine/src/index.ts b/internal-packages/run-engine/src/index.ts
index 8d77c66a04..ff08ab0a51 100644
--- a/internal-packages/run-engine/src/index.ts
+++ b/internal-packages/run-engine/src/index.ts
@@ -1,3 +1,4 @@
export { RunEngine } from "./engine/index.js";
export { RunDuplicateIdempotencyKeyError } from "./engine/errors.js";
export type { EventBusEventArgs } from "./engine/eventBus.js";
+export type { AuthenticatedEnvironment } from "./shared/index.js";
diff --git a/internal-packages/run-engine/src/run-queue/tests/fairQueueSelectionStrategy.test.ts b/internal-packages/run-engine/src/run-queue/tests/fairQueueSelectionStrategy.test.ts
index 3230ba73a0..4f8f9178fe 100644
--- a/internal-packages/run-engine/src/run-queue/tests/fairQueueSelectionStrategy.test.ts
+++ b/internal-packages/run-engine/src/run-queue/tests/fairQueueSelectionStrategy.test.ts
@@ -211,8 +211,8 @@ describe("FairDequeuingStrategy", () => {
console.log("Second distribution took", distribute2Duration, "ms");
- // Make sure the second call is more than 6 times faster than the first
- expect(distribute2Duration).toBeLessThan(distribute1Duration / 6);
+ // Make sure the second call is more than 2 times faster than the first
+ expect(distribute2Duration).toBeLessThan(distribute1Duration / 2);
const startDistribute3 = performance.now();
diff --git a/internal-packages/run-engine/tsconfig.src.json b/internal-packages/run-engine/tsconfig.src.json
index 5617aa970c..6043e02ad2 100644
--- a/internal-packages/run-engine/tsconfig.src.json
+++ b/internal-packages/run-engine/tsconfig.src.json
@@ -14,6 +14,7 @@
"isolatedModules": true,
"preserveWatchOutput": true,
"skipLibCheck": true,
- "strict": true
+ "strict": true,
+ "customConditions": ["@triggerdotdev/source"]
}
}
diff --git a/internal-packages/run-engine/tsconfig.test.json b/internal-packages/run-engine/tsconfig.test.json
index d8c7d1c638..b68d234bd7 100644
--- a/internal-packages/run-engine/tsconfig.test.json
+++ b/internal-packages/run-engine/tsconfig.test.json
@@ -1,5 +1,5 @@
{
- "include": ["src/**/*.test.ts", "src/run-queue/tests/dequeueMessageFromMasterQueue.ts"],
+ "include": ["src/**/*.test.ts"],
"references": [{ "path": "./tsconfig.src.json" }],
"compilerOptions": {
"composite": true,
diff --git a/internal-packages/testcontainers/src/index.ts b/internal-packages/testcontainers/src/index.ts
index b21ba9b04e..3d99beb709 100644
--- a/internal-packages/testcontainers/src/index.ts
+++ b/internal-packages/testcontainers/src/index.ts
@@ -1,14 +1,13 @@
import { StartedPostgreSqlContainer } from "@testcontainers/postgresql";
import { StartedRedisContainer } from "@testcontainers/redis";
import { PrismaClient } from "@trigger.dev/database";
-import { Redis, RedisOptions } from "ioredis";
+import { RedisOptions } from "ioredis";
import { Network, type StartedNetwork } from "testcontainers";
import { test } from "vitest";
import { createElectricContainer, createPostgresContainer, createRedisContainer } from "./utils";
-export { StartedRedisContainer };
-export * from "./setup";
export { assertNonNullable } from "./utils";
+export { StartedRedisContainer };
type NetworkContext = { network: StartedNetwork };
@@ -37,8 +36,12 @@ const network = async ({}, use: Use) => {
try {
await use(network);
} finally {
+ try {
+ await network.stop();
+ } catch (error) {
+ console.warn("Network stop error (ignored):", error);
+ }
// Make sure to stop the network after use
- await network.stop();
}
};
diff --git a/package.json b/package.json
index 13698ce2e1..45f5d91bb6 100644
--- a/package.json
+++ b/package.json
@@ -25,7 +25,10 @@
"dev:docker": "docker-compose -p triggerdotdev-dev-docker -f docker/dev-compose.yml up -d",
"dev:docker:build": "docker-compose -p triggerdotdev-dev-docker -f docker/dev-compose.yml up -d --build",
"dev:docker:stop": "docker-compose -p triggerdotdev-dev-docker -f docker/dev-compose.yml stop",
- "test": "turbo run test",
+ "test": "turbo run test --concurrency=1 -- --run",
+ "test:webapp": "turbo run test --filter webapp -- --run",
+ "test:packages": "turbo run test --concurrency=1 --filter \"@trigger.dev/*\" -- --run",
+ "test:internal": "turbo run test --concurrency=1 --filter \"@internal/*\" -- --run",
"test:dev": "turbo run test:dev",
"start": "turbo run start",
"check-exports": "turbo run check-exports",
diff --git a/packages/cli-v3/e2e/README.md b/packages/cli-v3/e2e/README.md
index 7c9e3765b7..b761b7e1b9 100644
--- a/packages/cli-v3/e2e/README.md
+++ b/packages/cli-v3/e2e/README.md
@@ -216,3 +216,22 @@ This will test your fixture project, and generate outputs in the `packages/cli-v
```
> You might expect a specific error for a specific test, so use those configuration option at your discretion.
+
+## Updating the SDK in the fixtures
+
+The `@trigger.dev/sdk` package is installed in the fixtures as a real dependency (not from the monorepo).
+
+To update it, you'll need to update the version in the `package.json` file, and then run the following commands:
+
+> NOTE: Some fixtures don't support all the package managers, like the monorepo-react-email only supports yarn and pnpm.
+
+```sh
+cd packages/cli-v3/e2e/fixtures/
+rm -rf **/node_modules
+corepack use pnpm@8.15.5
+rm -rf **/node_modules
+npm install
+rm -rf **/node_modules
+corepack use yarn@4.2.2
+rm -rf **/node_modules
+```
diff --git a/packages/cli-v3/e2e/fixtures.ts b/packages/cli-v3/e2e/fixtures.ts
index ce694b7553..44409230f0 100644
--- a/packages/cli-v3/e2e/fixtures.ts
+++ b/packages/cli-v3/e2e/fixtures.ts
@@ -10,7 +10,7 @@ export interface TestCaseRun {
task: {
id: string;
filePath: string;
- exportName: string;
+ exportName?: string;
};
payload: string;
payloadType?: string;
@@ -59,7 +59,6 @@ export const fixturesConfig: TestCase[] = [
{
id: "helloWorld",
filePath: "src/trigger/helloWorld.ts",
- exportName: "helloWorld",
},
],
},
@@ -93,13 +92,12 @@ export const fixturesConfig: TestCase[] = [
{
id: "ai",
filePath: "src/trigger/ai.ts",
- exportName: "aiTask",
},
],
},
runs: [
{
- task: { id: "ai", filePath: "src/trigger/ai.ts", exportName: "aiTask" },
+ task: { id: "ai", filePath: "src/trigger/ai.ts" },
payload: '{"prompt":"be funny"}',
result: { ok: true, durationMs: 1 },
},
@@ -126,17 +124,12 @@ export const fixturesConfig: TestCase[] = [
{
id: "decoratorsTask",
filePath: "src/trigger/decorators.ts",
- exportName: "decoratorsTask",
},
],
},
runs: [
{
- task: {
- id: "decoratorsTask",
- filePath: "src/trigger/decorators.ts",
- exportName: "decoratorsTask",
- },
+ task: { id: "decoratorsTask", filePath: "src/trigger/decorators.ts" },
payload: "{}",
result: { ok: true, durationMs: 1 },
},
@@ -162,13 +155,12 @@ export const fixturesConfig: TestCase[] = [
{
id: "react-email",
filePath: "src/reactEmail.tsx",
- exportName: "reactEmail",
},
],
},
runs: [
{
- task: { id: "react-email", filePath: "src/reactEmail.tsx", exportName: "reactEmail" },
+ task: { id: "react-email", filePath: "src/reactEmail.tsx" },
payload: "{}",
result: {
ok: true,
@@ -200,13 +192,12 @@ export const fixturesConfig: TestCase[] = [
{
id: "helloWorld",
filePath: "src/trigger/helloWorld.ts",
- exportName: "helloWorld",
},
],
},
runs: [
{
- task: { id: "helloWorld", filePath: "src/trigger/helloWorld.ts", exportName: "helloWorld" },
+ task: { id: "helloWorld", filePath: "src/trigger/helloWorld.ts" },
payload: "{}",
result: { ok: true, durationMs: 1 },
},
diff --git a/packages/cli-v3/e2e/fixtures/emit-decorator-metadata/package-lock.json b/packages/cli-v3/e2e/fixtures/emit-decorator-metadata/package-lock.json
index 305e9ce4a8..f35a67c560 100644
--- a/packages/cli-v3/e2e/fixtures/emit-decorator-metadata/package-lock.json
+++ b/packages/cli-v3/e2e/fixtures/emit-decorator-metadata/package-lock.json
@@ -9,11 +9,11 @@
"packages/*"
],
"dependencies": {
- "@trigger.dev/sdk": "0.0.0-prerelease-20250116195421",
+ "@trigger.dev/sdk": "0.0.0-prerelease-20250321122618",
"reflect-metadata": "0.2.2"
},
"devDependencies": {
- "@trigger.dev/build": "0.0.0-prerelease-20250116195421",
+ "@trigger.dev/build": "0.0.0-prerelease-20250321122618",
"@types/node": "22.5.4",
"typescript": "5.5.4"
},
@@ -22,6 +22,11 @@
"yarn": "4.2.2"
}
},
+ "node_modules/@bugsnag/cuid": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/@bugsnag/cuid/-/cuid-3.2.1.tgz",
+ "integrity": "sha512-zpvN8xQ5rdRWakMd/BcVkdn2F8HKlDSbM3l7duueK590WmI1T0ObTLc1V/1e55r14WNjPd5AJTYX4yPEAFVi+Q=="
+ },
"node_modules/@electric-sql/client": {
"version": "1.0.0-beta.1",
"resolved": "https://registry.npmjs.org/@electric-sql/client/-/client-1.0.0-beta.1.tgz",
@@ -39,9 +44,9 @@
}
},
"node_modules/@grpc/grpc-js": {
- "version": "1.12.5",
- "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.12.5.tgz",
- "integrity": "sha512-d3iiHxdpg5+ZcJ6jnDSOT8Z0O0VMVGy34jAnYLUX8yd36b1qn8f1TwOA/Lc7TsOh03IkPJ38eGI5qD2EjNkoEA==",
+ "version": "1.13.0",
+ "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.13.0.tgz",
+ "integrity": "sha512-pMuxInZjUnUkgMT2QLZclRqwk2ykJbIU05aZgPgJYXEpN9+2I7z7aNwcjWZSycRPl232FfhPszyBFJyOxTHNog==",
"dependencies": {
"@grpc/proto-loader": "^0.7.13",
"@js-sdsl/ordered-map": "^4.4.2"
@@ -112,11 +117,11 @@
}
},
"node_modules/@opentelemetry/core": {
- "version": "1.25.1",
- "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
- "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "version": "1.30.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.30.1.tgz",
+ "integrity": "sha512-OOCM2C/QIURhJMuKaekP3TRBxBKxG/TWWA0TL2J6nXUtDnuCtccy49LUJF8xPFXMX+0LMcxFpCo8M9cGY1W6rQ==",
"dependencies": {
- "@opentelemetry/semantic-conventions": "1.25.1"
+ "@opentelemetry/semantic-conventions": "1.28.0"
},
"engines": {
"node": ">=14"
@@ -125,6 +130,14 @@
"@opentelemetry/api": ">=1.0.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/core/node_modules/@opentelemetry/semantic-conventions": {
+ "version": "1.28.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.28.0.tgz",
+ "integrity": "sha512-lp4qAiMTD4sNWW4DbKLBkfiMZ4jbAboJIGOQr5DvciMRI494OapieI9qiODpOt0XBr1LjIDy1xAGAnVs5supTA==",
+ "engines": {
+ "node": ">=14"
+ }
+ },
"node_modules/@opentelemetry/exporter-logs-otlp-http": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/exporter-logs-otlp-http/-/exporter-logs-otlp-http-0.52.1.tgz",
@@ -143,6 +156,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/exporter-logs-otlp-http/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/exporter-trace-otlp-grpc": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-grpc/-/exporter-trace-otlp-grpc-0.52.1.tgz",
@@ -162,6 +189,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/exporter-trace-otlp-grpc/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/exporter-trace-otlp-http": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.52.1.tgz",
@@ -180,6 +221,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/exporter-trace-otlp-http/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/exporter-trace-otlp-proto": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-proto/-/exporter-trace-otlp-proto-0.52.1.tgz",
@@ -198,6 +253,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/exporter-trace-otlp-proto/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/exporter-zipkin": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/exporter-zipkin/-/exporter-zipkin-1.25.1.tgz",
@@ -215,6 +284,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/exporter-zipkin/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/instrumentation": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.52.1.tgz",
@@ -249,6 +332,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/otlp-exporter-base/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/otlp-grpc-exporter-base": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/otlp-grpc-exporter-base/-/otlp-grpc-exporter-base-0.52.1.tgz",
@@ -266,6 +363,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/otlp-grpc-exporter-base/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/otlp-transformer": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/otlp-transformer/-/otlp-transformer-0.52.1.tgz",
@@ -286,6 +397,20 @@
"@opentelemetry/api": ">=1.3.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/propagator-b3": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/propagator-b3/-/propagator-b3-1.25.1.tgz",
@@ -300,6 +425,20 @@
"@opentelemetry/api": ">=1.0.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/propagator-b3/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/propagator-jaeger": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/propagator-jaeger/-/propagator-jaeger-1.25.1.tgz",
@@ -314,6 +453,20 @@
"@opentelemetry/api": ">=1.0.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/propagator-jaeger/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/resources": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.25.1.tgz",
@@ -329,6 +482,20 @@
"@opentelemetry/api": ">=1.0.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/resources/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/sdk-logs": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/sdk-logs/-/sdk-logs-0.52.1.tgz",
@@ -345,6 +512,20 @@
"@opentelemetry/api": ">=1.4.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/sdk-logs/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/sdk-metrics": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.25.1.tgz",
@@ -361,6 +542,20 @@
"@opentelemetry/api": ">=1.3.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/sdk-metrics/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/sdk-node": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/sdk-node/-/sdk-node-0.52.1.tgz",
@@ -387,6 +582,20 @@
"@opentelemetry/api": ">=1.3.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/sdk-node/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/sdk-trace-base": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.25.1.tgz",
@@ -403,6 +612,20 @@
"@opentelemetry/api": ">=1.0.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/sdk-trace-base/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/sdk-trace-node": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-node/-/sdk-trace-node-1.25.1.tgz",
@@ -422,6 +645,20 @@
"@opentelemetry/api": ">=1.0.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/sdk-trace-node/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/semantic-conventions": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.25.1.tgz",
@@ -485,9 +722,9 @@
"integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw=="
},
"node_modules/@rollup/rollup-darwin-arm64": {
- "version": "4.30.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.30.1.tgz",
- "integrity": "sha512-r7FQIXD7gB0WJ5mokTUgUWPl0eYIH0wnxqeSAhuIwvnnpjdVB8cRRClyKLQr7lgzjctkbp5KmswWszlwYln03Q==",
+ "version": "4.36.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.36.0.tgz",
+ "integrity": "sha512-JQ1Jk5G4bGrD4pWJQzWsD8I1n1mgPXq33+/vP4sk8j/z/C2siRuxZtaUA7yMTf71TCZTZl/4e1bfzwUmFb3+rw==",
"cpu": [
"arm64"
],
@@ -502,12 +739,12 @@
"integrity": "sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA=="
},
"node_modules/@trigger.dev/build": {
- "version": "0.0.0-prerelease-20250116195421",
- "resolved": "https://registry.npmjs.org/@trigger.dev/build/-/build-0.0.0-prerelease-20250116195421.tgz",
- "integrity": "sha512-G9Xjzgxc9lhutVCwE7VwGE0RXpGNhATZYB6svbic6cQX9BhKKybRvIsiTjw39Rx4Y1XU0KHkE8IuGE0eIBDZLg==",
+ "version": "0.0.0-prerelease-20250321122618",
+ "resolved": "https://registry.npmjs.org/@trigger.dev/build/-/build-0.0.0-prerelease-20250321122618.tgz",
+ "integrity": "sha512-WkA/9gzsB8cAiSYHH/yo4mrkior0U7xzE2GfvkkxAlNqCJrCaMS2sVsel6MI87RiESJjallqemzBxGs9xgZPYg==",
"dev": true,
"dependencies": {
- "@trigger.dev/core": "0.0.0-prerelease-20250116195421",
+ "@trigger.dev/core": "0.0.0-prerelease-20250321122618",
"pkg-types": "^1.1.3",
"tinyglobby": "^0.2.2",
"tsconfck": "3.1.3"
@@ -517,15 +754,17 @@
}
},
"node_modules/@trigger.dev/core": {
- "version": "0.0.0-prerelease-20250116195421",
- "resolved": "https://registry.npmjs.org/@trigger.dev/core/-/core-0.0.0-prerelease-20250116195421.tgz",
- "integrity": "sha512-bxZ5vq3txcUxQln8BZSb2No7gHPG/qTSeo5uq6W2+OQKoVN+c5pmVTYQQa6Fwfd2AXhpkU9ovdM3V1IoEddOtA==",
+ "version": "0.0.0-prerelease-20250321122618",
+ "resolved": "https://registry.npmjs.org/@trigger.dev/core/-/core-0.0.0-prerelease-20250321122618.tgz",
+ "integrity": "sha512-0hSMKqvM39V1A8YjZxYivw109ZrGk22Pfa8ydQ29nCubdeTMe6for+AYzj89BIOnEGeEZ24Hzg2uVc5Av9BUHg==",
"dependencies": {
+ "@bugsnag/cuid": "^3.1.1",
"@electric-sql/client": "1.0.0-beta.1",
"@google-cloud/precise-date": "^4.0.0",
"@jsonhero/path": "^1.0.21",
"@opentelemetry/api": "1.9.0",
"@opentelemetry/api-logs": "0.52.1",
+ "@opentelemetry/core": "^1.30.1",
"@opentelemetry/exporter-logs-otlp-http": "0.52.1",
"@opentelemetry/exporter-trace-otlp-http": "0.52.1",
"@opentelemetry/instrumentation": "0.52.1",
@@ -536,13 +775,16 @@
"@opentelemetry/sdk-trace-node": "1.25.1",
"@opentelemetry/semantic-conventions": "1.25.1",
"dequal": "^2.0.3",
+ "eventsource": "^3.0.5",
"eventsource-parser": "^3.0.0",
"execa": "^8.0.1",
"humanize-duration": "^3.27.3",
"jose": "^5.4.0",
"nanoid": "^3.3.4",
+ "socket.io": "4.7.4",
"socket.io-client": "4.7.5",
"superjson": "^2.2.1",
+ "tinyexec": "^0.3.2",
"zod": "3.23.8",
"zod-error": "1.5.0",
"zod-validation-error": "^1.5.0"
@@ -560,14 +802,14 @@
}
},
"node_modules/@trigger.dev/sdk": {
- "version": "0.0.0-prerelease-20250116195421",
- "resolved": "https://registry.npmjs.org/@trigger.dev/sdk/-/sdk-0.0.0-prerelease-20250116195421.tgz",
- "integrity": "sha512-/Kw+q/mDulGgiSHR9L3nldGOWH72AQAys9zuoBO72JjVfipKI1R8jjqQHhZjWqolMYqgg9XaJr9lQM8sV5lWwQ==",
+ "version": "0.0.0-prerelease-20250321122618",
+ "resolved": "https://registry.npmjs.org/@trigger.dev/sdk/-/sdk-0.0.0-prerelease-20250321122618.tgz",
+ "integrity": "sha512-/DOWqGdTxkeUY3WIJ/lPS8vC9VwitQiB+ONHCR5L1xBovHVaCyj3zMn/dWPsM+Wtz2wVZAPZ45pmHqvJEX3qLw==",
"dependencies": {
"@opentelemetry/api": "1.9.0",
"@opentelemetry/api-logs": "0.52.1",
"@opentelemetry/semantic-conventions": "1.25.1",
- "@trigger.dev/core": "0.0.0-prerelease-20250116195421",
+ "@trigger.dev/core": "0.0.0-prerelease-20250321122618",
"chalk": "^5.2.0",
"cronstrue": "^2.21.0",
"debug": "^4.3.4",
@@ -575,6 +817,7 @@
"slug": "^6.0.0",
"terminal-link": "^3.0.0",
"ulid": "^2.3.0",
+ "uncrypto": "^0.1.3",
"uuid": "^9.0.0",
"ws": "^8.11.0"
},
@@ -585,6 +828,19 @@
"zod": "^3.0.0"
}
},
+ "node_modules/@types/cookie": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz",
+ "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q=="
+ },
+ "node_modules/@types/cors": {
+ "version": "2.8.17",
+ "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.17.tgz",
+ "integrity": "sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==",
+ "dependencies": {
+ "@types/node": "*"
+ }
+ },
"node_modules/@types/node": {
"version": "22.5.4",
"resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.4.tgz",
@@ -598,10 +854,22 @@
"resolved": "https://registry.npmjs.org/@types/shimmer/-/shimmer-1.2.0.tgz",
"integrity": "sha512-UE7oxhQLLd9gub6JKIAhDq06T0F6FnztwMNRvYgjeQSBeMc1ZG/tA47EwfduvkuQS8apbkM/lpLpWsaCeYsXVg=="
},
+ "node_modules/accepts": {
+ "version": "1.3.8",
+ "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz",
+ "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==",
+ "dependencies": {
+ "mime-types": "~2.1.34",
+ "negotiator": "0.6.3"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
"node_modules/acorn": {
- "version": "8.12.1",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz",
- "integrity": "sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==",
+ "version": "8.14.1",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz",
+ "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==",
"bin": {
"acorn": "bin/acorn"
},
@@ -639,6 +907,14 @@
"url": "https://github.com/chalk/ansi-styles?sponsor=1"
}
},
+ "node_modules/base64id": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz",
+ "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==",
+ "engines": {
+ "node": "^4.5.0 || >= 5.9"
+ }
+ },
"node_modules/chalk": {
"version": "5.3.0",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz",
@@ -651,9 +927,9 @@
}
},
"node_modules/cjs-module-lexer": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.1.tgz",
- "integrity": "sha512-cuSVIHi9/9E/+821Qjdvngor+xpnlwnuwIyZOaLmHBVdXL+gP+I6QQB9VkO7RI77YIcTV+S1W9AreJ5eN63JBA=="
+ "version": "1.4.3",
+ "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.3.tgz",
+ "integrity": "sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q=="
},
"node_modules/cliui": {
"version": "8.0.1",
@@ -690,6 +966,14 @@
"integrity": "sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==",
"dev": true
},
+ "node_modules/cookie": {
+ "version": "0.4.2",
+ "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz",
+ "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
"node_modules/copy-anything": {
"version": "3.0.5",
"resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-3.0.5.tgz",
@@ -704,6 +988,18 @@
"url": "https://github.com/sponsors/mesqueeb"
}
},
+ "node_modules/cors": {
+ "version": "2.8.5",
+ "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz",
+ "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==",
+ "dependencies": {
+ "object-assign": "^4",
+ "vary": "^1"
+ },
+ "engines": {
+ "node": ">= 0.10"
+ }
+ },
"node_modules/cronstrue": {
"version": "2.50.0",
"resolved": "https://registry.npmjs.org/cronstrue/-/cronstrue-2.50.0.tgz",
@@ -754,6 +1050,26 @@
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
"integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
},
+ "node_modules/engine.io": {
+ "version": "6.5.5",
+ "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.5.5.tgz",
+ "integrity": "sha512-C5Pn8Wk+1vKBoHghJODM63yk8MvrO9EWZUfkAt5HAqIgPE4/8FF0PEGHXtEd40l223+cE5ABWuPzm38PHFXfMA==",
+ "dependencies": {
+ "@types/cookie": "^0.4.1",
+ "@types/cors": "^2.8.12",
+ "@types/node": ">=10.0.0",
+ "accepts": "~1.3.4",
+ "base64id": "2.0.0",
+ "cookie": "~0.4.1",
+ "cors": "~2.8.5",
+ "debug": "~4.3.1",
+ "engine.io-parser": "~5.2.1",
+ "ws": "~8.17.1"
+ },
+ "engines": {
+ "node": ">=10.2.0"
+ }
+ },
"node_modules/engine.io-client": {
"version": "6.5.4",
"resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.5.4.tgz",
@@ -810,6 +1126,42 @@
"node": ">=10.0.0"
}
},
+ "node_modules/engine.io/node_modules/debug": {
+ "version": "4.3.7",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
+ "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==",
+ "dependencies": {
+ "ms": "^2.1.3"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/engine.io/node_modules/ws": {
+ "version": "8.17.1",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz",
+ "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==",
+ "engines": {
+ "node": ">=10.0.0"
+ },
+ "peerDependencies": {
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": ">=5.0.2"
+ },
+ "peerDependenciesMeta": {
+ "bufferutil": {
+ "optional": true
+ },
+ "utf-8-validate": {
+ "optional": true
+ }
+ }
+ },
"node_modules/escalade": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz",
@@ -818,6 +1170,17 @@
"node": ">=6"
}
},
+ "node_modules/eventsource": {
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-3.0.5.tgz",
+ "integrity": "sha512-LT/5J605bx5SNyE+ITBDiM3FxffBiq9un7Vx0EwMDM3vg8sWKx/tO2zC+LMqZ+smAM0F2hblaDZUVZF0te2pSw==",
+ "dependencies": {
+ "eventsource-parser": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=18.0.0"
+ }
+ },
"node_modules/eventsource-parser": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/eventsource-parser/-/eventsource-parser-3.0.0.tgz",
@@ -932,11 +1295,11 @@
"integrity": "sha512-inh5wue5XdfObhu/IGEMiA1nUXigSGcaKNemcbLRKa7jXYGDZXr3LoT9pTIzq2hPEbld7w/qv9h+ikWGz8fL1g=="
},
"node_modules/import-in-the-middle": {
- "version": "1.12.0",
- "resolved": "https://registry.npmjs.org/import-in-the-middle/-/import-in-the-middle-1.12.0.tgz",
- "integrity": "sha512-yAgSE7GmtRcu4ZUSFX/4v69UGXwugFFSdIQJ14LHPOPPQrWv8Y7O9PHsw8Ovk7bKCLe4sjXMbZFqGFcLHpZ89w==",
+ "version": "1.13.1",
+ "resolved": "https://registry.npmjs.org/import-in-the-middle/-/import-in-the-middle-1.13.1.tgz",
+ "integrity": "sha512-k2V9wNm9B+ysuelDTHjI9d5KPc4l8zAZTGqj+pcynvWkypZd857ryzN8jNC7Pg2YZXNMJcHRPpaDyCBbNyVRpA==",
"dependencies": {
- "acorn": "^8.8.2",
+ "acorn": "^8.14.0",
"acorn-import-attributes": "^1.9.5",
"cjs-module-lexer": "^1.2.2",
"module-details-from-path": "^1.0.3"
@@ -992,9 +1355,9 @@
"integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw=="
},
"node_modules/jose": {
- "version": "5.9.6",
- "resolved": "https://registry.npmjs.org/jose/-/jose-5.9.6.tgz",
- "integrity": "sha512-AMlnetc9+CV9asI19zHmrgS/WYsWUwCn2R7RzlbJWD7F9eWYUTGyBmU9o6PxngtLGOiDGPRu+Uc4fhKzbpteZQ==",
+ "version": "5.10.0",
+ "resolved": "https://registry.npmjs.org/jose/-/jose-5.10.0.tgz",
+ "integrity": "sha512-s+3Al/p9g32Iq+oqXxkW//7jk2Vig6FF1CFqzVXoTUXt2qz89YWbL+OwS17NFYEvxC35n0FKeGO2LGYSxeM2Gg==",
"funding": {
"url": "https://github.com/sponsors/panva"
}
@@ -1010,15 +1373,34 @@
"integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ=="
},
"node_modules/long": {
- "version": "5.2.4",
- "resolved": "https://registry.npmjs.org/long/-/long-5.2.4.tgz",
- "integrity": "sha512-qtzLbJE8hq7VabR3mISmVGtoXP8KGc2Z/AT8OuqlYD7JTR3oqrgwdjnk07wpj1twXxYmgDXgoKVWUG/fReSzHg=="
+ "version": "5.3.1",
+ "resolved": "https://registry.npmjs.org/long/-/long-5.3.1.tgz",
+ "integrity": "sha512-ka87Jz3gcx/I7Hal94xaN2tZEOPoUOEVftkQqZx2EeQRN7LGdfLlI3FvZ+7WDplm+vK2Urx9ULrvSowtdCieng=="
},
"node_modules/merge-stream": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
"integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w=="
},
+ "node_modules/mime-db": {
+ "version": "1.52.0",
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
+ "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/mime-types": {
+ "version": "2.1.35",
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
+ "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
+ "dependencies": {
+ "mime-db": "1.52.0"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
"node_modules/mimic-fn": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz",
@@ -1058,9 +1440,9 @@
"integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
},
"node_modules/nanoid": {
- "version": "3.3.8",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz",
- "integrity": "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==",
+ "version": "3.3.11",
+ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz",
+ "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==",
"funding": [
{
"type": "github",
@@ -1074,6 +1456,14 @@
"node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
}
},
+ "node_modules/negotiator": {
+ "version": "0.6.3",
+ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
+ "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
"node_modules/npm-run-path": {
"version": "5.3.0",
"resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz",
@@ -1099,6 +1489,14 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
+ "node_modules/object-assign": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
+ "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
"node_modules/onetime": {
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz",
@@ -1192,9 +1590,9 @@
}
},
"node_modules/require-in-the-middle": {
- "version": "7.4.0",
- "resolved": "https://registry.npmjs.org/require-in-the-middle/-/require-in-the-middle-7.4.0.tgz",
- "integrity": "sha512-X34iHADNbNDfr6OTStIAHWSAvvKQRYgLO6duASaVf7J2VA3lvmNYboAHOuLC2huav1IwgZJtyEcJCKVzFxOSMQ==",
+ "version": "7.5.2",
+ "resolved": "https://registry.npmjs.org/require-in-the-middle/-/require-in-the-middle-7.5.2.tgz",
+ "integrity": "sha512-gAZ+kLqBdHarXB64XpAe2VCjB7rIRv+mU8tfRWziHRJ5umKsIHN2tLLv6EtMw7WCdP19S0ERVMldNvxYCHnhSQ==",
"dependencies": {
"debug": "^4.3.5",
"module-details-from-path": "^1.0.3",
@@ -1232,9 +1630,9 @@
}
},
"node_modules/semver": {
- "version": "7.6.3",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
- "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
+ "version": "7.7.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz",
+ "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==",
"bin": {
"semver": "bin/semver.js"
},
@@ -1282,6 +1680,68 @@
"resolved": "https://registry.npmjs.org/slug/-/slug-6.1.0.tgz",
"integrity": "sha512-x6vLHCMasg4DR2LPiyFGI0gJJhywY6DTiGhCrOMzb3SOk/0JVLIaL4UhyFSHu04SD3uAavrKY/K3zZ3i6iRcgA=="
},
+ "node_modules/socket.io": {
+ "version": "4.7.4",
+ "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.7.4.tgz",
+ "integrity": "sha512-DcotgfP1Zg9iP/dH9zvAQcWrE0TtbMVwXmlV4T4mqsvY+gw+LqUGPfx2AoVyRk0FLME+GQhufDMyacFmw7ksqw==",
+ "dependencies": {
+ "accepts": "~1.3.4",
+ "base64id": "~2.0.0",
+ "cors": "~2.8.5",
+ "debug": "~4.3.2",
+ "engine.io": "~6.5.2",
+ "socket.io-adapter": "~2.5.2",
+ "socket.io-parser": "~4.2.4"
+ },
+ "engines": {
+ "node": ">=10.2.0"
+ }
+ },
+ "node_modules/socket.io-adapter": {
+ "version": "2.5.5",
+ "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.5.tgz",
+ "integrity": "sha512-eLDQas5dzPgOWCk9GuuJC2lBqItuhKI4uxGgo9aIV7MYbk2h9Q6uULEh8WBzThoI7l+qU9Ast9fVUmkqPP9wYg==",
+ "dependencies": {
+ "debug": "~4.3.4",
+ "ws": "~8.17.1"
+ }
+ },
+ "node_modules/socket.io-adapter/node_modules/debug": {
+ "version": "4.3.7",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
+ "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==",
+ "dependencies": {
+ "ms": "^2.1.3"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/socket.io-adapter/node_modules/ws": {
+ "version": "8.17.1",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz",
+ "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==",
+ "engines": {
+ "node": ">=10.0.0"
+ },
+ "peerDependencies": {
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": ">=5.0.2"
+ },
+ "peerDependenciesMeta": {
+ "bufferutil": {
+ "optional": true
+ },
+ "utf-8-validate": {
+ "optional": true
+ }
+ }
+ },
"node_modules/socket.io-client": {
"version": "4.7.5",
"resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.7.5.tgz",
@@ -1340,6 +1800,22 @@
}
}
},
+ "node_modules/socket.io/node_modules/debug": {
+ "version": "4.3.7",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
+ "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==",
+ "dependencies": {
+ "ms": "^2.1.3"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
"node_modules/string-width": {
"version": "4.2.3",
"resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
@@ -1460,6 +1936,11 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
+ "node_modules/tinyexec": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.2.tgz",
+ "integrity": "sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA=="
+ },
"node_modules/tinyglobby": {
"version": "0.2.6",
"resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.6.tgz",
@@ -1525,6 +2006,11 @@
"ulid": "bin/cli.js"
}
},
+ "node_modules/uncrypto": {
+ "version": "0.1.3",
+ "resolved": "https://registry.npmjs.org/uncrypto/-/uncrypto-0.1.3.tgz",
+ "integrity": "sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q=="
+ },
"node_modules/undici-types": {
"version": "6.19.8",
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz",
@@ -1542,6 +2028,14 @@
"uuid": "dist/bin/uuid"
}
},
+ "node_modules/vary": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
+ "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
"node_modules/which": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
@@ -1634,9 +2128,9 @@
}
},
"node_modules/zod": {
- "version": "3.24.1",
- "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.1.tgz",
- "integrity": "sha512-muH7gBL9sI1nciMZV67X5fTKKBLtwpZ5VBp1vsOQzj1MhrBZ4wlVCm3gedKZWLp0Oyel8sIGfeiz54Su+OVT+A==",
+ "version": "3.24.2",
+ "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.2.tgz",
+ "integrity": "sha512-lY7CDW43ECgW9u1TcT3IoXHflywfVqDYze4waEz812jR/bZ8FHDsl7pFQoSZTz5N+2NqRXs8GBwnAwo3ZNxqhQ==",
"funding": {
"url": "https://github.com/sponsors/colinhacks"
}
diff --git a/packages/cli-v3/e2e/fixtures/emit-decorator-metadata/package.json b/packages/cli-v3/e2e/fixtures/emit-decorator-metadata/package.json
index bb65b12bec..a7eab28fe9 100644
--- a/packages/cli-v3/e2e/fixtures/emit-decorator-metadata/package.json
+++ b/packages/cli-v3/e2e/fixtures/emit-decorator-metadata/package.json
@@ -10,11 +10,11 @@
"packages/*"
],
"dependencies": {
- "@trigger.dev/sdk": "0.0.0-prerelease-20250116195421",
+ "@trigger.dev/sdk": "0.0.0-prerelease-20250321122618",
"reflect-metadata": "0.2.2"
},
"devDependencies": {
- "@trigger.dev/build": "0.0.0-prerelease-20250116195421",
+ "@trigger.dev/build": "0.0.0-prerelease-20250321122618",
"@types/node": "22.5.4",
"typescript": "5.5.4"
}
diff --git a/packages/cli-v3/e2e/fixtures/emit-decorator-metadata/pnpm-lock.yaml b/packages/cli-v3/e2e/fixtures/emit-decorator-metadata/pnpm-lock.yaml
index 0b5db5cfdd..b2e22b2be9 100644
--- a/packages/cli-v3/e2e/fixtures/emit-decorator-metadata/pnpm-lock.yaml
+++ b/packages/cli-v3/e2e/fixtures/emit-decorator-metadata/pnpm-lock.yaml
@@ -9,15 +9,15 @@ importers:
.:
dependencies:
'@trigger.dev/sdk':
- specifier: 0.0.0-prerelease-20250116195421
- version: 0.0.0-prerelease-20250116195421(zod@3.22.3)
+ specifier: 0.0.0-prerelease-20250321122618
+ version: 0.0.0-prerelease-20250321122618(zod@3.23.8)
reflect-metadata:
specifier: 0.2.2
version: 0.2.2
devDependencies:
'@trigger.dev/build':
- specifier: 0.0.0-prerelease-20250116195421
- version: 0.0.0-prerelease-20250116195421(typescript@5.5.4)
+ specifier: 0.0.0-prerelease-20250321122618
+ version: 0.0.0-prerelease-20250321122618(typescript@5.5.4)
'@types/node':
specifier: 22.5.4
version: 22.5.4
@@ -27,6 +27,9 @@ importers:
packages:
+ /@bugsnag/cuid@3.2.1:
+ resolution: {integrity: sha512-zpvN8xQ5rdRWakMd/BcVkdn2F8HKlDSbM3l7duueK590WmI1T0ObTLc1V/1e55r14WNjPd5AJTYX4yPEAFVi+Q==}
+
/@electric-sql/client@1.0.0-beta.1:
resolution: {integrity: sha512-Ei9jN3pDoGzc+a/bGqnB5ajb52IvSv7/n2btuyzUlcOHIR2kM9fqtYTJXPwZYKLkGZlHWlpHgWyRtrinkP2nHg==}
optionalDependencies:
@@ -86,6 +89,15 @@ packages:
'@opentelemetry/api': 1.9.0
'@opentelemetry/semantic-conventions': 1.25.1
+ /@opentelemetry/core@1.30.1(@opentelemetry/api@1.9.0):
+ resolution: {integrity: sha512-OOCM2C/QIURhJMuKaekP3TRBxBKxG/TWWA0TL2J6nXUtDnuCtccy49LUJF8xPFXMX+0LMcxFpCo8M9cGY1W6rQ==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@opentelemetry/api': '>=1.0.0 <1.10.0'
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/semantic-conventions': 1.28.0
+
/@opentelemetry/exporter-logs-otlp-http@0.52.1(@opentelemetry/api@1.9.0):
resolution: {integrity: sha512-qKgywId2DbdowPZpOBXQKp0B8DfhfIArmSic15z13Nk/JAOccBUQdPwDjDnjsM5f0ckZFMVR2t/tijTUAqDZoA==}
engines: {node: '>=14'}
@@ -306,6 +318,10 @@ packages:
resolution: {integrity: sha512-ZDjMJJQRlyk8A1KZFCc+bCbsyrn1wTwdNt56F7twdfUfnHUZUq77/WfONCj8p72NZOyP7pNTdUWSTYC3GTbuuQ==}
engines: {node: '>=14'}
+ /@opentelemetry/semantic-conventions@1.28.0:
+ resolution: {integrity: sha512-lp4qAiMTD4sNWW4DbKLBkfiMZ4jbAboJIGOQr5DvciMRI494OapieI9qiODpOt0XBr1LjIDy1xAGAnVs5supTA==}
+ engines: {node: '>=14'}
+
/@protobufjs/aspromise@1.1.2:
resolution: {integrity: sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==}
@@ -349,11 +365,11 @@ packages:
/@socket.io/component-emitter@3.1.2:
resolution: {integrity: sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==}
- /@trigger.dev/build@0.0.0-prerelease-20250116195421(typescript@5.5.4):
- resolution: {integrity: sha512-G9Xjzgxc9lhutVCwE7VwGE0RXpGNhATZYB6svbic6cQX9BhKKybRvIsiTjw39Rx4Y1XU0KHkE8IuGE0eIBDZLg==}
+ /@trigger.dev/build@0.0.0-prerelease-20250321122618(typescript@5.5.4):
+ resolution: {integrity: sha512-WkA/9gzsB8cAiSYHH/yo4mrkior0U7xzE2GfvkkxAlNqCJrCaMS2sVsel6MI87RiESJjallqemzBxGs9xgZPYg==}
engines: {node: '>=18.20.0'}
dependencies:
- '@trigger.dev/core': 0.0.0-prerelease-20250116195421
+ '@trigger.dev/core': 0.0.0-prerelease-20250321122618
pkg-types: 1.2.0
tinyglobby: 0.2.6
tsconfck: 3.1.3(typescript@5.5.4)
@@ -364,15 +380,17 @@ packages:
- utf-8-validate
dev: true
- /@trigger.dev/core@0.0.0-prerelease-20250116195421:
- resolution: {integrity: sha512-bxZ5vq3txcUxQln8BZSb2No7gHPG/qTSeo5uq6W2+OQKoVN+c5pmVTYQQa6Fwfd2AXhpkU9ovdM3V1IoEddOtA==}
+ /@trigger.dev/core@0.0.0-prerelease-20250321122618:
+ resolution: {integrity: sha512-0hSMKqvM39V1A8YjZxYivw109ZrGk22Pfa8ydQ29nCubdeTMe6for+AYzj89BIOnEGeEZ24Hzg2uVc5Av9BUHg==}
engines: {node: '>=18.20.0'}
dependencies:
+ '@bugsnag/cuid': 3.2.1
'@electric-sql/client': 1.0.0-beta.1
'@google-cloud/precise-date': 4.0.0
'@jsonhero/path': 1.0.21
'@opentelemetry/api': 1.9.0
'@opentelemetry/api-logs': 0.52.1
+ '@opentelemetry/core': 1.30.1(@opentelemetry/api@1.9.0)
'@opentelemetry/exporter-logs-otlp-http': 0.52.1(@opentelemetry/api@1.9.0)
'@opentelemetry/exporter-trace-otlp-http': 0.52.1(@opentelemetry/api@1.9.0)
'@opentelemetry/instrumentation': 0.52.1(@opentelemetry/api@1.9.0)
@@ -383,13 +401,16 @@ packages:
'@opentelemetry/sdk-trace-node': 1.25.1(@opentelemetry/api@1.9.0)
'@opentelemetry/semantic-conventions': 1.25.1
dequal: 2.0.3
+ eventsource: 3.0.5
eventsource-parser: 3.0.0
execa: 8.0.1
humanize-duration: 3.32.1
jose: 5.9.6
nanoid: 3.3.8
+ socket.io: 4.7.4
socket.io-client: 4.7.5
superjson: 2.2.1
+ tinyexec: 0.3.2
zod: 3.23.8
zod-error: 1.5.0
zod-validation-error: 1.5.0(zod@3.23.8)
@@ -398,8 +419,8 @@ packages:
- supports-color
- utf-8-validate
- /@trigger.dev/sdk@0.0.0-prerelease-20250116195421(zod@3.22.3):
- resolution: {integrity: sha512-/Kw+q/mDulGgiSHR9L3nldGOWH72AQAys9zuoBO72JjVfipKI1R8jjqQHhZjWqolMYqgg9XaJr9lQM8sV5lWwQ==}
+ /@trigger.dev/sdk@0.0.0-prerelease-20250321122618(zod@3.23.8):
+ resolution: {integrity: sha512-/DOWqGdTxkeUY3WIJ/lPS8vC9VwitQiB+ONHCR5L1xBovHVaCyj3zMn/dWPsM+Wtz2wVZAPZ45pmHqvJEX3qLw==}
engines: {node: '>=18.20.0'}
peerDependencies:
zod: ^3.0.0
@@ -407,7 +428,7 @@ packages:
'@opentelemetry/api': 1.9.0
'@opentelemetry/api-logs': 0.52.1
'@opentelemetry/semantic-conventions': 1.25.1
- '@trigger.dev/core': 0.0.0-prerelease-20250116195421
+ '@trigger.dev/core': 0.0.0-prerelease-20250321122618
chalk: 5.3.0
cronstrue: 2.50.0
debug: 4.3.6
@@ -415,15 +436,24 @@ packages:
slug: 6.1.0
terminal-link: 3.0.0
ulid: 2.3.0
+ uncrypto: 0.1.3
uuid: 9.0.1
ws: 8.18.0
- zod: 3.22.3
+ zod: 3.23.8
transitivePeerDependencies:
- bufferutil
- supports-color
- utf-8-validate
dev: false
+ /@types/cookie@0.4.1:
+ resolution: {integrity: sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==}
+
+ /@types/cors@2.8.17:
+ resolution: {integrity: sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==}
+ dependencies:
+ '@types/node': 22.5.4
+
/@types/node@22.5.4:
resolution: {integrity: sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==}
dependencies:
@@ -432,6 +462,13 @@ packages:
/@types/shimmer@1.2.0:
resolution: {integrity: sha512-UE7oxhQLLd9gub6JKIAhDq06T0F6FnztwMNRvYgjeQSBeMc1ZG/tA47EwfduvkuQS8apbkM/lpLpWsaCeYsXVg==}
+ /accepts@1.3.8:
+ resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==}
+ engines: {node: '>= 0.6'}
+ dependencies:
+ mime-types: 2.1.35
+ negotiator: 0.6.3
+
/acorn-import-attributes@1.9.5(acorn@8.12.1):
resolution: {integrity: sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==}
peerDependencies:
@@ -461,6 +498,10 @@ packages:
dependencies:
color-convert: 2.0.1
+ /base64id@2.0.0:
+ resolution: {integrity: sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==}
+ engines: {node: ^4.5.0 || >= 5.9}
+
/chalk@5.3.0:
resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==}
engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
@@ -490,12 +531,23 @@ packages:
resolution: {integrity: sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==}
dev: true
+ /cookie@0.4.2:
+ resolution: {integrity: sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==}
+ engines: {node: '>= 0.6'}
+
/copy-anything@3.0.5:
resolution: {integrity: sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==}
engines: {node: '>=12.13'}
dependencies:
is-what: 4.1.16
+ /cors@2.8.5:
+ resolution: {integrity: sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==}
+ engines: {node: '>= 0.10'}
+ dependencies:
+ object-assign: 4.1.1
+ vary: 1.1.2
+
/cronstrue@2.50.0:
resolution: {integrity: sha512-ULYhWIonJzlScCCQrPUG5uMXzXxSixty4djud9SS37DoNxDdkeRocxzHuAo4ImRBUK+mAuU5X9TSwEDccnnuPg==}
hasBin: true
@@ -544,6 +596,25 @@ packages:
resolution: {integrity: sha512-HqD3yTBfnBxIrbnM1DoD6Pcq8NECnh8d4As1Qgh0z5Gg3jRRIqijury0CL3ghu/edArpUYiYqQiDUQBIs4np3Q==}
engines: {node: '>=10.0.0'}
+ /engine.io@6.5.5:
+ resolution: {integrity: sha512-C5Pn8Wk+1vKBoHghJODM63yk8MvrO9EWZUfkAt5HAqIgPE4/8FF0PEGHXtEd40l223+cE5ABWuPzm38PHFXfMA==}
+ engines: {node: '>=10.2.0'}
+ dependencies:
+ '@types/cookie': 0.4.1
+ '@types/cors': 2.8.17
+ '@types/node': 22.5.4
+ accepts: 1.3.8
+ base64id: 2.0.0
+ cookie: 0.4.2
+ cors: 2.8.5
+ debug: 4.3.6
+ engine.io-parser: 5.2.3
+ ws: 8.17.1
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - utf-8-validate
+
/escalade@3.2.0:
resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
engines: {node: '>=6'}
@@ -552,6 +623,12 @@ packages:
resolution: {integrity: sha512-T1C0XCUimhxVQzW4zFipdx0SficT651NnkR0ZSH3yQwh+mFMdLfgjABVi4YtMTtaL4s168593DaoaRLMqryavA==}
engines: {node: '>=18.0.0'}
+ /eventsource@3.0.5:
+ resolution: {integrity: sha512-LT/5J605bx5SNyE+ITBDiM3FxffBiq9un7Vx0EwMDM3vg8sWKx/tO2zC+LMqZ+smAM0F2hblaDZUVZF0te2pSw==}
+ engines: {node: '>=18.0.0'}
+ dependencies:
+ eventsource-parser: 3.0.0
+
/evt@2.5.7:
resolution: {integrity: sha512-dr7Wd16ry5F8WNU1xXLKpFpO3HsoAGg8zC48e08vDdzMzGWCP9/QFGt1PQptEEDh8SwYP3EL8M+d/Gb0kgUp6g==}
dependencies:
@@ -658,6 +735,16 @@ packages:
/merge-stream@2.0.0:
resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
+ /mime-db@1.52.0:
+ resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}
+ engines: {node: '>= 0.6'}
+
+ /mime-types@2.1.35:
+ resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}
+ engines: {node: '>= 0.6'}
+ dependencies:
+ mime-db: 1.52.0
+
/mimic-fn@4.0.0:
resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==}
engines: {node: '>=12'}
@@ -686,12 +773,20 @@ packages:
engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
hasBin: true
+ /negotiator@0.6.3:
+ resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==}
+ engines: {node: '>= 0.6'}
+
/npm-run-path@5.3.0:
resolution: {integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
dependencies:
path-key: 4.0.0
+ /object-assign@4.1.1:
+ resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
+ engines: {node: '>=0.10.0'}
+
/onetime@6.0.0:
resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==}
engines: {node: '>=12'}
@@ -802,6 +897,16 @@ packages:
resolution: {integrity: sha512-x6vLHCMasg4DR2LPiyFGI0gJJhywY6DTiGhCrOMzb3SOk/0JVLIaL4UhyFSHu04SD3uAavrKY/K3zZ3i6iRcgA==}
dev: false
+ /socket.io-adapter@2.5.5:
+ resolution: {integrity: sha512-eLDQas5dzPgOWCk9GuuJC2lBqItuhKI4uxGgo9aIV7MYbk2h9Q6uULEh8WBzThoI7l+qU9Ast9fVUmkqPP9wYg==}
+ dependencies:
+ debug: 4.3.6
+ ws: 8.17.1
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - utf-8-validate
+
/socket.io-client@4.7.5:
resolution: {integrity: sha512-sJ/tqHOCe7Z50JCBCXrsY3I2k03iOiUe+tj1OmKeD2lXPiGH/RUCdTZFoqVyN7l1MnpIzPrGtLcijffmeouNlQ==}
engines: {node: '>=10.0.0'}
@@ -824,6 +929,22 @@ packages:
transitivePeerDependencies:
- supports-color
+ /socket.io@4.7.4:
+ resolution: {integrity: sha512-DcotgfP1Zg9iP/dH9zvAQcWrE0TtbMVwXmlV4T4mqsvY+gw+LqUGPfx2AoVyRk0FLME+GQhufDMyacFmw7ksqw==}
+ engines: {node: '>=10.2.0'}
+ dependencies:
+ accepts: 1.3.8
+ base64id: 2.0.0
+ cors: 2.8.5
+ debug: 4.3.6
+ engine.io: 6.5.5
+ socket.io-adapter: 2.5.5
+ socket.io-parser: 4.2.4
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - utf-8-validate
+
/string-width@4.2.3:
resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
engines: {node: '>=8'}
@@ -875,6 +996,9 @@ packages:
supports-hyperlinks: 2.3.0
dev: false
+ /tinyexec@0.3.2:
+ resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==}
+
/tinyglobby@0.2.6:
resolution: {integrity: sha512-NbBoFBpqfcgd1tCiO8Lkfdk+xrA7mlLR9zgvZcZWQQwU63XAfUePyd6wZBaU93Hqw347lHnwFzttAkemHzzz4g==}
engines: {node: '>=12.0.0'}
@@ -920,6 +1044,10 @@ packages:
hasBin: true
dev: false
+ /uncrypto@0.1.3:
+ resolution: {integrity: sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==}
+ dev: false
+
/undici-types@6.19.8:
resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==}
@@ -928,6 +1056,10 @@ packages:
hasBin: true
dev: false
+ /vary@1.1.2:
+ resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==}
+ engines: {node: '>= 0.8'}
+
/which@2.0.2:
resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
engines: {node: '>= 8'}
@@ -1005,9 +1137,5 @@ packages:
dependencies:
zod: 3.23.8
- /zod@3.22.3:
- resolution: {integrity: sha512-EjIevzuJRiRPbVH4mGc8nApb/lVLKVpmUhAaR5R5doKGfAnGJ6Gr3CViAVjP+4FWSxCsybeWQdcgCtbX+7oZug==}
- dev: false
-
/zod@3.23.8:
resolution: {integrity: sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==}
diff --git a/packages/cli-v3/e2e/fixtures/emit-decorator-metadata/yarn.lock b/packages/cli-v3/e2e/fixtures/emit-decorator-metadata/yarn.lock
index ec2a948054..7784e4b6b5 100644
--- a/packages/cli-v3/e2e/fixtures/emit-decorator-metadata/yarn.lock
+++ b/packages/cli-v3/e2e/fixtures/emit-decorator-metadata/yarn.lock
@@ -5,6 +5,13 @@ __metadata:
version: 8
cacheKey: 10c0
+"@bugsnag/cuid@npm:^3.1.1":
+ version: 3.2.1
+ resolution: "@bugsnag/cuid@npm:3.2.1"
+ checksum: 10c0/f2da80e922a3ed14bcede1e8257ce02974fdce91f2b6ecfc25846f70c250f2909b2a19f898e309cf564c882b39ac685df99e8fe498db45071d3019db5ea03e6a
+ languageName: node
+ linkType: hard
+
"@electric-sql/client@npm:1.0.0-beta.1":
version: 1.0.0-beta.1
resolution: "@electric-sql/client@npm:1.0.0-beta.1"
@@ -25,12 +32,12 @@ __metadata:
linkType: hard
"@grpc/grpc-js@npm:^1.7.1":
- version: 1.12.5
- resolution: "@grpc/grpc-js@npm:1.12.5"
+ version: 1.13.0
+ resolution: "@grpc/grpc-js@npm:1.13.0"
dependencies:
"@grpc/proto-loader": "npm:^0.7.13"
"@js-sdsl/ordered-map": "npm:^4.4.2"
- checksum: 10c0/1e539d98951e6ff6611e3cedc8eec343625fdab76c7683aa7fca605b3de17d8aabaf2f78d7e95400e68dc8e249cda498781e9a3481bb6b713fc167da3fe59a8e
+ checksum: 10c0/c760d5eb5ee07c4cfd5dcd83ee62d5232d5776b5d1ce5d436edc53402ec16ef053d3a283f48ce832f4635009dbd411ac7586495a7d053fc5f202e95811cf4129
languageName: node
linkType: hard
@@ -98,6 +105,17 @@ __metadata:
languageName: node
linkType: hard
+"@opentelemetry/core@npm:^1.30.1":
+ version: 1.30.1
+ resolution: "@opentelemetry/core@npm:1.30.1"
+ dependencies:
+ "@opentelemetry/semantic-conventions": "npm:1.28.0"
+ peerDependencies:
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ checksum: 10c0/4c25ba50a6137c2ba9ca563fb269378f3c9ca6fd1b3f15dbb6eff78eebf5656f281997cbb7be8e51c01649fd6ad091083fcd8a42dd9b5dfac907dc06d7cfa092
+ languageName: node
+ linkType: hard
+
"@opentelemetry/exporter-logs-otlp-http@npm:0.52.1":
version: 0.52.1
resolution: "@opentelemetry/exporter-logs-otlp-http@npm:0.52.1"
@@ -351,6 +369,13 @@ __metadata:
languageName: node
linkType: hard
+"@opentelemetry/semantic-conventions@npm:1.28.0":
+ version: 1.28.0
+ resolution: "@opentelemetry/semantic-conventions@npm:1.28.0"
+ checksum: 10c0/deb8a0f744198071e70fea27143cf7c9f7ecb7e4d7b619488c917834ea09b31543c1c2bcea4ec5f3cf68797f0ef3549609c14e859013d9376400ac1499c2b9cb
+ languageName: node
+ linkType: hard
+
"@protobufjs/aspromise@npm:^1.1.1, @protobufjs/aspromise@npm:^1.1.2":
version: 1.1.2
resolution: "@protobufjs/aspromise@npm:1.1.2"
@@ -425,8 +450,8 @@ __metadata:
linkType: hard
"@rollup/rollup-darwin-arm64@npm:^4.18.1":
- version: 4.30.1
- resolution: "@rollup/rollup-darwin-arm64@npm:4.30.1"
+ version: 4.36.0
+ resolution: "@rollup/rollup-darwin-arm64@npm:4.36.0"
conditions: os=darwin & cpu=arm64
languageName: node
linkType: hard
@@ -438,27 +463,29 @@ __metadata:
languageName: node
linkType: hard
-"@trigger.dev/build@npm:0.0.0-prerelease-20250116195421":
- version: 0.0.0-prerelease-20250116195421
- resolution: "@trigger.dev/build@npm:0.0.0-prerelease-20250116195421"
+"@trigger.dev/build@npm:0.0.0-prerelease-20250321122618":
+ version: 0.0.0-prerelease-20250321122618
+ resolution: "@trigger.dev/build@npm:0.0.0-prerelease-20250321122618"
dependencies:
- "@trigger.dev/core": "npm:0.0.0-prerelease-20250116195421"
+ "@trigger.dev/core": "npm:0.0.0-prerelease-20250321122618"
pkg-types: "npm:^1.1.3"
tinyglobby: "npm:^0.2.2"
tsconfck: "npm:3.1.3"
- checksum: 10c0/45b30dcb674428cd944d0becbf0fc2cae9d88054c8abd39ff246bd8af1fcaca3a4dd373d2df59db36b335856270da1bd3641ab868982486ae318a01c544b0e8c
+ checksum: 10c0/f71f355a14e588b0b4da76ecb0fbff4c2d60a42e6d449399e5dedc29d65fe3110d14281b365c1ade71564dd251d88ab669be7e7ea3cc0db390d6b2ff8f4122c4
languageName: node
linkType: hard
-"@trigger.dev/core@npm:0.0.0-prerelease-20250116195421":
- version: 0.0.0-prerelease-20250116195421
- resolution: "@trigger.dev/core@npm:0.0.0-prerelease-20250116195421"
+"@trigger.dev/core@npm:0.0.0-prerelease-20250321122618":
+ version: 0.0.0-prerelease-20250321122618
+ resolution: "@trigger.dev/core@npm:0.0.0-prerelease-20250321122618"
dependencies:
+ "@bugsnag/cuid": "npm:^3.1.1"
"@electric-sql/client": "npm:1.0.0-beta.1"
"@google-cloud/precise-date": "npm:^4.0.0"
"@jsonhero/path": "npm:^1.0.21"
"@opentelemetry/api": "npm:1.9.0"
"@opentelemetry/api-logs": "npm:0.52.1"
+ "@opentelemetry/core": "npm:^1.30.1"
"@opentelemetry/exporter-logs-otlp-http": "npm:0.52.1"
"@opentelemetry/exporter-trace-otlp-http": "npm:0.52.1"
"@opentelemetry/instrumentation": "npm:0.52.1"
@@ -469,28 +496,31 @@ __metadata:
"@opentelemetry/sdk-trace-node": "npm:1.25.1"
"@opentelemetry/semantic-conventions": "npm:1.25.1"
dequal: "npm:^2.0.3"
+ eventsource: "npm:^3.0.5"
eventsource-parser: "npm:^3.0.0"
execa: "npm:^8.0.1"
humanize-duration: "npm:^3.27.3"
jose: "npm:^5.4.0"
nanoid: "npm:^3.3.4"
+ socket.io: "npm:4.7.4"
socket.io-client: "npm:4.7.5"
superjson: "npm:^2.2.1"
+ tinyexec: "npm:^0.3.2"
zod: "npm:3.23.8"
zod-error: "npm:1.5.0"
zod-validation-error: "npm:^1.5.0"
- checksum: 10c0/90b53701ba59608e4b0319c5d08147ee04440e14ecb163dabcbea725f46555d4aa8b91fee51a31e616cd88d5f6dcfc15cb7a59491894c36d5cfe818454fff620
+ checksum: 10c0/0bcab7e5ea31c2ee49699b83b26da9994f0ce803b3208ac12e2157ebd21c1e872021922241ba835a98880cd051d2cc245c472ec1901196bfc2a41a53663326ec
languageName: node
linkType: hard
-"@trigger.dev/sdk@npm:0.0.0-prerelease-20250116195421":
- version: 0.0.0-prerelease-20250116195421
- resolution: "@trigger.dev/sdk@npm:0.0.0-prerelease-20250116195421"
+"@trigger.dev/sdk@npm:0.0.0-prerelease-20250321122618":
+ version: 0.0.0-prerelease-20250321122618
+ resolution: "@trigger.dev/sdk@npm:0.0.0-prerelease-20250321122618"
dependencies:
"@opentelemetry/api": "npm:1.9.0"
"@opentelemetry/api-logs": "npm:0.52.1"
"@opentelemetry/semantic-conventions": "npm:1.25.1"
- "@trigger.dev/core": "npm:0.0.0-prerelease-20250116195421"
+ "@trigger.dev/core": "npm:0.0.0-prerelease-20250321122618"
chalk: "npm:^5.2.0"
cronstrue: "npm:^2.21.0"
debug: "npm:^4.3.4"
@@ -498,15 +528,32 @@ __metadata:
slug: "npm:^6.0.0"
terminal-link: "npm:^3.0.0"
ulid: "npm:^2.3.0"
+ uncrypto: "npm:^0.1.3"
uuid: "npm:^9.0.0"
ws: "npm:^8.11.0"
peerDependencies:
zod: ^3.0.0
- checksum: 10c0/6c54e6588a02097a49f11784fefaa1e00b12af4875f6f599de80d54031b9ef919ff017924d6870427cd5d8da178d177df0b0a6c32c0930a03882e3c6c9def1dc
+ checksum: 10c0/2ae41e2fe41a781346a91144b946355521bbcce5bd4cbf4a48f4aeb0b9a7b338a9e749ed014c36732fb128510a01573230a70571c3ccb91f5500776b52ca17a5
+ languageName: node
+ linkType: hard
+
+"@types/cookie@npm:^0.4.1":
+ version: 0.4.1
+ resolution: "@types/cookie@npm:0.4.1"
+ checksum: 10c0/f96afe12bd51be1ec61410b0641243d93fa3a494702407c787a4c872b5c8bcd39b224471452055e44a9ce42af1a636e87d161994226eaf4c2be9c30f60418409
+ languageName: node
+ linkType: hard
+
+"@types/cors@npm:^2.8.12":
+ version: 2.8.17
+ resolution: "@types/cors@npm:2.8.17"
+ dependencies:
+ "@types/node": "npm:*"
+ checksum: 10c0/457364c28c89f3d9ed34800e1de5c6eaaf344d1bb39af122f013322a50bc606eb2aa6f63de4e41a7a08ba7ef454473926c94a830636723da45bf786df032696d
languageName: node
linkType: hard
-"@types/node@npm:22.5.4, @types/node@npm:>=13.7.0":
+"@types/node@npm:*, @types/node@npm:22.5.4, @types/node@npm:>=10.0.0, @types/node@npm:>=13.7.0":
version: 22.5.4
resolution: "@types/node@npm:22.5.4"
dependencies:
@@ -522,6 +569,16 @@ __metadata:
languageName: node
linkType: hard
+"accepts@npm:~1.3.4":
+ version: 1.3.8
+ resolution: "accepts@npm:1.3.8"
+ dependencies:
+ mime-types: "npm:~2.1.34"
+ negotiator: "npm:0.6.3"
+ checksum: 10c0/3a35c5f5586cfb9a21163ca47a5f77ac34fa8ceb5d17d2fa2c0d81f41cbd7f8c6fa52c77e2c039acc0f4d09e71abdc51144246900f6bef5e3c4b333f77d89362
+ languageName: node
+ linkType: hard
+
"acorn-import-attributes@npm:^1.9.5":
version: 1.9.5
resolution: "acorn-import-attributes@npm:1.9.5"
@@ -531,12 +588,12 @@ __metadata:
languageName: node
linkType: hard
-"acorn@npm:^8.11.3, acorn@npm:^8.8.2":
- version: 8.12.1
- resolution: "acorn@npm:8.12.1"
+"acorn@npm:^8.11.3, acorn@npm:^8.14.0":
+ version: 8.14.1
+ resolution: "acorn@npm:8.14.1"
bin:
acorn: bin/acorn
- checksum: 10c0/51fb26cd678f914e13287e886da2d7021f8c2bc0ccc95e03d3e0447ee278dd3b40b9c57dc222acd5881adcf26f3edc40901a4953403232129e3876793cd17386
+ checksum: 10c0/dbd36c1ed1d2fa3550140000371fcf721578095b18777b85a79df231ca093b08edc6858d75d6e48c73e431c174dcf9214edbd7e6fa5911b93bd8abfa54e47123
languageName: node
linkType: hard
@@ -565,6 +622,13 @@ __metadata:
languageName: node
linkType: hard
+"base64id@npm:2.0.0, base64id@npm:~2.0.0":
+ version: 2.0.0
+ resolution: "base64id@npm:2.0.0"
+ checksum: 10c0/6919efd237ed44b9988cbfc33eca6f173a10e810ce50292b271a1a421aac7748ef232a64d1e6032b08f19aae48dce6ee8f66c5ae2c9e5066c82b884861d4d453
+ languageName: node
+ linkType: hard
+
"chalk@npm:^5.2.0":
version: 5.3.0
resolution: "chalk@npm:5.3.0"
@@ -573,9 +637,9 @@ __metadata:
linkType: hard
"cjs-module-lexer@npm:^1.2.2":
- version: 1.4.1
- resolution: "cjs-module-lexer@npm:1.4.1"
- checksum: 10c0/5a7d8279629c9ba8ccf38078c2fed75b7737973ced22b9b5a54180efa57fb2fe2bb7bec6aec55e3b8f3f5044f5d7b240347ad9bd285e7c3d0ee5b0a1d0504dfc
+ version: 1.4.3
+ resolution: "cjs-module-lexer@npm:1.4.3"
+ checksum: 10c0/076b3af85adc4d65dbdab1b5b240fe5b45d44fcf0ef9d429044dd94d19be5589376805c44fb2d4b3e684e5fe6a9b7cf3e426476a6507c45283c5fc6ff95240be
languageName: node
linkType: hard
@@ -613,6 +677,13 @@ __metadata:
languageName: node
linkType: hard
+"cookie@npm:~0.4.1":
+ version: 0.4.2
+ resolution: "cookie@npm:0.4.2"
+ checksum: 10c0/beab41fbd7c20175e3a2799ba948c1dcc71ef69f23fe14eeeff59fc09f50c517b0f77098db87dbb4c55da802f9d86ee86cdc1cd3efd87760341551838d53fca2
+ languageName: node
+ linkType: hard
+
"copy-anything@npm:^3.0.2":
version: 3.0.5
resolution: "copy-anything@npm:3.0.5"
@@ -622,6 +693,16 @@ __metadata:
languageName: node
linkType: hard
+"cors@npm:~2.8.5":
+ version: 2.8.5
+ resolution: "cors@npm:2.8.5"
+ dependencies:
+ object-assign: "npm:^4"
+ vary: "npm:^1"
+ checksum: 10c0/373702b7999409922da80de4a61938aabba6929aea5b6fd9096fefb9e8342f626c0ebd7507b0e8b0b311380744cc985f27edebc0a26e0ddb784b54e1085de761
+ languageName: node
+ linkType: hard
+
"cronstrue@npm:^2.21.0":
version: 2.50.0
resolution: "cronstrue@npm:2.50.0"
@@ -654,7 +735,7 @@ __metadata:
languageName: node
linkType: hard
-"debug@npm:~4.3.1, debug@npm:~4.3.2":
+"debug@npm:~4.3.1, debug@npm:~4.3.2, debug@npm:~4.3.4":
version: 4.3.7
resolution: "debug@npm:4.3.7"
dependencies:
@@ -677,8 +758,8 @@ __metadata:
version: 0.0.0-use.local
resolution: "emit-decorator-metadata@workspace:."
dependencies:
- "@trigger.dev/build": "npm:0.0.0-prerelease-20250116195421"
- "@trigger.dev/sdk": "npm:0.0.0-prerelease-20250116195421"
+ "@trigger.dev/build": "npm:0.0.0-prerelease-20250321122618"
+ "@trigger.dev/sdk": "npm:0.0.0-prerelease-20250321122618"
"@types/node": "npm:22.5.4"
reflect-metadata: "npm:0.2.2"
typescript: "npm:5.5.4"
@@ -712,6 +793,24 @@ __metadata:
languageName: node
linkType: hard
+"engine.io@npm:~6.5.2":
+ version: 6.5.5
+ resolution: "engine.io@npm:6.5.5"
+ dependencies:
+ "@types/cookie": "npm:^0.4.1"
+ "@types/cors": "npm:^2.8.12"
+ "@types/node": "npm:>=10.0.0"
+ accepts: "npm:~1.3.4"
+ base64id: "npm:2.0.0"
+ cookie: "npm:~0.4.1"
+ cors: "npm:~2.8.5"
+ debug: "npm:~4.3.1"
+ engine.io-parser: "npm:~5.2.1"
+ ws: "npm:~8.17.1"
+ checksum: 10c0/b0994134917c5d3649fd7aea283492eaf092131e572a8d379c7c9081548b42cff756730b4641edd0d1598148dd3be253c4d634cea2ba5c59622d175d9e567469
+ languageName: node
+ linkType: hard
+
"escalade@npm:^3.1.1":
version: 3.2.0
resolution: "escalade@npm:3.2.0"
@@ -726,6 +825,15 @@ __metadata:
languageName: node
linkType: hard
+"eventsource@npm:^3.0.5":
+ version: 3.0.5
+ resolution: "eventsource@npm:3.0.5"
+ dependencies:
+ eventsource-parser: "npm:^3.0.0"
+ checksum: 10c0/0283045a70b7ab7501fc290e60ee5ebd6e24648e0f0a6d6a1c1bbb7a421971e8140b85d6239d08c360e0a0b196205ca86b4ff7f9efe3c06877ba628136856489
+ languageName: node
+ linkType: hard
+
"evt@npm:^2.4.13":
version: 2.5.7
resolution: "evt@npm:2.5.7"
@@ -818,14 +926,14 @@ __metadata:
linkType: hard
"import-in-the-middle@npm:^1.8.1":
- version: 1.12.0
- resolution: "import-in-the-middle@npm:1.12.0"
+ version: 1.13.1
+ resolution: "import-in-the-middle@npm:1.13.1"
dependencies:
- acorn: "npm:^8.8.2"
+ acorn: "npm:^8.14.0"
acorn-import-attributes: "npm:^1.9.5"
cjs-module-lexer: "npm:^1.2.2"
module-details-from-path: "npm:^1.0.3"
- checksum: 10c0/e0f92bd27b9ef15099494ef0e8ba0b6fa6f0e643a3ff1d41b52530b6e4ff2a502099fff345f3ffb7c75f78cb189903b8d2d92fab5f8123badbc9e790cc19bbe7
+ checksum: 10c0/4ef05a924c37ff718dd08654927c90d470d92fd9425d646b0d423aaddc89655848debd14761bcb6efa4f57870d63ff38109bab31ca8a1d9d5df2e7d84d2649cf
languageName: node
linkType: hard
@@ -867,9 +975,9 @@ __metadata:
linkType: hard
"jose@npm:^5.4.0":
- version: 5.9.6
- resolution: "jose@npm:5.9.6"
- checksum: 10c0/d6bcd8c7d655b5cda8e182952a76f0c093347f5476d74795405bb91563f7ab676f61540310dd4b1531c60d685335ceb600571a409551d2cbd2ab3e9f9fbf1e4d
+ version: 5.10.0
+ resolution: "jose@npm:5.10.0"
+ checksum: 10c0/e20d9fc58d7e402f2e5f04e824b8897d5579aae60e64cb88ebdea1395311c24537bf4892f7de413fab1acf11e922797fb1b42269bc8fc65089a3749265ccb7b0
languageName: node
linkType: hard
@@ -888,9 +996,9 @@ __metadata:
linkType: hard
"long@npm:^5.0.0":
- version: 5.2.4
- resolution: "long@npm:5.2.4"
- checksum: 10c0/0cf819ce2a7bbe48663e79233917552c7667b11e68d4d9ea4ebb99173042509d9af461e5211c22939b913332c264d9a1135937ea533cbd05bc4f8cf46f6d2e07
+ version: 5.3.1
+ resolution: "long@npm:5.3.1"
+ checksum: 10c0/8726994c6359bb7162fb94563e14c3f9c0f0eeafd90ec654738f4f144a5705756d36a873c442f172ee2a4b51e08d14ab99765b49aa1fb994c5ba7fe12057bca2
languageName: node
linkType: hard
@@ -901,6 +1009,22 @@ __metadata:
languageName: node
linkType: hard
+"mime-db@npm:1.52.0":
+ version: 1.52.0
+ resolution: "mime-db@npm:1.52.0"
+ checksum: 10c0/0557a01deebf45ac5f5777fe7740b2a5c309c6d62d40ceab4e23da9f821899ce7a900b7ac8157d4548ddbb7beffe9abc621250e6d182b0397ec7f10c7b91a5aa
+ languageName: node
+ linkType: hard
+
+"mime-types@npm:~2.1.34":
+ version: 2.1.35
+ resolution: "mime-types@npm:2.1.35"
+ dependencies:
+ mime-db: "npm:1.52.0"
+ checksum: 10c0/82fb07ec56d8ff1fc999a84f2f217aa46cb6ed1033fefaabd5785b9a974ed225c90dc72fff460259e66b95b73648596dbcc50d51ed69cdf464af2d237d3149b2
+ languageName: node
+ linkType: hard
+
"mimic-fn@npm:^4.0.0":
version: 4.0.0
resolution: "mimic-fn@npm:4.0.0"
@@ -942,11 +1066,18 @@ __metadata:
linkType: hard
"nanoid@npm:^3.3.4":
- version: 3.3.8
- resolution: "nanoid@npm:3.3.8"
+ version: 3.3.11
+ resolution: "nanoid@npm:3.3.11"
bin:
nanoid: bin/nanoid.cjs
- checksum: 10c0/4b1bb29f6cfebf3be3bc4ad1f1296fb0a10a3043a79f34fbffe75d1621b4318319211cd420549459018ea3592f0d2f159247a6f874911d6d26eaaadda2478120
+ checksum: 10c0/40e7f70b3d15f725ca072dfc4f74e81fcf1fbb02e491cf58ac0c79093adc9b0a73b152bcde57df4b79cd097e13023d7504acb38404a4da7bc1cd8e887b82fe0b
+ languageName: node
+ linkType: hard
+
+"negotiator@npm:0.6.3":
+ version: 0.6.3
+ resolution: "negotiator@npm:0.6.3"
+ checksum: 10c0/3ec9fd413e7bf071c937ae60d572bc67155262068ed522cf4b3be5edbe6ddf67d095ec03a3a14ebf8fc8e95f8e1d61be4869db0dbb0de696f6b837358bd43fc2
languageName: node
linkType: hard
@@ -959,6 +1090,13 @@ __metadata:
languageName: node
linkType: hard
+"object-assign@npm:^4":
+ version: 4.1.1
+ resolution: "object-assign@npm:4.1.1"
+ checksum: 10c0/1f4df9945120325d041ccf7b86f31e8bcc14e73d29171e37a7903050e96b81323784ec59f93f102ec635bcf6fa8034ba3ea0a8c7e69fa202b87ae3b6cec5a414
+ languageName: node
+ linkType: hard
+
"onetime@npm:^6.0.0":
version: 6.0.0
resolution: "onetime@npm:6.0.0"
@@ -1049,13 +1187,13 @@ __metadata:
linkType: hard
"require-in-the-middle@npm:^7.1.1":
- version: 7.4.0
- resolution: "require-in-the-middle@npm:7.4.0"
+ version: 7.5.2
+ resolution: "require-in-the-middle@npm:7.5.2"
dependencies:
debug: "npm:^4.3.5"
module-details-from-path: "npm:^1.0.3"
resolve: "npm:^1.22.8"
- checksum: 10c0/67c2242ea5b059c2a10c01d4f409233c67278051b47b9bf83198ab7e3ea591ffe3fa1d97912180d7d3d9a5e44490c00c55882b702849d61ac4db87d2c3823cb0
+ checksum: 10c0/43a2dac5520e39d13c413650895715e102d6802e6cc6ff322017bd948f12a9657fe28435f7cbbcba437b167f02e192ac7af29fa35cabd5d0c375d071c0605e01
languageName: node
linkType: hard
@@ -1095,11 +1233,11 @@ __metadata:
linkType: hard
"semver@npm:^7.5.2":
- version: 7.6.3
- resolution: "semver@npm:7.6.3"
+ version: 7.7.1
+ resolution: "semver@npm:7.7.1"
bin:
semver: bin/semver.js
- checksum: 10c0/88f33e148b210c153873cb08cfe1e281d518aaa9a666d4d148add6560db5cd3c582f3a08ccb91f38d5f379ead256da9931234ed122057f40bb5766e65e58adaf
+ checksum: 10c0/fd603a6fb9c399c6054015433051bdbe7b99a940a8fb44b85c2b524c4004b023d7928d47cb22154f8d054ea7ee8597f586605e05b52047f048278e4ac56ae958
languageName: node
linkType: hard
@@ -1140,6 +1278,16 @@ __metadata:
languageName: node
linkType: hard
+"socket.io-adapter@npm:~2.5.2":
+ version: 2.5.5
+ resolution: "socket.io-adapter@npm:2.5.5"
+ dependencies:
+ debug: "npm:~4.3.4"
+ ws: "npm:~8.17.1"
+ checksum: 10c0/04a5a2a9c4399d1b6597c2afc4492ab1e73430cc124ab02b09e948eabf341180b3866e2b61b5084cb899beb68a4db7c328c29bda5efb9207671b5cb0bc6de44e
+ languageName: node
+ linkType: hard
+
"socket.io-client@npm:4.7.5":
version: 4.7.5
resolution: "socket.io-client@npm:4.7.5"
@@ -1162,6 +1310,21 @@ __metadata:
languageName: node
linkType: hard
+"socket.io@npm:4.7.4":
+ version: 4.7.4
+ resolution: "socket.io@npm:4.7.4"
+ dependencies:
+ accepts: "npm:~1.3.4"
+ base64id: "npm:~2.0.0"
+ cors: "npm:~2.8.5"
+ debug: "npm:~4.3.2"
+ engine.io: "npm:~6.5.2"
+ socket.io-adapter: "npm:~2.5.2"
+ socket.io-parser: "npm:~4.2.4"
+ checksum: 10c0/c37b7745d475695d5d5d20a30af940ebf1fefa9defdd1f3601978682a4e1d12eab10da0a6efb19d72038bb819a7972331a679649161689db600883b83818fb16
+ languageName: node
+ linkType: hard
+
"string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3":
version: 4.2.3
resolution: "string-width@npm:4.2.3"
@@ -1234,6 +1397,13 @@ __metadata:
languageName: node
linkType: hard
+"tinyexec@npm:^0.3.2":
+ version: 0.3.2
+ resolution: "tinyexec@npm:0.3.2"
+ checksum: 10c0/3efbf791a911be0bf0821eab37a3445c2ba07acc1522b1fa84ae1e55f10425076f1290f680286345ed919549ad67527d07281f1c19d584df3b74326909eb1f90
+ languageName: node
+ linkType: hard
+
"tinyglobby@npm:^0.2.2":
version: 0.2.6
resolution: "tinyglobby@npm:0.2.6"
@@ -1308,6 +1478,13 @@ __metadata:
languageName: node
linkType: hard
+"uncrypto@npm:^0.1.3":
+ version: 0.1.3
+ resolution: "uncrypto@npm:0.1.3"
+ checksum: 10c0/74a29afefd76d5b77bedc983559ceb33f5bbc8dada84ff33755d1e3355da55a4e03a10e7ce717918c436b4dfafde1782e799ebaf2aadd775612b49f7b5b2998e
+ languageName: node
+ linkType: hard
+
"undici-types@npm:~6.19.2":
version: 6.19.8
resolution: "undici-types@npm:6.19.8"
@@ -1324,6 +1501,13 @@ __metadata:
languageName: node
linkType: hard
+"vary@npm:^1":
+ version: 1.1.2
+ resolution: "vary@npm:1.1.2"
+ checksum: 10c0/f15d588d79f3675135ba783c91a4083dcd290a2a5be9fcb6514220a1634e23df116847b1cc51f66bfb0644cf9353b2abb7815ae499bab06e46dd33c1a6bf1f4f
+ languageName: node
+ linkType: hard
+
"which@npm:^2.0.1":
version: 2.0.2
resolution: "which@npm:2.0.2"
@@ -1438,8 +1622,8 @@ __metadata:
linkType: hard
"zod@npm:^3.20.2":
- version: 3.24.1
- resolution: "zod@npm:3.24.1"
- checksum: 10c0/0223d21dbaa15d8928fe0da3b54696391d8e3e1e2d0283a1a070b5980a1dbba945ce631c2d1eccc088fdbad0f2dfa40155590bf83732d3ac4fcca2cc9237591b
+ version: 3.24.2
+ resolution: "zod@npm:3.24.2"
+ checksum: 10c0/c638c7220150847f13ad90635b3e7d0321b36cce36f3fc6050ed960689594c949c326dfe2c6fa87c14b126ee5d370ccdebd6efb304f41ef5557a4aaca2824565
languageName: node
linkType: hard
diff --git a/packages/cli-v3/e2e/fixtures/esm-only-external/package-lock.json b/packages/cli-v3/e2e/fixtures/esm-only-external/package-lock.json
index 4b12639fad..8c4a916e70 100644
--- a/packages/cli-v3/e2e/fixtures/esm-only-external/package-lock.json
+++ b/packages/cli-v3/e2e/fixtures/esm-only-external/package-lock.json
@@ -9,7 +9,7 @@
"packages/*"
],
"dependencies": {
- "@trigger.dev/sdk": "0.0.0-prerelease-20250116195421",
+ "@trigger.dev/sdk": "0.0.0-prerelease-20250321122618",
"mupdf": "^0.3.0"
},
"devDependencies": {
@@ -20,6 +20,11 @@
"yarn": "4.2.2"
}
},
+ "node_modules/@bugsnag/cuid": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/@bugsnag/cuid/-/cuid-3.2.1.tgz",
+ "integrity": "sha512-zpvN8xQ5rdRWakMd/BcVkdn2F8HKlDSbM3l7duueK590WmI1T0ObTLc1V/1e55r14WNjPd5AJTYX4yPEAFVi+Q=="
+ },
"node_modules/@electric-sql/client": {
"version": "1.0.0-beta.1",
"resolved": "https://registry.npmjs.org/@electric-sql/client/-/client-1.0.0-beta.1.tgz",
@@ -37,9 +42,9 @@
}
},
"node_modules/@grpc/grpc-js": {
- "version": "1.12.5",
- "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.12.5.tgz",
- "integrity": "sha512-d3iiHxdpg5+ZcJ6jnDSOT8Z0O0VMVGy34jAnYLUX8yd36b1qn8f1TwOA/Lc7TsOh03IkPJ38eGI5qD2EjNkoEA==",
+ "version": "1.13.0",
+ "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.13.0.tgz",
+ "integrity": "sha512-pMuxInZjUnUkgMT2QLZclRqwk2ykJbIU05aZgPgJYXEpN9+2I7z7aNwcjWZSycRPl232FfhPszyBFJyOxTHNog==",
"dependencies": {
"@grpc/proto-loader": "^0.7.13",
"@js-sdsl/ordered-map": "^4.4.2"
@@ -110,11 +115,11 @@
}
},
"node_modules/@opentelemetry/core": {
- "version": "1.25.1",
- "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
- "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "version": "1.30.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.30.1.tgz",
+ "integrity": "sha512-OOCM2C/QIURhJMuKaekP3TRBxBKxG/TWWA0TL2J6nXUtDnuCtccy49LUJF8xPFXMX+0LMcxFpCo8M9cGY1W6rQ==",
"dependencies": {
- "@opentelemetry/semantic-conventions": "1.25.1"
+ "@opentelemetry/semantic-conventions": "1.28.0"
},
"engines": {
"node": ">=14"
@@ -123,6 +128,14 @@
"@opentelemetry/api": ">=1.0.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/core/node_modules/@opentelemetry/semantic-conventions": {
+ "version": "1.28.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.28.0.tgz",
+ "integrity": "sha512-lp4qAiMTD4sNWW4DbKLBkfiMZ4jbAboJIGOQr5DvciMRI494OapieI9qiODpOt0XBr1LjIDy1xAGAnVs5supTA==",
+ "engines": {
+ "node": ">=14"
+ }
+ },
"node_modules/@opentelemetry/exporter-logs-otlp-http": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/exporter-logs-otlp-http/-/exporter-logs-otlp-http-0.52.1.tgz",
@@ -141,6 +154,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/exporter-logs-otlp-http/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/exporter-trace-otlp-grpc": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-grpc/-/exporter-trace-otlp-grpc-0.52.1.tgz",
@@ -160,6 +187,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/exporter-trace-otlp-grpc/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/exporter-trace-otlp-http": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.52.1.tgz",
@@ -178,6 +219,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/exporter-trace-otlp-http/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/exporter-trace-otlp-proto": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-proto/-/exporter-trace-otlp-proto-0.52.1.tgz",
@@ -196,6 +251,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/exporter-trace-otlp-proto/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/exporter-zipkin": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/exporter-zipkin/-/exporter-zipkin-1.25.1.tgz",
@@ -213,6 +282,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/exporter-zipkin/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/instrumentation": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.52.1.tgz",
@@ -247,6 +330,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/otlp-exporter-base/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/otlp-grpc-exporter-base": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/otlp-grpc-exporter-base/-/otlp-grpc-exporter-base-0.52.1.tgz",
@@ -264,6 +361,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/otlp-grpc-exporter-base/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/otlp-transformer": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/otlp-transformer/-/otlp-transformer-0.52.1.tgz",
@@ -284,6 +395,20 @@
"@opentelemetry/api": ">=1.3.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/propagator-b3": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/propagator-b3/-/propagator-b3-1.25.1.tgz",
@@ -298,6 +423,20 @@
"@opentelemetry/api": ">=1.0.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/propagator-b3/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/propagator-jaeger": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/propagator-jaeger/-/propagator-jaeger-1.25.1.tgz",
@@ -312,6 +451,20 @@
"@opentelemetry/api": ">=1.0.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/propagator-jaeger/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/resources": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.25.1.tgz",
@@ -327,6 +480,20 @@
"@opentelemetry/api": ">=1.0.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/resources/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/sdk-logs": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/sdk-logs/-/sdk-logs-0.52.1.tgz",
@@ -343,6 +510,20 @@
"@opentelemetry/api": ">=1.4.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/sdk-logs/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/sdk-metrics": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.25.1.tgz",
@@ -359,6 +540,20 @@
"@opentelemetry/api": ">=1.3.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/sdk-metrics/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/sdk-node": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/sdk-node/-/sdk-node-0.52.1.tgz",
@@ -385,6 +580,20 @@
"@opentelemetry/api": ">=1.3.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/sdk-node/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/sdk-trace-base": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.25.1.tgz",
@@ -401,6 +610,20 @@
"@opentelemetry/api": ">=1.0.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/sdk-trace-base/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/sdk-trace-node": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-node/-/sdk-trace-node-1.25.1.tgz",
@@ -420,6 +643,20 @@
"@opentelemetry/api": ">=1.0.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/sdk-trace-node/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/semantic-conventions": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.25.1.tgz",
@@ -483,9 +720,9 @@
"integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw=="
},
"node_modules/@rollup/rollup-darwin-arm64": {
- "version": "4.30.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.30.1.tgz",
- "integrity": "sha512-r7FQIXD7gB0WJ5mokTUgUWPl0eYIH0wnxqeSAhuIwvnnpjdVB8cRRClyKLQr7lgzjctkbp5KmswWszlwYln03Q==",
+ "version": "4.36.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.36.0.tgz",
+ "integrity": "sha512-JQ1Jk5G4bGrD4pWJQzWsD8I1n1mgPXq33+/vP4sk8j/z/C2siRuxZtaUA7yMTf71TCZTZl/4e1bfzwUmFb3+rw==",
"cpu": [
"arm64"
],
@@ -500,15 +737,17 @@
"integrity": "sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA=="
},
"node_modules/@trigger.dev/core": {
- "version": "0.0.0-prerelease-20250116195421",
- "resolved": "https://registry.npmjs.org/@trigger.dev/core/-/core-0.0.0-prerelease-20250116195421.tgz",
- "integrity": "sha512-bxZ5vq3txcUxQln8BZSb2No7gHPG/qTSeo5uq6W2+OQKoVN+c5pmVTYQQa6Fwfd2AXhpkU9ovdM3V1IoEddOtA==",
+ "version": "0.0.0-prerelease-20250321122618",
+ "resolved": "https://registry.npmjs.org/@trigger.dev/core/-/core-0.0.0-prerelease-20250321122618.tgz",
+ "integrity": "sha512-0hSMKqvM39V1A8YjZxYivw109ZrGk22Pfa8ydQ29nCubdeTMe6for+AYzj89BIOnEGeEZ24Hzg2uVc5Av9BUHg==",
"dependencies": {
+ "@bugsnag/cuid": "^3.1.1",
"@electric-sql/client": "1.0.0-beta.1",
"@google-cloud/precise-date": "^4.0.0",
"@jsonhero/path": "^1.0.21",
"@opentelemetry/api": "1.9.0",
"@opentelemetry/api-logs": "0.52.1",
+ "@opentelemetry/core": "^1.30.1",
"@opentelemetry/exporter-logs-otlp-http": "0.52.1",
"@opentelemetry/exporter-trace-otlp-http": "0.52.1",
"@opentelemetry/instrumentation": "0.52.1",
@@ -519,13 +758,16 @@
"@opentelemetry/sdk-trace-node": "1.25.1",
"@opentelemetry/semantic-conventions": "1.25.1",
"dequal": "^2.0.3",
+ "eventsource": "^3.0.5",
"eventsource-parser": "^3.0.0",
"execa": "^8.0.1",
"humanize-duration": "^3.27.3",
"jose": "^5.4.0",
"nanoid": "^3.3.4",
+ "socket.io": "4.7.4",
"socket.io-client": "4.7.5",
"superjson": "^2.2.1",
+ "tinyexec": "^0.3.2",
"zod": "3.23.8",
"zod-error": "1.5.0",
"zod-validation-error": "^1.5.0"
@@ -543,14 +785,14 @@
}
},
"node_modules/@trigger.dev/sdk": {
- "version": "0.0.0-prerelease-20250116195421",
- "resolved": "https://registry.npmjs.org/@trigger.dev/sdk/-/sdk-0.0.0-prerelease-20250116195421.tgz",
- "integrity": "sha512-/Kw+q/mDulGgiSHR9L3nldGOWH72AQAys9zuoBO72JjVfipKI1R8jjqQHhZjWqolMYqgg9XaJr9lQM8sV5lWwQ==",
+ "version": "0.0.0-prerelease-20250321122618",
+ "resolved": "https://registry.npmjs.org/@trigger.dev/sdk/-/sdk-0.0.0-prerelease-20250321122618.tgz",
+ "integrity": "sha512-/DOWqGdTxkeUY3WIJ/lPS8vC9VwitQiB+ONHCR5L1xBovHVaCyj3zMn/dWPsM+Wtz2wVZAPZ45pmHqvJEX3qLw==",
"dependencies": {
"@opentelemetry/api": "1.9.0",
"@opentelemetry/api-logs": "0.52.1",
"@opentelemetry/semantic-conventions": "1.25.1",
- "@trigger.dev/core": "0.0.0-prerelease-20250116195421",
+ "@trigger.dev/core": "0.0.0-prerelease-20250321122618",
"chalk": "^5.2.0",
"cronstrue": "^2.21.0",
"debug": "^4.3.4",
@@ -558,6 +800,7 @@
"slug": "^6.0.0",
"terminal-link": "^3.0.0",
"ulid": "^2.3.0",
+ "uncrypto": "^0.1.3",
"uuid": "^9.0.0",
"ws": "^8.11.0"
},
@@ -568,10 +811,23 @@
"zod": "^3.0.0"
}
},
+ "node_modules/@types/cookie": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz",
+ "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q=="
+ },
+ "node_modules/@types/cors": {
+ "version": "2.8.17",
+ "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.17.tgz",
+ "integrity": "sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==",
+ "dependencies": {
+ "@types/node": "*"
+ }
+ },
"node_modules/@types/node": {
- "version": "22.10.7",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-22.10.7.tgz",
- "integrity": "sha512-V09KvXxFiutGp6B7XkpaDXlNadZxrzajcY50EuoLIpQ6WWYCSvf19lVIazzfIzQvhUN2HjX12spLojTnhuKlGg==",
+ "version": "22.13.11",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-22.13.11.tgz",
+ "integrity": "sha512-iEUCUJoU0i3VnrCmgoWCXttklWcvoCIx4jzcP22fioIVSdTmjgoEvmAO/QPw6TcS9k5FrNgn4w7q5lGOd1CT5g==",
"dependencies": {
"undici-types": "~6.20.0"
}
@@ -581,10 +837,22 @@
"resolved": "https://registry.npmjs.org/@types/shimmer/-/shimmer-1.2.0.tgz",
"integrity": "sha512-UE7oxhQLLd9gub6JKIAhDq06T0F6FnztwMNRvYgjeQSBeMc1ZG/tA47EwfduvkuQS8apbkM/lpLpWsaCeYsXVg=="
},
+ "node_modules/accepts": {
+ "version": "1.3.8",
+ "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz",
+ "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==",
+ "dependencies": {
+ "mime-types": "~2.1.34",
+ "negotiator": "0.6.3"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
"node_modules/acorn": {
- "version": "8.14.0",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz",
- "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==",
+ "version": "8.14.1",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz",
+ "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==",
"bin": {
"acorn": "bin/acorn"
},
@@ -636,6 +904,14 @@
"url": "https://github.com/chalk/ansi-styles?sponsor=1"
}
},
+ "node_modules/base64id": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz",
+ "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==",
+ "engines": {
+ "node": "^4.5.0 || >= 5.9"
+ }
+ },
"node_modules/chalk": {
"version": "5.3.0",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz",
@@ -648,9 +924,9 @@
}
},
"node_modules/cjs-module-lexer": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.1.tgz",
- "integrity": "sha512-cuSVIHi9/9E/+821Qjdvngor+xpnlwnuwIyZOaLmHBVdXL+gP+I6QQB9VkO7RI77YIcTV+S1W9AreJ5eN63JBA=="
+ "version": "1.4.3",
+ "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.3.tgz",
+ "integrity": "sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q=="
},
"node_modules/cliui": {
"version": "8.0.1",
@@ -681,6 +957,14 @@
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
},
+ "node_modules/cookie": {
+ "version": "0.4.2",
+ "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz",
+ "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
"node_modules/copy-anything": {
"version": "3.0.5",
"resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-3.0.5.tgz",
@@ -695,6 +979,18 @@
"url": "https://github.com/sponsors/mesqueeb"
}
},
+ "node_modules/cors": {
+ "version": "2.8.5",
+ "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz",
+ "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==",
+ "dependencies": {
+ "object-assign": "^4",
+ "vary": "^1"
+ },
+ "engines": {
+ "node": ">= 0.10"
+ }
+ },
"node_modules/cronstrue": {
"version": "2.50.0",
"resolved": "https://registry.npmjs.org/cronstrue/-/cronstrue-2.50.0.tgz",
@@ -745,6 +1041,26 @@
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
"integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
},
+ "node_modules/engine.io": {
+ "version": "6.5.5",
+ "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.5.5.tgz",
+ "integrity": "sha512-C5Pn8Wk+1vKBoHghJODM63yk8MvrO9EWZUfkAt5HAqIgPE4/8FF0PEGHXtEd40l223+cE5ABWuPzm38PHFXfMA==",
+ "dependencies": {
+ "@types/cookie": "^0.4.1",
+ "@types/cors": "^2.8.12",
+ "@types/node": ">=10.0.0",
+ "accepts": "~1.3.4",
+ "base64id": "2.0.0",
+ "cookie": "~0.4.1",
+ "cors": "~2.8.5",
+ "debug": "~4.3.1",
+ "engine.io-parser": "~5.2.1",
+ "ws": "~8.17.1"
+ },
+ "engines": {
+ "node": ">=10.2.0"
+ }
+ },
"node_modules/engine.io-client": {
"version": "6.5.4",
"resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.5.4.tgz",
@@ -801,6 +1117,42 @@
"node": ">=10.0.0"
}
},
+ "node_modules/engine.io/node_modules/debug": {
+ "version": "4.3.7",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
+ "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==",
+ "dependencies": {
+ "ms": "^2.1.3"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/engine.io/node_modules/ws": {
+ "version": "8.17.1",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz",
+ "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==",
+ "engines": {
+ "node": ">=10.0.0"
+ },
+ "peerDependencies": {
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": ">=5.0.2"
+ },
+ "peerDependenciesMeta": {
+ "bufferutil": {
+ "optional": true
+ },
+ "utf-8-validate": {
+ "optional": true
+ }
+ }
+ },
"node_modules/escalade": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz",
@@ -809,6 +1161,17 @@
"node": ">=6"
}
},
+ "node_modules/eventsource": {
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-3.0.5.tgz",
+ "integrity": "sha512-LT/5J605bx5SNyE+ITBDiM3FxffBiq9un7Vx0EwMDM3vg8sWKx/tO2zC+LMqZ+smAM0F2hblaDZUVZF0te2pSw==",
+ "dependencies": {
+ "eventsource-parser": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=18.0.0"
+ }
+ },
"node_modules/eventsource-parser": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/eventsource-parser/-/eventsource-parser-3.0.0.tgz",
@@ -909,11 +1272,11 @@
"integrity": "sha512-inh5wue5XdfObhu/IGEMiA1nUXigSGcaKNemcbLRKa7jXYGDZXr3LoT9pTIzq2hPEbld7w/qv9h+ikWGz8fL1g=="
},
"node_modules/import-in-the-middle": {
- "version": "1.12.0",
- "resolved": "https://registry.npmjs.org/import-in-the-middle/-/import-in-the-middle-1.12.0.tgz",
- "integrity": "sha512-yAgSE7GmtRcu4ZUSFX/4v69UGXwugFFSdIQJ14LHPOPPQrWv8Y7O9PHsw8Ovk7bKCLe4sjXMbZFqGFcLHpZ89w==",
+ "version": "1.13.1",
+ "resolved": "https://registry.npmjs.org/import-in-the-middle/-/import-in-the-middle-1.13.1.tgz",
+ "integrity": "sha512-k2V9wNm9B+ysuelDTHjI9d5KPc4l8zAZTGqj+pcynvWkypZd857ryzN8jNC7Pg2YZXNMJcHRPpaDyCBbNyVRpA==",
"dependencies": {
- "acorn": "^8.8.2",
+ "acorn": "^8.14.0",
"acorn-import-attributes": "^1.9.5",
"cjs-module-lexer": "^1.2.2",
"module-details-from-path": "^1.0.3"
@@ -969,9 +1332,9 @@
"integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw=="
},
"node_modules/jose": {
- "version": "5.9.6",
- "resolved": "https://registry.npmjs.org/jose/-/jose-5.9.6.tgz",
- "integrity": "sha512-AMlnetc9+CV9asI19zHmrgS/WYsWUwCn2R7RzlbJWD7F9eWYUTGyBmU9o6PxngtLGOiDGPRu+Uc4fhKzbpteZQ==",
+ "version": "5.10.0",
+ "resolved": "https://registry.npmjs.org/jose/-/jose-5.10.0.tgz",
+ "integrity": "sha512-s+3Al/p9g32Iq+oqXxkW//7jk2Vig6FF1CFqzVXoTUXt2qz89YWbL+OwS17NFYEvxC35n0FKeGO2LGYSxeM2Gg==",
"funding": {
"url": "https://github.com/sponsors/panva"
}
@@ -987,15 +1350,34 @@
"integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ=="
},
"node_modules/long": {
- "version": "5.2.4",
- "resolved": "https://registry.npmjs.org/long/-/long-5.2.4.tgz",
- "integrity": "sha512-qtzLbJE8hq7VabR3mISmVGtoXP8KGc2Z/AT8OuqlYD7JTR3oqrgwdjnk07wpj1twXxYmgDXgoKVWUG/fReSzHg=="
+ "version": "5.3.1",
+ "resolved": "https://registry.npmjs.org/long/-/long-5.3.1.tgz",
+ "integrity": "sha512-ka87Jz3gcx/I7Hal94xaN2tZEOPoUOEVftkQqZx2EeQRN7LGdfLlI3FvZ+7WDplm+vK2Urx9ULrvSowtdCieng=="
},
"node_modules/merge-stream": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
"integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w=="
},
+ "node_modules/mime-db": {
+ "version": "1.52.0",
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
+ "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/mime-types": {
+ "version": "2.1.35",
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
+ "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
+ "dependencies": {
+ "mime-db": "1.52.0"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
"node_modules/mimic-fn": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz",
@@ -1028,9 +1410,9 @@
"integrity": "sha512-SnTNxFV0+5z+01yWPByxvyTDGkBalyTeVTr2FxLJlWFf/isKiI6GIYrEiv+aggU3tHXu6a9l1yyCvdA5nhPOQA=="
},
"node_modules/nanoid": {
- "version": "3.3.8",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz",
- "integrity": "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==",
+ "version": "3.3.11",
+ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz",
+ "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==",
"funding": [
{
"type": "github",
@@ -1044,6 +1426,14 @@
"node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
}
},
+ "node_modules/negotiator": {
+ "version": "0.6.3",
+ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
+ "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
"node_modules/npm-run-path": {
"version": "5.3.0",
"resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz",
@@ -1069,6 +1459,14 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
+ "node_modules/object-assign": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
+ "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
"node_modules/onetime": {
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz",
@@ -1128,9 +1526,9 @@
}
},
"node_modules/require-in-the-middle": {
- "version": "7.4.0",
- "resolved": "https://registry.npmjs.org/require-in-the-middle/-/require-in-the-middle-7.4.0.tgz",
- "integrity": "sha512-X34iHADNbNDfr6OTStIAHWSAvvKQRYgLO6duASaVf7J2VA3lvmNYboAHOuLC2huav1IwgZJtyEcJCKVzFxOSMQ==",
+ "version": "7.5.2",
+ "resolved": "https://registry.npmjs.org/require-in-the-middle/-/require-in-the-middle-7.5.2.tgz",
+ "integrity": "sha512-gAZ+kLqBdHarXB64XpAe2VCjB7rIRv+mU8tfRWziHRJ5umKsIHN2tLLv6EtMw7WCdP19S0ERVMldNvxYCHnhSQ==",
"dependencies": {
"debug": "^4.3.5",
"module-details-from-path": "^1.0.3",
@@ -1168,9 +1566,9 @@
}
},
"node_modules/semver": {
- "version": "7.6.3",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
- "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
+ "version": "7.7.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz",
+ "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==",
"bin": {
"semver": "bin/semver.js"
},
@@ -1218,6 +1616,68 @@
"resolved": "https://registry.npmjs.org/slug/-/slug-6.1.0.tgz",
"integrity": "sha512-x6vLHCMasg4DR2LPiyFGI0gJJhywY6DTiGhCrOMzb3SOk/0JVLIaL4UhyFSHu04SD3uAavrKY/K3zZ3i6iRcgA=="
},
+ "node_modules/socket.io": {
+ "version": "4.7.4",
+ "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.7.4.tgz",
+ "integrity": "sha512-DcotgfP1Zg9iP/dH9zvAQcWrE0TtbMVwXmlV4T4mqsvY+gw+LqUGPfx2AoVyRk0FLME+GQhufDMyacFmw7ksqw==",
+ "dependencies": {
+ "accepts": "~1.3.4",
+ "base64id": "~2.0.0",
+ "cors": "~2.8.5",
+ "debug": "~4.3.2",
+ "engine.io": "~6.5.2",
+ "socket.io-adapter": "~2.5.2",
+ "socket.io-parser": "~4.2.4"
+ },
+ "engines": {
+ "node": ">=10.2.0"
+ }
+ },
+ "node_modules/socket.io-adapter": {
+ "version": "2.5.5",
+ "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.5.tgz",
+ "integrity": "sha512-eLDQas5dzPgOWCk9GuuJC2lBqItuhKI4uxGgo9aIV7MYbk2h9Q6uULEh8WBzThoI7l+qU9Ast9fVUmkqPP9wYg==",
+ "dependencies": {
+ "debug": "~4.3.4",
+ "ws": "~8.17.1"
+ }
+ },
+ "node_modules/socket.io-adapter/node_modules/debug": {
+ "version": "4.3.7",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
+ "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==",
+ "dependencies": {
+ "ms": "^2.1.3"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/socket.io-adapter/node_modules/ws": {
+ "version": "8.17.1",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz",
+ "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==",
+ "engines": {
+ "node": ">=10.0.0"
+ },
+ "peerDependencies": {
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": ">=5.0.2"
+ },
+ "peerDependenciesMeta": {
+ "bufferutil": {
+ "optional": true
+ },
+ "utf-8-validate": {
+ "optional": true
+ }
+ }
+ },
"node_modules/socket.io-client": {
"version": "4.7.5",
"resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.7.5.tgz",
@@ -1276,6 +1736,22 @@
}
}
},
+ "node_modules/socket.io/node_modules/debug": {
+ "version": "4.3.7",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
+ "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==",
+ "dependencies": {
+ "ms": "^2.1.3"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
"node_modules/string-width": {
"version": "4.2.3",
"resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
@@ -1371,6 +1847,11 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
+ "node_modules/tinyexec": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.2.tgz",
+ "integrity": "sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA=="
+ },
"node_modules/tsafe": {
"version": "1.7.2",
"resolved": "https://registry.npmjs.org/tsafe/-/tsafe-1.7.2.tgz",
@@ -1408,6 +1889,11 @@
"ulid": "bin/cli.js"
}
},
+ "node_modules/uncrypto": {
+ "version": "0.1.3",
+ "resolved": "https://registry.npmjs.org/uncrypto/-/uncrypto-0.1.3.tgz",
+ "integrity": "sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q=="
+ },
"node_modules/undici-types": {
"version": "6.20.0",
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.20.0.tgz",
@@ -1425,6 +1911,14 @@
"uuid": "dist/bin/uuid"
}
},
+ "node_modules/vary": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
+ "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
"node_modules/which": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
@@ -1517,9 +2011,9 @@
}
},
"node_modules/zod": {
- "version": "3.24.1",
- "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.1.tgz",
- "integrity": "sha512-muH7gBL9sI1nciMZV67X5fTKKBLtwpZ5VBp1vsOQzj1MhrBZ4wlVCm3gedKZWLp0Oyel8sIGfeiz54Su+OVT+A==",
+ "version": "3.24.2",
+ "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.2.tgz",
+ "integrity": "sha512-lY7CDW43ECgW9u1TcT3IoXHflywfVqDYze4waEz812jR/bZ8FHDsl7pFQoSZTz5N+2NqRXs8GBwnAwo3ZNxqhQ==",
"funding": {
"url": "https://github.com/sponsors/colinhacks"
}
diff --git a/packages/cli-v3/e2e/fixtures/esm-only-external/package.json b/packages/cli-v3/e2e/fixtures/esm-only-external/package.json
index 33dea5acdd..c32bb7dbc2 100644
--- a/packages/cli-v3/e2e/fixtures/esm-only-external/package.json
+++ b/packages/cli-v3/e2e/fixtures/esm-only-external/package.json
@@ -2,7 +2,7 @@
"name": "esm-only-external",
"private": true,
"type": "module",
- "packageManager": "pnpm@8.15.5+sha256.4b4efa12490e5055d59b9b9fc9438b7d581a6b7af3b5675eb5c5f447cee1a589",
+ "packageManager": "yarn@4.2.2+sha256.1aa43a5304405be7a7cb9cb5de7b97de9c4e8ddd3273e4dad00d6ae3eb39f0ef",
"engines": {
"pnpm": "8.15.5",
"yarn": "4.2.2"
@@ -11,7 +11,7 @@
"packages/*"
],
"dependencies": {
- "@trigger.dev/sdk": "0.0.0-prerelease-20250116195421",
+ "@trigger.dev/sdk": "0.0.0-prerelease-20250321122618",
"mupdf": "^0.3.0"
},
"devDependencies": {
diff --git a/packages/cli-v3/e2e/fixtures/esm-only-external/pnpm-lock.yaml b/packages/cli-v3/e2e/fixtures/esm-only-external/pnpm-lock.yaml
index 574bc381f6..47e883fde1 100644
--- a/packages/cli-v3/e2e/fixtures/esm-only-external/pnpm-lock.yaml
+++ b/packages/cli-v3/e2e/fixtures/esm-only-external/pnpm-lock.yaml
@@ -9,8 +9,8 @@ importers:
.:
dependencies:
'@trigger.dev/sdk':
- specifier: 0.0.0-prerelease-20250116195421
- version: 0.0.0-prerelease-20250116195421(zod@3.22.3)
+ specifier: 0.0.0-prerelease-20250321122618
+ version: 0.0.0-prerelease-20250321122618(zod@3.23.8)
mupdf:
specifier: ^0.3.0
version: 0.3.0
@@ -21,6 +21,10 @@ importers:
packages:
+ /@bugsnag/cuid@3.2.1:
+ resolution: {integrity: sha512-zpvN8xQ5rdRWakMd/BcVkdn2F8HKlDSbM3l7duueK590WmI1T0ObTLc1V/1e55r14WNjPd5AJTYX4yPEAFVi+Q==}
+ dev: false
+
/@electric-sql/client@1.0.0-beta.1:
resolution: {integrity: sha512-Ei9jN3pDoGzc+a/bGqnB5ajb52IvSv7/n2btuyzUlcOHIR2kM9fqtYTJXPwZYKLkGZlHWlpHgWyRtrinkP2nHg==}
optionalDependencies:
@@ -90,6 +94,16 @@ packages:
'@opentelemetry/semantic-conventions': 1.25.1
dev: false
+ /@opentelemetry/core@1.30.1(@opentelemetry/api@1.9.0):
+ resolution: {integrity: sha512-OOCM2C/QIURhJMuKaekP3TRBxBKxG/TWWA0TL2J6nXUtDnuCtccy49LUJF8xPFXMX+0LMcxFpCo8M9cGY1W6rQ==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@opentelemetry/api': '>=1.0.0 <1.10.0'
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/semantic-conventions': 1.28.0
+ dev: false
+
/@opentelemetry/exporter-logs-otlp-http@0.52.1(@opentelemetry/api@1.9.0):
resolution: {integrity: sha512-qKgywId2DbdowPZpOBXQKp0B8DfhfIArmSic15z13Nk/JAOccBUQdPwDjDnjsM5f0ckZFMVR2t/tijTUAqDZoA==}
engines: {node: '>=14'}
@@ -328,6 +342,11 @@ packages:
engines: {node: '>=14'}
dev: false
+ /@opentelemetry/semantic-conventions@1.28.0:
+ resolution: {integrity: sha512-lp4qAiMTD4sNWW4DbKLBkfiMZ4jbAboJIGOQr5DvciMRI494OapieI9qiODpOt0XBr1LjIDy1xAGAnVs5supTA==}
+ engines: {node: '>=14'}
+ dev: false
+
/@protobufjs/aspromise@1.1.2:
resolution: {integrity: sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==}
dev: false
@@ -383,15 +402,17 @@ packages:
resolution: {integrity: sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==}
dev: false
- /@trigger.dev/core@0.0.0-prerelease-20250116195421:
- resolution: {integrity: sha512-bxZ5vq3txcUxQln8BZSb2No7gHPG/qTSeo5uq6W2+OQKoVN+c5pmVTYQQa6Fwfd2AXhpkU9ovdM3V1IoEddOtA==}
+ /@trigger.dev/core@0.0.0-prerelease-20250321122618:
+ resolution: {integrity: sha512-0hSMKqvM39V1A8YjZxYivw109ZrGk22Pfa8ydQ29nCubdeTMe6for+AYzj89BIOnEGeEZ24Hzg2uVc5Av9BUHg==}
engines: {node: '>=18.20.0'}
dependencies:
+ '@bugsnag/cuid': 3.2.1
'@electric-sql/client': 1.0.0-beta.1
'@google-cloud/precise-date': 4.0.0
'@jsonhero/path': 1.0.21
'@opentelemetry/api': 1.9.0
'@opentelemetry/api-logs': 0.52.1
+ '@opentelemetry/core': 1.30.1(@opentelemetry/api@1.9.0)
'@opentelemetry/exporter-logs-otlp-http': 0.52.1(@opentelemetry/api@1.9.0)
'@opentelemetry/exporter-trace-otlp-http': 0.52.1(@opentelemetry/api@1.9.0)
'@opentelemetry/instrumentation': 0.52.1(@opentelemetry/api@1.9.0)
@@ -402,13 +423,16 @@ packages:
'@opentelemetry/sdk-trace-node': 1.25.1(@opentelemetry/api@1.9.0)
'@opentelemetry/semantic-conventions': 1.25.1
dequal: 2.0.3
+ eventsource: 3.0.5
eventsource-parser: 3.0.0
execa: 8.0.1
humanize-duration: 3.32.1
jose: 5.9.6
nanoid: 3.3.8
+ socket.io: 4.7.4
socket.io-client: 4.7.5
superjson: 2.2.1
+ tinyexec: 0.3.2
zod: 3.23.8
zod-error: 1.5.0
zod-validation-error: 1.5.0(zod@3.23.8)
@@ -418,8 +442,8 @@ packages:
- utf-8-validate
dev: false
- /@trigger.dev/sdk@0.0.0-prerelease-20250116195421(zod@3.22.3):
- resolution: {integrity: sha512-/Kw+q/mDulGgiSHR9L3nldGOWH72AQAys9zuoBO72JjVfipKI1R8jjqQHhZjWqolMYqgg9XaJr9lQM8sV5lWwQ==}
+ /@trigger.dev/sdk@0.0.0-prerelease-20250321122618(zod@3.23.8):
+ resolution: {integrity: sha512-/DOWqGdTxkeUY3WIJ/lPS8vC9VwitQiB+ONHCR5L1xBovHVaCyj3zMn/dWPsM+Wtz2wVZAPZ45pmHqvJEX3qLw==}
engines: {node: '>=18.20.0'}
peerDependencies:
zod: ^3.0.0
@@ -427,7 +451,7 @@ packages:
'@opentelemetry/api': 1.9.0
'@opentelemetry/api-logs': 0.52.1
'@opentelemetry/semantic-conventions': 1.25.1
- '@trigger.dev/core': 0.0.0-prerelease-20250116195421
+ '@trigger.dev/core': 0.0.0-prerelease-20250321122618
chalk: 5.3.0
cronstrue: 2.50.0
debug: 4.3.7
@@ -435,15 +459,26 @@ packages:
slug: 6.1.0
terminal-link: 3.0.0
ulid: 2.3.0
+ uncrypto: 0.1.3
uuid: 9.0.1
ws: 8.18.0
- zod: 3.22.3
+ zod: 3.23.8
transitivePeerDependencies:
- bufferutil
- supports-color
- utf-8-validate
dev: false
+ /@types/cookie@0.4.1:
+ resolution: {integrity: sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==}
+ dev: false
+
+ /@types/cors@2.8.17:
+ resolution: {integrity: sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==}
+ dependencies:
+ '@types/node': 22.5.5
+ dev: false
+
/@types/node@22.5.5:
resolution: {integrity: sha512-Xjs4y5UPO/CLdzpgR6GirZJx36yScjh73+2NlLlkFRSoQN8B0DpfXPdZGnvVmLRLOsqDpOfTNv7D9trgGhmOIA==}
dependencies:
@@ -454,6 +489,14 @@ packages:
resolution: {integrity: sha512-UE7oxhQLLd9gub6JKIAhDq06T0F6FnztwMNRvYgjeQSBeMc1ZG/tA47EwfduvkuQS8apbkM/lpLpWsaCeYsXVg==}
dev: false
+ /accepts@1.3.8:
+ resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==}
+ engines: {node: '>= 0.6'}
+ dependencies:
+ mime-types: 2.1.35
+ negotiator: 0.6.3
+ dev: false
+
/acorn-import-attributes@1.9.5(acorn@8.12.1):
resolution: {integrity: sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==}
peerDependencies:
@@ -487,6 +530,11 @@ packages:
color-convert: 2.0.1
dev: false
+ /base64id@2.0.0:
+ resolution: {integrity: sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==}
+ engines: {node: ^4.5.0 || >= 5.9}
+ dev: false
+
/chalk@5.3.0:
resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==}
engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
@@ -516,6 +564,11 @@ packages:
resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
dev: false
+ /cookie@0.4.2:
+ resolution: {integrity: sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==}
+ engines: {node: '>= 0.6'}
+ dev: false
+
/copy-anything@3.0.5:
resolution: {integrity: sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==}
engines: {node: '>=12.13'}
@@ -523,6 +576,14 @@ packages:
is-what: 4.1.16
dev: false
+ /cors@2.8.5:
+ resolution: {integrity: sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==}
+ engines: {node: '>= 0.10'}
+ dependencies:
+ object-assign: 4.1.1
+ vary: 1.1.2
+ dev: false
+
/cronstrue@2.50.0:
resolution: {integrity: sha512-ULYhWIonJzlScCCQrPUG5uMXzXxSixty4djud9SS37DoNxDdkeRocxzHuAo4ImRBUK+mAuU5X9TSwEDccnnuPg==}
hasBin: true
@@ -577,6 +638,26 @@ packages:
engines: {node: '>=10.0.0'}
dev: false
+ /engine.io@6.5.5:
+ resolution: {integrity: sha512-C5Pn8Wk+1vKBoHghJODM63yk8MvrO9EWZUfkAt5HAqIgPE4/8FF0PEGHXtEd40l223+cE5ABWuPzm38PHFXfMA==}
+ engines: {node: '>=10.2.0'}
+ dependencies:
+ '@types/cookie': 0.4.1
+ '@types/cors': 2.8.17
+ '@types/node': 22.5.5
+ accepts: 1.3.8
+ base64id: 2.0.0
+ cookie: 0.4.2
+ cors: 2.8.5
+ debug: 4.3.7
+ engine.io-parser: 5.2.3
+ ws: 8.17.1
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - utf-8-validate
+ dev: false
+
/escalade@3.2.0:
resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
engines: {node: '>=6'}
@@ -587,6 +668,13 @@ packages:
engines: {node: '>=18.0.0'}
dev: false
+ /eventsource@3.0.5:
+ resolution: {integrity: sha512-LT/5J605bx5SNyE+ITBDiM3FxffBiq9un7Vx0EwMDM3vg8sWKx/tO2zC+LMqZ+smAM0F2hblaDZUVZF0te2pSw==}
+ engines: {node: '>=18.0.0'}
+ dependencies:
+ eventsource-parser: 3.0.0
+ dev: false
+
/evt@2.5.7:
resolution: {integrity: sha512-dr7Wd16ry5F8WNU1xXLKpFpO3HsoAGg8zC48e08vDdzMzGWCP9/QFGt1PQptEEDh8SwYP3EL8M+d/Gb0kgUp6g==}
dependencies:
@@ -700,6 +788,18 @@ packages:
resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
dev: false
+ /mime-db@1.52.0:
+ resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}
+ engines: {node: '>= 0.6'}
+ dev: false
+
+ /mime-types@2.1.35:
+ resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}
+ engines: {node: '>= 0.6'}
+ dependencies:
+ mime-db: 1.52.0
+ dev: false
+
/mimic-fn@4.0.0:
resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==}
engines: {node: '>=12'}
@@ -727,6 +827,11 @@ packages:
hasBin: true
dev: false
+ /negotiator@0.6.3:
+ resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==}
+ engines: {node: '>= 0.6'}
+ dev: false
+
/npm-run-path@5.3.0:
resolution: {integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
@@ -734,6 +839,11 @@ packages:
path-key: 4.0.0
dev: false
+ /object-assign@4.1.1:
+ resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
+ engines: {node: '>=0.10.0'}
+ dev: false
+
/onetime@6.0.0:
resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==}
engines: {node: '>=12'}
@@ -836,6 +946,17 @@ packages:
resolution: {integrity: sha512-x6vLHCMasg4DR2LPiyFGI0gJJhywY6DTiGhCrOMzb3SOk/0JVLIaL4UhyFSHu04SD3uAavrKY/K3zZ3i6iRcgA==}
dev: false
+ /socket.io-adapter@2.5.5:
+ resolution: {integrity: sha512-eLDQas5dzPgOWCk9GuuJC2lBqItuhKI4uxGgo9aIV7MYbk2h9Q6uULEh8WBzThoI7l+qU9Ast9fVUmkqPP9wYg==}
+ dependencies:
+ debug: 4.3.7
+ ws: 8.17.1
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - utf-8-validate
+ dev: false
+
/socket.io-client@4.7.5:
resolution: {integrity: sha512-sJ/tqHOCe7Z50JCBCXrsY3I2k03iOiUe+tj1OmKeD2lXPiGH/RUCdTZFoqVyN7l1MnpIzPrGtLcijffmeouNlQ==}
engines: {node: '>=10.0.0'}
@@ -860,6 +981,23 @@ packages:
- supports-color
dev: false
+ /socket.io@4.7.4:
+ resolution: {integrity: sha512-DcotgfP1Zg9iP/dH9zvAQcWrE0TtbMVwXmlV4T4mqsvY+gw+LqUGPfx2AoVyRk0FLME+GQhufDMyacFmw7ksqw==}
+ engines: {node: '>=10.2.0'}
+ dependencies:
+ accepts: 1.3.8
+ base64id: 2.0.0
+ cors: 2.8.5
+ debug: 4.3.7
+ engine.io: 6.5.5
+ socket.io-adapter: 2.5.5
+ socket.io-parser: 4.2.4
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - utf-8-validate
+ dev: false
+
/string-width@4.2.3:
resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
engines: {node: '>=8'}
@@ -916,6 +1054,10 @@ packages:
supports-hyperlinks: 2.3.0
dev: false
+ /tinyexec@0.3.2:
+ resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==}
+ dev: false
+
/tsafe@1.7.2:
resolution: {integrity: sha512-dAPfQLhCfCRre5qs+Z5Q2a7s2CV7RxffZUmvj7puGaePYjECzWREJFd3w4XSFe/T5tbxgowfItA/JSSZ6Ma3dA==}
dev: false
@@ -936,6 +1078,10 @@ packages:
hasBin: true
dev: false
+ /uncrypto@0.1.3:
+ resolution: {integrity: sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==}
+ dev: false
+
/undici-types@6.19.8:
resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==}
dev: false
@@ -945,6 +1091,11 @@ packages:
hasBin: true
dev: false
+ /vary@1.1.2:
+ resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==}
+ engines: {node: '>= 0.8'}
+ dev: false
+
/which@2.0.2:
resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
engines: {node: '>= 8'}
@@ -1031,10 +1182,6 @@ packages:
zod: 3.23.8
dev: false
- /zod@3.22.3:
- resolution: {integrity: sha512-EjIevzuJRiRPbVH4mGc8nApb/lVLKVpmUhAaR5R5doKGfAnGJ6Gr3CViAVjP+4FWSxCsybeWQdcgCtbX+7oZug==}
- dev: false
-
/zod@3.23.8:
resolution: {integrity: sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==}
dev: false
diff --git a/packages/cli-v3/e2e/fixtures/esm-only-external/yarn.lock b/packages/cli-v3/e2e/fixtures/esm-only-external/yarn.lock
index a8c7ad1a76..00a4c8b69b 100644
--- a/packages/cli-v3/e2e/fixtures/esm-only-external/yarn.lock
+++ b/packages/cli-v3/e2e/fixtures/esm-only-external/yarn.lock
@@ -5,6 +5,13 @@ __metadata:
version: 8
cacheKey: 10c0
+"@bugsnag/cuid@npm:^3.1.1":
+ version: 3.2.1
+ resolution: "@bugsnag/cuid@npm:3.2.1"
+ checksum: 10c0/f2da80e922a3ed14bcede1e8257ce02974fdce91f2b6ecfc25846f70c250f2909b2a19f898e309cf564c882b39ac685df99e8fe498db45071d3019db5ea03e6a
+ languageName: node
+ linkType: hard
+
"@electric-sql/client@npm:1.0.0-beta.1":
version: 1.0.0-beta.1
resolution: "@electric-sql/client@npm:1.0.0-beta.1"
@@ -25,12 +32,12 @@ __metadata:
linkType: hard
"@grpc/grpc-js@npm:^1.7.1":
- version: 1.12.5
- resolution: "@grpc/grpc-js@npm:1.12.5"
+ version: 1.13.0
+ resolution: "@grpc/grpc-js@npm:1.13.0"
dependencies:
"@grpc/proto-loader": "npm:^0.7.13"
"@js-sdsl/ordered-map": "npm:^4.4.2"
- checksum: 10c0/1e539d98951e6ff6611e3cedc8eec343625fdab76c7683aa7fca605b3de17d8aabaf2f78d7e95400e68dc8e249cda498781e9a3481bb6b713fc167da3fe59a8e
+ checksum: 10c0/c760d5eb5ee07c4cfd5dcd83ee62d5232d5776b5d1ce5d436edc53402ec16ef053d3a283f48ce832f4635009dbd411ac7586495a7d053fc5f202e95811cf4129
languageName: node
linkType: hard
@@ -98,6 +105,17 @@ __metadata:
languageName: node
linkType: hard
+"@opentelemetry/core@npm:^1.30.1":
+ version: 1.30.1
+ resolution: "@opentelemetry/core@npm:1.30.1"
+ dependencies:
+ "@opentelemetry/semantic-conventions": "npm:1.28.0"
+ peerDependencies:
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ checksum: 10c0/4c25ba50a6137c2ba9ca563fb269378f3c9ca6fd1b3f15dbb6eff78eebf5656f281997cbb7be8e51c01649fd6ad091083fcd8a42dd9b5dfac907dc06d7cfa092
+ languageName: node
+ linkType: hard
+
"@opentelemetry/exporter-logs-otlp-http@npm:0.52.1":
version: 0.52.1
resolution: "@opentelemetry/exporter-logs-otlp-http@npm:0.52.1"
@@ -351,6 +369,13 @@ __metadata:
languageName: node
linkType: hard
+"@opentelemetry/semantic-conventions@npm:1.28.0":
+ version: 1.28.0
+ resolution: "@opentelemetry/semantic-conventions@npm:1.28.0"
+ checksum: 10c0/deb8a0f744198071e70fea27143cf7c9f7ecb7e4d7b619488c917834ea09b31543c1c2bcea4ec5f3cf68797f0ef3549609c14e859013d9376400ac1499c2b9cb
+ languageName: node
+ linkType: hard
+
"@protobufjs/aspromise@npm:^1.1.1, @protobufjs/aspromise@npm:^1.1.2":
version: 1.1.2
resolution: "@protobufjs/aspromise@npm:1.1.2"
@@ -425,8 +450,8 @@ __metadata:
linkType: hard
"@rollup/rollup-darwin-arm64@npm:^4.18.1":
- version: 4.30.1
- resolution: "@rollup/rollup-darwin-arm64@npm:4.30.1"
+ version: 4.36.0
+ resolution: "@rollup/rollup-darwin-arm64@npm:4.36.0"
conditions: os=darwin & cpu=arm64
languageName: node
linkType: hard
@@ -438,15 +463,17 @@ __metadata:
languageName: node
linkType: hard
-"@trigger.dev/core@npm:0.0.0-prerelease-20250116195421":
- version: 0.0.0-prerelease-20250116195421
- resolution: "@trigger.dev/core@npm:0.0.0-prerelease-20250116195421"
+"@trigger.dev/core@npm:0.0.0-prerelease-20250321122618":
+ version: 0.0.0-prerelease-20250321122618
+ resolution: "@trigger.dev/core@npm:0.0.0-prerelease-20250321122618"
dependencies:
+ "@bugsnag/cuid": "npm:^3.1.1"
"@electric-sql/client": "npm:1.0.0-beta.1"
"@google-cloud/precise-date": "npm:^4.0.0"
"@jsonhero/path": "npm:^1.0.21"
"@opentelemetry/api": "npm:1.9.0"
"@opentelemetry/api-logs": "npm:0.52.1"
+ "@opentelemetry/core": "npm:^1.30.1"
"@opentelemetry/exporter-logs-otlp-http": "npm:0.52.1"
"@opentelemetry/exporter-trace-otlp-http": "npm:0.52.1"
"@opentelemetry/instrumentation": "npm:0.52.1"
@@ -457,28 +484,31 @@ __metadata:
"@opentelemetry/sdk-trace-node": "npm:1.25.1"
"@opentelemetry/semantic-conventions": "npm:1.25.1"
dequal: "npm:^2.0.3"
+ eventsource: "npm:^3.0.5"
eventsource-parser: "npm:^3.0.0"
execa: "npm:^8.0.1"
humanize-duration: "npm:^3.27.3"
jose: "npm:^5.4.0"
nanoid: "npm:^3.3.4"
+ socket.io: "npm:4.7.4"
socket.io-client: "npm:4.7.5"
superjson: "npm:^2.2.1"
+ tinyexec: "npm:^0.3.2"
zod: "npm:3.23.8"
zod-error: "npm:1.5.0"
zod-validation-error: "npm:^1.5.0"
- checksum: 10c0/90b53701ba59608e4b0319c5d08147ee04440e14ecb163dabcbea725f46555d4aa8b91fee51a31e616cd88d5f6dcfc15cb7a59491894c36d5cfe818454fff620
+ checksum: 10c0/0bcab7e5ea31c2ee49699b83b26da9994f0ce803b3208ac12e2157ebd21c1e872021922241ba835a98880cd051d2cc245c472ec1901196bfc2a41a53663326ec
languageName: node
linkType: hard
-"@trigger.dev/sdk@npm:0.0.0-prerelease-20250116195421":
- version: 0.0.0-prerelease-20250116195421
- resolution: "@trigger.dev/sdk@npm:0.0.0-prerelease-20250116195421"
+"@trigger.dev/sdk@npm:0.0.0-prerelease-20250321122618":
+ version: 0.0.0-prerelease-20250321122618
+ resolution: "@trigger.dev/sdk@npm:0.0.0-prerelease-20250321122618"
dependencies:
"@opentelemetry/api": "npm:1.9.0"
"@opentelemetry/api-logs": "npm:0.52.1"
"@opentelemetry/semantic-conventions": "npm:1.25.1"
- "@trigger.dev/core": "npm:0.0.0-prerelease-20250116195421"
+ "@trigger.dev/core": "npm:0.0.0-prerelease-20250321122618"
chalk: "npm:^5.2.0"
cronstrue: "npm:^2.21.0"
debug: "npm:^4.3.4"
@@ -486,20 +516,37 @@ __metadata:
slug: "npm:^6.0.0"
terminal-link: "npm:^3.0.0"
ulid: "npm:^2.3.0"
+ uncrypto: "npm:^0.1.3"
uuid: "npm:^9.0.0"
ws: "npm:^8.11.0"
peerDependencies:
zod: ^3.0.0
- checksum: 10c0/6c54e6588a02097a49f11784fefaa1e00b12af4875f6f599de80d54031b9ef919ff017924d6870427cd5d8da178d177df0b0a6c32c0930a03882e3c6c9def1dc
+ checksum: 10c0/2ae41e2fe41a781346a91144b946355521bbcce5bd4cbf4a48f4aeb0b9a7b338a9e749ed014c36732fb128510a01573230a70571c3ccb91f5500776b52ca17a5
+ languageName: node
+ linkType: hard
+
+"@types/cookie@npm:^0.4.1":
+ version: 0.4.1
+ resolution: "@types/cookie@npm:0.4.1"
+ checksum: 10c0/f96afe12bd51be1ec61410b0641243d93fa3a494702407c787a4c872b5c8bcd39b224471452055e44a9ce42af1a636e87d161994226eaf4c2be9c30f60418409
+ languageName: node
+ linkType: hard
+
+"@types/cors@npm:^2.8.12":
+ version: 2.8.17
+ resolution: "@types/cors@npm:2.8.17"
+ dependencies:
+ "@types/node": "npm:*"
+ checksum: 10c0/457364c28c89f3d9ed34800e1de5c6eaaf344d1bb39af122f013322a50bc606eb2aa6f63de4e41a7a08ba7ef454473926c94a830636723da45bf786df032696d
languageName: node
linkType: hard
-"@types/node@npm:>=13.7.0":
- version: 22.10.7
- resolution: "@types/node@npm:22.10.7"
+"@types/node@npm:*, @types/node@npm:>=10.0.0, @types/node@npm:>=13.7.0":
+ version: 22.13.11
+ resolution: "@types/node@npm:22.13.11"
dependencies:
undici-types: "npm:~6.20.0"
- checksum: 10c0/c941b4689dfc4044b64a5f601306cbcb0c7210be853ba378a5dd44137898c45accedd796ee002ad9407024cac7ecaf5049304951cb1d80ce3d7cebbbae56f20e
+ checksum: 10c0/f6ee33d36372242535c38640fe7550a6640d8a775ec19b55bfc11775b521cba072d892ca92a912332ce01b317293d645c1bf767f3f882ec719f2404a3d2a5b96
languageName: node
linkType: hard
@@ -510,6 +557,16 @@ __metadata:
languageName: node
linkType: hard
+"accepts@npm:~1.3.4":
+ version: 1.3.8
+ resolution: "accepts@npm:1.3.8"
+ dependencies:
+ mime-types: "npm:~2.1.34"
+ negotiator: "npm:0.6.3"
+ checksum: 10c0/3a35c5f5586cfb9a21163ca47a5f77ac34fa8ceb5d17d2fa2c0d81f41cbd7f8c6fa52c77e2c039acc0f4d09e71abdc51144246900f6bef5e3c4b333f77d89362
+ languageName: node
+ linkType: hard
+
"acorn-import-attributes@npm:^1.9.5":
version: 1.9.5
resolution: "acorn-import-attributes@npm:1.9.5"
@@ -519,12 +576,12 @@ __metadata:
languageName: node
linkType: hard
-"acorn@npm:^8.8.2":
- version: 8.14.0
- resolution: "acorn@npm:8.14.0"
+"acorn@npm:^8.14.0":
+ version: 8.14.1
+ resolution: "acorn@npm:8.14.1"
bin:
acorn: bin/acorn
- checksum: 10c0/6d4ee461a7734b2f48836ee0fbb752903606e576cc100eb49340295129ca0b452f3ba91ddd4424a1d4406a98adfb2ebb6bd0ff4c49d7a0930c10e462719bbfd7
+ checksum: 10c0/dbd36c1ed1d2fa3550140000371fcf721578095b18777b85a79df231ca093b08edc6858d75d6e48c73e431c174dcf9214edbd7e6fa5911b93bd8abfa54e47123
languageName: node
linkType: hard
@@ -553,6 +610,13 @@ __metadata:
languageName: node
linkType: hard
+"base64id@npm:2.0.0, base64id@npm:~2.0.0":
+ version: 2.0.0
+ resolution: "base64id@npm:2.0.0"
+ checksum: 10c0/6919efd237ed44b9988cbfc33eca6f173a10e810ce50292b271a1a421aac7748ef232a64d1e6032b08f19aae48dce6ee8f66c5ae2c9e5066c82b884861d4d453
+ languageName: node
+ linkType: hard
+
"chalk@npm:^5.2.0":
version: 5.3.0
resolution: "chalk@npm:5.3.0"
@@ -561,9 +625,9 @@ __metadata:
linkType: hard
"cjs-module-lexer@npm:^1.2.2":
- version: 1.4.1
- resolution: "cjs-module-lexer@npm:1.4.1"
- checksum: 10c0/5a7d8279629c9ba8ccf38078c2fed75b7737973ced22b9b5a54180efa57fb2fe2bb7bec6aec55e3b8f3f5044f5d7b240347ad9bd285e7c3d0ee5b0a1d0504dfc
+ version: 1.4.3
+ resolution: "cjs-module-lexer@npm:1.4.3"
+ checksum: 10c0/076b3af85adc4d65dbdab1b5b240fe5b45d44fcf0ef9d429044dd94d19be5589376805c44fb2d4b3e684e5fe6a9b7cf3e426476a6507c45283c5fc6ff95240be
languageName: node
linkType: hard
@@ -594,6 +658,13 @@ __metadata:
languageName: node
linkType: hard
+"cookie@npm:~0.4.1":
+ version: 0.4.2
+ resolution: "cookie@npm:0.4.2"
+ checksum: 10c0/beab41fbd7c20175e3a2799ba948c1dcc71ef69f23fe14eeeff59fc09f50c517b0f77098db87dbb4c55da802f9d86ee86cdc1cd3efd87760341551838d53fca2
+ languageName: node
+ linkType: hard
+
"copy-anything@npm:^3.0.2":
version: 3.0.5
resolution: "copy-anything@npm:3.0.5"
@@ -603,6 +674,16 @@ __metadata:
languageName: node
linkType: hard
+"cors@npm:~2.8.5":
+ version: 2.8.5
+ resolution: "cors@npm:2.8.5"
+ dependencies:
+ object-assign: "npm:^4"
+ vary: "npm:^1"
+ checksum: 10c0/373702b7999409922da80de4a61938aabba6929aea5b6fd9096fefb9e8342f626c0ebd7507b0e8b0b311380744cc985f27edebc0a26e0ddb784b54e1085de761
+ languageName: node
+ linkType: hard
+
"cronstrue@npm:^2.21.0":
version: 2.50.0
resolution: "cronstrue@npm:2.50.0"
@@ -635,7 +716,7 @@ __metadata:
languageName: node
linkType: hard
-"debug@npm:~4.3.1, debug@npm:~4.3.2":
+"debug@npm:~4.3.1, debug@npm:~4.3.2, debug@npm:~4.3.4":
version: 4.3.7
resolution: "debug@npm:4.3.7"
dependencies:
@@ -681,6 +762,24 @@ __metadata:
languageName: node
linkType: hard
+"engine.io@npm:~6.5.2":
+ version: 6.5.5
+ resolution: "engine.io@npm:6.5.5"
+ dependencies:
+ "@types/cookie": "npm:^0.4.1"
+ "@types/cors": "npm:^2.8.12"
+ "@types/node": "npm:>=10.0.0"
+ accepts: "npm:~1.3.4"
+ base64id: "npm:2.0.0"
+ cookie: "npm:~0.4.1"
+ cors: "npm:~2.8.5"
+ debug: "npm:~4.3.1"
+ engine.io-parser: "npm:~5.2.1"
+ ws: "npm:~8.17.1"
+ checksum: 10c0/b0994134917c5d3649fd7aea283492eaf092131e572a8d379c7c9081548b42cff756730b4641edd0d1598148dd3be253c4d634cea2ba5c59622d175d9e567469
+ languageName: node
+ linkType: hard
+
"escalade@npm:^3.1.1":
version: 3.2.0
resolution: "escalade@npm:3.2.0"
@@ -692,7 +791,7 @@ __metadata:
version: 0.0.0-use.local
resolution: "esm-only-external@workspace:."
dependencies:
- "@trigger.dev/sdk": "npm:0.0.0-prerelease-20250116195421"
+ "@trigger.dev/sdk": "npm:0.0.0-prerelease-20250321122618"
mupdf: "npm:^0.3.0"
typescript: "npm:5.5.4"
languageName: unknown
@@ -705,6 +804,15 @@ __metadata:
languageName: node
linkType: hard
+"eventsource@npm:^3.0.5":
+ version: 3.0.5
+ resolution: "eventsource@npm:3.0.5"
+ dependencies:
+ eventsource-parser: "npm:^3.0.0"
+ checksum: 10c0/0283045a70b7ab7501fc290e60ee5ebd6e24648e0f0a6d6a1c1bbb7a421971e8140b85d6239d08c360e0a0b196205ca86b4ff7f9efe3c06877ba628136856489
+ languageName: node
+ linkType: hard
+
"evt@npm:^2.4.13":
version: 2.5.7
resolution: "evt@npm:2.5.7"
@@ -785,14 +893,14 @@ __metadata:
linkType: hard
"import-in-the-middle@npm:^1.8.1":
- version: 1.12.0
- resolution: "import-in-the-middle@npm:1.12.0"
+ version: 1.13.1
+ resolution: "import-in-the-middle@npm:1.13.1"
dependencies:
- acorn: "npm:^8.8.2"
+ acorn: "npm:^8.14.0"
acorn-import-attributes: "npm:^1.9.5"
cjs-module-lexer: "npm:^1.2.2"
module-details-from-path: "npm:^1.0.3"
- checksum: 10c0/e0f92bd27b9ef15099494ef0e8ba0b6fa6f0e643a3ff1d41b52530b6e4ff2a502099fff345f3ffb7c75f78cb189903b8d2d92fab5f8123badbc9e790cc19bbe7
+ checksum: 10c0/4ef05a924c37ff718dd08654927c90d470d92fd9425d646b0d423aaddc89655848debd14761bcb6efa4f57870d63ff38109bab31ca8a1d9d5df2e7d84d2649cf
languageName: node
linkType: hard
@@ -834,9 +942,9 @@ __metadata:
linkType: hard
"jose@npm:^5.4.0":
- version: 5.9.6
- resolution: "jose@npm:5.9.6"
- checksum: 10c0/d6bcd8c7d655b5cda8e182952a76f0c093347f5476d74795405bb91563f7ab676f61540310dd4b1531c60d685335ceb600571a409551d2cbd2ab3e9f9fbf1e4d
+ version: 5.10.0
+ resolution: "jose@npm:5.10.0"
+ checksum: 10c0/e20d9fc58d7e402f2e5f04e824b8897d5579aae60e64cb88ebdea1395311c24537bf4892f7de413fab1acf11e922797fb1b42269bc8fc65089a3749265ccb7b0
languageName: node
linkType: hard
@@ -855,9 +963,9 @@ __metadata:
linkType: hard
"long@npm:^5.0.0":
- version: 5.2.4
- resolution: "long@npm:5.2.4"
- checksum: 10c0/0cf819ce2a7bbe48663e79233917552c7667b11e68d4d9ea4ebb99173042509d9af461e5211c22939b913332c264d9a1135937ea533cbd05bc4f8cf46f6d2e07
+ version: 5.3.1
+ resolution: "long@npm:5.3.1"
+ checksum: 10c0/8726994c6359bb7162fb94563e14c3f9c0f0eeafd90ec654738f4f144a5705756d36a873c442f172ee2a4b51e08d14ab99765b49aa1fb994c5ba7fe12057bca2
languageName: node
linkType: hard
@@ -868,6 +976,22 @@ __metadata:
languageName: node
linkType: hard
+"mime-db@npm:1.52.0":
+ version: 1.52.0
+ resolution: "mime-db@npm:1.52.0"
+ checksum: 10c0/0557a01deebf45ac5f5777fe7740b2a5c309c6d62d40ceab4e23da9f821899ce7a900b7ac8157d4548ddbb7beffe9abc621250e6d182b0397ec7f10c7b91a5aa
+ languageName: node
+ linkType: hard
+
+"mime-types@npm:~2.1.34":
+ version: 2.1.35
+ resolution: "mime-types@npm:2.1.35"
+ dependencies:
+ mime-db: "npm:1.52.0"
+ checksum: 10c0/82fb07ec56d8ff1fc999a84f2f217aa46cb6ed1033fefaabd5785b9a974ed225c90dc72fff460259e66b95b73648596dbcc50d51ed69cdf464af2d237d3149b2
+ languageName: node
+ linkType: hard
+
"mimic-fn@npm:^4.0.0":
version: 4.0.0
resolution: "mimic-fn@npm:4.0.0"
@@ -904,11 +1028,18 @@ __metadata:
linkType: hard
"nanoid@npm:^3.3.4":
- version: 3.3.8
- resolution: "nanoid@npm:3.3.8"
+ version: 3.3.11
+ resolution: "nanoid@npm:3.3.11"
bin:
nanoid: bin/nanoid.cjs
- checksum: 10c0/4b1bb29f6cfebf3be3bc4ad1f1296fb0a10a3043a79f34fbffe75d1621b4318319211cd420549459018ea3592f0d2f159247a6f874911d6d26eaaadda2478120
+ checksum: 10c0/40e7f70b3d15f725ca072dfc4f74e81fcf1fbb02e491cf58ac0c79093adc9b0a73b152bcde57df4b79cd097e13023d7504acb38404a4da7bc1cd8e887b82fe0b
+ languageName: node
+ linkType: hard
+
+"negotiator@npm:0.6.3":
+ version: 0.6.3
+ resolution: "negotiator@npm:0.6.3"
+ checksum: 10c0/3ec9fd413e7bf071c937ae60d572bc67155262068ed522cf4b3be5edbe6ddf67d095ec03a3a14ebf8fc8e95f8e1d61be4869db0dbb0de696f6b837358bd43fc2
languageName: node
linkType: hard
@@ -921,6 +1052,13 @@ __metadata:
languageName: node
linkType: hard
+"object-assign@npm:^4":
+ version: 4.1.1
+ resolution: "object-assign@npm:4.1.1"
+ checksum: 10c0/1f4df9945120325d041ccf7b86f31e8bcc14e73d29171e37a7903050e96b81323784ec59f93f102ec635bcf6fa8034ba3ea0a8c7e69fa202b87ae3b6cec5a414
+ languageName: node
+ linkType: hard
+
"onetime@npm:^6.0.0":
version: 6.0.0
resolution: "onetime@npm:6.0.0"
@@ -979,13 +1117,13 @@ __metadata:
linkType: hard
"require-in-the-middle@npm:^7.1.1":
- version: 7.4.0
- resolution: "require-in-the-middle@npm:7.4.0"
+ version: 7.5.2
+ resolution: "require-in-the-middle@npm:7.5.2"
dependencies:
debug: "npm:^4.3.5"
module-details-from-path: "npm:^1.0.3"
resolve: "npm:^1.22.8"
- checksum: 10c0/67c2242ea5b059c2a10c01d4f409233c67278051b47b9bf83198ab7e3ea591ffe3fa1d97912180d7d3d9a5e44490c00c55882b702849d61ac4db87d2c3823cb0
+ checksum: 10c0/43a2dac5520e39d13c413650895715e102d6802e6cc6ff322017bd948f12a9657fe28435f7cbbcba437b167f02e192ac7af29fa35cabd5d0c375d071c0605e01
languageName: node
linkType: hard
@@ -1025,11 +1163,11 @@ __metadata:
linkType: hard
"semver@npm:^7.5.2":
- version: 7.6.3
- resolution: "semver@npm:7.6.3"
+ version: 7.7.1
+ resolution: "semver@npm:7.7.1"
bin:
semver: bin/semver.js
- checksum: 10c0/88f33e148b210c153873cb08cfe1e281d518aaa9a666d4d148add6560db5cd3c582f3a08ccb91f38d5f379ead256da9931234ed122057f40bb5766e65e58adaf
+ checksum: 10c0/fd603a6fb9c399c6054015433051bdbe7b99a940a8fb44b85c2b524c4004b023d7928d47cb22154f8d054ea7ee8597f586605e05b52047f048278e4ac56ae958
languageName: node
linkType: hard
@@ -1070,6 +1208,16 @@ __metadata:
languageName: node
linkType: hard
+"socket.io-adapter@npm:~2.5.2":
+ version: 2.5.5
+ resolution: "socket.io-adapter@npm:2.5.5"
+ dependencies:
+ debug: "npm:~4.3.4"
+ ws: "npm:~8.17.1"
+ checksum: 10c0/04a5a2a9c4399d1b6597c2afc4492ab1e73430cc124ab02b09e948eabf341180b3866e2b61b5084cb899beb68a4db7c328c29bda5efb9207671b5cb0bc6de44e
+ languageName: node
+ linkType: hard
+
"socket.io-client@npm:4.7.5":
version: 4.7.5
resolution: "socket.io-client@npm:4.7.5"
@@ -1092,6 +1240,21 @@ __metadata:
languageName: node
linkType: hard
+"socket.io@npm:4.7.4":
+ version: 4.7.4
+ resolution: "socket.io@npm:4.7.4"
+ dependencies:
+ accepts: "npm:~1.3.4"
+ base64id: "npm:~2.0.0"
+ cors: "npm:~2.8.5"
+ debug: "npm:~4.3.2"
+ engine.io: "npm:~6.5.2"
+ socket.io-adapter: "npm:~2.5.2"
+ socket.io-parser: "npm:~4.2.4"
+ checksum: 10c0/c37b7745d475695d5d5d20a30af940ebf1fefa9defdd1f3601978682a4e1d12eab10da0a6efb19d72038bb819a7972331a679649161689db600883b83818fb16
+ languageName: node
+ linkType: hard
+
"string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3":
version: 4.2.3
resolution: "string-width@npm:4.2.3"
@@ -1164,6 +1327,13 @@ __metadata:
languageName: node
linkType: hard
+"tinyexec@npm:^0.3.2":
+ version: 0.3.2
+ resolution: "tinyexec@npm:0.3.2"
+ checksum: 10c0/3efbf791a911be0bf0821eab37a3445c2ba07acc1522b1fa84ae1e55f10425076f1290f680286345ed919549ad67527d07281f1c19d584df3b74326909eb1f90
+ languageName: node
+ linkType: hard
+
"tsafe@npm:^1.6.6":
version: 1.7.2
resolution: "tsafe@npm:1.7.2"
@@ -1207,6 +1377,13 @@ __metadata:
languageName: node
linkType: hard
+"uncrypto@npm:^0.1.3":
+ version: 0.1.3
+ resolution: "uncrypto@npm:0.1.3"
+ checksum: 10c0/74a29afefd76d5b77bedc983559ceb33f5bbc8dada84ff33755d1e3355da55a4e03a10e7ce717918c436b4dfafde1782e799ebaf2aadd775612b49f7b5b2998e
+ languageName: node
+ linkType: hard
+
"undici-types@npm:~6.20.0":
version: 6.20.0
resolution: "undici-types@npm:6.20.0"
@@ -1223,6 +1400,13 @@ __metadata:
languageName: node
linkType: hard
+"vary@npm:^1":
+ version: 1.1.2
+ resolution: "vary@npm:1.1.2"
+ checksum: 10c0/f15d588d79f3675135ba783c91a4083dcd290a2a5be9fcb6514220a1634e23df116847b1cc51f66bfb0644cf9353b2abb7815ae499bab06e46dd33c1a6bf1f4f
+ languageName: node
+ linkType: hard
+
"which@npm:^2.0.1":
version: 2.0.2
resolution: "which@npm:2.0.2"
@@ -1337,8 +1521,8 @@ __metadata:
linkType: hard
"zod@npm:^3.20.2":
- version: 3.24.1
- resolution: "zod@npm:3.24.1"
- checksum: 10c0/0223d21dbaa15d8928fe0da3b54696391d8e3e1e2d0283a1a070b5980a1dbba945ce631c2d1eccc088fdbad0f2dfa40155590bf83732d3ac4fcca2cc9237591b
+ version: 3.24.2
+ resolution: "zod@npm:3.24.2"
+ checksum: 10c0/c638c7220150847f13ad90635b3e7d0321b36cce36f3fc6050ed960689594c949c326dfe2c6fa87c14b126ee5d370ccdebd6efb304f41ef5557a4aaca2824565
languageName: node
linkType: hard
diff --git a/packages/cli-v3/e2e/fixtures/hello-world/package-lock.json b/packages/cli-v3/e2e/fixtures/hello-world/package-lock.json
index f1cfec9f80..e37387e810 100644
--- a/packages/cli-v3/e2e/fixtures/hello-world/package-lock.json
+++ b/packages/cli-v3/e2e/fixtures/hello-world/package-lock.json
@@ -9,7 +9,7 @@
"packages/*"
],
"dependencies": {
- "@trigger.dev/sdk": "0.0.0-prerelease-20250116195421"
+ "@trigger.dev/sdk": "0.0.0-prerelease-20250321122618"
},
"devDependencies": {
"typescript": "5.5.4"
@@ -19,6 +19,11 @@
"yarn": "4.2.2"
}
},
+ "node_modules/@bugsnag/cuid": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/@bugsnag/cuid/-/cuid-3.2.1.tgz",
+ "integrity": "sha512-zpvN8xQ5rdRWakMd/BcVkdn2F8HKlDSbM3l7duueK590WmI1T0ObTLc1V/1e55r14WNjPd5AJTYX4yPEAFVi+Q=="
+ },
"node_modules/@electric-sql/client": {
"version": "1.0.0-beta.1",
"resolved": "https://registry.npmjs.org/@electric-sql/client/-/client-1.0.0-beta.1.tgz",
@@ -36,9 +41,9 @@
}
},
"node_modules/@grpc/grpc-js": {
- "version": "1.12.5",
- "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.12.5.tgz",
- "integrity": "sha512-d3iiHxdpg5+ZcJ6jnDSOT8Z0O0VMVGy34jAnYLUX8yd36b1qn8f1TwOA/Lc7TsOh03IkPJ38eGI5qD2EjNkoEA==",
+ "version": "1.13.0",
+ "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.13.0.tgz",
+ "integrity": "sha512-pMuxInZjUnUkgMT2QLZclRqwk2ykJbIU05aZgPgJYXEpN9+2I7z7aNwcjWZSycRPl232FfhPszyBFJyOxTHNog==",
"dependencies": {
"@grpc/proto-loader": "^0.7.13",
"@js-sdsl/ordered-map": "^4.4.2"
@@ -109,11 +114,11 @@
}
},
"node_modules/@opentelemetry/core": {
- "version": "1.25.1",
- "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
- "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "version": "1.30.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.30.1.tgz",
+ "integrity": "sha512-OOCM2C/QIURhJMuKaekP3TRBxBKxG/TWWA0TL2J6nXUtDnuCtccy49LUJF8xPFXMX+0LMcxFpCo8M9cGY1W6rQ==",
"dependencies": {
- "@opentelemetry/semantic-conventions": "1.25.1"
+ "@opentelemetry/semantic-conventions": "1.28.0"
},
"engines": {
"node": ">=14"
@@ -122,6 +127,14 @@
"@opentelemetry/api": ">=1.0.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/core/node_modules/@opentelemetry/semantic-conventions": {
+ "version": "1.28.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.28.0.tgz",
+ "integrity": "sha512-lp4qAiMTD4sNWW4DbKLBkfiMZ4jbAboJIGOQr5DvciMRI494OapieI9qiODpOt0XBr1LjIDy1xAGAnVs5supTA==",
+ "engines": {
+ "node": ">=14"
+ }
+ },
"node_modules/@opentelemetry/exporter-logs-otlp-http": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/exporter-logs-otlp-http/-/exporter-logs-otlp-http-0.52.1.tgz",
@@ -140,6 +153,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/exporter-logs-otlp-http/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/exporter-trace-otlp-grpc": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-grpc/-/exporter-trace-otlp-grpc-0.52.1.tgz",
@@ -159,6 +186,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/exporter-trace-otlp-grpc/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/exporter-trace-otlp-http": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.52.1.tgz",
@@ -177,6 +218,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/exporter-trace-otlp-http/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/exporter-trace-otlp-proto": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-proto/-/exporter-trace-otlp-proto-0.52.1.tgz",
@@ -195,6 +250,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/exporter-trace-otlp-proto/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/exporter-zipkin": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/exporter-zipkin/-/exporter-zipkin-1.25.1.tgz",
@@ -212,6 +281,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/exporter-zipkin/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/instrumentation": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.52.1.tgz",
@@ -246,6 +329,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/otlp-exporter-base/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/otlp-grpc-exporter-base": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/otlp-grpc-exporter-base/-/otlp-grpc-exporter-base-0.52.1.tgz",
@@ -263,6 +360,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/otlp-grpc-exporter-base/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/otlp-transformer": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/otlp-transformer/-/otlp-transformer-0.52.1.tgz",
@@ -283,6 +394,20 @@
"@opentelemetry/api": ">=1.3.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/propagator-b3": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/propagator-b3/-/propagator-b3-1.25.1.tgz",
@@ -297,6 +422,20 @@
"@opentelemetry/api": ">=1.0.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/propagator-b3/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/propagator-jaeger": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/propagator-jaeger/-/propagator-jaeger-1.25.1.tgz",
@@ -311,6 +450,20 @@
"@opentelemetry/api": ">=1.0.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/propagator-jaeger/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/resources": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.25.1.tgz",
@@ -326,6 +479,20 @@
"@opentelemetry/api": ">=1.0.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/resources/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/sdk-logs": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/sdk-logs/-/sdk-logs-0.52.1.tgz",
@@ -342,6 +509,20 @@
"@opentelemetry/api": ">=1.4.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/sdk-logs/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/sdk-metrics": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.25.1.tgz",
@@ -358,6 +539,20 @@
"@opentelemetry/api": ">=1.3.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/sdk-metrics/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/sdk-node": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/sdk-node/-/sdk-node-0.52.1.tgz",
@@ -384,6 +579,20 @@
"@opentelemetry/api": ">=1.3.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/sdk-node/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/sdk-trace-base": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.25.1.tgz",
@@ -400,6 +609,20 @@
"@opentelemetry/api": ">=1.0.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/sdk-trace-base/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/sdk-trace-node": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-node/-/sdk-trace-node-1.25.1.tgz",
@@ -419,6 +642,20 @@
"@opentelemetry/api": ">=1.0.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/sdk-trace-node/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/semantic-conventions": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.25.1.tgz",
@@ -482,9 +719,9 @@
"integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw=="
},
"node_modules/@rollup/rollup-darwin-arm64": {
- "version": "4.30.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.30.1.tgz",
- "integrity": "sha512-r7FQIXD7gB0WJ5mokTUgUWPl0eYIH0wnxqeSAhuIwvnnpjdVB8cRRClyKLQr7lgzjctkbp5KmswWszlwYln03Q==",
+ "version": "4.36.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.36.0.tgz",
+ "integrity": "sha512-JQ1Jk5G4bGrD4pWJQzWsD8I1n1mgPXq33+/vP4sk8j/z/C2siRuxZtaUA7yMTf71TCZTZl/4e1bfzwUmFb3+rw==",
"cpu": [
"arm64"
],
@@ -499,15 +736,17 @@
"integrity": "sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA=="
},
"node_modules/@trigger.dev/core": {
- "version": "0.0.0-prerelease-20250116195421",
- "resolved": "https://registry.npmjs.org/@trigger.dev/core/-/core-0.0.0-prerelease-20250116195421.tgz",
- "integrity": "sha512-bxZ5vq3txcUxQln8BZSb2No7gHPG/qTSeo5uq6W2+OQKoVN+c5pmVTYQQa6Fwfd2AXhpkU9ovdM3V1IoEddOtA==",
+ "version": "0.0.0-prerelease-20250321122618",
+ "resolved": "https://registry.npmjs.org/@trigger.dev/core/-/core-0.0.0-prerelease-20250321122618.tgz",
+ "integrity": "sha512-0hSMKqvM39V1A8YjZxYivw109ZrGk22Pfa8ydQ29nCubdeTMe6for+AYzj89BIOnEGeEZ24Hzg2uVc5Av9BUHg==",
"dependencies": {
+ "@bugsnag/cuid": "^3.1.1",
"@electric-sql/client": "1.0.0-beta.1",
"@google-cloud/precise-date": "^4.0.0",
"@jsonhero/path": "^1.0.21",
"@opentelemetry/api": "1.9.0",
"@opentelemetry/api-logs": "0.52.1",
+ "@opentelemetry/core": "^1.30.1",
"@opentelemetry/exporter-logs-otlp-http": "0.52.1",
"@opentelemetry/exporter-trace-otlp-http": "0.52.1",
"@opentelemetry/instrumentation": "0.52.1",
@@ -518,13 +757,16 @@
"@opentelemetry/sdk-trace-node": "1.25.1",
"@opentelemetry/semantic-conventions": "1.25.1",
"dequal": "^2.0.3",
+ "eventsource": "^3.0.5",
"eventsource-parser": "^3.0.0",
"execa": "^8.0.1",
"humanize-duration": "^3.27.3",
"jose": "^5.4.0",
"nanoid": "^3.3.4",
+ "socket.io": "4.7.4",
"socket.io-client": "4.7.5",
"superjson": "^2.2.1",
+ "tinyexec": "^0.3.2",
"zod": "3.23.8",
"zod-error": "1.5.0",
"zod-validation-error": "^1.5.0"
@@ -542,14 +784,14 @@
}
},
"node_modules/@trigger.dev/sdk": {
- "version": "0.0.0-prerelease-20250116195421",
- "resolved": "https://registry.npmjs.org/@trigger.dev/sdk/-/sdk-0.0.0-prerelease-20250116195421.tgz",
- "integrity": "sha512-/Kw+q/mDulGgiSHR9L3nldGOWH72AQAys9zuoBO72JjVfipKI1R8jjqQHhZjWqolMYqgg9XaJr9lQM8sV5lWwQ==",
+ "version": "0.0.0-prerelease-20250321122618",
+ "resolved": "https://registry.npmjs.org/@trigger.dev/sdk/-/sdk-0.0.0-prerelease-20250321122618.tgz",
+ "integrity": "sha512-/DOWqGdTxkeUY3WIJ/lPS8vC9VwitQiB+ONHCR5L1xBovHVaCyj3zMn/dWPsM+Wtz2wVZAPZ45pmHqvJEX3qLw==",
"dependencies": {
"@opentelemetry/api": "1.9.0",
"@opentelemetry/api-logs": "0.52.1",
"@opentelemetry/semantic-conventions": "1.25.1",
- "@trigger.dev/core": "0.0.0-prerelease-20250116195421",
+ "@trigger.dev/core": "0.0.0-prerelease-20250321122618",
"chalk": "^5.2.0",
"cronstrue": "^2.21.0",
"debug": "^4.3.4",
@@ -557,6 +799,7 @@
"slug": "^6.0.0",
"terminal-link": "^3.0.0",
"ulid": "^2.3.0",
+ "uncrypto": "^0.1.3",
"uuid": "^9.0.0",
"ws": "^8.11.0"
},
@@ -567,10 +810,23 @@
"zod": "^3.0.0"
}
},
+ "node_modules/@types/cookie": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz",
+ "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q=="
+ },
+ "node_modules/@types/cors": {
+ "version": "2.8.17",
+ "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.17.tgz",
+ "integrity": "sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==",
+ "dependencies": {
+ "@types/node": "*"
+ }
+ },
"node_modules/@types/node": {
- "version": "22.10.7",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-22.10.7.tgz",
- "integrity": "sha512-V09KvXxFiutGp6B7XkpaDXlNadZxrzajcY50EuoLIpQ6WWYCSvf19lVIazzfIzQvhUN2HjX12spLojTnhuKlGg==",
+ "version": "22.13.11",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-22.13.11.tgz",
+ "integrity": "sha512-iEUCUJoU0i3VnrCmgoWCXttklWcvoCIx4jzcP22fioIVSdTmjgoEvmAO/QPw6TcS9k5FrNgn4w7q5lGOd1CT5g==",
"dependencies": {
"undici-types": "~6.20.0"
}
@@ -580,10 +836,22 @@
"resolved": "https://registry.npmjs.org/@types/shimmer/-/shimmer-1.2.0.tgz",
"integrity": "sha512-UE7oxhQLLd9gub6JKIAhDq06T0F6FnztwMNRvYgjeQSBeMc1ZG/tA47EwfduvkuQS8apbkM/lpLpWsaCeYsXVg=="
},
+ "node_modules/accepts": {
+ "version": "1.3.8",
+ "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz",
+ "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==",
+ "dependencies": {
+ "mime-types": "~2.1.34",
+ "negotiator": "0.6.3"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
"node_modules/acorn": {
- "version": "8.14.0",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz",
- "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==",
+ "version": "8.14.1",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz",
+ "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==",
"bin": {
"acorn": "bin/acorn"
},
@@ -621,6 +889,14 @@
"url": "https://github.com/chalk/ansi-styles?sponsor=1"
}
},
+ "node_modules/base64id": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz",
+ "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==",
+ "engines": {
+ "node": "^4.5.0 || >= 5.9"
+ }
+ },
"node_modules/chalk": {
"version": "5.3.0",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz",
@@ -633,9 +909,9 @@
}
},
"node_modules/cjs-module-lexer": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.1.tgz",
- "integrity": "sha512-cuSVIHi9/9E/+821Qjdvngor+xpnlwnuwIyZOaLmHBVdXL+gP+I6QQB9VkO7RI77YIcTV+S1W9AreJ5eN63JBA=="
+ "version": "1.4.3",
+ "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.3.tgz",
+ "integrity": "sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q=="
},
"node_modules/cliui": {
"version": "8.0.1",
@@ -666,6 +942,14 @@
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
},
+ "node_modules/cookie": {
+ "version": "0.4.2",
+ "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz",
+ "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
"node_modules/copy-anything": {
"version": "3.0.5",
"resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-3.0.5.tgz",
@@ -680,6 +964,18 @@
"url": "https://github.com/sponsors/mesqueeb"
}
},
+ "node_modules/cors": {
+ "version": "2.8.5",
+ "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz",
+ "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==",
+ "dependencies": {
+ "object-assign": "^4",
+ "vary": "^1"
+ },
+ "engines": {
+ "node": ">= 0.10"
+ }
+ },
"node_modules/cronstrue": {
"version": "2.50.0",
"resolved": "https://registry.npmjs.org/cronstrue/-/cronstrue-2.50.0.tgz",
@@ -730,6 +1026,26 @@
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
"integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
},
+ "node_modules/engine.io": {
+ "version": "6.5.5",
+ "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.5.5.tgz",
+ "integrity": "sha512-C5Pn8Wk+1vKBoHghJODM63yk8MvrO9EWZUfkAt5HAqIgPE4/8FF0PEGHXtEd40l223+cE5ABWuPzm38PHFXfMA==",
+ "dependencies": {
+ "@types/cookie": "^0.4.1",
+ "@types/cors": "^2.8.12",
+ "@types/node": ">=10.0.0",
+ "accepts": "~1.3.4",
+ "base64id": "2.0.0",
+ "cookie": "~0.4.1",
+ "cors": "~2.8.5",
+ "debug": "~4.3.1",
+ "engine.io-parser": "~5.2.1",
+ "ws": "~8.17.1"
+ },
+ "engines": {
+ "node": ">=10.2.0"
+ }
+ },
"node_modules/engine.io-client": {
"version": "6.5.4",
"resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.5.4.tgz",
@@ -786,6 +1102,42 @@
"node": ">=10.0.0"
}
},
+ "node_modules/engine.io/node_modules/debug": {
+ "version": "4.3.7",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
+ "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==",
+ "dependencies": {
+ "ms": "^2.1.3"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/engine.io/node_modules/ws": {
+ "version": "8.17.1",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz",
+ "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==",
+ "engines": {
+ "node": ">=10.0.0"
+ },
+ "peerDependencies": {
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": ">=5.0.2"
+ },
+ "peerDependenciesMeta": {
+ "bufferutil": {
+ "optional": true
+ },
+ "utf-8-validate": {
+ "optional": true
+ }
+ }
+ },
"node_modules/escalade": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz",
@@ -794,6 +1146,17 @@
"node": ">=6"
}
},
+ "node_modules/eventsource": {
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-3.0.5.tgz",
+ "integrity": "sha512-LT/5J605bx5SNyE+ITBDiM3FxffBiq9un7Vx0EwMDM3vg8sWKx/tO2zC+LMqZ+smAM0F2hblaDZUVZF0te2pSw==",
+ "dependencies": {
+ "eventsource-parser": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=18.0.0"
+ }
+ },
"node_modules/eventsource-parser": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/eventsource-parser/-/eventsource-parser-3.0.0.tgz",
@@ -894,11 +1257,11 @@
"integrity": "sha512-inh5wue5XdfObhu/IGEMiA1nUXigSGcaKNemcbLRKa7jXYGDZXr3LoT9pTIzq2hPEbld7w/qv9h+ikWGz8fL1g=="
},
"node_modules/import-in-the-middle": {
- "version": "1.12.0",
- "resolved": "https://registry.npmjs.org/import-in-the-middle/-/import-in-the-middle-1.12.0.tgz",
- "integrity": "sha512-yAgSE7GmtRcu4ZUSFX/4v69UGXwugFFSdIQJ14LHPOPPQrWv8Y7O9PHsw8Ovk7bKCLe4sjXMbZFqGFcLHpZ89w==",
+ "version": "1.13.1",
+ "resolved": "https://registry.npmjs.org/import-in-the-middle/-/import-in-the-middle-1.13.1.tgz",
+ "integrity": "sha512-k2V9wNm9B+ysuelDTHjI9d5KPc4l8zAZTGqj+pcynvWkypZd857ryzN8jNC7Pg2YZXNMJcHRPpaDyCBbNyVRpA==",
"dependencies": {
- "acorn": "^8.8.2",
+ "acorn": "^8.14.0",
"acorn-import-attributes": "^1.9.5",
"cjs-module-lexer": "^1.2.2",
"module-details-from-path": "^1.0.3"
@@ -954,9 +1317,9 @@
"integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw=="
},
"node_modules/jose": {
- "version": "5.9.6",
- "resolved": "https://registry.npmjs.org/jose/-/jose-5.9.6.tgz",
- "integrity": "sha512-AMlnetc9+CV9asI19zHmrgS/WYsWUwCn2R7RzlbJWD7F9eWYUTGyBmU9o6PxngtLGOiDGPRu+Uc4fhKzbpteZQ==",
+ "version": "5.10.0",
+ "resolved": "https://registry.npmjs.org/jose/-/jose-5.10.0.tgz",
+ "integrity": "sha512-s+3Al/p9g32Iq+oqXxkW//7jk2Vig6FF1CFqzVXoTUXt2qz89YWbL+OwS17NFYEvxC35n0FKeGO2LGYSxeM2Gg==",
"funding": {
"url": "https://github.com/sponsors/panva"
}
@@ -972,15 +1335,34 @@
"integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ=="
},
"node_modules/long": {
- "version": "5.2.4",
- "resolved": "https://registry.npmjs.org/long/-/long-5.2.4.tgz",
- "integrity": "sha512-qtzLbJE8hq7VabR3mISmVGtoXP8KGc2Z/AT8OuqlYD7JTR3oqrgwdjnk07wpj1twXxYmgDXgoKVWUG/fReSzHg=="
+ "version": "5.3.1",
+ "resolved": "https://registry.npmjs.org/long/-/long-5.3.1.tgz",
+ "integrity": "sha512-ka87Jz3gcx/I7Hal94xaN2tZEOPoUOEVftkQqZx2EeQRN7LGdfLlI3FvZ+7WDplm+vK2Urx9ULrvSowtdCieng=="
},
"node_modules/merge-stream": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
"integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w=="
},
+ "node_modules/mime-db": {
+ "version": "1.52.0",
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
+ "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/mime-types": {
+ "version": "2.1.35",
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
+ "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
+ "dependencies": {
+ "mime-db": "1.52.0"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
"node_modules/mimic-fn": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz",
@@ -1008,9 +1390,9 @@
"integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
},
"node_modules/nanoid": {
- "version": "3.3.8",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz",
- "integrity": "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==",
+ "version": "3.3.11",
+ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz",
+ "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==",
"funding": [
{
"type": "github",
@@ -1024,6 +1406,14 @@
"node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
}
},
+ "node_modules/negotiator": {
+ "version": "0.6.3",
+ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
+ "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
"node_modules/npm-run-path": {
"version": "5.3.0",
"resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz",
@@ -1049,6 +1439,14 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
+ "node_modules/object-assign": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
+ "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
"node_modules/onetime": {
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz",
@@ -1108,9 +1506,9 @@
}
},
"node_modules/require-in-the-middle": {
- "version": "7.4.0",
- "resolved": "https://registry.npmjs.org/require-in-the-middle/-/require-in-the-middle-7.4.0.tgz",
- "integrity": "sha512-X34iHADNbNDfr6OTStIAHWSAvvKQRYgLO6duASaVf7J2VA3lvmNYboAHOuLC2huav1IwgZJtyEcJCKVzFxOSMQ==",
+ "version": "7.5.2",
+ "resolved": "https://registry.npmjs.org/require-in-the-middle/-/require-in-the-middle-7.5.2.tgz",
+ "integrity": "sha512-gAZ+kLqBdHarXB64XpAe2VCjB7rIRv+mU8tfRWziHRJ5umKsIHN2tLLv6EtMw7WCdP19S0ERVMldNvxYCHnhSQ==",
"dependencies": {
"debug": "^4.3.5",
"module-details-from-path": "^1.0.3",
@@ -1148,9 +1546,9 @@
}
},
"node_modules/semver": {
- "version": "7.6.3",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
- "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
+ "version": "7.7.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz",
+ "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==",
"bin": {
"semver": "bin/semver.js"
},
@@ -1198,6 +1596,68 @@
"resolved": "https://registry.npmjs.org/slug/-/slug-6.1.0.tgz",
"integrity": "sha512-x6vLHCMasg4DR2LPiyFGI0gJJhywY6DTiGhCrOMzb3SOk/0JVLIaL4UhyFSHu04SD3uAavrKY/K3zZ3i6iRcgA=="
},
+ "node_modules/socket.io": {
+ "version": "4.7.4",
+ "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.7.4.tgz",
+ "integrity": "sha512-DcotgfP1Zg9iP/dH9zvAQcWrE0TtbMVwXmlV4T4mqsvY+gw+LqUGPfx2AoVyRk0FLME+GQhufDMyacFmw7ksqw==",
+ "dependencies": {
+ "accepts": "~1.3.4",
+ "base64id": "~2.0.0",
+ "cors": "~2.8.5",
+ "debug": "~4.3.2",
+ "engine.io": "~6.5.2",
+ "socket.io-adapter": "~2.5.2",
+ "socket.io-parser": "~4.2.4"
+ },
+ "engines": {
+ "node": ">=10.2.0"
+ }
+ },
+ "node_modules/socket.io-adapter": {
+ "version": "2.5.5",
+ "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.5.tgz",
+ "integrity": "sha512-eLDQas5dzPgOWCk9GuuJC2lBqItuhKI4uxGgo9aIV7MYbk2h9Q6uULEh8WBzThoI7l+qU9Ast9fVUmkqPP9wYg==",
+ "dependencies": {
+ "debug": "~4.3.4",
+ "ws": "~8.17.1"
+ }
+ },
+ "node_modules/socket.io-adapter/node_modules/debug": {
+ "version": "4.3.7",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
+ "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==",
+ "dependencies": {
+ "ms": "^2.1.3"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/socket.io-adapter/node_modules/ws": {
+ "version": "8.17.1",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz",
+ "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==",
+ "engines": {
+ "node": ">=10.0.0"
+ },
+ "peerDependencies": {
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": ">=5.0.2"
+ },
+ "peerDependenciesMeta": {
+ "bufferutil": {
+ "optional": true
+ },
+ "utf-8-validate": {
+ "optional": true
+ }
+ }
+ },
"node_modules/socket.io-client": {
"version": "4.7.5",
"resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.7.5.tgz",
@@ -1256,6 +1716,22 @@
}
}
},
+ "node_modules/socket.io/node_modules/debug": {
+ "version": "4.3.7",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
+ "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==",
+ "dependencies": {
+ "ms": "^2.1.3"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
"node_modules/string-width": {
"version": "4.2.3",
"resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
@@ -1376,6 +1852,11 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
+ "node_modules/tinyexec": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.2.tgz",
+ "integrity": "sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA=="
+ },
"node_modules/tsafe": {
"version": "1.7.2",
"resolved": "https://registry.npmjs.org/tsafe/-/tsafe-1.7.2.tgz",
@@ -1402,6 +1883,11 @@
"ulid": "bin/cli.js"
}
},
+ "node_modules/uncrypto": {
+ "version": "0.1.3",
+ "resolved": "https://registry.npmjs.org/uncrypto/-/uncrypto-0.1.3.tgz",
+ "integrity": "sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q=="
+ },
"node_modules/undici-types": {
"version": "6.20.0",
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.20.0.tgz",
@@ -1419,6 +1905,14 @@
"uuid": "dist/bin/uuid"
}
},
+ "node_modules/vary": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
+ "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
"node_modules/which": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
@@ -1511,9 +2005,9 @@
}
},
"node_modules/zod": {
- "version": "3.24.1",
- "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.1.tgz",
- "integrity": "sha512-muH7gBL9sI1nciMZV67X5fTKKBLtwpZ5VBp1vsOQzj1MhrBZ4wlVCm3gedKZWLp0Oyel8sIGfeiz54Su+OVT+A==",
+ "version": "3.24.2",
+ "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.2.tgz",
+ "integrity": "sha512-lY7CDW43ECgW9u1TcT3IoXHflywfVqDYze4waEz812jR/bZ8FHDsl7pFQoSZTz5N+2NqRXs8GBwnAwo3ZNxqhQ==",
"funding": {
"url": "https://github.com/sponsors/colinhacks"
}
diff --git a/packages/cli-v3/e2e/fixtures/hello-world/package.json b/packages/cli-v3/e2e/fixtures/hello-world/package.json
index 209379c783..523532c528 100644
--- a/packages/cli-v3/e2e/fixtures/hello-world/package.json
+++ b/packages/cli-v3/e2e/fixtures/hello-world/package.json
@@ -1,7 +1,7 @@
{
"name": "hello-world",
"private": true,
- "packageManager": "pnpm@8.15.5+sha256.4b4efa12490e5055d59b9b9fc9438b7d581a6b7af3b5675eb5c5f447cee1a589",
+ "packageManager": "yarn@4.2.2+sha256.1aa43a5304405be7a7cb9cb5de7b97de9c4e8ddd3273e4dad00d6ae3eb39f0ef",
"engines": {
"pnpm": "8.15.5",
"yarn": "4.2.2"
@@ -10,7 +10,7 @@
"packages/*"
],
"dependencies": {
- "@trigger.dev/sdk": "0.0.0-prerelease-20250116195421"
+ "@trigger.dev/sdk": "0.0.0-prerelease-20250321122618"
},
"devDependencies": {
"typescript": "5.5.4"
diff --git a/packages/cli-v3/e2e/fixtures/hello-world/pnpm-lock.yaml b/packages/cli-v3/e2e/fixtures/hello-world/pnpm-lock.yaml
index 320003b5f8..d4a24d76ad 100644
--- a/packages/cli-v3/e2e/fixtures/hello-world/pnpm-lock.yaml
+++ b/packages/cli-v3/e2e/fixtures/hello-world/pnpm-lock.yaml
@@ -9,8 +9,8 @@ importers:
.:
dependencies:
'@trigger.dev/sdk':
- specifier: 0.0.0-prerelease-20250116195421
- version: 0.0.0-prerelease-20250116195421(zod@3.22.3)
+ specifier: 0.0.0-prerelease-20250321122618
+ version: 0.0.0-prerelease-20250321122618(zod@3.23.8)
devDependencies:
typescript:
specifier: 5.5.4
@@ -18,6 +18,10 @@ importers:
packages:
+ /@bugsnag/cuid@3.2.1:
+ resolution: {integrity: sha512-zpvN8xQ5rdRWakMd/BcVkdn2F8HKlDSbM3l7duueK590WmI1T0ObTLc1V/1e55r14WNjPd5AJTYX4yPEAFVi+Q==}
+ dev: false
+
/@electric-sql/client@1.0.0-beta.1:
resolution: {integrity: sha512-Ei9jN3pDoGzc+a/bGqnB5ajb52IvSv7/n2btuyzUlcOHIR2kM9fqtYTJXPwZYKLkGZlHWlpHgWyRtrinkP2nHg==}
optionalDependencies:
@@ -87,6 +91,16 @@ packages:
'@opentelemetry/semantic-conventions': 1.25.1
dev: false
+ /@opentelemetry/core@1.30.1(@opentelemetry/api@1.9.0):
+ resolution: {integrity: sha512-OOCM2C/QIURhJMuKaekP3TRBxBKxG/TWWA0TL2J6nXUtDnuCtccy49LUJF8xPFXMX+0LMcxFpCo8M9cGY1W6rQ==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@opentelemetry/api': '>=1.0.0 <1.10.0'
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/semantic-conventions': 1.28.0
+ dev: false
+
/@opentelemetry/exporter-logs-otlp-http@0.52.1(@opentelemetry/api@1.9.0):
resolution: {integrity: sha512-qKgywId2DbdowPZpOBXQKp0B8DfhfIArmSic15z13Nk/JAOccBUQdPwDjDnjsM5f0ckZFMVR2t/tijTUAqDZoA==}
engines: {node: '>=14'}
@@ -325,6 +339,11 @@ packages:
engines: {node: '>=14'}
dev: false
+ /@opentelemetry/semantic-conventions@1.28.0:
+ resolution: {integrity: sha512-lp4qAiMTD4sNWW4DbKLBkfiMZ4jbAboJIGOQr5DvciMRI494OapieI9qiODpOt0XBr1LjIDy1xAGAnVs5supTA==}
+ engines: {node: '>=14'}
+ dev: false
+
/@protobufjs/aspromise@1.1.2:
resolution: {integrity: sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==}
dev: false
@@ -380,15 +399,17 @@ packages:
resolution: {integrity: sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==}
dev: false
- /@trigger.dev/core@0.0.0-prerelease-20250116195421:
- resolution: {integrity: sha512-bxZ5vq3txcUxQln8BZSb2No7gHPG/qTSeo5uq6W2+OQKoVN+c5pmVTYQQa6Fwfd2AXhpkU9ovdM3V1IoEddOtA==}
+ /@trigger.dev/core@0.0.0-prerelease-20250321122618:
+ resolution: {integrity: sha512-0hSMKqvM39V1A8YjZxYivw109ZrGk22Pfa8ydQ29nCubdeTMe6for+AYzj89BIOnEGeEZ24Hzg2uVc5Av9BUHg==}
engines: {node: '>=18.20.0'}
dependencies:
+ '@bugsnag/cuid': 3.2.1
'@electric-sql/client': 1.0.0-beta.1
'@google-cloud/precise-date': 4.0.0
'@jsonhero/path': 1.0.21
'@opentelemetry/api': 1.9.0
'@opentelemetry/api-logs': 0.52.1
+ '@opentelemetry/core': 1.30.1(@opentelemetry/api@1.9.0)
'@opentelemetry/exporter-logs-otlp-http': 0.52.1(@opentelemetry/api@1.9.0)
'@opentelemetry/exporter-trace-otlp-http': 0.52.1(@opentelemetry/api@1.9.0)
'@opentelemetry/instrumentation': 0.52.1(@opentelemetry/api@1.9.0)
@@ -399,13 +420,16 @@ packages:
'@opentelemetry/sdk-trace-node': 1.25.1(@opentelemetry/api@1.9.0)
'@opentelemetry/semantic-conventions': 1.25.1
dequal: 2.0.3
+ eventsource: 3.0.5
eventsource-parser: 3.0.0
execa: 8.0.1
humanize-duration: 3.32.1
jose: 5.9.6
nanoid: 3.3.8
+ socket.io: 4.7.4
socket.io-client: 4.7.5
superjson: 2.2.1
+ tinyexec: 0.3.2
zod: 3.23.8
zod-error: 1.5.0
zod-validation-error: 1.5.0(zod@3.23.8)
@@ -415,8 +439,8 @@ packages:
- utf-8-validate
dev: false
- /@trigger.dev/sdk@0.0.0-prerelease-20250116195421(zod@3.22.3):
- resolution: {integrity: sha512-/Kw+q/mDulGgiSHR9L3nldGOWH72AQAys9zuoBO72JjVfipKI1R8jjqQHhZjWqolMYqgg9XaJr9lQM8sV5lWwQ==}
+ /@trigger.dev/sdk@0.0.0-prerelease-20250321122618(zod@3.23.8):
+ resolution: {integrity: sha512-/DOWqGdTxkeUY3WIJ/lPS8vC9VwitQiB+ONHCR5L1xBovHVaCyj3zMn/dWPsM+Wtz2wVZAPZ45pmHqvJEX3qLw==}
engines: {node: '>=18.20.0'}
peerDependencies:
zod: ^3.0.0
@@ -424,7 +448,7 @@ packages:
'@opentelemetry/api': 1.9.0
'@opentelemetry/api-logs': 0.52.1
'@opentelemetry/semantic-conventions': 1.25.1
- '@trigger.dev/core': 0.0.0-prerelease-20250116195421
+ '@trigger.dev/core': 0.0.0-prerelease-20250321122618
chalk: 5.3.0
cronstrue: 2.50.0
debug: 4.3.6
@@ -432,15 +456,26 @@ packages:
slug: 6.1.0
terminal-link: 3.0.0
ulid: 2.3.0
+ uncrypto: 0.1.3
uuid: 9.0.1
ws: 8.18.0
- zod: 3.22.3
+ zod: 3.23.8
transitivePeerDependencies:
- bufferutil
- supports-color
- utf-8-validate
dev: false
+ /@types/cookie@0.4.1:
+ resolution: {integrity: sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==}
+ dev: false
+
+ /@types/cors@2.8.17:
+ resolution: {integrity: sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==}
+ dependencies:
+ '@types/node': 22.5.2
+ dev: false
+
/@types/node@22.5.2:
resolution: {integrity: sha512-acJsPTEqYqulZS/Yp/S3GgeE6GZ0qYODUR8aVr/DkhHQ8l9nd4j5x1/ZJy9/gHrRlFMqkO6i0I3E27Alu4jjPg==}
dependencies:
@@ -451,6 +486,14 @@ packages:
resolution: {integrity: sha512-UE7oxhQLLd9gub6JKIAhDq06T0F6FnztwMNRvYgjeQSBeMc1ZG/tA47EwfduvkuQS8apbkM/lpLpWsaCeYsXVg==}
dev: false
+ /accepts@1.3.8:
+ resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==}
+ engines: {node: '>= 0.6'}
+ dependencies:
+ mime-types: 2.1.35
+ negotiator: 0.6.3
+ dev: false
+
/acorn-import-attributes@1.9.5(acorn@8.12.1):
resolution: {integrity: sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==}
peerDependencies:
@@ -484,6 +527,11 @@ packages:
color-convert: 2.0.1
dev: false
+ /base64id@2.0.0:
+ resolution: {integrity: sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==}
+ engines: {node: ^4.5.0 || >= 5.9}
+ dev: false
+
/chalk@5.3.0:
resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==}
engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
@@ -513,6 +561,11 @@ packages:
resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
dev: false
+ /cookie@0.4.2:
+ resolution: {integrity: sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==}
+ engines: {node: '>= 0.6'}
+ dev: false
+
/copy-anything@3.0.5:
resolution: {integrity: sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==}
engines: {node: '>=12.13'}
@@ -520,6 +573,14 @@ packages:
is-what: 4.1.16
dev: false
+ /cors@2.8.5:
+ resolution: {integrity: sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==}
+ engines: {node: '>= 0.10'}
+ dependencies:
+ object-assign: 4.1.1
+ vary: 1.1.2
+ dev: false
+
/cronstrue@2.50.0:
resolution: {integrity: sha512-ULYhWIonJzlScCCQrPUG5uMXzXxSixty4djud9SS37DoNxDdkeRocxzHuAo4ImRBUK+mAuU5X9TSwEDccnnuPg==}
hasBin: true
@@ -574,6 +635,26 @@ packages:
engines: {node: '>=10.0.0'}
dev: false
+ /engine.io@6.5.5:
+ resolution: {integrity: sha512-C5Pn8Wk+1vKBoHghJODM63yk8MvrO9EWZUfkAt5HAqIgPE4/8FF0PEGHXtEd40l223+cE5ABWuPzm38PHFXfMA==}
+ engines: {node: '>=10.2.0'}
+ dependencies:
+ '@types/cookie': 0.4.1
+ '@types/cors': 2.8.17
+ '@types/node': 22.5.2
+ accepts: 1.3.8
+ base64id: 2.0.0
+ cookie: 0.4.2
+ cors: 2.8.5
+ debug: 4.3.6
+ engine.io-parser: 5.2.3
+ ws: 8.17.1
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - utf-8-validate
+ dev: false
+
/escalade@3.2.0:
resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
engines: {node: '>=6'}
@@ -584,6 +665,13 @@ packages:
engines: {node: '>=18.0.0'}
dev: false
+ /eventsource@3.0.5:
+ resolution: {integrity: sha512-LT/5J605bx5SNyE+ITBDiM3FxffBiq9un7Vx0EwMDM3vg8sWKx/tO2zC+LMqZ+smAM0F2hblaDZUVZF0te2pSw==}
+ engines: {node: '>=18.0.0'}
+ dependencies:
+ eventsource-parser: 3.0.0
+ dev: false
+
/evt@2.5.7:
resolution: {integrity: sha512-dr7Wd16ry5F8WNU1xXLKpFpO3HsoAGg8zC48e08vDdzMzGWCP9/QFGt1PQptEEDh8SwYP3EL8M+d/Gb0kgUp6g==}
dependencies:
@@ -697,6 +785,18 @@ packages:
resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
dev: false
+ /mime-db@1.52.0:
+ resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}
+ engines: {node: '>= 0.6'}
+ dev: false
+
+ /mime-types@2.1.35:
+ resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}
+ engines: {node: '>= 0.6'}
+ dependencies:
+ mime-db: 1.52.0
+ dev: false
+
/mimic-fn@4.0.0:
resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==}
engines: {node: '>=12'}
@@ -720,6 +820,11 @@ packages:
hasBin: true
dev: false
+ /negotiator@0.6.3:
+ resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==}
+ engines: {node: '>= 0.6'}
+ dev: false
+
/npm-run-path@5.3.0:
resolution: {integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
@@ -727,6 +832,11 @@ packages:
path-key: 4.0.0
dev: false
+ /object-assign@4.1.1:
+ resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
+ engines: {node: '>=0.10.0'}
+ dev: false
+
/onetime@6.0.0:
resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==}
engines: {node: '>=12'}
@@ -829,6 +939,17 @@ packages:
resolution: {integrity: sha512-x6vLHCMasg4DR2LPiyFGI0gJJhywY6DTiGhCrOMzb3SOk/0JVLIaL4UhyFSHu04SD3uAavrKY/K3zZ3i6iRcgA==}
dev: false
+ /socket.io-adapter@2.5.5:
+ resolution: {integrity: sha512-eLDQas5dzPgOWCk9GuuJC2lBqItuhKI4uxGgo9aIV7MYbk2h9Q6uULEh8WBzThoI7l+qU9Ast9fVUmkqPP9wYg==}
+ dependencies:
+ debug: 4.3.6
+ ws: 8.17.1
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - utf-8-validate
+ dev: false
+
/socket.io-client@4.7.5:
resolution: {integrity: sha512-sJ/tqHOCe7Z50JCBCXrsY3I2k03iOiUe+tj1OmKeD2lXPiGH/RUCdTZFoqVyN7l1MnpIzPrGtLcijffmeouNlQ==}
engines: {node: '>=10.0.0'}
@@ -853,6 +974,23 @@ packages:
- supports-color
dev: false
+ /socket.io@4.7.4:
+ resolution: {integrity: sha512-DcotgfP1Zg9iP/dH9zvAQcWrE0TtbMVwXmlV4T4mqsvY+gw+LqUGPfx2AoVyRk0FLME+GQhufDMyacFmw7ksqw==}
+ engines: {node: '>=10.2.0'}
+ dependencies:
+ accepts: 1.3.8
+ base64id: 2.0.0
+ cors: 2.8.5
+ debug: 4.3.6
+ engine.io: 6.5.5
+ socket.io-adapter: 2.5.5
+ socket.io-parser: 4.2.4
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - utf-8-validate
+ dev: false
+
/string-width@4.2.3:
resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
engines: {node: '>=8'}
@@ -909,6 +1047,10 @@ packages:
supports-hyperlinks: 2.3.0
dev: false
+ /tinyexec@0.3.2:
+ resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==}
+ dev: false
+
/tsafe@1.7.2:
resolution: {integrity: sha512-dAPfQLhCfCRre5qs+Z5Q2a7s2CV7RxffZUmvj7puGaePYjECzWREJFd3w4XSFe/T5tbxgowfItA/JSSZ6Ma3dA==}
dev: false
@@ -929,6 +1071,10 @@ packages:
hasBin: true
dev: false
+ /uncrypto@0.1.3:
+ resolution: {integrity: sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==}
+ dev: false
+
/undici-types@6.19.8:
resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==}
dev: false
@@ -938,6 +1084,11 @@ packages:
hasBin: true
dev: false
+ /vary@1.1.2:
+ resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==}
+ engines: {node: '>= 0.8'}
+ dev: false
+
/which@2.0.2:
resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
engines: {node: '>= 8'}
@@ -1024,10 +1175,6 @@ packages:
zod: 3.23.8
dev: false
- /zod@3.22.3:
- resolution: {integrity: sha512-EjIevzuJRiRPbVH4mGc8nApb/lVLKVpmUhAaR5R5doKGfAnGJ6Gr3CViAVjP+4FWSxCsybeWQdcgCtbX+7oZug==}
- dev: false
-
/zod@3.23.8:
resolution: {integrity: sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==}
dev: false
diff --git a/packages/cli-v3/e2e/fixtures/hello-world/yarn.lock b/packages/cli-v3/e2e/fixtures/hello-world/yarn.lock
index e5e34ee13f..b7d3424087 100644
--- a/packages/cli-v3/e2e/fixtures/hello-world/yarn.lock
+++ b/packages/cli-v3/e2e/fixtures/hello-world/yarn.lock
@@ -5,6 +5,13 @@ __metadata:
version: 8
cacheKey: 10c0
+"@bugsnag/cuid@npm:^3.1.1":
+ version: 3.2.1
+ resolution: "@bugsnag/cuid@npm:3.2.1"
+ checksum: 10c0/f2da80e922a3ed14bcede1e8257ce02974fdce91f2b6ecfc25846f70c250f2909b2a19f898e309cf564c882b39ac685df99e8fe498db45071d3019db5ea03e6a
+ languageName: node
+ linkType: hard
+
"@electric-sql/client@npm:1.0.0-beta.1":
version: 1.0.0-beta.1
resolution: "@electric-sql/client@npm:1.0.0-beta.1"
@@ -25,12 +32,12 @@ __metadata:
linkType: hard
"@grpc/grpc-js@npm:^1.7.1":
- version: 1.12.5
- resolution: "@grpc/grpc-js@npm:1.12.5"
+ version: 1.13.0
+ resolution: "@grpc/grpc-js@npm:1.13.0"
dependencies:
"@grpc/proto-loader": "npm:^0.7.13"
"@js-sdsl/ordered-map": "npm:^4.4.2"
- checksum: 10c0/1e539d98951e6ff6611e3cedc8eec343625fdab76c7683aa7fca605b3de17d8aabaf2f78d7e95400e68dc8e249cda498781e9a3481bb6b713fc167da3fe59a8e
+ checksum: 10c0/c760d5eb5ee07c4cfd5dcd83ee62d5232d5776b5d1ce5d436edc53402ec16ef053d3a283f48ce832f4635009dbd411ac7586495a7d053fc5f202e95811cf4129
languageName: node
linkType: hard
@@ -98,6 +105,17 @@ __metadata:
languageName: node
linkType: hard
+"@opentelemetry/core@npm:^1.30.1":
+ version: 1.30.1
+ resolution: "@opentelemetry/core@npm:1.30.1"
+ dependencies:
+ "@opentelemetry/semantic-conventions": "npm:1.28.0"
+ peerDependencies:
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ checksum: 10c0/4c25ba50a6137c2ba9ca563fb269378f3c9ca6fd1b3f15dbb6eff78eebf5656f281997cbb7be8e51c01649fd6ad091083fcd8a42dd9b5dfac907dc06d7cfa092
+ languageName: node
+ linkType: hard
+
"@opentelemetry/exporter-logs-otlp-http@npm:0.52.1":
version: 0.52.1
resolution: "@opentelemetry/exporter-logs-otlp-http@npm:0.52.1"
@@ -351,6 +369,13 @@ __metadata:
languageName: node
linkType: hard
+"@opentelemetry/semantic-conventions@npm:1.28.0":
+ version: 1.28.0
+ resolution: "@opentelemetry/semantic-conventions@npm:1.28.0"
+ checksum: 10c0/deb8a0f744198071e70fea27143cf7c9f7ecb7e4d7b619488c917834ea09b31543c1c2bcea4ec5f3cf68797f0ef3549609c14e859013d9376400ac1499c2b9cb
+ languageName: node
+ linkType: hard
+
"@protobufjs/aspromise@npm:^1.1.1, @protobufjs/aspromise@npm:^1.1.2":
version: 1.1.2
resolution: "@protobufjs/aspromise@npm:1.1.2"
@@ -425,8 +450,8 @@ __metadata:
linkType: hard
"@rollup/rollup-darwin-arm64@npm:^4.18.1":
- version: 4.30.1
- resolution: "@rollup/rollup-darwin-arm64@npm:4.30.1"
+ version: 4.36.0
+ resolution: "@rollup/rollup-darwin-arm64@npm:4.36.0"
conditions: os=darwin & cpu=arm64
languageName: node
linkType: hard
@@ -438,15 +463,17 @@ __metadata:
languageName: node
linkType: hard
-"@trigger.dev/core@npm:0.0.0-prerelease-20250116195421":
- version: 0.0.0-prerelease-20250116195421
- resolution: "@trigger.dev/core@npm:0.0.0-prerelease-20250116195421"
+"@trigger.dev/core@npm:0.0.0-prerelease-20250321122618":
+ version: 0.0.0-prerelease-20250321122618
+ resolution: "@trigger.dev/core@npm:0.0.0-prerelease-20250321122618"
dependencies:
+ "@bugsnag/cuid": "npm:^3.1.1"
"@electric-sql/client": "npm:1.0.0-beta.1"
"@google-cloud/precise-date": "npm:^4.0.0"
"@jsonhero/path": "npm:^1.0.21"
"@opentelemetry/api": "npm:1.9.0"
"@opentelemetry/api-logs": "npm:0.52.1"
+ "@opentelemetry/core": "npm:^1.30.1"
"@opentelemetry/exporter-logs-otlp-http": "npm:0.52.1"
"@opentelemetry/exporter-trace-otlp-http": "npm:0.52.1"
"@opentelemetry/instrumentation": "npm:0.52.1"
@@ -457,28 +484,31 @@ __metadata:
"@opentelemetry/sdk-trace-node": "npm:1.25.1"
"@opentelemetry/semantic-conventions": "npm:1.25.1"
dequal: "npm:^2.0.3"
+ eventsource: "npm:^3.0.5"
eventsource-parser: "npm:^3.0.0"
execa: "npm:^8.0.1"
humanize-duration: "npm:^3.27.3"
jose: "npm:^5.4.0"
nanoid: "npm:^3.3.4"
+ socket.io: "npm:4.7.4"
socket.io-client: "npm:4.7.5"
superjson: "npm:^2.2.1"
+ tinyexec: "npm:^0.3.2"
zod: "npm:3.23.8"
zod-error: "npm:1.5.0"
zod-validation-error: "npm:^1.5.0"
- checksum: 10c0/90b53701ba59608e4b0319c5d08147ee04440e14ecb163dabcbea725f46555d4aa8b91fee51a31e616cd88d5f6dcfc15cb7a59491894c36d5cfe818454fff620
+ checksum: 10c0/0bcab7e5ea31c2ee49699b83b26da9994f0ce803b3208ac12e2157ebd21c1e872021922241ba835a98880cd051d2cc245c472ec1901196bfc2a41a53663326ec
languageName: node
linkType: hard
-"@trigger.dev/sdk@npm:0.0.0-prerelease-20250116195421":
- version: 0.0.0-prerelease-20250116195421
- resolution: "@trigger.dev/sdk@npm:0.0.0-prerelease-20250116195421"
+"@trigger.dev/sdk@npm:0.0.0-prerelease-20250321122618":
+ version: 0.0.0-prerelease-20250321122618
+ resolution: "@trigger.dev/sdk@npm:0.0.0-prerelease-20250321122618"
dependencies:
"@opentelemetry/api": "npm:1.9.0"
"@opentelemetry/api-logs": "npm:0.52.1"
"@opentelemetry/semantic-conventions": "npm:1.25.1"
- "@trigger.dev/core": "npm:0.0.0-prerelease-20250116195421"
+ "@trigger.dev/core": "npm:0.0.0-prerelease-20250321122618"
chalk: "npm:^5.2.0"
cronstrue: "npm:^2.21.0"
debug: "npm:^4.3.4"
@@ -486,20 +516,37 @@ __metadata:
slug: "npm:^6.0.0"
terminal-link: "npm:^3.0.0"
ulid: "npm:^2.3.0"
+ uncrypto: "npm:^0.1.3"
uuid: "npm:^9.0.0"
ws: "npm:^8.11.0"
peerDependencies:
zod: ^3.0.0
- checksum: 10c0/6c54e6588a02097a49f11784fefaa1e00b12af4875f6f599de80d54031b9ef919ff017924d6870427cd5d8da178d177df0b0a6c32c0930a03882e3c6c9def1dc
+ checksum: 10c0/2ae41e2fe41a781346a91144b946355521bbcce5bd4cbf4a48f4aeb0b9a7b338a9e749ed014c36732fb128510a01573230a70571c3ccb91f5500776b52ca17a5
+ languageName: node
+ linkType: hard
+
+"@types/cookie@npm:^0.4.1":
+ version: 0.4.1
+ resolution: "@types/cookie@npm:0.4.1"
+ checksum: 10c0/f96afe12bd51be1ec61410b0641243d93fa3a494702407c787a4c872b5c8bcd39b224471452055e44a9ce42af1a636e87d161994226eaf4c2be9c30f60418409
+ languageName: node
+ linkType: hard
+
+"@types/cors@npm:^2.8.12":
+ version: 2.8.17
+ resolution: "@types/cors@npm:2.8.17"
+ dependencies:
+ "@types/node": "npm:*"
+ checksum: 10c0/457364c28c89f3d9ed34800e1de5c6eaaf344d1bb39af122f013322a50bc606eb2aa6f63de4e41a7a08ba7ef454473926c94a830636723da45bf786df032696d
languageName: node
linkType: hard
-"@types/node@npm:>=13.7.0":
- version: 22.10.7
- resolution: "@types/node@npm:22.10.7"
+"@types/node@npm:*, @types/node@npm:>=10.0.0, @types/node@npm:>=13.7.0":
+ version: 22.13.11
+ resolution: "@types/node@npm:22.13.11"
dependencies:
undici-types: "npm:~6.20.0"
- checksum: 10c0/c941b4689dfc4044b64a5f601306cbcb0c7210be853ba378a5dd44137898c45accedd796ee002ad9407024cac7ecaf5049304951cb1d80ce3d7cebbbae56f20e
+ checksum: 10c0/f6ee33d36372242535c38640fe7550a6640d8a775ec19b55bfc11775b521cba072d892ca92a912332ce01b317293d645c1bf767f3f882ec719f2404a3d2a5b96
languageName: node
linkType: hard
@@ -510,6 +557,16 @@ __metadata:
languageName: node
linkType: hard
+"accepts@npm:~1.3.4":
+ version: 1.3.8
+ resolution: "accepts@npm:1.3.8"
+ dependencies:
+ mime-types: "npm:~2.1.34"
+ negotiator: "npm:0.6.3"
+ checksum: 10c0/3a35c5f5586cfb9a21163ca47a5f77ac34fa8ceb5d17d2fa2c0d81f41cbd7f8c6fa52c77e2c039acc0f4d09e71abdc51144246900f6bef5e3c4b333f77d89362
+ languageName: node
+ linkType: hard
+
"acorn-import-attributes@npm:^1.9.5":
version: 1.9.5
resolution: "acorn-import-attributes@npm:1.9.5"
@@ -519,12 +576,12 @@ __metadata:
languageName: node
linkType: hard
-"acorn@npm:^8.8.2":
- version: 8.14.0
- resolution: "acorn@npm:8.14.0"
+"acorn@npm:^8.14.0":
+ version: 8.14.1
+ resolution: "acorn@npm:8.14.1"
bin:
acorn: bin/acorn
- checksum: 10c0/6d4ee461a7734b2f48836ee0fbb752903606e576cc100eb49340295129ca0b452f3ba91ddd4424a1d4406a98adfb2ebb6bd0ff4c49d7a0930c10e462719bbfd7
+ checksum: 10c0/dbd36c1ed1d2fa3550140000371fcf721578095b18777b85a79df231ca093b08edc6858d75d6e48c73e431c174dcf9214edbd7e6fa5911b93bd8abfa54e47123
languageName: node
linkType: hard
@@ -553,6 +610,13 @@ __metadata:
languageName: node
linkType: hard
+"base64id@npm:2.0.0, base64id@npm:~2.0.0":
+ version: 2.0.0
+ resolution: "base64id@npm:2.0.0"
+ checksum: 10c0/6919efd237ed44b9988cbfc33eca6f173a10e810ce50292b271a1a421aac7748ef232a64d1e6032b08f19aae48dce6ee8f66c5ae2c9e5066c82b884861d4d453
+ languageName: node
+ linkType: hard
+
"chalk@npm:^5.2.0":
version: 5.3.0
resolution: "chalk@npm:5.3.0"
@@ -561,9 +625,9 @@ __metadata:
linkType: hard
"cjs-module-lexer@npm:^1.2.2":
- version: 1.4.1
- resolution: "cjs-module-lexer@npm:1.4.1"
- checksum: 10c0/5a7d8279629c9ba8ccf38078c2fed75b7737973ced22b9b5a54180efa57fb2fe2bb7bec6aec55e3b8f3f5044f5d7b240347ad9bd285e7c3d0ee5b0a1d0504dfc
+ version: 1.4.3
+ resolution: "cjs-module-lexer@npm:1.4.3"
+ checksum: 10c0/076b3af85adc4d65dbdab1b5b240fe5b45d44fcf0ef9d429044dd94d19be5589376805c44fb2d4b3e684e5fe6a9b7cf3e426476a6507c45283c5fc6ff95240be
languageName: node
linkType: hard
@@ -594,6 +658,13 @@ __metadata:
languageName: node
linkType: hard
+"cookie@npm:~0.4.1":
+ version: 0.4.2
+ resolution: "cookie@npm:0.4.2"
+ checksum: 10c0/beab41fbd7c20175e3a2799ba948c1dcc71ef69f23fe14eeeff59fc09f50c517b0f77098db87dbb4c55da802f9d86ee86cdc1cd3efd87760341551838d53fca2
+ languageName: node
+ linkType: hard
+
"copy-anything@npm:^3.0.2":
version: 3.0.5
resolution: "copy-anything@npm:3.0.5"
@@ -603,6 +674,16 @@ __metadata:
languageName: node
linkType: hard
+"cors@npm:~2.8.5":
+ version: 2.8.5
+ resolution: "cors@npm:2.8.5"
+ dependencies:
+ object-assign: "npm:^4"
+ vary: "npm:^1"
+ checksum: 10c0/373702b7999409922da80de4a61938aabba6929aea5b6fd9096fefb9e8342f626c0ebd7507b0e8b0b311380744cc985f27edebc0a26e0ddb784b54e1085de761
+ languageName: node
+ linkType: hard
+
"cronstrue@npm:^2.21.0":
version: 2.50.0
resolution: "cronstrue@npm:2.50.0"
@@ -635,7 +716,7 @@ __metadata:
languageName: node
linkType: hard
-"debug@npm:~4.3.1, debug@npm:~4.3.2":
+"debug@npm:~4.3.1, debug@npm:~4.3.2, debug@npm:~4.3.4":
version: 4.3.7
resolution: "debug@npm:4.3.7"
dependencies:
@@ -681,6 +762,24 @@ __metadata:
languageName: node
linkType: hard
+"engine.io@npm:~6.5.2":
+ version: 6.5.5
+ resolution: "engine.io@npm:6.5.5"
+ dependencies:
+ "@types/cookie": "npm:^0.4.1"
+ "@types/cors": "npm:^2.8.12"
+ "@types/node": "npm:>=10.0.0"
+ accepts: "npm:~1.3.4"
+ base64id: "npm:2.0.0"
+ cookie: "npm:~0.4.1"
+ cors: "npm:~2.8.5"
+ debug: "npm:~4.3.1"
+ engine.io-parser: "npm:~5.2.1"
+ ws: "npm:~8.17.1"
+ checksum: 10c0/b0994134917c5d3649fd7aea283492eaf092131e572a8d379c7c9081548b42cff756730b4641edd0d1598148dd3be253c4d634cea2ba5c59622d175d9e567469
+ languageName: node
+ linkType: hard
+
"escalade@npm:^3.1.1":
version: 3.2.0
resolution: "escalade@npm:3.2.0"
@@ -695,6 +794,15 @@ __metadata:
languageName: node
linkType: hard
+"eventsource@npm:^3.0.5":
+ version: 3.0.5
+ resolution: "eventsource@npm:3.0.5"
+ dependencies:
+ eventsource-parser: "npm:^3.0.0"
+ checksum: 10c0/0283045a70b7ab7501fc290e60ee5ebd6e24648e0f0a6d6a1c1bbb7a421971e8140b85d6239d08c360e0a0b196205ca86b4ff7f9efe3c06877ba628136856489
+ languageName: node
+ linkType: hard
+
"evt@npm:^2.4.13":
version: 2.5.7
resolution: "evt@npm:2.5.7"
@@ -764,7 +872,7 @@ __metadata:
version: 0.0.0-use.local
resolution: "hello-world@workspace:."
dependencies:
- "@trigger.dev/sdk": "npm:0.0.0-prerelease-20250116195421"
+ "@trigger.dev/sdk": "npm:0.0.0-prerelease-20250321122618"
typescript: "npm:5.5.4"
languageName: unknown
linkType: soft
@@ -784,14 +892,14 @@ __metadata:
linkType: hard
"import-in-the-middle@npm:^1.8.1":
- version: 1.12.0
- resolution: "import-in-the-middle@npm:1.12.0"
+ version: 1.13.1
+ resolution: "import-in-the-middle@npm:1.13.1"
dependencies:
- acorn: "npm:^8.8.2"
+ acorn: "npm:^8.14.0"
acorn-import-attributes: "npm:^1.9.5"
cjs-module-lexer: "npm:^1.2.2"
module-details-from-path: "npm:^1.0.3"
- checksum: 10c0/e0f92bd27b9ef15099494ef0e8ba0b6fa6f0e643a3ff1d41b52530b6e4ff2a502099fff345f3ffb7c75f78cb189903b8d2d92fab5f8123badbc9e790cc19bbe7
+ checksum: 10c0/4ef05a924c37ff718dd08654927c90d470d92fd9425d646b0d423aaddc89655848debd14761bcb6efa4f57870d63ff38109bab31ca8a1d9d5df2e7d84d2649cf
languageName: node
linkType: hard
@@ -833,9 +941,9 @@ __metadata:
linkType: hard
"jose@npm:^5.4.0":
- version: 5.9.6
- resolution: "jose@npm:5.9.6"
- checksum: 10c0/d6bcd8c7d655b5cda8e182952a76f0c093347f5476d74795405bb91563f7ab676f61540310dd4b1531c60d685335ceb600571a409551d2cbd2ab3e9f9fbf1e4d
+ version: 5.10.0
+ resolution: "jose@npm:5.10.0"
+ checksum: 10c0/e20d9fc58d7e402f2e5f04e824b8897d5579aae60e64cb88ebdea1395311c24537bf4892f7de413fab1acf11e922797fb1b42269bc8fc65089a3749265ccb7b0
languageName: node
linkType: hard
@@ -854,9 +962,9 @@ __metadata:
linkType: hard
"long@npm:^5.0.0":
- version: 5.2.4
- resolution: "long@npm:5.2.4"
- checksum: 10c0/0cf819ce2a7bbe48663e79233917552c7667b11e68d4d9ea4ebb99173042509d9af461e5211c22939b913332c264d9a1135937ea533cbd05bc4f8cf46f6d2e07
+ version: 5.3.1
+ resolution: "long@npm:5.3.1"
+ checksum: 10c0/8726994c6359bb7162fb94563e14c3f9c0f0eeafd90ec654738f4f144a5705756d36a873c442f172ee2a4b51e08d14ab99765b49aa1fb994c5ba7fe12057bca2
languageName: node
linkType: hard
@@ -867,6 +975,22 @@ __metadata:
languageName: node
linkType: hard
+"mime-db@npm:1.52.0":
+ version: 1.52.0
+ resolution: "mime-db@npm:1.52.0"
+ checksum: 10c0/0557a01deebf45ac5f5777fe7740b2a5c309c6d62d40ceab4e23da9f821899ce7a900b7ac8157d4548ddbb7beffe9abc621250e6d182b0397ec7f10c7b91a5aa
+ languageName: node
+ linkType: hard
+
+"mime-types@npm:~2.1.34":
+ version: 2.1.35
+ resolution: "mime-types@npm:2.1.35"
+ dependencies:
+ mime-db: "npm:1.52.0"
+ checksum: 10c0/82fb07ec56d8ff1fc999a84f2f217aa46cb6ed1033fefaabd5785b9a974ed225c90dc72fff460259e66b95b73648596dbcc50d51ed69cdf464af2d237d3149b2
+ languageName: node
+ linkType: hard
+
"mimic-fn@npm:^4.0.0":
version: 4.0.0
resolution: "mimic-fn@npm:4.0.0"
@@ -896,11 +1020,18 @@ __metadata:
linkType: hard
"nanoid@npm:^3.3.4":
- version: 3.3.8
- resolution: "nanoid@npm:3.3.8"
+ version: 3.3.11
+ resolution: "nanoid@npm:3.3.11"
bin:
nanoid: bin/nanoid.cjs
- checksum: 10c0/4b1bb29f6cfebf3be3bc4ad1f1296fb0a10a3043a79f34fbffe75d1621b4318319211cd420549459018ea3592f0d2f159247a6f874911d6d26eaaadda2478120
+ checksum: 10c0/40e7f70b3d15f725ca072dfc4f74e81fcf1fbb02e491cf58ac0c79093adc9b0a73b152bcde57df4b79cd097e13023d7504acb38404a4da7bc1cd8e887b82fe0b
+ languageName: node
+ linkType: hard
+
+"negotiator@npm:0.6.3":
+ version: 0.6.3
+ resolution: "negotiator@npm:0.6.3"
+ checksum: 10c0/3ec9fd413e7bf071c937ae60d572bc67155262068ed522cf4b3be5edbe6ddf67d095ec03a3a14ebf8fc8e95f8e1d61be4869db0dbb0de696f6b837358bd43fc2
languageName: node
linkType: hard
@@ -913,6 +1044,13 @@ __metadata:
languageName: node
linkType: hard
+"object-assign@npm:^4":
+ version: 4.1.1
+ resolution: "object-assign@npm:4.1.1"
+ checksum: 10c0/1f4df9945120325d041ccf7b86f31e8bcc14e73d29171e37a7903050e96b81323784ec59f93f102ec635bcf6fa8034ba3ea0a8c7e69fa202b87ae3b6cec5a414
+ languageName: node
+ linkType: hard
+
"onetime@npm:^6.0.0":
version: 6.0.0
resolution: "onetime@npm:6.0.0"
@@ -971,13 +1109,13 @@ __metadata:
linkType: hard
"require-in-the-middle@npm:^7.1.1":
- version: 7.4.0
- resolution: "require-in-the-middle@npm:7.4.0"
+ version: 7.5.2
+ resolution: "require-in-the-middle@npm:7.5.2"
dependencies:
debug: "npm:^4.3.5"
module-details-from-path: "npm:^1.0.3"
resolve: "npm:^1.22.8"
- checksum: 10c0/67c2242ea5b059c2a10c01d4f409233c67278051b47b9bf83198ab7e3ea591ffe3fa1d97912180d7d3d9a5e44490c00c55882b702849d61ac4db87d2c3823cb0
+ checksum: 10c0/43a2dac5520e39d13c413650895715e102d6802e6cc6ff322017bd948f12a9657fe28435f7cbbcba437b167f02e192ac7af29fa35cabd5d0c375d071c0605e01
languageName: node
linkType: hard
@@ -1017,11 +1155,11 @@ __metadata:
linkType: hard
"semver@npm:^7.5.2":
- version: 7.6.3
- resolution: "semver@npm:7.6.3"
+ version: 7.7.1
+ resolution: "semver@npm:7.7.1"
bin:
semver: bin/semver.js
- checksum: 10c0/88f33e148b210c153873cb08cfe1e281d518aaa9a666d4d148add6560db5cd3c582f3a08ccb91f38d5f379ead256da9931234ed122057f40bb5766e65e58adaf
+ checksum: 10c0/fd603a6fb9c399c6054015433051bdbe7b99a940a8fb44b85c2b524c4004b023d7928d47cb22154f8d054ea7ee8597f586605e05b52047f048278e4ac56ae958
languageName: node
linkType: hard
@@ -1062,6 +1200,16 @@ __metadata:
languageName: node
linkType: hard
+"socket.io-adapter@npm:~2.5.2":
+ version: 2.5.5
+ resolution: "socket.io-adapter@npm:2.5.5"
+ dependencies:
+ debug: "npm:~4.3.4"
+ ws: "npm:~8.17.1"
+ checksum: 10c0/04a5a2a9c4399d1b6597c2afc4492ab1e73430cc124ab02b09e948eabf341180b3866e2b61b5084cb899beb68a4db7c328c29bda5efb9207671b5cb0bc6de44e
+ languageName: node
+ linkType: hard
+
"socket.io-client@npm:4.7.5":
version: 4.7.5
resolution: "socket.io-client@npm:4.7.5"
@@ -1084,6 +1232,21 @@ __metadata:
languageName: node
linkType: hard
+"socket.io@npm:4.7.4":
+ version: 4.7.4
+ resolution: "socket.io@npm:4.7.4"
+ dependencies:
+ accepts: "npm:~1.3.4"
+ base64id: "npm:~2.0.0"
+ cors: "npm:~2.8.5"
+ debug: "npm:~4.3.2"
+ engine.io: "npm:~6.5.2"
+ socket.io-adapter: "npm:~2.5.2"
+ socket.io-parser: "npm:~4.2.4"
+ checksum: 10c0/c37b7745d475695d5d5d20a30af940ebf1fefa9defdd1f3601978682a4e1d12eab10da0a6efb19d72038bb819a7972331a679649161689db600883b83818fb16
+ languageName: node
+ linkType: hard
+
"string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3":
version: 4.2.3
resolution: "string-width@npm:4.2.3"
@@ -1156,6 +1319,13 @@ __metadata:
languageName: node
linkType: hard
+"tinyexec@npm:^0.3.2":
+ version: 0.3.2
+ resolution: "tinyexec@npm:0.3.2"
+ checksum: 10c0/3efbf791a911be0bf0821eab37a3445c2ba07acc1522b1fa84ae1e55f10425076f1290f680286345ed919549ad67527d07281f1c19d584df3b74326909eb1f90
+ languageName: node
+ linkType: hard
+
"tsafe@npm:^1.6.6":
version: 1.7.2
resolution: "tsafe@npm:1.7.2"
@@ -1199,6 +1369,13 @@ __metadata:
languageName: node
linkType: hard
+"uncrypto@npm:^0.1.3":
+ version: 0.1.3
+ resolution: "uncrypto@npm:0.1.3"
+ checksum: 10c0/74a29afefd76d5b77bedc983559ceb33f5bbc8dada84ff33755d1e3355da55a4e03a10e7ce717918c436b4dfafde1782e799ebaf2aadd775612b49f7b5b2998e
+ languageName: node
+ linkType: hard
+
"undici-types@npm:~6.20.0":
version: 6.20.0
resolution: "undici-types@npm:6.20.0"
@@ -1215,6 +1392,13 @@ __metadata:
languageName: node
linkType: hard
+"vary@npm:^1":
+ version: 1.1.2
+ resolution: "vary@npm:1.1.2"
+ checksum: 10c0/f15d588d79f3675135ba783c91a4083dcd290a2a5be9fcb6514220a1634e23df116847b1cc51f66bfb0644cf9353b2abb7815ae499bab06e46dd33c1a6bf1f4f
+ languageName: node
+ linkType: hard
+
"which@npm:^2.0.1":
version: 2.0.2
resolution: "which@npm:2.0.2"
@@ -1329,8 +1513,8 @@ __metadata:
linkType: hard
"zod@npm:^3.20.2":
- version: 3.24.1
- resolution: "zod@npm:3.24.1"
- checksum: 10c0/0223d21dbaa15d8928fe0da3b54696391d8e3e1e2d0283a1a070b5980a1dbba945ce631c2d1eccc088fdbad0f2dfa40155590bf83732d3ac4fcca2cc9237591b
+ version: 3.24.2
+ resolution: "zod@npm:3.24.2"
+ checksum: 10c0/c638c7220150847f13ad90635b3e7d0321b36cce36f3fc6050ed960689594c949c326dfe2c6fa87c14b126ee5d370ccdebd6efb304f41ef5557a4aaca2824565
languageName: node
linkType: hard
diff --git a/packages/cli-v3/e2e/fixtures/monorepo-react-email/packages/trigger/package.json b/packages/cli-v3/e2e/fixtures/monorepo-react-email/packages/trigger/package.json
index d345c034cf..45826cdd2a 100644
--- a/packages/cli-v3/e2e/fixtures/monorepo-react-email/packages/trigger/package.json
+++ b/packages/cli-v3/e2e/fixtures/monorepo-react-email/packages/trigger/package.json
@@ -3,7 +3,7 @@
"private": true,
"dependencies": {
"@repo/email": "workspace:*",
- "@trigger.dev/sdk": "0.0.0-prerelease-20250116195421"
+ "@trigger.dev/sdk": "0.0.0-prerelease-20250321122618"
},
"devDependencies": {
"typescript": "5.5.4"
diff --git a/packages/cli-v3/e2e/fixtures/monorepo-react-email/pnpm-lock.yaml b/packages/cli-v3/e2e/fixtures/monorepo-react-email/pnpm-lock.yaml
index 0dfa5f6dfa..84d369598b 100644
--- a/packages/cli-v3/e2e/fixtures/monorepo-react-email/pnpm-lock.yaml
+++ b/packages/cli-v3/e2e/fixtures/monorepo-react-email/pnpm-lock.yaml
@@ -32,8 +32,8 @@ importers:
specifier: workspace:*
version: link:../email
'@trigger.dev/sdk':
- specifier: 0.0.0-prerelease-20250116195421
- version: 0.0.0-prerelease-20250116195421(zod@3.22.3)
+ specifier: 0.0.0-prerelease-20250321122618
+ version: 0.0.0-prerelease-20250321122618(zod@3.23.8)
devDependencies:
typescript:
specifier: 5.5.4
@@ -223,6 +223,10 @@ packages:
to-fast-properties: 2.0.0
dev: false
+ /@bugsnag/cuid@3.2.1:
+ resolution: {integrity: sha512-zpvN8xQ5rdRWakMd/BcVkdn2F8HKlDSbM3l7duueK590WmI1T0ObTLc1V/1e55r14WNjPd5AJTYX4yPEAFVi+Q==}
+ dev: false
+
/@electric-sql/client@1.0.0-beta.1:
resolution: {integrity: sha512-Ei9jN3pDoGzc+a/bGqnB5ajb52IvSv7/n2btuyzUlcOHIR2kM9fqtYTJXPwZYKLkGZlHWlpHgWyRtrinkP2nHg==}
optionalDependencies:
@@ -630,6 +634,16 @@ packages:
'@opentelemetry/semantic-conventions': 1.25.1
dev: false
+ /@opentelemetry/core@1.30.1(@opentelemetry/api@1.9.0):
+ resolution: {integrity: sha512-OOCM2C/QIURhJMuKaekP3TRBxBKxG/TWWA0TL2J6nXUtDnuCtccy49LUJF8xPFXMX+0LMcxFpCo8M9cGY1W6rQ==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@opentelemetry/api': '>=1.0.0 <1.10.0'
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/semantic-conventions': 1.28.0
+ dev: false
+
/@opentelemetry/exporter-logs-otlp-http@0.52.1(@opentelemetry/api@1.9.0):
resolution: {integrity: sha512-qKgywId2DbdowPZpOBXQKp0B8DfhfIArmSic15z13Nk/JAOccBUQdPwDjDnjsM5f0ckZFMVR2t/tijTUAqDZoA==}
engines: {node: '>=14'}
@@ -868,6 +882,11 @@ packages:
engines: {node: '>=14'}
dev: false
+ /@opentelemetry/semantic-conventions@1.28.0:
+ resolution: {integrity: sha512-lp4qAiMTD4sNWW4DbKLBkfiMZ4jbAboJIGOQr5DvciMRI494OapieI9qiODpOt0XBr1LjIDy1xAGAnVs5supTA==}
+ engines: {node: '>=14'}
+ dev: false
+
/@pkgjs/parseargs@0.11.0:
resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
engines: {node: '>=14'}
@@ -1164,15 +1183,17 @@ packages:
tslib: 2.7.0
dev: false
- /@trigger.dev/core@0.0.0-prerelease-20250116195421:
- resolution: {integrity: sha512-bxZ5vq3txcUxQln8BZSb2No7gHPG/qTSeo5uq6W2+OQKoVN+c5pmVTYQQa6Fwfd2AXhpkU9ovdM3V1IoEddOtA==}
+ /@trigger.dev/core@0.0.0-prerelease-20250321122618:
+ resolution: {integrity: sha512-0hSMKqvM39V1A8YjZxYivw109ZrGk22Pfa8ydQ29nCubdeTMe6for+AYzj89BIOnEGeEZ24Hzg2uVc5Av9BUHg==}
engines: {node: '>=18.20.0'}
dependencies:
+ '@bugsnag/cuid': 3.2.1
'@electric-sql/client': 1.0.0-beta.1
'@google-cloud/precise-date': 4.0.0
'@jsonhero/path': 1.0.21
'@opentelemetry/api': 1.9.0
'@opentelemetry/api-logs': 0.52.1
+ '@opentelemetry/core': 1.30.1(@opentelemetry/api@1.9.0)
'@opentelemetry/exporter-logs-otlp-http': 0.52.1(@opentelemetry/api@1.9.0)
'@opentelemetry/exporter-trace-otlp-http': 0.52.1(@opentelemetry/api@1.9.0)
'@opentelemetry/instrumentation': 0.52.1(@opentelemetry/api@1.9.0)
@@ -1183,13 +1204,16 @@ packages:
'@opentelemetry/sdk-trace-node': 1.25.1(@opentelemetry/api@1.9.0)
'@opentelemetry/semantic-conventions': 1.25.1
dequal: 2.0.3
+ eventsource: 3.0.5
eventsource-parser: 3.0.0
execa: 8.0.1
humanize-duration: 3.32.1
jose: 5.9.6
nanoid: 3.3.7
+ socket.io: 4.7.4
socket.io-client: 4.7.5
superjson: 2.2.1
+ tinyexec: 0.3.2
zod: 3.23.8
zod-error: 1.5.0
zod-validation-error: 1.5.0(zod@3.23.8)
@@ -1199,8 +1223,8 @@ packages:
- utf-8-validate
dev: false
- /@trigger.dev/sdk@0.0.0-prerelease-20250116195421(zod@3.22.3):
- resolution: {integrity: sha512-/Kw+q/mDulGgiSHR9L3nldGOWH72AQAys9zuoBO72JjVfipKI1R8jjqQHhZjWqolMYqgg9XaJr9lQM8sV5lWwQ==}
+ /@trigger.dev/sdk@0.0.0-prerelease-20250321122618(zod@3.23.8):
+ resolution: {integrity: sha512-/DOWqGdTxkeUY3WIJ/lPS8vC9VwitQiB+ONHCR5L1xBovHVaCyj3zMn/dWPsM+Wtz2wVZAPZ45pmHqvJEX3qLw==}
engines: {node: '>=18.20.0'}
peerDependencies:
zod: ^3.0.0
@@ -1208,7 +1232,7 @@ packages:
'@opentelemetry/api': 1.9.0
'@opentelemetry/api-logs': 0.52.1
'@opentelemetry/semantic-conventions': 1.25.1
- '@trigger.dev/core': 0.0.0-prerelease-20250116195421
+ '@trigger.dev/core': 0.0.0-prerelease-20250321122618
chalk: 5.3.0
cronstrue: 2.50.0
debug: 4.3.7
@@ -1216,9 +1240,10 @@ packages:
slug: 6.1.0
terminal-link: 3.0.0
ulid: 2.3.0
+ uncrypto: 0.1.3
uuid: 9.0.1
ws: 8.18.0
- zod: 3.22.3
+ zod: 3.23.8
transitivePeerDependencies:
- bufferutil
- supports-color
@@ -1708,6 +1733,13 @@ packages:
engines: {node: '>=18.0.0'}
dev: false
+ /eventsource@3.0.5:
+ resolution: {integrity: sha512-LT/5J605bx5SNyE+ITBDiM3FxffBiq9un7Vx0EwMDM3vg8sWKx/tO2zC+LMqZ+smAM0F2hblaDZUVZF0te2pSw==}
+ engines: {node: '>=18.0.0'}
+ dependencies:
+ eventsource-parser: 3.0.0
+ dev: false
+
/evt@2.5.7:
resolution: {integrity: sha512-dr7Wd16ry5F8WNU1xXLKpFpO3HsoAGg8zC48e08vDdzMzGWCP9/QFGt1PQptEEDh8SwYP3EL8M+d/Gb0kgUp6g==}
dependencies:
@@ -2505,6 +2537,23 @@ packages:
- supports-color
dev: false
+ /socket.io@4.7.4:
+ resolution: {integrity: sha512-DcotgfP1Zg9iP/dH9zvAQcWrE0TtbMVwXmlV4T4mqsvY+gw+LqUGPfx2AoVyRk0FLME+GQhufDMyacFmw7ksqw==}
+ engines: {node: '>=10.2.0'}
+ dependencies:
+ accepts: 1.3.8
+ base64id: 2.0.0
+ cors: 2.8.5
+ debug: 4.3.7
+ engine.io: 6.5.5
+ socket.io-adapter: 2.5.5
+ socket.io-parser: 4.2.4
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - utf-8-validate
+ dev: false
+
/socket.io@4.7.5:
resolution: {integrity: sha512-DmeAkF6cwM9jSfmp6Dr/5/mfMwb5Z5qRrSXLpo3Fq5SqyU8CMF15jIN4ZhfSwu35ksM1qmHZDQ/DK5XTccSTvA==}
engines: {node: '>=10.2.0'}
@@ -2635,6 +2684,10 @@ packages:
supports-hyperlinks: 2.3.0
dev: false
+ /tinyexec@0.3.2:
+ resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==}
+ dev: false
+
/to-fast-properties@2.0.0:
resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==}
engines: {node: '>=4'}
@@ -2671,6 +2724,10 @@ packages:
hasBin: true
dev: false
+ /uncrypto@0.1.3:
+ resolution: {integrity: sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==}
+ dev: false
+
/undici-types@6.19.8:
resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==}
dev: false
@@ -2805,10 +2862,6 @@ packages:
zod: 3.23.8
dev: false
- /zod@3.22.3:
- resolution: {integrity: sha512-EjIevzuJRiRPbVH4mGc8nApb/lVLKVpmUhAaR5R5doKGfAnGJ6Gr3CViAVjP+4FWSxCsybeWQdcgCtbX+7oZug==}
- dev: false
-
/zod@3.23.8:
resolution: {integrity: sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==}
dev: false
diff --git a/packages/cli-v3/e2e/fixtures/monorepo-react-email/yarn.lock b/packages/cli-v3/e2e/fixtures/monorepo-react-email/yarn.lock
index 09e86db62c..6f7fc7f333 100644
--- a/packages/cli-v3/e2e/fixtures/monorepo-react-email/yarn.lock
+++ b/packages/cli-v3/e2e/fixtures/monorepo-react-email/yarn.lock
@@ -214,6 +214,13 @@ __metadata:
languageName: node
linkType: hard
+"@bugsnag/cuid@npm:^3.1.1":
+ version: 3.2.1
+ resolution: "@bugsnag/cuid@npm:3.2.1"
+ checksum: 10c0/f2da80e922a3ed14bcede1e8257ce02974fdce91f2b6ecfc25846f70c250f2909b2a19f898e309cf564c882b39ac685df99e8fe498db45071d3019db5ea03e6a
+ languageName: node
+ linkType: hard
+
"@electric-sql/client@npm:1.0.0-beta.1":
version: 1.0.0-beta.1
resolution: "@electric-sql/client@npm:1.0.0-beta.1"
@@ -623,6 +630,17 @@ __metadata:
languageName: node
linkType: hard
+"@opentelemetry/core@npm:^1.30.1":
+ version: 1.30.1
+ resolution: "@opentelemetry/core@npm:1.30.1"
+ dependencies:
+ "@opentelemetry/semantic-conventions": "npm:1.28.0"
+ peerDependencies:
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ checksum: 10c0/4c25ba50a6137c2ba9ca563fb269378f3c9ca6fd1b3f15dbb6eff78eebf5656f281997cbb7be8e51c01649fd6ad091083fcd8a42dd9b5dfac907dc06d7cfa092
+ languageName: node
+ linkType: hard
+
"@opentelemetry/exporter-logs-otlp-http@npm:0.52.1":
version: 0.52.1
resolution: "@opentelemetry/exporter-logs-otlp-http@npm:0.52.1"
@@ -876,6 +894,13 @@ __metadata:
languageName: node
linkType: hard
+"@opentelemetry/semantic-conventions@npm:1.28.0":
+ version: 1.28.0
+ resolution: "@opentelemetry/semantic-conventions@npm:1.28.0"
+ checksum: 10c0/deb8a0f744198071e70fea27143cf7c9f7ecb7e4d7b619488c917834ea09b31543c1c2bcea4ec5f3cf68797f0ef3549609c14e859013d9376400ac1499c2b9cb
+ languageName: node
+ linkType: hard
+
"@pkgjs/parseargs@npm:^0.11.0":
version: 0.11.0
resolution: "@pkgjs/parseargs@npm:0.11.0"
@@ -1192,7 +1217,7 @@ __metadata:
resolution: "@repo/trigger@workspace:packages/trigger"
dependencies:
"@repo/email": "workspace:*"
- "@trigger.dev/sdk": "npm:0.0.0-prerelease-20250116195421"
+ "@trigger.dev/sdk": "npm:0.0.0-prerelease-20250321122618"
typescript: "npm:5.5.4"
languageName: unknown
linkType: soft
@@ -1238,15 +1263,17 @@ __metadata:
languageName: node
linkType: hard
-"@trigger.dev/core@npm:0.0.0-prerelease-20250116195421":
- version: 0.0.0-prerelease-20250116195421
- resolution: "@trigger.dev/core@npm:0.0.0-prerelease-20250116195421"
+"@trigger.dev/core@npm:0.0.0-prerelease-20250321122618":
+ version: 0.0.0-prerelease-20250321122618
+ resolution: "@trigger.dev/core@npm:0.0.0-prerelease-20250321122618"
dependencies:
+ "@bugsnag/cuid": "npm:^3.1.1"
"@electric-sql/client": "npm:1.0.0-beta.1"
"@google-cloud/precise-date": "npm:^4.0.0"
"@jsonhero/path": "npm:^1.0.21"
"@opentelemetry/api": "npm:1.9.0"
"@opentelemetry/api-logs": "npm:0.52.1"
+ "@opentelemetry/core": "npm:^1.30.1"
"@opentelemetry/exporter-logs-otlp-http": "npm:0.52.1"
"@opentelemetry/exporter-trace-otlp-http": "npm:0.52.1"
"@opentelemetry/instrumentation": "npm:0.52.1"
@@ -1257,28 +1284,31 @@ __metadata:
"@opentelemetry/sdk-trace-node": "npm:1.25.1"
"@opentelemetry/semantic-conventions": "npm:1.25.1"
dequal: "npm:^2.0.3"
+ eventsource: "npm:^3.0.5"
eventsource-parser: "npm:^3.0.0"
execa: "npm:^8.0.1"
humanize-duration: "npm:^3.27.3"
jose: "npm:^5.4.0"
nanoid: "npm:^3.3.4"
+ socket.io: "npm:4.7.4"
socket.io-client: "npm:4.7.5"
superjson: "npm:^2.2.1"
+ tinyexec: "npm:^0.3.2"
zod: "npm:3.23.8"
zod-error: "npm:1.5.0"
zod-validation-error: "npm:^1.5.0"
- checksum: 10c0/90b53701ba59608e4b0319c5d08147ee04440e14ecb163dabcbea725f46555d4aa8b91fee51a31e616cd88d5f6dcfc15cb7a59491894c36d5cfe818454fff620
+ checksum: 10c0/0bcab7e5ea31c2ee49699b83b26da9994f0ce803b3208ac12e2157ebd21c1e872021922241ba835a98880cd051d2cc245c472ec1901196bfc2a41a53663326ec
languageName: node
linkType: hard
-"@trigger.dev/sdk@npm:0.0.0-prerelease-20250116195421":
- version: 0.0.0-prerelease-20250116195421
- resolution: "@trigger.dev/sdk@npm:0.0.0-prerelease-20250116195421"
+"@trigger.dev/sdk@npm:0.0.0-prerelease-20250321122618":
+ version: 0.0.0-prerelease-20250321122618
+ resolution: "@trigger.dev/sdk@npm:0.0.0-prerelease-20250321122618"
dependencies:
"@opentelemetry/api": "npm:1.9.0"
"@opentelemetry/api-logs": "npm:0.52.1"
"@opentelemetry/semantic-conventions": "npm:1.25.1"
- "@trigger.dev/core": "npm:0.0.0-prerelease-20250116195421"
+ "@trigger.dev/core": "npm:0.0.0-prerelease-20250321122618"
chalk: "npm:^5.2.0"
cronstrue: "npm:^2.21.0"
debug: "npm:^4.3.4"
@@ -1286,11 +1316,12 @@ __metadata:
slug: "npm:^6.0.0"
terminal-link: "npm:^3.0.0"
ulid: "npm:^2.3.0"
+ uncrypto: "npm:^0.1.3"
uuid: "npm:^9.0.0"
ws: "npm:^8.11.0"
peerDependencies:
zod: ^3.0.0
- checksum: 10c0/6c54e6588a02097a49f11784fefaa1e00b12af4875f6f599de80d54031b9ef919ff017924d6870427cd5d8da178d177df0b0a6c32c0930a03882e3c6c9def1dc
+ checksum: 10c0/2ae41e2fe41a781346a91144b946355521bbcce5bd4cbf4a48f4aeb0b9a7b338a9e749ed014c36732fb128510a01573230a70571c3ccb91f5500776b52ca17a5
languageName: node
linkType: hard
@@ -2064,6 +2095,15 @@ __metadata:
languageName: node
linkType: hard
+"eventsource@npm:^3.0.5":
+ version: 3.0.5
+ resolution: "eventsource@npm:3.0.5"
+ dependencies:
+ eventsource-parser: "npm:^3.0.0"
+ checksum: 10c0/0283045a70b7ab7501fc290e60ee5ebd6e24648e0f0a6d6a1c1bbb7a421971e8140b85d6239d08c360e0a0b196205ca86b4ff7f9efe3c06877ba628136856489
+ languageName: node
+ linkType: hard
+
"evt@npm:^2.4.13":
version: 2.5.7
resolution: "evt@npm:2.5.7"
@@ -3461,6 +3501,21 @@ __metadata:
languageName: node
linkType: hard
+"socket.io@npm:4.7.4":
+ version: 4.7.4
+ resolution: "socket.io@npm:4.7.4"
+ dependencies:
+ accepts: "npm:~1.3.4"
+ base64id: "npm:~2.0.0"
+ cors: "npm:~2.8.5"
+ debug: "npm:~4.3.2"
+ engine.io: "npm:~6.5.2"
+ socket.io-adapter: "npm:~2.5.2"
+ socket.io-parser: "npm:~4.2.4"
+ checksum: 10c0/c37b7745d475695d5d5d20a30af940ebf1fefa9defdd1f3601978682a4e1d12eab10da0a6efb19d72038bb819a7972331a679649161689db600883b83818fb16
+ languageName: node
+ linkType: hard
+
"socket.io@npm:4.7.5":
version: 4.7.5
resolution: "socket.io@npm:4.7.5"
@@ -3667,6 +3722,13 @@ __metadata:
languageName: node
linkType: hard
+"tinyexec@npm:^0.3.2":
+ version: 0.3.2
+ resolution: "tinyexec@npm:0.3.2"
+ checksum: 10c0/3efbf791a911be0bf0821eab37a3445c2ba07acc1522b1fa84ae1e55f10425076f1290f680286345ed919549ad67527d07281f1c19d584df3b74326909eb1f90
+ languageName: node
+ linkType: hard
+
"to-fast-properties@npm:^2.0.0":
version: 2.0.0
resolution: "to-fast-properties@npm:2.0.0"
@@ -3733,6 +3795,13 @@ __metadata:
languageName: node
linkType: hard
+"uncrypto@npm:^0.1.3":
+ version: 0.1.3
+ resolution: "uncrypto@npm:0.1.3"
+ checksum: 10c0/74a29afefd76d5b77bedc983559ceb33f5bbc8dada84ff33755d1e3355da55a4e03a10e7ce717918c436b4dfafde1782e799ebaf2aadd775612b49f7b5b2998e
+ languageName: node
+ linkType: hard
+
"undici-types@npm:~6.19.2":
version: 6.19.8
resolution: "undici-types@npm:6.19.8"
diff --git a/packages/cli-v3/e2e/fixtures/otel-telemetry-loader/package-lock.json b/packages/cli-v3/e2e/fixtures/otel-telemetry-loader/package-lock.json
index a93d15044b..5656ab1b2b 100644
--- a/packages/cli-v3/e2e/fixtures/otel-telemetry-loader/package-lock.json
+++ b/packages/cli-v3/e2e/fixtures/otel-telemetry-loader/package-lock.json
@@ -9,7 +9,7 @@
"packages/*"
],
"dependencies": {
- "@trigger.dev/sdk": "0.0.0-prerelease-20250116195421",
+ "@trigger.dev/sdk": "0.0.0-prerelease-20250321122618",
"openai": "4.47.0"
},
"devDependencies": {
@@ -21,6 +21,11 @@
"yarn": "4.2.2"
}
},
+ "node_modules/@bugsnag/cuid": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/@bugsnag/cuid/-/cuid-3.2.1.tgz",
+ "integrity": "sha512-zpvN8xQ5rdRWakMd/BcVkdn2F8HKlDSbM3l7duueK590WmI1T0ObTLc1V/1e55r14WNjPd5AJTYX4yPEAFVi+Q=="
+ },
"node_modules/@electric-sql/client": {
"version": "1.0.0-beta.1",
"resolved": "https://registry.npmjs.org/@electric-sql/client/-/client-1.0.0-beta.1.tgz",
@@ -38,9 +43,9 @@
}
},
"node_modules/@grpc/grpc-js": {
- "version": "1.12.5",
- "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.12.5.tgz",
- "integrity": "sha512-d3iiHxdpg5+ZcJ6jnDSOT8Z0O0VMVGy34jAnYLUX8yd36b1qn8f1TwOA/Lc7TsOh03IkPJ38eGI5qD2EjNkoEA==",
+ "version": "1.13.0",
+ "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.13.0.tgz",
+ "integrity": "sha512-pMuxInZjUnUkgMT2QLZclRqwk2ykJbIU05aZgPgJYXEpN9+2I7z7aNwcjWZSycRPl232FfhPszyBFJyOxTHNog==",
"dependencies": {
"@grpc/proto-loader": "^0.7.13",
"@js-sdsl/ordered-map": "^4.4.2"
@@ -111,11 +116,11 @@
}
},
"node_modules/@opentelemetry/core": {
- "version": "1.25.1",
- "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
- "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "version": "1.30.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.30.1.tgz",
+ "integrity": "sha512-OOCM2C/QIURhJMuKaekP3TRBxBKxG/TWWA0TL2J6nXUtDnuCtccy49LUJF8xPFXMX+0LMcxFpCo8M9cGY1W6rQ==",
"dependencies": {
- "@opentelemetry/semantic-conventions": "1.25.1"
+ "@opentelemetry/semantic-conventions": "1.28.0"
},
"engines": {
"node": ">=14"
@@ -124,6 +129,14 @@
"@opentelemetry/api": ">=1.0.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/core/node_modules/@opentelemetry/semantic-conventions": {
+ "version": "1.28.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.28.0.tgz",
+ "integrity": "sha512-lp4qAiMTD4sNWW4DbKLBkfiMZ4jbAboJIGOQr5DvciMRI494OapieI9qiODpOt0XBr1LjIDy1xAGAnVs5supTA==",
+ "engines": {
+ "node": ">=14"
+ }
+ },
"node_modules/@opentelemetry/exporter-logs-otlp-http": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/exporter-logs-otlp-http/-/exporter-logs-otlp-http-0.52.1.tgz",
@@ -142,6 +155,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/exporter-logs-otlp-http/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/exporter-trace-otlp-grpc": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-grpc/-/exporter-trace-otlp-grpc-0.52.1.tgz",
@@ -161,6 +188,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/exporter-trace-otlp-grpc/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/exporter-trace-otlp-http": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.52.1.tgz",
@@ -179,6 +220,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/exporter-trace-otlp-http/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/exporter-trace-otlp-proto": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-proto/-/exporter-trace-otlp-proto-0.52.1.tgz",
@@ -197,6 +252,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/exporter-trace-otlp-proto/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/exporter-zipkin": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/exporter-zipkin/-/exporter-zipkin-1.25.1.tgz",
@@ -214,6 +283,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/exporter-zipkin/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/instrumentation": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.52.1.tgz",
@@ -248,6 +331,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/otlp-exporter-base/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/otlp-grpc-exporter-base": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/otlp-grpc-exporter-base/-/otlp-grpc-exporter-base-0.52.1.tgz",
@@ -265,6 +362,20 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/otlp-grpc-exporter-base/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/otlp-transformer": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/otlp-transformer/-/otlp-transformer-0.52.1.tgz",
@@ -285,6 +396,20 @@
"@opentelemetry/api": ">=1.3.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/propagator-b3": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/propagator-b3/-/propagator-b3-1.25.1.tgz",
@@ -299,6 +424,20 @@
"@opentelemetry/api": ">=1.0.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/propagator-b3/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/propagator-jaeger": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/propagator-jaeger/-/propagator-jaeger-1.25.1.tgz",
@@ -313,6 +452,20 @@
"@opentelemetry/api": ">=1.0.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/propagator-jaeger/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/resources": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.25.1.tgz",
@@ -328,6 +481,20 @@
"@opentelemetry/api": ">=1.0.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/resources/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/sdk-logs": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/sdk-logs/-/sdk-logs-0.52.1.tgz",
@@ -344,6 +511,20 @@
"@opentelemetry/api": ">=1.4.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/sdk-logs/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/sdk-metrics": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.25.1.tgz",
@@ -360,6 +541,20 @@
"@opentelemetry/api": ">=1.3.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/sdk-metrics/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/sdk-node": {
"version": "0.52.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/sdk-node/-/sdk-node-0.52.1.tgz",
@@ -386,6 +581,20 @@
"@opentelemetry/api": ">=1.3.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/sdk-node/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/sdk-trace-base": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.25.1.tgz",
@@ -402,6 +611,20 @@
"@opentelemetry/api": ">=1.0.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/sdk-trace-base/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/sdk-trace-node": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-node/-/sdk-trace-node-1.25.1.tgz",
@@ -421,6 +644,20 @@
"@opentelemetry/api": ">=1.0.0 <1.10.0"
}
},
+ "node_modules/@opentelemetry/sdk-trace-node/node_modules/@opentelemetry/core": {
+ "version": "1.25.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.1.tgz",
+ "integrity": "sha512-GeT/l6rBYWVQ4XArluLVB6WWQ8flHbdb6r2FCHC3smtdOAbrJBIv35tpV/yp9bmYUJf+xmZpu9DRTIeJVhFbEQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.25.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ }
+ },
"node_modules/@opentelemetry/semantic-conventions": {
"version": "1.25.1",
"resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.25.1.tgz",
@@ -484,9 +721,9 @@
"integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw=="
},
"node_modules/@rollup/rollup-darwin-arm64": {
- "version": "4.30.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.30.1.tgz",
- "integrity": "sha512-r7FQIXD7gB0WJ5mokTUgUWPl0eYIH0wnxqeSAhuIwvnnpjdVB8cRRClyKLQr7lgzjctkbp5KmswWszlwYln03Q==",
+ "version": "4.36.0",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.36.0.tgz",
+ "integrity": "sha512-JQ1Jk5G4bGrD4pWJQzWsD8I1n1mgPXq33+/vP4sk8j/z/C2siRuxZtaUA7yMTf71TCZTZl/4e1bfzwUmFb3+rw==",
"cpu": [
"arm64"
],
@@ -530,15 +767,17 @@
}
},
"node_modules/@trigger.dev/core": {
- "version": "0.0.0-prerelease-20250116195421",
- "resolved": "https://registry.npmjs.org/@trigger.dev/core/-/core-0.0.0-prerelease-20250116195421.tgz",
- "integrity": "sha512-bxZ5vq3txcUxQln8BZSb2No7gHPG/qTSeo5uq6W2+OQKoVN+c5pmVTYQQa6Fwfd2AXhpkU9ovdM3V1IoEddOtA==",
+ "version": "0.0.0-prerelease-20250321122618",
+ "resolved": "https://registry.npmjs.org/@trigger.dev/core/-/core-0.0.0-prerelease-20250321122618.tgz",
+ "integrity": "sha512-0hSMKqvM39V1A8YjZxYivw109ZrGk22Pfa8ydQ29nCubdeTMe6for+AYzj89BIOnEGeEZ24Hzg2uVc5Av9BUHg==",
"dependencies": {
+ "@bugsnag/cuid": "^3.1.1",
"@electric-sql/client": "1.0.0-beta.1",
"@google-cloud/precise-date": "^4.0.0",
"@jsonhero/path": "^1.0.21",
"@opentelemetry/api": "1.9.0",
"@opentelemetry/api-logs": "0.52.1",
+ "@opentelemetry/core": "^1.30.1",
"@opentelemetry/exporter-logs-otlp-http": "0.52.1",
"@opentelemetry/exporter-trace-otlp-http": "0.52.1",
"@opentelemetry/instrumentation": "0.52.1",
@@ -549,13 +788,16 @@
"@opentelemetry/sdk-trace-node": "1.25.1",
"@opentelemetry/semantic-conventions": "1.25.1",
"dequal": "^2.0.3",
+ "eventsource": "^3.0.5",
"eventsource-parser": "^3.0.0",
"execa": "^8.0.1",
"humanize-duration": "^3.27.3",
"jose": "^5.4.0",
"nanoid": "^3.3.4",
+ "socket.io": "4.7.4",
"socket.io-client": "4.7.5",
"superjson": "^2.2.1",
+ "tinyexec": "^0.3.2",
"zod": "3.23.8",
"zod-error": "1.5.0",
"zod-validation-error": "^1.5.0"
@@ -573,14 +815,14 @@
}
},
"node_modules/@trigger.dev/sdk": {
- "version": "0.0.0-prerelease-20250116195421",
- "resolved": "https://registry.npmjs.org/@trigger.dev/sdk/-/sdk-0.0.0-prerelease-20250116195421.tgz",
- "integrity": "sha512-/Kw+q/mDulGgiSHR9L3nldGOWH72AQAys9zuoBO72JjVfipKI1R8jjqQHhZjWqolMYqgg9XaJr9lQM8sV5lWwQ==",
+ "version": "0.0.0-prerelease-20250321122618",
+ "resolved": "https://registry.npmjs.org/@trigger.dev/sdk/-/sdk-0.0.0-prerelease-20250321122618.tgz",
+ "integrity": "sha512-/DOWqGdTxkeUY3WIJ/lPS8vC9VwitQiB+ONHCR5L1xBovHVaCyj3zMn/dWPsM+Wtz2wVZAPZ45pmHqvJEX3qLw==",
"dependencies": {
"@opentelemetry/api": "1.9.0",
"@opentelemetry/api-logs": "0.52.1",
"@opentelemetry/semantic-conventions": "1.25.1",
- "@trigger.dev/core": "0.0.0-prerelease-20250116195421",
+ "@trigger.dev/core": "0.0.0-prerelease-20250321122618",
"chalk": "^5.2.0",
"cronstrue": "^2.21.0",
"debug": "^4.3.4",
@@ -588,6 +830,7 @@
"slug": "^6.0.0",
"terminal-link": "^3.0.0",
"ulid": "^2.3.0",
+ "uncrypto": "^0.1.3",
"uuid": "^9.0.0",
"ws": "^8.11.0"
},
@@ -598,6 +841,19 @@
"zod": "^3.0.0"
}
},
+ "node_modules/@types/cookie": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz",
+ "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q=="
+ },
+ "node_modules/@types/cors": {
+ "version": "2.8.17",
+ "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.17.tgz",
+ "integrity": "sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==",
+ "dependencies": {
+ "@types/node": "*"
+ }
+ },
"node_modules/@types/node": {
"version": "22.5.2",
"resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.2.tgz",
@@ -631,6 +887,18 @@
"node": ">=6.5"
}
},
+ "node_modules/accepts": {
+ "version": "1.3.8",
+ "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz",
+ "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==",
+ "dependencies": {
+ "mime-types": "~2.1.34",
+ "negotiator": "0.6.3"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
"node_modules/acorn": {
"version": "8.12.1",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz",
@@ -708,6 +976,14 @@
}
]
},
+ "node_modules/base64id": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz",
+ "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==",
+ "engines": {
+ "node": "^4.5.0 || >= 5.9"
+ }
+ },
"node_modules/chalk": {
"version": "5.3.0",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz",
@@ -764,6 +1040,14 @@
"node": ">= 0.8"
}
},
+ "node_modules/cookie": {
+ "version": "0.4.2",
+ "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz",
+ "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
"node_modules/copy-anything": {
"version": "3.0.5",
"resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-3.0.5.tgz",
@@ -778,6 +1062,18 @@
"url": "https://github.com/sponsors/mesqueeb"
}
},
+ "node_modules/cors": {
+ "version": "2.8.5",
+ "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz",
+ "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==",
+ "dependencies": {
+ "object-assign": "^4",
+ "vary": "^1"
+ },
+ "engines": {
+ "node": ">= 0.10"
+ }
+ },
"node_modules/cronstrue": {
"version": "2.50.0",
"resolved": "https://registry.npmjs.org/cronstrue/-/cronstrue-2.50.0.tgz",
@@ -836,6 +1132,26 @@
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
"integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
},
+ "node_modules/engine.io": {
+ "version": "6.5.5",
+ "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.5.5.tgz",
+ "integrity": "sha512-C5Pn8Wk+1vKBoHghJODM63yk8MvrO9EWZUfkAt5HAqIgPE4/8FF0PEGHXtEd40l223+cE5ABWuPzm38PHFXfMA==",
+ "dependencies": {
+ "@types/cookie": "^0.4.1",
+ "@types/cors": "^2.8.12",
+ "@types/node": ">=10.0.0",
+ "accepts": "~1.3.4",
+ "base64id": "2.0.0",
+ "cookie": "~0.4.1",
+ "cors": "~2.8.5",
+ "debug": "~4.3.1",
+ "engine.io-parser": "~5.2.1",
+ "ws": "~8.17.1"
+ },
+ "engines": {
+ "node": ">=10.2.0"
+ }
+ },
"node_modules/engine.io-client": {
"version": "6.5.4",
"resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.5.4.tgz",
@@ -876,6 +1192,26 @@
"node": ">=10.0.0"
}
},
+ "node_modules/engine.io/node_modules/ws": {
+ "version": "8.17.1",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz",
+ "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==",
+ "engines": {
+ "node": ">=10.0.0"
+ },
+ "peerDependencies": {
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": ">=5.0.2"
+ },
+ "peerDependenciesMeta": {
+ "bufferutil": {
+ "optional": true
+ },
+ "utf-8-validate": {
+ "optional": true
+ }
+ }
+ },
"node_modules/escalade": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz",
@@ -892,6 +1228,17 @@
"node": ">=6"
}
},
+ "node_modules/eventsource": {
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-3.0.5.tgz",
+ "integrity": "sha512-LT/5J605bx5SNyE+ITBDiM3FxffBiq9un7Vx0EwMDM3vg8sWKx/tO2zC+LMqZ+smAM0F2hblaDZUVZF0te2pSw==",
+ "dependencies": {
+ "eventsource-parser": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=18.0.0"
+ }
+ },
"node_modules/eventsource-parser": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/eventsource-parser/-/eventsource-parser-3.0.0.tgz",
@@ -1090,9 +1437,9 @@
"integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw=="
},
"node_modules/jose": {
- "version": "5.9.6",
- "resolved": "https://registry.npmjs.org/jose/-/jose-5.9.6.tgz",
- "integrity": "sha512-AMlnetc9+CV9asI19zHmrgS/WYsWUwCn2R7RzlbJWD7F9eWYUTGyBmU9o6PxngtLGOiDGPRu+Uc4fhKzbpteZQ==",
+ "version": "5.10.0",
+ "resolved": "https://registry.npmjs.org/jose/-/jose-5.10.0.tgz",
+ "integrity": "sha512-s+3Al/p9g32Iq+oqXxkW//7jk2Vig6FF1CFqzVXoTUXt2qz89YWbL+OwS17NFYEvxC35n0FKeGO2LGYSxeM2Gg==",
"funding": {
"url": "https://github.com/sponsors/panva"
}
@@ -1117,9 +1464,9 @@
"integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ=="
},
"node_modules/long": {
- "version": "5.2.4",
- "resolved": "https://registry.npmjs.org/long/-/long-5.2.4.tgz",
- "integrity": "sha512-qtzLbJE8hq7VabR3mISmVGtoXP8KGc2Z/AT8OuqlYD7JTR3oqrgwdjnk07wpj1twXxYmgDXgoKVWUG/fReSzHg=="
+ "version": "5.3.1",
+ "resolved": "https://registry.npmjs.org/long/-/long-5.3.1.tgz",
+ "integrity": "sha512-ka87Jz3gcx/I7Hal94xaN2tZEOPoUOEVftkQqZx2EeQRN7LGdfLlI3FvZ+7WDplm+vK2Urx9ULrvSowtdCieng=="
},
"node_modules/merge-stream": {
"version": "2.0.0",
@@ -1172,9 +1519,9 @@
"integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
},
"node_modules/nanoid": {
- "version": "3.3.8",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz",
- "integrity": "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==",
+ "version": "3.3.11",
+ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz",
+ "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==",
"funding": [
{
"type": "github",
@@ -1188,6 +1535,14 @@
"node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
}
},
+ "node_modules/negotiator": {
+ "version": "0.6.3",
+ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
+ "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
"node_modules/node-domexception": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz",
@@ -1250,6 +1605,14 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
+ "node_modules/object-assign": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
+ "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
"node_modules/onetime": {
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz",
@@ -1435,6 +1798,52 @@
"resolved": "https://registry.npmjs.org/slug/-/slug-6.1.0.tgz",
"integrity": "sha512-x6vLHCMasg4DR2LPiyFGI0gJJhywY6DTiGhCrOMzb3SOk/0JVLIaL4UhyFSHu04SD3uAavrKY/K3zZ3i6iRcgA=="
},
+ "node_modules/socket.io": {
+ "version": "4.7.4",
+ "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.7.4.tgz",
+ "integrity": "sha512-DcotgfP1Zg9iP/dH9zvAQcWrE0TtbMVwXmlV4T4mqsvY+gw+LqUGPfx2AoVyRk0FLME+GQhufDMyacFmw7ksqw==",
+ "dependencies": {
+ "accepts": "~1.3.4",
+ "base64id": "~2.0.0",
+ "cors": "~2.8.5",
+ "debug": "~4.3.2",
+ "engine.io": "~6.5.2",
+ "socket.io-adapter": "~2.5.2",
+ "socket.io-parser": "~4.2.4"
+ },
+ "engines": {
+ "node": ">=10.2.0"
+ }
+ },
+ "node_modules/socket.io-adapter": {
+ "version": "2.5.5",
+ "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.5.tgz",
+ "integrity": "sha512-eLDQas5dzPgOWCk9GuuJC2lBqItuhKI4uxGgo9aIV7MYbk2h9Q6uULEh8WBzThoI7l+qU9Ast9fVUmkqPP9wYg==",
+ "dependencies": {
+ "debug": "~4.3.4",
+ "ws": "~8.17.1"
+ }
+ },
+ "node_modules/socket.io-adapter/node_modules/ws": {
+ "version": "8.17.1",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz",
+ "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==",
+ "engines": {
+ "node": ">=10.0.0"
+ },
+ "peerDependencies": {
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": ">=5.0.2"
+ },
+ "peerDependenciesMeta": {
+ "bufferutil": {
+ "optional": true
+ },
+ "utf-8-validate": {
+ "optional": true
+ }
+ }
+ },
"node_modules/socket.io-client": {
"version": "4.7.5",
"resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.7.5.tgz",
@@ -1581,6 +1990,11 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
+ "node_modules/tinyexec": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.2.tgz",
+ "integrity": "sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA=="
+ },
"node_modules/tr46": {
"version": "0.0.3",
"resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
@@ -1618,6 +2032,11 @@
"ulid": "bin/cli.js"
}
},
+ "node_modules/uncrypto": {
+ "version": "0.1.3",
+ "resolved": "https://registry.npmjs.org/uncrypto/-/uncrypto-0.1.3.tgz",
+ "integrity": "sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q=="
+ },
"node_modules/undici-types": {
"version": "6.19.8",
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz",
@@ -1635,6 +2054,14 @@
"uuid": "dist/bin/uuid"
}
},
+ "node_modules/vary": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
+ "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==",
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
"node_modules/web-streams-polyfill": {
"version": "4.0.0-beta.3",
"resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-4.0.0-beta.3.tgz",
@@ -1749,9 +2176,9 @@
}
},
"node_modules/zod": {
- "version": "3.24.1",
- "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.1.tgz",
- "integrity": "sha512-muH7gBL9sI1nciMZV67X5fTKKBLtwpZ5VBp1vsOQzj1MhrBZ4wlVCm3gedKZWLp0Oyel8sIGfeiz54Su+OVT+A==",
+ "version": "3.24.2",
+ "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.2.tgz",
+ "integrity": "sha512-lY7CDW43ECgW9u1TcT3IoXHflywfVqDYze4waEz812jR/bZ8FHDsl7pFQoSZTz5N+2NqRXs8GBwnAwo3ZNxqhQ==",
"funding": {
"url": "https://github.com/sponsors/colinhacks"
}
diff --git a/packages/cli-v3/e2e/fixtures/otel-telemetry-loader/package.json b/packages/cli-v3/e2e/fixtures/otel-telemetry-loader/package.json
index 0b7be41e24..5b3bd63ab9 100644
--- a/packages/cli-v3/e2e/fixtures/otel-telemetry-loader/package.json
+++ b/packages/cli-v3/e2e/fixtures/otel-telemetry-loader/package.json
@@ -1,7 +1,7 @@
{
"name": "otel-telemetry-loader",
"private": true,
- "packageManager": "pnpm@8.15.5+sha256.4b4efa12490e5055d59b9b9fc9438b7d581a6b7af3b5675eb5c5f447cee1a589",
+ "packageManager": "yarn@4.2.2+sha256.1aa43a5304405be7a7cb9cb5de7b97de9c4e8ddd3273e4dad00d6ae3eb39f0ef",
"engines": {
"pnpm": "8.15.5",
"yarn": "4.2.2"
@@ -10,7 +10,7 @@
"packages/*"
],
"dependencies": {
- "@trigger.dev/sdk": "0.0.0-prerelease-20250116195421",
+ "@trigger.dev/sdk": "0.0.0-prerelease-20250321122618",
"openai": "4.47.0"
},
"devDependencies": {
diff --git a/packages/cli-v3/e2e/fixtures/otel-telemetry-loader/pnpm-lock.yaml b/packages/cli-v3/e2e/fixtures/otel-telemetry-loader/pnpm-lock.yaml
index cf5b8db6b1..7c53ae8906 100644
--- a/packages/cli-v3/e2e/fixtures/otel-telemetry-loader/pnpm-lock.yaml
+++ b/packages/cli-v3/e2e/fixtures/otel-telemetry-loader/pnpm-lock.yaml
@@ -9,8 +9,8 @@ importers:
.:
dependencies:
'@trigger.dev/sdk':
- specifier: 0.0.0-prerelease-20250116195421
- version: 0.0.0-prerelease-20250116195421(zod@3.22.3)
+ specifier: 0.0.0-prerelease-20250321122618
+ version: 0.0.0-prerelease-20250321122618(zod@3.23.8)
openai:
specifier: 4.47.0
version: 4.47.0
@@ -24,6 +24,10 @@ importers:
packages:
+ /@bugsnag/cuid@3.2.1:
+ resolution: {integrity: sha512-zpvN8xQ5rdRWakMd/BcVkdn2F8HKlDSbM3l7duueK590WmI1T0ObTLc1V/1e55r14WNjPd5AJTYX4yPEAFVi+Q==}
+ dev: false
+
/@electric-sql/client@1.0.0-beta.1:
resolution: {integrity: sha512-Ei9jN3pDoGzc+a/bGqnB5ajb52IvSv7/n2btuyzUlcOHIR2kM9fqtYTJXPwZYKLkGZlHWlpHgWyRtrinkP2nHg==}
optionalDependencies:
@@ -90,6 +94,16 @@ packages:
'@opentelemetry/api': 1.9.0
'@opentelemetry/semantic-conventions': 1.25.1
+ /@opentelemetry/core@1.30.1(@opentelemetry/api@1.9.0):
+ resolution: {integrity: sha512-OOCM2C/QIURhJMuKaekP3TRBxBKxG/TWWA0TL2J6nXUtDnuCtccy49LUJF8xPFXMX+0LMcxFpCo8M9cGY1W6rQ==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@opentelemetry/api': '>=1.0.0 <1.10.0'
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/semantic-conventions': 1.28.0
+ dev: false
+
/@opentelemetry/exporter-logs-otlp-http@0.52.1(@opentelemetry/api@1.9.0):
resolution: {integrity: sha512-qKgywId2DbdowPZpOBXQKp0B8DfhfIArmSic15z13Nk/JAOccBUQdPwDjDnjsM5f0ckZFMVR2t/tijTUAqDZoA==}
engines: {node: '>=14'}
@@ -326,6 +340,11 @@ packages:
resolution: {integrity: sha512-ZDjMJJQRlyk8A1KZFCc+bCbsyrn1wTwdNt56F7twdfUfnHUZUq77/WfONCj8p72NZOyP7pNTdUWSTYC3GTbuuQ==}
engines: {node: '>=14'}
+ /@opentelemetry/semantic-conventions@1.28.0:
+ resolution: {integrity: sha512-lp4qAiMTD4sNWW4DbKLBkfiMZ4jbAboJIGOQr5DvciMRI494OapieI9qiODpOt0XBr1LjIDy1xAGAnVs5supTA==}
+ engines: {node: '>=14'}
+ dev: false
+
/@protobufjs/aspromise@1.1.2:
resolution: {integrity: sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==}
dev: false
@@ -403,15 +422,17 @@ packages:
- supports-color
dev: true
- /@trigger.dev/core@0.0.0-prerelease-20250116195421:
- resolution: {integrity: sha512-bxZ5vq3txcUxQln8BZSb2No7gHPG/qTSeo5uq6W2+OQKoVN+c5pmVTYQQa6Fwfd2AXhpkU9ovdM3V1IoEddOtA==}
+ /@trigger.dev/core@0.0.0-prerelease-20250321122618:
+ resolution: {integrity: sha512-0hSMKqvM39V1A8YjZxYivw109ZrGk22Pfa8ydQ29nCubdeTMe6for+AYzj89BIOnEGeEZ24Hzg2uVc5Av9BUHg==}
engines: {node: '>=18.20.0'}
dependencies:
+ '@bugsnag/cuid': 3.2.1
'@electric-sql/client': 1.0.0-beta.1
'@google-cloud/precise-date': 4.0.0
'@jsonhero/path': 1.0.21
'@opentelemetry/api': 1.9.0
'@opentelemetry/api-logs': 0.52.1
+ '@opentelemetry/core': 1.30.1(@opentelemetry/api@1.9.0)
'@opentelemetry/exporter-logs-otlp-http': 0.52.1(@opentelemetry/api@1.9.0)
'@opentelemetry/exporter-trace-otlp-http': 0.52.1(@opentelemetry/api@1.9.0)
'@opentelemetry/instrumentation': 0.52.1(@opentelemetry/api@1.9.0)
@@ -422,13 +443,16 @@ packages:
'@opentelemetry/sdk-trace-node': 1.25.1(@opentelemetry/api@1.9.0)
'@opentelemetry/semantic-conventions': 1.25.1
dequal: 2.0.3
+ eventsource: 3.0.5
eventsource-parser: 3.0.0
execa: 8.0.1
humanize-duration: 3.32.1
jose: 5.9.6
nanoid: 3.3.8
+ socket.io: 4.7.4
socket.io-client: 4.7.5
superjson: 2.2.1
+ tinyexec: 0.3.2
zod: 3.23.8
zod-error: 1.5.0
zod-validation-error: 1.5.0(zod@3.23.8)
@@ -438,8 +462,8 @@ packages:
- utf-8-validate
dev: false
- /@trigger.dev/sdk@0.0.0-prerelease-20250116195421(zod@3.22.3):
- resolution: {integrity: sha512-/Kw+q/mDulGgiSHR9L3nldGOWH72AQAys9zuoBO72JjVfipKI1R8jjqQHhZjWqolMYqgg9XaJr9lQM8sV5lWwQ==}
+ /@trigger.dev/sdk@0.0.0-prerelease-20250321122618(zod@3.23.8):
+ resolution: {integrity: sha512-/DOWqGdTxkeUY3WIJ/lPS8vC9VwitQiB+ONHCR5L1xBovHVaCyj3zMn/dWPsM+Wtz2wVZAPZ45pmHqvJEX3qLw==}
engines: {node: '>=18.20.0'}
peerDependencies:
zod: ^3.0.0
@@ -447,7 +471,7 @@ packages:
'@opentelemetry/api': 1.9.0
'@opentelemetry/api-logs': 0.52.1
'@opentelemetry/semantic-conventions': 1.25.1
- '@trigger.dev/core': 0.0.0-prerelease-20250116195421
+ '@trigger.dev/core': 0.0.0-prerelease-20250321122618
chalk: 5.3.0
cronstrue: 2.50.0
debug: 4.3.6
@@ -455,15 +479,26 @@ packages:
slug: 6.1.0
terminal-link: 3.0.0
ulid: 2.3.0
+ uncrypto: 0.1.3
uuid: 9.0.1
ws: 8.18.0
- zod: 3.22.3
+ zod: 3.23.8
transitivePeerDependencies:
- bufferutil
- supports-color
- utf-8-validate
dev: false
+ /@types/cookie@0.4.1:
+ resolution: {integrity: sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==}
+ dev: false
+
+ /@types/cors@2.8.17:
+ resolution: {integrity: sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==}
+ dependencies:
+ '@types/node': 22.5.2
+ dev: false
+
/@types/node-fetch@2.6.11:
resolution: {integrity: sha512-24xFj9R5+rfQJLRyM56qh+wnVSYhyXC2tkoBndtY0U+vubqNsYXGjufB2nn8Q6gt0LrARwL6UBtMCSVCwl4B1g==}
dependencies:
@@ -493,6 +528,14 @@ packages:
event-target-shim: 5.0.1
dev: false
+ /accepts@1.3.8:
+ resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==}
+ engines: {node: '>= 0.6'}
+ dependencies:
+ mime-types: 2.1.35
+ negotiator: 0.6.3
+ dev: false
+
/acorn-import-attributes@1.9.5(acorn@8.12.1):
resolution: {integrity: sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==}
peerDependencies:
@@ -539,6 +582,11 @@ packages:
resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==}
dev: true
+ /base64id@2.0.0:
+ resolution: {integrity: sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==}
+ engines: {node: ^4.5.0 || >= 5.9}
+ dev: false
+
/chalk@5.3.0:
resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==}
engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
@@ -574,6 +622,11 @@ packages:
delayed-stream: 1.0.0
dev: false
+ /cookie@0.4.2:
+ resolution: {integrity: sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==}
+ engines: {node: '>= 0.6'}
+ dev: false
+
/copy-anything@3.0.5:
resolution: {integrity: sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==}
engines: {node: '>=12.13'}
@@ -581,6 +634,14 @@ packages:
is-what: 4.1.16
dev: false
+ /cors@2.8.5:
+ resolution: {integrity: sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==}
+ engines: {node: '>= 0.10'}
+ dependencies:
+ object-assign: 4.1.1
+ vary: 1.1.2
+ dev: false
+
/cronstrue@2.50.0:
resolution: {integrity: sha512-ULYhWIonJzlScCCQrPUG5uMXzXxSixty4djud9SS37DoNxDdkeRocxzHuAo4ImRBUK+mAuU5X9TSwEDccnnuPg==}
hasBin: true
@@ -639,6 +700,26 @@ packages:
engines: {node: '>=10.0.0'}
dev: false
+ /engine.io@6.5.5:
+ resolution: {integrity: sha512-C5Pn8Wk+1vKBoHghJODM63yk8MvrO9EWZUfkAt5HAqIgPE4/8FF0PEGHXtEd40l223+cE5ABWuPzm38PHFXfMA==}
+ engines: {node: '>=10.2.0'}
+ dependencies:
+ '@types/cookie': 0.4.1
+ '@types/cors': 2.8.17
+ '@types/node': 22.5.2
+ accepts: 1.3.8
+ base64id: 2.0.0
+ cookie: 0.4.2
+ cors: 2.8.5
+ debug: 4.3.6
+ engine.io-parser: 5.2.3
+ ws: 8.17.1
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - utf-8-validate
+ dev: false
+
/escalade@3.2.0:
resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
engines: {node: '>=6'}
@@ -654,6 +735,13 @@ packages:
engines: {node: '>=18.0.0'}
dev: false
+ /eventsource@3.0.5:
+ resolution: {integrity: sha512-LT/5J605bx5SNyE+ITBDiM3FxffBiq9un7Vx0EwMDM3vg8sWKx/tO2zC+LMqZ+smAM0F2hblaDZUVZF0te2pSw==}
+ engines: {node: '>=18.0.0'}
+ dependencies:
+ eventsource-parser: 3.0.0
+ dev: false
+
/evt@2.5.7:
resolution: {integrity: sha512-dr7Wd16ry5F8WNU1xXLKpFpO3HsoAGg8zC48e08vDdzMzGWCP9/QFGt1PQptEEDh8SwYP3EL8M+d/Gb0kgUp6g==}
dependencies:
@@ -829,6 +917,11 @@ packages:
hasBin: true
dev: false
+ /negotiator@0.6.3:
+ resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==}
+ engines: {node: '>= 0.6'}
+ dev: false
+
/node-domexception@1.0.0:
resolution: {integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==}
engines: {node: '>=10.5.0'}
@@ -853,6 +946,11 @@ packages:
path-key: 4.0.0
dev: false
+ /object-assign@4.1.1:
+ resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
+ engines: {node: '>=0.10.0'}
+ dev: false
+
/onetime@6.0.0:
resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==}
engines: {node: '>=12'}
@@ -966,6 +1064,17 @@ packages:
resolution: {integrity: sha512-x6vLHCMasg4DR2LPiyFGI0gJJhywY6DTiGhCrOMzb3SOk/0JVLIaL4UhyFSHu04SD3uAavrKY/K3zZ3i6iRcgA==}
dev: false
+ /socket.io-adapter@2.5.5:
+ resolution: {integrity: sha512-eLDQas5dzPgOWCk9GuuJC2lBqItuhKI4uxGgo9aIV7MYbk2h9Q6uULEh8WBzThoI7l+qU9Ast9fVUmkqPP9wYg==}
+ dependencies:
+ debug: 4.3.6
+ ws: 8.17.1
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - utf-8-validate
+ dev: false
+
/socket.io-client@4.7.5:
resolution: {integrity: sha512-sJ/tqHOCe7Z50JCBCXrsY3I2k03iOiUe+tj1OmKeD2lXPiGH/RUCdTZFoqVyN7l1MnpIzPrGtLcijffmeouNlQ==}
engines: {node: '>=10.0.0'}
@@ -990,6 +1099,23 @@ packages:
- supports-color
dev: false
+ /socket.io@4.7.4:
+ resolution: {integrity: sha512-DcotgfP1Zg9iP/dH9zvAQcWrE0TtbMVwXmlV4T4mqsvY+gw+LqUGPfx2AoVyRk0FLME+GQhufDMyacFmw7ksqw==}
+ engines: {node: '>=10.2.0'}
+ dependencies:
+ accepts: 1.3.8
+ base64id: 2.0.0
+ cors: 2.8.5
+ debug: 4.3.6
+ engine.io: 6.5.5
+ socket.io-adapter: 2.5.5
+ socket.io-parser: 4.2.4
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - utf-8-validate
+ dev: false
+
/string-width@4.2.3:
resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
engines: {node: '>=8'}
@@ -1045,6 +1171,10 @@ packages:
supports-hyperlinks: 2.3.0
dev: false
+ /tinyexec@0.3.2:
+ resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==}
+ dev: false
+
/tr46@0.0.3:
resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==}
dev: false
@@ -1073,6 +1203,10 @@ packages:
hasBin: true
dev: false
+ /uncrypto@0.1.3:
+ resolution: {integrity: sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==}
+ dev: false
+
/undici-types@5.26.5:
resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==}
dev: false
@@ -1086,6 +1220,11 @@ packages:
hasBin: true
dev: false
+ /vary@1.1.2:
+ resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==}
+ engines: {node: '>= 0.8'}
+ dev: false
+
/web-streams-polyfill@3.3.3:
resolution: {integrity: sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==}
engines: {node: '>= 8'}
@@ -1193,10 +1332,6 @@ packages:
zod: 3.23.8
dev: false
- /zod@3.22.3:
- resolution: {integrity: sha512-EjIevzuJRiRPbVH4mGc8nApb/lVLKVpmUhAaR5R5doKGfAnGJ6Gr3CViAVjP+4FWSxCsybeWQdcgCtbX+7oZug==}
- dev: false
-
/zod@3.23.8:
resolution: {integrity: sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==}
dev: false
diff --git a/packages/cli-v3/e2e/fixtures/otel-telemetry-loader/yarn.lock b/packages/cli-v3/e2e/fixtures/otel-telemetry-loader/yarn.lock
index ec16aa5ebf..1df03dc371 100644
--- a/packages/cli-v3/e2e/fixtures/otel-telemetry-loader/yarn.lock
+++ b/packages/cli-v3/e2e/fixtures/otel-telemetry-loader/yarn.lock
@@ -5,6 +5,13 @@ __metadata:
version: 8
cacheKey: 10c0
+"@bugsnag/cuid@npm:^3.1.1":
+ version: 3.2.1
+ resolution: "@bugsnag/cuid@npm:3.2.1"
+ checksum: 10c0/f2da80e922a3ed14bcede1e8257ce02974fdce91f2b6ecfc25846f70c250f2909b2a19f898e309cf564c882b39ac685df99e8fe498db45071d3019db5ea03e6a
+ languageName: node
+ linkType: hard
+
"@electric-sql/client@npm:1.0.0-beta.1":
version: 1.0.0-beta.1
resolution: "@electric-sql/client@npm:1.0.0-beta.1"
@@ -25,12 +32,12 @@ __metadata:
linkType: hard
"@grpc/grpc-js@npm:^1.7.1":
- version: 1.12.5
- resolution: "@grpc/grpc-js@npm:1.12.5"
+ version: 1.13.0
+ resolution: "@grpc/grpc-js@npm:1.13.0"
dependencies:
"@grpc/proto-loader": "npm:^0.7.13"
"@js-sdsl/ordered-map": "npm:^4.4.2"
- checksum: 10c0/1e539d98951e6ff6611e3cedc8eec343625fdab76c7683aa7fca605b3de17d8aabaf2f78d7e95400e68dc8e249cda498781e9a3481bb6b713fc167da3fe59a8e
+ checksum: 10c0/c760d5eb5ee07c4cfd5dcd83ee62d5232d5776b5d1ce5d436edc53402ec16ef053d3a283f48ce832f4635009dbd411ac7586495a7d053fc5f202e95811cf4129
languageName: node
linkType: hard
@@ -87,7 +94,7 @@ __metadata:
languageName: node
linkType: hard
-"@opentelemetry/core@npm:1.25.1, @opentelemetry/core@npm:^1.25.0":
+"@opentelemetry/core@npm:1.25.1":
version: 1.25.1
resolution: "@opentelemetry/core@npm:1.25.1"
dependencies:
@@ -98,6 +105,17 @@ __metadata:
languageName: node
linkType: hard
+"@opentelemetry/core@npm:^1.25.0, @opentelemetry/core@npm:^1.30.1":
+ version: 1.30.1
+ resolution: "@opentelemetry/core@npm:1.30.1"
+ dependencies:
+ "@opentelemetry/semantic-conventions": "npm:1.28.0"
+ peerDependencies:
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ checksum: 10c0/4c25ba50a6137c2ba9ca563fb269378f3c9ca6fd1b3f15dbb6eff78eebf5656f281997cbb7be8e51c01649fd6ad091083fcd8a42dd9b5dfac907dc06d7cfa092
+ languageName: node
+ linkType: hard
+
"@opentelemetry/exporter-logs-otlp-http@npm:0.52.1":
version: 0.52.1
resolution: "@opentelemetry/exporter-logs-otlp-http@npm:0.52.1"
@@ -351,6 +369,13 @@ __metadata:
languageName: node
linkType: hard
+"@opentelemetry/semantic-conventions@npm:1.28.0":
+ version: 1.28.0
+ resolution: "@opentelemetry/semantic-conventions@npm:1.28.0"
+ checksum: 10c0/deb8a0f744198071e70fea27143cf7c9f7ecb7e4d7b619488c917834ea09b31543c1c2bcea4ec5f3cf68797f0ef3549609c14e859013d9376400ac1499c2b9cb
+ languageName: node
+ linkType: hard
+
"@protobufjs/aspromise@npm:^1.1.1, @protobufjs/aspromise@npm:^1.1.2":
version: 1.1.2
resolution: "@protobufjs/aspromise@npm:1.1.2"
@@ -425,8 +450,8 @@ __metadata:
linkType: hard
"@rollup/rollup-darwin-arm64@npm:^4.18.1":
- version: 4.30.1
- resolution: "@rollup/rollup-darwin-arm64@npm:4.30.1"
+ version: 4.36.0
+ resolution: "@rollup/rollup-darwin-arm64@npm:4.36.0"
conditions: os=darwin & cpu=arm64
languageName: node
linkType: hard
@@ -461,15 +486,17 @@ __metadata:
languageName: node
linkType: hard
-"@trigger.dev/core@npm:0.0.0-prerelease-20250116195421":
- version: 0.0.0-prerelease-20250116195421
- resolution: "@trigger.dev/core@npm:0.0.0-prerelease-20250116195421"
+"@trigger.dev/core@npm:0.0.0-prerelease-20250321122618":
+ version: 0.0.0-prerelease-20250321122618
+ resolution: "@trigger.dev/core@npm:0.0.0-prerelease-20250321122618"
dependencies:
+ "@bugsnag/cuid": "npm:^3.1.1"
"@electric-sql/client": "npm:1.0.0-beta.1"
"@google-cloud/precise-date": "npm:^4.0.0"
"@jsonhero/path": "npm:^1.0.21"
"@opentelemetry/api": "npm:1.9.0"
"@opentelemetry/api-logs": "npm:0.52.1"
+ "@opentelemetry/core": "npm:^1.30.1"
"@opentelemetry/exporter-logs-otlp-http": "npm:0.52.1"
"@opentelemetry/exporter-trace-otlp-http": "npm:0.52.1"
"@opentelemetry/instrumentation": "npm:0.52.1"
@@ -480,28 +507,31 @@ __metadata:
"@opentelemetry/sdk-trace-node": "npm:1.25.1"
"@opentelemetry/semantic-conventions": "npm:1.25.1"
dequal: "npm:^2.0.3"
+ eventsource: "npm:^3.0.5"
eventsource-parser: "npm:^3.0.0"
execa: "npm:^8.0.1"
humanize-duration: "npm:^3.27.3"
jose: "npm:^5.4.0"
nanoid: "npm:^3.3.4"
+ socket.io: "npm:4.7.4"
socket.io-client: "npm:4.7.5"
superjson: "npm:^2.2.1"
+ tinyexec: "npm:^0.3.2"
zod: "npm:3.23.8"
zod-error: "npm:1.5.0"
zod-validation-error: "npm:^1.5.0"
- checksum: 10c0/90b53701ba59608e4b0319c5d08147ee04440e14ecb163dabcbea725f46555d4aa8b91fee51a31e616cd88d5f6dcfc15cb7a59491894c36d5cfe818454fff620
+ checksum: 10c0/0bcab7e5ea31c2ee49699b83b26da9994f0ce803b3208ac12e2157ebd21c1e872021922241ba835a98880cd051d2cc245c472ec1901196bfc2a41a53663326ec
languageName: node
linkType: hard
-"@trigger.dev/sdk@npm:0.0.0-prerelease-20250116195421":
- version: 0.0.0-prerelease-20250116195421
- resolution: "@trigger.dev/sdk@npm:0.0.0-prerelease-20250116195421"
+"@trigger.dev/sdk@npm:0.0.0-prerelease-20250321122618":
+ version: 0.0.0-prerelease-20250321122618
+ resolution: "@trigger.dev/sdk@npm:0.0.0-prerelease-20250321122618"
dependencies:
"@opentelemetry/api": "npm:1.9.0"
"@opentelemetry/api-logs": "npm:0.52.1"
"@opentelemetry/semantic-conventions": "npm:1.25.1"
- "@trigger.dev/core": "npm:0.0.0-prerelease-20250116195421"
+ "@trigger.dev/core": "npm:0.0.0-prerelease-20250321122618"
chalk: "npm:^5.2.0"
cronstrue: "npm:^2.21.0"
debug: "npm:^4.3.4"
@@ -509,11 +539,28 @@ __metadata:
slug: "npm:^6.0.0"
terminal-link: "npm:^3.0.0"
ulid: "npm:^2.3.0"
+ uncrypto: "npm:^0.1.3"
uuid: "npm:^9.0.0"
ws: "npm:^8.11.0"
peerDependencies:
zod: ^3.0.0
- checksum: 10c0/6c54e6588a02097a49f11784fefaa1e00b12af4875f6f599de80d54031b9ef919ff017924d6870427cd5d8da178d177df0b0a6c32c0930a03882e3c6c9def1dc
+ checksum: 10c0/2ae41e2fe41a781346a91144b946355521bbcce5bd4cbf4a48f4aeb0b9a7b338a9e749ed014c36732fb128510a01573230a70571c3ccb91f5500776b52ca17a5
+ languageName: node
+ linkType: hard
+
+"@types/cookie@npm:^0.4.1":
+ version: 0.4.1
+ resolution: "@types/cookie@npm:0.4.1"
+ checksum: 10c0/f96afe12bd51be1ec61410b0641243d93fa3a494702407c787a4c872b5c8bcd39b224471452055e44a9ce42af1a636e87d161994226eaf4c2be9c30f60418409
+ languageName: node
+ linkType: hard
+
+"@types/cors@npm:^2.8.12":
+ version: 2.8.17
+ resolution: "@types/cors@npm:2.8.17"
+ dependencies:
+ "@types/node": "npm:*"
+ checksum: 10c0/457364c28c89f3d9ed34800e1de5c6eaaf344d1bb39af122f013322a50bc606eb2aa6f63de4e41a7a08ba7ef454473926c94a830636723da45bf786df032696d
languageName: node
linkType: hard
@@ -527,7 +574,7 @@ __metadata:
languageName: node
linkType: hard
-"@types/node@npm:*, @types/node@npm:>=13.7.0":
+"@types/node@npm:*, @types/node@npm:>=10.0.0, @types/node@npm:>=13.7.0":
version: 22.5.2
resolution: "@types/node@npm:22.5.2"
dependencies:
@@ -561,6 +608,16 @@ __metadata:
languageName: node
linkType: hard
+"accepts@npm:~1.3.4":
+ version: 1.3.8
+ resolution: "accepts@npm:1.3.8"
+ dependencies:
+ mime-types: "npm:~2.1.34"
+ negotiator: "npm:0.6.3"
+ checksum: 10c0/3a35c5f5586cfb9a21163ca47a5f77ac34fa8ceb5d17d2fa2c0d81f41cbd7f8c6fa52c77e2c039acc0f4d09e71abdc51144246900f6bef5e3c4b333f77d89362
+ languageName: node
+ linkType: hard
+
"acorn-import-attributes@npm:^1.9.5":
version: 1.9.5
resolution: "acorn-import-attributes@npm:1.9.5"
@@ -627,6 +684,13 @@ __metadata:
languageName: node
linkType: hard
+"base64id@npm:2.0.0, base64id@npm:~2.0.0":
+ version: 2.0.0
+ resolution: "base64id@npm:2.0.0"
+ checksum: 10c0/6919efd237ed44b9988cbfc33eca6f173a10e810ce50292b271a1a421aac7748ef232a64d1e6032b08f19aae48dce6ee8f66c5ae2c9e5066c82b884861d4d453
+ languageName: node
+ linkType: hard
+
"chalk@npm:^5.2.0":
version: 5.3.0
resolution: "chalk@npm:5.3.0"
@@ -677,6 +741,13 @@ __metadata:
languageName: node
linkType: hard
+"cookie@npm:~0.4.1":
+ version: 0.4.2
+ resolution: "cookie@npm:0.4.2"
+ checksum: 10c0/beab41fbd7c20175e3a2799ba948c1dcc71ef69f23fe14eeeff59fc09f50c517b0f77098db87dbb4c55da802f9d86ee86cdc1cd3efd87760341551838d53fca2
+ languageName: node
+ linkType: hard
+
"copy-anything@npm:^3.0.2":
version: 3.0.5
resolution: "copy-anything@npm:3.0.5"
@@ -686,6 +757,16 @@ __metadata:
languageName: node
linkType: hard
+"cors@npm:~2.8.5":
+ version: 2.8.5
+ resolution: "cors@npm:2.8.5"
+ dependencies:
+ object-assign: "npm:^4"
+ vary: "npm:^1"
+ checksum: 10c0/373702b7999409922da80de4a61938aabba6929aea5b6fd9096fefb9e8342f626c0ebd7507b0e8b0b311380744cc985f27edebc0a26e0ddb784b54e1085de761
+ languageName: node
+ linkType: hard
+
"cronstrue@npm:^2.21.0":
version: 2.50.0
resolution: "cronstrue@npm:2.50.0"
@@ -706,7 +787,7 @@ __metadata:
languageName: node
linkType: hard
-"debug@npm:^4.3.4, debug@npm:^4.3.5, debug@npm:~4.3.1, debug@npm:~4.3.2":
+"debug@npm:^4.3.4, debug@npm:^4.3.5, debug@npm:~4.3.1, debug@npm:~4.3.2, debug@npm:~4.3.4":
version: 4.3.7
resolution: "debug@npm:4.3.7"
dependencies:
@@ -759,6 +840,24 @@ __metadata:
languageName: node
linkType: hard
+"engine.io@npm:~6.5.2":
+ version: 6.5.5
+ resolution: "engine.io@npm:6.5.5"
+ dependencies:
+ "@types/cookie": "npm:^0.4.1"
+ "@types/cors": "npm:^2.8.12"
+ "@types/node": "npm:>=10.0.0"
+ accepts: "npm:~1.3.4"
+ base64id: "npm:2.0.0"
+ cookie: "npm:~0.4.1"
+ cors: "npm:~2.8.5"
+ debug: "npm:~4.3.1"
+ engine.io-parser: "npm:~5.2.1"
+ ws: "npm:~8.17.1"
+ checksum: 10c0/b0994134917c5d3649fd7aea283492eaf092131e572a8d379c7c9081548b42cff756730b4641edd0d1598148dd3be253c4d634cea2ba5c59622d175d9e567469
+ languageName: node
+ linkType: hard
+
"escalade@npm:^3.1.1":
version: 3.2.0
resolution: "escalade@npm:3.2.0"
@@ -780,6 +879,15 @@ __metadata:
languageName: node
linkType: hard
+"eventsource@npm:^3.0.5":
+ version: 3.0.5
+ resolution: "eventsource@npm:3.0.5"
+ dependencies:
+ eventsource-parser: "npm:^3.0.0"
+ checksum: 10c0/0283045a70b7ab7501fc290e60ee5ebd6e24648e0f0a6d6a1c1bbb7a421971e8140b85d6239d08c360e0a0b196205ca86b4ff7f9efe3c06877ba628136856489
+ languageName: node
+ linkType: hard
+
"evt@npm:^2.4.13":
version: 2.5.7
resolution: "evt@npm:2.5.7"
@@ -946,9 +1054,9 @@ __metadata:
linkType: hard
"jose@npm:^5.4.0":
- version: 5.9.6
- resolution: "jose@npm:5.9.6"
- checksum: 10c0/d6bcd8c7d655b5cda8e182952a76f0c093347f5476d74795405bb91563f7ab676f61540310dd4b1531c60d685335ceb600571a409551d2cbd2ab3e9f9fbf1e4d
+ version: 5.10.0
+ resolution: "jose@npm:5.10.0"
+ checksum: 10c0/e20d9fc58d7e402f2e5f04e824b8897d5579aae60e64cb88ebdea1395311c24537bf4892f7de413fab1acf11e922797fb1b42269bc8fc65089a3749265ccb7b0
languageName: node
linkType: hard
@@ -976,9 +1084,9 @@ __metadata:
linkType: hard
"long@npm:^5.0.0":
- version: 5.2.4
- resolution: "long@npm:5.2.4"
- checksum: 10c0/0cf819ce2a7bbe48663e79233917552c7667b11e68d4d9ea4ebb99173042509d9af461e5211c22939b913332c264d9a1135937ea533cbd05bc4f8cf46f6d2e07
+ version: 5.3.1
+ resolution: "long@npm:5.3.1"
+ checksum: 10c0/8726994c6359bb7162fb94563e14c3f9c0f0eeafd90ec654738f4f144a5705756d36a873c442f172ee2a4b51e08d14ab99765b49aa1fb994c5ba7fe12057bca2
languageName: node
linkType: hard
@@ -996,7 +1104,7 @@ __metadata:
languageName: node
linkType: hard
-"mime-types@npm:^2.1.12":
+"mime-types@npm:^2.1.12, mime-types@npm:~2.1.34":
version: 2.1.35
resolution: "mime-types@npm:2.1.35"
dependencies:
@@ -1034,11 +1142,18 @@ __metadata:
linkType: hard
"nanoid@npm:^3.3.4":
- version: 3.3.8
- resolution: "nanoid@npm:3.3.8"
+ version: 3.3.11
+ resolution: "nanoid@npm:3.3.11"
bin:
nanoid: bin/nanoid.cjs
- checksum: 10c0/4b1bb29f6cfebf3be3bc4ad1f1296fb0a10a3043a79f34fbffe75d1621b4318319211cd420549459018ea3592f0d2f159247a6f874911d6d26eaaadda2478120
+ checksum: 10c0/40e7f70b3d15f725ca072dfc4f74e81fcf1fbb02e491cf58ac0c79093adc9b0a73b152bcde57df4b79cd097e13023d7504acb38404a4da7bc1cd8e887b82fe0b
+ languageName: node
+ linkType: hard
+
+"negotiator@npm:0.6.3":
+ version: 0.6.3
+ resolution: "negotiator@npm:0.6.3"
+ checksum: 10c0/3ec9fd413e7bf071c937ae60d572bc67155262068ed522cf4b3be5edbe6ddf67d095ec03a3a14ebf8fc8e95f8e1d61be4869db0dbb0de696f6b837358bd43fc2
languageName: node
linkType: hard
@@ -1072,6 +1187,13 @@ __metadata:
languageName: node
linkType: hard
+"object-assign@npm:^4":
+ version: 4.1.1
+ resolution: "object-assign@npm:4.1.1"
+ checksum: 10c0/1f4df9945120325d041ccf7b86f31e8bcc14e73d29171e37a7903050e96b81323784ec59f93f102ec635bcf6fa8034ba3ea0a8c7e69fa202b87ae3b6cec5a414
+ languageName: node
+ linkType: hard
+
"onetime@npm:^6.0.0":
version: 6.0.0
resolution: "onetime@npm:6.0.0"
@@ -1104,7 +1226,7 @@ __metadata:
resolution: "otel-telemetry-loader@workspace:."
dependencies:
"@traceloop/instrumentation-openai": "npm:^0.10.0"
- "@trigger.dev/sdk": "npm:0.0.0-prerelease-20250116195421"
+ "@trigger.dev/sdk": "npm:0.0.0-prerelease-20250321122618"
openai: "npm:4.47.0"
typescript: "npm:5.5.4"
languageName: unknown
@@ -1250,6 +1372,16 @@ __metadata:
languageName: node
linkType: hard
+"socket.io-adapter@npm:~2.5.2":
+ version: 2.5.5
+ resolution: "socket.io-adapter@npm:2.5.5"
+ dependencies:
+ debug: "npm:~4.3.4"
+ ws: "npm:~8.17.1"
+ checksum: 10c0/04a5a2a9c4399d1b6597c2afc4492ab1e73430cc124ab02b09e948eabf341180b3866e2b61b5084cb899beb68a4db7c328c29bda5efb9207671b5cb0bc6de44e
+ languageName: node
+ linkType: hard
+
"socket.io-client@npm:4.7.5":
version: 4.7.5
resolution: "socket.io-client@npm:4.7.5"
@@ -1272,6 +1404,21 @@ __metadata:
languageName: node
linkType: hard
+"socket.io@npm:4.7.4":
+ version: 4.7.4
+ resolution: "socket.io@npm:4.7.4"
+ dependencies:
+ accepts: "npm:~1.3.4"
+ base64id: "npm:~2.0.0"
+ cors: "npm:~2.8.5"
+ debug: "npm:~4.3.2"
+ engine.io: "npm:~6.5.2"
+ socket.io-adapter: "npm:~2.5.2"
+ socket.io-parser: "npm:~4.2.4"
+ checksum: 10c0/c37b7745d475695d5d5d20a30af940ebf1fefa9defdd1f3601978682a4e1d12eab10da0a6efb19d72038bb819a7972331a679649161689db600883b83818fb16
+ languageName: node
+ linkType: hard
+
"string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3":
version: 4.2.3
resolution: "string-width@npm:4.2.3"
@@ -1344,6 +1491,13 @@ __metadata:
languageName: node
linkType: hard
+"tinyexec@npm:^0.3.2":
+ version: 0.3.2
+ resolution: "tinyexec@npm:0.3.2"
+ checksum: 10c0/3efbf791a911be0bf0821eab37a3445c2ba07acc1522b1fa84ae1e55f10425076f1290f680286345ed919549ad67527d07281f1c19d584df3b74326909eb1f90
+ languageName: node
+ linkType: hard
+
"tr46@npm:~0.0.3":
version: 0.0.3
resolution: "tr46@npm:0.0.3"
@@ -1401,6 +1555,13 @@ __metadata:
languageName: node
linkType: hard
+"uncrypto@npm:^0.1.3":
+ version: 0.1.3
+ resolution: "uncrypto@npm:0.1.3"
+ checksum: 10c0/74a29afefd76d5b77bedc983559ceb33f5bbc8dada84ff33755d1e3355da55a4e03a10e7ce717918c436b4dfafde1782e799ebaf2aadd775612b49f7b5b2998e
+ languageName: node
+ linkType: hard
+
"undici-types@npm:~5.26.4":
version: 5.26.5
resolution: "undici-types@npm:5.26.5"
@@ -1424,6 +1585,13 @@ __metadata:
languageName: node
linkType: hard
+"vary@npm:^1":
+ version: 1.1.2
+ resolution: "vary@npm:1.1.2"
+ checksum: 10c0/f15d588d79f3675135ba783c91a4083dcd290a2a5be9fcb6514220a1634e23df116847b1cc51f66bfb0644cf9353b2abb7815ae499bab06e46dd33c1a6bf1f4f
+ languageName: node
+ linkType: hard
+
"web-streams-polyfill@npm:4.0.0-beta.3":
version: 4.0.0-beta.3
resolution: "web-streams-polyfill@npm:4.0.0-beta.3"
@@ -1569,8 +1737,8 @@ __metadata:
linkType: hard
"zod@npm:^3.20.2":
- version: 3.24.1
- resolution: "zod@npm:3.24.1"
- checksum: 10c0/0223d21dbaa15d8928fe0da3b54696391d8e3e1e2d0283a1a070b5980a1dbba945ce631c2d1eccc088fdbad0f2dfa40155590bf83732d3ac4fcca2cc9237591b
+ version: 3.24.2
+ resolution: "zod@npm:3.24.2"
+ checksum: 10c0/c638c7220150847f13ad90635b3e7d0321b36cce36f3fc6050ed960689594c949c326dfe2c6fa87c14b126ee5d370ccdebd6efb304f41ef5557a4aaca2824565
languageName: node
linkType: hard
diff --git a/packages/cli-v3/src/commands/workers/build.ts b/packages/cli-v3/src/commands/workers/build.ts
index e28896de9b..1a85a11269 100644
--- a/packages/cli-v3/src/commands/workers/build.ts
+++ b/packages/cli-v3/src/commands/workers/build.ts
@@ -419,7 +419,7 @@ async function _workerBuildCommand(dir: string, options: WorkersBuildCommandOpti
logger.table(
deploymentWithWorker.worker.tasks.map((task) => ({
id: task.slug,
- export: task.exportName,
+ export: task.exportName ?? "@deprecated",
path: task.filePath,
}))
);
diff --git a/packages/cli-v3/src/dev/devSupervisor.ts b/packages/cli-v3/src/dev/devSupervisor.ts
index 75865cc1f3..81d7c77f9f 100644
--- a/packages/cli-v3/src/dev/devSupervisor.ts
+++ b/packages/cli-v3/src/dev/devSupervisor.ts
@@ -113,6 +113,7 @@ class DevSupervisor implements WorkerRuntime {
async initializeWorker(manifest: BuildManifest, stop: () => void): Promise {
if (this.lastManifest && this.lastManifest.contentHash === manifest.contentHash) {
+ logger.debug("worker skipped", { lastManifestContentHash: this.lastManifest?.contentHash });
eventBus.emit("workerSkipped");
stop();
return;
@@ -126,6 +127,8 @@ class DevSupervisor implements WorkerRuntime {
stop,
});
+ logger.debug("initializing background worker", { manifest });
+
await backgroundWorker.initialize();
if (!backgroundWorker.manifest) {
@@ -153,6 +156,7 @@ class DevSupervisor implements WorkerRuntime {
packageVersion: manifest.packageVersion,
cliPackageVersion: manifest.cliPackageVersion,
tasks: backgroundWorker.manifest.tasks,
+ queues: backgroundWorker.manifest.queues,
contentHash: manifest.contentHash,
sourceFiles,
},
diff --git a/packages/cli-v3/src/entryPoints/dev-index-worker.ts b/packages/cli-v3/src/entryPoints/dev-index-worker.ts
index 2ef18444eb..a29f2f8541 100644
--- a/packages/cli-v3/src/entryPoints/dev-index-worker.ts
+++ b/packages/cli-v3/src/entryPoints/dev-index-worker.ts
@@ -2,19 +2,19 @@ import {
BuildManifest,
type HandleErrorFunction,
indexerToWorkerMessages,
- taskCatalog,
+ resourceCatalog,
type TaskManifest,
TriggerConfig,
} from "@trigger.dev/core/v3";
import {
- StandardTaskCatalog,
+ StandardResourceCatalog,
TracingDiagnosticLogLevel,
TracingSDK,
} from "@trigger.dev/core/v3/workers";
import { sendMessageInCatalog, ZodSchemaParsedError } from "@trigger.dev/core/v3/zodMessageHandler";
import { readFile } from "node:fs/promises";
import sourceMapSupport from "source-map-support";
-import { registerTasks } from "../indexing/registerTasks.js";
+import { registerResources } from "../indexing/registerResources.js";
import { env } from "std-env";
import { normalizeImportPath } from "../utilities/normalizeImportPath.js";
@@ -51,7 +51,7 @@ process.on("uncaughtException", function (error, origin) {
}
});
-taskCatalog.setGlobalTaskCatalog(new StandardTaskCatalog());
+resourceCatalog.setGlobalResourceCatalog(new StandardResourceCatalog());
async function importConfig(
configPath: string
@@ -86,7 +86,7 @@ async function bootstrap() {
forceFlushTimeoutMillis: 30_000,
});
- const importErrors = await registerTasks(buildManifest);
+ const importErrors = await registerResources(buildManifest);
return {
tracingSDK,
@@ -98,7 +98,7 @@ async function bootstrap() {
const { buildManifest, importErrors, config } = await bootstrap();
-let tasks = taskCatalog.listTaskManifests();
+let tasks = resourceCatalog.listTaskManifests();
// If the config has retry defaults, we need to apply them to all tasks that don't have any retry settings
if (config.retries?.default) {
@@ -134,6 +134,7 @@ await sendMessageInCatalog(
{
manifest: {
tasks,
+ queues: resourceCatalog.listQueueManifests(),
configPath: buildManifest.configPath,
runtime: buildManifest.runtime,
workerEntryPoint: buildManifest.runWorkerEntryPoint,
diff --git a/packages/cli-v3/src/entryPoints/dev-run-worker.ts b/packages/cli-v3/src/entryPoints/dev-run-worker.ts
index 30ff92ddc3..007c001a79 100644
--- a/packages/cli-v3/src/entryPoints/dev-run-worker.ts
+++ b/packages/cli-v3/src/entryPoints/dev-run-worker.ts
@@ -9,7 +9,7 @@ import {
LogLevel,
runMetadata,
runtime,
- taskCatalog,
+ resourceCatalog,
TaskRunErrorCodes,
TaskRunExecution,
timeout,
@@ -30,7 +30,7 @@ import {
ManagedRuntimeManager,
OtelTaskLogger,
StandardMetadataManager,
- StandardTaskCatalog,
+ StandardResourceCatalog,
StandardWaitUntilManager,
TaskExecutor,
TracingDiagnosticLogLevel,
@@ -96,7 +96,7 @@ standardRunTimelineMetricsManager.seedMetricsFromEnvironment();
const devUsageManager = new DevUsageManager();
usage.setGlobalUsageManager(devUsageManager);
timeout.setGlobalManager(new UsageTimeoutManager(devUsageManager));
-taskCatalog.setGlobalTaskCatalog(new StandardTaskCatalog());
+resourceCatalog.setGlobalResourceCatalog(new StandardResourceCatalog());
const durableClock = new DurableClock();
clock.setGlobalClock(durableClock);
@@ -139,6 +139,8 @@ async function loadWorkerManifest() {
async function bootstrap() {
const workerManifest = await loadWorkerManifest();
+ resourceCatalog.registerWorkerManifest(workerManifest);
+
const { config, handleError } = await importConfig(workerManifest.configPath);
const tracingSDK = new TracingSDK({
@@ -168,14 +170,6 @@ async function bootstrap() {
logger.setGlobalTaskLogger(otelTaskLogger);
- for (const task of workerManifest.tasks) {
- taskCatalog.registerTaskFileMetadata(task.id, {
- exportName: task.exportName,
- filePath: task.filePath,
- entryPoint: task.entryPoint,
- });
- }
-
return {
tracer,
tracingSDK,
@@ -262,7 +256,9 @@ const zodIpc = new ZodIpcConnection({
},
async () => {
const beforeImport = performance.now();
+ resourceCatalog.setCurrentFileContext(taskManifest.entryPoint, taskManifest.filePath);
await import(normalizeImportPath(taskManifest.entryPoint));
+ resourceCatalog.clearCurrentFileContext();
const durationMs = performance.now() - beforeImport;
log(
@@ -297,7 +293,7 @@ const zodIpc = new ZodIpcConnection({
process.title = `trigger-dev-worker: ${execution.task.id} ${execution.run.id}`;
// Import the task module
- const task = taskCatalog.getTask(execution.task.id);
+ const task = resourceCatalog.getTask(execution.task.id);
if (!task) {
logError(`Could not find task ${execution.task.id}`);
diff --git a/packages/cli-v3/src/entryPoints/managed-index-controller.ts b/packages/cli-v3/src/entryPoints/managed-index-controller.ts
index 3df63aa7b8..d7c2f048a9 100644
--- a/packages/cli-v3/src/entryPoints/managed-index-controller.ts
+++ b/packages/cli-v3/src/entryPoints/managed-index-controller.ts
@@ -95,6 +95,7 @@ async function indexDeployment({
packageVersion: buildManifest.packageVersion,
cliPackageVersion: buildManifest.cliPackageVersion,
tasks: workerManifest.tasks,
+ queues: workerManifest.queues,
sourceFiles,
},
engine: "V2",
diff --git a/packages/cli-v3/src/entryPoints/managed-index-worker.ts b/packages/cli-v3/src/entryPoints/managed-index-worker.ts
index 2ef18444eb..a29f2f8541 100644
--- a/packages/cli-v3/src/entryPoints/managed-index-worker.ts
+++ b/packages/cli-v3/src/entryPoints/managed-index-worker.ts
@@ -2,19 +2,19 @@ import {
BuildManifest,
type HandleErrorFunction,
indexerToWorkerMessages,
- taskCatalog,
+ resourceCatalog,
type TaskManifest,
TriggerConfig,
} from "@trigger.dev/core/v3";
import {
- StandardTaskCatalog,
+ StandardResourceCatalog,
TracingDiagnosticLogLevel,
TracingSDK,
} from "@trigger.dev/core/v3/workers";
import { sendMessageInCatalog, ZodSchemaParsedError } from "@trigger.dev/core/v3/zodMessageHandler";
import { readFile } from "node:fs/promises";
import sourceMapSupport from "source-map-support";
-import { registerTasks } from "../indexing/registerTasks.js";
+import { registerResources } from "../indexing/registerResources.js";
import { env } from "std-env";
import { normalizeImportPath } from "../utilities/normalizeImportPath.js";
@@ -51,7 +51,7 @@ process.on("uncaughtException", function (error, origin) {
}
});
-taskCatalog.setGlobalTaskCatalog(new StandardTaskCatalog());
+resourceCatalog.setGlobalResourceCatalog(new StandardResourceCatalog());
async function importConfig(
configPath: string
@@ -86,7 +86,7 @@ async function bootstrap() {
forceFlushTimeoutMillis: 30_000,
});
- const importErrors = await registerTasks(buildManifest);
+ const importErrors = await registerResources(buildManifest);
return {
tracingSDK,
@@ -98,7 +98,7 @@ async function bootstrap() {
const { buildManifest, importErrors, config } = await bootstrap();
-let tasks = taskCatalog.listTaskManifests();
+let tasks = resourceCatalog.listTaskManifests();
// If the config has retry defaults, we need to apply them to all tasks that don't have any retry settings
if (config.retries?.default) {
@@ -134,6 +134,7 @@ await sendMessageInCatalog(
{
manifest: {
tasks,
+ queues: resourceCatalog.listQueueManifests(),
configPath: buildManifest.configPath,
runtime: buildManifest.runtime,
workerEntryPoint: buildManifest.runWorkerEntryPoint,
diff --git a/packages/cli-v3/src/entryPoints/managed-run-worker.ts b/packages/cli-v3/src/entryPoints/managed-run-worker.ts
index 8749801b4d..f261a9e677 100644
--- a/packages/cli-v3/src/entryPoints/managed-run-worker.ts
+++ b/packages/cli-v3/src/entryPoints/managed-run-worker.ts
@@ -6,7 +6,7 @@ import {
logger,
LogLevel,
runtime,
- taskCatalog,
+ resourceCatalog,
TaskRunErrorCodes,
TaskRunExecution,
WorkerToExecutorMessageCatalog,
@@ -29,7 +29,7 @@ import {
logLevels,
OtelTaskLogger,
ProdUsageManager,
- StandardTaskCatalog,
+ StandardResourceCatalog,
TaskExecutor,
TracingDiagnosticLogLevel,
TracingSDK,
@@ -107,7 +107,7 @@ const prodUsageManager = new ProdUsageManager(devUsageManager, {
usage.setGlobalUsageManager(prodUsageManager);
timeout.setGlobalManager(new UsageTimeoutManager(devUsageManager));
-taskCatalog.setGlobalTaskCatalog(new StandardTaskCatalog());
+resourceCatalog.setGlobalResourceCatalog(new StandardResourceCatalog());
const durableClock = new DurableClock();
clock.setGlobalClock(durableClock);
const runMetadataManager = new StandardMetadataManager(
@@ -148,6 +148,8 @@ async function loadWorkerManifest() {
async function bootstrap() {
const workerManifest = await loadWorkerManifest();
+ resourceCatalog.registerWorkerManifest(workerManifest);
+
const { config, handleError } = await importConfig(
normalizeImportPath(workerManifest.configPath)
);
@@ -178,14 +180,6 @@ async function bootstrap() {
logger.setGlobalTaskLogger(otelTaskLogger);
- for (const task of workerManifest.tasks) {
- taskCatalog.registerTaskFileMetadata(task.id, {
- exportName: task.exportName,
- filePath: task.filePath,
- entryPoint: task.entryPoint,
- });
- }
-
return {
tracer,
tracingSDK,
@@ -272,7 +266,9 @@ const zodIpc = new ZodIpcConnection({
},
async () => {
const beforeImport = performance.now();
+ resourceCatalog.setCurrentFileContext(taskManifest.entryPoint, taskManifest.filePath);
await import(normalizeImportPath(taskManifest.entryPoint));
+ resourceCatalog.clearCurrentFileContext();
const durationMs = performance.now() - beforeImport;
console.log(
@@ -307,7 +303,7 @@ const zodIpc = new ZodIpcConnection({
process.title = `trigger-dev-worker: ${execution.task.id} ${execution.run.id}`;
// Import the task module
- const task = taskCatalog.getTask(execution.task.id);
+ const task = resourceCatalog.getTask(execution.task.id);
if (!task) {
console.error(`Could not find task ${execution.task.id}`);
diff --git a/packages/cli-v3/src/indexing/registerResources.ts b/packages/cli-v3/src/indexing/registerResources.ts
new file mode 100644
index 0000000000..6589dea322
--- /dev/null
+++ b/packages/cli-v3/src/indexing/registerResources.ts
@@ -0,0 +1,50 @@
+import { BuildManifest, ImportTaskFileErrors, resourceCatalog } from "@trigger.dev/core/v3";
+import { normalizeImportPath } from "../utilities/normalizeImportPath.js";
+
+export async function registerResources(
+ buildManifest: BuildManifest
+): Promise {
+ const importErrors: ImportTaskFileErrors = [];
+
+ for (const file of buildManifest.files) {
+ // Set the context before importing
+ resourceCatalog.setCurrentFileContext(file.entry, file.out);
+
+ const [error, _] = await tryImport(file.out);
+
+ // Clear the context after import, regardless of success/failure
+ resourceCatalog.clearCurrentFileContext();
+
+ if (error) {
+ if (typeof error === "string") {
+ importErrors.push({
+ file: file.entry,
+ message: error,
+ });
+ } else {
+ importErrors.push({
+ file: file.entry,
+ message: error.message,
+ stack: error.stack,
+ name: error.name,
+ });
+ }
+
+ continue;
+ }
+ }
+
+ return importErrors;
+}
+
+type Result = [Error | null, T | null];
+
+async function tryImport(path: string): Promise> {
+ try {
+ const module = await import(normalizeImportPath(path));
+
+ return [null, module];
+ } catch (error) {
+ return [error as Error, null];
+ }
+}
diff --git a/packages/cli-v3/src/indexing/registerTasks.ts b/packages/cli-v3/src/indexing/registerTasks.ts
deleted file mode 100644
index aaa283e0f7..0000000000
--- a/packages/cli-v3/src/indexing/registerTasks.ts
+++ /dev/null
@@ -1,80 +0,0 @@
-import { BuildManifest, ImportTaskFileErrors, taskCatalog } from "@trigger.dev/core/v3";
-import { normalizeImportPath } from "../utilities/normalizeImportPath.js";
-
-export async function registerTasks(buildManifest: BuildManifest): Promise {
- const importErrors: ImportTaskFileErrors = [];
-
- for (const file of buildManifest.files) {
- const [error, module] = await tryImport(file.out);
-
- if (error) {
- if (typeof error === "string") {
- importErrors.push({
- file: file.entry,
- message: error,
- });
- } else {
- importErrors.push({
- file: file.entry,
- message: error.message,
- stack: error.stack,
- name: error.name,
- });
- }
-
- continue;
- }
-
- for (const exportName of getExportNames(module)) {
- const task = module[exportName] ?? module.default?.[exportName];
-
- if (!task) {
- continue;
- }
-
- if (task[Symbol.for("trigger.dev/task")]) {
- if (taskCatalog.taskExists(task.id)) {
- taskCatalog.registerTaskFileMetadata(task.id, {
- exportName,
- filePath: file.entry,
- entryPoint: file.out,
- });
- }
- }
- }
- }
-
- return importErrors;
-}
-
-type Result = [Error | null, T | null];
-
-async function tryImport(path: string): Promise> {
- try {
- const module = await import(normalizeImportPath(path));
-
- return [null, module];
- } catch (error) {
- return [error as Error, null];
- }
-}
-
-function getExportNames(module: any) {
- const exports: string[] = [];
-
- if (!module) {
- return exports;
- }
-
- const exportKeys = Object.keys(module);
-
- if (exportKeys.length === 0) {
- return exports;
- }
-
- if (exportKeys.length === 1 && exportKeys[0] === "default") {
- return Object.keys(module.default);
- }
-
- return exportKeys;
-}
diff --git a/packages/core/src/v3/apiClient/runStream.ts b/packages/core/src/v3/apiClient/runStream.ts
index 4fed06d15f..788299451e 100644
--- a/packages/core/src/v3/apiClient/runStream.ts
+++ b/packages/core/src/v3/apiClient/runStream.ts
@@ -424,6 +424,9 @@ function apiStatusFromRunStatus(status: string): RunStatus {
case "DELAYED": {
return "DELAYED";
}
+ case "PENDING_VERSION": {
+ return "PENDING_VERSION";
+ }
case "WAITING_FOR_DEPLOY": {
return "WAITING_FOR_DEPLOY";
}
diff --git a/packages/core/src/v3/index.ts b/packages/core/src/v3/index.ts
index 15287d37c1..098362a7dc 100644
--- a/packages/core/src/v3/index.ts
+++ b/packages/core/src/v3/index.ts
@@ -17,13 +17,14 @@ export * from "./timeout-api.js";
export * from "./run-timeline-metrics-api.js";
export * from "./schemas/index.js";
export { SemanticInternalAttributes } from "./semanticInternalAttributes.js";
-export * from "./task-catalog-api.js";
+export * from "./resource-catalog-api.js";
export * from "./types/index.js";
export { links } from "./links.js";
export * from "./jwt.js";
export * from "./idempotencyKeys.js";
export * from "./streams/asyncIterableStream.js";
export * from "./utils/getEnv.js";
+export * from "./tryCatch.js";
export {
formatDuration,
formatDurationInDays,
diff --git a/packages/core/src/v3/task-catalog-api.ts b/packages/core/src/v3/resource-catalog-api.ts
similarity index 52%
rename from packages/core/src/v3/task-catalog-api.ts
rename to packages/core/src/v3/resource-catalog-api.ts
index fbd7763bec..172e3bcda8 100644
--- a/packages/core/src/v3/task-catalog-api.ts
+++ b/packages/core/src/v3/resource-catalog-api.ts
@@ -1,5 +1,5 @@
// Split module-level variable definition into separate files to allow
// tree-shaking on each api instance.
-import { TaskCatalogAPI } from "./task-catalog/index.js";
+import { ResourceCatalogAPI } from "./resource-catalog/index.js";
/** Entrypoint for runtime API */
-export const taskCatalog = TaskCatalogAPI.getInstance();
+export const resourceCatalog = ResourceCatalogAPI.getInstance();
diff --git a/packages/core/src/v3/task-catalog/catalog.ts b/packages/core/src/v3/resource-catalog/catalog.ts
similarity index 51%
rename from packages/core/src/v3/task-catalog/catalog.ts
rename to packages/core/src/v3/resource-catalog/catalog.ts
index 2d9b8ac2aa..725899c0d1 100644
--- a/packages/core/src/v3/task-catalog/catalog.ts
+++ b/packages/core/src/v3/resource-catalog/catalog.ts
@@ -1,12 +1,16 @@
-import { TaskFileMetadata, TaskManifest } from "../schemas/index.js";
+import { QueueManifest, TaskManifest, WorkerManifest } from "../schemas/index.js";
import { TaskMetadataWithFunctions } from "../types/index.js";
-export interface TaskCatalog {
+export interface ResourceCatalog {
+ setCurrentFileContext(filePath: string, entryPoint: string): void;
+ clearCurrentFileContext(): void;
registerTaskMetadata(task: TaskMetadataWithFunctions): void;
updateTaskMetadata(id: string, task: Partial): void;
- registerTaskFileMetadata(id: string, metadata: TaskFileMetadata): void;
listTaskManifests(): Array;
getTaskManifest(id: string): TaskManifest | undefined;
getTask(id: string): TaskMetadataWithFunctions | undefined;
taskExists(id: string): boolean;
+ registerWorkerManifest(workerManifest: WorkerManifest): void;
+ registerQueueMetadata(queue: QueueManifest): void;
+ listQueueManifests(): Array;
}
diff --git a/packages/core/src/v3/resource-catalog/index.ts b/packages/core/src/v3/resource-catalog/index.ts
new file mode 100644
index 0000000000..6773f1b621
--- /dev/null
+++ b/packages/core/src/v3/resource-catalog/index.ts
@@ -0,0 +1,79 @@
+const API_NAME = "resource-catalog";
+
+import { QueueManifest, TaskManifest, WorkerManifest } from "../schemas/index.js";
+import { TaskMetadataWithFunctions } from "../types/index.js";
+import { getGlobal, registerGlobal, unregisterGlobal } from "../utils/globals.js";
+import { type ResourceCatalog } from "./catalog.js";
+import { NoopResourceCatalog } from "./noopResourceCatalog.js";
+
+const NOOP_RESOURCE_CATALOG = new NoopResourceCatalog();
+
+export class ResourceCatalogAPI {
+ private static _instance?: ResourceCatalogAPI;
+
+ private constructor() {}
+
+ public static getInstance(): ResourceCatalogAPI {
+ if (!this._instance) {
+ this._instance = new ResourceCatalogAPI();
+ }
+
+ return this._instance;
+ }
+
+ public setGlobalResourceCatalog(resourceCatalog: ResourceCatalog): boolean {
+ return registerGlobal(API_NAME, resourceCatalog);
+ }
+
+ public disable() {
+ unregisterGlobal(API_NAME);
+ }
+
+ public registerQueueMetadata(queue: QueueManifest): void {
+ this.#getCatalog().registerQueueMetadata(queue);
+ }
+
+ public registerTaskMetadata(task: TaskMetadataWithFunctions): void {
+ this.#getCatalog().registerTaskMetadata(task);
+ }
+
+ public updateTaskMetadata(id: string, updates: Partial): void {
+ this.#getCatalog().updateTaskMetadata(id, updates);
+ }
+
+ public setCurrentFileContext(filePath: string, entryPoint: string): void {
+ this.#getCatalog().setCurrentFileContext(filePath, entryPoint);
+ }
+
+ public clearCurrentFileContext(): void {
+ this.#getCatalog().clearCurrentFileContext();
+ }
+
+ public registerWorkerManifest(workerManifest: WorkerManifest): void {
+ this.#getCatalog().registerWorkerManifest(workerManifest);
+ }
+
+ public listTaskManifests(): Array {
+ return this.#getCatalog().listTaskManifests();
+ }
+
+ public getTaskManifest(id: string): TaskManifest | undefined {
+ return this.#getCatalog().getTaskManifest(id);
+ }
+
+ public getTask(id: string): TaskMetadataWithFunctions | undefined {
+ return this.#getCatalog().getTask(id);
+ }
+
+ public taskExists(id: string): boolean {
+ return this.#getCatalog().taskExists(id);
+ }
+
+ public listQueueManifests(): Array {
+ return this.#getCatalog().listQueueManifests();
+ }
+
+ #getCatalog(): ResourceCatalog {
+ return getGlobal(API_NAME) ?? NOOP_RESOURCE_CATALOG;
+ }
+}
diff --git a/packages/core/src/v3/task-catalog/noopTaskCatalog.ts b/packages/core/src/v3/resource-catalog/noopResourceCatalog.ts
similarity index 52%
rename from packages/core/src/v3/task-catalog/noopTaskCatalog.ts
rename to packages/core/src/v3/resource-catalog/noopResourceCatalog.ts
index bd9a1616e7..b0e0f73056 100644
--- a/packages/core/src/v3/task-catalog/noopTaskCatalog.ts
+++ b/packages/core/src/v3/resource-catalog/noopResourceCatalog.ts
@@ -1,13 +1,17 @@
-import { TaskFileMetadata, TaskManifest } from "../schemas/index.js";
+import { QueueManifest, TaskManifest, WorkerManifest } from "../schemas/index.js";
import { TaskMetadataWithFunctions } from "../types/index.js";
-import { TaskCatalog } from "./catalog.js";
+import { ResourceCatalog } from "./catalog.js";
-export class NoopTaskCatalog implements TaskCatalog {
+export class NoopResourceCatalog implements ResourceCatalog {
registerTaskMetadata(task: TaskMetadataWithFunctions): void {
// noop
}
- registerTaskFileMetadata(id: string, metadata: TaskFileMetadata): void {
+ setCurrentFileContext(filePath: string, entryPoint: string): void {
+ // noop
+ }
+
+ clearCurrentFileContext(): void {
// noop
}
@@ -34,4 +38,16 @@ export class NoopTaskCatalog implements TaskCatalog {
disable() {
// noop
}
+
+ registerWorkerManifest(workerManifest: WorkerManifest): void {
+ // noop
+ }
+
+ registerQueueMetadata(queue: QueueManifest): void {
+ // noop
+ }
+
+ listQueueManifests(): Array {
+ return [];
+ }
}
diff --git a/packages/core/src/v3/task-catalog/standardTaskCatalog.ts b/packages/core/src/v3/resource-catalog/standardResourceCatalog.ts
similarity index 65%
rename from packages/core/src/v3/task-catalog/standardTaskCatalog.ts
rename to packages/core/src/v3/resource-catalog/standardResourceCatalog.ts
index 681186a5e8..0e8eaca4d9 100644
--- a/packages/core/src/v3/task-catalog/standardTaskCatalog.ts
+++ b/packages/core/src/v3/resource-catalog/standardResourceCatalog.ts
@@ -1,19 +1,56 @@
-import { TaskFileMetadata, TaskMetadata, TaskManifest } from "../schemas/index.js";
+import {
+ TaskFileMetadata,
+ TaskMetadata,
+ TaskManifest,
+ WorkerManifest,
+ QueueManifest,
+} from "../schemas/index.js";
import { TaskMetadataWithFunctions } from "../types/index.js";
-import { TaskCatalog } from "./catalog.js";
+import { ResourceCatalog } from "./catalog.js";
-export class StandardTaskCatalog implements TaskCatalog {
+export class StandardResourceCatalog implements ResourceCatalog {
private _taskMetadata: Map = new Map();
private _taskFunctions: Map = new Map();
private _taskFileMetadata: Map = new Map();
+ private _currentFileContext?: Omit;
+ private _queueMetadata: Map = new Map();
+
+ setCurrentFileContext(filePath: string, entryPoint: string) {
+ this._currentFileContext = { filePath, entryPoint };
+ }
+
+ clearCurrentFileContext() {
+ this._currentFileContext = undefined;
+ }
+
+ registerQueueMetadata(queue: QueueManifest): void {
+ this._queueMetadata.set(queue.name, queue);
+ }
+
+ registerWorkerManifest(workerManifest: WorkerManifest): void {
+ for (const task of workerManifest.tasks) {
+ this._taskFileMetadata.set(task.id, {
+ filePath: task.filePath,
+ entryPoint: task.entryPoint,
+ });
+ }
+ }
registerTaskMetadata(task: TaskMetadataWithFunctions): void {
+ if (!this._currentFileContext) {
+ return;
+ }
+
const { fns, ...metadata } = task;
if (!task.id) {
return;
}
+ this._taskFileMetadata.set(task.id, {
+ ...this._currentFileContext,
+ });
+
this._taskMetadata.set(task.id, metadata);
this._taskFunctions.set(task.id, fns);
}
@@ -40,10 +77,6 @@ export class StandardTaskCatalog implements TaskCatalog {
}
}
- registerTaskFileMetadata(id: string, metadata: TaskFileMetadata): void {
- this._taskFileMetadata.set(id, metadata);
- }
-
// Return all the tasks, without the functions
listTaskManifests(): Array {
const result: Array = [];
@@ -64,6 +97,10 @@ export class StandardTaskCatalog implements TaskCatalog {
return result;
}
+ listQueueManifests(): Array {
+ return Array.from(this._queueMetadata.values());
+ }
+
getTaskManifest(id: string): TaskManifest | undefined {
const metadata = this._taskMetadata.get(id);
const fileMetadata = this._taskFileMetadata.get(id);
diff --git a/packages/core/src/v3/schemas/api.ts b/packages/core/src/v3/schemas/api.ts
index 48be14e602..49d9667874 100644
--- a/packages/core/src/v3/schemas/api.ts
+++ b/packages/core/src/v3/schemas/api.ts
@@ -1,15 +1,8 @@
-import { coerce, date, z } from "zod";
+import { z } from "zod";
import { DeserializedJsonSchema } from "../../schemas/json.js";
-import {
- FlushedRunMetadata,
- MachinePresetName,
- RunMetadataChangeOperation,
- SerializedError,
- TaskRunError,
-} from "./common.js";
+import { FlushedRunMetadata, MachinePresetName, SerializedError, TaskRunError } from "./common.js";
import { BackgroundWorkerMetadata } from "./resources.js";
-import { QueueOptions } from "./schemas.js";
-import { DequeuedMessage, MachineResources, WaitpointStatus } from "./runEngine.js";
+import { DequeuedMessage, MachineResources } from "./runEngine.js";
export const RunEngineVersion = z.union([z.literal("V1"), z.literal("V2")]);
@@ -104,7 +97,13 @@ export const TriggerTaskRequestBody = z.object({
*/
lockToVersion: z.string().optional(),
- queue: QueueOptions.optional(),
+ queue: z
+ .object({
+ name: z.string(),
+ // @deprecated, this is now specified on the queue
+ concurrencyLimit: z.number().int().optional(),
+ })
+ .optional(),
concurrencyKey: z.string().optional(),
delay: z.string().or(z.coerce.date()).optional(),
idempotencyKey: z.string().optional(),
@@ -158,7 +157,11 @@ export const BatchTriggerTaskItem = z.object({
metadataType: z.string().optional(),
parentAttempt: z.string().optional(),
payloadType: z.string().optional(),
- queue: QueueOptions.optional(),
+ queue: z
+ .object({
+ name: z.string(),
+ })
+ .optional(),
tags: RunTags.optional(),
test: z.boolean().optional(),
ttl: z.string().or(z.number().nonnegative().int()).optional(),
@@ -376,7 +379,7 @@ export const GetDeploymentResponseBody = z.object({
id: z.string(),
slug: z.string(),
filePath: z.string(),
- exportName: z.string(),
+ exportName: z.string().optional(),
})
),
})
@@ -606,6 +609,8 @@ export const TimezonesResult = z.object({
export type TimezonesResult = z.infer;
export const RunStatus = z.enum([
+ /// Task is waiting for a version update because it cannot execute without additional information (task, queue, etc.). Replaces WAITING_FOR_DEPLOY
+ "PENDING_VERSION",
/// Task hasn't been deployed yet but is waiting to be executed
"WAITING_FOR_DEPLOY",
/// Task is waiting to be executed by a worker
diff --git a/packages/core/src/v3/schemas/build.ts b/packages/core/src/v3/schemas/build.ts
index 0b9431656d..0b122af2ed 100644
--- a/packages/core/src/v3/schemas/build.ts
+++ b/packages/core/src/v3/schemas/build.ts
@@ -1,6 +1,6 @@
import { z } from "zod";
import { ConfigManifest } from "./config.js";
-import { TaskFile, TaskManifest } from "./schemas.js";
+import { QueueManifest, TaskFile, TaskManifest } from "./schemas.js";
export const BuildExternal = z.object({
name: z.string(),
@@ -81,6 +81,7 @@ export type IndexMessage = z.infer;
export const WorkerManifest = z.object({
configPath: z.string(),
tasks: TaskManifest.array(),
+ queues: QueueManifest.array().optional(),
workerEntryPoint: z.string(),
controllerEntryPoint: z.string().optional(),
loaderEntryPoint: z.string().optional(),
diff --git a/packages/core/src/v3/schemas/common.ts b/packages/core/src/v3/schemas/common.ts
index fd2384dfa3..43030847dc 100644
--- a/packages/core/src/v3/schemas/common.ts
+++ b/packages/core/src/v3/schemas/common.ts
@@ -242,7 +242,7 @@ export type TaskRun = z.infer;
export const TaskRunExecutionTask = z.object({
id: z.string(),
filePath: z.string(),
- exportName: z.string(),
+ exportName: z.string().optional(),
});
export type TaskRunExecutionTask = z.infer;
diff --git a/packages/core/src/v3/schemas/queues.ts b/packages/core/src/v3/schemas/queues.ts
index 2b511eb44c..33ae3e1447 100644
--- a/packages/core/src/v3/schemas/queues.ts
+++ b/packages/core/src/v3/schemas/queues.ts
@@ -32,6 +32,8 @@ export const QueueItem = z.object({
concurrencyLimit: z.number().nullable(),
/** Whether the queue is paused. If it's paused, no new runs will be started. */
paused: z.boolean(),
+ /** Whether the queue releases concurrency on waitpoints. */
+ releaseConcurrencyOnWaitpoint: z.boolean(),
});
export type QueueItem = z.infer;
diff --git a/packages/core/src/v3/schemas/resources.ts b/packages/core/src/v3/schemas/resources.ts
index b44efb80bb..bcca03d290 100644
--- a/packages/core/src/v3/schemas/resources.ts
+++ b/packages/core/src/v3/schemas/resources.ts
@@ -1,13 +1,13 @@
import { z } from "zod";
-import { QueueOptions, RetryOptions, ScheduleMetadata } from "./schemas.js";
+import { QueueManifest, RetryOptions, ScheduleMetadata } from "./schemas.js";
import { MachineConfig } from "./common.js";
export const TaskResource = z.object({
id: z.string(),
description: z.string().optional(),
filePath: z.string(),
- exportName: z.string(),
- queue: QueueOptions.optional(),
+ exportName: z.string().optional(),
+ queue: QueueManifest.extend({ name: z.string().optional() }).optional(),
retry: RetryOptions.optional(),
machine: MachineConfig.optional(),
triggerSource: z.string().optional(),
@@ -31,6 +31,7 @@ export const BackgroundWorkerMetadata = z.object({
contentHash: z.string(),
cliPackageVersion: z.string().optional(),
tasks: z.array(TaskResource),
+ queues: z.array(QueueManifest).optional(),
sourceFiles: z.array(BackgroundWorkerSourceFileMetadata).optional(),
});
diff --git a/packages/core/src/v3/schemas/runEngine.ts b/packages/core/src/v3/schemas/runEngine.ts
index abd7f2b5f6..c45a651c1d 100644
--- a/packages/core/src/v3/schemas/runEngine.ts
+++ b/packages/core/src/v3/schemas/runEngine.ts
@@ -21,6 +21,7 @@ export type TaskRunExecutionStatus =
export const TaskRunStatus = {
DELAYED: "DELAYED",
PENDING: "PENDING",
+ PENDING_VERSION: "PENDING_VERSION",
WAITING_FOR_DEPLOY: "WAITING_FOR_DEPLOY",
EXECUTING: "EXECUTING",
WAITING_TO_RESUME: "WAITING_TO_RESUME",
diff --git a/packages/core/src/v3/schemas/schemas.ts b/packages/core/src/v3/schemas/schemas.ts
index 8602ae7fc4..f8ba143299 100644
--- a/packages/core/src/v3/schemas/schemas.ts
+++ b/packages/core/src/v3/schemas/schemas.ts
@@ -127,7 +127,7 @@ export const RetryOptions = z.object({
export type RetryOptions = z.infer;
-export const QueueOptions = z.object({
+export const QueueManifest = z.object({
/** You can define a shared queue and then pass the name in to your task.
*
* @example
@@ -159,14 +159,19 @@ export const QueueOptions = z.object({
});
* ```
*/
- name: z.string().optional(),
+ name: z.string(),
/** An optional property that specifies the maximum number of concurrent run executions.
*
* If this property is omitted, the task can potentially use up the full concurrency of an environment */
concurrencyLimit: z.number().int().min(0).max(1000).optional().nullable(),
+ /** An optional property that specifies whether to release concurrency on waitpoint.
+ *
+ * If this property is omitted, the task will not release concurrency on waitpoint.
+ */
+ releaseConcurrencyOnWaitpoint: z.boolean().optional(),
});
-export type QueueOptions = z.infer;
+export type QueueManifest = z.infer;
export const ScheduleMetadata = z.object({
cron: z.string(),
@@ -176,7 +181,7 @@ export const ScheduleMetadata = z.object({
const taskMetadata = {
id: z.string(),
description: z.string().optional(),
- queue: QueueOptions.optional(),
+ queue: QueueManifest.extend({ name: z.string().optional() }).optional(),
retry: RetryOptions.optional(),
machine: MachineConfig.optional(),
triggerSource: z.string().optional(),
@@ -197,7 +202,7 @@ export type TaskFile = z.infer;
const taskFileMetadata = {
filePath: z.string(),
- exportName: z.string(),
+ exportName: z.string().optional(),
entryPoint: z.string(),
};
diff --git a/packages/core/src/v3/schemas/webhooks.ts b/packages/core/src/v3/schemas/webhooks.ts
index a63eef8e89..e619ffe97c 100644
--- a/packages/core/src/v3/schemas/webhooks.ts
+++ b/packages/core/src/v3/schemas/webhooks.ts
@@ -11,7 +11,7 @@ const AlertWebhookRunFailedObject = z.object({
/** File path where the task is defined */
filePath: z.string(),
/** Name of the exported task function */
- exportName: z.string(),
+ exportName: z.string().optional(),
/** Version of the task */
version: z.string(),
/** Version of the SDK used */
@@ -142,7 +142,7 @@ export const AlertWebhookDeploymentSuccessObject = z.object({
/** File path where the task is defined */
filePath: z.string(),
/** Name of the exported task function */
- exportName: z.string(),
+ exportName: z.string().optional(),
/** Source of the trigger */
triggerSource: z.string(),
})
diff --git a/packages/core/src/v3/task-catalog/index.ts b/packages/core/src/v3/task-catalog/index.ts
deleted file mode 100644
index 8e3d2c39ac..0000000000
--- a/packages/core/src/v3/task-catalog/index.ts
+++ /dev/null
@@ -1,63 +0,0 @@
-const API_NAME = "task-catalog";
-
-import { TaskFileMetadata, TaskManifest } from "../schemas/index.js";
-import { TaskMetadataWithFunctions } from "../types/index.js";
-import { getGlobal, registerGlobal, unregisterGlobal } from "../utils/globals.js";
-import { type TaskCatalog } from "./catalog.js";
-import { NoopTaskCatalog } from "./noopTaskCatalog.js";
-
-const NOOP_TASK_CATALOG = new NoopTaskCatalog();
-
-export class TaskCatalogAPI {
- private static _instance?: TaskCatalogAPI;
-
- private constructor() {}
-
- public static getInstance(): TaskCatalogAPI {
- if (!this._instance) {
- this._instance = new TaskCatalogAPI();
- }
-
- return this._instance;
- }
-
- public setGlobalTaskCatalog(taskCatalog: TaskCatalog): boolean {
- return registerGlobal(API_NAME, taskCatalog);
- }
-
- public disable() {
- unregisterGlobal(API_NAME);
- }
-
- public registerTaskMetadata(task: TaskMetadataWithFunctions): void {
- this.#getCatalog().registerTaskMetadata(task);
- }
-
- public updateTaskMetadata(id: string, updates: Partial): void {
- this.#getCatalog().updateTaskMetadata(id, updates);
- }
-
- public registerTaskFileMetadata(id: string, metadata: TaskFileMetadata): void {
- this.#getCatalog().registerTaskFileMetadata(id, metadata);
- }
-
- public listTaskManifests(): Array {
- return this.#getCatalog().listTaskManifests();
- }
-
- public getTaskManifest(id: string): TaskManifest | undefined {
- return this.#getCatalog().getTaskManifest(id);
- }
-
- public getTask(id: string): TaskMetadataWithFunctions | undefined {
- return this.#getCatalog().getTask(id);
- }
-
- public taskExists(id: string): boolean {
- return this.#getCatalog().taskExists(id);
- }
-
- #getCatalog(): TaskCatalog {
- return getGlobal(API_NAME) ?? NOOP_TASK_CATALOG;
- }
-}
diff --git a/packages/core/src/v3/tryCatch.ts b/packages/core/src/v3/tryCatch.ts
new file mode 100644
index 0000000000..664c6251f2
--- /dev/null
+++ b/packages/core/src/v3/tryCatch.ts
@@ -0,0 +1,15 @@
+// Types for the result object with discriminated union
+type Success = [null, T];
+type Failure = [E, null];
+
+type Result = Success | Failure;
+
+// Main wrapper function
+export async function tryCatch(promise: Promise): Promise> {
+ try {
+ const data = await promise;
+ return [null, data];
+ } catch (error) {
+ return [error as E, null];
+ }
+}
diff --git a/packages/core/src/v3/types/index.ts b/packages/core/src/v3/types/index.ts
index c3be5f54d4..55cc4d3a12 100644
--- a/packages/core/src/v3/types/index.ts
+++ b/packages/core/src/v3/types/index.ts
@@ -6,6 +6,7 @@ export * from "./utils.js";
export * from "./tasks.js";
export * from "./idempotencyKeys.js";
export * from "./tools.js";
+export * from "./queues.js";
type ResolveEnvironmentVariablesOptions = {
variables: Record | Array<{ name: string; value: string }>;
diff --git a/packages/core/src/v3/types/queues.ts b/packages/core/src/v3/types/queues.ts
new file mode 100644
index 0000000000..ceb3a45e5e
--- /dev/null
+++ b/packages/core/src/v3/types/queues.ts
@@ -0,0 +1,43 @@
+export type QueueOptions = {
+ /** You can define a shared queue and then pass the name in to your task.
+ *
+ * @example
+ *
+ * ```ts
+ * const myQueue = queue({
+ name: "my-queue",
+ concurrencyLimit: 1,
+ });
+
+ export const task1 = task({
+ id: "task-1",
+ queue: {
+ name: "my-queue",
+ },
+ run: async (payload: { message: string }) => {
+ // ...
+ },
+ });
+
+ export const task2 = task({
+ id: "task-2",
+ queue: {
+ name: "my-queue",
+ },
+ run: async (payload: { message: string }) => {
+ // ...
+ },
+ });
+ * ```
+ */
+ name: string;
+ /** An optional property that specifies the maximum number of concurrent run executions.
+ *
+ * If this property is omitted, the task can potentially use up the full concurrency of an environment */
+ concurrencyLimit?: number;
+ /** An optional property that specifies whether to release concurrency on waitpoint.
+ *
+ * If this property is omitted, the task will not release concurrency on waitpoint.
+ */
+ releaseConcurrencyOnWaitpoint?: boolean;
+};
diff --git a/packages/core/src/v3/types/tasks.ts b/packages/core/src/v3/types/tasks.ts
index 7a4f279151..e8e54771c4 100644
--- a/packages/core/src/v3/types/tasks.ts
+++ b/packages/core/src/v3/types/tasks.ts
@@ -9,24 +9,16 @@ import {
TaskMetadata,
TaskRunContext,
} from "../schemas/index.js";
-import { QueueOptions } from "../schemas/schemas.js";
import { IdempotencyKey } from "./idempotencyKeys.js";
import { AnySchemaParseFn, inferSchemaIn, inferSchemaOut, Schema } from "./schemas.js";
import { Prettify } from "./utils.js";
import { inferToolParameters, ToolTaskParameters } from "./tools.js";
+import { QueueOptions } from "./queues.js";
-type RequireOne = {
- [X in Exclude]?: T[X];
-} & {
- [P in K]-?: T[P];
-};
-
-export type Queue = RequireOne;
+export type Queue = QueueOptions;
export type TaskSchema = Schema;
export type { inferSchemaIn } from "./schemas.js";
-type TaskRunConcurrencyOptions = Queue;
-
export class SubtaskUnwrapError extends Error {
public readonly taskId: string;
public readonly runId: string;
@@ -201,7 +193,10 @@ type CommonTaskOptions<
});
* ```
*/
- queue?: QueueOptions;
+ queue?: {
+ name?: string;
+ concurrencyLimit?: number;
+ };
/** Configure the spec of the [machine](https://trigger.dev/docs/machines) you want your task to run on.
*
* @example
@@ -712,10 +707,9 @@ export type TriggerOptions = {
maxAttempts?: number;
/**
- * You can override the queue for the task. If a queue doesn't exist for the given name, it will be created.
- * Setting the `concurrencyLimit` here will modify the limit for this queue everywhere it's used.
+ * You can override the queue for the task. If a queue doesn't exist for the given name, the run will be in the PENDING_VERSION state until the queue is created..
*/
- queue?: TaskRunConcurrencyOptions;
+ queue?: string;
/**
* The `concurrencyKey` creates a copy of the queue for every unique value of the key.
diff --git a/packages/core/src/v3/utils/globals.ts b/packages/core/src/v3/utils/globals.ts
index 7014169edf..f3ec155751 100644
--- a/packages/core/src/v3/utils/globals.ts
+++ b/packages/core/src/v3/utils/globals.ts
@@ -1,10 +1,9 @@
-import { DeserializedJson } from "../../schemas/json.js";
import { ApiClientConfiguration } from "../apiClientManager/types.js";
import { Clock } from "../clock/clock.js";
+import { ResourceCatalog } from "../resource-catalog/catalog.js";
import { RunMetadataManager } from "../runMetadata/types.js";
import type { RuntimeManager } from "../runtime/manager.js";
import { RunTimelineMetricsManager } from "../runTimelineMetrics/types.js";
-import { TaskCatalog } from "../task-catalog/catalog.js";
import { TaskContext } from "../taskContext/types.js";
import { TimeoutManager } from "../timeout/types.js";
import { UsageManager } from "../usage/types.js";
@@ -56,7 +55,7 @@ type TriggerDotDevGlobalAPI = {
logger?: any;
clock?: Clock;
usage?: UsageManager;
- ["task-catalog"]?: TaskCatalog;
+ ["resource-catalog"]?: ResourceCatalog;
["task-context"]?: TaskContext;
["api-client"]?: ApiClientConfiguration;
["run-metadata"]?: RunMetadataManager;
diff --git a/packages/core/src/v3/workers/index.ts b/packages/core/src/v3/workers/index.ts
index 7b51da7879..76cdb7110f 100644
--- a/packages/core/src/v3/workers/index.ts
+++ b/packages/core/src/v3/workers/index.ts
@@ -5,7 +5,7 @@ export { getEnvVar, getNumberEnvVar } from "../utils/getEnv.js";
export { OtelTaskLogger, logLevels } from "../logger/taskLogger.js";
export { ConsoleInterceptor } from "../consoleInterceptor.js";
export { TracingSDK, type TracingDiagnosticLogLevel, recordSpanException } from "../otel/index.js";
-export { StandardTaskCatalog } from "../task-catalog/standardTaskCatalog.js";
+export { StandardResourceCatalog } from "../resource-catalog/standardResourceCatalog.js";
export {
TaskContextSpanProcessor,
TaskContextLogProcessor,
diff --git a/packages/react-hooks/src/hooks/useTaskTrigger.ts b/packages/react-hooks/src/hooks/useTaskTrigger.ts
index 240660e045..e179c5489f 100644
--- a/packages/react-hooks/src/hooks/useTaskTrigger.ts
+++ b/packages/react-hooks/src/hooks/useTaskTrigger.ts
@@ -75,7 +75,7 @@ export function useTaskTrigger(
const handle = await apiClient.triggerTask(id, {
payload: payloadPacket.data,
options: {
- queue: options?.queue,
+ queue: options?.queue ? { name: options.queue } : undefined,
concurrencyKey: options?.concurrencyKey,
payloadType: payloadPacket.dataType,
idempotencyKey: await makeIdempotencyKey(options?.idempotencyKey),
diff --git a/packages/trigger-sdk/src/v3/schedules/index.ts b/packages/trigger-sdk/src/v3/schedules/index.ts
index e23cf2bbf1..eb38c9922f 100644
--- a/packages/trigger-sdk/src/v3/schedules/index.ts
+++ b/packages/trigger-sdk/src/v3/schedules/index.ts
@@ -9,7 +9,7 @@ import {
accessoryAttributes,
apiClientManager,
mergeRequestOptions,
- taskCatalog,
+ resourceCatalog,
} from "@trigger.dev/core/v3";
import { zodfetch } from "@trigger.dev/core/v3/zodfetch";
import { Task, TaskOptions, createTask } from "../shared.js";
@@ -59,7 +59,7 @@ export function task(
params: TaskOptions
): Task {
- const customQueue = params.queue
- ? queue({
- name: params.queue?.name ?? `task/${params.id}`,
- ...params.queue,
- })
- : undefined;
-
const task: Task = {
id: params.id,
description: params.description,
trigger: async (payload, options) => {
- const taskMetadata = taskCatalog.getTaskManifest(params.id);
-
return await trigger_internal>(
- taskMetadata && taskMetadata.exportName
- ? `${taskMetadata.exportName}.trigger()`
- : `trigger()`,
+ "trigger()",
params.id,
payload,
undefined,
{
- queue: customQueue,
+ queue: params.queue?.name,
...options,
}
);
},
batchTrigger: async (items, options) => {
- const taskMetadata = taskCatalog.getTaskManifest(params.id);
-
return await batchTrigger_internal>(
- taskMetadata && taskMetadata.exportName
- ? `${taskMetadata.exportName}.batchTrigger()`
- : `batchTrigger()`,
+ "batchTrigger()",
params.id,
items,
options,
undefined,
undefined,
- customQueue
+ params.queue?.name
);
},
triggerAndWait: (payload, options) => {
- const taskMetadata = taskCatalog.getTaskManifest(params.id);
-
return new TaskRunPromise((resolve, reject) => {
triggerAndWait_internal(
- taskMetadata && taskMetadata.exportName
- ? `${taskMetadata.exportName}.triggerAndWait()`
- : `triggerAndWait()`,
+ "triggerAndWait()",
params.id,
payload,
undefined,
{
- queue: customQueue,
+ queue: params.queue?.name,
...options,
}
)
@@ -185,23 +172,19 @@ export function createTask<
}, params.id);
},
batchTriggerAndWait: async (items, options) => {
- const taskMetadata = taskCatalog.getTaskManifest(params.id);
-
return await batchTriggerAndWait_internal(
- taskMetadata && taskMetadata.exportName
- ? `${taskMetadata.exportName}.batchTriggerAndWait()`
- : `batchTriggerAndWait()`,
+ "batchTriggerAndWait()",
params.id,
items,
undefined,
options,
undefined,
- customQueue
+ params.queue?.name
);
},
};
- taskCatalog.registerTaskMetadata({
+ resourceCatalog.registerTaskMetadata({
id: params.id,
description: params.description,
queue: params.queue,
@@ -220,6 +203,15 @@ export function createTask<
},
});
+ const queue = params.queue;
+
+ if (queue && typeof queue.name === "string") {
+ resourceCatalog.registerQueueMetadata({
+ name: queue.name,
+ concurrencyLimit: queue.concurrencyLimit,
+ });
+ }
+
// @ts-expect-error
task[Symbol.for("trigger.dev/task")] = true;
@@ -259,13 +251,6 @@ export function createSchemaTask<
>(
params: TaskWithSchemaOptions
): TaskWithSchema {
- const customQueue = params.queue
- ? queue({
- name: params.queue?.name ?? `task/${params.id}`,
- ...params.queue,
- })
- : undefined;
-
const parsePayload = params.schema
? getSchemaParseFn>(params.schema)
: undefined;
@@ -275,50 +260,38 @@ export function createSchemaTask<
description: params.description,
schema: params.schema,
trigger: async (payload, options, requestOptions) => {
- const taskMetadata = taskCatalog.getTaskManifest(params.id);
-
return await trigger_internal, TOutput>>(
- taskMetadata && taskMetadata.exportName
- ? `${taskMetadata.exportName}.trigger()`
- : `trigger()`,
+ "trigger()",
params.id,
payload,
parsePayload,
{
- queue: customQueue,
+ queue: params.queue?.name,
...options,
},
requestOptions
);
},
batchTrigger: async (items, options, requestOptions) => {
- const taskMetadata = taskCatalog.getTaskManifest(params.id);
-
return await batchTrigger_internal, TOutput>>(
- taskMetadata && taskMetadata.exportName
- ? `${taskMetadata.exportName}.batchTrigger()`
- : `batchTrigger()`,
+ "batchTrigger()",
params.id,
items,
options,
parsePayload,
requestOptions,
- customQueue
+ params.queue?.name
);
},
triggerAndWait: (payload, options) => {
- const taskMetadata = taskCatalog.getTaskManifest(params.id);
-
return new TaskRunPromise((resolve, reject) => {
triggerAndWait_internal, TOutput>(
- taskMetadata && taskMetadata.exportName
- ? `${taskMetadata.exportName}.triggerAndWait()`
- : `triggerAndWait()`,
+ "triggerAndWait()",
params.id,
payload,
parsePayload,
{
- queue: customQueue,
+ queue: params.queue?.name,
...options,
}
)
@@ -331,23 +304,19 @@ export function createSchemaTask<
}, params.id);
},
batchTriggerAndWait: async (items, options) => {
- const taskMetadata = taskCatalog.getTaskManifest(params.id);
-
return await batchTriggerAndWait_internal, TOutput>(
- taskMetadata && taskMetadata.exportName
- ? `${taskMetadata.exportName}.batchTriggerAndWait()`
- : `batchTriggerAndWait()`,
+ "batchTriggerAndWait()",
params.id,
items,
parsePayload,
options,
undefined,
- customQueue
+ params.queue?.name
);
},
};
- taskCatalog.registerTaskMetadata({
+ resourceCatalog.registerTaskMetadata({
id: params.id,
description: params.description,
queue: params.queue,
@@ -367,6 +336,15 @@ export function createSchemaTask<
},
});
+ const queue = params.queue;
+
+ if (queue && typeof queue.name === "string") {
+ resourceCatalog.registerQueueMetadata({
+ name: queue.name,
+ concurrencyLimit: queue.concurrencyLimit,
+ });
+ }
+
// @ts-expect-error
task[Symbol.for("trigger.dev/task")] = true;
@@ -590,7 +568,7 @@ export async function batchTriggerById(
{
items: await Promise.all(
items.map(async (item, index) => {
- const taskMetadata = taskCatalog.getTask(item.id);
+ const taskMetadata = resourceCatalog.getTask(item.id);
const parsedPayload = taskMetadata?.fns.parsePayload
? await taskMetadata?.fns.parsePayload(item.payload)
@@ -606,7 +584,7 @@ export async function batchTriggerById(
task: item.id,
payload: payloadPacket.data,
options: {
- queue: item.options?.queue,
+ queue: item.options?.queue ? { name: item.options.queue } : undefined,
concurrencyKey: item.options?.concurrencyKey,
test: taskContext.ctx?.run.isTest,
payloadType: payloadPacket.dataType,
@@ -757,7 +735,7 @@ export async function batchTriggerByIdAndWait(
{
items: await Promise.all(
items.map(async (item, index) => {
- const taskMetadata = taskCatalog.getTask(item.id);
+ const taskMetadata = resourceCatalog.getTask(item.id);
const parsedPayload = taskMetadata?.fns.parsePayload
? await taskMetadata?.fns.parsePayload(item.payload)
@@ -774,7 +752,7 @@ export async function batchTriggerByIdAndWait(
payload: payloadPacket.data,
options: {
lockToVersion: taskContext.worker?.version,
- queue: item.options?.queue,
+ queue: item.options?.queue ? { name: item.options.queue } : undefined,
concurrencyKey: item.options?.concurrencyKey,
test: taskContext.ctx?.run.isTest,
payloadType: payloadPacket.dataType,
@@ -918,7 +896,7 @@ export async function batchTriggerTasks(
{
items: await Promise.all(
items.map(async (item, index) => {
- const taskMetadata = taskCatalog.getTask(item.task.id);
+ const taskMetadata = resourceCatalog.getTask(item.task.id);
const parsedPayload = taskMetadata?.fns.parsePayload
? await taskMetadata?.fns.parsePayload(item.payload)
@@ -934,7 +912,7 @@ export async function batchTriggerTasks(
task: item.task.id,
payload: payloadPacket.data,
options: {
- queue: item.options?.queue,
+ queue: item.options?.queue ? { name: item.options.queue } : undefined,
concurrencyKey: item.options?.concurrencyKey,
test: taskContext.ctx?.run.isTest,
payloadType: payloadPacket.dataType,
@@ -1087,7 +1065,7 @@ export async function batchTriggerAndWaitTasks {
- const taskMetadata = taskCatalog.getTask(item.task.id);
+ const taskMetadata = resourceCatalog.getTask(item.task.id);
const parsedPayload = taskMetadata?.fns.parsePayload
? await taskMetadata?.fns.parsePayload(item.payload)
@@ -1104,7 +1082,7 @@ export async function batchTriggerAndWaitTasks(
{
payload: payloadPacket.data,
options: {
- queue: options?.queue,
+ queue: options?.queue ? { name: options.queue } : undefined,
concurrencyKey: options?.concurrencyKey,
test: taskContext.ctx?.run.isTest,
payloadType: payloadPacket.dataType,
@@ -1223,7 +1201,7 @@ async function batchTrigger_internal(
options?: BatchTriggerOptions,
parsePayload?: SchemaParseFn,
requestOptions?: TriggerApiRequestOptions,
- queue?: QueueOptions
+ queue?: string
): Promise> {
const apiClient = apiClientManager.clientOrThrow();
@@ -1245,7 +1223,11 @@ async function batchTrigger_internal(
task: taskIdentifier,
payload: payloadPacket.data,
options: {
- queue: item.options?.queue ?? queue,
+ queue: item.options?.queue
+ ? { name: item.options.queue }
+ : queue
+ ? { name: queue }
+ : undefined,
concurrencyKey: item.options?.concurrencyKey,
test: taskContext.ctx?.run.isTest,
payloadType: payloadPacket.dataType,
@@ -1329,7 +1311,7 @@ async function triggerAndWait_internal,
options?: BatchTriggerAndWaitOptions,
requestOptions?: ApiRequestOptions,
- queue?: QueueOptions
+ queue?: string
): Promise> {
const ctx = taskContext.ctx;
@@ -1416,7 +1398,11 @@ async function batchTriggerAndWait_internal {
+ logger.info("Hello, world from the non-exported task", { message: payload.message });
+ },
+});
diff --git a/references/hello-world/src/trigger/pendingVersions.ts b/references/hello-world/src/trigger/pendingVersions.ts
new file mode 100644
index 0000000000..8b527e730f
--- /dev/null
+++ b/references/hello-world/src/trigger/pendingVersions.ts
@@ -0,0 +1,37 @@
+import { logger, queue, queues, task, tasks } from "@trigger.dev/sdk/v3";
+
+export const pendingVersionsQueue = queue({
+ name: "pending-version-queue",
+ concurrencyLimit: 1,
+});
+
+export const pendingVersionsTester = task({
+ id: "pending-versions-tester",
+ run: async (payload: any, { ctx }) => {
+ logger.log("Pending versions tester", { payload });
+
+ await tasks.trigger("pending-versions-tester-2", {
+ payload: {
+ message: "Hello, world!",
+ },
+ });
+
+ await tasks.trigger(
+ "pending-versions-tester-3",
+ {
+ message: "Hello, world!",
+ },
+ {
+ queue: "pending-version-queue-2",
+ }
+ );
+ },
+});
+
+export const pendingVersionsTester3 = task({
+ id: "pending-versions-tester-3",
+ queue: pendingVersionsQueue,
+ run: async (payload: any, { ctx }) => {
+ logger.log("Pending versions tester 3", { payload });
+ },
+});
diff --git a/references/hello-world/src/trigger/priority.ts b/references/hello-world/src/trigger/priority.ts
index 3944daa647..8fd9ac9b9a 100644
--- a/references/hello-world/src/trigger/priority.ts
+++ b/references/hello-world/src/trigger/priority.ts
@@ -3,7 +3,7 @@ import { logger, task } from "@trigger.dev/sdk/v3";
export const priorityParent = task({
id: "priority-parent",
run: async (payload: any, { ctx }) => {
- logger.log("Hello, world from the parent", { payload });
+ logger.log("Hello, world from the parents", { payload });
const batch1 = await priorityChild.batchTriggerAndWait([
{
diff --git a/references/hello-world/src/trigger/queues.ts b/references/hello-world/src/trigger/queues.ts
index efca8fe0e5..23a72fa605 100644
--- a/references/hello-world/src/trigger/queues.ts
+++ b/references/hello-world/src/trigger/queues.ts
@@ -1,4 +1,4 @@
-import { logger, queues, task } from "@trigger.dev/sdk/v3";
+import { logger, queue, queues, task } from "@trigger.dev/sdk/v3";
export const queuesTester = task({
id: "queues-tester",
@@ -40,12 +40,14 @@ export const queuesTester = task({
},
});
+const myCustomQueue = queue({
+ name: "my-custom-queue",
+ concurrencyLimit: 1,
+});
+
export const otherQueueTask = task({
id: "other-queue-task",
- queue: {
- name: "my-custom-queue",
- concurrencyLimit: 1,
- },
+ queue: myCustomQueue,
run: async (payload: any, { ctx }) => {
logger.log("Other queue task", { payload });
},