Skip to content

[Concurrency] Constrain Swift 6 escape hatches - #86

Closed
NachoSoto wants to merge 1 commit into
swift-6-production-concurrencyfrom
swift-6-concurrency-escape-hatches
Closed

[Concurrency] Constrain Swift 6 escape hatches#86
NachoSoto wants to merge 1 commit into
swift-6-production-concurrencyfrom
swift-6-concurrency-escape-hatches

Conversation

@NachoSoto

Copy link
Copy Markdown
Owner

Scope

Part 3 of 4 in the Swift 6 migration. This PR contains only the explicit production escape hatches needed around legacy ReactiveSwift state:

  • mark the disposable accessed from UIKit deinitialization as nonisolated(unsafe)
  • wrap the non-Sendable ReactiveSwift observer and lifetime in a tightly scoped @unchecked Sendable box before the main-actor callback

Dependencies

The unsafe annotations are intentionally isolated here so reviewers can audit their scope independently from the actor-boundary changes.

Validation

  • iOS Simulator library build succeeds
  • swiftlint --config .swiftlint.yml --strict
  • git diff --check

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant