Skip to content

Commit

Permalink
Import tzdata 2019b.
Browse files Browse the repository at this point in the history
Approved by:	so
Approved by:	re (implicit)
Security:	FreeBSD-EN-19:12.tzdata
  • Loading branch information
tetlowgm authored and fichtner committed Jul 3, 2019
1 parent 83b05c3 commit 6eb6791
Show file tree
Hide file tree
Showing 20 changed files with 720 additions and 381 deletions.
45 changes: 33 additions & 12 deletions contrib/tzdata/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -35,11 +35,13 @@ DATAFORM= main

LOCALTIME= GMT

# If you want something other than Eastern United States time as a template
# for handling ruleless POSIX-style timezone environment variables,
# The POSIXRULES macro controls interpretation of nonstandard and obsolete
# POSIX-like TZ settings like TZ='EET-2EEST' that lack DST transition rules.
# In the reference implementation, if you want something other than Eastern
# United States time as a template for handling these settings, you can
# change the line below (after finding the timezone you want in the
# one of the $(TDATA) source files, or adding it to a source file).
# A ruleless environment setting like TZ='CST6CDT' uses the rules in the
# A setting like TZ='EET-2EEST' is supposed to use the rules in the
# template file to determine "spring forward" and "fall back" days and
# times; the environment variable itself specifies UT offsets of standard and
# daylight saving time.
Expand All @@ -49,6 +51,17 @@ LOCALTIME= GMT
# Use the command
# make zonenames
# to get a list of the values you can use for POSIXRULES.
#
# If POSIXRULES is empty, no template is installed; this is the intended
# future default for POSIXRULES.
#
# Nonempty POSIXRULES is obsolete and should not be relied on, because:
# * It does not work correctly in popular implementations such as GNU/Linux.
# * It does not work in the tzdb implementation for timestamps after 2037.
# * It is incompatible with 'zic -b slim' if POSIXRULES specifies transitions
# at standard time or UT rather than at local time.
# In short, software should avoid ruleless settings like TZ='EET-2EEST'
# and so should not depend on the value of POSIXRULES.

POSIXRULES= America/New_York

Expand Down Expand Up @@ -231,6 +244,13 @@ LDLIBS=
# other than simply getting garbage data
# -DUSE_LTZ=0 to build zdump with the system time zone library
# Also set TZDOBJS=zdump.o and CHECK_TIME_T_ALTERNATIVES= below.
# -DZIC_BLOAT_DEFAULT=\"slim\" to default zic's -b option to "slim", and
# similarly for "fat". Fat TZif files work around incompatibilities
# and bugs in some TZif readers, notably readers that mishandle 64-bit
# data in TZif files. Slim TZif files are more efficient and do not
# work around these incompatibilities and bugs. If not given, the
# current default is "fat" but this is intended to change as readers
# requiring fat files often mishandle timestamps after 2037 anyway.
# -DZIC_MAX_ABBR_LEN_WO_WARN=3
# (or some other number) to set the maximum time zone abbreviation length
# that zic will accept without a warning (the default is 6)
Expand Down Expand Up @@ -364,7 +384,9 @@ ZIC= $(zic) $(ZFLAGS)

# To shrink the size of installed TZif files,
# append "-r @N" to omit data before N-seconds-after-the-Epoch.
# See the zic man page for more about -r.
# You can also append "-b slim" if that is not already the default;
# see ZIC_BLOAT_DEFAULT above.
# See the zic man page for more about -b and -r.
ZFLAGS=

# How to use zic to install TZif files.
Expand All @@ -388,6 +410,9 @@ KSHELL= /bin/bash
# Name of curl <https://curl.haxx.se/>, used for HTML validation.
CURL= curl

# Name of GNU Privacy Guard <https://gnupg.org/>, used to sign distributions.
GPG= gpg

