Repository navigation
Fix iOS/macOS build: ReadinessChecklistCard.lead is a String (#81 regression) - #132
Merged
Merged
Conversation
…alizedStringKey The v8.5.0 release build failed to compile on both iOS and macOS: HealthView.swift:744: cannot convert 'String' to 'LocalizedStringKey' fitnessReadyLead() (#81, Fitness Age countdown) returns an already-localized String (String(localized:), word-for-word matched to Android), but the card's `lead` was typed LocalizedStringKey?. Re-keying an already-resolved string is wrong anyway; the fix is to type `lead` as String? and render it verbatim via Text(String). Both callers already pass a String / nil, and the only use is the single Text(lead), so this is self-contained. This slipped in because the fork runs the Swift build only at release/on-demand, not per-commit, so #81's iOS-only change wasn't compiled before merge.
6 of 12 tasks
DX23876
pushed a commit
to DX23876/noop
that referenced
this pull request
Jul 22, 2026
…tringkey Fix iOS/macOS build: ReadinessChecklistCard.lead is a String (ryanbr#81 regression)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The v8.5.0 release build failed to compile on both iOS and macOS (Android + the bump job succeeded, so
v8.5.0was published with only the APK):Cause
fitnessReadyLead()(from #81, the Fitness Age countdown) returns an already-localizedString(String(localized:), word-for-word matched to Android), butReadinessChecklistCard.leadwas typedLocalizedStringKey?. It compiled nowhere because the fork runs the Swift build only at release/on-demand, not per-commit — so #81's iOS-only change was never compiled before merge.Fix
Type
leadasString?and render it verbatim viaText(String). Re-keying an already-resolved localized string throughLocalizedStringKeywould be wrong anyway. Both callers already pass aString/nil(lines 734lead: nil, 742lead: fitnessReadyLead()), and the only use is the singleText(lead), so it's self-contained.Single error in the failed logs (no downstream errors), so this unblocks the build. Can't compile Swift on WSL — rides the re-run of the Release workflow.
Release recovery (after merge)
The
v8.5.0release exists but is incomplete (APK only). Cleanest path: delete the incompletev8.5.0release and its tag, then re-dispatch the Release workflow so it recreatesv8.5.0at this fixed commit with all three artifacts. (Alternatively, just re-run to attach macOS/iOS assets to the existing release — but then the tag stays at the broken commit.)