From 8e18f04dab6bb2e205785e993e4813f9f0ff4b92 Mon Sep 17 00:00:00 2001 From: Stuart Bishop Date: Sat, 2 Oct 2021 13:34:55 +1000 Subject: Squashed 'tz/' changes from 9ffa3f6e..fe890655 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit d2c79c4b Release 2021c ec62c0db Adjust formatting of NEWS file 9b900f41 Fix 'zic -b fat' bug with Port Moresby 32-bit data 43dbb433 Port better to >64-bit platforms 7483e30b Revert most 2021b changes to 'backward' 6c15079a Add America/Virgin link in ‘backzone’ 2a7c7c58 Fix Jan Mayen typo 79f5ac00 Distribute SECURITY in release tarballs git-subtree-dir: tz git-subtree-split: fe890655b72594ee42cf235f739220e71eef89f4 --- Makefile | 6 ++-- NEWS | 50 +++++++++++++++++++++++++++----- africa | 37 ++++++++++++++++++++++++ asia | 10 ++++++- australasia | 5 ++++ backward | 93 ++---------------------------------------------------------- backzone | 1 + europe | 26 +++++++++++++---- northamerica | 26 ++++++++++++++++- southamerica | 4 +-- zic.c | 16 +++++------ 11 files changed, 154 insertions(+), 120 deletions(-) diff --git a/Makefile b/Makefile index 33f3168..a222098 100644 --- a/Makefile +++ b/Makefile @@ -504,7 +504,7 @@ MANTXTS= newctime.3.txt newstrftime.3.txt newtzset.3.txt \ tzfile.5.txt tzselect.8.txt zic.8.txt zdump.8.txt \ date.1.txt COMMON= calendars CONTRIBUTING LICENSE Makefile \ - NEWS README theory.html version + NEWS README SECURITY theory.html version WEB_PAGES= tz-art.html tz-how-to.html tz-link.html CHECK_WEB_PAGES=check_theory.html check_tz-art.html \ check_tz-how-to.html check_tz-link.html @@ -539,7 +539,7 @@ ENCHILADA = $(EIGHT_YARDS) $(TZS) # This list is not the same as the output of 'git ls-files', since # .gitignore is not distributed. VERSION_DEPS= \ - calendars CONTRIBUTING LICENSE Makefile NEWS README \ + calendars CONTRIBUTING LICENSE Makefile NEWS README SECURITY \ africa antarctica asctime.c asia australasia \ backward backzone \ checklinks.awk checktab.awk \ @@ -763,7 +763,7 @@ check_character_set: $(ENCHILADA) sharp='#' && \ ! grep -Env $(SAFE_LINE) $(MANS) date.1 $(MANTXTS) \ $(MISC) $(SOURCES) $(WEB_PAGES) \ - CONTRIBUTING LICENSE README \ + CONTRIBUTING LICENSE README SECURITY \ version tzdata.zi && \ ! grep -Env $(SAFE_LINE)'|^UNUSUAL_OK_'$(OK_CHAR)'*$$' \ Makefile && \ diff --git a/NEWS b/NEWS index d1ccf4e..f7362c8 100644 --- a/NEWS +++ b/NEWS @@ -1,5 +1,41 @@ News for the tz database +Release 2021c - 2021-10-01 14:21:49 -0700 + + Briefly: + Revert most 2021b changes to 'backward'. + Fix 'zic -b fat' bug in pre-1970 32-bit data. + Fix two Link line typos. + Distribute SECURITY file. + + This release is intended as a bugfix release, to fix compatibility + problems and typos reported since 2021b was released. + + Changes to Link directives + + Revert almost all of 2021b's changes to the 'backward' file, + by moving Link directives back to where they were in 2021a. + Although 'zic' doesn't care which source file contains a Link + directive, some downstream uses ran into trouble with the move. + (Problem reported by Stephen Colebourne for Joda-Time.) + + Fix typo that linked Atlantic/Jan_Mayen to the wrong location + (problem reported by Chris Walton). + + Fix 'backzone' typo that linked America/Virgin to the wrong + location (problem reported by Michael Deckers). + + Changes to code + + Fix a bug in 'zic -b fat' that caused old timestamps to be + mishandled in 32-bit-only readers (problem reported by Daniel + Fischer). + + Changes to documentation + + Distribute the SECURITY file (problem reported by Andreas Radke). + + Release 2021b - 2021-09-24 16:23:00 -0700 Briefly: @@ -18,13 +54,13 @@ Release 2021b - 2021-09-24 16:23:00 -0700 tzfile.5 better matches a draft successor to RFC 8536. A new file SECURITY. - This release is prompted by recent announcements by Jordan and Samoa. - It incorporates many other changes that had accumulated since 2021a. - However, it omits most proposed changes that merged all Zones - agreeing since 1970, as concerns were raised about doing too many of - these changes at once. It does keeps some of these changes in the - interest of making tzdb more equitable one step at a time; see - "Merge more location-based Zones" below. + This release is prompted by recent announcements by Jordan and Samoa. + It incorporates many other changes that had accumulated since 2021a. + However, it omits most proposed changes that merged all Zones + agreeing since 1970, as concerns were raised about doing too many of + these changes at once. It does keeps some of these changes in the + interest of making tzdb more equitable one step at a time; see + "Merge more location-based Zones" below. Changes to future timestamps diff --git a/africa b/africa index c73f0df..48e9d79 100644 --- a/africa +++ b/africa @@ -150,6 +150,16 @@ Zone Africa/Ndjamena 1:00:12 - LMT 1912 # N'Djamena # Zone NAME STDOFF RULES FORMAT [UNTIL] Zone Africa/Abidjan -0:16:08 - LMT 1912 0:00 - GMT +Link Africa/Abidjan Africa/Accra # Ghana +Link Africa/Abidjan Africa/Bamako # Mali +Link Africa/Abidjan Africa/Banjul # The Gambia +Link Africa/Abidjan Africa/Conakry # Guinea +Link Africa/Abidjan Africa/Dakar # Senegal +Link Africa/Abidjan Africa/Freetown # Sierra Leone +Link Africa/Abidjan Africa/Lome # Togo +Link Africa/Abidjan Africa/Nouakchott # Mauritania +Link Africa/Abidjan Africa/Ouagadougou # Burkina Faso +Link Africa/Abidjan Atlantic/St_Helena # St Helena # Djibouti # See Africa/Nairobi. @@ -436,6 +446,15 @@ Zone Africa/Nairobi 2:27:16 - LMT 1908 May 2:30 - +0230 1936 Dec 31 24:00 2:45 - +0245 1942 Jul 31 24:00 3:00 - EAT +Link Africa/Nairobi Africa/Addis_Ababa # Ethiopia +Link Africa/Nairobi Africa/Asmara # Eritrea +Link Africa/Nairobi Africa/Dar_es_Salaam # Tanzania +Link Africa/Nairobi Africa/Djibouti +Link Africa/Nairobi Africa/Kampala # Uganda +Link Africa/Nairobi Africa/Mogadishu # Somalia +Link Africa/Nairobi Indian/Antananarivo # Madagascar +Link Africa/Nairobi Indian/Comoro +Link Africa/Nairobi Indian/Mayotte # Lesotho # See Africa/Johannesburg. @@ -1122,6 +1141,13 @@ Zone Africa/El_Aaiun -0:52:48 - LMT 1934 Jan # El Aaiún # Zone NAME STDOFF RULES FORMAT [UNTIL] Zone Africa/Maputo 2:10:20 - LMT 1903 Mar 2:00 - CAT +Link Africa/Maputo Africa/Blantyre # Malawi +Link Africa/Maputo Africa/Bujumbura # Burundi +Link Africa/Maputo Africa/Gaborone # Botswana +Link Africa/Maputo Africa/Harare # Zimbabwe +Link Africa/Maputo Africa/Kigali # Rwanda +Link Africa/Maputo Africa/Lubumbashi # E Dem. Rep. of Congo +Link Africa/Maputo Africa/Lusaka # Zambia # Namibia @@ -1269,6 +1295,15 @@ Zone Africa/Lagos 0:13:35 - LMT 1905 Jul 1 0:13:35 - LMT 1914 Jan 1 0:30 - +0030 1919 Sep 1 1:00 - WAT +Link Africa/Lagos Africa/Bangui # Central African Republic +Link Africa/Lagos Africa/Brazzaville # Rep. of the Congo +Link Africa/Lagos Africa/Douala # Cameroon +Link Africa/Lagos Africa/Kinshasa # Dem. Rep. of the Congo (west) +Link Africa/Lagos Africa/Libreville # Gabon +Link Africa/Lagos Africa/Luanda # Angola +Link Africa/Lagos Africa/Malabo # Equatorial Guinea +Link Africa/Lagos Africa/Niamey # Niger +Link Africa/Lagos Africa/Porto-Novo # Benin # Réunion # Zone NAME STDOFF RULES FORMAT [UNTIL] @@ -1366,6 +1401,8 @@ Rule SA 1943 1944 - Mar Sun>=15 2:00 0 - Zone Africa/Johannesburg 1:52:00 - LMT 1892 Feb 8 1:30 - SAST 1903 Mar 2:00 SA SAST +Link Africa/Johannesburg Africa/Maseru # Lesotho +Link Africa/Johannesburg Africa/Mbabane # Eswatini # # Marion and Prince Edward Is # scientific station since 1947 diff --git a/asia b/asia index 73e0183..4e95797 100644 --- a/asia +++ b/asia @@ -1173,9 +1173,10 @@ Zone Asia/Famagusta 2:15:48 - LMT 1921 Nov 14 2:00 EUAsia EE%sT 2016 Sep 8 3:00 - +03 2017 Oct 29 1:00u 2:00 EUAsia EE%sT + # Classically, Cyprus belongs to Asia; e.g. see Herodotus, Histories, I.72. # However, for various reasons many users expect to find it under Europe. -# See the 'backward' file for the Europe/Nicosia link. +Link Asia/Nicosia Europe/Nicosia # Georgia # From Paul Eggert (1994-11-19): @@ -3531,6 +3532,7 @@ Zone Asia/Manila -15:56:00 - LMT 1844 Dec 31 Zone Asia/Qatar 3:26:08 - LMT 1920 # Al Dawhah / Doha 4:00 - +04 1972 Jun 3:00 - +03 +Link Asia/Qatar Asia/Bahrain # Saudi Arabia # @@ -3577,6 +3579,9 @@ Zone Asia/Qatar 3:26:08 - LMT 1920 # Al Dawhah / Doha # Zone NAME STDOFF RULES FORMAT [UNTIL] Zone Asia/Riyadh 3:06:52 - LMT 1947 Mar 14 3:00 - +03 +Link Asia/Riyadh Antarctica/Syowa +Link Asia/Riyadh Asia/Aden # Yemen +Link Asia/Riyadh Asia/Kuwait # Singapore # taken from Mok Ly Yng (2003-10-30) @@ -3833,6 +3838,8 @@ Zone Asia/Dushanbe 4:35:12 - LMT 1924 May 2 Zone Asia/Bangkok 6:42:04 - LMT 1880 6:42:04 - BMT 1920 Apr # Bangkok Mean Time 7:00 - +07 +Link Asia/Bangkok Asia/Phnom_Penh # Cambodia +Link Asia/Bangkok Asia/Vientiane # Laos # Turkmenistan # From Shanks & Pottenger. @@ -3847,6 +3854,7 @@ Zone Asia/Ashgabat 3:53:32 - LMT 1924 May 2 # or Ashkhabad # Zone NAME STDOFF RULES FORMAT [UNTIL] Zone Asia/Dubai 3:41:12 - LMT 1920 4:00 - +04 +Link Asia/Dubai Asia/Muscat # Oman # Uzbekistan # Byalokoz 1919 says Uzbekistan was 4:27:53. diff --git a/australasia b/australasia index 8e76c27..7348b87 100644 --- a/australasia +++ b/australasia @@ -458,6 +458,7 @@ Zone Pacific/Guam -14:21:00 - LMT 1844 Dec 31 9:00 - +09 1944 Jul 31 10:00 Guam G%sT 2000 Dec 23 10:00 - ChST # Chamorro Standard Time +Link Pacific/Guam Pacific/Saipan # N Mariana Is # Kiribati # Zone NAME STDOFF RULES FORMAT [UNTIL] @@ -583,6 +584,8 @@ Zone Pacific/Chatham 12:13:48 - LMT 1868 Nov 2 12:15 - +1215 1946 Jan 1 12:45 Chatham +1245/+1345 +Link Pacific/Auckland Antarctica/McMurdo + # Auckland Is # uninhabited; Māori and Moriori, colonial settlers, pastoralists, sealers, # and scientific personnel have wintered @@ -676,6 +679,7 @@ Zone Pacific/Palau -15:02:04 - LMT 1844 Dec 31 # Koror Zone Pacific/Port_Moresby 9:48:40 - LMT 1880 9:48:32 - PMMT 1895 # Port Moresby Mean Time 10:00 - +10 +Link Pacific/Port_Moresby Antarctica/DumontDUrville # # From Paul Eggert (2014-10-13): # Base the Bougainville entry on the Arawa-Kieta region, which appears to have @@ -711,6 +715,7 @@ Zone Pacific/Pitcairn -8:40:20 - LMT 1901 # Adamstown Zone Pacific/Pago_Pago 12:37:12 - LMT 1892 Jul 5 -11:22:48 - LMT 1911 -11:00 - SST # S=Samoa +Link Pacific/Pago_Pago Pacific/Midway # in US minor outlying islands # Samoa (formerly and also known as Western Samoa) diff --git a/backward b/backward index 7c288e3..7685c74 100644 --- a/backward +++ b/backward @@ -4,120 +4,51 @@ # 2009-05-17 by Arthur David Olson. # This file provides links from old or merged timezone names to current ones. -# Many names changed in late 1993, and many merged names moved here -# in the period from 2013 through 2021. Several of these names are +# Many names changed in late 1993. Several of these names are # also present in the file 'backzone', which has data important only # for pre-1970 timestamps and so is out of scope for tzdb proper. # Link TARGET LINK-NAME -Link Africa/Abidjan Africa/Accra -Link Africa/Nairobi Africa/Addis_Ababa -Link Africa/Nairobi Africa/Asmara Link Africa/Nairobi Africa/Asmera -Link Africa/Abidjan Africa/Bamako -Link Africa/Lagos Africa/Bangui -Link Africa/Abidjan Africa/Banjul -Link Africa/Maputo Africa/Blantyre -Link Africa/Lagos Africa/Brazzaville -Link Africa/Maputo Africa/Bujumbura -Link Africa/Abidjan Africa/Conakry -Link Africa/Abidjan Africa/Dakar -Link Africa/Nairobi Africa/Dar_es_Salaam -Link Africa/Nairobi Africa/Djibouti -Link Africa/Lagos Africa/Douala -Link Africa/Abidjan Africa/Freetown -Link Africa/Maputo Africa/Gaborone -Link Africa/Maputo Africa/Harare -Link Africa/Nairobi Africa/Kampala -Link Africa/Maputo Africa/Kigali -Link Africa/Lagos Africa/Kinshasa -Link Africa/Lagos Africa/Libreville -Link Africa/Abidjan Africa/Lome -Link Africa/Lagos Africa/Luanda -Link Africa/Maputo Africa/Lubumbashi -Link Africa/Maputo Africa/Lusaka -Link Africa/Lagos Africa/Malabo -Link Africa/Johannesburg Africa/Maseru -Link Africa/Johannesburg Africa/Mbabane -Link Africa/Nairobi Africa/Mogadishu -Link Africa/Lagos Africa/Niamey -Link Africa/Abidjan Africa/Nouakchott -Link Africa/Abidjan Africa/Ouagadougou -Link Africa/Lagos Africa/Porto-Novo Link Africa/Abidjan Africa/Timbuktu -Link America/Puerto_Rico America/Anguilla -Link America/Puerto_Rico America/Antigua Link America/Argentina/Catamarca America/Argentina/ComodRivadavia -Link America/Puerto_Rico America/Aruba -Link America/Panama America/Atikokan Link America/Adak America/Atka -Link America/Puerto_Rico America/Blanc-Sablon Link America/Argentina/Buenos_Aires America/Buenos_Aires Link America/Argentina/Catamarca America/Catamarca -Link America/Panama America/Cayman Link America/Panama America/Coral_Harbour Link America/Argentina/Cordoba America/Cordoba -Link America/Phoenix America/Creston -Link America/Puerto_Rico America/Curacao -Link America/Puerto_Rico America/Dominica Link America/Tijuana America/Ensenada Link America/Indiana/Indianapolis America/Fort_Wayne Link America/Nuuk America/Godthab -Link America/Puerto_Rico America/Grenada -Link America/Puerto_Rico America/Guadeloupe Link America/Indiana/Indianapolis America/Indianapolis Link America/Argentina/Jujuy America/Jujuy Link America/Indiana/Knox America/Knox_IN -Link America/Puerto_Rico America/Kralendijk Link America/Kentucky/Louisville America/Louisville -Link America/Puerto_Rico America/Lower_Princes -Link America/Puerto_Rico America/Marigot Link America/Argentina/Mendoza America/Mendoza Link America/Toronto America/Montreal -Link America/Puerto_Rico America/Montserrat -Link America/Toronto America/Nassau -Link America/Puerto_Rico America/Port_of_Spain Link America/Rio_Branco America/Porto_Acre Link America/Argentina/Cordoba America/Rosario Link America/Tijuana America/Santa_Isabel Link America/Denver America/Shiprock -Link America/Puerto_Rico America/St_Barthelemy -Link America/Puerto_Rico America/St_Kitts -Link America/Puerto_Rico America/St_Lucia -Link America/Puerto_Rico America/St_Thomas -Link America/Puerto_Rico America/St_Vincent -Link America/Puerto_Rico America/Tortola Link America/Puerto_Rico America/Virgin -Link Pacific/Port_Moresby Antarctica/DumontDUrville -Link Pacific/Auckland Antarctica/McMurdo Link Pacific/Auckland Antarctica/South_Pole -Link Asia/Riyadh Antarctica/Syowa -Link Europe/Oslo Arctic/Longyearbyen -Link Asia/Riyadh Asia/Aden Link Asia/Ashgabat Asia/Ashkhabad -Link Asia/Qatar Asia/Bahrain Link Asia/Kolkata Asia/Calcutta Link Asia/Shanghai Asia/Chongqing Link Asia/Shanghai Asia/Chungking Link Asia/Dhaka Asia/Dacca Link Asia/Shanghai Asia/Harbin -Link Europe/Istanbul Asia/Istanbul Link Asia/Urumqi Asia/Kashgar Link Asia/Kathmandu Asia/Katmandu -Link Asia/Riyadh Asia/Kuwait Link Asia/Macau Asia/Macao -Link Asia/Dubai Asia/Muscat -Link Asia/Bangkok Asia/Phnom_Penh Link Asia/Yangon Asia/Rangoon Link Asia/Ho_Chi_Minh Asia/Saigon Link Asia/Jerusalem Asia/Tel_Aviv Link Asia/Thimphu Asia/Thimbu Link Asia/Makassar Asia/Ujung_Pandang Link Asia/Ulaanbaatar Asia/Ulan_Bator -Link Asia/Bangkok Asia/Vientiane Link Atlantic/Faroe Atlantic/Faeroe -Link Europe/Berlin Atlantic/Jan_Mayen -Link Africa/Abidjan Atlantic/St_Helena +Link Europe/Oslo Atlantic/Jan_Mayen Link Australia/Sydney Australia/ACT Link Australia/Sydney Australia/Canberra Link Australia/Hobart Australia/Currie @@ -152,22 +83,7 @@ Link Africa/Cairo Egypt Link Europe/Dublin Eire Link Etc/UTC Etc/UCT Link Europe/London Europe/Belfast -Link Europe/Prague Europe/Bratislava -Link Europe/Zurich Europe/Busingen -Link Europe/London Europe/Guernsey -Link Europe/London Europe/Isle_of_Man -Link Europe/London Europe/Jersey -Link Europe/Belgrade Europe/Ljubljana -Link Europe/Helsinki Europe/Mariehamn -Link Asia/Nicosia Europe/Nicosia -Link Europe/Belgrade Europe/Podgorica -Link Europe/Rome Europe/San_Marino -Link Europe/Belgrade Europe/Sarajevo -Link Europe/Belgrade Europe/Skopje Link Europe/Chisinau Europe/Tiraspol -Link Europe/Zurich Europe/Vaduz -Link Europe/Rome Europe/Vatican -Link Europe/Belgrade Europe/Zagreb Link Europe/London GB Link Europe/London GB-Eire Link Etc/GMT GMT+0 @@ -176,9 +92,6 @@ Link Etc/GMT GMT0 Link Etc/GMT Greenwich Link Asia/Hong_Kong Hongkong Link Atlantic/Reykjavik Iceland -Link Africa/Nairobi Indian/Antananarivo -Link Africa/Nairobi Indian/Comoro -Link Africa/Nairobi Indian/Mayotte Link Asia/Tehran Iran Link Asia/Jerusalem Israel Link America/Jamaica Jamaica @@ -194,9 +107,7 @@ Link America/Denver Navajo Link Asia/Shanghai PRC Link Pacific/Kanton Pacific/Enderbury Link Pacific/Honolulu Pacific/Johnston -Link Pacific/Pago_Pago Pacific/Midway Link Pacific/Pohnpei Pacific/Ponape -Link Pacific/Guam Pacific/Saipan Link Pacific/Pago_Pago Pacific/Samoa Link Pacific/Chuuk Pacific/Truk Link Pacific/Chuuk Pacific/Yap diff --git a/backzone b/backzone index fc5e8bf..9b51273 100644 --- a/backzone +++ b/backzone @@ -780,6 +780,7 @@ Zone America/St_Lucia -4:04:00 - LMT 1890 # Castries # US Virgin Is Zone America/St_Thomas -4:19:44 - LMT 1911 Jul # Charlotte Amalie -4:00 - AST +Link America/St_Thomas America/Virgin # St Vincent and the Grenadines Zone America/St_Vincent -4:04:56 - LMT 1890 # Kingstown diff --git a/europe b/europe index 1204c09..2adc308 100644 --- a/europe +++ b/europe @@ -505,6 +505,9 @@ Zone Europe/London -0:01:15 - LMT 1847 Dec 1 0:00s 1:00 - BST 1971 Oct 31 2:00u 0:00 GB-Eire %s 1996 0:00 EU GMT/BST +Link Europe/London Europe/Jersey +Link Europe/London Europe/Guernsey +Link Europe/London Europe/Isle_of_Man # From Paul Eggert (2018-02-15): # In January 2018 we discovered that the negative SAVE values in the @@ -1303,8 +1306,9 @@ Zone Europe/Helsinki 1:39:49 - LMT 1878 May 31 1:39:49 - HMT 1921 May # Helsinki Mean Time 2:00 Finland EE%sT 1983 2:00 EU EE%sT + # Åland Is -# See Europe/Helsinki. +Link Europe/Helsinki Europe/Mariehamn # France @@ -1500,7 +1504,8 @@ Zone Europe/Berlin 0:53:28 - LMT 1893 Apr # From Arthur David Olson (2012-03-03): # Büsingen and Zurich have shared clocks since 1970. -# See Europe/Zurich. + +Link Europe/Zurich Europe/Busingen # Georgia # Please see the "asia" file for Asia/Tbilisi. @@ -1798,6 +1803,9 @@ Zone Europe/Rome 0:49:56 - LMT 1866 Dec 12 # See Europe/Belgrade. +Link Europe/Rome Europe/Vatican +Link Europe/Rome Europe/San_Marino + # Latvia # From Liene Kanepe (1998-09-17): @@ -1890,7 +1898,7 @@ Zone Europe/Riga 1:36:34 - LMT 1880 # I could confirm from the paper that Liechtenstein did in fact follow # the same DST in 1941 and 1942 as Switzerland did. -# See Europe/Zurich. +Link Europe/Zurich Europe/Vaduz # Lithuania @@ -2247,7 +2255,8 @@ Zone Europe/Oslo 0:43:00 - LMT 1895 Jan 1 # Haudegen did not surrender to the Allies until September 1945. # # All these events predate our cutoff date of 1970, so use Europe/Oslo -# for these regions; see 'backward'. +# for these regions. +Link Europe/Oslo Arctic/Longyearbyen # Poland @@ -3516,9 +3525,14 @@ Zone Europe/Belgrade 1:22:00 - LMT 1884 # Shanks & Pottenger don't give as much detail, so go with Koželj. 1:00 - CET 1982 Nov 27 1:00 EU CE%sT +Link Europe/Belgrade Europe/Ljubljana # Slovenia +Link Europe/Belgrade Europe/Podgorica # Montenegro +Link Europe/Belgrade Europe/Sarajevo # Bosnia and Herzegovina +Link Europe/Belgrade Europe/Skopje # North Macedonia +Link Europe/Belgrade Europe/Zagreb # Croatia # Slovakia -# See Europe/Prague. +Link Europe/Prague Europe/Bratislava # Slovenia # See Europe/Belgrade. @@ -3989,7 +4003,7 @@ Zone Europe/Istanbul 1:55:52 - LMT 1880 2:00 1:00 EEST 2015 Nov 8 1:00u 2:00 EU EE%sT 2016 Sep 7 3:00 - +03 -# See the 'backward' file for Asia/Istanbul. +Link Europe/Istanbul Asia/Istanbul # Istanbul is in both continents. # Ukraine # diff --git a/northamerica b/northamerica index a2f2b43..b1a306d 100644 --- a/northamerica +++ b/northamerica @@ -829,6 +829,8 @@ Zone America/Phoenix -7:28:18 - LMT 1883 Nov 18 11:31:42 -7:00 - MST 1967 -7:00 US M%sT 1968 Mar 21 -7:00 - MST +Link America/Phoenix America/Creston + # From Arthur David Olson (1988-02-13): # A writer from the Inter Tribal Council of Arizona, Inc., # notes in private correspondence dated 1987-12-28 that "Presently, only the @@ -1766,6 +1768,7 @@ Zone America/Toronto -5:17:32 - LMT 1895 -5:00 Canada E%sT 1946 -5:00 Toronto E%sT 1974 -5:00 Canada E%sT +Link America/Toronto America/Nassau Zone America/Thunder_Bay -5:57:00 - LMT 1895 -6:00 - CST 1910 -5:00 - EST 1942 @@ -2810,7 +2813,7 @@ Zone America/Tijuana -7:48:04 - LMT 1922 Jan 1 0:11:56 # See America/Puerto_Rico. # The Bahamas -# See America/Montreal. +# See America/Toronto. # Barbados @@ -3565,6 +3568,8 @@ Zone America/Managua -5:45:08 - LMT 1890 Zone America/Panama -5:18:08 - LMT 1890 -5:19:36 - CMT 1908 Apr 22 # Colón Mean Time -5:00 - EST +Link America/Panama America/Atikokan +Link America/Panama America/Cayman # Puerto Rico # There are too many San Juans elsewhere, so we'll use 'Puerto_Rico'. @@ -3573,6 +3578,25 @@ Zone America/Puerto_Rico -4:24:25 - LMT 1899 Mar 28 12:00 # San Juan -4:00 - AST 1942 May 3 -4:00 US A%sT 1946 -4:00 - AST +Link America/Puerto_Rico America/Anguilla +Link America/Puerto_Rico America/Antigua +Link America/Puerto_Rico America/Aruba +Link America/Puerto_Rico America/Curacao +Link America/Puerto_Rico America/Blanc-Sablon # Quebec (Lower North Shore) +Link America/Puerto_Rico America/Dominica +Link America/Puerto_Rico America/Grenada +Link America/Puerto_Rico America/Guadeloupe +Link America/Puerto_Rico America/Kralendijk # Caribbean Netherlands +Link America/Puerto_Rico America/Lower_Princes # Sint Maarten +Link America/Puerto_Rico America/Marigot # St Martin (French part) +Link America/Puerto_Rico America/Montserrat +Link America/Puerto_Rico America/Port_of_Spain # Trinidad & Tobago +Link America/Puerto_Rico America/St_Barthelemy # St Barthélemy +Link America/Puerto_Rico America/St_Kitts # St Kitts & Nevis +Link America/Puerto_Rico America/St_Lucia +Link America/Puerto_Rico America/St_Thomas # Virgin Islands (US) +Link America/Puerto_Rico America/St_Vincent +Link America/Puerto_Rico America/Tortola # Virgin Islands (UK) # St Kitts-Nevis # St Lucia diff --git a/southamerica b/southamerica index 9d8f460..7900af9 100644 --- a/southamerica +++ b/southamerica @@ -1375,8 +1375,8 @@ Zone America/Bogota -4:56:16 - LMT 1884 Mar 13 # use links for places with new iso3166 codes. # The name "Lower Prince's Quarter" is both longer than fourteen characters # and contains an apostrophe; use "Lower_Princes".... -# From Paul Eggert (2021-05-06): -# These backward-compatibility links now are in the 'backward' file. +# From Paul Eggert (2021-09-29): +# These backward-compatibility links now are in the 'northamerica' file. # Ecuador # diff --git a/zic.c b/zic.c index c6feb8b..0101351 100644 --- a/zic.c +++ b/zic.c @@ -1990,7 +1990,7 @@ limitrange(struct timerange r, bool locut, zic_t lo, zic_t hi, /* Omit ordinary and leap second transitions greater than HI + 1. */ - if (hi < ZIC_MAX) { + if (hi < max_time) { while (0 < r.count && hi + 1 < ats[r.base + r.count - 1]) r.count--; while (0 < r.leapcount && hi + 1 < trans[r.leapbase + r.leapcount - 1]) @@ -2003,7 +2003,7 @@ limitrange(struct timerange r, bool locut, zic_t lo, zic_t hi, This is needed when the output is truncated at the start, and is also useful when catering to buggy 32-bit clients that do not use time type 0 for timestamps before the first transition. */ - r.pretrans = locut && ! (r.count && ats[r.base] == lo); + r.pretrans = locut && r.base && ! (r.count && ats[r.base] == lo); /* Determine whether to append an expiration to the leap second table. */ r.leapexpiry = 0 <= leapexpires && leapexpires - 1 <= hi; @@ -2120,7 +2120,7 @@ writezone(const char *const name, const char *const string, char version, rangeall.pretrans = rangeall.leapexpiry = false; range64 = limitrange(rangeall, min_time < lo_time, lo_time, hi_time, ats, types); - range32 = limitrange(range64, INT32_MIN < lo_time, + range32 = limitrange(range64, INT32_MIN < lo_time || want_bloat(), INT32_MIN, INT32_MAX, ats, types); /* TZif version 4 is needed if a no-op transition is appended to @@ -2205,12 +2205,12 @@ writezone(const char *const name, const char *const string, char version, error(_("too many transition times")); thistimelim = thistimei + thistimecnt; - if (thistimecnt && hi_time < ZIC_MAX + if (thistimecnt && hi_time < max_time && ats[thistimelim - 1] == hi_time + 1) hicut = false; memset(omittype, true, typecnt); omittype[thisdefaulttype] = false; - for (i = thistimei; i < thistimelim; i++) + for (i = thistimei - pretrans; i < thistimelim; i++) omittype[types[i]] = false; /* Reorder types to make THISDEFAULTTYPE type 0. @@ -2232,7 +2232,7 @@ writezone(const char *const name, const char *const string, char version, register int mrudst, mrustd, hidst, histd, type; hidst = histd = mrudst = mrustd = -1; - for (i = thistimei; i < thistimelim; ++i) + for (i = thistimei - pretrans; i < thistimelim; ++i) if (isdsts[types[i]]) mrudst = types[i]; else mrustd = types[i]; @@ -2348,9 +2348,7 @@ writezone(const char *const name, const char *const string, char version, if (hicut) puttzcodepass(hi_time + 1, fp, pass); currenttype = 0; - if (pretrans) - putc(currenttype, fp); - for (i = thistimei; i < thistimelim; ++i) { + for (i = thistimei - pretrans; i < thistimelim; ++i) { currenttype = typemap[types[i]]; putc(currenttype, fp); } -- cgit v1.2.1