Handle countries that have been removed from the CLDR standard

Created on 11 February 2012, over 13 years ago
Updated 18 May 2025, about 22 hours ago

This is an issue that was split from #1068840: core/includes/standard.inc contains inaccurate country data .

There are some of the opinions taken from the previous thread.

  • To rename it in standard_country_list() with no update / defer the update
  • To remove it from standard_country_list() with no update.
  • To remove it from standard_country_list() and write an update script to handle the deletion that could run either:
    • During a major release
    • During a minor release

Also, the logic for some updates are trivial, like a code change "XA is now XB" or a country merge, "XA and XB are now XC". However, it is sometimes impossible to handle this without user import, as the country split like in the case of Netherlands Antilles.

The Netherlands Antilles was dissolved on 10 October 2010, Curaçao and Sint Maarten became two new constituent states with their own ISO codes. Bonaire, Sint Eustatius and Saba became special municipalities listed with a singular ISO code. So we get "AN splits into BQ, CW and SX". However, when Drupal 7 was released, the country list used AN and CW and excluded BQ and SX.

Country handling options when doing updates include:

  • Leave the country in the list indefinitely.
  • Leave and rename the country to mark it as removed, eg: "Netherlands Antilles (historical)"
  • Update the country to point to the most populated state and allow users to update manually as required.
  • Introduce a new element using an user-assigned code (the series of letters AA, QM to QZ, XA to XZ, and ZZ) that represents an unknown country and update the entry to this. ZZ is used by the Unicode Common Locale Data Repository for "Unknown or Invalid Territory" and this would probably be the best code choice.
  • Provide a more in-depth update (somehow)
📌 Task
Status

Postponed

Version

11.0 🔥

Component

language system

Created by

🇦🇺Australia alan d.

Live updates comments and jobs are added and updated live.
  • API clean-up

    Refactors an existing API or subsystem for consistency, performance, modularization, flexibility, third-party integration, etc. May imply an API change. Frequently used during the Code Slush phase of the release cycle.

  • D8MI

    (Drupal 8 Multilingual Initiative) is the tag used by the multilingual initiative to mark core issues (and some contributed module issues). For versions other than Drupal 8, use the i18n (Internationalization) tag on issues which involve or affect multilingual / multinational support. That is preferred over Translation.

Sign in to follow issues

Comments & Activities

Not all content is available!

It's likely this issue predates Contrib.social: some issue and comment data are missing.

Production build 0.71.5 2024