Skip to content

Clean up compiler warnings that don't involve concurrency - #2567

Merged
ps2 merged 1 commit into
next-devfrom
next-dev-warning-cleanup
Oct 12, 2026
Merged

ps2 merged 1 commit into
next-devfrom
next-dev-warning-cleanup

Conversation

@ps2

@ps2 ps2 commented Oct 12, 2026

Copy link
Copy Markdown
Collaborator

First pass at the next-dev build warnings: the mechanical and deprecation ones in Loop. Concurrency warnings and deprecations that can change on-screen behaviour (NavigationLink(isActive:), implicit .animation) are left for separate PRs.

Behaviour changes:

  • Live Activity: an activity preset fell through @unknown default and showed an empty title. It now shows its preset's name and symbol, and the switch is exhaustive.
  • Dropped errors: five throwing tasks discarded their errors; they now log them. Retracting the unsafe-notification-permissions alert dismisses the in-app alert even if recording the retraction fails, and tapping a dose in the insulin delivery log opens its details even if its dosing decision can't be found (it used to do nothing).

Otherwise no behaviour change:

  • @retroactive on conformances of other modules' types to other modules' protocols.
  • Off deprecated APIs: onChange(of:perform:), traitCollectionDidChange (now registerForTraitChanges with systemTraitsAffectingColorAppearance), HKCategoryValueSleepAnalysis.asleep, WKExtension.applicationWillResignActiveNotification.
  • Unused values removed; tuple pattern made explicit.

The full LoopWorkspace scheme builds, and none of these warnings remain in the edited files.

- Live Activity: an activity preset fell through @unknown default and
  showed an empty title. It now shows its preset's name and symbol, and
  the switch is exhaustive so a new context can't be missed again.
- Throwing tasks whose errors were dropped now log them. Retracting the
  unsafe-notification-permissions alert dismisses the in-app alert even
  if recording the retraction fails, and the insulin delivery log opens
  a dose's details even if its dosing decision can't be found.
- Mark conformances of types and protocols from other modules
  @retroactive.
- Move off deprecated APIs: onChange(of:perform:),
  traitCollectionDidChange (now registerForTraitChanges with the traits
  that affect colours), HKCategoryValueSleepAnalysis.asleep,
  WKExtension.applicationWillResignActiveNotification.
- Remove unused values and the tuple-pattern warning.
@ps2
ps2 merged commit 91484c6 into next-dev Oct 12, 2026
ps2 added a commit to LoopKit/LoopWorkspace that referenced this pull request Oct 12, 2026
Brings in the VoiceOver label fixes (LoopKit/Loop#2569, LoopKit/LoopKit#640,
loopandlearn/OmnipodKit#189, LoopKit/G7SensorKit#92), the compiler warning
cleanup (LoopKit/Loop#2567, LoopKit/LoopKit#639) and real pod Bluetooth in
the Simulator when a bridge is injected (loopandlearn/OmnipodKit#188).
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