Patch CLDR subdivisions for IT-OT and IT-CI, bump v1.24.2#458
Open
DominiqueFlaaa wants to merge 1 commit intomainfrom
Open
Patch CLDR subdivisions for IT-OT and IT-CI, bump v1.24.2#458DominiqueFlaaa wants to merge 1 commit intomainfrom
DominiqueFlaaa wants to merge 1 commit intomainfrom
Conversation
45eb8bb to
daeed80
Compare
daeed80 to
e96119c
Compare
PR #451 updated `data/regions/IT.yml` to reflect Italy's June 2025 restoration of two Sardinian provinces, but left `data/cldr/locales/<locale>/subdivisions.yml` carrying the old names. Consumers that resolve province labels through CLDR (e.g. atlas's `country_formatter.rb` via `ShopifyI18n::Zone#name` -> `I18n.t("subdivisions.itXX")`) silently overrode the corrected country_db names with stale CLDR translations, so admin/buyer surfaces in atlas continued to display "Olbia-Tempio" and "Carbonia-Iglesias". This commit patches CLDR data so the new names propagate: IT-OT: Olbia-Tempio -> Gallura Nord-Est Sardegna IT-CI: Carbonia-Iglesias -> Sulcis Iglesiente - :en (source) and :it (locale) patched -- corrects the language used by Italian-speaking merchants and the English source string. - :de patched -- largest non-en/it consumer of IT addresses; prefix-preserving form ("Provinz Gallura Nord-Est Sardegna" / "Provinz Sulcis Iglesiente"). - All other locales remain on stale upstream CLDR. Shopify's translation-platform[bot] only fans out files under data/regions/, data/other/hand_translated/, and data/other/timezones/ -- it does not touch data/cldr/, so it cannot propagate this fix. Tracking via TODO in patch.rb pending an upstream Unicode CLDR update. - rake/cldr/patch.rb: static :it/:en/:de patches so future cldr:data:import runs re-apply the fix. - data/cldr/locales/{en,it,de}/subdivisions.yml: updated. - Bumped to v1.24.2 + CHANGELOG entry. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
e96119c to
29cc9fb
Compare
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.
Summary
Italy restored two Sardinian provinces in June 2025 with new names. PR #451 updated
data/regions/IT.ymlaccordingly, butdata/cldr/locales/*/subdivisions.ymlstill carried the old names. Atlas (and any other consumer that resolves province labels through CLDR viaShopifyI18n::Zone#name→I18n.t("subdivisions.itXX")) silently overrode the correctedcountry_dbvalues, so the country GraphQL endpoint kept returning"Olbia-Tempio"and"Carbonia-Iglesias". This PR unblocks Italy by patching CLDR data so the new names flow through to atlas's admin/buyer surfaces.Changes
Patches applied per-locale in
rake/cldr/patch.rb(so futurecldr:data:importruns re-apply on top of upstream)::en— source string for downstream English UIs.:it— Italian-speaking merchants on IT addresses.:de— largest non-en/it consumer of IT addresses; prefix-preserving form ("Provinz Gallura Nord-Est Sardegna","Provinz Sulcis Iglesiente").Why only en/it/de
The translation-platform[bot] does not propagate CLDR subdivision data. Its
translation.ymlconfig only coversdata/regions/,data/other/hand_translated/, anddata/other/timezones/— every translation-platform[bot] commit on this repo confirms it. So we cannot lean on the automation to fan this out to the other 30+ target locales.Choosing en/it/de targets the locales where:
For all other locales, the old names remain. A
TODOcomment + reference to the upstream Unicode CLDR ticket pattern (CLDR-14092-style) is left inpatch.rb. Once upstream ships the rename, the patches can be removed.Verification
Tophatted with atlas pinned to this branch (
gem "worldwide", path: ...):Both the direct path (
ShopifyI18n::Territories.find_by_code("IT").zone(...).name) and the full country endpoint path (Types::CountryFormatter.build_formatted_country) return the expected names.Test plan
bundle exec rake test(region + locale tests) — greenbundle exec rubocop rake/cldr/patch.rb— cleanFollow-ups
🤖 Generated with Claude Code