sproutboat 0.12.3 → 0.12.5
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 +53 -1
- package/SURFACE.md +1 -1
- package/package.json +8 -8
package/CHANGELOG.md
CHANGED
|
@@ -10,6 +10,56 @@ maintained going forward by the `release` skill.
|
|
|
10
10
|
|
|
11
11
|
## Unreleased
|
|
12
12
|
|
|
13
|
+
## [0.12.5] - 2026-10-02
|
|
14
|
+
|
|
15
|
+
### Fixed
|
|
16
|
+
|
|
17
|
+
- Floating-point results on arm64 now match JavaScript. The C compiler fused
|
|
18
|
+
`a * b + c` into one instruction that rounds once, where JavaScript rounds
|
|
19
|
+
twice, so code like a seeded random-number generator drifted from V8.
|
|
20
|
+
Builds now use `-ffp-contract=off` (`@sproutboat/toolchain` 0.4.18,
|
|
21
|
+
baronunread/sproutboat#235).
|
|
22
|
+
- Standalone binaries answer HTTP/1.0 requests instead of returning
|
|
23
|
+
`505 HTTP Version Not Supported`, so they work behind nginx's default
|
|
24
|
+
`proxy_http_version 1.0`. The connection closes after the response, as
|
|
25
|
+
HTTP/1.0 expects (`@sproutboat/toolchain` 0.4.19,
|
|
26
|
+
baronunread/sproutboat#236).
|
|
27
|
+
- Binary responses from outbound `fetch()` and service bindings arrive intact.
|
|
28
|
+
`arrayBuffer()` and `bytes()` returned a corrupted body (a 31,340-byte font
|
|
29
|
+
came back as about 30,000 bytes), in standalone builds and through the
|
|
30
|
+
broker alike. `text()` and `json()` are unchanged (`@sproutboat/runtime`
|
|
31
|
+
0.13.3, `@sproutboat/wire` 0.9.2, baronunread/sproutboat#232).
|
|
32
|
+
|
|
33
|
+
### Changed
|
|
34
|
+
|
|
35
|
+
- The standalone kitchen-sink checks a raw HTTP/1.0 request.
|
|
36
|
+
|
|
37
|
+
## [0.12.4] - 2026-10-01
|
|
38
|
+
|
|
39
|
+
### Fixed
|
|
40
|
+
|
|
41
|
+
- Non-ASCII text read back from bindings no longer comes back garbled:
|
|
42
|
+
`"café"` was returned as `"café"` from D1 rows, KV values, cached
|
|
43
|
+
responses, R2 metadata and SQLite error messages, in standalone builds,
|
|
44
|
+
`sproutboat dev` and platform deployments alike. The data itself was stored
|
|
45
|
+
correctly. Fixed in `@sproutboat/runtime` 0.13.1
|
|
46
|
+
(baronunread/sproutboat#189).
|
|
47
|
+
- Async handlers no longer start failing on every request after a few
|
|
48
|
+
requests. An async function returning `null` (an anonymous session lookup,
|
|
49
|
+
say) had its promise rejected with `TypeError: Cannot get property of null`
|
|
50
|
+
once a `new Date().toISOString()` call had run, and the handler never
|
|
51
|
+
recovered. The cause is a Porffor promise-resolution bug, patched in
|
|
52
|
+
`@sproutboat/toolchain` 0.4.17 (baronunread/sproutboat#168).
|
|
53
|
+
- Uncaught exceptions from `fetch`, `scheduled()` and `alarm()` are now logged
|
|
54
|
+
to stderr as `Uncaught (in fetch) Error: ...` before the 500. They used to be
|
|
55
|
+
swallowed silently (`@sproutboat/runtime` 0.13.2).
|
|
56
|
+
|
|
57
|
+
### Changed
|
|
58
|
+
|
|
59
|
+
- The kitchen-sink example reads its JSON body with `request.json()`, which
|
|
60
|
+
decodes UTF-8, instead of parsing `request.body`, which holds the raw bytes.
|
|
61
|
+
Its conformance suite now checks that non-ASCII text round-trips through D1.
|
|
62
|
+
|
|
13
63
|
## [0.12.3] - 2026-10-01
|
|
14
64
|
|
|
15
65
|
### Changed
|
|
@@ -681,7 +731,9 @@ its own package.
|
|
|
681
731
|
- Renamed the package to `sproutboat` (was `@sproutboat/cli`); dropped the
|
|
682
732
|
`sprout` bin alias in favour of a user-defined shell alias.
|
|
683
733
|
|
|
684
|
-
[Unreleased]: https://github.com/baronunread/sproutboat-cli/compare/v0.12.
|
|
734
|
+
[Unreleased]: https://github.com/baronunread/sproutboat-cli/compare/v0.12.5...HEAD
|
|
735
|
+
[0.12.5]: https://github.com/baronunread/sproutboat-cli/compare/v0.12.4...v0.12.5
|
|
736
|
+
[0.12.4]: https://github.com/baronunread/sproutboat-cli/compare/v0.12.3...v0.12.4
|
|
685
737
|
[0.12.3]: https://github.com/baronunread/sproutboat-cli/compare/v0.12.2...v0.12.3
|
|
686
738
|
[0.12.2]: https://github.com/baronunread/sproutboat-cli/compare/v0.12.1...v0.12.2
|
|
687
739
|
[0.12.1]: https://github.com/baronunread/sproutboat-cli/compare/v0.12.0...v0.12.1
|
package/SURFACE.md
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sproutboat",
|
|
3
|
-
"version": "0.12.
|
|
3
|
+
"version": "0.12.5",
|
|
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.4.0",
|
|
67
|
-
"@sproutboat/runtime": "^0.13.
|
|
68
|
-
"@sproutboat/toolchain": "^0.4.
|
|
69
|
-
"@sproutboat/wire": "^0.9.
|
|
67
|
+
"@sproutboat/runtime": "^0.13.3",
|
|
68
|
+
"@sproutboat/toolchain": "^0.4.19",
|
|
69
|
+
"@sproutboat/wire": "^0.9.2"
|
|
70
70
|
},
|
|
71
71
|
"devDependencies": {
|
|
72
72
|
"@oxlint/plugins": "1.81.0",
|
|
@@ -78,10 +78,10 @@
|
|
|
78
78
|
"typescript": "7.0.2"
|
|
79
79
|
},
|
|
80
80
|
"optionalDependencies": {
|
|
81
|
-
"@sproutboat/cli-darwin-arm64": "0.12.
|
|
82
|
-
"@sproutboat/cli-darwin-x64": "0.12.
|
|
83
|
-
"@sproutboat/cli-linux-arm64": "0.12.
|
|
84
|
-
"@sproutboat/cli-linux-x64": "0.12.
|
|
81
|
+
"@sproutboat/cli-darwin-arm64": "0.12.5",
|
|
82
|
+
"@sproutboat/cli-darwin-x64": "0.12.5",
|
|
83
|
+
"@sproutboat/cli-linux-arm64": "0.12.5",
|
|
84
|
+
"@sproutboat/cli-linux-x64": "0.12.5"
|
|
85
85
|
},
|
|
86
86
|
"engines": {
|
|
87
87
|
"node": ">=18"
|