Add support for 11 new App Store Connect locales#29959
Conversation
…e, mr, ml, kn, gu, pa, ur, sl, or)
Give me a ping when you believe this works in API. PR looks fine |
Fix bn→bn-BD, ur→ur-PK and update all new locales to their canonical App Store Connect locale codes (e.g. gu-IN, kn-IN, ml-IN, mr-IN, or-IN, pa-IN, sl-SI, ta-IN, te-IN) so deliver uploads succeed without locale validation errors. Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
|
I tested this locally and ran into an issue — the bare codes (bn, gu, etc.) get rejected by the ASC API with "The language specified is not listed for localization". I poked at one of my apps' existing locales via spaceship and ASC actually has them stored with regional suffixes:
Swapped those in for the bare codes and fastlane deliver happily pushed all 50 locales. Might be worth updating ALL_LANGUAGES (and the itc_locale values in languageMapping.json) to match. |
|
@Ryu0118 can this PR be updated and merged? If @ricsantos confirms that it is working with properly specified locales. |
Update itc_locale in languageMapping.json so that bn, gu, kn, ml, mr, or, pa, sl, ta, te, ur match their canonical locale values (bn-BD, gu-IN, kn-IN, ml-IN, mr-IN, or-IN, pa-IN, sl-SI, ta-IN, te-IN, ur-PK). This ensures the deprecated language-name input path in produce/itunes_connect.rb maps to a code accepted by App Store Connect, since `from_standard_to_itc_locale` is consumed by ConnectAPI::App.create via produce. Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
|
Any hints on how to run this branch locally? Our release is blocked without it… |
|
@iBotPeaches I verified end-to-end against the live ASC API on my own app. All 11 new locales (bn-BD, gu-IN, kn-IN, ml-IN, mr-IN, or-IN, pa-IN, sl-SI, ta-IN, te-IN, ur-PK) uploaded successfully via deliver. |
|
@biodranik point your Gemfile at this branch. gem "fastlane", git: "https://github.com/Ryu0118/fastlane.git", branch: "add-new-app-store-connect-locales"Then bundle install and run deliver as usual. |
|
I tested this branch, and it works with new locales. So this PR could have been merged a month ago with proper fixes... @lacostej PTAL This should be released ASAP after merging… |
There was a problem hiding this comment.
Pull request overview
This PR updates fastlane’s App Store Connect language/locale constants and mappings to recognize Apple’s newly announced 11 additional metadata localizations, so users can select/activate these languages in deliver/produce/spaceship once Apple’s backend supports them.
Changes:
- Added 11 new language codes to the shared
ALL_LANGUAGESlocale lists (Deliver and FastlaneCore). - Added the corresponding language names to Produce’s default language list.
- Extended Spaceship’s
languageMapping.jsonwith new locale/name/itc-locale mapping entries.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
spaceship/lib/assets/languageMapping.json |
Adds new language mapping records for the 11 locales. |
produce/lib/produce/available_default_languages.rb |
Adds the 11 new language names to the selectable default language list. |
fastlane_core/lib/fastlane_core/languages.rb |
Extends the canonical ALL_LANGUAGES list with the new language codes. |
deliver/lib/deliver/languages.rb |
Mirrors the canonical ALL_LANGUAGES additions for deliver validation/usage. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
Added Copilot who got confused that Apple is now transitioning to the region specific language codes, when previously they were all iso2 codes. Sounds like we've had a confirmed test, so this might be good to go. |
There was a problem hiding this comment.
Hey @Ryu0118 👋
Thank you for your contribution to fastlane and congrats on getting this pull request merged 🎉
The code change now lives in the master branch, however it wasn't released to RubyGems yet.
We usually ship about once a month, and your PR will be included in the next one.
Please let us know if this change requires an immediate release by adding a comment here 👍
We'll notify you once we shipped a new release with your changes 🚀"
…29959) * [deliver] Add support for 11 new App Store Connect locales (bn, ta, te, mr, ml, kn, gu, pa, ur, sl, or) * [deliver] Use canonical ASC locale codes for new 11 languages Fix bn→bn-BD, ur→ur-PK and update all new locales to their canonical App Store Connect locale codes (e.g. gu-IN, kn-IN, ml-IN, mr-IN, or-IN, pa-IN, sl-SI, ta-IN, te-IN) so deliver uploads succeed without locale validation errors. Co-Authored-By: Claude Sonnet 4.6 <[email protected]> * [spaceship] Align itc_locale with canonical codes for new 11 languages Update itc_locale in languageMapping.json so that bn, gu, kn, ml, mr, or, pa, sl, ta, te, ur match their canonical locale values (bn-BD, gu-IN, kn-IN, ml-IN, mr-IN, or-IN, pa-IN, sl-SI, ta-IN, te-IN, ur-PK). This ensures the deprecated language-name input path in produce/itunes_connect.rb maps to a code accepted by App Store Connect, since `from_standard_to_itc_locale` is consumed by ConnectAPI::App.create via produce. Co-Authored-By: Claude Sonnet 4.6 <[email protected]> --------- Co-authored-by: Claude Sonnet 4.6 <[email protected]>
There was a problem hiding this comment.
Congratulations! 🎉 This was released as part of fastlane 2.234.0 🚀
Summary
On March 31, 2026, Apple announced that App Store Connect now supports localized metadata for 11 new languages, bringing the total from 39 to 50 localizations.
This PR adds support for the following new locales:
itc_localelocale(BCP 47)bnbngugu-INknkn-INmlml-INmrmr-INoror-INpapa-INslsl-SItata-INtete-INururChanges
deliver/lib/deliver/languages.rb— Added 11 locales toALL_LANGUAGESfastlane_core/lib/fastlane_core/languages.rb— Added 11 locales toALL_LANGUAGESproduce/lib/produce/available_default_languages.rb— Added 11 language names to the default language listspaceship/lib/assets/languageMapping.json— Added locale/itc_locale mappings for all 11 languagesReferences
Note
As of April 6, 2026, the App Store Connect API backend may not yet accept these new locale codes (returns "The language specified is not listed for localization"), even though the web UI supports them. This is consistent with past language additions where the API lagged behind the UI. This PR prepares fastlane so it's ready once Apple's API backend catches up.