Import tzdata 2018e
Changes: https://github.com/eggert/tz/blob/2018e/NEWS MFC after: 3 days
This commit is contained in:
commit
d81c2dd921
@ -21,7 +21,7 @@ DATAFORM= main
|
||||
|
||||
# Change the line below for your time zone (after finding the zone you want in
|
||||
# the time zone files, or adding it to a time zone file).
|
||||
# Alternately, if you discover you've got the wrong time zone, you can just
|
||||
# Alternatively, if you discover you've got the wrong time zone, you can just
|
||||
# zic -l rightzone
|
||||
# to correct things.
|
||||
# Use the command
|
||||
@ -38,7 +38,7 @@ LOCALTIME= GMT
|
||||
# template file are used to determine "spring forward" and "fall back" days and
|
||||
# times; the environment variable itself specifies UT offsets of standard and
|
||||
# daylight saving time.
|
||||
# Alternately, if you discover you've got the wrong time zone, you can just
|
||||
# Alternatively, if you discover you've got the wrong time zone, you can just
|
||||
# zic -p rightzone
|
||||
# to correct things.
|
||||
# Use the command
|
||||
@ -236,14 +236,16 @@ GCC_DEBUG_FLAGS = -DGCC_LINT -g3 -O3 -fno-common \
|
||||
$(GCC_INSTRUMENT) \
|
||||
-Wall -Wextra \
|
||||
-Walloc-size-larger-than=100000 -Warray-bounds=2 \
|
||||
-Wbad-function-cast -Wcast-align -Wdate-time \
|
||||
-Wbad-function-cast -Wcast-align=strict -Wdate-time \
|
||||
-Wdeclaration-after-statement -Wdouble-promotion \
|
||||
-Wformat=2 -Wformat-overflow=2 -Wformat-signedness -Wformat-truncation \
|
||||
-Winit-self -Wjump-misses-init -Wlogical-op \
|
||||
-Wmissing-declarations -Wmissing-prototypes -Wnested-externs \
|
||||
-Wold-style-definition -Woverlength-strings -Wpointer-arith \
|
||||
-Wshadow -Wshift-overflow=2 -Wstrict-prototypes -Wstringop-overflow=5 \
|
||||
-Wshadow -Wshift-overflow=2 -Wstrict-prototypes -Wstringop-overflow=4 \
|
||||
-Wstringop-truncation -Wsuggest-attribute=cold \
|
||||
-Wsuggest-attribute=const -Wsuggest-attribute=format \
|
||||
-Wsuggest-attribute=malloc \
|
||||
-Wsuggest-attribute=noreturn -Wsuggest-attribute=pure \
|
||||
-Wtrampolines -Wundef -Wuninitialized -Wunused \
|
||||
-Wvariadic-macros -Wvla -Wwrite-strings \
|
||||
@ -514,6 +516,7 @@ VERSION_DEPS= \
|
||||
tzfile.5 tzfile.h tzselect.8 tzselect.ksh \
|
||||
workman.sh yearistype.sh \
|
||||
zdump.8 zdump.c zic.8 zic.c \
|
||||
ziguard.awk zishrink.awk \
|
||||
zone.tab zone1970.tab zoneinfo2tdf.pl
|
||||
|
||||
# And for the benefit of csh users on systems that assume the user
|
||||
@ -559,8 +562,8 @@ version: $(VERSION_DEPS)
|
||||
|
||||
# These files can be tailored by setting BACKWARD, PACKRATDATA, etc.
|
||||
vanguard.zi main.zi rearguard.zi: $(DSTDATA_ZI_DEPS)
|
||||
$(AWK) -v outfile='$@' -f ziguard.awk $(TDATA) $(PACKRATDATA) \
|
||||
>$@.out
|
||||
$(AWK) -v DATAFORM=`expr $@ : '\(.*\).zi'` -f ziguard.awk \
|
||||
$(TDATA) $(PACKRATDATA) >$@.out
|
||||
mv $@.out $@
|
||||
tzdata.zi: $(DATAFORM).zi version
|
||||
version=`sed 1q version` && \
|
||||
@ -900,6 +903,13 @@ check_time_t_alternatives:
|
||||
done
|
||||
rm -fr time_t.dir
|
||||
|
||||
TRADITIONAL_ASC = \
|
||||
tzcode$(VERSION).tar.gz.asc \
|
||||
tzdata$(VERSION).tar.gz.asc
|
||||
ALL_ASC = $(TRADITIONAL_ASC) \
|
||||
tzdata$(VERSION)-rearguard.tar.gz.asc \
|
||||
tzdb-$(VERSION).tar.lz.asc
|
||||
|
||||
tarballs traditional_tarballs signatures traditional_signatures: version
|
||||
VERSION=`cat version` && \
|
||||
$(MAKE) VERSION="$$VERSION" $@_version
|
||||
@ -907,12 +917,13 @@ tarballs traditional_tarballs signatures traditional_signatures: version
|
||||
# These *_version rules are intended for use if VERSION is set by some
|
||||
# other means. Ordinarily these rules are used only by the above
|
||||
# non-_version rules, which set VERSION on the 'make' command line.
|
||||
tarballs_version: traditional_tarballs_version tzdb-$(VERSION).tar.lz
|
||||
tarballs_version: traditional_tarballs_version \
|
||||
tzdata$(VERSION)-rearguard.tar.gz \
|
||||
tzdb-$(VERSION).tar.lz
|
||||
traditional_tarballs_version: \
|
||||
tzcode$(VERSION).tar.gz tzdata$(VERSION).tar.gz
|
||||
signatures_version: traditional_signatures_version tzdb-$(VERSION).tar.lz.asc
|
||||
traditional_signatures_version: \
|
||||
tzcode$(VERSION).tar.gz.asc tzdata$(VERSION).tar.gz.asc \
|
||||
signatures_version: $(ALL_ASC)
|
||||
traditional_signatures_version: $(TRADITIONAL_ASC)
|
||||
|
||||
tzcode$(VERSION).tar.gz: set-timestamps.out
|
||||
LC_ALL=C && export LC_ALL && \
|
||||
@ -927,6 +938,26 @@ tzdata$(VERSION).tar.gz: set-timestamps.out
|
||||
gzip $(GZIPFLAGS) >$@.out
|
||||
mv $@.out $@
|
||||
|
||||
tzdata$(VERSION)-rearguard.tar.gz: rearguard.zi set-timestamps.out
|
||||
rm -fr tzdata$(VERSION)-rearguard.dir
|
||||
mkdir tzdata$(VERSION)-rearguard.dir
|
||||
ln $(COMMON) $(DATA) $(MISC) tzdata$(VERSION)-rearguard.dir
|
||||
cd tzdata$(VERSION)-rearguard.dir && \
|
||||
rm -f $(TDATA) $(PACKRATDATA) version
|
||||
for f in $(TDATA) $(PACKRATDATA); do \
|
||||
rearf=tzdata$(VERSION)-rearguard.dir/$$f; \
|
||||
$(AWK) -v DATAFORM=rearguard -f ziguard.awk $$f >$$rearf && \
|
||||
touch -cmr `ls -t ziguard.awk $$f` $$rearf || exit; \
|
||||
done
|
||||
sed '1s/$$/-rearguard/' \
|
||||
<version >tzdata$(VERSION)-rearguard.dir/version
|
||||
touch -cmr version tzdata$(VERSION)-rearguard.dir/version
|
||||
LC_ALL=C && export LC_ALL && \
|
||||
(cd tzdata$(VERSION)-rearguard.dir && \
|
||||
tar $(TARFLAGS) -cf - $(COMMON) $(DATA) $(MISC) | \
|
||||
gzip $(GZIPFLAGS)) >$@.out
|
||||
mv $@.out $@
|
||||
|
||||
tzdb-$(VERSION).tar.lz: set-timestamps.out
|
||||
rm -fr tzdb-$(VERSION)
|
||||
mkdir tzdb-$(VERSION)
|
||||
@ -937,12 +968,10 @@ tzdb-$(VERSION).tar.lz: set-timestamps.out
|
||||
mv $@.out $@
|
||||
|
||||
tzcode$(VERSION).tar.gz.asc: tzcode$(VERSION).tar.gz
|
||||
gpg --armor --detach-sign $?
|
||||
|
||||
tzdata$(VERSION).tar.gz.asc: tzdata$(VERSION).tar.gz
|
||||
gpg --armor --detach-sign $?
|
||||
|
||||
tzdata$(VERSION)-rearguard.tar.gz.asc: tzdata$(VERSION)-rearguard.tar.gz
|
||||
tzdb-$(VERSION).tar.lz.asc: tzdb-$(VERSION).tar.lz
|
||||
$(ALL_ASC):
|
||||
gpg --armor --detach-sign $?
|
||||
|
||||
typecheck:
|
||||
|
@ -1,5 +1,69 @@
|
||||
News for the tz database
|
||||
|
||||
Release 2018e - 2018-05-01 23:42:51 -0700
|
||||
|
||||
Briefly:
|
||||
|
||||
North Korea switches back to +09 on 2018-05-05.
|
||||
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
|
||||
|
||||
North Korea switches back from +0830 to +09 on 2018-05-05.
|
||||
(Thanks to Kang Seonghoon, Arthur David Olson, Seo Sanghyeon,
|
||||
and Tim Parenti.)
|
||||
|
||||
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.
|
||||
|
||||
Changes to data format and to code
|
||||
|
||||
The SAVE column of Rule and Zone lines can now have an 's' or 'd'
|
||||
suffix, which specifies whether the adjusted time is standard time
|
||||
or daylight saving time. If no suffix is given, daylight saving
|
||||
time is used if and only if the SAVE column is nonzero; this is
|
||||
the longstanding behavior. Although this new feature is not used
|
||||
in tzdata, it could be used to specify the legal time in Namibia
|
||||
1994-2017, as opposed to the popular time (see below).
|
||||
|
||||
Changes to past time stamps
|
||||
|
||||
From 1994 through 2017 Namibia observed DST in winter, not summer.
|
||||
That is, it used negative DST, as Ireland still does. This change
|
||||
does not affect UTC offsets; it affects only the tm_isdst flag and
|
||||
the abbreviation used during summer, which is now CAT, not WAST.
|
||||
Although (as noted by Michael Deckers) summer and winter time were
|
||||
both simply called "standard time" in Namibian law, in common
|
||||
practice winter time was considered to be DST (as noted by Stephen
|
||||
Colebourne). The full effect of this change is only in vanguard
|
||||
format; in rearguard and main format, the tm_isdst flag is still
|
||||
zero in winter and nonzero in summer.
|
||||
|
||||
In 1946/7 Czechoslovakia also observed negative DST in winter.
|
||||
The full effect of this change is only in vanguard format; in
|
||||
rearguard and main formats, it is modeled as plain GMT without
|
||||
daylight saving. Also, the dates of some 1944/5 DST transitions
|
||||
in Czechoslovakia have been changed.
|
||||
|
||||
|
||||
Release 2018d - 2018-03-22 07:05:46 -0700
|
||||
|
||||
Briefly:
|
||||
@ -39,7 +103,7 @@ Release 2018d - 2018-03-22 07:05:46 -0700
|
||||
Enderbury and Kiritimati skipped New Year's Eve 1994, not
|
||||
New Year's Day 1995. (Thanks to Kerry Shetline.)
|
||||
|
||||
Fix the 1912-01-01 transition for Portugual and its colonies.
|
||||
Fix the 1912-01-01 transition for Portugal and its colonies.
|
||||
This transition was at 00:00 according to the new UT offset, not
|
||||
according to the old one. Also assume that Cape Verde switched on
|
||||
the same date as the rest, not in 1907. This affects
|
||||
|
@ -6,7 +6,7 @@
|
||||
# tz@iana.org for general use in the future). For more, please see
|
||||
# the file CONTRIBUTING in the tz distribution.
|
||||
|
||||
# From Paul Eggert (2017-02-20):
|
||||
# From Paul Eggert (2017-04-09):
|
||||
#
|
||||
# Unless otherwise specified, the source for data through 1990 is:
|
||||
# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
|
||||
@ -52,7 +52,7 @@
|
||||
# cannot now come up with solid citations.
|
||||
#
|
||||
# I invented the following abbreviations; corrections are welcome!
|
||||
# +02 WAST West Africa Summer Time
|
||||
# +02 WAST West Africa Summer Time (no longer used)
|
||||
# +03 CAST Central Africa Summer Time (no longer used)
|
||||
# +03 SAST South Africa Summer Time (no longer used)
|
||||
# +03 EAT East Africa Time
|
||||
@ -967,6 +967,10 @@ Link Africa/Maputo Africa/Lusaka # Zambia
|
||||
# commence at OOhOO on Monday 21 March 1994 and shall end at 02h00 on
|
||||
# Sunday 4 September 1994.
|
||||
|
||||
# From Michael Deckers (2017-04-06):
|
||||
# ... both summer and winter time are called "standard"
|
||||
# (which differs from the use in Ireland) ...
|
||||
|
||||
# From Petronella Sibeene (2007-03-30):
|
||||
# http://allafrica.com/stories/200703300178.html
|
||||
# While the entire country changes its time, Katima Mulilo and other
|
||||
@ -992,19 +996,42 @@ Link Africa/Maputo Africa/Lusaka # Zambia
|
||||
# the same time they would normally start DST, the first Sunday in September:
|
||||
# https://www.timeanddate.com/news/time/namibia-new-time-zone.html
|
||||
|
||||
# From Paul Eggert (2017-04-09):
|
||||
# Before the change, summer and winter time were both standard time legally.
|
||||
# However in common parlance, winter time was considered to be DST. See, e.g.:
|
||||
# http://www.nbc.na/news/namibias-winter-time-could-be-scrapped.2706
|
||||
# https://zone.my.na/news/times-are-changing-in-namibia
|
||||
# https://www.newera.com.na/2017/02/23/namibias-winter-time-might-be-repealed/
|
||||
# Use plain "WAT" and "CAT" for the time zone abbreviations, to be compatible
|
||||
# with Namibia's neighbors.
|
||||
|
||||
# RULE NAME FROM TO TYPE IN ON AT SAVE LETTER/S
|
||||
Rule Namibia 1994 only - Mar 21 0:00 0 -
|
||||
Rule Namibia 1994 2016 - Sep Sun>=1 2:00 1:00 S
|
||||
Rule Namibia 1995 2017 - Apr Sun>=1 2:00 0 -
|
||||
# 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
|
||||
# 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
|
||||
# End of rearguard section.
|
||||
|
||||
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
|
||||
Zone Africa/Windhoek 1:08:24 - LMT 1892 Feb 8
|
||||
1:30 - +0130 1903 Mar
|
||||
2:00 - SAST 1942 Sep 20 2:00
|
||||
2:00 1:00 SAST 1943 Mar 21 2:00
|
||||
2:00 - SAST 1990 Mar 21 # independence
|
||||
2:00 - CAT 1994 Mar 21 0:00
|
||||
1:00 Namibia WA%sT 2017 Sep 3 2:00
|
||||
2:00 - CAT
|
||||
# Vanguard section, for zic and other parsers that support negative DST.
|
||||
2:00 Namibia %s
|
||||
# Rearguard section, for parsers that do not support negative DST.
|
||||
# 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
|
||||
# End of rearguard section.
|
||||
|
||||
# Niger
|
||||
# See Africa/Lagos.
|
||||
|
@ -1983,6 +1983,19 @@ Rule ROK 1987 1988 - Oct Sun>=8 3:00 0 S
|
||||
# There is no common English-language abbreviation for this time zone.
|
||||
# Use KST, as that's what we already use for 1954-1961 in ROK.
|
||||
|
||||
# From Kang Seonghoon (2018-04-29):
|
||||
# North Korea will revert its time zone from UTC+8:30 (PYT; Pyongyang
|
||||
# Time) back to UTC+9 (KST; Korea Standard Time).
|
||||
#
|
||||
# From Seo Sanghyeon (2018-04-30):
|
||||
# Rodong Sinmun 2018-04-30 announced Pyongyang Time transition plan.
|
||||
# https://www.nknews.org/kcna/wp-content/uploads/sites/5/2018/04/rodong-2018-04-30.pdf
|
||||
# ... the transition date is 2018-05-05 ... Citation should be Decree
|
||||
# No. 2232 of April 30, 2018, of the Presidium of the Supreme People's
|
||||
# Assembly, as published in Rodong Sinmun.
|
||||
# From Tim Parenti (2018-04-29):
|
||||
# It appears to be the front page story at the top in the right-most column.
|
||||
|
||||
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
|
||||
Zone Asia/Seoul 8:27:52 - LMT 1908 Apr 1
|
||||
8:30 - KST 1912 Jan 1
|
||||
@ -1994,7 +2007,8 @@ Zone Asia/Pyongyang 8:23:00 - LMT 1908 Apr 1
|
||||
8:30 - KST 1912 Jan 1
|
||||
9:00 - JST 1945 Aug 24
|
||||
9:00 - KST 2015 Aug 15 00:00
|
||||
8:30 - KST
|
||||
8:30 - KST 2018 May 5
|
||||
9:00 - KST
|
||||
|
||||
###############################################################################
|
||||
|
||||
@ -2658,7 +2672,7 @@ Zone Asia/Karachi 4:28:12 - LMT 1907
|
||||
# From Sharef Mustafa (2018-03-16):
|
||||
# Palestine summer time will start on Mar 24th 2018 by advancing the
|
||||
# clock by 60 minutes as per Palestinian cabinet decision published on
|
||||
# the offical website, though the decree did not specify the exact
|
||||
# the official website, though the decree did not specify the exact
|
||||
# time of the time shift.
|
||||
# http://www.palestinecabinet.gov.ps/Website/AR/NDecrees/ViewFile.ashx?ID=e7a42ab7-ee23-435a-b9c8-a4f7e81f3817
|
||||
#
|
||||
|
@ -1085,6 +1085,15 @@ Zone Pacific/Wallis 12:15:20 - LMT 1901
|
||||
# (1999-09-27) writes that Giles Meteorological Station uses
|
||||
# South Australian time even though it's located in Western Australia.
|
||||
|
||||
# From Paul Eggert (2018-04-01):
|
||||
# The Guardian Express of Perth, Australia reported today that the
|
||||
# government decided to advance the clocks permanently on January 1,
|
||||
# 2019, from UT +08 to UT +09. The article noted that an exemption
|
||||
# would be made for people aged 61 and over, who "can apply in writing
|
||||
# to have the extra hour of sunshine removed from their area." See:
|
||||
# Daylight saving coming to WA in 2019. Guardian Express. 2018-04-01.
|
||||
# https://www.communitynews.com.au/guardian-express/news/exclusive-daylight-savings-coming-wa-summer-2018/
|
||||
|
||||
# Queensland
|
||||
|
||||
# From Paul Eggert (2018-02-26):
|
||||
|
@ -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
|
||||
|
||||
|
||||
###############################################################################
|
||||
@ -970,18 +970,30 @@ Zone Europe/Sofia 1:33:16 - LMT 1880
|
||||
# Please see the 'asia' file for Asia/Nicosia.
|
||||
|
||||
# Czech Republic / Czechia
|
||||
#
|
||||
# From Paul Eggert (2018-04-15):
|
||||
# The source for Czech data is: Kdy začíná a končí letní čas. 2018-04-15.
|
||||
# https://kalendar.beda.cz/kdy-zacina-a-konci-letni-cas
|
||||
# We know of no English-language name for historical Czech winter time;
|
||||
# abbreviate it as "GMT", as it happened to be GMT.
|
||||
#
|
||||
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
|
||||
Rule Czech 1945 only - Apr 8 2:00s 1:00 S
|
||||
Rule Czech 1945 only - Nov 18 2:00s 0 -
|
||||
Rule Czech 1945 only - Apr Mon>=1 2:00s 1:00 S
|
||||
Rule Czech 1945 only - Oct 1 2:00s 0 -
|
||||
Rule Czech 1946 only - May 6 2:00s 1:00 S
|
||||
Rule Czech 1946 1949 - Oct Sun>=1 2:00s 0 -
|
||||
Rule Czech 1947 only - Apr 20 2:00s 1:00 S
|
||||
Rule Czech 1948 only - Apr 18 2:00s 1:00 S
|
||||
Rule Czech 1947 1948 - Apr Sun>=15 2:00s 1:00 S
|
||||
Rule Czech 1949 only - Apr 9 2:00s 1:00 S
|
||||
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
|
||||
Zone Europe/Prague 0:57:44 - LMT 1850
|
||||
0:57:44 - PMT 1891 Oct # Prague Mean Time
|
||||
1:00 C-Eur CE%sT 1944 Sep 17 2:00s
|
||||
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
|
||||
# Rearguard section, for parsers that do not support negative DST.
|
||||
# 0:00 - GMT 1947 Feb 23 2:00
|
||||
# End of rearguard section.
|
||||
1:00 Czech CE%sT 1979
|
||||
1:00 EU CE%sT
|
||||
# Use Europe/Prague also for Slovakia.
|
||||
@ -2016,7 +2028,7 @@ Rule Neth 1938 1939 - May 15 2:00s 1:00 S
|
||||
Rule Neth 1945 only - Apr 2 2:00s 1:00 S
|
||||
Rule Neth 1945 only - Sep 16 2:00s 0 -
|
||||
#
|
||||
# Amsterdam Mean Time was +00:19:32.13 exactly, but the .13 is omitted
|
||||
# Amsterdam Mean Time was +00:19:32.13, but the .13 is omitted
|
||||
# below because the current format requires GMTOFF to be an integer.
|
||||
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
|
||||
Zone Europe/Amsterdam 0:19:32 - LMT 1835
|
||||
|
@ -32,7 +32,7 @@ all computer-based clocks that track civil time.
|
||||
It organizes <a href="tz-link.html">time zone and daylight saving time
|
||||
data</a> by partitioning the world into <a
|
||||
href="https://en.wikipedia.org/wiki/List_of_tz_database_time_zones">regions</a>
|
||||
whose clocks all agree about timestamps that occur after the of the <a
|
||||
whose clocks all agree about timestamps that occur after the <a
|
||||
href="https://en.wikipedia.org/wiki/Unix_time">POSIX Epoch</a>
|
||||
(1970-01-01 00:00:00 <a
|
||||
href="https://en.wikipedia.org/wiki/Coordinated_Universal_Time"><abbr
|
||||
@ -53,7 +53,7 @@ However, the database is not designed for and does not suffice for
|
||||
applications requiring accurate handling of all past times everywhere,
|
||||
as it would take far too much effort and guesswork to record all
|
||||
details of pre-1970 civil timekeeping.
|
||||
Athough some information outside the scope of the database is
|
||||
Although some information outside the scope of the database is
|
||||
collected in a file <code>backzone</code> that is distributed along
|
||||
with the database proper, this file is less reliable and does not
|
||||
necessarily follow database guidelines.
|
||||
@ -68,7 +68,7 @@ standard for <a
|
||||
href="https://en.wikipedia.org/wiki/Unix">UNIX</a>-like systems.
|
||||
As of this writing, the current edition of POSIX is: <a
|
||||
href="http://pubs.opengroup.org/onlinepubs/9699919799/"> The Open
|
||||
Group Base Specifications Issue 7</a>, IEEE Std 1003.1-2008, 2016
|
||||
Group Base Specifications Issue 7</a>, IEEE Std 1003.1-2017, 2018
|
||||
Edition.
|
||||
Because the database's scope encompasses real-world changes to civil
|
||||
timekeeping, its model for describing time is more complex than the
|
||||
@ -79,7 +79,7 @@ flip back and forth between two alternatives, and the rules themselves
|
||||
can change at times.
|
||||
Whether and when a <code><abbr>tz</abbr></code> region changes its
|
||||
clock, and even the region's notional base offset from UTC, are variable.
|
||||
It doesn't even really make sense to talk about a region's
|
||||
It does not always make sense to talk about a region's
|
||||
"base offset", since it is not necessarily a single number.
|
||||
</p>
|
||||
|
||||
@ -92,8 +92,8 @@ Each <code><abbr>tz</abbr></code> region has a unique name that
|
||||
corresponds to a set of time zone rules.
|
||||
Inexperienced users are not expected to select these names unaided.
|
||||
Distributors should provide documentation and/or a simple selection
|
||||
interface that explains the names; for one example, see the 'tzselect'
|
||||
program in the <code><abbr>tz</abbr></code> code.
|
||||
interface that explains the names; for one example, see the
|
||||
<code>tzselect</code> program in the <code><abbr>tz</abbr></code> code.
|
||||
The <a href="http://cldr.unicode.org/">Unicode Common Locale Data
|
||||
Repository</a> contains data that may be useful for other selection
|
||||
interfaces.
|
||||
@ -137,6 +137,9 @@ region.
|
||||
North and South America share the same area, '<code>America</code>'.
|
||||
Typical names are '<code>Africa/Cairo</code>',
|
||||
'<code>America/New_York</code>', and '<code>Pacific/Honolulu</code>'.
|
||||
Some names are further qualified to help avoid confusion; for example,
|
||||
'<code>America/Indiana/Petersburg</code>' distinguishes Petersburg,
|
||||
Indiana from other Petersburgs in America.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
@ -159,7 +162,8 @@ in decreasing order of importance:
|
||||
<code>TZ</code> strings</a>.
|
||||
A file name component must not exceed 14 characters or start with
|
||||
'<code>-</code>'.
|
||||
E.g., prefer '<code>Brunei</code>' to '<code>Bandar_Seri_Begawan</code>'.
|
||||
E.g., prefer <code>Asia/Brunei</code> to
|
||||
<code>Asia/Bandar_Seri_Begawan</code>.
|
||||
Exceptions: see the discussion of legacy names below.
|
||||
</li>
|
||||
<li>
|
||||
@ -177,8 +181,8 @@ in decreasing order of importance:
|
||||
name <var>AB</var> (ignoring case), then <var>B</var> must not
|
||||
start with '<code>/</code>', as a regular file cannot have the
|
||||
same name as a directory in POSIX.
|
||||
For example, '<code>America/New_York</code>' precludes
|
||||
'<code>America/New_York/Bronx</code>'.
|
||||
For example, <code>America/New_York</code> precludes
|
||||
<code>America/New_York/Bronx</code>.
|
||||
</li>
|
||||
<li>
|
||||
Uninhabited regions like the North Pole and Bouvet Island
|
||||
@ -193,50 +197,56 @@ in decreasing order of importance:
|
||||
</li>
|
||||
<li>
|
||||
If all the clocks in a region have agreed since 1970,
|
||||
don't bother to include more than one location
|
||||
do not bother to include more than one location
|
||||
even if subregions' clocks disagreed before 1970.
|
||||
Otherwise these tables would become annoyingly large.
|
||||
</li>
|
||||
<li>
|
||||
If a name is ambiguous, use a less ambiguous alternative;
|
||||
e.g., many cities are named San José and Georgetown, so
|
||||
prefer '<code>Costa_Rica</code>' to '<code>San_Jose</code>' and
|
||||
'<code>Guyana</code>' to '<code>Georgetown</code>'.
|
||||
prefer <code>America/Costa_Rica</code> to
|
||||
<code>America/San_Jose</code> and <code>America/Guyana</code>
|
||||
to <code>America/Georgetown</code>.
|
||||
</li>
|
||||
<li>
|
||||
Keep locations compact.
|
||||
Use cities or small islands, not countries or regions, so that any
|
||||
future changes do not split individual locations into different
|
||||
<code><abbr>tz</abbr></code> regions.
|
||||
E.g., prefer '<code>Paris</code>' to '<code>France</code>', since
|
||||
E.g., prefer <code>Europe/Paris</code> to <code>Europe/France</code>,
|
||||
since
|
||||
<a href="https://en.wikipedia.org/wiki/Time_in_France#History">France
|
||||
has had multiple time zones</a>.
|
||||
</li>
|
||||
<li>
|
||||
Use mainstream English spelling, e.g., prefer '<code>Rome</code>'
|
||||
to '<code>Roma</code>', and prefer '<code>Athens</code>' to the
|
||||
Greek '<code>Αθήνα</code>' or the Romanized '<code>Athína</code>'.
|
||||
Use mainstream English spelling, e.g., prefer
|
||||
<code>Europe/Rome</code> to <code>Europe/Roma</code>, and
|
||||
prefer <code>Europe/Athens</code> to the Greek
|
||||
<code>Europe/Αθήνα</code> or the Romanized
|
||||
<code>Europe/Athína</code>.
|
||||
The POSIX file name restrictions encourage this guideline.
|
||||
</li>
|
||||
<li>
|
||||
Use the most populous among locations in a region,
|
||||
e.g., prefer '<code>Shanghai</code>' to
|
||||
'<code>Beijing</code>'.
|
||||
e.g., prefer <code>Asia/Shanghai</code> to
|
||||
<code>Asia/Beijing</code>.
|
||||
Among locations with similar populations, pick the best-known
|
||||
location, e.g., prefer '<code>Rome</code>' to
|
||||
'<code>Milan</code>'.
|
||||
location, e.g., prefer <code>Europe/Rome</code> to
|
||||
<code>Europe/Milan</code>.
|
||||
</li>
|
||||
<li>
|
||||
Use the singular form, e.g., prefer '<code>Canary</code>' to
|
||||
'<code>Canaries</code>'.
|
||||
Use the singular form, e.g., prefer <code>Atlantic/Canary</code> to
|
||||
<code>Atlantic/Canaries</code>.
|
||||
</li>
|
||||
<li>
|
||||
Omit common suffixes like '<code>_Islands</code>' and
|
||||
'<code>_City</code>', unless that would lead to ambiguity.
|
||||
E.g., prefer '<code>Cayman</code>' to
|
||||
'<code>Cayman_Islands</code>' and '<code>Guatemala</code>' to
|
||||
'<code>Guatemala_City</code>', but prefer
|
||||
'<code>Mexico_City</code>' to '<code>Mexico</code>'
|
||||
E.g., prefer <code>America/Cayman</code> to
|
||||
<code>America/Cayman_Islands</code> and
|
||||
<code>America/Guatemala</code> to
|
||||
<code>America/Guatemala_City</code>, but prefer
|
||||
<code>America/Mexico_City</code> to
|
||||
<code>America/Mexico</code>
|
||||
because <a href="https://en.wikipedia.org/wiki/Time_in_Mexico">the
|
||||
country of Mexico has several time zones</a>.
|
||||
</li>
|
||||
@ -245,13 +255,14 @@ in decreasing order of importance:
|
||||
</li>
|
||||
<li>
|
||||
Omit '<code>.</code>' from abbreviations in names.
|
||||
E.g., prefer '<code>St_Helena</code>' to '<code>St._Helena</code>'.
|
||||
E.g., prefer <code>Atlantic/St_Helena</code> to
|
||||
<code>Atlantic/St._Helena</code>.
|
||||
</li>
|
||||
<li>
|
||||
Do not change established names if they only marginally violate
|
||||
the above guidelines.
|
||||
For example, don't change the existing name '<code>Rome</code>' to
|
||||
'<code>Milan</code>' merely because Milan's population has grown
|
||||
For example, do not change the existing name <code>Europe/Rome</code> to
|
||||
<code>Europe/Milan</code> merely because Milan's population has grown
|
||||
to be somewhat greater than Rome's.
|
||||
</li>
|
||||
<li>
|
||||
@ -318,8 +329,10 @@ in decreasing order of importance:
|
||||
Use three to six characters that are ASCII alphanumerics or
|
||||
'<code>+</code>' or '<code>-</code>'.
|
||||
Previous editions of this database also used characters like
|
||||
'<code> </code>' and '<code>?</code>', but these characters have a
|
||||
special meaning to the shell and cause commands like
|
||||
space and '<code>?</code>', but these characters have a
|
||||
special meaning to the
|
||||
<a href="https://en.wikipedia.org/wiki/Unix_shell">UNIX shell</a>
|
||||
and cause commands like
|
||||
'<code><a href="http://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#set">set</a>
|
||||
`<a href="http://pubs.opengroup.org/onlinepubs/9699919799/utilities/date.html">date</a>`</code>'
|
||||
to have unexpected effects.
|
||||
@ -688,7 +701,7 @@ href="https://www.dissentmagazine.org/blog/booked-a-global-history-of-time-vanes
|
||||
subsecond accuracy is needed.
|
||||
</li>
|
||||
<li>
|
||||
Civil time was not based on atomic time before 1972, and we don't
|
||||
Civil time was not based on atomic time before 1972, and we do not
|
||||
know the history of
|
||||
<a href="https://en.wikipedia.org/wiki/Earth's_rotation">earth's
|
||||
rotation</a> accurately enough to map <a
|
||||
@ -720,7 +733,7 @@ href="https://www.dissentmagazine.org/blog/booked-a-global-history-of-time-vanes
|
||||
Ideally it would contain information about when data entries are
|
||||
incomplete or dicey.
|
||||
Partial temporal knowledge is a field of active research, though,
|
||||
and it's not clear how to apply it here.
|
||||
and it is not clear how to apply it here.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
@ -764,7 +777,7 @@ an older <code>zic</code>.
|
||||
Unfortunately, the POSIX
|
||||
<code>TZ</code> string takes a form that is hard to describe and
|
||||
is error-prone in practice.
|
||||
Also, POSIX <code>TZ</code> strings can't deal with daylight
|
||||
Also, POSIX <code>TZ</code> strings cannot deal with daylight
|
||||
saving time rules not based on the Gregorian calendar (as in
|
||||
Iran), or with situations where more than two time zone
|
||||
abbreviations or <abbr>UT</abbr> offsets are used in an area.
|
||||
@ -874,7 +887,7 @@ an older <code>zic</code>.
|
||||
need access to multiple time zone rulesets.
|
||||
</li>
|
||||
<li>
|
||||
In POSIX, there's no tamper-proof way for a process to learn the
|
||||
In POSIX, there is no tamper-proof way for a process to learn the
|
||||
system's best idea of local wall clock.
|
||||
(This is important for applications that an administrator wants
|
||||
used only at certain times – without regard to whether the
|
||||
@ -973,14 +986,16 @@ an older <code>zic</code>.
|
||||
by subsequent calls to <code>localtime</code>.
|
||||
Source code for portable applications that "must" run on local wall
|
||||
clock time should call <code>tzsetwall</code>;
|
||||
if such code is moved to "old" systems that don't
|
||||
provide <code>tzsetwall</code>, you won't be able to generate an
|
||||
if such code is moved to "old" systems that do not
|
||||
provide <code>tzsetwall</code>, you will not be able to generate an
|
||||
executable program.
|
||||
(These functions also arrange for local wall clock time to
|
||||
be used if <code>tzset</code> is called – directly or
|
||||
indirectly – and there's no <code>TZ</code> environment
|
||||
indirectly – and there is no <code>TZ</code> environment
|
||||
variable; portable applications should not, however, rely on this
|
||||
behavior since it's not the way SVR2 systems behave.)
|
||||
behavior since it is not the way <a
|
||||
href="https://en.wikipedia.org/wiki/UNIX_System_V#SVR2"><abbr>SVR2</abbr></a>
|
||||
systems behave.)
|
||||
</li>
|
||||
<li>
|
||||
Negative <code>time_t</code> values are supported, on systems
|
||||
@ -1040,7 +1055,7 @@ The vestigial <abbr>API</abbr>s are:
|
||||
<li>
|
||||
The <a href="https://en.wikipedia.org/wiki/Version_7_Unix">7th Edition
|
||||
UNIX</a> <code>timezone</code> function is not present in this
|
||||
package; it's impossible to reliably map <code>timezone</code>'s
|
||||
package; it is impossible to reliably map <code>timezone</code>'s
|
||||
arguments (a "minutes west of <abbr>GMT</abbr>" value and a
|
||||
"daylight saving time in effect" flag) to a time zone
|
||||
abbreviation, and we refuse to guess.
|
||||
@ -1052,7 +1067,9 @@ The vestigial <abbr>API</abbr>s are:
|
||||
zone abbreviation to use.
|
||||
</li>
|
||||
<li>
|
||||
The <abbr>4.2BSD</abbr> <code>gettimeofday</code> function is not
|
||||
The <a
|
||||
href="https://en.wikipedia.org/wiki/History_of_the_Berkeley_Software_Distribution#4.2BSD"><abbr>4.2BSD</abbr></a>
|
||||
<code>gettimeofday</code> function is not
|
||||
used in this package.
|
||||
This formerly let users obtain the current <abbr>UTC</abbr> offset
|
||||
and <abbr>DST</abbr> flag, but this functionality was removed in
|
||||
@ -1061,7 +1078,7 @@ The vestigial <abbr>API</abbr>s are:
|
||||
<li>
|
||||
In <abbr>SVR2</abbr>, time conversion fails for near-minimum or
|
||||
near-maximum <code>time_t</code> values when doing conversions
|
||||
for places that don't use <abbr>UT</abbr>.
|
||||
for places that do not use <abbr>UT</abbr>.
|
||||
This package takes care to do these conversions correctly.
|
||||
A comment in the source code tells how to get compatibly wrong
|
||||
results.
|
||||
@ -1155,10 +1172,10 @@ based on guesswork and these guesses may be corrected or improved.
|
||||
Calendrical issues are a bit out of scope for a time zone database,
|
||||
but they indicate the sort of problems that we would run into if we
|
||||
extended the time zone database further into the past.
|
||||
An excellent resource in this area is Nachum Dershowitz and Edward M.
|
||||
Reingold, <cite><a
|
||||
href="https://www.cs.tau.ac.il/~nachum/calendar-book/third-edition/">Calendrical
|
||||
Calculations: Third Edition</a></cite>, Cambridge University Press (2008).
|
||||
An excellent resource in this area is Edward M. Reingold
|
||||
and Nachum Dershowitz, <cite><a
|
||||
href="https://www.cambridge.org/fr/academic/subjects/computer-science/computing-general-interest/calendrical-calculations-ultimate-edition-4th-edition">Calendrical
|
||||
Calculations: The Ultimate Edition</a></cite>, Cambridge University Press (2018).
|
||||
Other information and sources are given in the file '<code>calendars</code>'
|
||||
in the <code><abbr>tz</abbr></code> distribution.
|
||||
They sometimes disagree.
|
||||
@ -1170,11 +1187,11 @@ They sometimes disagree.
|
||||
<p>
|
||||
Some people's work schedules
|
||||
use <a href="https://en.wikipedia.org/wiki/Timekeeping on Mars">Mars time</a>.
|
||||
Jet Propulsion Laboratory (JPL) coordinators have kept Mars time on
|
||||
and off at least since 1997 for the
|
||||
Jet Propulsion Laboratory (JPL) coordinators kept Mars time on
|
||||
and off during the
|
||||
<a href="https://en.wikipedia.org/wiki/Mars_Pathfinder#End_of_mission">Mars
|
||||
Pathfinder</a> mission.
|
||||
Some of their family members have also adapted to Mars time.
|
||||
Some of their family members also adapted to Mars time.
|
||||
Dozens of special Mars watches were built for JPL workers who kept
|
||||
Mars time during the Mars Exploration Rovers mission (2004).
|
||||
These timepieces look like normal Seikos and Citizens but use Mars
|
||||
@ -1262,7 +1279,7 @@ Sources for time on other planets:
|
||||
Jia-Rui Chong,
|
||||
"<a href="http://articles.latimes.com/2004/jan/14/science/sci-marstime14">Workdays
|
||||
Fit for a Martian</a>", <cite>Los Angeles Times</cite>
|
||||
(2004-01-14), pp A1, A20-A21.
|
||||
(2004-01-14), pp A1, A20–A21.
|
||||
</li>
|
||||
<li>
|
||||
Tom Chmielewski,
|
||||
|
@ -1 +1 @@
|
||||
2018d
|
||||
2018e
|
||||
|
@ -13,19 +13,30 @@
|
||||
# rearguard format.
|
||||
|
||||
BEGIN {
|
||||
dst_type["vanguard.zi"] = 1
|
||||
dst_type["main.zi"] = 1
|
||||
dst_type["rearguard.zi"] = 1
|
||||
dataform_type["vanguard"] = 1
|
||||
dataform_type["main"] = 1
|
||||
dataform_type["rearguard"] = 1
|
||||
|
||||
# The command line should set OUTFILE to the name of the output file.
|
||||
if (!dst_type[outfile]) exit 1
|
||||
vanguard = outfile == "vanguard.zi"
|
||||
# The command line should set DATAFORM.
|
||||
if (!dataform_type[DATAFORM]) exit 1
|
||||
vanguard = DATAFORM == "vanguard"
|
||||
}
|
||||
|
||||
/^Zone/ { zone = $2 }
|
||||
|
||||
outfile != "main.zi" {
|
||||
DATAFORM != "main" {
|
||||
in_comment = /^#/
|
||||
uncomment = comment_out = 0
|
||||
|
||||
# If the line should differ due to Czechoslovakia using negative SAVE values,
|
||||
# uncomment the desired version and comment out the undesired one.
|
||||
if (zone == "Europe/Prague" && /1947 Feb 23/) {
|
||||
if (($(in_comment + 2) != "-") == vanguard) {
|
||||
uncomment = in_comment
|
||||
} else {
|
||||
comment_out = !in_comment
|
||||
}
|
||||
}
|
||||
|
||||
# If this line should differ due to Ireland using negative SAVE values,
|
||||
# uncomment the desired version and comment out the undesired one.
|
||||
@ -37,11 +48,38 @@ outfile != "main.zi" {
|
||||
if ((Rule_Eire \
|
||||
|| (Zone_Dublin_post_1968 && $(in_comment + 3) == "IST/GMT")) \
|
||||
== vanguard) {
|
||||
sub(/^#/, "")
|
||||
} else if (/^[^#]/) {
|
||||
sub(/^/, "#")
|
||||
uncomment = in_comment
|
||||
} else {
|
||||
comment_out = !in_comment
|
||||
}
|
||||
}
|
||||
|
||||
# If this line should differ due to Namibia using Rule SAVE suffixes,
|
||||
# uncomment the desired version and comment out the undesired one.
|
||||
Rule_Namibia = /^#?Rule[\t ]+Namibia[\t ]/
|
||||
Zone_using_Namibia_rule \
|
||||
= (zone == "Africa/Windhoek" \
|
||||
&& ($(in_comment + 2) == "Namibia" \
|
||||
|| (1994 <= $(in_comment + 4) && $(in_comment + 4) <= 2017) \
|
||||
|| in_comment + 3 == NF))
|
||||
if (Rule_Namibia || Zone_using_Namibia_rule) {
|
||||
if ((Rule_Namibia \
|
||||
? ($(in_comment + 9) ~ /^-/ \
|
||||
|| ($(in_comment + 9) == 0 && $(in_comment + 10) == "CAT")) \
|
||||
: $(in_comment + 1) == "2:00" && $(in_comment + 2) == "Namibia") \
|
||||
== vanguard) {
|
||||
uncomment = in_comment
|
||||
} else {
|
||||
comment_out = !in_comment
|
||||
}
|
||||
}
|
||||
|
||||
if (uncomment) {
|
||||
sub(/^#/, "")
|
||||
}
|
||||
if (comment_out) {
|
||||
sub(/^/, "#")
|
||||
}
|
||||
}
|
||||
|
||||
# If a Link line is followed by a Zone line for the same data, comment
|
||||
|
Loading…
Reference in New Issue
Block a user