schema-stream

schema-stream

Release history and versioned changes for Schema Stream.

4.2.0

Minor Changes

  • #21 06e422c Thanks @roodboi! - Reduce progressive parsing overhead by batching internal partial-string updates at source-chunk boundaries when completion callbacks are unused, using safe fast property writes, and materializing iterate() snapshots directly without a UTF-8 JSON round trip. External and exotic defaults retain the previous JSON normalization behavior. Add the low-overhead onValueComplete event for child-before-parent completion deltas with their completed values while preserving the legacy progress callback. Add a polished Bun and Node benchmark, complex completion coverage, runnable examples, server-to-browser transport guidance, and deterministic plus opt-in live SDK integration tests, including a guarded Mastra Agent compatibility example and weekly live canary.

Patch Changes

  • #22 6045b9f Thanks @roodboi! - Link the package to schema.stream and add the generated documentation site, executable integration guides, synchronized canonical Markdown, browser playground, and a reproducible product demo video.

4.1.0

Minor Changes

  • #14 82b9edc Thanks @roodboi! - Add opt-in completed-value, byte-threshold, and final-only snapshot policies to parse() and iterate() while preserving per-input-chunk emission as the default.

Patch Changes

  • Move package metadata, documentation, source, tests, and releases to the dedicated hack-dance/schema-stream repository after the v4 release from island-ai. Prevent prototype-named streamed paths from escaping the result graph, and remove quadratic fragment joins when progressively parsing long strings.

4.0.0

Major Changes

  • #103 acd1b2f Thanks @roodboi! - Add Zod 4 support to schema-stream while retaining compatibility with Zod 3.25 and preserving progressive schema-shaped emissions. The major release corrects partial chunk and stub types, adds tested Zod compatibility adapters, removes the Ramda runtime dependency, and propagates parser failures through the stream. A new SDK-neutral iterate() API consumes string or byte Web streams and async iterables directly, including OpenAI Agents SDK and Vercel AI SDK text streams, with backpressure, cancellation, immutable snapshots, and split UTF-8 handling.

    Move zod-stream to Zod 4 and its native JSON Schema conversion, modernize the OpenAI integration for OpenAI 6 structured outputs, preserve the documented legacy function-calling mode, and expose honest progressive input/output types. Consume source bytes through SchemaStream.iterate() so large JSON values and multi-byte characters remain intact across browser and Electron read boundaries, with deterministic 64 KB regression coverage. Move stream-hooks to Zod 4 and modern React contracts, validate completed streams before calling onEnd, and propagate stream and validation errors predictably.

3.2.2

Patch Changes

3.2.1

Patch Changes

3.2.0

Minor Changes

  • #67 d2a1ee5 Thanks @roodboi! - updating required peer dep on zod to better align with all other packages as well as the one required ecternal zod to json schema dependency.

3.1.0

Minor Changes

3.0.0

Major Changes

  • #32 008d007b1ec9cc7f1276ae92bd0c32dfef801c38 Thanks @roodboi! - Updating the defaults to all be null except for objects and arrays - also not explicitly looking for .default values

    Previously we had "", 0, and false default values for primitives (silly) - you could still pass nulls as defaults through the explicit defaultValues map - but this is now the default and they can be updated either via zod .default or using the defaultValues map if there is a need for a more explicit default.

2.1.0

Minor Changes

2.0.1

Patch Changes

2.0.0

Major Changes

Patch Changes

1.6.0

Minor Changes

1.5.0

Minor Changes

1.4.1

Patch Changes

1.4.0

Minor Changes

1.3.0

Minor Changes

  • a88a1c8 Thanks @roodboi! - Adding optional type defaults to allow for nulling out defaults in addition to the default data option

1.2.1

Patch Changes

1.2.0

Minor Changes

  • #49 7154c1b Thanks @roodboi! - adding support for zod effects and ensuring parital streams apply only to strings

1.1.0

Minor Changes

  • #47 906a0b9 Thanks @roodboi! - add new options for string buffer size and hadnling of unescaped new lines

1.0.0

Major Changes

  • #45 76342d4 Thanks @roodboi! - Forked the json parser package instead of t rying to work around it - updated props and things to accept default data and am now returning a few things like activeKey

0.0.2

Patch Changes

  • 408b0c7 Thanks @roodboi! - Update streaming string value so that we dont get a colon at the start of the string

0.0.1

Patch Changes

On this page