5.1.0
What's Changed
-
Modernized
DiscreteTimerwith@MainActorand structured concurrency- Replaced
@unchecked Sendablewith@MainActorfor correct isolation - Replaced recursive
DispatchQueue.main.asyncAfterwith aTask-based loop usingTask.sleep(for:)for proper cancellation support - Timer task is now automatically cancelled in
deinit
- Replaced
-
Bumped macOS minimum to 13 to support the
Task.sleep(for:)API
Platform Minimums
| Platform | Minimum |
|---|---|
| iOS | 15+ |
| macOS | 13+ |
| tvOS | 15+ |
| watchOS | 8+ |