diff --git a/.changeset/fix-code-context-isolation.md b/.changeset/fix-code-context-isolation.md deleted file mode 100644 index bd212d99..00000000 --- a/.changeset/fix-code-context-isolation.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@cloudflare/sandbox': patch ---- - -Fix code context isolation bug where contexts leaked state after 10 executions. Each code context now gets a dedicated executor process from creation to deletion, ensuring complete isolation between contexts. Removed maximum pool size limits to allow organic scaling. diff --git a/.changeset/fix-executor-mutex.md b/.changeset/fix-executor-mutex.md deleted file mode 100644 index bfc7171f..00000000 --- a/.changeset/fix-executor-mutex.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@cloudflare/sandbox': patch ---- - -Fix executor mutex race condition and memory leak in code interpreter diff --git a/.changeset/remove-output-size-limit.md b/.changeset/remove-output-size-limit.md deleted file mode 100644 index 2568c6fb..00000000 --- a/.changeset/remove-output-size-limit.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -'@cloudflare/sandbox': patch ---- - -Remove output size limit for command execution - -The 10MB output size limit that was intended to prevent OOM attacks has been removed. This limit was too restrictive for legitimate use cases like reading large media files. Developers are now trusted to manage their own resource usage and handle potential OOM situations. diff --git a/.changeset/twenty-doors-learn.md b/.changeset/twenty-doors-learn.md deleted file mode 100644 index f64fbc5f..00000000 --- a/.changeset/twenty-doors-learn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@cloudflare/sandbox": patch ---- - -close stream before releasing lock diff --git a/examples/claude-code/Dockerfile b/examples/claude-code/Dockerfile index f6ed7b01..ba760a71 100644 --- a/examples/claude-code/Dockerfile +++ b/examples/claude-code/Dockerfile @@ -1,4 +1,4 @@ -FROM docker.io/cloudflare/sandbox:0.5.5 +FROM docker.io/cloudflare/sandbox:0.5.6 RUN npm install -g @anthropic-ai/claude-code ENV COMMAND_TIMEOUT_MS=300000 EXPOSE 3000 diff --git a/examples/code-interpreter/Dockerfile b/examples/code-interpreter/Dockerfile index 7c9640f6..3545cf61 100644 --- a/examples/code-interpreter/Dockerfile +++ b/examples/code-interpreter/Dockerfile @@ -1 +1 @@ -FROM docker.io/cloudflare/sandbox:0.5.5 +FROM docker.io/cloudflare/sandbox:0.5.6 diff --git a/examples/minimal/Dockerfile b/examples/minimal/Dockerfile index 90a4b2aa..0ecf0fd0 100644 --- a/examples/minimal/Dockerfile +++ b/examples/minimal/Dockerfile @@ -1,4 +1,4 @@ -FROM docker.io/cloudflare/sandbox:0.5.5 +FROM docker.io/cloudflare/sandbox:0.5.6 # Required during local development to access exposed ports EXPOSE 8080 diff --git a/examples/openai-agents/Dockerfile b/examples/openai-agents/Dockerfile index c0eef26f..b38bcf05 100644 --- a/examples/openai-agents/Dockerfile +++ b/examples/openai-agents/Dockerfile @@ -1,4 +1,4 @@ -FROM docker.io/cloudflare/sandbox:0.5.5 +FROM docker.io/cloudflare/sandbox:0.5.6 # Required during local development to access exposed ports EXPOSE 8080 diff --git a/examples/typescript-validator/Dockerfile b/examples/typescript-validator/Dockerfile index 4993b324..569f7128 100644 --- a/examples/typescript-validator/Dockerfile +++ b/examples/typescript-validator/Dockerfile @@ -1,5 +1,5 @@ # Use Cloudflare sandbox as base -FROM docker.io/cloudflare/sandbox:0.5.5 +FROM docker.io/cloudflare/sandbox:0.5.6 # Install esbuild for TypeScript bundling RUN npm install -g esbuild diff --git a/package-lock.json b/package-lock.json index 44e4d01d..841afc45 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13405,7 +13405,7 @@ }, "packages/sandbox": { "name": "@cloudflare/sandbox", - "version": "0.5.5", + "version": "0.5.6", "license": "Apache-2.0", "dependencies": { "@cloudflare/containers": "^0.0.30" diff --git a/packages/sandbox/CHANGELOG.md b/packages/sandbox/CHANGELOG.md index 74970473..550e9f20 100644 --- a/packages/sandbox/CHANGELOG.md +++ b/packages/sandbox/CHANGELOG.md @@ -1,5 +1,19 @@ # @cloudflare/sandbox +## 0.5.6 + +### Patch Changes + +- [#249](https://github.com/cloudflare/sandbox-sdk/pull/249) [`e69dce5`](https://github.com/cloudflare/sandbox-sdk/commit/e69dce54e76b5e0597e0f4ebb798c933543349a7) Thanks [@ghostwriternr](https://github.com/ghostwriternr)! - Fix code context isolation bug where contexts leaked state after 10 executions. Each code context now gets a dedicated executor process from creation to deletion, ensuring complete isolation between contexts. Removed maximum pool size limits to allow organic scaling. + +- [#258](https://github.com/cloudflare/sandbox-sdk/pull/258) [`34bfb81`](https://github.com/cloudflare/sandbox-sdk/commit/34bfb81e7d7f96d6e2f62bb43330a6e675c2c54c) Thanks [@ghostwriternr](https://github.com/ghostwriternr)! - Fix executor mutex race condition and memory leak in code interpreter + +- [#256](https://github.com/cloudflare/sandbox-sdk/pull/256) [`088ee5f`](https://github.com/cloudflare/sandbox-sdk/commit/088ee5fceae50f2338011b5c7560e056bdf6e48a) Thanks [@ghostwriternr](https://github.com/ghostwriternr)! - Remove output size limit for command execution + + The 10MB output size limit that was intended to prevent OOM attacks has been removed. This limit was too restrictive for legitimate use cases like reading large media files. Developers are now trusted to manage their own resource usage and handle potential OOM situations. + +- [#254](https://github.com/cloudflare/sandbox-sdk/pull/254) [`8728890`](https://github.com/cloudflare/sandbox-sdk/commit/872889064f7ce59d49bc12bdf151df94cfe1efe4) Thanks [@deathbyknowledge](https://github.com/deathbyknowledge)! - close stream before releasing lock + ## 0.5.5 ### Patch Changes diff --git a/packages/sandbox/package.json b/packages/sandbox/package.json index 1ff98e37..96c4fba8 100644 --- a/packages/sandbox/package.json +++ b/packages/sandbox/package.json @@ -1,6 +1,6 @@ { "name": "@cloudflare/sandbox", - "version": "0.5.5", + "version": "0.5.6", "repository": { "type": "git", "url": "https://github.com/cloudflare/sandbox-sdk" diff --git a/packages/sandbox/src/version.ts b/packages/sandbox/src/version.ts index 520329a8..7cd5278b 100644 --- a/packages/sandbox/src/version.ts +++ b/packages/sandbox/src/version.ts @@ -3,4 +3,4 @@ * This file is auto-updated by .github/changeset-version.ts during releases * DO NOT EDIT MANUALLY - Changes will be overwritten on the next version bump */ -export const SDK_VERSION = '0.5.5'; +export const SDK_VERSION = '0.5.6'; diff --git a/tests/e2e/test-worker/Dockerfile b/tests/e2e/test-worker/Dockerfile index ef5a2803..41998903 100644 --- a/tests/e2e/test-worker/Dockerfile +++ b/tests/e2e/test-worker/Dockerfile @@ -1,5 +1,5 @@ # Integration test Dockerfile -FROM docker.io/cloudflare/sandbox-test:0.5.5 +FROM docker.io/cloudflare/sandbox-test:0.5.6 # Expose ports used for testing EXPOSE 8080 diff --git a/tests/integration/Dockerfile b/tests/integration/Dockerfile index eabfa87a..6774d180 100644 --- a/tests/integration/Dockerfile +++ b/tests/integration/Dockerfile @@ -1,8 +1,8 @@ # This image is unique to this repo, and you'll never need it. # Whenever you're integrating with sandbox SDK in your own project, # you should use the official image instead: -# FROM docker.io/cloudflare/sandbox:0.5.5 -FROM cloudflare/sandbox-test:0.5.5 +# FROM docker.io/cloudflare/sandbox:0.5.6 +FROM cloudflare/sandbox-test:0.5.6 # Expose the ports you want to expose EXPOSE 8080