Skip to content

chore: sync swift localization from platform-localization#165

Open
platform-localization-pr-bot[bot] wants to merge 1 commit into
mainfrom
chore/localization-sync-swift-20260629-4fa6992
Open

chore: sync swift localization from platform-localization#165
platform-localization-pr-bot[bot] wants to merge 1 commit into
mainfrom
chore/localization-sync-swift-20260629-4fa6992

Conversation

@platform-localization-pr-bot

@platform-localization-pr-bot platform-localization-pr-bot Bot commented Jun 29, 2026

Copy link
Copy Markdown

Automated localization sync from platform-localization.

  • Platform: Swift
  • Source ref: 4fa6992cc909a1115d57ce53d4f0af76ef230692
  • Workflow: Distribute Swift Localization

Greptile Summary

This automated PR syncs localization data from platform-localization, adding descriptive comment fields to all existing string entries in Localizable.xcstrings and introducing two new string keys (bibleVersionsHeading and booksHeading). The comments provide clear translator context across the ~50 string entries, which is a great improvement.

  • All existing keys receive non-empty, human-readable translator comments, improving localization clarity.
  • Two new keys (bibleVersionsHeading, booksHeading) are added with English-only translations; French/German/Spanish localizations are expected in a future sync.
  • signIn.appMessage receives an empty comment field (""), diverging from every other entry which has a descriptive comment.

Confidence Score: 4/5

Safe to merge — the change is entirely additive, touching only translator comments and two new English-only string keys.

The sync correctly adds descriptive comments to all ~50 existing keys and introduces two new string entries. The only wrinkle is signIn.appMessage receiving an empty comment where a descriptive one was expected, leaving translators without context for that key.

Sources/YouVersionPlatformUI/Resources/Localizable.xcstrings — specifically the empty comment on signIn.appMessage.

Important Files Changed

Filename Overview
Sources/YouVersionPlatformUI/Resources/Localizable.xcstrings Automated localization sync: adds translator comments to all existing keys, introduces two new English-only string keys, and sets an empty comment string on signIn.appMessage.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[platform-localization repo\nsource ref: 4fa6992c] -->|Distribute Swift Localization workflow| B[Automated PR Bot]
    B -->|writes| C[Localizable.xcstrings]
    C -->|string keys + comments| D[Xcode String Catalog]
    D -->|en| E[English ✅]
    D -->|fr| F[French ✅ existing\n⚠️ missing for new keys]
    D -->|de| G[German ✅ existing\n⚠️ missing for new keys]
    D -->|es-MX| H[Spanish ✅ existing\n⚠️ missing for new keys]
    E & F & G & H --> I[SwiftUI / UIKit\nLocalized string lookups]
Loading
%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%%
flowchart TD
    A[platform-localization repo\nsource ref: 4fa6992c] -->|Distribute Swift Localization workflow| B[Automated PR Bot]
    B -->|writes| C[Localizable.xcstrings]
    C -->|string keys + comments| D[Xcode String Catalog]
    D -->|en| E[English ✅]
    D -->|fr| F[French ✅ existing\n⚠️ missing for new keys]
    D -->|de| G[German ✅ existing\n⚠️ missing for new keys]
    D -->|es-MX| H[Spanish ✅ existing\n⚠️ missing for new keys]
    E & F & G & H --> I[SwiftUI / UIKit\nLocalized string lookups]
Loading

Fix All in Claude Code Fix All in Cursor Fix All in Codex

Prompt To Fix All With AI
Fix the following 1 code review issue. Work through them one at a time, proposing concise fixes.

---

### Issue 1 of 1
Sources/YouVersionPlatformUI/Resources/Localizable.xcstrings:1336-1339
Every other string entry in this file has a descriptive translator comment, but `signIn.appMessage` received an empty string (`""`). An empty comment gives translators no context about where or how this string is used, which is particularly important here since the key has no localized value yet. It would be great to fill this in with a short description of what the app message is for.

```suggestion
    "signIn.appMessage": {
      "extractionState": "manual",
      "comment": "App-specific message shown on the sign-in screen."
    },
```

Reviews (1): Last reviewed commit: "chore: sync swift localization" | Re-trigger Greptile

Greptile also left 1 inline comment on this PR.

@github-actions

Copy link
Copy Markdown
Contributor

