sproutboat 0.30.0 → 0.31.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -10,6 +10,44 @@ maintained going forward by the `release` skill.
10
10
 
11
11
  ## Unreleased
12
12
 
13
+ ## [0.31.0] - 2026-10-23
14
+
15
+ Built on `@sproutboat/runtime` 0.30.0, `@sproutboat/toolchain` 0.15.0 and
16
+ `@sproutboat/wire` 0.19.0.
17
+
18
+ ### Added
19
+
20
+ - More of Durable Objects like workerd, from compatibility date `2026-10-29`:
21
+ - **RPC on stubs.** In a class that extends `DurableObject` from
22
+ `cloudflare:workers`, `await stub.method(args)` calls the method through
23
+ the object's input gate.
24
+ - Arguments and results are copied as structured clone does, so Date, Map,
25
+ BigInt, `Uint8Array` and the like keep their type.
26
+ - A function argument becomes a callback.
27
+ - A getter is read with `await stub.prop`.
28
+ - A throw rejects the caller with the same error.
29
+ - **Ids are 64 hex digits** and have `equals()` and `name`. `idFromString`
30
+ rejects malformed ids and ids from another namespace.
31
+ - `namespace.getByName(name)`, `namespace.jurisdiction()`, and `stub.id` and
32
+ `stub.name`.
33
+ - **`ctx.storage.sql`**: each object has its own SQLite database.
34
+ - `exec()` returns cursors with `toArray()`, `one()`, `raw()` and iteration.
35
+ - `storage.transactionSync()` and `sql.databaseSize` are available.
36
+ - Foreign keys are enforced.
37
+ - `BEGIN` and `SAVEPOINT` are refused, as on Workers.
38
+ - On the sproutd Durable Objects suite, these bring do.js from 67 to 93 of 105
39
+ and do-rpc.js from 1 to 17 of 17.
40
+
41
+ ### Changed
42
+
43
+ - From `2026-10-29`, an exception thrown inside a Durable Object rejects
44
+ `stub.fetch()` with that error, as on Workers. It used to come back as a 500
45
+ response.
46
+ - Moving an app to `2026-10-29` keeps its Durable Object data. Storage and
47
+ alarms of objects created with `idFromName` before that date move to the new
48
+ 64-hex ids on first use. `idFromString` still accepts the `name:` and `uid:`
49
+ ids that earlier dates gave out.
50
+
13
51
  ## [0.30.0] - 2026-10-23
14
52
 
15
53
  Built on `@sproutboat/runtime` 0.29.1, `@sproutboat/toolchain` 0.15.0 and
@@ -1246,7 +1284,8 @@ its own package.
1246
1284
  - Renamed the package to `sproutboat` (was `@sproutboat/cli`); dropped the
1247
1285
  `sprout` bin alias in favour of a user-defined shell alias.
1248
1286
 
1249
- [Unreleased]: https://github.com/baronunread/sproutboat-cli/compare/v0.24.0...HEAD
1287
+ [Unreleased]: https://github.com/baronunread/sproutboat-cli/compare/v0.31.0...HEAD
1288
+ [0.31.0]: https://github.com/baronunread/sproutboat-cli/compare/v0.30.0...v0.31.0
1250
1289
  [0.24.0]: https://github.com/baronunread/sproutboat-cli/compare/v0.23.0...v0.24.0
1251
1290
  [0.19.0]: https://github.com/baronunread/sproutboat-cli/compare/v0.18.0...v0.19.0
1252
1291
  [0.18.0]: https://github.com/baronunread/sproutboat-cli/compare/v0.17.0...v0.18.0
package/SURFACE.md CHANGED
@@ -3,7 +3,7 @@
3
3
  > Generated by `src/surface.test.ts` from `src/surface.ts` + the pinned
4
4
  > toolchain constants. Do not edit by hand — run `UPDATE_SURFACE=1 bun test`.
5
5
 
6
- **Package:** `sproutboat` 0.30.0
6
+ **Package:** `sproutboat` 0.31.0
7
7
 
8
8
  ## Commands
9
9
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sproutboat",
3
- "version": "0.30.0",
3
+ "version": "0.31.0",
4
4
  "description": "Wrangler-shaped CLI for Sproutboat. Deploys workers to any control plane via --api-url / SPROUTBOAT_API_URL.",
5
5
  "keywords": [
6
6
  "cli",
@@ -64,9 +64,9 @@
64
64
  "@sproutboat/artifact": "^0.3.0",
65
65
  "@sproutboat/assets": "^0.3.0",
66
66
  "@sproutboat/config": "^0.5.0",
67
- "@sproutboat/runtime": "^0.29.1",
67
+ "@sproutboat/runtime": "^0.30.0",
68
68
  "@sproutboat/toolchain": "^0.15.0",
69
- "@sproutboat/wire": "^0.18.0"
69
+ "@sproutboat/wire": "^0.19.0"
70
70
  },
71
71
  "devDependencies": {
72
72
  "@oxlint/plugins": "1.85.0",
@@ -78,10 +78,10 @@
78
78
  "typescript": "7.0.2"
79
79
  },
80
80
  "optionalDependencies": {
81
- "@sproutboat/cli-darwin-arm64": "0.30.0",
82
- "@sproutboat/cli-darwin-x64": "0.30.0",
83
- "@sproutboat/cli-linux-arm64": "0.30.0",
84
- "@sproutboat/cli-linux-x64": "0.30.0"
81
+ "@sproutboat/cli-darwin-arm64": "0.31.0",
82
+ "@sproutboat/cli-darwin-x64": "0.31.0",
83
+ "@sproutboat/cli-linux-arm64": "0.31.0",
84
+ "@sproutboat/cli-linux-x64": "0.31.0"
85
85
  },
86
86
  "engines": {
87
87
  "node": ">=18"