release: v10.9.2 — stability + packaging patch (SIGSEGV fixes, SwiftPM URL consumption)#444
Merged
Merged
Conversation
…M URL consumption) v10.9.2 is a PATCH release. It fixes two latent SIGSEGV crashes — the HTJ2K encoder's fused entropy path (#439, empty-buffer baseAddress force-unwrap) and the performance-validation report generator (String(format:) %s fed a Swift String) — and makes J2KSwift resolvable as a SwiftPM URL dependency (#438, conditional CompressionFamily path/URL dependency). Codestream bytes byte-identical to v10.9.1; the encoder fix only alters the previously-crashing empty-buffer path. No API change. Artefacts: RELEASE_NOTES_v10.9.2.md, README + CHANGELOG updated, getVersion() → 10.9.2, warm cross-codec benchmark JSON. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
baseAddress; degenerate / zero-coefficient code-blocks trapped withEXC_BAD_ACCESS. 5 sites guarded withguard let.ValidationReportGenerator.textReportfed SwiftStringvalues toString(format:)%sspecifiers; 14 sites replaced with Swift padding + interpolation. This had also been silently aborting fullswift testruns.Package.swift's CompressionFamily dependency made conditional (local path / public URL); J2KSwift becomes.package(url:)-resolvable.PATCH release — codestream bytes byte-identical to v10.9.1; no API change.
Correctness gate (release mode)
J2KMedicalCorpusEncodePerformanceTests+J2KMedicalCorpusPerformanceTests+J2KStrictCrossCodecValidationTests+HTCrossCodecConformantTests+HTEndToEndCrossCodecTests+HTGPUForward53CrossCodecTests+HTNativeMultiTileSelfRoundtripTests— 22 tests, 0 failures, 0 crashes.A full no-filter
swift test -c release(6148 tests) now runs to completion where thetextReportSIGSEGV previously aborted it.Test plan
benchmark-results-arm64-v10.9.2-20260521.jsoncommitted; no codec code changed, win/loss within run-to-run noise of v10.9.1getVersion()→ 10.9.2Note
CI build jobs are red on one external blocker only —
Raster-Lab/CompressionFamilyis not yet published as a public repo (#438). This does not affect the release:release.ymldoes not build, and the mandatory gate was run locally in release mode. v10.9.2 becomes URL-consumable the moment that repo is published + tagged1.0.0.🤖 Generated with Claude Code