diff --git a/.changeset/bump-seroval-1-7-0.md b/.changeset/bump-seroval-1-7-0.md new file mode 100644 index 000000000..88ed5789b --- /dev/null +++ b/.changeset/bump-seroval-1-7-0.md @@ -0,0 +1,5 @@ +--- +"@solidjs/start": patch +--- + +Bump `seroval` and `seroval-plugins` to 1.7.0. diff --git a/packages/start/package.json b/packages/start/package.json index 1b9b39c75..2ca544c9b 100644 --- a/packages/start/package.json +++ b/packages/start/package.json @@ -76,8 +76,8 @@ "path-to-regexp": "^8.4.2", "pathe": "^2.0.3", "radix3": "^1.1.2", - "seroval": "^1.6.11", - "seroval-plugins": "^1.6.11", + "seroval": "^1.7.0", + "seroval-plugins": "^1.7.0", "shiki": "^4.3.1", "srvx": "^0.12.4", "terracotta": "^1.2.4", diff --git a/packages/start/src/fns/serialization.ts b/packages/start/src/fns/serialization.ts index 0ff67e4a5..89ebfff92 100644 --- a/packages/start/src/fns/serialization.ts +++ b/packages/start/src/fns/serialization.ts @@ -4,9 +4,9 @@ import { Feature, fromCrossJSON, getCrossReferenceHeader, - isStream, type Plugin, type SerovalNode, + Stream, toCrossJSONStream, } from "seroval"; import { @@ -346,8 +346,9 @@ class DecodedRefs extends Map { * Fails every value still waiting on a frame that will not arrive. Seroval * keeps these in the refs between frames: open streams and pending-promise * resolvers (`{ p, s, f }`). `fromCrossJSON` builds streams from seroval's - * internal `Stream` class, which only `isStream` recognizes; the eval-based - * `deserialize` rebuilds them as plain `__SEROVAL_STREAM__` objects. Throwing + * `Stream` class; the eval-based `deserialize` rebuilds them as plain + * `__SEROVAL_STREAM__` objects. Decoding never builds a `LiveStream`, which + * `isStream` also matches, so `instanceof Stream` is the check. Throwing * into a closed stream and rejecting a settled promise are no-ops, so this is * safe to run after a body that ended normally. * @@ -358,7 +359,7 @@ function settlePendingRefs(refs: Iterable, error: unknown) { if (value === null || typeof value !== "object") continue; try { const ref = value as Record; - if (isStream(ref)) { + if (ref instanceof Stream) { ref.throw(error); } else if (ref.__SEROVAL_STREAM__ === true && typeof ref.throw === "function") { ref.throw(error); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 270fd1adf..d42649872 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -369,11 +369,11 @@ importers: specifier: ^1.1.2 version: 1.1.2 seroval: - specifier: ^1.6.11 - version: 1.6.11 + specifier: ^1.7.0 + version: 1.7.0 seroval-plugins: - specifier: ^1.6.11 - version: 1.6.11(seroval@1.6.11) + specifier: ^1.7.0 + version: 1.7.0(seroval@1.7.0) shiki: specifier: ^4.3.1 version: 4.3.1 @@ -2839,9 +2839,9 @@ packages: peerDependencies: seroval: ^1.0 - seroval-plugins@1.6.11: - resolution: {integrity: sha512-LmB3nd8pL39jKHKvnpTUjcjBtNwR8MLty/ydAR8qbfXt5j6/6KqR1atuw8cVmD2/lDxAkvAwq5tI/HsisD9Fqg==} - engines: {node: '>=10'} + seroval-plugins@1.7.0: + resolution: {integrity: sha512-WM4rArfPtLZriTuxC5DBvNulEwAaRcjNe/dkMOEesOcuvXf5nEwKf5Bw3AT92WHohqcc45+57GdtsCuBTI0mjw==} + engines: {node: '>=20'} peerDependencies: seroval: ^1.0 @@ -2849,9 +2849,9 @@ packages: resolution: {integrity: sha512-rVQVWjjSvlINzaQPZH5JFqsqEsIWdTxY3iJZCnTL/5gQbXIRooVZKI60tVCkOVfzcRPejboxO2t0P89dg5mQaA==} engines: {node: '>=10'} - seroval@1.6.11: - resolution: {integrity: sha512-hpb6XnMCGN/A+79Uf8V7/iTGkyyyazNn5X0CoCAp7Uy9vT3RT8jZ9GLcnxGoVjg3P8AArbe4ZVHq6C8oT2a0kA==} - engines: {node: '>=10'} + seroval@1.7.0: + resolution: {integrity: sha512-FU+LUkmDzWNsJ6oubZFN3dGPKny53DRhPJG6nftEaXDL8MIn19+kEE1Gvc+63Go+qPOwVUlKIdKhsu2HN6tksw==} + engines: {node: '>=20'} shebang-command@2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} @@ -5619,13 +5619,13 @@ snapshots: dependencies: seroval: 1.5.6 - seroval-plugins@1.6.11(seroval@1.6.11): + seroval-plugins@1.7.0(seroval@1.7.0): dependencies: - seroval: 1.6.11 + seroval: 1.7.0 seroval@1.5.6: {} - seroval@1.6.11: {} + seroval@1.7.0: {} shebang-command@2.0.0: dependencies: diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 623f8b6c2..fe3108a4b 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -19,8 +19,8 @@ minimumReleaseAgeExclude: - srvx@0.12.4 - h3@2.0.1-rc.26 - "@solidjs/router@1.0.0" - - seroval-plugins@1.6.11 - - seroval@1.6.11 + - seroval-plugins@1.7.0 + - seroval@1.7.0 onlyBuiltDependencies: - "@parcel/watcher"