Skip to content

Release v1.2.0

Choose a tag to compare

@euxx euxx released this 01 Mar 08:46
· 19 commits to main since this release

Fixes

  • Fix key-press debounce race condition, volume element detection, SystemEventMonitor cleanup, device menu unnecessary rebuilds, and device switch error alert title
  • Fix SystemEventMonitor data race: global monitor callback dispatched to MainActor
  • Fix SystemEventMonitor deinit: synchronize monitor removal on main thread
  • Eliminate all MainActor.assumeIsolated: use Task { @MainActor in } for completion handlers and animation callbacks

Improvements

  • Upgrade to Swift 6 language mode with strict concurrency checking
  • Refactoring: consolidate ThreadSafeProperty, remove redundant code paths and unused abstractions, improve naming
  • Concurrency: enable warnings-as-errors, mark pure types Sendable/nonisolated, use OSAllocatedUnfairLock(initialState:) for compiler-checked locking
  • Tests: add SPM test target, skip hardware-dependent tests, clean up mocks, add dispatchPrecondition and assertForOverFulfill
  • Formatting and documentation