Skip to content

Swift-JSON 1.0.0

Latest

Choose a tag to compare

@ThorFuchs ThorFuchs released this 11 Oct 14:07
f5ccc42

Swift-JSON 1.0.0 is the first stable release: exact JSON values, offline JSON Schema
validation, transactional patches and pull-driven streams for modern Swift.

Requirements and installation

Swift tools/compiler 6.4+, Swift language mode 6, and macOS/SDK 27+.
Native qualification covers Apple Silicon. The root package has no external
dependencies. Original contributions use Apache-2.0; upstream licenses and notices
are retained.

.package(url: "https://github.com/ThorFuchs/Swift-JSON.git", from: "1.0.0")

Choose any of the four public products: JSON, JSONSchema, JSONStreaming and
JSONPatch. JSONRegexRuntime remains package-private.

Included capabilities

  • Exact bounded decimal numbers; decoded Unicode scalar identity for strings and
    keys; insertion-ordered objects with order-independent equality.
  • One strict UTF-8 codec for complete documents and streams, native value-based
    Codable, RFC 6901 Pointer, presence and construction helpers, owned source
    documents, bounded diagnostics and public operation reports.
  • Draft 2020-12 schema compilation/evaluation, explicit offline immutable registries
    and plans, annotations, raw declaration inspection and interruptible budgeted
    native regex. Ordinary invalidity remains distinct from operational errors.
  • Staged RFC 6902 JSON Patch and RFC 7396 Merge Patch, including root removal distinct
    from JSON null.
  • Pull events/values, strict NDJSON, provisional root-array elements with explicit
    completion, awaited sinks and cumulative finite budgets.

Qualification and boundaries

The public qualification receipt identifies the exact source commit, native CI
commands and outcomes, clean-extraction build/test proof, pinned independent suites,
all 49 finite resource caps, safety lanes and public consumers. Policy exclusions
are reported separately from evaluated outcomes. Compiled DocC catalogues accompany
the release; online documentation tracks
qualified main.

Default resource profiles bound charged owned work and logical retention. They are
initial policy, not hard process RSS or throughput guarantees; arbitrary caller
callback work is outside owned instruction quotas. Stream yields do not certify an
enclosing document until closing syntax, trailing whitespace and EOF are checked.

The existing performance review accepts a stream median of 1.07496 seconds versus
0.96849 seconds (approximately +11.0%), above the unchanged 10% review trigger.
This release preserves that disposition and makes no causal speedup claim. Scalar
scanning and immutable plan-local regex sharing remain selected. Projection and
RFC 7464 JSON text-sequence framing remain deferred.

The rooted JSON/JSONSchema consumer exercises 20 frozen vectors plus operational
failure cases. These results do not establish MCP server or protocol conformance.

Assets and support

Use SwiftPM's version tag for installation. The source archive carries an embedded
file manifest; the DocC archive preserves native catalogue filenames. Verify all
downloaded assets against SHA256SUMS.

Changelog ·
Support and maintenance ·
Private security reporting

Fixes target the latest published 1.x release with best-effort maintenance.