From bc56b6ec6609692d7cdfcaa70b6c4f9d7aa81e1f Mon Sep 17 00:00:00 2001 From: Tomas Pilar Date: Thu, 21 Mar 2024 07:54:56 +0100 Subject: [PATCH 1/4] fix(commonjs): import p-queue dynamically Signed-off-by: Tomas Pilar --- src/utils/concurrency.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/utils/concurrency.ts b/src/utils/concurrency.ts index 41af58a..733013b 100644 --- a/src/utils/concurrency.ts +++ b/src/utils/concurrency.ts @@ -1,4 +1,5 @@ -import PQueue, { QueueAddOptions } from 'p-queue'; +const { default: PQueue } = await import('p-queue'); // Latest p-queue no longer supports CommonJS modules +import type { QueueAddOptions } from 'p-queue'; import { HttpError } from '../errors.js'; @@ -12,7 +13,7 @@ function isConcurrencyLimitError(err: unknown): err is HttpError { } export class ConcurrencyLimiter { - private _queue?: PQueue; + private _queue?: typeof PQueue; private _limiterPromise?: ReturnType; constructor(private readonly limiter: Limiter) {} From 3c0b66e720173ee4f8905673f9bb6dd7975e8dde Mon Sep 17 00:00:00 2001 From: Tomas Pilar Date: Thu, 21 Mar 2024 09:11:39 +0100 Subject: [PATCH 2/4] fixup! Signed-off-by: Tomas Pilar --- package.json | 4 +- src/utils/concurrency.ts | 5 +- yarn.lock | 401 +++++++++++++++++++++++++++------------ 3 files changed, 280 insertions(+), 130 deletions(-) diff --git a/package.json b/package.json index b9edbee..82f6f3b 100644 --- a/package.json +++ b/package.json @@ -93,16 +93,16 @@ "pinst": "^3.0.0", "prettier": "^3.0.3", "ts-node": "^10.9.1", - "tsup": "^7.2.0", + "tsup": "^8.0.2", "typescript": "^5.3.3", "vitest": "^0.34.6" }, "dependencies": { "@ai-zen/node-fetch-event-source": "^2.1.2", + "@esm2cjs/p-queue": "^7.3.0", "fetch-retry": "^5.0.6", "http-status-codes": "^2.3.0", "openapi-fetch": "^0.8.2", - "p-queue": "^8.0.1", "yaml": "^2.3.3" }, "lint-staged": { diff --git a/src/utils/concurrency.ts b/src/utils/concurrency.ts index 733013b..1ec5e89 100644 --- a/src/utils/concurrency.ts +++ b/src/utils/concurrency.ts @@ -1,5 +1,4 @@ -const { default: PQueue } = await import('p-queue'); // Latest p-queue no longer supports CommonJS modules -import type { QueueAddOptions } from 'p-queue'; +import PQueue, { QueueAddOptions } from '@esm2cjs/p-queue'; import { HttpError } from '../errors.js'; @@ -13,7 +12,7 @@ function isConcurrencyLimitError(err: unknown): err is HttpError { } export class ConcurrencyLimiter { - private _queue?: typeof PQueue; + private _queue?: PQueue; private _limiterPromise?: ReturnType; constructor(private readonly limiter: Limiter) {} diff --git a/yarn.lock b/yarn.lock index 8d21f3a..6dcc8ec 100644 --- a/yarn.lock +++ b/yarn.lock @@ -271,9 +271,16 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-arm64@npm:0.18.20": - version: 0.18.20 - resolution: "@esbuild/android-arm64@npm:0.18.20" +"@esbuild/aix-ppc64@npm:0.19.12": + version: 0.19.12 + resolution: "@esbuild/aix-ppc64@npm:0.19.12" + conditions: os=aix & cpu=ppc64 + languageName: node + linkType: hard + +"@esbuild/android-arm64@npm:0.19.12": + version: 0.19.12 + resolution: "@esbuild/android-arm64@npm:0.19.12" conditions: os=android & cpu=arm64 languageName: node linkType: hard @@ -285,9 +292,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-arm@npm:0.18.20": - version: 0.18.20 - resolution: "@esbuild/android-arm@npm:0.18.20" +"@esbuild/android-arm@npm:0.19.12": + version: 0.19.12 + resolution: "@esbuild/android-arm@npm:0.19.12" conditions: os=android & cpu=arm languageName: node linkType: hard @@ -299,9 +306,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-x64@npm:0.18.20": - version: 0.18.20 - resolution: "@esbuild/android-x64@npm:0.18.20" +"@esbuild/android-x64@npm:0.19.12": + version: 0.19.12 + resolution: "@esbuild/android-x64@npm:0.19.12" conditions: os=android & cpu=x64 languageName: node linkType: hard @@ -313,9 +320,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/darwin-arm64@npm:0.18.20": - version: 0.18.20 - resolution: "@esbuild/darwin-arm64@npm:0.18.20" +"@esbuild/darwin-arm64@npm:0.19.12": + version: 0.19.12 + resolution: "@esbuild/darwin-arm64@npm:0.19.12" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard @@ -327,9 +334,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/darwin-x64@npm:0.18.20": - version: 0.18.20 - resolution: "@esbuild/darwin-x64@npm:0.18.20" +"@esbuild/darwin-x64@npm:0.19.12": + version: 0.19.12 + resolution: "@esbuild/darwin-x64@npm:0.19.12" conditions: os=darwin & cpu=x64 languageName: node linkType: hard @@ -341,9 +348,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/freebsd-arm64@npm:0.18.20": - version: 0.18.20 - resolution: "@esbuild/freebsd-arm64@npm:0.18.20" +"@esbuild/freebsd-arm64@npm:0.19.12": + version: 0.19.12 + resolution: "@esbuild/freebsd-arm64@npm:0.19.12" conditions: os=freebsd & cpu=arm64 languageName: node linkType: hard @@ -355,9 +362,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/freebsd-x64@npm:0.18.20": - version: 0.18.20 - resolution: "@esbuild/freebsd-x64@npm:0.18.20" +"@esbuild/freebsd-x64@npm:0.19.12": + version: 0.19.12 + resolution: "@esbuild/freebsd-x64@npm:0.19.12" conditions: os=freebsd & cpu=x64 languageName: node linkType: hard @@ -369,9 +376,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-arm64@npm:0.18.20": - version: 0.18.20 - resolution: "@esbuild/linux-arm64@npm:0.18.20" +"@esbuild/linux-arm64@npm:0.19.12": + version: 0.19.12 + resolution: "@esbuild/linux-arm64@npm:0.19.12" conditions: os=linux & cpu=arm64 languageName: node linkType: hard @@ -383,9 +390,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-arm@npm:0.18.20": - version: 0.18.20 - resolution: "@esbuild/linux-arm@npm:0.18.20" +"@esbuild/linux-arm@npm:0.19.12": + version: 0.19.12 + resolution: "@esbuild/linux-arm@npm:0.19.12" conditions: os=linux & cpu=arm languageName: node linkType: hard @@ -397,9 +404,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-ia32@npm:0.18.20": - version: 0.18.20 - resolution: "@esbuild/linux-ia32@npm:0.18.20" +"@esbuild/linux-ia32@npm:0.19.12": + version: 0.19.12 + resolution: "@esbuild/linux-ia32@npm:0.19.12" conditions: os=linux & cpu=ia32 languageName: node linkType: hard @@ -411,9 +418,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-loong64@npm:0.18.20": - version: 0.18.20 - resolution: "@esbuild/linux-loong64@npm:0.18.20" +"@esbuild/linux-loong64@npm:0.19.12": + version: 0.19.12 + resolution: "@esbuild/linux-loong64@npm:0.19.12" conditions: os=linux & cpu=loong64 languageName: node linkType: hard @@ -425,9 +432,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-mips64el@npm:0.18.20": - version: 0.18.20 - resolution: "@esbuild/linux-mips64el@npm:0.18.20" +"@esbuild/linux-mips64el@npm:0.19.12": + version: 0.19.12 + resolution: "@esbuild/linux-mips64el@npm:0.19.12" conditions: os=linux & cpu=mips64el languageName: node linkType: hard @@ -439,9 +446,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-ppc64@npm:0.18.20": - version: 0.18.20 - resolution: "@esbuild/linux-ppc64@npm:0.18.20" +"@esbuild/linux-ppc64@npm:0.19.12": + version: 0.19.12 + resolution: "@esbuild/linux-ppc64@npm:0.19.12" conditions: os=linux & cpu=ppc64 languageName: node linkType: hard @@ -453,9 +460,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-riscv64@npm:0.18.20": - version: 0.18.20 - resolution: "@esbuild/linux-riscv64@npm:0.18.20" +"@esbuild/linux-riscv64@npm:0.19.12": + version: 0.19.12 + resolution: "@esbuild/linux-riscv64@npm:0.19.12" conditions: os=linux & cpu=riscv64 languageName: node linkType: hard @@ -467,9 +474,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-s390x@npm:0.18.20": - version: 0.18.20 - resolution: "@esbuild/linux-s390x@npm:0.18.20" +"@esbuild/linux-s390x@npm:0.19.12": + version: 0.19.12 + resolution: "@esbuild/linux-s390x@npm:0.19.12" conditions: os=linux & cpu=s390x languageName: node linkType: hard @@ -481,9 +488,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-x64@npm:0.18.20": - version: 0.18.20 - resolution: "@esbuild/linux-x64@npm:0.18.20" +"@esbuild/linux-x64@npm:0.19.12": + version: 0.19.12 + resolution: "@esbuild/linux-x64@npm:0.19.12" conditions: os=linux & cpu=x64 languageName: node linkType: hard @@ -495,9 +502,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/netbsd-x64@npm:0.18.20": - version: 0.18.20 - resolution: "@esbuild/netbsd-x64@npm:0.18.20" +"@esbuild/netbsd-x64@npm:0.19.12": + version: 0.19.12 + resolution: "@esbuild/netbsd-x64@npm:0.19.12" conditions: os=netbsd & cpu=x64 languageName: node linkType: hard @@ -509,9 +516,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/openbsd-x64@npm:0.18.20": - version: 0.18.20 - resolution: "@esbuild/openbsd-x64@npm:0.18.20" +"@esbuild/openbsd-x64@npm:0.19.12": + version: 0.19.12 + resolution: "@esbuild/openbsd-x64@npm:0.19.12" conditions: os=openbsd & cpu=x64 languageName: node linkType: hard @@ -523,9 +530,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/sunos-x64@npm:0.18.20": - version: 0.18.20 - resolution: "@esbuild/sunos-x64@npm:0.18.20" +"@esbuild/sunos-x64@npm:0.19.12": + version: 0.19.12 + resolution: "@esbuild/sunos-x64@npm:0.19.12" conditions: os=sunos & cpu=x64 languageName: node linkType: hard @@ -537,9 +544,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-arm64@npm:0.18.20": - version: 0.18.20 - resolution: "@esbuild/win32-arm64@npm:0.18.20" +"@esbuild/win32-arm64@npm:0.19.12": + version: 0.19.12 + resolution: "@esbuild/win32-arm64@npm:0.19.12" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard @@ -551,9 +558,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-ia32@npm:0.18.20": - version: 0.18.20 - resolution: "@esbuild/win32-ia32@npm:0.18.20" +"@esbuild/win32-ia32@npm:0.19.12": + version: 0.19.12 + resolution: "@esbuild/win32-ia32@npm:0.19.12" conditions: os=win32 & cpu=ia32 languageName: node linkType: hard @@ -565,9 +572,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-x64@npm:0.18.20": - version: 0.18.20 - resolution: "@esbuild/win32-x64@npm:0.18.20" +"@esbuild/win32-x64@npm:0.19.12": + version: 0.19.12 + resolution: "@esbuild/win32-x64@npm:0.19.12" conditions: os=win32 & cpu=x64 languageName: node linkType: hard @@ -621,6 +628,23 @@ __metadata: languageName: node linkType: hard +"@esm2cjs/p-queue@npm:^7.3.0": + version: 7.3.0 + resolution: "@esm2cjs/p-queue@npm:7.3.0" + dependencies: + "@esm2cjs/p-timeout": ^5.0.2 + eventemitter3: ^4.0.7 + checksum: fe9c5433e4ae3d3a417e52a5752591ca644663f7b5b7e025fe3e7e11667713ee4bee26a69f7b57d06c70cfdcc39a27b81bdf86f88416fad94e9c54f9ff5fad66 + languageName: node + linkType: hard + +"@esm2cjs/p-timeout@npm:^5.0.2": + version: 5.1.0 + resolution: "@esm2cjs/p-timeout@npm:5.1.0" + checksum: e586799a8232a90b5bad38b6b72b0da1c4da15efac1719662afc6d4ec575fa53c49a0204263612ae2d5012dd62df7fd9e577e5b7b65b183e1b9de52b5783303d + languageName: node + linkType: hard + "@fastify/busboy@npm:^2.0.0": version: 2.0.0 resolution: "@fastify/busboy@npm:2.0.0" @@ -667,6 +691,7 @@ __metadata: "@ai-zen/node-fetch-event-source": ^2.1.2 "@commitlint/cli": ^18.0.0 "@commitlint/config-conventional": ^18.0.0 + "@esm2cjs/p-queue": ^7.3.0 "@langchain/core": ^0.1.0 "@types/lodash": ^4.14.200 "@types/node": ^20.11.19 @@ -688,11 +713,10 @@ __metadata: msw: ^1.3.2 openapi-fetch: ^0.8.2 openapi-typescript: ^6.7.4 - p-queue: ^8.0.1 pinst: ^3.0.0 prettier: ^3.0.3 ts-node: ^10.9.1 - tsup: ^7.2.0 + tsup: ^8.0.2 typescript: ^5.3.3 vitest: ^0.34.6 yaml: ^2.3.3 @@ -882,6 +906,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-android-arm-eabi@npm:4.13.0": + version: 4.13.0 + resolution: "@rollup/rollup-android-arm-eabi@npm:4.13.0" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + "@rollup/rollup-android-arm64@npm:4.1.4": version: 4.1.4 resolution: "@rollup/rollup-android-arm64@npm:4.1.4" @@ -889,6 +920,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-android-arm64@npm:4.13.0": + version: 4.13.0 + resolution: "@rollup/rollup-android-arm64@npm:4.13.0" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + "@rollup/rollup-darwin-arm64@npm:4.1.4": version: 4.1.4 resolution: "@rollup/rollup-darwin-arm64@npm:4.1.4" @@ -896,6 +934,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-darwin-arm64@npm:4.13.0": + version: 4.13.0 + resolution: "@rollup/rollup-darwin-arm64@npm:4.13.0" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + "@rollup/rollup-darwin-x64@npm:4.1.4": version: 4.1.4 resolution: "@rollup/rollup-darwin-x64@npm:4.1.4" @@ -903,6 +948,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-darwin-x64@npm:4.13.0": + version: 4.13.0 + resolution: "@rollup/rollup-darwin-x64@npm:4.13.0" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + "@rollup/rollup-linux-arm-gnueabihf@npm:4.1.4": version: 4.1.4 resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.1.4" @@ -910,6 +962,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-linux-arm-gnueabihf@npm:4.13.0": + version: 4.13.0 + resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.13.0" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + "@rollup/rollup-linux-arm64-gnu@npm:4.1.4": version: 4.1.4 resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.1.4" @@ -917,6 +976,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-linux-arm64-gnu@npm:4.13.0": + version: 4.13.0 + resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.13.0" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + "@rollup/rollup-linux-arm64-musl@npm:4.1.4": version: 4.1.4 resolution: "@rollup/rollup-linux-arm64-musl@npm:4.1.4" @@ -924,6 +990,20 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-linux-arm64-musl@npm:4.13.0": + version: 4.13.0 + resolution: "@rollup/rollup-linux-arm64-musl@npm:4.13.0" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-linux-riscv64-gnu@npm:4.13.0": + version: 4.13.0 + resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.13.0" + conditions: os=linux & cpu=riscv64 & libc=glibc + languageName: node + linkType: hard + "@rollup/rollup-linux-x64-gnu@npm:4.1.4": version: 4.1.4 resolution: "@rollup/rollup-linux-x64-gnu@npm:4.1.4" @@ -931,6 +1011,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-linux-x64-gnu@npm:4.13.0": + version: 4.13.0 + resolution: "@rollup/rollup-linux-x64-gnu@npm:4.13.0" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + "@rollup/rollup-linux-x64-musl@npm:4.1.4": version: 4.1.4 resolution: "@rollup/rollup-linux-x64-musl@npm:4.1.4" @@ -938,6 +1025,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-linux-x64-musl@npm:4.13.0": + version: 4.13.0 + resolution: "@rollup/rollup-linux-x64-musl@npm:4.13.0" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + "@rollup/rollup-win32-arm64-msvc@npm:4.1.4": version: 4.1.4 resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.1.4" @@ -945,6 +1039,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-win32-arm64-msvc@npm:4.13.0": + version: 4.13.0 + resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.13.0" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + "@rollup/rollup-win32-ia32-msvc@npm:4.1.4": version: 4.1.4 resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.1.4" @@ -952,6 +1053,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-win32-ia32-msvc@npm:4.13.0": + version: 4.13.0 + resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.13.0" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + "@rollup/rollup-win32-x64-msvc@npm:4.1.4": version: 4.1.4 resolution: "@rollup/rollup-win32-x64-msvc@npm:4.1.4" @@ -959,6 +1067,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-win32-x64-msvc@npm:4.13.0": + version: 4.13.0 + resolution: "@rollup/rollup-win32-x64-msvc@npm:4.13.0" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + "@sinclair/typebox@npm:^0.25.16": version: 0.25.24 resolution: "@sinclair/typebox@npm:0.25.24" @@ -1033,6 +1148,13 @@ __metadata: languageName: node linkType: hard +"@types/estree@npm:1.0.5": + version: 1.0.5 + resolution: "@types/estree@npm:1.0.5" + checksum: dd8b5bed28e6213b7acd0fb665a84e693554d850b0df423ac8076cc3ad5823a6bc26b0251d080bdc545af83179ede51dd3f6fa78cad2c46ed1f29624ddf3e41a + languageName: node + linkType: hard + "@types/istanbul-lib-coverage@npm:^2.0.1": version: 2.0.4 resolution: "@types/istanbul-lib-coverage@npm:2.0.4" @@ -2569,33 +2691,36 @@ __metadata: languageName: node linkType: hard -"esbuild@npm:^0.18.2": - version: 0.18.20 - resolution: "esbuild@npm:0.18.20" - dependencies: - "@esbuild/android-arm": 0.18.20 - "@esbuild/android-arm64": 0.18.20 - "@esbuild/android-x64": 0.18.20 - "@esbuild/darwin-arm64": 0.18.20 - "@esbuild/darwin-x64": 0.18.20 - "@esbuild/freebsd-arm64": 0.18.20 - "@esbuild/freebsd-x64": 0.18.20 - "@esbuild/linux-arm": 0.18.20 - "@esbuild/linux-arm64": 0.18.20 - "@esbuild/linux-ia32": 0.18.20 - "@esbuild/linux-loong64": 0.18.20 - "@esbuild/linux-mips64el": 0.18.20 - "@esbuild/linux-ppc64": 0.18.20 - "@esbuild/linux-riscv64": 0.18.20 - "@esbuild/linux-s390x": 0.18.20 - "@esbuild/linux-x64": 0.18.20 - "@esbuild/netbsd-x64": 0.18.20 - "@esbuild/openbsd-x64": 0.18.20 - "@esbuild/sunos-x64": 0.18.20 - "@esbuild/win32-arm64": 0.18.20 - "@esbuild/win32-ia32": 0.18.20 - "@esbuild/win32-x64": 0.18.20 +"esbuild@npm:^0.19.2": + version: 0.19.12 + resolution: "esbuild@npm:0.19.12" + dependencies: + "@esbuild/aix-ppc64": 0.19.12 + "@esbuild/android-arm": 0.19.12 + "@esbuild/android-arm64": 0.19.12 + "@esbuild/android-x64": 0.19.12 + "@esbuild/darwin-arm64": 0.19.12 + "@esbuild/darwin-x64": 0.19.12 + "@esbuild/freebsd-arm64": 0.19.12 + "@esbuild/freebsd-x64": 0.19.12 + "@esbuild/linux-arm": 0.19.12 + "@esbuild/linux-arm64": 0.19.12 + "@esbuild/linux-ia32": 0.19.12 + "@esbuild/linux-loong64": 0.19.12 + "@esbuild/linux-mips64el": 0.19.12 + "@esbuild/linux-ppc64": 0.19.12 + "@esbuild/linux-riscv64": 0.19.12 + "@esbuild/linux-s390x": 0.19.12 + "@esbuild/linux-x64": 0.19.12 + "@esbuild/netbsd-x64": 0.19.12 + "@esbuild/openbsd-x64": 0.19.12 + "@esbuild/sunos-x64": 0.19.12 + "@esbuild/win32-arm64": 0.19.12 + "@esbuild/win32-ia32": 0.19.12 + "@esbuild/win32-x64": 0.19.12 dependenciesMeta: + "@esbuild/aix-ppc64": + optional: true "@esbuild/android-arm": optional: true "@esbuild/android-arm64": @@ -2642,7 +2767,7 @@ __metadata: optional: true bin: esbuild: bin/esbuild - checksum: 5d253614e50cdb6ec22095afd0c414f15688e7278a7eb4f3720a6dd1306b0909cf431e7b9437a90d065a31b1c57be60130f63fe3e8d0083b588571f31ee6ec7b + checksum: 2936e29107b43e65a775b78b7bc66ddd7d76febd73840ac7e825fb22b65029422ff51038a08d19b05154f543584bd3afe7d1ef1c63900429475b17fbe61cb61f languageName: node linkType: hard @@ -2938,7 +3063,7 @@ __metadata: languageName: node linkType: hard -"eventemitter3@npm:^4.0.4": +"eventemitter3@npm:^4.0.4, eventemitter3@npm:^4.0.7": version: 4.0.7 resolution: "eventemitter3@npm:4.0.7" checksum: 1875311c42fcfe9c707b2712c32664a245629b42bb0a5a84439762dd0fd637fc54d078155ea83c2af9e0323c9ac13687e03cfba79b03af9f40c89b4960099374 @@ -5326,16 +5451,6 @@ __metadata: languageName: node linkType: hard -"p-queue@npm:^8.0.1": - version: 8.0.1 - resolution: "p-queue@npm:8.0.1" - dependencies: - eventemitter3: ^5.0.1 - p-timeout: ^6.1.2 - checksum: 84a27a5b1faf2dcc96b8c0e423c34b5984b241acc07353d3cc6d8d3d1dadefb250b4ec84ce278cb1c946466999c6bf2a36ff718a75810bad8e11c7ca47ce80f5 - languageName: node - linkType: hard - "p-retry@npm:4": version: 4.6.2 resolution: "p-retry@npm:4.6.2" @@ -5355,13 +5470,6 @@ __metadata: languageName: node linkType: hard -"p-timeout@npm:^6.1.2": - version: 6.1.2 - resolution: "p-timeout@npm:6.1.2" - checksum: 887b805eb72c217dbc3c55a60a7f3b89a46cab14f04af62224f253ec84716cbd0880758be13b35444a4fa12d64d37d4c8a300f0b12a57c004d289f0a574cfe91 - languageName: node - linkType: hard - "p-try@npm:^2.0.0": version: 2.2.0 resolution: "p-try@npm:2.2.0" @@ -5830,17 +5938,57 @@ __metadata: languageName: node linkType: hard -"rollup@npm:^3.2.5": - version: 3.20.0 - resolution: "rollup@npm:3.20.0" - dependencies: +"rollup@npm:^4.0.2": + version: 4.13.0 + resolution: "rollup@npm:4.13.0" + dependencies: + "@rollup/rollup-android-arm-eabi": 4.13.0 + "@rollup/rollup-android-arm64": 4.13.0 + "@rollup/rollup-darwin-arm64": 4.13.0 + "@rollup/rollup-darwin-x64": 4.13.0 + "@rollup/rollup-linux-arm-gnueabihf": 4.13.0 + "@rollup/rollup-linux-arm64-gnu": 4.13.0 + "@rollup/rollup-linux-arm64-musl": 4.13.0 + "@rollup/rollup-linux-riscv64-gnu": 4.13.0 + "@rollup/rollup-linux-x64-gnu": 4.13.0 + "@rollup/rollup-linux-x64-musl": 4.13.0 + "@rollup/rollup-win32-arm64-msvc": 4.13.0 + "@rollup/rollup-win32-ia32-msvc": 4.13.0 + "@rollup/rollup-win32-x64-msvc": 4.13.0 + "@types/estree": 1.0.5 fsevents: ~2.3.2 dependenciesMeta: + "@rollup/rollup-android-arm-eabi": + optional: true + "@rollup/rollup-android-arm64": + optional: true + "@rollup/rollup-darwin-arm64": + optional: true + "@rollup/rollup-darwin-x64": + optional: true + "@rollup/rollup-linux-arm-gnueabihf": + optional: true + "@rollup/rollup-linux-arm64-gnu": + optional: true + "@rollup/rollup-linux-arm64-musl": + optional: true + "@rollup/rollup-linux-riscv64-gnu": + optional: true + "@rollup/rollup-linux-x64-gnu": + optional: true + "@rollup/rollup-linux-x64-musl": + optional: true + "@rollup/rollup-win32-arm64-msvc": + optional: true + "@rollup/rollup-win32-ia32-msvc": + optional: true + "@rollup/rollup-win32-x64-msvc": + optional: true fsevents: optional: true bin: rollup: dist/bin/rollup - checksum: ebf75f48eb81234f8233b4ed145b00841cefba26802d4f069f161247ffba085ca5bb165cc3cd662d9c36cfc135a67660dfff9088d3da2d2c6a70addc15f3233a + checksum: c2c35bee0a71ceb0df37c170c2b73a500bf9ebdffb747487d77831348603d50dcfcdd9d0a937362d3a87edda559c9d1e017fba2d75f05f0c594634d9b8dde9a4 languageName: node linkType: hard @@ -6655,29 +6803,32 @@ __metadata: languageName: node linkType: hard -"tsup@npm:^7.2.0": - version: 7.2.0 - resolution: "tsup@npm:7.2.0" +"tsup@npm:^8.0.2": + version: 8.0.2 + resolution: "tsup@npm:8.0.2" dependencies: bundle-require: ^4.0.0 cac: ^6.7.12 chokidar: ^3.5.1 debug: ^4.3.1 - esbuild: ^0.18.2 + esbuild: ^0.19.2 execa: ^5.0.0 globby: ^11.0.3 joycon: ^3.0.1 postcss-load-config: ^4.0.1 resolve-from: ^5.0.0 - rollup: ^3.2.5 + rollup: ^4.0.2 source-map: 0.8.0-beta.0 sucrase: ^3.20.3 tree-kill: ^1.2.2 peerDependencies: + "@microsoft/api-extractor": ^7.36.0 "@swc/core": ^1 postcss: ^8.4.12 - typescript: ">=4.1.0" + typescript: ">=4.5.0" peerDependenciesMeta: + "@microsoft/api-extractor": + optional: true "@swc/core": optional: true postcss: @@ -6687,7 +6838,7 @@ __metadata: bin: tsup: dist/cli-default.js tsup-node: dist/cli-node.js - checksum: 94feae12b0a0dd0eaa3ed1c412d2bc51d7491ff91abc61e4198495dcb612a848a9fd346fbb668a63b98534fc6c2569ab3aba7ea95ad8db5eaf29c4a4885c2313 + checksum: ebd0c662efdc2a04e80251aa11832d3def9cf3bf120c579975af6d50183fa0397d07d5bcee0688258a91c154a3c5db72ee4c5dca367b58552d225bc8a89d67d0 languageName: node linkType: hard From a312323ba18b90f9a83ee14e9a8133a16a4a0adb Mon Sep 17 00:00:00 2001 From: Tomas Dvorak Date: Thu, 21 Mar 2024 09:55:40 +0100 Subject: [PATCH 3/4] build: enable splitting in tsup to fix cjs default exports Signed-off-by: Tomas Dvorak --- tsup.config.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/tsup.config.ts b/tsup.config.ts index 540a9a4..b709cf5 100644 --- a/tsup.config.ts +++ b/tsup.config.ts @@ -16,6 +16,7 @@ export default defineConfig({ format: ['esm', 'cjs'], platform: 'node', shims: true, + splitting: true, env: { NODE_ENV: 'production', GENAI_DEFAULT_ENDPOINT: GENAI_DEFAULT_ENDPOINT, From 612a06ea1c689e9c029d172d64bbff9d6cdae069 Mon Sep 17 00:00:00 2001 From: Tomas Dvorak Date: Thu, 21 Mar 2024 10:20:21 +0100 Subject: [PATCH 4/4] build: pqueue dynamic import Signed-off-by: Tomas Dvorak --- package.json | 2 +- src/utils/concurrency.ts | 11 ++++++++--- tsconfig.json | 2 +- yarn.lock | 38 +++++++++++++++++++------------------- 4 files changed, 29 insertions(+), 24 deletions(-) diff --git a/package.json b/package.json index aae8237..6b81392 100644 --- a/package.json +++ b/package.json @@ -93,10 +93,10 @@ }, "dependencies": { "@ai-zen/node-fetch-event-source": "^2.1.2", - "@esm2cjs/p-queue": "^7.3.0", "fetch-retry": "^5.0.6", "http-status-codes": "^2.3.0", "openapi-fetch": "^0.8.2", + "p-queue": "^8.0.1", "yaml": "^2.3.3" }, "lint-staged": { diff --git a/src/utils/concurrency.ts b/src/utils/concurrency.ts index 1ec5e89..8ecb52f 100644 --- a/src/utils/concurrency.ts +++ b/src/utils/concurrency.ts @@ -1,4 +1,4 @@ -import PQueue, { QueueAddOptions } from '@esm2cjs/p-queue'; +import type { default as PQueueType, QueueAddOptions } from 'p-queue'; import { HttpError } from '../errors.js'; @@ -11,8 +11,13 @@ function isConcurrencyLimitError(err: unknown): err is HttpError { ); } +const PQueue = (async () => { + const lib = await import('p-queue'); + return lib.default; +})(); + export class ConcurrencyLimiter { - private _queue?: PQueue; + private _queue?: PQueueType; private _limiterPromise?: ReturnType; constructor(private readonly limiter: Limiter) {} @@ -42,6 +47,6 @@ export class ConcurrencyLimiter { this._limiterPromise = this.limiter(); const { limit } = await this._limiterPromise; - this._queue = new PQueue({ concurrency: limit }); + this._queue = new (await PQueue)({ concurrency: limit }); } } diff --git a/tsconfig.json b/tsconfig.json index 27002be..b0ce2d9 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -29,4 +29,4 @@ "ts-node": { "esm": true } -} \ No newline at end of file +} diff --git a/yarn.lock b/yarn.lock index 6dcc8ec..1ad538f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -628,23 +628,6 @@ __metadata: languageName: node linkType: hard -"@esm2cjs/p-queue@npm:^7.3.0": - version: 7.3.0 - resolution: "@esm2cjs/p-queue@npm:7.3.0" - dependencies: - "@esm2cjs/p-timeout": ^5.0.2 - eventemitter3: ^4.0.7 - checksum: fe9c5433e4ae3d3a417e52a5752591ca644663f7b5b7e025fe3e7e11667713ee4bee26a69f7b57d06c70cfdcc39a27b81bdf86f88416fad94e9c54f9ff5fad66 - languageName: node - linkType: hard - -"@esm2cjs/p-timeout@npm:^5.0.2": - version: 5.1.0 - resolution: "@esm2cjs/p-timeout@npm:5.1.0" - checksum: e586799a8232a90b5bad38b6b72b0da1c4da15efac1719662afc6d4ec575fa53c49a0204263612ae2d5012dd62df7fd9e577e5b7b65b183e1b9de52b5783303d - languageName: node - linkType: hard - "@fastify/busboy@npm:^2.0.0": version: 2.0.0 resolution: "@fastify/busboy@npm:2.0.0" @@ -691,7 +674,6 @@ __metadata: "@ai-zen/node-fetch-event-source": ^2.1.2 "@commitlint/cli": ^18.0.0 "@commitlint/config-conventional": ^18.0.0 - "@esm2cjs/p-queue": ^7.3.0 "@langchain/core": ^0.1.0 "@types/lodash": ^4.14.200 "@types/node": ^20.11.19 @@ -713,6 +695,7 @@ __metadata: msw: ^1.3.2 openapi-fetch: ^0.8.2 openapi-typescript: ^6.7.4 + p-queue: ^8.0.1 pinst: ^3.0.0 prettier: ^3.0.3 ts-node: ^10.9.1 @@ -3063,7 +3046,7 @@ __metadata: languageName: node linkType: hard -"eventemitter3@npm:^4.0.4, eventemitter3@npm:^4.0.7": +"eventemitter3@npm:^4.0.4": version: 4.0.7 resolution: "eventemitter3@npm:4.0.7" checksum: 1875311c42fcfe9c707b2712c32664a245629b42bb0a5a84439762dd0fd637fc54d078155ea83c2af9e0323c9ac13687e03cfba79b03af9f40c89b4960099374 @@ -5451,6 +5434,16 @@ __metadata: languageName: node linkType: hard +"p-queue@npm:^8.0.1": + version: 8.0.1 + resolution: "p-queue@npm:8.0.1" + dependencies: + eventemitter3: ^5.0.1 + p-timeout: ^6.1.2 + checksum: 84a27a5b1faf2dcc96b8c0e423c34b5984b241acc07353d3cc6d8d3d1dadefb250b4ec84ce278cb1c946466999c6bf2a36ff718a75810bad8e11c7ca47ce80f5 + languageName: node + linkType: hard + "p-retry@npm:4": version: 4.6.2 resolution: "p-retry@npm:4.6.2" @@ -5470,6 +5463,13 @@ __metadata: languageName: node linkType: hard +"p-timeout@npm:^6.1.2": + version: 6.1.2 + resolution: "p-timeout@npm:6.1.2" + checksum: 887b805eb72c217dbc3c55a60a7f3b89a46cab14f04af62224f253ec84716cbd0880758be13b35444a4fa12d64d37d4c8a300f0b12a57c004d289f0a574cfe91 + languageName: node + linkType: hard + "p-try@npm:^2.0.0": version: 2.2.0 resolution: "p-try@npm:2.2.0"