diff --git a/.changeset/exec-session.md b/.changeset/exec-session.md deleted file mode 100644 index dbcec66a..00000000 --- a/.changeset/exec-session.md +++ /dev/null @@ -1,23 +0,0 @@ ---- -"@upstash/box": patch ---- - -Add `box.exec.session()` — a live, interactive command session over a WebSocket. - -Unlike `exec.command` / `exec.stream`, which run a command and hand back its -result, a session returns a handle to a *running* process: - -- `argv` runs a program directly (no shell); `cmd` runs one via `bash -lc`. -- `write()` sends stdin, `endStdin()` closes it so a command reading to EOF can - finish, and `onStdout` / `onStderr` receive output as it arrives (separate - streams unless `tty` is set). -- `tty` allocates a real PTY sized by `rows`/`cols`, with `resize()` for later - changes — enough for interactive programs and terminal UIs. -- `kill(signal)` sends an allowlisted signal; `terminate(graceMs)` asks the - server for SIGTERM then SIGKILL after the grace. -- `wait()` resolves with the exit code; `close()` hangs up, which also stops the - process. - -Node-only: authentication uses a request header, which browsers cannot set on a -WebSocket handshake. `ws` moves from a dev dependency to a runtime dependency; -the public types stay free of `@types/ws`. diff --git a/.changeset/file-metadata-ops.md b/.changeset/file-metadata-ops.md deleted file mode 100644 index 7600885e..00000000 --- a/.changeset/file-metadata-ops.md +++ /dev/null @@ -1,12 +0,0 @@ ---- -"@upstash/box": patch ---- - -Add filesystem metadata operations to `box.files`: - -- `stat(path, { follow })` — type (file/directory/symlink/other), size, mtime, - inode, and an opaque `version` token for optimistic-concurrency guards. - Defaults to lstat; `follow: true` dereferences a final symlink. -- `mkdir(path, { parents })`, `rename(from, to)`, `remove(path, { recursive })`. -- `read(path, { offset, length })` — bounded byte-range read, so a large file can - be sliced instead of pulled whole. diff --git a/packages/box-pi/CHANGELOG.md b/packages/box-pi/CHANGELOG.md index d081e016..4afb5538 100644 --- a/packages/box-pi/CHANGELOG.md +++ b/packages/box-pi/CHANGELOG.md @@ -1,5 +1,13 @@ # @upstash/box-pi +## 0.1.7 + +### Patch Changes + +- Updated dependencies [b840209] +- Updated dependencies [cc370f8] + - @upstash/box@0.7.1 + ## 0.1.6 ### Patch Changes diff --git a/packages/box-pi/package.json b/packages/box-pi/package.json index 5aeb3909..5dbc2491 100644 --- a/packages/box-pi/package.json +++ b/packages/box-pi/package.json @@ -1,6 +1,6 @@ { "name": "@upstash/box-pi", - "version": "0.1.6", + "version": "0.1.7", "description": "Pi coding agent extension that runs all tool calls inside a remote Upstash Box sandbox while the agent runs locally", "type": "module", "repository": { diff --git a/packages/cli/CHANGELOG.md b/packages/cli/CHANGELOG.md index d6d3a495..1085985b 100644 --- a/packages/cli/CHANGELOG.md +++ b/packages/cli/CHANGELOG.md @@ -1,5 +1,13 @@ # @upstash/box-cli +## 0.2.20 + +### Patch Changes + +- Updated dependencies [b840209] +- Updated dependencies [cc370f8] + - @upstash/box@0.7.1 + ## 0.2.19 ### Patch Changes diff --git a/packages/cli/package.json b/packages/cli/package.json index beb960da..676860f2 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "@upstash/box-cli", - "version": "0.2.19", + "version": "0.2.20", "description": "CLI for Upstash Box — REPL-first interface for AI coding agents", "repository": { "type": "git", diff --git a/packages/cli/src/version.ts b/packages/cli/src/version.ts index 8c2d923f..84d3bb25 100644 --- a/packages/cli/src/version.ts +++ b/packages/cli/src/version.ts @@ -1,2 +1,2 @@ // Generated from package.json by scripts/gen-version.mjs — do not edit. -export const VERSION = "0.2.19"; +export const VERSION = "0.2.20"; diff --git a/packages/sdk/CHANGELOG.md b/packages/sdk/CHANGELOG.md index 82400cd0..54a7c4f1 100644 --- a/packages/sdk/CHANGELOG.md +++ b/packages/sdk/CHANGELOG.md @@ -1,5 +1,36 @@ # @upstash/box +## 0.7.1 + +### Patch Changes + +- b840209: Add `box.exec.session()` — a live, interactive command session over a WebSocket. + + Unlike `exec.command` / `exec.stream`, which run a command and hand back its + result, a session returns a handle to a _running_ process: + - `argv` runs a program directly (no shell); `cmd` runs one via `bash -lc`. + - `write()` sends stdin, `endStdin()` closes it so a command reading to EOF can + finish, and `onStdout` / `onStderr` receive output as it arrives (separate + streams unless `tty` is set). + - `tty` allocates a real PTY sized by `rows`/`cols`, with `resize()` for later + changes — enough for interactive programs and terminal UIs. + - `kill(signal)` sends an allowlisted signal; `terminate(graceMs)` asks the + server for SIGTERM then SIGKILL after the grace. + - `wait()` resolves with the exit code; `close()` hangs up, which also stops the + process. + + Node-only: authentication uses a request header, which browsers cannot set on a + WebSocket handshake. `ws` moves from a dev dependency to a runtime dependency; + the public types stay free of `@types/ws`. + +- cc370f8: Add filesystem metadata operations to `box.files`: + - `stat(path, { follow })` — type (file/directory/symlink/other), size, mtime, + inode, and an opaque `version` token for optimistic-concurrency guards. + Defaults to lstat; `follow: true` dereferences a final symlink. + - `mkdir(path, { parents })`, `rename(from, to)`, `remove(path, { recursive })`. + - `read(path, { offset, length })` — bounded byte-range read, so a large file can + be sliced instead of pulled whole. + ## 0.7.0 ### Minor Changes diff --git a/packages/sdk/package.json b/packages/sdk/package.json index 9764e1a4..91c446a8 100644 --- a/packages/sdk/package.json +++ b/packages/sdk/package.json @@ -1,6 +1,6 @@ { "name": "@upstash/box", - "version": "0.7.0", + "version": "0.7.1", "description": "Upstash Box SDK - TypeScript client for async and parallel AI coding agents", "repository": { "type": "git", diff --git a/packages/sdk/src/version.ts b/packages/sdk/src/version.ts index 43d1966e..4c18bd30 100644 --- a/packages/sdk/src/version.ts +++ b/packages/sdk/src/version.ts @@ -1,2 +1,2 @@ // Generated from package.json by scripts/gen-version.mjs — do not edit. -export const VERSION = "0.7.0"; +export const VERSION = "0.7.1";