Add Terms of Use and Privacy Policy links to AppStoreStrings.po - #4931
Add Terms of Use and Privacy Policy links to AppStoreStrings.po#4931mokagio wants to merge 1 commit into
Conversation
|
Claude finished @mokagio's task in 2m 49s —— View job Review:
|
| # | Issue | Severity |
|---|---|---|
| 1 | v8.18-whats-new carries the stale 8.17 "PULL TO REFRESH" text, not the actual 8.18 changelog that's in podcasts/Resources/release_notes.txt. Translators would translate outdated copy under the 8.18 key. |
🔴 Should fix |
| 2 | description.txt is now 3946 / 4000 characters — ~54 chars of headroom. Expanding locales (de-DE) will likely exceed max_size: 4000 and fall back to English for the entire description. Also no translator note to leave the two URLs untranslated. |
🟡 Worth considering |
| 3 | fastlane/AppStoreStringsTVOS.po was not regenerated — still X-Generator: 14.11.0 and still v8.17-whats-new, while its metadata-tvos/default/description.txt already has the Terms/Privacy links. The two GlotPress projects are now on different generator versions and different release keys. |
🟡 Worth considering |
Security / performance: nothing to flag. Both URLs are HTTPS and point at support.pocketcasts.com; this is release-metadata tooling with no runtime code path.
Nits: the PO-Revision-Date timezone shift (+0100 → +1000) is just the generating machine's locale — harmless. The missing #. translators: comment on the whats-new entry is pre-existing toolkit behaviour, not introduced here.
Also worth expanding the PR description: the title only mentions the links, but the diff additionally fixes the quote escaping and rolls the what's-new key to 8.18 — both of which invalidate existing GlotPress translations for app_store_desc.
--- • Branch: mokagio/regen-appstorestrings-po
| msgstr "" | ||
|
|
||
| msgctxt "v8.17-whats-new" | ||
| msgctxt "v8.18-whats-new" |
There was a problem hiding this comment.
The context key moved to v8.18-whats-new (matching VERSION_SHORT = 8.18 in config/Version.xcconfig, which is what app_store_metadata_source_files/app_store_metadata_target_files key off), but the msgid body is byte-for-byte the old 8.17 copy — the "PULL TO REFRESH" blurb that's still sitting in fastlane/metadata/default/release_notes.txt.
The real 8.18 changelog is in podcasts/Resources/release_notes.txt (Bookmarks multi-select fixes, Smart Bookmarks, tvOS waveform, Up Next nav bar…). As it stands, translators will be asked to translate outdated release notes under the 8.18 key, and download_localized_app_store_metadata will pull them back into release_notes.txt for the 8.18 submission.
Suggest updating fastlane/metadata/default/release_notes.txt (and fastlane/metadata-tvos/default/release_notes.txt, which has the same stale text) with the actual 8.18 notes and re-running update_app_store_strings before this lands on GlotPress.
| " • Wired: \"Pocket Casts Is the Podcast App Every iPhone User Needs\"\n" | ||
| " • iMore: \"Pocket Casts is the best podcast app for iPhone\"\n" |
There was a problem hiding this comment.
This unescaping is a genuine fix, not a regression — worth calling out in the PR description since it isn't in the title.
fastlane/metadata/default/description.txt:4-5 contains plain double quotes:
• Wired: "Pocket Casts Is the Podcast App Every iPhone User Needs"
In PO syntax a quote inside a msgid is escaped as \", so the new form round-trips to "…". The old \\\" decoded to a literal backslash plus a quote, i.e. the App Store description would have rendered \"Pocket Casts Is…\". The toolkit bump (14.11.0 → 14.11.2) fixed the double-escaping.
One consequence: this changes the app_store_desc msgid, so GlotPress will treat it as a new string and existing localized descriptions will be dropped until re-translated. Unavoidable given the source change (the appended links do it too), just worth expecting English fallback for a while.
| "\n" | ||
| "Terms of Use: https://support.pocketcasts.com/article/terms-of-use\n" | ||
| "Privacy Policy: https://support.pocketcasts.com/article/privacy-policy" |
There was a problem hiding this comment.
Heads-up on headroom rather than a problem with this diff: fastlane/metadata/default/description.txt is now 3946 characters (wc -m), and both app_store_desc entries in app_store_metadata_target_files declare max_size: 4000. That leaves ~54 characters.
Languages that expand relative to English (de-DE in particular) will very likely blow past 4000 once the ~135 characters of Terms/Privacy lines are added, and oversized strings get rejected by the download step — those locales would silently fall back to English for the whole description. Might be worth trimming a paragraph from the source description to buy back some room.
Also, the two URLs are inside the translatable app_store_desc blob with no note telling translators to leave them alone. The #. translators: comment for this entry is generic ("Multi-paragraph text used to display in the Apple App Store."); adding "do not translate the URLs" to the comment in app_store_metadata_source_files (fastlane/Fastfile:1449) would be cheap insurance against a localized link that 404s.
There was a problem hiding this comment.
Pull request overview
Updates the iOS App Store metadata translation source (fastlane/AppStoreStrings.po) to include required legal links in the store description and refresh associated metadata/version keys used by the Fastlane metadata pipeline.
Changes:
- Appends Terms of Use and Privacy Policy URLs to the App Store description text.
- Updates PO header metadata (revision date, generator version).
- Bumps the “What’s New” message context key from
v8.17-whats-newtov8.18-whats-new.
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
| " • Wired: \"Pocket Casts Is the Podcast App Every iPhone User Needs\"\n" | ||
| " • iMore: \"Pocket Casts is the best podcast app for iPhone\"\n" |
No description provided.