Repository navigation
Add Polish localization across iOS and watchOS - #70
Conversation
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: c8f00f2f75
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| # A plural catalog entry represents the same source value with count-specific forms. | ||
| unit = localized.get("stringUnit") or localized.get("variations", {}).get("plural", {}).get("other", {}).get("stringUnit", {}) | ||
| value = unit.get("value") |
There was a problem hiding this comment.
Preserve localized plural variants during fill
When fill(overwrite=True) processes any Polish plural entry, locale_values reduces the localization to only its other form; the later set_locale_values call then replaces the entire variations.plural dictionary with one stringUnit. Thus the documented overwrite workflow silently deletes the one, few, and many translations from all affected entries. The fill path needs to preserve or regenerate every plural variant instead of round-tripping only other.
Useful? React with 👍 / 👎.
Summary
Polish users now get localized screens, count forms, permission explanations, and VoiceOver descriptions across iPhone, Apple Watch, widgets, and App Shortcuts. Strings that previously bypassed localization now use the catalogs.
Evidence
pointsandTracking is off.After: 1,326 catalog entries pass the Polish coverage/placeholder audit; all four targets have zero missing compiler-extracted keys. Simulator AX output includes
0 wizyt. 0 punktów trasyandŚledzenie jest wyłączone.CODE_SIGNING_ALLOWED=YES CODE_SIGN_IDENTITY=-; 162 compiled localization checks and five audit-tool tests passed. An initial unsigned run failed seven Keychain tests; simulator signing resolved all seven.Commands and coverage details: Polish localization notes.
Merge Danger
Door: Two-way
Reversible source and catalog changes; no data migration. Default outing titles and associated fallback export names now follow the app language.
Blast Radius: Presentation
Changes affect localized labels, plural forms, accessibility text, permission descriptions, and screenshot-copy tooling. Existing translations are preserved. The unrelated local debug overlay and Watch-sync commit are excluded.