# The path where SGML DTDs are kept and the catalog file(s) to use when
# validating HTML 4.01. The default should work on both Debian and Red Hat.
SGML_TOPDIR= /usr
Expand Down Expand Up @@ -562,7 +587,9 @@ install: all $(DATA) $(REDO) $(MANS)
'$(DESTDIR)$(LIBDIR)' \
'$(DESTDIR)$(MANDIR)/man3' '$(DESTDIR)$(MANDIR)/man5' \
'$(DESTDIR)$(MANDIR)/man8'
$(ZIC_INSTALL) -l $(LOCALTIME) -p $(POSIXRULES) \
$(ZIC_INSTALL) -l $(LOCALTIME) \
`case '$(POSIXRULES)' in ?*) echo '-p';; esac \
` $(POSIXRULES) \
-t '$(DESTDIR)$(TZDEFAULT)'
cp -f $(TABDATA) '$(DESTDIR)$(TZDIR)/.'
cp tzselect '$(DESTDIR)$(BINDIR)/.'
Expand Down Expand Up @@ -781,12 +808,6 @@ CHECK_CC_LIST = { n = split($$1,a,/,/); for (i=2; i<=n; i++) print a[1], a[i]; }
check_sorted: backward backzone iso3166.tab zone.tab zone1970.tab
$(AWK) '/^Link/ {print $$3}' backward | LC_ALL=C sort -cu
$(AWK) '/^Zone/ {print $$2}' backzone | LC_ALL=C sort -cu
$(AWK) '/^[^#]/ {print $$1}' iso3166.tab | LC_ALL=C sort -cu
$(AWK) '/^[^#]/ {print $$1}' zone.tab | LC_ALL=C sort -c
$(AWK) '/^[^#]/ {print substr($$0, 1, 2)}' zone1970.tab | \
LC_ALL=C sort -c
$(AWK) '/^[^#]/ $(CHECK_CC_LIST)' zone1970.tab | \
LC_ALL=C sort -cu
touch $@
check_links: checklinks.awk $(TDATA_TO_CHECK) tzdata.zi
Expand Down Expand Up @@ -1051,7 +1072,7 @@ tzdata$(VERSION).tar.gz.asc: tzdata$(VERSION).tar.gz
tzdata$(VERSION)-rearguard.tar.gz.asc: tzdata$(VERSION)-rearguard.tar.gz
tzdb-$(VERSION).tar.lz.asc: tzdb-$(VERSION).tar.lz
$(ALL_ASC):
gpg2 --armor --detach-sign $?
$(GPG) --armor --detach-sign $?
TYPECHECK_CFLAGS = $(CFLAGS) -DTYPECHECK -D__time_t_defined -D_TIME_T
typecheck: typecheck_long_long typecheck_unsigned
Expand Down
104 changes: 99 additions & 5 deletions contrib/tzdata/NEWS
Original file line number Diff line number Diff line change
@@ -1,6 +1,100 @@
News for the tz database

Release 20198 - 2019-03-25 22:01:33 -0700
Release 2019b - 2019-07-01 00:09:53 -0700

Briefly:
Brazil no longer observes DST.
'zic -b slim' outputs smaller TZif files; please try it out.
Palestine's 2019 spring-forward transition was on 03-29, not 03-30.

Changes to future timestamps

Brazil has canceled DST and will stay on standard time indefinitely.
(Thanks to Steffen Thorsen, Marcus Diniz, and Daniel Soares de
Oliveira.)

Predictions for Morocco now go through 2087 instead of 2037, to
work around a problem on newlib when using TZif files output by
zic 2019a or earlier. (Problem reported by David Gauchard.)

Changes to past and future timestamps

Palestine's 2019 spring transition was 03-29 at 00:00, not 03-30
at 01:00. (Thanks to Sharef Mustafa and Even Scharning.) Guess
future transitions to be March's last Friday at 00:00.

Changes to past timestamps

Hong Kong's 1941-06-15 spring-forward transition was at 03:00, not
03:30. Its 1945 transition from JST to HKT was on 11-18 at 02:00,
not 09-15 at 00:00. In 1946 its spring-forward transition was on
04-21 at 00:00, not the previous day at 03:30. From 1946 through
1952 its fall-back transitions occurred at 04:30, not at 03:30.
In 1947 its fall-back transition was on 11-30, not 12-30.
(Thanks to P Chan.)

Changes to past time zone abbreviations

Italy's 1866 transition to Rome Mean Time was on December 12, not
September 22. This affects only the time zone abbreviation for
Europe/Rome between those dates. (Thanks to Stephen Trainor and
Luigi Rosa.)