✅ Commit Lint: passed

All commit messages in this PR conform to Conventional Commits.

📦 Release preview: v5.2.3 (no bump)

These commits do not trigger a version bump. The published version on main would remain v5.2.3.

Release analyzer output
[analyzer] Analyzing commit: chore: sync swift localization
[analyzer] The commit should not trigger a release
[analyzer] Analysis of 1 commits complete: no release

Comment on lines 1336 to 1339
"signIn.appMessage": {
"extractionState": "manual"
"extractionState": "manual",
"comment": ""
},

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Every other string entry in this file has a descriptive translator comment, but signIn.appMessage received an empty string (""). An empty comment gives translators no context about where or how this string is used, which is particularly important here since the key has no localized value yet. It would be great to fill this in with a short description of what the app message is for.

Suggested change
"signIn.appMessage": {
"extractionState": "manual"
"extractionState": "manual",
"comment": ""
},
"signIn.appMessage": {
"extractionState": "manual",
"comment": "App-specific message shown on the sign-in screen."
},
Prompt To Fix With AI
This is a comment left during a code review.
Path: Sources/YouVersionPlatformUI/Resources/Localizable.xcstrings
Line: 1336-1339

Comment:
Every other string entry in this file has a descriptive translator comment, but `signIn.appMessage` received an empty string (`""`). An empty comment gives translators no context about where or how this string is used, which is particularly important here since the key has no localized value yet. It would be great to fill this in with a short description of what the app message is for.

```suggestion
    "signIn.appMessage": {
      "extractionState": "manual",
      "comment": "App-specific message shown on the sign-in screen."
    },
```

How can I resolve this? If you propose a fix, please make it concise.

Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

Fix in Claude Code Fix in Cursor Fix in Codex

@github-actions

Copy link
Copy Markdown
Contributor

Code Coverage Report

Coverage after merging chore/localization-sync-swift-20260629-4fa6992 into main will be
92.38%
Coverage Report
FileStmtsBranchesFuncsLinesUncovered Lines
/Users/runner/work/platform-sdk-swift/platform-sdk-swift/DerivedData/Build/Intermediates.noindex/YouVersionPlatform.build/Debug-iphonesimulator/YouVersionPlatformCoreTests.build/DerivedSources
   resource_bundle_accessor.swift87.50%100%75%88.89%19, 44–45
/Users/runner/work/platform-sdk-swift/platform-sdk-swift/Sources/YouVersionPlatformCore
   YouVersionPlatformConfiguration.swift100%100%100%100%
/Users/runner/work/platform-sdk-swift/platform-sdk-swift/Sources/YouVersionPlatformCore/APIs
   URLBuilder.swift87.26%100%88.89%87.05%12–19, 90–99
   URLRequest+YouVersion.swift100%100%100%100%
   YouVersionAPI.swift96.91%100%100%96.55%73, 81, 83
/Users/runner/work/platform-sdk-swift/platform-sdk-swift/Sources/YouVersionPlatformCore/APIs/Bible
   BibleVersionAPI.swift73.50%100%66.67%74.51%118–132, 37–39, 58, 65–67, 75, 87
   BibleVersions.swift93.06%100%100%92.06%32, 54, 60–61, 83
   Highlights.swift78.48%100%64.71%80.14%113, 125–132, 156, 159, 175, 202, 205, 213, 234–236, 31, 34, 50, 79, 83, 95
/Users/runner/work/platform-sdk-swift/platform-sdk-swift/Sources/YouVersionPlatformCore/APIs/Languages
   Languages.swift92.75%100%85.71%93.55%47–49, 79
/Users/runner/work/platform-sdk-swift/platform-sdk-swift/Sources/YouVersionPlatformCore/APIs/Organizations
   Organizations.swift37.04%100%33.33%37.50%29–39, 41–43, 51
/Users/runner/work/platform-sdk-swift/platform-sdk-swift/Sources/YouVersionPlatformCore/APIs/Users
   SignInWithYouVersionPKCEAuthorizationRequest.swift94.39%100%92.31%94.68%80–81, 87, 98
   SignInWithYouVersionPermission.swift0%100%0%0%8
   SignInWithYouVersionResult.swift86.21%100%50%92%
   Users.swift71.37%100%58.33%72.86%112, 144–150, 155, 16, 165, 17–20, 202, 205, 21, 222, 228, 245–247, 265–267, 269–271, 273–275, 277–279, 284–286, 31–40, 44, 61, 67–71, 85
   YouVersionUserInfo.swift70.59%100%50%73.33%18, 29–31
