From d12c7fae75a9ed3346dc423d21c8c19aa65c0b3f Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 5 Feb 2026 03:52:51 +0000 Subject: [PATCH 1/2] chore(client): restructure abort controller binding --- src/client.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/client.ts b/src/client.ts index 6ace201..a0f8f1a 100644 --- a/src/client.ts +++ b/src/client.ts @@ -639,7 +639,7 @@ export class Kernel { controller: AbortController, ): Promise { const { signal, method, ...options } = init || {}; - const abort = controller.abort.bind(controller); + const abort = this._makeAbort(controller); if (signal) signal.addEventListener('abort', abort, { once: true }); const timeout = setTimeout(abort, ms); @@ -665,6 +665,7 @@ export class Kernel { return await this.fetch.call(undefined, url, fetchOptions); } finally { clearTimeout(timeout); + if (signal) signal.removeEventListener('abort', abort); } } @@ -809,6 +810,12 @@ export class Kernel { return headers.values; } + private _makeAbort(controller: AbortController) { + // note: we can't just inline this method inside `fetchWithTimeout()` because then the closure + // would capture all request options, and cause a memory leak. + return () => controller.abort(); + } + private buildBody({ options: { body, headers: rawHeaders } }: { options: FinalRequestOptions }): { bodyHeaders: HeadersLike; body: BodyInit | undefined; From 0350635ad2f7dbae71f3346ec2ecf9684a69fe20 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 5 Feb 2026 03:53:10 +0000 Subject: [PATCH 2/2] release: 0.30.1 --- .release-please-manifest.json | 2 +- CHANGELOG.md | 8 ++++++++ package.json | 2 +- src/version.ts | 2 +- 4 files changed, 11 insertions(+), 3 deletions(-) diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 716d004..df0c791 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "0.30.0" + ".": "0.30.1" } diff --git a/CHANGELOG.md b/CHANGELOG.md index e90f6ab..050f167 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## 0.30.1 (2026-02-05) + +Full Changelog: [v0.30.0...v0.30.1](https://github.com/kernel/kernel-node-sdk/compare/v0.30.0...v0.30.1) + +### Chores + +* **client:** restructure abort controller binding ([d12c7fa](https://github.com/kernel/kernel-node-sdk/commit/d12c7fae75a9ed3346dc423d21c8c19aa65c0b3f)) + ## 0.30.0 (2026-02-03) Full Changelog: [v0.29.0...v0.30.0](https://github.com/kernel/kernel-node-sdk/compare/v0.29.0...v0.30.0) diff --git a/package.json b/package.json index 13178cd..c995c0e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@onkernel/sdk", - "version": "0.30.0", + "version": "0.30.1", "description": "The official TypeScript library for the Kernel API", "author": "Kernel <>", "types": "dist/index.d.ts", diff --git a/src/version.ts b/src/version.ts index 91a9bb6..3a830f1 100644 --- a/src/version.ts +++ b/src/version.ts @@ -1 +1 @@ -export const VERSION = '0.30.0'; // x-release-please-version +export const VERSION = '0.30.1'; // x-release-please-version