Details
-
Story
-
Resolution: Unresolved
-
Medium
-
4.6.8
-
None
-
None
Description
We need a way to easily maintain the country list. The list is currently based on ISO 3166-1 I believe, but isn't perfectly up to date.
https://github.com/ibexa/core/blob/main/src/lib/Resources/settings/fieldtypes.yml
As an yml config file it is easy to edit, but we have to ensure updates won't break edits.
Why? Because no country list is neutral. We need a documented way for clients to adapt this list to their needs. Even the UN / ISO 3166 source includes controversial items like "Taiwan, province of China", "State of Palestine", Falklands/Malvinas, Western Sahara, and more.
https://en.wikipedia.org/wiki/ISO_3166-1#Naming_and_disputes
...yet ISO 3166 doesn't include Kosovo, which has passed the criteria for inclusion but isn't yet actually included. It's widely recognised as a country especially in Europe and the West which is our main customer base, but not in Serbia and some other countries. It is currently included in our list after a customer requested it in EZP-32302, and it might be controversial to remove it. Customers should be informed about these issues and be given a way to make their adaptations.
This repo https://github.com/lukes/ISO-3166-Countries-with-Regional-Codes/blob/master/all/all.csv
strictly follows ISO-3166. We could use that, with or without our own changes, and document the best way to modify it. We should also establish a routine for regularly updating our country list.
Summary
- Establish a routine for maintaining the country list, if possible with automation
- Decide if our default list should be ISO 3166 which means removing Kosovo
or if our default list should include some modifications, like Kosovo - Document the recommended way to modify the country list