/Users/runner/work/platform-sdk-swift/platform-sdk-swift/Sources/YouVersionPlatformCore/APIs/VOTD
   VOTD.swift94.12%100%100%93.33%22
   YouVersionVerseOfTheDay.swift0%100%0%0%15–18, 20–25
/Users/runner/work/platform-sdk-swift/platform-sdk-swift/Sources/YouVersionPlatformCore/Bible
   BibleBook.swift100%100%100%100%
   BibleChapterRepository.swift85.26%100%82.76%85.83%111–113, 42, 49, 54–57, 65–68, 83
   BibleContentStorage.swift100%100%100%100%
   BibleHighlight.swift55.56%100%50%57.14%12–14
   BibleHighlightsCache.swift83.92%100%80%84.96%103–105, 117–118, 135–136, 62, 65–67, 72
   BibleHighlightsRepository.swift77.42%100%67.44%78.72%128–132, 19–20, 204–205, 207–209, 21, 210–211, 23, 237–238, 24, 240–244, 25, 27–29, 306–309, 31, 310–319, 32, 320–329, 33, 330–332
   BibleHighlightsViewModel.swift95.35%100%93.75%95.58%45, 48, 52, 57
   BibleReference.swift84.15%100%67.24%86.79%131, 226–227, 251, 255, 288, 301, 311, 321, 331, 333–344, 53–57, 83, 85, 87
   BibleTextNode.swift92.86%100%75%95.83%
   BibleTextNodeParser.swift94.29%100%100%93.79%104, 150, 155, 173, 190, 44, 56–59
   BibleVersion.swift70.10%100%86.67%67.07%107–126, 61, 71–74, 80
   BibleVersionRepository.swift86.30%100%83.02%87.03%125–128, 173, 212–217, 243, 248, 276–278, 71–74, 82–85
   DeprecatedBibleAPI.swift0%100%0%0%100, 102–104, 106–108, 110–112, 114–116, 119–121, 126, 128, 131–133, 138, 140, 142–144, 147–149, 27, 29–31, 36, 38, 40–42, 44–46, 48–50, 52–54, 56–58, 65–67, 69–71, 73–75, 77–79, 81–83, 85–87, 94–96, 98–99
/Users/runner/work/platform-sdk-swift/platform-sdk-swift/Sources/YouVersionPlatformCore/Logging
   YouVersionPlatformLogger.swift55.36%100%41.67%59.09%100, 49–51, 56–58, 77–79, 90, 92, 94, 98
/Users/runner/work/platform-sdk-swift/platform-sdk-swift/Sources/YouVersionPlatformCore/Utilities
   AbbreviationSplitting.swift100%100%100%100%
/Users/runner/work/platform-sdk-swift/platform-sdk-swift/Tests/YouVersionPlatformCoreTests
   AbbreviationSplittingTests.swift100%100%100%100%
   BibleChapterRepositoryTests.swift98.68%100%94.12%99.25%
   BibleContentStorageTests.swift100%100%100%100%
   BibleHighlightsCacheTests.swift100%100%100%100%
   BibleHighlightsRepositoryTests.swift99.52%100%100%99.48%56, 66
   BibleHighlightsViewModelTests.swift95.82%100%96.88%95.67%19–25, 30, 38, 46
   BibleMetadataAPITests.swift100%100%100%100%
   BibleReferenceTests.swift100%100%100%100%
   BibleReferenceTests_adjacency.swift100%100%100%100%
   BibleReferenceTests_codable.swift100%100%100%100%
   BibleReferenceTests_contains.swift100%100%100%100%
   BibleReferenceTests_existsIn.swift89.19%100%80%90.63%15–17, 9
   BibleReferenceTests_overlaps.swift100%100%100%100%
   BibleReferenceTests_unvalidatedReference.swift100%100%100%100%
   BibleTextNodeTests.swift100%100%100%100%
   BibleVersionAPITests.swift97.51%100%93.33%97.85%61–63
   BibleVersionRepositoryTests.swift96.36%100%90.91%96.89%20,

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