babel icon indicating copy to clipboard operation
babel copied to clipboard

get_global('zone_territories') content vs Wikipedia 'canonical' tz names

Open anentropic opened this issue 6 months ago • 2 comments

I noticed that get_global('zone_territories').keys() is missing some entries found in pytz.common_timezones, some of which are green 'canonical' rows on the table here https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List

for example America/Argentina/Buenos_Aires

or there is Europe/Kiev but no Europe/Kyiv, where Wikipedia says the latter is canonical and the former a link

Does babel want to be fixing these issues? Or it relies on some upstream source that needs fixing/updating?

Below are all the tz names from pytz.common_timezones that lack a key in babel zone territories:

['Africa/Asmara',
 'America/Argentina/Buenos_Aires',
 'America/Argentina/Catamarca',
 'America/Argentina/Cordoba',
 'America/Argentina/Jujuy',
 'America/Argentina/Mendoza',
 'America/Atikokan',
 'America/Coyhaique',
 'America/Indiana/Indianapolis',
 'America/Kentucky/Louisville',
 'America/Nuuk',
 'Asia/Ho_Chi_Minh',
 'Asia/Kathmandu',
 'Asia/Kolkata',
 'Asia/Yangon',
 'Atlantic/Faroe',
 'Canada/Atlantic',
 'Canada/Central',
 'Canada/Eastern',
 'Canada/Mountain',
 'Canada/Newfoundland',
 'Canada/Pacific',
 'Europe/Kyiv',
 'GMT',
 'Pacific/Chuuk',
 'Pacific/Kanton',
 'Pacific/Pohnpei',
 'US/Alaska',
 'US/Arizona',
 'US/Central',
 'US/Eastern',
 'US/Hawaii',
 'US/Mountain',
 'US/Pacific',
 'UTC']

or if I extract the 'canonical' tz names from the Wikipedia page then the missing ones are:

{'America/Argentina/Buenos_Aires',
 'America/Argentina/Catamarca',
 'America/Argentina/Cordoba',
 'America/Argentina/Jujuy',
 'America/Argentina/Mendoza',
 'America/Coyhaique',
 'America/Indiana/Indianapolis',
 'America/Kentucky/Louisville',
 'America/Nuuk',
 'Asia/Ho_Chi_Minh',
 'Asia/Kathmandu',
 'Asia/Kolkata',
 'Asia/Yangon',
 'Atlantic/Faroe',
 'Europe/Kyiv',
 'Factory',
 'Pacific/Kanton'}

anentropic avatar Jul 03 '25 10:07 anentropic

well, if I then go back and parse the "Link" names and the canonical tz they link to...

in all but two cases the missing canonical names are present in zone territories but as one of the non-canonical link aliases

has_linked_alias = {
 'America/Argentina/Buenos_Aires',
 'America/Argentina/Catamarca',
 'America/Argentina/Cordoba',
 'America/Argentina/Jujuy',
 'America/Argentina/Mendoza',
 'America/Indiana/Indianapolis',
 'America/Kentucky/Louisville',
 'America/Nuuk',
 'Asia/Ho_Chi_Minh',
 'Asia/Kathmandu',
 'Asia/Kolkata',
 'Asia/Yangon',
 'Atlantic/Faroe',
 'Europe/Kyiv',
 'Pacific/Kanton'
}

the two canonical names with no corresponding link alias in zone territories are

In [92]: missing - has_linked_alias
Out[92]: {'America/Coyhaique', 'Factory'}

anentropic avatar Jul 03 '25 10:07 anentropic

Good catch! Please see https://github.com/python-babel/babel/pull/1220.

akx avatar Jul 08 '25 10:07 akx