docker/execd/v1.0.17

opensandbox-group/OpenSandboxdocker/execd/v1.0.17May 19, 2026by Pangjiping

AI Summary

This release focuses on improving the stability of SSE (Server-Sent Events) streaming and file upload durability. It introduces a new environment variable for pre-bootstrap configuration and fixes critical bugs preventing SDK parsers from reading output streams correctly.

Key Highlights

  • Fixed SSE response headers to commit lazily, preventing JSON injection into text/event-stream responses.
  • Improved file upload durability on virtio-fs and 9pfs filesystems.
  • Preserved blank lines in command stdout SSE streams.
  • Added `EXECD_BOOTSTRAP_PRE_SCRIPT` environment variable for pre-bootstrap environment seeding.

New Features

  • Environment variable for pre-bootstrap environment seeding

Full Release Notes

## What's New

### ✨ Features
- Add `EXECD_BOOTSTRAP_PRE_SCRIPT` for pre-bootstrap env seeding (#901)

### 🐛 Bug Fixes
- Defer SSE response headers until first event fires. Pre-execution errors in `RunCommand`/`RunCode`/`RunInSession` previously wrote JSON onto an already-committed `text/event-stream` response, breaking SDK parsers (`opensandbox: empty sse stream`). Headers now commit lazily via idempotent `setupSSEResponse`; sync errors return `application/json` cleanly (#912)
- Preserve blank lines in command stdout SSE stream. `readFromPos` no longer drops standalone newlines; `\r\n` coalesced (#902)
- Make uploaded files durable on virtio-fs / 9pfs. `/files/upload` fsyncs parent dir and retries stat after chmod, fixing intermittent "file not found" on follow-up `/command` calls (#895)

## 👥 Contributors

Thanks to these contributors ❤️

- @Pangjiping

---
- Docker Hub: opensandbox/execd:v1.0.17
- Aliyun Registry: sandbox-registry.cn-zhangjiakou.cr.aliyuncs.com/opensandbox/execd:v1.0.17