Skip to content

Swift-JSON 1.1.1

Choose a tag to compare

@ThorFuchs ThorFuchs released this 13 Oct 10:09
6532753

Swift-JSON 1.1.1 corrects cumulative accounting in JSONSchemaBuilder.object and clarifies the release documentation. It preserves the public API and default resource profiles from 1.1.0.

Fixes and compatibility

  • Object construction and schema-document admission now share one finite cumulative budget in the schema-compilation domain. A 100-byte description under a 150-work-unit limit correctly fails instead of succeeding through separate phase budgets.
  • Owned resource failures and cancellation remain terminal even if the builder callback catches them. Replacing or swapping the callback accumulator cannot reset the original operation's ledger.
  • Schema compilation-work and plan-retention limits apply during construction as well as admission. Tight custom quotas that previously relied on a reset may now fail correctly. Public signatures, the 49 resource metrics and their default values are unchanged.
  • README, API comments and DocC explain the shared-budget contract and the published 1.1 platform baseline. The frozen source changelog describes these changes under its Unreleased heading; these versioned notes bind that existing entry to 1.1.1 without changing the verified commit.

Swift tools/compiler 6.4+, Swift language mode 6, and macOS or iOS/iPadOS 27+ remain required. Four public products: JSON, JSONSchema, JSONStreaming and JSONPatch. JSONRegexRuntime remains private, root dependencies remain empty, and Apache-2.0 with all upstream notices is retained.

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

Qualification

The tag targets verified commit 653275373f0e69c7cfc303abf2882fc463e02bd3. Its post-merge native CI passed Native / native, Native / safety and Native / docs, followed by the existing documentation deployment. Debug, release and full ASAN each execute 184 test functions and 173 parameterized invocations; TSAN executes five concurrency functions. Strict memory-safety compilation, nine schema-builder regression cases, all 49 metric probes, ownership/reader compiler probes and public consumers pass.

The independent JSON corpus records 287 evaluated successes and 31 policy cases out of 318; the schema corpus records 2,300 evaluated successes and 37 policy cases out of 2,337. Policy cases are excluded from evaluated successes. Deterministic malformed-input replay covers 4,396 cases. The JSON/JSONSchema consumer retains 20 explicitly rooted instances (eight positive and 12 ordinary invalid), plus two separate operational errors; it does not establish downstream MCP conformance.

The attached qualification receipt and evidence archive retain exact source identity, clean archive reproduction/build/test, commands, toolchains, counts and an independently resolved 1.1.1 tag consumer. Four matching native DocC catalogues compile without diagnostics; coverage records 582 authored public symbols and ten compiled README examples.

The identical reviewed patch source passed iPhoneOS and iPhoneSimulator public-consumer builds, plus the explicit SwiftData shape compiler probe on macOS and both mobile SDKs. The patch's native lane exercises macOS public behavior and disk persistence. Earlier 1.1 mobile simulator and physical iPhone runtime qualification remains historical evidence, with no new patch-level physical-device run claimed. Physical iPad behavior, performance, memory and energy remain unmeasured, under the approved qualification policy; simulator results make no physical-device claim.

Performance disposition

The qualified idle-window A/B run compares the released 1.1.0 source with the reviewed patch tree. Construction median changes are +11.35% for one 100-byte description and +21.96% for a 64-member object with 256-byte strings. Both crossed the unchanged 10% review trigger and were reviewed and accepted for the required cumulative-budget and terminal-failure correction. No quota increase or faster path that weakens accounting was selected.

The experiment uses a native virtual Mac, A/B/B/A ordering, three warmups and nine samples per workload/process, with three consecutive ≥90% idle samples before and after each process and zero swapping. Background activity and baseline variation remain visible; this does not establish noise-free hardware or guaranteed throughput. The fixed-vector logical-retention overlap rises from 231 to 247 bytes (+6.93%); those bytes are distinct from process RSS. The historical streaming comparisons (approximately +11.0%, and the separate 1.1 integrated +15.76%) retain their existing dispositions. Caller callbacks are outside owned instruction quotas. SIMD, parallel batches, E11 projection and E12 text-sequence framing remain deferred.

Assets and support

Verify the source, compiled DocC, public evidence archive and qualification receipt against SHA256SUMS. Each archive includes or accompanies a file manifest. The evidence archive contains reviewed public CI, clean-build, tag-consumer and performance records; private maintainer handoffs, personal device identifiers and signing/build products are excluded.

Online documentation follows qualified main; the attached DocC archive matches this tag. Source changelog · Support · Private security reporting.