Skip to content

Resolve build warnings - #869

Draft
anciltech wants to merge 5 commits into
XcodesOrg:mainfrom
anciltech:chore/resolve-build-warnings
Draft

anciltech wants to merge 5 commits into
XcodesOrg:mainfrom
anciltech:chore/resolve-build-warnings

Conversation

@anciltech

Copy link
Copy Markdown

Summary

Resolves the build warnings on main (app target, macOS 14.6), one commit per kind:

  1. onChange(of:perform:) deprecations (XcodesApp.swift, PlatformsListView.swift): use the two-parameter / zero-parameter forms.
  2. Swift concurrency warnings
    • UpdatesPreferencePane: the KVO change handlers read the updater's main actor-isolated properties from a Sendable closure; use the observed change.newValue instead.
    • AppState+Runtimes: the progress closure implicitly captured self strongly while the inner task captured it weakly; capture weakly in both.
    • NotificationManager: remove await on calls that are already on the main actor.
  3. SMJobBless deprecation: moving the helper to SMAppService changes the install and approval model (bundled launch daemon plist, approval in System Settings) and deserves its own change. Until then, the one legacy call lives in a small, clearly marked shim reached through a protocol, so the known deprecation doesn't warn on every build.
  4. "Fix libfido2 structure" script phase: it has no outputs and is meant to run every build; mark it alwaysOutOfDate ("Based on dependency analysis" unchecked) to say so.

Not changed

  • ld: building for macOS-14.6, but linking with dylib '@rpath/libcbor.0.11.0.dylib' which was built for newer version 15.0: the prebuilt libcbor in LibFido2Swift targets macOS 15. Fixing it means raising the app's deployment target or rebuilding the dependency for 14.6; both are maintainer decisions.

Build and tests pass with Xcode 27.0.

🤖 Generated with Claude Code

anciltech and others added 5 commits September 29, 2026 17:04
The single-parameter variant is deprecated since macOS 14.0, and the app
targets 14.6.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- UpdatesPreferencePane: read the observed value from the KVO change
  instead of the updater's main actor-isolated properties inside the
  Sendable change handler.
- AppState+Runtimes: capture self weakly in the progress closure too, so
  the inner [weak self] doesn't differ from an implicit strong capture.
- NotificationManager: drop awaits on calls that are already on the main
  actor.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
SMJobBless is deprecated in favor of SMAppService, which uses a
different install and approval model and is a separate migration. Keep
the one legacy call in a small, clearly marked shim so the known
deprecation doesn't warn on every build.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The script phase has no outputs, so Xcode warned that it runs on every
build. That is intended; mark it alwaysOutOfDate ("Based on dependency
analysis" unchecked) to say so.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

This branch has not been deployed

No deployments
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