Wednesday, May 11, 2022

[cdjaqrac] comments in merged tzdata time zones

tzdata version 2021b controversially merged a lot of time zones that have agreed since 1970.  among other things, this caused comments in the database to become harder to understand.

as comparison, first, below are all the entries from the 2021a database (Debian Bullseye, before the change) that have both a comment and cover multiple countries (regions).  entries numbered 1, 2, and 3 have comments that are marginally confusing, not obvious which part of the comment refers to which country.

Regions Time Zone Comment
1 AS:Samoa (American)
UM:US minor outlying islands
Pacific/Pago_Pago Samoa, Midway
2 US:United States
UM:US minor outlying islands
Pacific/Honolulu Hawaii
NG:Nigeria
AO:Angola
BJ:Benin
CD:Congo (Dem. Rep.)
CF:Central African Rep.
CG:Congo (Rep.)
CM:Cameroon
GA:Gabon
GQ:Equatorial Guinea
NE:Niger
Africa/Lagos West Africa Time
CH:Switzerland
DE:Germany
LI:Liechtenstein
Europe/Zurich Swiss time
MZ:Mozambique
BI:Burundi
BW:Botswana
CD:Congo (Dem. Rep.)
MW:Malawi
RW:Rwanda
ZM:Zambia
ZW:Zimbabwe
Africa/Maputo Central Africa Time
RU:Russia
UA:Ukraine
Europe/Simferopol Crimea
3 RE:Réunion
TF:French Southern & Antarctic Lands
Indian/Reunion Réunion, Crozet, Scattered Islands
TH:Thailand
KH:Cambodia
LA:Laos
VN:Vietnam
Asia/Bangkok Indochina (most areas)
NZ:New Zealand
AQ:Antarctica
Pacific/Auckland New Zealand time

below are entries from the 2021e database filtered by the same criteria.  there are many more confusing entries (numbered).  for example, in #6, which country is "Syowa" part of?  what if multiple countries have a location named Syowa?

Regions Time Zone Comment
1 AS:Samoa (American)
UM:US minor outlying islands
Pacific/Pago_Pago Samoa, Midway
2 US:United States
UM:US minor outlying islands
Pacific/Honolulu Hawaii
3 US:United States
CA:Canada
America/Phoenix MST - Arizona (except Navajo), Creston BC
4 PA:Panama
CA:Canada
KY:Cayman Islands
America/Panama EST - Panama, Cayman, ON (Atikokan), NU (Coral H)
5 CA:Canada
BS:Bahamas
America/Toronto Eastern - ON, QC (most areas), Bahamas
PR:Puerto Rico
AG:Antigua & Barbuda
CA:Canada
AI:Anguilla
AW:Aruba
BL:St Barthelemy
BQ:Caribbean NL
CW:Curaçao
DM:Dominica
GD:Grenada
GP:Guadeloupe
KN:St Kitts & Nevis
LC:St Lucia
MF:St Martin (French)
MS:Montserrat
SX:St Maarten (Dutch)
TT:Trinidad & Tobago
VC:St Vincent
VG:Virgin Islands (UK)
VI:Virgin Islands (US)
America/Puerto_Rico AST
NG:Nigeria
AO:Angola
BJ:Benin
CD:Congo (Dem. Rep.)
CF:Central African Rep.
CG:Congo (Rep.)
CM:Cameroon
GA:Gabon
GQ:Equatorial Guinea
NE:Niger
Africa/Lagos West Africa Time
CH:Switzerland
DE:Germany
LI:Liechtenstein
Europe/Zurich Swiss time
MZ:Mozambique
BI:Burundi
BW:Botswana
CD:Congo (Dem. Rep.)
MW:Malawi
RW:Rwanda
ZM:Zambia
ZW:Zimbabwe
Africa/Maputo Central Africa Time
RU:Russia
UA:Ukraine
Europe/Simferopol Crimea
6 SA:Saudi Arabia
AQ:Antarctica
KW:Kuwait
YE:Yemen
Asia/Riyadh Arabia, Syowa
7 RE:Réunion
TF:French Southern & Antarctic Lands
Indian/Reunion Réunion, Crozet, Scattered Islands
TH:Thailand
KH:Cambodia
LA:Laos
VN:Vietnam
Asia/Bangkok Indochina (most areas)
SG:Singapore
MY:Malaysia
Asia/Singapore Singapore, peninsular Malaysia
8 PG:Papua New Guinea
AQ:Antarctica
Pacific/Port_Moresby Papua New Guinea (most areas), Dumont d'Urville
NZ:New Zealand
AQ:Antarctica
Pacific/Auckland New Zealand time

a stopgap fix: comments in zone1970.tab should be applicable only to the first country (the country that the city is in), or to all countries listed for that time zone.  for comments that apply only to some countries, move the comment to a Link time zone in zone.tab .  but god help you if that comment requires an accented character, not supported by the older zone.tab .  better, probably requiring software changes, is for zone1970.tab to also support Link time zones as entries with their own comments and coordinates.

incidentally, zone1970.tab says "Comments; present if and only if a country has multiple timezones", which is (arguably) violated by these merged entries.  for example, Panama has only one time zone, so its entry should not have a comment, but it does (#4).

No comments :