This release adds 3 notable features for engineering teams evaluating rollout.
✓ No known CVEs patched in this version
Topics
Summary
AI summaryAdd first-class Python sandbox pool support with Redis-backed distributed stores, snapshot APIs, and secure endpoint access surfaces.
Full changelog
What's New
✨ Features
-
Add first-class Python sandbox pool support for both async and sync clients. This release includes single-node in-memory pools, optional Redis-backed distributed pool stores via
opensandbox[pool-redis], lifecycle snapshots, resize/reconcile behavior, stale-idle cleanup, and documentation for operating distributed pools. Redis support is exposed fromopensandbox.pool_redisso the base SDK import path does not require Redis dependencies. by @ninan-nn in https://github.com/alibaba/OpenSandbox/pull/823 -
Add snapshot APIs to the Python SDK. Consumers can create, get, list, and delete snapshots, and can create new sandboxes from a
snapshotId; snapshot creation remains asynchronous, so callers should poll until the snapshot reachesReadyorFailed. Docker-backed servers support the full flow in this release, while unsupported runtimes may return not implemented. by @ninan-nn in https://github.com/alibaba/OpenSandbox/pull/764 -
Add secure endpoint access surfaces. Python async and sync SDKs now support
secureAccesson sandbox creation for Kubernetes gateway deployments, and expose signed endpoint retrieval for short-lived sandbox route access without sharing static tokens. Default endpoint behavior is unchanged unless secure access is explicitly requested. by @ninan-nn in https://github.com/alibaba/OpenSandbox/pull/745 and by @Pangjiping in https://github.com/alibaba/OpenSandbox/pull/787 -
Extend Python sandbox model support for new platform and storage options. The SDK now recognizes Windows platform OS values and syncs PVC auto-provisioning fields across the Python models and converters, keeping request payloads aligned with the updated lifecycle contract. by @Pangjiping in https://github.com/alibaba/OpenSandbox/pull/785 and https://github.com/alibaba/OpenSandbox/pull/749
🐛 Bug Fixes
-
Preserve API error detail from sandbox creation failures. FastAPI-style wrapped error responses are now parsed by the Python exception conversion path so callers keep the original server context instead of receiving a flattened fallback error. by @Gujiassh in https://github.com/alibaba/OpenSandbox/pull/824
-
Preserve
timeout=Nonefor manual-cleanup sandbox creation. The Python SDK now serializes an explicitNonetimeout as JSONnullinstead of omitting the field, so manual cleanup intent is retained while keeping the existing publictimeout: timedelta | NoneAPI. by @Gujiassh in https://github.com/alibaba/OpenSandbox/pull/760 -
Harden command streaming error parsing for mixed deployments. The Python SDK now tolerates
traceback: nullin SSE command-start failures while execd normalizes foreground command error payloads to match the API contract. by @Aboysky in https://github.com/alibaba/OpenSandbox/pull/701
📦 Misc
-
Regenerate Python lifecycle client code for updated snapshot routes, including snapshot creation and deletion endpoint changes. by @ninan-nn in https://github.com/alibaba/OpenSandbox/pull/840
-
Refresh Python sandbox SDK development dependencies:
pygments2.20.0 andpytest9.0.3. by @dependabot in https://github.com/alibaba/OpenSandbox/pull/671 and https://github.com/alibaba/OpenSandbox/pull/720
👥 Contributors
Thanks to these contributors ❤️
@ninan-nn
@Pangjiping
@Gujiassh
@Aboysky
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
Related context
Related tools
Beta — feedback welcome: [email protected]