From 127b4af7219e6df9253b34e390797c5527b8cc66 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Sun, 22 Apr 2018 16:41:48 -0700 Subject: [PROPOSED 2/2] Move negative DST from vanguard to main format * NEWS: Mention this. * africa (Namibia, Africa/Windhoek): * europe (Eire, Europe/Dublin, Europe/Prague): Comment out rearguard format, and uncomment vanguard format. --- NEWS | 20 ++++++++++++++++---- africa | 20 ++++++++++---------- europe | 26 +++++++++++++------------- 3 files changed, 39 insertions(+), 27 deletions(-) diff --git a/NEWS b/NEWS index 772a762..40c8e68 100644 --- a/NEWS +++ b/NEWS @@ -4,18 +4,30 @@ Unreleased, experimental changes Briefly: + The main format uses negative DST again, for Ireland etc. 'make tarballs' now also builds a rearguard tarball. New 's' and 'd' suffixes in SAVE columns of Rule and Zone lines. + Changes to past and future time stamps + + Bring back the negative-DST changes of 2018a, except be more + compatible with data parsers that do not support negative DST. + Also, this now affects historical time stamps in Namibia and the + former Czechoslovakia, not just Ireland. The main format now uses + negative DST to model time stamps in Europe/Dublin (from 1971 on), + Europe/Prague (1946/7), and Africa/Windhoek (1994/2017). This + does not affect UT offsets, only time zone abbreviations and the + tm_isdst flag. Also, this does not affect rearguard or vanguard + formats; effectively the main format now uses vanguard instead of + rearguard format. Data parsers that do not support negative DST + can still use data from the rearguard tarball described below. + Changes to build procedure The command 'make tarballs' now also builds the tarball tzdataVERSION-rearguard.tar.gz, which is like tzdataVERSION.tar.gz except that it uses rearguard format intended for trailing-edge - data parsers. Although the two tarballs currently are the same - except for version, they will differ more when negative DST - offsets are moved from vanguard to main format, since rearguard - format will continue to avoid negative DST offsets. + data parsers. Changes to data format and to code diff --git a/africa b/africa index 431b7e8..84e1ce2 100644 --- a/africa +++ b/africa @@ -1007,13 +1007,13 @@ Link Africa/Maputo Africa/Lusaka # Zambia # RULE NAME FROM TO TYPE IN ON AT SAVE LETTER/S # Vanguard section, for zic and other parsers that support negative DST. -#Rule Namibia 1994 only - Mar 21 0:00 -1:00 WAT -#Rule Namibia 1994 2017 - Sep Sun>=1 2:00 0 CAT -#Rule Namibia 1995 2017 - Apr Sun>=1 2:00 -1:00 WAT +Rule Namibia 1994 only - Mar 21 0:00 -1:00 WAT +Rule Namibia 1994 2017 - Sep Sun>=1 2:00 0 CAT +Rule Namibia 1995 2017 - Apr Sun>=1 2:00 -1:00 WAT # Rearguard section, for parsers that do not support negative DST. -Rule Namibia 1994 only - Mar 21 0:00 0 WAT -Rule Namibia 1994 2017 - Sep Sun>=1 2:00 1:00 CAT -Rule Namibia 1995 2017 - Apr Sun>=1 2:00 0 WAT +#Rule Namibia 1994 only - Mar 21 0:00 0 WAT +#Rule Namibia 1994 2017 - Sep Sun>=1 2:00 1:00 CAT +#Rule Namibia 1995 2017 - Apr Sun>=1 2:00 0 WAT # End of rearguard section. # Zone NAME GMTOFF RULES FORMAT [UNTIL] @@ -1023,14 +1023,14 @@ Zone Africa/Windhoek 1:08:24 - LMT 1892 Feb 8 2:00 1:00 SAST 1943 Mar 21 2:00 2:00 - SAST 1990 Mar 21 # independence # Vanguard section, for zic and other parsers that support negative DST. -# 2:00 Namibia %s + 2:00 Namibia %s # Rearguard section, for parsers that do not support negative DST. - 2:00 - CAT 1994 Mar 21 0:00 +# 2:00 - CAT 1994 Mar 21 0:00 # From Paul Eggert (2017-04-07): # The official date of the 2017 rule change was 2017-10-24. See: # http://www.lac.org.na/laws/annoSTAT/Namibian%20Time%20Act%209%20of%202017.pdf - 1:00 Namibia %s 2017 Oct 24 - 2:00 - CAT +# 1:00 Namibia %s 2017 Oct 24 +# 2:00 - CAT # End of rearguard section. # Niger diff --git a/europe b/europe index 6b97fd0..6994ed8 100644 --- a/europe +++ b/europe @@ -528,13 +528,13 @@ Link Europe/London Europe/Isle_of_Man # summer and negative daylight saving time in winter. It is for when # negative SAVE values are used. # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -#Rule Eire 1971 only - Oct 31 2:00u -1:00 GMT -#Rule Eire 1972 1980 - Mar Sun>=16 2:00u 0 IST -#Rule Eire 1972 1980 - Oct Sun>=23 2:00u -1:00 GMT -#Rule Eire 1981 max - Mar lastSun 1:00u 0 IST -#Rule Eire 1981 1989 - Oct Sun>=23 1:00u -1:00 GMT -#Rule Eire 1990 1995 - Oct Sun>=22 1:00u -1:00 GMT -#Rule Eire 1996 max - Oct lastSun 1:00u -1:00 GMT +Rule Eire 1971 only - Oct 31 2:00u -1:00 - +Rule Eire 1972 1980 - Mar Sun>=16 2:00u 0 - +Rule Eire 1972 1980 - Oct Sun>=23 2:00u -1:00 - +Rule Eire 1981 max - Mar lastSun 1:00u 0 - +Rule Eire 1981 1989 - Oct Sun>=23 1:00u -1:00 - +Rule Eire 1990 1995 - Oct Sun>=22 1:00u -1:00 - +Rule Eire 1996 max - Oct lastSun 1:00u -1:00 - # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Europe/Dublin -0:25:00 - LMT 1880 Aug 2 @@ -548,11 +548,11 @@ Zone Europe/Dublin -0:25:00 - LMT 1880 Aug 2 0:00 - GMT 1948 Apr 18 2:00s 0:00 GB-Eire GMT/IST 1968 Oct 27 # The next line is for when negative SAVE values are used. -# 1:00 Eire IST/GMT + 1:00 Eire IST/GMT # These three lines are for when SAVE values are always nonnegative. - 1:00 - IST 1971 Oct 31 2:00u - 0:00 GB-Eire GMT/IST 1996 - 0:00 EU GMT/IST +# 1:00 - IST 1971 Oct 31 2:00u +# 0:00 GB-Eire GMT/IST 1996 +# 0:00 EU GMT/IST ############################################################################### @@ -990,9 +990,9 @@ Zone Europe/Prague 0:57:44 - LMT 1850 1:00 C-Eur CE%sT 1945 May 9 1:00 Czech CE%sT 1946 Dec 1 3:00 # Vanguard section, for zic and other parsers that support negative DST. -# 1:00 -1:00 GMT 1947 Feb 23 2:00 + 1:00 -1:00 GMT 1947 Feb 23 2:00 # Rearguard section, for parsers that do not support negative DST. - 0:00 - GMT 1947 Feb 23 2:00 +# 0:00 - GMT 1947 Feb 23 2:00 # End of rearguard section. 1:00 Czech CE%sT 1979 1:00 EU CE%sT -- 2.7.4