Changes affecting metadata only

Add info about the Crimea situation in zone1970.tab and zone.tab.
(Problem reported by Serhii Demediuk.)

Changes to code

zic's new -b option supports a way to control data bloat and to
test for year-2038 bugs in software that reads TZif files.
'zic -b fat' and 'zic -b slim' generate larger and smaller output;
for example, changing from fat to slim shrinks the Europe/London
file from 3648 to 1599 bytes, saving about 56%. Fat and slim
files represent the same set of timestamps and use the same TZif
format as documented in tzfile(5) and in Internet RFC 8536.
Fat format attempts to work around bugs or incompatibilities in
older software, notably software that mishandles 64-bit TZif data
or uses obsolete TZ strings like "EET-2EEST" that lack DST rules.
Slim format is more efficient and does not work around 64-bit bugs
or obsolete TZ strings. Currently zic defaults to fat format
unless you compile with -DZIC_BLOAT_DEFAULT=\"slim\"; this
out-of-the-box default is intended to change in future releases
as the buggy software often mishandles timestamps anyway.

zic no longer treats a set of rules ending in 2037 specially.
Previously, zic assumed that such a ruleset meant that future
timestamps could not be predicted, and therefore omitted a
POSIX-like TZ string in the TZif output. The old behavior is no
longer needed for current tzdata, and caused problems with newlib
when used with older tzdata (reported by David Gauchard).

zic no longer generates some artifact transitions. For example,
Europe/London no longer has a no-op transition in January 1996.

Changes to build procedure

tzdata.zi now assumes zic 2017c or later. This shrinks tzdata.zi
by a percent or so.

Changes to documentation and commentary

The Makefile now documents the POSIXRULES macro as being obsolete,
and similarly, zic's -p POSIXRULES option is now documented as
being obsolete. Although the POSIXRULES feature still exists and
works as before, in practice it is rarely used for its intended
purpose, and it does not work either in the default reference
implementation (for timestamps after 2037) or in common
implementations such as GNU/Linux (for contemporary timestamps).
Since POSIXRULES was designed primarily as a temporary transition
facility for System V platforms that died off decades ago, it is
being decommissioned rather than institutionalized.

New info on Bonin Islands and Marcus (thanks to Wakaba and Phake Nick).


Release 2019a - 2019-03-25 22:01:33 -0700

Briefly:
Palestine "springs forward" on 2019-03-30 instead of 2019-03-23.
Expand Down Expand Up @@ -481,7 +575,7 @@ Release 2018d - 2018-03-22 07:05:46 -0700
The code is a bit more portable to MS-Windows. Installers can
compile with -DRESERVE_STD_EXT_IDS on MS-Windows platforms that
reserve identifiers like 'localtime'. (Thanks to Manuela
Friedrich).
Friedrich.)

Changes to documentation and commentary

Expand Down Expand Up @@ -2276,7 +2370,7 @@ Release 2014f - 2014-08-05 17:42:36 -0700
warlord Jin Shuren in the data.

Commentary about the coverage of each Russian zone has been standardized.
(Thanks to Tim Parenti).
(Thanks to Tim Parenti.)

There is new commentary about contemporary timekeeping in Ethiopia.

Expand Down Expand Up @@ -2724,7 +2818,7 @@ Release 2013e - 2013-09-19 23:50:04 -0700

Change the UT offset of Bern Mean Time from 0:29:44 to 0:29:46.
This affects Europe/Zurich timestamps from 1853 to 1894. (Thanks
to Alois Treindl).
to Alois Treindl.)

Change the date of the circa-1850 Zurich transition from 1849-09-12
to 1853-07-16, overriding Shanks with data from Messerli about
Expand Down Expand Up @@ -3034,7 +3128,7 @@ Release 2013a - 2013-02-27 09:20:35 -0800
(Thanks to Arthur David Olson.)

Improve the commentary about which districts observe what times
in Russia. (Thanks to Oscar van Vlijmen and Arthur David Olson).
in Russia. (Thanks to Oscar van Vlijmen and Arthur David Olson.)

Add web page links to tz.js.

Expand Down
Loading

0 comments on commit 6eb6791

Please sign in to comment.