Python Sandbox SDK v0.1.13
What's New
✨ Features
-
Custom sandbox creation for client-side pools —
SandboxPoolcan now use a custom sandbox creator when the default image/template based creation path is not enough. The default pool creation flow remains unchanged when no creator is configured, while custom-created sandboxes are still handed back to the pool for health checking, renewal, idle storage, and cleanup. This enables advanced SDK integrations without reimplementing pool coordination in user code. (#1125) -
Isolated execution session APIs — The Python SDK now exposes generated isolated-session and isolated-filesystem clients backed by the new execd isolation runtime. This adds client access to create/delete isolated sessions and perform scoped filesystem operations in the isolated execution path. The server-side diff/commit path is still deferred, so callers should treat commit support as not yet available. (#1008)
🐛 Bug Fixes
-
Preserve server error details in exception strings —
SandboxException.__str__()now includes parsedSandboxErrorcode/message andrequest_idwhen present, instead of collapsing failures to generic messages likeAPI error: HTTP 500. This makes Python client logs and surfaced exceptions actionable without requiring callers to inspect the raw error object separately. (#1122) -
Correct PVC cleanup semantics in SDK models and docs — The Python SDK model documentation for
deleteOnSandboxTerminationnow matches Kubernetes behavior: opted-in auto-created PVCs can be cleaned up when the sandbox is deleted, while the default remainsfalseand pre-existing or opt-out PVCs are left untouched. This is a documentation/model clarification for client users; existing sandboxes keep the old behavior unless they explicitly opt in. (#880)
📦 Misc
- Bumped the Python sandbox SDK fallback/version metadata to
0.1.13. (#1125)