@sproutboat/runtime 0.37.1 → 0.39.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 +14 -0
- package/package.json +3 -2
- package/src/native-fetch-prelude.js +5079 -3
- package/src/source.test.ts +44 -0
- package/src/source.ts +44 -2
- package/src/subtle/README.md +62 -0
- package/src/subtle/assemble.ts +152 -0
- package/src/subtle/driver.c +33 -0
- package/src/subtle/prune.test.ts +53 -0
- package/src/subtle/subtle.c +1072 -0
- package/src/subtle/subtle.test.ts +458 -0
- package/src/subtle/vendor/MONOCYPHER_LICENCE.md +167 -0
- package/src/subtle/vendor/monocypher-ed25519.c +500 -0
- package/src/subtle/vendor/monocypher-ed25519.h +140 -0
- package/src/subtle/vendor/monocypher.c +2956 -0
- package/src/subtle/vendor/monocypher.h +321 -0
- package/src/subtle-date.ts +6 -0
- package/src/wrap.ts +40 -0
- package/test/bearssl.ts +70 -0
- package/test/native-crypto.ts +15 -12
- package/test/native-jwt.ts +2 -1
- package/test/native-subtle.ts +182 -0
- package/test/native-web-apis.ts +30 -14
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
# @sproutboat/runtime
|
|
2
2
|
|
|
3
|
+
## 0.39.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 7030f76: Database clients that need only fetch or WebSocket (`@libsql/client`, `@neondatabase/serverless`, `@supabase/supabase-js`, `@upstash/redis`, `@planetscale/database`) run unmodified. In the runtime: `fetch()` returns a promise on the standalone binary from the compatibility date that already promises it (2026-10-22), so `fetch(url).then(...)` works and a refused request rejects; a fetched 204, 205 or 304 response no longer throws "Response with null body status cannot have body"; from the proposed compatibility date 2026-11-15 the Node/Bun/Deno global check in the bundle skips a use behind a `typeof` feature test, a global the bundle declares itself, and mentions inside strings and comments, and `Error.captureStackTrace` exists. In the toolchain: a typed array with an underlying object (a `Buffer` polyfill) shadows the builtin methods it redefines, so `buf.toString("utf8")` is the Buffer one.
|
|
8
|
+
|
|
9
|
+
## 0.38.0
|
|
10
|
+
|
|
11
|
+
### Minor Changes
|
|
12
|
+
|
|
13
|
+
- 3d576cd: `crypto.subtle` gains workerd's surface from compatibility date `2026-11-06` (a placeholder; the date is the maintainers' to choose). This first milestone adds RSASSA-PKCS1-v1_5, RSA-PSS and ECDSA (P-256, P-384, P-521) sign and verify, Ed25519 and workerd's `NODE-ED25519`, PBKDF2 and HKDF for every hash, `generateKey`, `importKey` and `exportKey` in `raw`, `spki`, `pkcs8` and `jwk`, `deriveBits`, `deriveKey` for HMAC keys, and errors that are `DOMException`s with workerd's names. Earlier dates keep the digest, HMAC and PBKDF2-SHA-256 subset and its errors unchanged. The primitives are BearSSL's (already linked) and Monocypher's (vendored for Ed25519); see `packages/runtime/src/subtle/README.md`. Only the embedded transport (standalone binaries and sproutd) has the native half; the broker transport answers `NotSupportedError`. Based on the `DOMException` change.
|
|
14
|
+
|
|
15
|
+
Milestones 1 and 2 ship together: RSA-OAEP, ECDH, X25519, AES-GCM/CBC/CTR/KW, `wrapKey`/`unwrapKey`, `deriveKey` and `crypto.DigestStream` are included. `wrapNativeFetchHandler` takes a trailing `subtle` option (`"always"` by default; `"auto"` drops the new code from a handler that never names `subtle`, `DigestStream` or `CryptoKey`, which saves about 330 KB of a standalone binary).
|
|
16
|
+
|
|
3
17
|
## 0.37.1
|
|
4
18
|
|
|
5
19
|
### Patch Changes
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sproutboat/runtime",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.39.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
"types": "./src/index.ts",
|
|
13
13
|
"scripts": {
|
|
14
14
|
"test": "bun test ./",
|
|
15
|
-
"gen:egress": "bun src/gen-egress.ts"
|
|
15
|
+
"gen:egress": "bun src/gen-egress.ts",
|
|
16
|
+
"gen:subtle": "bun src/subtle/assemble.ts"
|
|
16
17
|
}
|
|
17
18
|
}
|