The Wire · Showcase
SWIFT KILLS UNSAFE TASK.CANCEL(), DART SDK ROLLS CONTINUE
By RepoJournal · Filed · About Mobile platforms
Swift removed an unnecessary unsafe marker from Task.cancel() while tightening sendable type checking, as Flutter tracks two consecutive Dart SDK updates overnight.
The Swift team merged a critical concurrency fix that eliminates unsafe code from Task.cancel() [1], reducing the surface area for potential safety violations in concurrent code. This lands alongside a more robust AST layer that now handles source file mutations gracefully [2], fixing crashes when .swiftsourceinfo files drift out of sync with source. On the type-safety front, sendable checking now properly maps conformance types into their generic environments [3], closing a hole where type parameters were incorrectly treated as trivially conforming. The build system also gained control over pedantic diagnostics with new build-script flags [4], letting engineers toggle extra warnings independently from assertions. Meanwhile, Flutter's Dart SDK roller pushed two incremental updates to 3.13.0-133.0.dev and 3.13.0-134.0.dev overnight [5] [6], both standard maintenance rolls with revert mechanisms in place if breakage surfaces.
Action items
- → Review Swift changes for Task.cancel() if you use concurrent patterns in production code apple/swift [plan]
- → Monitor Dart SDK rolls for breakage; revert through autoroll controls if your Flutter build fails flutter/flutter [monitor]
- → Evaluate new sendable type checking behavior in Swift against your generic protocol conformances apple/swift [plan]
References
- [1] Merge pull request #89356 from tshortli/safe-task-cancel apple/swift
- [2] [AST] Make RawComment handling robust against source files changing from underneath us ↗ apple/swift
- [3] [Sema] Map conformance types into generic env before sendable checking ↗ apple/swift
- [4] build-script: Add a flag to control pedantic diagnostics ↗ apple/swift
- [5] Roll Dart SDK from 7e0f28eb5315 to 7eb54169841d (1 revision) (#187005) flutter/flutter
- [6] Roll Dart SDK from 90e55fa88456 to 7e0f28eb5315 (1 revision) (#186990) flutter/flutter
FAQ
- What changed in Mobile platforms on May 24, 2026?
- Swift removed an unnecessary unsafe marker from Task.cancel() while tightening sendable type checking, as Flutter tracks two consecutive Dart SDK updates overnight.
- What should Mobile platforms teams do about it?
- Review Swift changes for Task.cancel() if you use concurrent patterns in production code • Monitor Dart SDK rolls for breakage; revert through autoroll controls if your Flutter build fails • Evaluate new sendable type checking behavior in Swift against your generic protocol conformances
- Which Mobile platforms repositories shipped on May 24, 2026?
- apple/swift, flutter/flutter