Split America into North America and South America
Hi, debconf [1] for the tzdata Debian/Ubuntu package ask for the geographic area (e.g. Europe, Asia, etc) and then for the city inside this area. The resulting timezone is $area/$city. While working on the debconf template, I noticed that the America directory is the biggest with 157 cities. Having to find the correct city in that big list can take some time. The second biggest area is Asia with 90 countries. The timezones are split by continent/ocean. The Afro-Eurasia continent is split into Africa, Asia, Europe, but America is not split into North America and South America. For consistency I suggest to split America into North America and South America to have all seven continents present [2]. The git repository already separate northamerica and southamerica files. [1] https://en.wikipedia.org/wiki/Debian_configuration_system [2] https://en.wikipedia.org/wiki/Continent -- Benjamin Drung Debian & Ubuntu Developer
On Jan 6, 2023, at 12:51 PM, Benjamin Drung via tz <tz@iana.org> wrote:
debconf [1] for the tzdata Debian/Ubuntu package ask for the geographic area (e.g. Europe, Asia, etc) and then for the city inside this area.
Please tell me users are not being asked to directly construct a tzdb ID.
Hi, let us consider what conventions for the number and separations of continents exist. According to
https://en.wikipedia.org/w/index.php?title=Continent&oldid=1131827063#Number there exist (at least) five common conventions for the number and separation of continents:
a) 4 continents (Afro-Eurasia (Old World), America (New World), Australia, Antarctica b) 5 continents (Africa, Eurasia, America, Antarctica, Australia) c) 6 continents, combined-Eurasia (Africa, Eurasia, North America, South America, Antarctica, Australia) d) 6 continents, combined-America (Africa, Asia, Europe, America, Antarctica, Australia) e) 7 continents (Africa, Asia, Europe, North America, South America, Antarctica, Australia) For the prevalence of these separations (prevalence of c)-e) taken from the linked section of the Wikipedia article) a) is to my knowledge motivated by geology c) is is mostly used in Russia and some parts of Eastern Europe. d) is taught in some countries where Romance languages are spoken and in Greece e) is the model taught in most English-speaking countries So the central question that the problem reduces to is: which separation of continents should tzdata implicitly endorse by its data structures? If I were to ask, I would immediately say a) because this is the only convention of this list that is motivated by science (geology) and not by politics or history, but this is just my personal opinion. Regards, Wolfgang Keller On Fri, Jan 6, 2023 at 9:52 PM Benjamin Drung via tz <tz@iana.org> wrote:
Hi,
debconf [1] for the tzdata Debian/Ubuntu package ask for the geographic area (e.g. Europe, Asia, etc) and then for the city inside this area. The resulting timezone is $area/$city. While working on the debconf template, I noticed that the America directory is the biggest with 157 cities. Having to find the correct city in that big list can take some time. The second biggest area is Asia with 90 countries.
The timezones are split by continent/ocean. The Afro-Eurasia continent is split into Africa, Asia, Europe, but America is not split into North America and South America. For consistency I suggest to split America into North America and South America to have all seven continents present [2].
The git repository already separate northamerica and southamerica files.
[1] https://en.wikipedia.org/wiki/Debian_configuration_system [2] https://en.wikipedia.org/wiki/Continent
-- Benjamin Drung Debian & Ubuntu Developer
What we should be considering is the extreme disruption that would be caused by changing the tz identifiers for 157 time zones, affecting basically every user in the Western Hemisphere, with no actual change in functionality, so that a primitive UI for time zone selection can have shorter lists. -- Doug Ewell, CC, ALB | Lakewood, CO, US | ewellic.org
Wolfgang Keller via tz said:
Hi, let us consider what conventions for the number and separations of continents exist. According to
https://en.wikipedia.org/w/index.php?title=Continent&oldid=1131827063#Number there exist (at least) five common conventions for the number and separation of continents:
a) 4 continents (Afro-Eurasia (Old World), America (New World), Australia, Antarctica b) 5 continents (Africa, Eurasia, America, Antarctica, Australia) c) 6 continents, combined-Eurasia (Africa, Eurasia, North America, South America, Antarctica, Australia) d) 6 continents, combined-America (Africa, Asia, Europe, America, Antarctica, Australia) e) 7 continents (Africa, Asia, Europe, North America, South America, Antarctica, Australia)
You've forgotten Zealandia, which some consider to be a continent.
For the prevalence of these separations (prevalence of c)-e) taken from the linked section of the Wikipedia article) a) is to my knowledge motivated by geology c) is is mostly used in Russia and some parts of Eastern Europe. d) is taught in some countries where Romance languages are spoken and in Greece e) is the model taught in most English-speaking countries
So the central question that the problem reduces to is: which separation of continents should tzdata implicitly endorse by its data structures? If I were to ask, I would immediately say a) because this is the only convention of this list that is motivated by science (geology) and not by politics or history,
I disagree. e is justifiable by geography: a continent doesn't have to be the largest contiguous landmass; it can be bordered by an isthmus or mountain range just as much as a puddle. But I don't see the need for this split. The division was made for the few humans who work with the raw data, not for the general public and certainly not for geologists. It works, so don't break it. -- Clive D.W. Feather | If you lie to the compiler, Email: clive@davros.org | it will get its revenge. Web: http://www.davros.org | - Henry Spencer Mobile: +44 7973 377646
I chose "America/" in the 1990s to keep names shorter and avoid worrying about borderline cases - e.g., should it be "North_America/Port_of_Spain" or "South_America/Port_of_Spain"? Now that we've moved borderline cases like America/Curacao, America/Grenada, and America/Port_of_Spain to 'backward' the second justification has less force, at least until the southern Caribbean starts messing with its clocks. However, this also means America/* is less populated by unique entries identified by zone1970.tab. Currently zone1970.tab lists 95 Zones directly under America and 75 under Asia, hardly the order-of-magnitude difference that might necessitate the disruption of a great renaming. As Guy notes, users should not do 'ls /usr/share/zoneinfo/America' anyway; they should use a timezone chooser. Even the primitive chooser tzselect lists at most 54 names at once (all the countries in Asia, which as it happens outnumbers all the countries in North and South America combined). And commonly used timezone choosers let you point at a map, or figure things out from your location, or whatever. If we want to simplify timezone choosing we should be focusing our efforts there.
On Fri, 2023-01-06 at 13:28 -0800, Paul Eggert wrote:
I chose "America/" in the 1990s to keep names shorter and avoid worrying about borderline cases - e.g., should it be "North_America/Port_of_Spain" or "South_America/Port_of_Spain"?
Now that we've moved borderline cases like America/Curacao, America/Grenada, and America/Port_of_Spain to 'backward' the second justification has less force, at least until the southern Caribbean starts messing with its clocks. However, this also means America/* is less populated by unique entries identified by zone1970.tab. Currently zone1970.tab lists 95 Zones directly under America and 75 under Asia, hardly the order-of-magnitude difference that might necessitate the disruption of a great renaming.
As Guy notes, users should not do 'ls /usr/share/zoneinfo/America' anyway; they should use a timezone chooser. Even the primitive chooser tzselect lists at most 54 names at once (all the countries in Asia, which as it happens outnumbers all the countries in North and South America combined). And commonly used timezone choosers let you point at a map, or figure things out from your location, or whatever. If we want to simplify timezone choosing we should be focusing our efforts there.
tzselect was a nice pointer since it is a command line tool. Compared to the tzdata debconf it has three steps: continent -> country -> city. I consider changing the debconf structure to that as well. tzselect is using zone1970.tab and iso3166.tab to construct the questions? How is the mapping of continents -> countries generated? I am CCing Aurelien for his opinion. -- Benjamin Drung Debian & Ubuntu Developer
On 2023-01-06 16:16, Benjamin Drung wrote:
tzselect is using zone1970.tab and iso3166.tab to construct the questions? How is the mapping of continents -> countries generated?
By combining zone1970.tab's first column with the continents in its third column. There's no need to maintain a separate table. Also see the comments at the end of zone1970.tab, though these are experimental.
On 2023-01-07 01:16, Benjamin Drung wrote:
On Fri, 2023-01-06 at 13:28 -0800, Paul Eggert wrote:
I chose "America/" in the 1990s to keep names shorter and avoid worrying about borderline cases - e.g., should it be "North_America/Port_of_Spain" or "South_America/Port_of_Spain"?
Now that we've moved borderline cases like America/Curacao, America/Grenada, and America/Port_of_Spain to 'backward' the second justification has less force, at least until the southern Caribbean starts messing with its clocks. However, this also means America/* is less populated by unique entries identified by zone1970.tab. Currently zone1970.tab lists 95 Zones directly under America and 75 under Asia, hardly the order-of-magnitude difference that might necessitate the disruption of a great renaming.
As Guy notes, users should not do 'ls /usr/share/zoneinfo/America' anyway; they should use a timezone chooser. Even the primitive chooser tzselect lists at most 54 names at once (all the countries in Asia, which as it happens outnumbers all the countries in North and South America combined). And commonly used timezone choosers let you point at a map, or figure things out from your location, or whatever. If we want to simplify timezone choosing we should be focusing our efforts there.
tzselect was a nice pointer since it is a command line tool. Compared to the tzdata debconf it has three steps: continent -> country -> city. I consider changing the debconf structure to that as well.
tzselect is using zone1970.tab and iso3166.tab to construct the questions? How is the mapping of continents -> countries generated?
I am CCing Aurelien for his opinion.
The introduction of debconf dates for ages ago, so it's difficult to remember the details. The context was not so long after the China/Tawain issue in Debian, which affected many persons in Debian, so I think that we actually tried to avoid mapping cities to countries, at least in a visible way (the zone1970.tab is still shipped). It somehow matches what upstream tzdata is doing, quoting theory.html: - "Be robust in the presence of political changes" - "There is no requirement that every country or national capital must have a timezone name." With the current status quo, we more or less have at least one city per country, so people are happy to see the cities of their country available, but they can't complain that it is listed on the wrong place. Regards Aurelien -- Aurelien Jarno GPG: 4096R/1DDD8C9B aurelien@aurel32.net http://www.aurel32.net
participants (7)
-
Aurelien Jarno -
Benjamin Drung -
Clive D.W. Feather -
Doug Ewell -
Guy Harris -
Paul Eggert -
Wolfgang Keller