Compare commits

...

4 Commits

Author SHA1 Message Date
Matt Aitken dc08b803e2 Latest lockfile 2024-05-24 15:25:43 +01:00
Matt Aitken 2186a995ff 2.3.19 version 2024-05-24 15:24:25 +01:00
Matt Aitken 3d5c521688 v2: When a run hits the rate limit reschedule the re-execution (#1125) 2024-05-24 12:46:01 +01:00
Matt Aitken 2d1710c549 v2: Better handle recovering from platform communication errors by auto-yielding back to the platform in case of temporary API failures 2024-05-24 12:44:57 +01:00
67 changed files with 655 additions and 217 deletions
+9
View File
@@ -1,5 +1,14 @@
# @trigger.dev/airtable
## 2.3.19
### Patch Changes
- Updated dependencies [2d1710c54]
- Updated dependencies [3d5c52168]
- @trigger.dev/sdk@2.3.19
- @trigger.dev/integration-kit@2.3.19
## 2.3.18
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/airtable",
"version": "2.3.18",
"version": "2.3.19",
"description": "Trigger.dev integration for airtable",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -25,8 +25,8 @@
"typecheck": "tsc --noEmit"
},
"dependencies": {
"@trigger.dev/integration-kit": "workspace:^2.3.18",
"@trigger.dev/sdk": "workspace:^2.3.18",
"@trigger.dev/integration-kit": "workspace:^2.3.19",
"@trigger.dev/sdk": "workspace:^2.3.19",
"airtable": "^0.12.1",
"zod": "3.22.3"
},
+9
View File
@@ -1,5 +1,14 @@
# @trigger.dev/github
## 2.3.19
### Patch Changes
- Updated dependencies [2d1710c54]
- Updated dependencies [3d5c52168]
- @trigger.dev/sdk@2.3.19
- @trigger.dev/integration-kit@2.3.19
## 2.3.18
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/github",
"version": "2.3.18",
"version": "2.3.19",
"description": "The official GitHub integration for Trigger.dev",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -30,8 +30,8 @@
"@octokit/request-error": "^5.0.1",
"@octokit/webhooks": "^12.0.10",
"octokit": "^3.1.2",
"@trigger.dev/integration-kit": "workspace:^2.3.18",
"@trigger.dev/sdk": "workspace:^2.3.18",
"@trigger.dev/integration-kit": "workspace:^2.3.19",
"@trigger.dev/sdk": "workspace:^2.3.19",
"zod": "3.22.3"
},
"engines": {
+9
View File
@@ -1,5 +1,14 @@
# @trigger.dev/linear
## 2.3.19
### Patch Changes
- Updated dependencies [2d1710c54]
- Updated dependencies [3d5c52168]
- @trigger.dev/sdk@2.3.19
- @trigger.dev/integration-kit@2.3.19
## 2.3.18
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/linear",
"version": "2.3.18",
"version": "2.3.19",
"description": "Trigger.dev integration for @linear/sdk",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -26,8 +26,8 @@
},
"dependencies": {
"@linear/sdk": "^8.0.0",
"@trigger.dev/integration-kit": "workspace:^2.3.18",
"@trigger.dev/sdk": "workspace:^2.3.18",
"@trigger.dev/integration-kit": "workspace:^2.3.19",
"@trigger.dev/sdk": "workspace:^2.3.19",
"zod": "3.22.3"
},
"engines": {
+9
View File
@@ -1,5 +1,14 @@
# @trigger.dev/slack
## 2.3.19
### Patch Changes
- Updated dependencies [2d1710c54]
- Updated dependencies [3d5c52168]
- @trigger.dev/sdk@2.3.19
- @trigger.dev/integration-kit@2.3.19
## 2.3.18
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/openai",
"version": "2.3.18",
"version": "2.3.19",
"description": "The official OpenAI integration for Trigger.dev",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -42,8 +42,8 @@
},
"dependencies": {
"openai": "^4.16.1",
"@trigger.dev/sdk": "workspace:^2.3.18",
"@trigger.dev/integration-kit": "workspace:^2.3.18"
"@trigger.dev/sdk": "workspace:^2.3.19",
"@trigger.dev/integration-kit": "workspace:^2.3.19"
},
"engines": {
"node": ">=18.0.0"
+9
View File
@@ -1,5 +1,14 @@
# @trigger.dev/plain
## 2.3.19
### Patch Changes
- Updated dependencies [2d1710c54]
- Updated dependencies [3d5c52168]
- @trigger.dev/sdk@2.3.19
- @trigger.dev/integration-kit@2.3.19
## 2.3.18
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/plain",
"version": "2.3.18",
"version": "2.3.19",
"description": "The official Plain.com integration for Trigger.dev",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -24,8 +24,8 @@
"build:tsup": "tsup"
},
"dependencies": {
"@trigger.dev/integration-kit": "workspace:^2.3.18",
"@trigger.dev/sdk": "workspace:^2.3.18",
"@trigger.dev/integration-kit": "workspace:^2.3.19",
"@trigger.dev/sdk": "workspace:^2.3.19",
"@team-plain/typescript-sdk": "^2.7.0"
},
"engines": {
+9
View File
@@ -1,5 +1,14 @@
# @trigger.dev/replicate
## 2.3.19
### Patch Changes
- Updated dependencies [2d1710c54]
- Updated dependencies [3d5c52168]
- @trigger.dev/sdk@2.3.19
- @trigger.dev/integration-kit@2.3.19
## 2.3.18
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/replicate",
"version": "2.3.18",
"version": "2.3.19",
"description": "Trigger.dev integration for replicate",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -25,8 +25,8 @@
"typecheck": "tsc --noEmit"
},
"dependencies": {
"@trigger.dev/integration-kit": "workspace:^2.3.18",
"@trigger.dev/sdk": "workspace:^2.3.18",
"@trigger.dev/integration-kit": "workspace:^2.3.19",
"@trigger.dev/sdk": "workspace:^2.3.19",
"replicate": "^0.18.1",
"zod": "3.22.3"
},
+9
View File
@@ -1,5 +1,14 @@
# @trigger.dev/resend
## 2.3.19
### Patch Changes
- Updated dependencies [2d1710c54]
- Updated dependencies [3d5c52168]
- @trigger.dev/sdk@2.3.19
- @trigger.dev/integration-kit@2.3.19
## 2.3.18
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/resend",
"version": "2.3.18",
"version": "2.3.19",
"description": "The official Resend.com integration for Trigger.dev",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -24,8 +24,8 @@
"build:tsup": "tsup"
},
"dependencies": {
"@trigger.dev/integration-kit": "workspace:^2.3.18",
"@trigger.dev/sdk": "workspace:^2.3.18",
"@trigger.dev/integration-kit": "workspace:^2.3.19",
"@trigger.dev/sdk": "workspace:^2.3.19",
"resend": "^2.1.0"
},
"engines": {
+9
View File
@@ -1,5 +1,14 @@
# @trigger.dev/sendgrid
## 2.3.19
### Patch Changes
- Updated dependencies [2d1710c54]
- Updated dependencies [3d5c52168]
- @trigger.dev/sdk@2.3.19
- @trigger.dev/integration-kit@2.3.19
## 2.3.18
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/sendgrid",
"version": "2.3.18",
"version": "2.3.19",
"description": "Trigger.dev integration for @sendgrid/mail",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -26,8 +26,8 @@
},
"dependencies": {
"@sendgrid/mail": "^7.7.0",
"@trigger.dev/sdk": "workspace:^2.3.18",
"@trigger.dev/integration-kit": "workspace:^2.3.18"
"@trigger.dev/sdk": "workspace:^2.3.19",
"@trigger.dev/integration-kit": "workspace:^2.3.19"
},
"engines": {
"node": ">=16.8.0"
+9
View File
@@ -1,5 +1,14 @@
# @trigger.dev/shopify
## 2.3.19
### Patch Changes
- Updated dependencies [2d1710c54]
- Updated dependencies [3d5c52168]
- @trigger.dev/sdk@2.3.19
- @trigger.dev/integration-kit@2.3.19
## 2.3.18
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/shopify",
"version": "2.3.18",
"version": "2.3.19",
"description": "Trigger.dev integration for @shopify/shopify-api",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -26,8 +26,8 @@
},
"dependencies": {
"@shopify/shopify-api": "^8.0.2",
"@trigger.dev/sdk": "workspace:^2.3.18",
"@trigger.dev/integration-kit": "workspace:^2.3.18",
"@trigger.dev/sdk": "workspace:^2.3.19",
"@trigger.dev/integration-kit": "workspace:^2.3.19",
"zod": "3.22.3"
},
"engines": {
+8
View File
@@ -1,5 +1,13 @@
# @trigger.dev/slack
## 2.3.19
### Patch Changes
- Updated dependencies [2d1710c54]
- Updated dependencies [3d5c52168]
- @trigger.dev/sdk@2.3.19
## 2.3.18
### Patch Changes
+2 -2
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/slack",
"version": "2.3.18",
"version": "2.3.19",
"description": "The official Slack integration for Trigger.dev",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -25,7 +25,7 @@
},
"dependencies": {
"@slack/web-api": "^6.8.1",
"@trigger.dev/sdk": "workspace:^2.3.18",
"@trigger.dev/sdk": "workspace:^2.3.19",
"zod": "3.22.3"
},
"engines": {
+9
View File
@@ -1,5 +1,14 @@
# @trigger.dev/stripe
## 2.3.19
### Patch Changes
- Updated dependencies [2d1710c54]
- Updated dependencies [3d5c52168]
- @trigger.dev/sdk@2.3.19
- @trigger.dev/integration-kit@2.3.19
## 2.3.18
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/stripe",
"version": "2.3.18",
"version": "2.3.19",
"description": "Trigger.dev integration for stripe",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -25,8 +25,8 @@
"typecheck": "tsc --noEmit"
},
"dependencies": {
"@trigger.dev/integration-kit": "workspace:^2.3.18",
"@trigger.dev/sdk": "workspace:^2.3.18",
"@trigger.dev/integration-kit": "workspace:^2.3.19",
"@trigger.dev/sdk": "workspace:^2.3.19",
"stripe": "^12.14.0",
"zod": "3.22.3"
},
+9
View File
@@ -1,5 +1,14 @@
# @trigger.dev/supabase
## 2.3.19
### Patch Changes
- Updated dependencies [2d1710c54]
- Updated dependencies [3d5c52168]
- @trigger.dev/sdk@2.3.19
- @trigger.dev/integration-kit@2.3.19
## 2.3.18
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/supabase",
"version": "2.3.18",
"version": "2.3.19",
"description": "Trigger.dev integration for @supabase/supabase-js",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -26,8 +26,8 @@
},
"dependencies": {
"@supabase/supabase-js": "^2.26.0",
"@trigger.dev/integration-kit": "workspace:^2.3.18",
"@trigger.dev/sdk": "workspace:^2.3.18",
"@trigger.dev/integration-kit": "workspace:^2.3.19",
"@trigger.dev/sdk": "workspace:^2.3.19",
"supabase-management-js": "^1.0.0",
"zod": "3.22.3"
},
+9
View File
@@ -1,5 +1,14 @@
# @trigger.dev/typeform
## 2.3.19
### Patch Changes
- Updated dependencies [2d1710c54]
- Updated dependencies [3d5c52168]
- @trigger.dev/sdk@2.3.19
- @trigger.dev/integration-kit@2.3.19
## 2.3.18
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/typeform",
"version": "2.3.18",
"version": "2.3.19",
"description": "The official Typeform integration for Trigger.dev",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -24,8 +24,8 @@
"typecheck": "tsc --noEmit"
},
"dependencies": {
"@trigger.dev/integration-kit": "workspace:^2.3.18",
"@trigger.dev/sdk": "workspace:^2.3.18",
"@trigger.dev/integration-kit": "workspace:^2.3.19",
"@trigger.dev/sdk": "workspace:^2.3.19",
"@typeform/api-client": "^1.8.0",
"zod": "3.22.3"
},
+8
View File
@@ -1,5 +1,13 @@
# @trigger.dev/astro
## 2.3.19
### Patch Changes
- Updated dependencies [2d1710c54]
- Updated dependencies [3d5c52168]
- @trigger.dev/sdk@2.3.19
## 2.3.18
### Patch Changes
+2 -2
View File
@@ -1,7 +1,7 @@
{
"name": "@trigger.dev/astro",
"description": "An Astro-native integration for Trigger.dev background jobs platform",
"version": "2.3.18",
"version": "2.3.19",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
"files": [
@@ -20,7 +20,7 @@
"build:tsup": "tsup"
},
"peerDependencies": {
"@trigger.dev/sdk": "workspace:^2.3.18"
"@trigger.dev/sdk": "workspace:^2.3.19"
},
"devDependencies": {
"astro": "^3.0.12",
+8
View File
@@ -1,5 +1,13 @@
# trigger.dev
## 1.0.8
### Patch Changes
- Updated dependencies [2d1710c54]
- Updated dependencies [3d5c52168]
- @trigger.dev/core@2.3.19
## 1.0.7
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "trigger.dev",
"version": "1.0.7",
"version": "1.0.8",
"description": "A Command-Line Interface for Trigger.dev (v3) projects",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
+9
View File
@@ -1,5 +1,14 @@
# create-trigger
## 2.3.19
### Patch Changes
- Updated dependencies [2d1710c54]
- Updated dependencies [3d5c52168]
- @trigger.dev/core@2.3.19
- @trigger.dev/yalt@2.3.19
## 2.3.18
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/cli",
"version": "2.3.18",
"version": "2.3.19",
"description": "The Trigger.dev CLI",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
+2
View File
@@ -1,5 +1,7 @@
# @trigger.dev/core-backend
## 2.3.19
## 2.3.18
## 2.3.17
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/core-backend",
"version": "2.3.18",
"version": "2.3.19",
"description": "Core code used across `@trigger.dev/sdk` and Trigger.dev server",
"license": "MIT",
"main": "./dist/index.js",
+7
View File
@@ -1,5 +1,12 @@
# internal-platform
## 2.3.19
### Patch Changes
- 2d1710c54: v2: Better handle recovering from platform communication errors by auto-yielding back to the platform in case of temporary API failures
- 3d5c52168: When a v2 run hits the rate limit, reschedule with the reset date
## 2.3.18
## 2.3.17
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/core",
"version": "2.3.18",
"version": "2.3.19",
"description": "Core code used across the Trigger.dev SDK and platform",
"license": "MIT",
"main": "./dist/index.js",
+9
View File
@@ -671,6 +671,13 @@ export type RunJobAutoYieldWithCompletedTaskExecutionError = z.infer<
typeof RunJobAutoYieldWithCompletedTaskExecutionErrorSchema
>;
export const RunJobAutoYieldRateLimitErrorSchema = z.object({
status: z.literal("AUTO_YIELD_RATE_LIMIT"),
reset: z.coerce.number(),
});
export type RunJobAutoYieldRateLimitError = z.infer<typeof RunJobAutoYieldRateLimitErrorSchema>;
export const RunJobInvalidPayloadErrorSchema = z.object({
status: z.literal("INVALID_PAYLOAD"),
errors: z.array(SchemaErrorSchema),
@@ -719,6 +726,7 @@ export const RunJobErrorResponseSchema = z.union([
RunJobAutoYieldExecutionErrorSchema,
RunJobAutoYieldWithCompletedTaskExecutionErrorSchema,
RunJobYieldExecutionErrorSchema,
RunJobAutoYieldRateLimitErrorSchema,
RunJobErrorSchema,
RunJobUnresolvedAuthErrorSchema,
RunJobInvalidPayloadErrorSchema,
@@ -741,6 +749,7 @@ export const RunJobResponseSchema = z.discriminatedUnion("status", [
RunJobAutoYieldExecutionErrorSchema,
RunJobAutoYieldWithCompletedTaskExecutionErrorSchema,
RunJobYieldExecutionErrorSchema,
RunJobAutoYieldRateLimitErrorSchema,
RunJobErrorSchema,
RunJobUnresolvedAuthErrorSchema,
RunJobInvalidPayloadErrorSchema,
+2
View File
@@ -1,5 +1,7 @@
# @trigger.dev/eslint-plugin
## 2.3.19
## 2.3.18
## 2.3.17
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/eslint-plugin",
"version": "2.3.18",
"version": "2.3.19",
"description": "ESLint plugin with trigger.dev best practices",
"keywords": [
"eslint",
+8
View File
@@ -1,5 +1,13 @@
# @trigger.dev/express
## 2.3.19
### Patch Changes
- Updated dependencies [2d1710c54]
- Updated dependencies [3d5c52168]
- @trigger.dev/sdk@2.3.19
## 2.3.18
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/express",
"version": "2.3.18",
"version": "2.3.19",
"description": "Official Express adapter for Trigger.dev",
"license": "MIT",
"main": "./dist/index.js",
@@ -23,7 +23,7 @@
"./package.json": "./package.json"
},
"devDependencies": {
"@trigger.dev/sdk": "workspace:^2.3.18",
"@trigger.dev/sdk": "workspace:^2.3.19",
"@trigger.dev/tsconfig": "workspace:*",
"@types/debug": "^4.1.7",
"@types/express": "^4.17.13",
@@ -39,7 +39,7 @@
"build:tsup": "tsup"
},
"peerDependencies": {
"@trigger.dev/sdk": "workspace:^2.3.18"
"@trigger.dev/sdk": "workspace:^2.3.19"
},
"dependencies": {
"debug": "^4.3.4",
+8
View File
@@ -1,5 +1,13 @@
# @trigger.dev/hono
## 2.3.19
### Patch Changes
- Updated dependencies [2d1710c54]
- Updated dependencies [3d5c52168]
- @trigger.dev/sdk@2.3.19
## 2.3.18
### Patch Changes
+2 -2
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/hono",
"version": "2.3.18",
"version": "2.3.19",
"description": "A Trigger.dev adapter for Hono.dev",
"license": "MIT",
"main": "./dist/index.js",
@@ -32,7 +32,7 @@
},
"peerDependencies": {
"hono": "3.x",
"@trigger.dev/sdk": "workspace:^2.3.18"
"@trigger.dev/sdk": "workspace:^2.3.19"
},
"devDependencies": {
"@trigger.dev/tsconfig": "workspace:*",
+8
View File
@@ -1,5 +1,13 @@
# @trigger.dev/integration-kit
## 2.3.19
### Patch Changes
- Updated dependencies [2d1710c54]
- Updated dependencies [3d5c52168]
- @trigger.dev/core@2.3.19
## 2.3.18
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/integration-kit",
"version": "2.3.18",
"version": "2.3.19",
"description": "Trigger.dev Integration Kit has helpers to make creating integrations easier",
"license": "MIT",
"main": "./dist/index.js",
+8
View File
@@ -1,5 +1,13 @@
# @trigger.dev/nestjs
## 2.3.19
### Patch Changes
- Updated dependencies [2d1710c54]
- Updated dependencies [3d5c52168]
- @trigger.dev/sdk@2.3.19
## 2.3.18
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/nestjs",
"version": "2.3.18",
"version": "2.3.19",
"description": "Official NestJS adapter for Trigger.dev",
"license": "MIT",
"main": "./dist/index.js",
@@ -23,7 +23,7 @@
"./package.json": "./package.json"
},
"devDependencies": {
"@trigger.dev/sdk": "workspace:^2.3.18",
"@trigger.dev/sdk": "workspace:^2.3.19",
"@trigger.dev/tsconfig": "workspace:*",
"@types/debug": "^4.1.7",
"@types/express": "^4.17.13",
@@ -41,7 +41,7 @@
},
"peerDependencies": {
"@nestjs/common": ">=10.0.0",
"@trigger.dev/sdk": "workspace:^2.3.18"
"@trigger.dev/sdk": "workspace:^2.3.19"
},
"dependencies": {
"@nestjs/common": "^10.2.4",
+8
View File
@@ -1,5 +1,13 @@
# @trigger.dev/nextjs
## 2.3.19
### Patch Changes
- Updated dependencies [2d1710c54]
- Updated dependencies [3d5c52168]
- @trigger.dev/sdk@2.3.19
## 2.3.18
### Patch Changes
+2 -2
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/nextjs",
"version": "2.3.18",
"version": "2.3.19",
"description": "Trigger.dev Next.js integration",
"license": "MIT",
"main": "./dist/index.js",
@@ -41,7 +41,7 @@
"build:tsup": "tsup"
},
"peerDependencies": {
"@trigger.dev/sdk": "workspace:^2.3.18",
"@trigger.dev/sdk": "workspace:^2.3.19",
"next": ">=12.0.0"
},
"dependencies": {
+8
View File
@@ -1,5 +1,13 @@
# @trigger.dev/react
## 2.3.19
### Patch Changes
- Updated dependencies [2d1710c54]
- Updated dependencies [3d5c52168]
- @trigger.dev/core@2.3.19
## 2.3.18
### Patch Changes
+2 -2
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/react",
"version": "2.3.18",
"version": "2.3.19",
"description": "Trigger.dev React SDK",
"license": "MIT",
"types": "dist/index.d.ts",
@@ -27,7 +27,7 @@
},
"dependencies": {
"@tanstack/react-query": "5.0.0-beta.2",
"@trigger.dev/core": "workspace:^2.3.18",
"@trigger.dev/core": "workspace:^2.3.19",
"debug": "^4.3.4",
"zod": "3.22.3"
},
+8
View File
@@ -1,5 +1,13 @@
# @trigger.dev/remix
## 2.3.19
### Patch Changes
- Updated dependencies [2d1710c54]
- Updated dependencies [3d5c52168]
- @trigger.dev/sdk@2.3.19
## 2.3.18
### Patch Changes
+2 -2
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/remix",
"version": "2.3.18",
"version": "2.3.19",
"description": "Trigger.dev Remix integration",
"license": "MIT",
"main": "./dist/index.js",
@@ -39,7 +39,7 @@
"build:tsup": "tsup"
},
"peerDependencies": {
"@trigger.dev/sdk": "workspace:^2.3.18",
"@trigger.dev/sdk": "workspace:^2.3.19",
"@remix-run/server-runtime": ">1.19.0"
},
"dependencies": {
+8
View File
@@ -1,5 +1,13 @@
# @trigger.dev/sveltekit
## 2.3.19
### Patch Changes
- Updated dependencies [2d1710c54]
- Updated dependencies [3d5c52168]
- @trigger.dev/sdk@2.3.19
## 2.3.18
### Patch Changes
+2 -2
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/sveltekit",
"version": "2.3.18",
"version": "2.3.19",
"description": "Trigger.dev svelteKit integration",
"license": "MIT",
"main": "./dist/index.js",
@@ -39,7 +39,7 @@
"build:tsup": "tsup"
},
"peerDependencies": {
"@trigger.dev/sdk": "workspace:^2.3.18"
"@trigger.dev/sdk": "workspace:^2.3.19"
},
"dependencies": {
"debug": "^4.3.4"
+9
View File
@@ -1,5 +1,14 @@
# @trigger.dev/testing
## 2.3.19
### Patch Changes
- Updated dependencies [2d1710c54]
- Updated dependencies [3d5c52168]
- @trigger.dev/sdk@2.3.19
- @trigger.dev/core@2.3.19
## 2.3.18
### Patch Changes
+1 -1
View File
@@ -1,7 +1,7 @@
{
"name": "@trigger.dev/testing",
"description": "A collection of useful tools to write tests for Trigger.dev.",
"version": "2.3.18",
"version": "2.3.19",
"license": "MIT",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
+11
View File
@@ -1,5 +1,16 @@
# @trigger.dev/sdk
## 2.3.19
### Patch Changes
- 2d1710c54: v2: Better handle recovering from platform communication errors by auto-yielding back to the platform in case of temporary API failures
- 3d5c52168: When a v2 run hits the rate limit, reschedule with the reset date
- Updated dependencies [2d1710c54]
- Updated dependencies [3d5c52168]
- @trigger.dev/core@2.3.19
- @trigger.dev/core-backend@2.3.19
## 2.3.18
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/sdk",
"version": "2.3.18",
"version": "2.3.19",
"description": "trigger.dev Node.JS SDK",
"license": "MIT",
"main": "./dist/index.js",
@@ -30,8 +30,8 @@
"typecheck": "tsc --noEmit"
},
"dependencies": {
"@trigger.dev/core": "workspace:^2.3.18",
"@trigger.dev/core-backend": "workspace:^2.3.18",
"@trigger.dev/core": "workspace:^2.3.19",
"@trigger.dev/core-backend": "workspace:^2.3.19",
"chalk": "^5.2.0",
"cronstrue": "^2.21.0",
"debug": "^4.3.4",
+222 -97
View File
@@ -44,6 +44,7 @@ import { env } from "node:process";
import { z } from "zod";
import { KeyValueStoreClient } from "./store/keyValueStoreClient";
import { AutoYieldRateLimitError } from "./errors";
export type ApiClientOptions = {
apiKey?: string;
@@ -74,6 +75,18 @@ export type RunRecord = {
event: ApiEventLog;
};
export class UnknownVersionError extends Error {
constructor(version: string) {
super(`Unknown version ${version}`);
}
}
const MAX_RETRIES = 8;
const EXPONENT_FACTOR = 2;
const MIN_DELAY_IN_MS = 80;
const MAX_DELAY_IN_MS = 2000;
const JITTER_IN_MS = 50;
export class ApiClient {
#apiUrl: string;
#options: ApiClientOptions;
@@ -129,11 +142,10 @@ export class ApiClient {
) {
const apiKey = await this.#apiKey();
this.#logger.debug("Running Task", {
task,
});
this.#logger.debug(`[ApiClient] runTask ${task.displayKey}`);
return await zodfetchWithVersions(
this.#logger,
{
[API_VERSIONS.LAZY_LOADED_CACHED_TASKS]: RunTaskResponseWithCachedTasksBodySchema,
},
@@ -771,6 +783,7 @@ async function zodfetchWithVersions<
TUnversionedResponseBodySchema extends z.ZodTypeAny,
TOptional extends boolean = false,
>(
logger: Logger,
versionedSchemaMap: TVersionedResponseBodyMap,
unversionedSchema: TUnversionedResponseBodySchema,
url: string,
@@ -785,66 +798,141 @@ async function zodfetchWithVersions<
? VersionedResponseBody<TVersionedResponseBodyMap, TUnversionedResponseBodySchema> | undefined
: VersionedResponseBody<TVersionedResponseBodyMap, TUnversionedResponseBodySchema>
> {
const response = await fetch(url, requestInitWithCache(requestInit));
try {
const fullRequestInit = requestInitWithCache(requestInit);
if (
(!requestInit || requestInit.method === "GET") &&
response.status === 404 &&
options?.optional
) {
// @ts-ignore
return;
}
const response = await fetch(url, fullRequestInit);
if (response.status >= 400 && response.status < 500) {
const body = await response.json();
throw new Error(body.error);
}
if (response.status >= 500 && retryCount < 6) {
// retry with exponential backoff and jitter
const delay = exponentialBackoff(retryCount + 1, 2, 50, 1150, 50);
await new Promise((resolve) => setTimeout(resolve, delay));
return zodfetchWithVersions(
versionedSchemaMap,
unversionedSchema,
logger.debug(`[ApiClient] zodfetchWithVersions ${url} (attempt ${retryCount + 1})`, {
url,
requestInit,
options,
retryCount + 1
);
}
retryCount,
requestHeaders: fullRequestInit?.headers,
responseHeaders: Object.fromEntries(response.headers.entries()),
});
if (response.status !== 200) {
throw new Error(
options?.errorMessage ?? `Failed to fetch ${url}, got status code ${response.status}`
);
}
if (
(!requestInit || requestInit.method === "GET") &&
response.status === 404 &&
options?.optional
) {
// @ts-ignore
return;
}
const jsonBody = await response.json();
//rate limit, so we want to reschedule
if (response.status === 429) {
//unix timestamp in milliseconds
const retryAfter = response.headers.get("x-ratelimit-reset");
if (retryAfter) {
throw new AutoYieldRateLimitError(parseInt(retryAfter));
}
}
const version = response.headers.get("trigger-version");
if (response.status >= 400 && response.status < 500) {
const rawBody = await safeResponseText(response);
const body = safeJsonParse(rawBody);
logger.error(`[ApiClient] zodfetchWithVersions failed with ${response.status}`, {
url,
retryCount,
requestHeaders: fullRequestInit?.headers,
responseHeaders: Object.fromEntries(response.headers.entries()),
status: response.status,
rawBody,
});
if (body && body.error) {
throw new Error(body.error);
} else {
throw new Error(rawBody);
}
}
if (response.status >= 500 && retryCount < MAX_RETRIES) {
// retry with exponential backoff and jitter
const delay = exponentialBackoff(retryCount + 1);
await new Promise((resolve) => setTimeout(resolve, delay));
return zodfetchWithVersions(
logger,
versionedSchemaMap,
unversionedSchema,
url,
requestInit,
options,
retryCount + 1
);
}
if (response.status !== 200) {
const rawBody = await safeResponseText(response);
logger.error(`[ApiClient] zodfetchWithVersions failed with ${response.status}`, {
url,
retryCount,
requestHeaders: fullRequestInit?.headers,
responseHeaders: Object.fromEntries(response.headers.entries()),
status: response.status,
rawBody,
});
throw new Error(
options?.errorMessage ?? `Failed to fetch ${url}, got status code ${response.status}`
);
}
const jsonBody = await response.json();
const version = response.headers.get("trigger-version");
if (!version) {
return {
version: "unversioned",
body: unversionedSchema.parse(jsonBody),
};
}
const versionedSchema = versionedSchemaMap[version];
if (!versionedSchema) {
throw new UnknownVersionError(version);
}
if (!version) {
return {
version: "unversioned",
body: unversionedSchema.parse(jsonBody),
version,
body: versionedSchema.parse(jsonBody),
};
} catch (error) {
if (error instanceof UnknownVersionError || error instanceof AutoYieldRateLimitError) {
throw error;
}
logger.error(`[ApiClient] zodfetchWithVersions failed with a connection error`, {
url,
retryCount,
error,
});
if (retryCount < MAX_RETRIES) {
// retry with exponential backoff and jitter
const delay = exponentialBackoff(retryCount + 1);
await new Promise((resolve) => setTimeout(resolve, delay));
return zodfetchWithVersions(
logger,
versionedSchemaMap,
unversionedSchema,
url,
requestInit,
options,
retryCount + 1
);
}
throw error;
}
const versionedSchema = versionedSchemaMap[version];
if (!versionedSchema) {
throw new Error(`Unknown version ${version}`);
}
return {
version,
body: versionedSchema.parse(jsonBody),
};
}
function requestInitWithCache(requestInit?: RequestInit): RequestInit {
@@ -873,9 +961,9 @@ async function fetchHead(
};
const response = await fetch(url, requestInitWithCache(requestInit));
if (response.status >= 500 && retryCount < 6) {
if (response.status >= 500 && retryCount < MAX_RETRIES) {
// retry with exponential backoff and jitter
const delay = exponentialBackoff(retryCount + 1, 2, 50, 1150, 50);
const delay = exponentialBackoff(retryCount + 1);
await new Promise((resolve) => setTimeout(resolve, delay));
@@ -897,56 +985,93 @@ async function zodfetch<TResponseSchema extends z.ZodTypeAny, TOptional extends
): Promise<
TOptional extends true ? z.infer<TResponseSchema> | undefined : z.infer<TResponseSchema>
> {
const response = await fetch(url, requestInitWithCache(requestInit));
try {
const response = await fetch(url, requestInitWithCache(requestInit));
if (
(!requestInit || requestInit.method === "GET") &&
response.status === 404 &&
options?.optional
) {
// @ts-ignore
return;
if (
(!requestInit || requestInit.method === "GET") &&
response.status === 404 &&
options?.optional
) {
// @ts-ignore
return;
}
//rate limit, so we want to reschedule
if (response.status === 429) {
//unix timestamp in milliseconds
const retryAfter = response.headers.get("x-ratelimit-reset");
if (retryAfter) {
throw new AutoYieldRateLimitError(parseInt(retryAfter));
}
}
if (response.status >= 400 && response.status < 500) {
const body = await response.json();
throw new Error(body.error);
}
if (response.status >= 500 && retryCount < MAX_RETRIES) {
// retry with exponential backoff and jitter
const delay = exponentialBackoff(retryCount + 1);
await new Promise((resolve) => setTimeout(resolve, delay));
return zodfetch(schema, url, requestInit, options, retryCount + 1);
}
if (response.status !== 200) {
throw new Error(
options?.errorMessage ?? `Failed to fetch ${url}, got status code ${response.status}`
);
}
const jsonBody = await response.json();
return schema.parse(jsonBody);
} catch (error) {
if (error instanceof AutoYieldRateLimitError) {
throw error;
}
if (retryCount < MAX_RETRIES) {
// retry with exponential backoff and jitter
const delay = exponentialBackoff(retryCount + 1);
await new Promise((resolve) => setTimeout(resolve, delay));
return zodfetch(schema, url, requestInit, options, retryCount + 1);
}
throw error;
}
if (response.status >= 400 && response.status < 500) {
const body = await response.json();
throw new Error(body.error);
}
if (response.status >= 500 && retryCount < 6) {
// retry with exponential backoff and jitter
const delay = exponentialBackoff(retryCount + 1, 2, 50, 1150, 50);
await new Promise((resolve) => setTimeout(resolve, delay));
return zodfetch(schema, url, requestInit, options, retryCount + 1);
}
if (response.status !== 200) {
throw new Error(
options?.errorMessage ?? `Failed to fetch ${url}, got status code ${response.status}`
);
}
const jsonBody = await response.json();
return schema.parse(jsonBody);
}
function exponentialBackoff(
retryCount: number,
exponential: number,
minDelay: number,
maxDelay: number,
jitter: number
): number {
// First retry will have a delay of 80ms, second 160ms, third 320ms, etc.
function exponentialBackoff(retryCount: number): number {
// Calculate the delay using the exponential backoff formula
const delay = Math.min(Math.pow(exponential, retryCount) * minDelay, maxDelay);
const delay = Math.min(Math.pow(EXPONENT_FACTOR, retryCount) * MIN_DELAY_IN_MS, MAX_DELAY_IN_MS);
// Calculate the jitter
const jitterValue = Math.random() * jitter;
const jitterValue = Math.random() * JITTER_IN_MS;
// Return the calculated delay with jitter
return delay + jitterValue;
}
function safeJsonParse(rawBody: string) {
try {
return JSON.parse(rawBody);
} catch (error) {
return;
}
}
async function safeResponseText(response: Response) {
try {
return await response.text();
} catch (error) {
return "";
}
}
+6
View File
@@ -45,6 +45,10 @@ export class AutoYieldWithCompletedTaskExecutionError {
) {}
}
export class AutoYieldRateLimitError {
constructor(public resetAtTimestamp: number) {}
}
export class ParsedPayloadSchemaError {
constructor(public schemaErrors: SchemaError[]) {}
}
@@ -56,6 +60,7 @@ export type TriggerInternalError =
| YieldExecutionError
| AutoYieldExecutionError
| AutoYieldWithCompletedTaskExecutionError
| AutoYieldRateLimitError
| ResumeWithParallelTaskError;
/** Use this function if you're using a `try/catch` block to catch errors.
@@ -72,6 +77,7 @@ export function isTriggerError(err: unknown): err is TriggerInternalError {
err instanceof YieldExecutionError ||
err instanceof AutoYieldExecutionError ||
err instanceof AutoYieldWithCompletedTaskExecutionError ||
err instanceof AutoYieldRateLimitError ||
err instanceof ResumeWithParallelTaskError
);
}
+62 -16
View File
@@ -1,6 +1,7 @@
import {
API_VERSIONS,
CachedTask,
CompleteTaskBodyV2Input,
ConnectionAuth,
CronOptions,
ErrorWithStackSchema,
@@ -11,6 +12,7 @@ import {
FetchTimeoutOptions,
InitialStatusUpdate,
IntervalOptions,
RunTaskBodyInput,
RunTaskOptions,
SendEvent,
SendEventOptions,
@@ -26,6 +28,7 @@ import { webcrypto } from "node:crypto";
import { ApiClient } from "./apiClient";
import {
AutoYieldExecutionError,
AutoYieldRateLimitError,
AutoYieldWithCompletedTaskExecutionError,
CanceledWithTaskError,
ErrorWithTask,
@@ -1161,19 +1164,18 @@ export class IO {
const runOptions = { ...(options ?? {}), parseOutput: undefined };
const response = await this._apiClient.runTask(
this._id,
{
idempotencyKey,
displayKey: typeof cacheKey === "string" ? cacheKey : undefined,
noop: false,
...(runOptions ?? {}),
parentId,
},
{
cachedTasksCursor: this._cachedTasksCursor,
}
);
const response = await this.#doRunTask({
idempotencyKey,
displayKey: typeof cacheKey === "string" ? cacheKey : undefined,
noop: false,
...(runOptions ?? {}),
parentId,
});
if (!response) {
this.#forceYield("failed_task_run");
throw new Error("Failed to run task"); // this shouldn't actually happen, because forceYield will throw
}
const task =
response.version === API_VERSIONS.LAZY_LOADED_CACHED_TASKS
@@ -1267,11 +1269,16 @@ export class IO {
this.#detectAutoYield("before_complete_task", 500, task, output);
const completedTask = await this._apiClient.completeTask(this._id, task.id, {
const completedTask = await this.#doCompleteTask(task.id, {
output,
properties: task.outputProperties ?? undefined,
});
if (!completedTask) {
this.#forceYield("before_complete_task", task, output);
throw new Error("Failed to complete task"); // this shouldn't actually happen, because forceYield will throw
}
if (completedTask.forceYield) {
this._logger.debug("Forcing yield after task completed", {
idempotencyKey,
@@ -1448,6 +1455,32 @@ export class IO {
this._cachedTasks.set(task.idempotencyKey, task);
}
async #doRunTask(task: RunTaskBodyInput) {
try {
return await this._apiClient.runTask(this._id, task, {
cachedTasksCursor: this._cachedTasksCursor,
});
} catch (error) {
if (error instanceof AutoYieldRateLimitError) {
this._logger.debug("AutoYieldRateLimitError", {
error,
});
throw error;
}
return;
}
}
async #doCompleteTask(id: string, task: CompleteTaskBodyV2Input) {
try {
return await this._apiClient.completeTask(this._id, id, task);
} catch (error) {
return;
}
}
#detectAutoYield(location: string, threshold: number = 1500, task?: ServerTask, output?: string) {
const timeRemaining = this.#getRemainingTimeInMillis();
@@ -1469,11 +1502,24 @@ export class IO {
}
}
#forceYield(location: string) {
#forceYield(location: string, task?: ServerTask, output?: string) {
const timeRemaining = this.#getRemainingTimeInMillis();
if (timeRemaining) {
throw new AutoYieldExecutionError(location, timeRemaining, this.#getTimeElapsed());
if (task) {
throw new AutoYieldWithCompletedTaskExecutionError(
task.id,
task.outputProperties ?? [],
{
location,
timeRemaining,
timeElapsed: this.#getTimeElapsed(),
},
output
);
} else {
throw new AutoYieldExecutionError(location, timeRemaining, this.#getTimeElapsed());
}
}
}
+13 -1
View File
@@ -52,6 +52,7 @@ import { ApiClient } from "./apiClient";
import { ConcurrencyLimit, ConcurrencyLimitOptions } from "./concurrencyLimit";
import {
AutoYieldExecutionError,
AutoYieldRateLimitError,
AutoYieldWithCompletedTaskExecutionError,
CanceledWithTaskError,
ErrorWithTask,
@@ -198,11 +199,15 @@ export class TriggerClient {
constructor(options: Prettify<TriggerClientOptions>) {
this.id = options.id;
this.#options = options;
this.#client = new ApiClient(this.#options);
this.#internalLogger = new Logger("trigger.dev", this.#options.verbose ? "debug" : "log", [
"output",
"noopTasksSet",
]);
this.#client = new ApiClient({
logLevel: this.#options.verbose ? "debug" : "log",
...this.#options,
});
this.#envStore = new KeyValueStore(this.#client);
}
@@ -1231,6 +1236,13 @@ export class TriggerClient {
};
}
if (error instanceof AutoYieldRateLimitError) {
return {
status: "AUTO_YIELD_RATE_LIMIT",
reset: error.resetAtTimestamp,
};
}
if (error instanceof YieldExecutionError) {
return { status: "YIELD_EXECUTION", key: error.key };
}
+2
View File
@@ -1,5 +1,7 @@
# @trigger.dev/yalt
## 2.3.19
## 2.3.18
## 2.3.17
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/yalt",
"version": "2.3.18",
"version": "2.3.19",
"description": "yalt.dev client library",
"license": "MIT",
"main": "./dist/index.js",
+36 -36
View File
@@ -430,7 +430,7 @@ importers:
devDependencies:
eslint: 8.31.0
eslint-config-prettier: 8.6.0_eslint@8.31.0
eslint-config-turbo: 1.12.3_eslint@8.31.0
eslint-config-turbo: 1.13.3_eslint@8.31.0
eslint-plugin-react: 7.31.8_eslint@8.31.0
typescript: 4.9.4
@@ -458,8 +458,8 @@ importers:
integrations/airtable:
specifiers:
'@trigger.dev/integration-kit': workspace:^2.3.18
'@trigger.dev/sdk': workspace:^2.3.18
'@trigger.dev/integration-kit': workspace:^2.3.19
'@trigger.dev/sdk': workspace:^2.3.19
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/node': 16.x
@@ -488,8 +488,8 @@ importers:
'@octokit/types': ^12.4.0
'@octokit/webhooks': ^12.0.10
'@octokit/webhooks-types': ^7.3.1
'@trigger.dev/integration-kit': workspace:^2.3.18
'@trigger.dev/sdk': workspace:^2.3.18
'@trigger.dev/integration-kit': workspace:^2.3.19
'@trigger.dev/sdk': workspace:^2.3.19
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/node': '18'
@@ -519,8 +519,8 @@ importers:
integrations/linear:
specifiers:
'@linear/sdk': ^8.0.0
'@trigger.dev/integration-kit': workspace:^2.3.18
'@trigger.dev/sdk': workspace:^2.3.18
'@trigger.dev/integration-kit': workspace:^2.3.19
'@trigger.dev/sdk': workspace:^2.3.19
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/node': 16.x
@@ -543,8 +543,8 @@ importers:
integrations/openai:
specifiers:
'@trigger.dev/integration-kit': workspace:^2.3.18
'@trigger.dev/sdk': workspace:^2.3.18
'@trigger.dev/integration-kit': workspace:^2.3.19
'@trigger.dev/sdk': workspace:^2.3.19
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/jest': ^29.5.3
@@ -573,8 +573,8 @@ importers:
integrations/plain:
specifiers:
'@team-plain/typescript-sdk': ^2.7.0
'@trigger.dev/integration-kit': workspace:^2.3.18
'@trigger.dev/sdk': workspace:^2.3.18
'@trigger.dev/integration-kit': workspace:^2.3.19
'@trigger.dev/sdk': workspace:^2.3.19
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/node': '18'
@@ -595,8 +595,8 @@ importers:
integrations/replicate:
specifiers:
'@trigger.dev/integration-kit': workspace:^2.3.18
'@trigger.dev/sdk': workspace:^2.3.18
'@trigger.dev/integration-kit': workspace:^2.3.19
'@trigger.dev/sdk': workspace:^2.3.19
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/node': 16.x
@@ -620,8 +620,8 @@ importers:
integrations/resend:
specifiers:
'@trigger.dev/integration-kit': workspace:^2.3.18
'@trigger.dev/sdk': workspace:^2.3.18
'@trigger.dev/integration-kit': workspace:^2.3.19
'@trigger.dev/sdk': workspace:^2.3.19
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/node': '18'
@@ -644,8 +644,8 @@ importers:
integrations/sendgrid:
specifiers:
'@sendgrid/mail': ^7.7.0
'@trigger.dev/integration-kit': workspace:^2.3.18
'@trigger.dev/sdk': workspace:^2.3.18
'@trigger.dev/integration-kit': workspace:^2.3.19
'@trigger.dev/sdk': workspace:^2.3.19
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/node': 16.x
@@ -667,8 +667,8 @@ importers:
integrations/shopify:
specifiers:
'@shopify/shopify-api': ^8.0.2
'@trigger.dev/integration-kit': workspace:^2.3.18
'@trigger.dev/sdk': workspace:^2.3.18
'@trigger.dev/integration-kit': workspace:^2.3.19
'@trigger.dev/sdk': workspace:^2.3.19
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/node': 16.x
@@ -692,7 +692,7 @@ importers:
integrations/slack:
specifiers:
'@slack/web-api': ^6.8.1
'@trigger.dev/sdk': workspace:^2.3.18
'@trigger.dev/sdk': workspace:^2.3.19
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/node': '18'
@@ -714,8 +714,8 @@ importers:
integrations/stripe:
specifiers:
'@trigger.dev/integration-kit': workspace:^2.3.18
'@trigger.dev/sdk': workspace:^2.3.18
'@trigger.dev/integration-kit': workspace:^2.3.19
'@trigger.dev/sdk': workspace:^2.3.19
'@trigger.dev/tsup': workspace:*
'@types/node': 16.x
rimraf: ^3.0.2
@@ -740,8 +740,8 @@ importers:
integrations/supabase:
specifiers:
'@supabase/supabase-js': ^2.26.0
'@trigger.dev/integration-kit': workspace:^2.3.18
'@trigger.dev/sdk': workspace:^2.3.18
'@trigger.dev/integration-kit': workspace:^2.3.19
'@trigger.dev/sdk': workspace:^2.3.19
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/node': 18.x
@@ -766,8 +766,8 @@ importers:
integrations/typeform:
specifiers:
'@trigger.dev/integration-kit': workspace:^2.3.18
'@trigger.dev/sdk': workspace:^2.3.18
'@trigger.dev/integration-kit': workspace:^2.3.19
'@trigger.dev/sdk': workspace:^2.3.19
'@trigger.dev/tsup': workspace:*
'@typeform/api-client': ^1.8.0
'@types/node': 16.x
@@ -1112,7 +1112,7 @@ importers:
packages/express:
specifiers:
'@trigger.dev/sdk': workspace:^2.3.18
'@trigger.dev/sdk': workspace:^2.3.19
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/debug': ^4.1.7
@@ -1182,7 +1182,7 @@ importers:
specifiers:
'@nestjs/common': ^10.2.4
'@remix-run/web-fetch': ^4.3.5
'@trigger.dev/sdk': workspace:^2.3.18
'@trigger.dev/sdk': workspace:^2.3.19
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/debug': ^4.1.7
@@ -1241,7 +1241,7 @@ importers:
packages/react:
specifiers:
'@tanstack/react-query': 5.0.0-beta.2
'@trigger.dev/core': workspace:^2.3.18
'@trigger.dev/core': workspace:^2.3.19
'@trigger.dev/tsconfig': workspace:*
'@types/debug': ^4.1.7
'@types/react': 18.2.17
@@ -1344,8 +1344,8 @@ importers:
packages/trigger-sdk:
specifiers:
'@trigger.dev/core': workspace:^2.3.18
'@trigger.dev/core-backend': workspace:^2.3.18
'@trigger.dev/core': workspace:^2.3.19
'@trigger.dev/core-backend': workspace:^2.3.19
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/debug': ^4.1.7
@@ -20591,13 +20591,13 @@ packages:
eslint: 8.45.0
dev: true
/eslint-config-turbo/1.12.3_eslint@8.31.0:
resolution: {integrity: sha512-Q46MEOiNJpJWC3Et5/YEuIYYhbOieS04yZwQOinO2hpZw3folEXV+hbwVo8M+ap/q8gtpjIWiRMZ1A4QxmhEqQ==}
/eslint-config-turbo/1.13.3_eslint@8.31.0:
resolution: {integrity: sha512-if/QtwEiWZ5b7Bg8yZBPSvS0TeCG2Zvfa/+XBYANS7uSYucjmW+BBC8enJB0PqpB/YLGGOumeo3x7h1Nuba9iw==}
peerDependencies:
eslint: '>6.6.0'
dependencies:
eslint: 8.31.0
eslint-plugin-turbo: 1.12.3_eslint@8.31.0
eslint-plugin-turbo: 1.13.3_eslint@8.31.0
dev: true
/eslint-doc-generator/1.4.3_eslint@8.45.0:
@@ -21300,8 +21300,8 @@ packages:
- typescript
dev: true
/eslint-plugin-turbo/1.12.3_eslint@8.31.0:
resolution: {integrity: sha512-7hEyxa+oP898EFNoxVenHlH8jtBwV1hbbIkdQWgqDcB0EmVNGVEZkYRo5Hm6BuMAjR433B+NISBJdj0bQo4/Lg==}
/eslint-plugin-turbo/1.13.3_eslint@8.31.0:
resolution: {integrity: sha512-RjmlnqYsEqnJ+U3M3IS5jLJDjWv5NsvReCpsC61n5pJ4JMHTZ/lU0EIoL1ccuL1L5wP0APzdXdByBxERcPQ+Nw==}
peerDependencies:
eslint: '>6.6.0'
dependencies:
+2
View File
@@ -22,6 +22,8 @@ client.defineJob({
await io.runTask(
`task-${i}`,
async (task) => {
await new Promise((resolve) => setTimeout(resolve, 2000));
return {
output: "a".repeat(300 * 1024),
};