fix: concurrency correctness, background decode guarantee, and cache encapsulation#1
Draft
nonatomic-edd wants to merge 4 commits into
Draft
fix: concurrency correctness, background decode guarantee, and cache encapsulation#1nonatomic-edd wants to merge 4 commits into
nonatomic-edd wants to merge 4 commits into
Conversation
…rumentation wakeups
- Introduce ImageCache wrapper to replace the process-wide retroactive
@unchecked Sendable on NSCache (breaking change to init signature)
- Guard handleCancellation and active-task cleanup with task-identity
checks to prevent stale cancellation handlers from clobbering newer
requests for the same key
- Normalize URLError(.cancelled) to CancellationError for callers
- Replace the permanent 10Hz polling loop in StandardImageStreamerInstrumentation
with on-demand scheduleFlush, eliminating idle wakeups
- Fix SwiftUI environment defaults to reference stable shared instances
instead of constructing disconnected ones on each fallback access
- Convert coalescing tests to GatedMockFetcher for determinism
- Add CLAUDE.md; remove GEMINI.md
…ode runs on the concurrent pool regardless of language-mode / NonisolatedNonsendingByDefault setting.
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.
Fixes several concurrency bugs found via strict-concurrency analysis and the NonisolatedNonsendingByDefault language mode.
Fixed
Breaking